Commit Graph
160852 Commits
Author SHA1 Message Date
Xavier Morel 9f2cfb2cdf [IMP] test_module_operations: make uninstall step more graceful
- process modules to uninstall individually in order to better handle
  their state at that point
- uninstall (and reinstall) modules in provided order, rather than
  whatever postgres feels like (or a sort which might not match what
  we want), mostly useful when uninstalling modules in bulk
- warn if a module is either missing or already uninstalled, rather
  than silently do nothing

closes odoo/odoo#120261

X-original-commit: 034b317a908d1aea6dc6d992c489b30ffff8f1ce
Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
Signed-off-by: Xavier Dollé (xdo) <xdo@odoo.com>
2023-05-05 18:08:00 +02:00
Xavier Morel 44f7ccc100 [IMP] test_module_operations: logging configuration
- switch to `dictConfig` for easier bulk-manipulation of loggers
- set `unlink` and `ir_model` loggers to warning, to limit the
  humongous spam that is a normal uninstall session

X-original-commit: bee7898a5af68128b599d30ac7d4c0193e765afd
Part-of: odoo/odoo#120261
2023-05-05 18:07:59 +02:00
Xavier Morel d5a3e3e794 [IMP] module_operation_tester: use subcommands
Add subcommands to make running the script clearer (as exclusive
switches is a bit weird nowadays).

Keep the old `--uninstall` and `--standalone` switches, but make them
mutually exclusive (and optional) to retain current behaviour.

X-original-commit: 933841eda86292f180170b32da621f55fe6f0b84
Part-of: odoo/odoo#120261
2023-05-05 18:07:59 +02:00
Xavier Morel f2de38b84a [IMP] test_module_operations: make debugging easier
- ensure `test_module_operations` exits with a non-zero status on
  failure, as the current makes it a lot less convenient to notice
  uninstall / reinstall errors (especially with lots of warnings
  crowding the logs)
- allow uninstalling without reinstalling, so it's easier to inspect
  db state after uninstall

X-original-commit: 712977faf9bf98d9087368ab4fe95f089a072601
Part-of: odoo/odoo#120261
2023-05-05 18:07:59 +02:00
Zeel Patel 1f87ad1cac [IMP] l10n_in_edi_ewaybill: transporter id must have GST number
In this commit, when user has created a transporter from the invoice view and if it's forget to enter GSTIN
Then we throws error to set GSTIN in transporter

transporter always have GSTIN, without having GSTIN any one is not allowed to transport goods in India.

task - 3262215

closes odoo/odoo#120183

X-original-commit: d09c9358f721add6f585735670085d16bcf2766c
Signed-off-by: Quentin De Paoli <qdp@odoo.com>
Signed-off-by: Xavier Dollé (xdo) <xdo@odoo.com>
2023-05-05 18:07:55 +02:00
Adrien Minne (adrm) 0bba2cbb67 [REF] spreadsheet: move chart dataSources to UI
Before this commit, the chart's dataSources were managed by the core plugin
`OdooChartCorePlugin`. This didn't make sense since dataSources aren't
core data:

- they are neither exported nor imported
- they can be different for each user (their ids were generated via uuidv4
at import)

Moved the dataSources management to the UI plugin `OdooChartUIPlugin` and moved
the relevant getters inside this plugin. Changed the ids of the dataSources
to be the same as the chart's id + a prefix, to avoid having to maintain a
mapping `chartId` <=> `dataSourceId` .

closes odoo/odoo#120136

Task: 3293491
Related: odoo/enterprise#40546
Signed-off-by: Lucas Lefèvre (lul) <lul@odoo.com>
2023-05-05 17:06:45 +02:00
Adrien Minne (adrm) bc56084355 [REF] spreadsheet: move pivot dataSources to UI
Before this commit, the pivot's dataSources were managed by the core plugin
`PivotCorePlugin`. This didn't make sense since dataSources aren't core data:

- they are neither exported nor imported
- they can be different for each user (their ids were generated via uuidv4
at import)
- managing them required to handle local command in the core plugin

Moved the dataSources management to the UI plugin `PivotUIPlugin` and moved
the relevant getters inside this plugin. Changed the ids of the dataSources
to be the same as the pivot's id + a prefix, to avoid having to maintain a
mapping `pivotId` <=> `dataSourceId` .

This commit also removes the dataSourceId from the `INSERT_PIVOT`
command, which have no place here since this is a core command and the
dataSources are now a pure UI concept.

This is slighly more tricky than for lists, because the datasource need to
be loaded before the `INSERT_PIVOT` command to fetch the table structure.
The component dispatching the command need to make sure it creates a
dataSource with the id given by the getter `getPivotDataSourceId`,
or else the dataSource will be loaded twice.

Task: 3293491
Part-of: odoo/odoo#120136
2023-05-05 17:06:45 +02:00
Adrien Minne (adrm) d70da3f734 [REF] spreadsheet: move list dataSources to UI
Before this commit, the list's dataSources were managed by the core plugin
`ListCorePlugin`. This didn't make sense since dataSources aren't core data:

- they are neither exported nor imported
- they can be different for each user (their ids were generated via uuidv4
at import)
- managing them required to handle local command in the core plugin

Moved the dataSources management to the UI plugin `ListUIPlugin` and moved
the relevant getters inside this plugin. Changed the ids of the dataSources
to be the same as the list's id + a prefix, to avoid having to maintain a
mapping `listId` <=> `dataSourceId` .

This commit also removes the dataSourceId from the INSERT_ODOO_LIST
command, which have no place here since this is a core command and the
dataSources are now a pure UI concept.

Task: 3293491
Part-of: odoo/odoo#120136
2023-05-05 17:06:45 +02:00
Samuel Degueldre c313f5912f [REF] *: stop using assets_backend in the pos
*: l10n_ae_pos, l10n_co_pos, l10n_fr_pos_cert, l10n_gcc_pos,
l10n_in_pos, l10n_sa_pos, point_of_sale, pos_adyen, pos_discount,
pos_epson_printer, pos_epson_printer_restaurant, pos_hr,
pos_hr_restaurant, pos_loyalty, pos_mercury, pos_restaurant,
pos_restaurant_adyen, pos_restaurant_stripe, pos_sale, pos_sale_loyalty,
pos_sale_product_configurator, pos_six, pos_stripe, web

Previously, the pos assets included almost the entirety of the
assets_backend. Most of the contents of the assets_backend is completely
useless in the PoS, meaning that the PoS will load slower because it
loads much more JS than it needs. It also means that it gets all the
side effects of this bundle (global event listeners, among other things)
that we don't want.

This commit removes the dependency of the pos assets on the
assets_backend to solve these issues. The pos assets are now their own
bundle with only what is needed in the PoS.

As for the unit testing bundle, the same logic applies but
unfortunately, because the unit testing code from web that we want to
use (eg automatic cleanups, cleaning of registries, etc) depends on the
legacy code, we need to include a lot more files than would otherwise be
needed. This situation will probably be improved as legacy code is
removed from web, but in the mean time, it is not very important for
this bundle to be lean, as it's a test bundle and loading speed is less
important.

Linked to: odoo/enterprise#40502

closes odoo/odoo#120070

Related: odoo/upgrade#4626
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
2023-05-05 17:06:38 +02:00
Samuel Degueldre 7f8266c5e5 [REF] point_of_sale: stop using bus in PartnerListScreen
This bus will be removed in a future commit. Because busses are very
general purpose and add a layer of indirection through event
dispatching, they are a poor solution to cross component communication.
Generally, child to parent communication is done by calling callbacks
received as props, and parent to child communication is done by passing
props. In rare cases, a child wants to give finer control to the parent
component. In this commit, we replace the use of the bus by a pattern
similar to React's `useImperativeHandle`: the parent component passes an
object to the child component, which the child component then fills with
the imperative API it wants to expose.

Part-of: odoo/odoo#120070
2023-05-05 17:06:37 +02:00
Samuel Degueldre db4b11141d [REF] point_of_sale, web: factor report downloads out of action service
Previously, downloading reports was only possible by going through the
action service. In a few places, we want to download reports from the
PoS, but it doesn't make sense to load the action service and all its
dependencies in the PoS. In order to allow reports to be downloaded
without the action services, some functions are extracted out of the
action service itself and into report utils, which the action service
calls. These utils can now be used from the PoS without requiring the
action service and its dependencies be included in the PoS assets.

Part-of: odoo/odoo#120070
2023-05-05 17:06:37 +02:00
Khushi Vakil e399f0e4ff [FIX] l10n_in_edi: rounding add in total
Rounding is considered in the total invoice value in JSON data.
Task id: 3276310

closes odoo/odoo#119851

X-original-commit: 1280b3a21537f24b4928d1314b911398417a7a15
Signed-off-by: Josse Colpaert <jco@odoo.com>
Signed-off-by: Brice Bartoletti (bib) <bib@odoo.com>
2023-05-05 17:06:26 +02:00
amdi-odoo 02ec80445b [IMP] mail,mass_mailing_sms,*: improve UI
*: phone_validation

- Add sample data in the mass_mailing_sms blacklist phone
numbers tree view.
- Update the mass_mailing_sms demo data so that, instead of
the sms being stuck due to a lack of credits, they are
all sent.
- Swap the mass_mailing_sms list view with the kanban view
so that the list view is the main one like in Email Marketing.
- Rename the reset mail template confirm button from "Proceed"
to "Reset Template" to make the action more explicit.

Task-3280602

closes odoo/odoo#119321

Related: odoo/enterprise#40120
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2023-05-05 17:06:23 +02:00
amdi-odoo cfd16f198b [IMP] event{_booth}{_crm},*: improve UI
*: website_event{_meet}{_track}{_track_live}

Purpose
=======
Improve event related module UI

Specifications
==============
- The reporting fields, the chat room and the participant count
of the meeting room form should not be showed while the record
is not created.
- Rewording on event track "Button appears" and "Color" field.
- Remove unnecessary helpers in event track form.
- Remove "Wishlisted By" stat button when the count is equal to 0.
- Add many2one widget avatar on lead rule "Saleperson" field and
event track "Responsible" field.
- Add placeholders in event booth form view, event location
tree view, event tags categories form view and event stages
form view.

Task-3280602

Part-of: odoo/odoo#119321
2023-05-05 17:06:23 +02:00
Valeriya(vchu) ff64df758b [IMP] payment_demo: add support partial capture
support partial capture feature in demo payment
task-2803352

closes odoo/odoo#117356

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-05-05 17:06:13 +02:00
tsm-odoo e1f0811b22 [IMP] mail: replace hardcoded orm commands in tests
Using hardcoded ORM commands in tests is cumbersome and not reliable.
This commit introduces the same system as the one used on the server.

closes odoo/odoo#120670

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2023-05-05 15:58:50 +02:00
Harsh Bhatt (habh) 48205129fa [FIX] l10n_in_edi*: fixed document link in settings
l10n_in_edi:

Before this commit : In Accounting settings the documentation link
no longer works.

After this commit : In Accounting settings the documentation link
is updated and works.

l10n_id_edi_ewaybill:

Before this commit : In Accounting settings the documentation link
no longer works.

After this commit : In Accounting settings the documentation link
is updated and works.

task-3247082

closes odoo/odoo#120237

X-original-commit: cb905342c20201501d97ebb2ee2f9c154869f392
Signed-off-by: Quentin De Paoli <qdp@odoo.com>
Signed-off-by: Florian Gilbert (flg) <flg@odoo.com>
2023-05-05 15:58:42 +02:00
flvr-odoo 30b283fe7d [FIX] hr_expense: prevent linking of expense with no perm
Previously, a user could link his own expenses to a expense sheet
of someone else.

This would not be allowed upon creation but was allowed when updating
the values of the expense.

This commit add a simple check at the beginning of the write()

closes odoo/odoo#120661

X-original-commit: 884510b1496e0a0eba7171f4ef4bb749856cb1bf
Signed-off-by: Vranckx Florian (flvr) <flvr@odoo.com>
2023-05-05 14:55:10 +02:00
Alexandre Kühn c5c3362a21 [FIX] mail: arrow up/down should change selection inside composer
Before this commit, when composer had some text content in
multi-line, arrow up/down was not jumping to previous/next
line.

This happens because the navigable list is active even when not
shown, and was preventing all keydown events.

This commit fixes the issue by limiting handling of keydown
events of navigable list to when it is shown.

Also fixes a bug where the quick edit of last message was triggered
when composer text was non-empty with ArrowUp. This should only
be triggered when the composer text input is empty.

closes odoo/odoo#120657

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2023-05-05 14:55:08 +02:00
rhe-odoo d28363ba5b [FIX] pos_sale: correctly assign partners in the invoice
When settling a sale.order from the pos app, it's possible that the sale.order
have different partners assigned to it (partner_id, partner_shipping_id,
partner_invoice_id). After this commit, we are now properly assigning these
partners to the generated invoice.

Additionally, this commit makes the settling of sale.order more robust by
avoiding issue on having multiple incompatible sale.orders in a pos.order (more
than 2 sale.orders and their partners are not the same). After this commit, we
are only reusing the current pos.order as container of the new sale.order to
settle if the sale.order is compatible to the current pos.order. Basically, we
now only allow adding new sale order to the current order if the partner_id,
partner_invoice_id and partner_shipping_id of the new sale.order are the same to
the current pos.order's linked sale.order. In other words, if the new sale.order
to settle is incompatible to the current pos.order, we create a new pos.order to
settle that sale.order.

closes odoo/odoo#120649

X-original-commit: 2782bedafb9fcbe7c65f4c6951ce270c3a5a5bd3
Signed-off-by: Heinz Robin (rhe) <rhe@odoo.com>
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
2023-05-05 14:55:05 +02:00
Thomas Lefebvre (thle) bc2d796dbc [FIX] hr_attendance: prevent the edition of employee_id
Issue:
A user has write access rights to modify his own attendances.
However, he can modify the `employee_id` field.
This can cause attendances to be moved to other employees.

opw-3280850

closes odoo/odoo#120632

X-original-commit: 1c25a9b964e9e2acf9d431897e83cf72ecdca1cb
Signed-off-by: Kevin Baptiste <kba@odoo.com>
Signed-off-by: Lefebvre Thomas (thle) <thle@odoo.com>
2023-05-05 14:55:00 +02:00
Sébastien Theys e6b3323237 [REF] mail: move channel commands to discuss folder
Part of task-3265211

closes odoo/odoo#120429

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2023-05-05 14:54:57 +02:00
fdardenne 6c881fda04 [FIX] mail: activity view: fix the records limit
The activity view is an aggregation view, meaning that we show all the
activies with no limit of records.

Steps to reproduce:
There is no easy way to reproduce the bug, the database should be
populated with more than 80 records in a model and have an activity
planned for the 81th record.

Current Behaviour:
The Activity view loads all the activities without limit and so the
activity for the 81th record. The problem is that the 81th record does
not have been loaded due to the default limit of the RelationaLModel.
Therefore the activity view crash because it cannot fetch the missing
record for a loaded activity.

Expected Behaviour:
The activity view laods all the activities but also loads all the
records so it can render them.

closes odoo/odoo#120654

X-original-commit: 885c7bb33a3cb25962c090290e6b27bc11a71f41
Signed-off-by: Luca Vitali <luvi@odoo.com>
Signed-off-by: Dardenne Florent (dafl) <dafl@odoo.com>
2023-05-05 13:52:34 +02:00
Alexandre Kühn 78b275f54d [REF] mail: simplify message template
Simplify template so there are less code duplication between
editing state and non-editing state.

Also fixes following small style issues:
- missing opacity-25 when editing message of others
- expanded options of message come on top of jump present alert

closes odoo/odoo#120550

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2023-05-05 13:52:29 +02:00
Julien Mougenot 6cdbce8490 [IMP] form: Support daterange field dependencies
This commit allows the server-side form arch parser used in tests to
also include the "end_date_field" defined in the `options` attribute of
daterange widgets in the dictionnary of fields found in the arch.

The daterange widget is currently the only case where the client adds
another editable field dynamically in the list of known fields. This is
not ideal since the server does not know that when computing the initial
arch sent to the client. The workaround is to also include the
"end_date_field" in the arch with `invisible="1"`, and to add a special
case for the server-side form arch parser used in tests.

Ideally we would want a proper way to define field dependencies in the
arch, but since this widget here is the only use case for that feature
it is better for now to handle it in this simple, more naive way.

Part of task 3121497

closes odoo/odoo#112171

Related: odoo/enterprise#38569
Signed-off-by: Michaël Mattiello <mcm@odoo.com>
2023-05-05 13:52:22 +02:00
Julien Mougenot 10dc896c1e [REF] *: Adapt views to Owl DateTimePicker
This commit follows the addition of the OWL date picker and intends to:

- update views calling daterange widgets to use the new syntax (and
remove the end date field from the view in most cases);

- change the remaining components extending the previous DatePicker and
DateTimePicker components.

Part of task 3121497

Part-of: odoo/odoo#112171
2023-05-05 13:52:22 +02:00
Julien Mougenot c6637e537e [REF] *: Remove date picker libs from main bundles
This commit removes both DateRangePicker and TempusDominus libraries
from the common asset bundle. The legacy widgets still depending on
these libraries will now load them lazily when instanciated.

Part of task 3121497

Part-of: odoo/odoo#112171
2023-05-05 13:52:22 +02:00
b5794e89e1 [IMP] web: Owl DateTimePicker
This commit introduces a date picker OWL component meant to handle the
following use-cases:
- date picker
- date & time picker
- date range picker
- date & time range picker

Basically, this component is the union of the two previous third-party
libraries handling these cases: TempusDominus and DateRangePicker.

New components introduced:

* The main addition of this commit is the `DateTimePicker` itself which
handles the display and interactions of the calendar and time pickers.
> see @web/core/datetime/datetime_picker

* The picker can then be coupled to an input using the
`useDateTimePicker` hook. The purpose of this hook is to handle events
on a given input element and syncronize its value to a date picker it
will spawn in a popover.
> see @web/core/datetime/datetime_hook

* Lastly, a simple `DateTimeInput` component will render an input and
call the hook mentioned above to handle it. This component is
effectively replacing the previous DatePicker and DateTimePicker
components (note that it does not handle range values).
> see @web/core/datetime/datetime_input

Another noticeable change of this commit is the definition of daterange
fields in views:

- Previously, the arch would have to define both fields
and bind them via their options, while also adding an arrow between
inputs or other forms of connection.

- In the new implementation, only the start date field must be declared,
and a date range can be spawned by providing an `end_date_field` in its
options.

Example:
```xml
<field
    name="start_datetime"
    widget="daterange"
    options="{'end_date_field': 'end_datetime'}"
/>
```

warning Added limitations:

- this new way of declaring date ranges means that templates have been
revised to declare one field tag instead of two. This means that list
views using date ranges have lost the ability to be sorted on their end
date fields.

> Justification: the current use cases have been reviewed and it has
been decided that it was not needed to sort on the end date on the
affected list views.

> Workaround: drop the date range and declare both fields as simple date
pickers (i.e. without the end_date_field option).

- all modifiers applied to a field using a date range will be copied and
applied to the end date field. There is no way to define modifiers
specific to one field or the other.

> Justification: there was no use case where one of the two fields
needed specific modifiers.

> Workaround: same as the previous point: split the range into 2 simple
date picker fields.

Additional notes:

- the widget="daterange" is not mandatory in form views, but is required
in list views because only fields with explicit widgets will not be
rendered as simple <span> elements. The date range feature will be
available as soon as an end_date_field is specified.

- as the end date field is not explicitly defined in the view anymore,
any modifier depending on it need to have it defined as invisible
somewhere in the arch.

Task ID: 3121497

Part-of: odoo/odoo#112171
Co-authored-by: Julien Carion <juca@odoo.com>
Co-authored-by: Julien Mougenot <jum@odoo.com>
Co-authored-by: Pierre Pulinckx <pipu@odoo.com>
2023-05-05 13:52:22 +02:00
Julien Mougenot caf40dfe2d [IMP] web: Improve date utils & localization consistency
This commit introduces various improvements to simplify, speed-up and/or
strengthen consistency in the date utility functions and localization
service.

It also takes care of removing luxon<->moment conversion helpers since
they are only used in the date picker, which has been rewritten.

Part of task 3121497

Part-of: odoo/odoo#112171
2023-05-05 13:52:21 +02:00
Julien Mougenot 6a6a1efbe2 [IMP] web: Popover closes on escape
This commit adds a global listener from the popover controller to close
itself when "Escape" is pressed.

Part of task 3121497

Part-of: odoo/odoo#112171
2023-05-05 13:52:21 +02:00
Julien Mougenot 7874bf3fc1 [IMP] web: Function fieldDependencies + utils doc
This commit does the following in the Web module utilities:

- makes the `fieldDependencies` property of the field objects
definitions a function instead of a list of strings: this makes it
possible for fields to extract their dependencies based on the fields
info from the arch;

- adds/improves types and documentation for some utility functions.

Part of task 3121497

Part-of: odoo/odoo#112171
2023-05-05 13:52:21 +02:00
Julien Mougenot f853ca8eec [IMP] web: Ensure array utility function
This commit introduces the `ensureArray` function, ensuring that the
given argument is an array by wrapping it in one if it is not.

Part of task 3121497

Part-of: odoo/odoo#112171
2023-05-05 13:52:21 +02:00
Julien Mougenot 437edce313 [IMP] web: Allow tab inside editable list cells
This commit makes it possible to use Tab to navigate between interactive
elements inside the cells of editable list views.

Part of task 3121497

Part-of: odoo/odoo#112171
2023-05-05 13:52:20 +02:00
Roy Le 9962fdaa3c [CLA] Viindoo updates Odoo's CLA
closes odoo/odoo#120616

X-original-commit: 8aefb386da2a1b401518870702473ae7e1ba3770
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-05-05 12:44:07 +02:00
Chong Wang (cwg) 55c9ca692f [FIX] base: translate ir model fields
before this commit:
after #109858
The method `update_field_translations` won't directly call the `write`
As a result, when changing the translation of fields from translation dialog,
the orm cache won't be cleared, and translations won't be updated in views
even after refresh the page

after this commit:
when users translate fields and refresh the page, the new translation can be
updated in new views

opw-3267024

closes odoo/odoo#120602

X-original-commit: 8d8dbab203fe7c153522dcb2a420d97dc4adaadb
Signed-off-by: Raphael Collet <rco@odoo.com>
Signed-off-by: Wang Chong (cwg) <cwg@odoo.com>
2023-05-05 12:44:05 +02:00
Odoo's Mergebot d30be095f4 [MERGE][IMP] crm{_iap_mine}{_iap_enrich}{_sms}, web, iap{_mail}: improve UI
Purpose
=======
Improve some UI display of the CRM and CRM related modules.
CRM v16.3 promenade.

Specifications
===========
web
------
* Increase the maximum input field size to handle a larger number
of characters.

crm,crm_iap{_enrich}{_mine},sale,sales_team
-------------------------------------------------------------------
* Improve some small UI display like placeholders, search filters,
the wording of the lost reason modal, the fields alignments,
always underline certain fields, set certain fields as optional in
the reporting tree views, ...

crm
------
* Modify the informative lead count field to be displayed as a muted text
sentence with text color warning when it exceeds the maximum month count.

crm{_sms}
---------------
* Remove the reporting pipeline tree view buttons as the view is not
an operational one so those won't be used by the manager.

mail
-------
* Add a m2o avatar widget to a field.

iap_mail
-------------
* Improve the display of the lead enrichment message appearing in the
chatter after an enrichment.

More details in underlying commits.

See: https://github.com/odoo/enterprise/pull/38498

Task-3204763

closes odoo/odoo#115326

Related: odoo/enterprise#38498
Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
2023-05-05 12:44:00 +02:00
amdi-odoo 75231185a4 [IMP] iap_mail: improve lead enrichment message
Purpose
=======
Improve the display of the lead enrichment message
appearing in the chatter after an enrichment.

Specification
=============
In the enrichment chatter message:

- Remove the display of the company logo if the
company doesn't have any.
( Using alt="" to avoid displaying both image and text
placeholders if logo url exists but leads to a blank page)

- Fix the info alignment when having long characters.
- Add the twitter URL next to the followers count in
the enrichment info.

Task-3204763

Part-of: odoo/odoo#115326
2023-05-05 12:43:59 +02:00
amdi-odoo cf3f562525 [IMP] mail: add many2one avatar widget
Use a many2one avatar widget instead of the
simple many2one in the schedule activity form
to display the user avatar picture.

Task-3204763

Part-of: odoo/odoo#115326
2023-05-05 12:43:59 +02:00
amdi-odoo f8a8ce710d [IMP] crm{_sms}: remove reporting pipeline tree buttons
As the pipeline reporting tree view isn't an operational
view but more of a managerial one, remove the email, sms
and snooze buttons from the view as the managers won't
need those.

Task-3204763

Part-of: odoo/odoo#115326
2023-05-05 12:43:59 +02:00
amdi-odoo a8e9b25761 [IMP] crm: add monthly lead assignment count color
Draw attention to the monthly assigned lead count when
it is exceeding the limit by changing the text color
to orange.

Task-3204763

Part-of: odoo/odoo#115326
2023-05-05 12:43:59 +02:00
amdi-odoo b47f73bf4e [IMP] crm,crm_iap{_enrich}{_mine},*: improve UI
*: sale,sales_team

Improve UI of the CRM app:

- Add placeholders and underline m2o fields in the CRM quick create
- In the lead generation form, underline the industries field, add
the avatar widget on the user_id field, add the color attributes on
the tag field, add a placeholder for the states field and set a
longer selection field to avoid the caret from overlapping the content.
- In the opportunity form, align the expected revenue and probability
headers, set a longer width for the expected revenue field,
change the recurring plan placeholder.
- In the contact opportunities page, change the "Open Opportunities"
filter to exclude lost opportunities.
- In the Sales team page, add a groupby on the company_id.
- In the Sales team form, change the assigned lead count to be
a muted text, the pipeline checkbox should be visible only when leads
has been activated, the quotations/pipeline/leads options should be
aligned.
- In the lost lead modal, change the title from "Lost Reason"
to "Lost Lead" and the validate button from "Submit" to
"Mark as lost".
- In the Sales team member form, align the fields on the left and hide
the Create Employee field as it should not be displayed there because
this is not an hr module.
- In the lead analysis tree view, add the lost reason field with optional
hide.
- Align the enrichment company not found message to the left of the chatter.
- Update the crm iap lead role "Search More" list to display human
readable names instead of the technical names.

Task-3204763

Part-of: odoo/odoo#115326
2023-05-05 12:43:58 +02:00
amdi-odoo cdde6575e4 [IMP] web: increase available input size
Modify a css class to increase the available input
width to handle larger input sizes.

Task-3204763

Part-of: odoo/odoo#115326
2023-05-05 12:43:58 +02:00
Ivan Yelizariev 031999ad34 [FIX] website_sale_digital: let salesman download digital via portal
Portal shows all Sale Orders available for current user. For example, salesman
can see his sales. If such a user can download digital files via product form in
backend, it makes sense to let user download them via SO page on portal.
However, it wasn't the case because /my/download requires product be purchased
by current user [1]. Fix it by checking read access first.

STEPS

* in backend create SO with digital product (customer must be different from
current user)
* create invoice and register a payment
* navigate to portal  (without using customer's token),
* open SO, click download on digital product

[1]: https://github.com/odoo/odoo/blob/1a24477fab4dd323cf94c010321d8942fb2c1a01/addons/website_sale_digital/models/account_invoice.py#L14-L22

opw-3144600

closes odoo/odoo#120611

X-original-commit: 77da4731ad88daf07a9d91d5f2552f7f106b0c8b
Signed-off-by: Morgane Demesmaeker <edm@odoo.com>
2023-05-05 11:37:31 +02:00
MerlinGuillaume 6b4835e229 [FIX] mail: disable the sidebar when opening a pdf in the chatter
The pdf viewer sometimes displays the sidebar when we open the pdf

Solution:
Add `pagemode=none` to the url when opening a pdf in attachments

opw-3193516

closes odoo/odoo#120530

X-original-commit: bd5f00e2c1f183ec7bb299a1db64efbd0542eb49
Related: odoo/enterprise#40746
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2023-05-05 11:37:29 +02:00
Yashkumar Vaishnav 9add589857 [FIX] project: fix line break issue in user assigneed mail template
In your inbox, when you are assigned to a task then you receive mail from
the project. In that mail, the mail subject and body are shown in one line.

In this commit, The mail template's "assignee_name" field currently has a 'span'
tag, which may cause inline subject and body issues. To prevent this, it is
recommended to use a 'div' tag instead.

task-3274690

closes odoo/odoo#118576

Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
2023-05-05 10:29:42 +02:00
Yashkumar Vaishnav 4e9a30bcfc [FIX] project: fix validation error of quick create view
In the quick create view, do not enter a value in the Task Title field and try
to create a task, a validation error is showing instead of a toast notification
highlighting that a required field is not set.

In this commit, display_name field is set as a required field so that when
required field is null, a toast notification is displayed instead of a
validation error

task-3274690

Part-of: odoo/odoo#118576
2023-05-05 10:29:42 +02:00
Renaud Thiry 39f14ca2c9 [IMP] mail: add auto_comment message type
Currently some auto_reply templates are internal as a means to prevent
notifying users everytime we send a reply to somebody.

This raises the issue that since responses to internal notifications
are themselves internal notifications, often nobody will be notified of
responses to these automated messages.

We fix this by marking these messages as auto_comments, which will
ensure responses to these messages are
considered non-internal (and thus 'discussions', by default).

task-2834304

closes odoo/odoo#94018

Related: odoo/enterprise#35466
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2023-05-05 09:25:42 +02:00
Renaud Thiry c9f55bb227 [IMP] mail: Show reorder template response
If a tracked value sent a mail template on creation of a record,
the template was displayed before the original message in the chatter.

We fix this by using precommit hooks similar to those already used for
tracking.

We also update the query count for a couple of tests. This is required
because in those tests the test user is not in the cache when we execute
the precommit hook, which we use to fetch a fallback language early in
the precommit.

Task-2834304

Part-of: odoo/odoo#94018
2023-05-05 09:25:42 +02:00
ravb-odoo c9637fd3bd [FIX] project: fix recurrence boolean should be hidden issue
Description of the issue/feature this PR addresses:
In project module, when sub-tasks is created then recurrence boolean field
should not be visible in that task. It only visible in parent tasks.

Current behavior before PR:
recurrence field is visible in sub-tasks.

Desired behavior after PR is merged:
recurrence field is not visible in sub-tasks.

task-3252521

closes odoo/odoo#120601

X-original-commit: c122da61dba916c74bca4c6994a289099d73eaa4
Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
2023-05-05 00:39:52 +02:00
moerradi 5881af92d8 [IMP] account: Enable saving bank account for new partners
This PR resolves an issue where it was impossible to save a bank account for a newly created partner (customer/vendor) without saving the partner details first. The solution implemented is to automatically save the partner when the user clicks on "add a bank account", thus ensuring a smoother user experience.

Problem Description:
When creating a new customer or vendor, users encountered difficulty when trying to add a bank account without saving the partner details first. The account holder field was required to save a bank account, but it didn't exist yet, creating a frustrating experience for users.

Solution Implemented:
We have implemented an auto-save feature for the partner when the user clicks on "add a bank account". This will force the save of the partner details before proceeding with the bank account addition, ensuring the account holder field exists and can be filled in.

closes odoo/odoo#120599

Task-id: 3266820
X-original-commit: d4defd079508e14b6a74c01a41868d3b57b2e0c0
Signed-off-by: William André (wan) <wan@odoo.com>
Signed-off-by: Erradi Mohammed (moer) <moer@odoo.com>
2023-05-05 00:39:50 +02:00