Recent work on the list view allowed to add buttons in group
headers (see 015958dc17). However, we couldn't execute the action
of the button by pressing Enter, because the Enter keydown was
stopPropagated by another handler (folding the group).
This rev. makes this work, and also improves a bit the style of
the buttons in group headers.
Task 1915702
Assume an x2many editable list where the user edits a record (input
field), and then clicks on 'Add a line' (and keeps it pressed for a
while, before releasing the click).
When the 'mousedown' event occurs, the 'change' event is triggered
on the edited field, and (once potential onchanges have been
applied), the list is updated, i.e. all rows except for the one
being edited a re-rendered.
However, the 'Add a line' handler listens to the 'click' event,
which never occurs if we release the click after the rows have been
re-rendered.
This is an issue for every rows, not only 'Add a line', but for
data rows, the issue is already present in former versions, and is
not that easy to fix). The 'Add a line' case is a consequence of
the recent work on list views (see 234d92c4f0), so we can fix it
independently.
Task 1915702
There was one tax group per tax which was strange, so remove all duplicated tax group and only keep one tax group per tax percentage (0%, 6%, 12%, 21%)
closesodoo/odoo#32585
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
When displaying forecasted inventory if there is no default order,
the default order forced on date and id. In that case, if the date is
not in the "group by", it causes warning.
With this commit, the date is forced in the SQL view.
closesodoo/odoo#32633
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
When joining a course of liking a slide if the user is not logged there
is a popover asking him to login. If auth signup allows user creation
link instead redirects to signup instead of login to save a click and
improve onboarding.
closesodoo/odoo#33755
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
- The overdraft setting of lunch is company dependent but had no
icons specifying it on the settings view.
This commit adds the icon
closesodoo/odoo#33761
Signed-off-by: Toufik Benjaa (tbe) <tbe@odoo.com>
This commit allows the user to edit the name of the sections
in the front end with the web editor
Task ID: 1999661
PR: #33633
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
In the backend, the user has the possibility in the channels list to drag and drop
channels to define their order, thanks to the `sequence`.
This order was then not respected in the front-end when displaying the slides channel
`/slides/all`.
This was basically not possible for the user to control the order in which
the channels were displayed.
With this revision, when the order is not specified to the controller,
or is wrong, it fallbacks to `None`, which therefore follows the slides channel natural
order, which is `sequence, id`. The user can now control the order of the slides channels
in the front-end.
closesodoo/odoo#33745
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
1/ As admin, add Lunch Maki to your order
2/ As demo, add Lunch Maki to your order
Admin now has 2 Lunch Makis, demo has none.
closesodoo/odoo#33731
Signed-off-by: Toufik Benjaa (tbe) <tbe@odoo.com>
- When displaying the organisational chart an access right error can be
triggered if the current user cannot read employees from other
companies and if one of the displayed employee's manager is in an other
company.
closesodoo/odoo#33576
Signed-off-by: Toufik Benjaa (tbe) <tbe@odoo.com>
Before this commit, if you was searching something that return no results,
you will call the sql query generating an error syntax:
Traceback:
ERROR: syntax error at or near ")"
LINE 8: WHERE sub.id IN ()
Now, we don't make more useless query if we know that there are no users.
+ preventive fix the call of this method without user_ids
This commit is related to #14667closesodoo/odoo#33715
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
Following https://github.com/odoo/odoo/commit/ddf2d2dd666c6e3fa2b6b7f943575657a42d6d8b,
the card bodies received a background color.
The 'row' class should not be used on a 'card-body' element but if it is
done, our custom bg color would overflow the card. As a fix for those
cases (normally only one at the time this fix is made), remove the
background color.
opw-1946124
closesodoo/odoo#33710
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
If the `/longpolling/im_status` route is slow to respond, the UI might
be blocked while there is no good reason to do it.
closesodoo/odoo#33643
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
- If you are a portal user when trying to access the validation queue
an access right error can be triggered when trying to read the post's
user name if the record rules don't let you read on this specific
user.
closesodoo/odoo#33626
Signed-off-by: Nicolas Seinlet (nse) <nse@odoo.com>
We should have the frontend and backend in sync on the last_location
of the user
closesodoo/odoo#33608
Signed-off-by: Toufik Benjaa (tbe) <tbe@odoo.com>
The feature was broken by #28404 which made the JS make use of the
"animations" system.
Currently, on the website, we have an option 'Track this page' in promote
section, which will give us the URL of the landing page.
However, this option is not working and shows the default placeholder
provided on the input.
This commit will fix the issue. From now 'Track this page' option will get
the URL of the landing page and it will be shown on input rather than the
default placeholder value.
task-1998160
closes#33603
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
- Create 5 vendor bills with a long reference (> 1000 characters), for
the same partner.
- Select the bills and register a payment
An error arise: 'psycopg2.OperationalError: index row size 3256 exceeds
maximum 2712 for index "account_move_line_partner_id_ref_idx"'.
As mentioned, the index row size limit is 2712 bytes, which is exceeded
in that use case. Indeed, the reference of the payment is computed based
on the vendor reference of all bills.
We limit the number of characters to 2000. This seems reasonable knowing
that UTF-8 characters use sequences of 1 to 4 bytes [1]. Characters with
a code less than 128 require 1 byte only, and it is expected that most
vendor references will only use these characters. It is indeed unlikely
that special characters (such as Chinese characters, taking up to 4
bytes) are used for such references.
[1] https://tools.ietf.org/html/rfc3629
opw-1998823
closesodoo/odoo#33457
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Converting a checklist into an ordered list didn't remove the
o_checklist class. In consequence, converting a checklist to an
ordered list and then to an unordered list failed as the unordered list
with the o_checklist class is effectively a checklist. This fixes that
bug.
closesodoo/odoo#31432
Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
Contracts are only accessible by managers which raise an exception in
_create_resource_leave if not sudo()
closesodoo/odoo#33613
Signed-off-by: Toufik Benjaa (tbe) <tbe@odoo.com>
lunch.cashmove.report only take into account orders that are ordered or
confirmed.
That means that in action_order we have to set the state to ordered
before checking the wallet content.
This will then raise the error and rollback the value
closesodoo/odoo#33583
Signed-off-by: Toufik Benjaa (tbe) <tbe@odoo.com>
For some Chome version (e.g. 74 chrome verion on Debian) the iframe
trigger 'load' event twice (one time for document and on time for body),
the widget must insert the content in the body. Before this fix, the
content are add only one time and are removed by the next iframe loading.
closesodoo/odoo#33561
Signed-off-by: Toufik Benjaa (tbe) <tbe@odoo.com>
- The added field `phone` on `res.users` shadow the field `phone`
inherited by `res.partner`.
The issue is that the field `phone` on `hr.employee` can be read only
by the employee or the HR team.
A lot of views tries to display the field `phone` expecting the one
declared in `res.partner` which should be readable by everyone.
But the one declared in `res.users` shadows it.
closesodoo/odoo#33569
Signed-off-by: Toufik Benjaa (tbe) <tbe@odoo.com>
Reproduce:
Add multiple lines in the reconciliation widget
Try to create a new one and edit it
Problem:
A constraint checks that all the lines have the same value for To Check, but the value is not provided if another field changed. Since true !== undefined !== false, a warning was raised.
Solution:
Only fire check the constraint if to_check is in the values.
closesodoo/odoo#33560
Signed-off-by: Cedric Snauwaert (csn) <csn@openerp.com>
This merge applies various fixes to website_slides (eLearning).
Linked to task 1978530
closesodoo/odoo#33559
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Move code from website_forum allowing to edit its own profile. Otherwise
fields to update are not white listed. Also add an unpublished flag when
seeing unpublished users in order to know it if you have access to
depending on ACLs.
Linked to task 1978530
Related to PR #33559
This commit removes the uncategorized label from the course view. Note that
it only removes the label, not the content. FP request.
Linked to task 1978530
Related to PR #33559
This commit fixes the Review tab on the course page. The tab shows up even
if the channel does not allow comment. This commits fixes that behavior.
Linked to task 1978530
Related to PR #33559
Before this commit, the object used by Optimize SEO 'wizard' was always the
main object, without any possibility to change that (except by changing the
main object but that would cause a lot of other issue, eg edit in backend).
This commit add the possibility to explicitly set a seo object on the html data
attribute.
If set, this one will be used instead of the main object.
This is useful for event.event where all the event pages (with website menu
enabled) would share the same SEO since the main object would be the
event.event.
With this commit, the seo object is now the website.page, thus giving the
possibility to have a separate SEO for every event pages.
(Required for Odoo.com website for OXP)
closesodoo/odoo#33194
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
left join lateral is the postgresql optimized way to use parameters in
sub queries.
closesodoo/odoo#33526
Signed-off-by: Olivier Dony (odo) <odo@openerp.com>
If a non website_published user was 2nd in karma position, the all users page was
displaying in the top 3 a user with position 4 (in rank) as "normal users" cannot see
non published users.
The field karma_position is now deprecated and will be removed in master.
Task ID : 2000687
PR #33475
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Before this commit, mail status manager was regularly fetching
`im_status` of partners with `this._rpc()`. This used the main
thread worker, so it may be overloaded because of that.
To mitigate this issue, mail status manager now uses a new route
`/longpolling/im_status` to fetch `im_status` of partners using
the longpolling thread worker.
closesodoo/odoo#33238
Signed-off-by: Olivier Dony (odo) <odo@openerp.com>
Before this commit, the `author_id` of a message with odoobot was
`"ODOOBOT"`. This leads to some issues due to `author_id` being
considered as an array `[partnerID, name]`.
Because of this, mail status manager was registering a partner with
ID `"O"` (1st char of `"ODOOBOT"`) for fetching its `im_status`. Its
`im_status` was never updated, since no partner has such ID. However,
the mail status manager kept this partner flagged with missing
`im_status` and still attempted to fetch its `im_status`,
indefinitely.
This commit fixes the issue by turning `author_id` of a message with
odoobot into arrray `["ODOOBOT", "ODOOBOT"]`. That way, `author_id`
of a message is always an array, and the `im_status` of `"ODOOBOT"`
is no longer fetched.