Advanced user can do it from the backend by the way and it is not
obvious to understand the impact to set/unset this option.
Seems like I was the only guy to think that this feature was needed
task-1878245
Purpose of this code is to synchronize user and employee timezones. However
if the employee has one and the user none it is better to keep the one
set on the employee to avoid issues.
mrp.workcenters are resources instances. Their resource_type is human by
default while workcenters should be considered as material. This commit
set the resource_type as material by default in case of workcenter
Mrp workcenters have a resource_calendar_id to specifie its working
hours. On the form view, this field is optionnal but is mandatory in the
form view.
This commit set it as required in the view to avoid the classical 'object
with reference * - *' error.
Task : 1876847
- added two new actions to the form view debug action list,
both opens list (+ form) views of messages and attachments respectively
for which the domain is restricted to the current record.
task: 1860031
- Added a new button to the chatter that displays the amount of
attachments on the current record and when clicked, all the attachments
attached to the current record
- added mail.FormView (includes), used by the chatter attachment
button to fetch the field value of attachment_count.
- added a computed field "attachment_count" to mail.thread that
contains the amount of attachment attached to the record.
- changed the followers div, it is now sharing a "right side"
area with the attachment button.
task: 1860031
When duplicating a task, we want the copy to have
the same sale order line then the original.
However, we duplicating a project, the tasks are
copied too. But, in that case, we don't want them
to be linked to any sale line, as the copy project
will not be.
This commit fixes that use case, and provides a test.
Task #1883640
The generated SQL constraints name is too long, and so, when raising, it
does not show the defined error message, since Postgresql truncated the
name. thus Odoo can not match the error with the error message.
Task #1883640
Since in sale_timesheet (and elsewhere), the sale line is link to
some document, the user might click on this field to get more
information.
Unfortunately, he will get an odoo-generated form view, as no one
exists for this model.
This commit provides a basics and beautiful view for SOL, available
for all modules.
Task #1882245
Since the recent fixes on multi website, the customization modal
is restored but is a lot slower the first time we use it (around 20sec
to save an option on my machine). This was because when we change an
option, all the others options are sent to the server to be (re-)saved
and, on the first time, the multi-website system has to duplicate them
all to make them website-specific.
Now, we only enable/disable views which are modified by the user.
The write method did not work properly for views anymore as soon as it
was called on a multi-records recordset which contains at least one
view which is not website specific. In that case, it used the cow
system for that view (and thus created a specific copy)... but forgot
to continue the write method for the other views, leading to strange
results.
The code used the xml_id field instead of the key field at some point,
so the modal was not fetching the proper views.
This commit also removes the useless code in there.
Before this commit, extra_info was never considered enabled since it was
checking the original view and not the current website view.
By default disabled, when you enable the view, multiwebsite duplicate this
view to enable it for the current website.
+ fix redirect to kanban adress after editing the billing address instead of
the step 'choose your shipping address'
task-1878245
In bootstrap 3, label was in bold by default. And we use label-optional to make label normal.
Update sass to have same behaviour:
required field in bold
other fields in normal
task-1878245
When the user chose a very wide logo for the website navbar, it
overflew over the menu items (making the "+" feature look broken).
This in fact occurs since commit https://github.com/odoo/odoo/commit/4bc79da943c71e762e1f6dedbe3a641042bfef3f.
Its goal was to avoid top menu flickering due to that "+" button
feature. To do that, menu items were hidden with an height of 0 during
loading, then, once the correct number of items needed for the "+"
feature was computed, they were made visible to the user. Another
problem was due to the logo image loading. When it is not loaded yet, we
cannot properly compute the number of items which is needed. To solve
that problem, we fixed the size of the image container instead of
setting the height of the image itself.
But fixing the size of the image container only created a new bug: very
wide logos overflow this container. This commit solves all the problems:
1) The height of the image is set to be equal to the navbar links.
2) The height of the navbar is not forced, meaning that if the user
decides to change the height of its logo to go against (1),
everything will be adapted accordingly.
3) During loading, the menu items are still 0px tall, hidden and made
visible once the "+" feature is enabled.
4) The "+" feature is only enabled once all the navbar images have been
successfully loaded.
task-1878245
Revision on https://github.com/odoo/odoo/commit/ec8c505bc1c9ec21939e9ffef53a9cc6f63f30c7
The commit above changes the way threads are rendered: the template
now uses a thread object, instead of a list of messages.
However, it was not handling messages that have been filtered from
the searchview. As a result, it was not possible to filter messages
at all.
This commit re-adds the possibility to filter messages, by providing
information on the domain of the thread in the template.
Task-ID 1877502
Before this commit, the search option buttons were not
hidden when clicking on the zoom-in/zoom-out button next
to the searchview.
This is due to updating the control panel with the list
of buttons as the searchview buttons, instead of the
container. Since the visibility of the searchview buttons
is defined on the container, the toggler button and the
search view options lost synchronization.
This commit fixes the issue by providing the container
that is shared between search option buttons.
Task-ID 1877502
Before this commit, only thread windows in the backend had the
method `getID`. However, it should also be the case for the thread
windows in the frontend (website livechat), as the template of any
thread window makes use of this method.
Before this rev., there was a race condition making some tours
randomly fail on runbot, when the following steps occurred in that
order:
- load webclient
- as soon as the menu is ready and visible, click on a root menu
which thus leads to a doAction
- in the meantime, an RPC is done by the webclient to retrieve
the (optional) default action of the user (if there is no
state in the url, which is the case for tours in general)
- when that RPC returns, this action (if any), or the action of
the first menu is executed, thus leading to a second doAction
- the ActionManager using a DropPrevious, the first doAction is
dropped and thus the action linked to the clicked menu is
never shown, making the tour fail
This rev. uses the state of the ActionManager's DropPrevious to
prevent the default action from being executed if another action
is already being executed, thus removing that race condition.
Note that this fix is temporary, as the community webclient is
currently being refactored.
This commits add a container to make row full width, it also use bs4 classes to
make the content centered.
It also clean useless DOM.
Task-1878245 (chatter)
As an `form-group` can contains element having `form-control` class and other
not having it, we should not force height on `form-group` elements.
Typically, we could have:
div.form-group
input.form-control
button
Forcing height only on `form-control` will make the input thinner than the
button.
We have JS which tooks care of customizing the color and background
options of .carousel elements so that the active carousel item is
edited instead. The recent snippet refactoring added those options on
.carousel-item elements directly, so that slide and carousel options
are separated in the customize menu. This however made the options
complex to use and some of them impossible to use. This also added color
and background options on non-snippet carousels like for the products in
the shop, which was not meant to be. This commit goes back to the old
system for now.
Note: using "[class*='s_']" as a selector to match snippets is not
correct as it matches the elements whose classes contains 's_'... and
in our case the body was matched because it has the class
'editor_ha*s_*snippets'. A proper way would be to use this selector:
"[class^='s_'], [class*=' s_']". But even then, this is not really a
good way.
task-1878245
The menu item dialog is an extension of the link dialog where all the
.form-group elements which contain a .link-style option element are
removed. A new link style option was recently added but with the wrong
class, preventing it to be removed for the menu item dialog.
task-1878245
By default, all btn colors are suggested in the link dialog (alpha,
beta, gamma, delta, epsilon, link, primary, secondary, success, info,
warning and danger). In lots of themes (and the default one), primary
= alpha and secondary = beta, which led to having two suggestion with
the same apparent color.
A new system was introduced to automatically remove the duplicates...
but this system also removed the button preview as it considered it to
be a duplicate.
This commit also adapts the preview to BS4.
task-1878245
The calendar view does not make many sense for timesheet. Moreover
recording timesheet from it is strange since there is no end date
on the timesheet model.
Removing this view avoids confusing for users.
Task #1883326
This commit redesigns all portal screens, improve bootstrap compliance
and increases maintainability. See sub-commits for details.
Closes https://github.com/odoo/odoo/pull/26849