Skip to content
Snippets Groups Projects
  1. Aug 09, 2019
    • David Beguin's avatar
      [IMP] mail, mass_mailing : reset bounce on mail reception · 92fe83ec
      David Beguin authored
      PURPOSE
      
      Add some improvements in mail gateway: remove private discussion, improve
      bounce management, allow resetting bounce counters, improve automatic set or
      reset of blacklists and ease mass mailing inheritance.
      
      SPECIFICATIONS
      
      The number of message bounce is incremented each time the email bounce
      on a specific email address. To have a correct information, we should
      reset to zero this counter if we receive a mail from this address.
      Indeed, if we receive an email from an email address, this email is
      active and the message bounce number (if > 0) is not relevant anymore.
      
      Only models inheriting form blacklist are impacted by this improvement
      in order to limit a bit side effect.
      
      Also, add a check in autoblacklist rule. No need to check the stats
      if message_bounce is < 5.
      
      This commit introduces
      
        * ``_routing_reset_bounce`` routing method managing the bounce reset;
        * ``_message_reset_bounce`` model method that resets bounce counter
          in blacklist enabled models;
      
      LINKS
      
      Related to task ID : 1893155
      Linked to PR #33340
      92fe83ec
    • David Beguin's avatar
      [REF] mail: move and improve bounce management in mail gateway · f4524f03
      David Beguin authored
      PURPOSE
      
      Add some improvements in mail gateway: remove private discussion, improve
      bounce management, allow resetting bounce counters, improve automatic set or
      reset of blacklists and ease mass mailing inheritance.
      
      SPECIFICATIONS
      
      Purpose
        * move bounce information detection in message parsing. It allows to have
          this information available in various steps of routing instead of having
          to manually re-compute them;
        * handle bounce in specific methods allowing easy override;
        * improve bounce management, notably when detecting a bounce not linked
          to the bounce alias configuration;
        * better integration with blacklist mechanism;
      
      Specifications
        * compute bounce information in ``_message_parse_extract_bounce``.It parses
          bounce information and returns a dictionary allowing to update parsed email
          values;
        * remove override in mass_mailign that basically does what mail already
          does;
        * manage bounce in ``_routing_handle_bounce``;
        * when detecting a bounce, correctly call the bounce management method on
          all models inheriting from blacklist;
        * correctly update bounce counter;
        * bounced mailing traces and automatic blacklist in mass mailing should
          be done in ``_routing_handle_bounce``;
        * add some tests;
      
      LINKS
      
      Related to task 1893155
      Linked to PR #33340
      f4524f03
    • Thibault Delavallée's avatar
      [REF] mail: perform some code cleaning in mail gateway about parsing email values · 7b79045f
      Thibault Delavallée authored
      PURPOSE
      
      Add some improvements in mail gateway: remove private discussion, improve
      bounce management, allow resetting bounce counters, improve automatic set or
      reset of blacklists and ease mass mailing inheritance.
      
      SPECIFICATIONS
      
      Parsing email values: make message_parse effectively prepare all required
      values for later processing
      
        * update message_parse to add some more data directly in parsed dictionary
          and avoid having to parse value again in later processing and computation.
      
          * notably recipients computation is now done directly in parsing. It
            includes email check and reconstruction using tools methods. That way
            routing just has to handle those values and not compute part of them;
          * from and cc are correctly managed with parsed and cleaned (sanitized)
            versions in dictionary;
          * remove all code decoding message header and replace them by fetching
            the parsed value instead;
      
        * filter parsed values before calling message_post to ensure right values
          are given to it instead of having to manage them in message_post. Indeed
          caller has to give the right input;
        * make parsing sub-methods (extract payload, post process payload) have
          a dictionary as input and output to always manage a dictionary of values
          through the parsing methods and update their namespace;
      
      Routing: remove deprecated code parts
      
        * remove use of email_references regex. Indeed emails are routed using their
          messageId and not the regex anymore since several versions [1];
        * clean some unnecessary variables;
        * simplify variable type input, like message_parse accepts only valid
          email.message instances and to avoid several decode / encode. Tests are
          updated accordingly;
      
      Update docstrings of those methods.
      
      LINKS
      
      Related to task 1893155
      Linked to PR #33340
      
      [1] See df037e29 and 0028c421
      7b79045f
    • Thibault Delavallée's avatar
      [REF] mail: simplify and rename message_route_verify · 442e535f
      Thibault Delavallée authored
      PURPOSE
      
      Add some improvements in mail gateway: remove private discussion, improve
      bounce management, allow resetting bounce counters, improve automatic set or
      reset of blacklists and ease mass mailing inheritance.
      
      SPECIFICATIONS
      
      Purpose: clean mail gateway code by cleaning message_route_verify
      
      ``message_route_verify`` is therefore renamed to ``_routing_check_route`` as
      there are already some methods prefixed by routing, related to email routing.
      This method is also made private as it has no real use for external world.
      
      Parameters of this method are also cleaned. Various cleanings and code
      improvements made some parameters not necessary anymore :
      
       * create_fallback: was always True;
       * update_author: was always True;
       * drop alias: no real use as aliases are used to compute the route and its
         access, dropping it at that point has no effect on code;
       * assert_model: renamed to raise_exception to be more coherent with the
         same kind of parameter used in Odoo;
      
      LINKS
      
      Related to task 1893155
      Linked to PR #33340
      442e535f
    • Thibault Delavallée's avatar
      [REF] mail: remove private discussion support in mail gateway · e132c40f
      Thibault Delavallée authored
      PURPOSE
      
      Add some improvements in mail gateway: remove private discussion, improve
      bounce management, allow resetting bounce counters, improve automatic set or
      reset of blacklists and ease mass mailing inheritance.
      
      SPECIFICATIONS
      
      Private discussion support in mail gateway means having incoming messages
      not linked to a document. It means having a void model and res_id on related
      messages.
      
      Old private conversations in Odoo were implemented using messages not linked
      to any document [1]. It was possible to send an email to some people through
      the UX and they were able to answer it. Messages were not attached to any
      document and model. There were some limitations to this feature, notably it was
      limited to replies (no beginning of private discussion through mail gateway).
      One way of doing it was through the use of res.users aliases [2]. There was
      also a vaguely twitter-lite use of chatter on HR employee profiles linked
      to users aliases, then removed with an explicit support of private
      discussions [3].
      
      It is not supported anymore since discussion between users is now done using
      chat. Aliases on users have since been removed [4]. Contacting partners or
      customers can be done on business documents or on channels. Simple email
      discussion is not supported in Odoo as it is not the purpose of mailgateway.
      
      This commit removes code related to private discussion in mail gateway and
      some specific support in message_post method.
      
      LINKS
      
      Related to task 1893155
      Linked to PR #33340
      
      [1] History is a bit messy, see notably fd90140d and commits around
      [2] User alias addition 052f2ace
      [3] End of employee twitter-like and posting on users = private discussion 89896f32
      [4] User alias removal 029d1baf
      e132c40f
    • Thibault Delavallée's avatar
      [FIX] sms: correctly take mobile or phone as valid number fields for partners · f7a17c23
      Thibault Delavallée authored
      
      Partner / Contact model may hold valid mobile numbers in mobile or phone
      fields.
      
      LINKS
      
      Task 1997464
      
      closes odoo/odoo#35599
      
      Signed-off-by: default avatarThibault Delavallee (tde) <tde@openerp.com>
      f7a17c23
    • Thibault Delavallée's avatar
      [FIX] mass_mailing: allow to delete recently scheduled mailings · 2f755342
      Thibault Delavallée authored
      Scheduling a mailing creates a wizard with a m2o linking the mailing. While
      this wizard is still alive and not garbage collected it is impossible to
      delete the mailing. This commit fixes that.
      
      LINKS
      
      Task 1997464
      2f755342
  2. Aug 08, 2019
  3. Aug 09, 2019
    • Sapan Zaveri's avatar
      [IMP] hr, hr_attendance: badge creation and few usability improvement · dafb128c
      Sapan Zaveri authored
      
      hr:
      -rename btn 'generate badge ID' to 'generate'
      -When the badge ID is set, replace the button Generate by "Print Badge"
      
      hr_attendance:
      -Rename menu 'Manage Attendances' to "Manager"
      -Add a column "Work Hours" to attendee tree view
      -Add a <br> after "Welcome to"
      -add class text-muted on "or"
      -remove class "text-muted" on "scan your badge
      -Rename the primary btn into "Identify Manually"
      
      Task-2040884
      Closes: #35473
      
      Signed-off-by: default avatarRomain Libert (rli) <rli@odoo.com>
      dafb128c
  4. Aug 08, 2019
    • Antoine Prieels's avatar
      [IMP] hw_drivers: PrinterDriver get hotspot name for status ticket · 7cb95188
      Antoine Prieels authored
      
      When the IoT Box is not connected to the IoT Box, a hotspot would be
      created to configure it. The name of this hotspot is printed on a
      status receipt if a printer is connected. Previously, this ticket only
      showed the default name of the hotspot, but this name will be different
      if the user renamed the Box. We then read the name of the hotspot from
      the config.
      
      closes odoo/odoo#33095
      
      Signed-off-by: default avatarpimodoo <pimodoo@users.noreply.github.com>
      7cb95188
    • Antoine Prieels's avatar
      [IMP] pos_restaurant: Order printers with HTTPS · 1e5ed548
      Antoine Prieels authored
      To use a kitchen printer, the user can only enter the IP of the Box and
      it would be transformed into an URL with the protocol and port number.
      This only supported HTTP so people that used HTTPS needed to enter the
      full url to their Box.
      1e5ed548
    • Antoine Prieels's avatar
      [REF] pos, pos_*: Change Escpos' XML to HTML · f2230f44
      Antoine Prieels authored
      Receipt are now printed as JPGs so receipts need to be formatted as
      classic HTML to be rendered as images by Wkhtmltoimage.
      
      There were two versions of the receipt for an order. The one in XML,
      to be printed, and the one in HTML, that was displayed in the POS.
      Since both of them are now HTML, we can remove one of them.
      
      TaskID: 1939455
      f2230f44
    • Antoine Prieels's avatar
      [IMP] hw_drivers: Print Star printers notice · 463c0ff3
      Antoine Prieels authored
      We communicate with receipt printers using the ESCPOS drivers.
      By default, Star printers use the Star mode. This can be changed by
      modifying the position of the DIP-Switches at the bottom of the
      printer.
      
      We provide a link to the documentation to the user if its printer is
      not correctly configured.
      463c0ff3
    • Antoine Prieels's avatar
      [REF] pos: Replace hw_escpos by PrinterDriver · 03b2f7b7
      Antoine Prieels authored
      ESCPOS printers are now supported as IoT Devices, just like any other
      printer. We now transform the receipts to JPGs, transform these JPGs
      into ESCPOS commands and send them via Cups, adding support for network
      printers. Since we now print images, we can now print special
      characters and therefore add support for other languages such as
      Arabic.
      
      The JPG is generated in the browser, with the help of html2canvas.
      
      `hw_escpos` is left untouched to allow backward compatibility and
      should be removed when v12 is no longer supported.
      
      In the PoS, all the code for printing has been moved from ProxyDevice
      to a separated JS file.
      
      TaskID: 1939455
      03b2f7b7
    • Antoine Prieels's avatar
      [IMP] hw_drivers: Move PrinterDriver to Community · dd7de1bc
      Antoine Prieels authored
      Printers should be usable by IoT Boxes connected to a community DB.
      
      TaskID: 1939455
      dd7de1bc
  5. Aug 09, 2019
  6. Aug 07, 2019
  7. Aug 08, 2019
    • fja-odoo's avatar
      [IMP] website, *: improve published smart button · 736353b1
      fja-odoo authored
      
      * = web, website_blog, website_crm_partner_assign, website_event,
      website_event_track, website_forum, website_hr_recruitment,
      website_livechat, website_partner, website_profile, website_sale,
      website_sale_delivery, website_slides
      
      The published button name is a bit ambiguous, now it will clearly state
      what it does with a new title : "Go to Website". The "Published",
      "Unpublished" state is shown with the globe icon changing color
      (green and red) and a title on the button.
      
      Badge and Delivery don't have a website page, the button will then be
      a publish/unpublish button in the backend.
      
      task-2002435
      
      closes odoo/odoo#34261
      
      Signed-off-by: default avatarXavier Morel (xmo) <xmo@odoo.com>
      736353b1
    • Katherine Zaoral's avatar
      [ADD] base: Change Argentina country data · 50155ae0
      Katherine Zaoral authored
      
      * set country VAT Label "CUIT" which is the country TAX id name  in
      Argentina in order to used in reports and other places in Odoo. CUIT
      mean "Código Único de Identificación Tributaria",
      
      * update address format of the country.
      
      * Use the state name instead of the state code: The address for the
      company and partner was showing the state code (defined by ISO) but
      this one are not the ones know for the common use. In order to avoid
      errors we use the state name instead of the state code.
      
      * Also change the order of the city state and zip are shown in address
      in order to match the address in Argentinain "way".
      
      closes odoo/odoo#34961
      
      Signed-off-by: default avatarJosse Colpaert <jco@openerp.com>
      50155ae0
  8. Jul 26, 2019
  9. Aug 08, 2019
    • Simon Lejeune's avatar
      [REF] stock: immediate transfer by default · fd6aa428
      Simon Lejeune authored
      
      Immediate transfer (no reservation, auto-confirmation, etc) should be
      the default mode when creating manually a picking. The rationale is that
      "the user wants to quickly encode stuff" and "it's better for the
      onboarding".
      
      As the default mode was already changed back to "planned transfer" because
      users complained, this time we adapted the code so that the default mode
      could be changed in python.
      
      - re-order the imports of stock_picking.py.
      - made all links to the picking from the picking type go through
      _get_action (it wasn't the case for ready).
      - adapt the context in the xml so that they are parse-able by
      literal_eval.
      - remove three actions that weren't used anymore.
      - the user can create an ir config "stock.no_default_immediate_tranfer"
      fill it with anything to get back the planned mode.
      
      task-2043846
      
      closes odoo/odoo#35550
      
      Signed-off-by: default avatarArnold Moyaux <amoyaux@users.noreply.github.com>
      fd6aa428
    • Géry Debongnie's avatar
      [FIX] web: remove flickering in calendar popover · 8ce97d14
      Géry Debongnie authored
      
      Before this commit, the calendar popover was opened before the popover
      widget was ready.  This is not usually the way it is done in odoo.
      
      closes odoo/odoo#31874
      
      Signed-off-by: default avatarGéry Debongnie (ged) <ged@openerp.com>
      8ce97d14
  10. Aug 07, 2019
  11. Aug 02, 2019
Loading