- In the POS screen, select a product.
- Set the keyboard on "Price" mode
- Change the unit price
- Set the keyboard on "Qty" mode
- Change the qty
The product qty and the total price doesn't refresh until you go to the
payment screen.
We manually trigger a change when the quantity is updated.
opw-1855970
Purpose
=======
When a contact in a mailing list receives a mass_mailing with an
unsubscription link, then he is automatically unsubscribed once the
unsubscription link in clicked instead of opening the
unsubscription form.
Specification
=============
Now the user can decide wether to unsubscribe or not.
Closes#24969
gevent 1.3.0 removed backward compatibility on gevent.wsgi.
make the new path the default
While the recommanded version on requirements.txt is 1.1, a server can not
launched with the 1.3
Closes#24780Fixes#24779
When changing the ordered quantity on a Sales order line, the
planned hours of its related task will be updated too.
This is obviously applicable for SO line that have created
a task at SO confirmation.
If the SO is cancel, or put in draft state, updating the ordered
quantity will change the planned hours of the task. This operation
is however prevent on locked SO, since ordered quantity is a
protected field.
Task #1856984
- Create a product with variants which can be sold in the POS
- Open a POS session
- Delete a variant (e.g. change the attributes)
- Sell the product in the POS, validate
The POS order cannot be created because the product ID doesn't exist
anymore.
We extend the existing constain on `product.template` on
`product.product`.
opw-1850598
backport of 682ae1cc64
Before this commit, if you enable website_form_enable_metadata, that
will crash with a "KeyError: 'meta'"
This commit closes#24888
- Create Product A with 5 Unit(s) on hand
- Created SO for 5 Units(s) A, validate SO and picking
- Return of the same quantity, but assign an owner
- Created RMA for 5 Units(s)
A warning generated: 'A is not available in sufficient quantity in ...'.
By assigning an owner on the return, the product is not considered
available. However, this makes sense since we are not owner of the
product, so it should not be valued.
Ideally, we would need a field `owner_id` on the RMA. Since it is not
available, we use `partner_id`. the logic is the following:
- try to reserve with owner_id = partner_id
- if the available qty is not sufficient, try without owner
When the stock moves are created, we apply the same logic to know
whether we need to create the move with an owner. Note that this is not
really sufficient. Ideally, we should reserve the quantity to repair
when we check if the quantity available is sufficient.
opw-1854346
`sale_timesheet` adds a value to the selection field `service_type`, if
any product.product or product.templates are set to this new
`service_type` and then the module `sale_timesheet` is uninstalled, the
`service_type` field won't be implicitly reset to the default, existing
value of `manual`, due to this, when accessing a view displaying
product.product records the view will crash and won't be accessible as
long as it contains an undefined selection value.
this commit explicitly resets the field to the base value upon
uninstallation.
opw-1856776
res_config_settings.website_id should be ondelete='cascade', however
that is not suitable for stable, so we emulate the ondelete cascade
with an SQL query during ir.model unlink (website uninstallation).
Fixes#25078
According to Authorize.net documentation, the state code should only be
used for United States. For the other countries, use the state name
instead.
opw-1854278
Use crm.lead instead of a the crm.opportunity.report object for
reporting. This allows to show more fields (e.g. tags_ids). The only
field not accessible in the report is #activities, but there is a
deicated report dedicated to activities.
Improved the default search. Example: when reporting on leads, you want
leads+opps by creation date (and not only leads) as an opportunity has
been a lead created too.
Otherwise the time is printed using the timezone on the user printing
the badge. This fix is inspired by how the times are rendered by
website_event (e.g. website_event.index).
Using the date_{begin,end}_located fields was considered, but their
formatting is not configurable and they result in lines that don't fit
well on the badge.
opw-1853238
With this change,
* some modules are now set to be automatically installed by default
* the setup bar of accounting has been changed in order to allow more easiliy the configuration of bank accounts/journals (and the step to oversee the opening entry has been removed)
* the kanban view in the dashboard has been enhanced (mostly for bank journals, but not only)
Was task: 32668
Was PR #23049
After feedback from various uses, some improvements are made on the form view
to schedule an activity linked to meeting type
* renaming the button to be more obvious that the user will be redirected
to the calendar to schedule the meeting;
* remove the note field to have a smaller form;
This commit is related to task ID 1819812. Closes#24169.
Purpose of this commit is to enhance quality of templates proposed by Odoo
and make them use notification layout when send by emails. Those emails
are cleaner and more up to date compared to other emails.
Main work of this merge is to ease the propagation of setting the
notification layout specification through various layers of mail.thread
post processing and to improve the various templates proposed in several
applications.
Impacted modules in this merge: event and event track, project (including
rating), gamification, product email template.
This merge is linked to task 51122. Closes#24052.
Purpose of this commit is to enhance quality of templates proposed by Odoo
and make them use notification layout when send by emails. Those emails
are cleaner and more up to date compared to other emails.
Including
* revamping of coupon email to match current notification guidelines. It
was using a very strange and different design. We choose to standardize
it;
* use the light notification template to encapsulate coupon emails when
sending them by email;
This commit is related to task ID 51122 (and PR #2060).
Before this commit, it could happen quite frequently that the runbot
displayed a warning (coming from the JS) when some tests/tours were
executed. This is the standard warning that some modules are not yet
loaded. This is not harmful in anyway, but is visible in the runbot
logs.
With this commit, we increase the timeout to 6s. This is not really a
good sign, hopefully cold starts for building assets will not
increase again in the future.
Purpose
=======
We can not get the list of vehicles who have been assigned to a driver.
Specification
=============
The user is able to get the list of the vehicles assigned to a specific driver, by searching the driver's name with the "Assigned to" filter.
Since 565277acbb sassc is used as a
fallback when the python libsass is not available.
With this commit, the saasc package dependency is added to the rpm to
avoid installing libsass with pip.
Purpose of this commit is to enhance quality of templates proposed by Odoo
and make them use notification layout when send by emails. Those emails
are cleaner and more up to date compared to other emails.
Including
* when sending the template attached to the product, specify the layout
to use to encapsulate the notification email;
There is a huge ugly demo data of odoo online contained in this product.
After some thinking we choose not to modify it as demo data update will
belong to another task.
This commit is related to task ID 51122 (and PR #24052).
Purpose of this commit is to enhance quality of templates proposed by Odoo
and make them use notification layout when send by emails. Those emails
are cleaner and more up to date compared to other emails.
Including
* calls to message_post now use the light notification layout. It is
given as parameter to the message_post process;
* some cleaning in templates;
This commit is related to task ID 51122 (and PR #24052).
Purpose of this commit is to enhance quality of templates proposed by Odoo
and make them use notification layout when send by emails. Those emails
are cleaner and more up to date compared to other emails.
Including
* registration and reminder templates that are send directly by email
are improved to directly include the notification layout in the body
itself;
* improve layout of badge template;
* use notification layout when sending badge;
* improve layout of track confirmation template;
* use notification layout when sending templates based on stage change;
This commit is related to task ID 51122 (and PR #24052).
Purpose of this commit is to enhance quality of templates proposed by Odoo
and make them use notification layout when send by emails. Those emails
are cleaner and more up to date compared to other emails.
Including
* reception acknowledgment template is moved from demo to data to ensure
people have a template to copy and use for their stages;
* improve layout of rating request template;
* use notification layout when sending template-based emails;
* rename the admin spam template so that templates are correctly ordered
when viewing them in list;
This commit is related to task ID 51122 (and PR #24052).
It is sometimes useful to be able to customize slightly the color of a
field depending on some conditions on the current record.
For example, imagine that we want to show a VAT number field in green/red, if
it was validated or not. To do that, we can add a field with an
onchange, and simply add decoration-danger and decoration-success
attributes to the field.
This allows to better control the posting process, notably using custom
layout to encapsulate emails. Previously to this commit a simple email was
send using a template. Now this template is used to post a message on the
record asking for customer request.
New parameters are added on the request send method
* a subtype, allowing some custom behavior with followers; by default the
behavior is to log a note with the customer being in the recipients list;
* composition_mode can be given and propagated to message_post_with_template
allowing a comment or mass mailing mode;
This commit is related to task 51122 (and PR #24052).
* increase logo size, because big logos are necessary;
* correctly set cellpadding / spacing to 0 to avoid loosing some pixels
when having several embedded tables;
* remove summary mail_notification as it should be used only to some
customer-specific part of emails;
This commit is related to task 51122 (and PR #24052).
This commit proposes to ease the use and specification of layout used to
encapsulate email body when sending notification emails. This is done
through two means
* message_post_with_template now supports the custom layout parameter
that allows to set the layout to use when sending notification emails
in the message_post process. We have to rely on the context as it is
the current way of using it in the composer. It is likely to change in
a near future;
* composer now supports through context (as we have no other choice)
specific notification values to give to the notification layout rendering;
This commit is related to task 51122 (and PR #24052).
Some of the templates Odoo proposed do not display well on all email readers
as too much styling attributes are sanitized. This commit adds some styling
in the white list to allow having stylized templates while still having a
coherent white list.
This commit is related to task 51122 (and PR #24052).
We need to support the accrual allocation for leaves.
This is a special type of allocations that adds some leaves to the
allocation every X amount of time worked.
This kind of allocations is especially used in the USA, but can also be
used in other contexts (eg: In Belgium we could allocate 20 days per
year for the legal leaves)
These allocations have support for :
* A max balance limit
* Going in negative (if set on the leave_type and the manager
approves the leaves)
* Removing the unpaid leaves from the quantity of days worked
* Setting an end date after which it does not allocate anymore leaves
Task #46114Closes#22292
When trying to import an OFX bank statetement under MS Windows, a
Traceback states that BeautifulSoup is missing.
During the build process, py2exe didn't autodiscover that BeautifulSoup
is needed by the ofxparse package.
With this commit, BeautifulSoup is explicitely added to py2exe packages.
The Nightly VM was updated accordingly.
opw-1848202
Allow the user to set taxes on lines when creating manually a new journal entry, and tax lines will be computed automatically thanks to an onchange based on new unstored fields.
Was task: 33802
Was PR #19029
The duration field on a workorder computes the total time spent on it.
The mrp_time_counter widget that is used to display it only computes the total
time spent on it by the currently logged user (ignoring the field stored value).
To help the user understand the inconsistency between the two values, we add a
help tooltip.
Since this really depends on the widget used to display the value, the tooltip
is directly put in the view.
opw 1854802
Purpose
=======
recruitment pipeline lacks a kanban state management
Specifications
==============
Add kanban state management like what is already done in project:
- A kanban state was added to the recruitment pipeline. The kanban colored dot is visible in the kanban view and in the form view.
- A search filter on the kanban state was also added.
Project : RD for Dummies
Task : 1819164
If you don't define an explicit address type, then the
record is not going to be accessible.
In the ORM:
>>> env['res.partner'].create({'name': 'Test', 'type': False})
res.partner(44356,)
>>> env['res.partner'].search([('type', '!=', 'private'), ('id', '=', 44356)])
res.partner()
>>> env['res.partner'].search([('type', '=', False), ('id', '=', 44356)])
res.partner(44356,)
due to the fact that NULL in the database is undefined and can't be
compared to a specific key.
In some cases, if the device is in a mobile mode, but does not support
touch, then the mobile search view is shown, as expected, but the css
is not applied.
Maybe this is not a big deal in practice, since the only way to notice this is
to use odoo on a browser with a small window and no touch emulation, but
this is still annoying and wrong: if the mobile search view is
displayed, the its css should be applied in all cases.
We simply fix the css rule to make it work like expected.
User B mentions @UserA in a channel on discuss
User A gets two notifications: one for direct chat,the other for the channel
User A clicks on the notification for the channel
Before this commit the form view of the channel was opened
After this commit, the channel is opened in discuss
OPW 1849577
closes#25074