Access this document directly in OpenERP
""") % url - body = tools.append_content_to_html(body, ("%s
\nPlease call me as soon as possible this afternoon!\n\n--\nSylvie\n', 'message_process: plaintext incoming email incorrectly parsed') + @mute_logger('openerp.addons.mail.mail_thread', 'openerp.osv.orm') def test_10_thread_parent_resolution(self): """ Testing parent/child relationships are correctly established when processing incoming mails """ cr, uid = self.cr, self.uid diff --git a/addons/portal/__init__.py b/addons/portal/__init__.py index 0045a557a49..3a9b5ef80d0 100644 --- a/addons/portal/__init__.py +++ b/addons/portal/__init__.py @@ -20,6 +20,7 @@ ############################################################################## import portal +import mail_thread import mail_mail import wizard import acquirer diff --git a/addons/portal/mail_mail.py b/addons/portal/mail_mail.py index 5d2a91e691f..35658456c40 100644 --- a/addons/portal/mail_mail.py +++ b/addons/portal/mail_mail.py @@ -21,8 +21,6 @@ from openerp import SUPERUSER_ID from openerp.osv import osv -from openerp.osv.orm import except_orm -from openerp.tools import append_content_to_html from openerp.tools.translate import _ @@ -30,27 +28,18 @@ class mail_mail(osv.Model): """ Update of mail_mail class, to add the signin URL to notifications. """ _inherit = 'mail.mail' - def send_get_mail_body(self, cr, uid, mail, partner=None, context=None): - """ add a signin link inside the body of a mail.mail - :param mail: mail.mail browse_record - :param partner: browse_record of the specific recipient partner - :return: the resulting body_html + def _get_partner_access_link(self, cr, uid, mail, partner=None, context=None): + """ Generate URLs for links in mails: + - partner is not an user: signup_url + - partner is an user: fallback on classic URL """ - partner_obj = self.pool.get('res.partner') - body = mail.body_html - if partner: + if partner and not partner.user_ids: contex_signup = dict(context or {}, signup_valid=True) - partner = partner_obj.browse(cr, SUPERUSER_ID, partner.id, context=contex_signup) - text = _("""
Access your messages and personal documents through our Customer Portal
""") % partner.signup_url - # partner is an user: add a link to the document if read access - if partner.user_ids and mail.model and mail.res_id \ - and self.check_access_rights(cr, partner.user_ids[0].id, 'read', raise_exception=False): - related_user = partner.user_ids[0] - try: - self.pool.get(mail.model).check_access_rule(cr, related_user.id, [mail.res_id], 'read', context=context) - url = partner_obj._get_signup_url_for_action(cr, related_user.id, [partner.id], action='', res_id=mail.res_id, model=mail.model, context=context)[partner.id] - text = _("""Access this document directly in OpenERP
""") % url - except except_orm, e: - pass - body = append_content_to_html(body, ("%s