diff --git a/addons/account_analytic_analysis/i18n/mk.po b/addons/account_analytic_analysis/i18n/mk.po new file mode 100644 index 00000000000..81d5d115207 --- /dev/null +++ b/addons/account_analytic_analysis/i18n/mk.po @@ -0,0 +1,296 @@ +# Macedonian translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2011-01-11 11:14+0000\n" +"PO-Revision-Date: 2011-09-14 08:10+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Macedonian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-09-15 04:47+0000\n" +"X-Generator: Launchpad (build 13921)\n" + +#. module: account_analytic_analysis +#: help:account.analytic.account,hours_qtt_invoiced:0 +msgid "" +"Number of hours that can be invoiced plus those that already have been " +"invoiced." +msgstr "" +"Број на часови кои можат да бидат фактурирани, плус часови кои веќе се " +"фактурирани." + +#. module: account_analytic_analysis +#: help:account.analytic.account,remaining_ca:0 +msgid "Computed using the formula: Max Invoice Price - Invoiced Amount." +msgstr "" +"Пресметано според формулата: Максимална фактурирана цена - Фактурирана цена." + +#. module: account_analytic_analysis +#: help:account.analytic.account,remaining_hours:0 +msgid "Computed using the formula: Maximum Quantity - Hours Tot." +msgstr "Пресметано според формулата: Максимална количина - Вкупно часови" + +#. module: account_analytic_analysis +#: code:addons/account_analytic_analysis/account_analytic_analysis.py:532 +#: code:addons/account_analytic_analysis/account_analytic_analysis.py:703 +#, python-format +msgid "AccessError" +msgstr "" + +#. module: account_analytic_analysis +#: help:account.analytic.account,last_invoice_date:0 +msgid "Date of the last invoice created for this analytic account." +msgstr "" + +#. module: account_analytic_analysis +#: model:ir.module.module,description:account_analytic_analysis.module_meta_information +msgid "" +"\n" +"This module is for modifying account analytic view to show\n" +"important data to project manager of services companies.\n" +"Adds menu to show relevant information to each manager..\n" +"\n" +"You can also view the report of account analytic summary\n" +"user-wise as well as month wise.\n" +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,last_invoice_date:0 +msgid "Last Invoice Date" +msgstr "" + +#. module: account_analytic_analysis +#: help:account.analytic.account,theorical_margin:0 +msgid "Computed using the formula: Theorial Revenue - Total Costs" +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,real_margin_rate:0 +msgid "Real Margin Rate (%)" +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,ca_theorical:0 +msgid "Theoretical Revenue" +msgstr "" + +#. module: account_analytic_analysis +#: help:account.analytic.account,last_worked_invoiced_date:0 +msgid "" +"If invoice from the costs, this is the date of the latest work or cost that " +"have been invoiced." +msgstr "" + +#. module: account_analytic_analysis +#: model:ir.ui.menu,name:account_analytic_analysis.menu_invoicing +msgid "Billing" +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,last_worked_date:0 +msgid "Date of Last Cost/Work" +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,total_cost:0 +msgid "Total Costs" +msgstr "" + +#. module: account_analytic_analysis +#: help:account.analytic.account,hours_quantity:0 +msgid "" +"Number of hours you spent on the analytic account (from timesheet). It " +"computes on all journal of type 'general'." +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,remaining_hours:0 +msgid "Remaining Hours" +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,theorical_margin:0 +msgid "Theoretical Margin" +msgstr "" + +#. module: account_analytic_analysis +#: help:account.analytic.account,ca_theorical:0 +msgid "" +"Based on the costs you had on the project, what would have been the revenue " +"if all these costs have been invoiced at the normal sale price provided by " +"the pricelist." +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,user_ids:0 +#: field:account_analytic_analysis.summary.user,user:0 +msgid "User" +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,ca_to_invoice:0 +msgid "Uninvoiced Amount" +msgstr "" + +#. module: account_analytic_analysis +#: help:account.analytic.account,real_margin:0 +msgid "Computed using the formula: Invoiced Amount - Total Costs." +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,hours_qtt_non_invoiced:0 +msgid "Uninvoiced Hours" +msgstr "" + +#. module: account_analytic_analysis +#: help:account.analytic.account,last_worked_date:0 +msgid "Date of the latest work done on this account." +msgstr "" + +#. module: account_analytic_analysis +#: model:ir.module.module,shortdesc:account_analytic_analysis.module_meta_information +msgid "report_account_analytic" +msgstr "" + +#. module: account_analytic_analysis +#: model:ir.model,name:account_analytic_analysis.model_account_analytic_analysis_summary_user +msgid "Hours Summary by User" +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,ca_invoiced:0 +msgid "Invoiced Amount" +msgstr "" + +#. module: account_analytic_analysis +#: code:addons/account_analytic_analysis/account_analytic_analysis.py:533 +#: code:addons/account_analytic_analysis/account_analytic_analysis.py:704 +#, python-format +msgid "You try to bypass an access rule (Document type: %s)." +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,last_worked_invoiced_date:0 +msgid "Date of Last Invoiced Cost" +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,hours_qtt_invoiced:0 +msgid "Invoiced Hours" +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,real_margin:0 +msgid "Real Margin" +msgstr "" + +#. module: account_analytic_analysis +#: constraint:account.analytic.account:0 +msgid "" +"Error! The currency has to be the same as the currency of the selected " +"company" +msgstr "" + +#. module: account_analytic_analysis +#: help:account.analytic.account,ca_invoiced:0 +msgid "Total customer invoiced amount for this account." +msgstr "" + +#. module: account_analytic_analysis +#: model:ir.model,name:account_analytic_analysis.model_account_analytic_analysis_summary_month +msgid "Hours summary by month" +msgstr "" + +#. module: account_analytic_analysis +#: help:account.analytic.account,real_margin_rate:0 +msgid "Computes using the formula: (Real Margin / Total Costs) * 100." +msgstr "" + +#. module: account_analytic_analysis +#: help:account.analytic.account,hours_qtt_non_invoiced:0 +msgid "" +"Number of hours (from journal of type 'general') that can be invoiced if you " +"invoice based on analytic account." +msgstr "" + +#. module: account_analytic_analysis +#: view:account.analytic.account:0 +msgid "Analytic accounts" +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,remaining_ca:0 +msgid "Remaining Revenue" +msgstr "" + +#. module: account_analytic_analysis +#: help:account.analytic.account,ca_to_invoice:0 +msgid "" +"If invoice from analytic account, the remaining amount you can invoice to " +"the customer based on the total costs." +msgstr "" + +#. module: account_analytic_analysis +#: help:account.analytic.account,revenue_per_hour:0 +msgid "Computed using the formula: Invoiced Amount / Hours Tot." +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,revenue_per_hour:0 +msgid "Revenue per Hours (real)" +msgstr "" + +#. module: account_analytic_analysis +#: field:account_analytic_analysis.summary.month,unit_amount:0 +#: field:account_analytic_analysis.summary.user,unit_amount:0 +msgid "Total Time" +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,month_ids:0 +#: field:account_analytic_analysis.summary.month,month:0 +msgid "Month" +msgstr "" + +#. module: account_analytic_analysis +#: field:account_analytic_analysis.summary.month,account_id:0 +#: field:account_analytic_analysis.summary.user,account_id:0 +#: model:ir.model,name:account_analytic_analysis.model_account_analytic_account +msgid "Analytic Account" +msgstr "" + +#. module: account_analytic_analysis +#: model:ir.actions.act_window,name:account_analytic_analysis.action_account_analytic_managed_overpassed +#: model:ir.ui.menu,name:account_analytic_analysis.menu_action_account_analytic_managed_overpassed +msgid "Overpassed Accounts" +msgstr "" + +#. module: account_analytic_analysis +#: model:ir.actions.act_window,name:account_analytic_analysis.action_hr_tree_invoiced_all +#: model:ir.ui.menu,name:account_analytic_analysis.menu_action_hr_tree_invoiced_all +msgid "All Uninvoiced Entries" +msgstr "" + +#. module: account_analytic_analysis +#: field:account.analytic.account,hours_quantity:0 +msgid "Hours Tot" +msgstr "" + +#. module: account_analytic_analysis +#: constraint:account.analytic.account:0 +msgid "Error! You can not create recursive analytic accounts." +msgstr "" + +#. module: account_analytic_analysis +#: help:account.analytic.account,total_cost:0 +msgid "" +"Total of costs for this account. It includes real costs (from invoices) and " +"indirect costs, like time spent on timesheets." +msgstr "" diff --git a/addons/account_coda/i18n/sl.po b/addons/account_coda/i18n/sl.po new file mode 100644 index 00000000000..b2c7e144795 --- /dev/null +++ b/addons/account_coda/i18n/sl.po @@ -0,0 +1,259 @@ +# Slovenian translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2011-01-11 11:14+0000\n" +"PO-Revision-Date: 2011-09-14 11:29+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Slovenian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-09-15 04:47+0000\n" +"X-Generator: Launchpad (build 13921)\n" + +#. module: account_coda +#: help:account.coda,journal_id:0 +#: field:account.coda.import,journal_id:0 +msgid "Bank Journal" +msgstr "Bančni dnevnik" + +#. module: account_coda +#: view:account.coda:0 +#: field:account.coda.import,note:0 +msgid "Log" +msgstr "Dnevnik" + +#. module: account_coda +#: model:ir.model,name:account_coda.model_account_coda_import +msgid "Account Coda Import" +msgstr "" + +#. module: account_coda +#: field:account.coda,name:0 +msgid "Coda file" +msgstr "" + +#. module: account_coda +#: view:account.coda:0 +msgid "Group By..." +msgstr "Združi po ..." + +#. module: account_coda +#: field:account.coda.import,awaiting_account:0 +msgid "Default Account for Unrecognized Movement" +msgstr "" + +#. module: account_coda +#: help:account.coda,date:0 +msgid "Import Date" +msgstr "Datum uvoza" + +#. module: account_coda +#: field:account.coda,note:0 +msgid "Import log" +msgstr "Dnevnik uvoza" + +#. module: account_coda +#: view:account.coda.import:0 +msgid "Import" +msgstr "Uvozi" + +#. module: account_coda +#: view:account.coda:0 +msgid "Coda import" +msgstr "" + +#. module: account_coda +#: code:addons/account_coda/account_coda.py:51 +#, python-format +msgid "Coda file not found for bank statement !!" +msgstr "" + +#. module: account_coda +#: help:account.coda.import,awaiting_account:0 +msgid "" +"Set here the default account that will be used, if the partner is found but " +"does not have the bank account, or if he is domiciled" +msgstr "" + +#. module: account_coda +#: view:account.coda:0 +#: field:account.coda,company_id:0 +msgid "Company" +msgstr "Podjetje" + +#. module: account_coda +#: help:account.coda.import,def_payable:0 +msgid "" +"Set here the payable account that will be used, by default, if the partner " +"is not found" +msgstr "" + +#. module: account_coda +#: view:account.coda:0 +msgid "Search Coda" +msgstr "" + +#. module: account_coda +#: view:account.coda:0 +#: field:account.coda,user_id:0 +msgid "User" +msgstr "Uporabnik" + +#. module: account_coda +#: view:account.coda:0 +#: field:account.coda,date:0 +msgid "Date" +msgstr "Datum" + +#. module: account_coda +#: model:ir.ui.menu,name:account_coda.menu_account_coda_statement +msgid "Coda Import Logs" +msgstr "" + +#. module: account_coda +#: model:ir.model,name:account_coda.model_account_coda +msgid "coda for an Account" +msgstr "" + +#. module: account_coda +#: field:account.coda.import,def_payable:0 +msgid "Default Payable Account" +msgstr "" + +#. module: account_coda +#: help:account.coda,name:0 +msgid "Store the detail of bank statements" +msgstr "" + +#. module: account_coda +#: view:account.coda.import:0 +msgid "Cancel" +msgstr "Prekliči" + +#. module: account_coda +#: view:account.coda.import:0 +msgid "Open Statements" +msgstr "" + +#. module: account_coda +#: code:addons/account_coda/wizard/account_coda_import.py:167 +#, python-format +msgid "The bank account %s is not defined for the partner %s.\n" +msgstr "" + +#. module: account_coda +#: model:ir.ui.menu,name:account_coda.menu_account_coda_import +msgid "Import Coda Statements" +msgstr "" + +#. module: account_coda +#: view:account.coda.import:0 +#: model:ir.actions.act_window,name:account_coda.action_account_coda_import +msgid "Import Coda Statement" +msgstr "" + +#. module: account_coda +#: model:ir.module.module,description:account_coda.module_meta_information +msgid "" +"\n" +" Module provides functionality to import\n" +" bank statements from coda files.\n" +" " +msgstr "" + +#. module: account_coda +#: view:account.coda:0 +msgid "Statements" +msgstr "Izpiski" + +#. module: account_coda +#: field:account.bank.statement,coda_id:0 +msgid "Coda" +msgstr "" + +#. module: account_coda +#: view:account.coda.import:0 +msgid "Results :" +msgstr "Rezultat" + +#. module: account_coda +#: view:account.coda.import:0 +msgid "Result of Imported Coda Statements" +msgstr "" + +#. module: account_coda +#: help:account.coda.import,def_receivable:0 +msgid "" +"Set here the receivable account that will be used, by default, if the " +"partner is not found" +msgstr "" + +#. module: account_coda +#: field:account.coda.import,coda:0 +#: model:ir.actions.act_window,name:account_coda.act_account_payment_account_bank_statement +msgid "Coda File" +msgstr "" + +#. module: account_coda +#: model:ir.model,name:account_coda.model_account_bank_statement +msgid "Bank Statement" +msgstr "Bančni izpisek" + +#. module: account_coda +#: model:ir.actions.act_window,name:account_coda.action_account_coda +msgid "Coda Logs" +msgstr "" + +#. module: account_coda +#: code:addons/account_coda/wizard/account_coda_import.py:311 +#, python-format +msgid "Result" +msgstr "Rezultat" + +#. module: account_coda +#: view:account.coda.import:0 +msgid "Click on 'New' to select your file :" +msgstr "Kliknite na \"Novo\" za izbiro vaše datoteke:" + +#. module: account_coda +#: field:account.coda.import,def_receivable:0 +msgid "Default Receivable Account" +msgstr "" + +#. module: account_coda +#: view:account.coda.import:0 +msgid "Close" +msgstr "Zapri" + +#. module: account_coda +#: field:account.coda,statement_ids:0 +msgid "Generated Bank Statements" +msgstr "Generirani bačni izpiski" + +#. module: account_coda +#: model:ir.module.module,shortdesc:account_coda.module_meta_information +msgid "Account CODA - import bank statements from coda file" +msgstr "" + +#. module: account_coda +#: view:account.coda.import:0 +msgid "Configure Your Journal and Account :" +msgstr "" + +#. module: account_coda +#: view:account.coda:0 +msgid "Coda Import" +msgstr "" + +#. module: account_coda +#: view:account.coda:0 +#: field:account.coda,journal_id:0 +msgid "Journal" +msgstr "Dnevnik" diff --git a/addons/base_crypt/i18n/sl.po b/addons/base_crypt/i18n/sl.po new file mode 100644 index 00000000000..d52c5723ba9 --- /dev/null +++ b/addons/base_crypt/i18n/sl.po @@ -0,0 +1,84 @@ +# Slovenian translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2011-01-11 11:14+0000\n" +"PO-Revision-Date: 2011-09-14 11:36+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Slovenian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-09-15 04:48+0000\n" +"X-Generator: Launchpad (build 13921)\n" + +#. module: base_crypt +#: sql_constraint:res.users:0 +msgid "You can not have two users with the same login !" +msgstr "Ne morete imeti dva uporabnika z istim prijavnim imenom!" + +#. module: base_crypt +#: model:ir.model,name:base_crypt.model_res_users +msgid "res.users" +msgstr "res.users" + +#. module: base_crypt +#: constraint:res.users:0 +msgid "The chosen company is not in the allowed companies for this user" +msgstr "Izbrano podjetje ni v dovoljenih podjetjih za tega uporabnika" + +#. module: base_crypt +#: code:addons/base_crypt/crypt.py:132 +#, python-format +msgid "Please specify the password !" +msgstr "Prosim, navedite geslo !" + +#. module: base_crypt +#: model:ir.module.module,shortdesc:base_crypt.module_meta_information +msgid "Base - Password Encryption" +msgstr "Osnovno - enkripcija gesla" + +#. module: base_crypt +#: code:addons/base_crypt/crypt.py:132 +#, python-format +msgid "Error" +msgstr "Napaka" + +#. module: base_crypt +#: model:ir.module.module,description:base_crypt.module_meta_information +msgid "" +"This module replaces the cleartext password in the database with a password " +"hash,\n" +"preventing anyone from reading the original password.\n" +"For your existing user base, the removal of the cleartext passwords occurs " +"the first time\n" +"a user logs into the database, after installing base_crypt.\n" +"After installing this module it won't be possible to recover a forgotten " +"password for your\n" +"users, the only solution is for an admin to set a new password.\n" +"\n" +"Note: installing this module does not mean you can ignore basic security " +"measures,\n" +"as the password is still transmitted unencrypted on the network (by the " +"client),\n" +"unless you are using a secure protocol such as XML-RPCS.\n" +" " +msgstr "" +"Ta modul nadomešča obliko besedilnega geslo v bazi podatkov z hash geslom,\n" +"ki preprečuje komurkoli branje izvirnega gesla.\n" +"Za vašo obstoječo bazo uporabnikov, odstranitev gesla v obliki besedila se " +"pojavi pri\n" +"prvi prijavi uporabnika v bazo podatkov, po namestitvi base_crypt.\n" +"Po namestitvi tega modula ne bo mogoče obnoviti pozabiljenega gesla za vaše\n" +"uporabnike, edina rešitev je, da admin nastavi novo geslo.\n" +"\n" +"Opomba: namestitev tega modula ne pomeni ignoriranja osnovnih varnostnih " +"ukrepov,\n" +"ker se geslo še vedno prenaša nešifrirano v omrežju (preko klienta),\n" +"razen če ne uporabljate varni protokol kot je XML-RPCS.\n" +" " diff --git a/addons/crm/wizard/crm_merge_opportunities.py b/addons/crm/wizard/crm_merge_opportunities.py index 66e8c2adbfe..d2d46749746 100644 --- a/addons/crm/wizard/crm_merge_opportunities.py +++ b/addons/crm/wizard/crm_merge_opportunities.py @@ -49,14 +49,9 @@ class crm_merge_opportunity(osv.osv_memory): def get_attachments(self, cr, uid, id, context=None): - attach_obj = self.pool.get('ir.attachment') - attach_ids = attach_obj.search(cr, uid, [('res_model' , '=', 'crm.lead'), ('res_id', '=', id)]) - return attach_ids - - def set_attachements_res_id(self, cr, uid, op_id, attach_ids, context=None): - attach_obj = self.pool.get('ir.attachment') - attach_obj.write(cr, uid, attach_ids, {'res_id' : op_id}) - + proxy = self.pool.get('ir.attachment') + ids = proxy.search(cr, uid, [('res_model', '=', 'crm.lead'), ('res_id', '=', id)], context=context) + return proxy.browse(cr, uid, ids, context=context) def find_oldest(self, cr, uid, op_ids, context=None): if not context: @@ -129,15 +124,25 @@ class crm_merge_opportunity(osv.osv_memory): else: first_opportunity = opportunities_list[0] tail_opportunities = opportunities_list[1:] - data = self._update_data(op_ids, oldest_opp) - #copy message into the first opportunity + merge attachement - for opp in tail_opportunities + [first_opportunity]: - attach_ids = self.get_attachments(cr, uid, opp, context=context) - self.set_attachements_res_id(cr, uid, first_opportunity.id, attach_ids) - for mail_msg in opp.message_ids: - message_obj.write(cr, uid, mail_msg.id, {'res_id': first_opportunity.id, 'subject' : _("From %s : %s") % (opp.name, mail_msg.subject) }, context=context) + #copy message into the first opportunity + merge attachement + count = 1 + first_attachments = self.get_attachments(cr, uid, first_opportunity, context=context) + for opp in tail_opportunities: + attachments = self.get_attachments(cr, uid, opp, context=context) + for first in first_attachments: + for attachment in attachments: + if attachment.name == first.name: + values = dict( + name = "%s (%s)" % (attachment.name, count,), + res_id = first_opportunity.id, + ) + attachment.write(values) + count+=1 + + for history in opp.message_ids: + message_obj.write(cr, uid, history.id, {'res_id': first_opportunity.id, 'name' : _("From %s : %s") % (opp.name, history.name) }, context=context) #Notification about loss of information details = [] @@ -171,7 +176,7 @@ class crm_merge_opportunity(osv.osv_memory): opp_obj.message_append(cr, uid, [first_opportunity], subject, body_text=details) #data.update({'message_ids' : [(6, 0 ,self._concat_o2m('message_ids', op_ids))]}) - opp_obj.write(cr, uid, [first_opportunity.id], data) + opp_obj.write(cr, uid, [first_opportunity.id], data, context=context) unlink_ids = map(lambda x: x.id, tail_opportunities) opp_obj.unlink(cr, uid, unlink_ids, context=context) diff --git a/addons/delivery/delivery.py b/addons/delivery/delivery.py index d70af4b4d1e..55199a9aa19 100644 --- a/addons/delivery/delivery.py +++ b/addons/delivery/delivery.py @@ -71,7 +71,7 @@ class delivery_carrier(osv.osv): 'free_if_more_than': fields.boolean('Free If More Than'), 'amount': fields.float('Amount'), 'use_detailed_pricelist': fields.boolean('Use Detailed Pricelist'), - 'pricelist_ids': fields.one2many('delivery.grid', 'carrier_id', 'Price List'), + 'pricelist_ids': fields.one2many('delivery.grid', 'carrier_id', 'Advanced Pricing'), } _defaults = { diff --git a/addons/delivery/delivery_demo.xml b/addons/delivery/delivery_demo.xml index 4dfef0c105b..94666efb26c 100644 --- a/addons/delivery/delivery_demo.xml +++ b/addons/delivery/delivery_demo.xml @@ -17,6 +17,7 @@ Delivery by Poste + Delivery service diff --git a/addons/delivery/delivery_view.xml b/addons/delivery/delivery_view.xml index 72f811632ce..4ade9b321a7 100644 --- a/addons/delivery/delivery_view.xml +++ b/addons/delivery/delivery_view.xml @@ -9,7 +9,6 @@ tree - @@ -22,10 +21,9 @@
- - + @@ -82,7 +80,7 @@ Define the delivery methods you are using and their pricing in order to reinvoice the delivery costs when you are doing invoicing based on delivery orders - + @@ -132,7 +130,7 @@ tree,form The delivery price list allows you to compute the cost and sales price of the delivery according to the weight of the products and other criteria. You can define several price lists for one delivery method, per country or a zone in a specific country defined by a postal code range. - + delivery.grid.line.form diff --git a/addons/document/document.py b/addons/document/document.py index 69e123b87eb..ef9ca01bd1e 100644 --- a/addons/document/document.py +++ b/addons/document/document.py @@ -252,7 +252,7 @@ class document_file(osv.osv): ids = ids2 if 'file_size' in vals: # only write that field using direct SQL calls del vals['file_size'] - if len(ids) and len(vals): + if ids and vals: result = super(document_file,self).write(cr, uid, ids, vals, context=context) cr.commit() # ? return result diff --git a/addons/fetchmail/fetchmail.py b/addons/fetchmail/fetchmail.py index 8aaff197d47..b7460965c3b 100644 --- a/addons/fetchmail/fetchmail.py +++ b/addons/fetchmail/fetchmail.py @@ -120,7 +120,7 @@ class fetchmail_server(osv.osv): server.write({'state':'done'}) except Exception, e: logger.exception("Failed to connect to %s server %s", server.type, server.name) - raise osv.except_osv(_("Connection test failed!"), _("Here is what we got instead:\n %s") % e) + raise osv.except_osv(_("Connection test failed!"), _("Here is what we got instead:\n %s") % tools.ustr(e)) finally: try: if connection: diff --git a/addons/google_map/i18n/mk.po b/addons/google_map/i18n/mk.po new file mode 100644 index 00000000000..5835b35357f --- /dev/null +++ b/addons/google_map/i18n/mk.po @@ -0,0 +1,53 @@ +# Macedonian translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2011-01-11 11:15+0000\n" +"PO-Revision-Date: 2011-09-14 08:11+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Macedonian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-09-15 04:47+0000\n" +"X-Generator: Launchpad (build 13921)\n" + +#. module: google_map +#: view:res.partner:0 +#: view:res.partner.address:0 +msgid "Map" +msgstr "Мапа" + +#. module: google_map +#: view:res.partner:0 +#: view:res.partner.address:0 +msgid "Street2 : " +msgstr "" + +#. module: google_map +#: model:ir.actions.wizard,name:google_map.wizard_google_map +msgid "Launch Google Map" +msgstr "Стартувај Google Map" + +#. module: google_map +#: model:ir.module.module,description:google_map.module_meta_information +msgid "" +"The module adds google map field in partner address\n" +"so that we can directly open google map from the\n" +"url widget." +msgstr "" + +#. module: google_map +#: model:ir.module.module,shortdesc:google_map.module_meta_information +msgid "Google Map" +msgstr "" + +#. module: google_map +#: model:ir.model,name:google_map.model_res_partner_address +msgid "Partner Addresses" +msgstr "Адреса на партнерот" diff --git a/addons/hr_contract/hr_contract_view.xml b/addons/hr_contract/hr_contract_view.xml index 2d2bdc5a178..cfccd8912dc 100644 --- a/addons/hr_contract/hr_contract_view.xml +++ b/addons/hr_contract/hr_contract_view.xml @@ -75,8 +75,8 @@ - - + + @@ -85,7 +85,7 @@ - + diff --git a/addons/hr_payroll/hr_payroll.py b/addons/hr_payroll/hr_payroll.py index cdf6549fedd..464c3d295a4 100644 --- a/addons/hr_payroll/hr_payroll.py +++ b/addons/hr_payroll/hr_payroll.py @@ -50,6 +50,7 @@ class hr_payroll_structure(osv.osv): 'company_id':fields.many2one('res.company', 'Company', required=True), 'note': fields.text('Description'), 'parent_id':fields.many2one('hr.payroll.structure', 'Parent'), + 'children_ids':fields.one2many('hr.payroll.structure', 'parent_id', 'Children'), } def _get_parent(self, cr, uid, context=None): @@ -131,6 +132,10 @@ class hr_contract(osv.osv): ], 'Scheduled Pay', select=True), } + _defaults = { + 'schedule_pay': 'monthly', + } + def get_all_structures(self, cr, uid, contract_ids, context=None): """ @param contract_ids: list of contracts @@ -175,6 +180,7 @@ class hr_salary_rule_category(osv.osv): 'name':fields.char('Name', size=64, required=True, readonly=False), 'code':fields.char('Code', size=64, required=True, readonly=False), 'parent_id':fields.many2one('hr.salary.rule.category', 'Parent', help="Linking a salary category to its parent is used only for the reporting purpose."), + 'children_ids': fields.one2many('hr.salary.rule.category', 'parent_id', 'Children'), 'note': fields.text('Description'), 'company_id':fields.many2one('res.company', 'Company', required=False), } diff --git a/addons/hr_payroll/hr_payroll_demo.xml b/addons/hr_payroll/hr_payroll_demo.xml index 8af4785dde7..87deaef2f51 100644 --- a/addons/hr_payroll/hr_payroll_demo.xml +++ b/addons/hr_payroll/hr_payroll_demo.xml @@ -89,7 +89,7 @@ Get 1% of sales - result = (inputs.SALEURO.amount + inputs.SALASIA.amount) * contract.wage * 0.01 + result = (inputs.SALEURO.amount + inputs.SALASIA.amount) * 0.01 diff --git a/addons/hr_payroll/hr_payroll_view.xml b/addons/hr_payroll/hr_payroll_view.xml index 8bb56bb1200..a2523fcb7ba 100644 --- a/addons/hr_payroll/hr_payroll_view.xml +++ b/addons/hr_payroll/hr_payroll_view.xml @@ -58,7 +58,7 @@ - + hr.payroll.structure.tree hr.payroll.structure tree @@ -71,6 +71,19 @@ + + hr.payroll.structure.tree + hr.payroll.structure + tree + children_ids + + + + + + + + hr.payroll.structure.select @@ -116,18 +129,32 @@ - + Salary Structures hr.payroll.structure form - + + + Salary Structures Hierarchy + hr.payroll.structure + tree + [('parent_id','=',False)] + + + @@ -415,6 +442,19 @@ + + hr.salary.rule.category.tree.view + hr.salary.rule.category + tree + children_ids + + + + + + + + hr.salary.rule.category.select @@ -441,6 +481,19 @@ parent="payroll_configure" sequence="11" /> + + Salary Rule Categories Hierarchy + hr.salary.rule.category + tree + + + - Bonamy's Contract (C.P.218) + Bonamy's Contract (Belgium payroll C.P. 218) diff --git a/addons/hr_payroll_l10n_be/hr_payroll_l10n_be_view.xml b/addons/hr_payroll_l10n_be/hr_payroll_l10n_be_view.xml index 2b5264dbc96..c4dca86166d 100644 --- a/addons/hr_payroll_l10n_be/hr_payroll_l10n_be_view.xml +++ b/addons/hr_payroll_l10n_be/hr_payroll_l10n_be_view.xml @@ -9,17 +9,15 @@ - + - - - - - + + + @@ -29,9 +27,6 @@ - - - @@ -48,17 +43,6 @@ - - hr.contract.struc - hr.contract - - form - - - - - - hr.hr.employee.view.for hr.employee diff --git a/addons/html_view/i18n/mk.po b/addons/html_view/i18n/mk.po new file mode 100644 index 00000000000..dd98a0f9818 --- /dev/null +++ b/addons/html_view/i18n/mk.po @@ -0,0 +1,63 @@ +# Macedonian translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2011-01-11 11:15+0000\n" +"PO-Revision-Date: 2011-09-14 08:15+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Macedonian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-09-15 04:47+0000\n" +"X-Generator: Launchpad (build 13921)\n" + +#. module: html_view +#: field:html.view,name:0 +msgid "Name" +msgstr "Име" + +#. module: html_view +#: field:html.view,comp_id:0 +msgid "Company" +msgstr "Компанија" + +#. module: html_view +#: model:ir.actions.act_window,name:html_view.action_html_view_form +#: model:ir.ui.menu,name:html_view.html_form +msgid "Html Test" +msgstr "Html тест" + +#. module: html_view +#: view:html.view:0 +msgid "Html Example" +msgstr "Html пример" + +#. module: html_view +#: model:ir.module.module,shortdesc:html_view.module_meta_information +msgid "Html View" +msgstr "Html преглед" + +#. module: html_view +#: field:html.view,bank_ids:0 +msgid "Banks" +msgstr "Банки" + +#. module: html_view +#: model:ir.module.module,description:html_view.module_meta_information +msgid "" +"\n" +" This is the test module which shows html tag supports in normal xml form " +"view.\n" +" " +msgstr "" + +#. module: html_view +#: model:ir.model,name:html_view.model_html_view +msgid "html.view" +msgstr "html.view" diff --git a/addons/project_issue/board_project_issue_view.xml b/addons/project_issue/board_project_issue_view.xml index 3b6a6bcd0a3..cfe285134a7 100644 --- a/addons/project_issue/board_project_issue_view.xml +++ b/addons/project_issue/board_project_issue_view.xml @@ -123,7 +123,7 @@ project.issue form tree,form - [('state','not in',('cancel','done')),'|',('assigned_to','=',uid),('user_id','=',uid)] + [('state','not in',('cancel','done')),('user_id','=',uid)] @@ -142,7 +142,7 @@ project.issue.report form graph,tree,form, - [('state','=','open'),'|',('assigned_to','=',uid),('user_id','=',uid)] + [('state','=','open'),('user_id','=',uid)] diff --git a/addons/project_issue/project_issue.py b/addons/project_issue/project_issue.py index 8237159af7a..af756d34c5f 100644 --- a/addons/project_issue/project_issue.py +++ b/addons/project_issue/project_issue.py @@ -58,7 +58,7 @@ class project_issue(crm.crm_case, osv.osv): """ res = super(project_issue, self).case_open(cr, uid, ids, *args) - self.write(cr, uid, ids, {'date_open': time.strftime('%Y-%m-%d %H:%M:%S'), 'assigned_to' : uid}) + self.write(cr, uid, ids, {'date_open': time.strftime('%Y-%m-%d %H:%M:%S'), 'user_id' : uid}) for (id, name) in self.name_get(cr, uid, ids): message = _("Issue '%s' has been opened.") % name self.log(cr, uid, id, message) @@ -191,7 +191,6 @@ class project_issue(crm.crm_case, osv.osv): 'section_id': fields.many2one('crm.case.section', 'Sales Team', \ select=True, help='Sales team to which Case belongs to.\ Define Responsible user and Email account for mail gateway.'), - 'user_id': fields.related('project_id', 'user_id', type='many2one', relation='res.users', store=True, select=1, string='Responsible'), 'partner_id': fields.many2one('res.partner', 'Partner', select=1), 'partner_address_id': fields.many2one('res.partner.address', 'Partner Contact', \ domain="[('partner_id','=',partner_id)]"), @@ -220,7 +219,7 @@ class project_issue(crm.crm_case, osv.osv): multi='compute_day', type="float", store=True), 'day_close': fields.function(_compute_day, string='Days to Close', \ multi='compute_day', type="float", store=True), - 'assigned_to': fields.many2one('res.users', 'Assigned to', required=False, select=1), + 'user_id': fields.many2one('res.users', 'Assigned to', required=False, select=1), 'working_hours_open': fields.function(_compute_day, string='Working Hours to Open the Issue', \ multi='compute_day', type="float", store=True), 'working_hours_close': fields.function(_compute_day, string='Working Hours to Close the Issue', \ @@ -245,19 +244,11 @@ class project_issue(crm.crm_case, osv.osv): return False def on_change_project(self, cr, uid, ids, project_id, context=None): - result = {} - - if project_id: - project = self.pool.get('project.project').browse(cr, uid, project_id, context=context) - if project.user_id: - result['value'] = {'user_id' : project.user_id.id} - - return result + return {} _defaults = { 'active': 1, - #'user_id': crm.crm_case._get_default_user, 'partner_id': crm.crm_case._get_default_partner, 'partner_address_id': crm.crm_case._get_default_partner_address, 'email_from': crm.crm_case._get_default_email, @@ -267,7 +258,6 @@ class project_issue(crm.crm_case, osv.osv): 'priority': crm.AVAILABLE_PRIORITIES[2][0], 'project_id':_get_project, 'categ_id' : lambda *a: False, - #'assigned_to' : lambda obj, cr, uid, context: uid, } def convert_issue_task(self, cr, uid, ids, context=None): @@ -296,7 +286,7 @@ class project_issue(crm.crm_case, osv.osv): 'date': bug.date, 'project_id': bug.project_id.id, 'priority': bug.priority, - 'user_id': bug.assigned_to.id, + 'user_id': bug.user_id.id, 'planned_hours': 0.0, }) @@ -364,7 +354,7 @@ class project_issue(crm.crm_case, osv.osv): if not task_id: return {'value':{}} task = self.pool.get('project.task').browse(cr, uid, task_id, context=context) - return {'value':{'assigned_to': task.user_id.id,}} + return {'value':{'user_id': task.user_id.id,}} def case_escalate(self, cr, uid, ids, *args): """Escalates case to top level diff --git a/addons/project_issue/project_issue_view.xml b/addons/project_issue/project_issue_view.xml index 0bf171d6aeb..860dd73216b 100644 --- a/addons/project_issue/project_issue_view.xml +++ b/addons/project_issue/project_issue_view.xml @@ -55,8 +55,7 @@ - - + @@ -188,7 +187,7 @@