From d754240f973617b1b3db88cd29a8655f5e0cd1d7 Mon Sep 17 00:00:00 2001 From: Mantavya Gajjar Date: Tue, 27 Apr 2010 16:50:56 +0530 Subject: [PATCH] [IMP]: implement new feature that will take care for the attachments bzr revid: mga@tinyerp.com-20100427112056-ba31r6ww8t97vydc --- addons/fetchmail/fetchmail.py | 26 ++++++++++++++------------ addons/fetchmail/fetchmail_view.xml | 4 ++-- 2 files changed, 16 insertions(+), 14 deletions(-) diff --git a/addons/fetchmail/fetchmail.py b/addons/fetchmail/fetchmail.py index 611b7c178fb..32b4ade2d27 100644 --- a/addons/fetchmail/fetchmail.py +++ b/addons/fetchmail/fetchmail.py @@ -137,7 +137,8 @@ class email_server(osv.osv): ('imap','IMAP Server'), ],'State', select=True, readonly=False), 'is_ssl':fields.boolean('SSL ?', required=False), - 'date': fields.date('Date'), + 'attach':fields.boolean('Add Attachments ?', required=False), + 'date': fields.date('Date', readonly=True, states={'draft':[('readonly',False)]}), 'user' : fields.char('User Name', size=256, required=True, readonly=True, states={'draft':[('readonly',False)]}), 'password' : fields.char('Password', size=1024, invisible=True, required=True, readonly=True, states={'draft':[('readonly',False)]}), 'note': fields.text('Description'), @@ -292,17 +293,18 @@ class email_server(osv.osv): else: logger.notifyChannel('imap', netsvc.LOG_WARNING, 'method def message_new is not define in model %s' % (model_pool._name)) return False - -# for attactment in attachents or []: -# data_attach = { -# 'name': attactment, -# 'datas':binascii.b2a_base64(str(attachents.get(attactment))), -# 'datas_fname': attactment, -# 'description': 'Mail attachment', -# 'res_model': server.object_id.model, -# 'res_id': res_id, -# } -# self.pool.get('ir.attachment').create(cr, uid, data_attach) + + if server.attach: + for attactment in attachents or []: + data_attach = { + 'name': attactment, + 'datas':binascii.b2a_base64(str(attachents.get(attactment))), + 'datas_fname': attactment, + 'description': 'Mail attachment', + 'res_model': server.object_id.model, + 'res_id': res_id, + } + self.pool.get('ir.attachment').create(cr, uid, data_attach) if server.action_id: action_pool = self.pool.get('ir.actions.server') diff --git a/addons/fetchmail/fetchmail_view.xml b/addons/fetchmail/fetchmail_view.xml index a3a8534b559..d457f9636f1 100644 --- a/addons/fetchmail/fetchmail_view.xml +++ b/addons/fetchmail/fetchmail_view.xml @@ -26,15 +26,15 @@ - - + +