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`
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
closesodoo/odoo#34097
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
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.
closesodoo/odoo#35057
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
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>
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
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
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
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
closesodoo/odoo#35418
Signed-off-by: Cedric Snauwaert (csn) <csn@openerp.com>
The view name is often not very informative, add the external id for a better
error
closesodoo/odoo#29473
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
This merge removes the mass_mailing.campaign model. Instead of having a
fully fledged model, we will simply inherit utm.campaign.
This change implies that mass_mailing.tag and mass_mailing.stage move to
the utm model along their associated views/data.
These changes were made so that campaigns could be used in the future by
social, mass_mailing and mass_sms and available in the same view
This commit also removes the source_id and the medium_id fields on the
campaign. Indeed those depends on the flow, not the campaign (mass mailing
is a source, email is a medium for example).
In this merge we also add statistics from crm and sales to the campaign
model like what has been done for mass mailing previously.
Task ID: 2002029&
PR: #34015closesodoo/odoo#34452
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
This commit renames the mass_mailing_ids and the mass_mailing_clicks_ratio
to mailing_ids and mailing_clicks_ratio. Indeed it is shorted and more
inlined with the new model names.
Task ID: 2002029
PR: #34015
PURPOSE
This commit removes the mass_mailing.campaign model. Instead of having a fully
fledged model, we will simply inherit utm.campaign. We will also add relevant
statistics on utm campaign model in order to use it in various applications.
SPECIFICATIONS
This commit changes website_links.js so that, when creating a campaign,
the field is_website is set to true.
This will allow us to filter irrelevant campaigns in mass_mailing and social
Task ID: 2002029
PR: #34015
PURPOSE
This commit removes the mass_mailing.campaign model. Instead of having a fully
fledged model, we will simply inherit utm.campaign. We will also add relevant
statistics on utm campaign model in order to use it in various applications.
SPECIFICATIONS
This commit fixes the domain used to get the invoiced amount generated
by the mailing.mailing.
The new domain will be the same as the one used in the invoice report
Task ID: 2002029
PR: #34015
PURPOSE
This commit removes the mass_mailing.campaign model. Instead of having a fully
fledged model, we will simply inherit utm.campaign. We will also add relevant
statistics on utm campaign model in order to use it in various applications.
SPECIFICATIONS
This commit adds revenue and quotations statistics on the
kanban and the form view of the utm.campaign
Kanban and form views will now display the invoiced_amount
and the number of quotations generated by the campaign.
TaskID: 2002029
PR: #34452
PURPOSE
This commit removes the mass_mailing.campaign model. Instead of having a fully
fledged model, we will simply inherit utm.campaign. We will also add relevant
statistics on utm campaign model in order to use it in various applications.
SPECIFICATIONS
This commit adds leads/generated statistics in the kanban and
the form view of the utm campaign.
Kanban and form views will now display the number of leads and
opportunities generated with the campaign
TaskID: 2002029
PR: #34452
PURPOSE
This commit removes the mass_mailing.campaign model. Instead of having a fully
fledged model, we will simply inherit utm.campaign. We will also add relevant
statistics on utm campaign model in order to use it in various applications.
SPECIFICATIONS
This commit removes the mass_mailing.campaign model. Instead of having a fully
fledged model, we will simply inherit utm.campaign. This change implies that
mass_mailing.tag and mass_mailing.stage have to move to the utm model along
their associated views/data.
These changes were made so that campaigns could be used in the future
by social, mass_mailing and mass_sms and available in the same view
This commit also removes the source_id and the medium_id
fields on the campaign.
This commit also moves the unique_ab_testing field from the mass_mailing_campaign
to the mass_mailing model
Task ID: 2002029
PR: #34015
Task 2038326
* Tick the credit note sequence by default on the customer invoices and vendor bills journals
* Write Customer Invoice/Vendor Bill/Credit Note/Customer refund at the top of the document
* The reference field should be printed on the credit note pdf (interesting because it gives source and reason)
* If the document is a credit note, there shouldn't be any payment information on the pdf (the customer doesn't have to pay you) (currently you see the "payment communication" the customer is supposed to use)
* Rename Credit Note to Refund on dashboard
* Add tooltip on payment widget
closesodoo/odoo#35231
Signed-off-by: Cedric Snauwaert (csn) <csn@openerp.com>
Fine tuning of this commit: d0f3e896d4
To ensure that the date_invoice is a date object because a comparison is
made with date_due
opw:2033438
closesodoo/odoo#35058
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
An unintended side-effect of #29431 is apparently that auto_install
applications automatically get reinstalled when uninstalled, which was
not the goal.
Move the auto_install selection back into db.py, this version seems to
work even though the previous attempt was apparently unsuccessful.
closesodoo/odoo#35180
Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
when opening the sale promotion in mass mail, it creates a traceback
due to invoice compute method as it does not have invoice id because
of changes in account.move.
task-2036203
closesodoo/odoo#35222
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
The states for the expense are:
- draft
- reported
- approved
- done
- refused
So in the definition of the `payment_mode` field, these states must be used.
Before this fix, wrong states were used in the definition of the field
`payment_mode`.
opw:2038715
closesodoo/odoo#35051
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
Steps to reproduce the bug:
- Install accounting.
- Go to Accounting Settings and activate multi-currencies and margin analysis.
- Company currency in EUR
- Currency rate for EUR is 1.0 and 1.5 for USD
- Create two invoices, one in USD and the other in EUR. Both for 30 and for product P.
- Confirm and register payment to make them fully payed.
- Go to Accounting > Reporting > Product Margins > Open Margins.
Bug:
The average sale unit price for P was 60 instead of 25
opw:2035968
closesodoo/odoo#34998
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
You are not able to choose an image for the customer display because of
the bold tag, so we removed it and applied a css class instead.
closesodoo/odoo#34854
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
When opening a dialog using mouse and closing it, form_dialog_discarded is
triggered, which tries to set focus on form while lastActivatedFieldIndex
is -1, as dialog is opened using mouse directly
do not set focus back to form widget if lastActivatedFieldIndex is -1
task-2031706
closesodoo/odoo#34684
Signed-off-by: VincentSchippefilt <VincentSchippefilt@users.noreply.github.com>
Before this commit, when a snippet was cloned, its animation was not destroyed
first. The flow was:
1. Clone the snippet (DOM) - web_editor trigger `snippet_cloned`
2. Start cloned snippet animation - website listen `snippet_cloned`
This was causing bugs, eg facebook snippet for which the animation is to create
an iframe containing the facebook widget.
When cloning this snippet, its iframe would be cloned to, then its animation
would be started, creating another iframe.
To fix such flows, the snippet cloning flow should be:
1. Strop the snippet animation
2. Clone the snippet (DOM) - web_editor trigger `snippet_cloned`
3. Start cloned snippet animation - website listen `snippet_cloned`
4. Restart the original snippet animation
task-1951466
closesodoo/odoo#35029
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Before this commit: 15fa0c23d9
It was possible to encode negative amount for an hr.expense.
Before the fix, it raised a Error saying:
"Cannot create unbalanced journal entry."
opw:2036620
closesodoo/odoo#34953
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
If there is no token to be shown, don't show the stat button as this
might confuse the end user
closesodoo/odoo#32548
Signed-off-by: Romain Libert (rli) <rli@odoo.com>
Some modules expect the users having the sales_team.group_sale_salesman group
to be able to read payment tokens (credit cards).
Payment tokens are defined in payment.
Both are a dependence of sale, which is thus the lowest common denominator.
opw 1965213
... if the current action can't be executed.
Let's assume a form view for a record with a multicompany ir.rule.
If the user switches to another company, the webclient is reloaded,
but he doesn't have access to that record anymore. In this case,
he is redirected to the Home menu.
Before this rev., when he clicked on an app in this situation, it
crashed. This was due to a leftover reference of the failed action
(the lazyloaded, multi-record controller) in the controller stack.
closesodoo/odoo#34994
Signed-off-by: VincentSchippefilt <VincentSchippefilt@users.noreply.github.com>
Select fields were not `contenteditable=true`, which means they could
not be edited. Besides, being that each of their option was individually
considered a snippet, and that they were contained in `div` tags, they
were effectively unbreakable, which means that adding new options by
hitting `ENTER` did not work (note: this also currently doesn't work
properly in v12.0, for other reasons as the concept of an "unbreakable"
node didn't exist yet). This fixes those issues.
closesodoo/enterprise#4817
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
X-port/Cherry-pick of odoo/enterprise@af51d9ff2a
Changed the way some field types are displayed.
Before this commit, column width in a list were calculated according to
a given factor (integer), determining their weight.
Now, some specific fields have an hardcoded width instead. This task
also slightly tweaks some width factors, in order to try to have a
better layout in most list views
Task 1985916
closesodoo/odoo#35147
Signed-off-by: VincentSchippefilt <VincentSchippefilt@users.noreply.github.com>
Before this commit, in list editable, when user save multiple records in
the same time, the context is passed for the write but not for the read.
Now, the context is passed also for the read.
closesodoo/odoo#35113
Signed-off-by: Géry Debongnie (ged) <ged@openerp.com>