Skip to content
Snippets Groups Projects
  1. Jan 31, 2020
    • Aaron Bohy's avatar
      [FIX] web: do not deploy services twice · 8641c46c
      Aaron Bohy authored
      
      Since 671a5471, services are deployed twice in the backend:
      once by the webclient (as it is a ServiceProvider), and once by the
      env (which now deploys the services to make them directly available
      for each Owl component of the component tree). As a consequence,
      some services perform twice some operations (e.g. the mail service
      fetches twice the /mail/init_messaging route, the crash manager
      service displays twice the tracebacks...).
      
      This commit fixes the issue by making the webclient directly use
      services from the env, instead of deploying them a second time.
      
      Part of 2183810
      
      closes odoo/odoo#44301
      
      Signed-off-by: default avatarLucas Perais (lpe) <lpe@odoo.com>
      8641c46c
    • Odoo's Mergebot's avatar
      [MERGE][IMP] survey: add a 'live session' mode to the survey app · 2161d23d
      Odoo's Mergebot authored
      
      PURPOSE
      
      Add a "live session" mode for survey that allows the host to interact with its
      audience. He controls the pace of the survey and the audience answers questions
      one at a time.
      
      Results for each question can be displayed by the host to adapt his speech in
      real time.
      
      A gamification component even allows to give points to the attendees, based on
      the quickness of their answer, and create ranking to keep everyone's attention.
      
      SPECIFICATIONS
      
      This whole feature is deeply integrated within survey. It adds a layer of
      "survey session" on top if it that gathers attendees and answers during
      the lifespan of the session.
      
      In addition, we fixed/pimped several survey features:
      - we now prevent 'enter' submit when survey is done to avoid a raise.
      - we made a few small improvements on the frontend views
      - we now correctly remove the timer and initialize the result
        widget when the user presses 'enter' on the last page / question.
      
      See sub-commits for details.
      
      Task 1972640
      
      closes odoo/odoo#43568
      
      Signed-off-by: default avatarThibault Delavallee (tde) <tde@openerp.com>
      2161d23d
    • David Beguin's avatar
      [IMP] survey: improve survey frontend pages · e0d16325
      David Beguin authored
      To make the survey even more beautiful than it was, this commit:
      - set 'or press Enter' in black instead of primary color.
      - align content of inputs (text, number, date, datetime) to the left when
        relevant (readonly mode).
      - Add 'Powered by Odoo' on all 'no footer' survey screens.
      
      PR #43568
      Task 1972640
      e0d16325
    • Aurélien Warnon's avatar
      [IMP] survey: improve demo data for quiz session · f9710a68
      Aurélien Warnon authored
      This commit improves the new survey "quiz" demo data by adding some questions to fill in the email
      and nickname of the user with the associated user inputs.
      
      PR #43568
      Task 1972640
      f9710a68
    • Aurélien Warnon's avatar
      [IMP] survey: add a 'live session' mode to the survey app · e973bd55
      Aurélien Warnon authored
      
      PURPOSE
      
      Add a "live session" mode for survey that allows the host to interact with its
      audience.
      He controls the pace of the survey and the audience answers questions one at a
      time.
      
      Results for each question can be displayed by the host to adapt his speech in
      real time.
      
      A gamification component even allows to give points to the attendees, based on
      the quickness of their answer, and create ranking to keep everyone's attention.
      
      SPECIFICATIONS
      
      This whole feature is deeply integrated with survey.
      It adds a layer of "survey session" on top if it that gathers attendees and
      answers during the lifespan of the session.
      
      The attendee identity is filled in by a special question that is marked as
      "Save as user nickname".
      If the host has not configured that question or if the user doesn't answer,
      they are marked as "Anonymous" in the rankings.
      
      The answer score computation is also altered during the session to take the
      speed of the answer into account.
      
      To ease the access to the survey to attendees, we have introduced two new
      routes in the survey main controller:
      - '/s/123456'
        That uses the 6 first characters of the token to give quick access to the
        survey and allow typing the URL manually somewhat conveniently.
      - '/s' that renders a view that asks the attendee to enter the survey 'code',
        which then redirects to the previous route.
      
      This commit also fixes a few bugs:
      - A bugged use case with the "enter key" listener.
        When the survey is done, we display a "result template" that shows the user
        his score and allows him to retry if possible.
        When this template is displayed, we don't want to listen to the "enter" key
        that allows to submit the survey form.
      - We now correctly remove the timer and initialize the result
        widget when the user presses 'enter' on the last page / question.
      
      SURVEY SESSION FLOW
      
      HOST point of view:
      
      - On the Survey Form, the host configures:
          - "Reward quick answers" that gives more points to attendees if they answer
            quickly
          - Question Time Limit, on each question, that defines the time limit for
            that specific question, allowing to have different (or no) timer for each
            question.
      - From the Survey Form, the host can start a "live session"
        Only one session per survey can be running at a time.
      - When he starts the session, the session_state is marked as 'ready', meaning
        all attendees landing on the survey page will be part of the session.
      - The host will land on a page showing the current number of attendees as well
        as the link for the attendees to join that session.
      - The host starts the session, activating the first question of this session.
        We keep an active reference to the "current_question_id" and use the bus to
        trigger an event that will refresh the survey page for all attendees, showing
        them the question and allowing them to answer.
      - The host gets a "question management screen", from which he can:
          - See the current question text & suggested answers
          - See the current question timer
          - See the number of answers received for the question
          - Display the answers of the question (same view as the survey "results"
            page, but only for the question)
          - Display the ranking of attendees (if "competitive mode" is enabled)
      - The host controls the pace of the survey by moving to the next question until
        it's the last one of the survey, then ends the current session.
        When the session is closed, we mark the answers of the attendees as "done".
      - The host lands on a screen where he sees the survey results and the ranking
        of all attendees.
      
      ATTENDEE point of view:
      
      - He reaches the survey when a session and open, and gets a screen asking him
        to wait until the host decides to start the session.
      - When the sessions starts, he's automatically redirected to the first question
        (see above).
      - If the session is already started when he reaches the link, he lands on the
        current question (and NOT on the first one)
      - If the host has configured a time limit, the attendee sees the countdown
        while he's answering.
      - When the attendee answers the question, the screen tells him the answer is
        registered and he has to wait for the host to go to the next question, which
        will happen automatically.
      - If the timer reaches 0 and he has not submitted his answer, it's too late and
        he waits for the next one.
      - It continues like that until the end of the session.
      - At the end of the session, the attendee gets a screen with his global results
        (same as a regular scored survey).
      
      PR #43568
      Task 1972640
      
      Co-authored-by: default avatarDavid Beguin <dbe@odoo.com>
      e973bd55
    • Aurélien Warnon's avatar
      [MOV/REF] survey: split statistics template into a canvas/header/content · 5e6c09a1
      Aurélien Warnon authored
      This commit splits the statistics template into a "canvas" part, a "header" part and a "content"
      part.
      
      This is a preliminary work for the "survey live mode" task that will need to use the same
      statistics content, but use a different canvas and header for it.
      
      PR #43568
      Task 1972640
      5e6c09a1
    • Aurélien Warnon's avatar
      [REF] bus,website_livechat: import bus frontend assets in bus instead of website_livechat · f3f1af71
      Aurélien Warnon authored
      This commit moves the import of bus JS files in the frontend assets from
      website_livechat to the bus module itself.
      
      This is done in preparation of the "survey live mode" feature that will also
      require the bus files in the frontend context.
      
      PR #43568
      Task 1972640
      f3f1af71
  2. Jan 13, 2020
    • Ipsita Borisagar's avatar
      [IMP] mail: archive exception activity type · a713f217
      Ipsita Borisagar authored
      
      Currently, 'Exception' ativity type is visible in dropdown list of schedule
      activity. It is used by the system to generate warning activities on records.
      It is not meant to be used by the user when scheduling activities manually.
      
      By, giving active=false on mail.mail_activity_data_warning, we can hide
      'Exception' activity type in dropdown list for user but available for the
      system to generate warning.
      
      task-2168569
      
      closes odoo/odoo#43549
      
      Signed-off-by: default avatarAlexandre Kühn (aku) <aku@odoo.com>
      a713f217
  3. Jan 31, 2020
    • svs-odoo's avatar
      [REM] mrp: remove _decrease_reserved_quanity · 78562201
      svs-odoo authored
      
      As `_do_unreserve` was rewrited, the `_decrease_reserved_quanity` method
      isn't useful since its purpose was to avoid to unlink all stock moves
      and it is what `_do_unreserve` cares about.
      
      See 2e41338f42e2ef9f2ac2b3e73b274c4af242b28a
      
      closes odoo/odoo#42582
      
      Related: odoo/enterprise#7488
      Signed-off-by: default avatarSimon Lejeune (sle) <sle@openerp.com>
      78562201
    • svs-odoo's avatar
      [IMP] stock_picking_batch: default search filter · 263f0ed0
      svs-odoo authored
      By default, display also draft picking batchs.
      
      task-2123726
      263f0ed0
    • svs-odoo's avatar
      [FIX] stock: show move lines with quantity done · ea9ff60a
      svs-odoo authored
      Before this commit, pickings of picking type with `show_reserved` on
      False don't show pre-fill moves -what is expected- even if those
      pre-fill moves have quantity done -what is less wanted and can happened,
      with stock_barcode for example.
      
      With this commit, we continue to hide pre-fill moves for this kind of
      picking, except for pre-fill moves who have a quantity done.
      ea9ff60a
    • svs-odoo's avatar
      [IMP] stock_picking_batch: compute state · 9ac12ebb
      svs-odoo authored
      About the batch picking state, makes it canceled if all its pickings are
      canceled, and makes it done if all its non-canceled pickings are done.
      9ac12ebb
    • svs-odoo's avatar
      [FIX] stock_picking_batch: report by locations · 15b6fa6a
      svs-odoo authored
      This commit make sure the picking batch report print will be sorted by
      location name.
      
      task-2069646
      15b6fa6a
    • Arnold Moyaux's avatar
      [FIX] stock: do not unreserve proccessed move line · 85216e1d
      Arnold Moyaux authored
      When a user unreserve a picking or a move it will
      drop all the linked move lines. However it could
      happens that some move line already have a done quantity
      and the user won't lose this information.
      
      This commit filters move lines in order to only drop
      the move line without quantity done and remove the
      reserved quantity on others.
      
      Joint work with William Henrotin <whe@odoo.com>
      
      task-2069646
      85216e1d
    • Simon Lejeune's avatar
      [IMP] stock_picking_batch: display moves and move lines · 2b314aad
      Simon Lejeune authored
      * allow to directly edit the move lines of the batched transfers
      * add a check availability button if any move is not assigned yet
      
      task-2069646
      2b314aad
    • Simon Lejeune's avatar
      [IMP] stock_picking_batch: add to batch wizard improvements · 2105895b
      Simon Lejeune authored
      We check the selected pickings are compatible to be attached to an
      existing batch transfer.
      
      We add the possibility to create on the fly a batch picking to attach
      the selected pickings.
      
      task-2069646
      2105895b
    • Simon Lejeune's avatar
      [REF] stock_picking_batch: report improvements · d644e4d7
      Simon Lejeune authored
      wording
      
      task-2069646
      d644e4d7
    • Simon Lejeune's avatar
      [REF] stock_picking_batch: stock picking to its own file · be169f6a
      Simon Lejeune authored
      task-2069646
      be169f6a
    • Simon Lejeune's avatar
      [REF] stock: header in picking form · eaccf274
      Simon Lejeune authored
      Only keep buttons in the header to be able to disable them with an xpath
      without breaking every attrs elsewhere in the form.
      
      Why? We want to disable these header buttons when opening a picking from
      the bach transfer (by clicking on a line on a o2m list).
      
      task-2069646
      eaccf274
    • Simon Lejeune's avatar
      [REF] stock: wording · 8084f365
      Simon Lejeune authored
      This is not related to the batch picking task but was found while
      testing it.
      
      task-2069646
      8084f365
    • Mitali Patel's avatar
      [IMP] product: added check_company feature on pricelist · 343f7d61
      Mitali Patel authored
      
      Purpose of this commit is pricelist/pricelist item can not
      created/modifided linking records of diffrent companies together
      
      closes odoo/odoo#44391
      
      Task: 2090409
      X-original-commit: 9b62813c
      Signed-off-by: default avatarDamien Bouvy (dbo) <dbo@odoo.com>
      343f7d61
    • Victor Feyens's avatar
      [FIX] payment: show the state in the ribbon · 96d30d34
      Victor Feyens authored
      
      closes odoo/odoo#44382
      
      X-original-commit: 0fc90e56
      Signed-off-by: default avatarVictor Feyens (vfe) <vfe@odoo.com>
      96d30d34
    • Victor Feyens's avatar
      [FIX] payment: do not copy payment acquirer state · 5682aad7
      Victor Feyens authored
      The copy of a payment acquirer should be disabled by default.
      
      X-original-commit: 5cb97ad0
      5682aad7
    • Patrick Hoste's avatar
      [FIX] rating: fix search on rating · d9247094
      Patrick Hoste authored
      
      Fix the access error you could get when filtering on ratings when not logged
      in or when the user has no rights to access ratings.
      
      How to reproduce: filter on channel review ratings in eLearning frontend
      when being anonymous le portal.
      
      As rating is a technical model, we have to first retrieve messages linked
      to that rating value and afterwards return a new domain used to build
      the final search.
      
      Task ID : 2167776
      PR : #42847
      
      closes odoo/odoo#44380
      
      X-original-commit: 7a241e9c21046dababc2744dd94b0c47e2d8a931
      Signed-off-by: default avatarThibault Delavallee (tde) <tde@openerp.com>
      d9247094
    • Hemali Bhimani's avatar
      [IMP] *: updated import templates to match data model · f1687032
      Hemali Bhimani authored
      
      purpose of this commit is to make import template compatible with v13
      
      task-2146510
      closes-#42279
      
      closes odoo/odoo#44375
      
      X-original-commit: 37aadf12
      Signed-off-by: default avatarDamien Bouvy (dbo) <dbo@odoo.com>
      f1687032
    • kma-odoo's avatar
      [FIX] website: keywords list appear correctly in Optimize SEO dialog · d98d563b
      kma-odoo authored
      
      As the keywords are added in the DOM and its' table is also toggled at
      the same time, we've to put the toggling of the table after the keywords
      pushed in to the DOM.
      
      task-2063206
      
      closes odoo/odoo#44374
      
      X-original-commit: 09c183ab
      Signed-off-by: default avatarJérémy Kersten (jke) <jke@openerp.com>
      d98d563b
    • Odoo's Mergebot's avatar
      [MERGE] base: custom models improvements · 21df11e8
      Odoo's Mergebot authored
      
      Custom model improvements needed for a Studio task:
      - allow ordering custom models by something else than their id
      - allow a basic `group_expand` functionality for custom models
        allowing 'stage-like' behaviours (e.g. a `read_group` on `x_stage_id`
      will return all the stages, including empty ones)
      - small fixes detected during development:
        - SQL identifiers escaping
        - correct reset of the registry after `SingleTransactionCase` and `SavepointCase` tests
        - correct removal of a custom class from the registry
      
      Part of Task 2091654
      Related to odoo/enterprise#7326
      
      closes odoo/odoo#43981
      
      Signed-off-by: default avatarDamien Bouvy (dbo) <dbo@odoo.com>
      21df11e8
    • mgh-odoo's avatar
      [IMP] sale_coupon: coupon pdf design · d25fac7e
      mgh-odoo authored
      
      as per the task requirements pdf coupon design changed
      same as email design.
      
      Task-ID: 2027296
      Closes #34620
      
      Signed-off-by: default avatarDamien Bouvy (dbo) <dbo@odoo.com>
      d25fac7e
    • mgh-odoo's avatar
      [IMP] sale_coupon: refactor the coupon stages and usability improvement · bb87d3f6
      mgh-odoo authored
      Fix the layout of logo to the printed coupon.
      
      The traceability of the coupons is not clear. for Ex. coupon is send or not?
      should I resend? so updated the stages of the coupon
      
      Now the stages will be like
       -pending(previously reserved) -- hidden by default
       -Valid
       -Sent : updated when mail is sent to customer
       -used
       -expired
       -cancelled : hidden by default(added button to cancel the new coupon)
      
      Cron added to expire coupon automatically.
      
      PS: model sale.coupon do not inherit the thread so instead of message_post
      change the state 'sent' from mail_compose_message.
      
      Task-ID: 2027296
      Closes #34620
      bb87d3f6
    • Damien Bouvy's avatar
      [IMP] base: support `group_expand` for custom fields · 00205aae
      Damien Bouvy authored
      
      Allow a naive `group_expand` for manual fields where having the
      attribute set to True causes the ORM to include all records from the
      relation model of the m2o field in the read_group.
      
      This is particularly useful for custom m2o fields which represent
      stages - a grouped list view or a kanban view should include all
      possible stage, not only the currently used values.
      
      Co-Authored-By: default avatarRaphaël Collet <rco@odoo.com>
      00205aae
    • Damien Bouvy's avatar
      [IMP] base: support ordering on custom models · 4d2aa271
      Damien Bouvy authored
      
      Up until now, it was impossible to specify the default ordering
      on models created manually.
      
      This could somewhat be bypassed by specifying the ordering of records on
      views themselves, but this has one main drawback: when using a
      relational field that targets a custom model as a group-by key, the
      ordering defaulted to the id of the custom record. For example, if I
      create a custom field on partners that points to a custom model
      'x_grade' on which an 'x_sequence' field exists, I could order my grade
      in their own list view according to their sequence, but any read on
      partners grouped by this 'x_grade_id' field would order the returned
      groups by id while I would prefer to have them ordered according to the
      'x_sequence' field.
      
      This commit introduces a new field 'default_order' on the ir.model model
      that can store this default ordering clause (as an SQL expression).
      
      Co-Authored-By: default avatarRaphaël Collet <rco@odoo.com>
      4d2aa271
    • Damien Bouvy's avatar
      [IMP] tests: add registry cleanups in Single and Savepoint tests · 8dab6caf
      Damien Bouvy authored
      
      In some cases, the registry might be updated during a test step
      (creating custom models/fields, for example).  In those cases, there
      should be an explicit call to `reset_changes` on the registry to make
      sure that the next test class starts with a registry that is consistent
      with the database state.
      
      Co-Authored-By: default avatarRaphaël Collet <rco@odoo.com>
      8dab6caf
    • Damien Bouvy's avatar
      [IMP] base: ensure correct inheritance chain in registry · c643be76
      Damien Bouvy authored
      
      When removing a custom model, it remained listed in the base classes
      (normally `base` and also possibly a list of mixins; e.g. `mail.thread`
      or `mail.activity.mixin`) list of inheriting classes, possibly causing a
      crash when trying to reload the registry.
      
      This commit ensures that any custom model is removed from its parent
      class `_inherit_children` set; it will be re-added automatically during
      the call to `_build_model` if the custom model still exists.
      
      Co-Authored-By: default avatarRaphaël Collet <rco@odoo.com>
      c643be76
    • Damien Bouvy's avatar
      [IMP] base: correctly escape identifiers in reflection queries · eaccecd6
      Damien Bouvy authored
      
      When the db reflects the python models at startup, a query is generated
      to update various `ir` models (models, fields, etc.). This query did not
      properly escape identifiers, preventing the use of the 'order' field
      name on ir.model because it is a reserved keyword in SQL and wasn't
      escaped.
      
      This commit introduces proper escaping for these reflection queries.
      
      Co-Authored-By: default avatarRaphaël Collet <rco@odoo.com>
      eaccecd6
    • mgh-odoo's avatar
      [IMP] sale_coupon: coupon layout and usability improve · c2775164
      mgh-odoo authored
      some layout fixed and confusing string of promo_applicability option is
      changed to 'Send a Coupon' form 'Apply On Next Order'.
      
      Task-ID: 2027296
      Closes #34620
      c2775164
    • Andrea Grazioso (agr-odoo)'s avatar
      [FIX] point_of_sale: send receipt ticket as attachment · 9d9d362d
      Andrea Grazioso (agr-odoo) authored
      
      Open POS, make an order, on the payment screen select email, select a
      customer, pay and validate.
      
      The receipt will be not an attachment, but a code image. The side effect
      is the visualization dependant on the viewer (email client, webmail,
      etc.)
      
      opw-2179303
      
      closes odoo/odoo#44354
      
      X-original-commit: c4ea4c045b97379b3c2f9e4904fb659d232bf41a
      Signed-off-by: default avatarNicolas Martinelli (nim) <nim@odoo.com>
      9d9d362d
    • Andrea Grazioso (agr-odoo)'s avatar
      [FIX] sale: propagate bank account infos to invoice · 6dc3386c
      Andrea Grazioso (agr-odoo) authored
      
      Fill bank account information for the current company
      Create an Invoice by hand, under "Other info" tab the Bank Account
      section is filled.
      Now create a Sale order, confirm it and create the invoice.
      
      The invoice created from the sale order is missing the Bank Account
      section, this in turn disable the QR code generation. Adding th
      erequired information when creating the invoice from the sale
      order fix the issue
      
      opw-2181580
      
      closes odoo/odoo#44353
      
      X-original-commit: bea0ee1f484bd25fab1ed4170d88629c4fb2709c
      Signed-off-by: default avatarNicolas Martinelli (nim) <nim@odoo.com>
      6dc3386c
    • Thibault Delavallée's avatar
      [IMP] event: allow to edit description directly in event application · aed6510a
      Thibault Delavallée authored
      
      Event holds a description field that is not displayed nor editable in
      frontend. IN this commit we display it in backend form view, allowing
      to edit it.
      
      With the upcoming facebook synchronization it allows to directly populate
      it with facebook information. See Enterprise PR odoo/enterprise#8058 .
      
      Task ID 1999230
      Closes PR #44359
      
      Related: odoo/enterprise#8058
      Signed-off-by: default avatarThibault Delavallee (tde) <tde@openerp.com>
      aed6510a
  4. Jan 27, 2020
    • Nicolas Lempereur's avatar
      [FIX] mass_mailing, web_editor: edit font awesome icon with zoom · 661e190a
      Nicolas Lempereur authored
      
      In case of font-awesome icon when the browser is being zoomed, we can
      get a decimal font-size.
      
      There is a system that transform font-awesome in image links so they are
      readable in any email client (supporting image) but it did not take into
      account decimal font-size.
      
      With this changeset, we only send a integer font size: we do not try to
      get the original value because styling is relative on elements, a 90%
      zoom ratio could lead to a 98% font-awesome icon ratio.
      
      Also improve edition of font-awesome icon edition after first save by
      reverting the transformation to image on edit. Thanks to that, the
      original size will also be reinstated and will not depend on zoom on
      previous save.
      
      opw-2156069
      closes #43949
      
      closes odoo/odoo#44033
      
      X-original-commit: fe72bf01
      Signed-off-by: default avatarNicolas Lempereur (nle) <nle@odoo.com>
      661e190a
  5. Dec 17, 2019
Loading