When using profiling on a fresh test database, it can be tedious to
access settings to enable the feature. This commit adds a wizard to help
enabling profiling without accessing the settings when trying to
activate profiling on a administrator session.
closesodoo/odoo#75967
Signed-off-by: Xavier Dollé (xdo) <xdo@odoo.com>
Improve the wizard 'import your first bill': usability + look & feel
- Removed the PDF viewer interface which was ugly + useless in this context
- Display an HTML preview instead which is dynamic
- Current date
- Company address depending on the Company
- bill sequence depending on the date
In the modal of upload, detect if there is no hosting domain @false > then remove this third option
PR #75815
Task: 2581377
Related: odoo/upgrade#2806
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
This commit enables tracking on vat, parent_id for the contact, because the
impact of changes of these fields are very important.
We also manually track portal status change. To avoid a costly computed
field, this is done through manually logging portal access change as a note
on the user partner's chatter.
VAT field naming is also updated to match view naming used in inherited
views.
TaskID-2586195
closesodoo/odoo#74692
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
When generating some sale order/invoices pdf automatically (via cron for example), the format of the
invoice is not correct (missing style, background image, etc). The html used to generate these pdf's
misses the asset lines (link to css and js files).
The asset lines are not generated because the manifest cache (http.addons_manifest) is empty if we
render a pdf from a cron.
This commit will generate http.addons_manifest if it's not yet done before.
opw-2581621
opw-2597990
opw-2542242
closesodoo/odoo#75092
X-original-commit: 3ae4db7fc8dbc404984e34ac532426d6bf2c6a0f
Signed-off-by: Julien Castiaux <Julien00859@users.noreply.github.com>
Signed-off-by: ThomasBeckers <ThomasBeckers@users.noreply.github.com>
Prior to this commit, the case where the update status was not set is
not handled in the STATUS COLOR mapping.
This commit associate a lighten dark color to the unset update status.
See PR : #68899
See task-2393768
PR : #70527
task-2458135
Prior to this commit, the count distinct on move_id called in the read
group was not used correctly.
This commit uses the move_id:count_distinct result of the read_group,
which represents the number of distinct invoices.
See task-2469742
PR : #70527
task-2458135
This commit removes the sale_timesheet_purchase module which was meant
to extend project overview feature.
Since this feature is removed in previous commit, this bridge is now
useless.
PR : #72736
See odoo/upgrade#2706
task-2545084
This commit removes the project overview feature and views.
This commit improves the project updates right panel informations and
adds the buttons added in the project form view of this module.
/!\ This commit also improves the timesheet_invoice_type granularity
and precision.
The project overview view lacks of genericity and lacks of clarity
regarding the information to report.
PR : #72736
See odoo/upgrade#2706
task-2545084
This commit extends project form and panel in order to add buttons
which allow user to view documents linked to the project analytic
account.
This commit removes the computed field related to project overview
feature which is removed in the following commits.
This commit adds bridge modules in order to handle those extensions.
PR : #72736
See odoo/upgrade#2706
task-2545084
This commit extends project form and panel in order to add buttons
which allow user to view documents linked to the project analytic
account.
This commit adds bridge modules in order to handle those extensions.
PR : #72736
See odoo/upgrade#2706
task-2545084
This commit moves the Track cost setting from account to analytic in
order to use it in modules depending on analytic.
This setting is based on a group defined in analytic
(analytic.group_analytic_accounting), this group is not moved.
PR : #72736
See odoo/upgrade#2706
task-2545084
This commit removes the activities from the project update default
description.
This commit prepares the removal of the project overview feature and is
a part of the global project update description improvement.
PR : #72736
See odoo/upgrade#2706
task-2545084
This commit improves the project updates panel and the data reported
in the update description.
This commit prepares the removal of the project overview feature.
PR : #72736
See odoo/upgrade#2706
task-2545084
revert part of #4467734b77f19e3c4f4623e878d74c529a135bad
compute_qty_to_order is triggered manualy but not commited,
later in the scheduler task action_assign is call. However
product_id.stock_move_ids.state is a trigger of compute_qty_to_order
so it will be trigger a second time and deadlock itself
Also replace the cursor before procure_orderpoint_confirm,
so the procurement could have access to the data commited
by _compute_qty_to_order
closesodoo/odoo#75972
Signed-off-by: Rémy Voet <ryv-odoo@users.noreply.github.com>
Currently, if a test fails there's very high chances the DOM will not
be clean, because qunit doesn't have good cleanup APIs. This means a
test failure will always be prefixed by a dump of the page DOM which
is just confusing and makes it hard to find the actual error.
This change updates the OdooAfterTestHook handler to:
* Receive the `Test` itself, instead of adding more information to the
synthetic object it currently receives.
* Only show the leftover DOM if the test otherwise succeeded.
* Do the entire reporting via `pushFailure`, rather than having
duplication between an explicit `console.error` and a test failure.
* Update the QUnit.log handler to
- not show `undefined`
- try to improve readability by removing the bracketing and quoting
closes odoo/odoo#75951
Forward-port-of: #75939
X-original-commit: 8bceac8032f48ae77e8a2c0c038f3bc26489e0ac
Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
- Add a new stand-alone page "WelcomeView"
- Redirect people who join using an invitation link to the WelcomeView
- Add microphone/camera preview
- Allow guests to choose a name from the WelcomeView
- Add "Start a meeting" button to the discuss sidebar
- Create a new channel on click on the "Start a meeting" button
- Display ChannelInvitationForm on click on the "Start a meeting"
button
- Add a new field to `mail.channel` in order to define the display
mode to use for videos (e.g full screen) when joining a meeting
Task 2494829
closesodoo/odoo#75899
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Before this commit, calling read_group on a model and grouping by a
selection field would return the groups in alphabetical order, meaning
that if your selection field's options were declared as:
('z', 'Z'), ('a', 'A')
read_group would return first group 'a' and then group 'z', instead of
groups 'z' and then 'a' which some might expect.
With this commit, it is now possible to set a fields.Selection
group_expand attribute to `True` when declaring it, which will use a
default group_expand implementation specific to Selection fields, this
means that when grouping by a Selection field with `group_expand=True`
it will always return the groups in the definition order of the
selection options.
We achieve this by leveraging the group_expand field attribute which was
designed for changing the groups returned by read_group.
Since this attribute was thought only to be implemented on a
Model-by-Model basis and here we need to use it as a generic function
for all Selection fields (explicit group_expand declarations have higher
precedence), the generic method has been implemented inside
fields.Selection and takes an extra records parameter which holds a
reference to the recordset/model on which read_group was called. This
extra parameter only applies to field implementations of group_expand
and in this case is what allows this specific feature to work with
dynamic Selection fields (function as options).
A side-effect of this implementation is that a read_group call that
groups by a Selection field with `group_expand=True` that uses the
default group_expand will always return all possible groups, even
empty ones.
Task-ID 2635052
closesodoo/odoo#75856
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
PURPOSE
Walk around in the CRM to improve some UI.
SPECIFICATIONS
- In Visit to Leads changing the icon from fa-handshake
to fa-star, Handshake is for the app, stars are for the leads
- CRM>Configuration>Tags
Updating the action helper to:
Create CRM Tags
Use Tags to manage and track your Opportunities (product structure,
sales type, etc.)
- CRM > Sales > Customers
Updating the action helper to:
Create a Contact in your address book
Odoo helps you track all activities related to a contact.
- CRM > Sales > Teams
- The grey bottom border in the Teams kanban card should appear only
when they have a invoice target.
- Increase the size of the alias in Teams kanban card a bit because it's hard
to read.
- The Teams kanban card is very meh if you have no data. So add some dummy
data.
- CRM > Configuration > Sales Teams
In Sales Teams list view add alias and avatar on the team leader.
- If you go CRM>Team>Pipeline, you get a strange action helper
Instead, display the normal Pipeline action helper one except the gateway
address is always the alias of the team.
- Sections should be the same for all columns in team kanban view.
if leads are activated, they should be in View, New & Reporting
Activities should be at the bottom of the Reporting list since it has no
counterpart.
- CRM > Sales > Teams (Select invoice from Kanban view)
added new action helper in Teams/Invoice.
- CRM > Reporting > Activities
Rename Action to "Activities" (no "Pipeline" because it's confusing).
LINKS
PR #73530
Task 2582208
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Usually, the actions are defined before the menu items. So with this
commit, we load the 'crm_menu_views.xml' file at the last.
TaskID-2582208
Part-of: odoo/odoo#73530
- If we only install sales_team, on the footer of sale team kanban view
there's empty grey border which looks ugly. Also, if the data are
not available, the empty graphs don't look so beautifull.
This commit improves the kanban view to avoid this empty grey border
when there's no content within it, and in case of lack of the data,
we now display sample data in graph with grey color. Note that the
actual data now has colors, green for the future / present data range
and pink for the past ones.
- When opening the configuration menu of team kanban from CRM, we observe
three columns: View, New and Reporting. However, those columns are not
consistent. For example, when leads are activated, we don't see 'Leads'
action under 'New' column. Also the order for the actions are not
consistent for 'View' and 'Reporting' columns.
This commit re-organizes the sequence of the actions for these columns
and thus makes them consistent. Note that we want to always show the
'Activites' at the last, which is being added from crm with 'Leads' and
'Opportunities' actions. So an empty seperator is introduced to keep
them seperate, and push the sales related actions on the top of
'Activities'.
- Right now, the alias on sales team's kanban view is being shown
with `<small>` tag, but it is hard to read. Apart from that, in
the list view, only the alias name is displayed even if the alias
domain is configured.
This commit makes the alias more easy to read by displaying it
with `<span>` tag on the kanban view, and by showing the full
alias along with the domain on list view. Note that on the kanban view,
alias will now be displayed always, which previously was displayed only
when 'leads' were enabled.
- This commit also changes of the action 'crm_activity_report_action' from
'Pipeline Activities' to simply 'Activities' to avoid confusion.
- Apart from that, this commit also adds currency symbol in the form
view and kanban view (while configuring the target), with the suffix
' / month' after the input. Adds the alias name in the
team list view, and it adds 'many2one_avatar_user' widget on user_id
field for both list and form view.
TaskID-2582208
Part-of: odoo/odoo#73530
- if the alias is configured for the team, the action helper
with the link of that email will be displayed. Otherwise, it will
simply indicate user to either create lead manually, or to configure
email alias.
- This commit improves action helper for the tags and adds
sample data for better onboarding.
- This commit adds action helper on action 'sale.action_invoice_salesteams'
for better onboarding.
- This commit updates the action helper for 'CRM > Customers'
and 'Contacts' actions and make the helper message consistent.
TaskID-2582208
Part-of: odoo/odoo#73530
On 'Visit to Leads Rules' form view, we have stat buttons to access
leads / opportunities. However, the handshake icon on those buttons
in not good choice for representing leads/opportunities.
This commit changes the icon from 'fa-handshake-o' to 'fa-star'
for better representation of leads/opportunities.
TaskID-2582208
Part-of: odoo/odoo#73530
On my system in chrome 92 there are issues of chrome's hitboxes (and
rounding) being off leading to tests failures, something which given
the adjustment in `triggerMouseEvent` had been an issue in the past.
The first test failure was / is in the "correctly display year view"
calendar test, where the very first event dialog would fail to open
when clicking on the `2016-11-16`.
After tracing through fullcalendar, it turned out fullcalendar was
told to hit `2016-11-*09*`, suspiciously 7 days before the cell we
were looking for in a monthly calendar, hinting to an incorrect
vertical offset / hitbox.
Fix by offsetting the top coordinate in `triggerMouseEvent`, but
rather than just increment by one update the entire thing by trigger
the event right in the middle of the element being targeted, that
seems more reliable long-term, though it could be slightly confusing
for events like mouseenter/mouseover/...
The second issue was with a list test, where two cells are supposed to
be sized equally. Apparently the offset sizes are supposed to be the
rounded version of the actual size (which can be fractional), but
dumping the information of `foo` and `text` I'd get real widths (via
getBoundingClientRect) of respectively 480.46875 and 480.5, and
offsetWidths of 481 and 480 (the smaller of the two in "real size"
is rounded higher than the other one).
In Python we might use `assertAlmostEqual` for this, but we've
apparently not introduced this in JS take the real width and round up
by hand, this fixes the issue as both end up at 481.
Aside 1:
Before finding out the actual root cause I landed in
`_onYearDateClick` with missing data in the events so looked at the
API to figure what I was looking at, and turns out fullcalendar's
event object has documented properties to get the date-converted start
and end bounds of the event, so use that directly instead of doing the
same thing by hand.
Aside 2:
The attributes passed to `triggerEvent` in `triggerMouseEvent` are
pretty much nonsensical, we're getting the element's location using
`getBoundingClientRect` which is based off of the viewport, but
setting the keys
* `screen(X|Y)`, which should be the location of the hit relative to
*the physical screen*
* `page(X|Y)`, which should be the location of the hit relative to the
page / document (so takes in account the content scrolled off-screen)
* `layer(X|Y)`, which is the position of the hit relative to the
nearest positioned (non-static) element, falling back to page if
there isn't one
The one attribute which matches the semantics / reference of
`getBoundingClientRect` we didn't even set, instead it would be
automatically copied from `pageX`/`pageY` by the events mapping.
Fix that by just providing `clientX`/`clientY` and updating the
mapping functions to not overwrite it.
If the others are needed they should be computed properly based on the
document's bounding client rect and scroll information, as well as the
window's screenX/screenY (and offsetParent for layerX/layerY though
that seems unlikely to be necessary).
closesodoo/odoo#75953
X-original-commit: d26a4edffd6bdaed46143a30e99f17eb91f44e7e
Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
Since return moves are linked to their original move, it's easy to
manage reservation in those case. We just don't bypass the reservation
when it comes from a reservation outside our stock in order to manage
the computation on linked moves and reserve pieces that were not yet
return.
Also add a return picking type for 2 reasons:
- Allow to select existing lot.
- Display reserved move line for an incoming picking.
Note that this picking type is just a default configuration and could be
modify by the user without any issue.
closesodoo/odoo#64384
Related: odoo/enterprise#20605
Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
This commit updates the bewise-1 color palette. It replaces the
o-color-2 by the extra color of o_cc4 and improves the compatibility
with the others palettes when we switch between them.
task-2573302
closesodoo/odoo#75159
Related: odoo/design-themes#477
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
*test_discuss_full,test_lint
This commit adds the audio and video conference feature to mail channels
and integrate it with the groupDM/guest features.
Adds new mp3 and ogg files (from task-2554674) for sound effects.
- Adds three new tables:
* `mail.channel.rtc.session` to manage the peerToPeer interactions
during rtc calls.
* `mail.ice.server` to provide ICE servers necessary to establish
peerToPeer connections with webRtc.
* `res.users.settings.volumes` to hold the partner-to-partner volume
settings, each partner can create one new setting per other
partner to configure the volume coming from those partners during
calls.
- changes res.config.settings:
* Adds new fields for the Twilio credentials to use their STUN/TURN
service.
- changes res.user.settings:
* Adds 4 fields for the push to talk and voice activation.
- changes mail.channel:
* Adds a new field `rtc_session_ids` that represents the active
participants in a rtc call on that channel.
- changes mail.channel.partner:
* Adds a new field `rtc_inviting_session_id` that represents the
rtcSession of the user that is inviting that channelPartner to a
call.
task-2366708
closesodoo/odoo#66611
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
This module is now used to support OSS taxes, which replaced MOSS a few months ago. This renaming follows the changes introduced in stable by https://github.com/odoo/odoo/commit/0e7c289003a0a69075188dbfaea724919dac32a4 .
[IMP] l10n_eu_oss: remove dead code from former l10n_eu_service feature
[IMP] account, product, l10n_eu_oss: community adjustements to support enterprise's OSS report
The following changes where introduced in order to support the features implemented in the new l10n_eu_oss_reports module:
- account.tag objects applicable on taxes are no longer required to have a country_id. This way, we allow using tags in generic reports (i.e. the ones available for multiple countries) as well.
- add account_tag_is on product.template and product.category: this fields are m2m to account.account.tag applicable on taxes. When making an entry from this product, these tags will be set on all the tax move lines created for it. We use it in OSS to differentiate between imported and non-imported goods in the report.
- always display country_id on fiscal positions' form view: OSS taxes require to be used in some fiscal position with a country_id set, so that we can infer the country they are mapping the vat from. We make that change in the view so that users are not obliged to create auto-applied fiscal positions to fix the OSS taxes they created manually, and can directly set the country on the fiscal position.
Task 2591541
closesodoo/odoo#73602
Related: odoo/upgrade#2669
Related: odoo/enterprise#19628
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Refactor the Environments object into a Transaction object, which is
bound to one cursor, and is no longer shared among several cursors.
The following methods/properties have been changed:
- Environment.envs no longer works (because of the design change);
- Environment.manage() is deprecated (no longer useful);
- Environment.reset() is now an instance method;
- env.clear_upon_failure() is deprecated in favor of cr.savepoint().
closesodoo/odoo#75598
Related: odoo/enterprise#20451
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
Co-authored-by: Xavier Dollé <xdo@odoo.com>
- Chart of Account based on IFRS
- Validation for RUCs and CI for Ecuadorian VAT
- Taxes and Groups - minimum
- Initial Structure for 103 and 104 Reports to SRI
- Entity, Point of Emission, address of emission, and type of emission added to journal
- SRI payment methods, used on EDI Process
- Ecuadorian Banks data
- Latam Identification Types
- Latam Document Types Related
closesodoo/odoo#75055
Signed-off-by: Josse Colpaert <jco@openerp.com>
Purpose of the commit is to improve the timsheets's report
of the timesheet app.
So in this commit, done the below changes:
- timesheets by billing type report:
- add default group by date month > billable type.
- removed undefine value from report
- improve helper the to: "No data yet! \n Track your timesheets by
billing type and make sure your time is billable."
- added grid, kanban and list view
- list view opened through the graph/pivot view: change the name of the action to 'Timesheets'
- improved name of the report to 'Timesheet by employee'
- improved helper of Timesheet by project report
- Timesheet / Attendance report:
- disabled list opening after clicking graph view.
- added a group by Employee on report ,
- modified pivot view according to company of user.
- added default measure is total difference' and the default group by
is date > month for report
closesodoo/odoo#75026
Taskid: 253134
Related: odoo/enterprise#20397
Signed-off-by: LTU-Odoo <IT-Ideas@users.noreply.github.com>
PURPOSE
Generic UX improvements for the portal
SPECIFICATIONS
For projects list view,
- clicking on the project should open the list view of tasks with groupby stage
- the number of tasks should not be clickable
For tasks list view,
- display the fa-star of the priority field on the left of the name of the task
- add the following fields on the right of the name:
user_id, time spent, kanban_state
- for the kanban_state,
only display the colored dot and indicate the name of the state on hover
- for the time spent:
indicate the nb of hours recorded / nb of planned hours(or days(as per unit))
(if the nb of planned hours = 0, only display the nb of hours recorded)
For tasks search view,
- add a group by priority and status and reorder accordingly
- add a quick search on status and priority and reorder accordingly
- add a sort by priority, assigned to and status and reorder accordingly
For task form view,
- display the fa-star icon of the priority field on the left of the name of task
- add the kanban state in the top right corner
the kanban_state field should be editable by portal users
increase nb of items displayed in the list view to 80 items per page(generic)
Task-2613330
closesodoo/odoo#74996
Signed-off-by: LTU-Odoo <IT-Ideas@users.noreply.github.com>
Co-authored-by: Xavier BOL (xbo) <xbo@odoo.com>
The purpose of this task is to improve the setting of the timesheet module.
In this commit, we improve the following:
- Rename the label, description and align the field with the name and
description of the feature
- Add an 'OK' button in the 'download our app' modal
- Render the frequency field properly in the employee/manager reminders
setting on mobile view
- In configure your services link: change the name of the action to "Services"
- Display the following options in the community, with the usual 'Enterprise'
tag: Round Timesheet, Employee/Manager reminder, Invoicing Policy
closesodoo/odoo#74967
Task-id: 2531338
Related: odoo/enterprise#20182
Related: odoo/upgrade#2771
Signed-off-by: LTU-Odoo <IT-Ideas@users.noreply.github.com>
*: website_sale, website_sale_delivery
The old analytics snippet (isogram) is replaced by the newer gtags
snippet. Virtual page views and ecommerce transactions are now tracked
using gtags. The e-commerce data format is updated to correspond with
the new GA4 format.
task-2500769
closesodoo/odoo#72233
Signed-off-by: Romain Derie (rde) <rde@odoo.com>
Co-authored-by: Romain Derie <rde@odoo.com>
Co-authored-by: Tom De Caluwé <tdc@odoo.com>
When loading pos, orders saved from the local storage is loaded. There
is, however, a chance that the products used in the loaded orders
are missing during the loading of pos. (Which can be caused by backend
changes such as archiving a product.) This situation is similar when
loading paid orders from the backend in the order management screen.
This results to crashing of the pos app and force clearance of the
local storage in order for pos to work again.
In this commit, we try to rectify the issue by loading the unloaded
products. The product remain inactive if it was archived, however,
they can still be visible in the orderlines.
closesodoo/odoo#72108
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
In order to improve the perf at the opening of the point of sale,
this commit allows to only load a limited quantity of products and partners
in the POS.
This also include a new option that allows to load them in the background
if they're not all loaded.
Part-of: odoo/odoo#72108
Since we added a z-index: 0, on the wrapwrap, the modals are under the
main navbar and therefore partly hidden by the height of this navbar.
After this commit, the top position of a modal is the height of the
main menu navbar but only if that navbar is displayed. The height of
the modals is also reduced with the height of the navigation bar to
avoid overflowing at the bottom.
Some of what this commit did had already been merged in saas-14.2
(in this PR: #69360) but we realized that we also needed this fix in
v14.
task-2501400
closesodoo/odoo#75928
X-original-commit: d8e9569ef04ad86f0558b3e674bc8b74718c9c70
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Fixes the above mentioned field in the hierarchical kanban view in the
accrual plan form view.
TaskId-2637152
closesodoo/odoo#75923
Related: odoo/upgrade#2802
Signed-off-by: Kevin Baptiste <kba@odoo.com>
Field `is_officer` is required for some of the elements in the from view
to be readonly or not.
However it would not be computed before record creation which would
cause issues.
This is now fixed by adding something to trigger the compute even though
it is not used.
TaskId-2637152
Part-of: odoo/odoo#75923
Minor code cleanup; remove dead code; update comments.
Also fixes a bug on the first time the accrual plan is called.
TaskId-2637152
Part-of: odoo/odoo#75923