diff --git a/addons/account_chart/i18n/ru.po b/addons/account_chart/i18n/ru.po index eaa300a9762..a7f14094a82 100644 --- a/addons/account_chart/i18n/ru.po +++ b/addons/account_chart/i18n/ru.po @@ -7,16 +7,16 @@ msgstr "" "Project-Id-Version: OpenERP Server 5.0.4\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2009-08-28 16:01+0000\n" -"PO-Revision-Date: 2009-04-10 14:08+0000\n" -"Last-Translator: <>\n" +"PO-Revision-Date: 2010-03-30 10:18+0000\n" +"Last-Translator: Nikolay Chesnokov \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-03-30 04:16+0000\n" +"X-Launchpad-Export-Date: 2010-03-31 03:55+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: account_chart #: model:ir.module.module,description:account_chart.module_meta_information msgid "Remove minimal account chart" -msgstr "" +msgstr "Удалите минимальный план счетов" diff --git a/addons/base_contact/i18n/bg.po b/addons/base_contact/i18n/bg.po index 80c573d1141..dfdcd14a63b 100644 --- a/addons/base_contact/i18n/bg.po +++ b/addons/base_contact/i18n/bg.po @@ -7,13 +7,13 @@ msgstr "" "Project-Id-Version: OpenERP Server 5.0.0\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2009-08-28 16:01+0000\n" -"PO-Revision-Date: 2009-09-08 13:01+0000\n" -"Last-Translator: Fabien (Open ERP) \n" +"PO-Revision-Date: 2010-03-30 19:31+0000\n" +"Last-Translator: Boris \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-03-30 03:59+0000\n" +"X-Launchpad-Export-Date: 2010-03-31 03:55+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: base_contact @@ -37,7 +37,7 @@ msgstr "" #. module: base_contact #: field:res.partner.job,function_id:0 msgid "Partner Function" -msgstr "" +msgstr "Функция ня партньора" #. module: base_contact #: model:ir.actions.act_window,name:base_contact.action_partner_contact_form @@ -57,12 +57,12 @@ msgstr "" #. module: base_contact #: selection:res.partner.job,state:0 msgid "Current" -msgstr "" +msgstr "Текущ" #. module: base_contact #: field:res.partner.contact,first_name:0 msgid "First Name" -msgstr "Собствено име" +msgstr "Собствено Име" #. module: base_contact #: model:ir.model,name:base_contact.model_res_partner_job @@ -72,7 +72,7 @@ msgstr "" #. module: base_contact #: field:res.partner.job,other:0 msgid "Other" -msgstr "" +msgstr "Друго" #. module: base_contact #: model:process.transition,name:base_contact.process_transition_contacttofunction0 @@ -286,7 +286,7 @@ msgstr "" #. module: base_contact #: model:process.node,name:base_contact.process_node_partners0 msgid "Partners" -msgstr "" +msgstr "Партньори" #. module: base_contact #: model:process.node,name:base_contact.process_node_addresses0 diff --git a/addons/board_account/i18n/ru.po b/addons/board_account/i18n/ru.po index 51214d18902..fd7e9d8b9fe 100644 --- a/addons/board_account/i18n/ru.po +++ b/addons/board_account/i18n/ru.po @@ -7,13 +7,13 @@ msgstr "" "Project-Id-Version: OpenERP Server 5.0.0\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2009-08-28 16:01+0000\n" -"PO-Revision-Date: 2009-09-08 12:16+0000\n" -"Last-Translator: Sergei Kostigoff \n" +"PO-Revision-Date: 2010-03-30 10:23+0000\n" +"Last-Translator: Nikolay Chesnokov \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-03-30 04:12+0000\n" +"X-Launchpad-Export-Date: 2010-03-31 03:55+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: board_account @@ -57,12 +57,12 @@ msgstr "Расходы для выставления счетов" #. module: board_account #: view:board.board:0 msgid "Aged receivables" -msgstr "" +msgstr "Повременный расход" #. module: board_account #: model:ir.module.module,shortdesc:board_account.module_meta_information msgid "Board for accountant" -msgstr "" +msgstr "Панель контролёра счетов" #. module: board_account #: model:ir.actions.act_window,name:board_account.action_aged_income @@ -77,7 +77,7 @@ msgstr "Мои индикаторы" #. module: board_account #: constraint:ir.actions.act_window:0 msgid "Invalid model name in the action definition." -msgstr "" +msgstr "Недопустимое имя модели в определении действия" #. module: board_account #: model:ir.ui.menu,name:board_account.next_id_68 @@ -87,9 +87,9 @@ msgstr "Бухгалтерский" #. module: board_account #: view:board.board:0 msgid "Account Board" -msgstr "" +msgstr "Панель счетов" #. module: board_account #: view:board.board:0 msgid "Aged income" -msgstr "" +msgstr "Повременный доход" diff --git a/addons/board_project/i18n/ru.po b/addons/board_project/i18n/ru.po index 074cd66183f..60115d0e65b 100644 --- a/addons/board_project/i18n/ru.po +++ b/addons/board_project/i18n/ru.po @@ -7,13 +7,13 @@ msgstr "" "Project-Id-Version: OpenERP Server 5.0.0\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2009-08-28 16:01+0000\n" -"PO-Revision-Date: 2009-09-08 12:27+0000\n" -"Last-Translator: Fabien (Open ERP) \n" +"PO-Revision-Date: 2010-03-30 10:26+0000\n" +"Last-Translator: Nikolay Chesnokov \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-03-30 04:00+0000\n" +"X-Launchpad-Export-Date: 2010-03-31 03:55+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: board_project @@ -30,7 +30,7 @@ msgstr "Табели" #. module: board_project #: constraint:ir.actions.act_window:0 msgid "Invalid model name in the action definition." -msgstr "" +msgstr "Недопустимое имя модели в определении действия" #. module: board_project #: view:board.board:0 @@ -63,7 +63,7 @@ msgstr "Панель аналитики проекта" #. module: board_project #: model:ir.module.module,shortdesc:board_project.module_meta_information msgid "Board for project users" -msgstr "" +msgstr "Панель для пользователей проекта" #. module: board_project #: model:ir.actions.act_window,name:board_project.action_project_pipeline_user @@ -73,7 +73,7 @@ msgstr "Конвейер заданий" #. module: board_project #: view:board.board:0 msgid "My Planning" -msgstr "" +msgstr "Мой план" #. module: board_project #: view:board.board:0 @@ -136,4 +136,4 @@ msgstr "Мои конвейеры пользователей" #. module: board_project #: view:board.board:0 msgid "My Timesheet" -msgstr "" +msgstr "Мой табель" diff --git a/addons/crm/__terp__.py b/addons/crm/__terp__.py index b2a40c822a6..ef5b80cc3b2 100644 --- a/addons/crm/__terp__.py +++ b/addons/crm/__terp__.py @@ -70,7 +70,6 @@ between mails and Open ERP.""", 'crm_lead_menu.xml', 'crm_meeting_wizard.xml', 'crm_meeting_view.xml', - 'crm_meeting_menu.xml', 'crm_phonecall_wizard.xml', 'crm_phonecall_view.xml', 'crm_phonecall_menu.xml', diff --git a/addons/crm/crm.py b/addons/crm/crm.py index 45d043426cd..a6baed45b4e 100644 --- a/addons/crm/crm.py +++ b/addons/crm/crm.py @@ -316,14 +316,19 @@ class crm_case(osv.osv): self.write(cr, uid, [case.id], {'stage_id': s[section][st]}) return True - def history(self, cr, uid, ids, keyword, history=False, email=False, details=None, context={}): + def history(self, cr, uid, ids, keyword, history=False, email=False, details=None, email_from=False, context={}): cases = self.browse(cr, uid, ids, context=context) - return self.__history(cr, uid, cases, keyword=keyword,\ - history=history, email=email, details=details,\ + return self._history(cr, uid, cases, keyword=keyword,\ + history=history, email=email, details=details, email_from=email_from, \ context=context) def __history(self, cr, uid, cases, keyword, history=False, email=False, details=None, email_from=False, context={}): - model_obj = self.pool.get('ir.model') + model_obj = self.pool.get('ir.model') + if email and type(email) == type([]): + email = ','.join(email) + if email_from and type(email_from) == type([]): + email_from = ','.join(email_from) + for case in cases: model_ids = model_obj.search(cr, uid, [('model','=',case._name)]) data = { @@ -339,11 +344,13 @@ class crm_case(osv.osv): obj = self.pool.get('crm.case.history') data['description'] = details or case.description data['email_to'] = email or \ + (case.section_id and case.section_id.reply_to) or \ (case.user_id and case.user_id.address_id and \ - case.user_id.address_id.email) or False + case.user_id.address_id.email) or tools.config.get('email_from',False) data['email_from'] = email_from or \ + (case.section_id and case.section_id.reply_to) or \ (case.user_id and case.user_id.address_id and \ - case.user_id.address_id.email) or False + case.user_id.address_id.email) or tools.config.get('email_from',False) res = obj.create(cr, uid, data, context) return True _history = __history diff --git a/addons/crm/crm_action_rule.py b/addons/crm/crm_action_rule.py index 1e7c50588db..cd9c8f39ede 100644 --- a/addons/crm/crm_action_rule.py +++ b/addons/crm/crm_action_rule.py @@ -55,11 +55,14 @@ class case(osv.osv): if case.section_id.reply_to and case.email_from: src = case.email_from dest = case.section_id.reply_to - body = case.email_last or case.description + body = "" + body = case.email_last or case.description if not destination: src, dest = dest, src - if case.user_id.signature: - body += '\n\n%s' % (case.user_id.signature or '') + if body and case.user_id.signature: + body += '\n\n%s' % (case.user_id.signature) + + body = self.format_body(body) dest = [dest] attach_to_send = None @@ -74,15 +77,16 @@ class case(osv.osv): src, dest, "Reminder: [%s] %s" % (str(case.id), case.name, ), - self.format_body(body), + body, reply_to=case.section_id.reply_to, openobject_id=str(case.id), attach=attach_to_send ) - if flag: - raise osv.except_osv(_('Email!'),("Email Successfully Sent")) - else: - raise osv.except_osv(_('Email Fail!'),("Email is not sent successfully")) + self._history(cr, uid, [case], _('Send'), history=True, email=dest, details=body, email_from=src) + #if flag: + # raise osv.except_osv(_('Email!'),("Email Successfully Sent")) + #else: + # raise osv.except_osv(_('Email Fail!'),("Email is not sent successfully")) return True def _check(self, cr, uid, ids=False, context={}): @@ -120,6 +124,23 @@ case() class base_action_rule(osv.osv): _inherit = 'base.action.rule' _description = 'Action Rules' + + def email_send(self, cr, uid, obj, emails, body, emailfrom=tools.config.get('email_from',False), context={}): + body = self.format_mail(obj, body) + if not emailfrom: + if hasattr(obj, 'user_id') and obj.user_id and obj.user_id.address_id and obj.user_id.address_id.email: + emailfrom = obj.user_id.address_id.email + + name = '[%d] %s' % (obj.id, tools.ustr(obj.name)) + emailfrom = tools.ustr(emailfrom) + if hasattr(obj, 'section_id') and obj.section_id and obj.section_id.reply_to: + reply_to = obj.section_id.reply_to + else: + reply_to = emailfrom + if not emailfrom: + raise osv.except_osv(_('Error!'), + _("No E-Mail ID Found for your Company address!")) + return tools.email_send(emailfrom, emails, name, body, reply_to=reply_to, openobject_id=str(obj.id)) def do_check(self, cr, uid, action, obj, context={}): ok = super(base_action_rule, self).do_check(cr, uid, action, obj, context=context) @@ -146,7 +167,7 @@ class base_action_rule(osv.osv): res = super(base_action_rule, self).do_action(cr, uid, action, model_obj, obj, context=context) write = {} - if action.act_section_id: + if hasattr(action, act_section_id) and action.act_section_id: obj.section_id = action.act_section_id write['section_id'] = action.act_section_id.id diff --git a/addons/crm/crm_claims_view.xml b/addons/crm/crm_claims_view.xml index c1a3345e51b..2104c1c8d94 100644 --- a/addons/crm/crm_claims_view.xml +++ b/addons/crm/crm_claims_view.xml @@ -157,7 +157,7 @@