Purpose
=======
The user is not notified when an online order is placed or when an opportunity is posted on the contact form.
set admin as default follower of sales teams (or any team creator).
The concept of sales channel is confusign to users. When you need to create a channel, it's to manage a team of people -> rename bac kto "Sales Team"
Specification
=============
crm lead:
---------
- notify admin user when a lead/opport is created by a website visitor or any other user or created from an email sent to the email alias
- admin user should be follower of first sales team by default => Done
- "Opportunity Created" subtype should be selected by default when a user becomes a follower of any salesteam
- Show following fields in the notification:
- Contact Name:
- Customer Name:
- Phone:
- Email:
- Message:
- Sales Channel:
- Stage: New
+ other current tracked fields in case of update ( expected revenue, score)
- don't show company name, contact name, phone if not set (e.g. if created from email alias)
ecommerce:
----------
- notify admin when an order is placed on the website:
- admin should be follower of website salesteam by default
- order tracked fields in a logical order and add currency to amounts (nice to have but would be cleaner):
- Customer:
- Salesperson:
- Status:
- Delivery Amount:
- Untaxed Amount:
- Total:
- edit notif preferences on the salesteam:
- In notifications sent by email, add a link to edit notif preferences in the salesteam: "Edit your notification preferences"
- redirect to notification preferences of the user in the salesteam
- Other users must easily manage the way they want to be notified about salesteams activities:
- move kanban view out of reporting (it's an operational view, not a reporting one and all the users need to see it)
- CRM: https://drive.google.com/a/odoo.com/file/d/1ZWgU_2uozRvwhe8dtemvEFWP_Rsq-bdn/view?usp=drivesdk
- Sales: https://drive.google.com/a/odoo.com/file/d/1AzmT2-shMXzl6olm2d_u0ZXY4Ov1m4q2/view?usp=drivesdk
- show assignation section out of debug mode, to let users edit following preferences in the sales team
- if no sales channel set for the website (https://drive.google.com/a/odoo.com/file/d/1TbB0FsdFxkTRLq-2Fa480AK9MPbCV9Q3/view?usp=drivesdk), show a specific message asking to set one: "Please set a sales team for the website. Otherwise you can't follow related events."
Miscellaneous:
--------------
- rename Sales channels into the old term "Sales Teams", the concept of sales channel is not understood by most users
Fields in the chatter can be organized with a business logic.
Here fields for CRM and Website E-commerce have a tracking sequence.
For other fields/module just add "track_sequence=x" on model
Since rev. odoo/odoo@0dd6a0b loadCSS function in ajax returns a promise
in order to known when the stylesheet is loaded.
It uses a local cache to avoid fetching the file multiple times.
However, the lazy loaded lib could already be in the DOM (in the
test bundle for example). In this case, the file was fetched twice.
In this case, the cache is now filled with a resolved promise.
Before this commit, when posting a message with some emoji sources (e.g. "x'D"),
sometimes it was not transformed into the corresponding unicode representation
(e.g. "😂").
The emojis with this issue have different escaped and unescaped source
representations:
- (unescaped) "x'D"
- (escaped) "x'D".
The emoji converter was mistakenly using the escaped representation, instead of
the unescaped one.
Task-ID 1868892
As there are a few chance that someone will import something on a mobile view.
So, we hide the button 'Import' in a mobile view.
For mobile view, we added a view switcher button and it'll display a list of
views buttons. Also set active view's icon as its icon.
Related to Task: 1857696
Co-authored-by: Mohammed Shekha <msh@openerp.com>
When creating a job position from the frontend, and we:
- are on the same language that the default website language,
- have the permission to write on ir.ui.view,
we have all conditions to adding branding used to edit a page.
But when creating a position by the frontend, we create a job that will
render this template:
website_hr_recruitment.default_website_description
When we are in the above said condition, we will create a job position
that erroneously has the branding that should only be displayed on
website and removed when saving an edition.
This caused a lot of problem with the editor that would most often not
be able to edit the content.
In this commit, we use the "rendering_bundle" context key to prevent
branding.
opw-1868879
closes#25963
Revision 6e36cbc243c41 changed the signature of the method in 11.0 for
python 3.7 compatibility.
To avoid breaking calls, introduced as fallback using kwargs.
Remove this ugly hack for v12
It is currently difficult to mark a record as noupdate
Make it doable in one click.
The choice of what should and should not be on noupdate is personal and depends
of the company need and how technical are the users.
Problem raised at #25748
The res.lang records are typically complicated and changing the date format may
break the database. Keeping it in noupdate=0 makes sense for most use but allow
to change it if needed.
Closes#25759
With the portal user, go on /my/task/1
(obviously provided that this task doesn't belong to portal user)
Before this commit, there is a 500 error
After this commit, the exceptions are handled and throws a 403
OPW 1867795
closes#25951
Before this commit, the administrator of a channel may easily unsubscribe
by accident from the channel.
With this commit, there is a confirmation dialog for the administrator of
the channel when he leaves it. This should prevent most accidental leaves
from the administrator.
Task-ID 1835641
The file report_invoice_view.xml was deleted in the commit 762adedece, but I forgot to remove it from the manifest.
This commit fixes it.
Task: 53996
PR #25209
This is needed because some reports we want to add later on, need to have
the address field on the left or following a given format.
Hence we moved the address div from each existing report on to the main report
template itself, Since some reports uses up until 3 addresses, we have defined
an area for the main address that each report can set (address used on the
envelope's window for sending). The any other extra address, or additional
information should be defined in the 'information_block' div
Was part of task: 35289
Was part of PR #25472
Create new methods on `BaseModel` to create records with given xml ids in
batch. Those methods replace the methods `_update` and `_update_dummy` of
model 'ir.model.data', which are now deprecated.
Adapt XML and CSV import code to create records in batch.
Commit dc1681b1 did change the name of the inventory creation from
direct qty update, but test still tries to compare the product.name
closesodoo/odoo#25948
In 11.0 7e724f96c5 is_product_variant has been introduced back (it was
removed in 10.0 b747b05fa). But related of _inherits are computed on the
related model so is_product_variant would always be false.
Without fix, added test fails with:
AssertionError:
Items in the first set but not the second: True, Items in the second
set but not the first: False, Product variants are variants
fixes#26961
related to opw-1814973
closes#27163
Before this commit, if you create an automated action with trigger 'on_change'
it was not called because the run() function don't have active_id.
Now if we have onchange_self in the context but not active id, we call the
function nevertheless. (withtout active_id in context!)
closesodoo/odoo#27167
- Create a Customer location (CL) and set a Company on it
- Configure Product A in FIFO / Perpetual
- Receive 2 Unit(s) of A in Stock
- Create an Internal Transfer
1 Unit(s) of Product A
Source location: Stock
Destination Location: CL
- Validate
The Inventory Valuation report incorrectly retrieves a quantity of 2 in
stock instead of 1.
The error is first due to a misconfiguration: the CL should not have a
Company set. However, we should not take into account any quantity in a
customer location, even if there is a Company set.
opw-1884675
opw-1884835
closesodoo/odoo#27145