Skip to content
Snippets Groups Projects
  1. Sep 24, 2022
    • Martin Trigaux's avatar
      [I18N] *: export 16.0 source terms · 7d4c9d97
      Martin Trigaux authored
      
      closes odoo/odoo#100958
      
      Related: odoo/enterprise#31696
      Signed-off-by: default avatarMartin Trigaux (mat) <mat@odoo.com>
      7d4c9d97
    • Martin Trigaux's avatar
      [IMP] tools: do not export attribute content · e05d1192
      Martin Trigaux authored
      Nodes like
      <attribute name="t-on-dragenter.stop.prevent">() => state.dropzoneVisible = true</attribute>
      should not be exported in the translations files but
      <attribute name="string">Hello World</attribute>
      should be kept
      
      It was already the case in the xml processing method for server side
      templates.
      Since 16.0, client side QWeb views also use the same inheritance
      mechanism than the one on the server side so the exception needs to be
      replicated.
      
      Part-of: odoo/odoo#100958
      e05d1192
    • Martin Trigaux's avatar
      [I18N] tx: correct config file · 21f8237f
      Martin Trigaux authored
      Did not contain all modules
      
      Part-of: odoo/odoo#100958
      21f8237f
    • Xavier-Do's avatar
      [IMP] test_event_full: clarify some step message · 2e065889
      Xavier-Do authored
      
      closes odoo/odoo#101047
      
      X-original-commit: 9e2a94ecb6ff6e641775d89aa6b7ee861148b87a
      Signed-off-by: default avatarXavier Dollé (xdo) <xdo@odoo.com>
      2e065889
    • Xavier-Do's avatar
      [FIX] test_event_full: add missing steps · 1a777a87
      Xavier-Do authored
      The test was running by luck because the event and all talk pages
      contains the needed elements. The favorite was checked randomly on
      other pages because those steps are way faster than loading the page.
      
      This test will fail in rare case if the page loads faster and the step
      checking if the "favorite is on" occurs when the talk page is finaly
      loaded.
      
      This commit adds some step to try to ensure the page are loaded before
      doing anything else.
      
      Also enable ticks on freezetime so that we have an idea of the steps
      durations in logs for easier investigation.
      
      X-original-commit: 8405104b14624f27df4d95e21738b253d048063f
      Part-of: odoo/odoo#101047
      1a777a87
  2. Sep 23, 2022
    • Romain Estievenart's avatar
      [FIX] pos, survey: wrong usage of `col` & `row` bootstrap classes · acacf52d
      Romain Estievenart authored
      
      This commit fixes some wrong usage of the bootstrap class `col` & `row`:
      
      - POS:    Missing the child `col` on `row` parent;
      - Survey: Using the class `col` to center the node on the parent div;
      
      closes odoo/odoo#101009
      
      Signed-off-by: default avatarAdrien Dieudonné (adr) <adr@odoo.com>
      acacf52d
    • Touati Djamel (otd)'s avatar
      [FIX] mrp_account, sale_mrp: wrong kit cost after so confirmation · 43ba9e32
      Touati Djamel (otd) authored
      Steps to reproduce the bug:
      - Create a storable product “B1”:
          - Costing Method: average
          - With BOM:
              - BOM Type: Kit
              - Components:
                  - 3 units of “C1” (cost c1 = $2)
      - Go to the “B1” product form:
          - Click on “Compute Price from BOM”
          - Cost = 3 * $2 = $6
      
      - Create a storable product A1:
          - Costing Method: average
          - BOM
              - BOM Type: Kit
              - Components:
                  - 2 units of B1
      
      - Go to the “A1” product form:
          - Click on “Compute Price from BOM”
          So: 1 unit of A1 → 2 units of B1 → 3 units of C1
          - Cost = (2 * 3 * $2) = $12
      
      - Create a SO:
          - Add 1 unit of “A1”
          - save
          - cost(`purchase_price`) = $12
          - Confirm the SO
          - The cost is recomputed and becomes = $6
      
      Problem:
      When the SO is created and the product “A1” is added, the cost is
      retrieved from the product: https://github.com/odoo/odoo/blob/14.0/addons/sale_margin/models/sale_order.py#L27
      
      But when the SO is confirmed, a picking is created, therefore the
      cost is recomputed: https://github.com/odoo/odoo/blob/14.0/addons/sale_stock_margin/models/sale_order_line.py#L18
      
      
      
      So The `_compute_average_price` function is called, in which a loop is
      made for each move related to the `sale.order.line`, but the
      `bom_line.product_qty` is used for each component (in this case the qty
      necessary of the product `C1 ` to make a single unit of `B1`, but this
      is not multiplied by the number of units needed to be used in the
      parent's bom_line
      
      opw-2971248
      
      closes odoo/odoo#101004
      
      X-original-commit: 9ec7aa9b
      Signed-off-by: default avatarArnold Moyaux (arm) <arm@odoo.com>
      Signed-off-by: default avatarDjamel Touati (otd) <otd@odoo.com>
      43ba9e32
    • Yaroslav's avatar
      [IMP] hw_posbox_homepage: restart buttons added · 662b4129
      Yaroslav authored
      
      Before, the user had to manually unplug and replug the IoT Box to reboot it.
      Also, it was required to connect to the IoT box to restart Odoo service.
      
      This improvement adds the 'Restart Odoo' and 'Reboot IoT box' buttons on the box's form view to IoT app.
      They allow the user to reboot the IoT box and restart Odoo service on it remotely from the IoT app in Odoo.
      
      task-2476576
      
      closes odoo/odoo#100999
      
      Related: odoo/enterprise#31723
      Signed-off-by: default avatarQuentin Lejeune (qle) <qle@odoo.com>
      662b4129
    • Romeo Fragomeli's avatar
      [FIX] web: input almost vanishes when toggle (to not checked) · fba258e7
      Romeo Fragomeli authored
      
      Before this commit, the inputs (radio, check and select types) on
      `focus` state wasn't visible due to the override rules in Bootstrap:
      ```scss
      /* Example of rule for checkbox */
      .form-check-input:focus {
        border-color: $form-check-input-focus-border;
      }
      
      /* Default config of Bootstrap 5 */
      $component-active-bg: $primary !default;
      $input-focus-border-color: tint-color($component-active-bg, 50%) !default;
      $form-check-input-focus-border: $input-focus-border-color !default;
      
      /* Our override in Odoo */
      $component-active-bg: $gray-200 !default;
      ```
      
      This commit, sets the `$o-brand-primary` color (`#71639e` in community,
      `#017e84` in enterprise) on the border in focused state.
      
      Note:
      before Bootstrap 5, this bug was not present as custom-checkbox was a
      custom pseudo-element (`::before`), and so it was not possible to be on
      a `focus` state on this pseudo-element.
      
      closes odoo/odoo#100977
      
      Signed-off-by: default avatarAdrien Dieudonné (adr) <adr@odoo.com>
      fba258e7
    • Christophe Monniez's avatar
      [FIX] packaging: install productivity apps only in installers · 4fadf6b9
      Christophe Monniez authored
      
      closes odoo/odoo#100964
      
      Signed-off-by: default avatarOlivier Dony <odo@odoo.com>
      4fadf6b9
    • Pierre Paridans's avatar
      [FIX] web: tags field placeholder when tag selected · 5976e19a
      Pierre Paridans authored
      
      This commit properly removes the Many2ManyTagsField and
      Many2ManyTagsAvatarField's placeholder when at least one tag has been
      selected.
      
      Steps to reproduce:
      - In Contacts, open a partner's form view
      - Edit and set at least one "tag"
      - The placeholder is present next to the selected tags
      
      Note: the placeholder was already present in previous versions.
      Reported by FP.
      
      closes odoo/odoo#100838
      
      Signed-off-by: default avatarAdrien Dieudonné (adr) <adr@odoo.com>
      5976e19a
    • Denis Ledoux's avatar
      [FIX] web: kanban do not allow to drag grouped by readonly fields · 2a0f8d9d
      Denis Ledoux authored
      When the kanban is grouped on a readonly fields,
      it shouldn't be possible to drag and drop a record from
      one column to another.
      
      It was the case when the field was part of the view architecture,
      but not when the fields wasn't part of the architecture,
      despite we have the information as we have the field description
      through the search view / the control panel.
      
      This is a bug which has been introduced during the OWL conversion.
      For instance, in 15.0, when grouping CRM leads by sanitized phone,
      it wasn't possible to drag and drop records from one column
      to another.
      In master this is possible.
      Besides, in the legacy code, the readonly information
      is read from both the field in the architecture and the general
      field descriptions:
      - https://github.com/odoo/odoo/blob/67191359f2e71be85e6e72d64720bb2748008b3f/addons/web/static/src/legacy/js/views/kanban/kanban_renderer.js#L506-L515
      
      
      
      In addition, compared to before,
      this revision allows a new possibility compared to before:
      Make draggable when grouped by a field which is by default
      readonly in the model,
      but which is set as `readonly="0"` in the view.
      This is to be uniform with what is done in the list and form views.
      
      closes odoo/odoo#100806
      
      Signed-off-by: default avatarAaron Bohy (aab) <aab@odoo.com>
      2a0f8d9d
    • luvi's avatar
      [FIX] web,*: whitespaces in form/kanban templates · f5813e34
      luvi authored
      
      *: crm,link_tracker,project,sale,utm
      
      Before this commit, in some form and kanban views, there were
      missing whitespaces, typically between icons and texts. This was
      due to the transition to owl views, because we simply ignored
      `&amp;nbsp;` in archs. This commit also fixes a layout issue in
      a project view, where the icon and the field should be displayed
      in the same line.
      
      closes odoo/odoo#100778
      
      Related: odoo/enterprise#31610
      Signed-off-by: default avatarAaron Bohy (aab) <aab@odoo.com>
      f5813e34
    • Louis Wicket (wil)'s avatar
      [IMP] mail, note: unwrap sorting rules array · b37baf89
      Louis Wicket (wil) authored
      
      Remove sorting rules arrays from the functions that wrap them as they
      are unnecessary noise.
      
      closes odoo/odoo#100742
      
      Signed-off-by: default avatarAlexandre Kühn (aku) <aku@odoo.com>
      b37baf89
    • Tom De Caluwé's avatar
      [FIX] core: recompute fields triggered by indirectly modified relational fields · d4a5827b
      Tom De Caluwé authored
      
      The cache currectly fails to correctly invalidate relational fields that depend
      on a non-relational field. Two passes of invalidation are done, to reflect
      dependencies on both the old and the new written values. In the first pass
      only relational fields are considered, as explained in the comments:
      
      > It is best explained with a simple example: consider two sales orders SO1 and
      SO2. The computed total amount on sales orders indirectly depends on the
      many2one field 'order_id' linking lines to their sales order.  Now consider the
      following code:
      >
      > line = so1.line_ids[0]      # pick a line from SO1
      > line.order_id = so2         # move the line to SO2
      >
      > In this situation, the total amount must be recomputed on *both* sales order:
      the line's order before the modification, and the line's order after the
      modification.
      
      The written values can be seen as the roots of a dependency forest (a
      collection of dependency trees). Before this commit all non-relational roots
      and their corresponding trees were filtered out during the first pass. However,
      this approach is wrong, as relational fields can also depend on non-relational
      fields. Instead, the complete dependency forest has to be traversed, skipping
      invalidation for non-relational fields during the first pass.
      
      The test that was previously included accidentally succeeded because of a
      separate and unrelated bug in the orm domain parser: in certain one2many or
      many2many leafs the domain parser would not take into consideration the domain
      included in the definition of the field. As a result, the test still passed
      by accident, because the records that no longer matched the domain after the
      write were still invalidated during the second pass.
      
      The problem can clearly be demonstrated, however, when the dependency is
      generated by a compute function.
      
      closes odoo/odoo#91547
      
      Signed-off-by: default avatarRémy Voet <ryv@odoo.com>
      Co-authored-by: default avatarRaphael Collet <rco@odoo.com>
      d4a5827b
    • Ahmed Khalaf (ahkh)'s avatar
      [IMP] stock_{picking_batch}: Add user in kanban · 943e5b97
      Ahmed Khalaf (ahkh) authored
      
      Currently cannot see assigned user working on picking/batch in kanban view.
      Added user_id in picking kanban view, and related user_id
      from batch
      
      TaskId: 2871679
      ENT PR: odoo/enterprise#28886
      
      closes odoo/odoo#94633
      
      Signed-off-by: default avatarArnold Moyaux (arm) <arm@odoo.com>
      943e5b97
    • Valentin Chevalier's avatar
      [IMP] event_sale: migrate configurator form to owl · 9cf190a4
      Valentin Chevalier authored
      
      closes odoo/odoo#100893
      
      Signed-off-by: default avatarVictor Feyens (vfe) <vfe@odoo.com>
      9cf190a4
    • JF Aubert's avatar
      [FIX] stock: fix replenishment report · 48376441
      JF Aubert authored
      
      Make the choice of available stock effective
      (previously the total quantity was always applied).
      Show warehouses with the most available stock first.
      Show quantity warning only when appropriate.
      
      closes odoo/odoo#100946
      
      Task: 2985735
      Signed-off-by: default avatarArnold Moyaux (arm) <arm@odoo.com>
      48376441
    • Edi Santoso's avatar
      [IMP] base: add new province for Indonesia · 404162f6
      Edi Santoso authored
      
      Indonesia officially added new province. Papua Selatan, Papua Tengah, Papua Pegunungan.
      
      closes odoo/odoo#100971
      
      X-original-commit: 9d047bfa
      Signed-off-by: default avatarJérémy Kersten <jke@odoo.com>
      404162f6
    • Nicolas (vin)'s avatar
      [FIX] account, analytic: account.analytic.distribution.model views · bb2820ad
      Nicolas (vin) authored
      
      Improve both tree and form views for the account.analytic.distribution.model
      
      closes odoo/odoo#100947
      
      Signed-off-by: default avatarAyob Habib (ayh) <ayh@odoo.com>
      bb2820ad
    • Julien Mougenot's avatar
      [FIX] web: Do not check non-dirty records validity · 8a824150
      Julien Mougenot authored
      
      Before this commit, when exiting a record in any way, the validity of
      each of the fields was checked, even if not dirty. This means that the
      user would be locked on a required field if that field got an invalid
      value from the server, even with no given input.
      
      In this commit, switching the mode on a record ("readonly" | "edit")
      will not go through validation if the record was not dirty.
      
      closes odoo/odoo#100727
      
      Signed-off-by: default avatarAaron Bohy (aab) <aab@odoo.com>
      8a824150
    • Victor Piryns (pivi)'s avatar
      [FIX] sale_timesheet: set correct invoice_state on timesheeted sol · d7a464b5
      Victor Piryns (pivi) authored
      
      When generating an invoice for a SO with 2 SOL that have a timesheet service
      (1 SOL is timesheeted in August, the other is timesheeted in September) and
      we request the invoice for the period of August only, the SOL for September
      is incorrectly set to state "Nothing to Invoice", instead of staying in
      state "To Invoice".
      
      This is due to the fact that when we inspect the SOL to invoice, those that
      are not in the domain (here the SOL in September is not in the time domain
      of August), we set it's qty_to_invoice to 0, so it doesn't get invoiced, but
      this is a computed field, which sets the line invoice_state to "Nothing to
      invoice".
      
      The proposed fix is to reset the invoice_state of the lines that are not validated by the domain to the state before setting the field qty_to_invoice to 0.
      
      Affected versions:
      - 15.0
      - saas-15.2
      - saas-15.3
      - master
      
      opw-2969641
      
      closes odoo/odoo#100665
      
      X-original-commit: 50b81adb3ea13db33bf1375b7038b6cc3546ec86
      Signed-off-by: default avatarLaurent Stukkens (ltu) <ltu@odoo.com>
      Signed-off-by: default avatarPiryns Victor (pivi) <pivi@odoo.com>
      d7a464b5
    • Xavier-Do's avatar
      [FIX] config: don't save deprecated longpolling-port · adac9a9c
      Xavier-Do authored
      
      Longpolling port is replaced with gevent port and is deprecated
      This commit avoid saving the value.
      
      Not really usefull but when saved the value was None leadind to an error
      when casting to int. The default value should be an int.
      
      closes odoo/odoo#100962
      
      Signed-off-by: default avatarChristophe Monniez (moc) <moc@odoo.com>
      adac9a9c
    • Damien Bouvy's avatar
      [IMP] web,mail: remove extraneous titles/tooltips · 1c52c649
      Damien Bouvy authored
      
      They tend to come in the way of very obvious things in the UI, repeat
      the same stuff that the label, etc.
      
      Titles attributes are not good for a11y, so if needed I prefer replacing
      them with an aria-label which:
      - doesn't mess up the UI
      - works properly with screen readers
      
      I've kept them on nodes that have no text (e.g. icons), otherwise
      they're not needed - text needs not be labelled.
      
      closes odoo/odoo#100949
      
      Signed-off-by: default avatarBouvy Damien (dbo) <dbo@odoo.com>
      1c52c649
    • Adrien Peiffer's avatar
      [FIX] sale: avoid creating analytic lines for section & notes. · a1bff321
      Adrien Peiffer authored
      
      Currently, When we create an invoice from a sale order containing some notes or sections.
      The analytic account from the sale order is set on the invoice/move line.
      During the creation of analytic lines, a line is created from the section/note line.
      
      This commit makes no analytic line is created for section/notes.
      
      closes odoo/odoo#100926
      
      X-original-commit: 4fa5829a
      Signed-off-by: default avatarVictor Feyens (vfe) <vfe@odoo.com>
      a1bff321
    • MerlinGuillaume's avatar
      [FIX] mrp: keep end time and duration consistent when moving work order · 2515482d
      MerlinGuillaume authored
      
      When drag and dropping a work order in the Work Orders Planning, the
      end time wasn't recomputed. This can make the end time inconsistent with
      the duration when the work order spans across a non-working time.
      
      Steps to reproduce:
      1. Install Manufacturing
      2. Go to Settings > Manufacturing > Operations and enable Work Orders
      3. Go to Manufacturing > Master Data > Routings and edit routing
         'Primary Assembly' to last 120:00 minutes
      4. Go to Manufacturing > Operations > Manufacturing Orders and create
         one with values:
         - Product: Table Top
         - Plan From: today's date at 11:00:00
      5. Save, mark as todo and plan the manufacturing order
      6. Go to Manufacturing > Planning > Planning by Workcenter and trigger
         the day view
      7. Move the work order to 8 am
      8. The work order still lasts for 3 hours (according to its start and
         finish time) even though its expected duration is 2 hours
      
      Solution:
      Recompute `date_planned_finished` when we move a work order in the
      planning (`date_planned_start` and `date_planned_finished` are passed in
      values), and recompute `expected_duration` when we extend it (only one
      of them is passed depending on the way we extend the work order).
      (`duration_expected` is never passed in values when we manipulate a work
      order through the planning)
      
      Problem:
      `date_planned_finished` wasn't recomputed when moving the work order in
      the planning
      
      opw-2893622
      
      closes odoo/odoo#100903
      
      X-original-commit: 7a5a54cb
      Related: odoo/enterprise#31680
      Signed-off-by: default avatarWilliam Henrotin (whe) <whe@odoo.com>
      Signed-off-by: default avatarGuillaume Merlin (megu) <megu@odoo.com>
      2515482d
    • Romain Derie's avatar
      [FIX] website: remove the handler in the destroy · 849ce451
      Romain Derie authored
      
      What is done in start should be undone in the destroy.
      
      closes odoo/odoo#100901
      
      X-original-commit: a221342c
      Signed-off-by: default avatarQuentin Smetz (qsm) <qsm@odoo.com>
      Signed-off-by: default avatarRomain Derie (rde) <rde@odoo.com>
      849ce451
    • FrancoisGe's avatar
      [FIX] web: create with m2o use the field context · dd1e7fab
      FrancoisGe authored
      
      Before this commit, in a list view, the context set on a m2o field
      is not used when you edit the field to create a new record.
      
      How:
      - Go to a list view with a m2o field containing a context
          <field name="m2o" context={"test":1}/>
      - Edit the field the m2o field
      - Click on "Create ..."
      
      Before this commit:
      The name_create method call does not contain the context defined
      on the <field/>
      
      After this commit:
      The call to the name_create method contains the context defined
      on the <field/>
      
      closes odoo/odoo#100731
      
      Signed-off-by: default avatarAaron Bohy (aab) <aab@odoo.com>
      dd1e7fab
    • Julien Mougenot's avatar
      [REF] web: Make list and kanban sortable handlers overridable · ec5ab1d3
      Julien Mougenot authored
      
      This commit moves the inline handlers of the `useSortable` hook
      calls in the list and kanban renderers to proper class methods.
      
      This allows said handlers to be overridden in child classes.
      
      closes odoo/odoo#100701
      
      Signed-off-by: default avatarAaron Bohy (aab) <aab@odoo.com>
      ec5ab1d3
    • FrancoisGe's avatar
      [FIX] web: add method "name_get" in sample server · 4e53f92c
      FrancoisGe authored
      
      This commit implements the "name_get" method in the sample server.
      This is required for m2o fields with the "always_reload" option.
      
      How to reproduce?
      go to an empty list view with sample="1" containing a m2o field with the
      "always_reload" option
      
      Before this commit
          We have a crash because the "name_get" method does not exist.
      
      After this commit
          The view is rendered correctly with the sample data.
      
      closes odoo/odoo#100647
      
      Signed-off-by: default avatarAaron Bohy (aab) <aab@odoo.com>
      4e53f92c
    • Pierre-Yves Dufays's avatar
      [FIX] mass_mailing: render placeholder in mailing web view · 6b2d5db7
      Pierre-Yves Dufays authored
      
      The placeholders were rendered as empty string in the web version of the
      mailing (accessed through the "view online" link in the email). This fixes the
      problem.
      
      Technical note: we cannot use mail_mail.body_html (which contains already the
      rendered placeholder for the specific user) as it is marked for deletion so we
      render it from mailing_mailing.body_html.
      
      Task-2954282
      
      closes odoo/odoo#99409
      
      Signed-off-by: default avatarThibault Delavallee (tde) <tde@openerp.com>
      6b2d5db7
    • Yolann Sabaux's avatar
      [FIX] web: numpad decimal with number type · d6579a64
      Yolann Sabaux authored
      Steps to reproduce:
      - in Barcode > Inventory Adjustment
      In the quantities add a decimal numpad
      
      Issue:
      Traceback
      
      Cause:
      The field is from type=number. This kind of field does not accept methods such `selectionStart()` or `selectionEnd` which causes an error: https://html.spec.whatwg.org/multipage/input.html#do-not-apply
      
      Solution:
      When of type=number, just return.
      On Chrome, numpad won't be possible for regions such as Portugese - BR. They would have to use the keyboard key `period`, code '.' in order to be able to put a decimal via the keyboard.
      In Firefox, HTML is parsing the input correctly if the browser settings are set to the right localization. https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Input#localization
      
      
      
      opw-2956481
      
      closes odoo/odoo#100948
      
      X-original-commit: d95fbd80f63efbb47c9635e299f6ac417c5cb4c2
      Signed-off-by: default avatarAaron Bohy (aab) <aab@odoo.com>
      Signed-off-by: default avatarYolann Sabaux (yosa) <yosa@odoo.com>
      d6579a64
    • Nicolas (vin)'s avatar
      [FIX] account: move line list js · 8857d31b
      Nicolas (vin) authored
      
      The move line list js has a set thread method that tries to
      get the move_id from the list view.
      But in the list view, the move id was now missing so it
      couldn't find it when a filter on journal entry was set.
      This adds it again so that the code can get the information
      again.
      
      closes odoo/odoo#100944
      
      Signed-off-by: default avatarCedric Snauwaert <csn@odoo.com>
      8857d31b
    • William Braeckman's avatar
      [FIX] crm: fix crash when saving new record · 497db878
      William Braeckman authored
      
      A crash would occur when creating new records as the code did not take
      into account the possibility of having empty "base" data.
      
      closes odoo/odoo#100863
      
      Signed-off-by: default avatarThibault Delavallee (tde) <tde@openerp.com>
      497db878
    • Nicolas Bayet's avatar
      [FIX] web_editor: update value only when dirty · 45d4ac14
      Nicolas Bayet authored
      
      Before this commit
      The method `updateValue` was updating value constantly
      because `value` was a string and `this.props.value` a Markup.
      
      Now
      Update only when necessary
      
      closes odoo/odoo#100798
      
      Signed-off-by: default avatarAntoine Guenet (age) <age@odoo.com>
      45d4ac14
    • Kevin Baptiste's avatar
      [FIX] hr_holidays: fix leave responsible cleanup again · 702adc87
      Kevin Baptiste authored
      
      The method `_clean_leave_responsible_users` is also called from the
      write method in hr.employee, however not anyone can remove users from
      groups.
      
      Fix of the fix in odoo/odoo#100591
      
      closes odoo/odoo#100918
      
      X-original-commit: 129e4799b04210f107185ba96b5c1845d943cf8b
      Signed-off-by: default avatarKevin Baptiste <kba@odoo.com>
      702adc87
    • Hubert Van de Walle (huvw)'s avatar
      [FIX] calendar: duplicated emails when creating allday meeting · 5d025560
      Hubert Van de Walle (huvw) authored
      
      Steps to reproduce:
      
        - Switch to debug mode
        - Go to calendar
        - Create an allday event in the future named test
        - Add an attendee with an email address
        - Save
        - Go to Settings > Technical > Email > Emails
      
        Two emails have been sent:
        * Invitation to test
        * test: Date updated
      
      Cause of the issue:
      
        The method `_inverse_dates` is called when creating an event,
        triggering a write on the start field.
        This then causes an update email to be sent
      
      Solution:
      
        Add a context key and don't send the update email if it is present
      
      opw-2841276
      
      closes odoo/odoo#100922
      
      X-original-commit: d1e55727
      Signed-off-by: default avatarArnaud Joset <arj@odoo.com>
      Signed-off-by: default avatarHubert Van De Walle <huvw@odoo.com>
      5d025560
    • Nam Dao's avatar
      [FIX] sale_purchase: Fixed an issue user portal could see PO · 30a94491
      Nam Dao authored
      
      User portal creates SO and proceeds checkout by paypal. The system will automatically confirm SO and generate PO. Since the PO is created by the user portal, the user portal can see the PO.
      
      closes odoo/odoo#100917
      
      X-original-commit: a4a062301a1ebd06057aa9468c3734dab2441814
      Signed-off-by: default avatarVictor Feyens (vfe) <vfe@odoo.com>
      30a94491
    • Damien Bouvy's avatar
      [IMP] web: replace shortcuts usermenu entry with command palette · e2625d7b
      Damien Bouvy authored
      
      Replace the old "shortcuts" cheat sheet with opening the command
      palette, which displays these shortcuts (and all of them, not just the
      common ones) and also will display a tip regarding how to make the
      shortcuts overlay appear.
      
      closes odoo/odoo#100905
      
      Signed-off-by: default avatarGéry Debongnie <ged@odoo.com>
      e2625d7b
    • William Braeckman's avatar
      [FIX] hr,mail: reintroduce legacy x2m_avatar widgets · adb5508a
      William Braeckman authored
      
      Some views still use them.
      
      closes odoo/odoo#100884
      
      Signed-off-by: default avatarWilliam Braeckman (wbr) <wbr@odoo.com>
      adb5508a
Loading