Commit Graph
141473 Commits
Author SHA1 Message Date
Lucas Perais (lpe) 7be17b739b [FIX] sale: color_field for analytic account should be in list
Have the group analytic tags ON
Have the order.line o2m list non editable
Make a SO, make a line with a tag
Confirm the SO

Click on the line
in the modal, click on the analytic tag

Before this commit, there was a traceback because the color was never fetched
This was because the o2m list view did not fetch the color_field

After this commit, there is no traceback, and displaying
as well as changing the color works as expected

OPW 2002456

closes odoo/odoo#33846

Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2019-06-03 14:21:35 +00:00
Goffin Simon 74706e9e03 [FIX]payment_paypal: wrong fees computation
Steps to reproduce the bug:
- Create a product P with price=100€
- Configure payment aquier Paypal with fees_int_fixed = 1€ and fees_int_var = 1%
- Set Paypal to be available in the website
- Go to the web shop and add P in the cart
- Choose to pay with Paypal

Bug:

The amout to pay was 102.02€ instead of 102.01€

Before the fix, the fees was computed as followed:

fees = (percentage / 100.0 * amount + fixed) / (1 - percentage / 100.0)
Where fees_dom_fixed = fixed and fees_int_var = percentage

With this computation, the percentage was applied twice.
If for example, we had fixed = 0 then

fees = (percentage / 100.0 * amount) / (1 - percentage / 100.0)

In this case, it's easy to see that the percentage is applied twice.

opw:1981784

closes odoo/odoo#33830

Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2019-06-04 07:24:34 +00:00
Nicolas Martinelli 4cdcab43ee [FIX] mrp: no qty consumed
- Create a MO for '[FURN_8855] Drawer'
- Consume 1 unit of '[FURN_2100] Drawer Black', but DO NOT consume
anything for '[FURN_5623] Drawer Case Black'.
- Complete the MO, then Unlock it
- Edit the '[FURN_5623] Drawer Case Black' line

It is not possible to add a line.

This is expected from 9e77ce2edc, but we still want to be able
to consume some quantity.

Instead of canceling the move lines without any quantity consumed, we
set it to done.

opw-1986919

closes odoo/odoo#33820

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-06-03 11:45:00 +00:00
Nans Lefebvre 9b26052c54 [FIX] sales_team: fix team pipeline kanban overflows
In the kanban views, cards have a fixed size (here it is overriden as 450px).
All internal elements use col-x Bootstrap classes, with have flex 0 0 x/12.
Note that 0 0 correspond to flex-grow and flex-shrink, so the sizes are fixed.
It follows that any long translation or number will overflow badly.
Hover this overflow is, in terms of usability, less worse hiding the overflow
or even  scrollbars.

So nothing is flexy, but too avoid this issue as much as possible,
we give more space to the right side, since the left side only shows a button.

opw 2001951

closes odoo/odoo#33818

Signed-off-by: Nans Lefebvre (len) <len@odoo.com>
2019-06-03 08:43:22 +00:00
Nicolas Martinelli b8115cc4c6 [FIX] purchase: incorrect attribute
When the `purchase.order` is added as an embedded tree view on a model
without a `state` field, a crash occurs.

The existing condition doesn't make sense on a PO (while it would make
sense on a PO line), so we simply remove it. Since the condition implied
that the field `invoice_status` was always hidden, we keep it that way.

opw-2005768

closes odoo/odoo#33827

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-06-03 11:06:21 +00:00
Nicolas Martinelli 8f21148e1a [FIX] hr_contract: contract type name
Make the contract type name translatable.

opw-2003957

closes odoo/odoo#33781

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-05-31 05:41:25 +00:00
Christophe Monniez b27077bb0c [MOV] test_pylint, test_lint: add es-check linter
Because Odoo still supports Android Kitkat and Internet Explorer, ES5 is
the highest ECMAScript allowed version.

This commit adds a new test that parses each javascript file found in
addons. The test fails if unsupported js code is found.  As ES6 is
allowed during tests, the files under a path that contains 'static/test'
are just skipped.

This test uses the es-check tool
(https://www.npmjs.com/package/es-check).

If the es-check tool cannot be found, the test is simply skipped.

Also the test_pylint module is renamed to a more generic name test_lint,
that way, every linter test can find a shelter  here.

closes odoo/odoo#33724

Signed-off-by: Christophe Monniez (moc) <moc@odoo.com>
2019-05-30 11:22:10 +00:00
Priyanka Kakadiya d85451800f [FIX] web_editor: restoreRange on invalid node
In a web editor, add some text, select the text, add a link and
immediately discard the link modal. Traceback.

The traceback is a execute `setEnd` on `Range`, that error is thrown
because editable DIV doesn't save old range

Odoo wrap code does some text node split in order to attach the link
just on the selected text. If it correctly re-set the underlying
structure, it does not update the $(editable) structure used to restore
ranges.

After this commit, editable div will use newly created range for the element

for ex:
-> content: test
-> selected content "test"

when click on link dialog:
ec: test , eo: 4, sc: test, so: 0
selected content  ->  start 0, end 4 -> "test" like this

after clicking on discard:
ec: null text element, eo: 4, sc: null text element, so: 0
selected content  ->  ec and sc both are null, so it will throw an error
while setting cursor position

after applying fix when click on discard:
ec: test, eo: 4, sc: test, so: 0
selected content -> start 0,  end 4 -> "test"

task - 1955863

closes odoo/odoo#33792

Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2019-06-03 05:52:13 +00:00
Toufik Ben Jaa 29762514ae [FIX] sale: singleton error when validating payments
- When validating a payment an "expected singleton" exception is
raised due to the fact that we are using a recordset with multiple
record instead of a recordset with a single record.

OPW-1981632

closes odoo/odoo#33767

Signed-off-by: Christophe Simonis <chs@odoo.com>
2019-05-29 16:16:18 +00:00
Nicolas Martinelli d92acc602c [FIX] event_sale: no currency
If the company is not set on the SO, the creation of a SO line crashes
because `currency` is empty.

opw-2005143

closes odoo/odoo#33783

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-05-31 06:36:55 +00:00
Sébastien Theys 7bb0c8b6c5 [IMP] website_sale: prevent new product from being published
Before this commit, new products created from the website backend were published
by default. This is a problem because the product manager might click on save
before he has finished configuring his new product. He should always be given
a chance to see it himself on the website before the publication.

closes odoo/odoo#32211

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2019-05-29 13:36:13 +00:00
Lucas Lefèvre 0b36687bc1 [FIX] resource: Avoid to set attendances twice
Don't set attendance_ids default value if the field
is not in the field list parameter.

closes odoo/odoo#33904

Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2019-06-05 10:22:51 +00:00
Thanh Dodeur c212cfe899 [REF] *: removes datas_fname from ir.attachment
This commit removes the field `datas_fname` from `ir.attachment` as
it was unnecessary and most of the time the duplicate of `name` or
`url`.

Task #1909865

closes odoo/odoo#32976

Signed-off-by: Martin Geubelle (mge) <mge@openerp.com>
2019-06-05 09:12:13 +00:00
Robot Odoo d6847bacb1 [IMP] web, http, http_routing, *: new asset for test files
Coming with https://github.com/odoo/enterprise/pull/4281

This commit goal is to encapsulate every tour-test into a separate assets
bundle that would be called only during tests (command line) or by URL
(debug=tests). That way, a lot of .js files would not be loaded anymore
uselessly outside test mode and will speed up the page loads (especially in the
frontend as the backend do not reload the page anyway).

In order to do that, we needed to propagate the `debug` state from page to
page.
Otherwise, every page change during a test would simply lose the debug mode and
the test would stop as the test assets would not be loaded.
As we could not add the `&debug=tests` on every link (either hardcoded or
preprocess during the rendering), it has been decided to store it in session.

Technical summary:
1. `debug` state (currently only stored in URL) will be stored in session.
Either when adding the `debug` param in URL (handled with _dispatch) or by
starting Odoo with `test-enable` or `test-file` (handled by session init).
2. Once activated (and so set in session), debug mode will be remain activated
even if not visible in URL (after a page navigation eg).
To remove it,  set its value to nothing, `debug=`. That will exit debug mode
(whatever mode it is: debug, assets, tests).
3. As tour-test files are now in a separate bundle, every layout (when needed)
should `t-call="web.compiled_assets_tests"`.
As it would be redundant and verbose, no `t-if` is needed on the t-call to
load it only in test debug mode. That will be handled by
`compiled_assets_tests` that will actually do the conditionnal t-call-assets
to web.assets_tests, if tests debug mode is activated.
4. In addition to separating the tour-tests files in a separate bundle, we also
moved those files to a specific folder under /static/tests/tours next to
QUnit tests.
5. Also, tour files will be moved in a specific folder /static/src/js/tours for
cleanness purpose (those files will still be kept in their 'normal' assets
as needed outside test mode since it is tours).

closes odoo/odoo#33213

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2019-06-05 09:42:45 +02:00
Jeremy Kersten 7a3046a38f [IMP] tools: add DotDict helper
This function allow a quck dot.notation access to dictionary attributes

We need to make it re-usable for a future enterprise commit
2019-06-05 05:56:33 +00:00
Romain Derie 72f7139f52 [IMP] *: use new helper config.isDebug()
Before this commit, both config and session were aliases to odoo.debug.
Now, config.isDebug() should be call, with possibility to pass a parameter to
check if we are in a specific debug mode such as 'tests' or 'assets'.

task-1934445
Coming with https://github.com/odoo/enterprise/pull/4281
Closes https://github.com/odoo/odoo/pull/33213
2019-06-05 05:56:33 +00:00
Romain Derie 73327db065 [IMP] *: add debug manager in frontend
Now that the debug mode is stored in session, we need a clear indication that
debug mode is activated.
In backend, the 'fa-bug' is doing the trick but in frontend there is no visible
clue that debug mode is enabled.

This commit separate the debug manager code/feature so we can instanciate it in
frontend only with usefull options (such as enable assets, leave debug mode..).

Now, in frontend, people having access to the navbar (o_main_navbar) will see
the same 'fa-bug' icon with minimal options as mentioned above.
Also, in the footer, there will be another 'fa-bug' icon without any options.
It will be usefull when the navbar is not shown, typically the case for
public user, or for portal (without website installed)).
Clicking on it will simply leave debug mode as hinted in tooltip.

task-1934445
Comes with https://github.com/odoo/enterprise/pull/4281
Closes #33213
2019-06-05 05:56:33 +00:00
Romain Derie fbe5b64eb3 [IMP] web: rename file to prepare changes on next commit
As this file will be split in 2 parts, this will minimize diff.

task-1934445
Comes with odoo/enterprise#4281
Closes #33213
2019-06-05 05:56:33 +00:00
Romain Derie 3c37e0e110 [IMP] web, web_tour, website, point_of_sale: adapt code to new debug
As now the debug state is stored in session, the JS framework code and some
templates needed some changes.
First, the debug state is retrieved from session and not the URL anymore.
Second, the debug state does not need to be forwarded as it is now persistent.

task-1934445
Comes with https://github.com/odoo/enterprise/pull/4281
Closes #33213
2019-06-05 05:56:33 +00:00
Romain Derie cd4cd51721 [IMP] project, website_slides(_forum): no need to forward debug in URL
Now that the debug mode is stored in session (see parent commit), there is no
need anymore to forward the debug query param.

This commit clean the occurence of code that were doing that by using mainly
`keep_query`.

task-1934445
Comes with https://github.com/odoo/enterprise/pull/4281
Closes #33213
2019-06-05 05:56:33 +00:00
Romain Derie fdbf11643f [IMP] *: move test and tour files to new folder hierarchy and asset
As we now have a new debug mode 'tests' which load a new asset bundle
containing tour-test files, we moved those files to a new folder hierarchy.
That will clean the .js files trees.
Also, those files should be included in the new asset.

Basically, the .js tour files (not test) should be inside /static/src/js/tours
while .js tour test files (test=true) should be inside /static/tests/tours next
to QUnit tests, inside a tours folder.

+ test_new_api: don't run the test in debug assets

task-1934445
Comes with https://github.com/odoo/enterprise/pull/4281
Closes #33213
2019-06-05 05:56:33 +00:00
Romain Derie d7cd97a9be [IMP] *: new asset for test files, new debug mode (stored in session)
This commit goal is to encapsulate every tour-test into a separate assets
bundle that would be called only during tests (command line) or by URL
(debug=tests). That way, a lot of .js files would not be loaded anymore
uselessly outside test mode and will speed up the page loads (especially in the
frontend as the backend do not reload the page anyway).

In order to do that, we needed to propagate the `debug` state from page to
page.
Otherwise, every page change during a test would simply lose the debug mode and
the test would stop as the test assets would not be loaded.
As we could not add the `&debug=tests` on every link (either hardcoded or
preprocess during the rendering), it has been decided to store it in session.

Technical summary:
1. `debug` state (currently only stored in URL) will be stored in session.
   Either when adding the `debug` param in URL (handled with _dispatch) or by
   starting Odoo with `test-enable` or `test-file` (handled by session init).
2. Once activated (and so set in session), debug mode will remain activated
   even if not visible in URL (after a page navigation eg).
   To deactivate it, set its value to nothing, `debug=`. That will exit debug mode
   (whatever mode it is: debug, assets, tests).
3. As tour-test files are now in a separate bundle, every layout (when needed)
   should `t-call="web.conditional_assets_tests"`.
   As it would be redundant and verbose, no `t-if` is needed on the t-call to
   load it only in test debug mode. That will be handled by
   `compiled_assets_tests` that will actually do the conditionnal t-call-assets
   to web.assets_tests, if tests debug mode is activated.
4. In addition to separating the tour-tests files in a separate bundle, we also
   moved those files to a specific folder under /static/tests/tours next to
   QUnit tests.
5. Also, tour files will be moved in a specific folder /static/src/js/tours for
   cleanness purpose (those files will still be kept in their 'normal' assets
   as needed outside test mode since it is tours).
   This will be done in the next commit.
6. It is possible to enable multiple debug mode, such as 'tests' and 'assets'
   together. Simply separate debug modes with a comma, eg '?debug=assets,tests'

task-1934445
Comes with https://github.com/odoo/enterprise/pull/4281
Closes #33213
2019-06-05 05:56:33 +00:00
David 2fab076e84 [IMP] point_of_sale: add ticket reference in payment
Before this commit, when creating a payment from a pos, the reference was:
Main/0000:

After this patch, it is now:
Main/0000 - Order 00000-000-0000

The number of the ticket is useful as it what is printed on the ticket and what
the customer knows (when trying to reconcile order and payment manually)

Closes odoo/odoo#33696

closes odoo/odoo#33757

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2019-05-29 12:54:48 +00:00
Elisabeth Dickinsonandqsm-odoo b68311454d [IMP] website_forum: review design of forum index
- Allow to set an image on each forum
- Review the form view
- Redesign the forum index with cards and header

task-1984582

closes odoo/odoo#33530

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>


Co-authored-by: qsm-odoo <qsm@odoo.com>
2019-06-04 22:26:50 +00:00
Robot Odoo bae24d7bdd [MERGE] web, web_editor, *: allow image optimize from media dialog
Merge commit for PR #31208

Before this task, many websites were slow due to big images.

Most users upload images without understanding the impact on SEO and speed.

Each upload of an image is important and require some configuration to find the
best solution between speed and quality according to the situation.

After this task, users will have more control on the upload of images,
especially they are given the possibility to reduce their size, quality, and
change the filename.

task-1930726

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2019-06-05 02:03:30 +02:00
Sébastien Theys 87a35d4263 [IMP] web, web_editor, *: add media image optimize dialog
* = website, website_blog

The goal is to give the user an opportunity to optimize his images before using
them.

For this we introduce a preview/configuration dialog after every image upload,
where appropriate default values are filled for the quality and resolution,
based on where the image is going to be used. Since this is not going to be
perfect all the time, we still allow the user to configure them, and we display
a preview to ease this process.

Indeed it is important for SEO and for usability in general that the images are
as light as possible in size.

Technically the original image is uploaded and saved first, and then it can be
optimized. This way the upload only happens once, and the preview can be
computed from the already saved image.

task-1930726
PR: #31208
2019-06-04 22:14:13 +02:00
Sébastien Theys 76cf2ae82a [IMP] web_editor, *: improve media dialog attachment upload
* = web_unsplash, website

Remove iframe upload and replace it with a proper RPC. The route is now only
accepting one file at a time, which makes it easier to maintain, and allows to
process the first file as soon as it is ready, instead of having to wait on
everything.

Also fix a bug where a document could not be uploaded because it would try to
parse it as an image.

Remove filter after search result from the JS and add the corresponding
conditions in the domain to avoid processing and returning unnecessary records.

If multiple attachments exist with the same URL, now display them all to avoid
confusion.

Compute all the necessary values in the python model instead of in the JS.

Allow SVG in the widget (the server already accepted them before).

Disable multiple image upload when not in multiImages mode.

task-1930726
PR: #31208
2019-06-04 22:14:13 +02:00
Sébastien Theys 191c556d6b [IMP] web_editor, *: improve file media widget views & selection
* = web_unsplash, website_blog

Rename "image" to "attachment" when appropriate in FileWidget

Improve image selection / highlight code (now based on attachment id)

Improve image grid view:
 - Remove the row mechanism and replace it by a single loop over the images.
 - Take advantage of row wrap for a responsive display.
 - Uniformize the height (prevent tall images from moving down everything).
 - Load a miniature of the images when possible, remove the loading placeholder.
 	This should significantly reduce the download size when opening the dialog,
 	at the cost of CPU usage on the server.
 - Split the existing image view into one view for the loop and one view for the
 	image itself. This way in a following commit we can reuse the image view
 	when adding a new one, instead of having to render everything again.

task-1930726
PR: #31208
2019-06-04 22:14:13 +02:00
Sébastien Theys 86d304fdb0 [IMP] tools: prevent unnecessary image processing
Both for performance and to avoid reducing the quality of an image in unexpected
situations.

- avoid applying useless operations in the first place
- do not count an operation if it had no effect
- allow quality 0 as a safe default that does not forcefully re-save the image

PR: #31208
2019-06-04 22:14:13 +02:00
Sébastien Theys 08cda70147 [FIX] tools: fix support for multi-frame GIF images
Before this commit, only the first frame would be saved.

PR: #31208
2019-06-04 22:14:13 +02:00
rhe e3c6683846 [IMP] POS: multi currency report issue.
When the pos order report were displayed in a context of multi currency, the total in the company currency was not correct because the value weren't converted before being added to the total.
So to have the correct total, we convert all orders that were not in the company currency to the correct one.
TASK ID: 1998604

closes odoo/odoo#33652

Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
2019-06-04 13:06:38 +00:00
Robot Odoo 3a55c4616d [MERGE] base: Improve multi-company UX
TaskID: 2000277

closes odoo/odoo#33876

Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2019-06-04 21:40:44 +02:00
Pierre Paridans ece2fed154 [REF] mail: chatter topbar styles
The Chatter's topbar (containing the buttons like 'Send Message', 'Log
Note') was difficult to deal with: specially the positioning of its
content (a float into another float...).

So, this commit refactors the topbar's layout using Flexbox. It allows
to simplify and reduce the amount of (S)CSS needed to achieve the same
visual result.

In the process, the Followers (dropdown) buttons now use correctly
nested .btn-group components (as described by the Bootstrap 4
documentation) and SubTypes dropdown items use semantic html element
(<button>) instead of attaching behavior on icon element(<i>).

Finally a few Chatter's tests requested a slight adaptation (cf.
trimming element's textual content).

Task ID: 1928573

closes odoo/odoo#33823

Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2019-06-04 13:47:33 +00:00
Yannick Tivisse fd86ffd5aa [IMP] web: Keep dropdown open and show multi company changes before reload 2019-06-04 15:36:04 +02:00
Yannick Tivisse 39615db00d [IMP] base: Display favicon field in debug mode 2019-06-04 14:26:29 +02:00
Yannick Tivisse 3295c7dcf7 [IMP] web: Display switch company boxes on the left 2019-06-04 14:25:11 +02:00
Yannick Tivisse 318fa03020 [IMP] base_setup: Remove group_multi_company on res.config
A user is supposed to be put in the group_multi_company group when the
he is allowed in several companies. Activating the feature for all the users
is not necessary.
2019-06-04 14:09:12 +02:00
Yannick Tivisse 2996e7645f [IMP] base: Remove group toggle_multi_company
Fp request
2019-06-04 14:01:42 +02:00
Yannick Tivisse 3d06a77393 [IMP] base: Set a bar on favicon instead of colorizing the 'O' 2019-06-04 13:58:55 +02:00
Yannick Tivisse 08aa26b4ea [IMP] stock: Enable multi company mode in demo data
As 2 companies are enabled for demo/admin users, enable the multi
company groups for these 2 people.
2019-06-04 13:45:09 +02:00
Andrea Ulliana 0d88571faa [IMP] website: move parallax option below background image options
Part of https://github.com/odoo/odoo/pull/30986
task-1939869

closes odoo/odoo#30986

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2019-06-04 11:34:35 +00:00
Andrea Ulliana 6a22dcfcbc [IMP] website: move "add/remove slide" option to the top
Part of https://github.com/odoo/odoo/pull/30986
task-1939869
2019-06-04 11:34:35 +00:00
Andrea Ulliana 3f255ce618 [IMP] website: remove "add language" in mobile preview
Part of https://github.com/odoo/odoo/pull/30986
task-1939869
2019-06-04 11:34:35 +00:00
Andrea Ulliana 9f53b187d9 [IMP] website: add the possibility to delete an anchor
Part of https://github.com/odoo/odoo/pull/30986
task-1939869
2019-06-04 11:34:35 +00:00
Andrea Ulliana eacf934230 [IMP] website, web_editor: make minor text modifications
- End of list in image library
- Title add menu item
- Warning message in html/css/js editor
- Wording building block sections

Part of https://github.com/odoo/odoo/pull/30986
task-1939869
2019-06-04 11:27:08 +00:00
Thanh Dodeur e0d354143b [IMP] web: make search panel display hex_color fields
This commit adds a colored ball in front of search panel categories
if the records have a `group_hex_color`

Task: #1974652

closes odoo/odoo#33842

Signed-off-by: Martin Geubelle (mge) <mge@openerp.com>
2019-06-04 08:07:22 +00:00
Mohammed Shekha ed924e956d [IMP] various: set some fields as optional to simplify the views
This commit removes some groups that are now useless since their
only purpose was to allow the user to hide or show some fields
depending on its value, but those fields are optional now.

Task-1902765

closes odoo/odoo#31944

Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2019-06-04 07:04:51 +00:00
David Monjoie 88a26235ca [IMP] web: add optional fields parameter
This commit adds a new parameter on fields for list view and one2many.
The parameter name is "optional" and its values are "hide" or "show".

Columns of the list view which have the optional parameter set are
listed in a dropdown that can be toggled from the last cell of the
table header. The ones with optional set to "hide" are hidden by
default.

User choice is stored in local storage. If no saved parameter can be
found in local storage then the default value from the view is used.

Due to the overflow behavior of the responsive table, we were forced
to wrap the table-responsive div in yet another div. We changed the
o_list_view class on the table to o_list_table in order to reuse
the more generic o_list_view class on the top-most div. CSS rules
and selectors had to be updated according to this change.

Task-1902765
2019-06-04 07:04:50 +00:00
rhe 2bffd65451 [IMP] point_of_sale: improve multi company
Since the company is not stored anymore on the user and is in the
environement, some parts of the code that was based on the current user
company cannot work anymore.

We've adapted the code to take the company from the relevent documents
to avoid having inconsistencies through the different documents
generated in the point of sale.

TASK-ID: 1997613

closes odoo/odoo#33556

Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
2019-06-04 07:20:19 +00:00
qsm-odoo e9be0bb178 [REF] web, *: share common parts of main frontend layouts
* http_routing, portal, rating, survey, website, website_survey,
website_slides_survey

Before this commit, the final base layout of website was a fully
overridden layout of the one in portal, which was somehow a duplicated
one of the login one in web, which... so lots of duplicated code.

This commit is a first step towards a better organization:

1) The web app defines a frontend layout (to include base frontend
assets), with a base company logo as header.

2) The portal app modifies that layout in place to include the base
header, footer, ... It also uses a primary extension of it for
portal pages.

The survey app simply uses the above layout instead of defining its
own (by primary extension to include its own assets for its own
pages)

Same goes for the rating app and pages.

3) The website app modifies that layout in place to include the UI
assets, to add website UI, ... This allows to create frontend apps
which do not depend on website, with a non duplicated layout that
will be automatically adapted if website is ever installed (this
therefore allows to get rid of website_survey definitely)

This commit also fixes the session info system and the translation URL
on the frontend side to not require to redefine the whole session_info
for portal, website, ... Now the frontend session_info is defined in web
and http_routing extends it to add translation informations, then
website extends it again to add its own elements (not to redefine them
all as before). Note: before, http_routing defined the translation route
but only portal was adding it in its layout...
This is an adaptation of the work that was done with commit
https://github.com/odoo/odoo/commit/99821fdcf89aa66ac9561a972c6823135ebf65c0

Note 1: Many frontend but non-website apps (not only survey / rating)
could probably use this too but this would be the topic of another task.

Note 2: survey currently depends on http_routing but does not add itself
in the list of frontend apps to translate, it probably should.

Note 3: web_editor does currently not depend on http_routing but does
add itself in the list of frontend apps to translate, it thus uses a
function it does not really depend on... to check after its work-in-
progress refactoring.

task-1961045

closes odoo/odoo#33825

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2019-06-03 20:09:26 +00:00