Commit Graph
4217 Commits
Author SHA1 Message Date
Thibault Delavallée 42316d5aa5 [FIX] mail: added api decorator on a method called in new and old API. 2015-05-08 10:41:26 +02:00
Thibault Delavallée e929428b10 [FIX] event, hr_recruitment, res_partner, project, project_issue: fixed calls
to message_add_suggested_recipient; signature has been updated when migrating to the
new API, removing an argument that is now contained in self. However all addons were
not updated accordingly.
2015-05-07 11:03:37 +02:00
Thibault Delavallée a7b40a9167 [FIX] mail: mail.message type field is now message_type; JS was not up to date. 2015-05-07 10:52:34 +02:00
Thibault Delavallée 53e1fc5d87 [FIX] mail: mail_template: issues linked to the migration
- do not browse a browse record
- removed onchange from the form view, as they are managed directly by the new API
2015-04-29 17:20:12 +02:00
Thibault Delavallée b325a450c5 [FIX] mail: res_config: added decorators (because old api / new api mismatches) and
replaced a search with count=True by search_count (0 = void env, not id).
2015-04-29 13:43:14 +02:00
Thibault Delavallée 4a975f1b7d [MOV] mail: moved files according to the new module organization 2015-04-27 12:52:45 +02:00
Thibault Delavallée 4b122ad41d [MIGR] mail: migration to the new API 2015-04-27 10:36:15 +02:00
sha-odoo 817fc0a8d7 [IMP] mail: compose message button on header is now
contextual.

This means that you can post a message using the full composer on a document that has a chatter.
This is a shortcut to scroll down / send a message / toggle full composer. The use case is for
example to send an email on an issue or an applicant, using a template.
2015-04-27 10:16:35 +02:00
Yannick Tivisse 74f3cbc6a6 [IMP] New design : menus reorganization
- Several Modules have been splitted into several apps
  Examples :
      Human Resources : Splitted into Leaves, Recruitment, Expenses, Appraisals, Timesheets, Employees, Payroll
      Marketing : Mass Mailing, Events, ...
      Messaging : Chat, Agenda, Notes, Address Book, ...
- Generally, the related reports have been moved in the apps, as last menu
- Also, configuration menu (no_one group) have been moved into a config root menu
  exception made for the warehouse and lunch modules
- Configuration for typical frontend modules have been moved into the website settings
  Related modules : Ecommerce, blog, slides, forum
- When they are present, menus like 'product' or 'customers' have been moved
  ex : Customers in Sales menu, Product in POS menu
- A lot of sequences and xmlids have been added or modified in this commit
- List of apps :
1  Chat : Inbox, Channels
2  Agenda : Calendar
3  Notes
4  Address Book : The view contact is still laying in the mail module (1 app => 2 icons)
5  eCommerce : Still to define : Config + Orders Analysis + Shipping + incoming Amazon module
6  Sales : Dashboard (Sales Team Kanban), CRM, Sales (note that they are splitted into 2 submenus)
         Assignation, After-Sales (Invoicing and Services), Reports
7  Point of Sale : Dashboard (POS status), Orders, Reports
8  Project : Dashboard (Project Kanban), Search (all tasks, issues), Incoming Forecasts module, Reports
   Project.issue.version feature has been removed completely
9  Members : Dashboard (Members Kanban), Report, Config
10 Timesheets : Time Tracking, Approvals, Reports
11 Purchase : Purchase, Control (Products and Bills)
12 Warehouse : Dashboard (Warehouse Kanban), Operations, Inventory Control, Schedulers, Configuration
13 Manufacturing : Same menu structure
14 Mass Mailing : Mailings, Campaigns, Reports
15 Events : Events, Reports
16 Lead Automation : Campaigns, Reports
17 Surveys : Surveys, Reports
18 Human Resources : Dashboard (Departments Kanban), Employees, Contracts, Engagement (Gamification)
19 Recruitment : Job Positions, Applications, Resumes & Letters, Reports
20 Expenses : Expenses, Approvals, Reports
21 Leaves : My Leaves, Approvals, Reports
22 Appraisals : Appraisals, Interview, Reports --> Will probably be modified by the incoming refactoring
23 Payroll : Current Menu
24 Lunch : My Lunch, Manager, Configuration
25 Accounting : Same menus currently, waiting the new accounting to be merged
26 Fleet : Current menu
27 Sign : Incoming docusign module
28 No root menuitem with this sequence
29 Attendance : Attendance, Reports
   Sign in/out by project feature has been removed completely
30 Link Tracker (group_no_one) : Link Tracker, UTMs
   New view added : URL Shortner, which is the frontend view embedded in backend
31 Versionning : Website domain, Versions, Experiments
32 Slides (group_no_one) : Channels, Categories, Slides, Tags
33 No root menu item with this sequence
34 Livechat : Channels, History, Reports
35 Dashboards : My Boards, Configuration
36 App Store : Local Modules, Apps, Updates
Last Settings : Incoming Dashboard Settings, Sales, ...., Website Settings
General Pattern for all modules' settings :
| Module_name
|-- Settings : General Config view (checkbox screen)
|-- Record setting 1
|-- ...
|-- Record setting n
Example for Sale module
| Sales
|-- Settings : Checkbox screen
|-- Quotations
|---- Quotation Templates
|---- Report Layout Categories
|---- Contract Template
|---- Invoice Type
|-- Contract
|---- Deduplicate Contacts
|-- Delivery
|---- Delivery Methods
|---- Delivery Pricelist
2015-04-24 16:41:08 +02:00
Christophe Simonis a9471c43b9 [MERGE] forward port of branch saas-6 up to e941c0f 2015-04-17 15:33:00 +02:00
Christophe Simonis 0e2a453fe2 [MERGE] forward port of branch 8.0 up to ba54a66 2015-04-14 12:22:33 +02:00
Christophe Simonis 32cede1563 [FIX] mail: ignore bounce mails.
Note: bounces from marketing campaigns are already processed
2015-04-14 11:37:43 +02:00
Christophe Simonis 3206a35aed [MERGE] forward port of branch 8.0 up to 8ac8281 2015-04-13 12:07:58 +02:00
Yannick Tivisse 9c0763c426 [IMP] purchase : onboarding improvements 2015-04-13 11:40:22 +02:00
Christophe Simonis b5e1e14c5d [MERGE] forward port of branch saas-3 up to 59d82e6 2015-04-07 14:08:15 +02:00
Christophe Simonis 59d82e6fe7 [MERGE] forward port of branch 7.0 up to 5042d91 2015-04-07 13:36:01 +02:00
Olivier Dony 6377699c44 [FIX] website_forum: check karma access on direct message edit/unlink too
Access rights on messages are derived from the
access rights on the documents they are attached
to. Due to the karma-based nature of the forum
access rights, these do not automatically reflect
on messages, because they are not implemented as
access rules.
The check_mail_message_access() needs to be
overriden to achieve the same effect.

+ allow calling super().check_mail_message_access()
from new API (useful in forward-port)
2015-04-07 10:10:20 +02:00
Samus CTO 752a07c503 [FIX] res.partner.find_or_create() should match using =like
Otherwise john@connor.com may match sarah.john@connor.com
2015-04-03 17:24:49 +02:00
Goffin Simon 3bd29a3483 [FIX] mail: display messages in chatter of inactive records
The method search inside _find_allowed_model_wise must consider records with active field=True.

opw:630295
2015-04-02 16:39:11 +02:00
Christophe Simonis 16f23dd43a [MERGE] forward port of branch 8.0 up to 8ad1105 2015-04-01 19:31:22 +02:00
Christophe Simonis 8ad11055bb [MERGE] forward port of branch saas-3 up to 12f600c 2015-04-01 19:13:25 +02:00
Christophe Simonis 12f600cec9 [MERGE] forward port of branch 7.0 up to 35077af 2015-04-01 19:07:59 +02:00
Nicolas Lempereur 35077af57d [FIX] opportunity: salesperson not in followers
Previously, when updating subscribers of a mail.thread, the default_{key}
arguments could override a {key} in the values.

e.g: for an new opportunity, the salesperson was overrided by the default user_id

This fix gives the priority to the values over the default_ in context.

opw-631741
2015-04-01 16:37:01 +02:00
Nicolas Lempereur bff042d652 [FIX] mail: two arrows in empty list help
When an mail alias for catchall domain was assigned, some checks were not done
and a empty list help was wrongly displayed. Thus two arrays and some inconsistent
messages were displayed.

This commit correct this behavior so only one arrow is displayed.

Another part of the issue, was an erroneous propagation of context which should
be solved by a futur commit.

opw-630673
2015-04-01 09:11:21 +02:00
Nicolas Lempereur c21480a3d1 [FIX] mail: auto_delete option on email notification
When writing a message via the chatter with a template being in auto_delete
False, the notifications emails are always in auto_delete True.

This fix propagate the auto_delete option of a mail.template to these
notifications emails.

opw-630010
2015-03-30 13:42:23 +02:00
Christophe Simonis 2565aa60e0 [MERGE] forward port of branch saas-6 up to c2b4766 2015-03-25 19:14:46 +01:00
Christophe Simonis c2b4766860 [MERGE] forward port of branch 8.0 up to c54d83e 2015-03-25 18:39:17 +01:00
Christophe Simonis c54d83ebd5 [FIX] mail: column read -> is_read
This is the reverse patch of 132afa981b
2015-03-25 18:36:52 +01:00
Christophe Simonis 3540ec53e4 [MERGE] forward port of branch saas-3 up to 6b70b80 2015-03-25 18:00:08 +01:00
Christophe Simonis 6b70b80a0e [MERGE] forward port of branch 7.0 up to 881c10b 2015-03-25 17:41:53 +01:00
Jignesh Rathod a7543cc1ac [MOV] portal, mail: move some code on mail.message model from portal
to mail, as the portal group is now defined in base. Same for access rights.
There is no need to keep them in the portal module.
2015-03-24 10:18:20 +01:00
Jignesh Rathod b18beecf3b [FIX] mail: mail_thread: when trying to find the correct action to launch
when coming from a notification link, consider an access error when reading
the message as having to fallback on the Inbox, not crash.
2015-03-24 10:18:16 +01:00
Jignesh Rathod a8d8046cf2 [IMP] mail: mail_template: instead of crashing when sending email based on
templates that have a void email_from, just fall back on the default email_from
defined on the mail_message model.
2015-03-24 10:18:16 +01:00
Jignesh Rathod 2c13ea9c6f [IMP] mail: mail_group: as for other public documents people should be able to
post messages on group when they can read it.
2015-03-24 10:18:16 +01:00
Jignesh Rathod b55969a577 [REF] mail: migrated tests to the new API and refactored them.
Tests have been migrated to the new api to prepare the migration of the
mail module itself. Moreover tests have been cleaned: redundant tests
and unnecessary tests have been removed.

As the base test class in mail is used in other addons, other addons
have been updated :
- portal
- project
- portal_project
- website_project_issue
- sale
- purchase

Future commits will come with somes fixes for issues detected when cleaning
the tests.
2015-03-24 10:18:16 +01:00
Denis Ledoux 132afa981b [FIX] mail: is_read is the column name in 8.0.
The column 'read' has been renamed 'is_read' in Odoo 8.0.
2015-03-23 15:46:32 +01:00
Denis Ledoux 3235eda781 [FIX] mail: notify parent message on message auto subscribe.
When auto subscribing to a message
(For instance, change the ```user_id``` field on a record,
like an invoice)
The new user is notified of the last message of the thread.
He must be notified of the parent message as well,
to have access to the first message of the thread,
to prevent access rights issues to the thread.

This mechanism is applied in the _notify method
of model ```mail.message``` as well, for the same reasons.

opw-630286
2015-03-23 15:26:41 +01:00
Christophe Simonis 5aba579e74 [MERGE] forward port of branch saas-6 up to 42db2db 2015-03-21 15:54:05 +01:00
Aaron Bohy 151c90743e [IMP] Web et al.: unique main ControlPanel
A unique main ControlPanel is instantiated by the ActionManager and it
is updated each time the state changes (i.e. when an action is performed
on the ActionManager or when switch_mode() is called on the ViewManager).

Introduction of State classes to facilitate the way of restoring
previously rendered states in ControlPanel. The notion of widgets
previously used in the ActionManager is now encapsulated in the notion
of states.

The search() function has been moved from ControlPanel to ViewManager as
it makes more sense like this.

The ViewManager doesn't have the reference to the ControlPanel but
rather communicate with it through a dedicated bus.

Some refactoring has been done on the ControlPanel as well so that it
doesn't need to know the ActionManager and the current Action anymore
(it communicates with the AM with events, and it updates itself using
information passed in arguments).

Improves the way the ViewManager requests the ControlPanel to
instantiate a SearchView, and how it waits for this SearchView to be
corretly loaded.

Move back the views logic to the ViewManager which directly asks
the ControlPanel to render the buttons and switch-buttons areas with
the views passed in arguments.

Removes option replace_breadcrumb in push_state() of ActionManager as it
is not used.

Side changes:
* Account: account_widget.js:
    Adapt code to retrieve the current state of the ActionManager.
    Required due to the introduction of State classes that encapsulate
    the notions of widgets and inner_widget in the ActionManager.
* Board: dashboard.js:
    Some refactoring to adapt the code according to the new Widgets
    structure. Several dependencies (e.g. searchview, action) were
    unnecessary. Do not append the "add to dashboard" option to the
    Favorite menu if there is no ViewManager available (e.g. in
    Messaging) instead of hidding it with a CSS rule, as a ViewManager
    required to retrieve the active_view.
* Google_spreadsheet: search.js:
    Change the way to retrieve the list_view_id s.t. it does not rely on
    parent of the SearchView anymore.
* Web: search.js:
    Change the way to retrieve the title in search.js for Favorites s.t.
    it does not rely on the parent of the SearchView anymore. Doing so,
    the ControlPanel does not need the title attribute anymore.
2015-03-20 16:18:33 +01:00
Aaron Bohy 53a9f6c081 [IMP] Web et al.: ControlPanel extracted from ViewManager
The ControlPanel is still instantiated by the ViewManager.

Changes details:
* web: views.js:
    Code related to views header is extracted from the ViewManager
    to a new Widget named ControlPanel.

    Also uses the headless flag to tell the inner view not to put
    its buttons (use case: kanban) or pager (use case: list) in the
    header as it is hidden.
* web: view_form.js, base.xml:
    Uses the headless flag at initialization of the One2ManyViewManager
    widget instead of extending the ViewManager template (which doesn't
    handle the header anymore).

* web: view_list.js:
    Test on this.options.$pager instead of this.options.$buttons
    when dealing with pager.

    Note: the behavior for list view is unchanged and has a bug.
    If there are more then 80 records to display, only the 80th
    first are display, and as there is no pager, there is no way
    to see the remaining ones. A fix for this would be to use a
    light ControlPanel in One2Many views as well. With this,
    there won't be duplicated .oe-'view'-buttons/sidebar/pager
    anymore.

* web: view_graph.js, view_pivot.js:
    Only render buttons in non-headless mode

* web_dashboard: dashboard.js:
    Fix some references that were broken with ControlPanel extraction

* web_view_editor: web_view_editor.js:
    Extend ControlPanel instead of ViewManager

* Changes in selector of ControlPanel elements in several addons:
    * base_import
    * mail
    * web
2015-03-20 16:17:06 +01:00
Thibault Delavallée 69cf768404 [IMP] mail: composer: recipients before subject 2015-03-19 10:45:25 +01:00
Christophe Simonis a329aa1949 [MERGE] forward port of branch 8.0 up to e27744d 2015-03-18 14:05:02 +01:00
Géry Debongnie 4fdf74fe21 [IMP] web+addons: improvement to module system
The module system needs to know the dependencies of a given module
before executing the function.  This is why the dependencies were
defined once in an array, and then were described one more times in the
call to require.

But a trick can simplify this: the boot function can parse the string
representation of the module and extract the calls to require from it.
It is more work for the processor, but it leads to simpler module
definitions.
2015-03-18 09:23:37 +01:00
Géry Debongnie 0ceeff515c [REF] mail: update to the new module system 2015-03-18 09:01:50 +01:00
Géry Debongnie 9036084f06 [FIX] calendar/mail: correctly use registries
These two addons were doing evil things with the way registries works.
1. they create a new registry to add something in it,
2. they replace the existing reference with another
3. they don't use the "add" method.

Seriously, original coder, what were you thinking?
2015-03-18 09:01:48 +01:00
Christophe Simonis 98c1a82e68 [FIX] mail, share: correct module update.
a6eac0f08e introduced a new `res.groups`
belonging to the "Sharing" category.
As this group has the flag `shared`, it is ignore when generating the
group's user view (and its virtual fields).

When updating `mail` module, the `share` module (which depend on mail)
is not loaded yet. This mean this new group is taken into account when
getting the `res.users` virtual fields.
As this group belong to the same category as the `share.group_share_user`
group but dont have an inheritance link between them (`implied_ids`),
they are generated as `boolean` instead of a single entry `selection`
field. This create a missmatch between the fields and the previously
generated view, which forbid inheritance application.

Force view regeneration, to avoid it.

Also change the group's category as this group is purely technical and
must be hidden anyway.
2015-03-17 19:29:54 +01:00
Olivier Dony 632ca11a94 [FIX] mail: no crash when generating footer on models w/o _get_access_link() 2015-03-16 11:37:03 +01:00
Aaron Bohy 2c1e81a4a0 [FIX] Mail: mail.js Favorite search loading
In Messaging, default filters were never loaded because the action
wasn't given as argument to the searchview initialization. The action is
required for the filters to be loaded since rev. 5cd78b891b.
2015-03-12 14:16:45 +01:00
Yannick Tivisse 9ec5240a1a [IMP] Kanban view, better layout for all the items : messages, tags, ... 2015-03-11 15:45:28 +01:00
Christophe Simonis 0a65947499 [MERGE] forward port of branch saas-6 up to 648a558 2015-03-10 19:25:43 +01:00