Commit Graph
128642 Commits
Author SHA1 Message Date
Mathieu Duckerts-Antoine 1ef258f6cb [FIX] web: mockReadGroup does not mix 'false' and false
An implicit call to toString was made for the
groupbys values in the function used to
group records in _mockReadGroup.
Consequently, the values false and 'false' were
mixed and the corresponding records put in the
same group.
2019-08-02 18:34:18 +00:00
Mathieu Duckerts-Antoine 5894df57d3 [IMP] web: add math_utils to core
math_utils is a small library that exports two
functions:

    - cartesian: allows to compute the cartesian
                products of any numbers of arrays
                while preserving the internal
                structures of their elements.
    - sections: returns an array with all
                the initial sections of the
                array passed as parameter.
2019-08-02 18:34:18 +00:00
Anand Kansagra e488f208d2 [IMP] account,stock,base: fix typos
And use CamelCase in label

Closes odoo/odoo#29010
Closes odoo/odoo#29092

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2019-08-05 06:51:52 +00:00
Christophe Simonis e8a3f1a04e [IMP] core: remove support of oldname attribute
This attribute is misleading as it is insufficient to correctly upgrade
the database. It only renames the column in the database, but other
operations are needed, like updating the corresponding `ir.model.fields`
record (and its xmlid). The default values and the translations are also
lost during the upgrade.

Moreover, this feature was misused. It was:
- left on fields during multiple versions.
- used on reports (SQL views). This would be ok if the feature was
complete, but, as is, it was useless.
- kept unchanged after a second renaming of the field (which can happen
versions later the first rename).
- used, even when the meaning of the field changed. i.e. the field
`archived` has been renamed to the classic `active`, but the value
in the database should be switched.

closes odoo/odoo#35439

Signed-off-by: Christophe Simonis <chs@odoo.com>
2019-08-05 11:49:07 +00:00
Christophe Simonis 886eca0131 [IMP] *: remove usage of oldname attribute
This attribute is misleading as it is insufficient to correctly upgrade
the database. It only renames the column in the database, but other
operations are needed, like updating the corresponding `ir.model.fields`
record (and its xmlid). The default values and the translations are also
lost during the upgrade.

Moreover, this feature was misused. It was:
 - left on fields during multiple versions.
 - used on reports (SQL views). This would be ok if the feature was
   complete, but, as is, it was useless.
 - kept unchanged after a second renaming of the field (which can happen
   versions later the first rename).
 - used, even when the meaning of the field changed. i.e. the field
   `archived` has been renamed to the classic `active`, but the value
   in the database should be switched.
2019-08-05 09:36:41 +00:00
Simon Lejeune 0033659ff4 [FIX] mrp: workorder grouped by date
Read_group only work on stored field. We still can't make these fields
stored related because of what's explained on the comment: the write
aren't  batched and a constraint is raised. See rev 0679d0d542

task-2036914

closes odoo/odoo#35268

Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
2019-08-05 18:25:38 +00:00
Stéphane Bidoul (ACSONE) 795c7b0a94 [IMP] core: improve python external dependencies check
Use pkg_resources.get_distribution() to check if python external
dependencies are installed, instead of trying an import.
The import test is preserved as a backwards compatibility measure.

This better expresses which python distribution needs to be installed
from PyPI and allows declaring a minimum supported version using PEP 440
version specifiers.

Closes #25541

closes odoo/odoo#25549

Signed-off-by: Christophe Simonis <chs@odoo.com>
2019-08-05 17:25:59 +00:00
Xavier-DoandThibault Delavallée 4f44ad4fe4 [IMP] mail: gc more notification.
This gc option should delete more notifications: we only keep notification
not send, and set inbox notification as sent.

closes odoo/odoo#30067

Signed-off-by: Xavier Dollé (xdo) <xdo@odoo.com>


Co-authored-by: Thibault Delavallée <tde@odoo.com>
2019-08-05 16:13:54 +00:00
Xavier-Do a55c78836f [REF] mail: remove notified_partner_ids from mark_all_as_read
mark_all_as_read is using notified_partner_ids to filter
the messages to use. But anyway, the notification will
be filtered on partner right after that.

Since if we have a domain, the message set will be quite small,
(scope of a thread) we search all those messages.

If not, we actually avoid to search on message and go right
to the notifications.

Reading the message_ids will garantee to have the minimal
set of message that where actually passed from unread to read.
Since data should not be in cache at this time and mark_all_as_read
is usually called alone, we prefer to use cache and perform a read
immediatly.

Task-ID 402597
2019-08-05 15:04:28 +00:00
Xavier-Do 42b3a56a43 [REF] mail: remove notified_partner_ids from _message_read_dict_postprocess
notified_partner_ids, (previously notified_partner_ids) is used to
populate a list of partner to prefetch + return a list of partner_ids.

1. the list of partner_ids is doesn't look to be used, and thus
can be removed. Was introduced in 1d4dbc3440

2. Prefetched list of partners is used to generate customer_email_data.
Since this list is limited to partner email notifications , we can use
a custom search instead.

The proposed implementation is far from perfect but proposes the minimal
changes to remove notified_partner_ids, without (hopefully) negatively
impacting performances.

Task-ID 402597
2019-08-05 15:04:28 +00:00
Xavier-Do bb37ab2119 [REF] mail, test_mail, *: rename needaction_partner_ids to notified_partner_ids
,*:crm, website_blog

The mail.message needaction_partner_ids meaning changed over time,
and doesn't actually reflect the list of partner in needaction.
More than that the message_format needaction_partner_ids used by js
began to diverged from mail.message field since 19fb650863

To avoid any confusion, renaming it to notified_partner_ids will help
to avoid confusion between python and js meaning, and reflect the actual
content of this field : a list of partner that where notified once on
this message. This field is mainly usefull for testing.

Task-ID 402597
2019-08-05 11:50:20 +00:00
Nikunj Ladava 0c37b9fb39 [IMP] mail, test_mail: new 'History' mailbox in Discuss
This commit adds a new mailbox in the Discuss app called 'History'.
Messages that have been marked as read are moved to 'History'.

Notifications are required to link history messages to users. So
notifications are now deleted after they are more tha 6 months old.
This means History mailbox keeps less than 6 months old messages.

Note that this feature only works when user notifications are handled
in Odoo. This can be set in the user preferences, under the
"Notification Management" section.

Task-ID 402597
2019-08-05 11:50:19 +00:00
William Henrotin 634bdbfa3a [FIX] mrp: blocks default product on bom line
The action called from the product's bom stat button (mrp.product_open_bom)
fill the key 'default_product_id'. This allows, creating a bom from the list view,
to prefilled the product.

This context key will also fill each new bom line as the technical field is
called product_id too.

This commit overrides default_product_id to False for the bom line One2many
in the bom form view in order to only prefill the finished product and not
the components.

Task : 2045485

closes odoo/odoo#35444

Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
2019-08-05 11:22:00 +00:00
Florian Gilbert ca2aacfd95 [IMP] account: add widget for tax groups in account.move
Widget allowing the modification of tax groups to round up the total.

closes odoo/odoo#34716

Signed-off-by: Cedric Snauwaert (csn) <csn@openerp.com>
2019-08-05 14:37:02 +00:00
Florent de LabarreandOlivier Dony c8fca2d052 [IMP] base: add more information for incorrect dependencies
If a dependency was wrong in the triggers, it was hard to debug

Co-Authored-By: Olivier Dony <odo@odoo.com>

closes odoo/odoo#31958

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2019-08-05 13:57:34 +00:00
Thanh Dodeur 8a8126126e [IMP] base: removes storing of res_name from ir.attachment
This commit removes the store property of `res_name` from `ir.attachment`
as it doesn't need to be stored and could contain outdated information
if the record name was changed after the computation.

Task: #1943295

closes odoo/odoo#34930

Signed-off-by: Martin Geubelle (mge) <mge@openerp.com>
2019-08-05 13:11:33 +00:00
fja-odoo 5dac8f8f29 [REF] website, *: remove hardcoded image urls
* = website_forum, website_profile, website_sale,
website_sale_comparison, website_slides, website_slides_survey

Some image links were hard coded in the xml views of website, now they
are replaced with website.image_url(model, field).

Part of https://github.com/odoo/odoo/pull/34149
task-2007400

closes odoo/odoo#34149

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2019-08-05 13:24:22 +00:00
fja-odoo b6a28a5545 [REF] website_sale, *: use website_url on product href
* = website_event_sale, website_sale_comparison, website_sale_wishlist

Some product links were not using website_url, now that we have an url
for product.product we should use that one to reach the right product.

Part of https://github.com/odoo/odoo/pull/34149
task-2007400
2019-08-05 13:03:52 +00:00
shreya thakrar eac0785f69 [IMP] crm: rename string on custom filter
Before this commit, at custom filter 'Contents' option is there for filtering by
activity description. For more usability only rename is needed. By this commit
'contents' is changed to 'Activity Description'. User can filter records by
activity description.

task - 2008515

closes odoo/odoo#35070

Signed-off-by: Martin Geubelle (mge) <mge@openerp.com>
2019-07-22 12:12:47 +00:00
Kevin Baptiste c5ab50cc4e [FIX] base_setup: remove mobile apps icon during search
The mobile apps icons were always showing even during a search in the
settings.

closes odoo/odoo#35325

Signed-off-by: Romain Libert (rli) <rli@odoo.com>
2019-08-05 08:44:06 +00:00
fb2522ac97 [MERGE][REF] website_slides: make eLearning an application with its own backend
PURPOSE

eLearning should have its own application in manager. Indeed this is becoming
a big application and having it embedded inside Website application is not
enough anymore. It should also hold updated and easy-to-use menus,
navigation, actions and views in backend.

SPECIFICATIONS

Update manifest and make website_slides an application separated from
website embedded menus.

Implement new menu structure

* Courses
* Courses
List view: Course Name, # Views, # Attendees, # Ratings, Revenues,
Reviews
* Contents
* Reviews: kanban view of channel reviews
* Certifications: kanban view of surveys of type certificate

* Forum
* Forums: add columns to list view: Posts (questions count), Views
(sum of views of each post), Answers (sum of child_count on each post),
Favorites (sum of favourite_count on each post)
* Posts: add columns to list view: Views / Answers / Favourites

* Reporting
* Courses: list view on slide.channel model, ordered by # views.
List view: Course Name, # Views, # Attendees, # Ratings, Revenues;
* Contents: graph view on slide.slide model
Area Graph: X month
Y measure: # Views (others measures: Attendees, ...)
Group by: course (color)
* Revenues: graph view on sale.report model showing revenues of eLearning
courses.
Area chart, X: monthn Y: €, Color: course
* Certifications: list view on surveys of type certificate
Columns: Title, Survey Stage, Registered People, Certified People, Attempts
Success Rate (certified/attempts), Average Results
* Reviews: see kanban of latest reviews;
* Quiz: list view on slide.question model.
List view: Add # Quizz Trials, # Quizz Passed, Avg Attempts
* Forum: graph view on forum.post model
Area chart: # Posts created by months, color=forum

* Configuration
* Settings
* Allow Forum on Courses (installs website_slides_forum)
* Allow Certifications (installs website_slides_survey)
* Allow Selling Courses (installs website_sale_slides)
* Course Tags
* See channel.tags.group with label Course Tags, form view allow to
configure group tags
* https://drive.google.com/a/odoo.com/file/d/1G0g2UnG5cZG55EXQ5icbgwe7T2eSZskT/view?usp=drivesdk
* On click: open :https://drive.google.com/a/odoo.com/file/d/1I_PW3aZAbrslXadiYqmVF-_6dGXx8knd/view?usp=drivesdk
* Content Tags

Add course (slide.channel) kanban view. Each tile should contain

* Title of the course
* Tags below the title
* Primary button "New Lesson"
* Statistics :
* Attendees
* Running (progress != 100%)
* (if one content is certificate) Certified or Finished
* See : https://drive.google.com/a/odoo.com/file/d/13K8FmkbwmBG4JQ5gH3Q5T8OlWPs3blcu/view?usp=drivesdk
* With FP remarks https://drive.google.com/a/odoo.com/file/d/1mb7LUT0VUNs5fMcKB9c0Bfaqk2-XFFuu/view?usp=drivesdk
* Add "Sales       150.00$" below "Watch Time" if type "on payment". Same
info than the smart/stat button on the course itself. Click on the amount
sends to Reporting Revenues (same than on the stat btn)

Add review (rating.rating) kanban view. Each tile should contain

* Kanban view, full width, no default group by
* Order by date (most recent on top)
* See: https://drive.google.com/a/odoo.com/file/d/1IYE1QBIJa26BLugRiafyBop-srkYwndC/view?usp=drivesdk
* add a tag for unpublished comments
* Add the pic of the user above the stars
* Click on card, send to front-end and able to (un)publish the comment
* Kind of what's on the front-end:  https://drive.g

Improve course form view: add a revenue stat button displaying the total
of sale order linked to the course's product.

Integrate a button on slide.channel form view allowing to perform a mass
mailing on course attendees. Do a flow similar to event.

Remove "Our Documentation" dummy default existing data. It makes no sense
to have void data. Instead just add a small explanation text in eLearning
front-end telling the user to create its first course if he has rights to
do so.

In order to better show the new backend add some demo data for missing
numbers, notably

* sales: add confirmed sale orders in order to have revenues value;
* forum: add some posts and answers;
* quiz: update slide.slide.partner demo data to hold quiz attempts count

LINKS

Task 1978729
PR #35061

Co-Authored-By: Thibault Delavallée <tde@odoo.com>
Co-Authored-By: Jérémy Hennecart <jeh@odoo.com>

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2019-08-05 12:52:32 +02:00
Thibault Delavallée 3d737bb387 [REV] website_sale: set Cart recovery back in form view
Partially reverts d781d6f6ea504dcc89f412b94774df6bd08c78aa

Indeed modified tour has to go through various list view actions and is
likely to crash because of some complicated triggers to write. Let us have
the recovery action back to form view. Anyway it makes no harm to have it
available in action menu.

LINKS

Task 1978729
PR #35061
2019-08-05 08:44:12 +00:00
Jérémy HennecartandThibault Delavallée aeb23b21d3 [IMP] website_slides(_*): improve demo data and remove dummy data
PURPOSE

eLearning should have its own application in manager. Indeed this is becoming
a big application and having it embedded inside Website application is not
enough anymore. It should also hold updated and easy-to-use menus,
navigation, actions and views in backend.

SPECIFICATIONS

Remove "Our Documentation" dummy default existing data. It makes no sense
to have void data. Instead just add a small explanation text in eLearning
front-end telling the user to create its first course if he has rights to
do so.

In order to better show the new backend add some demo data for missing
numbers, notably

  * sales: add confirmed sale orders in order to have revenues value;
  * forum: add some posts and answers;
  * quiz: update slide.slide.partner demo data to hold quiz attempts count;

LINKS

Task 1978729
PR #35061

Co-Authored-By: Thibault Delavallée <tde@odoo.com>
Co-Authored-By: Jérémy Hennecart <jeh@odoo.com>
2019-08-05 08:44:09 +00:00
Jérémy HennecartandThibault Delavallée ee29641b08 [REF] website_slide_survey: improve integration into eLeaning application
PURPOSE

eLearning should have its own application in manager. Indeed this is becoming
a big application and having it embedded inside Website application is not
enough anymore. It should also hold updated and easy-to-use menus,
navigation, actions and views in backend.

SPECIFICATIONS

Add menu entry inside Courses
  * Certifications: kanban view of surveys of type certificate

Add menu entry inside Reporting
  * Certifications: list view on surveys of type certificate
    Columns: Title, Survey Stage, Registered People, Certified People, Attempts
    Success Rate (certified/attempts), Average Results

LINKS

Task 1978729
PR #35061

Co-Authored-By: Thibault Delavallée <tde@odoo.com>
Co-Authored-By: Jérémy Hennecart <jeh@odoo.com>
2019-08-05 08:43:21 +00:00
Jérémy HennecartandThibault Delavallée ee10b19f67 [REF] website_sale_slides: improve integration into eLeaning application
PURPOSE

eLearning should have its own application in manager. Indeed this is becoming
a big application and having it embedded inside Website application is not
enough anymore. It should also hold updated and easy-to-use menus,
navigation, actions and views in backend.

SPECIFICATIONS

Improve course form view: add a revenue stat button displaying the total
of sale order linked to the course's product.

Add in slide.channel kanban card
  * Add "Sales       150.00$" below "Watch Time" if type "on payment". Same
    info than the smart/stat button on the course itself. Click on the amount
    sends to Reporting Revenues (same than on the stat btn)

Add menu entry inside Reporting
    * Revenues: graph view on sale.report model showing revenues of eLearning
      courses.
        Area chart, X: month Y: €, Color: course

LINKS

Task 1978729
PR #35061

Co-Authored-By: Thibault Delavallée <tde@odoo.com>
Co-Authored-By: Jérémy Hennecart <jeh@odoo.com>
2019-08-05 08:43:21 +00:00
Jérémy HennecartandThibault Delavallée 2e707935f1 [REF] website_slides_forum: improve integration into eLeaning application
PURPOSE

eLearning should have its own application in manager. Indeed this is becoming
a big application and having it embedded inside Website application is not
enough anymore. It should also hold updated and easy-to-use menus,
navigation, actions and views in backend.

SPECIFICATIONS

Add menu after Courses

  * Forum
    * Forums: add columns to list view: Posts (questions count), Views
      (sum of views of each post), Answers (sum of child_count on each post),
      Favorites (sum of favourite_count on each post)
    * Posts: add columns to list view: Views / Answers / Favourites

Add menu entry inside Reporting
  * Forum: graph view on forum.post model
      Area chart: # Posts created by months, color=forum

LINKS

Task 1978729
PR #35061

Co-Authored-By: Thibault Delavallée <tde@odoo.com>
Co-Authored-By: Jérémy Hennecart <jeh@odoo.com>
2019-08-05 08:43:20 +00:00
Jérémy HennecartandThibault Delavallée 313a7d9eb2 [ADD] mass_mailing_slides: allow to mass mail course attendees
PURPOSE

eLearning should have its own application in manager. Indeed this is becoming
a big application and having it embedded inside Website application is not
enough anymore. It should also hold updated and easy-to-use menus,
navigation, actions and views in backend.

SPECIFICATIONS

Integrate a button on slide.channel form view allowing to perform a mass
mailing on course attendees. Do a flow similar to event.

Add menu entry in menu of slide.channel kanban card after invite
  * Mail Attendees (same as on the course card and depend of the setting)

Add menu entry inside Settings
  * Settings: add an option to install module mass_mailing_slide

LINKS

Task 1978729
PR #35061

Co-Authored-By: Thibault Delavallée <tde@odoo.com>
Co-Authored-By: Jérémy Hennecart <jeh@odoo.com>
2019-08-05 08:41:27 +00:00
Thibault Delavallée fd9962cd6a [FIX] mass_mailing: correctly check mailing domain
Currently each change in mailing model resets the mailing domain. Idea behind
that behavior is that domain for a given model will probably not be valid for
another model because of fields being model specific.

However this breaks when creating mailing with default values for mailing
model. Indeed even valid domains are reset to a default void / opt-out-ed
value due to current onchange implementation.

This commit fixes that behavior by resetting only invalid domain i.e.
that crashes when performing a search on target model.

LINKS

Task 1978729
PR #35061
2019-08-05 08:41:27 +00:00
Thibault DelavalléeandJérémy Hennecart 98bdb241de [IMP] website_slides: add an overview (kanban view) on course model
PURPOSE

eLearning should have its own application in manager. Indeed this is becoming
a big application and having it embedded inside Website application is not
enough anymore. It should also hold updated and easy-to-use menus,
navigation, actions and views in backend.

SPECIFICATIONS

Add course (slide.channel) kanban view. Each tile should contain

  * Title of the course (make it big, o_primary)
  * Tags below the title
  * Primary button "New Lesson"
  * Statistics :
    * Attendees
    * Running (progress != 100%)
    * (if one content is certificate) Certified or Finished
  * See
    * v1: https://drive.google.com/a/odoo.com/file/d/13K8FmkbwmBG4JQ5gH3Q5T8OlWPs3blcu/view?usp=drivesdk

With FP remarks https://drive.google.com/a/odoo.com/file/d/1mb7LUT0VUNs5fMcKB9c0Bfaqk2-XFFuu/view?usp=drivesdk
  * remove globe, type and visibility of course, lessen padding between rating
    views and watch time;
  * for rating, instead of 8.00 => 5 reviews (4.5/5);
  * replace "View Lesson" / "Invite" by "View Course" => Send to the front-end
  * In the menu of the card, add:
    * Invite (same behavior than before, when it was a primary btn)
  * click on x Contents:  land on the contents, group by category with sequence
  * re-order of the 3 infos/Stats at the bottom of the card: 1. Content,
    2. Attendee, 3. Certified
    * + number: font-weight: 500 + font-size 1.2em
    * + labels: remove text-uppercase, + text-color: #666666
    * + the "whole box" is clickable

LINKS

Task 1978729
PR #35061

Co-Authored-By: Thibault Delavallée <tde@odoo.com>
Co-Authored-By: Jérémy Hennecart <jeh@odoo.com>
2019-08-05 08:40:33 +00:00
Thibault Delavallée 665d0dfa67 [IMP] website_slides: add a new kanban view for contents (slide.slide)
PURPOSE

eLearning should have its own application in manager. Indeed this is becoming
a big application and having it embedded inside Website application is not
enough anymore. It should also hold updated and easy-to-use menus,
navigation, actions and views in backend.

SPECIFICATIONS

Add a kanban view for slide.slide model

  * See https://drive.google.com/a/odoo.com/file/d/1WKj13-C_UCOwh4dN-FRmU9Pp6BsZ_HvT/view?usp=drivesdk

LINKS

Task 1978729
PR #35061
2019-08-05 08:40:33 +00:00
Thibault Delavallée 54192e4648 [IMP] website_slides: add a new kanban view for ratings
PURPOSE

eLearning should have its own application in manager. Indeed this is becoming
a big application and having it embedded inside Website application is not
enough anymore. It should also hold updated and easy-to-use menus,
navigation, actions and views in backend.

SPECIFICATIONS

Add in menu Courses, a new entry Reviews
  * Kanban view, full width, no default group by
    * Order by date (most recent on top)
    * See: https://drive.google.com/a/odoo.com/file/d/1IYE1QBIJa26BLugRiafyBop-srkYwndC/view?usp=drivesdk
    * add a tag for unpublished comments
    * Add the pic of the user above the stars
    * Click on card, send to front-end and able to (un)publish the comment
    * Kind of what's on the front-end:  https://drive.google.com/a/odoo.com/file/d/1e9aQSWvUM2QOynRT08XSUzIjFiGnjsv8/view?usp=drivesdk

LINKS

Task 1978729
PR #35061
2019-08-05 08:40:33 +00:00
Jérémy HennecartandThibault Delavallée 4587e6a396 [REF] website_slides: make eLearning an application with its own menu structure
PURPOSE

eLearning should have its own application in manager. Indeed this is becoming
a big application and having it embedded inside Website application is not
enough anymore. It should also hold updated and easy-to-use menus,
navigation, actions and views in backend.

SPECIFICATIONS

Update manifest and make website_slides an application separated from
website embedded menus.

Implement new menu structure

  * Courses
    * Courses
      List view: Course Name, # Views, # Attendees, # Ratings, Revenues,
      Reviews
    * Contents

  * Reporting
    * Courses: list view on slide.channel model, ordered by # views.
        * add a graph view (group by content)
    * Contents: graph view on slide.slide model
        Area Graph: X month
        Y measure: # Views (others measures: Attendees, ...)
        Group by: course (color)
    * Reviews: see kanban of latest reviews;
    * Quiz: list view on slide.question model.
        List view: Add # Quizz Trials, # Quizz Passed, Avg Attempts

  * Configuration
    * Settings
      * Allow Forum on Courses (installs website_slides_forum)
      * Allow Certifications (installs website_slides_survey)
      * Allow Selling Courses (installs website_sale_slides)
    * Course Tags
      * See channel.tags.group with label Course Tags, form view allow to
        configure group tags
      * https://drive.google.com/a/odoo.com/file/d/1G0g2UnG5cZG55EXQ5icbgwe7T2eSZskT/view?usp=drivesdk
      * On click: open :https://drive.google.com/a/odoo.com/file/d/1I_PW3aZAbrslXadiYqmVF-_6dGXx8knd/view?usp=drivesdk
    * Content Tags

This structure will gain new items in sub-modules, notably bridge with
form and website_sale. Those will be implemented in next commits.

LINKS

Task 1978729
PR #35061

Co-Authored-By: Thibault Delavallée <tde@odoo.com>
Co-Authored-By: Jérémy Hennecart <jeh@odoo.com>
2019-08-05 08:40:33 +00:00
Thibault Delavallée ad9d7c5c06 [FIX] website_slides: fix breadcrumb when viewing a slide from a category search
Template expects a category record but controller gives the ID of it.
Oversight of 4ccd859bd4

LINKS

Task 1978729
PR #35061
2019-08-05 08:30:06 +00:00
Kevin Baptiste 15a7aa404b [FIX] note: reset date when adding multiple notes
When adding multiple notes, it was keeping the date of the previous
note in memory. This commit ensures the date is reset each time we click
on "Add a note"

closes odoo/odoo#35374

Signed-off-by: Romain Libert (rli) <rli@odoo.com>
2019-08-02 09:09:26 +00:00
Kevin Baptiste 765e2838dd [FIX] note:open calendar when clicking on the icon
Since commit `a3d98dae68b97aeb7c36ca93c31f067535cbe8fd` the calendar is
no longer opening when clicking on the calendar icon in the activities when
adding a note.
2019-08-02 09:09:26 +00:00
jpr-odoo 21fb7a1f00 [FIX] website_slides: fix the title of the page in fullscreen mode
before this commit, the title of the page is not correct in fullscreen mode

after this commit, set the lesson name as the page title in the fullscreen mode
and changed the title of the page as per click on lesson name

task-2040899

closes odoo/odoo#35161

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2019-07-30 11:37:22 +00:00
Robot Odoo 9885ccfda4 [IMP] *: correctly read/write website_published
The `website_published` field from the website's mixins is basically a readonly
from `is_published` field.
On read, this field will simply read `is_published` and check if the record's
website_id is accessible (only for the multi mixin).
On write, it will always write on `is_published`.

Whenever possible, any access (read/search) on published state should be done on `website_published`.
Any write should be done on `is_published`.

This PR improves a few things:
- A lot of code was writting on website_published which was just then writting
on is_published. Writting directly on is_published makes more sense.
- Some backend fields would still reference `website_published` instead of
`is_published` which would just go through the related for no reason.
Plus, using `is_published` will make the field tooltip more accurate as we
are not in a website context ('Visible on current website' to 'Is Published')
- Filter and search on tree view were still using the `website_published`
related field, which is just a readonly when we are not in a frontend
context.
- Some create and write function would have security check on
`website_published` value but that was wrong as the user could bypass that by
simply writting on `is_published`. For the write method, check `is_published`
is more accurate as it will cover both case since `website_published` will
then call the write method on `is_published`
- Some models would create their own `website_published` field rather than using the
`website.published.mixin` mixin which should be used instead.
That was done to be able to override the default value of the boolean.
This commit simply adds the possibility to override the default value of the
mixin field.
- Fix wrong publish security check that were only checking `website_published` in vals.

closes odoo/odoo#35189

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2019-08-03 13:17:04 +02:00
Romain Derie 4086f344d8 [FIX] website: correctly check security of publish mixin
Commit 916968058d introduced a mechanism to check rights when writing or
creating on `website_published` field.
Problem is, `website_published` is just kind of a related to `is_published`
which really stores the value.

Thus, the checks would not work when writing/creating on `is_published`.
That would leave a loophole to bypass the expected behavior.
2019-08-03 09:51:22 +00:00
Romain Derie 7a90dedd25 [IMP] website*: use published mixin rather than own field
*website_crm_partner_assign, website_customer

Before this commit, some models would create their own `website_published`
field rather than using the `website.published.mixin` mixin which should be
used instead.

That was done to be able to override the default value of the boolean.

This commit simply adds the possibility to override the default value of the
mixin field.

Also, help and string could simply be added on xml views rather than overriding
the field.
2019-08-03 09:51:22 +00:00
Romain Derie cc1d78a80b [IMP] *: correctly read/write website_published
The `website_published` field from the website's mixins is basically a readonly
from `is_published` field.
On read, this field will simply read `is_published` and check if the record's
website_id is accessible (only for the multi mixin).
On write, it will always write on `is_published`.

This commit improves a few things:
- A lot of code was writting on website_published which was just then writting
  on is_published. Writting directly on is_published makes more sense.
- Some backend fields would still reference `website_published` instead of
  `is_published` which would just go through the related for no reason.
  Plus, using `is_published` will make the field tooltip more accurate as we
  are not in a website context ('Visible on current website' to 'Is Published')
- Filter and search on tree view were still using the `website_published`
  related field, which is just a readonly when we are not in a frontend
  context.
- Some create and write function would have security check on
  `website_published` value but that was wrong as the user could bypass that by
  simply writting on `is_published`. For the write method, check `is_published`
  is more accurate as it will cover both case since `website_published` will
  then call the write method on `is_published`
2019-08-03 09:51:22 +00:00
Andrea Ulliana f9c2716b3e [IMP] website_forum: bring forum modes
It is now possible to specify the forum mode : Questions and Answers or
Discussions. In Q&A mode, a user can only reply once while there is no
limit in Discussions mode.

task-2008910

closes odoo/odoo#34097

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2019-08-02 16:32:29 +00:00
Romain Derie cfeb8a5185 [FIX] mail: remove useless hasattr on get_base_url
This check was introduced with d82b897ea1 in 12.0 where `get_base_url` was
not yet a model method.

Since f727cd2645, in saas-12.5, that method is now on model, making the
`hasattr` check useless.

closes odoo/odoo#35057

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2019-07-24 10:48:53 +00:00
Robot Odoo 6df11fc42d [MERGE] *: rename image fields and use image.mixin
Merge commit for PR #34925
Related enterprise PR odoo/enterprise/pull/4865

The goal is to:
- Use `image.mixin` on the models currently storing multiple image sizes.
- Create Image field and use it on models where mixin is overkill.
- Rename the image fields to contain the pixel number in the name.
- Add 512 size.
- Clean up `image.mixin`, zoom field, variant fields.

Note: models that currently store only a single size image will not be changed
in this PR.

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2019-08-02 20:36:51 +02:00
Sébastien Theys 45e3be94c0 [IMP] tools, base: removed unused image helpers
PR: #34925
2019-08-02 16:47:58 +00:00
Sébastien Theys 1e9772889b [IMP] *: use image.mixin when appropriate
The following models are already using big images, or they might need big images
in the future:

- partner
- hr employee
- shop category
- lunch product
- gamification badge and karma rank

PR: #34925
2019-08-02 16:47:58 +00:00
Sébastien Theys f0ffbea173 [IMP] *: remove unnecessary image sizes
The big images are probably never going to be used for the following models:

- pos category
- fleet brand
- livechat channel
- mail channel
- payment acquirer

And if big images are needed some day the model should use image.mixin instead.

PR: #34925
2019-08-02 16:47:58 +00:00
Sébastien Theys 1b85ab93ec [IMP] base, product, website_sale: move image zoom out of mixin
This field is not necessary on most models so move it to the few places where it
is needed to avoid computing it and storing it everywhere.

PR: #34925
2019-08-02 16:47:58 +00:00
Sébastien Theys 58a2ffa26f [IMP] *: rename image fields
image_original => image_1920 (now resized to 1920)
image_big => image_1024
image_large => image_256
image_medium => image_128
image_small  => image_64
image replaced by image_1920 (when writing) or by image_1024 (when displaying
	what was previously the big size)

+ add new intermediate format:
image_512

PR: #34925
2019-08-02 16:47:58 +00:00
Sébastien Theys 8206b5b4cc [IMP] fields: add image field
PR: #34925
2019-08-02 16:44:47 +00:00
Hardik Prajapati ec32fd5459 [FIX] account: traceback while creating Bank statement
Validate a bank statement from reconciliation widget and then open the statements view from the widget and try creating a new statement. An error happens when trying to select a partner because the default journal is not set in the action

closes odoo/odoo#35418

Signed-off-by: Cedric Snauwaert (csn) <csn@openerp.com>
2019-08-02 15:19:38 +00:00