summaryrefslogtreecommitdiff
path: root/addons/mass_mailing/security
AgeCommit message (Collapse)Author
2019-03-05[IMP] base,*: Reorganize access rights groupsjbm-odoo
Purpose ======= Access group terminology is missleading. Yous have to be manager to administrate an application. This task consists to rename groups to be understandable for everyone. Groups should be reorganised on the users form to be more explicit. Specification ============= 1/ Rename 'Manager' to 'Administrator' in users groups. 2/ Define a hierarchy on access groups by using the category_id in the manifests A category 'Operations/Project' will create a category Project with a parent category 'Operations', and something smart is already developed (in modules/db.py) to avoid duplicating categories. 3/ Add a group in expenses to be able to approve expenses reports for my team. 4/ Add a group in timesheets to be able to approve timesheets for my team. 5/ Remove partially the useless crap in ir_module_category_data.xml 6/ Sort access rights groups on users form according to its parent category closes odoo/odoo#29362 Signed-off-by: "Yannick Tivisse (yti)" <yti@odoo.com>
2018-10-18[FIX] mass_mailing: fix tracking link creation in mass mailingThibault Delavallée
When using only mass mailing two issues arise when trying to send mass mailings containing links * a link.tracker is created for each link to shorten; however rights are given currently only in website_links for website designers and not to marketing users that use mass mailing. This commit adds the rights for link.tracker model to those people; * a link.tracker.code is created to hold the shortened versions of the links. As it is a technical model it is now done as superuser as rights on link.tracked model has already been granted and adding rights on such a technical model is not necessary; A test is added that checks what is done with links when sending mass mailings. It helped spotting the hereabove issue. This commit is linked to task ID 1889703 and PR #27526.
2018-09-10[MERGE] forward port branch saas-11.4 up to 1199451606cChristophe Simonis
2018-09-10Revert "[IMP] base: Remove unused module categories"Yannick Tivisse
This reverts commit 382fbd35204ff947c16b795ca090c97d6741fb1d.
2018-08-28[IMP] mass_mailing : campaign menu items access only if campaign activatedDavid Beguin
Campaign Tags and Campaign Stages was accessible in debug mode even if campaign was not activated in the mass_mailing settings. there are now not available if the option is not activated.
2018-08-23[IMP] base: add regular user admin as uid 2Raphael Collet
User 1 simply becomes a technical user (inactive, no password).
2018-08-10[IMP] mail, mass_mailing : apply blacklist, opt_out per mailing listDavid Beguin
Purpose ======= - Apply the blacklist implementation to Improve mailing subscription to be more compliant with the European GDPR law. Keep a list of people who does not want to receive promotional emails (or mass mailing in general) anymore. - Allows the recipient to update himself his mailing preferences Specifications =========== This commit is regrouping some main changes on mass mailing. Apply Blacklist for following models through blacklist.mixin : - crm.lead - res.partner - mail.mass_mailing.contact - mail.channel.partner - Opt_out per mailing list instead of per mailing contact. - Replace opt_out by blacklist in crm.lead + res.partner models - Added 'ignored' state for mass_mailing. Ignored = blacklisted, opted-out Ignored email are not included into final statistics to avoid confusion. - Unsubscribe(d) pages migrated from website_mass_mailing to mass_mailing module as thoses pages should work without having the website module installed Detailed implementation =================== Mass-mailing : - A blacklisted email is notified by the ban icon next to the email field. (at the left of the email field for display purpose) - Renaming the '_get_blacklist' method that was actually searching opt_out list into 'get_opt_out_list' - Opt out per mailing list : Add opt_out + related fields (for display and ergonomy reasons) on the relational model - Display relational model tree view instead of mass_mailing.contact tree view when clicking on mass_mailing_list in kanban view -> In order to be align between contact_nbr displayed in kanban tile and the content of the tree view -> mass_mailing contact is accesible via the user icon in this tree view - Remove custom filters 'filter_contact_subscription' and 'filter_contact_unsubscription' as opt_out is not on mass_mailing.contact model anymore - Add 'is_public' to mailing list The name of this mailing list can be seen (or not) by recipient in the unsubscription page If the mailing lists used in the mass mailing are not public, the user in only informed that he has been unsubscribed. If the mailing lists are public, the user is informed that he has been unsubscribed from the mailing lists and he has the choice to modify his subscription to all the public mailing list he is or was subscribed to. - Unsubscription Page : - mass_mailing_contact : Opt_out per mailing list, done by email and not by id, as multiple contact can have the same email The recipient can add/remove himself to/from the blacklist The recipient can send a feedback about why he unsubscribed - crm.lead + res.partner : Once the recipient unsubscribe, he is automatically blacklisted The recipient can 'Come back' and remove himself from the blacklist if he changes his mind - Show blacklist button parameter added in config : The idea is to enable/disable the fact that the recipient can add himself to the blacklist by showing or not the 'blacklist me' button Only applies for mass_mailing.contact. The recipient, once blacklisted, can always, no matter the value of this parameter, 'come back' and unblacklist himself crm.lead + res.partner : - Replace opt_out by blacklist in crm.lead + res.partner models. As when a res.partner or crm.lead unsubcribe, we assume that the recipient does not want to receive mass mailing anymore, at all, even if we adds him to a mailing list afterwards. He is then blacklisted to avoid this. With this behaviour, if a new lead is created with the same email address, he won't be able to receive mail in mass_mode. But he will still be able to receive '1 to 1' direct email. Task ID 33224 Closes #25966
2018-08-10[IMP] mail - mail.blacklist: Not send mass_mail to recipient that does't want toDavid Beguin
Purpose ======= Improve mailing subscription to be more compliant with the European GDPR law. Keep a list of people who does not want to receive promotional emails (or mass mailing in general) anymore. Specifications =========== This commit is regrouping some main changes on mass mailing. - Added blacklist : Avoid sending mass mailing to blacklisted recipient (blacklisted = email address that doens't want to receive mass mailing anymore) Detailed implementation =================== Mail : - Add Blacklist mechanism in mail module (NOT in mass-mailing) : as we can send mass-mail without the mass-mailing module - Unicity in email -> To avoid error in import, override the create and return the existing record if any, else, create the record normally. - Blacklisting is done by email address and is cross model. Will apply to model that inherit the blacklist.mixin. - field 'is_blacklisted' -> computed : check if email is in blacklist + search method to be able to filter on is_blacklisted - When a email address is blacklisted, it will never get mass mailings anymore. Even if the email address is added to another mailing lists - Avoid sending notification to blacklisted recipients when sending email in mass mail mode. If the recipient is blacklisted, we should not even send a notification in the recipient's chatter for an email that he won't even receive. - When a email address is blacklisted, it can still get 'normal' mailings. - The blacklist shoud be accessible in Mass Mailing / Configuration / Blacklist and Settings / Technical / Email / Blacklist -> Renaming Settings / Technical / White / Black List config menu item into Channel Moderation to avoid confusion with Mass Mail Blacklist - Add indexes to the blacklist table (on email) to make it fast for access for the different use cases - _primary_email : attribute that must be overriden to specify which field must be used as email in the blacklist mechanism. - Filtering the blacklisted recipient in mail composer : done in mail._get mail value() In case of real mass mailing, we need the statistics to be computed in order to know how many recipients were ignored in the mail. So we cannot avoid sending mail but instead flag the mail as canceled. Task ID 33224
2018-04-26[IMP] base: Remove unused module categoriesYannick Tivisse
The categories other extra rigths and hidden are not used now.
2018-03-15[IMP] mass_mailing: allow users to choose a specific outgoing mail serverSanjay Jamod
Purpose of this commit is to allow mass mailing users to select an outgoing mail sever when performing mass mailing. It includes * add a field in mass_mailing to select specific outgoing mail server; it is put in debug mode because it sounds people would not understand what is its purpose; * add an option in settings to set a default outgoing mail server; * give read access to ir.mail_server to mass_mailing users; This commit is related to task ID 31737.
2017-03-13[MERGE] forward port branch saas-11 up to 2e972578b92Christophe Simonis
2017-03-08[FIX] mass_mailing: mailing users requires write on utm.sourceDenis Ledoux
Since revision 731356a1558f49a0f1cca285cf73364dc9b56ebb and the fact `mail.mass_mailing.campaign` inherits (with s) from `utm.source`, and the name of the mass mailing is took from this `utm.source` linked to the mass mailing, a mass mailing user requires the write access on the model `utm.source` to be able to change the subject of a mass mailing. As a side node, I notice there is no group applied on the base `access_utm_source` access rule of the module UTM, meaning a portal user can create `utm.source`. I am not sure if this is wanted or not. opw-710525
2016-08-26[FIX] mass_mailing, website_mass_mailing: "group_website_popup_on_exit" groupSimon Lejeune
This group was defined in the mass_mailing module but is only working when you install website_mass_mailing. What this group does is allowing to insert a newsletter snippet in the page, thus it has nothing to do in the mass_mailing module which doesn't depend on website. Also, the snippet itself was already defined in website_mass_mailing. Moved all the things to website_mass_mailing.
2016-08-23[IMP] base_setup: Allow the admin to modify the default user acess rightsYannick Tivisse
Add a link in the general settings to access easily the default_user form view in order to modify the default access rights The default_user manager rights declarations in all the applications have been move in a noupdate="1" definition to avoid the manual configuration overwrittings
2016-06-17[MOV] mass_mailing: splitted the following files + new apiKeyur Gajjar
1. Splitted data/mass_mailing_data.xml to security/mass_mailing_security.xml for res_groups data. 2. Splitted views/mass_mailing_views to - views/link_tracker_views.xml - views/mass_mailing_stats_views.xml - views/mass_mailing_template.xml
2016-03-11[IMP] mass_mailing: Move access rights from employee to mass mailing user.rpi
2015-11-20[IMP] Newly created users get all manager access rightYannick Tivisse
Coming from a bug in web_settings_dashboard. Invited user didn't have any rights when created from the dashboard, which was leading to an error. This bug leaded to a new discussion. Better to have basic employee having user rights for all main applications. For bigger entreprises there is an admin that will carefully remove extra rights, if necessary. The target is small businesses, it makes sense that every way to create a user gives the same result. In conclusion, each new user has a full access to the applications by default How is it implemented ? We added an inactive default user which original access right to the groups 'base.group_user' and 'base.group_partner_manager' in base. Each application will extend the default user's access right by adding the maximal access right for this application. On user creation, we will use by default the 'group_id' field from the default user. We will in the same time remove the ugly 'default_groups_ref' key which was passed sometimes in the context for some fields in some views, and sometimes nothing. So, the user can modify the access rights for the default user, but he should be aware that removing project user access rights for a default user will prevent a *created on the fly in a task* user will not be able to access the task.
2015-09-28[IMP] mass_mailing: Add a setting to enable the popup snippet on the websiteYannick Tivisse
[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-08-12[IMP] mass_mailing: groups and config updateGaurav Panchal
Define a new mass_mailing_user group that is used in the mass mailing module instead of using the marketing user group.
2015-01-07[IMP] Mass mailings send in cronJulien De Coster
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
2014-08-26[IMP] Cleaning of reporting (group_by, filters), adding new favourites and ↵qdc
default views, some renaming (py and xml files)
2014-04-15[REM] mass_mailing: removed report, a graph view on statistics will be ↵Thibault Delavallée
sufficient bzr revid: tde@openerp.com-20140415095817-rx7bokd6qc5rkrhq
2014-04-04[IMP] mass_mailing: added views + config menu in marketign + menu toThibault Delavallée
configure stages. bzr revid: tde@openerp.com-20140404154326-ticujj6f7djg2o4a
2014-03-28[FIX] mass_mailing: added security rules on mass mailing reportThibault Delavallée
bzr revid: tde@openerp.com-20140328103941-hqyt8p5dzeil4bks
2014-03-14[IMP] [REF] mass_mailing: first draft for the saas-4 refactoring.Thibault Delavallée
Improved mass mailing form view, that is used as a central point to create new mailings. Added concept of contact list (based on partner, or leads (to add)), as well as contact (a list of name / email to import). Mailings are done un contact list to simplify the way it works. Added a kanban view of templates, with a flag to filter only mass mailing templates (to avoid havign to deal with acknoledgments). Using campaigns is now an option (a group), mailings can be done without having to deal with campaigns. Mailings and campaigns now have a status, used to display their kanban view. bzr revid: tde@openerp.com-20140314165113-g4gvvifrhr2nfu15
2014-01-13[FIX] mass_mailing, marketing: menus displayed to employees only (no ↵Denis Ledoux
portal/anonymous). ACL change too. bzr revid: dle@openerp.com-20140113151018-5xksff08s0vrjh8d
2013-09-13[REF] mass_mailing: first refactorThibault Delavallée
Mail statistics are now stored onto a separated object (mail.mail.statistics), allowing to handle emails separately from statistics (among other removing mail.mail entries while keeping statistics). Everything linnked to opened/replied/bounce is not managed by mass_mailing, removed added code in mail module. bzr revid: tde@openerp.com-20130913115408-322cyjipdg680as6
2013-09-03[IMP] mass_mailing: added fields on segment form view + rules for segment modelThibault Delavallée
bzr revid: tde@openerp.com-20130903152553-y0s4jhqagu0ff92m
2013-08-07[ADD] mass_mailing: added module for mass mailign campaigns. First draft of ↵Thibault Delavallée
new module : simple mass mailing campaign model, linked to emails, compute some statistics mail.compose.message updated to the mass mailing campaigns in mass mail mode bzr revid: tde@openerp.com-20130807130334-nwd34fgsz4lc6lt1