Commit Graph
124031 Commits
Author SHA1 Message Date
William Henrotin 8938afa3f6 [IMP] delivery: invoicing policy of delivery price
The delivery carriers get a new field to specify the invoicing
policy. The two cases are :
  - Estimated cost: the delivery price is charged directly on
the sale order based on the estimated fee
  - Real cost: the delivery price is estimated from the sale order
but not added in the delivery line (we get a line with quantity=1 and price = 0).
Once the delivery is validated, the delivery price is recomputed.
The new price depends on the integration level. If it's 'rate', the price is
the estimated one (carrier.rate_shipment()). If it's 'rate_and_ship, the price
is the one given by the carrier at the delivery

The bases carriers (fixed_on_rule and base) always use 'Estimated Cost'
as their price should not be changed between the sale order creation
and delivery validation

Task : 1908654
2019-02-11 13:55:55 +00:00
Robot Odoo 8b7605c9e5 [MERGE][ADD] website_slides_sale: allow to sell slide.channel
Purpose of this merge is to be able to sell courses [1] when using the
slides / eLearning platform.

This commit adds sale capabilities on a slide.channel. A slide.channel can
now have the 'payment' visibility, that requires a 'product_id' configured
on the channel.

When a customer purchases a product linked to a channel, he is added to the
members of the channel (see slide.channel.partner_ids) when his order is
confirmed.

This merge is linked to task ID 1937160 and PR #30914. Future tasks will
improve homepage of channels and clearly show public, private and payment
based channels [2].

[1] see task ID 1902304 (main eLearning task) PR #29876;
[2] see task ID 1936153 (new homepage for slides) PR #30770;
2019-02-11 20:29:40 +01:00
Aurélien Warnon a15810e0c2 [IMP] website_slides: add a setting to install website_sale
Purpose
=======

With the new 'website_slides_sale' module users can now sell slide.channels.

This commit adds a setting to let the user know he has to install website_sale
to be able to sell courses / documentation.
2019-02-11 17:47:35 +00:00
Aurélien Warnon e5536fc07b [IMP] website_slides: add invite wizard for 'invite' slide_channel
Purpose
=======

Currently, the slide_channels having a visibility configured as 'invite' could
only add members manually.

This commit adds an 'Invite' button on top of the slide channel form that opens
a wizard allowing to send emails to contacts and also make them members of the
related slide channel.
2019-02-11 17:47:22 +00:00
Aurélien Warnon 779d9c9b90 [IMP] website_slides: add a "Attendees" stat button on slide.channel
Task #1937160

Purpose
=======

This commit adds a "Attendees" stat button on the slide.channel form view
showing the members (partner_ids) count.

On click, it redirects to a tree view of slide.channel.partner. The tree
view is configured as editable to be able to administrate members
(add/update/delete).
2019-02-11 17:47:10 +00:00
Aurélien Warnon 9b7bee73e5 [ADD] website_sale_slides: allow to sell slide.channel
Task #1937160

Purpose
=======

This commit adds sale capabilities to a slide.channel. A slide.channel can
now have the 'payment' visibility, that requires a 'product_id' configured
on the channel.

When a customer purchases a product linked to a channel, he is added to the
members of the channel (see slide.channel.partner_ids) when his order is
confirmed.

The feature is added in a new module 'website_sale_slides' that comes as a
bridge auto-installed between 'website_slides' and 'website_sale'.

The final goal is to be able to sell "courses" (see task #1902304).
2019-02-11 17:46:40 +00:00
wan fb8126ddd7 [IMP] l10n_be: change default taxes
Task 1939277
The default tax  TTC (in l10n_be) generate errors in the new business game, need to change that

closes odoo/odoo#30990
2019-02-11 10:34:26 +00:00
Christophe Simonis 1738fbb67e [FIX] test_mail: only patch message_track for test model 2019-02-11 18:35:50 +01:00
Christophe Simonis 8c29df10e0 [MERGE] forward port branch saas-12.1 up to 93d736e905 2019-02-11 17:00:35 +01:00
Christophe Simonis 93d736e905 [MERGE] forward port branch 12.0 up to 6e8dff1952 2019-02-11 16:17:02 +01:00
Christophe Simonis 6e8dff1952 [FIX] purchase: correctly extract date from datetime
Oversight of previous forward-port
2019-02-11 14:23:33 +01:00
Christophe Simonis 75eec26da3 [MERGE] forward port branch saas-11.3 up to 728bb2a28e 2019-02-11 12:47:52 +01:00
Nikunj Ladava 0e71f91fa1 [ADD] payment_payulatam: Add new payment acquirer for Latin America
TaskID 1826303

closes odoo/odoo#24802
2019-02-11 11:36:14 +00:00
Robot Odoo 890e47ea7f [MERGE][REF] website_slides: prepare channel model to eLearning
Purpose of this merge is to prepare eLearning feature by already modifying
channel model.

It includes

 * addition of tag and tag groups on channel, allowing to filter and search;
 * addition of statistics computation on channel, notably tracking completion
   of users;
 * removal of promoted slide feature and addition of specific image field
   on channel;

This merge is related to task ID 1936153 and closes PR #30985. More
generally this merge is linked to ongoing tasks

* task ID 1902304 (main eLearning task) PR #29876;
* task ID 1922159 (new user profile and gamification) PR #30514;
* task ID 1937160 (payment flow and integration with ecommerce) PR #30914;
2019-02-11 12:57:57 +01:00
Robot Odoo 47bb7ef796 [MERGE] mail, hr_holidays, *: add out of office status
*: base, bus, mail_bot, test_mail

Before this task, it was not easy to tell when a user is not available (or is on holiday)
from conversations, such as from chat windows.

With this task, a user can now tell that he is out-of-office from the user menu preferences,
by defining an an out-of-office message. This information will be displayed to other users from
chat conversations and mention suggestions (i.e. with `@`).

Also, the computation of the user `im_status` has been changed when he has an active leave:
an out-of-office message can be set on the leave, and this will be displayed on conversations
instead of the user's out-of-office message from the user menu preferences.

Task: 1856205

closes odoo/odoo#29974
2019-02-11 12:57:48 +01:00
Robot Odoo 768844040f [MERGE][IMP] sale: improve usability of down payments
Task #1908673

Purpose
=======

The "invoice" modal is too complex to use for new users and has a lot of useless options for
the most simple use cases.

The goal here is to remove 2 options of the 'advance_payment_method' field:
* Invoiceable lines
* Invoiceable lines (deduct down payments)

And combine them into a new one: "Standard invoice".

If there are any down payments to deduct, another checkbox field appears under this
one: "Deduct down payments".

This keeps all the invoicing features while simplifying the modal.

Spec
=======
* Remove "invoiceable lines, deduct down payment" and replace by a checkbox
  (checked by default, only visible if down payments to deduct)
* Rename "Invoiceable lines" into "Standard invoice"
* tooltip on radio buttons: A standard invoice is issued with all the order lines ready for invoicing,
  according to their invoicing policy (based on ordered quantity or on delivered quantity).

closes odoo/odoo#29978
2019-02-11 11:41:50 +01:00
Thibault Delavallée 7b81df3747 [REF] website_slides: remove promoted slide feature, add image and channel_type
Purpose of this commit is to clean a bit channel model. Promoted slide
feature is removed as people can already choose an order for a given
channel. Moreover promoted slide will not be used when having a eLearning
display of a channel.

Image field on channels is added as it is not depending on promoted slide
anymore.

To simplify future additions a search-specific template is removed to
have a unique template to display a channel content. It will ease future
merge.

This commit is linked to task ID 1936153 and PR #30985.
2019-02-11 09:55:15 +00:00
Thibault Delavallée 7ee22f1219 [IMP] website_slides: improve and add statistics computation
Purpose of this commit is to add some statistics computation on slide.channel
model. We want notably to have a count of views and votes (likes and dislikes)
on channels. Completion is also computed.

Purpose is to be able to search and order channels based on those statistics.
Having stored computed fields for some statistics help achieving that purpose.

Tests are added.

This commit is linked to task ID 1936153 and PR #30985.
2019-02-11 09:55:12 +00:00
Thibault Delavallée cbc2de0eb6 [IMP] website_slides: add tags and tag groups on channel
Purpose is to be able to filter, search and categorize channels. Notably
with eLearning in mind there will be more channels as a channel will also be
used to hold lessons.

For that purpose we add a model of tag linked to channels. Those tags are
organized by groups in order to be able to display them using a menu or
a small hierarchy of tags. Displaying a tag group as a specific navigation
element is controlled by a specific field.

Those models will be used to display a new and improved home page for
channels / courses.

This commit is linked to task ID 1936153 and PR #30985.
2019-02-11 09:55:05 +00:00
XavierDo 975164473c [IMP] mail, hr_holidays: improve channel_info
`channel_info` can be called on multiple channels especially during
the init_messaging. The current implementation will perform read and
other queries in the loop. This commits aims to refactor `channel_info`
in order to read all informations in database out of the loop.

Computation of members informations is now the same as for `direct_partner`
As a side effect direct partner will have an email adress and members will have
im_status and out_of_office message if the partner is in a
channel of type chat. It would be easier to compute im_status in all case but
this could create performances issues when calling channel info on channel with
hundreds of users.

channel_fetch_preview will make a query in database in any case but seems to work ok
in api multi. We can put it out of the loop.

44ac7903cc fix shouldn't be broken by this refactoring since we are no longer using the many2many to find direct_partners.
2019-02-11 09:22:24 +00:00
Pierre Masereel 4de183a966 [FIX] iap: logo svg text
The IAP logo is an svg file, and contains a text tags with font
specified in it. It leads to wrong display in some browser and/or
operating systems when the font is not installed.

To avoid this wrong display we changed the text into a path in the svg.

closes odoo/odoo#30995
2019-02-11 08:44:38 +00:00
Aurélien Warnon 5cec9cf223 [IMP] sale: improve usability of down payments
Task #1908673

Purpose
=======

The "invoice" modal is too complex to use for new users and has a lot of useless options for
the most simple use cases.

The goal here is to remove 2 options of the 'advance_payment_method' field:
* Invoiceable lines
* Invoiceable lines (deduct down payments)

And combine them into a new one: "Standard invoice".

If there are any down payments to deduct, another checkbox field appears under this
one: "Deduct down payments".

This keeps all the invoicing features while simplifying the modal.

Spec
=======
* Remove "invoiceable lines, deduct down payment" and replace by a checkbox
  (checked by default, only visible if down payments to deduct)
* Rename "Invoiceable lines" into "Standard invoice"
* tooltip on radio buttons: A standard invoice is issued with all the order lines ready for invoicing,
  according to their invoicing policy (based on ordered quantity or on delivered quantity).
2019-02-11 08:04:29 +00:00
Aurélien Warnon f808f36f38 [REF] sale, repair: rename invoices creation method
Purpose
=======

The method named "action_invoice_create" in the sale_order model did not make sense:
  - this method is not an action (it returns the ids of created invoices)
  - it is not used as an action on any xml buttons
  - it has no reason to be private

This was probably a "real" action somewhere in the past but now it's just too confusing.

(The method in repair.order was also renamed for the same reasons).
2019-02-11 08:04:29 +00:00
Robot Odoo 50a41c9f87 [IMP] web: mobile calendar today button alignment
Improve the User Interface of the Calendar mobile view.

- The "today" button should be aligned (both size and position) with the
view switcher icon.
- Extract mobile calendar styling into dedicated SCSS file.

Task ID: 1891955

closes odoo/odoo#30592
2019-02-11 08:35:21 +01:00
Odoo Translation Bot 56c39dd784 [I18N] Update translation terms from Transifex 2019-02-10 06:03:40 +01:00
Christophe Simonis 728bb2a28e [MERGE] forward port branch 11.0 up to 9553240adc 2019-02-08 19:19:57 +01:00
David Beguin b9902d961e [IMP] gamification : rename rank.karma_required into karma_min for grep convenience
Rename rank.karma_required into karma_min to avoid confusion
with karma_required from website_forum

Linked to Task ID : 1922159
Closes PR #30965
2019-02-08 18:03:29 +00:00
Thibault DelavalléeandAurélien Warnon a20408e995 [FIX] website_slides: reflect ACLs on fields for channel members
Just reflect access rights: publishers should be able to manage channel
members.

Co-Authored-By: Aurélien Warnon <awa@odoo.com>
Co-Authored-By: Thibault Delavallée <tde@odoo.com>

closes odoo/odoo#30960
2019-02-08 16:26:44 +00:00
Thibault DelavalléeandAurélien Warnon 8d310d1a88 [FIX] website_slides: improve methods to add members on channel
To avoid security issues or exploits, public method to add a member on a
channel allows to add only itself, under given restrictions, like being
a channel maintainer to add self on a private channel.

A private method allow to subscribe other people. It will be used notably
to allow publishers to invite other people.

Co-Authored-By: Aurélien Warnon <awa@odoo.com>
Co-Authored-By: Thibault Delavallée <tde@odoo.com>
2019-02-08 16:26:39 +00:00
Thibault Delavallée 6b46422a6b [REF] website_slides: update slide members relationship
This commit changes decorated many2many between slides and participants
recently introduced [1]. It was done between slide and users as people have to
login to have slide information.

Another many2many between channel and partners to store notably completion
and soon add statistics has been added [2]. It has been done between
channels and partners.

In this commit we choose to have the same relationship for slides, aka a link
between slides and partners. It allows to easily compute statistics and find
information based on partner_id.

Co-Authored-By: Quentin Mourrier <qmo@odoo.com>
Co-Authored-By: Thibault Delavallée <tde@odoo.com>

[1] See c273e89d55
[2] See 748b9072d6
2019-02-08 16:26:28 +00:00
Christophe Simonis 9553240adc [MERGE] forward port branch saas-15 up to 9773be345e 2019-02-08 16:53:11 +01:00
Romain Estievenart 41b8a6a563 [IMP] web: mobile calendar today button alignment
The "today" button should be aligned (both size and position) with the
view switcher icon.

Task ID: 1891955
2019-02-08 15:41:51 +00:00
Romain Estievenart 4dfd14ed00 [REF] web: extract calendar mobile styling
Extract mobile calendar styling into dedicated SCSS file.

Task ID: 1891955
2019-02-08 15:39:58 +00:00
Romain Estievenart a5ab43ebe6 [IMP] web: Remove CTA should be hidden on creation
- Hide the "Remove" button on the create modal's footer.
- Update title when click on "Save & new" button

Task ID: 1924887

closes odoo/odoo#30209
2019-02-08 14:30:57 +00:00
Robot Odoo f4dc2af71a [MERGE] website, *: improve customize dialog + add logo sizing
* portal, web, web_editor

See sub-commits for details.

- Many improvements to the customize dialog 'framework'
  (toggle switches, new widgets, ...)
- Optimization of RPCs (including ace editor which shares the same code)
- Move navbar options of the customize menu to the customize dialog
- Add the possibility to control the header logo size
- Add the possibility to control the header font size

task-1904244

closes odoo/odoo#29624
2019-02-08 20:16:33 +01:00
qsm-odoo 52b27c4c6b [IMP] website, *: allow to control the header font-size
* portal

The user can now choose the font-size of its header menu items through
the customize dialog.

PR https://github.com/odoo/odoo/pull/29624
task-1904244
2019-02-08 14:39:16 +00:00
qsm-odoo 56ba62231d [IMP] website: allow negative dependencies in theme customize dialog
Options and option sets can declare a data-depends attribute to specify
which options need to be enabled for them to be displayed. With this
commit, we allow specifying which options need to be *disabled* for the
same purpose (we can now do that by prefixing the options IDs with '!').

PR https://github.com/odoo/odoo/pull/29624
task-1904244
2019-02-08 14:39:06 +00:00
qsm-odoo 10384c689a [IMP] website, *: optimize scss customizations
* web_editor

This commit's goal is to optimize the delay to make a scss customization
thanks to the website customize dialog. Before this commit, the JS code
took advantage of existing web_editor routes but this was far from
efficient as this was done:

1) PY: Load all scss files used in the page
2) JS: Find the one we want to customize and adapt the scss content
3) PY: Create the scss customization with the new content

(So two RPC (including one very slow) and content building in
javascript)

After this commit, this is done:

1) PY: Load the scss file being customized, adapt its content according
   to the new values and save the customization

(So the whole logic is in python, requiring only one small RPC)

This commit also take the opportunity to review the web_editor ace
editor loading code (the logic is shared with website customizations).

PR https://github.com/odoo/odoo/pull/29624
task-1904244
2019-02-08 14:38:51 +00:00
qsm-odoo ff55736c4f [REF] website: simple move of a python file
Next commit will change that file to make it extend a web_editor model
instead of a web_editor controller. This commit only moves the file.

PR https://github.com/odoo/odoo/pull/29624
task-1904244
2019-02-08 14:38:41 +00:00
qsm-odoo 905d18e044 [IMP] website, *: add new logo sizing option
* portal, web

This commit introduces the first of many-to-come non-color website user
values: the logo height. Now, the user can choose it in the customize
dialog.

PR https://github.com/odoo/odoo/pull/29624
task-1904244
2019-02-08 14:38:31 +00:00
qsm-odoo 9f21427cdf [IMP] website: improve affix menu to work with all headers
Now that the logo can be resized, the affix menu had to be adapted to
handle tall headers.

PR https://github.com/odoo/odoo/pull/29624
task-1904244
2019-02-08 14:38:23 +00:00
qsm-odoo 2d934aee71 [IMP] website: allow customize option to be conditionally visible
Before this commit, in the theme customize modal, only lists were able
to be visible under the condition of a subset of options being enabled.
Now options can too.

PR https://github.com/odoo/odoo/pull/29624
task-1904244
2019-02-08 14:38:14 +00:00
qsm-odoo 4eb53e63e9 [IMP] website: review customize loading
Before this commit, the loading was shown during colorpicker choice or
body image choice too, which makes no sense. This commit also make a new
loading visual which is less intrusive and flicker less.

PR https://github.com/odoo/odoo/pull/29624
task-1904244
2019-02-08 14:38:05 +00:00
qsm-odoo 45a54104bf [REF] website: unify the theme customize dialog color options
Before this commit, color options in the theme customize were treated
as big exception in the system. The whole color panel XML was defined
client-side and used custom design. Now, all colors are defined as
options in the "server-side" template, allowing for more customizations
and better maintenance.

This commit also makes the color saving system generic to allow for more
new options in the future (like customizing the logo height or the font
size, which is the next task).

PR https://github.com/odoo/odoo/pull/29624
task-1904244
2019-02-08 14:37:52 +00:00
qsm-odoo 065957b981 [IMP] website: move navbar options to customize theme dialog
Move the 'Show Logo', 'Show Sign In' and 'Fixed Top Menu' options from
the customize menu to the customize theme dialog using new features
introduced with https://github.com/odoo/odoo/pull/29624

The customize menu divider is also only added if there are toggable
options in there (which is not the case anymore for all pages since
this commit).

PR https://github.com/odoo/odoo/pull/29624
task-1904244
2019-02-08 14:37:43 +00:00
qsm-odoo 4edb9c4f60 [IMP] website: improve theme customize dialog
- Make the controller part more readable and more efficient (O(1) ORM
  operations instead of O(n)) and remove deprecated code.

- Add the possibility to have a toggle standalone option. This is
  used as soon as an `<opt/>` is alone in its container (note that now,
  the container can be any tag and will be ignored during rendering).

- If an option has no specified 'string' to attach to it, the name of
  the first view it toggles will be used.

PR https://github.com/odoo/odoo/pull/29624
task-1904244
2019-02-08 14:36:43 +00:00
Florent de Labarre d260c53d12 [FIX] l10n_fr_fec: wrong formatting
The exported CSV contains unexpected `b` characters.

opw-1937282

closes odoo/odoo#30838
2019-02-08 13:33:03 +00:00
Thibault Delavallée cc3ca63544 [FIX] sale: fix wording of link when sending a quotation by email
Since commit 34c47eecd3 wording of link when
sending a quotation by email is broken. Indeed has document in draft is
not correctly considered as having to be signed and/or paid the link is
not labelled correctly.

This commit fixes it. Parameter is also renamed to be more understandable.
This commit is linked to task ID 1910532 and PR #29849 .

closes odoo/odoo#30953
2019-02-08 12:49:03 +00:00
Hetal Dhanak ef61713418 [IMP] sales: make sign and pay in portal a continuous flow
Purpose of this commit is to make a single flow to sign and pay in the
customer portal. When having signed its document popup for payment is
automatically opened.

This is much better for usability and avoid to have orders being signed
and not paid because the customer did not see it was still to be paid.

This commit is related to task ID 1910532 and PR #29849 .
2019-02-08 12:48:54 +00:00
Christophe Simonis 9773be345e [MERGE] forward port branch saas-14 up to 18228f9c4e 2019-02-08 13:28:46 +01:00