diff --git a/addons/account_analytic_analysis/i18n/sr@latin.po b/addons/account_analytic_analysis/i18n/sr@latin.po index 6311bbb991c..53715611d10 100644 --- a/addons/account_analytic_analysis/i18n/sr@latin.po +++ b/addons/account_analytic_analysis/i18n/sr@latin.po @@ -8,19 +8,19 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-02-08 00:35+0000\n" -"PO-Revision-Date: 2011-11-03 22:52+0000\n" +"PO-Revision-Date: 2012-03-13 16:49+0000\n" "Last-Translator: Milan Milosevic \n" "Language-Team: Serbian latin \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 06:32+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-14 04:42+0000\n" +"X-Generator: Launchpad (build 14933)\n" #. module: account_analytic_analysis #: field:account.analytic.account,revenue_per_hour:0 msgid "Revenue per Time (real)" -msgstr "" +msgstr "Prihod po vremenu (realnom)" #. module: account_analytic_analysis #: help:account.analytic.account,remaining_ca:0 @@ -38,11 +38,13 @@ msgid "" "The contracts to be renewed because the deadline is passed or the working " "hours are higher than the allocated hours" msgstr "" +"Ugovor treba da se obnovi jer je rok pređen, ili ima više radnih sati od " +"određenih sati" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Pending contracts to renew with your customer" -msgstr "" +msgstr "Ugovori na čekanju za potvrdu sa Vašom strankom" #. module: account_analytic_analysis #: help:account.analytic.account,hours_qtt_non_invoiced:0 @@ -50,26 +52,28 @@ msgid "" "Number of time (hours/days) (from journal of type 'general') that can be " "invoiced if you invoice based on analytic account." msgstr "" +"Broj vremena (dana/sati) (iz dnevnika tipa 'opšte') koji se može fakturisati " +"ako Vam je fakturisanje bazirano na analitičkom kontu." #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Analytic Accounts with a past deadline in one month." -msgstr "" +msgstr "Analitička konta sa pređenim rokom u jednom mesecu." #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Group By..." -msgstr "" +msgstr "Grupiši po..." #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "End Date" -msgstr "" +msgstr "Datum završetka" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Create Invoice" -msgstr "" +msgstr "Napravi fakturu" #. module: account_analytic_analysis #: field:account.analytic.account,last_invoice_date:0 @@ -87,16 +91,18 @@ msgid "" "Number of time you spent on the analytic account (from timesheet). It " "computes quantities on all journal of type 'general'." msgstr "" +"Vreme potrošeno na analitički konto (s vremenske tabele). Obračunava " +"kvantitete na sve dnevnike tipa 'opšte'." #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Contracts in progress" -msgstr "" +msgstr "Ugovori u toku" #. module: account_analytic_analysis #: field:account.analytic.account,is_overdue_quantity:0 msgid "Overdue Quantity" -msgstr "" +msgstr "Preloraečnja" #. module: account_analytic_analysis #: model:ir.actions.act_window,help:account_analytic_analysis.action_account_analytic_overdue @@ -108,6 +114,11 @@ msgid "" "pending accounts and reopen or close the according to the negotiation with " "the customer." msgstr "" +"Naći ćete ovde ugovore koje treba obnoviti jer je rok istekao, ili su radni " +"sati veći od određenih. OpenERP automatski postavlja ta analitička konta na " +"stanje 'na čekanju', da bi se iznelo upozorenje za vreme sačuvavanja u " +"tabelama vremena. Prodavci bi trebalo da provere sva konta na čekanju i " +"zatvore ili ih ponovo otvore, u zavisnosti od dogovora sa strankama." #. module: account_analytic_analysis #: field:account.analytic.account,ca_theorical:0 @@ -117,7 +128,7 @@ msgstr "Teoretski prihod" #. module: account_analytic_analysis #: field:account.analytic.account,hours_qtt_non_invoiced:0 msgid "Uninvoiced Time" -msgstr "" +msgstr "Neobračunato vreme" #. module: account_analytic_analysis #: help:account.analytic.account,last_worked_invoiced_date:0 @@ -131,7 +142,7 @@ msgstr "" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "To Renew" -msgstr "" +msgstr "Za obnovu" #. module: account_analytic_analysis #: field:account.analytic.account,last_worked_date:0 @@ -141,24 +152,25 @@ msgstr "Datum poslednje Cene / Rada" #. module: account_analytic_analysis #: field:account.analytic.account,hours_qtt_invoiced:0 msgid "Invoiced Time" -msgstr "" +msgstr "Obračunato vreme" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "" "A contract in OpenERP is an analytic account having a partner set on it." msgstr "" +"Ugovor u OpenERP-u je analitički konto sa partnerom koji mu je pripisan." #. module: account_analytic_analysis #: field:account.analytic.account,remaining_hours:0 msgid "Remaining Time" -msgstr "" +msgstr "Preostalo vreme" #. module: account_analytic_analysis #: model:ir.actions.act_window,name:account_analytic_analysis.action_account_analytic_overdue #: model:ir.ui.menu,name:account_analytic_analysis.menu_action_account_analytic_overdue msgid "Contracts to Renew" -msgstr "" +msgstr "Ugovori za obnovu" #. module: account_analytic_analysis #: field:account.analytic.account,theorical_margin:0 @@ -168,7 +180,7 @@ msgstr "Teoretska stopa marže" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid " +1 Month" -msgstr "" +msgstr " +1 mesec" #. module: account_analytic_analysis #: help:account.analytic.account,ca_theorical:0 @@ -183,7 +195,7 @@ msgstr "" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Pending" -msgstr "" +msgstr "Na čekanju" #. module: account_analytic_analysis #: field:account.analytic.account,ca_to_invoice:0 @@ -198,7 +210,7 @@ msgstr "Izračunato pomoću formule: Fakturisani iznos - Ukupni troškovi." #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Parent" -msgstr "" +msgstr "Parent" #. module: account_analytic_analysis #: field:account.analytic.account,user_ids:0 @@ -214,7 +226,7 @@ msgstr "Izračunava se pomoću formule: (Realna marža / ukupni troškovi) * 100 #. module: account_analytic_analysis #: model:ir.model,name:account_analytic_analysis.model_account_analytic_analysis_summary_user msgid "Hours Summary by User" -msgstr "Ukupno sati po Korisniku" +msgstr "Ukupno sati po korisniku" #. module: account_analytic_analysis #: field:account.analytic.account,ca_invoiced:0 @@ -229,7 +241,7 @@ msgstr "Datum poslednjeg obračunatog troška" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Contract" -msgstr "" +msgstr "Ugovor" #. module: account_analytic_analysis #: field:account.analytic.account,real_margin_rate:0 @@ -264,7 +276,7 @@ msgstr "Preostali prihod" #. module: account_analytic_analysis #: help:account.analytic.account,remaining_hours:0 msgid "Computed using the formula: Maximum Time - Total Time" -msgstr "" +msgstr "Obračunato koristeći formulu: Maksimalno vreme - ukupno vreme" #. module: account_analytic_analysis #: help:account.analytic.account,hours_qtt_invoiced:0 @@ -272,6 +284,8 @@ msgid "" "Number of time (hours/days) that can be invoiced plus those that already " "have been invoiced." msgstr "" +"Trajanje vremena (dani/sati) koji se mogu obračunati, plus ono koje je već " +"obračunato." #. module: account_analytic_analysis #: help:account.analytic.account,ca_to_invoice:0 @@ -285,7 +299,7 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,revenue_per_hour:0 msgid "Computed using the formula: Invoiced Amount / Total Time" -msgstr "" +msgstr "Izračunato koristeći formulu: obračunat iznos / ukupno vreme" #. module: account_analytic_analysis #: field:account.analytic.account,total_cost:0 @@ -304,18 +318,18 @@ msgstr "Mesec" #: field:account_analytic_analysis.summary.user,account_id:0 #: model:ir.model,name:account_analytic_analysis.model_account_analytic_account msgid "Analytic Account" -msgstr "Analitički nalog" +msgstr "Analitički konto" #. module: account_analytic_analysis #: model:ir.actions.act_window,name:account_analytic_analysis.action_account_analytic_overdue_all #: model:ir.ui.menu,name:account_analytic_analysis.menu_action_account_analytic_overdue_all msgid "Contracts" -msgstr "" +msgstr "Ugovori" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Manager" -msgstr "" +msgstr "Rukovodilac" #. module: account_analytic_analysis #: model:ir.actions.act_window,name:account_analytic_analysis.action_hr_tree_invoiced_all @@ -326,22 +340,22 @@ msgstr "Sve neobračunate stavke" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 msgid "If invoice from the costs, this is the date of the latest invoiced." -msgstr "" +msgstr "ako se obračunava iz troškova, ovo je datum poslednjeg obračuna." #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Associated Partner" -msgstr "" +msgstr "Povezani partner" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Open" -msgstr "" +msgstr "Otvori" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Contracts that are not assigned to an account manager." -msgstr "" +msgstr "Ugovori koji oš nisu pripisani rukovodiocu naloga." #. module: account_analytic_analysis #: field:account.analytic.account,hours_quantity:0 diff --git a/addons/account_bank_statement_extensions/i18n/sr@latin.po b/addons/account_bank_statement_extensions/i18n/sr@latin.po index b8551612a9e..369cc5f11a1 100644 --- a/addons/account_bank_statement_extensions/i18n/sr@latin.po +++ b/addons/account_bank_statement_extensions/i18n/sr@latin.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-02-08 00:35+0000\n" -"PO-Revision-Date: 2012-03-07 18:50+0000\n" +"PO-Revision-Date: 2012-03-13 16:55+0000\n" "Last-Translator: Milan Milosevic \n" "Language-Team: Serbian Latin \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-03-08 04:43+0000\n" -"X-Generator: Launchpad (build 14914)\n" +"X-Launchpad-Export-Date: 2012-03-14 04:43+0000\n" +"X-Generator: Launchpad (build 14933)\n" #. module: account_bank_statement_extensions #: view:account.bank.statement.line:0 @@ -274,7 +274,7 @@ msgstr "Podređeni kodovi" #. module: account_bank_statement_extensions #: view:confirm.statement.line:0 msgid "Are you sure you want to confirm the selected Bank Statement lines ?" -msgstr "Da li zaista želite da izabrane redove izvoda banke?" +msgstr "Da li zaista želite sa potvrdite izabrane redove izvoda banke?" #. module: account_bank_statement_extensions #: constraint:account.bank.statement.line:0 @@ -300,82 +300,82 @@ msgstr "Nacrt redova izvoda." #. module: account_bank_statement_extensions #: view:account.bank.statement.line:0 msgid "Glob. Am." -msgstr "" +msgstr "Glob.izn." #. module: account_bank_statement_extensions #: model:ir.model,name:account_bank_statement_extensions.model_account_bank_statement_line msgid "Bank Statement Line" -msgstr "" +msgstr "Red izvoda banke" #. module: account_bank_statement_extensions #: field:account.bank.statement.line.global,code:0 msgid "Code" -msgstr "" +msgstr "Kod" #. module: account_bank_statement_extensions #: field:account.bank.statement.line,counterparty_name:0 msgid "Counterparty Name" -msgstr "" +msgstr "Ime druge strane" #. module: account_bank_statement_extensions #: field:account.bank.statement.line.global,name:0 msgid "Communication" -msgstr "" +msgstr "Komunikacija" #. module: account_bank_statement_extensions #: model:ir.model,name:account_bank_statement_extensions.model_res_partner_bank msgid "Bank Accounts" -msgstr "" +msgstr "Bankovni računi" #. module: account_bank_statement_extensions #: constraint:account.bank.statement:0 msgid "The journal and period chosen have to belong to the same company." -msgstr "" +msgstr "Dnevnik i izabrani period treba da pripadaju istom preduzeću." #. module: account_bank_statement_extensions #: model:ir.model,name:account_bank_statement_extensions.model_account_bank_statement msgid "Bank Statement" -msgstr "" +msgstr "Izvod banke" #. module: account_bank_statement_extensions #: view:account.bank.statement.line:0 msgid "Statement Line" -msgstr "" +msgstr "Red izvoda" #. module: account_bank_statement_extensions #: sql_constraint:account.bank.statement.line.global:0 msgid "The code must be unique !" -msgstr "" +msgstr "Kod mora biti jedinstven !" #. module: account_bank_statement_extensions #: field:account.bank.statement.line.global,bank_statement_line_ids:0 #: model:ir.actions.act_window,name:account_bank_statement_extensions.action_bank_statement_line #: model:ir.ui.menu,name:account_bank_statement_extensions.bank_statement_line msgid "Bank Statement Lines" -msgstr "" +msgstr "Redovi izvoda banke" #. module: account_bank_statement_extensions #: view:account.bank.statement.line.global:0 msgid "Child Batch Payments" -msgstr "" +msgstr "Podređena grupna plaćanja" #. module: account_bank_statement_extensions #: view:cancel.statement.line:0 #: view:confirm.statement.line:0 msgid "Cancel" -msgstr "" +msgstr "Otkaži" #. module: account_bank_statement_extensions #: view:account.bank.statement.line:0 msgid "Statement Lines" -msgstr "" +msgstr "Redovi izvoda" #. module: account_bank_statement_extensions #: view:account.bank.statement.line:0 msgid "Total Amount" -msgstr "" +msgstr "Ukupan iznos" #. module: account_bank_statement_extensions #: field:account.bank.statement.line,globalisation_id:0 msgid "Globalisation ID" -msgstr "" +msgstr "ID globalizacije" diff --git a/addons/base_iban/i18n/gu.po b/addons/base_iban/i18n/gu.po new file mode 100644 index 00000000000..e5cb9e63433 --- /dev/null +++ b/addons/base_iban/i18n/gu.po @@ -0,0 +1,94 @@ +# Gujarati translation for openobject-addons +# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2012. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-02-08 00:36+0000\n" +"PO-Revision-Date: 2012-03-12 15:04+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Gujarati \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2012-03-13 05:08+0000\n" +"X-Generator: Launchpad (build 14933)\n" + +#. module: base_iban +#: constraint:res.partner.bank:0 +msgid "" +"\n" +"Please define BIC/Swift code on bank for bank type IBAN Account to make " +"valid payments" +msgstr "" + +#. module: base_iban +#: code:addons/base_iban/base_iban.py:139 +#, python-format +msgid "This IBAN does not pass the validation check, please verify it" +msgstr "" + +#. module: base_iban +#: model:res.partner.bank.type,format_layout:base_iban.bank_iban +msgid "%(bank_name)s: IBAN %(acc_number)s - BIC %(bank_bic)s" +msgstr "" + +#. module: base_iban +#: model:res.partner.bank.type.field,name:base_iban.bank_swift_field +msgid "bank_bic" +msgstr "" + +#. module: base_iban +#: model:res.partner.bank.type.field,name:base_iban.bank_zip_field +msgid "zip" +msgstr "" + +#. module: base_iban +#: help:res.partner.bank,iban:0 +msgid "International Bank Account Number" +msgstr "" + +#. module: base_iban +#: model:ir.model,name:base_iban.model_res_partner_bank +msgid "Bank Accounts" +msgstr "" + +#. module: base_iban +#: model:res.partner.bank.type.field,name:base_iban.bank_country_field +msgid "country_id" +msgstr "" + +#. module: base_iban +#: code:addons/base_iban/base_iban.py:136 +#, python-format +msgid "" +"The IBAN does not seem to be correct. You should have entered something like " +"this %s" +msgstr "" + +#. module: base_iban +#: field:res.partner.bank,iban:0 +msgid "IBAN" +msgstr "" + +#. module: base_iban +#: code:addons/base_iban/base_iban.py:140 +#, python-format +msgid "The IBAN is invalid, it should begin with the country code" +msgstr "" + +#. module: base_iban +#: model:res.partner.bank.type,name:base_iban.bank_iban +msgid "IBAN Account" +msgstr "" + +#. module: base_iban +#: constraint:res.partner.bank:0 +msgid "The RIB and/or IBAN is not valid" +msgstr "" + +#~ msgid "Invalid XML for View Architecture!" +#~ msgstr "દ્રશ્ય બંધારણ માટે અમાન્ય એક્સ.એમ.એલ!" diff --git a/addons/crm/crm.py b/addons/crm/crm.py index 7f0fb344492..1020e77d775 100644 --- a/addons/crm/crm.py +++ b/addons/crm/crm.py @@ -258,19 +258,37 @@ class crm_base(object): data.update(self.onchange_partner_address_id(cr, uid, ids, addr['contact'])['value']) return {'value': data} + def case_get_note_msg_prefix(self, cr, uid, id, context=None): + return '' + def case_open_send_note(self, cr, uid, ids, context=None): + for id in ids: + msg = '%s has been opened.' % (self.case_get_note_msg_prefix(cr, uid, id, context=context)) + self.message_append_note(cr, uid, [id], 'System Notification', msg, context=context) return True def case_close_send_note(self, cr, uid, ids, context=None): + for id in ids: + msg = '%s has been closed.'% (self.case_get_note_msg_prefix(cr, uid, id, context=context)) + self.message_append_note(cr, uid, [id], 'System Notification', msg, context=context) return True def case_cancel_send_note(self, cr, uid, ids, context=None): + for id in ids: + msg = '%s has been canceled.' % (self.case_get_note_msg_prefix(cr, uid, id, context=context)) + self.message_append_note(cr, uid, [id], 'System Notification', msg, context=context) return True def case_pending_send_note(self, cr, uid, ids, context=None): + for id in ids: + msg = '%s is now pending.' % (self.case_get_note_msg_prefix(cr, uid, id, context=context)) + self.message_append_note(cr, uid, [id], 'System Notification', msg, context=context) return True def case_reset_send_note(self, cr, uid, ids, context=None): + for id in ids: + msg = '%s has been renewed.' % (self.case_get_note_msg_prefix(cr, uid, id, context=context)) + self.message_append_note(cr, uid, [id], 'System Notification', msg, context=context) return True def case_open(self, cr, uid, ids, context=None): @@ -483,6 +501,7 @@ class crm_case(crm_base): cases = self.browse(cr, uid, ids) cases[0].state # to fill the browse record cache self.write(cr, uid, ids, {'state': state, 'active': True}) + self.case_reset_send_note(cr, uid, ids, context=context) self._action(cr, uid, cases, state) return True diff --git a/addons/crm/crm_lead.py b/addons/crm/crm_lead.py index a8ec106e6de..44057549543 100644 --- a/addons/crm/crm_lead.py +++ b/addons/crm/crm_lead.py @@ -226,7 +226,7 @@ class crm_lead(crm_case, osv.osv): def create(self, cr, uid, vals, context=None): obj_id = super(crm_lead, self).create(cr, uid, vals, context) - self.case_create_send_note(cr, uid, [obj_id], context=context) + self.create_send_note(cr, uid, [obj_id], context=context) return obj_id @@ -271,41 +271,30 @@ class crm_lead(crm_case, osv.osv): def stage_find_won(self, cr, uid, section_id): return self.stage_find_percent(cr, uid, 100.0, section_id) - def get_needaction_user_id(self, cr, uid, ids, name, arg, context=None): - result = {} + def get_needaction_user_ids(self, cr, uid, ids, context=None): + result = dict.fromkeys(ids, []) for obj in self.browse(cr, uid, ids, context=context): - result[obj.id] = False - if (obj.state == 'draft' and obj.user_id): - result[obj.id] = obj.user_id.id + if obj.state == 'draft' and obj.user_id: + result[obj.id] = [obj.user_id.id] return result - def case_reset_send_note(self, cr, uid, ids, context=None): - for lead in self.browse(cr, uid, ids, context=context): - message = _("%s has been renewed.") % ('Opportunity' if lead.type == 'opportunity' else 'Lead') - lead.message_append_note('' ,message) - return True + def message_get_subscribers(self, cr, uid, ids, context=None): + sub_ids = self.message_get_subscribers_ids(cr, uid, ids, context=context); + for obj in self.browse(cr, uid, ids, context=context): + if obj.user_id: + sub_ids.append(obj.user_id.id) + return self.pool.get('res.users').read(cr, uid, sub_ids, context=context) - def case_create_send_note(self, cr, uid, ids, context=None): - for lead in self.browse(cr, uid, ids, context=context): - self.message_subscribe(cr, uid, ids, [lead.user_id.id], context=context) - message = _("%s has been created.") % ('Opportunity' if lead.type == 'opportunity' and lead.state == 'draft' else 'Lead') - self.message_append_note(cr, uid, ids, _('System notification'), + def create_send_note(self, cr, uid, ids, context=None): + for id in ids: + message = _("%s has been created.")% (self.case_get_note_msg_prefix(cr, uid, id, context=context)) + self.message_append_note(cr, uid, [id], _('System notification'), message, type='notification', context=context) return True - def case_open_send_note(self, cr, uid, ids, context=None): - for lead in self.browse(cr, uid, ids, context=context): - if lead.state == 'draft' and lead.state == 'pending': - return False - message = _("%s has been opened.") % ('Opportunity' if lead.type == 'opportunity' else 'Lead') - lead.message_append_note('' ,message) - return True - - def case_close_send_note(self, cr, uid, ids, context=None): - for lead in self.browse(cr, uid, ids, context=context): - message = _("%s has been closed.") % ('Opportunity' if lead.type == 'opportunity' else 'Lead') - lead.message_append_note('' ,message) - return True + def case_get_note_msg_prefix(self, cr, uid, id, context=None): + lead = self.browse(cr, uid, [id], context=context)[0] + return ('Opportunity' if lead.type == 'opportunity' else 'Lead') def case_mark_lost_send_note(self, cr, uid, ids, context=None): for opportunity in self.browse(cr, uid, ids, context=context): @@ -319,44 +308,33 @@ class crm_lead(crm_case, osv.osv): opportunity.message_append_note('' ,message) return True - def case_cancel_send_note(self, cr, uid, ids, context=None): - for lead in self.browse(cr, uid, ids, context=context): - message = _("%s has been cancelled.") % ('Opportunity' if lead.type == 'opportunity' else 'Lead') - lead.message_append_note('' ,message) - return True - - def case_pending_send_note(self, cr, uid, ids, context=None): - for lead in self.browse(cr, uid, ids, context=context): - message = _("%s is pending.") % ('Opportunity' if lead.type == 'opportunity' else 'Lead') - lead.message_append_note('' ,message) - return True - def case_escalate_send_note(self, cr, uid, ids, context=None): for lead in self.browse(cr, uid, ids, context=context): message = _("Lead has been escalated.") lead.message_append_note('' ,message) return True - def case_phonecall_send_note(self, cr, uid, ids, case, phonecall, action, context=None): + def schedule_phonecall_send_note(self, cr, uid, ids, case, phonecall, action, context=None): for obj in phonecall.browse(cr, uid, ids, context=context): message = _("%s a call for the %s.") % (action, obj.date) case.message_append_note('', message) - def case_partner_send_note(self, cr, uid, ids, context=None): + def _lead_set_partner_send_note(self, cr, uid, ids, context=None): for lead in self.browse(cr, uid, ids, context=context): message = _("Partner has been created") lead.message_append_note('' ,message) return True def case_open(self, cr, uid, ids, context=None): - res = super(crm_lead, self).case_open(cr, uid, ids, context) for lead in self.browse(cr, uid, ids, context=context): - value = {'date_open': time.strftime('%Y-%m-%d %H:%M:%S')} - self.write(cr, uid, [lead.id], value) - if lead.type == 'opportunity' and not lead.stage_id: - stage_id = self.stage_find(cr, uid, lead.section_id.id or False, [('sequence','>',0)]) - if stage_id: - self.stage_set(cr, uid, [lead.id], stage_id) + if lead.state == 'draft': + value = {'date_open': time.strftime('%Y-%m-%d %H:%M:%S')} + self.write(cr, uid, [lead.id], value) + if lead.type == 'opportunity' and not lead.stage_id: + stage_id = self.stage_find(cr, uid, lead.section_id.id or False, [('sequence','>',0)]) + if stage_id: + self.stage_set(cr, uid, [lead.id], stage_id) + res = super(crm_lead, self).case_open(cr, uid, ids, context) return res def case_close(self, cr, uid, ids, context=None): @@ -376,7 +354,6 @@ class crm_lead(crm_case, osv.osv): """ res = super(crm_lead, self).case_reset(cr, uid, ids, context) self.write(cr, uid, ids, {'stage_id': False, 'probability': 0.0}) - self.case_reset_send_note(cr, uid, ids, context=context) return res def case_mark_lost(self, cr, uid, ids, context=None): @@ -505,7 +482,7 @@ class crm_lead(crm_case, osv.osv): subject = subject[0] + ", ".join(subject[1:]) details = "\n\n".join(details) - return opportunity.message_append_note(subject, body=details) + return self.message_append_note(cr, uid, [opportunity_id], subject, body=details) def _merge_opportunity_history(self, cr, uid, opportunity_id, opportunities, context=None): message = self.pool.get('mail.message') @@ -661,7 +638,8 @@ class crm_lead(crm_case, osv.osv): res_partner.write(cr, uid, partner_id, {'section_id': lead.section_id.id or False}) contact_id = res_partner.address_get(cr, uid, [partner_id])['default'] res = lead.write({'partner_id' : partner_id, 'partner_address_id': contact_id}, context=context) - self.case_partner_send_note(cr, uid, [lead.id], context) + self._lead_set_partner_send_note(cr, uid, [lead.id], context) + return res def _lead_create_partner_address(self, cr, uid, lead, partner_id, context=None): @@ -767,7 +745,7 @@ class crm_lead(crm_case, osv.osv): if action == 'log': phonecall.case_close(cr, uid, [new_id]) phonecall_dict[lead.id] = new_id - self.case_phonecall_send_note(cr, uid, [new_id], lead, phonecall, action, context=context) + self.schedule_phonecall_send_note(cr, uid, [new_id], lead, phonecall, action, context=context) return phonecall_dict diff --git a/addons/crm/crm_lead_view.xml b/addons/crm/crm_lead_view.xml index 98e1ee2f6b5..3d1d2fa5803 100644 --- a/addons/crm/crm_lead_view.xml +++ b/addons/crm/crm_lead_view.xml @@ -77,10 +77,6 @@ icon="gtk-go-forward" context="{'stage_type': 'lead'}" /> -