Skip to content
Snippets Groups Projects
  1. Jun 12, 2018
  2. Jun 11, 2018
  3. Jun 08, 2018
    • Pedro M. Baeza's avatar
      [FIX] base: Allow to create a contact without type · 64645457
      Pedro M. Baeza authored
      If you don't define an explicit address type, then the
      record is not going to be accessible.
      
      In the ORM:
      >>> env['res.partner'].create({'name': 'Test', 'type': False})
      res.partner(44356,)
      >>> env['res.partner'].search([('type', '!=', 'private'), ('id', '=', 44356)])
      res.partner()
      >>> env['res.partner'].search([('type', '=', False), ('id', '=', 44356)])
      res.partner(44356,)
      
      due to the fact that NULL in the database is undefined and can't be
      compared to a specific key.
      64645457
  4. Jun 06, 2018
    • Toufik Benjaa's avatar
      [FIX] crm: Access rights issues in contact merging · 4f2442c4
      Toufik Benjaa authored
      - When merging partners with fields restricted to certain groups which the user doesn't belong, an access error is raised.
        To avoid this, we only merge fields that are accessible by the user. We do so by using the method fields_get() that only returns the fields accessible by the current user.
      4f2442c4
    • Oliver Laurent's avatar
      [FIX] base: timeout on smtp connections · a52c545d
      Oliver Laurent authored
      Currently when connecting to a smtp server, if no response is returned
      and no error is raised, the `SMTP()` instantiation method never ends.
      
      This PR is inspired by 54a477d7 related to `fetchmail()`.
      Possibly, a better way exists but it has to change some methods
      signatures.
      
      Closes #24877
      opw-1851030
      a52c545d
    • Adrian Torres's avatar
      [FIX] orm: re-create constraints of extended fields · ea23a1ac
      Adrian Torres authored
      Before this commit:
      
      * Module A defines a field X of model M
      * Module B inherits from model M without touching field X
      * Module C inherits from model M and extends field X by giving an INDEX
      / NOT NULL constraint.
      * Module B and C depend from Module A, but not each other
      
      If all three modules are installed and Module B is updated, the INDEX /
      NOT NULL constraint could be dropped.
      
      This happens because Module B can be loaded before Module C is loaded,
      if that's the case, then after the upgrade of Module B, during the
      schema checking, we verify that the field object we have and the field
      on the DB are the same, since Module B doesn't introduce the index then
      this check is false and we drop the index. When we get to loading Module
      C, we do not do any schema checking because the module is not marked as
      `to upgrade`, therefore the index is lost forever.
      
      To solve this, we re-init the models that belong to the set of the intersection
      between upgraded and modified models and loaded and modified models.
      
      Fixes #24958
      Unverified
      ea23a1ac
    • Goffin Simon's avatar
      [FIX] account: Currency rate conversion issue in vendor bill · 367fadc8
      Goffin Simon authored
      Steps to reproduce:
      
      - Enable multi currencies
      - Make sure that the current rate of a foreign currency (i.e. $) is not 1.0 (i.e. 0.5)
      - Create a purchasable product with a cost (i.e. 100€)
      - Create a vendor bill in a foreign currency (i.e. $)
      - Add the product on the invoice
      
      Bug:
      The unit price was equal to 25$ instead of 50$
      
      Technical reason:
      
      The function "_onchange_product_id" was called twice (the second time by function
      "_onchange_uom_id") and the price unit was converted twice in the currency of the vendor bill.
      The idea of this fix is to only convert in the currency when the unit price is set
      by the system.
      
      Fixes #24751
      opw:1849212
      367fadc8
  5. Jun 05, 2018
  6. Jun 01, 2018
  7. May 31, 2018
  8. May 30, 2018
  9. May 28, 2018
    • qsm-odoo's avatar
      [FIX] web_editor: properly save a t-field in a t-ignore environment · ea0fcd52
      qsm-odoo authored
      When a t-field element was in an editable t-ignore environement,
      modifying it was leaving the edit mode style attached to it. This
      was because of:
      1) When the t-field element was changed, it was marked dirty but
         also its parent editable container. Fixing this, only solves
         the case where only the t-field (and not one of its neighbors)
         is changed but it was worth fixing anyway.
      2) Before saving an element, the potential 'o_editable' and
         summernote classes were not removed of its descendant and were
         thus saved.
      
      Bug found with task-38069, merged in stable as it might occur there
      too.
      ea0fcd52
  10. May 24, 2018
    • Christophe Simonis's avatar
      Revert "[FIX] mass_mailing: unsubscribe not working in multi lang" · 34f567dd
      Christophe Simonis authored
      commit a3ab33f2 introduced invalid code
      34f567dd
    • Jérome Maes's avatar
      [FIX] purchase: correct product cost in reporting · 919a1af9
      Jérome Maes authored
      product.product inheritS from product.template, and they both
      define the 'standard_price' field, but implement it differently;
       - product: the field is a company dependent one (so non stored)
       - template: the field is a computed one based on tis variants
      
      For the first case, since the field is not stored in database, when
      doing SQL query, we have to get the value from the table ir_property.
      That is what purchase report does, but instead of searching on resource
      'product.product', it does it on 'product.template'. There are
      obviously no entries in ir_property table for 'standard_price' field
      on product template. As consequence, the "product value" (cost)
      is always null in purchase reporting.
      This commit fixes that by modifying SQL query to get the good
      value from ir_property table.
      919a1af9
    • Yannick Tivisse's avatar
      [IMP] base: Add support for private addresses · 28179bc8
      Yannick Tivisse authored
      This is a backport of commit https://github.com/odoo/odoo/commit/2f15a5fa647d55df36c9019df467802a3aa9b4e3
      
      Purpose
      =======
      
      Add the possibility to create private addresses, only accessible for a subset
      of users.
      
      Specification
      =============
      
      - Add a new 'Private' partner type
      - Add a res.groups in base 'Access to Private Addresses'
      - Add ir.rules for the following behavior:
          - Every employees/internal users can read non-private addresses
          - Only users in group_private_addresses can access private addresses
      - Add in base a simplified form view for private addresses
      
      The following points won't be backported:
      - A HR Officer is automatically granted in group_private_addresses
      - Use the simplified form view to open the address_home_id form on employees
      That's because it requires to update 'base' to make it work. If a user only
      update 'hr', this will break his instance while 'base' isn't updated.
      
      But these modifications can be applied manually quite easily.
      28179bc8
    • Goffin Simon's avatar
      [FIX] mass_mailing: unsubscribe not working in multi lang · a3ab33f2
      Goffin Simon authored
      When installing the website with a lang  different than the one set
      on the user, the button unsubscribe in the mass mailing snippets
      didn't work because the unsubscribe link contains the code of the
      language. The function send_get_email_dict in model mail.mail didn't
      expect this behavior and so couldn't set the right unsubscribe link
      in the mail.
      
      opw:1850696
      a3ab33f2
  11. May 18, 2018
  12. May 17, 2018
    • Fabien Meghazi's avatar
      [FIX] server: fix support for systemd socket activation in threaded server · 866d1e71
      Fabien Meghazi authored
      This patches fixes the untested and broken draft of inetd and systemd
      activation support in the threaded server.
      
      This patch also fixes the loss of the process environment in the
      `_reexec()` function when Odoo is respawning during the following events:
      
          - SIGHUP signal is received
          - one click install has been triggered
          - code reload needed when using `--dev=reload`
      866d1e71
    • Lucas Perais (lpe)'s avatar
      [FIX] l10n_fr_fec: EcritureLib should not be empty · cd26eb8e
      Lucas Perais (lpe) authored
      Make an account move with two move lines.
      In those lines' label, just hit the space bar, and post your entry.
      
      Now, get the FEC report.
      
      Before this commit, the EcritureLib field was empty
      
      After, it has the value '/'
      
      closes #24734
      cd26eb8e
  13. May 16, 2018
  14. May 15, 2018
    • RomainLibert's avatar
      [FIX] event: fix bug with users · 19878d01
      RomainLibert authored
      We need to fix a problem with the users where someone might get
      informations on registrations.
      19878d01
    • Nicolas Lempereur's avatar
      [FIX] hr_recruitment: job stages choosen manually · c39d40f9
      Nicolas Lempereur authored
      In 9.0, stages of a job position in recruitment are not share by
      default, there is a "New" stage and existing stages can be added in the
      form view (since 780f46ae).
      
      When creating a job position, the "New" is not working with the given
      widget type.
      
      This commit doesn't show stages in the form view until the record is
      created.
      
      opw-1839217
      closes #24706
      c39d40f9
  15. May 14, 2018
    • Christophe Simonis's avatar
      [FIX] website: correct GeoIP Legacy compatibility · 04508683
      Christophe Simonis authored
      Attribute is different for country and continent objects.
      04508683
    • Denis Ledoux's avatar
      [FIX] mass_mailing: force to not use a template for the rendering · e48767fe
      Denis Ledoux authored
      If the user configures a default `template_id` for
      the `mail.compose.message`,
      this template was used by the mass mailing to render the email,
      and, among others,
      it therefore used the `email_to` of this email template,
      to render the recipients,
      and it was configured empty or something else than `object.id`,
      it did not used the `active_ids` passed in the context to the
      `mail.compose.message` `create` call to compute the correct
      recipients
      
      To reproduce:
       - In developer mode (?debug)
       - Open the full mail compose message
         e.g. in app sales, open a so, hit new message,
         and hit the button to open the full message composer
       - Set the template to the quotation template is not there already
       - In the debug menu of the dialog, View > Set defaults,
       - Click the radio button to all users, and the default to Use template = ...
       - Then, try to send a mass mailing. It will fail because it cannot
         compute the `email_to` values correctly because the `email_to`
         of the quotation template is empty.
      
      opw-1840287
      e48767fe
  16. May 11, 2018
  17. May 09, 2018
    • Christophe Simonis's avatar
      [FIX] website: GeoIP Legacy compatibility · 4431c8c8
      Christophe Simonis authored
      Some IPs (like google-proxy ones) are not bound to a specific country.
      Legacy Database used to set country_code to 'EU' for these one. geoip2,
      on contrary, does not set the country. Read information from `continent`
      attribute in this case.
      
      opw-1844888
      4431c8c8
  18. May 07, 2018
Loading