From b6c32132b29bc7d134cf0e9bc712edb1f1bb189e Mon Sep 17 00:00:00 2001 From: Dhara Date: Thu, 10 Jun 2010 18:14:50 +0530 Subject: [PATCH] [IMP] view and fields in email_template bzr revid: dhara@dhara-laptop-20100610124450-4j735ukcrxe1dh77 --- addons/email_template/email_template.py | 32 ++++------- .../email_template/email_template_account.py | 15 ++--- .../email_template_account_view.xml | 3 - .../email_template/email_template_mailbox.py | 25 --------- .../email_template_mailbox_view.xml | 56 ++----------------- addons/email_template/email_template_view.xml | 10 +--- 6 files changed, 21 insertions(+), 120 deletions(-) diff --git a/addons/email_template/email_template.py b/addons/email_template/email_template.py index 6c46da458c6..1cef7aac6e3 100755 --- a/addons/email_template/email_template.py +++ b/addons/email_template/email_template.py @@ -102,9 +102,15 @@ class email_template(osv.osv): } _columns = { - 'name' : fields.char('Name of Template', size=100, required=True), + 'name' : fields.char('Name', size=100, required=True), 'object_name':fields.many2one('ir.model', 'Model'), 'model_int_name':fields.char('Model Internal Name', size=200,), + 'enforce_from_account':fields.many2one( + 'email_template.account', + string="Enforce From Account", + help="Emails will be sent only from this account."), + 'from_email' : fields.related('enforce_from_account', 'email_id', + type='char', string='From',), 'def_to':fields.char( 'Recepient (To)', size=250, @@ -141,7 +147,7 @@ class email_template(osv.osv): help="The text version of the mail", translate=True), 'use_sign':fields.boolean( - 'Use Signature', + 'Signature', help="the signature from the User details" "will be appened to the mail"), 'file_name':fields.char( @@ -168,11 +174,6 @@ class email_template(osv.osv): string="Allowed User Groups", help="Only users from these groups will be" " allowed to send mails from this Template"), - 'enforce_from_account':fields.many2one( - 'email_template.account', - string="Enforce From Account", - help="Emails will be sent only from this account.", - domain="[('company','=','yes')]"), 'model_object_field':fields.many2one( 'ir.model.fields', string="Field", @@ -218,6 +219,7 @@ class email_template(osv.osv): } _defaults = { + 'template_language' : lambda *a:'mako', } _sql_constraints = [ @@ -623,19 +625,6 @@ class email_template_preview(osv.osv_memory): _name = "email_template.preview" _description = "Email Template Preview" - def _get_model_recs(self, cr, uid, context=None): - if context is None: - context = {} - #Fills up the selection box which allows records from the selected object to be displayed - self.context = context - if 'active_id' in context.keys(): -# context['active_id'] = 5 - ref_obj_id = self.pool.get('email.template').read(cr, uid, context['active_id'], ['object_name'], context) - ref_obj_name = self.pool.get('ir.model').read(cr, uid, ref_obj_id[0], ['model'], context)['model'] - ref_obj_ids = self.pool.get(ref_obj_name).search(cr, uid, [], context=context) - ref_obj_recs = self.pool.get(ref_obj_name).name_get(cr, uid, ref_obj_ids, context) - return ref_obj_recs - def _default_model(self, cursor, user, context=None): """ Returns the default value for model field @@ -655,7 +644,6 @@ class email_template_preview(osv.osv_memory): 'email.template', 'Template', readonly=True), 'rel_model':fields.many2one('ir.model', 'Model', readonly=True), - 'rel_model_ref':fields.selection(_get_model_recs, 'Referred Document'), 'to':fields.char('To', size=250, readonly=True), 'cc':fields.char('CC', size=250, readonly=True), 'bcc':fields.char('BCC', size=250, readonly=True), @@ -668,7 +656,7 @@ class email_template_preview(osv.osv_memory): 'ref_template': lambda self, cr, uid, ctx:ctx['active_id'], 'rel_model': _default_model } - + # Need to check def on_change_ref(self, cr, uid, ids, rel_model_ref, context=None): if context is None: context = {} diff --git a/addons/email_template/email_template_account.py b/addons/email_template/email_template_account.py index 2503d19cd10..0bcf3c3d099 100755 --- a/addons/email_template/email_template_account.py +++ b/addons/email_template/email_template_account.py @@ -30,7 +30,7 @@ class email_template_account(osv.osv): 'text/html' ] _columns = { - 'name': fields.char('Email Account Desc', + 'name': fields.char('Description', size=64, required=True, readonly=True, select=True, states={'draft':[('readonly', False)]}), @@ -56,22 +56,16 @@ class email_template_account(osv.osv): size=120, invisible=True, required=False, readonly=True, states={'draft':[('readonly', False)]}), - 'smtptls':fields.boolean('Use TLS', + 'smtptls':fields.boolean('TLS', states={'draft':[('readonly', False)]}, readonly=True), - 'smtpssl':fields.boolean('Use SSL/TLS (only in python 2.6)', + 'smtpssl':fields.boolean('SSL/TLS (only in python 2.6)', states={'draft':[('readonly', False)]}, readonly=True), 'send_pref':fields.selection([ ('html', 'HTML otherwise Text'), ('text', 'Text otherwise HTML'), ('both', 'Both HTML & Text') ], 'Mail Format', required=True), - 'allowed_groups':fields.many2many( - 'res.groups', - 'account_group_rel', 'templ_id', 'group_id', - string="Allowed User Groups", - help="Only users from these groups will be" \ - "allowed to send mails from this ID"), 'company':fields.selection([ ('yes', 'Yes'), ('no', 'No') @@ -89,7 +83,7 @@ class email_template_account(osv.osv): ('suspended', 'Suspended'), ('approved', 'Approved') ], - 'Account Status', required=True, readonly=True), + 'Status', required=True, readonly=True), } _defaults = { @@ -102,7 +96,6 @@ class email_template_account(osv.osv): ['name'], context )['name'], - 'smtpssl':lambda * a:True, 'state':lambda * a:'draft', 'user':lambda self, cursor, user, context:user, 'send_pref':lambda * a: 'html', diff --git a/addons/email_template/email_template_account_view.xml b/addons/email_template/email_template_account_view.xml index 573b03e7027..7a0bc84538f 100755 --- a/addons/email_template/email_template_account_view.xml +++ b/addons/email_template/email_template_account_view.xml @@ -36,9 +36,6 @@ - - - diff --git a/addons/email_template/email_template_mailbox.py b/addons/email_template/email_template_mailbox.py index 1934f4e0227..45eef77729e 100755 --- a/addons/email_template/email_template_mailbox.py +++ b/addons/email_template/email_template_mailbox.py @@ -52,7 +52,6 @@ class email_template_mailbox(osv.osv): for attid in values['attachments_ids']: attachment = self.pool.get('ir.attachment').browse(cr, uid, attid, context)#,['datas_fname','datas']) payload[attachment.datas_fname] = attachment.datas - print "233333333333333" result = account_obj.send_mail(cr, uid, [values['account_id'][0]], {'To':values.get('email_to', u'') or u'', 'CC':values.get('email_cc', u'') or u'', 'BCC':values.get('email_bcc', u'') or u''}, @@ -153,30 +152,6 @@ class email_template_mailbox(osv.osv): 'folder': lambda * a: 'outbox', } - def search(self, cr, uid, args, offset=0, limit=None, order=None, context=None, count=False): - if context is None: - context = {} - if context.get('company', False): - users_groups = self.pool.get('res.users').browse(cr, uid, uid, context).groups_id - group_acc_rel = {} - #get all accounts and get a table of {group1:[account1,account2],group2:[account1]} - for each_account_id in self.pool.get('email_template.account').search(cr, uid, [('state', '=', 'approved'), ('company', '=', 'yes')], context=context): - account = self.pool.get('email_template.account').browse(cr, uid, each_account_id, context) - for each_group in account.allowed_groups: - if not account.id in group_acc_rel.get(each_group, []): - groups = group_acc_rel.get(each_group, []) - groups.append(account.id) - group_acc_rel[each_group] = groups - users_company_accounts = [] - for each_group in group_acc_rel.keys(): - if each_group in users_groups: - for each_account in group_acc_rel[each_group]: - if not each_account in users_company_accounts: - users_company_accounts.append(each_account) - args.append(('account_id', 'in', users_company_accounts)) - return super(osv.osv, self).search(cr, uid, args, offset, limit, - order, context=context, count=count) - email_template_mailbox() # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/email_template/email_template_mailbox_view.xml b/addons/email_template/email_template_mailbox_view.xml index f94fa886ee6..c521320bf3a 100755 --- a/addons/email_template/email_template_mailbox_view.xml +++ b/addons/email_template/email_template_mailbox_view.xml @@ -53,8 +53,8 @@ - -