From now, you need to explicitely add sitemap=True if you want your controller
into the sitemap.
It's the default value, but if you forgot it, it will raise a Warning on runbot.
It will avoid wrong controller in sitemap and duplicate (empty) content.
From now, if your model contains a field website_id, the modelConverter for
sitemap will automatically add the domain:
"[('website_id', 'in', (False, current_website_id))]"
It avoid redundant declaration and ugly url in redirect/rewrite view.
Migration: need to remove it from url_from in website.rewrite
task-2065018
closesodoo/odoo#39427
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
Create a Project with tasks, archive it, delete it.
The project is deleted, but this should not happen:
tasks are present, but they are hidden because when the project is
archived all its tasks are archived too (active flag is set to false).
On project unlinking only active tasks are checked, thus allowing the
deletion. Using a context flag to avoid filtering the non active tasks.
opw-2080515
closesodoo/odoo#38320
X-original-commit: 71a79f26e6319c6987397950c7f9df6c61dfb0d9
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
*: account
crm
event
fleet
hr_expense
hr_holidays
hr_recruitment
mail
maintenance
mrp
note
project
purchase_requisition
repair
stock_landed_costs
stock_picking_batch
survey
website_event_track
This commit is making sure that the exception activities filters are
only defined where it make sense (i.e. where the system can actually
create an exception activity).
We have therefore removed 'exception activities' filters where the
system won't be creating any.
Task-2056425
closes odoo/odoo#36027
Closes: #36027
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Since Odoo 9.0, the `return_label` in url was not working anymore.
What it did before 9.0 is add an item in the breadcrumb which once clicked
would redirect to the frontend.
This was handled in the `do_load_state` of the action manager in JS.
We don't need to reimplement that behavior as now we have the 'Go to website'
stat button. Thus we remove the code.
Closes#36325
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
When copying a task, we need its company to be the
one in its new project.
Task-1999686
closesodoo/odoo#37108
Signed-off-by: Jérome Maes (jem) <jem@openerp.com>
This commit makes possible the task delegation in a multi company
environement. A subtask is a normal task with a parent, but can
now be in a different company, to be use as subcontracting task in
another company.
Tests are added to check multi company consistency for the project
app in general and for the subtask cases.
Task-1999686
This commit completes what was initiated a few time ago : a substask
is like a normal task and can now live its own life, being in another
project, attached to another customer, billed on another sale line, ...
than its mother.
The informations coming from the parent are only use as default values to
prefill the form view (with default options on creation, or though `onchange`
when setting the parent on existing task).
No values are forced now.
Form, default context, and others views has been adapted to make this feature
works.
Task-1982072
*: hr_expense, project
Adding required domain which will allow to only select analytic accounts whose
company is same as current one or blank.
task-1966016
closes odoo/odoo#37450
Closes: #34270
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
There are too many image sizes. Since they are stored resized this takes time to
generate when saving a new image, it's more rows on the attachment table, more
files on the disk, ...
64px is close enough to 128px that it can be removed without a big impact on
download size.
It will even reduce download and number of requests when both images are
displayed because now only one has to be downloaded and then benefit from cache.
The difference between the two is typically around 1.5kB which is negligible
these days, especially when the request overhead is around 0.5kB already, not
even taking into account other factors such as latency.
If a 64px image must absolutely be returned, it is still possible to pass the
size parameters to the image route. But the current guideline is to handle
resizing in the views when necessary.
Views
=====
- remove width and height attributes when existing CSS rules are overriding them
(eg. `.oe_kanban_avatar` in the right context)
- add CSS rules instead of width and height attributes when possible
- use `object-fit: cover;` where width and height are forced to avoid distortion
of non-square images
- for products, use `object-fit: contain;` instead, keep ratio but without crop
- add new CSS rules where the expected size was max 64px*64px before due to the
image size itself
- remove `img-fluid` where using size classes to avoid conflicting rules
task-2060865
closesodoo/odoo#36147
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
This commit changes the display of dates on kanban cards. It is now conditional.
Depending on the date versus actual date we conditionally set the color.
Depending if the record are grouped by date, we format the date as a date or as a time.
If the task is an fsm task we show the planned date begin otherwise we display the deadline.
From which App | project | fsm |
-------------------------------------------------------------------------------
task.is_fsm | y | n | y | n |
-------------------------------------------------------------------------------
task.fsm_state == 'done' | y | n | y | n | y | n | y | n |
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
display deadline | n | n | y | y | n | n | y | y |
-------------------------------------------------------------------------------
should it be colored? | n | y | y | y | n | y | y | y |
-------------------------------------------------------------------------------
display city ? | n | n | n | n | y | y | y | y |
extra case: in fsm, if the records are grouped by date, we display time only in red, if the task is late, taking the time into account.
Task-2047389 Closes#5388
The goal of this commit is to finetune search views in several modules.
TaskID: 2055972
closesodoo/odoo#36058
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
The goal here is to share the same kanban between fsm and project. A few tweaks are also done to the project kanban.
As in fsm the kanban group by is different we still had to do a primary inherit in fsm.
related task 2009563
For historical reason (problably the inheritS between project and AA, removed in 12.0), portal
user can read Analytic Account. This makes no sense, as it is a purely internal resource
for companies. Removing the access rights don't change anything for portal user and make
those data secure.
Task-1911581
This branch is the combination of several optimizations in the ORM:
* store field values once in the cache: the cache reflects more
faithfully the database, only fields that explicitly depend on the
context have an extra indirection in the cache;
* delay recomputations by default: use method `recompute` to explicitly
flush out pending recomputations;
* delay updates in method `write`: updates are stored in a data
structure that can be flushed efficiently to the database with method
`flush` (which also flush out recomputations);
* make method `modified` take advantage of inverse fields to inverse
dependencies;
* filter records by evaluating a domain on records in Python;
* a computed field with `readonly=False` behaves like a normal field
with an onchange method;
* computed fields are computed in superuser mode by default.
Work done by Toufik Ben Jaa, Raphael Collet, Denis Ledoux and Fabien
Pinckaers.
closesodoo/odoo#35659
Signed-off-by: Denis Ledoux <beledouxdenis@users.noreply.github.com>
In Project app, we now ensure the company of a task. Indeed, since that
model can be billed, and is important in some business, we need to ensure
its link to a company. A task can live outside a project, so the company
of a task can not be related. Task company can be set by user, but must
be the same as the project (is set), as the task can be billed depending
on project properties.
Task-1999686