1. 06 Oct, 2020 1 commit
  2. 03 Aug, 2018 1 commit
    • Mitali Patel's avatar
      [IMP] Portal - Share link : Easily share the url of a document · 84f528bc
      Mitali Patel authored
      Purpose
      =======
      - Quickly share the url to someone else (a client, a colleague,...)
      - Ensure that the recipient can access at least
        the portal view of the shared record.
      - Typically used when a client cannot retrieve the mail to access his order.
        The share link can be used in this case.
      
      Specifications
      ==============
      For any object inheriting form portal.mixin:
          - Add a button SHARE (not visible in edit mode)
          - When clicking on this button, a popup opens with :
              - A warning message for tasks and projects only (see below)
              - the link (like in gmail) that can be copied
              - Recipients
              - mail composer (with preselected template) ==> see below
              - button [Send Link] [Copy Link] Discard
              - After sharing document, put internal note like
                "Document shared to xyz,...." with template message
          - Anyone with the link, even anonymous user (not logged in) can have access
            to the document with the access token provided in the url.
      
      Impacted models:
          - account.invoice (Community)
          - project.project (Community)
          - project.task (Community)
          - purchase.order (Community)
          - sale.order (Community)
          - helpdesk.ticket (Enterprise)
      
      Warning messages and access rules:
          Allowed :
              - SO canceled or draft will be accessible with the link
                with access_token
              - If the customer account is B2B (signup not enabled), the recipient
                will anyway see the document as the user specifically wants the
                recipient to see the document.
          Restrictions :
              - For Project and Task, if the privacy is not public, then, there is a
                contradiction between the access_token mechanism
                and the privacy of the document.
              - A warning message will be displayed in the share wizard to inform the
                user if the document cannot be visible by the recipients and to
                ask him to set the privacy to 'Visible by following customer'.
                The send button will, in that case, be hidden.
              - To avoid to block the share for a new project, default privacy value
                is now set to 'Visible by followong customer'
      
      Technical implementation
      ========================
      - Move the access_token mechanism (field + methods + mail controller)
        to the portal.mixin to be able to use it in a generic way for each object
        inheriting the portal.mixin
      - Generalise a part of the _*model*_get_page_view_values method
        into a single one in portal
      - Generalize the _*model*_check_access into the portal controller of the
        portal module
      - Remove the init_column + default value for the access_token
        > old records have an access_token,
        > new one won't but it will be generated on demand via the get_access_token
        Done for performance reasons
      - Add share button into action menu separately. + kanban view context menu
        (except for task and project where button not in action menu but 'simple'
        button for task and project because other modules already provide action
        to send documents by email, which is not the case for project and task.)
      - Add a sign_token used to authentify the recipient in the portal view chatter,
        if any. The message will be posted as if the user was logged in.
      - Set the _get_share_url as private for security reason
      - Add a redirect parameter to _get_share_url to get
          If false : The direct portal view url
          If True : The redirect url (mail/view/?)
      - Cleaning up unnecessary code
      
      - Bug fix :
          - Before, if user was not logged and record had partner_id,
            if partner id was null, post message was done as admin.
            Now, the post message is done as public user.
          - If the user had an uid but had no access_token, he could be able
            to gain the access token of the record.
            check_access_rights was missing in the get_access_action.
      
      Task ID : 30985
      Closes #25629
      84f528bc
  3. 20 Jul, 2018 1 commit
    • eco-odoo's avatar
      [ADD] account: onboarding panel for invoicing · d1ec3306
      eco-odoo authored
      Add an onboarding panel for invoicing, it appears above the invoice
      list.
      After going through the steps the system should be all set to send real invoices.
      
      In the payment module, add a payment acquirer step and add it to the invoice onboarding panel.
      
      task: 60668
      d1ec3306
  4. 06 Sep, 2017 1 commit
    • Thibault Delavallée's avatar
      [IMP] account: improve invoice page view on customer portal · e6120eb7
      Thibault Delavallée authored
       * keep query on pdf link so that customers have access to the pdf when
         using the access token instead of having an access rights error;
       * add redirect to record override that allow to take into account
         /mail/view links containing an access token for invoices like what
         is already supported for sale orders;
       * improve action buttons display;
       * reduce headers and better display invoice name and customer address;
      e6120eb7
  5. 08 Aug, 2017 3 commits
    • Thibault Delavallée's avatar
      [MOV] account_*: move account customer portal to account · 3836aac4
      Thibault Delavallée authored
      As already done for sale, customer portal for account is moved to account
      module directly. Account now depends on portal module and website module
      is not necessary anymore to display the account customer portal.
      3836aac4
    • Thibault Delavallée's avatar
      [MOV] website_portal, portal: move customer portal to portal module · ea27c1b7
      Thibault Delavallée authored
      This commit moves the whole customer portal to the portal module.
      It now completely uses portal and http_routing features and is not
      dependent on website anymore.
      
      An override of web controller is added in portal in order to redirect
      portal users to /my instead of /web. That way once having the customer
      portal installed all share users are correctly redirected to their
      account.
      
      All modules defining customer portal templates and controllers are
      updated accordingly.
      ea27c1b7
    • Thibault Delavallée's avatar
      [ADD] portal: add module for customer portal and sharing features · da8d418f
      Thibault Delavallée authored
      This module adds required base code for a fully integrated customer
      portal. It contains the base controller class and base templates.
      Business addons will add their specific templates and controllers
      to extend the customer portal.
      
      This module contains most code coming from odoo v10 website_portal.
      Purpose of this module is to allow the display of a customer portal
      without having a dependency towards website edition and customization
      capabilities.
      
      Some CSS files used in frontend assets are already moved to have a
      working portal skeleton. A is_public method on users is also added
      as it will be used in various portal code soon.
      da8d418f
  6. 28 Apr, 2017 1 commit
  7. 08 Jan, 2016 1 commit
  8. 02 Jun, 2015 1 commit
  9. 31 Dec, 2014 1 commit
  10. 02 Jul, 2010 1 commit
  11. 12 Jan, 2010 1 commit
  12. 14 Oct, 2009 1 commit
  13. 13 Oct, 2009 1 commit
  14. 06 Mar, 2009 2 commits
    • Christophe Chauvet's avatar
      [IMP] · 6d2fac36
      Christophe Chauvet authored
       * add missing tools.translate
       * translate all missing raise
       * add encoding: utf-8 in missing file
       * add vim comment (when missing) at the end of file
       * convert tabs to spaces (PEP8 Compliant)
       * more pythonic when concatenate value
      
      bzr revid: christophe.chauvet@syleam.fr-20090306235010-kf09klskd2voo5cp
      6d2fac36
    • Christophe Chauvet's avatar
      [IMP] · 28ede437
      Christophe Chauvet authored
       * add missing tools.translate 
       * translate all missing raise
       * add encoding: utf-8 in missing file
       * add vim comment (when missing) at the end of file
       * convert tabs to spaces (PEP8 Compliant)
       * more pythonic when concatenate value
      
      bzr revid: christophe.chauvet@syleam.fr-20090306221824-xt1oeip60sq8fwws
      28ede437
  15. 04 Jan, 2009 1 commit
  16. 03 Nov, 2008 1 commit
  17. 03 Sep, 2008 2 commits
    • Jay Vora's avatar
      Modifs · 3cd0b286
      Jay Vora authored
      bzr revid: jvo@tinyerp.com-20080903100107-ombah3z2yzmm6qv7
      3cd0b286
    • Fabien Pinckaers's avatar
      Modifs · bca0c8d5
      Fabien Pinckaers authored
      bzr revid: fp@tinyerp.com-20080903094035-thuv8ks4lkvisvve
      bca0c8d5
  18. 02 Sep, 2008 1 commit
  19. 01 Sep, 2008 1 commit