Commit Graph
127 Commits
Author SHA1 Message Date
Thibault Delavallée b28199a6d6 [FIX] mass_mailing: mix of old and new api 2015-09-30 11:31:20 +02:00
Yannick Tivisse 0f16318f1e [IMP] mass_mailing: Add a setting to enable the popup snippet on the website
[FIX] mass_mailing: Display attachments in a proper way
[IMP] mass_mailing: set default value for popup_redirect_url, as it's sometimes required
2015-09-28 10:19:51 +02:00
Christophe Simonis 57168a9e90 [MERGE] forward port of branch saas-6 up to a669433 2015-09-23 14:34:26 +02:00
Christophe Simonis 88eaa7dad8 [MERGE] forward port of branch 8.0 up to 35233db 2015-09-11 17:28:07 +02:00
Denis Ledoux ca2fa82aba [FIX] mass_mailing: Select records with Leads / Opps as recipients
`False` is not syntax valid for a domain.
It leads to errors when trying to evaluate `False`
as a domain in the evaluation of `pyeval.js`.

Therefore, using `False` as default value for `mailing_domain`
isn't correct

opw-648857
2015-09-08 15:33:55 +02:00
Martin Geubelle 3acf8879d1 [ADD] *: add color field on tags 2015-09-07 14:20:36 +02:00
Raphael Collet ed95043d7e [IMP] *: add archive/unarchive feature on some models
Add the statbutton, search filter, and enable the kanban column archiving on
models `res.partner`, `crm.lead`, `event.event`, `hr.employee`, `hr.applicant`,
`mail.mass_mailing`, `mail.mass_mailing.list`, `product.product`,
`project.project`, `project.task`, `project.issue`.
2015-09-02 14:29:42 +02:00
Xavier Morel d4b25b2780 [FIX] remove group_user read access to ir.cron
Should not be necessary for the correct working of odoo (normal cron
lookup & processing is performed using raw SQL anyway).

* fixed a few ref calls just in case
* also cleaned up a few unused imports
2015-08-20 12:55:00 +02:00
Christophe Simonis 73e652818b [MERGE] forward port of branch saas-6 up to 8d95f6d 2015-08-15 16:57:35 +02:00
Goffin Simon e4742f3d1f [FIX] mass_mailing: Newsletter
Using bootstrap classes.

opw:647204
2015-08-14 16:55:33 +02:00
Christophe Simonis 171d001985 [MERGE] forward port of branch 8.0 up to 02954ba 2015-08-11 16:56:47 +02:00
Denis Ledoux 0d3a9c47e7 [FIX] mass_mailing: use werkzeug url_encode instead of urllib urlencode
As Werkzeug support UTF-8 unicoding, while urllib doesn't
2015-08-11 13:05:41 +02:00
Yannick Tivisse 3d8f7c2f24 [IMP] All res_config files : Convert Booleans to Selection fields + radio buttons in views 2015-08-10 15:22:31 +02:00
Antony Lesuisse 1e90257e58 [IMP] tags: add unique constraints
- remove tags translatability
- add unique constraints
- res.partner.category is kept until we remove the parent_store test.
- hr remove tag parenthood
- hr remove unsed views and menu
2015-08-07 00:51:14 +02:00
Christophe Simonis 2cf91d16a5 [MERGE] forward port of branch saas-6 up to 63e92cb 2015-07-22 16:17:54 +02:00
Christophe Matthieu fd5361c0f7 [IMP] mass_mailing: remove depends to website. Create a website_mass_mailing bridge to add subscribe snippet into website builder. Split website_links to have link_tracker to create short and trackable URLs, and website_links to have a website layout for link_tracker and add button to share page. 2015-07-10 17:00:15 +02:00
Christophe Matthieu 05daa152dc [IMP] mass_mailing: move code from website_mail to mass_mailing and use web_editor 2015-07-10 17:00:12 +02:00
Thibault Delavallée de27deba9b [MOVE] mass_mailing, portal_sale, purchase, website_mail_group: move code
related to the mail.mail model in their own mail_mail.py file. This ease
the process of working on the mail.mail model and inheritance, if the
code is not hidden between unrelated models.
2015-07-02 13:33:59 +02:00
Christophe Simonis b16fd16e90 [MERGE] forward port of branch 8.0 up to 7d01029 2015-06-30 15:29:03 +02:00
Denis Ledoux bae35b20dd [FIX] mass_mailing: model declaration order
mail.mass_mailing.contact needs the model mail.mass_mailing.list
to be defined before itself, as some fields
need this model.

opw-643482
2015-06-26 13:47:31 +02:00
Christophe Simonis a304194936 [MERGE] forward port of branch saas-6 up to 81b5c60 2015-06-25 00:26:31 +02:00
Olivier Dony 81b5c601f9 [IMP] mass_mailing: add recipient field to preview recipient on tracking stats 2015-06-24 18:19:31 +02:00
Olivier Dony 0bd4545348 [LEGAL] Use global LICENSE/COPYRIGHT files, remove boilerplate text
- Preserved explicit 3rd-party copyright notices
- Explicit boilerplate should not be necessary - copyright law applies
  automatically in all countries thanks to Berne Convention + WTO rules,
  and a reference to the applicable license is clear enough.
2015-06-02 03:16:04 +02:00
Christophe Simonis fe2b5f35a4 [MERGE] forward port of branch saas-6 up to bf1e999 2015-05-28 14:27:38 +02:00
Martin Geubelle f1906d704b [REM] web_kanban_sparkline: module and dependencies (project, sale, sales_team, stock, mass_mailing)
The module was not used anymore.
2015-05-20 10:41:01 +02:00
Christophe Simonis 9a850b3f4a [FIX] mass_mailing: correct computation of stat state. 2015-05-11 16:57:11 +02:00
Julien De Coster 2d260b78d8 [FIX] Don't send mail to opt-outed contacts in mass mailing 2015-05-11 13:45:28 +02:00
Christophe Simonis 2260496879 [MERGE] forward port of branch 8.0 up to a939a27 2015-05-05 18:48:34 +02:00
Christophe Simonis 94fc45b7e7 [FIX] mass_mailing: create an index on mail_mail_statisctics.mail_mail_id
As deletion of mail.mail records is frequent, we need to have an index
on this column to speed up deletion
2015-05-05 14:40:07 +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
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
Jeremy Kersten d5da26a5a6 [FIX] mass_mailing: count recipients with SUPERUSER_ID to bypass security
If a campaign was done to a list of Applicant, marketing team had an error loading the kanban view.
Because to display the number of recipents, a search is done with a domain on hr.applicant.
Model that except Human Resources / Officier, nobody can read.
2015-03-19 13:09:22 +01:00
Nicolas Lempereur 9abf7a2010 [FIX] mass mailing: keep menu when back in backend
The menu was not present in 8.0 when going back from the mass mailing email
composer to the backend. This fix adds the current action id as a return_action
query string parameter and return to the correct action.

fixes #5591

opw-629526
2015-03-10 13:51:08 +01:00
Mahendra barad 067e9a0eee [ADD] mass_mailing: added bounce exchange banner 2015-02-18 17:26:50 +01:00
Julien De Coster 8efdedbf1b [ADD] Clicks statistics in mass_mailings 2015-02-12 11:58:13 +01:00
Christophe Matthieu e2f19f0ed5 [IMP] Unsubscribe links in themes 2015-02-12 11:58:13 +01:00
Christophe Matthieu 70c30fe5b1 [IMP] website_mail: improved template designer, added support for background color, font color and convert class to inline style in mail designer, changed snippet according to new format, added theme selector in mail_designer, added font-awesome support (convert in image) in mail snippets 2015-02-12 11:58:13 +01:00
Goffin Simon 0fd773a486 [IMP] Cleanup and refactoring of exception handling
Unify and refactor exception handling in framework and addons.

The generic `except_osv` is now deprecated, and replaced by more specialized exception subtypes:
 - `UserError` (renamed from Warning, as it conflicts with the built-in `Warning`) raised when a non-technical error occurs during a business operation. It could be a missing information in the data provided by the user, or a misconfiguration.
 - `AccessError`: raised when any operation is denied because the user conducting it does not have the required access rights.
 - `AccessDenied`: raised when an operation that requires authenticated access is attempted via an unauthenticated request.
 - `MissingError`: raised when an operation is attempted on a record that does not exist.
 - `ValidationError`: raised when an operation violates a SQL or Python constraint.
 - All other exceptions are internal errors due to a system problem or bug, and raised untouched to the client-side, which should display a traceback.

All exceptions take a single message argument.

The `test_exceptions` module has been updated to showcase both new and old (deprecated) exceptions.

A great many old `except_osv` had a useless title with "Error!" or "Warning", those have been removed, as this is handled by the client-side widget that displays the messages.

This commit introduces a more consistent policy for logging errors and warnings:
 - All messages that do not require administrator attention should be logged at INFO level or lower. This includes all errors that are notified to the user in a friendly manner, even for access right problems or validation errors during business operations.
 - All messages that indicate a likely misconfiguration or malicious use by the users should be logged at WARNING level, as they typically require administrator attention.
 - All other unhandled internal errors cannot typically be handled by the user and should be logged at ERROR or higher level, as they require immediate administrator attention.
2015-01-16 17:15:18 +01:00
Julien De Coster d88c34d11e [IMP] Mass mailings send in cron
1. The merge of the "email_template" module into the "mail" module.
2. The send action of the mass mailing has been moved from the frontend to a cron, because it was too slow to send over 10,000 mails (the user's browser was blocked for 15 - 20 minutes). Mass mailings have now their own process in the kanban view.
3. Mails sent from the mail form are sent immediatly instead of from the mail queue (for instance, when you go to sales > customers > list view > select 2 -3 customers > More > Partner Mass Mailing).
4. Users have now the choice from which mailing list they want to unsubscribe when they click on the unsubscribe link at the bottom of the mail.
5. Mass mailings inherit from their campaign UTMs and mass mailing campaigns are linked to an UTM campaign.
6. Many little improvements
2015-01-07 18:01:58 +01:00
Desai Binjal c743c65d36 [IMP] mass_mailing: campaign form view: add a stat
button to go to the campaign mailings + its function field to have the
counter.
2014-12-26 13:14:11 +01:00
Julien De Coster 27331a79d7 [FIX] mass_mailing: updated link conversion.
Previously to this fix, url matching the same base url were linked to
the same shortened url: foo.be -> /aaa, foo.be/bar -> /aaa/bar instead of
a new shortened url.
2014-12-24 14:30:05 +01:00
Julien De Coster ddac26cdbb [ADD] Add the website_links module.
This module tracks clicks in mass mailing mails and allow the generation of trackable links in a website interface.

Modules modifications
---------------------
Refractoring of the crm_tracking_* classes in a new module.

* Extract the crm_tracking_* from the crm module into a new module "utm"
* Remove the crm_mass_mailing bridge module
* New dependencies of mass_mailing and website_links to utm.
2014-12-17 17:14:33 +01:00
Christophe Simonis 1d3f8eba87 [MERGE] forward port of branch 8.0 up to 591e329 2014-12-02 16:18:08 +01:00
Binjal Desai 4c550d73c8 [FIX] mass_mailing: attachments were not send. 2014-11-20 16:32:53 +01:00
Dikshit Prajapati 17937e7e92 [IMP] mass_mailing: add creation date in fields
to display it on list view + perform search on it.
2014-11-14 12:54:28 +01:00
Christophe Simonis 5068cffbb0 [MERGE] forward port of branch 8.0 up to 491372e 2014-11-05 20:30:40 +01:00
Raphael Collet f2e4a10e1a [IMP] use model._fields instead of model._all_columns to cover all fields
The old-api model._all_columns contains information about model._columns and
inherited columns.  This dictionary is missing new-api computed non-stored
fields, and the new field objects provide a more readable api...

This commit contains the following changes:

 - adapt several methods of BaseModel to use fields instead of columns and
   _all_columns

 - copy all semantic-free attributes of related fields from their source

 - add attribute 'group_operator' on integer and float fields

 - base, base_action_rule, crm, edi, hr, mail, mass_mailing, pad,
   payment_acquirer, share, website, website_crm, website_mail: simply use
   _fields instead of _all_columns

 - base, decimal_precision, website: adapt qweb rendering methods to use fields
   instead of columns
2014-11-04 13:47:57 +01:00
Bhavik Bagdiya ea6a3785bb [IMP] mass_mailing: option to keep sent emails 2014-10-02 09:34:29 +02:00
qdc ff83b439c9 [IMP] mass_mailing: graph view for mailing list contacts, customer filters. Added unsubscription / bounce counter on mass mailing contacts 2014-09-12 13:35:34 +02:00