A new calendar view has been added, the "year" view.
Some modifications should be done on this view, more specialy in "Time Off" application.
Problems were the fact that it was hard to see if a time off has been approved or not.
Another was the fact that week-ends & public holidays were not grey.
This commit change year calendar in Time Off module.
More specially, this commit:
- Change default calendar in personal dashboard to "year"
- Gray week-ends & public holiday (based on the worker's calendar)
- Hatch non-approved time off
- Removed a calendar view from My Time Off Requests
- Fix a "cancel" button that doesn't work
- Add a new view that is displayed when there is no filter to show on the filter view for calendars
Task id #2318645
Task id #2317525
A calendar filter's id is the concatenation of "o_cw_filter_collapse_" and the title of the filter.
When title has space (like "Time Off Type"), the id become "o_cw_filter_collapse_Time Off Type", which is invalid.
So, we can't collapse the filter.
With this fix, it replace space by nothing so if there is space in title (like "Time Off Type"), the id is "o_cw_filter_collapse_TimeOffType".
Task id: 2318645
- Resize Year view
- Add "is_hatched" field
- Scroll to current month in Year view
- Hide the sidebar if no filter is present
The goal with Year view is to display it in a single page without scroll bar.
Before this commit, a scrollbar was displayed on the right of the screen.
This results in some data wasn't displayed on the screen.
Now, the year view is scaled to the browser.
That means that all information are now on the screen (without scrollbar).
"is_hatched" is used to hatch date under specific conditions
The goal was that it was not possible to display some information differently depending on a variable.
Now, if a variable named "is_hatched" is set to true and passed to the calendar view, the specific date is hatched.
Task id #2318645
Create a coupon code
use it in a quote A
cancel the quote A
use it in a quote B
confirm B
go back to quote A
set to quotation
confirm
Result: you used the coupon code twice
opw-2410684
closesodoo/odoo#63067
X-original-commit: 58d82943c58ed50e2cae27b8eb085fc4e54eebaf
Signed-off-by: agr-odoo <agr-odoo@users.noreply.github.com>
Steps to reproduce:
- Create a customer invoice I for a total of 1000€
- Confirm I
- Register a payment
Bug:
The default amout in the wizard was 0€ instead of 1000€
The default amount is computed by _get_wizard_values_from_batch with the sum of
amount_residual of all the lines. But in function _compute_amount_residual, it
checked line.id and this case, all the lines were in cache with NewId
opw:2413064
closesodoo/odoo#63050
X-original-commit: f734b1cdc2780107ce690306aa1bc0acb9f13161
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
This commit adds a link to each calendar.event to join a video call
hosted on Jitsi.
TaskID: 2367543
Description of the issue/feature this PR addresses:
Current behavior before PR:
Desired behavior after PR is merged:
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
closesodoo/odoo#61280
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
This commit adds a link to each calendar.event to join a video call
hosted on Jitsi.
The domain of the Jitsi instance can be configured using the
configuration parameter `website_jitsi.jitsi_server_domain` (defaults to
meet.jit.si).
TaskID: 2367543
PURPOSE
Sometimes we want to limit selection of 2many fields to a single record at
a time. For example when creating marketing automation activities we want
users to create them one at a time to ease linking between them (parent /
children relationships). Indeed 2many subrecords have to be created before being
selected in other 2many subrecords (i.e. create an activity to set it as
parent of another activity).
SPECIFICATIONS
The open_one2many_record trigger method now accets disable_multiple_selection
option in parameter to pass it to the FormViewDialog constructor.
LINKS
Task ID-2087993
COM PR odoo/odoo#40177
ENT PR odoo/enterprise#6675
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Currently, The customer that is not selected anymore is suggested
as a recipient
steps to reproduce:
1. create a project task without a customer set
2. select a customer, then remove it, then save
3. send a message in the chatter
--> the customer that is not selected anymore is still suggested as
a recipient.
The issue is due to invalid value of partner's email in the field
email_from on task.
So in this commit, when the customer is not defined or is not a child
task then keep the email_From of the task.
(Here we are checking the task.parent_id because when someone update
the email_from on parent it should be updated in child task's
email_from and when we remove the email_From in parent it should not
be removed from child task)
closesodoo/odoo#63055
Taskid: 2339894
X-original-commit: 46fd7d7979f25c5fe8fe36999186a10ffb6376dc
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Issue
- Create SO
- Send quote to customer
- Customer pays via CC (payment should be in "done" stage and SO is confirmed)
- Add shipping to the SO
- Create invoice and send invoice via email
Customer does not see a pay button in the preview, instead they see "pending".
Cause
Does not check if still residual amount in the invoice.
Solution
If still residual amount, show 'Pay button' and allow to pay.
opw-2392401
closesodoo/odoo#63054
X-original-commit: 7fbea075e5803360a798455dee16a9cdaf0bf271
Signed-off-by: agr-odoo <agr-odoo@users.noreply.github.com>
Signed-off-by: bon-odoo <nboulif@users.noreply.github.com>
Since commit 80c1dad, the form view of a new record was no longer
editable.
The "editability" of the expense sheet is computed based on the status
but no default value was available.
closesodoo/odoo#63049
Taskid: 2413154
X-original-commit: d0ad00fddf5c3eb05381769a4e75c93e4dcfc388
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
Currently, when we have pad issue when we switch the pad to html
editor.
for Ex: In the Project app with the Collaborative Pad activated, if we
create a task and change the Project name multiple times (one having
the Collaborative Pad activated while the other not activated), then
at one point the Collaborative Pad doesn't show up and it will display
object object.
issue is due to object value of the url and it was not going to check for
the startwith 'http'.
So in this commit, When value is json method convert it to the json object
so the value must check proper condition for the startsWith(this.value, 'http').
closesodoo/odoo#63047
Taskid: 2336325
X-original-commit: 73bfe794351b2881fed041983b90f3d90025d23e
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Before this commit the fields project_id and task_id on
account.analytic.line were sharing the same compute method which was not
triggered when one of those fields were changed.
Here the fields get their very own compute method.
closesodoo/odoo#63043
Taskid: 2389727
X-original-commit: bb1611fef1d1e78b3c38e92d40c31fa915128295
Related: odoo/enterprise#15192
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Problem
-------
A user with no read access on private employee (hr.employee) model
will get a bad query error if he search on employee_id on res.users
The new domain evaluation system generate query like this
SELECT "hr_employee"."user_id" FROM "hr_employee_public"
because the _search of hr.employee was not returning the search result
from the right table
Solution
--------
Return a search result from the right table
closesodoo/odoo#63036
X-original-commit: e542c4121af098372c250a081635a44829e50406
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
In this commit the links to Time Billing and Customer Rating's documents
in timesheet and project respectively are removed.
TaskID:2411098
closesodoo/odoo#63035
X-original-commit: 158e94692c1d2d5a533180238273060343263e95
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Currently, there is traceback when we make the activity as done and
directly fire the onchange.
Reproduce step:
1) Create an appraisal
2) Create an activity
3) Refresh the Page
4) Done the activity
5) Unpublished the Manager Feedback
The 'onchange' action receives the ID of the activity that was marked as done
and thus the 'Missing record' error.
So in this commit, on done of the activity trigger refesh to reload the
activity ID.
closesodoo/odoo#63034
Task-id: 2357760
X-original-commit: 23d9bd0b7e43dcb431450664172fbcd409c9d62c
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Before this commit Odoo tries to compare an 'account.fiscal.position' id with an 'account.fiscal.position' record.
This causes a 'Comparing apples and oranges' warning in the logs and is not the right way to do this.
This is a fix for d89fa970e8e5b07f1b9a396e6ee02db7fdd136e4 where this issue was introduced
closesodoo/odoo#63029
X-original-commit: d9a1b28144523ece2c6fa4329f3ae4b7ff4a38ec
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
When synced with Outlook, if a user adds an event to the Odoo Calendar,
both Outlook and Odoo will send an invitation to attendees.
To reproduce the error:
(Need calendar)
1. Set up a mail catcher
2. Clean the calendar
3. Sync with Outlook
- [Steps](https://www.odoo.com/documentation/user/14.0/general/calendars/outlook/outlook_calendar.html)
4. In Calendar, create a new event
- Add some attendees
5. Save
=> The attendees will receive two invitations: one from Odoo and a
second from Outlook.
When synced, Odoo should not manage the emails sending.
OPW-2387296
closesodoo/odoo#63028
X-original-commit: 694452e5581aa28ae89024a6b5f70a273fb2bdf8
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Before this commit, an event was triggered even when no change occurred.
Steps to reproduces:
* Go to Document
* Change to list view
* Go to app switcher
* Select another app that has enough content to be able to scroll
* Scroll the view => Bug
Task ID: 2347584
closesodoo/odoo#63021
X-original-commit: c6c4b9f0e4bae03b51d232ea920de9587d8e2b73
Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
Signed-off-by: rfr-odoo <rfr-odoo@users.noreply.github.com>
Co-authored-by: Michaël Mattiello <mcm@odoo.com>
The parsing of external ids was made with the regexp `(\w+)\.([\w-]+)`.
This regexp is inadequate for external ids that contain non-alphanumeric
characters like. We have such a use-case with the selections of field
`rating_operator` in module `sale_subscription` that uses the values
`">"` and `"<"`.
The fix consists in replacing the regexp by `(\w+)\.([^ ]+)`.
closesodoo/odoo#63017
X-original-commit: 52bf0e331fb9230423b76b9014bb13d490930e76
Related: odoo/enterprise#15189
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
Before this commit, a notification was sent to all the attendees
whenever a past event was modified.
Now the notification is only sent if the event is taking place in the
future.
closesodoo/odoo#63015
Taskid: 2409394
X-original-commit: e31819bccec604ba61c053015304abebdd189690
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Signed-off-by: Kevin Baptiste <kba@odoo.com>
When we try 'My Meetings' filter in the Calendar module,
it can't filter out the meetings that the user is attending.
Steps to reproduce:
go to calendar > list view > filters > my meetings
Previously the filter was worked based on context `mymeetings`
on search_read but during the refactoring of the calendar that
is removed.
So in this commit, add domain based on user_ids to filter the
my meetings.
closesodoo/odoo#63014
Taskid: 2389382
X-original-commit: 03fc6e0276d93267efe0a23cf6209816188ce730
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Currently, When viewing the 'Quotation / Order OR invoice' report in pdf,
the metadata fields are correctly aligned next to one another but not
aligned in html/studio view.
So in this commit, col-auto will apply the width 100% in html
due to that the metadata fields are comes in new line. so apply the
class col-3 so each field should come in single line in html with
flex.
closesodoo/odoo#63013
Taskid: 2369335
X-original-commit: 484bcef82cec785b9917634680dea90cb56247e4
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
The `{'infos': 'mail_sent'}` property returned by `action_send_mail()`
was apparently unused, and orginally intended for debugging, according
to its author.
Since previous commit adds a warning for such unknown properties,
removing it entirely keeps the testsuite green. And it's cleaner
than explicitly allowing that extra key, since it's unused.
closesodoo/odoo#63009
X-original-commit: 7c8c5a9cd716d35783734493cbb15b194e7b787c
Signed-off-by: Olivier Dony (odo) <odo@openerp.com>
Some actions use 'non-standard' key in the action dict, to pass extra
parameters. In that situation the filtering of keys in `clean_action()`
strips valuable params, in an attempt to avoid leaking internal action
data.
One example of this is the dynamic action definition returned by
`open_yodlee_action()` in the account_yodlee module, which uses several
non-standard properties.
This commit alters the filtering logic in order to allow extra keys by
default, as long as they're not actual fields of the action model (and
therefore should not cause unintended "internal data" leaks).
A warning is also added to recommend passing those extra parameters in
the `context` and `params` action properties, which are explicitly
designed for this, by convention.
For cases where extra properties are returned and where the warning is
annoying, those properties can be explicitly _allowed_ by making them
virtual action fields, through a `_get_readable_fields()` override.
X-original-commit: 5cc3a6f2307be617c51e8d9c5f167acc60cc6287
Since commit 62024ca the portal customer of a task were missing the
"View Task" button.
closesodoo/odoo#63008
Taskid: 2393286
X-original-commit: 98c69f50d04f1a86ca62937eb2a4c5676a2b9cfe
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Signed-off-by: Kevin Baptiste <kba@odoo.com>
When the database is migrated from 13.3 to 14.0, the write_date is not set on the 'calendar.event' records.
During the syncing with google api, the write-date is compared to take the more recent values, leading to an inevitable crash for recently migrated databases.
closesodoo/odoo#63007
Taskid: 2389374
X-original-commit: e1493af550bd425ca682e4db707e5a490d3d4af8
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Changelog:
[FIX] Core,Underline: fix compilation errors after cascading
[IMP] DomHelpers: transfer dom mutation in VDocument
[IMP] Core: add iterable capacity to modifiers
[IMP] core: add cascading modifier support
[FIX] DomLayout: firefox screenshot feature
[FIX] Underline: always put <u> as deep as possible in the rendered DOM
[FIX] JWEditor: Await the new stop event mutex + adapat some tests
[FIX] EventNormalizer: Clean _triggerEventBatchOutside at destroy()
[IMP] JWEditor: Wait for all mutex to be done before stopping the editor
[FIX] Textarea: use tag name for textarea parser predicate
[IMP] Quote: add quote plugin
[FIX] DomLayout: Make sure falsy attribute values are not transformed into null
[IMP] Heading, Blockquote, Pre: do not preserve modifiers on end split
[FIX] history: change icon to be compatible with Odoo FA version (1.4.7)
[FIX] table: table-picker rendered under some buttons
[FIX] Odoo: add OdooFields css to OdooWebsiteEditor
[FIX] Color: do not color a ZoneNode
[IMP] Table: add component "Table options" button + visible on group
[IMP] Pre: never duplicate a pre on insertParagraphBreak
[IMP] Blockquote: never duplicate a blockquote on insertParagraphBreak
[FIX] List: should not have the list-style none attribute in the vDoc
[FIX] List: toggle list should removes list-style from li element
[FIX] Iframe: IframeNode should be rendered in the layout.
[ADD] Core: handle deleteHardLine
closesodoo/odoo#63006
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
Before this commit the visibility of the blog (un)subscribe/(un)follow
buttons was behaving inconsistently because of a combination of specific
CSS based on data values and the adding and removal of d-none classes.
After this commit the visibility of the buttons is using only the CSS
mechanism based on data values. Also adjusted the alignment of the email
text input and its attached button (aligned in both blog & forum).
Fixes https://github.com/odoo/odoo/issues/62714closesodoo/odoo#63001
X-original-commit: 486c445d2200d3805ffac30e84ff35a7a61bf0b7
Signed-off-by: Romain Derie <rdeodoo@users.noreply.github.com>
- Install sale_stock_margin
- In a multi-company environment, create a Product (i.e. Product X)
with a different Cost in each Company
- Switch to Company that is not the main one
- Create a SO with Product X
- Make sure Cost (purchase_price) field is diplayed in Order Lines tab
- Confirm SO
After confirmation, the purchase_price of Product X switches from Cost configured
for current Company to Cost configured for the main Company.
opw-2389741
closesodoo/odoo#62997
X-original-commit: 82106350d3a7b82c6c529ae4ff9a2513ae34518e
Signed-off-by: Anh Thao PHAM <kitan191@users.noreply.github.com>
This should avoid situations when customer reported the same issue via two
channels (github and odoo.com/help), which makes two group of people work in
parallel on the same issue
closesodoo/odoo#62996
X-original-commit: 714cb64595fef08a79bd25b11de51293de7203e5
Signed-off-by: Olivier Dony (odo) <odo@openerp.com>
5c4544fb29 reordered some of the
operations at the export toplevel, and in doing so moved the filtering
of the xid out of the `fields` list *after* that fields list has been
used to know what fields to export.
Meaning the fields list isn't filtered anymore, and requesting the xid
on a view would blow up due to a latter assertion checking against
that.
Fix the filter, although a better solution might be to strip out the
field upstream (in the fields list provided to the export wizard) such
that users wouldn't even attempt to perform this export.
An other possibility (possibly combined with the previous) could be to
only strip out the export of the xid based on the absence of an
``id`` field on the model, though that's somewhat risky: technically
views have no reason to be stable so a "record" could disappear or
move around without the ORM being aware, leading to dangling xids.
Fixes#46674closesodoo/odoo#62995
X-original-commit: adc25bcf67438675bc9b0d55975ce733d58b4fb5
Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
Steps to reproduce the bug:
- Let's consider a product P with sale UOM = Unit and unit price = 10€
- Create a SO and add a sale.order.option SOO with P and Dozen as UOM
Bug:
The unit price was 10€ instead of 120€
opw:2413237
closesodoo/odoo#62992
X-original-commit: 880555b38dee0c3e3b364c19bb6b0db983bf8aa0
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
Clicking the media button failed to open the media modal. The reason was
that initializing the media modal involved triggering an RPC to fetch
attachments but that resulted in a never-resolving promise because
`trigger_up('call_service')` was never caught. That is because
`website_forum` failed to pass itself as parent of `wysiwyg` when
instantiating the editor, thus breaking the chain that should have led
to `public_root`, which listens to `'call_service'` custom events.
closesodoo/odoo#62991
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
When going on Leaves dashboard, if an employee is archived, his leaves
are still displayed.
To reproduce the error:
1. Add time-off to an employee E
2. Archive E
3. Go back to Time Off module > Everyone
=> The E's leaves are still shown
They should be hidden.
Notes:
Manual forward-port.
In previous versions, the fix concerned the `hr_holidays` module
Replace #62795
Initial PR #62726
OPW-2406702
closesodoo/odoo#62987
X-original-commit: aa4be1c39d246a1a48c40bf7717c23809ca2e7ef
Signed-off-by: adwid <adwid@users.noreply.github.com>
In the change 6ba81c99 there was an issue with timezone with Google
because we were now sending "20201217T123000+0000" instead of
"20201217T123124Z".
When google received formatted date ending in Z it would treat it as
UTC, but with +0000 ending he treats it as a locale time thus get it
wrong if locale timezone is different than UTC.
opw-2370895
closes#62943closesodoo/odoo#62970
X-original-commit: b68ca9fb1d3f8c0a6346fa1d3d6cce28f4977bbd
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
Purpose of this task is to improve the reporting of Project module by
various improvements.
So in this commit done the below changes:
- Project Costs & Revenues:
- Pivot view
- apply a group by > month by default
- remove the 'timesheet duration' measure and display the 'margin' mesure by
default instead
- Graph view
- apply a group by > project
- add a group by > task (not applied by default)
- change the labels as follows:
- Untaxed Amount Invoiced -> Amount Invoiced
- Untaxed Amount Re-Invoiced -> Amount Re-Invoiced
- Untaxed Amount to Invoice -> Amount to Invoice
- Untaxed Amount to Re-Invoice -> Amount to Re-invoice
- Customer Ratings:
- list view
- change the order of the fields as follows: 1) Rating 2) Assigned to
3) Customer 4) Task 5) Project 6) Submitted on 7) Comment
- display the rating in bold
- apply the 'last 30 days' filter by default
- apply a group by 'rated user' by default
- switch the default view to the kanban view
- kanban view
- the smiley should be centered vertically
- display the full comment below(crop it after x characters if it is too long)
closesodoo/odoo#62294
Taskid: 2307111
Related: odoo/enterprise#14960
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>