diff --git a/addons/account/i18n/ru.po b/addons/account/i18n/ru.po index e3b3f080365..c666e4dcf2e 100644 --- a/addons/account/i18n/ru.po +++ b/addons/account/i18n/ru.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-12-21 17:04+0000\n" -"PO-Revision-Date: 2013-06-19 11:49+0000\n" +"PO-Revision-Date: 2013-07-02 06:32+0000\n" "Last-Translator: Chertykov Denis \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: 2013-06-20 05:17+0000\n" -"X-Generator: Launchpad (build 16673)\n" +"X-Launchpad-Export-Date: 2013-07-03 05:14+0000\n" +"X-Generator: Launchpad (build 16692)\n" #. module: account #: model:process.transition,name:account.process_transition_supplierreconcilepaid0 @@ -1959,7 +1959,7 @@ msgstr "Длительность" #: view:account.bank.statement:0 #: field:account.bank.statement,last_closing_balance:0 msgid "Last Closing Balance" -msgstr "" +msgstr "Последнее конечное сальдо" #. module: account #: model:ir.model,name:account.model_account_common_journal_report @@ -3989,6 +3989,8 @@ msgid "" "You cannot modify a posted entry of this journal.\n" "First you should set the journal to allow cancelling entries." msgstr "" +"Нельзя изменить проводку по этому журналу.\n" +"Прежде, нужно разрешить отмену проводок в журнале." #. module: account #: model:ir.actions.act_window,name:account.action_account_print_sale_purchase_journal @@ -4705,7 +4707,7 @@ msgstr "Месяц" #: code:addons/account/account.py:668 #, python-format msgid "You cannot change the code of account which contains journal items!" -msgstr "" +msgstr "Нальзя изменить код счета который содержит проводки!" #. module: account #: field:account.config.settings,purchase_sequence_prefix:0 @@ -4824,7 +4826,7 @@ msgstr "Отметьте, если хотите выводить счета с 0 #. module: account #: field:account.move.reconcile,opening_reconciliation:0 msgid "Opening Entries Reconciliation" -msgstr "" +msgstr "Сверка проводок открытия" #. module: account #. openerp-web @@ -6524,7 +6526,7 @@ msgstr "Позиция аналитики" #. module: account #: model:ir.ui.menu,name:account.menu_action_model_form msgid "Models" -msgstr "" +msgstr "Модели" #. module: account #: code:addons/account/account_invoice.py:1124 @@ -10311,7 +10313,7 @@ msgstr "Внутренний тип" #. module: account #: field:account.subscription.generate,date:0 msgid "Generate Entries Before" -msgstr "" +msgstr "Генерировать проводки до" #. module: account #: model:ir.actions.act_window,name:account.action_subscription_form_running diff --git a/addons/account/i18n/vi.po b/addons/account/i18n/vi.po index 4bab5df9a60..66b82d479b2 100644 --- a/addons/account/i18n/vi.po +++ b/addons/account/i18n/vi.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-12-21 17:04+0000\n" -"PO-Revision-Date: 2012-05-10 17:34+0000\n" -"Last-Translator: Raphael Collet (OpenERP) \n" +"PO-Revision-Date: 2013-06-29 14:38+0000\n" +"Last-Translator: Hung Tran \n" "Language-Team: Vietnamese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:19+0000\n" -"X-Generator: Launchpad (build 16532)\n" +"X-Launchpad-Export-Date: 2013-06-30 05:55+0000\n" +"X-Generator: Launchpad (build 16692)\n" #. module: account #: model:process.transition,name:account.process_transition_supplierreconcilepaid0 @@ -60,7 +60,7 @@ msgid "Residual" msgstr "Còn lại" #. module: account -#: code:addons/account/account_bank_statement.py:368 +#: code:addons/account/account_bank_statement.py:369 #, python-format msgid "Journal item \"%s\" is not valid." msgstr "" @@ -73,12 +73,12 @@ msgstr "Aged Receivable Till Today" #. module: account #: model:process.transition,name:account.process_transition_invoiceimport0 msgid "Import from invoice or payment" -msgstr "Import from invoice or payment" +msgstr "Nhập từ hóa đơn hoặc khoản thanh toán" #. module: account -#: code:addons/account/account_move_line.py:1061 -#: code:addons/account/account_move_line.py:1146 -#: code:addons/account/account_move_line.py:1213 +#: code:addons/account/account_move_line.py:1058 +#: code:addons/account/account_move_line.py:1143 +#: code:addons/account/account_move_line.py:1210 #, python-format msgid "Bad Account!" msgstr "" @@ -94,7 +94,7 @@ msgstr "Tổng Nợ" msgid "" "Error!\n" "You cannot create recursive account templates." -msgstr "" +msgstr "Lỗi!" #. module: account #. openerp-web @@ -132,15 +132,15 @@ msgstr "" #: code:addons/account/account.py:641 #: code:addons/account/account.py:686 #: code:addons/account/account.py:781 -#: code:addons/account/account.py:1049 -#: code:addons/account/account_invoice.py:788 -#: code:addons/account/account_invoice.py:791 -#: code:addons/account/account_invoice.py:794 -#: code:addons/account/account_invoice.py:1514 +#: code:addons/account/account.py:1058 +#: code:addons/account/account_invoice.py:820 +#: code:addons/account/account_invoice.py:823 +#: code:addons/account/account_invoice.py:826 +#: code:addons/account/account_invoice.py:1545 #: code:addons/account/account_move_line.py:98 -#: code:addons/account/account_move_line.py:774 -#: code:addons/account/account_move_line.py:827 -#: code:addons/account/account_move_line.py:867 +#: code:addons/account/account_move_line.py:771 +#: code:addons/account/account_move_line.py:824 +#: code:addons/account/account_move_line.py:864 #: code:addons/account/wizard/account_fiscalyear_close.py:62 #: code:addons/account/wizard/account_invoice_state.py:44 #: code:addons/account/wizard/account_invoice_state.py:68 @@ -152,7 +152,7 @@ msgid "Warning!" msgstr "Cảnh báo!" #. module: account -#: code:addons/account/account.py:3159 +#: code:addons/account/account.py:3197 #, python-format msgid "Miscellaneous Journal" msgstr "" @@ -192,12 +192,12 @@ msgstr "Hoá đơn được tạo trong 15 ngày qua" #. module: account #: field:accounting.report,label_filter:0 msgid "Column Label" -msgstr "" +msgstr "Nhãn cột" #. module: account #: help:account.config.settings,code_digits:0 msgid "No. of digits to use for account code" -msgstr "" +msgstr "Số chữ số dùng cho mã tài khoản" #. module: account #: help:account.analytic.journal,type:0 @@ -242,7 +242,7 @@ msgstr "Báo cáo của Bỉ" #. module: account #: model:mail.message.subtype,name:account.mt_invoice_validated msgid "Validated" -msgstr "" +msgstr "Đã xác nhận" #. module: account #: model:account.account.type,name:account.account_type_income_view1 @@ -318,7 +318,7 @@ msgstr "Tài khoản chưa đối soát" #. module: account #: field:account.config.settings,module_account_budget:0 msgid "Budget management" -msgstr "" +msgstr "Quản lý quỹ" #. module: account #: view:product.template:0 @@ -336,10 +336,10 @@ msgstr "" #. module: account #: field:account.config.settings,group_multi_currency:0 msgid "Allow multi currencies" -msgstr "" +msgstr "Cho phép đa tiền tệ" #. module: account -#: code:addons/account/account_invoice.py:74 +#: code:addons/account/account_invoice.py:77 #, python-format msgid "You must define an analytic journal of type '%s'!" msgstr "" @@ -357,7 +357,7 @@ msgstr "Tháng Sáu" #: code:addons/account/wizard/account_automatic_reconcile.py:148 #, python-format msgid "You must select accounts to reconcile." -msgstr "" +msgstr "Bạn phải chọn một tài khoản để đối soát" #. module: account #: help:account.config.settings,group_analytic_accounting:0 @@ -370,7 +370,7 @@ msgstr "" #: view:account.invoice.report:0 #: field:account.invoice.report,user_id:0 msgid "Salesperson" -msgstr "" +msgstr "Nhân viên bán hàng" #. module: account #: view:account.bank.statement:0 @@ -660,7 +660,7 @@ msgid "Profit Account" msgstr "" #. module: account -#: code:addons/account/account_move_line.py:1159 +#: code:addons/account/account_move_line.py:1156 #, python-format msgid "No period found or more than one period found for the given date." msgstr "" @@ -671,13 +671,13 @@ msgid "Report of the Sales by Account Type" msgstr "Báo cáo Bán hàng theo Loại Tài khoản" #. module: account -#: code:addons/account/account.py:3163 +#: code:addons/account/account.py:3201 #, python-format msgid "SAJ" msgstr "SAJ" #. module: account -#: code:addons/account/account.py:1553 +#: code:addons/account/account.py:1591 #, python-format msgid "Cannot create move with currency different from .." msgstr "" @@ -730,7 +730,9 @@ msgstr "" #: selection:account.common.partner.report,result_selection:0 #: selection:account.partner.balance,result_selection:0 #: selection:account.partner.ledger,result_selection:0 +#: report:account.third_party_ledger:0 #: code:addons/account/report/account_partner_balance.py:297 +#: code:addons/account/report/account_partner_ledger.py:272 #, python-format msgid "Receivable Accounts" msgstr "Các tài khoản phải thu" @@ -738,7 +740,7 @@ msgstr "Các tài khoản phải thu" #. module: account #: view:account.config.settings:0 msgid "Configure your company bank accounts" -msgstr "" +msgstr "Cấu hình tài khoản ngân hàng của công ty" #. module: account #: view:account.invoice.refund:0 @@ -768,7 +770,7 @@ msgid "Are you sure you want to create entries?" msgstr "Are you sure you want to create entries?" #. module: account -#: code:addons/account/account_invoice.py:1330 +#: code:addons/account/account_invoice.py:1361 #, python-format msgid "Invoice partially paid: %s%s of %s%s (%s%s remaining)." msgstr "" @@ -817,7 +819,7 @@ msgstr "" #. module: account #: model:ir.ui.menu,name:account.menu_account_report msgid "Financial Report" -msgstr "" +msgstr "Báo cáo tài chính" #. module: account #: view:account.analytic.account:0 @@ -837,7 +839,7 @@ msgid "Type" msgstr "Loại" #. module: account -#: code:addons/account/account_invoice.py:794 +#: code:addons/account/account_invoice.py:826 #, python-format msgid "" "Taxes are missing!\n" @@ -860,10 +862,10 @@ msgid "Supplier Invoices And Refunds" msgstr "" #. module: account -#: code:addons/account/account_move_line.py:854 +#: code:addons/account/account_move_line.py:851 #, python-format msgid "Entry is already reconciled." -msgstr "" +msgstr "Bút toán đã đối soát xong." #. module: account #: view:account.move.line.unreconcile.select:0 @@ -880,7 +882,7 @@ msgstr "Account Analytic Journal" #. module: account #: view:account.invoice:0 msgid "Send by Email" -msgstr "" +msgstr "Gửi qua Email" #. module: account #: help:account.central.journal,amount_currency:0 @@ -900,7 +902,7 @@ msgstr "J.C./Move name" #. module: account #: view:account.account:0 msgid "Account Code and Name" -msgstr "" +msgstr "Mã tài khoản và tên" #. module: account #: selection:account.entries.report,month:0 @@ -931,9 +933,13 @@ msgid "" "

\n" " " msgstr "" +"

\n" +" Không tìm thấy mục nhật ký.\n" +"

\n" +" " #. module: account -#: code:addons/account/account.py:1639 +#: code:addons/account/account.py:1677 #, python-format msgid "" "You cannot unreconcile journal items if they has been generated by the " @@ -977,7 +983,7 @@ msgstr "Đến hạn" #. module: account #: field:account.config.settings,purchase_journal_id:0 msgid "Purchase journal" -msgstr "" +msgstr "Nhật ký mua hàng" #. module: account #: model:mail.message.subtype,description:account.mt_invoice_paid @@ -1017,7 +1023,7 @@ msgid "Liability" msgstr "Liability" #. module: account -#: code:addons/account/account_invoice.py:867 +#: code:addons/account/account_invoice.py:899 #, python-format msgid "Please define sequence on the journal related to this invoice." msgstr "" @@ -1088,13 +1094,13 @@ msgstr "Mã" #. module: account #: view:account.config.settings:0 msgid "Features" -msgstr "" +msgstr "Tính năng" #. module: account -#: code:addons/account/account.py:2308 -#: code:addons/account/account_bank_statement.py:423 -#: code:addons/account/account_invoice.py:74 -#: code:addons/account/account_invoice.py:744 +#: code:addons/account/account.py:2346 +#: code:addons/account/account_bank_statement.py:424 +#: code:addons/account/account_invoice.py:77 +#: code:addons/account/account_invoice.py:775 #: code:addons/account/account_move_line.py:195 #, python-format msgid "No Analytic Journal !" @@ -1220,7 +1226,7 @@ msgstr "" #. module: account #: model:account.account.type,name:account.data_account_type_bank #: selection:account.bank.accounts.wizard,account_type:0 -#: code:addons/account/account.py:3054 +#: code:addons/account/account.py:3092 #, python-format msgid "Bank" msgstr "Ngân hàng" @@ -1309,7 +1315,7 @@ msgstr "Outgoing Currencies Rate" #: view:account.analytic.account:0 #: field:account.config.settings,chart_template_id:0 msgid "Template" -msgstr "" +msgstr "Mẫu" #. module: account #: selection:account.analytic.journal,type:0 @@ -1401,7 +1407,7 @@ msgstr "Mức" #: code:addons/account/wizard/account_change_currency.py:38 #, python-format msgid "You can only change currency for Draft Invoice." -msgstr "" +msgstr "Bạn chỉ có thể thay đổi đồng tiền cho dự thảo hóa đơn" #. module: account #: report:account.invoice:0 @@ -1427,7 +1433,7 @@ msgstr "Chọn một chu kỳ bắt đầu và một chu kỳ kết thúc" #: model:account.financial.report,name:account.account_financial_report_profitandloss0 #: model:ir.actions.act_window,name:account.action_account_report_pl msgid "Profit and Loss" -msgstr "" +msgstr "Lãi và lỗ" #. module: account #: model:ir.model,name:account.model_account_account_template @@ -1500,7 +1506,7 @@ msgstr "" #. module: account #: field:account.invoice.report,state:0 msgid "Invoice Status" -msgstr "" +msgstr "Tình trạng hóa đơn" #. module: account #: view:account.bank.statement:0 @@ -1522,18 +1528,20 @@ msgstr "Khoản phải thu" #: code:addons/account/account.py:768 #, python-format msgid "%s (copy)" -msgstr "" +msgstr "%s (sao chép)" #. module: account +#: report:account.account.balance:0 #: selection:account.balance.report,display_account:0 #: selection:account.common.account.report,display_account:0 +#: report:account.general.ledger_landscape:0 #: selection:account.partner.balance,display_partner:0 #: selection:account.report.general.ledger,display_account:0 msgid "With balance is not equal to 0" msgstr "With balance is not equal to 0" #. module: account -#: code:addons/account/account.py:1445 +#: code:addons/account/account.py:1483 #, python-format msgid "" "There is no default debit account defined \n" @@ -1601,7 +1609,7 @@ msgstr "" #. module: account #: view:account.config.settings:0 msgid "eInvoicing & Payments" -msgstr "" +msgstr "Hóa đơn điện tử & Thanh toán" #. module: account #: view:account.analytic.cost.ledger.journal.report:0 @@ -1640,7 +1648,7 @@ msgstr "Case Code" #. module: account #: field:account.config.settings,company_footer:0 msgid "Bank accounts footer preview" -msgstr "" +msgstr "Xem trước lề dưới tài khoản ngân hàng" #. module: account #: selection:account.account,type:0 @@ -1681,7 +1689,7 @@ msgstr "Không bị thuế" #. module: account #: view:account.journal:0 msgid "Advanced Settings" -msgstr "" +msgstr "Thiết lập nâng cao" #. module: account #: view:account.bank.statement:0 @@ -1756,8 +1764,10 @@ msgstr "" #: view:account.invoice:0 #: view:account.invoice.report:0 #: field:account.move.line,invoice:0 +#: code:addons/account/account_invoice.py:1157 #: model:ir.model,name:account.model_account_invoice #: model:res.request.link,name:account.req_link_invoice +#, python-format msgid "Invoice" msgstr "Hóa đơn" @@ -1810,7 +1820,7 @@ msgstr "Doanh số theo loại tài khoản" #: model:account.payment.term,name:account.account_payment_term_15days #: model:account.payment.term,note:account.account_payment_term_15days msgid "15 Days" -msgstr "" +msgstr "15 ngày" #. module: account #: model:ir.ui.menu,name:account.periodical_processing_invoicing @@ -1832,7 +1842,7 @@ msgid "" msgstr "" #. module: account -#: code:addons/account/account_move_line.py:857 +#: code:addons/account/account_move_line.py:854 #, python-format msgid "Some entries are already reconciled." msgstr "" @@ -1880,7 +1890,7 @@ msgstr "nếu thiết lập này bị sai. bạn có thể ẩn nó thay vì xó #. module: account #: field:account.report.general.ledger,sortby:0 msgid "Sort by" -msgstr "" +msgstr "Xếp theo" #. module: account #: model:ir.actions.act_window,name:account.act_account_partner_account_move_all @@ -1948,12 +1958,12 @@ msgstr "Draft statement" #. module: account #: model:mail.message.subtype,description:account.mt_invoice_validated msgid "Invoice validated" -msgstr "" +msgstr "Hóa đơn đã xác nhận" #. module: account #: field:account.config.settings,module_account_check_writing:0 msgid "Pay your suppliers by check" -msgstr "" +msgstr "Trả tiền cho NCC bằng séc" #. module: account #: field:account.move.line.reconcile,credit:0 @@ -1984,36 +1994,36 @@ msgstr "" #: code:addons/account/account.py:634 #: code:addons/account/account.py:636 #: code:addons/account/account.py:930 -#: code:addons/account/account.py:1062 -#: code:addons/account/account.py:1064 -#: code:addons/account/account.py:1103 -#: code:addons/account/account.py:1283 -#: code:addons/account/account.py:1297 -#: code:addons/account/account.py:1320 -#: code:addons/account/account.py:1327 -#: code:addons/account/account.py:1549 -#: code:addons/account/account.py:1553 -#: code:addons/account/account.py:1639 -#: code:addons/account/account.py:2320 -#: code:addons/account/account.py:2640 -#: code:addons/account/account.py:3427 +#: code:addons/account/account.py:1071 +#: code:addons/account/account.py:1073 +#: code:addons/account/account.py:1116 +#: code:addons/account/account.py:1319 +#: code:addons/account/account.py:1333 +#: code:addons/account/account.py:1356 +#: code:addons/account/account.py:1363 +#: code:addons/account/account.py:1587 +#: code:addons/account/account.py:1591 +#: code:addons/account/account.py:1677 +#: code:addons/account/account.py:2358 +#: code:addons/account/account.py:2678 +#: code:addons/account/account.py:3465 #: code:addons/account/account_analytic_line.py:89 #: code:addons/account/account_analytic_line.py:98 -#: code:addons/account/account_bank_statement.py:367 -#: code:addons/account/account_bank_statement.py:380 -#: code:addons/account/account_bank_statement.py:418 +#: code:addons/account/account_bank_statement.py:368 +#: code:addons/account/account_bank_statement.py:381 +#: code:addons/account/account_bank_statement.py:419 #: code:addons/account/account_cash_statement.py:256 #: code:addons/account/account_cash_statement.py:300 -#: code:addons/account/account_invoice.py:867 -#: code:addons/account/account_invoice.py:901 -#: code:addons/account/account_invoice.py:1091 -#: code:addons/account/account_move_line.py:578 -#: code:addons/account/account_move_line.py:831 +#: code:addons/account/account_invoice.py:899 +#: code:addons/account/account_invoice.py:933 +#: code:addons/account/account_invoice.py:1124 +#: code:addons/account/account_move_line.py:579 +#: code:addons/account/account_move_line.py:828 +#: code:addons/account/account_move_line.py:851 #: code:addons/account/account_move_line.py:854 -#: code:addons/account/account_move_line.py:857 -#: code:addons/account/account_move_line.py:1122 -#: code:addons/account/account_move_line.py:1124 -#: code:addons/account/account_move_line.py:1159 +#: code:addons/account/account_move_line.py:1119 +#: code:addons/account/account_move_line.py:1121 +#: code:addons/account/account_move_line.py:1156 #: code:addons/account/report/common_report_header.py:92 #: code:addons/account/wizard/account_change_currency.py:38 #: code:addons/account/wizard/account_change_currency.py:59 @@ -2027,11 +2037,11 @@ msgstr "" #: code:addons/account/wizard/account_report_common.py:158 #: code:addons/account/wizard/account_report_common.py:164 #: code:addons/account/wizard/account_use_model.py:44 -#: code:addons/account/wizard/pos_box.py:32 -#: code:addons/account/wizard/pos_box.py:36 +#: code:addons/account/wizard/pos_box.py:31 +#: code:addons/account/wizard/pos_box.py:35 #, python-format msgid "Error!" -msgstr "" +msgstr "Lỗi!" #. module: account #: model:ir.actions.act_window,help:account.action_invoice_tree2 @@ -2070,7 +2080,7 @@ msgid "period close" msgstr "đóng chu kỳ" #. module: account -#: code:addons/account/account.py:1049 +#: code:addons/account/account.py:1058 #, python-format msgid "" "This journal already contains items for this period, therefore you cannot " @@ -2085,7 +2095,7 @@ msgstr "Entries By Line" #. module: account #: field:account.vat.declaration,based_on:0 msgid "Based on" -msgstr "" +msgstr "Dựa trên" #. module: account #: model:ir.actions.act_window,help:account.action_bank_statement_tree @@ -2133,7 +2143,7 @@ msgstr "Phân tích ngân quỹ" #. module: account #: model:ir.actions.report.xml,name:account.account_journal_sale_purchase msgid "Sale/Purchase Journal" -msgstr "" +msgstr "Nhật ký Mua/Bán hàng" #. module: account #: view:account.analytic.account:0 @@ -2142,7 +2152,7 @@ msgid "Analytic account" msgstr "Tài khoản phân tích" #. module: account -#: code:addons/account/account_bank_statement.py:405 +#: code:addons/account/account_bank_statement.py:406 #, python-format msgid "Please verify that an account is defined in the journal." msgstr "Vui lòng kiểm tra việc gán một tài khoản cho sổ nhật ký này." @@ -2156,7 +2166,7 @@ msgstr "Hợp lệ" #: field:account.bank.statement,message_follower_ids:0 #: field:account.invoice,message_follower_ids:0 msgid "Followers" -msgstr "" +msgstr "Người theo dõi" #. module: account #: model:ir.actions.act_window,name:account.action_account_print_journal @@ -2185,14 +2195,14 @@ msgstr "Account Aged Trial balance Report" #. module: account #: view:account.fiscalyear.close.state:0 msgid "Close Fiscal Year" -msgstr "" +msgstr "Đóng năm tài khóa" #. module: account #. openerp-web #: code:addons/account/static/src/xml/account_move_line_quickadd.xml:14 #, python-format msgid "Journal :" -msgstr "" +msgstr "Nhật ký:" #. module: account #: sql_constraint:account.fiscal.position.tax:0 @@ -2209,12 +2219,12 @@ msgstr "Định nghĩa thuế" #: view:account.config.settings:0 #: model:ir.actions.act_window,name:account.action_account_config msgid "Configure Accounting" -msgstr "" +msgstr "Cấu hình kế toán" #. module: account #: field:account.invoice.report,uom_name:0 msgid "Reference Unit of Measure" -msgstr "" +msgstr "Tham chiếu đơn vị tính" #. module: account #: help:account.journal,allow_date:0 @@ -2230,12 +2240,12 @@ msgstr "" #: code:addons/account/static/src/xml/account_move_reconciliation.xml:8 #, python-format msgid "Good job!" -msgstr "" +msgstr "Tốt lắm!" #. module: account #: field:account.config.settings,module_account_asset:0 msgid "Assets management" -msgstr "" +msgstr "Quản lý tài sản" #. module: account #: view:account.account:0 @@ -2244,7 +2254,9 @@ msgstr "" #: selection:account.common.partner.report,result_selection:0 #: selection:account.partner.balance,result_selection:0 #: selection:account.partner.ledger,result_selection:0 +#: report:account.third_party_ledger:0 #: code:addons/account/report/account_partner_balance.py:299 +#: code:addons/account/report/account_partner_ledger.py:274 #, python-format msgid "Payable Accounts" msgstr "Các tài khoản phải trả" @@ -2411,7 +2423,7 @@ msgstr "Search Chart of Account Templates" #. module: account #: report:account.invoice:0 msgid "Customer Code" -msgstr "" +msgstr "Mã khách hàng" #. module: account #: view:account.account.type:0 @@ -2554,7 +2566,7 @@ msgid "Create an Account Based on this Template" msgstr "Tạo một Tài khoản dựa trên mẫu này" #. module: account -#: code:addons/account/account_invoice.py:901 +#: code:addons/account/account_invoice.py:933 #, python-format msgid "" "Cannot create the invoice.\n" @@ -2575,7 +2587,7 @@ msgid "Main Sequence" msgstr "Main Sequence" #. module: account -#: code:addons/account/account_bank_statement.py:477 +#: code:addons/account/account_bank_statement.py:478 #, python-format msgid "" "In order to delete a bank statement, you must first cancel it to delete " @@ -2599,7 +2611,7 @@ msgid "Fiscal Positions" msgstr "Fiscal Positions" #. module: account -#: code:addons/account/account_move_line.py:578 +#: code:addons/account/account_move_line.py:579 #, python-format msgid "You cannot create journal items on a closed account %s %s." msgstr "" @@ -2707,7 +2719,7 @@ msgid "Account Model Entries" msgstr "Account Model Entries" #. module: account -#: code:addons/account/account.py:3164 +#: code:addons/account/account.py:3202 #, python-format msgid "EXJ" msgstr "EXJ" @@ -2823,21 +2835,20 @@ msgid "Accounts" msgstr "Các tài khoản" #. module: account -#: code:addons/account/account.py:3503 -#: code:addons/account/account_bank_statement.py:404 -#: code:addons/account/account_invoice.py:378 -#: code:addons/account/account_invoice.py:484 -#: code:addons/account/account_invoice.py:582 -#: code:addons/account/account_invoice.py:597 -#: code:addons/account/account_invoice.py:605 -#: code:addons/account/account_invoice.py:627 -#: code:addons/account/account_move_line.py:535 +#: code:addons/account/account.py:3541 +#: code:addons/account/account_bank_statement.py:405 +#: code:addons/account/account_invoice.py:507 +#: code:addons/account/account_invoice.py:609 +#: code:addons/account/account_invoice.py:624 +#: code:addons/account/account_invoice.py:632 +#: code:addons/account/account_invoice.py:657 +#: code:addons/account/account_move_line.py:536 #, python-format msgid "Configuration Error!" msgstr "Lỗi cấu hình!" #. module: account -#: code:addons/account/account_bank_statement.py:433 +#: code:addons/account/account_bank_statement.py:434 #, python-format msgid "Statement %s confirmed, journal items were created." msgstr "" @@ -3030,7 +3041,7 @@ msgid "" msgstr "" #. module: account -#: code:addons/account/account.py:1062 +#: code:addons/account/account.py:1071 #, python-format msgid "You should choose the periods that belong to the same company." msgstr "" @@ -3043,7 +3054,7 @@ msgid "Sales by Account" msgstr "Doanh thu theo tài khoản" #. module: account -#: code:addons/account/account.py:1411 +#: code:addons/account/account.py:1449 #, python-format msgid "You cannot delete a posted journal entry \"%s\"." msgstr "" @@ -3059,8 +3070,8 @@ msgid "Sale journal" msgstr "" #. module: account -#: code:addons/account/account.py:2308 -#: code:addons/account/account_invoice.py:744 +#: code:addons/account/account.py:2346 +#: code:addons/account/account_invoice.py:775 #: code:addons/account/account_move_line.py:195 #, python-format msgid "You have to define an analytic journal on the '%s' journal!" @@ -3227,7 +3238,7 @@ msgid "Fiscal Position" msgstr "Fiscal Position" #. module: account -#: code:addons/account/account_invoice.py:791 +#: code:addons/account/account_invoice.py:823 #, python-format msgid "" "Tax base different!\n" @@ -3325,7 +3336,7 @@ msgstr "" "always use the rate at date." #. module: account -#: code:addons/account/account.py:2640 +#: code:addons/account/account.py:2678 #, python-format msgid "There is no parent code for the template account." msgstr "" @@ -3388,8 +3399,8 @@ msgid "View" msgstr "View" #. module: account -#: code:addons/account/account.py:3422 -#: code:addons/account/account_bank.py:95 +#: code:addons/account/account.py:3460 +#: code:addons/account/account_bank.py:94 #, python-format msgid "BNK" msgstr "BNK" @@ -3659,7 +3670,7 @@ msgstr "" "have the same references than the statement itself" #. module: account -#: code:addons/account/account_invoice.py:984 +#: code:addons/account/account_invoice.py:1016 #, python-format msgid "" "You cannot create an invoice on a centralized journal. Uncheck the " @@ -3674,7 +3685,7 @@ msgid "Starting Balance" msgstr "Số dư ban đầu" #. module: account -#: code:addons/account/account_invoice.py:1434 +#: code:addons/account/account_invoice.py:1465 #, python-format msgid "No Partner Defined !" msgstr "Không có đối tác được định nghĩa" @@ -3728,7 +3739,7 @@ msgid "" msgstr "" #. module: account -#: code:addons/account/account_move_line.py:535 +#: code:addons/account/account_move_line.py:536 #, python-format msgid "" "Cannot find any account journal of %s type for this company.\n" @@ -3878,7 +3889,7 @@ msgid "Period Length (days)" msgstr "" #. module: account -#: code:addons/account/account.py:1327 +#: code:addons/account/account.py:1363 #, python-format msgid "" "You cannot modify a posted entry of this journal.\n" @@ -3947,9 +3958,13 @@ msgid "VAT :" msgstr "Thuế GTGT :" #. module: account +#: report:account.account.balance:0 #: report:account.central.journal:0 #: view:account.config.settings:0 +#: report:account.general.journal:0 #: report:account.general.ledger:0 +#: report:account.general.ledger_landscape:0 +#: report:account.journal.period.print:0 #: report:account.partner.balance:0 #: report:account.third_party_ledger:0 #: report:account.third_party_ledger_other:0 @@ -4041,7 +4056,7 @@ msgid "Chart of Accounts Template" msgstr "Hoạch đồ Kế toán Mẫu" #. module: account -#: code:addons/account/account.py:2320 +#: code:addons/account/account.py:2358 #, python-format msgid "" "Maturity date of entry line generated by model line '%s' of model '%s' is " @@ -4053,8 +4068,10 @@ msgstr "" "Hãy xác định đối tác trên nó" #. module: account +#: report:account.account.balance:0 #: selection:account.balance.report,display_account:0 #: selection:account.common.account.report,display_account:0 +#: report:account.general.ledger_landscape:0 #: selection:account.report.general.ledger,display_account:0 #: selection:account.tax,type_tax_use:0 #: selection:account.tax.template,type_tax_use:0 @@ -4213,7 +4230,7 @@ msgid "Name" msgstr "Tên" #. module: account -#: code:addons/account/installer.py:94 +#: code:addons/account/installer.py:115 #, python-format msgid "No unconfigured company !" msgstr "" @@ -4284,8 +4301,8 @@ msgid "" msgstr "" #. module: account -#: code:addons/account/account_move_line.py:1061 -#: code:addons/account/account_move_line.py:1146 +#: code:addons/account/account_move_line.py:1058 +#: code:addons/account/account_move_line.py:1143 #, python-format msgid "You cannot use an inactive account." msgstr "" @@ -4315,7 +4332,7 @@ msgid "Consolidated Children" msgstr "Consolidated Children" #. module: account -#: code:addons/account/account_invoice.py:550 +#: code:addons/account/account_invoice.py:573 #: code:addons/account/wizard/account_invoice_refund.py:146 #, python-format msgid "Insufficient Data!" @@ -4523,7 +4540,7 @@ msgid "Cancel the Selected Invoices" msgstr "Hủy bỏ các hóa đơn được chọn" #. module: account -#: code:addons/account/account_bank_statement.py:423 +#: code:addons/account/account_bank_statement.py:424 #, python-format msgid "You have to assign an analytic journal on the '%s' journal!" msgstr "" @@ -4590,8 +4607,8 @@ msgid "Supplier invoice sequence" msgstr "" #. module: account -#: code:addons/account/account_invoice.py:583 -#: code:addons/account/account_invoice.py:598 +#: code:addons/account/account_invoice.py:610 +#: code:addons/account/account_invoice.py:625 #, python-format msgid "" "Cannot find a chart of account, you should create one from Settings\\" @@ -4654,7 +4671,7 @@ msgid "Account Base Code" msgstr "Account Base Code" #. module: account -#: code:addons/account/account_move_line.py:867 +#: code:addons/account/account_move_line.py:864 #, python-format msgid "" "You have to provide an account for the write off/exchange difference entry." @@ -4720,7 +4737,7 @@ msgid "Statement from invoice or payment" msgstr "Statement from invoice or payment" #. module: account -#: code:addons/account/installer.py:94 +#: code:addons/account/installer.py:115 #, python-format msgid "" "There is currently no company without chart of account. The wizard will " @@ -4774,7 +4791,7 @@ msgid "Bank statements are entered in the system." msgstr "Bank statements are entered in the system." #. module: account -#: code:addons/account/wizard/account_reconcile.py:121 +#: code:addons/account/wizard/account_reconcile.py:122 #, python-format msgid "Reconcile Writeoff" msgstr "Reconcile Writeoff" @@ -4864,7 +4881,7 @@ msgid "" msgstr "" #. module: account -#: code:addons/account/account_invoice.py:627 +#: code:addons/account/account_invoice.py:658 #, python-format msgid "" "Cannot find any account journal of %s type for this company.\n" @@ -4879,7 +4896,7 @@ msgid "Based On" msgstr "Dựa trên" #. module: account -#: code:addons/account/account.py:3166 +#: code:addons/account/account.py:3204 #, python-format msgid "ECNJ" msgstr "ECNJ" @@ -4945,7 +4962,7 @@ msgid "" msgstr "" #. module: account -#: code:addons/account/account.py:3356 +#: code:addons/account/account.py:3394 #, python-format msgid "Purchase Tax %.2f%%" msgstr "" @@ -5019,7 +5036,7 @@ msgid "" msgstr "" #. module: account -#: code:addons/account/account.py:3167 +#: code:addons/account/account.py:3205 #, python-format msgid "MISC" msgstr "" @@ -5188,7 +5205,7 @@ msgid "Tax Application" msgstr "Tax Application" #. module: account -#: code:addons/account/account_invoice.py:890 +#: code:addons/account/account_invoice.py:922 #, python-format msgid "" "Please verify the price of the invoice !\n" @@ -5362,7 +5379,7 @@ msgid "Target Moves" msgstr "Target Moves" #. module: account -#: code:addons/account/account.py:1416 +#: code:addons/account/account.py:1454 #, python-format msgid "" "Move cannot be deleted if linked to an invoice. (Invoice: %s - Move ID:%s)" @@ -5443,7 +5460,7 @@ msgid "Internal Name" msgstr "Tên nội bộ" #. module: account -#: code:addons/account/account_move_line.py:1188 +#: code:addons/account/account_move_line.py:1185 #, python-format msgid "" "Cannot create an automatic sequence for this piece.\n" @@ -5515,7 +5532,7 @@ msgid "Compute Code (if type=code)" msgstr "Compute Code (if type=code)" #. module: account -#: code:addons/account/account_invoice.py:485 +#: code:addons/account/account_invoice.py:508 #, python-format msgid "" "Cannot find a chart of accounts for this company, you should create one." @@ -5646,7 +5663,7 @@ msgid "Recompute taxes and total" msgstr "" #. module: account -#: code:addons/account/account.py:1103 +#: code:addons/account/account.py:1116 #, python-format msgid "You cannot modify/delete a journal with entries for this period." msgstr "" @@ -5676,7 +5693,7 @@ msgid "Amount Computation" msgstr "Tính toán giá trị" #. module: account -#: code:addons/account/account_move_line.py:1108 +#: code:addons/account/account_move_line.py:1105 #, python-format msgid "You can not add/modify entries in a closed period %s of journal %s." msgstr "" @@ -5976,7 +5993,7 @@ msgid "Fixed Amount" msgstr "Giá trị cố định" #. module: account -#: code:addons/account/account_move_line.py:1059 +#: code:addons/account/account_move_line.py:1056 #, python-format msgid "You cannot change the tax, you should remove and recreate lines." msgstr "" @@ -6027,14 +6044,14 @@ msgid "Child Accounts" msgstr "Tài khoản con" #. module: account -#: code:addons/account/account_move_line.py:1120 +#: code:addons/account/account_move_line.py:1117 #, python-format msgid "Move name (id): %s (%s)" msgstr "" #. module: account #: view:account.move.line.reconcile:0 -#: code:addons/account/account_move_line.py:882 +#: code:addons/account/account_move_line.py:879 #, python-format msgid "Write-Off" msgstr "Miễn bỏ" @@ -6060,7 +6077,7 @@ msgstr "Income" #: view:account.config.settings:0 #: view:account.invoice:0 #: view:account.invoice.report:0 -#: code:addons/account/account_invoice.py:355 +#: code:addons/account/account_invoice.py:390 #, python-format msgid "Supplier" msgstr "Nhà cung cấp" @@ -6080,7 +6097,7 @@ msgid "Account n°" msgstr "Tài khoản số" #. module: account -#: code:addons/account/account_invoice.py:92 +#: code:addons/account/account_invoice.py:95 #, python-format msgid "Free Reference" msgstr "Tham chiếu tự do" @@ -6090,7 +6107,9 @@ msgstr "Tham chiếu tự do" #: selection:account.common.partner.report,result_selection:0 #: selection:account.partner.balance,result_selection:0 #: selection:account.partner.ledger,result_selection:0 +#: report:account.third_party_ledger:0 #: code:addons/account/report/account_partner_balance.py:301 +#: code:addons/account/report/account_partner_ledger.py:276 #, python-format msgid "Receivable and Payable Accounts" msgstr "Các Tài khoản Phải thu và Phải trả" @@ -6199,7 +6218,7 @@ msgid "Filter by" msgstr "Lọc theo" #. module: account -#: code:addons/account/account.py:2296 +#: code:addons/account/account.py:2334 #, python-format msgid "You have a wrong expression \"%(...)s\" in your model !" msgstr "" @@ -6247,7 +6266,7 @@ msgid "Number of Days" msgstr "Số ngày" #. module: account -#: code:addons/account/account.py:1321 +#: code:addons/account/account.py:1357 #, python-format msgid "" "You cannot validate this journal entry because account \"%s\" does not " @@ -6395,7 +6414,7 @@ msgid "Models" msgstr "" #. module: account -#: code:addons/account/account_invoice.py:1091 +#: code:addons/account/account_invoice.py:1124 #, python-format msgid "" "You cannot cancel an invoice which is partially paid. You need to " @@ -6567,7 +6586,7 @@ msgid "You cannot create journal items on closed account." msgstr "" #. module: account -#: code:addons/account/account_invoice.py:606 +#: code:addons/account/account_invoice.py:633 #, python-format msgid "Invoice line account's company and invoice's compnay does not match." msgstr "" @@ -6588,7 +6607,7 @@ msgid "The related account currency if not equal to the company one." msgstr "The related account currency if not equal to the company one." #. module: account -#: code:addons/account/installer.py:48 +#: code:addons/account/installer.py:69 #, python-format msgid "Custom" msgstr "" @@ -6615,7 +6634,7 @@ msgid "Internal Transfers Account" msgstr "" #. module: account -#: code:addons/account/wizard/pos_box.py:33 +#: code:addons/account/wizard/pos_box.py:32 #, python-format msgid "Please check that the field 'Journal' is set on the Bank Statement" msgstr "" @@ -6641,7 +6660,7 @@ msgid "Power" msgstr "Power" #. module: account -#: code:addons/account/account.py:3427 +#: code:addons/account/account.py:3465 #, python-format msgid "Cannot generate an unused journal code." msgstr "" @@ -6717,12 +6736,12 @@ msgstr "" "children. In this case, the evaluation order is important." #. module: account -#: code:addons/account/account.py:1410 -#: code:addons/account/account.py:1415 -#: code:addons/account/account.py:1444 -#: code:addons/account/account.py:1451 -#: code:addons/account/account_invoice.py:983 -#: code:addons/account/account_move_line.py:1008 +#: code:addons/account/account.py:1448 +#: code:addons/account/account.py:1453 +#: code:addons/account/account.py:1482 +#: code:addons/account/account.py:1489 +#: code:addons/account/account_invoice.py:1015 +#: code:addons/account/account_move_line.py:1005 #: code:addons/account/wizard/account_automatic_reconcile.py:148 #: code:addons/account/wizard/account_fiscalyear_close.py:88 #: code:addons/account/wizard/account_fiscalyear_close.py:99 @@ -6807,7 +6826,9 @@ msgstr "" #: report:account.invoice:0 #: selection:account.invoice,type:0 #: selection:account.invoice.report,type:0 +#: code:addons/account/account_invoice.py:1160 #: selection:report.invoice.created,type:0 +#, python-format msgid "Supplier Refund" msgstr "Hoàn tiền cho Nhà cung cấp" @@ -6952,7 +6973,7 @@ msgstr "Analytic Entries Statistics" #. module: account #: code:addons/account/account_analytic_line.py:142 -#: code:addons/account/account_move_line.py:958 +#: code:addons/account/account_move_line.py:955 #, python-format msgid "Entries: " msgstr "Các bút toán: " @@ -7065,7 +7086,7 @@ msgstr "" #. module: account #: code:addons/account/account.py:1024 -#: code:addons/account/account_move_line.py:1108 +#: code:addons/account/account_move_line.py:1105 #, python-format msgid "Error !" msgstr "Lỗi !" @@ -7292,7 +7313,7 @@ msgid "" msgstr "" #. module: account -#: code:addons/account/account.py:2266 +#: code:addons/account/account.py:2304 #, python-format msgid "" "You can specify year, month and date in the name of the model using the " @@ -7371,7 +7392,7 @@ msgid "Done" msgstr "Hoàn tất" #. module: account -#: code:addons/account/account.py:1283 +#: code:addons/account/account.py:1319 #, python-format msgid "" "You cannot validate a non-balanced entry.\n" @@ -7667,7 +7688,7 @@ msgstr "Báo cáo" #. module: account #. openerp-web -#: code:addons/account/account_move_line.py:783 +#: code:addons/account/account_move_line.py:780 #: code:addons/account/static/src/js/account_move_reconciliation.js:90 #, python-format msgid "Warning" @@ -7733,7 +7754,7 @@ msgid "Use model" msgstr "Sử dụng mô hình" #. module: account -#: code:addons/account/account.py:1452 +#: code:addons/account/account.py:1490 #, python-format msgid "" "There is no default credit account defined \n" @@ -7784,7 +7805,7 @@ msgid "Root/View" msgstr "" #. module: account -#: code:addons/account/account.py:3168 +#: code:addons/account/account.py:3206 #, python-format msgid "OPEJ" msgstr "" @@ -7853,7 +7874,7 @@ msgid "Maturity Date" msgstr "" #. module: account -#: code:addons/account/account.py:3155 +#: code:addons/account/account.py:3193 #, python-format msgid "Sales Journal" msgstr "Sổ nhật ký Bán hàng" @@ -7864,7 +7885,7 @@ msgid "Invoice Tax" msgstr "Thuế Hóa đơn" #. module: account -#: code:addons/account/account_move_line.py:1188 +#: code:addons/account/account_move_line.py:1185 #, python-format msgid "No piece number !" msgstr "No piece number !" @@ -7903,7 +7924,7 @@ msgid "Sales Properties" msgstr "Các thuộc tính Bán hàng" #. module: account -#: code:addons/account/account.py:3503 +#: code:addons/account/account.py:3541 #, python-format msgid "" "You have to set a code for the bank account defined on the selected chart of " @@ -7928,7 +7949,7 @@ msgstr "Đến" #. module: account #: selection:account.move.line,centralisation:0 -#: code:addons/account/account.py:1503 +#: code:addons/account/account.py:1541 #, python-format msgid "Currency Adjustment" msgstr "" @@ -7960,7 +7981,7 @@ msgid "May" msgstr "Tháng Năm" #. module: account -#: code:addons/account/account_invoice.py:788 +#: code:addons/account/account_invoice.py:820 #, python-format msgid "Global taxes defined, but they are not in invoice lines !" msgstr "" @@ -8001,7 +8022,7 @@ msgstr "Post Journal Entries" #: view:account.config.settings:0 #: view:account.invoice:0 #: view:account.invoice.report:0 -#: code:addons/account/account_invoice.py:353 +#: code:addons/account/account_invoice.py:388 #, python-format msgid "Customer" msgstr "Khách hàng" @@ -8017,7 +8038,7 @@ msgstr "" #: selection:account.bank.accounts.wizard,account_type:0 #: selection:account.entries.report,type:0 #: selection:account.journal,type:0 -#: code:addons/account/account.py:3054 +#: code:addons/account/account.py:3092 #, python-format msgid "Cash" msgstr "Tiền mặt" @@ -8187,6 +8208,7 @@ msgstr "Đã sửa" #: code:addons/account/account.py:653 #: code:addons/account/account.py:656 #: code:addons/account/account.py:668 +#: code:addons/account/account.py:1031 #, python-format msgid "Warning !" msgstr "Cảnh báo !" @@ -8254,7 +8276,7 @@ msgid "Select a currency to apply on the invoice" msgstr "Chọn một loại tiền để áp dụng cho hóa đơn" #. module: account -#: code:addons/account/account_invoice.py:869 +#: code:addons/account/account_invoice.py:901 #, python-format msgid "No Invoice Lines !" msgstr "No Invoice Lines !" @@ -8279,7 +8301,7 @@ msgid "Tax Use In" msgstr "Thuế sử dụng trong" #. module: account -#: code:addons/account/account_bank_statement.py:381 +#: code:addons/account/account_bank_statement.py:382 #, python-format msgid "" "The statement balance is incorrect !\n" @@ -8287,7 +8309,7 @@ msgid "" msgstr "" #. module: account -#: code:addons/account/account_bank_statement.py:419 +#: code:addons/account/account_bank_statement.py:420 #, python-format msgid "The account entries lines are not in valid state." msgstr "The account entries lines are not in valid state." @@ -8331,7 +8353,7 @@ msgid "Associated Partner" msgstr "Đối tác Liên quan" #. module: account -#: code:addons/account/account_invoice.py:1434 +#: code:addons/account/account_invoice.py:1465 #, python-format msgid "You must first select a partner !" msgstr "You must first select a partner !" @@ -8412,13 +8434,13 @@ msgstr "" "tính toán các khoản thuế tiếp theo" #. module: account -#: code:addons/account/account.py:3158 +#: code:addons/account/account.py:3196 #, python-format msgid "Purchase Refund Journal" msgstr "Sổ nhật ký Hoàn tiền Mua hàng" #. module: account -#: code:addons/account/account.py:1297 +#: code:addons/account/account.py:1333 #, python-format msgid "Please define a sequence on the journal." msgstr "" @@ -8663,7 +8685,7 @@ msgid "${object.company_id.name} Invoice (Ref ${object.number or 'n/a'})" msgstr "" #. module: account -#: code:addons/account/account_move_line.py:1213 +#: code:addons/account/account_move_line.py:1210 #, python-format msgid "" "You cannot use this general account in this journal, check the tab 'Entry " @@ -8764,7 +8786,7 @@ msgid "The partner account used for this invoice." msgstr "The partner account used for this invoice." #. module: account -#: code:addons/account/account.py:3353 +#: code:addons/account/account.py:3391 #, python-format msgid "Tax %.2f%%" msgstr "" @@ -8782,7 +8804,7 @@ msgid "Payment Term Line" msgstr "Payment Term Line" #. module: account -#: code:addons/account/account.py:3156 +#: code:addons/account/account.py:3194 #, python-format msgid "Purchase Journal" msgstr "Purchase Journal" @@ -8953,7 +8975,7 @@ msgid "Journal Name" msgstr "Journal Name" #. module: account -#: code:addons/account/account_move_line.py:832 +#: code:addons/account/account_move_line.py:829 #, python-format msgid "Entry \"%s\" is not valid !" msgstr "Bút toán \"%s\" không hợp lệ !" @@ -9005,7 +9027,7 @@ msgstr "" "entry." #. module: account -#: code:addons/account/account_move_line.py:1009 +#: code:addons/account/account_move_line.py:1006 #, python-format msgid "The account move (%s) for centralisation has been confirmed." msgstr "" @@ -9067,7 +9089,7 @@ msgid "Reconciled entries" msgstr "Reconciled entries" #. module: account -#: code:addons/account/account.py:2296 +#: code:addons/account/account.py:2334 #, python-format msgid "Wrong model !" msgstr "" @@ -9089,7 +9111,7 @@ msgid "Print Account Partner Balance" msgstr "Print Account Partner Balance" #. module: account -#: code:addons/account/account_move_line.py:1124 +#: code:addons/account/account_move_line.py:1121 #, python-format msgid "" "You cannot do this modification on a reconciled entry. You can just change " @@ -9123,7 +9145,7 @@ msgstr "chưa biết" #. module: account #: field:account.fiscalyear.close,journal_id:0 -#: code:addons/account/account.py:3160 +#: code:addons/account/account.py:3198 #, python-format msgid "Opening Entries Journal" msgstr "Opening Entries Journal" @@ -9220,7 +9242,7 @@ msgid "Unit of Currency" msgstr "" #. module: account -#: code:addons/account/account.py:3157 +#: code:addons/account/account.py:3195 #, python-format msgid "Sales Refund Journal" msgstr "Sales Refund Journal" @@ -9286,13 +9308,13 @@ msgid "Purchase Tax(%)" msgstr "Thuế mua hàng(%)" #. module: account -#: code:addons/account/account_invoice.py:869 +#: code:addons/account/account_invoice.py:901 #, python-format msgid "Please create some invoice lines." msgstr "Please create some invoice lines." #. module: account -#: code:addons/account/wizard/pos_box.py:37 +#: code:addons/account/wizard/pos_box.py:36 #, python-format msgid "" "Please check that the field 'Internal Transfers Account' is set on the " @@ -9305,7 +9327,7 @@ msgid "Display Detail" msgstr "" #. module: account -#: code:addons/account/account.py:3165 +#: code:addons/account/account.py:3203 #, python-format msgid "SCNJ" msgstr "SCNJ" @@ -9467,8 +9489,8 @@ msgid "Receivable Account" msgstr "Tài khoản Phải thu" #. module: account -#: code:addons/account/account_move_line.py:774 -#: code:addons/account/account_move_line.py:827 +#: code:addons/account/account_move_line.py:771 +#: code:addons/account/account_move_line.py:824 #, python-format msgid "To reconcile the entries company should be the same for all entries." msgstr "" @@ -9569,7 +9591,7 @@ msgid "Move" msgstr "Move" #. module: account -#: code:addons/account/account_bank_statement.py:477 +#: code:addons/account/account_bank_statement.py:478 #: code:addons/account/wizard/account_period_close.py:51 #, python-format msgid "Invalid Action!" @@ -9666,7 +9688,7 @@ msgid "Balance :" msgstr "Số dư :" #. module: account -#: code:addons/account/account.py:1549 +#: code:addons/account/account.py:1587 #, python-format msgid "Cannot create moves for different companies." msgstr "" @@ -9757,7 +9779,7 @@ msgid "Immediate Payment" msgstr "" #. module: account -#: code:addons/account/account.py:1464 +#: code:addons/account/account.py:1502 #, python-format msgid " Centralisation" msgstr "" @@ -9846,7 +9868,7 @@ msgid "Unreconciled" msgstr "Chưa được đối soát" #. module: account -#: code:addons/account/account_invoice.py:890 +#: code:addons/account/account_invoice.py:922 #, python-format msgid "Bad total !" msgstr "Tổng không hợp lệ !" @@ -9938,7 +9960,7 @@ msgid "Comparison" msgstr "" #. module: account -#: code:addons/account/account_move_line.py:1122 +#: code:addons/account/account_move_line.py:1119 #, python-format msgid "" "You cannot do this modification on a confirmed entry. You can just change " @@ -10027,7 +10049,7 @@ msgid "Journal Entry Model" msgstr "Journal Entry Model" #. module: account -#: code:addons/account/account.py:1064 +#: code:addons/account/account.py:1073 #, python-format msgid "Start period should precede then end period." msgstr "" @@ -10329,6 +10351,7 @@ msgstr "Mở việc đối soát với ngân hàng" #. module: account #: field:account.account,company_id:0 +#: report:account.account.balance:0 #: field:account.aged.trial.balance,company_id:0 #: field:account.analytic.journal,company_id:0 #: field:account.balance.report,company_id:0 @@ -10344,7 +10367,9 @@ msgstr "Mở việc đối soát với ngân hàng" #: field:account.entries.report,company_id:0 #: field:account.fiscal.position,company_id:0 #: field:account.fiscalyear,company_id:0 +#: report:account.general.journal:0 #: field:account.general.journal,company_id:0 +#: report:account.general.ledger_landscape:0 #: field:account.installer,company_id:0 #: field:account.invoice,company_id:0 #: field:account.invoice.line,company_id:0 @@ -10353,6 +10378,7 @@ msgstr "Mở việc đối soát với ngân hàng" #: field:account.invoice.tax,company_id:0 #: field:account.journal,company_id:0 #: field:account.journal.period,company_id:0 +#: report:account.journal.period.print:0 #: field:account.model,company_id:0 #: field:account.move,company_id:0 #: field:account.move.line,company_id:0 @@ -10448,7 +10474,7 @@ msgid "" msgstr "" #. module: account -#: code:addons/account/account_move_line.py:1059 +#: code:addons/account/account_move_line.py:1056 #, python-format msgid "Unable to change tax!" msgstr "" @@ -10517,8 +10543,10 @@ msgstr "Accounts Fiscal Position" #: view:account.invoice:0 #: selection:account.invoice,type:0 #: selection:account.invoice.report,type:0 +#: code:addons/account/account_invoice.py:1158 #: model:process.process,name:account.process_process_supplierinvoiceprocess0 #: selection:report.invoice.created,type:0 +#, python-format msgid "Supplier Invoice" msgstr "Hóa đơn nhà cung cấp" @@ -10604,8 +10632,10 @@ msgid "" msgstr "" #. module: account +#: report:account.account.balance:0 #: selection:account.balance.report,display_account:0 #: selection:account.common.account.report,display_account:0 +#: report:account.general.ledger_landscape:0 #: selection:account.report.general.ledger,display_account:0 msgid "With movements" msgstr "With movements" @@ -10701,7 +10731,7 @@ msgid "Entries Sorted by" msgstr "" #. module: account -#: code:addons/account/account_invoice.py:1515 +#: code:addons/account/account_invoice.py:1546 #, python-format msgid "" "The selected unit of measure is not compatible with the unit of measure of " @@ -10782,6 +10812,8 @@ msgstr "Tìm kiếm hóa đơn" #: report:account.invoice:0 #: view:account.invoice:0 #: view:account.invoice.report:0 +#: code:addons/account/account_invoice.py:1159 +#, python-format msgid "Refund" msgstr "Hoàn tiền" @@ -10852,7 +10884,7 @@ msgid "Manual Invoice Taxes" msgstr "Manual Invoice Taxes" #. module: account -#: code:addons/account/account_invoice.py:550 +#: code:addons/account/account_invoice.py:573 #, python-format msgid "The payment term of supplier does not have a payment term line." msgstr "" diff --git a/addons/account/report/account_aged_partner_balance.py b/addons/account/report/account_aged_partner_balance.py index 897b8366b7a..3b000e40592 100644 --- a/addons/account/report/account_aged_partner_balance.py +++ b/addons/account/report/account_aged_partner_balance.py @@ -366,12 +366,13 @@ class aged_trial_report(report_sxw.rml_parse, common_report_header): return period or 0.0 def _get_partners(self,data): + # TODO: deprecated, to remove in trunk if data['form']['result_selection'] == 'customer': - return 'Receivable Accounts' + return self._translate('Receivable Accounts') elif data['form']['result_selection'] == 'supplier': - return 'Payable Accounts' + return self._translate('Payable Accounts') elif data['form']['result_selection'] == 'customer_supplier': - return 'Receivable and Payable Accounts' + return self._translate('Receivable and Payable Accounts') return '' report_sxw.report_sxw('report.account.aged_trial_balance', 'res.partner', diff --git a/addons/account/report/account_aged_partner_balance.rml b/addons/account/report/account_aged_partner_balance.rml index fb79ab0d199..5b5404e9c86 100644 --- a/addons/account/report/account_aged_partner_balance.rml +++ b/addons/account/report/account_aged_partner_balance.rml @@ -147,7 +147,9 @@ [[ data['form']['period_length'] ]] - [[ get_partners(data) ]] + Receivable Accounts[[ data['form']['result_selection'] == 'customer' or removeParentNode('para') ]] + Payable Accounts[[ data['form']['result_selection'] == 'supplier' or removeParentNode('para') ]] + Receivable and Payable Accounts[[ data['form']['result_selection'] == 'customer_supplier' or removeParentNode('para') ]] [[ data['form']['direction_selection'] ]] @@ -166,7 +168,8 @@ Partners - [[ data['form']['direction_selection'] == 'future' and 'Due' or 'Not due' ]] + Due[[ data['form']['direction_selection'] == 'future' and ' ' or removeParentNode('para') ]] + Not due[[ data['form']['direction_selection'] != 'future' and ' ' or removeParentNode('para') ]] [[ data['form']['4']['name'] ]] diff --git a/addons/account/report/account_balance.rml b/addons/account/report/account_balance.rml index 88980a9cd97..6ddfc238bff 100644 --- a/addons/account/report/account_balance.rml +++ b/addons/account/report/account_balance.rml @@ -211,8 +211,10 @@ - [[ data['model']=='account.account' and 'Company'or removeParentNode('para') ]] - [[ data['model']=='ir.ui.menu' and 'Chart of Accounts' or removeParentNode('para') ]] + + Company[[ data['model']=='account.account' and ' ' or removeParentNode('para') ]] + Chart of Accounts[[ data['model']=='ir.ui.menu' and ' ' or removeParentNode('para') ]] + Fiscal Year @@ -233,7 +235,11 @@ [[ get_fiscalyear(data) or '' ]] - [[ (data['form']['display_account']=='all' and 'All') or (data['form']['display_account']=='movement' and 'With movements') or 'With balance is not equal to 0']] + + All[[ data['form']['display_account']=='all' and ' ' or removeParentNode('para') ]] + With movements[[ data['form']['display_account']=='movement' and ' ' or removeParentNode('para') ]] + With balance is not equal to 0[[ data['form']['display_account']=='not_zero' and ' ' or removeParentNode('para') ]] + [[ data['form']['filter']=='filter_no' and get_filter(data) or removeParentNode('para') ]] [[ data['form']['filter']=='filter_date' or removeParentNode('blockTable') ]] diff --git a/addons/account/report/account_general_journal.rml b/addons/account/report/account_general_journal.rml index 4ad086d6bd4..dce30e59918 100644 --- a/addons/account/report/account_general_journal.rml +++ b/addons/account/report/account_general_journal.rml @@ -220,8 +220,8 @@ - [[ data['model']=='account.journal.period' and 'Company' or removeParentNode('para') ]] - [[ data['model']=='ir.ui.menu' and 'Chart of Accounts' or removeParentNode('para') ]] + Company[[ data['model']=='account.journal.period' and ' ' or removeParentNode('para') ]] + Chart of Accounts[[ data['model']=='ir.ui.menu' and ' ' or removeParentNode('para') ]] Fiscal Year Journals Filter By [[ data['form']['filter']!='filter_no' and get_filter(data) ]] diff --git a/addons/account/report/account_general_ledger_landscape.rml b/addons/account/report/account_general_ledger_landscape.rml index 7ae5db98f20..c5d24343148 100644 --- a/addons/account/report/account_general_ledger_landscape.rml +++ b/addons/account/report/account_general_ledger_landscape.rml @@ -360,9 +360,8 @@ - [[ data['model']=='account.account' and 'Company' or removeParentNode('para') ]] - [[ data['model']=='ir.ui.menu' and 'Chart of Accounts' or removeParentNode('para') ]] - + Company[[ data['model']=='account.account' and ' ' or removeParentNode('para') ]] + Chart of Accounts[[ data['model']=='ir.ui.menu' and ' ' or removeParentNode('para') ]] Fiscal Year @@ -395,7 +394,9 @@ [[', '.join([ lt or '' for lt in get_journal(data) ]) ]] - [[ (data['form']['display_account']=='all' and 'All') or (data['form']['display_account']=='movement' and 'With movements') or 'With balance is not equal to 0']] + All[[ data['form']['display_account']=='all' and ' ' or removeParentNode('para') ]] + With movements[[ data['form']['display_account']=='movement' and ' ' or removeParentNode('para') ]] + With balance is not equal to 0[[ data['form']['display_account']=='not_zero' and ' ' or removeParentNode('para') ]] [[ data['form']['filter']=='filter_no' and get_filter(data) or removeParentNode('para') ]] diff --git a/addons/account/report/account_journal.py b/addons/account/report/account_journal.py index 769a8335f55..97e19be4b0c 100644 --- a/addons/account/report/account_journal.py +++ b/addons/account/report/account_journal.py @@ -189,11 +189,12 @@ class journal_print(report_sxw.rml_parse, common_report_header): return data['form']['amount_currency'] def _get_sortby(self, data): + # TODO: deprecated, to remove in trunk if self.sort_selection == 'date': - return 'Date' + return self._translate('Date') elif self.sort_selection == 'ref': - return 'Reference Number' - return 'Date' + return self._translate('Reference Number') + return self._translate('Date') report_sxw.report_sxw('report.account.journal.period.print', 'account.journal.period', 'addons/account/report/account_journal.rml', parser=journal_print, header='external') report_sxw.report_sxw('report.account.journal.period.print.sale.purchase', 'account.journal.period', 'addons/account/report/account_journal_sale_purchase.rml', parser=journal_print, header='external') diff --git a/addons/account/report/account_journal.rml b/addons/account/report/account_journal.rml index fb203d4e664..6d606ed1937 100644 --- a/addons/account/report/account_journal.rml +++ b/addons/account/report/account_journal.rml @@ -186,8 +186,8 @@ - [[ data['model']=='account.journal.period'and 'Company' or removeParentNode('para') ]] - [[ data['model']=='ir.ui.menu' and 'Chart of Accounts' or removeParentNode('para') ]] + Company[[ data['model']=='account.journal.period'and ' ' or removeParentNode('para') ]] + Chart of Accounts[[ data['model']=='ir.ui.menu' and ' ' or removeParentNode('para') ]] Fiscal Year Journal Period @@ -199,8 +199,10 @@ [[ get_fiscalyear(data) or '' ]] [[ o.journal_id.name ]] [[ o.period_id.name ]] - [[ get_sortby(data) ]] - [[ get_target_move(data) ]] + + Date[[ data['form'].get('sort_selection', 'date') == 'date' and ' ' or removeParentNode('para') ]] + Reference Number[[ data['form'].get('sort_selection', 'date') == 'ref' and ' ' or removeParentNode('para') ]] + diff --git a/addons/account/report/account_partner_ledger.py b/addons/account/report/account_partner_ledger.py index 21c1ee3d846..d21323e02fc 100644 --- a/addons/account/report/account_partner_ledger.py +++ b/addons/account/report/account_partner_ledger.py @@ -267,12 +267,13 @@ class third_party_ledger(report_sxw.rml_parse, common_report_header): return result_tmp + result_init def _get_partners(self): + # TODO: deprecated, to remove in trunk if self.result_selection == 'customer': - return 'Receivable Accounts' + return _('Receivable Accounts') elif self.result_selection == 'supplier': - return 'Payable Accounts' + return _('Payable Accounts') elif self.result_selection == 'customer_supplier': - return 'Receivable and Payable Accounts' + return _('Receivable and Payable Accounts') return '' def _sum_currency_amount_account(self, account, form): diff --git a/addons/account/report/account_partner_ledger.rml b/addons/account/report/account_partner_ledger.rml index 0d7122369c6..48ed6d4afe3 100644 --- a/addons/account/report/account_partner_ledger.rml +++ b/addons/account/report/account_partner_ledger.rml @@ -423,7 +423,9 @@ - [[ get_partners() ]] + Receivable Accounts[[ data['form'].get('result_selection', 'customer') == 'customer' or removeParentNode('para') ]] + Payable Accounts[[ data['form'].get('result_selection', 'customer') == 'supplier' or removeParentNode('para') ]] + Receivable and Payable Accounts[[ data['form'].get('result_selection', 'customer') == 'customer_supplier' or removeParentNode('para') ]] [[ get_target_move(data) ]] diff --git a/addons/account/html/account_illu_01.png b/addons/account/static/description/account_illu_01.png similarity index 100% rename from addons/account/html/account_illu_01.png rename to addons/account/static/description/account_illu_01.png diff --git a/addons/account/html/account_illu_02.png b/addons/account/static/description/account_illu_02.png similarity index 100% rename from addons/account/html/account_illu_02.png rename to addons/account/static/description/account_illu_02.png diff --git a/addons/account/html/account_illu_03.png b/addons/account/static/description/account_illu_03.png similarity index 100% rename from addons/account/html/account_illu_03.png rename to addons/account/static/description/account_illu_03.png diff --git a/addons/account/html/account_sc_00.png b/addons/account/static/description/account_sc_00.png similarity index 100% rename from addons/account/html/account_sc_00.png rename to addons/account/static/description/account_sc_00.png diff --git a/addons/account/html/account_sc_01.png b/addons/account/static/description/account_sc_01.png similarity index 100% rename from addons/account/html/account_sc_01.png rename to addons/account/static/description/account_sc_01.png diff --git a/addons/account/html/account_sc_02.png b/addons/account/static/description/account_sc_02.png similarity index 100% rename from addons/account/html/account_sc_02.png rename to addons/account/static/description/account_sc_02.png diff --git a/addons/account/html/account_sc_03.png b/addons/account/static/description/account_sc_03.png similarity index 100% rename from addons/account/html/account_sc_03.png rename to addons/account/static/description/account_sc_03.png diff --git a/addons/account/html/account_sc_04.png b/addons/account/static/description/account_sc_04.png similarity index 100% rename from addons/account/html/account_sc_04.png rename to addons/account/static/description/account_sc_04.png diff --git a/addons/account/html/account_sc_05.png b/addons/account/static/description/account_sc_05.png similarity index 100% rename from addons/account/html/account_sc_05.png rename to addons/account/static/description/account_sc_05.png diff --git a/addons/account/html/account_sc_06.png b/addons/account/static/description/account_sc_06.png similarity index 100% rename from addons/account/html/account_sc_06.png rename to addons/account/static/description/account_sc_06.png diff --git a/addons/account/html/index.html b/addons/account/static/description/index.html similarity index 100% rename from addons/account/html/index.html rename to addons/account/static/description/index.html diff --git a/addons/account/html/sc00.png b/addons/account/static/description/sc00.png similarity index 100% rename from addons/account/html/sc00.png rename to addons/account/static/description/sc00.png diff --git a/addons/account/html/testimonial_sunil.jpg b/addons/account/static/description/testimonial_sunil.jpg similarity index 100% rename from addons/account/html/testimonial_sunil.jpg rename to addons/account/static/description/testimonial_sunil.jpg diff --git a/addons/account/static/src/js/account_move_line_quickadd.js b/addons/account/static/src/js/account_move_line_quickadd.js index 997b2b03bb6..0b904e19da6 100644 --- a/addons/account/static/src/js/account_move_line_quickadd.js +++ b/addons/account/static/src/js/account_move_line_quickadd.js @@ -84,7 +84,7 @@ openerp.account.quickadd = function (instance) { }, search_by_journal_period: function() { var self = this; - var domain = []; + var domain = ['|',['debit', '!=', 0], ['credit', '!=', 0]]; if (self.current_journal !== null) domain.push(["journal_id", "=", self.current_journal]); if (self.current_period !== null) domain.push(["period_id", "=", self.current_period]); self.last_context["journal_id"] = self.current_journal === null ? false : self.current_journal; diff --git a/addons/account/wizard/account_report_common.py b/addons/account/wizard/account_report_common.py index c457140684a..871aea9e4d9 100644 --- a/addons/account/wizard/account_report_common.py +++ b/addons/account/wizard/account_report_common.py @@ -175,7 +175,7 @@ class account_common_report(osv.osv_memory): data['form'][field] = data['form'][field][0] used_context = self._build_contexts(cr, uid, ids, data, context=context) data['form']['periods'] = used_context.get('periods', False) and used_context['periods'] or [] - data['form']['used_context'] = used_context + data['form']['used_context'] = dict(used_context, lang=context.get('lang', 'en_US')) return self._print_report(cr, uid, ids, data, context=context) diff --git a/addons/account_accountant/static/src/img/icon.png b/addons/account_accountant/static/description/icon.png similarity index 100% rename from addons/account_accountant/static/src/img/icon.png rename to addons/account_accountant/static/description/icon.png diff --git a/addons/account_analytic_plans/account_analytic_plans_view.xml b/addons/account_analytic_plans/account_analytic_plans_view.xml index 7fb4091b45f..42b17ae06c3 100644 --- a/addons/account_analytic_plans/account_analytic_plans_view.xml +++ b/addons/account_analytic_plans/account_analytic_plans_view.xml @@ -248,9 +248,12 @@ account.analytic.default - + + 1 + + - + diff --git a/addons/account_asset/static/src/img/icon.png b/addons/account_asset/static/description/icon.png similarity index 100% rename from addons/account_asset/static/src/img/icon.png rename to addons/account_asset/static/description/icon.png diff --git a/addons/account_cancel/i18n/vi.po b/addons/account_cancel/i18n/vi.po index 8198e802022..89a7feb7942 100644 --- a/addons/account_cancel/i18n/vi.po +++ b/addons/account_cancel/i18n/vi.po @@ -8,19 +8,19 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-12-21 17:05+0000\n" -"PO-Revision-Date: 2010-12-21 14:22+0000\n" -"Last-Translator: OpenERP Administrators \n" +"PO-Revision-Date: 2013-06-30 16:08+0000\n" +"Last-Translator: Hung Tran \n" "Language-Team: Vietnamese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:42+0000\n" -"X-Generator: Launchpad (build 16532)\n" +"X-Launchpad-Export-Date: 2013-07-01 05:14+0000\n" +"X-Generator: Launchpad (build 16692)\n" #. module: account_cancel #: view:account.invoice:0 msgid "Cancel" -msgstr "" +msgstr "Hủy bỏ" #~ msgid "Account Cancel" #~ msgstr "Hủy bỏ Tài khoản" diff --git a/addons/account_voucher/html/account_illu_01.png b/addons/account_voucher/static/description/account_illu_01.png similarity index 100% rename from addons/account_voucher/html/account_illu_01.png rename to addons/account_voucher/static/description/account_illu_01.png diff --git a/addons/account_voucher/html/account_sc_00.png b/addons/account_voucher/static/description/account_sc_00.png similarity index 100% rename from addons/account_voucher/html/account_sc_00.png rename to addons/account_voucher/static/description/account_sc_00.png diff --git a/addons/account_voucher/html/account_sc_02.png b/addons/account_voucher/static/description/account_sc_02.png similarity index 100% rename from addons/account_voucher/html/account_sc_02.png rename to addons/account_voucher/static/description/account_sc_02.png diff --git a/addons/account_voucher/html/account_sc_03.png b/addons/account_voucher/static/description/account_sc_03.png similarity index 100% rename from addons/account_voucher/html/account_sc_03.png rename to addons/account_voucher/static/description/account_sc_03.png diff --git a/addons/account_voucher/html/account_sc_04.png b/addons/account_voucher/static/description/account_sc_04.png similarity index 100% rename from addons/account_voucher/html/account_sc_04.png rename to addons/account_voucher/static/description/account_sc_04.png diff --git a/addons/account_voucher/html/account_sc_06.png b/addons/account_voucher/static/description/account_sc_06.png similarity index 100% rename from addons/account_voucher/html/account_sc_06.png rename to addons/account_voucher/static/description/account_sc_06.png diff --git a/addons/account_voucher/html/bazile.png b/addons/account_voucher/static/description/bazile.png similarity index 100% rename from addons/account_voucher/html/bazile.png rename to addons/account_voucher/static/description/bazile.png diff --git a/addons/account_voucher/static/src/img/icon.png b/addons/account_voucher/static/description/icon.png similarity index 100% rename from addons/account_voucher/static/src/img/icon.png rename to addons/account_voucher/static/description/icon.png diff --git a/addons/account_voucher/html/index.html b/addons/account_voucher/static/description/index.html similarity index 100% rename from addons/account_voucher/html/index.html rename to addons/account_voucher/static/description/index.html diff --git a/addons/account_voucher/html/testimonial_sunil.jpg b/addons/account_voucher/static/description/testimonial_sunil.jpg similarity index 100% rename from addons/account_voucher/html/testimonial_sunil.jpg rename to addons/account_voucher/static/description/testimonial_sunil.jpg diff --git a/addons/auth_oauth_signup/i18n/vi.po b/addons/auth_oauth_signup/i18n/vi.po new file mode 100644 index 00000000000..bdc3eff5b8d --- /dev/null +++ b/addons/auth_oauth_signup/i18n/vi.po @@ -0,0 +1,23 @@ +# Vietnamese translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-12-21 17:05+0000\n" +"PO-Revision-Date: 2013-06-27 06:49+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Vietnamese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: auth_oauth_signup +#: model:ir.model,name:auth_oauth_signup.model_res_users +msgid "Users" +msgstr "Người dùng" diff --git a/addons/auth_openid/i18n/vi.po b/addons/auth_openid/i18n/vi.po new file mode 100644 index 00000000000..d1040420132 --- /dev/null +++ b/addons/auth_openid/i18n/vi.po @@ -0,0 +1,97 @@ +# Vietnamese translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-12-21 17:05+0000\n" +"PO-Revision-Date: 2013-06-27 16:29+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Vietnamese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: auth_openid +#. openerp-web +#: code:addons/auth_openid/static/src/xml/auth_openid.xml:24 +#, python-format +msgid "Username" +msgstr "Tên đăng nhập" + +#. module: auth_openid +#. openerp-web +#: code:addons/auth_openid/static/src/xml/auth_openid.xml:12 +#: view:res.users:0 +#, python-format +msgid "OpenID" +msgstr "OpenID" + +#. module: auth_openid +#. openerp-web +#: code:addons/auth_openid/static/src/xml/auth_openid.xml:30 +#: field:res.users,openid_url:0 +#, python-format +msgid "OpenID URL" +msgstr "Đường dẫn OpenID" + +#. module: auth_openid +#. openerp-web +#: code:addons/auth_openid/static/src/xml/auth_openid.xml:9 +#: code:addons/auth_openid/static/src/xml/auth_openid.xml:10 +#, python-format +msgid "Google" +msgstr "Google" + +#. module: auth_openid +#. openerp-web +#: code:addons/auth_openid/static/src/xml/auth_openid.xml:11 +#, python-format +msgid "Launchpad" +msgstr "Launchpad" + +#. module: auth_openid +#: help:res.users,openid_email:0 +msgid "Used for disambiguation in case of a shared OpenID URL" +msgstr "" + +#. module: auth_openid +#. openerp-web +#: code:addons/auth_openid/static/src/xml/auth_openid.xml:18 +#, python-format +msgid "Google Apps Domain" +msgstr "" + +#. module: auth_openid +#: field:res.users,openid_email:0 +msgid "OpenID Email" +msgstr "OpenID Email" + +#. module: auth_openid +#: field:res.users,openid_key:0 +msgid "OpenID Key" +msgstr "" + +#. module: auth_openid +#. openerp-web +#: code:addons/auth_openid/static/src/xml/auth_openid.xml:8 +#, python-format +msgid "Password" +msgstr "Mật khẩu" + +#. module: auth_openid +#. openerp-web +#: code:addons/auth_openid/static/src/xml/auth_openid.xml:10 +#, python-format +msgid "Google Apps" +msgstr "" + +#. module: auth_openid +#: model:ir.model,name:auth_openid.model_res_users +msgid "Users" +msgstr "Người dùng" diff --git a/addons/auth_signup/controllers/main.py b/addons/auth_signup/controllers/main.py index 8c61af1f03c..e42dc64151f 100644 --- a/addons/auth_signup/controllers/main.py +++ b/addons/auth_signup/controllers/main.py @@ -42,7 +42,7 @@ class Controller(http.Controller): } return config - @http.route('/auth_signup/retrieve', type='json', auth="user") + @http.route('/auth_signup/retrieve', type='json', auth="none") def retrieve(self, dbname, token): """ retrieve the user info (name, login or email) corresponding to a signup token """ registry = RegistryManager.get(dbname) @@ -51,7 +51,7 @@ class Controller(http.Controller): user_info = res_partner.signup_retrieve_info(cr, openerp.SUPERUSER_ID, token) return user_info - @http.route('/auth_signup/signup', type='json', auth="user") + @http.route('/auth_signup/signup', type='json', auth="none") def signup(self, dbname, token, **values): """ sign up a user (new or existing)""" try: @@ -66,7 +66,7 @@ class Controller(http.Controller): res_users = registry.get('res.users') res_users.signup(cr, openerp.SUPERUSER_ID, values, token) - @http.route('/auth_signup/reset_password', type='json', auth="user") + @http.route('/auth_signup/reset_password', type='json', auth="none") def reset_password(self, dbname, login): """ retrieve user, and perform reset password """ registry = RegistryManager.get(dbname) diff --git a/addons/auth_signup/i18n/vi.po b/addons/auth_signup/i18n/vi.po new file mode 100644 index 00000000000..a79bbcb7bb4 --- /dev/null +++ b/addons/auth_signup/i18n/vi.po @@ -0,0 +1,288 @@ +# Vietnamese translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-12-21 17:05+0000\n" +"PO-Revision-Date: 2013-06-27 06:52+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Vietnamese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: auth_signup +#: field:res.partner,signup_type:0 +msgid "Signup Token Type" +msgstr "Loại mã đăng ký" + +#. module: auth_signup +#: field:base.config.settings,auth_signup_uninvited:0 +msgid "Allow external users to sign up" +msgstr "Cho phép người dùng bên ngoài đăng ký." + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:19 +#, python-format +msgid "Confirm Password" +msgstr "Xác nhận mật khẩu" + +#. module: auth_signup +#: help:base.config.settings,auth_signup_uninvited:0 +msgid "If unchecked, only invited users may sign up." +msgstr "Nếu không chọn, chỉ những người được mời mới được đăng ký." + +#. module: auth_signup +#: model:ir.model,name:auth_signup.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: auth_signup +#: code:addons/auth_signup/res_users.py:266 +#, python-format +msgid "Cannot send email: user has no email address." +msgstr "Không thể gửi email: người dùng không có địa chỉ email" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:27 +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:31 +#, python-format +msgid "Reset password" +msgstr "Đặt lại mật khẩu" + +#. module: auth_signup +#: field:base.config.settings,auth_signup_template_user_id:0 +msgid "Template user for new users created through signup" +msgstr "Mẫu người dùng sử dụng khi đăng ký" + +#. module: auth_signup +#: model:email.template,subject:auth_signup.reset_password_email +msgid "Password reset" +msgstr "Quên mật khẩu" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/js/auth_signup.js:120 +#, python-format +msgid "Please enter a password and confirm it." +msgstr "Vui lòng nhập mật khẩu và xác nhận nó" + +#. module: auth_signup +#: view:res.users:0 +msgid "Send an email to the user to (re)set their password." +msgstr "" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:26 +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:29 +#, python-format +msgid "Sign Up" +msgstr "" + +#. module: auth_signup +#: selection:res.users,state:0 +msgid "New" +msgstr "" + +#. module: auth_signup +#: code:addons/auth_signup/res_users.py:258 +#, python-format +msgid "Mail sent to:" +msgstr "" + +#. module: auth_signup +#: field:res.users,state:0 +msgid "Status" +msgstr "Trạng thái" + +#. module: auth_signup +#: model:email.template,body_html:auth_signup.reset_password_email +msgid "" +"\n" +"

A password reset was requested for the OpenERP account linked to this " +"email.

\n" +"\n" +"

You may change your password by following this link.

\n" +"\n" +"

Note: If you do not expect this, you can safely ignore this email.

" +msgstr "" +"\n" +"\\n\n" +"

Bạn có một yêu cầu reset mật khẩu từ tài khoản OpenERPA gắn với email " +"này.

\\n\n" +"\\n\n" +"

Bạn có thể thay đổi mật khẩu thông qua đường dẫn này.

\\n\n" +"\\n\n" +"

Lưu ý: Nếu đây không phải chủ ý của bạn. Bạn có thể bỏ qua email này.

" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/js/auth_signup.js:114 +#, python-format +msgid "Please enter a name." +msgstr "Xin nhập tên." + +#. module: auth_signup +#: model:ir.model,name:auth_signup.model_res_users +msgid "Users" +msgstr "Người dùng" + +#. module: auth_signup +#: field:res.partner,signup_url:0 +msgid "Signup URL" +msgstr "" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/js/auth_signup.js:117 +#, python-format +msgid "Please enter a username." +msgstr "" + +#. module: auth_signup +#: selection:res.users,state:0 +msgid "Active" +msgstr "" + +#. module: auth_signup +#: code:addons/auth_signup/res_users.py:270 +#, python-format +msgid "" +"Cannot send email: no outgoing email server configured.\n" +"You can configure it under Settings/General Settings." +msgstr "" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:12 +#, python-format +msgid "Username" +msgstr "" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:8 +#, python-format +msgid "Name" +msgstr "" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/js/auth_signup.js:173 +#, python-format +msgid "Please enter a username or email address." +msgstr "" + +#. module: auth_signup +#: selection:res.users,state:0 +msgid "Resetting Password" +msgstr "" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:13 +#, python-format +msgid "Username (Email)" +msgstr "" + +#. module: auth_signup +#: field:res.partner,signup_expiration:0 +msgid "Signup Expiration" +msgstr "" + +#. module: auth_signup +#: help:base.config.settings,auth_signup_reset_password:0 +msgid "This allows users to trigger a password reset from the Login page." +msgstr "" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:25 +#, python-format +msgid "Log in" +msgstr "" + +#. module: auth_signup +#: field:res.partner,signup_valid:0 +msgid "Signup Token is Valid" +msgstr "" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/js/auth_signup.js:111 +#: code:addons/auth_signup/static/src/js/auth_signup.js:114 +#: code:addons/auth_signup/static/src/js/auth_signup.js:117 +#: code:addons/auth_signup/static/src/js/auth_signup.js:120 +#: code:addons/auth_signup/static/src/js/auth_signup.js:123 +#: code:addons/auth_signup/static/src/js/auth_signup.js:170 +#: code:addons/auth_signup/static/src/js/auth_signup.js:173 +#, python-format +msgid "Login" +msgstr "" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/js/auth_signup.js:97 +#, python-format +msgid "Invalid signup token" +msgstr "" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/js/auth_signup.js:123 +#, python-format +msgid "Passwords do not match; please retype them." +msgstr "" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/js/auth_signup.js:111 +#: code:addons/auth_signup/static/src/js/auth_signup.js:170 +#, python-format +msgid "No database selected !" +msgstr "" + +#. module: auth_signup +#: view:res.users:0 +msgid "Reset Password" +msgstr "" + +#. module: auth_signup +#: field:base.config.settings,auth_signup_reset_password:0 +msgid "Enable password reset from Login page" +msgstr "" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:30 +#, python-format +msgid "Back to Login" +msgstr "" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:22 +#, python-format +msgid "Sign up" +msgstr "" + +#. module: auth_signup +#: model:ir.model,name:auth_signup.model_res_partner +msgid "Partner" +msgstr "" + +#. module: auth_signup +#: field:res.partner,signup_token:0 +msgid "Signup Token" +msgstr "" diff --git a/addons/auth_signup/i18n/zh_CN.po b/addons/auth_signup/i18n/zh_CN.po index aa8d9f952c1..497b872997f 100644 --- a/addons/auth_signup/i18n/zh_CN.po +++ b/addons/auth_signup/i18n/zh_CN.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-12-21 17:05+0000\n" -"PO-Revision-Date: 2013-04-16 04:33+0000\n" -"Last-Translator: Key \n" +"PO-Revision-Date: 2013-07-02 08:11+0000\n" +"Last-Translator: DWXXX \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-04-17 05:15+0000\n" -"X-Generator: Launchpad (build 16567)\n" +"X-Launchpad-Export-Date: 2013-07-03 05:14+0000\n" +"X-Generator: Launchpad (build 16692)\n" #. module: auth_signup #: field:res.partner,signup_type:0 @@ -29,7 +29,7 @@ msgstr "允许外部用户登录" #. module: auth_signup #. openerp-web -#: code:addons/auth_signup/static/src/xml/auth_signup.xml:16 +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:19 #, python-format msgid "Confirm Password" msgstr "确认密码" @@ -37,7 +37,7 @@ msgstr "确认密码" #. module: auth_signup #: help:base.config.settings,auth_signup_uninvited:0 msgid "If unchecked, only invited users may sign up." -msgstr "" +msgstr "如果不勾选,只有被邀请用户才能注册。" #. module: auth_signup #: model:ir.model,name:auth_signup.model_base_config_settings @@ -45,15 +45,15 @@ msgid "base.config.settings" msgstr "base.config.settings" #. module: auth_signup -#: code:addons/auth_signup/res_users.py:265 +#: code:addons/auth_signup/res_users.py:266 #, python-format msgid "Cannot send email: user has no email address." -msgstr "" +msgstr "无法发送邮件:用户邮件地址为空。" #. module: auth_signup #. openerp-web -#: code:addons/auth_signup/static/src/xml/auth_signup.xml:24 -#: code:addons/auth_signup/static/src/xml/auth_signup.xml:28 +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:27 +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:31 #, python-format msgid "Reset password" msgstr "重设密码" @@ -70,7 +70,7 @@ msgstr "重置密码" #. module: auth_signup #. openerp-web -#: code:addons/auth_signup/static/src/js/auth_signup.js:117 +#: code:addons/auth_signup/static/src/js/auth_signup.js:120 #, python-format msgid "Please enter a password and confirm it." msgstr "请输入密码并确认。" @@ -78,12 +78,12 @@ msgstr "请输入密码并确认。" #. module: auth_signup #: view:res.users:0 msgid "Send an email to the user to (re)set their password." -msgstr "" +msgstr "向用户发送重置密码邮件。" #. module: auth_signup #. openerp-web -#: code:addons/auth_signup/static/src/xml/auth_signup.xml:23 #: code:addons/auth_signup/static/src/xml/auth_signup.xml:26 +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:29 #, python-format msgid "Sign Up" msgstr "注册" @@ -119,10 +119,10 @@ msgstr "" #. module: auth_signup #. openerp-web -#: code:addons/auth_signup/static/src/js/auth_signup.js:111 +#: code:addons/auth_signup/static/src/js/auth_signup.js:114 #, python-format msgid "Please enter a name." -msgstr "" +msgstr "请输入名字" #. module: auth_signup #: model:ir.model,name:auth_signup.model_res_users @@ -136,10 +136,10 @@ msgstr "注册 URL" #. module: auth_signup #. openerp-web -#: code:addons/auth_signup/static/src/js/auth_signup.js:114 +#: code:addons/auth_signup/static/src/js/auth_signup.js:117 #, python-format msgid "Please enter a username." -msgstr "" +msgstr "请输入您的用户名" #. module: auth_signup #: selection:res.users,state:0 @@ -147,7 +147,7 @@ msgid "Active" msgstr "启用" #. module: auth_signup -#: code:addons/auth_signup/res_users.py:269 +#: code:addons/auth_signup/res_users.py:270 #, python-format msgid "" "Cannot send email: no outgoing email server configured.\n" @@ -170,10 +170,10 @@ msgstr "姓名" #. module: auth_signup #. openerp-web -#: code:addons/auth_signup/static/src/js/auth_signup.js:170 +#: code:addons/auth_signup/static/src/js/auth_signup.js:173 #, python-format msgid "Please enter a username or email address." -msgstr "" +msgstr "请输入用户名和邮件地址" #. module: auth_signup #: selection:res.users,state:0 @@ -199,7 +199,7 @@ msgstr "" #. module: auth_signup #. openerp-web -#: code:addons/auth_signup/static/src/xml/auth_signup.xml:22 +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:25 #, python-format msgid "Log in" msgstr "登录" @@ -211,35 +211,35 @@ msgstr "注册令牌( Token )是有效的" #. module: auth_signup #. openerp-web -#: code:addons/auth_signup/static/src/js/auth_signup.js:108 #: code:addons/auth_signup/static/src/js/auth_signup.js:111 #: code:addons/auth_signup/static/src/js/auth_signup.js:114 #: code:addons/auth_signup/static/src/js/auth_signup.js:117 #: code:addons/auth_signup/static/src/js/auth_signup.js:120 -#: code:addons/auth_signup/static/src/js/auth_signup.js:167 +#: code:addons/auth_signup/static/src/js/auth_signup.js:123 #: code:addons/auth_signup/static/src/js/auth_signup.js:170 +#: code:addons/auth_signup/static/src/js/auth_signup.js:173 #, python-format msgid "Login" msgstr "" #. module: auth_signup #. openerp-web -#: code:addons/auth_signup/static/src/js/auth_signup.js:94 +#: code:addons/auth_signup/static/src/js/auth_signup.js:97 #, python-format msgid "Invalid signup token" msgstr "" #. module: auth_signup #. openerp-web -#: code:addons/auth_signup/static/src/js/auth_signup.js:120 +#: code:addons/auth_signup/static/src/js/auth_signup.js:123 #, python-format msgid "Passwords do not match; please retype them." msgstr "" #. module: auth_signup #. openerp-web -#: code:addons/auth_signup/static/src/js/auth_signup.js:108 -#: code:addons/auth_signup/static/src/js/auth_signup.js:167 +#: code:addons/auth_signup/static/src/js/auth_signup.js:111 +#: code:addons/auth_signup/static/src/js/auth_signup.js:170 #, python-format msgid "No database selected !" msgstr "" @@ -256,7 +256,7 @@ msgstr "" #. module: auth_signup #. openerp-web -#: code:addons/auth_signup/static/src/xml/auth_signup.xml:27 +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:30 #, python-format msgid "Back to Login" msgstr "返回登录页面" @@ -266,12 +266,12 @@ msgstr "返回登录页面" #: code:addons/auth_signup/static/src/xml/auth_signup.xml:22 #, python-format msgid "Sign up" -msgstr "" +msgstr "注册" #. module: auth_signup #: model:ir.model,name:auth_signup.model_res_partner msgid "Partner" -msgstr "业务伙伴" +msgstr "合作伙伴" #. module: auth_signup #: field:res.partner,signup_token:0 diff --git a/addons/base_calendar/base_calendar.py b/addons/base_calendar/base_calendar.py index 896349ec5e6..a9061c0afce 100644 --- a/addons/base_calendar/base_calendar.py +++ b/addons/base_calendar/base_calendar.py @@ -1510,7 +1510,7 @@ rule or repeating pattern of time to exclude from the recurring rule."), continue if r['class']=='private': for f in r.keys(): - if f not in ('id','date','date_deadline','duration','user_id','state'): + if f not in ('id','date','date_deadline','duration','user_id','state','interval','count'): if isinstance(r[f], list): r[f] = [] else: diff --git a/addons/base_calendar/i18n/zh_CN.po b/addons/base_calendar/i18n/zh_CN.po index ed1cddd716b..a5ede7a80c9 100644 --- a/addons/base_calendar/i18n/zh_CN.po +++ b/addons/base_calendar/i18n/zh_CN.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-12-21 17:05+0000\n" -"PO-Revision-Date: 2012-11-28 16:50+0000\n" -"Last-Translator: Joshua Jan(SHINEIT) \n" +"PO-Revision-Date: 2013-06-29 05:34+0000\n" +"Last-Translator: David.Xu \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:45+0000\n" -"X-Generator: Launchpad (build 16532)\n" +"X-Launchpad-Export-Date: 2013-06-30 05:56+0000\n" +"X-Generator: Launchpad (build 16692)\n" #. module: base_calendar #: selection:calendar.alarm,trigger_related:0 @@ -42,7 +42,7 @@ msgstr "这属性定义循环日程的日期/时间异常列表。" #: selection:calendar.todo,rrule_type:0 #: selection:crm.meeting,rrule_type:0 msgid "Week(s)" -msgstr "" +msgstr "周" #. module: base_calendar #: field:calendar.event,we:0 @@ -248,7 +248,7 @@ msgid "To" msgstr "到" #. module: base_calendar -#: code:addons/base_calendar/base_calendar.py:1260 +#: code:addons/base_calendar/base_calendar.py:1262 #, python-format msgid "Error!" msgstr "错误!" @@ -300,7 +300,7 @@ msgstr "与会者的参与状况" #. module: base_calendar #: view:crm.meeting:0 msgid "Mail To" -msgstr "" +msgstr "收信人" #. module: base_calendar #: field:crm.meeting,name:0 @@ -361,9 +361,9 @@ msgstr "保存复杂的摘要(消息数量,……等)。为了插入到看板视 #. module: base_calendar #: code:addons/base_calendar/base_calendar.py:399 #: code:addons/base_calendar/base_calendar.py:441 -#: code:addons/base_calendar/base_calendar.py:1013 #: code:addons/base_calendar/base_calendar.py:1015 -#: code:addons/base_calendar/base_calendar.py:1460 +#: code:addons/base_calendar/base_calendar.py:1017 +#: code:addons/base_calendar/base_calendar.py:1462 #, python-format msgid "Warning!" msgstr "警告!" @@ -478,7 +478,7 @@ msgstr "日期" #. module: base_calendar #: field:crm.meeting,message_follower_ids:0 msgid "Followers" -msgstr "" +msgstr "关注者" #. module: base_calendar #: field:calendar.event,location:0 @@ -522,7 +522,7 @@ msgid "Event alarm information" msgstr "事件提醒信息" #. module: base_calendar -#: code:addons/base_calendar/base_calendar.py:1015 +#: code:addons/base_calendar/base_calendar.py:1017 #, python-format msgid "Count cannot be negative or 0." msgstr "" @@ -530,21 +530,21 @@ msgstr "" #. module: base_calendar #: field:crm.meeting,create_date:0 msgid "Creation Date" -msgstr "" +msgstr "创建日期" #. module: base_calendar #: view:crm.meeting:0 #: model:ir.model,name:base_calendar.model_crm_meeting #: model:res.request.link,name:base_calendar.request_link_meeting msgid "Meeting" -msgstr "" +msgstr "会议" #. module: base_calendar #: selection:calendar.event,rrule_type:0 #: selection:calendar.todo,rrule_type:0 #: selection:crm.meeting,rrule_type:0 msgid "Month(s)" -msgstr "" +msgstr "月" #. module: base_calendar #: view:calendar.event:0 @@ -566,7 +566,7 @@ msgstr "Caldav 服务的URL" #. module: base_calendar #: model:ir.model,name:base_calendar.model_mail_wizard_invite msgid "Invite wizard" -msgstr "" +msgstr "邀请向导" #. module: base_calendar #: selection:calendar.event,month_list:0 @@ -590,7 +590,7 @@ msgstr "周四" #. module: base_calendar #: view:crm.meeting:0 msgid "Meeting Details" -msgstr "" +msgstr "会议详情" #. module: base_calendar #: field:calendar.attendee,child_ids:0 @@ -601,21 +601,21 @@ msgstr "代表人" #: code:addons/base_calendar/crm_meeting.py:102 #, python-format msgid "The following contacts have no email address :" -msgstr "" +msgstr "下列联系人没有电子邮件地址:" #. module: base_calendar #: selection:calendar.event,rrule_type:0 #: selection:calendar.todo,rrule_type:0 #: selection:crm.meeting,rrule_type:0 msgid "Year(s)" -msgstr "" +msgstr "年" #. module: base_calendar #: view:crm.meeting.type:0 #: model:ir.actions.act_window,name:base_calendar.action_crm_meeting_type #: model:ir.ui.menu,name:base_calendar.menu_crm_meeting_type msgid "Meeting Types" -msgstr "" +msgstr "会议类型" #. module: base_calendar #: field:calendar.event,create_date:0 @@ -633,7 +633,7 @@ msgstr "全员可见" #. module: base_calendar #: view:crm.meeting:0 msgid "hours" -msgstr "" +msgstr "小时" #. module: base_calendar #: field:calendar.attendee,partner_id:0 @@ -655,7 +655,7 @@ msgstr "重复直到" #. module: base_calendar #: view:crm.meeting:0 msgid "Options" -msgstr "" +msgstr "选项" #. module: base_calendar #: selection:calendar.event,byday:0 @@ -694,7 +694,7 @@ msgstr "周二" #. module: base_calendar #: field:crm.meeting,categ_ids:0 msgid "Tags" -msgstr "" +msgstr "标签" #. module: base_calendar #: view:calendar.event:0 @@ -741,7 +741,7 @@ msgid "Declined" msgstr "已拒绝" #. module: base_calendar -#: code:addons/base_calendar/base_calendar.py:1460 +#: code:addons/base_calendar/base_calendar.py:1462 #, python-format msgid "Group by date is not supported, use the calendar view instead." msgstr "" @@ -1200,7 +1200,7 @@ msgid "Select Weekdays" msgstr "" #. module: base_calendar -#: code:addons/base_calendar/base_calendar.py:1519 +#: code:addons/base_calendar/base_calendar.py:1521 #: selection:calendar.attendee,availability:0 #: selection:calendar.event,show_as:0 #: selection:calendar.todo,show_as:0 @@ -1453,7 +1453,7 @@ msgid "Weekday" msgstr "工作日" #. module: base_calendar -#: code:addons/base_calendar/base_calendar.py:1013 +#: code:addons/base_calendar/base_calendar.py:1015 #, python-format msgid "Interval cannot be negative." msgstr "" diff --git a/addons/base_calendar/static/src/img/icon.png b/addons/base_calendar/static/description/icon.png similarity index 100% rename from addons/base_calendar/static/src/img/icon.png rename to addons/base_calendar/static/description/icon.png diff --git a/addons/base_crypt/i18n/vi.po b/addons/base_crypt/i18n/vi.po index 7ab8f31bc3c..2265e70eb2e 100644 --- a/addons/base_crypt/i18n/vi.po +++ b/addons/base_crypt/i18n/vi.po @@ -8,19 +8,19 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-12-03 16:03+0000\n" -"PO-Revision-Date: 2011-07-20 09:55+0000\n" -"Last-Translator: OpenBMS JSC \n" +"PO-Revision-Date: 2013-06-30 16:09+0000\n" +"Last-Translator: Hung Tran \n" "Language-Team: Vietnamese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:49+0000\n" -"X-Generator: Launchpad (build 16532)\n" +"X-Launchpad-Export-Date: 2013-07-01 05:14+0000\n" +"X-Generator: Launchpad (build 16692)\n" #. module: base_crypt #: model:ir.model,name:base_crypt.model_res_users msgid "Users" -msgstr "" +msgstr "Người dùng" #, python-format #~ msgid "Error" diff --git a/addons/base_setup/res_config.py b/addons/base_setup/res_config.py index 33c5aa863bf..6b8578bbf47 100644 --- a/addons/base_setup/res_config.py +++ b/addons/base_setup/res_config.py @@ -36,6 +36,8 @@ class base_config_settings(osv.osv_memory): help="""Enable the public part of openerp, openerp becomes a public website."""), 'module_auth_oauth': fields.boolean('Use external authentication providers, sign in with google, facebook, ...'), 'module_base_import': fields.boolean("Allow users to import data from CSV files"), + 'module_google_drive': fields.boolean('Attach Google documents to any record', + help="""This installs the module google_docs."""), } def open_company(self, cr, uid, ids, context=None): diff --git a/addons/base_setup/res_config_view.xml b/addons/base_setup/res_config_view.xml index 8c48f5d7a6b..73685be95df 100644 --- a/addons/base_setup/res_config_view.xml +++ b/addons/base_setup/res_config_view.xml @@ -81,6 +81,15 @@ + +
diff --git a/addons/base_status/i18n/sv.po b/addons/base_status/i18n/sv.po new file mode 100644 index 00000000000..eb1b42e6a53 --- /dev/null +++ b/addons/base_status/i18n/sv.po @@ -0,0 +1,79 @@ +# Swedish translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-12-21 17:05+0000\n" +"PO-Revision-Date: 2013-07-08 15:10+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Swedish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-07-09 05:16+0000\n" +"X-Generator: Launchpad (build 16696)\n" + +#. module: base_status +#: code:addons/base_status/base_state.py:107 +#, python-format +msgid "Error !" +msgstr "Fel !" + +#. module: base_status +#: code:addons/base_status/base_state.py:166 +#, python-format +msgid "%s has been opened." +msgstr "%s har öppnats." + +#. module: base_status +#: code:addons/base_status/base_state.py:199 +#, python-format +msgid "%s has been renewed." +msgstr "%s har förnyats." + +#. module: base_status +#: code:addons/base_status/base_stage.py:210 +#, python-format +msgid "Error!" +msgstr "Fel!" + +#. module: base_status +#: code:addons/base_status/base_state.py:107 +#, python-format +msgid "" +"You can not escalate, you are already at the top level regarding your sales-" +"team category." +msgstr "" +"Du kan inte eskalera längre, du har nått toppen för denna säljlags-kategori." + +#. module: base_status +#: code:addons/base_status/base_state.py:193 +#, python-format +msgid "%s is now pending." +msgstr "%s är nu pågående." + +#. module: base_status +#: code:addons/base_status/base_state.py:187 +#, python-format +msgid "%s has been canceled." +msgstr "%s har avbrutits." + +#. module: base_status +#: code:addons/base_status/base_stage.py:210 +#, python-format +msgid "" +"You are already at the top level of your sales-team category.\n" +"Therefore you cannot escalate furthermore." +msgstr "" +"Du har nått översta nivån för din säljlagskategori.\n" +"Det går därför inte att eskalera ytterligare." + +#. module: base_status +#: code:addons/base_status/base_state.py:181 +#, python-format +msgid "%s has been closed." +msgstr "%s har stängts." diff --git a/addons/claim_from_delivery/i18n/vi.po b/addons/claim_from_delivery/i18n/vi.po new file mode 100644 index 00000000000..f308bafb1ea --- /dev/null +++ b/addons/claim_from_delivery/i18n/vi.po @@ -0,0 +1,33 @@ +# Vietnamese translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-12-21 17:05+0000\n" +"PO-Revision-Date: 2013-06-30 16:10+0000\n" +"Last-Translator: Hung Tran \n" +"Language-Team: Vietnamese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-07-01 05:14+0000\n" +"X-Generator: Launchpad (build 16692)\n" + +#. module: claim_from_delivery +#: view:stock.picking.out:0 +msgid "Claims" +msgstr "Các khiếu nại" + +#. module: claim_from_delivery +#: model:res.request.link,name:claim_from_delivery.request_link_claim_from_delivery +msgid "Delivery Order" +msgstr "" + +#. module: claim_from_delivery +#: model:ir.actions.act_window,name:claim_from_delivery.action_claim_from_delivery +msgid "Claim From Delivery" +msgstr "" diff --git a/addons/contacts/i18n/ko.po b/addons/contacts/i18n/ko.po new file mode 100644 index 00000000000..19e46f9e0b0 --- /dev/null +++ b/addons/contacts/i18n/ko.po @@ -0,0 +1,37 @@ +# Korean translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-12-21 17:05+0000\n" +"PO-Revision-Date: 2013-06-28 09:32+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Korean \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-30 05:56+0000\n" +"X-Generator: Launchpad (build 16692)\n" + +#. module: contacts +#: model:ir.actions.act_window,help:contacts.action_contacts +msgid "" +"

\n" +" Click to add a contact in your address book.\n" +"

\n" +" OpenERP helps you easily track all activities related to\n" +" a customer; discussions, history of business opportunities,\n" +" documents, etc.\n" +"

\n" +" " +msgstr "" + +#. module: contacts +#: model:ir.actions.act_window,name:contacts.action_contacts +#: model:ir.ui.menu,name:contacts.menu_contacts +msgid "Contacts" +msgstr "연락처" diff --git a/addons/contacts/i18n/vi.po b/addons/contacts/i18n/vi.po new file mode 100644 index 00000000000..d404d947fe2 --- /dev/null +++ b/addons/contacts/i18n/vi.po @@ -0,0 +1,45 @@ +# Vietnamese translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-12-21 17:05+0000\n" +"PO-Revision-Date: 2013-06-27 16:47+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Vietnamese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: contacts +#: model:ir.actions.act_window,help:contacts.action_contacts +msgid "" +"

\n" +" Click to add a contact in your address book.\n" +"

\n" +" OpenERP helps you easily track all activities related to\n" +" a customer; discussions, history of business opportunities,\n" +" documents, etc.\n" +"

\n" +" " +msgstr "" +"

\n" +" Nhấn để thêm liên lạc vào sổ địa chỉ.\n" +"

\n" +" OpenERP giúp bạn theo dõi các hoạt động liên quan tới\n" +" một khách hàng; thảo luận, lịch sử cơ hội kinh doanh,\n" +" tài liệu v.v....\n" +"

\n" +" " + +#. module: contacts +#: model:ir.actions.act_window,name:contacts.action_contacts +#: model:ir.ui.menu,name:contacts.menu_contacts +msgid "Contacts" +msgstr "Liên hệ" diff --git a/addons/contacts/static/src/img/icon.png b/addons/contacts/static/description/icon.png similarity index 100% rename from addons/contacts/static/src/img/icon.png rename to addons/contacts/static/description/icon.png diff --git a/addons/crm/crm_lead.py b/addons/crm/crm_lead.py index 1070af22b3c..af02e3be1bf 100644 --- a/addons/crm/crm_lead.py +++ b/addons/crm/crm_lead.py @@ -19,7 +19,6 @@ # ############################################################################## -from openerp.addons.base_status.base_stage import base_stage import crm from datetime import datetime from operator import itemgetter @@ -68,7 +67,7 @@ CRM_LEAD_PENDING_STATES = ( crm.AVAILABLE_STATES[4][0], # Pending ) -class crm_lead(base_stage, format_address, osv.osv): +class crm_lead(format_address, osv.osv): """ CRM Lead Case """ _name = "crm.lead" _description = "Lead/Opportunity" @@ -93,20 +92,6 @@ class crm_lead(base_stage, format_address, osv.osv): context['empty_list_help_document_name'] = _("leads") return super(crm_lead, self).get_empty_list_help(cr, uid, help, context=context) - def create(self, cr, uid, vals, context=None): - if context is None: - context = {} - if not vals.get('stage_id'): - ctx = context.copy() - if vals.get('section_id'): - ctx['default_section_id'] = vals['section_id'] - if vals.get('type'): - ctx['default_type'] = vals['type'] - vals['stage_id'] = self._get_default_stage_id(cr, uid, context=ctx) - # context: no_log, because subtype already handle this - create_context = dict(context, mail_create_nolog=True) - return super(crm_lead, self).create(cr, uid, vals, context=create_context) - def _get_default_section_id(self, cr, uid, context=None): """ Gives default section by checking if present in the context """ return self._resolve_section_id_from_context(cr, uid, context=context) or False @@ -126,8 +111,7 @@ class crm_lead(base_stage, format_address, osv.osv): if type(context.get('default_section_id')) in (int, long): return context.get('default_section_id') if isinstance(context.get('default_section_id'), basestring): - section_name = context['default_section_id'] - section_ids = self.pool.get('crm.case.section').name_search(cr, uid, name=section_name, context=context) + section_ids = self.pool.get('crm.case.section').name_search(cr, uid, name=context['default_section_id'], context=context) if len(section_ids) == 1: return int(section_ids[0][0]) return None @@ -326,8 +310,7 @@ class crm_lead(base_stage, format_address, osv.osv): _defaults = { 'active': 1, 'type': 'lead', - 'user_id': lambda s, cr, uid, c: s._get_default_user(cr, uid, c), - 'email_from': lambda s, cr, uid, c: s._get_default_email(cr, uid, c), + 'user_id': lambda s, cr, uid, c: uid, 'stage_id': lambda s, cr, uid, c: s._get_default_stage_id(cr, uid, c), 'section_id': lambda s, cr, uid, c: s._get_default_section_id(cr, uid, c), 'company_id': lambda s, cr, uid, c: s.pool.get('res.company')._company_default_get(cr, uid, 'crm.lead', context=c), @@ -341,30 +324,29 @@ class crm_lead(base_stage, format_address, osv.osv): def onchange_stage_id(self, cr, uid, ids, stage_id, context=None): if not stage_id: - return {'value':{}} + return {'value': {}} stage = self.pool.get('crm.case.stage').browse(cr, uid, stage_id, context) if not stage.on_change: - return {'value':{}} - return {'value':{'probability': stage.probability}} + return {'value': {}} + return {'value': {'probability': stage.probability}} - def on_change_partner(self, cr, uid, ids, partner_id, context=None): - result = {} + def on_change_partner_id(self, cr, uid, ids, partner_id, context=None): values = {} if partner_id: partner = self.pool.get('res.partner').browse(cr, uid, partner_id, context=context) values = { - 'partner_name' : partner.name, - 'street' : partner.street, - 'street2' : partner.street2, - 'city' : partner.city, - 'state_id' : partner.state_id and partner.state_id.id or False, - 'country_id' : partner.country_id and partner.country_id.id or False, - 'email_from' : partner.email, - 'phone' : partner.phone, - 'mobile' : partner.mobile, - 'fax' : partner.fax, + 'partner_name': partner.name, + 'street': partner.street, + 'street2': partner.street2, + 'city': partner.city, + 'state_id': partner.state_id and partner.state_id.id or False, + 'country_id': partner.country_id and partner.country_id.id or False, + 'email_from': partner.email, + 'phone': partner.phone, + 'mobile': partner.mobile, + 'fax': partner.fax, } - return {'value' : values} + return {'value': values} def on_change_user(self, cr, uid, ids, user_id, context=None): """ When changing the user, also set a section_id or restrict section id @@ -405,7 +387,7 @@ class crm_lead(base_stage, format_address, osv.osv): # collect all section_ids section_ids = [] types = ['both'] - if not cases : + if not cases: type = context.get('default_type') types += [type] if section_id: @@ -433,24 +415,18 @@ class crm_lead(base_stage, format_address, osv.osv): return stage_ids[0] return False - def case_cancel(self, cr, uid, ids, context=None): - """ Overrides case_cancel from base_stage to set probability """ - res = super(crm_lead, self).case_cancel(cr, uid, ids, context=context) - self.write(cr, uid, ids, {'probability' : 0.0}, context=context) - return res - - def case_reset(self, cr, uid, ids, context=None): - """ Overrides case_reset from base_stage to set probability """ - res = super(crm_lead, self).case_reset(cr, uid, ids, context=context) - self.write(cr, uid, ids, {'probability': 0.0}, context=context) - return res + def stage_set(self, cr, uid, ids, stage_id, context=None): + """ Set the new stage. Now just writes the stage. + TDE TODO: remove me when removing state + """ + return self.write(cr, uid, ids, {'stage_id': stage_id}, context=context) def case_mark_lost(self, cr, uid, ids, context=None): """ Mark the case as lost: state=cancel and probability=0 """ for lead in self.browse(cr, uid, ids): stage_id = self.stage_find(cr, uid, [lead], lead.section_id.id or False, [('probability', '=', 0.0),('on_change','=',True)], context=context) if stage_id: - self.case_set(cr, uid, [lead.id], values_to_update={'probability': 0.0}, new_stage_id=stage_id, context=context) + self.stage_set(cr, uid, [lead.id], stage_id, context=context) return True def case_mark_won(self, cr, uid, ids, context=None): @@ -458,7 +434,21 @@ class crm_lead(base_stage, format_address, osv.osv): for lead in self.browse(cr, uid, ids): stage_id = self.stage_find(cr, uid, [lead], lead.section_id.id or False, [('probability', '=', 100.0),('on_change','=',True)], context=context) if stage_id: - self.case_set(cr, uid, [lead.id], values_to_update={'probability': 100.0}, new_stage_id=stage_id, context=context) + self.stage_set(cr, uid, [lead.id], stage_id, context=context) + return True + + def case_escalate(self, cr, uid, ids, context=None): + """ Escalates case to parent level """ + for case in self.browse(cr, uid, ids, context=context): + data = {'active': True} + if case.section_id.parent_id: + data['section_id'] = case.section_id.parent_id.id + if case.section_id.parent_id.change_responsible: + if case.section_id.parent_id.user_id: + data['user_id'] = case.section_id.parent_id.user_id.id + else: + raise osv.except_osv(_('Error!'), _("You are already at the top level of your sales-team category.\nTherefore you cannot escalate furthermore.")) + self.write(cr, uid, [case.id], data, context=context) return True def set_priority(self, cr, uid, ids, priority): @@ -932,12 +922,22 @@ class crm_lead(base_stage, format_address, osv.osv): } return res + def create(self, cr, uid, vals, context=None): + if context is None: + context = {} + if vals.get('type') and not context.get('default_type'): + context['default_type'] = vals.get('type') + if vals.get('section_id') and not context.get('default_section_id'): + context['default_section_id'] = vals.get('section_id') + + # context: no_log, because subtype already handle this + create_context = dict(context, mail_create_nolog=True) + return super(crm_lead, self).create(cr, uid, vals, context=create_context) + def write(self, cr, uid, ids, vals, context=None): if vals.get('stage_id') and not vals.get('probability'): - # change probability of lead(s) if required by stage - stage = self.pool.get('crm.case.stage').browse(cr, uid, vals['stage_id'], context=context) - if stage.on_change: - vals['probability'] = stage.probability + onchange_stage_values = self.onchange_stage_id(cr, uid, ids, vals.get('stage_id'), context=context)['value'] + vals.update(onchange_stage_values) return super(crm_lead, self).write(cr, uid, ids, vals, context=context) def new_mail_send(self, cr, uid, ids, context=None): @@ -1024,7 +1024,7 @@ class crm_lead(base_stage, format_address, osv.osv): 'user_id': False, } if msg.get('author_id'): - defaults.update(self.on_change_partner(cr, uid, None, msg.get('author_id'), context=context)['value']) + defaults.update(self.on_change_partner_id(cr, uid, None, msg.get('author_id'), context=context)['value']) if msg.get('priority') in dict(crm.AVAILABLE_PRIORITIES): defaults['priority'] = msg.get('priority') defaults.update(custom_values) diff --git a/addons/crm/crm_lead_demo.xml b/addons/crm/crm_lead_demo.xml index e7e6beae33e..3917fadbd32 100644 --- a/addons/crm/crm_lead_demo.xml +++ b/addons/crm/crm_lead_demo.xml @@ -263,13 +263,6 @@ Andrew
- - - + diff --git a/addons/crm/crm_lead_view.xml b/addons/crm/crm_lead_view.xml index df6a4a07a8e..cb4302166a1 100644 --- a/addons/crm/crm_lead_view.xml +++ b/addons/crm/crm_lead_view.xml @@ -95,10 +95,6 @@
diff --git a/addons/crm_claim/test/process/claim.yml b/addons/crm_claim/test/process/claim.yml index a843372956e..f6c6f6d315c 100644 --- a/addons/crm_claim/test/process/claim.yml +++ b/addons/crm_claim/test/process/claim.yml @@ -21,25 +21,9 @@ - !python {model: crm.claim}: | claim_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right ')]) - self.case_open(cr, uid, claim_ids) - - I check Claim Details after open. + I check Claim Details after open. - !python {model: crm.claim}: | claim_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right ')]) claim = self.browse(cr, uid, claim_ids[0]) - assert claim.state == "open", "Claim is not in Open state" - assert claim.stage_id.id == ref("crm.stage_lead2"), "Claim is not in Qualification stage" -- - After complete all service from our side, I close this claim. -- - !python {model: crm.claim}: | - claim_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right ')]) - self.case_close(cr, uid, claim_ids) -- - I check Claim details after closed. -- - !python {model: crm.claim}: | - claim_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right ')]) - claim = self.browse(cr, uid, claim_ids[0]) - assert claim.state == "done", "Claim is not in close state" diff --git a/addons/crm_helpdesk/crm_helpdesk.py b/addons/crm_helpdesk/crm_helpdesk.py index 2d0383962b1..ea58016b4c1 100644 --- a/addons/crm_helpdesk/crm_helpdesk.py +++ b/addons/crm_helpdesk/crm_helpdesk.py @@ -20,20 +20,14 @@ ############################################################################## from openerp.addons.base_status.base_state import base_state -from openerp.addons.base_status.base_stage import base_stage from openerp.addons.crm import crm from openerp.osv import fields, osv from openerp import tools from openerp.tools.translate import _ from openerp.tools import html2plaintext -CRM_HELPDESK_STATES = ( - crm.AVAILABLE_STATES[2][0], # Cancelled - crm.AVAILABLE_STATES[3][0], # Done - crm.AVAILABLE_STATES[4][0], # Pending -) -class crm_helpdesk(base_state, base_stage, osv.osv): +class crm_helpdesk(base_state, osv.osv): """ Helpdesk Cases """ _name = "crm.helpdesk" @@ -80,9 +74,7 @@ class crm_helpdesk(base_state, base_stage, osv.osv): _defaults = { 'active': lambda *a: 1, - 'user_id': lambda s, cr, uid, c: s._get_default_user(cr, uid, c), - 'partner_id': lambda s, cr, uid, c: s._get_default_partner(cr, uid, c), - 'email_from': lambda s, cr, uid, c: s._get_default_email(cr, uid, c), + 'user_id': lambda s, cr, uid, c: uid, 'state': lambda *a: 'draft', 'date': lambda *a: fields.datetime.now(), 'company_id': lambda s, cr, uid, c: s.pool.get('res.company')._company_default_get(cr, uid, 'crm.helpdesk', context=c), diff --git a/addons/decimal_precision/i18n/ko.po b/addons/decimal_precision/i18n/ko.po new file mode 100644 index 00000000000..0b3df57f440 --- /dev/null +++ b/addons/decimal_precision/i18n/ko.po @@ -0,0 +1,49 @@ +# Korean translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-12-21 17:05+0000\n" +"PO-Revision-Date: 2013-06-28 09:31+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Korean \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-30 05:56+0000\n" +"X-Generator: Launchpad (build 16692)\n" + +#. module: decimal_precision +#: field:decimal.precision,digits:0 +msgid "Digits" +msgstr "자리수" + +#. module: decimal_precision +#: model:ir.actions.act_window,name:decimal_precision.action_decimal_precision_form +#: model:ir.ui.menu,name:decimal_precision.menu_decimal_precision_form +msgid "Decimal Accuracy" +msgstr "소숫점 정확성" + +#. module: decimal_precision +#: field:decimal.precision,name:0 +msgid "Usage" +msgstr "사용량" + +#. module: decimal_precision +#: sql_constraint:decimal.precision:0 +msgid "Only one value can be defined for each given usage!" +msgstr "" + +#. module: decimal_precision +#: view:decimal.precision:0 +msgid "Decimal Precision" +msgstr "소수점 정확성" + +#. module: decimal_precision +#: model:ir.model,name:decimal_precision.model_decimal_precision +msgid "decimal.precision" +msgstr "decimal.precision" diff --git a/addons/document_page/document_page.py b/addons/document_page/document_page.py index f74cfe02a21..7f885018001 100644 --- a/addons/document_page/document_page.py +++ b/addons/document_page/document_page.py @@ -66,7 +66,7 @@ class document_page(osv.osv): 'create_date': fields.datetime("Created on", select=True, readonly=True), 'create_uid': fields.many2one('res.users', 'Author', select=True, readonly=True), 'write_date': fields.datetime("Modification Date", select=True, readonly=True), - 'write_uid': fields.many2one('res.users', "Last Contributor", select=True), + 'write_uid': fields.many2one('res.users', "Last Contributor", select=True, readonly=True), } _defaults = { 'type':'content', diff --git a/addons/event/static/src/img/icon.png b/addons/event/static/description/icon.png similarity index 100% rename from addons/event/static/src/img/icon.png rename to addons/event/static/description/icon.png diff --git a/addons/fetchmail/i18n/ko.po b/addons/fetchmail/i18n/ko.po new file mode 100644 index 00000000000..a4b6e4e03b9 --- /dev/null +++ b/addons/fetchmail/i18n/ko.po @@ -0,0 +1,322 @@ +# Korean translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-12-21 17:05+0000\n" +"PO-Revision-Date: 2013-06-28 09:25+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Korean \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-30 05:56+0000\n" +"X-Generator: Launchpad (build 16692)\n" + +#. module: fetchmail +#: selection:fetchmail.server,state:0 +msgid "Confirmed" +msgstr "확정됨" + +#. module: fetchmail +#: field:fetchmail.server,server:0 +msgid "Server Name" +msgstr "서버 이름" + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "POP" +msgstr "POP" + +#. module: fetchmail +#: help:fetchmail.server,priority:0 +msgid "Defines the order of processing, lower values mean higher priority" +msgstr "" + +#. module: fetchmail +#: help:fetchmail.server,is_ssl:0 +msgid "" +"Connections are encrypted with SSL/TLS through a dedicated port (default: " +"IMAPS=993, POP3S=995)" +msgstr "" + +#. module: fetchmail +#: field:fetchmail.server,attach:0 +msgid "Keep Attachments" +msgstr "첨부파일 보관" + +#. module: fetchmail +#: field:fetchmail.server,is_ssl:0 +msgid "SSL/TLS" +msgstr "SSL/TLS" + +#. module: fetchmail +#: help:fetchmail.server,original:0 +msgid "" +"Whether a full original copy of each email should be kept for referenceand " +"attached to each processed message. This will usually double the size of " +"your message database." +msgstr "" + +#. module: fetchmail +#: view:base.config.settings:0 +msgid "Configure the incoming email gateway" +msgstr "수신 이메일 게이트웨이 구성" + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "Fetch Now" +msgstr "지금 가져오기" + +#. module: fetchmail +#: model:ir.actions.act_window,name:fetchmail.action_email_server_tree +#: model:ir.ui.menu,name:fetchmail.menu_action_fetchmail_server_tree +msgid "Incoming Mail Servers" +msgstr "수신 메일 서버" + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "Server type IMAP." +msgstr "서버유형 IMAP." + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "POP/IMAP Servers" +msgstr "POP/IMAP 서버" + +#. module: fetchmail +#: selection:fetchmail.server,type:0 +msgid "Local Server" +msgstr "로컬 서버" + +#. module: fetchmail +#: field:fetchmail.server,state:0 +msgid "Status" +msgstr "상태" + +#. module: fetchmail +#: model:ir.model,name:fetchmail.model_fetchmail_server +msgid "POP/IMAP Server" +msgstr "POP/IMAP 서버" + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "Reset Confirmation" +msgstr "" + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "SSL" +msgstr "SSL" + +#. module: fetchmail +#: model:ir.model,name:fetchmail.model_fetchmail_config_settings +msgid "fetchmail.config.settings" +msgstr "fetchmail.config.settings" + +#. module: fetchmail +#: field:fetchmail.server,date:0 +msgid "Last Fetch Date" +msgstr "마지막으로 가져온 날짜" + +#. module: fetchmail +#: help:fetchmail.server,action_id:0 +msgid "" +"Optional custom server action to trigger for each incoming mail, on the " +"record that was created or updated by this mail" +msgstr "" + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "# of emails" +msgstr "이메일 개수" + +#. module: fetchmail +#: field:fetchmail.server,original:0 +msgid "Keep Original" +msgstr "원본 유지" + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "Advanced Options" +msgstr "고급 옵션" + +#. module: fetchmail +#: view:fetchmail.server:0 +#: field:fetchmail.server,configuration:0 +msgid "Configuration" +msgstr "구성" + +#. module: fetchmail +#: field:fetchmail.server,script:0 +msgid "Script" +msgstr "스크립트" + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "Incoming Mail Server" +msgstr "수신 메일 서버" + +#. module: fetchmail +#: code:addons/fetchmail/fetchmail.py:163 +#, python-format +msgid "Connection test failed!" +msgstr "연결 시험에 실패함!" + +#. module: fetchmail +#: field:fetchmail.server,user:0 +msgid "Username" +msgstr "사용자명" + +#. module: fetchmail +#: help:fetchmail.server,server:0 +msgid "Hostname or IP of the mail server" +msgstr "메일서버의 호스트이름 또는 IP" + +#. module: fetchmail +#: field:fetchmail.server,name:0 +msgid "Name" +msgstr "이름" + +#. module: fetchmail +#: code:addons/fetchmail/fetchmail.py:163 +#, python-format +msgid "" +"Here is what we got instead:\n" +" %s." +msgstr "" + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "Test & Confirm" +msgstr "시험 & 확정" + +#. module: fetchmail +#: field:fetchmail.server,action_id:0 +msgid "Server Action" +msgstr "서버 동작" + +#. module: fetchmail +#: field:mail.mail,fetchmail_server_id:0 +msgid "Inbound Mail Server" +msgstr "수신메일서버" + +#. module: fetchmail +#: field:fetchmail.server,message_ids:0 +#: model:ir.actions.act_window,name:fetchmail.act_server_history +msgid "Messages" +msgstr "메시지" + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "Search Incoming Mail Servers" +msgstr "수신메일서버 검색" + +#. module: fetchmail +#: field:fetchmail.server,active:0 +msgid "Active" +msgstr "활성" + +#. module: fetchmail +#: help:fetchmail.server,attach:0 +msgid "" +"Whether attachments should be downloaded. If not enabled, incoming emails " +"will be stripped of any attachments before being processed" +msgstr "" + +#. module: fetchmail +#: model:ir.model,name:fetchmail.model_mail_mail +msgid "Outgoing Mails" +msgstr "발신 이메일" + +#. module: fetchmail +#: field:fetchmail.server,priority:0 +msgid "Server Priority" +msgstr "서버 우선 순위" + +#. module: fetchmail +#: selection:fetchmail.server,type:0 +msgid "IMAP Server" +msgstr "IMAP 서버" + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "IMAP" +msgstr "IMAP" + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "Server type POP." +msgstr "" + +#. module: fetchmail +#: field:fetchmail.server,password:0 +msgid "Password" +msgstr "암호" + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "Actions to Perform on Incoming Mails" +msgstr "수신 메일에 실행할 동작" + +#. module: fetchmail +#: field:fetchmail.server,type:0 +msgid "Server Type" +msgstr "서버 유형" + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "Login Information" +msgstr "로그인 정보" + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "Server Information" +msgstr "서버 정보" + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "If SSL required." +msgstr "SSL이 필요할 경우." + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "Advanced" +msgstr "고급" + +#. module: fetchmail +#: view:fetchmail.server:0 +msgid "Server & Login" +msgstr "서버 & 로그인" + +#. module: fetchmail +#: help:fetchmail.server,object_id:0 +msgid "" +"Process each incoming mail as part of a conversation corresponding to this " +"document type. This will create new documents for new conversations, or " +"attach follow-up emails to the existing conversations (documents)." +msgstr "" + +#. module: fetchmail +#: field:fetchmail.server,object_id:0 +msgid "Create a New Record" +msgstr "" + +#. module: fetchmail +#: selection:fetchmail.server,state:0 +msgid "Not Confirmed" +msgstr "확정되지 않음" + +#. module: fetchmail +#: selection:fetchmail.server,type:0 +msgid "POP Server" +msgstr "POP 서버" + +#. module: fetchmail +#: field:fetchmail.server,port:0 +msgid "Port" +msgstr "포트" diff --git a/addons/fleet/static/src/img/icon.png b/addons/fleet/static/description/icon.png similarity index 100% rename from addons/fleet/static/src/img/icon.png rename to addons/fleet/static/description/icon.png diff --git a/addons/google_base_account/__init__.py b/addons/google_base_account/__init__.py index e1a476431af..44a5aabe277 100644 --- a/addons/google_base_account/__init__.py +++ b/addons/google_base_account/__init__.py @@ -20,7 +20,6 @@ ############################################################################## import google_base_account -import wizard # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/google_base_account/__openerp__.py b/addons/google_base_account/__openerp__.py index b4d996f2807..99678d2785d 100644 --- a/addons/google_base_account/__openerp__.py +++ b/addons/google_base_account/__openerp__.py @@ -30,10 +30,9 @@ The module adds google user in res user. """, 'author': 'OpenERP SA', 'website': 'http://www.openerp.com', - 'depends': ['base'], + 'depends': ['base_setup'], 'data': [ - 'google_base_account_view.xml', - 'wizard/google_login_view.xml', + 'google_base_account_data.xml', ], 'demo': [], 'installable': True, diff --git a/addons/google_base_account/google_base_account.py b/addons/google_base_account/google_base_account.py index 06e5643344c..a6cf67bbe62 100644 --- a/addons/google_base_account/google_base_account.py +++ b/addons/google_base_account/google_base_account.py @@ -19,14 +19,48 @@ # ############################################################################## -from openerp.osv import fields,osv - -class res_users(osv.osv): - _inherit = "res.users" - _columns = { - 'gmail_user': fields.char('Username', size=64,), - 'gmail_password': fields.char('Password', size=64), - } +from openerp.osv import osv +from openerp import SUPERUSER_ID +from openerp.tools.translate import _ + +import urllib +import urllib2 +import simplejson + + +class google_service(osv.osv): + _name = 'google.service' + + def generate_refresh_token(self, cr, uid, service, authorization_code, context=None): + if authorization_code: + ir_config = self.pool['ir.config_parameter'] + client_id = ir_config.get_param(cr, SUPERUSER_ID, 'google_%s_client_id' % service) + client_secret = ir_config.get_param(cr, SUPERUSER_ID, 'google_%s_client_secret' % service) + redirect_uri = ir_config.get_param(cr, SUPERUSER_ID, 'google_redirect_uri') + + #Get the Refresh Token From Google And store it in ir.config_parameter + headers = {"Content-type": "application/x-www-form-urlencoded"} + data = dict(code=authorization_code, client_id=client_id, client_secret=client_secret, redirect_uri=redirect_uri, grant_type="authorization_code") + data = urllib.urlencode(data) + try: + req = urllib2.Request("https://accounts.google.com/o/oauth2/token", data, headers) + content = urllib2.urlopen(req).read() + except urllib2.HTTPError: + raise self.pool.get('res.config.settings').get_config_warning(cr, _("Something went wrong during your token generation. Maybe your Authorization Code is invalid or already expired"), context=context) + + content = simplejson.loads(content) + return content.get('refresh_token') + + def _get_google_token_uri(self, cr, uid, service, context=None): + ir_config = self.pool['ir.config_parameter'] + params = { + 'scope': 'https://www.googleapis.com/auth/drive', + 'redirect_uri': ir_config.get_param(cr, SUPERUSER_ID, 'google_redirect_uri'), + 'client_id': ir_config.get_param(cr, SUPERUSER_ID, 'google_%s_client_id' % service), + 'response_type': 'code', + 'client_id': ir_config.get_param(cr, SUPERUSER_ID, 'google_%s_client_id' % service), + } + uri = 'https://accounts.google.com/o/oauth2/auth?%s' % urllib.urlencode(params) + return uri # vim:expandtab:smartindent:toabstop=4:softtabstop=4:shiftwidth=4: - diff --git a/addons/google_base_account/google_base_account_data.xml b/addons/google_base_account/google_base_account_data.xml new file mode 100644 index 00000000000..c6748df7dc9 --- /dev/null +++ b/addons/google_base_account/google_base_account_data.xml @@ -0,0 +1,9 @@ + + + + + google_redirect_uri + urn:ietf:wg:oauth:2.0:oob + + + \ No newline at end of file diff --git a/addons/google_base_account/google_base_account_view.xml b/addons/google_base_account/google_base_account_view.xml deleted file mode 100644 index 8613582692f..00000000000 --- a/addons/google_base_account/google_base_account_view.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - res.users.google.form1 - res.users - - - - - - - - - - - - - - diff --git a/addons/google_base_account/wizard/__init__.py b/addons/google_base_account/wizard/__init__.py deleted file mode 100644 index a6b9c644a1e..00000000000 --- a/addons/google_base_account/wizard/__init__.py +++ /dev/null @@ -1,25 +0,0 @@ -# -*- coding: utf-8 -*- -############################################################################## -# -# OpenERP, Open Source Management Solution -# Copyright (C) 2004-2010 Tiny SPRL (). -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as -# published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . -# -############################################################################## - -import google_login - -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: - diff --git a/addons/google_base_account/wizard/google_login.py b/addons/google_base_account/wizard/google_login.py deleted file mode 100644 index 1771d99b51e..00000000000 --- a/addons/google_base_account/wizard/google_login.py +++ /dev/null @@ -1,85 +0,0 @@ -# -*- coding: utf-8 -*- -############################################################################## -# -# OpenERP, Open Source Management Solution -# Copyright (C) 2004-2010 Tiny SPRL (). -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as -# published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . -# -############################################################################## - -from openerp.osv import fields,osv -from openerp.tools.translate import _ -try: - import gdata.contacts.service - import gdata.contacts.client - import gdata.calendar.service -except ImportError: - raise osv.except_osv(_('Google Contacts Import Error!'), _('Please install gdata-python-client from http://code.google.com/p/gdata-python-client/downloads/list')) - -class google_login(osv.osv_memory): - _description ='Google Contact' - _name = 'google.login' - _columns = { - 'user': fields.char('Google Username', size=64, required=True), - 'password': fields.char('Google Password', size=64), - } - - def google_login(self, user, password, type='', context=None): - if type == 'group': - gd_client = gdata.contacts.service.ContactsService() - elif type == 'contact': - gd_client = gdata.contacts.service.ContactsService() - elif type == 'calendar': - gd_client = gdata.calendar.service.CalendarService() - elif type =='docs_client': - gd_client = gdata.docs.client.DocsClient() - else: - gd_client = gdata.contacts.service.ContactsService() - try: - gd_client.ClientLogin(user, password, gd_client.source) - except Exception: - return False - return gd_client - - - def default_get(self, cr, uid, fields, context=None): - res = super(google_login, self).default_get(cr, uid, fields, context=context) - user_obj = self.pool.get('res.users').browse(cr, uid, uid) - if 'user' in fields: - res.update({'user': user_obj.gmail_user}) - if 'password' in fields: - res.update({'password': user_obj.gmail_password}) - return res - - def login(self, cr, uid, ids, context=None): - data = self.read(cr, uid, ids)[0] - user = data['user'] - password = data['password'] - if self.google_login(user, password): - res = { - 'gmail_user': user, - 'gmail_password': password - } - self.pool.get('res.users').write(cr, uid, uid, res, context=context) - else: - raise osv.except_osv(_('Error!'), _("Authentication failed. Check the user and password.")) - - return self._get_next_action(cr, uid, context=context) - - def _get_next_action(self, cr, uid, context=None): - return {'type': 'ir.actions.act_window_close'} - - -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/google_base_account/wizard/google_login_view.xml b/addons/google_base_account/wizard/google_login_view.xml deleted file mode 100644 index ed345ab5a0f..00000000000 --- a/addons/google_base_account/wizard/google_login_view.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - google.login.form - google.login - - - - - - -
-
- -
-
- - - - Google Login - ir.actions.act_window - google.login - form - form - new - - -
-
diff --git a/addons/google_docs/__init__.py b/addons/google_docs/__init__.py deleted file mode 100644 index dd6285502c0..00000000000 --- a/addons/google_docs/__init__.py +++ /dev/null @@ -1 +0,0 @@ -import google_docs diff --git a/addons/google_docs/google_docs.py b/addons/google_docs/google_docs.py deleted file mode 100644 index 2fd1976ae3b..00000000000 --- a/addons/google_docs/google_docs.py +++ /dev/null @@ -1,193 +0,0 @@ -############################################################################## -# -# OpenERP, Open Source Management Solution -# Copyright (C) 2004-2012 OpenERP SA (). -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as -# published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . -# -############################################################################## -import logging -from datetime import datetime - -from openerp.tools import DEFAULT_SERVER_DATETIME_FORMAT -from openerp.osv import fields, osv -from openerp.tools.translate import _ - -_logger = logging.getLogger(__name__) - -try: - import gdata.docs.data - import gdata.docs.client - - # API breakage madness in the gdata API - those guys are insane. - try: - # gdata 2.0.15+ - gdata.docs.client.DocsClient.copy_resource - except AttributeError: - # gdata 2.0.14- : copy_resource() was copy() - gdata.docs.client.DocsClient.copy_resource = gdata.docs.client.DocsClient.copy - - try: - # gdata 2.0.16+ - gdata.docs.client.DocsClient.get_resource_by_id - except AttributeError: - try: - # gdata 2.0.15+ - gdata.docs.client.DocsClient.get_resource_by_self_link - def get_resource_by_id_2_0_16(self, resource_id, **kwargs): - return self.GetResourceBySelfLink( - gdata.docs.client.RESOURCE_FEED_URI + ('/%s' % resource_id), **kwargs) - gdata.docs.client.DocsClient.get_resource_by_id = get_resource_by_id_2_0_16 - except AttributeError: - # gdata 2.0.14- : alias get_resource_by_id() - gdata.docs.client.DocsClient.get_resource_by_id = gdata.docs.client.DocsClient.get_doc - - try: - import atom.http_interface - _logger.info('GData lib version `%s` detected' % atom.http_interface.USER_AGENT) - except (ImportError, AttributeError): - _logger.debug('GData lib version could not be detected', exc_info=True) - -except ImportError: - _logger.warning("Please install latest gdata-python-client from http://code.google.com/p/gdata-python-client/downloads/list") - - -class google_docs_ir_attachment(osv.osv): - _inherit = 'ir.attachment' - - def _auth(self, cr, uid, context=None): - ''' - Connexion with google base account - @return client object for connexion - ''' - #pool the google.login in google_base_account - google_pool = self.pool.get('google.login') - #get gmail password and login. We use default_get() instead of a create() followed by a read() on the - # google.login object, because it is easier. The keys 'user' and 'password' ahve to be passed in the dict - # but the values will be replaced by the user gmail password and login. - user_config = google_pool.default_get(cr, uid, {'user' : '' , 'password' : ''}, context=context) - #login gmail account - client = google_pool.google_login(user_config['user'], user_config['password'], type='docs_client', context=context) - if not client: - raise osv.except_osv(_('Google Docs Error!'), _("Check your google configuration in Users/Users/Synchronization tab.")) - _logger.info('Logged into google docs as %s', user_config['user']) - return client - - def create_empty_google_doc(self, cr, uid, res_model, res_id, context=None): - '''Create a new google document, empty and with a default type (txt) - :param res_model: the object for which the google doc is created - :param res_id: the Id of the object for which the google doc is created - :return: the ID of the google document object created - ''' - #login with the base account google module - client = self._auth(cr, uid, context=context) - # create the document in google docs - title = "%s %s" % (context.get("name","Untitled Document."), datetime.today().strftime(DEFAULT_SERVER_DATETIME_FORMAT)) - local_resource = gdata.docs.data.Resource(gdata.docs.data.DOCUMENT_LABEL,title=title) - #create a new doc in Google Docs - gdocs_resource = client.post(entry=local_resource, uri='https://docs.google.com/feeds/default/private/full/') - # create an ir.attachment into the db - self.create(cr, uid, { - 'res_model': res_model, - 'res_id': res_id, - 'type': 'url', - 'name': title, - 'url': gdocs_resource.get_alternate_link().href, - }, context=context) - return {'resource_id': gdocs_resource.resource_id.text, - 'title': title, - 'url': gdocs_resource.get_alternate_link().href} - - def copy_gdoc(self, cr, uid, res_model, res_id, name_gdocs, gdoc_template_id, context=None): - ''' - copy an existing document in google docs - :param res_model: the object for which the google doc is created - :param res_id: the Id of the object for which the google doc is created - :param name_gdocs: the name of the future ir.attachment that will be created. Based on the google doc template foun. - :param gdoc_template_id: the id of the google doc document to copy - :return: the ID of the google document object created - ''' - #login with the base account google module - client = self._auth(cr, uid) - # fetch and copy the original document - try: - doc = client.get_resource_by_id(gdoc_template_id) - #copy the document you choose in the configuration - copy_resource = client.copy_resource(doc, name_gdocs) - except: - raise osv.except_osv(_('Google Docs Error!'), _("Your resource id is not correct. You can find the id in the google docs URL.")) - # create an ir.attachment - self.create(cr, uid, { - 'res_model': res_model, - 'res_id': res_id, - 'type': 'url', - 'name': name_gdocs, - 'url': copy_resource.get_alternate_link().href - }, context=context) - return copy_resource.resource_id.text - - def google_doc_get(self, cr, uid, res_model, ids, context=None): - ''' - Function called by the js, when no google doc are yet associated with a record, with the aim to create one. It - will first seek for a google.docs.config associated with the model `res_model` to find out what's the template - of google doc to copy (this is usefull if you want to start with a non-empty document, a type or a name - different than the default values). If no config is associated with the `res_model`, then a blank text document - with a default name is created. - :param res_model: the object for which the google doc is created - :param ids: the list of ids of the objects for which the google doc is created. This list is supposed to have - a length of 1 element only (batch processing is not supported in the code, though nothing really prevent it) - :return: the google document object created - ''' - if len(ids) != 1: - raise osv.except_osv(_('Google Docs Error!'), _("Creating google docs may only be done by one at a time.")) - res_id = ids[0] - pool_ir_attachment = self.pool.get('ir.attachment') - pool_gdoc_config = self.pool.get('google.docs.config') - name_gdocs = '' - model_fields_dic = self.pool[res_model].read(cr, uid, res_id, [], context=context) - - # check if a model is configured with a template - google_docs_config = pool_gdoc_config.search(cr, uid, [('model_id', '=', res_model)], context=context) - if google_docs_config: - name_gdocs = pool_gdoc_config.browse(cr, uid, google_docs_config, context=context)[0].name_template - try: - name_gdocs = name_gdocs % model_fields_dic - except: - raise osv.except_osv(_('Key Error!'), _("Your Google Doc Name Pattern's key does not found in object.")) - google_template_id = pool_gdoc_config.browse(cr, uid, google_docs_config[0], context=context).gdocs_resource_id - google_document = pool_ir_attachment.copy_gdoc(cr, uid, res_model, res_id, name_gdocs, google_template_id, context=context) - else: - google_document = pool_ir_attachment.create_empty_google_doc(cr, uid, res_model, res_id, context=context) - return google_document - -class config(osv.osv): - _name = 'google.docs.config' - _description = "Google Docs templates config" - - _columns = { - 'model_id': fields.many2one('ir.model', 'Model', required=True), - 'gdocs_resource_id': fields.char('Google Resource ID to Use as Template', size=64, help=''' -This is the id of the template document, on google side. You can find it thanks to its URL: -*for a text document with url like `https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is `document:123456789` -*for a spreadsheet document with url like `https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, the ID is `spreadsheet:123456789` -*for a presentation (slide show) document with url like `https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id.p`, the ID is `presentation:123456789` -*for a drawing document with url like `https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is `drawings:123456789` -... -''', required=True), - 'name_template': fields.char('Google Doc Name Pattern', size=64, help='Choose how the new google docs will be named, on google side. Eg. gdoc_%(field_name)s', required=True), - } - - _defaults = { - 'name_template': 'gdoc_%(name)s', - } diff --git a/addons/google_docs/i18n/ar.po b/addons/google_docs/i18n/ar.po deleted file mode 100644 index bf8df78b926..00000000000 --- a/addons/google_docs/i18n/ar.po +++ /dev/null @@ -1,188 +0,0 @@ -# Arabic translation for openobject-addons -# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 -# This file is distributed under the same license as the openobject-addons package. -# FIRST AUTHOR , 2013. -# -msgid "" -msgstr "" -"Project-Id-Version: openobject-addons\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2012-12-21 17:05+0000\n" -"PO-Revision-Date: 2013-02-25 21:35+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Arabic \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "" diff --git a/addons/google_docs/i18n/cs.po b/addons/google_docs/i18n/cs.po deleted file mode 100644 index 38cda3eccca..00000000000 --- a/addons/google_docs/i18n/cs.po +++ /dev/null @@ -1,188 +0,0 @@ -# Czech translation for openobject-addons -# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 -# This file is distributed under the same license as the openobject-addons package. -# FIRST AUTHOR , 2013. -# -msgid "" -msgstr "" -"Project-Id-Version: openobject-addons\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2012-12-21 17:05+0000\n" -"PO-Revision-Date: 2013-03-31 16:49+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Czech \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-04-01 05:06+0000\n" -"X-Generator: Launchpad (build 16546)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "" diff --git a/addons/google_docs/i18n/de.po b/addons/google_docs/i18n/de.po deleted file mode 100644 index 017a0860244..00000000000 --- a/addons/google_docs/i18n/de.po +++ /dev/null @@ -1,226 +0,0 @@ -# German 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-12-21 17:05+0000\n" -"PO-Revision-Date: 2012-12-10 11:38+0000\n" -"Last-Translator: Thorsten Vocks (OpenBig.org) \n" -"Language-Team: German \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "Fehler im 'Key' !" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" -"Am Beispiel einer Präsentation (slide show) unter einer URL wie " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, ist die ID die folgende `presentation:123456789`" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" -"Am Beispiel eines textdokuments (doc) unter einer URL wie " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, ist die " -"ID die folgende `document:123456789`" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "Google Resource ID als Vorlage" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" -"Am Beispiel einer Zeichnung (drawings) unter einer URL wie " -"'https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, ist die " -"ID die folgende `drawings:123456789`" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "Google Doc hinzufügen ..." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" -"Dieses ist die ID Ihrer Textvorlage auf der Google Seite. Sie können diese " -"dank Ihrer URL finden unter:" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "Konfiguration Google Docs Vorlage" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" -"Die google Anmeldedaten für den Benutzer wurden nicht hinterlegt. Bitte " -"kontaktieren Sie Ihren Administrator." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" -"Am Beispiel einer Tabelle (spreadsheet) unter einer URL wie " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"ist die ID die folgende `spreadsheet:123456789`" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" -"Die ID der Resource ist nicht korrekt. Sie können die ID über Ihre google " -"docs URL finden." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "Es kann nur ein google doc zur gleichen Zeit bearbeitet werden" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "Google Docs Fehler !" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" -"Prüfen Sie Ihre google Einstellungen unter dem Aktenreiter Benutzer / " -"Benutzer / Synchronisation." - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "Google Docs Konfiguration" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "Die google Anmeldedaten wurden noch nicht hinterlegt." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "Ihr google doc Bezeichnungsmuster konnte hier nicht gefunden werden" - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" -"Wählen Sie aus wie das google doc in google side bezeichnet werden soll, " -"z.B. gdoc_%(field_name)s" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "Google Docs Konfiguration" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" -"\n" -"Dies ist die ID der Dokumenten Vorlage unter google sides. Sie können diese " -"dank seiner URL einfach finden:\n" -"* für ein Textdokument mit einer url wie " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, ist die " -"ID `document: 123456789`\n" -"* für eine Tabellenkalkulation mit einer url wie " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789 # gid = " -"0`, ist die ID `spreadsheet: 123456789`\n" -"* für eine Präsentation (slide show) mit einer url wie " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit # slide " -"= id.p`, ist die ID `presentation: 123456789 `\n" -"* für eine Zeichnung mit einer url wie " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, ist die " -"ID `drawings: 123456789`\n" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "Google Doc Bezeichnungsmuster" diff --git a/addons/google_docs/i18n/es.po b/addons/google_docs/i18n/es.po deleted file mode 100644 index 71bb08ece9a..00000000000 --- a/addons/google_docs/i18n/es.po +++ /dev/null @@ -1,230 +0,0 @@ -# Spanish 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-12-21 17:05+0000\n" -"PO-Revision-Date: 2012-12-12 12:51+0000\n" -"Last-Translator: Pedro Manuel Baeza \n" -"Language-Team: Spanish \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "¡Error de clave!" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" -"para un documento de presentación (muestra de diapositivas) con una " -"dirección como " -"'https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p', el id. es 'presentation:123456789'" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" -"para un documento de texto con una dirección como " -"'https://docs.google.com/a/openerp.com/document/d/123456789/edit', el id. es " -"'document:123456789'" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "Id. del recurso de Google a usar como plantilla" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" -"para un documento de dibujo con la dirección " -"'https://docs.google.com/a/openerp.com/drawings/d/123456789/edit', el id. es " -"'drawings:123456789'" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "Añadir documento google..." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" -"Éste es el id de la plantilla del documento, de la parte de Google. Puede " -"averiguarlo gracias a su dirección:" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "Configurar plantillas Google Docs" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" -"Los credenciales del usuario de Google no están establecidos aún. Contacte " -"con su administrador para más ayuda." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" -"para una hoja de cálculo con la dirección " -"'https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0', " -"el id. es `spreadsheet:123456789`" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" -"Su id de recurso no es correcto. Puede encontrar el id en la URL de google " -"docs." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "" -"Crear un documento google solo puede ser hecho por uno al mismo tiempo." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "¡Error Google Dos!" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" -"Verifique su configuración google en Usuarios/usuarios/pestaña sincronización" - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "Configuración Google Docs" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "Configuración de modelos" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "Modelo" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "Las credenciales de usuario Google aún no se han establecido." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" -"No se ha encontrado la clave del patrón de nombre del documento de Google en " -"el objeto." - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" -"Escoja cómo serán nombrados los nuevos documentos de Google, en la parte de " -"Google. Por ejemplo, gdoc_%(field_name)s." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "Configuración de Google docs" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" -"\n" -"Éste es el id. del documento plantilla, en la parte de Google. Puede " -"averiguarlo gracias a su dirección:\n" -"* para un documento de texto con una dirección como " -"'https://docs.google.com/a/openerp.com/document/d/123456789/edit', el id. es " -"'document:123456789'\n" -"* para una hoja de cálculo con la dirección " -"'https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0', " -"el id. es `spreadsheet:123456789`\n" -"* para un documento de presentación (muestra de diapositivas) con una " -"dirección como " -"'https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p', el id. es 'presentation:123456789'\n" -"* para un documento de dibujo con la dirección " -"'https://docs.google.com/a/openerp.com/drawings/d/123456789/edit', el id. es " -"'drawings:123456789'\n" -"...\n" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "Adjunto" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "Patrón de nombre del documento Google" diff --git a/addons/google_docs/i18n/fr.po b/addons/google_docs/i18n/fr.po deleted file mode 100644 index cf9ffdaccc8..00000000000 --- a/addons/google_docs/i18n/fr.po +++ /dev/null @@ -1,230 +0,0 @@ -# French 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-12-21 17:05+0000\n" -"PO-Revision-Date: 2012-12-21 13:47+0000\n" -"Last-Translator: Maxime Chambreuil (http://www.savoirfairelinux.com) " -"\n" -"Language-Team: French \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "Erreur de clé!" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" -"pour une présentation (diaporama) ayant une url " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, l'ID est `presentation:123456789`" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" -"pour un document ayant l'url " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, l'ID est " -"`document:123456789`" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "L'identifiant Google de la ressource à utiliser comme modèle" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" -"pour un dessin ayant l'url " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, l'ID est " -"`drawings:123456789`" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "Ajouter un document Google..." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" -"Ceci est l'identifiant du modèle de document, du côté de Google. Vous pouvez " -"le trouver grâce à son url:" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "Configuration des modèles de documents Google" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" -"Vous n'avez pas renseigné les identifiants Google sur votre compte " -"utilisateur. Contactez votre administrateur si vous souhaitez de l'aide." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" -"pour un document tableur ayant l'url " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -" l'ID est `spreadsheet:123456789`" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" -"L'identifiant de la ressource est incorrecte. Vous pouvez le trouver dans " -"l'url associée document Google." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "Vous ne pouvez créer qu'un seul document google à la fois." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "Erreur Google Docs!" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" -"Vérifiez votre configuration Google dans l'onglet Synchronisation du " -"formulaire Utilisateurs" - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "Configuration Google Documents" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "Configuration des Modèles" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "Modèles" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "" -"Les paramètres d'authentification Google de l'utilisateur n'ont pas encoré " -"été configurés" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "Le nom du document google associé n'a pas été trouvé dans cet objet." - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" -"Choisissez le nom du nouveau document google sur les serveurs Google. ex: " -"gdoc_%(field_name)s" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "Configuration de Google documents" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" -"\n" -"Ceci est l'identifiant du modèle de document, du côté de Google. Vous pouvez " -"le trouver grâce à son URL: \n" -" \n" -"*Pour un document texte dont l'url est " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, l'ID est " -"`document:123456789`\n" -"*Pour un document tableur dont l'url est " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"l'ID est `spreadsheet:123456789`\n" -"*Pour une présentation dont l'url est " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, l'ID est `presentation:123456789`\n" -"* Pour un dessin dont l'url est " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, l'ID est " -"`drawings:123456789`\n" -"...\n" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "ir.attachment" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "Motif de nom de document Google" diff --git a/addons/google_docs/i18n/google_docs.pot b/addons/google_docs/i18n/google_docs.pot deleted file mode 100644 index 8da7c5d2f70..00000000000 --- a/addons/google_docs/i18n/google_docs.pot +++ /dev/null @@ -1,159 +0,0 @@ -# Translation of OpenERP Server. -# This file contains the translation of the following modules: -# * google_docs -# -msgid "" -msgstr "" -"Project-Id-Version: OpenERP Server 7.0alpha\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-12-21 17:05+0000\n" -"PO-Revision-Date: 2012-12-21 17:05+0000\n" -"Last-Translator: <>\n" -"Language-Team: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Plural-Forms: \n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:139 -#, python-format -msgid "Key Error!" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "for a presentation (slide show) document with url like `https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id.p`, the ID is `presentation:123456789`" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "for a text document with url like `https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is `document:123456789`" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "for a drawing document with url like `https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is `drawings:123456789`" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "This is the id of the template document, on google side. You can find it thanks to its URL:" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "The user google credentials are not set yet. Contact your administrator for help." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "for a spreadsheet document with url like `https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, the ID is `spreadsheet:123456789`" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:101 -#, python-format -msgid "Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:125 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:56 -#: code:addons/google_docs/google_docs.py:101 -#: code:addons/google_docs/google_docs.py:125 -#, python-format -msgid "Google Docs Error!" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:56 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:139 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "Choose how the new google docs will be named, on google side. Eg. gdoc_%(field_name)s" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "\n" -"This is the id of the template document, on google side. You can find it thanks to its URL: \n" -"*for a text document with url like `https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is `document:123456789`\n" -"*for a spreadsheet document with url like `https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like `https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id.p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like `https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is `drawings:123456789`\n" -"...\n" -"" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "" - diff --git a/addons/google_docs/i18n/hr.po b/addons/google_docs/i18n/hr.po deleted file mode 100644 index ac1a64cd1e2..00000000000 --- a/addons/google_docs/i18n/hr.po +++ /dev/null @@ -1,190 +0,0 @@ -# Croatian 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-12-21 17:05+0000\n" -"PO-Revision-Date: 2012-12-09 20:25+0000\n" -"Last-Translator: Goran Kliska \n" -"Language-Team: Croatian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "Dodaj Google Doc..." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "Google Docs greška!" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "Postave Google Docs-a" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "Model" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" -"Odaberite kako će se nazivati novi google dokumenti, on google side. Eg. " -"gdoc_%(field_name)s" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "" diff --git a/addons/google_docs/i18n/hu.po b/addons/google_docs/i18n/hu.po deleted file mode 100644 index 344e01173a9..00000000000 --- a/addons/google_docs/i18n/hu.po +++ /dev/null @@ -1,226 +0,0 @@ -# Hungarian translation for openobject-addons -# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 -# This file is distributed under the same license as the openobject-addons package. -# FIRST AUTHOR , 2013. -# -msgid "" -msgstr "" -"Project-Id-Version: openobject-addons\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2012-12-21 17:05+0000\n" -"PO-Revision-Date: 2013-03-02 09:35+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Hungarian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "Kulcs hiba!" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" -"a bemutatóhoz (diavetítés) a dokumentum URL elérési útja mint " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, az ID azonosítója `presentation:123456789`" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" -"egy szöveges dokumantum URL elérési útja mint " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, az ID " -"azonosítója `document:123456789`" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "Google forrás ID azonosító sablonként való használathoz" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" -"egy ábra dokumantum URL elérési útja mint " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, az ID " -"azonosítója `drawings:123456789`" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "Google Doc hozzáadása..." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" -"Eza samlon dokumentum ID azonosítója, a google oldalról. Megtalálhatja az " -"URL elérési úrjának köszönhetően:" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "Google Docs sablon beállítás" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" -"A felhasználó google igazolásai még nincsenek beállítva. Lépjen kapcsolatba " -"az adminnal segítségért." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" -"egy táblázatkezelő dokumentumhoz ilyen URL elérési úttal mint " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"ai ID azonosítója `spreadsheet:123456789`" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" -"A forrás ID azonosítója nem helyes. Megtalálhatja az ID azonosítót a google " -"dokumentum URL elérési útjában." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "Lehet, hogy egyszerre csak egy google dokumentumot hozhat létre." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "Google dokumentum hiba!" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" -"Ellenőrizze a google beállításokat az " -"Felhsználók/Felhasználók/Szinkronizáció fülön." - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "Google dokumentum beállítás" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "Modell beállítás" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "Modell" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "Google személyi okmányok nincsenek beállítva." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "A Google dokumentum náv minta kulcs nem található az objektumban." - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" -"Vállassza ki a Google dokumentum új név alkotási módját, a google oldalról. " -"Pl. gdoc_%(field_name)s" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "Google dokumentum beállítás" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" -"\n" -"Ez a sablon dokumentum ID azonosító, a google oldalon. Megtalálja az URL " -"elérési útnak köszönhetően: \n" -"*a szöveges dokumentumnak az URL elérési útja mint " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, az ID " -"azonosítója `document:123456789`\n" -"*a táblázatkezelő dokumentumnak az URL elérési útja mint " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"az ID azonosítója `spreadsheet:123456789`\n" -"*a bemutató (diavetítés) dokumentumnak az URL elérési útja " -"mint`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slid" -"e=id.p`, az ID azonosítója `presentation:123456789`\n" -"*a grafikai dokumentumnak az URL elérési útja mint " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, az ID " -"azonosítója `drawings:123456789`\n" -"...\n" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "ir.attachment" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "Google dokumentum név minta" diff --git a/addons/google_docs/i18n/it.po b/addons/google_docs/i18n/it.po deleted file mode 100644 index 2eca676d6c7..00000000000 --- a/addons/google_docs/i18n/it.po +++ /dev/null @@ -1,227 +0,0 @@ -# Italian 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-12-21 17:05+0000\n" -"PO-Revision-Date: 2012-12-18 22:11+0000\n" -"Last-Translator: Sergio Corato \n" -"Language-Team: Italian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "Errore Chiave!" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" -"per un documento di presentazione (proiezione diapositive) con un url come " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, l'ID è `presentation:123456789`" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" -"per un documento di testo con un url come " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, l'ID è " -"`document:123456789`" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "ID risorsa google da usare come modello" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" -"per un documento di disegno con url come " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, l'ID è " -"`drawings:123456789`" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "Aggiungi google doc" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" -"Questo è l'id del modello di documento, sul lato google. E' possibile " -"trovarlo tramite il suo URL:" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "Config. modello google docs" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" -"Le credeziali dell'utente google non sono ancora impostate. Contattare " -"l'amministratore per aiuto." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" -"per un foglio di calcolo con url come " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"l'ID è `spreadsheet:123456789`" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" -"Il vostro ID risorsa non è corretto. Potete trovarlo nell'URL di google docs" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "" -"La creazione di documenti google può essere fatto solo uno alla volta." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "Errore Google Docs!" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" -"Controllare la configurazione google nella scheda " -"Utenti/Utenti/Sincronizzazione" - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "Configurazione Google Docs" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "Configurazione modelli" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "Modello" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "Credenziali utente google non ancora impostate." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" -"La chiave dello Schema Nome di Google Doc non è stata trovata nell'oggetto." - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" -"Scegliere come il nuovo google docs sarà nominato, sul lato google. Es.: " -"gdoc_%(field_name)s" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "Configurazione Google Docs" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" -"\n" -"Questo è l'id del modello di documento, sul lato google. E' possibile " -"trovarlo grazie al suo URL:\n" -"*per un documento di testo con url come " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, l'ID è " -"`document:123456789`\n" -"*per un foglio di calcolo con url come " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"l'ID è `spreadsheet:123456789`\n" -"*per un documento di presentazione (proiezione diapositive) con url come " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, l'ID è `presentation:123456789`\n" -"*per un documento di disegno con url come " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, l'ID è " -"`drawings:123456789`\n" -"...\n" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "ir.attachment" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "Schema Nome Google Doc" diff --git a/addons/google_docs/i18n/ln.po b/addons/google_docs/i18n/ln.po deleted file mode 100644 index 24c26b98920..00000000000 --- a/addons/google_docs/i18n/ln.po +++ /dev/null @@ -1,188 +0,0 @@ -# Lingala translation for openobject-addons -# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 -# This file is distributed under the same license as the openobject-addons package. -# FIRST AUTHOR , 2013. -# -msgid "" -msgstr "" -"Project-Id-Version: openobject-addons\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2012-12-21 17:05+0000\n" -"PO-Revision-Date: 2013-06-05 13:00+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Lingala \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-06-06 05:21+0000\n" -"X-Generator: Launchpad (build 16667)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "" diff --git a/addons/google_docs/i18n/mk.po b/addons/google_docs/i18n/mk.po deleted file mode 100644 index 1dfd2120b5b..00000000000 --- a/addons/google_docs/i18n/mk.po +++ /dev/null @@ -1,204 +0,0 @@ -# Macedonian translation for openobject-addons -# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 -# This file is distributed under the same license as the openobject-addons package. -# FIRST AUTHOR , 2013. -# -msgid "" -msgstr "" -"Project-Id-Version: openobject-addons\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2012-12-21 17:05+0000\n" -"PO-Revision-Date: 2013-03-08 14:39+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: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "Грешка во клуч!" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" -"за презентација (слајдшоу) документ со url како " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, ID е `presentation:123456789`" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" -"за текст документ со урл " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, ID е " -"`document:123456789`" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" -"за цртеж со урл како " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, ID е " -"`drawings:123456789`" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "Додади Google док..." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "Конфигурација на Google Docs шаблони" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" -"Google креденциите за корисникот сеуште не се сетирани. Контактирајте го " -"администраторот." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "Креирање на google docs може да се направи едно по едно." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "Google Docs Грешка!" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" -"Провери ја google конфигурацијата во Корисници/Корисници/Синхронизација " -"табот." - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "Google Docs конфигурација" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "Конфигурација на модели" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "Модел" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "Google креденциите за корисникот сеуште не се поставени." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "Google Docs конфигурација" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "ir.attachment" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "" diff --git a/addons/google_docs/i18n/mn.po b/addons/google_docs/i18n/mn.po deleted file mode 100644 index 68380d3592f..00000000000 --- a/addons/google_docs/i18n/mn.po +++ /dev/null @@ -1,188 +0,0 @@ -# Mongolian translation for openobject-addons -# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 -# This file is distributed under the same license as the openobject-addons package. -# FIRST AUTHOR , 2013. -# -msgid "" -msgstr "" -"Project-Id-Version: openobject-addons\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2012-12-21 17:05+0000\n" -"PO-Revision-Date: 2013-02-19 02:49+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Mongolian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "Моделийн тохиргоо" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "Модел" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "" diff --git a/addons/google_docs/i18n/nl.po b/addons/google_docs/i18n/nl.po deleted file mode 100644 index 91b4d963e01..00000000000 --- a/addons/google_docs/i18n/nl.po +++ /dev/null @@ -1,226 +0,0 @@ -# Dutch 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-12-21 17:05+0000\n" -"PO-Revision-Date: 2012-12-01 16:42+0000\n" -"Last-Translator: Erwin van der Ploeg (Endian Solutions) \n" -"Language-Team: Dutch \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "Key fout!" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" -"voor een presentatie (dia weergave) document met een website adres, zoals: " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" -"voor een tekst document met een met een website adres, zoals: " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "Google Resource ID te gebruiken als sjabloon" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" -"voor een tekening met een met een website adres, zoals: " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "Google Doc toevoegen..." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" -"Dit is het ID van het sjabloon document op de Google site. U kunt deze " -"vinden, dankzij dit website adres:" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "Google Docs sjablonen instellingen" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" -"De Google gebruiker referenties zijn nog niet ingesteld. Neem contact op met " -"de beheerder voor hulp." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" -"voor een spreadsheet document met een met een website adres, zoals: " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" -"Uw resource ID is niet correct. U kunt deze vinden in het Google docs " -"website adres." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "U kunt maar één Google doc tegelijk aanmaken." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "Google Docs fout!" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" -"Controleer uw Google docs instellingen op het tabblad 'Synchronisatie' bij " -"in Instellingen/Gebruikers." - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "Google Docs instellingen" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "Models configuratie" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "Model" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "Google gebruiker referenties zijn niet ingesteld." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "Uw Google Doc 'Name Pattern's key' is niet gevonden in object." - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" -"Kies welke naam de nieuw aangemaakte Google docs krijgen op de Google " -"website. Bijv. gdoc_%(field_name)s" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "Google Docs Instellingen" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" -"\n" -"Dit is het id van het sjabloon document aan de google kant. Je kunt hem " -"vinden dankzij dit adres:\n" -"*voor een tekstdocument met een adres als " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, het ID is " -"`document:123456789`\n" -"*voor een spreadsheet met een adres als " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"het ID is `spreadsheet:123456789`\n" -"*voor een presentatie met een adres " -"als`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide" -"=id.p`, het ID is `presentation:123456789`\n" -"*voor een tekening met een adres als " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, het ID is " -"`drawings:123456789`\n" -"...\n" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "ir.attachment" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "Google Doc naam patroon" diff --git a/addons/google_docs/i18n/pl.po b/addons/google_docs/i18n/pl.po deleted file mode 100644 index dcd97078a6f..00000000000 --- a/addons/google_docs/i18n/pl.po +++ /dev/null @@ -1,188 +0,0 @@ -# Polish 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-12-21 17:05+0000\n" -"PO-Revision-Date: 2012-12-16 11:28+0000\n" -"Last-Translator: Grzegorz Grzelak (OpenGLOBE.pl) \n" -"Language-Team: Polish \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "Błąd klucza" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "Dodaj Google doc..." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "" diff --git a/addons/google_docs/i18n/pt.po b/addons/google_docs/i18n/pt.po deleted file mode 100644 index 1539bcbedb6..00000000000 --- a/addons/google_docs/i18n/pt.po +++ /dev/null @@ -1,188 +0,0 @@ -# Portuguese 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-12-21 17:05+0000\n" -"PO-Revision-Date: 2012-12-10 17:49+0000\n" -"Last-Translator: Andrei Talpa (multibase.pt) \n" -"Language-Team: Portuguese \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "Modelo" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "ir.attachment" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "" diff --git a/addons/google_docs/i18n/pt_BR.po b/addons/google_docs/i18n/pt_BR.po deleted file mode 100644 index 38e3c400c25..00000000000 --- a/addons/google_docs/i18n/pt_BR.po +++ /dev/null @@ -1,227 +0,0 @@ -# Brazilian Portuguese 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-12-21 17:05+0000\n" -"PO-Revision-Date: 2012-12-07 22:47+0000\n" -"Last-Translator: Fábio Martinelli - http://zupy.com.br " -"\n" -"Language-Team: Brazilian Portuguese \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "Erro de Chave!" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" -"para um documento de apresentação (slide) com a url como " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, o ID é `presentation:123456789`" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" -"para um documento de texto com a url como " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, o ID é " -"`document:123456789`" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "Id de Recurso do Google para usar como Modelo" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" -"para um documento de desenho com a url como " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, o ID " -"é`drawings:123456789`" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "Adicionar um Documento do Google..." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" -"Este é o id do modelo do documento, no lado do google. Você pode encontrá-lo " -"graças à url:" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "Configuração dos modelos do Google Docs" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" -"As credenciais do usuário do google ainda não foram definidas. Para mais " -"informações, solicite auxílio ao Administrador do Sistema." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" -"para uma planilha de cálculo com url como " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"o ID é `spreadsheet:123456789`" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" -"Sua id de recurso não está correta. Você encontra a id na url do google docs." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "A criação de documentos do google deve ser feita um de cada vez." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "Erro do Google Docs!" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" -"Verifique a sua configuração do google na aba " -"Usuários/Usuários/Sincronização." - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "Configuração do Google Docs" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "Configuração de modelos" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "Modelo" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "As credenciais de usuário do Google ainda não foram definidas." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" -"A chave do seu Padrão de Nome do Google Docs não foi encontrada no objeto." - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" -"Escolha como os novos documentos do google serão nomeados, no lado do " -"google. Ex: gdoc_%(field_name)s" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "Configuração do Google Docs" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" -"\n" -"Este é o ID do modelo de documento no Google. Você pode encontra-lo graças a " -"essa URL: \n" -"*para um documento de texto com uma url como " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, o ID é " -"`document:123456789`\n" -"*para uma planilha com url como " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"o ID é `spreadsheet:123456789`\n" -"*para uma apresentação (slide show) com url como " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, o ID é `presentation:123456789`\n" -"*para um documento de desenho com url como " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, o ID é " -"`drawings:123456789`\n" -"...\n" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "Anexo" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "Padrão de Nome do Google Docs" diff --git a/addons/google_docs/i18n/ro.po b/addons/google_docs/i18n/ro.po deleted file mode 100644 index 716b970f190..00000000000 --- a/addons/google_docs/i18n/ro.po +++ /dev/null @@ -1,226 +0,0 @@ -# Romanian translation for openobject-addons -# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 -# This file is distributed under the same license as the openobject-addons package. -# FIRST AUTHOR , 2013. -# -msgid "" -msgstr "" -"Project-Id-Version: openobject-addons\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2012-12-21 17:05+0000\n" -"PO-Revision-Date: 2013-01-27 09:26+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Romanian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "Eroare Cheie!" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" -"pentru un document de prezentare (slide show) cu url-ul " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, ID-ul este `prezentare:123456789`" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" -"pentru un document text cu url-ul " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, ID-ul " -"este `document:123456789`" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "ID Resurse Google pentru a fi folosite ca Sablon" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" -"pentru un document desen cu url-ul " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, ID-ul " -"este`desene:123456789`" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "Adauga Document Google..." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" -"Acesta este id-ul documentului sablon, pe partea google. Il puteti gasi cu " -"ajutorul URL-ului:" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "configurarea sabloanelor documentelor Google" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" -"Acreditarile utilizatorului google nu sunt inca configurate. Contactati " -"administratorul pentru ajutor." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" -"pentru un document cu tabele cu url-ul: " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"ID-ul este `tabele:123456789`" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" -"Id-ul resursei dumneavoastra nu este corect. Puteti gasi id-ul in URL " -"documente google." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "Crearea de documente google poate fi facuta numai pe rand." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "Eroare Documente Google!" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" -"Verificati configurarea google in tabul Utilizatori/Utilizatori/Sincronizare." - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "Configurarea Documentelor Google" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "Configurare modele" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "Model" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "Acreditarile utilizatorului Google nu sunt inca configurate." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" -"Cheia modelului numelui documentului Google nu a fost gasita in obiect." - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" -"Alegeti modul in care vor fi numite documentele google, pe partea google. De " -"exemplu gdoc_%(nume_camp)s" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "Configurarea Documentelor Google" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" -"\n" -"Acesta este id-ul documentului tipar, pe partea google. Il puteti gasi cu " -"ajutorul URL-ului: \n" -"*pentru un document text cu url-ul " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, ID-ul " -"este `document:123456789`\n" -"*pentru un document cu tabele cu url-ul " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"ID-ul este `spreadsheet:123456789`\n" -"*pentru un document prezentare (slide show) cu url-ul " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, ID-ul este `presentation:123456789`\n" -"*pentru un document cu desene cu url-ul " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, ID-ul " -"este `drawings:123456789`\n" -"...\n" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "ir.attachment (ir.atasament)" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "Tiparul Numelui Documentului Google" diff --git a/addons/google_docs/i18n/ru.po b/addons/google_docs/i18n/ru.po deleted file mode 100644 index 33f24ed557f..00000000000 --- a/addons/google_docs/i18n/ru.po +++ /dev/null @@ -1,196 +0,0 @@ -# Russian translation for openobject-addons -# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 -# This file is distributed under the same license as the openobject-addons package. -# FIRST AUTHOR , 2013. -# -msgid "" -msgstr "" -"Project-Id-Version: openobject-addons\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2012-12-21 17:05+0000\n" -"PO-Revision-Date: 2013-03-01 11:29+0000\n" -"Last-Translator: Эдуард \n" -"Language-Team: Russian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "Ошибка ключа!" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" -"для документа-презентации (слайд шоу) с url как " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, ID - `presentation:123456789`" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" -"для текстового документа с url как " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, ID - " -"`document:123456789`" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "ID ресурса Google для использования в качестве шаблона" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "Добавить Google Документ..." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "Конфигурация шаблонов Документов Google" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "Ошибка Документов Google!" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" -"Проверьте ваши google настройки во вкладке " -"Пользователи/Пользователи/Синхронизация." - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "Настройки Документов Google" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "Модель" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "Настройки Документов Google" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "Шаблон имени Документа Google" diff --git a/addons/google_docs/i18n/sl.po b/addons/google_docs/i18n/sl.po deleted file mode 100644 index a93afe16703..00000000000 --- a/addons/google_docs/i18n/sl.po +++ /dev/null @@ -1,188 +0,0 @@ -# Slovenian translation for openobject-addons -# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 -# This file is distributed under the same license as the openobject-addons package. -# FIRST AUTHOR , 2013. -# -msgid "" -msgstr "" -"Project-Id-Version: openobject-addons\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2012-12-21 17:05+0000\n" -"PO-Revision-Date: 2013-01-26 12:19+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: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "Model" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "ir.attachment" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "" diff --git a/addons/google_docs/i18n/sv.po b/addons/google_docs/i18n/sv.po deleted file mode 100644 index 24e7c63ea39..00000000000 --- a/addons/google_docs/i18n/sv.po +++ /dev/null @@ -1,188 +0,0 @@ -# Swedish translation for openobject-addons -# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 -# This file is distributed under the same license as the openobject-addons package. -# FIRST AUTHOR , 2013. -# -msgid "" -msgstr "" -"Project-Id-Version: openobject-addons\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2012-12-21 17:05+0000\n" -"PO-Revision-Date: 2013-02-15 14:26+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Swedish \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "Nyckelfel!" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "Lägg till Google-dokument..." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "" diff --git a/addons/google_docs/i18n/tr.po b/addons/google_docs/i18n/tr.po deleted file mode 100644 index 349d71a96b8..00000000000 --- a/addons/google_docs/i18n/tr.po +++ /dev/null @@ -1,188 +0,0 @@ -# Turkish translation for openobject-addons -# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 -# This file is distributed under the same license as the openobject-addons package. -# FIRST AUTHOR , 2013. -# -msgid "" -msgstr "" -"Project-Id-Version: openobject-addons\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2012-12-21 17:05+0000\n" -"PO-Revision-Date: 2013-02-04 14:07+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Turkish \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "" - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "" diff --git a/addons/google_docs/i18n/zh_CN.po b/addons/google_docs/i18n/zh_CN.po deleted file mode 100644 index 3ca3b5cadf9..00000000000 --- a/addons/google_docs/i18n/zh_CN.po +++ /dev/null @@ -1,197 +0,0 @@ -# Chinese (Simplified) translation for openobject-addons -# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 -# This file is distributed under the same license as the openobject-addons package. -# FIRST AUTHOR , 2013. -# -msgid "" -msgstr "" -"Project-Id-Version: openobject-addons\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2012-12-21 17:05+0000\n" -"PO-Revision-Date: 2013-01-04 11:38+0000\n" -"Last-Translator: Roc Wu \n" -"Language-Team: Chinese (Simplified) \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:53+0000\n" -"X-Generator: Launchpad (build 16532)\n" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Key Error!" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`" -msgstr "" -"网址如`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide" -"=id.p`,的演示文档(幻灯片) 其 ID 为 `presentation:123456789`" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`" -msgstr "" -"网址如 `https://docs.google.com/a/openerp.com/document/d/123456789/edit`的文本文档, " -"其 ID 为 `document:123456789`" - -#. module: google_docs -#: field:google.docs.config,gdocs_resource_id:0 -msgid "Google Resource ID to Use as Template" -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`" -msgstr "" -"网址如`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`的绘图文档, 其 " -"ID 为 `drawings:123456789`" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/xml/gdocs.xml:6 -#, python-format -msgid "Add Google Doc..." -msgstr "" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL:" -msgstr "这是位于Google端的模板文档的 ID. 你可以通过其网址找到它:" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_google_docs_config -msgid "Google Docs templates config" -msgstr "配置Google文档模板" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:25 -#, python-format -msgid "" -"The user google credentials are not set yet. Contact your administrator for " -"help." -msgstr "用户 google 用户授权尚未被设定. 联系你的管理员以获得帮助." - -#. module: google_docs -#: view:google.docs.config:0 -msgid "" -"for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`" -msgstr "" -"网址如 " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`的电" -"子表格文档, 其 ID 为 `spreadsheet:123456789`" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:129 -#, python-format -msgid "" -"Your resource id is not correct. You can find the id in the google docs URL." -msgstr "你的源 id 不正确. 你可以在 google 文档的网址中找到它." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Creating google docs may only be done by one at a time." -msgstr "一次只能生成一份google 文档." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#: code:addons/google_docs/google_docs.py:129 -#: code:addons/google_docs/google_docs.py:153 -#, python-format -msgid "Google Docs Error!" -msgstr "Google 文档错误!" - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:83 -#, python-format -msgid "Check your google configuration in Users/Users/Synchronization tab." -msgstr "在Users/Users/Synchronization 标签中检查你的google 配置." - -#. module: google_docs -#: model:ir.ui.menu,name:google_docs.menu_gdocs_config -msgid "Google Docs configuration" -msgstr "Google 文档配置" - -#. module: google_docs -#: model:ir.actions.act_window,name:google_docs.action_google_docs_users_config -#: model:ir.ui.menu,name:google_docs.menu_gdocs_model_config -msgid "Models configuration" -msgstr "模块配置" - -#. module: google_docs -#: field:google.docs.config,model_id:0 -msgid "Model" -msgstr "模块" - -#. module: google_docs -#. openerp-web -#: code:addons/google_docs/static/src/js/gdocs.js:28 -#, python-format -msgid "User Google credentials are not yet set." -msgstr "Google的用户证书尚未设定." - -#. module: google_docs -#: code:addons/google_docs/google_docs.py:167 -#, python-format -msgid "Your Google Doc Name Pattern's key does not found in object." -msgstr "" - -#. module: google_docs -#: help:google.docs.config,name_template:0 -msgid "" -"Choose how the new google docs will be named, on google side. Eg. " -"gdoc_%(field_name)s" -msgstr "选择在Google端如何命名新的google 文档. 如. gdoc_%(field_name)s" - -#. module: google_docs -#: view:google.docs.config:0 -msgid "Google Docs Configuration" -msgstr "Google 文档设置" - -#. module: google_docs -#: help:google.docs.config,gdocs_resource_id:0 -msgid "" -"\n" -"This is the id of the template document, on google side. You can find it " -"thanks to its URL: \n" -"*for a text document with url like " -"`https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is " -"`document:123456789`\n" -"*for a spreadsheet document with url like " -"`https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, " -"the ID is `spreadsheet:123456789`\n" -"*for a presentation (slide show) document with url like " -"`https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id" -".p`, the ID is `presentation:123456789`\n" -"*for a drawing document with url like " -"`https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is " -"`drawings:123456789`\n" -"...\n" -msgstr "" - -#. module: google_docs -#: model:ir.model,name:google_docs.model_ir_attachment -msgid "ir.attachment" -msgstr "" - -#. module: google_docs -#: field:google.docs.config,name_template:0 -msgid "Google Doc Name Pattern" -msgstr "" diff --git a/addons/google_docs/res_config_user_view.xml b/addons/google_docs/res_config_user_view.xml deleted file mode 100644 index e6c4223735f..00000000000 --- a/addons/google_docs/res_config_user_view.xml +++ /dev/null @@ -1,54 +0,0 @@ - - - - - - - - google_docs.config.tree - google.docs.config - - - - - - - - - - google_docs.config.form - google.docs.config - -
- - - -
-
-
- - - Models configuration - google.docs.config - ir.actions.act_window - form - - - - -
-
diff --git a/addons/google_docs/security/ir.model.access.csv b/addons/google_docs/security/ir.model.access.csv deleted file mode 100644 index 9393d586fb8..00000000000 --- a/addons/google_docs/security/ir.model.access.csv +++ /dev/null @@ -1,3 +0,0 @@ -id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink -access_google_docs,google.docs.config,model_google_docs_config,,1,0,0,0 -access_google_docs,google.docs.config,model_google_docs_config,base.group_system,1,1,1,1 \ No newline at end of file diff --git a/addons/google_docs/static/src/js/gdocs.js b/addons/google_docs/static/src/js/gdocs.js deleted file mode 100644 index 1cc511ef4d9..00000000000 --- a/addons/google_docs/static/src/js/gdocs.js +++ /dev/null @@ -1,40 +0,0 @@ -openerp.google_docs = function(instance, m) { -var _t = instance.web._t, - QWeb = instance.web.qweb; - - instance.web.Sidebar.include({ - redraw: function() { - var self = this; - this._super.apply(this, arguments); - self.$el.find('.oe_sidebar_add_attachment').after(QWeb.render('AddGoogleDocumentItem', {widget: self})) - self.$el.find('.oe_sidebar_add_google_doc').on('click', function (e) { - self.on_google_doc(); - }); - }, - on_google_doc: function() { - var self = this; - var view = self.getParent(); - var ids = ( view.fields_view.type != "form" )? view.groups.get_selection().ids : [ view.datarecord.id ]; - if( !_.isEmpty(ids) ){ - view.sidebar_eval_context().done(function (context) { - var ds = new instance.web.DataSet(this, 'ir.attachment', context); - ds.call('google_doc_get', [view.dataset.model, ids, context]).done(function(r) { - if (r == 'False') { - var params = { - error: response, - message: _t("The user google credentials are not set yet. Contact your administrator for help.") - } - $(openerp.web.qweb.render("DialogWarning", params)).dialog({ - title: _t("User Google credentials are not yet set."), - modal: true, - }); - } - }).done(function(r){ - window.open(r.url,"_blank"); - view.reload(); - }); - }); - } - } - }); -}; diff --git a/addons/google_drive/__init__.py b/addons/google_drive/__init__.py new file mode 100644 index 00000000000..e1cf2d00f3c --- /dev/null +++ b/addons/google_drive/__init__.py @@ -0,0 +1 @@ +import google_drive diff --git a/addons/google_docs/__openerp__.py b/addons/google_drive/__openerp__.py similarity index 63% rename from addons/google_docs/__openerp__.py rename to addons/google_drive/__openerp__.py index 2d064fdb8a9..9e6c73d2649 100644 --- a/addons/google_docs/__openerp__.py +++ b/addons/google_drive/__openerp__.py @@ -20,22 +20,31 @@ ############################################################################## { - 'name': 'Google Docs integration', + 'name': 'Google Drive™ integration', 'version': '0.2', 'author': 'OpenERP SA', 'website': 'http://openerp.com', 'category': 'Tools', 'installable': True, 'auto_install': False, - 'js': ['static/src/js/gdocs.js'], - 'qweb': ['static/src/xml/gdocs.xml'], + 'js': [ + 'static/lib/gapi/client.js', + 'static/src/js/gdrive.js', + ], 'data': [ 'security/ir.model.access.csv', - 'res_config_user_view.xml' + 'res_config_user_view.xml', + 'google_drive_data.xml' ], - 'depends': ['google_base_account','document'], + 'demo': [ + 'google_drive_demo.xml' + ], + 'depends': ['base_setup', 'google_base_account'], 'description': """ -Module to attach a google document to any model. -================================================ +Integrate google document to OpenERP record. +============================================ + +This module allows you to integrate google documents to any of your OpenERP record quickly and easily using OAuth 2.0 for Installed Applications, +You can configure your google Authorization Code from Settings > Configuration > General Settings by clicking on "Generate Google Authorization Code" """ } diff --git a/addons/google_drive/google_drive.py b/addons/google_drive/google_drive.py new file mode 100644 index 00000000000..1dc6b25f27c --- /dev/null +++ b/addons/google_drive/google_drive.py @@ -0,0 +1,211 @@ +############################################################################## +# +# OpenERP, Open Source Management Solution +# Copyright (C) 2004-2012 OpenERP SA (). +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +############################################################################## +import logging + +from openerp import SUPERUSER_ID +from openerp.osv import fields, osv +from openerp.tools.translate import _ + +import urllib +import urllib2 +import json +import re + +_logger = logging.getLogger(__name__) + + +class config(osv.osv): + _name = 'google.drive.config' + _description = "Google Drive templates config" + + def get_google_drive_url(self, cr, uid, config_id, res_id, template_id, context=None): + config = self.browse(cr, SUPERUSER_ID, config_id, context=context) + model = config.model_id + filter_name = config.filter_id and config.filter_id.name or False + record = self.pool.get(model.model).read(cr, uid, res_id, [], context=context) + record.update({'model': model.name, 'filter': filter_name}) + name_gdocs = config.name_template + try: + name_gdocs = name_gdocs % record + except: + raise osv.except_osv(_('Key Error!'), _("At least one key cannot be found in your Google Drive name pattern")) + + attach_pool = self.pool.get("ir.attachment") + attach_ids = attach_pool.search(cr, uid, [('res_model', '=', model.model), ('name', '=', name_gdocs), ('res_id', '=', res_id)]) + url = False + if attach_ids: + attachment = attach_pool.browse(cr, uid, attach_ids[0], context) + url = attachment.url + else: + url = self.copy_doc(cr, uid, res_id, template_id, name_gdocs, model.model, context) + return url + + def copy_doc(self, cr, uid, res_id, template_id, name_gdocs, res_model, context=None): + ir_config = self.pool['ir.config_parameter'] + google_drive_refresh_token = ir_config.get_param(cr, SUPERUSER_ID, 'google_drive_refresh_token') + if not google_drive_refresh_token: + raise self.pool.get('res.config.settings').get_config_warning(cr, _("You haven't configured 'Authorization Code' generated from google, Please generate and configure it in %(menu:base_setup.menu_general_configuration)s."), context=context) + google_drive_client_id = ir_config.get_param(cr, SUPERUSER_ID, 'google_drive_client_id') + google_drive_client_secret = ir_config.get_param(cr, SUPERUSER_ID, 'google_drive_client_secret') + google_web_base_url = ir_config.get_param(cr, SUPERUSER_ID, 'web.base.url') + + #For Getting New Access Token With help of old Refresh Token + headers = {"Content-type": "application/x-www-form-urlencoded", "Accept-Encoding": "gzip, deflate"} + data = dict(client_id=google_drive_client_id, + refresh_token=google_drive_refresh_token, + client_secret=google_drive_client_secret, + grant_type="refresh_token") + + data = urllib.urlencode(data) + try: + req = urllib2.Request('https://accounts.google.com/o/oauth2/token', data, headers) + content = urllib2.urlopen(req).read() + except urllib2.HTTPError: + raise self.pool.get('res.config.settings').get_config_warning(cr, _("Something went wrong during the token generation. Please request again an authorization code in %(menu:base_setup.menu_general_configuration)s."), context=context) + content = json.loads(content) + + # Copy template in to drive with help of new access token + if 'access_token' in content: + request_url = "https://www.googleapis.com/drive/v2/files/%s?fields=parents/id&access_token=%s" % (template_id, content['access_token']) + try: + req = urllib2.Request(request_url, None, headers) + parents = urllib2.urlopen(req).read() + except urllib2.HTTPError: + raise self.pool.get('res.config.settings').get_config_warning(cr, _("The Google Template cannot be found. Maybe it has been deleted."), context=context) + parents_dict = json.loads(parents) + + record_url = "Click on link to open Record in OpenERP\n %s/?db=%s#id=%s&model=%s" % (google_web_base_url, cr.dbname, res_id, res_model) + data = {"title": name_gdocs, "description": record_url, "parents": parents_dict['parents']} + request_url = "https://www.googleapis.com/drive/v2/files/%s/copy?access_token=%s" % (template_id, content['access_token']) + headers = {'Content-type': 'application/json', 'Accept': 'text/plain'} + data_json = json.dumps(data) + # resp, content = Http().request(request_url, "POST", data_json, headers) + req = urllib2.Request(request_url, data_json, headers) + content = urllib2.urlopen(req).read() + content = json.loads(content) + res = False + if 'alternateLink' in content.keys(): + attach_pool = self.pool.get("ir.attachment") + attach_vals = {'res_model': res_model, 'name': name_gdocs, 'res_id': res_id, 'type': 'url', 'url': content['alternateLink']} + attach_pool.create(cr, uid, attach_vals) + res = content['alternateLink'] + return res + + def get_google_drive_config(self, cr, uid, res_model, res_id, context=None): + ''' + Function called by the js, when no google doc are yet associated with a record, with the aim to create one. It + will first seek for a google.docs.config associated with the model `res_model` to find out what's the template + of google doc to copy (this is usefull if you want to start with a non-empty document, a type or a name + different than the default values). If no config is associated with the `res_model`, then a blank text document + with a default name is created. + :param res_model: the object for which the google doc is created + :param ids: the list of ids of the objects for which the google doc is created. This list is supposed to have + a length of 1 element only (batch processing is not supported in the code, though nothing really prevent it) + :return: the config id and config name + ''' + if not res_id: + raise osv.except_osv(_('Google Drive Error!'), _("Creating google drive may only be done by one at a time.")) + # check if a model is configured with a template + config_ids = self.search(cr, uid, [('model_id', '=', res_model)], context=context) + configs = [] + for config in self.browse(cr, uid, config_ids, context=context): + if config.filter_id: + if (config.filter_id.user_id and config.filter_id.user_id.id != uid): + #Private + continue + domain = [('id', 'in', [res_id])] + eval(config.filter_id.domain) + local_context = context and context.copy() or {} + local_context.update(eval(config.filter_id.context)) + google_doc_configs = self.pool.get(config.filter_id.model_id).search(cr, uid, domain, context=local_context) + if google_doc_configs: + configs.append({'id': config.id, 'name': config.name}) + else: + configs.append({'id': config.id, 'name': config.name}) + return configs + + def _resource_get(self, cr, uid, ids, name, arg, context=None): + result = {} + for data in self.browse(cr, uid, ids, context): + mo = re.search("(key=|/d/)([A-Za-z0-9-_]+)", data.google_drive_template_url) + if mo: + result[data.id] = mo.group(2) + else: + raise osv.except_osv(_('Incorrect URL!'), _("Please enter a valid Google Document URL.")) + return result + + def _client_id_get(self, cr, uid, ids, name, arg, context=None): + result = {} + client_id = self.pool['ir.config_parameter'].get_param(cr, SUPERUSER_ID, 'google_drive_client_id') + for config_id in ids: + result[config_id] = client_id + return result + + _columns = { + 'name': fields.char('Template Name', required=True, size=1024), + 'model_id': fields.many2one('ir.model', 'Model', ondelete='set null', required=True), + 'model': fields.related('model_id', 'model', type='char', string='Model', readonly=True), + 'filter_id': fields.many2one('ir.filters', 'Filter', domain="[('model_id', '=', model)]"), + 'google_drive_template_url': fields.char('Template URL', required=True, size=1024), + 'google_drive_resource_id': fields.function(_resource_get, type="char", string='Resource Id'), + 'google_drive_client_id': fields.function(_client_id_get, type="char", string='Google Client '), + 'name_template': fields.char('Google Drive Name Pattern', size=64, help='Choose how the new google drive will be named, on google side. Eg. gdoc_%(field_name)s', required=True), + } + + def onchange_model_id(self, cr, uid, ids, model_id, context=None): + res = {} + if model_id: + model = self.pool['ir.model'].browse(cr, uid, model_id, context=context) + res['value'] = {'model': model.model} + else: + res['value'] = {'filter_id': False, 'model': False} + return res + + _defaults = { + 'name_template': 'Document %(name)s', + } + + def _check_model_id(self, cr, uid, ids, context=None): + config_id = self.browse(cr, uid, ids[0], context=context) + if config_id.filter_id and config_id.model_id.model != config_id.filter_id.model_id: + return False + return True + + _constraints = [ + (_check_model_id, 'Model of selected filter is not matching with model of current template.', ['model_id', 'filter_id']), + ] + +config() + + +class base_config_settings(osv.osv): + _inherit = "base.config.settings" + + _columns = { + 'google_drive_authorization_code': fields.char('Authorization Code', size=124), + 'google_drive_uri': fields.char('URI', readonly=True, help="The URL to generate the authorization code from Google"), + } + _defaults = { + 'google_drive_uri': lambda s, cr, uid, c: s.pool['google.service']._get_google_token_uri(cr, uid, 'drive', context=c), + } + + def set_google_authorization_code(self, cr, uid, ids, context=None): + config = self.browse(cr, uid, ids[0], context) + refresh_token = self.pool['google.service'].generate_refresh_token(cr, uid, 'drive', config.google_drive_authorization_code, context=context) + self.pool['ir.config_parameter'].set_param(cr, uid, 'google_drive_refresh_token', refresh_token) diff --git a/addons/google_drive/google_drive_data.xml b/addons/google_drive/google_drive_data.xml new file mode 100644 index 00000000000..c9266547969 --- /dev/null +++ b/addons/google_drive/google_drive_data.xml @@ -0,0 +1,16 @@ + + + + + + google_drive_client_id + 39623646228-eg3ggo3mk6o40m7rguobi3rkl9frh4tb.apps.googleusercontent.com + + + + google_drive_client_secret + Ul-PtmnSWs3euWs20fdono0e + + + + \ No newline at end of file diff --git a/addons/google_drive/google_drive_demo.xml b/addons/google_drive/google_drive_demo.xml new file mode 100644 index 00000000000..ebe73f40ec2 --- /dev/null +++ b/addons/google_drive/google_drive_demo.xml @@ -0,0 +1,24 @@ + + + + + + + Customer + res.partner + [['customer', '=', 1]] + + + + + + Partner Review + + + https://docs.google.com/spreadsheet/ccc?key=0Ah2qnrLAoZmUdGRvdVdmS1VoSDctWk1kd18taGZ4ckE#gid=0 + Partner Review %(name)s + + + + + diff --git a/addons/google_drive/i18n/ar.po b/addons/google_drive/i18n/ar.po new file mode 100644 index 00000000000..119cd48268c --- /dev/null +++ b/addons/google_drive/i18n/ar.po @@ -0,0 +1,259 @@ +# Arabic translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2013-02-25 21:35+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Arabic \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/cs.po b/addons/google_drive/i18n/cs.po new file mode 100644 index 00000000000..8d076ddc8e4 --- /dev/null +++ b/addons/google_drive/i18n/cs.po @@ -0,0 +1,259 @@ +# Czech translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2013-03-31 16:49+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Czech \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/de.po b/addons/google_drive/i18n/de.po new file mode 100644 index 00000000000..95e051fea35 --- /dev/null +++ b/addons/google_drive/i18n/de.po @@ -0,0 +1,260 @@ +# German 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: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2012-12-10 11:38+0000\n" +"Last-Translator: Thorsten Vocks (OpenBig.org) \n" +"Language-Team: German \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "Fehler im 'Key' !" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "Modul" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/es.po b/addons/google_drive/i18n/es.po new file mode 100644 index 00000000000..65d28726ba4 --- /dev/null +++ b/addons/google_drive/i18n/es.po @@ -0,0 +1,259 @@ +# Spanish 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: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2012-12-12 12:51+0000\n" +"Last-Translator: Pedro Manuel Baeza \n" +"Language-Team: Spanish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "¡Error de clave!" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "Modelo" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/fr.po b/addons/google_drive/i18n/fr.po new file mode 100644 index 00000000000..c32125d1989 --- /dev/null +++ b/addons/google_drive/i18n/fr.po @@ -0,0 +1,260 @@ +# French 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: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2012-12-21 13:47+0000\n" +"Last-Translator: Maxime Chambreuil (http://www.savoirfairelinux.com) " +"\n" +"Language-Team: French \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "Erreur de clé!" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "Modèles" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/google_drive.pot b/addons/google_drive/i18n/google_drive.pot new file mode 100644 index 00000000000..4472e9c0ed1 --- /dev/null +++ b/addons/google_drive/i18n/google_drive.pot @@ -0,0 +1,227 @@ +# Translation of OpenERP Server. +# This file contains the translation of the following modules: +# * google_drive +# +msgid "" +msgstr "" +"Project-Id-Version: OpenERP Server 8.0alpha1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2013-06-27 16:03+0000\n" +"Last-Translator: <>\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "The name of the attached document can use fixed or variable data. To distinguish between documents in\n" +" Google Drive, use fixed words and fields. For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "- If filter is not specified, link of google document will appear in \"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of OpenERP. If you have really specific documents you want your collaborator fill in, e.g. Use a spreadsheet to control the quality of your product or review the delivery checklist for each order in a foreign country, ... Its very easy to manage them, link them to OpenERP and use them to collaborate with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "Choose how the new google drive will be named, on google side. Eg. gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "- Go to the OpenERP document you want to filter. For instance, go to Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "- In this \"Search\" view, select the option \"Save Current Filter\", enter the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "- If you select \"Share with all users\", link of google document in \"More\" options will appear for all users in opportunities of Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "- If you don't select \"Share with all users\", link of google document in \"More\" options will not appear for other users in opportunities of Sales Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcua4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "Something went wrong during the token generation. Please request again an authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "You haven't configured 'Authorization Code' generated from google, Please generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + diff --git a/addons/google_drive/i18n/hr.po b/addons/google_drive/i18n/hr.po new file mode 100644 index 00000000000..be76be7ef99 --- /dev/null +++ b/addons/google_drive/i18n/hr.po @@ -0,0 +1,259 @@ +# Croatian 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: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2012-12-09 20:25+0000\n" +"Last-Translator: Goran Kliska \n" +"Language-Team: Croatian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "Model" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/hu.po b/addons/google_drive/i18n/hu.po new file mode 100644 index 00000000000..5ff6354f18b --- /dev/null +++ b/addons/google_drive/i18n/hu.po @@ -0,0 +1,259 @@ +# Hungarian translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2013-03-02 09:35+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Hungarian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "Kulcs hiba!" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "Modell" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/it.po b/addons/google_drive/i18n/it.po new file mode 100644 index 00000000000..0dc867b43ad --- /dev/null +++ b/addons/google_drive/i18n/it.po @@ -0,0 +1,259 @@ +# Italian 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: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2012-12-18 22:11+0000\n" +"Last-Translator: Sergio Corato \n" +"Language-Team: Italian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "Errore Chiave!" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "Modello" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/ln.po b/addons/google_drive/i18n/ln.po new file mode 100644 index 00000000000..100033037fc --- /dev/null +++ b/addons/google_drive/i18n/ln.po @@ -0,0 +1,259 @@ +# Lingala translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2013-06-05 13:00+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Lingala \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/mk.po b/addons/google_drive/i18n/mk.po new file mode 100644 index 00000000000..d2f329517c1 --- /dev/null +++ b/addons/google_drive/i18n/mk.po @@ -0,0 +1,259 @@ +# Macedonian translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2013-03-08 14:39+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: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "Грешка во клуч!" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "Модел" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/mn.po b/addons/google_drive/i18n/mn.po new file mode 100644 index 00000000000..060c1e7b596 --- /dev/null +++ b/addons/google_drive/i18n/mn.po @@ -0,0 +1,259 @@ +# Mongolian translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2013-02-19 02:49+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Mongolian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "Модел" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/nl.po b/addons/google_drive/i18n/nl.po new file mode 100644 index 00000000000..771e7b754d5 --- /dev/null +++ b/addons/google_drive/i18n/nl.po @@ -0,0 +1,259 @@ +# Dutch 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: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2012-12-01 16:42+0000\n" +"Last-Translator: Erwin van der Ploeg (Endian Solutions) \n" +"Language-Team: Dutch \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "Key fout!" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "Model" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/pl.po b/addons/google_drive/i18n/pl.po new file mode 100644 index 00000000000..4c7ec91b703 --- /dev/null +++ b/addons/google_drive/i18n/pl.po @@ -0,0 +1,259 @@ +# Polish 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: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2012-12-16 11:28+0000\n" +"Last-Translator: Grzegorz Grzelak (OpenGLOBE.pl) \n" +"Language-Team: Polish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "Błąd klucza" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/pt.po b/addons/google_drive/i18n/pt.po new file mode 100644 index 00000000000..11edb4ffc2a --- /dev/null +++ b/addons/google_drive/i18n/pt.po @@ -0,0 +1,259 @@ +# Portuguese 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: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2012-12-10 17:49+0000\n" +"Last-Translator: Andrei Talpa (multibase.pt) \n" +"Language-Team: Portuguese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "Modelo" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/pt_BR.po b/addons/google_drive/i18n/pt_BR.po new file mode 100644 index 00000000000..574eb5abc0c --- /dev/null +++ b/addons/google_drive/i18n/pt_BR.po @@ -0,0 +1,260 @@ +# Brazilian Portuguese 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: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2012-12-07 22:47+0000\n" +"Last-Translator: Fábio Martinelli - http://zupy.com.br " +"\n" +"Language-Team: Brazilian Portuguese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "Erro de Chave!" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "Modelo" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/ro.po b/addons/google_drive/i18n/ro.po new file mode 100644 index 00000000000..8f4d9a1169f --- /dev/null +++ b/addons/google_drive/i18n/ro.po @@ -0,0 +1,259 @@ +# Romanian translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2013-01-27 09:26+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Romanian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "Eroare Cheie!" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "Model" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/ru.po b/addons/google_drive/i18n/ru.po new file mode 100644 index 00000000000..9579b8a93c5 --- /dev/null +++ b/addons/google_drive/i18n/ru.po @@ -0,0 +1,259 @@ +# Russian translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2013-03-01 11:29+0000\n" +"Last-Translator: Эдуард \n" +"Language-Team: Russian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "Ошибка ключа!" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "Модель" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/sl.po b/addons/google_drive/i18n/sl.po new file mode 100644 index 00000000000..eb7ef7ed79c --- /dev/null +++ b/addons/google_drive/i18n/sl.po @@ -0,0 +1,259 @@ +# Slovenian translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2013-01-26 12:19+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: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "Model" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/sv.po b/addons/google_drive/i18n/sv.po new file mode 100644 index 00000000000..c0435c8bd9e --- /dev/null +++ b/addons/google_drive/i18n/sv.po @@ -0,0 +1,259 @@ +# Swedish translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2013-02-15 14:26+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Swedish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "Nyckelfel!" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/tr.po b/addons/google_drive/i18n/tr.po new file mode 100644 index 00000000000..a3e3b6b791b --- /dev/null +++ b/addons/google_drive/i18n/tr.po @@ -0,0 +1,259 @@ +# Turkish translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2013-02-04 14:07+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Turkish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "Anahtar Hatası!" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "Model" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/i18n/zh_CN.po b/addons/google_drive/i18n/zh_CN.po new file mode 100644 index 00000000000..f7171c9225e --- /dev/null +++ b/addons/google_drive/i18n/zh_CN.po @@ -0,0 +1,259 @@ +# Chinese (Simplified) translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2013-06-27 16:03+0000\n" +"PO-Revision-Date: 2013-06-29 04:39+0000\n" +"Last-Translator: David.Xu \n" +"Language-Team: Chinese (Simplified) \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-30 05:56+0000\n" +"X-Generator: Launchpad (build 16692)\n" + +#. module: google_drive +#: model:ir.ui.menu,name:google_drive.menu_google_drive_config +msgid "Google Drive configuration" +msgstr "Google Drive配置" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "Key Error!" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"The name of the attached document can use fixed or variable data. To " +"distinguish between documents in\n" +" Google Drive, use fixed words and fields. " +"For instance, in the example above, if you wrote Agrolait_%(name)s_Sales\n" +" in the Google Drive name field, the document " +"in your Google Drive and in OpenERP attachment will be named\n" +" 'Agrolait_SO0001_Sales'." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If filter is not specified, link of google document will appear in " +"\"More\" option for all users for all opportunities." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "To create a new filter:" +msgstr "创建新过滤器" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_base_config_settings +msgid "base.config.settings" +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,help:google_drive.action_google_drive_users_config +msgid "" +"

\n" +" Click to add a new template.\n" +"

\n" +"

\n" +" Link your own google drive templates to any record of " +"OpenERP. If you have really specific documents you want your collaborator " +"fill in, e.g. Use a spreadsheet to control the quality of your product or " +"review the delivery checklist for each order in a foreign country, ... Its " +"very easy to manage them, link them to OpenERP and use them to collaborate " +"with your employees.\n" +"

\n" +" " +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Incorrect URL!" +msgstr "错误的URL" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "Configure your templates" +msgstr "配置你的模版" + +#. module: google_drive +#: help:google.drive.config,name_template:0 +msgid "" +"Choose how the new google drive will be named, on google side. Eg. " +"gdoc_%(field_name)s" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- Go to the OpenERP document you want to filter. For instance, go to " +"Opportunities and search on Sales Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- In this \"Search\" view, select the option \"Save Current Filter\", enter " +"the name (Ex: Sales Department)" +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you select \"Share with all users\", link of google document in " +"\"More\" options will appear for all users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"- If you don't select \"Share with all users\", link of google document in " +"\"More\" options will not appear for other users in opportunities of Sales " +"Department." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:48 +#, python-format +msgid "At least one key cannot be found in your Google Drive name pattern" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:150 +#, python-format +msgid "Please enter a valid Google Document URL." +msgstr "请输入一个有效的Google文档URL" + +#. module: google_drive +#: field:google.drive.config,google_drive_client_id:0 +msgid "Google Client " +msgstr "" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "" +"https://docs.google.com/document/d/1vOtpJK9scIQz6taD9tJRIETWbEw3fSiaQHArsJYcu" +"a4/edit" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,filter_id:0 +msgid "Filter" +msgstr "过滤器" + +#. module: google_drive +#: field:google.drive.config,name_template:0 +msgid "Google Drive Name Pattern" +msgstr "" + +#. module: google_drive +#: help:base.config.settings,google_drive_uri:0 +msgid "The URL to generate the authorization code from Google" +msgstr "" + +#. module: google_drive +#: model:ir.filters,name:google_drive.filter_partner +msgid "Customer" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_resource_id:0 +msgid "Resource Id" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:91 +#, python-format +msgid "The Google Template cannot be found. Maybe it has been deleted." +msgstr "" + +#. module: google_drive +#: model:ir.actions.act_window,name:google_drive.action_google_drive_users_config +#: model:ir.ui.menu,name:google_drive.menu_google_drive_model_config +msgid "Google Drive Templates" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:81 +#, python-format +msgid "" +"Something went wrong during the token generation. Please request again an " +"authorization code in %(menu:base_setup.menu_general_configuration)s." +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Google Drive Error!" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_uri:0 +msgid "URI" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:124 +#, python-format +msgid "Creating google drive may only be done by one at a time." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,model:0 +#: field:google.drive.config,model_id:0 +msgid "Model" +msgstr "模块" + +#. module: google_drive +#: view:google.drive.config:0 +msgid "Google Drive Configuration" +msgstr "" + +#. module: google_drive +#: field:google.drive.config,name:0 +msgid "Template Name" +msgstr "模板名称" + +#. module: google_drive +#: constraint:google.drive.config:0 +msgid "" +"Model of selected filter is not matching with model of current template." +msgstr "" + +#. module: google_drive +#: field:google.drive.config,google_drive_template_url:0 +msgid "Template URL" +msgstr "" + +#. module: google_drive +#: view:base.config.settings:0 +msgid "and paste it here" +msgstr "" + +#. module: google_drive +#: field:base.config.settings,google_drive_authorization_code:0 +msgid "Authorization Code" +msgstr "授权码" + +#. module: google_drive +#: model:ir.model,name:google_drive.model_google_drive_config +msgid "Google Drive templates config" +msgstr "" + +#. module: google_drive +#: code:addons/google_drive/google_drive.py:64 +#, python-format +msgid "" +"You haven't configured 'Authorization Code' generated from google, Please " +"generate and configure it in %(menu:base_setup.menu_general_configuration)s." +msgstr "" diff --git a/addons/google_drive/res_config_user_view.xml b/addons/google_drive/res_config_user_view.xml new file mode 100644 index 00000000000..728ef03c5dd --- /dev/null +++ b/addons/google_drive/res_config_user_view.xml @@ -0,0 +1,93 @@ + + + + + + + + google_drive.config.tree + google.drive.config + + + + + + + + + + google_drive.config.form + google.drive.config + +
+ + + + + + +
+
+ + + Google Drive Templates + google.drive.config + ir.actions.act_window + form + + +

+ Click to add a new template. +

+

+ Link your own google drive templates to any record of OpenERP. If you have really specific documents you want your collaborator fill in, e.g. Use a spreadsheet to control the quality of your product or review the delivery checklist for each order in a foreign country, ... Its very easy to manage them, link them to OpenERP and use them to collaborate with your employees. +

+
+
+ + + General Settings + base.config.settings + + + +
+
+ + and paste it here + +
+
+
+
+
+ + + +
+
diff --git a/addons/google_drive/security/ir.model.access.csv b/addons/google_drive/security/ir.model.access.csv new file mode 100644 index 00000000000..ae98cb36976 --- /dev/null +++ b/addons/google_drive/security/ir.model.access.csv @@ -0,0 +1,3 @@ +id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink +access_google_drive_all,google.drive.config,model_google_drive_config,,1,0,0,0 +access_google_drive,google.drive.config,model_google_drive_config,base.group_system,1,1,1,1 \ No newline at end of file diff --git a/addons/google_drive/static/description/icon.png b/addons/google_drive/static/description/icon.png new file mode 100644 index 00000000000..3989ab57b30 Binary files /dev/null and b/addons/google_drive/static/description/icon.png differ diff --git a/addons/google_drive/static/lib/gapi/client.js b/addons/google_drive/static/lib/gapi/client.js new file mode 100644 index 00000000000..7f40ec55ef9 --- /dev/null +++ b/addons/google_drive/static/lib/gapi/client.js @@ -0,0 +1,7 @@ +var gapi=window.gapi=window.gapi||{};gapi._bs=new Date().getTime();(function(){var f=null,g=encodeURIComponent,k=window,m=decodeURIComponent,n="push",r="test",t="shift",u="replace",y="length",B="split",C="join";var D=k,E=document,aa=D.location,ba=function(){},ca=/\[native code\]/,G=function(a,b,c){return a[b]=a[b]||c},da=function(a){for(var b=0;bda.call(b,e)&&c[n](e)}return c},sa=function(a){"loading"!=E.readyState?Z(a):E.write("<"+X+' src="'+encodeURI(a)+'">")},Z=function(a){var b=E.createElement(X);b.setAttribute("src",a);b.async="true";(a=E.getElementsByTagName(X)[0])?a.parentNode.insertBefore(b,a):(E.head||E.body||E.documentElement).appendChild(b)},ta=function(a,b){var c=b&&b._c;if(c)for(var d=0;d', + config_id: res.id, + res_id: res_id, + res_model: view.dataset.model, + callback: self.on_google_doc, + classname: 'oe_share_gdoc' + }, + ]); + }) + } + }); + }); + } + }, + + fetch: function (model, fields, domain, ctx) { + return new instance.web.Model(model).query(fields).filter(domain).context(ctx).all() + }, + + on_google_doc: function (doc_item) { + var self = this; + self.config = doc_item; + var loaded = self.fetch('google.drive.config', ['google_drive_resource_id', 'google_drive_client_id'], [['id', '=', doc_item.config_id]]) + .then(function (configs) { + var ds = new instance.web.DataSet(self, 'google.drive.config'); + ds.call('get_google_drive_url', [doc_item.config_id, doc_item.res_id,configs[0].google_drive_resource_id]).done(function (url) { + if (url){ + window.open(url, '_blank'); + } + }); + }); + }, + + }); +}; \ No newline at end of file diff --git a/addons/google_docs/static/src/xml/gdocs.xml b/addons/google_drive/static/src/xml/gdocs.xml similarity index 100% rename from addons/google_docs/static/src/xml/gdocs.xml rename to addons/google_drive/static/src/xml/gdocs.xml diff --git a/addons/hr/html/crm_game_01.png b/addons/hr/static/description/crm_game_01.png similarity index 100% rename from addons/hr/html/crm_game_01.png rename to addons/hr/static/description/crm_game_01.png diff --git a/addons/hr/html/crm_game_02.png b/addons/hr/static/description/crm_game_02.png similarity index 100% rename from addons/hr/html/crm_game_02.png rename to addons/hr/static/description/crm_game_02.png diff --git a/addons/hr/html/crm_game_03.png b/addons/hr/static/description/crm_game_03.png similarity index 100% rename from addons/hr/html/crm_game_03.png rename to addons/hr/static/description/crm_game_03.png diff --git a/addons/hr/html/hr_appraisal.png b/addons/hr/static/description/hr_appraisal.png similarity index 100% rename from addons/hr/html/hr_appraisal.png rename to addons/hr/static/description/hr_appraisal.png diff --git a/addons/hr/html/hr_employee.png b/addons/hr/static/description/hr_employee.png similarity index 100% rename from addons/hr/html/hr_employee.png rename to addons/hr/static/description/hr_employee.png diff --git a/addons/hr/html/hr_expense.png b/addons/hr/static/description/hr_expense.png similarity index 100% rename from addons/hr/html/hr_expense.png rename to addons/hr/static/description/hr_expense.png diff --git a/addons/hr/html/hr_illu_01.png b/addons/hr/static/description/hr_illu_01.png similarity index 100% rename from addons/hr/html/hr_illu_01.png rename to addons/hr/static/description/hr_illu_01.png diff --git a/addons/hr/html/hr_illu_02.png b/addons/hr/static/description/hr_illu_02.png similarity index 100% rename from addons/hr/html/hr_illu_02.png rename to addons/hr/static/description/hr_illu_02.png diff --git a/addons/hr/html/hr_kanban.png b/addons/hr/static/description/hr_kanban.png similarity index 100% rename from addons/hr/html/hr_kanban.png rename to addons/hr/static/description/hr_kanban.png diff --git a/addons/hr/html/hr_recruitment.png b/addons/hr/static/description/hr_recruitment.png similarity index 100% rename from addons/hr/html/hr_recruitment.png rename to addons/hr/static/description/hr_recruitment.png diff --git a/addons/hr/html/hr_social.png b/addons/hr/static/description/hr_social.png similarity index 100% rename from addons/hr/html/hr_social.png rename to addons/hr/static/description/hr_social.png diff --git a/addons/hr/html/hr_timesheet.png b/addons/hr/static/description/hr_timesheet.png similarity index 100% rename from addons/hr/html/hr_timesheet.png rename to addons/hr/static/description/hr_timesheet.png diff --git a/addons/hr/static/src/img/icon.png b/addons/hr/static/description/icon.png similarity index 100% rename from addons/hr/static/src/img/icon.png rename to addons/hr/static/description/icon.png diff --git a/addons/hr/html/index.html b/addons/hr/static/description/index.html similarity index 100% rename from addons/hr/html/index.html rename to addons/hr/static/description/index.html diff --git a/addons/hr_evaluation/static/src/img/icon.png b/addons/hr_evaluation/static/description/icon.png similarity index 100% rename from addons/hr_evaluation/static/src/img/icon.png rename to addons/hr_evaluation/static/description/icon.png diff --git a/addons/hr_expense/hr_expense_view.xml b/addons/hr_expense/hr_expense_view.xml index a383f72e2ab..0d9e2a247fd 100644 --- a/addons/hr_expense/hr_expense_view.xml +++ b/addons/hr_expense/hr_expense_view.xml @@ -86,7 +86,7 @@ - +
diff --git a/addons/hr_expense/static/src/img/icon.png b/addons/hr_expense/static/description/icon.png similarity index 100% rename from addons/hr_expense/static/src/img/icon.png rename to addons/hr_expense/static/description/icon.png diff --git a/addons/hr_holidays/static/src/img/icon.png b/addons/hr_holidays/static/description/icon.png similarity index 100% rename from addons/hr_holidays/static/src/img/icon.png rename to addons/hr_holidays/static/description/icon.png diff --git a/addons/hr_payroll/static/src/img/icon.png b/addons/hr_payroll/static/description/icon.png similarity index 100% rename from addons/hr_payroll/static/src/img/icon.png rename to addons/hr_payroll/static/description/icon.png diff --git a/addons/hr_recruitment/__openerp__.py b/addons/hr_recruitment/__openerp__.py index e83c546af04..23eaef1b886 100644 --- a/addons/hr_recruitment/__openerp__.py +++ b/addons/hr_recruitment/__openerp__.py @@ -47,7 +47,6 @@ You can define the different phases of interviews and easily rate the applicant 'fetchmail', ], 'data': [ - 'wizard/hr_recruitment_employee_hired.xml', 'wizard/hr_recruitment_create_partner_job_view.xml', 'hr_recruitment_view.xml', 'hr_recruitment_menu.xml', diff --git a/addons/hr_recruitment/board_hr_recruitment_statistical_view.xml b/addons/hr_recruitment/board_hr_recruitment_statistical_view.xml index 79e09937705..2bec80858a5 100644 --- a/addons/hr_recruitment/board_hr_recruitment_statistical_view.xml +++ b/addons/hr_recruitment/board_hr_recruitment_statistical_view.xml @@ -22,7 +22,7 @@ hr.applicant form tree,form - [('state','in',('draft','open'))] + [('stage_id.fold', '!=', True)] diff --git a/addons/hr_recruitment/doc/changelog.rst b/addons/hr_recruitment/doc/changelog.rst new file mode 100644 index 00000000000..404b94ee6d1 --- /dev/null +++ b/addons/hr_recruitment/doc/changelog.rst @@ -0,0 +1,16 @@ +.. _changelog: + +Changelog +========= + +`trunk (saas-2)` +---------------- + +- Stage/state update + + - ``hr.applicant``: removed inheritance from ``base_stage`` class and removed + ``state`` field. Added ``date_last_stage_update`` field holding last stage_id + modification. Removed ``date`` field not used anywhere. Updated reports. + - ``hr.recruitment.stage``: removed ``state`` field. + +- Removed ``hired.employee`` wizard. diff --git a/addons/hr_recruitment/doc/index.rst b/addons/hr_recruitment/doc/index.rst new file mode 100644 index 00000000000..d9e83fc9c10 --- /dev/null +++ b/addons/hr_recruitment/doc/index.rst @@ -0,0 +1,22 @@ +===================== +HR Recruitment DevDoc +===================== + +Hr Recruitment module documentation +=================================== + +Documentation topics +'''''''''''''''''''' + +.. toctree:: + :maxdepth: 1 + + stage_status.rst + +Changelog +''''''''' + +.. toctree:: + :maxdepth: 1 + + changelog.rst diff --git a/addons/hr_recruitment/doc/stage_status.rst b/addons/hr_recruitment/doc/stage_status.rst new file mode 100644 index 00000000000..111c43db250 --- /dev/null +++ b/addons/hr_recruitment/doc/stage_status.rst @@ -0,0 +1,54 @@ +.. _stage_status: + +Stage and Status +================ + +.. versionchanged:: 8.0 saas-2 state/stage cleaning + +Stage ++++++ + +This revision removed the concept of state on hr.applicant objects. The ``state`` +field has been totally removed and replaced by stages, using ``stage_id``. The +following models are impacted: + + - ``hr.applicant`` now use only stages. However a convention still exists about + 'New' stage. An applicant is consdered as ``new`` when it has the following + properties: + + - ``stage_id and stage_id.sequence = 1`` + + - ``hr.recruitment.stage`` do not have any ``state`` field anymore. + - ``hr.recruitment.report`` do not have any ``state`` field anymore. + +By default a newly created applicant be in a new stage. It means that it will +fetch the stage having ``sequence = 1``. Stage mangement is done using the +kanban view or the clikable statusbar. It is not done using buttons anymore. +Employee creation is still feasible directly from a link button in the form view. + +Stage analysis +++++++++++++++ + +Stage analysis can be performed using the newly introduced ``date_last_stage_update`` +datetime field. This field is updated everytime ``stage_id`` is updated. + +``hr.recruitment.report`` model also uses the ``date_last_stage_update`` field. +This allows to group and analyse the time spend in the various stages. + +Open / Assignation date ++++++++++++++++++++++++ + +The ``date_open`` field meaning has been updated. It is now set when the ``user_id`` +(responsible) is set. It is therefore the assignation date. + +Subtypes +++++++++ + +The following subtypes are triggered on ``hr.applicant``: + + - ``mt_applicant_new``: new applicants. Condition: ``obj.stage_id and obj.stage_id.sequence == 1`` + - ``mt_applicant_stage_changed``: stage changed. Condition: ``obj.stage_id and obj.stage_id.sequence != 1`` + +The following subtype is trigerred on ``hr.job``: + + - ``mt_job_new_applicant``: new applicant in the job. diff --git a/addons/hr_recruitment/hr_recruitment.py b/addons/hr_recruitment/hr_recruitment.py index d8c00c40a31..ce6f60669c4 100644 --- a/addons/hr_recruitment/hr_recruitment.py +++ b/addons/hr_recruitment/hr_recruitment.py @@ -19,23 +19,13 @@ # ############################################################################## -import time from openerp import tools -from openerp.addons.base_status.base_stage import base_stage from datetime import datetime from openerp.osv import fields, osv from openerp.tools.translate import _ from openerp.tools import html2plaintext -AVAILABLE_STATES = [ - ('draft', 'New'), - ('cancel', 'Refused'), - ('open', 'In Progress'), - ('pending', 'Pending'), - ('done', 'Hired') -] - AVAILABLE_PRIORITIES = [ ('', ''), ('5', 'Not Good'), @@ -62,13 +52,11 @@ class hr_recruitment_stage(osv.osv): 'name': fields.char('Name', size=64, required=True, translate=True), 'sequence': fields.integer('Sequence', help="Gives the sequence order when displaying a list of stages."), 'department_id':fields.many2one('hr.department', 'Specific to a Department', help="Stages of the recruitment process may be different per department. If this stage is common to all departments, keep this field empty."), - 'state': fields.selection(AVAILABLE_STATES, 'Status', required=True, help="The related status for the stage. The status of your document will automatically change according to the selected stage. Example, a stage is related to the status 'Close', when your document reach this stage, it will be automatically closed."), 'fold': fields.boolean('Hide in views if empty', help="This stage is not visible, for example in status bar or kanban view, when there are no records in that stage to display."), 'requirements': fields.text('Requirements'), } _defaults = { 'sequence': 1, - 'state': 'draft', 'fold': False, } @@ -87,18 +75,15 @@ class hr_recruitment_degree(osv.osv): ('name_uniq', 'unique (name)', 'The name of the Degree of Recruitment must be unique!') ] -class hr_applicant(base_stage, osv.Model): +class hr_applicant(osv.Model): _name = "hr.applicant" _description = "Applicant" _order = "id desc" _inherit = ['mail.thread', 'ir.needaction_mixin'] _track = { - 'state': { - 'hr_recruitment.mt_applicant_hired': lambda self, cr, uid, obj, ctx=None: obj.state == 'done', - 'hr_recruitment.mt_applicant_refused': lambda self, cr, uid, obj, ctx=None: obj.state == 'cancel', - }, 'stage_id': { - 'hr_recruitment.mt_stage_changed': lambda self, cr, uid, obj, ctx=None: obj.state not in ['done', 'cancel'], + 'hr_recruitment.mt_applicant_new': lambda self, cr, uid, obj, ctx=None: obj.stage_id and obj.stage_id.sequence == 1, + 'hr_recruitment.mt_applicant_stage_changed': lambda self, cr, uid, obj, ctx=None: obj.stage_id and obj.stage_id.sequence != 1, }, } @@ -109,7 +94,7 @@ class hr_applicant(base_stage, osv.Model): def _get_default_stage_id(self, cr, uid, context=None): """ Gives default stage_id """ department_id = self._get_default_department_id(cr, uid, context=context) - return self.stage_find(cr, uid, [], department_id, [('state', '=', 'draft')], context=context) + return self.stage_find(cr, uid, [], department_id, [('sequence', '=', '1')], context=context) def _resolve_department_id_from_context(self, cr, uid, context=None): """ Returns ID of department based on the value of 'default_department_id' @@ -197,20 +182,12 @@ class hr_applicant(base_stage, osv.Model): 'write_date': fields.datetime('Update Date', readonly=True), 'stage_id': fields.many2one ('hr.recruitment.stage', 'Stage', track_visibility='onchange', domain="['|', ('department_id', '=', department_id), ('department_id', '=', False)]"), - 'state': fields.related('stage_id', 'state', type="selection", store=True, - selection=AVAILABLE_STATES, string="Status", readonly=True, - help='The status is set to \'Draft\', when a case is created.\ - If the case is in progress the status is set to \'Open\'.\ - When the case is over, the status is set to \'Done\'.\ - If the case needs to be reviewed then the status is \ - set to \'Pending\'.'), 'categ_ids': fields.many2many('hr.applicant_category', string='Tags'), 'company_id': fields.many2one('res.company', 'Company'), 'user_id': fields.many2one('res.users', 'Responsible', track_visibility='onchange'), - # Applicant Columns 'date_closed': fields.datetime('Closed', readonly=True, select=True), - 'date_open': fields.datetime('Opened', readonly=True, select=True), - 'date': fields.datetime('Date'), + 'date_open': fields.datetime('Assigned', readonly=True, select=True), + 'date_last_stage_update': fields.datetime('Last Stage Update', select=True), 'date_action': fields.date('Next Action Date'), 'title_action': fields.char('Next Action', size=64), 'priority': fields.selection(AVAILABLE_PRIORITIES, 'Appreciation'), @@ -234,37 +211,35 @@ class hr_applicant(base_stage, osv.Model): 'day_close': fields.function(_compute_day, string='Days to Close', \ multi='day_close', type="float", store=True), 'color': fields.integer('Color Index'), - 'emp_id': fields.many2one('hr.employee', 'employee'), + 'emp_id': fields.many2one('hr.employee', string='Employee', + help='Employee linked to the applicant.'), 'user_email': fields.related('user_id', 'email', type='char', string='User Email', readonly=True), } _defaults = { 'active': lambda *a: 1, - 'user_id': lambda s, cr, uid, c: uid, - 'email_from': lambda s, cr, uid, c: s._get_default_email(cr, uid, c), + 'user_id': lambda s, cr, uid, c: uid, 'stage_id': lambda s, cr, uid, c: s._get_default_stage_id(cr, uid, c), 'department_id': lambda s, cr, uid, c: s._get_default_department_id(cr, uid, c), 'company_id': lambda s, cr, uid, c: s.pool.get('res.company')._company_default_get(cr, uid, 'hr.applicant', context=c), 'color': 0, + 'date_last_stage_update': fields.datetime.now(), } _group_by_full = { 'stage_id': _read_group_stage_ids } - def onchange_job(self, cr, uid, ids, job, context=None): - result = {} + def onchange_job(self, cr, uid, ids, job_id=False, context=None): + if job_id: + job_record = self.pool.get('hr.job').browse(cr, uid, job_id, context=context) + if job_record and job_record.department_id: + return {'value': {'department_id': job_record.department_id.id}} + return {} - if job: - job_obj = self.pool.get('hr.job') - result['department_id'] = job_obj.browse(cr, uid, job, context=context).department_id.id - return {'value': result} - return {'value': {'department_id': False}} - - def onchange_department_id(self, cr, uid, ids, department_id=False, context=None): - obj_recru_stage = self.pool.get('hr.recruitment.stage') - stage_ids = obj_recru_stage.search(cr, uid, ['|',('department_id','=',department_id),('department_id','=',False)], context=context) - stage_id = stage_ids and stage_ids[0] or False + def onchange_department_id(self, cr, uid, ids, department_id=False, stage_id=False, context=None): + if not stage_id: + stage_id = self.stage_find(cr, uid, [], department_id, [('sequence', '=', '1')], context=context) return {'value': {'stage_id': stage_id}} def onchange_partner_id(self, cr, uid, ids, partner_id, context=None): @@ -403,27 +378,31 @@ class hr_applicant(base_stage, osv.Model): return super(hr_applicant, self).message_update(cr, uid, ids, msg, update_vals=update_vals, context=context) def create(self, cr, uid, vals, context=None): + if context is None: + context = {} + if vals.get('department_id') and not context.get('default_department_id'): + context['default_department_id'] = vals.get('department_id') + obj_id = super(hr_applicant, self).create(cr, uid, vals, context=context) applicant = self.browse(cr, uid, obj_id, context=context) if applicant.job_id: self.pool.get('hr.job').message_post(cr, uid, [applicant.job_id.id], body=_('Applicant created'), subtype="hr_recruitment.mt_job_new_applicant", context=context) return obj_id - def case_open(self, cr, uid, ids, context=None): - """ - open Request of the applicant for the hr_recruitment - """ - res = super(hr_applicant, self).case_open(cr, uid, ids, context) - date = self.read(cr, uid, ids, ['date_open'])[0] - if not date['date_open']: - self.write(cr, uid, ids, {'date_open': time.strftime('%Y-%m-%d %H:%M:%S'),}) - return res + def write(self, cr, uid, ids, vals, context=None): + if isinstance(ids, (int, long)): + ids = [ids] + # stage change: update date_last_stage_update + if 'stage_id' in vals: + vals['date_last_stage_update'] = fields.datetime.now() + # user_id change: update date_start + if vals.get('user_id'): + vals['date_start'] = fields.datetime.now() - def case_close(self, cr, uid, ids, context=None): - res = super(hr_applicant, self).case_close(cr, uid, ids, context) - return res + return super(hr_applicant, self).write(cr, uid, ids, vals, context=context) - def case_close_with_emp(self, cr, uid, ids, context=None): + def create_employee_from_applicant(self, cr, uid, ids, context=None): + """ Create an hr.employee from the hr.applicants """ if context is None: context = {} hr_employee = self.pool.get('hr.employee') @@ -433,17 +412,16 @@ class hr_applicant(base_stage, osv.Model): for applicant in self.browse(cr, uid, ids, context=context): address_id = contact_name = False if applicant.partner_id: - address_id = self.pool.get('res.partner').address_get(cr,uid,[applicant.partner_id.id],['contact'])['contact'] - contact_name = self.pool.get('res.partner').name_get(cr,uid,[applicant.partner_id.id])[0][1] + address_id = self.pool.get('res.partner').address_get(cr, uid, [applicant.partner_id.id], ['contact'])['contact'] + contact_name = self.pool.get('res.partner').name_get(cr, uid, [applicant.partner_id.id])[0][1] if applicant.job_id and (applicant.partner_name or contact_name): applicant.job_id.write({'no_of_recruitment': applicant.job_id.no_of_recruitment - 1}) - emp_id = hr_employee.create(cr,uid,{'name': applicant.partner_name or contact_name, + emp_id = hr_employee.create(cr, uid, {'name': applicant.partner_name or contact_name, 'job_id': applicant.job_id.id, 'address_home_id': address_id, 'department_id': applicant.department_id.id }) self.write(cr, uid, [applicant.id], {'emp_id': emp_id}, context=context) - self.case_close(cr, uid, [applicant.id], context) else: raise osv.except_osv(_('Warning!'), _('You must define an Applied Job and a Contact Name for this applicant.')) @@ -454,26 +432,6 @@ class hr_applicant(base_stage, osv.Model): dict_act_window['view_mode'] = 'form,tree' return dict_act_window - def case_cancel(self, cr, uid, ids, context=None): - """Overrides cancel for crm_case for setting probability - """ - res = super(hr_applicant, self).case_cancel(cr, uid, ids, context) - self.write(cr, uid, ids, {'probability': 0.0}) - return res - - def case_pending(self, cr, uid, ids, context=None): - """Marks case as pending""" - res = super(hr_applicant, self).case_pending(cr, uid, ids, context) - self.write(cr, uid, ids, {'probability': 0.0}) - return res - - def case_reset(self, cr, uid, ids, context=None): - """Resets case as draft - """ - res = super(hr_applicant, self).case_reset(cr, uid, ids, context) - self.write(cr, uid, ids, {'date_open': False, 'date_closed': False}) - return res - def set_priority(self, cr, uid, ids, priority, *args): """Set applicant priority """ diff --git a/addons/hr_recruitment/hr_recruitment_data.xml b/addons/hr_recruitment/hr_recruitment_data.xml index f3f1b3e712d..854dea0548f 100644 --- a/addons/hr_recruitment/hr_recruitment_data.xml +++ b/addons/hr_recruitment/hr_recruitment_data.xml @@ -51,34 +51,29 @@ Doctoral Degree 4 + Initial Qualification - draft 1 First Interview - open 2 Second Interview - open 3 Contract Proposed - pending 4 Contract Signed - done 5 Refused - cancel 6 @@ -467,24 +462,24 @@ hr.job - + + New Applicant + hr.applicant + + Applicant created + + Stage Changed hr.applicant Stage changed - + Applicant Hired hr.applicant Applicant hired - - Applicant Refused - hr.applicant - - Applicant refused - Reserve diff --git a/addons/hr_recruitment/hr_recruitment_view.xml b/addons/hr_recruitment/hr_recruitment_view.xml index 9cbfd4560e7..d743a280691 100644 --- a/addons/hr_recruitment/hr_recruitment_view.xml +++ b/addons/hr_recruitment/hr_recruitment_view.xml @@ -39,9 +39,10 @@ Applicants hr.applicant - + + @@ -58,7 +59,6 @@ - @@ -69,13 +69,7 @@
-
@@ -93,9 +87,12 @@
@@ -115,7 +112,6 @@ - @@ -123,7 +119,7 @@ - +
@@ -165,7 +162,7 @@ - + @@ -174,22 +171,22 @@ Jobs - Recruitment Search hr.applicant - + + + + - - - - - - + + + @@ -200,6 +197,7 @@ + @@ -342,7 +340,6 @@ - @@ -360,7 +357,6 @@ - diff --git a/addons/hr_recruitment/report/hr_recruitment_report.py b/addons/hr_recruitment/report/hr_recruitment_report.py index 8c365b10070..93384c95ed4 100644 --- a/addons/hr_recruitment/report/hr_recruitment_report.py +++ b/addons/hr_recruitment/report/hr_recruitment_report.py @@ -18,30 +18,24 @@ # along with this program. If not, see . # ############################################################################## + from openerp import tools -from openerp.osv import fields,osv +from openerp.osv import fields, osv from .. import hr_recruitment from openerp.addons.decimal_precision import decimal_precision as dp -AVAILABLE_STATES = [ - ('draft','New'), - ('open','Open'), - ('cancel', 'Refused'), - ('done', 'Hired'), - ('pending','Pending') -] - -class hr_recruitment_report(osv.osv): +class hr_recruitment_report(osv.Model): _name = "hr.recruitment.report" _description = "Recruitments Statistics" _auto = False - _rec_name = 'date' + _rec_name = 'date_create' + _order = 'date_create desc' _columns = { 'user_id': fields.many2one('res.users', 'User', readonly=True), 'nbr': fields.integer('# of Applications', readonly=True), - 'state': fields.selection(AVAILABLE_STATES, 'Status', size=16, readonly=True), + # TDE TODO: use MONTHS 'month':fields.selection([('01', 'January'), ('02', 'February'), \ ('03', 'March'), ('04', 'April'),\ ('05', 'May'), ('06', 'June'), \ @@ -51,7 +45,8 @@ class hr_recruitment_report(osv.osv): 'company_id': fields.many2one('res.company', 'Company', readonly=True), 'day': fields.char('Day', size=128, readonly=True), 'year': fields.char('Year', size=4, readonly=True), - 'date': fields.date('Date', readonly=True), + 'date_create': fields.date('Create Date', readonly=True), + 'date_last_stage_update': fields.datetime('Last Stage Update', readonly=True), 'date_closed': fields.date('Closed', readonly=True), 'job_id': fields.many2one('hr.job', 'Applied Job',readonly=True), 'stage_id': fields.many2one ('hr.recruitment.stage', 'Stage'), @@ -67,19 +62,19 @@ class hr_recruitment_report(osv.osv): 'delay_close': fields.float('Avg. Delay to Close', digits=(16,2), readonly=True, group_operator="avg", help="Number of Days to close the project issue"), } - _order = 'date desc' + def init(self, cr): tools.drop_view_if_exists(cr, 'hr_recruitment_report') cr.execute(""" create or replace view hr_recruitment_report as ( select min(s.id) as id, - date_trunc('day',s.create_date) as date, + date_trunc('day',s.create_date) as date_create, date_trunc('day',s.date_closed) as date_closed, + date_trunc('day',s.date_last_stage_update) as date_last_stage_update, to_char(s.create_date, 'YYYY') as year, to_char(s.create_date, 'MM') as month, to_char(s.create_date, 'YYYY-MM-DD') as day, - s.state, s.partner_id, s.company_id, s.user_id, @@ -93,7 +88,7 @@ class hr_recruitment_report(osv.osv): (sum(salary_proposed)/count(*)) as salary_prop_avg, sum(salary_expected) as salary_exp, (sum(salary_expected)/count(*)) as salary_exp_avg, - extract('epoch' from (s.date_closed-s.create_date))/(3600*24) as delay_close, + extract('epoch' from (s.date_closed-s.create_date))/(3600*24) as delay_close, count(*) as nbr from hr_applicant s group by @@ -105,7 +100,7 @@ class hr_recruitment_report(osv.osv): s.date_open, s.create_date, s.date_closed, - s.state, + s.date_last_stage_update, s.partner_id, s.company_id, s.user_id, diff --git a/addons/hr_recruitment/report/hr_recruitment_report_view.xml b/addons/hr_recruitment/report/hr_recruitment_report_view.xml index b33b2eaa053..d75c29c17a2 100644 --- a/addons/hr_recruitment/report/hr_recruitment_report_view.xml +++ b/addons/hr_recruitment/report/hr_recruitment_report_view.xml @@ -6,7 +6,7 @@ hr.recruitment.report - + @@ -14,10 +14,10 @@ - + @@ -46,34 +46,33 @@ hr.recruitment.report - - - - - - - + + + + + + - - + - - - - - - - - - - + + + + + + + + + + + diff --git a/addons/hr_recruitment/static/src/img/icon.png b/addons/hr_recruitment/static/description/icon.png similarity index 100% rename from addons/hr_recruitment/static/src/img/icon.png rename to addons/hr_recruitment/static/description/icon.png diff --git a/addons/hr_recruitment/test/recruitment_process.yml b/addons/hr_recruitment/test/recruitment_process.yml index 335edc71892..a48b70a5683 100644 --- a/addons/hr_recruitment/test/recruitment_process.yml +++ b/addons/hr_recruitment/test/recruitment_process.yml @@ -17,33 +17,8 @@ resume_ids = self.pool.get('ir.attachment').search(cr, uid, [('datas_fname','=','resume.pdf'),('res_model','=',self._name),('res_id','=',applicant.id)]) assert applicant.name == "Application for the post of Jr.application Programmer.", "Applicant name does not match." assert applicant.stage_id.id == ref('hr_recruitment.stage_job1'), "Stage should be 'Initial qualification' and is '%s'." % (applicant.stage_id.name) - assert applicant.state == "draft", "Applicant state should be 'draft'." + assert applicant.stage_id.sequence == 1, "Applicant stage sequence should be 1." assert len(resume_ids), "Resume is not attached." -- - I refuse the applicant (hr_case_programmer) -- - !python {model: hr.applicant}: | - self.case_cancel(cr, uid, [ref("hr_case_programmer")]) -- - I check the details of the refused applicant. -- - !python {model: hr.applicant}: | - applicant = self.browse(cr, uid, ref("hr_case_programmer"), context=context) - assert applicant.stage_id.id == ref('hr_recruitment.stage_job6'), "Stage should be 'Refused' and is %s." % (applicant.stage_id.name) - assert applicant.state == 'cancel', "Applicant is not in 'cancel' state." -- - I reset and re-open the previously refused applicant. -- - !python {model: hr.applicant}: | - self.case_reset(cr, uid, [ref("hr_case_programmer")]) - self.case_open(cr, uid, [ref("hr_case_programmer")]) -- - I check the details of the re-opened applicant. -- - !python {model: hr.applicant}: | - applicant = self.browse(cr, uid, ref("hr_case_programmer"), context=context) - assert applicant.stage_id.id == ref('hr_recruitment.stage_job2'), "Stage should be 'First interview' and is '%s'." % (applicant.stage_id.name) - assert applicant.state == "open", "Applicant state should be 'open'." - I assign the Job position to the applicant - @@ -54,21 +29,6 @@ - !python {model: hr.applicant}: | self.action_makeMeeting(cr, uid, [ref('hr_case_programmer')]) -- - I check Initial Qualification of applicant. -- - !python {model: hr.applicant}: | - self.stage_next(cr, uid, [ref('hr_case_programmer')]) -- - I schedule First Interview of applicant. -- - !python {model: hr.applicant}: | - self.stage_next(cr, uid, [ref('hr_case_programmer')]) -- - On a successful First Interview of applicant, I schedule Second Interview. -- - !python {model: hr.applicant}: | - self.stage_next(cr, uid, [ref('hr_case_programmer')]) - Applicant fillup the answer of the interview quetion. - @@ -83,40 +43,8 @@ I print Applicant fill up the interview quetion - !python {model: hr.applicant}: | - self.action_print_survey(cr, uid, [ref('hr_case_programmer')]) -- - On a successful Second Interview of applicant Contract is Proposed to applicant. -- - !python {model: hr.applicant}: | - self.stage_next(cr, uid, [ref('hr_case_programmer')]) - self.stage_previous(cr, uid, [ref('hr_case_programmer')]) -- - I Hired Applicant. -- - !python {model: hr.applicant}: | - self.case_close_with_emp(cr, uid, [ref('hr_case_programmer')]) -- - I check that applicant is "Hired". -- - !assert {model: hr.applicant, id: hr_case_programmer, string: Applicant state is done}: - - state == 'done' -- - I do not give employment to the hired the applicant. -- - !python {model: hired.employee}: | context.update({'active_model': 'hr.applicant', 'active_ids': [ref("hr_recruitment.hr_case_programmer")], 'active_id': ref("hr_recruitment.hr_case_programmer")}) - emp_id = self.create(cr, uid, {}, context=context) - self.case_close(cr, uid, [emp_id], context=context) -- - Now I give employment to hired applicant . -- - !python {model: hr.applicant}: | - hired_emp_obj = self.pool.get('hired.employee') - self.case_reset(cr, uid, [ref("hr_case_programmer")]) - self.case_open(cr, uid, [ref("hr_case_programmer")]) - context.update({'active_model': 'hr.applicant', 'active_ids': [ref("hr_recruitment.hr_case_programmer")], 'active_id': ref("hr_recruitment.hr_case_programmer")}) - emp_hr_id = hired_emp_obj.create(cr, uid, {}, context=context) - hired_emp_obj.case_close_with_emp(cr, uid, [emp_hr_id], context=context) + self.action_print_survey(cr, uid, [ref('hr_case_programmer')]) - Now hired employee want to be a partner of company. - diff --git a/addons/hr_recruitment/wizard/__init__.py b/addons/hr_recruitment/wizard/__init__.py index fde7df63456..d52c7a9113a 100644 --- a/addons/hr_recruitment/wizard/__init__.py +++ b/addons/hr_recruitment/wizard/__init__.py @@ -2,7 +2,7 @@ ############################################################################## # # OpenERP, Open Source Management Solution -# Copyright (C) 2004-2009 Tiny SPRL (). +# Copyright (C) 2004-Today OpenERP (). # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as @@ -19,9 +19,7 @@ # ############################################################################## - import hr_recruitment_create_partner_job -import hr_recruitment_employee_hired # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_recruitment/wizard/hr_recruitment_employee_hired.py b/addons/hr_recruitment/wizard/hr_recruitment_employee_hired.py deleted file mode 100644 index 60d31e74eee..00000000000 --- a/addons/hr_recruitment/wizard/hr_recruitment_employee_hired.py +++ /dev/null @@ -1,54 +0,0 @@ -# -*- coding: utf-8 -*- -############################################################################## -# -# OpenERP, Open Source Management Solution -# Copyright (C) 2004-2009 Tiny SPRL (). All Rights Reserved -# $Id$ -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . -# -############################################################################## -from openerp.osv import fields, osv -from openerp.tools.translate import _ - -class hired_employee(osv.osv_memory): - _name = 'hired.employee' - _description = 'Create Employee' - - def case_close(self, cr, uid, ids, context=None): - """ - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of case's Ids - @param *args: Give Tuple Value - """ - if context is None: - context = {} - self.pool.get('hr.applicant').case_close(cr, uid,context.get('active_ids',[])) - return {} - - def case_close_with_emp(self, cr, uid, ids, context=None): - """ - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of case's Ids - """ - if context is None: - context = {} - return self.pool.get('hr.applicant').case_close_with_emp(cr, uid,context.get('active_ids', [])) - - -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_recruitment/wizard/hr_recruitment_employee_hired.xml b/addons/hr_recruitment/wizard/hr_recruitment_employee_hired.xml deleted file mode 100644 index d014bd54aa8..00000000000 --- a/addons/hr_recruitment/wizard/hr_recruitment_employee_hired.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - hr.recruitment.hired2employee.form - hired.employee - - -
-
-
-
- - Create Employee - ir.actions.act_window - hired.employee - form - form - new - - -
-
diff --git a/addons/hr_timesheet_invoice/hr_timesheet_invoice.py b/addons/hr_timesheet_invoice/hr_timesheet_invoice.py index 6c4f6022c39..b950b85ac48 100644 --- a/addons/hr_timesheet_invoice/hr_timesheet_invoice.py +++ b/addons/hr_timesheet_invoice/hr_timesheet_invoice.py @@ -173,7 +173,10 @@ class account_analytic_line(osv.osv): data = {} journal_types = {} + price = 0.0 for line in self.pool.get('account.analytic.line').browse(cr, uid, ids, context=context): + price += line.amount*-1 + line_name = line.name if line.journal_id.type not in journal_types: journal_types[line.journal_id.type] = set() journal_types[line.journal_id.type].add(line.account_id.id) @@ -204,7 +207,6 @@ class account_analytic_line(osv.osv): 'date_due': date_due, 'fiscal_position': account.partner_id.property_account_position.id } - context2 = context.copy() context2['lang'] = partner.lang # set company_id in context, so the correct default journal will be selected @@ -225,36 +227,42 @@ class account_analytic_line(osv.osv): if data.get('product'): product_id = data['product'][0] product = product_obj.browse(cr, uid, product_id, context=context2) - if not product: - raise osv.except_osv(_('Error!'), _('There is no product defined. Please select one or force the product through the wizard.')) factor = invoice_factor_obj.browse(cr, uid, factor_id, context=context2) - factor_name = product_obj.name_get(cr, uid, [product_id], context=context2)[0][1] - if factor.customer_name: - factor_name += ' - ' + factor.customer_name - - ctx = context.copy() - ctx.update({'uom':uom}) - - price = self._get_invoice_price(cr, uid, account, product_id, user_id, qty, ctx) - - general_account = product.property_account_income or product.categ_id.property_account_income_categ - if not general_account: - raise osv.except_osv(_("Configuration Error!"), _("Please define income account for product '%s'.") % product.name) - taxes = product.taxes_id or general_account.tax_ids - tax = fiscal_pos_obj.map_tax(cr, uid, account.partner_id.property_account_position, taxes) + factor_name = factor.customer_name and line_name + ' - ' + factor.customer_name or line_name curr_line = { 'price_unit': price, 'quantity': qty, - 'discount':factor.factor, - 'invoice_line_tax_id': [(6,0,tax )], + 'discount': factor.factor, 'invoice_id': last_invoice, 'name': factor_name, - 'product_id': product_id, - 'invoice_line_tax_id': [(6,0,tax)], 'uos_id': uom, - 'account_id': general_account.id, 'account_analytic_id': account.id, } + if product: + factor_name = product_obj.name_get(cr, uid, [product_id], context=context2)[0][1] + if factor.customer_name: + factor_name += ' - ' + factor.customer_name + + ctx = context.copy() + ctx.update({'uom': uom}) + + # check force product + if data.get('product'): + price = self._get_invoice_price(cr, uid, account, product_id, user_id, qty, ctx) + + general_account = product.property_account_income or product.categ_id.property_account_income_categ + if not general_account: + raise osv.except_osv(_("Configuration Error!"), _("Please define income account for product '%s'.") % product.name) + taxes = product.taxes_id or general_account.tax_ids + tax = fiscal_pos_obj.map_tax(cr, uid, account.partner_id.property_account_position, taxes) + curr_line.update({ + 'price_unit': price, + 'invoice_line_tax_id': [(6,0,tax )], + 'name': factor_name, + 'product_id': product_id, + 'invoice_line_tax_id': [(6,0,tax)], + 'account_id': general_account.id, + }) # # Compute for lines diff --git a/addons/hr_timesheet_sheet/static/src/img/icon.png b/addons/hr_timesheet_sheet/static/description/icon.png similarity index 100% rename from addons/hr_timesheet_sheet/static/src/img/icon.png rename to addons/hr_timesheet_sheet/static/description/icon.png diff --git a/addons/idea/static/src/img/icon.png b/addons/idea/static/description/icon.png similarity index 100% rename from addons/idea/static/src/img/icon.png rename to addons/idea/static/description/icon.png diff --git a/addons/idea/views/idea.xml b/addons/idea/views/idea.xml index b228af2da45..7df21f99f11 100644 --- a/addons/idea/views/idea.xml +++ b/addons/idea/views/idea.xml @@ -93,7 +93,6 @@ help="Accepted Ideas" /> - diff --git a/addons/im/static/src/img/icon.png b/addons/im/static/description/icon.png similarity index 100% rename from addons/im/static/src/img/icon.png rename to addons/im/static/description/icon.png diff --git a/addons/im_livechat/static/src/img/icon.png b/addons/im_livechat/static/description/icon.png similarity index 100% rename from addons/im_livechat/static/src/img/icon.png rename to addons/im_livechat/static/description/icon.png diff --git a/addons/knowledge/static/src/img/icon.png b/addons/knowledge/static/description/icon.png similarity index 100% rename from addons/knowledge/static/src/img/icon.png rename to addons/knowledge/static/description/icon.png diff --git a/addons/l10n_ar/static/src/img/icon.png b/addons/l10n_ar/static/description/icon.png similarity index 100% rename from addons/l10n_ar/static/src/img/icon.png rename to addons/l10n_ar/static/description/icon.png diff --git a/addons/l10n_at/static/src/img/icon.png b/addons/l10n_at/static/description/icon.png similarity index 100% rename from addons/l10n_at/static/src/img/icon.png rename to addons/l10n_at/static/description/icon.png diff --git a/addons/l10n_be/static/src/img/icon.png b/addons/l10n_be/static/description/icon.png similarity index 100% rename from addons/l10n_be/static/src/img/icon.png rename to addons/l10n_be/static/description/icon.png diff --git a/addons/l10n_be_coda/wizard/account_coda_import.py b/addons/l10n_be_coda/wizard/account_coda_import.py index 8aabe601bc8..aed99345fba 100644 --- a/addons/l10n_be_coda/wizard/account_coda_import.py +++ b/addons/l10n_be_coda/wizard/account_coda_import.py @@ -117,6 +117,8 @@ class account_coda_import(osv.osv_memory): # and so a 'like' operator would return the first account number in the database which matches. cr.execute("select id from res_partner_bank where replace(replace(acc_number,' ',''),'-','') = %s", (statement['acc_number'],)) bank_ids = [id[0] for id in cr.fetchall()] + # Filter bank accounts which are not allowed + bank_ids = self.pool.get('res.partner.bank').search(cr, uid, [('id', 'in', bank_ids)]) if bank_ids and len(bank_ids) > 0: bank_accs = self.pool.get('res.partner.bank').browse(cr, uid, bank_ids) for bank_acc in bank_accs: @@ -248,7 +250,7 @@ class account_coda_import(osv.osv_memory): elif line[0] == '9': statement['balanceMin'] = float(rmspaces(line[22:37])) / 1000 statement['balancePlus'] = float(rmspaces(line[37:52])) / 1000 - if not statement['balance_end_real']: + if not statement.get('balance_end_real'): statement['balance_end_real'] = statement['balance_start'] + statement['balancePlus'] - statement['balanceMin'] for i, statement in enumerate(statements): statement['coda_note'] = '' @@ -266,6 +268,8 @@ class account_coda_import(osv.osv_memory): raise osv.except_osv(_('Error'), _("Configuration Error in journal %s!\nPlease verify the Default Debit and Credit Account settings.") % statement['journal_id'].name) if balance_start_check != statement['balance_start']: statement['coda_note'] = _("The CODA Statement %s Starting Balance (%.2f) does not correspond with the previous Closing Balance (%.2f) in journal %s!") % (statement['description'] + ' #' + statement['paperSeqNumber'], statement['balance_start'], balance_start_check, statement['journal_id'].name) + if not(statement.get('period_id')): + raise osv.except_osv(_('Error') + ' R3006', _(' No transactions or no period in coda file !')) data = { 'name': statement['paperSeqNumber'], 'date': statement['date'], diff --git a/addons/l10n_be_hr_payroll/static/src/img/icon.png b/addons/l10n_be_hr_payroll/static/description/icon.png similarity index 100% rename from addons/l10n_be_hr_payroll/static/src/img/icon.png rename to addons/l10n_be_hr_payroll/static/description/icon.png diff --git a/addons/l10n_be_hr_payroll_account/static/src/img/icon.png b/addons/l10n_be_hr_payroll_account/static/description/icon.png similarity index 100% rename from addons/l10n_be_hr_payroll_account/static/src/img/icon.png rename to addons/l10n_be_hr_payroll_account/static/description/icon.png diff --git a/addons/l10n_be_invoice_bba/invoice.py b/addons/l10n_be_invoice_bba/invoice.py index a23dabd7c51..fca743928bf 100644 --- a/addons/l10n_be_invoice_bba/invoice.py +++ b/addons/l10n_be_invoice_bba/invoice.py @@ -153,25 +153,33 @@ class account_invoice(osv.osv): return {'value': {'reference': reference}} def create(self, cr, uid, vals, context=None): - if vals.has_key('reference_type'): - reference_type = vals['reference_type'] + reference = vals.get('reference', False) + reference_type = vals.get('reference_type', False) + if vals.get('type') == 'out_invoice' and not reference_type: + # fallback on default communication type for partner + reference_type = self.pool.get('res.partner').browse(cr, uid, vals['partner_id']).out_inv_comm_type if reference_type == 'bba': - if vals.has_key('reference'): - bbacomm = vals['reference'] - else: + reference = self.generate_bbacomm(cr, uid, [], vals['type'], reference_type, vals['partner_id'], '', context={})['value']['reference'] + vals.update({ + 'reference_type': reference_type or 'none', + 'reference': reference, + }) + + if reference_type == 'bba': + if not reference: + raise osv.except_osv(_('Warning!'), + _('Empty BBA Structured Communication!' \ + '\nPlease fill in a unique BBA Structured Communication.')) + if self.check_bbacomm(reference): + reference = re.sub('\D', '', reference) + vals['reference'] = '+++' + reference[0:3] + '/' + reference[3:7] + '/' + reference[7:] + '+++' + same_ids = self.search(cr, uid, + [('type', '=', 'out_invoice'), ('reference_type', '=', 'bba'), + ('reference', '=', vals['reference'])]) + if same_ids: raise osv.except_osv(_('Warning!'), - _('Empty BBA Structured Communication!' \ - '\nPlease fill in a unique BBA Structured Communication.')) - if self.check_bbacomm(bbacomm): - reference = re.sub('\D', '', bbacomm) - vals['reference'] = '+++' + reference[0:3] + '/' + reference[3:7] + '/' + reference[7:] + '+++' - same_ids = self.search(cr, uid, - [('type', '=', 'out_invoice'), ('reference_type', '=', 'bba'), - ('reference', '=', vals['reference'])]) - if same_ids: - raise osv.except_osv(_('Warning!'), - _('The BBA Structured Communication has already been used!' \ - '\nPlease create manually a unique BBA Structured Communication.')) + _('The BBA Structured Communication has already been used!' \ + '\nPlease create manually a unique BBA Structured Communication.')) return super(account_invoice, self).create(cr, uid, vals, context=context) def write(self, cr, uid, ids, vals, context=None): diff --git a/addons/l10n_bo/static/src/img/icon.png b/addons/l10n_bo/static/description/icon.png similarity index 100% rename from addons/l10n_bo/static/src/img/icon.png rename to addons/l10n_bo/static/description/icon.png diff --git a/addons/l10n_br/static/src/img/icon.png b/addons/l10n_br/static/description/icon.png similarity index 100% rename from addons/l10n_br/static/src/img/icon.png rename to addons/l10n_br/static/description/icon.png diff --git a/addons/l10n_ca/account_tax_en.xml b/addons/l10n_ca/account_tax_en.xml index afe505f27f5..f0d2670d077 100644 --- a/addons/l10n_ca/account_tax_en.xml +++ b/addons/l10n_ca/account_tax_en.xml @@ -101,8 +101,8 @@ - GST + TVQ for sales - GSTTVQ_SALE + GST + QST for sales + GSTQST_SALE sale 1 percent @@ -127,8 +127,8 @@ - TVQ for sales - 9.975% - TVQ + QST for sales - 9.975% + QST sale 0.099750 percent @@ -192,8 +192,8 @@ - TVH for sales - 12% - TVH12_SALE + HST for sales - 12% + HST12_SALE sale 0.120000 percent @@ -207,8 +207,8 @@ - TVH for sales - 13% - TVH13_SALE + HST for sales - 13% + HST13_SALE sale 0.130000 percent @@ -222,8 +222,8 @@ - TVH for sales - 13.5% - TVH135_SALE + HST for sales - 13.5% + HST135_SALE sale 0.135000 percent @@ -237,8 +237,8 @@ - TVH for sales - 15% - TVH15_SALE + HST for sales - 15% + HST15_SALE sale 0.150000 percent @@ -367,8 +367,8 @@ - GST + TVQ for purchases - GSTTVQ_PURC + GST + QST for purchases + GSTQST_PURC purchase 1 percent @@ -393,8 +393,8 @@ - TVQ for purchases - 9.975% - TVQ + QST for purchases - 9.975% + QST purchase 0.099750 percent @@ -458,8 +458,8 @@ - TVH for purchases - 12% - TVH12_PURC + HST for purchases - 12% + HST12_PURC purchase 0.120000 percent @@ -473,8 +473,8 @@ - TVH for purchases - 13% - TVH13_PURC + HST for purchases - 13% + HST13_PURC purchase 0.130000 percent @@ -488,8 +488,8 @@ - TVH for purchases - 13.5% - TVH135_PURC + HST for purchases - 13.5% + HST135_PURC purchase 0.135000 percent @@ -503,8 +503,8 @@ - TVH for purchases - 15% - TVH15_PURC + HST for purchases - 15% + HST15_PURC purchase 0.150000 percent diff --git a/addons/l10n_ca/static/src/img/icon.png b/addons/l10n_ca/static/description/icon.png similarity index 100% rename from addons/l10n_ca/static/src/img/icon.png rename to addons/l10n_ca/static/description/icon.png diff --git a/addons/l10n_ch/__openerp__.py b/addons/l10n_ch/__openerp__.py index 8960224891d..a7830784340 100644 --- a/addons/l10n_ch/__openerp__.py +++ b/addons/l10n_ch/__openerp__.py @@ -24,8 +24,8 @@ {'name': 'Switzerland - Accounting', 'description': """ - Swiss localization : - ==================== +Swiss localization +================== **Multilang swiss STERCHI account chart and taxes** **Author:** Camptocamp SA diff --git a/addons/l10n_ch/static/src/img/icon.png b/addons/l10n_ch/static/description/icon.png similarity index 100% rename from addons/l10n_ch/static/src/img/icon.png rename to addons/l10n_ch/static/description/icon.png diff --git a/addons/l10n_cl/static/src/img/icon.png b/addons/l10n_cl/static/description/icon.png similarity index 100% rename from addons/l10n_cl/static/src/img/icon.png rename to addons/l10n_cl/static/description/icon.png diff --git a/addons/l10n_cn/static/src/img/icon.png b/addons/l10n_cn/static/description/icon.png similarity index 100% rename from addons/l10n_cn/static/src/img/icon.png rename to addons/l10n_cn/static/description/icon.png diff --git a/addons/l10n_co/static/src/img/icon.png b/addons/l10n_co/static/description/icon.png similarity index 100% rename from addons/l10n_co/static/src/img/icon.png rename to addons/l10n_co/static/description/icon.png diff --git a/addons/l10n_cr/static/src/img/icon.png b/addons/l10n_cr/static/description/icon.png similarity index 100% rename from addons/l10n_cr/static/src/img/icon.png rename to addons/l10n_cr/static/description/icon.png diff --git a/addons/l10n_de/static/src/img/icon.png b/addons/l10n_de/static/description/icon.png similarity index 100% rename from addons/l10n_de/static/src/img/icon.png rename to addons/l10n_de/static/description/icon.png diff --git a/addons/l10n_ec/static/src/img/icon.png b/addons/l10n_ec/static/description/icon.png similarity index 100% rename from addons/l10n_ec/static/src/img/icon.png rename to addons/l10n_ec/static/description/icon.png diff --git a/addons/l10n_es/static/src/img/icon.png b/addons/l10n_es/static/description/icon.png similarity index 100% rename from addons/l10n_es/static/src/img/icon.png rename to addons/l10n_es/static/description/icon.png diff --git a/addons/l10n_et/static/src/img/icon.png b/addons/l10n_et/static/description/icon.png similarity index 100% rename from addons/l10n_et/static/src/img/icon.png rename to addons/l10n_et/static/description/icon.png diff --git a/addons/l10n_fr/static/src/img/icon.png b/addons/l10n_fr/static/description/icon.png similarity index 100% rename from addons/l10n_fr/static/src/img/icon.png rename to addons/l10n_fr/static/description/icon.png diff --git a/addons/l10n_gr/static/src/img/icon.png b/addons/l10n_gr/static/description/icon.png similarity index 100% rename from addons/l10n_gr/static/src/img/icon.png rename to addons/l10n_gr/static/description/icon.png diff --git a/addons/l10n_gt/static/src/img/icon.png b/addons/l10n_gt/static/description/icon.png similarity index 100% rename from addons/l10n_gt/static/src/img/icon.png rename to addons/l10n_gt/static/description/icon.png diff --git a/addons/l10n_hn/static/src/img/icon.png b/addons/l10n_hn/static/description/icon.png similarity index 100% rename from addons/l10n_hn/static/src/img/icon.png rename to addons/l10n_hn/static/description/icon.png diff --git a/addons/l10n_hr/static/src/img/icon.png b/addons/l10n_hr/static/description/icon.png similarity index 100% rename from addons/l10n_hr/static/src/img/icon.png rename to addons/l10n_hr/static/description/icon.png diff --git a/addons/l10n_in/static/src/img/icon.png b/addons/l10n_in/static/description/icon.png similarity index 100% rename from addons/l10n_in/static/src/img/icon.png rename to addons/l10n_in/static/description/icon.png diff --git a/addons/l10n_in_hr_payroll/static/src/img/icon.png b/addons/l10n_in_hr_payroll/static/description/icon.png similarity index 100% rename from addons/l10n_in_hr_payroll/static/src/img/icon.png rename to addons/l10n_in_hr_payroll/static/description/icon.png diff --git a/addons/l10n_it/static/src/img/icon.png b/addons/l10n_it/static/description/icon.png similarity index 100% rename from addons/l10n_it/static/src/img/icon.png rename to addons/l10n_it/static/description/icon.png diff --git a/addons/l10n_lu/static/src/img/icon.png b/addons/l10n_lu/static/description/icon.png similarity index 100% rename from addons/l10n_lu/static/src/img/icon.png rename to addons/l10n_lu/static/description/icon.png diff --git a/addons/l10n_ma/static/src/img/icon.png b/addons/l10n_ma/static/description/icon.png similarity index 100% rename from addons/l10n_ma/static/src/img/icon.png rename to addons/l10n_ma/static/description/icon.png diff --git a/addons/l10n_mx/static/src/img/icon.png b/addons/l10n_mx/static/description/icon.png similarity index 100% rename from addons/l10n_mx/static/src/img/icon.png rename to addons/l10n_mx/static/description/icon.png diff --git a/addons/l10n_nl/static/src/img/icon.png b/addons/l10n_nl/static/description/icon.png similarity index 100% rename from addons/l10n_nl/static/src/img/icon.png rename to addons/l10n_nl/static/description/icon.png diff --git a/addons/l10n_pa/static/src/img/icon.png b/addons/l10n_pa/static/description/icon.png similarity index 100% rename from addons/l10n_pa/static/src/img/icon.png rename to addons/l10n_pa/static/description/icon.png diff --git a/addons/l10n_pe/static/src/img/icon.png b/addons/l10n_pe/static/description/icon.png similarity index 100% rename from addons/l10n_pe/static/src/img/icon.png rename to addons/l10n_pe/static/description/icon.png diff --git a/addons/l10n_pl/static/src/img/icon.png b/addons/l10n_pl/static/description/icon.png similarity index 100% rename from addons/l10n_pl/static/src/img/icon.png rename to addons/l10n_pl/static/description/icon.png diff --git a/addons/l10n_ro/static/src/img/icon.png b/addons/l10n_ro/static/description/icon.png similarity index 100% rename from addons/l10n_ro/static/src/img/icon.png rename to addons/l10n_ro/static/description/icon.png diff --git a/addons/l10n_si/static/src/img/icon.png b/addons/l10n_si/static/description/icon.png similarity index 100% rename from addons/l10n_si/static/src/img/icon.png rename to addons/l10n_si/static/description/icon.png diff --git a/addons/l10n_th/static/src/img/icon.png b/addons/l10n_th/static/description/icon.png similarity index 100% rename from addons/l10n_th/static/src/img/icon.png rename to addons/l10n_th/static/description/icon.png diff --git a/addons/l10n_tr/static/src/img/icon.png b/addons/l10n_tr/static/description/icon.png similarity index 100% rename from addons/l10n_tr/static/src/img/icon.png rename to addons/l10n_tr/static/description/icon.png diff --git a/addons/l10n_uk/static/src/img/icon.png b/addons/l10n_uk/static/description/icon.png similarity index 100% rename from addons/l10n_uk/static/src/img/icon.png rename to addons/l10n_uk/static/description/icon.png diff --git a/addons/l10n_us/static/src/img/icon.png b/addons/l10n_us/static/description/icon.png similarity index 100% rename from addons/l10n_us/static/src/img/icon.png rename to addons/l10n_us/static/description/icon.png diff --git a/addons/l10n_uy/static/src/img/icon.png b/addons/l10n_uy/static/description/icon.png similarity index 100% rename from addons/l10n_uy/static/src/img/icon.png rename to addons/l10n_uy/static/description/icon.png diff --git a/addons/l10n_ve/static/src/img/icon.png b/addons/l10n_ve/static/description/icon.png similarity index 100% rename from addons/l10n_ve/static/src/img/icon.png rename to addons/l10n_ve/static/description/icon.png diff --git a/addons/l10n_vn/static/src/img/icon.png b/addons/l10n_vn/static/description/icon.png similarity index 100% rename from addons/l10n_vn/static/src/img/icon.png rename to addons/l10n_vn/static/description/icon.png diff --git a/addons/lunch/static/src/img/icon.png b/addons/lunch/static/description/icon.png similarity index 100% rename from addons/lunch/static/src/img/icon.png rename to addons/lunch/static/description/icon.png diff --git a/addons/mail/i18n/th.po b/addons/mail/i18n/th.po new file mode 100644 index 00000000000..a80d1aad14f --- /dev/null +++ b/addons/mail/i18n/th.po @@ -0,0 +1,1702 @@ +# Thai translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-12-21 17:04+0000\n" +"PO-Revision-Date: 2013-06-28 17:26+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Thai \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-30 05:56+0000\n" +"X-Generator: Launchpad (build 16692)\n" + +#. module: mail +#: view:mail.followers:0 +msgid "Followers Form" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_publisher_warranty_contract +msgid "publisher_warranty.contract" +msgstr "" + +#. module: mail +#: field:mail.compose.message,author_id:0 +#: view:mail.mail:0 +#: field:mail.message,author_id:0 +msgid "Author" +msgstr "ผู้สร้าง" + +#. module: mail +#: view:mail.mail:0 +msgid "Message Details" +msgstr "รายละเอียดข้อความ" + +#. module: mail +#: help:mail.mail,email_to:0 +msgid "Message recipients" +msgstr "" + +#. module: mail +#: help:mail.message.subtype,default:0 +msgid "Activated by default when subscribing." +msgstr "" + +#. module: mail +#: view:mail.message:0 +msgid "Comments" +msgstr "ความคิดเห็น" + +#. module: mail +#: view:mail.alias:0 +#: view:mail.mail:0 +msgid "Group By..." +msgstr "กลุ่มตาม..." + +#. module: mail +#: help:mail.compose.message,body:0 +#: help:mail.message,body:0 +msgid "Automatically sanitized HTML contents" +msgstr "" + +#. module: mail +#: help:mail.alias,alias_name:0 +msgid "" +"The name of the email alias, e.g. 'jobs' if you want to catch emails for " +"" +msgstr "" + +#. module: mail +#: model:ir.actions.act_window,name:mail.action_email_compose_message_wizard +#: view:mail.compose.message:0 +msgid "Compose Email" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:132 +#, python-format +msgid "Add them into recipients and followers" +msgstr "" + +#. module: mail +#: view:mail.group:0 +msgid "Group Name" +msgstr "ชื่อกลุ่ม" + +#. module: mail +#: selection:mail.group,public:0 +msgid "Public" +msgstr "เปิดเผย" + +#. module: mail +#: view:mail.mail:0 +msgid "Body" +msgstr "เนื้อหา" + +#. module: mail +#: view:mail.message:0 +msgid "Show messages to read" +msgstr "แสดงข้อความที่จะอ่าน" + +#. module: mail +#: help:mail.compose.message,email_from:0 +#: help:mail.message,email_from:0 +msgid "" +"Email address of the sender. This field is set when no matching partner is " +"found for incoming emails." +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_compose_message +msgid "Email composition wizard" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail_followers.xml:23 +#, python-format +msgid "Add others" +msgstr "" + +#. module: mail +#: field:mail.message.subtype,parent_id:0 +msgid "Parent" +msgstr "" + +#. module: mail +#: field:mail.group,message_unread:0 +#: field:mail.thread,message_unread:0 +#: field:res.partner,message_unread:0 +msgid "Unread Messages" +msgstr "ข้อความที่ยังไม่ได้อ่าน" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:313 +#, python-format +msgid "show" +msgstr "" + +#. module: mail +#: help:mail.group,group_ids:0 +msgid "" +"Members of those groups will automatically added as followers. Note that " +"they will be able to manage their subscription manually if necessary." +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/js/mail.js:1029 +#, python-format +msgid "Do you really want to delete this message?" +msgstr "" + +#. module: mail +#: view:mail.message:0 +#: field:mail.notification,read:0 +msgid "Read" +msgstr "อ่าน" + +#. module: mail +#: view:mail.group:0 +msgid "Search Groups" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/js/mail_followers.js:157 +#, python-format +msgid "followers" +msgstr "" + +#. module: mail +#: code:addons/mail/mail_message.py:737 +#, python-format +msgid "Access Denied" +msgstr "ไม่ได้รับอนุญาตให้เข้าใช้" + +#. module: mail +#: help:mail.group,image_medium:0 +msgid "" +"Medium-sized photo of the group. It is automatically resized as a 128x128px " +"image, with aspect ratio preserved. Use this field in form views or some " +"kanban views." +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:212 +#, python-format +msgid "Uploading error" +msgstr "" + +#. module: mail +#: model:mail.group,name:mail.group_support +msgid "Support" +msgstr "สนับสนุน" + +#. module: mail +#: code:addons/mail/mail_message.py:738 +#, python-format +msgid "" +"The requested operation cannot be completed due to security restrictions. " +"Please contact your system administrator.\n" +"\n" +"(Document type: %s, Operation: %s)" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +#: selection:mail.mail,state:0 +msgid "Received" +msgstr "ได้รับ" + +#. module: mail +#: view:mail.mail:0 +msgid "Thread" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:29 +#, python-format +msgid "Open the full mail composer" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:29 +#, python-format +msgid "ò" +msgstr "" + +#. module: mail +#: field:base.config.settings,alias_domain:0 +msgid "Alias Domain" +msgstr "" + +#. module: mail +#: field:mail.group,group_ids:0 +msgid "Auto Subscription" +msgstr "" + +#. module: mail +#: field:mail.mail,references:0 +msgid "References" +msgstr "แหล่งอ้างอิง" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:206 +#, python-format +msgid "No messages." +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_group +msgid "Discussion group" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:96 +#: code:addons/mail/static/src/xml/mail.xml:108 +#, python-format +msgid "uploading" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail_followers.xml:52 +#, python-format +msgid "more." +msgstr "" + +#. module: mail +#: help:mail.compose.message,type:0 +#: help:mail.message,type:0 +msgid "" +"Message type: email for email message, notification for system message, " +"comment for other messages such as user replies" +msgstr "" + +#. module: mail +#: help:mail.message.subtype,relation_field:0 +msgid "" +"Field used to link the related model to the subtype model when using " +"automatic subscription on a related document. The field is used to compute " +"getattr(related_document.relation_field)." +msgstr "" + +#. module: mail +#: selection:mail.mail,state:0 +msgid "Cancelled" +msgstr "ยกเลิกแล้ว" + +#. module: mail +#: field:mail.mail,reply_to:0 +msgid "Reply-To" +msgstr "ตอบกลับไปยัง" + +#. module: mail +#: code:addons/mail/wizard/invite.py:37 +#, python-format +msgid "
You have been invited to follow %s.
" +msgstr "" + +#. module: mail +#: help:mail.group,message_unread:0 +#: help:mail.thread,message_unread:0 +#: help:res.partner,message_unread:0 +msgid "If checked new messages require your attention." +msgstr "" + +#. module: mail +#: field:mail.group,image_medium:0 +msgid "Medium-sized photo" +msgstr "ภาพขนาดกลาง" + +#. module: mail +#: model:ir.actions.client,name:mail.action_mail_to_me_feeds +#: model:ir.ui.menu,name:mail.mail_tomefeeds +msgid "To: me" +msgstr "" + +#. module: mail +#: field:mail.message.subtype,name:0 +msgid "Message Type" +msgstr "ประเภทข้อความ" + +#. module: mail +#: field:mail.mail,auto_delete:0 +msgid "Auto Delete" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail_followers.xml:12 +#: view:mail.group:0 +#, python-format +msgid "Unfollow" +msgstr "เลิกติดตาม" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:312 +#, python-format +msgid "show one more message" +msgstr "" + +#. module: mail +#: code:addons/mail/mail_mail.py:75 +#: code:addons/mail/res_users.py:69 +#, python-format +msgid "Invalid Action!" +msgstr "การกระทำไม่ถูกต้อง!" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:25 +#, python-format +msgid "User img" +msgstr "" + +#. module: mail +#: model:ir.actions.act_window,name:mail.action_view_mail_mail +#: model:ir.ui.menu,name:mail.menu_mail_mail +#: view:mail.mail:0 +#: view:mail.message:0 +msgid "Emails" +msgstr "อีเมล์" + +#. module: mail +#: field:mail.followers,partner_id:0 +msgid "Related Partner" +msgstr "" + +#. module: mail +#: help:mail.group,message_summary:0 +#: help:mail.thread,message_summary:0 +#: help:res.partner,message_summary:0 +msgid "" +"Holds the Chatter summary (number of messages, ...). This summary is " +"directly in html format in order to be inserted in kanban views." +msgstr "" + +#. module: mail +#: help:mail.alias,alias_model_id:0 +msgid "" +"The model (OpenERP Document Kind) to which this alias corresponds. Any " +"incoming email that does not reply to an existing record will cause the " +"creation of a new record of this model (e.g. a Project Task)" +msgstr "" + +#. module: mail +#: field:mail.message.subtype,relation_field:0 +msgid "Relation field" +msgstr "" + +#. module: mail +#: selection:mail.compose.message,type:0 +#: selection:mail.message,type:0 +msgid "System notification" +msgstr "การแจ้งเตือนระบบ" + +#. module: mail +#: model:ir.model,name:mail.model_res_partner +msgid "Partner" +msgstr "พาร์ทเนอร์" + +#. module: mail +#: model:ir.ui.menu,name:mail.mail_my_stuff +msgid "Organizer" +msgstr "ผู้จัด" + +#. module: mail +#: field:mail.compose.message,subject:0 +#: field:mail.message,subject:0 +msgid "Subject" +msgstr "ชื่อเรื่อง" + +#. module: mail +#: field:mail.wizard.invite,partner_ids:0 +msgid "Partners" +msgstr "พาร์ทเนอร์" + +#. module: mail +#: view:mail.mail:0 +msgid "Retry" +msgstr "ลองใหม่" + +#. module: mail +#: field:mail.compose.message,email_from:0 +#: field:mail.mail,email_from:0 +#: field:mail.message,email_from:0 +msgid "From" +msgstr "จาก" + +#. module: mail +#: view:mail.mail:0 +#: view:mail.message.subtype:0 +msgid "Email message" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_base_config_settings +msgid "base.config.settings" +msgstr "base.config.settings" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:36 +#: view:mail.compose.message:0 +#, python-format +msgid "Send" +msgstr "ส่ง" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/js/mail_followers.js:153 +#, python-format +msgid "No followers" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "Failed" +msgstr "ล้มเหลว" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail_followers.xml:22 +#: model:ir.actions.act_window,name:mail.action_view_followers +#: model:ir.ui.menu,name:mail.menu_email_followers +#: view:mail.followers:0 +#: field:mail.group,message_follower_ids:0 +#: field:mail.thread,message_follower_ids:0 +#: field:res.partner,message_follower_ids:0 +#, python-format +msgid "Followers" +msgstr "ติดตาม" + +#. module: mail +#: model:ir.actions.client,name:mail.action_mail_archives_feeds +#: model:ir.ui.menu,name:mail.mail_archivesfeeds +msgid "Archives" +msgstr "ที่เก็บถาวร" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:95 +#: code:addons/mail/static/src/xml/mail.xml:107 +#, python-format +msgid "Delete this attachment" +msgstr "ลบสิ่งที่แนบมานี้" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:245 +#: view:mail.mail:0 +#, python-format +msgid "Reply" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/js/mail_followers.js:155 +#, python-format +msgid "One follower" +msgstr "" + +#. module: mail +#: field:mail.compose.message,type:0 +#: field:mail.message,type:0 +msgid "Type" +msgstr "ชนิด" + +#. module: mail +#: selection:mail.compose.message,type:0 +#: view:mail.mail:0 +#: selection:mail.message,type:0 +msgid "Email" +msgstr "อีเมล์" + +#. module: mail +#: field:ir.ui.menu,mail_group_id:0 +msgid "Mail Group" +msgstr "" + +#. module: mail +#: selection:res.partner,notification_email_send:0 +msgid "Comments and Emails" +msgstr "" + +#. module: mail +#: field:mail.alias,alias_defaults:0 +msgid "Default Values" +msgstr "ค่าปริยาย" + +#. module: mail +#: code:addons/mail/res_users.py:89 +#, python-format +msgid "%s has joined the %s network." +msgstr "" + +#. module: mail +#: help:mail.group,image_small:0 +msgid "" +"Small-sized photo of the group. It is automatically resized as a 64x64px " +"image, with aspect ratio preserved. Use this field anywhere a small image is " +"required." +msgstr "" + +#. module: mail +#: view:mail.compose.message:0 +#: field:mail.message,partner_ids:0 +msgid "Recipients" +msgstr "ผู้รับ" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:140 +#, python-format +msgid "<<<" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:43 +#, python-format +msgid "Write to the followers of this document..." +msgstr "" + +#. module: mail +#: field:mail.group,group_public_id:0 +msgid "Authorized Group" +msgstr "" + +#. module: mail +#: view:mail.group:0 +msgid "Join Group" +msgstr "" + +#. module: mail +#: help:mail.mail,email_from:0 +msgid "Message sender, taken from user preferences." +msgstr "" + +#. module: mail +#: code:addons/mail/wizard/invite.py:40 +#, python-format +msgid "
You have been invited to follow a new document.
" +msgstr "" + +#. module: mail +#: field:mail.compose.message,parent_id:0 +#: field:mail.message,parent_id:0 +msgid "Parent Message" +msgstr "" + +#. module: mail +#: field:mail.compose.message,res_id:0 +#: field:mail.followers,res_id:0 +#: field:mail.message,res_id:0 +#: field:mail.wizard.invite,res_id:0 +msgid "Related Document ID" +msgstr "" + +#. module: mail +#: model:ir.actions.client,help:mail.action_mail_to_me_feeds +msgid "" +"

\n" +" No private message.\n" +"

\n" +" This list contains messages sent to you.\n" +"

\n" +" " +msgstr "" + +#. module: mail +#: model:mail.group,name:mail.group_rd +msgid "R&D" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:61 +#, python-format +msgid "/web/binary/upload_attachment" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_thread +msgid "Email Thread" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "Advanced" +msgstr "ขั้นสูง" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:244 +#, python-format +msgid "Move to Inbox" +msgstr "" + +#. module: mail +#: code:addons/mail/wizard/mail_compose_message.py:193 +#, python-format +msgid "Re:" +msgstr "" + +#. module: mail +#: field:mail.compose.message,to_read:0 +#: field:mail.message,to_read:0 +msgid "To read" +msgstr "" + +#. module: mail +#: code:addons/mail/res_users.py:69 +#, python-format +msgid "" +"You may not create a user. To create new users, you should use the " +"\"Settings > Users\" menu." +msgstr "" + +#. module: mail +#: help:mail.followers,res_model:0 +#: help:mail.wizard.invite,res_model:0 +msgid "Model of the followed resource" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:337 +#, python-format +msgid "like" +msgstr "" + +#. module: mail +#: view:mail.compose.message:0 +#: view:mail.wizard.invite:0 +msgid "Cancel" +msgstr "ยกเลิก" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:47 +#, python-format +msgid "Share with my followers..." +msgstr "" + +#. module: mail +#: field:mail.notification,partner_id:0 +msgid "Contact" +msgstr "ที่อยู่ติดต่อ" + +#. module: mail +#: view:mail.group:0 +msgid "" +"Only the invited followers can read the\n" +" discussions on this group." +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_ir_ui_menu +msgid "ir.ui.menu" +msgstr "ir.ui.menu" + +#. module: mail +#: view:mail.message:0 +msgid "Has attachments" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "on" +msgstr "เปิด" + +#. module: mail +#: code:addons/mail/mail_message.py:926 +#, python-format +msgid "" +"The following partners chosen as recipients for the email have no email " +"address linked :" +msgstr "" + +#. module: mail +#: help:mail.alias,alias_defaults:0 +msgid "" +"A Python dictionary that will be evaluated to provide default values when " +"creating new records for this alias." +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_message_subtype +msgid "Message subtypes" +msgstr "" + +#. module: mail +#: help:mail.compose.message,notified_partner_ids:0 +#: help:mail.message,notified_partner_ids:0 +msgid "" +"Partners that have a notification pushing this message in their mailboxes" +msgstr "" + +#. module: mail +#: selection:mail.compose.message,type:0 +#: view:mail.mail:0 +#: selection:mail.message,type:0 +msgid "Comment" +msgstr "ความคิดเห็น" + +#. module: mail +#: model:ir.actions.client,help:mail.action_mail_inbox_feeds +msgid "" +"

\n" +" Good Job! Your inbox is empty.\n" +"

\n" +" Your inbox contains private messages or emails sent to " +"you\n" +" as well as information related to documents or people " +"you\n" +" follow.\n" +"

\n" +" " +msgstr "" +"

\n" +" เยี่ยมยอด! คุณอ่านข้อความหมดแล้ว\n" +"

\n" +" ขอความร่วมมือ ภาษาไทยสำหรับ OpenERP นั้น " +"ยังไม่สมบรูณ์และถูกต้อง \n" +"

เลือกหมวด Translations เพื่อแนะนำการแปลได้ที่

\n" +"\n" +" https://launchpad.net/openobject-addons : business " +"application modules\n" +" https://launchpad.net/openobject-server : the " +"framework\n" +" https://launchpad.net/openerp-web : web " +"modules and frontend\n" +"

\n" +" " + +#. module: mail +#: field:mail.mail,notification:0 +msgid "Is Notification" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:188 +#, python-format +msgid "Compose a new message" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "Send Now" +msgstr "ส่งทันที" + +#. module: mail +#: code:addons/mail/mail_mail.py:75 +#, python-format +msgid "" +"Unable to send email, please configure the sender's email address or alias." +msgstr "" + +#. module: mail +#: help:res.users,alias_id:0 +msgid "" +"Email address internally associated with this user. Incoming emails will " +"appear in the user's notifications." +msgstr "" + +#. module: mail +#: field:mail.group,image:0 +msgid "Photo" +msgstr "รูปภาพ" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:54 +#: code:addons/mail/static/src/xml/mail.xml:191 +#: view:mail.compose.message:0 +#: view:mail.wizard.invite:0 +#, python-format +msgid "or" +msgstr "หรือ" + +#. module: mail +#: help:mail.compose.message,vote_user_ids:0 +#: help:mail.message,vote_user_ids:0 +msgid "Users that voted for this message" +msgstr "" + +#. module: mail +#: help:mail.group,alias_id:0 +msgid "" +"The email address associated with this group. New emails received will " +"automatically create new topics." +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "Month" +msgstr "เดือน" + +#. module: mail +#: view:mail.mail:0 +msgid "Email Search" +msgstr "" + +#. module: mail +#: field:mail.compose.message,child_ids:0 +#: field:mail.message,child_ids:0 +msgid "Child Messages" +msgstr "" + +#. module: mail +#: field:mail.alias,alias_user_id:0 +msgid "Owner" +msgstr "เจ้าของ" + +#. module: mail +#: model:ir.model,name:mail.model_res_users +msgid "Users" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_message +#: field:mail.mail,mail_message_id:0 +#: view:mail.message:0 +#: field:mail.notification,message_id:0 +#: field:mail.wizard.invite,message:0 +msgid "Message" +msgstr "ข้อความ" + +#. module: mail +#: help:mail.followers,res_id:0 +#: help:mail.wizard.invite,res_id:0 +msgid "Id of the followed resource" +msgstr "" + +#. module: mail +#: field:mail.compose.message,body:0 +#: field:mail.message,body:0 +msgid "Contents" +msgstr "เนื้อหา" + +#. module: mail +#: model:ir.actions.act_window,name:mail.action_view_mail_alias +#: model:ir.ui.menu,name:mail.mail_alias_menu +msgid "Aliases" +msgstr "นามแฝง" + +#. module: mail +#: help:mail.message.subtype,description:0 +msgid "" +"Description that will be added in the message posted for this subtype. If " +"void, the name will be added instead." +msgstr "" + +#. module: mail +#: field:mail.compose.message,vote_user_ids:0 +#: field:mail.message,vote_user_ids:0 +msgid "Votes" +msgstr "" + +#. module: mail +#: view:mail.group:0 +msgid "Group" +msgstr "กลุ่ม" + +#. module: mail +#: help:mail.compose.message,starred:0 +#: help:mail.message,starred:0 +msgid "Current user has a starred notification linked to this message" +msgstr "" + +#. module: mail +#: field:mail.group,public:0 +msgid "Privacy" +msgstr "ความเป็นส่วนตัว" + +#. module: mail +#: view:mail.mail:0 +msgid "Notification" +msgstr "การแจ้งเตือน" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/js/mail.js:654 +#, python-format +msgid "Please complete partner's informations" +msgstr "" + +#. module: mail +#: view:mail.wizard.invite:0 +msgid "Add Followers" +msgstr "" + +#. module: mail +#: view:mail.compose.message:0 +msgid "Followers of selected items and" +msgstr "" + +#. module: mail +#: field:mail.alias,alias_force_thread_id:0 +msgid "Record Thread ID" +msgstr "" + +#. module: mail +#: model:ir.ui.menu,name:mail.mail_group_root +msgid "My Groups" +msgstr "" + +#. module: mail +#: model:ir.actions.client,help:mail.action_mail_archives_feeds +msgid "" +"

\n" +" No message found and no message sent yet.\n" +"

\n" +" Click on the top-right icon to compose a message. This\n" +" message will be sent by email if it's an internal " +"contact.\n" +"

\n" +" " +msgstr "" + +#. module: mail +#: view:mail.mail:0 +#: field:mail.mail,state:0 +msgid "Status" +msgstr "สถานะ" + +#. module: mail +#: view:mail.mail:0 +#: selection:mail.mail,state:0 +msgid "Outgoing" +msgstr "" + +#. module: mail +#: selection:res.partner,notification_email_send:0 +msgid "All feeds" +msgstr "" + +#. module: mail +#: help:mail.compose.message,record_name:0 +#: help:mail.message,record_name:0 +msgid "Name get of the related document." +msgstr "" + +#. module: mail +#: model:ir.actions.act_window,name:mail.action_view_notifications +#: model:ir.model,name:mail.model_mail_notification +#: model:ir.ui.menu,name:mail.menu_email_notifications +#: field:mail.compose.message,notification_ids:0 +#: view:mail.message:0 +#: field:mail.message,notification_ids:0 +#: view:mail.notification:0 +msgid "Notifications" +msgstr "การแจ้งให้ทราบ" + +#. module: mail +#: view:mail.alias:0 +msgid "Search Alias" +msgstr "" + +#. module: mail +#: help:mail.alias,alias_force_thread_id:0 +msgid "" +"Optional ID of a thread (record) to which all incoming messages will be " +"attached, even if they did not reply to it. If set, this will disable the " +"creation of new records completely." +msgstr "" + +#. module: mail +#: help:mail.message.subtype,name:0 +msgid "" +"Message subtype gives a more precise type on the message, especially for " +"system notifications. For example, it can be a notification related to a new " +"record (New), or to a stage change in a process (Stage change). Message " +"subtypes allow to precisely tune the notifications the user want to receive " +"on its wall." +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "by" +msgstr "โดย" + +#. module: mail +#: model:mail.group,name:mail.group_best_sales_practices +msgid "Best Sales Practices" +msgstr "" + +#. module: mail +#: selection:mail.group,public:0 +msgid "Selected Group Only" +msgstr "" + +#. module: mail +#: field:mail.group,message_is_follower:0 +#: field:mail.thread,message_is_follower:0 +#: field:res.partner,message_is_follower:0 +msgid "Is a Follower" +msgstr "" + +#. module: mail +#: view:mail.alias:0 +#: view:mail.mail:0 +msgid "User" +msgstr "" + +#. module: mail +#: view:mail.group:0 +msgid "Groups" +msgstr "" + +#. module: mail +#: view:mail.message:0 +msgid "Messages Search" +msgstr "" + +#. module: mail +#: field:mail.compose.message,date:0 +#: field:mail.message,date:0 +msgid "Date" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:34 +#, python-format +msgid "Post" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "Extended Filters..." +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:120 +#, python-format +msgid "To:" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:193 +#, python-format +msgid "Write to my followers" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_res_groups +msgid "Access Groups" +msgstr "" + +#. module: mail +#: field:mail.message.subtype,default:0 +msgid "Default" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:311 +#, python-format +msgid "show more message" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:246 +#, python-format +msgid "Mark as Todo" +msgstr "" + +#. module: mail +#: help:mail.message.subtype,parent_id:0 +msgid "Parent subtype, used for automatic subscription." +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_wizard_invite +msgid "Invite wizard" +msgstr "" + +#. module: mail +#: field:mail.group,message_summary:0 +#: field:mail.thread,message_summary:0 +#: field:res.partner,message_summary:0 +msgid "Summary" +msgstr "" + +#. module: mail +#: help:mail.message.subtype,res_model:0 +msgid "" +"Model the subtype applies to. If False, this subtype applies to all models." +msgstr "" + +#. module: mail +#: field:mail.compose.message,subtype_id:0 +#: field:mail.followers,subtype_ids:0 +#: field:mail.message,subtype_id:0 +#: view:mail.message.subtype:0 +msgid "Subtype" +msgstr "ประเภทย่อย" + +#. module: mail +#: view:mail.group:0 +msgid "Group Form" +msgstr "" + +#. module: mail +#: field:mail.compose.message,starred:0 +#: field:mail.message,starred:0 +#: field:mail.notification,starred:0 +msgid "Starred" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:313 +#, python-format +msgid "more messages" +msgstr "" + +#. module: mail +#: code:addons/mail/update.py:93 +#, python-format +msgid "Error" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail_followers.xml:13 +#, python-format +msgid "Following" +msgstr "" + +#. module: mail +#: sql_constraint:mail.alias:0 +msgid "" +"Unfortunately this email alias is already used, please choose a unique one" +msgstr "" + +#. module: mail +#: help:mail.alias,alias_user_id:0 +msgid "" +"The owner of records created upon receiving emails on this alias. If this " +"field is not set the system will attempt to find the right owner based on " +"the sender (From) address, or will use the Administrator account if no " +"system user is found for that address." +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail_followers.xml:52 +#, python-format +msgid "And" +msgstr "" + +#. module: mail +#: field:mail.compose.message,message_id:0 +#: field:mail.message,message_id:0 +msgid "Message-Id" +msgstr "" + +#. module: mail +#: help:mail.group,image:0 +msgid "" +"This field holds the image used as photo for the group, limited to " +"1024x1024px." +msgstr "" + +#. module: mail +#: field:mail.compose.message,attachment_ids:0 +#: view:mail.mail:0 +#: field:mail.message,attachment_ids:0 +msgid "Attachments" +msgstr "" + +#. module: mail +#: field:mail.compose.message,record_name:0 +#: field:mail.message,record_name:0 +msgid "Message Record Name" +msgstr "" + +#. module: mail +#: field:mail.mail,email_cc:0 +msgid "Cc" +msgstr "" + +#. module: mail +#: help:mail.notification,starred:0 +msgid "Starred message that goes into the todo mailbox" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:123 +#: view:mail.compose.message:0 +#, python-format +msgid "Followers of" +msgstr "" + +#. module: mail +#: help:mail.mail,auto_delete:0 +msgid "Permanently delete this email after sending it, to save space" +msgstr "" + +#. module: mail +#: model:ir.actions.client,name:mail.action_mail_group_feeds +msgid "Discussion Group" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:242 +#, python-format +msgid "Done" +msgstr "" + +#. module: mail +#: model:mail.message.subtype,name:mail.mt_comment +msgid "Discussions" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail_followers.xml:11 +#, python-format +msgid "Follow" +msgstr "" + +#. module: mail +#: field:mail.group,name:0 +msgid "Name" +msgstr "" + +#. module: mail +#: model:mail.group,name:mail.group_all_employees +msgid "Whole Company" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:129 +#: code:addons/mail/static/src/xml/mail.xml:292 +#: view:mail.compose.message:0 +#, python-format +msgid "and" +msgstr "" + +#. module: mail +#: help:mail.mail,body_html:0 +msgid "Rich-text/HTML message" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "Creation Month" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:323 +#, python-format +msgid "Compose new Message" +msgstr "" + +#. module: mail +#: field:mail.group,menu_id:0 +msgid "Related Menu" +msgstr "" + +#. module: mail +#: view:mail.message:0 +msgid "Content" +msgstr "" + +#. module: mail +#: field:mail.mail,email_to:0 +msgid "To" +msgstr "" + +#. module: mail +#: field:mail.compose.message,notified_partner_ids:0 +#: field:mail.message,notified_partner_ids:0 +msgid "Notified partners" +msgstr "" + +#. module: mail +#: help:mail.group,public:0 +msgid "" +"This group is visible by non members. Invisible groups can add " +"members through the invite button." +msgstr "" + +#. module: mail +#: model:mail.group,name:mail.group_board +msgid "Board meetings" +msgstr "" + +#. module: mail +#: constraint:mail.alias:0 +msgid "" +"Invalid expression, it must be a literal python dictionary definition e.g. " +"\"{'field': 'value'}\"" +msgstr "" + +#. module: mail +#: field:mail.alias,alias_model_id:0 +msgid "Aliased Model" +msgstr "" + +#. module: mail +#: help:mail.compose.message,message_id:0 +#: help:mail.message,message_id:0 +msgid "Message unique identifier" +msgstr "" + +#. module: mail +#: field:mail.group,description:0 +#: field:mail.message.subtype,description:0 +msgid "Description" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_followers +msgid "Document Followers" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail_followers.xml:35 +#, python-format +msgid "Remove this follower" +msgstr "" + +#. module: mail +#: selection:res.partner,notification_email_send:0 +msgid "Never" +msgstr "" + +#. module: mail +#: field:mail.mail,mail_server_id:0 +msgid "Outgoing mail server" +msgstr "" + +#. module: mail +#: code:addons/mail/mail_message.py:930 +#, python-format +msgid "Partners email addresses not found" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +#: selection:mail.mail,state:0 +msgid "Sent" +msgstr "" + +#. module: mail +#: field:mail.mail,body_html:0 +msgid "Rich-text Contents" +msgstr "" + +#. module: mail +#: help:mail.compose.message,to_read:0 +#: help:mail.message,to_read:0 +msgid "Current user has an unread notification linked to this message" +msgstr "" + +#. module: mail +#: help:res.partner,notification_email_send:0 +msgid "" +"Choose in which case you want to receive an email when you receive new feeds." +msgstr "" + +#. module: mail +#: model:ir.actions.act_window,name:mail.action_view_groups +#: model:ir.ui.menu,name:mail.mail_allgroups +msgid "Join a group" +msgstr "" + +#. module: mail +#: model:ir.actions.client,help:mail.action_mail_group_feeds +msgid "" +"

\n" +" No message in this group.\n" +"

\n" +" " +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:213 +#, python-format +msgid "Please, wait while the file is uploading." +msgstr "" + +#. module: mail +#: view:mail.group:0 +msgid "" +"This group is visible by everyone,\n" +" including your customers if you " +"installed\n" +" the portal module." +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:243 +#, python-format +msgid "Set back to Todo" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:126 +#, python-format +msgid "this document" +msgstr "" + +#. module: mail +#: field:mail.compose.message,filter_id:0 +msgid "Filters" +msgstr "" + +#. module: mail +#: field:res.partner,notification_email_send:0 +msgid "Receive Feeds by Email" +msgstr "" + +#. module: mail +#: help:base.config.settings,alias_domain:0 +msgid "" +"If you have setup a catch-all email domain redirected to the OpenERP server, " +"enter the domain name here." +msgstr "" + +#. module: mail +#: model:ir.actions.act_window,name:mail.action_view_mail_message +#: model:ir.ui.menu,name:mail.menu_mail_message +#: field:mail.group,message_ids:0 +#: view:mail.message:0 +#: field:mail.thread,message_ids:0 +#: field:res.partner,message_ids:0 +msgid "Messages" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:139 +#, python-format +msgid "others..." +msgstr "" + +#. module: mail +#: model:ir.actions.client,name:mail.action_mail_star_feeds +#: model:ir.ui.menu,name:mail.mail_starfeeds +msgid "To-do" +msgstr "" + +#. module: mail +#: view:mail.alias:0 +#: field:mail.alias,alias_name:0 +#: field:mail.group,alias_id:0 +#: field:res.users,alias_id:0 +msgid "Alias" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_mail +msgid "Outgoing Mails" +msgstr "" + +#. module: mail +#: help:mail.compose.message,notification_ids:0 +#: help:mail.message,notification_ids:0 +msgid "" +"Technical field holding the message notifications. Use notified_partner_ids " +"to access notified partners." +msgstr "" + +#. module: mail +#: model:ir.ui.menu,name:mail.mail_feeds +#: model:ir.ui.menu,name:mail.mail_feeds_main +msgid "Messaging" +msgstr "" + +#. module: mail +#: view:mail.alias:0 +#: field:mail.message.subtype,res_model:0 +msgid "Model" +msgstr "" + +#. module: mail +#: view:mail.message:0 +msgid "Unread" +msgstr "" + +#. module: mail +#: help:mail.followers,subtype_ids:0 +msgid "" +"Message subtypes followed, meaning subtypes that will be pushed onto the " +"user's Wall." +msgstr "" + +#. module: mail +#: help:mail.group,message_ids:0 +#: help:mail.thread,message_ids:0 +#: help:res.partner,message_ids:0 +msgid "Messages and communication history" +msgstr "" + +#. module: mail +#: help:mail.mail,references:0 +msgid "Message references, such as identifiers of previous messages" +msgstr "" + +#. module: mail +#: field:mail.compose.message,composition_mode:0 +msgid "Composition mode" +msgstr "" + +#. module: mail +#: field:mail.compose.message,model:0 +#: field:mail.followers,res_model:0 +#: field:mail.message,model:0 +#: field:mail.wizard.invite,res_model:0 +msgid "Related Document Model" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:338 +#, python-format +msgid "unlike" +msgstr "" + +#. module: mail +#: help:mail.compose.message,author_id:0 +#: help:mail.message,author_id:0 +msgid "" +"Author of the message. If not set, email_from may hold an email address that " +"did not match any partner." +msgstr "" + +#. module: mail +#: help:mail.mail,email_cc:0 +msgid "Carbon copy message recipients" +msgstr "" + +#. module: mail +#: field:mail.alias,alias_domain:0 +msgid "Alias domain" +msgstr "" + +#. module: mail +#: code:addons/mail/update.py:93 +#, python-format +msgid "Error during communication with the publisher warranty server." +msgstr "" + +#. module: mail +#: selection:mail.group,public:0 +msgid "Private" +msgstr "" + +#. module: mail +#: model:ir.actions.client,help:mail.action_mail_star_feeds +msgid "" +"

\n" +" No todo.\n" +"

\n" +" When you process messages in your inbox, you can mark " +"some\n" +" as todo. From this menu, you can process all your " +"todo.\n" +"

\n" +" " +msgstr "" + +#. module: mail +#: selection:mail.mail,state:0 +msgid "Delivery Failed" +msgstr "" + +#. module: mail +#: field:mail.compose.message,partner_ids:0 +msgid "Additional contacts" +msgstr "" + +#. module: mail +#: help:mail.compose.message,parent_id:0 +#: help:mail.message,parent_id:0 +msgid "Initial thread message." +msgstr "" + +#. module: mail +#: model:mail.group,name:mail.group_hr_policies +msgid "HR Policies" +msgstr "" + +#. module: mail +#: selection:res.partner,notification_email_send:0 +msgid "Emails only" +msgstr "" + +#. module: mail +#: model:ir.actions.client,name:mail.action_mail_inbox_feeds +#: model:ir.ui.menu,name:mail.mail_inboxfeeds +msgid "Inbox" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:58 +#, python-format +msgid "File" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/js/many2many_tags_email.js:63 +#, python-format +msgid "Please complete partner's informations and Email" +msgstr "" + +#. module: mail +#: model:ir.actions.act_window,name:mail.action_view_message_subtype +#: model:ir.ui.menu,name:mail.menu_message_subtype +msgid "Subtypes" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_alias +msgid "Email Aliases" +msgstr "" + +#. module: mail +#: field:mail.group,image_small:0 +msgid "Small-sized photo" +msgstr "" + +#. module: mail +#: help:mail.mail,reply_to:0 +msgid "Preferred response address for the message" +msgstr "" diff --git a/addons/mail/i18n/vi.po b/addons/mail/i18n/vi.po new file mode 100644 index 00000000000..9f7569bddf7 --- /dev/null +++ b/addons/mail/i18n/vi.po @@ -0,0 +1,1687 @@ +# Vietnamese translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-12-21 17:04+0000\n" +"PO-Revision-Date: 2013-06-27 06:35+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Vietnamese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: mail +#: view:mail.followers:0 +msgid "Followers Form" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_publisher_warranty_contract +msgid "publisher_warranty.contract" +msgstr "" + +#. module: mail +#: field:mail.compose.message,author_id:0 +#: view:mail.mail:0 +#: field:mail.message,author_id:0 +msgid "Author" +msgstr "Tác giả" + +#. module: mail +#: view:mail.mail:0 +msgid "Message Details" +msgstr "Chi tiết tin nhắn" + +#. module: mail +#: help:mail.mail,email_to:0 +msgid "Message recipients" +msgstr "" + +#. module: mail +#: help:mail.message.subtype,default:0 +msgid "Activated by default when subscribing." +msgstr "" + +#. module: mail +#: view:mail.message:0 +msgid "Comments" +msgstr "Bình luận" + +#. module: mail +#: view:mail.alias:0 +#: view:mail.mail:0 +msgid "Group By..." +msgstr "Nhóm theo..." + +#. module: mail +#: help:mail.compose.message,body:0 +#: help:mail.message,body:0 +msgid "Automatically sanitized HTML contents" +msgstr "" + +#. module: mail +#: help:mail.alias,alias_name:0 +msgid "" +"The name of the email alias, e.g. 'jobs' if you want to catch emails for " +"" +msgstr "" + +#. module: mail +#: model:ir.actions.act_window,name:mail.action_email_compose_message_wizard +#: view:mail.compose.message:0 +msgid "Compose Email" +msgstr "Soạn thư mới" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:132 +#, python-format +msgid "Add them into recipients and followers" +msgstr "" + +#. module: mail +#: view:mail.group:0 +msgid "Group Name" +msgstr "Tên nhóm" + +#. module: mail +#: selection:mail.group,public:0 +msgid "Public" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "Body" +msgstr "Nội dung" + +#. module: mail +#: view:mail.message:0 +msgid "Show messages to read" +msgstr "" + +#. module: mail +#: help:mail.compose.message,email_from:0 +#: help:mail.message,email_from:0 +msgid "" +"Email address of the sender. This field is set when no matching partner is " +"found for incoming emails." +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_compose_message +msgid "Email composition wizard" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail_followers.xml:23 +#, python-format +msgid "Add others" +msgstr "Thêm" + +#. module: mail +#: field:mail.message.subtype,parent_id:0 +msgid "Parent" +msgstr "" + +#. module: mail +#: field:mail.group,message_unread:0 +#: field:mail.thread,message_unread:0 +#: field:res.partner,message_unread:0 +msgid "Unread Messages" +msgstr "Tin chưa đọc" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:313 +#, python-format +msgid "show" +msgstr "hiển thị" + +#. module: mail +#: help:mail.group,group_ids:0 +msgid "" +"Members of those groups will automatically added as followers. Note that " +"they will be able to manage their subscription manually if necessary." +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/js/mail.js:1029 +#, python-format +msgid "Do you really want to delete this message?" +msgstr "Bạn có chắc muốn xóa tin nhắn này?" + +#. module: mail +#: view:mail.message:0 +#: field:mail.notification,read:0 +msgid "Read" +msgstr "" + +#. module: mail +#: view:mail.group:0 +msgid "Search Groups" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/js/mail_followers.js:157 +#, python-format +msgid "followers" +msgstr "theo dõi" + +#. module: mail +#: code:addons/mail/mail_message.py:737 +#, python-format +msgid "Access Denied" +msgstr "Từ chối truy cập" + +#. module: mail +#: help:mail.group,image_medium:0 +msgid "" +"Medium-sized photo of the group. It is automatically resized as a 128x128px " +"image, with aspect ratio preserved. Use this field in form views or some " +"kanban views." +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:212 +#, python-format +msgid "Uploading error" +msgstr "Lỗi tải lên" + +#. module: mail +#: model:mail.group,name:mail.group_support +msgid "Support" +msgstr "Hỗ trợ" + +#. module: mail +#: code:addons/mail/mail_message.py:738 +#, python-format +msgid "" +"The requested operation cannot be completed due to security restrictions. " +"Please contact your system administrator.\n" +"\n" +"(Document type: %s, Operation: %s)" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +#: selection:mail.mail,state:0 +msgid "Received" +msgstr "Đã nhận" + +#. module: mail +#: view:mail.mail:0 +msgid "Thread" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:29 +#, python-format +msgid "Open the full mail composer" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:29 +#, python-format +msgid "ò" +msgstr "" + +#. module: mail +#: field:base.config.settings,alias_domain:0 +msgid "Alias Domain" +msgstr "" + +#. module: mail +#: field:mail.group,group_ids:0 +msgid "Auto Subscription" +msgstr "" + +#. module: mail +#: field:mail.mail,references:0 +msgid "References" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:206 +#, python-format +msgid "No messages." +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_group +msgid "Discussion group" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:96 +#: code:addons/mail/static/src/xml/mail.xml:108 +#, python-format +msgid "uploading" +msgstr "đang tải lên" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail_followers.xml:52 +#, python-format +msgid "more." +msgstr "thêm nữa." + +#. module: mail +#: help:mail.compose.message,type:0 +#: help:mail.message,type:0 +msgid "" +"Message type: email for email message, notification for system message, " +"comment for other messages such as user replies" +msgstr "" + +#. module: mail +#: help:mail.message.subtype,relation_field:0 +msgid "" +"Field used to link the related model to the subtype model when using " +"automatic subscription on a related document. The field is used to compute " +"getattr(related_document.relation_field)." +msgstr "" + +#. module: mail +#: selection:mail.mail,state:0 +msgid "Cancelled" +msgstr "Đã hủy" + +#. module: mail +#: field:mail.mail,reply_to:0 +msgid "Reply-To" +msgstr "" + +#. module: mail +#: code:addons/mail/wizard/invite.py:37 +#, python-format +msgid "
You have been invited to follow %s.
" +msgstr "" + +#. module: mail +#: help:mail.group,message_unread:0 +#: help:mail.thread,message_unread:0 +#: help:res.partner,message_unread:0 +msgid "If checked new messages require your attention." +msgstr "" + +#. module: mail +#: field:mail.group,image_medium:0 +msgid "Medium-sized photo" +msgstr "Ảnh cỡ trung" + +#. module: mail +#: model:ir.actions.client,name:mail.action_mail_to_me_feeds +#: model:ir.ui.menu,name:mail.mail_tomefeeds +msgid "To: me" +msgstr "" + +#. module: mail +#: field:mail.message.subtype,name:0 +msgid "Message Type" +msgstr "" + +#. module: mail +#: field:mail.mail,auto_delete:0 +msgid "Auto Delete" +msgstr "Tự động xóa" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail_followers.xml:12 +#: view:mail.group:0 +#, python-format +msgid "Unfollow" +msgstr "Hủy theo dõi" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:312 +#, python-format +msgid "show one more message" +msgstr "hiện theo một tin nữa" + +#. module: mail +#: code:addons/mail/mail_mail.py:75 +#: code:addons/mail/res_users.py:69 +#, python-format +msgid "Invalid Action!" +msgstr "Hành động không hợp lệ!" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:25 +#, python-format +msgid "User img" +msgstr "" + +#. module: mail +#: model:ir.actions.act_window,name:mail.action_view_mail_mail +#: model:ir.ui.menu,name:mail.menu_mail_mail +#: view:mail.mail:0 +#: view:mail.message:0 +msgid "Emails" +msgstr "" + +#. module: mail +#: field:mail.followers,partner_id:0 +msgid "Related Partner" +msgstr "Đối tác liên quan" + +#. module: mail +#: help:mail.group,message_summary:0 +#: help:mail.thread,message_summary:0 +#: help:res.partner,message_summary:0 +msgid "" +"Holds the Chatter summary (number of messages, ...). This summary is " +"directly in html format in order to be inserted in kanban views." +msgstr "" + +#. module: mail +#: help:mail.alias,alias_model_id:0 +msgid "" +"The model (OpenERP Document Kind) to which this alias corresponds. Any " +"incoming email that does not reply to an existing record will cause the " +"creation of a new record of this model (e.g. a Project Task)" +msgstr "" + +#. module: mail +#: field:mail.message.subtype,relation_field:0 +msgid "Relation field" +msgstr "" + +#. module: mail +#: selection:mail.compose.message,type:0 +#: selection:mail.message,type:0 +msgid "System notification" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_res_partner +msgid "Partner" +msgstr "Đối tác" + +#. module: mail +#: model:ir.ui.menu,name:mail.mail_my_stuff +msgid "Organizer" +msgstr "Tổ chức" + +#. module: mail +#: field:mail.compose.message,subject:0 +#: field:mail.message,subject:0 +msgid "Subject" +msgstr "Chủ đề" + +#. module: mail +#: field:mail.wizard.invite,partner_ids:0 +msgid "Partners" +msgstr "Các đối tác" + +#. module: mail +#: view:mail.mail:0 +msgid "Retry" +msgstr "Thử lại" + +#. module: mail +#: field:mail.compose.message,email_from:0 +#: field:mail.mail,email_from:0 +#: field:mail.message,email_from:0 +msgid "From" +msgstr "Từ" + +#. module: mail +#: view:mail.mail:0 +#: view:mail.message.subtype:0 +msgid "Email message" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_base_config_settings +msgid "base.config.settings" +msgstr "base.config.settings" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:36 +#: view:mail.compose.message:0 +#, python-format +msgid "Send" +msgstr "Gửi" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/js/mail_followers.js:153 +#, python-format +msgid "No followers" +msgstr "Không có theo dõi" + +#. module: mail +#: view:mail.mail:0 +msgid "Failed" +msgstr "Thất bại" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail_followers.xml:22 +#: model:ir.actions.act_window,name:mail.action_view_followers +#: model:ir.ui.menu,name:mail.menu_email_followers +#: view:mail.followers:0 +#: field:mail.group,message_follower_ids:0 +#: field:mail.thread,message_follower_ids:0 +#: field:res.partner,message_follower_ids:0 +#, python-format +msgid "Followers" +msgstr "Người theo dõi" + +#. module: mail +#: model:ir.actions.client,name:mail.action_mail_archives_feeds +#: model:ir.ui.menu,name:mail.mail_archivesfeeds +msgid "Archives" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:95 +#: code:addons/mail/static/src/xml/mail.xml:107 +#, python-format +msgid "Delete this attachment" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:245 +#: view:mail.mail:0 +#, python-format +msgid "Reply" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/js/mail_followers.js:155 +#, python-format +msgid "One follower" +msgstr "" + +#. module: mail +#: field:mail.compose.message,type:0 +#: field:mail.message,type:0 +msgid "Type" +msgstr "" + +#. module: mail +#: selection:mail.compose.message,type:0 +#: view:mail.mail:0 +#: selection:mail.message,type:0 +msgid "Email" +msgstr "" + +#. module: mail +#: field:ir.ui.menu,mail_group_id:0 +msgid "Mail Group" +msgstr "" + +#. module: mail +#: selection:res.partner,notification_email_send:0 +msgid "Comments and Emails" +msgstr "" + +#. module: mail +#: field:mail.alias,alias_defaults:0 +msgid "Default Values" +msgstr "" + +#. module: mail +#: code:addons/mail/res_users.py:89 +#, python-format +msgid "%s has joined the %s network." +msgstr "" + +#. module: mail +#: help:mail.group,image_small:0 +msgid "" +"Small-sized photo of the group. It is automatically resized as a 64x64px " +"image, with aspect ratio preserved. Use this field anywhere a small image is " +"required." +msgstr "" + +#. module: mail +#: view:mail.compose.message:0 +#: field:mail.message,partner_ids:0 +msgid "Recipients" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:140 +#, python-format +msgid "<<<" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:43 +#, python-format +msgid "Write to the followers of this document..." +msgstr "" + +#. module: mail +#: field:mail.group,group_public_id:0 +msgid "Authorized Group" +msgstr "" + +#. module: mail +#: view:mail.group:0 +msgid "Join Group" +msgstr "" + +#. module: mail +#: help:mail.mail,email_from:0 +msgid "Message sender, taken from user preferences." +msgstr "" + +#. module: mail +#: code:addons/mail/wizard/invite.py:40 +#, python-format +msgid "
You have been invited to follow a new document.
" +msgstr "" + +#. module: mail +#: field:mail.compose.message,parent_id:0 +#: field:mail.message,parent_id:0 +msgid "Parent Message" +msgstr "" + +#. module: mail +#: field:mail.compose.message,res_id:0 +#: field:mail.followers,res_id:0 +#: field:mail.message,res_id:0 +#: field:mail.wizard.invite,res_id:0 +msgid "Related Document ID" +msgstr "ID tài liệu liên quan" + +#. module: mail +#: model:ir.actions.client,help:mail.action_mail_to_me_feeds +msgid "" +"

\n" +" No private message.\n" +"

\n" +" This list contains messages sent to you.\n" +"

\n" +" " +msgstr "" + +#. module: mail +#: model:mail.group,name:mail.group_rd +msgid "R&D" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:61 +#, python-format +msgid "/web/binary/upload_attachment" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_thread +msgid "Email Thread" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "Advanced" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:244 +#, python-format +msgid "Move to Inbox" +msgstr "" + +#. module: mail +#: code:addons/mail/wizard/mail_compose_message.py:193 +#, python-format +msgid "Re:" +msgstr "" + +#. module: mail +#: field:mail.compose.message,to_read:0 +#: field:mail.message,to_read:0 +msgid "To read" +msgstr "" + +#. module: mail +#: code:addons/mail/res_users.py:69 +#, python-format +msgid "" +"You may not create a user. To create new users, you should use the " +"\"Settings > Users\" menu." +msgstr "" + +#. module: mail +#: help:mail.followers,res_model:0 +#: help:mail.wizard.invite,res_model:0 +msgid "Model of the followed resource" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:337 +#, python-format +msgid "like" +msgstr "" + +#. module: mail +#: view:mail.compose.message:0 +#: view:mail.wizard.invite:0 +msgid "Cancel" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:47 +#, python-format +msgid "Share with my followers..." +msgstr "" + +#. module: mail +#: field:mail.notification,partner_id:0 +msgid "Contact" +msgstr "" + +#. module: mail +#: view:mail.group:0 +msgid "" +"Only the invited followers can read the\n" +" discussions on this group." +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_ir_ui_menu +msgid "ir.ui.menu" +msgstr "" + +#. module: mail +#: view:mail.message:0 +msgid "Has attachments" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "on" +msgstr "" + +#. module: mail +#: code:addons/mail/mail_message.py:926 +#, python-format +msgid "" +"The following partners chosen as recipients for the email have no email " +"address linked :" +msgstr "" + +#. module: mail +#: help:mail.alias,alias_defaults:0 +msgid "" +"A Python dictionary that will be evaluated to provide default values when " +"creating new records for this alias." +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_message_subtype +msgid "Message subtypes" +msgstr "" + +#. module: mail +#: help:mail.compose.message,notified_partner_ids:0 +#: help:mail.message,notified_partner_ids:0 +msgid "" +"Partners that have a notification pushing this message in their mailboxes" +msgstr "" + +#. module: mail +#: selection:mail.compose.message,type:0 +#: view:mail.mail:0 +#: selection:mail.message,type:0 +msgid "Comment" +msgstr "" + +#. module: mail +#: model:ir.actions.client,help:mail.action_mail_inbox_feeds +msgid "" +"

\n" +" Good Job! Your inbox is empty.\n" +"

\n" +" Your inbox contains private messages or emails sent to " +"you\n" +" as well as information related to documents or people " +"you\n" +" follow.\n" +"

\n" +" " +msgstr "" + +#. module: mail +#: field:mail.mail,notification:0 +msgid "Is Notification" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:188 +#, python-format +msgid "Compose a new message" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "Send Now" +msgstr "" + +#. module: mail +#: code:addons/mail/mail_mail.py:75 +#, python-format +msgid "" +"Unable to send email, please configure the sender's email address or alias." +msgstr "" + +#. module: mail +#: help:res.users,alias_id:0 +msgid "" +"Email address internally associated with this user. Incoming emails will " +"appear in the user's notifications." +msgstr "" + +#. module: mail +#: field:mail.group,image:0 +msgid "Photo" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:54 +#: code:addons/mail/static/src/xml/mail.xml:191 +#: view:mail.compose.message:0 +#: view:mail.wizard.invite:0 +#, python-format +msgid "or" +msgstr "" + +#. module: mail +#: help:mail.compose.message,vote_user_ids:0 +#: help:mail.message,vote_user_ids:0 +msgid "Users that voted for this message" +msgstr "" + +#. module: mail +#: help:mail.group,alias_id:0 +msgid "" +"The email address associated with this group. New emails received will " +"automatically create new topics." +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "Month" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "Email Search" +msgstr "" + +#. module: mail +#: field:mail.compose.message,child_ids:0 +#: field:mail.message,child_ids:0 +msgid "Child Messages" +msgstr "" + +#. module: mail +#: field:mail.alias,alias_user_id:0 +msgid "Owner" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_res_users +msgid "Users" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_message +#: field:mail.mail,mail_message_id:0 +#: view:mail.message:0 +#: field:mail.notification,message_id:0 +#: field:mail.wizard.invite,message:0 +msgid "Message" +msgstr "" + +#. module: mail +#: help:mail.followers,res_id:0 +#: help:mail.wizard.invite,res_id:0 +msgid "Id of the followed resource" +msgstr "" + +#. module: mail +#: field:mail.compose.message,body:0 +#: field:mail.message,body:0 +msgid "Contents" +msgstr "" + +#. module: mail +#: model:ir.actions.act_window,name:mail.action_view_mail_alias +#: model:ir.ui.menu,name:mail.mail_alias_menu +msgid "Aliases" +msgstr "" + +#. module: mail +#: help:mail.message.subtype,description:0 +msgid "" +"Description that will be added in the message posted for this subtype. If " +"void, the name will be added instead." +msgstr "" + +#. module: mail +#: field:mail.compose.message,vote_user_ids:0 +#: field:mail.message,vote_user_ids:0 +msgid "Votes" +msgstr "" + +#. module: mail +#: view:mail.group:0 +msgid "Group" +msgstr "" + +#. module: mail +#: help:mail.compose.message,starred:0 +#: help:mail.message,starred:0 +msgid "Current user has a starred notification linked to this message" +msgstr "" + +#. module: mail +#: field:mail.group,public:0 +msgid "Privacy" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "Notification" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/js/mail.js:654 +#, python-format +msgid "Please complete partner's informations" +msgstr "" + +#. module: mail +#: view:mail.wizard.invite:0 +msgid "Add Followers" +msgstr "Thêm theo dõi" + +#. module: mail +#: view:mail.compose.message:0 +msgid "Followers of selected items and" +msgstr "" + +#. module: mail +#: field:mail.alias,alias_force_thread_id:0 +msgid "Record Thread ID" +msgstr "" + +#. module: mail +#: model:ir.ui.menu,name:mail.mail_group_root +msgid "My Groups" +msgstr "" + +#. module: mail +#: model:ir.actions.client,help:mail.action_mail_archives_feeds +msgid "" +"

\n" +" No message found and no message sent yet.\n" +"

\n" +" Click on the top-right icon to compose a message. This\n" +" message will be sent by email if it's an internal " +"contact.\n" +"

\n" +" " +msgstr "" + +#. module: mail +#: view:mail.mail:0 +#: field:mail.mail,state:0 +msgid "Status" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +#: selection:mail.mail,state:0 +msgid "Outgoing" +msgstr "" + +#. module: mail +#: selection:res.partner,notification_email_send:0 +msgid "All feeds" +msgstr "" + +#. module: mail +#: help:mail.compose.message,record_name:0 +#: help:mail.message,record_name:0 +msgid "Name get of the related document." +msgstr "" + +#. module: mail +#: model:ir.actions.act_window,name:mail.action_view_notifications +#: model:ir.model,name:mail.model_mail_notification +#: model:ir.ui.menu,name:mail.menu_email_notifications +#: field:mail.compose.message,notification_ids:0 +#: view:mail.message:0 +#: field:mail.message,notification_ids:0 +#: view:mail.notification:0 +msgid "Notifications" +msgstr "" + +#. module: mail +#: view:mail.alias:0 +msgid "Search Alias" +msgstr "" + +#. module: mail +#: help:mail.alias,alias_force_thread_id:0 +msgid "" +"Optional ID of a thread (record) to which all incoming messages will be " +"attached, even if they did not reply to it. If set, this will disable the " +"creation of new records completely." +msgstr "" + +#. module: mail +#: help:mail.message.subtype,name:0 +msgid "" +"Message subtype gives a more precise type on the message, especially for " +"system notifications. For example, it can be a notification related to a new " +"record (New), or to a stage change in a process (Stage change). Message " +"subtypes allow to precisely tune the notifications the user want to receive " +"on its wall." +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "by" +msgstr "" + +#. module: mail +#: model:mail.group,name:mail.group_best_sales_practices +msgid "Best Sales Practices" +msgstr "" + +#. module: mail +#: selection:mail.group,public:0 +msgid "Selected Group Only" +msgstr "" + +#. module: mail +#: field:mail.group,message_is_follower:0 +#: field:mail.thread,message_is_follower:0 +#: field:res.partner,message_is_follower:0 +msgid "Is a Follower" +msgstr "" + +#. module: mail +#: view:mail.alias:0 +#: view:mail.mail:0 +msgid "User" +msgstr "" + +#. module: mail +#: view:mail.group:0 +msgid "Groups" +msgstr "" + +#. module: mail +#: view:mail.message:0 +msgid "Messages Search" +msgstr "" + +#. module: mail +#: field:mail.compose.message,date:0 +#: field:mail.message,date:0 +msgid "Date" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:34 +#, python-format +msgid "Post" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "Extended Filters..." +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:120 +#, python-format +msgid "To:" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:193 +#, python-format +msgid "Write to my followers" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_res_groups +msgid "Access Groups" +msgstr "" + +#. module: mail +#: field:mail.message.subtype,default:0 +msgid "Default" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:311 +#, python-format +msgid "show more message" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:246 +#, python-format +msgid "Mark as Todo" +msgstr "" + +#. module: mail +#: help:mail.message.subtype,parent_id:0 +msgid "Parent subtype, used for automatic subscription." +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_wizard_invite +msgid "Invite wizard" +msgstr "" + +#. module: mail +#: field:mail.group,message_summary:0 +#: field:mail.thread,message_summary:0 +#: field:res.partner,message_summary:0 +msgid "Summary" +msgstr "" + +#. module: mail +#: help:mail.message.subtype,res_model:0 +msgid "" +"Model the subtype applies to. If False, this subtype applies to all models." +msgstr "" + +#. module: mail +#: field:mail.compose.message,subtype_id:0 +#: field:mail.followers,subtype_ids:0 +#: field:mail.message,subtype_id:0 +#: view:mail.message.subtype:0 +msgid "Subtype" +msgstr "" + +#. module: mail +#: view:mail.group:0 +msgid "Group Form" +msgstr "" + +#. module: mail +#: field:mail.compose.message,starred:0 +#: field:mail.message,starred:0 +#: field:mail.notification,starred:0 +msgid "Starred" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:313 +#, python-format +msgid "more messages" +msgstr "" + +#. module: mail +#: code:addons/mail/update.py:93 +#, python-format +msgid "Error" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail_followers.xml:13 +#, python-format +msgid "Following" +msgstr "" + +#. module: mail +#: sql_constraint:mail.alias:0 +msgid "" +"Unfortunately this email alias is already used, please choose a unique one" +msgstr "" + +#. module: mail +#: help:mail.alias,alias_user_id:0 +msgid "" +"The owner of records created upon receiving emails on this alias. If this " +"field is not set the system will attempt to find the right owner based on " +"the sender (From) address, or will use the Administrator account if no " +"system user is found for that address." +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail_followers.xml:52 +#, python-format +msgid "And" +msgstr "" + +#. module: mail +#: field:mail.compose.message,message_id:0 +#: field:mail.message,message_id:0 +msgid "Message-Id" +msgstr "" + +#. module: mail +#: help:mail.group,image:0 +msgid "" +"This field holds the image used as photo for the group, limited to " +"1024x1024px." +msgstr "" + +#. module: mail +#: field:mail.compose.message,attachment_ids:0 +#: view:mail.mail:0 +#: field:mail.message,attachment_ids:0 +msgid "Attachments" +msgstr "" + +#. module: mail +#: field:mail.compose.message,record_name:0 +#: field:mail.message,record_name:0 +msgid "Message Record Name" +msgstr "" + +#. module: mail +#: field:mail.mail,email_cc:0 +msgid "Cc" +msgstr "" + +#. module: mail +#: help:mail.notification,starred:0 +msgid "Starred message that goes into the todo mailbox" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:123 +#: view:mail.compose.message:0 +#, python-format +msgid "Followers of" +msgstr "" + +#. module: mail +#: help:mail.mail,auto_delete:0 +msgid "Permanently delete this email after sending it, to save space" +msgstr "" + +#. module: mail +#: model:ir.actions.client,name:mail.action_mail_group_feeds +msgid "Discussion Group" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:242 +#, python-format +msgid "Done" +msgstr "" + +#. module: mail +#: model:mail.message.subtype,name:mail.mt_comment +msgid "Discussions" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail_followers.xml:11 +#, python-format +msgid "Follow" +msgstr "" + +#. module: mail +#: field:mail.group,name:0 +msgid "Name" +msgstr "" + +#. module: mail +#: model:mail.group,name:mail.group_all_employees +msgid "Whole Company" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:129 +#: code:addons/mail/static/src/xml/mail.xml:292 +#: view:mail.compose.message:0 +#, python-format +msgid "and" +msgstr "" + +#. module: mail +#: help:mail.mail,body_html:0 +msgid "Rich-text/HTML message" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +msgid "Creation Month" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:323 +#, python-format +msgid "Compose new Message" +msgstr "Soạn tin nhắn mới" + +#. module: mail +#: field:mail.group,menu_id:0 +msgid "Related Menu" +msgstr "" + +#. module: mail +#: view:mail.message:0 +msgid "Content" +msgstr "" + +#. module: mail +#: field:mail.mail,email_to:0 +msgid "To" +msgstr "" + +#. module: mail +#: field:mail.compose.message,notified_partner_ids:0 +#: field:mail.message,notified_partner_ids:0 +msgid "Notified partners" +msgstr "" + +#. module: mail +#: help:mail.group,public:0 +msgid "" +"This group is visible by non members. Invisible groups can add " +"members through the invite button." +msgstr "" + +#. module: mail +#: model:mail.group,name:mail.group_board +msgid "Board meetings" +msgstr "" + +#. module: mail +#: constraint:mail.alias:0 +msgid "" +"Invalid expression, it must be a literal python dictionary definition e.g. " +"\"{'field': 'value'}\"" +msgstr "" + +#. module: mail +#: field:mail.alias,alias_model_id:0 +msgid "Aliased Model" +msgstr "" + +#. module: mail +#: help:mail.compose.message,message_id:0 +#: help:mail.message,message_id:0 +msgid "Message unique identifier" +msgstr "" + +#. module: mail +#: field:mail.group,description:0 +#: field:mail.message.subtype,description:0 +msgid "Description" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_followers +msgid "Document Followers" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail_followers.xml:35 +#, python-format +msgid "Remove this follower" +msgstr "" + +#. module: mail +#: selection:res.partner,notification_email_send:0 +msgid "Never" +msgstr "" + +#. module: mail +#: field:mail.mail,mail_server_id:0 +msgid "Outgoing mail server" +msgstr "" + +#. module: mail +#: code:addons/mail/mail_message.py:930 +#, python-format +msgid "Partners email addresses not found" +msgstr "" + +#. module: mail +#: view:mail.mail:0 +#: selection:mail.mail,state:0 +msgid "Sent" +msgstr "" + +#. module: mail +#: field:mail.mail,body_html:0 +msgid "Rich-text Contents" +msgstr "" + +#. module: mail +#: help:mail.compose.message,to_read:0 +#: help:mail.message,to_read:0 +msgid "Current user has an unread notification linked to this message" +msgstr "" + +#. module: mail +#: help:res.partner,notification_email_send:0 +msgid "" +"Choose in which case you want to receive an email when you receive new feeds." +msgstr "" + +#. module: mail +#: model:ir.actions.act_window,name:mail.action_view_groups +#: model:ir.ui.menu,name:mail.mail_allgroups +msgid "Join a group" +msgstr "" + +#. module: mail +#: model:ir.actions.client,help:mail.action_mail_group_feeds +msgid "" +"

\n" +" No message in this group.\n" +"

\n" +" " +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:213 +#, python-format +msgid "Please, wait while the file is uploading." +msgstr "" + +#. module: mail +#: view:mail.group:0 +msgid "" +"This group is visible by everyone,\n" +" including your customers if you " +"installed\n" +" the portal module." +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:243 +#, python-format +msgid "Set back to Todo" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:126 +#, python-format +msgid "this document" +msgstr "" + +#. module: mail +#: field:mail.compose.message,filter_id:0 +msgid "Filters" +msgstr "Các bộ lọc" + +#. module: mail +#: field:res.partner,notification_email_send:0 +msgid "Receive Feeds by Email" +msgstr "" + +#. module: mail +#: help:base.config.settings,alias_domain:0 +msgid "" +"If you have setup a catch-all email domain redirected to the OpenERP server, " +"enter the domain name here." +msgstr "" + +#. module: mail +#: model:ir.actions.act_window,name:mail.action_view_mail_message +#: model:ir.ui.menu,name:mail.menu_mail_message +#: field:mail.group,message_ids:0 +#: view:mail.message:0 +#: field:mail.thread,message_ids:0 +#: field:res.partner,message_ids:0 +msgid "Messages" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:139 +#, python-format +msgid "others..." +msgstr "" + +#. module: mail +#: model:ir.actions.client,name:mail.action_mail_star_feeds +#: model:ir.ui.menu,name:mail.mail_starfeeds +msgid "To-do" +msgstr "" + +#. module: mail +#: view:mail.alias:0 +#: field:mail.alias,alias_name:0 +#: field:mail.group,alias_id:0 +#: field:res.users,alias_id:0 +msgid "Alias" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_mail +msgid "Outgoing Mails" +msgstr "" + +#. module: mail +#: help:mail.compose.message,notification_ids:0 +#: help:mail.message,notification_ids:0 +msgid "" +"Technical field holding the message notifications. Use notified_partner_ids " +"to access notified partners." +msgstr "" + +#. module: mail +#: model:ir.ui.menu,name:mail.mail_feeds +#: model:ir.ui.menu,name:mail.mail_feeds_main +msgid "Messaging" +msgstr "" + +#. module: mail +#: view:mail.alias:0 +#: field:mail.message.subtype,res_model:0 +msgid "Model" +msgstr "" + +#. module: mail +#: view:mail.message:0 +msgid "Unread" +msgstr "" + +#. module: mail +#: help:mail.followers,subtype_ids:0 +msgid "" +"Message subtypes followed, meaning subtypes that will be pushed onto the " +"user's Wall." +msgstr "" + +#. module: mail +#: help:mail.group,message_ids:0 +#: help:mail.thread,message_ids:0 +#: help:res.partner,message_ids:0 +msgid "Messages and communication history" +msgstr "" + +#. module: mail +#: help:mail.mail,references:0 +msgid "Message references, such as identifiers of previous messages" +msgstr "" + +#. module: mail +#: field:mail.compose.message,composition_mode:0 +msgid "Composition mode" +msgstr "" + +#. module: mail +#: field:mail.compose.message,model:0 +#: field:mail.followers,res_model:0 +#: field:mail.message,model:0 +#: field:mail.wizard.invite,res_model:0 +msgid "Related Document Model" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:338 +#, python-format +msgid "unlike" +msgstr "" + +#. module: mail +#: help:mail.compose.message,author_id:0 +#: help:mail.message,author_id:0 +msgid "" +"Author of the message. If not set, email_from may hold an email address that " +"did not match any partner." +msgstr "" + +#. module: mail +#: help:mail.mail,email_cc:0 +msgid "Carbon copy message recipients" +msgstr "" + +#. module: mail +#: field:mail.alias,alias_domain:0 +msgid "Alias domain" +msgstr "" + +#. module: mail +#: code:addons/mail/update.py:93 +#, python-format +msgid "Error during communication with the publisher warranty server." +msgstr "" + +#. module: mail +#: selection:mail.group,public:0 +msgid "Private" +msgstr "" + +#. module: mail +#: model:ir.actions.client,help:mail.action_mail_star_feeds +msgid "" +"

\n" +" No todo.\n" +"

\n" +" When you process messages in your inbox, you can mark " +"some\n" +" as todo. From this menu, you can process all your " +"todo.\n" +"

\n" +" " +msgstr "" + +#. module: mail +#: selection:mail.mail,state:0 +msgid "Delivery Failed" +msgstr "" + +#. module: mail +#: field:mail.compose.message,partner_ids:0 +msgid "Additional contacts" +msgstr "" + +#. module: mail +#: help:mail.compose.message,parent_id:0 +#: help:mail.message,parent_id:0 +msgid "Initial thread message." +msgstr "" + +#. module: mail +#: model:mail.group,name:mail.group_hr_policies +msgid "HR Policies" +msgstr "" + +#. module: mail +#: selection:res.partner,notification_email_send:0 +msgid "Emails only" +msgstr "" + +#. module: mail +#: model:ir.actions.client,name:mail.action_mail_inbox_feeds +#: model:ir.ui.menu,name:mail.mail_inboxfeeds +msgid "Inbox" +msgstr "Hộp thư đến" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/xml/mail.xml:58 +#, python-format +msgid "File" +msgstr "" + +#. module: mail +#. openerp-web +#: code:addons/mail/static/src/js/many2many_tags_email.js:63 +#, python-format +msgid "Please complete partner's informations and Email" +msgstr "" + +#. module: mail +#: model:ir.actions.act_window,name:mail.action_view_message_subtype +#: model:ir.ui.menu,name:mail.menu_message_subtype +msgid "Subtypes" +msgstr "" + +#. module: mail +#: model:ir.model,name:mail.model_mail_alias +msgid "Email Aliases" +msgstr "" + +#. module: mail +#: field:mail.group,image_small:0 +msgid "Small-sized photo" +msgstr "Ảnh cỡ nhỏ" + +#. module: mail +#: help:mail.mail,reply_to:0 +msgid "Preferred response address for the message" +msgstr "" diff --git a/addons/mail/mail_mail.py b/addons/mail/mail_mail.py index d9e00353d49..d45ae04ddd1 100644 --- a/addons/mail/mail_mail.py +++ b/addons/mail/mail_mail.py @@ -176,7 +176,7 @@ class mail_mail(osv.Model): if context is None: context = {} if not ids: - filters = ['&', ('state', '=', 'outgoing'), ('type', '=', 'email')] + filters = [('state', '=', 'outgoing')] if 'filters' in context: filters.extend(context['filters']) ids = self.search(cr, uid, filters, context=context) diff --git a/addons/mail/mail_thread.py b/addons/mail/mail_thread.py index 7181e52e9b6..2744e6df231 100644 --- a/addons/mail/mail_thread.py +++ b/addons/mail/mail_thread.py @@ -312,7 +312,12 @@ class mail_thread(osv.AbstractModel): # subscribe uid unless asked not to if not context.get('mail_create_nosubscribe'): self.message_subscribe_users(cr, uid, [thread_id], [uid], context=context) - self.message_auto_subscribe(cr, uid, [thread_id], values.keys(), context=context) + # auto_subscribe: take values and defaults into account + create_values = set(values.keys()) + for key, val in context.iteritems(): + if key.startswith('default_'): + create_values.add(key[8:]) + self.message_auto_subscribe(cr, uid, [thread_id], list(create_values), context=context) # track values tracked_fields = self._get_tracked_fields(cr, uid, values.keys(), context=context) @@ -388,7 +393,6 @@ class mail_thread(osv.AbstractModel): if not value: return '' if col_info['type'] == 'many2one': - # return value[1] return value.name_get()[0][1] if col_info['type'] == 'selection': return dict(col_info['selection'])[value] @@ -409,24 +413,25 @@ class mail_thread(osv.AbstractModel): return True for browse_record in self.browse(cr, uid, ids, context=context): - record = dict((key, getattr(browse_record, key)) for key in tracked_fields.keys()) - record['id'] = browse_record.id - initial = initial_values[record['id']] - changes = [] + initial = initial_values[browse_record.id] + changes = set() tracked_values = {} # generate tracked_values data structure: {'col_name': {col_info, new_value, old_value}} for col_name, col_info in tracked_fields.items(): - if record[col_name] == initial[col_name] and getattr(self._all_columns[col_name].column, 'track_visibility', None) == 'always': + initial_value = initial[col_name] + record_value = getattr(browse_record, col_name) + + if record_value == initial_value and getattr(self._all_columns[col_name].column, 'track_visibility', None) == 'always': tracked_values[col_name] = dict(col_info=col_info['string'], - new_value=convert_for_display(record[col_name], col_info)) - elif record[col_name] != initial[col_name]: + new_value=convert_for_display(record_value, col_info)) + elif record_value != initial_value and (record_value or initial_value): # because browse null != False if getattr(self._all_columns[col_name].column, 'track_visibility', None) in ['always', 'onchange']: tracked_values[col_name] = dict(col_info=col_info['string'], - old_value=convert_for_display(initial[col_name], col_info), - new_value=convert_for_display(record[col_name], col_info)) + old_value=convert_for_display(initial_value, col_info), + new_value=convert_for_display(record_value, col_info)) if col_name in tracked_fields: - changes.append(col_name) + changes.add(col_name) if not changes: continue @@ -447,11 +452,11 @@ class mail_thread(osv.AbstractModel): _logger.debug('subtype %s not found, giving error "%s"' % (subtype, e)) continue message = format_message(subtype_rec.description if subtype_rec.description else subtype_rec.name, tracked_values) - self.message_post(cr, uid, record['id'], body=message, subtype=subtype, context=context) + self.message_post(cr, uid, browse_record.id, body=message, subtype=subtype, context=context) posted = True if not posted: message = format_message('', tracked_values) - self.message_post(cr, uid, record['id'], body=message, context=context) + self.message_post(cr, uid, browse_record.id, body=message, context=context) return True #------------------------------------------------------ @@ -1436,7 +1441,7 @@ class mail_thread(osv.AbstractModel): ], context=context) mail_followers_obj.write(cr, SUPERUSER_ID, fol_ids, {'subtype_ids': [(6, 0, subtype_ids)]}, context=context) # subtype_ids not specified: do not update already subscribed partner, fetch default subtypes for new partners - else: + elif subtype_ids is None: subtype_ids = subtype_obj.search(cr, uid, [ ('default', '=', True), '|', diff --git a/addons/mail/static/src/img/icon.png b/addons/mail/static/description/icon.png similarity index 100% rename from addons/mail/static/src/img/icon.png rename to addons/mail/static/description/icon.png diff --git a/addons/mail/html/index.html b/addons/mail/static/description/index.html similarity index 100% rename from addons/mail/html/index.html rename to addons/mail/static/description/index.html diff --git a/addons/mail/html/mail_illustration.png b/addons/mail/static/description/mail_illustration.png similarity index 100% rename from addons/mail/html/mail_illustration.png rename to addons/mail/static/description/mail_illustration.png diff --git a/addons/mail/html/mail_sc_00.png b/addons/mail/static/description/mail_sc_00.png similarity index 100% rename from addons/mail/html/mail_sc_00.png rename to addons/mail/static/description/mail_sc_00.png diff --git a/addons/mail/html/mail_sc_01.png b/addons/mail/static/description/mail_sc_01.png similarity index 100% rename from addons/mail/html/mail_sc_01.png rename to addons/mail/static/description/mail_sc_01.png diff --git a/addons/mail/html/mail_sc_02.png b/addons/mail/static/description/mail_sc_02.png similarity index 100% rename from addons/mail/html/mail_sc_02.png rename to addons/mail/static/description/mail_sc_02.png diff --git a/addons/mail/html/mail_sc_03.png b/addons/mail/static/description/mail_sc_03.png similarity index 100% rename from addons/mail/html/mail_sc_03.png rename to addons/mail/static/description/mail_sc_03.png diff --git a/addons/mail/html/mail_sc_04.png b/addons/mail/static/description/mail_sc_04.png similarity index 100% rename from addons/mail/html/mail_sc_04.png rename to addons/mail/static/description/mail_sc_04.png diff --git a/addons/mail/html/mail_sc_05.png b/addons/mail/static/description/mail_sc_05.png similarity index 100% rename from addons/mail/html/mail_sc_05.png rename to addons/mail/static/description/mail_sc_05.png diff --git a/addons/mail/html/mail_sc_06.png b/addons/mail/static/description/mail_sc_06.png similarity index 100% rename from addons/mail/html/mail_sc_06.png rename to addons/mail/static/description/mail_sc_06.png diff --git a/addons/mail/html/mail_sc_07.png b/addons/mail/static/description/mail_sc_07.png similarity index 100% rename from addons/mail/html/mail_sc_07.png rename to addons/mail/static/description/mail_sc_07.png diff --git a/addons/mail/html/photo.png b/addons/mail/static/description/photo.png similarity index 100% rename from addons/mail/html/photo.png rename to addons/mail/static/description/photo.png diff --git a/addons/mail/tests/test_mail_features.py b/addons/mail/tests/test_mail_features.py index 3d914dd7e1d..148b5faba87 100644 --- a/addons/mail/tests/test_mail_features.py +++ b/addons/mail/tests/test_mail_features.py @@ -739,6 +739,8 @@ class test_mail(TestMailBase): self.ir_model_data.create(cr, uid, {'name': 'mt_private', 'model': 'mail.message.subtype', 'module': 'mail', 'res_id': mt_private_id}) mt_name_supername_id = self.mail_message_subtype.create(cr, uid, {'name': 'name_supername', 'description': 'Supername name'}) self.ir_model_data.create(cr, uid, {'name': 'mt_name_supername', 'model': 'mail.message.subtype', 'module': 'mail', 'res_id': mt_name_supername_id}) + mt_group_public_set_id = self.mail_message_subtype.create(cr, uid, {'name': 'group_public_set', 'description': 'Group set'}) + self.ir_model_data.create(cr, uid, {'name': 'mt_group_public_set', 'model': 'mail.message.subtype', 'module': 'mail', 'res_id': mt_group_public_set_id}) mt_group_public_id = self.mail_message_subtype.create(cr, uid, {'name': 'group_public', 'description': 'Group changed'}) self.ir_model_data.create(cr, uid, {'name': 'mt_group_public', 'model': 'mail.message.subtype', 'module': 'mail', 'res_id': mt_group_public_id}) @@ -751,6 +753,7 @@ class test_mail(TestMailBase): 'mail.mt_name_supername': lambda self, cr, uid, obj, ctx=None: obj.name == 'supername', }, 'group_public_id': { + 'mail.mt_group_public_set': lambda self, cr, uid, obj, ctx=None: obj.group_public_id, 'mail.mt_group_public': lambda self, cr, uid, obj, ctx=None: True, }, } @@ -787,21 +790,37 @@ class test_mail(TestMailBase): self.assertIn(u'Public\u2192Private', _strip_string_spaces(last_msg.body), 'tracked: message body incorrect') self.assertIn(u'Pigs\u2192supername', _strip_string_spaces(last_msg.body), 'tracked feature: message body does not hold always tracked field') - # Test: change public as public, group_public_id -> 1 subtype, name always tracked + # Test: change public as public, group_public_id -> 2 subtypes, name always tracked self.mail_group.write(cr, self.user_raoul_id, [self.group_pigs_id], {'public': 'public', 'group_public_id': group_system_id}) self.group_pigs.refresh() - self.assertEqual(len(self.group_pigs.message_ids), 4, 'tracked: one message should have been produced') - # Test: first produced message: mt_group_public_id, with name always tracked, public tracked on change + self.assertEqual(len(self.group_pigs.message_ids), 5, 'tracked: one message should have been produced') + # Test: first produced message: mt_group_public_set_id, with name always tracked, public tracked on change last_msg = self.group_pigs.message_ids[-4] - self.assertEqual(last_msg.subtype_id.id, mt_group_public_id, 'tracked: message should not be linked to any subtype') + self.assertEqual(last_msg.subtype_id.id, mt_group_public_set_id, 'tracked: message should be linked to mt_group_public_set_id') + self.assertIn('Group set', last_msg.body, 'tracked: message body does not hold the subtype description') + self.assertIn(u'Private\u2192Public', _strip_string_spaces(last_msg.body), 'tracked: message body does not hold changed tracked field') + self.assertIn(u'HumanResources/Employee\u2192Administration/Settings', _strip_string_spaces(last_msg.body), 'tracked: message body does not hold always tracked field') + # Test: second produced message: mt_group_public_id, with name always tracked, public tracked on change + last_msg = self.group_pigs.message_ids[-5] + self.assertEqual(last_msg.subtype_id.id, mt_group_public_id, 'tracked: message should be linked to mt_group_public_id') self.assertIn('Group changed', last_msg.body, 'tracked: message body does not hold the subtype description') self.assertIn(u'Private\u2192Public', _strip_string_spaces(last_msg.body), 'tracked: message body does not hold changed tracked field') self.assertIn(u'HumanResources/Employee\u2192Administration/Settings', _strip_string_spaces(last_msg.body), 'tracked: message body does not hold always tracked field') + # Test: change group_public_id to False -> 1 subtype, name always tracked + self.mail_group.write(cr, self.user_raoul_id, [self.group_pigs_id], {'group_public_id': False}) + self.group_pigs.refresh() + self.assertEqual(len(self.group_pigs.message_ids), 6, 'tracked: one message should have been produced') + # Test: first produced message: mt_group_public_set_id, with name always tracked, public tracked on change + last_msg = self.group_pigs.message_ids[-6] + self.assertEqual(last_msg.subtype_id.id, mt_group_public_id, 'tracked: message should be linked to mt_group_public_id') + self.assertIn('Group changed', last_msg.body, 'tracked: message body does not hold the subtype description') + self.assertIn(u'Administration/Settings\u2192', _strip_string_spaces(last_msg.body), 'tracked: message body does not hold always tracked field') + # Test: change not tracked field, no tracking message self.mail_group.write(cr, self.user_raoul_id, [self.group_pigs_id], {'description': 'Dummy'}) self.group_pigs.refresh() - self.assertEqual(len(self.group_pigs.message_ids), 4, 'tracked: No message should have been produced') + self.assertEqual(len(self.group_pigs.message_ids), 6, 'tracked: No message should have been produced') # Data: removed changes public_col.track_visibility = None diff --git a/addons/mrp/html/coppernic.png b/addons/mrp/static/description/coppernic.png similarity index 100% rename from addons/mrp/html/coppernic.png rename to addons/mrp/static/description/coppernic.png diff --git a/addons/mrp/static/src/img/icon.png b/addons/mrp/static/description/icon.png similarity index 100% rename from addons/mrp/static/src/img/icon.png rename to addons/mrp/static/description/icon.png diff --git a/addons/mrp/html/index.html b/addons/mrp/static/description/index.html similarity index 100% rename from addons/mrp/html/index.html rename to addons/mrp/static/description/index.html diff --git a/addons/mrp/html/manufacturing_illu_01.png b/addons/mrp/static/description/manufacturing_illu_01.png similarity index 100% rename from addons/mrp/html/manufacturing_illu_01.png rename to addons/mrp/static/description/manufacturing_illu_01.png diff --git a/addons/mrp/html/manufacturing_illu_02.png b/addons/mrp/static/description/manufacturing_illu_02.png similarity index 100% rename from addons/mrp/html/manufacturing_illu_02.png rename to addons/mrp/static/description/manufacturing_illu_02.png diff --git a/addons/mrp/html/mrp_bom.png b/addons/mrp/static/description/mrp_bom.png similarity index 100% rename from addons/mrp/html/mrp_bom.png rename to addons/mrp/static/description/mrp_bom.png diff --git a/addons/mrp/html/mrp_calendar.png b/addons/mrp/static/description/mrp_calendar.png similarity index 100% rename from addons/mrp/html/mrp_calendar.png rename to addons/mrp/static/description/mrp_calendar.png diff --git a/addons/mrp/html/mrp_gantt.png b/addons/mrp/static/description/mrp_gantt.png similarity index 100% rename from addons/mrp/html/mrp_gantt.png rename to addons/mrp/static/description/mrp_gantt.png diff --git a/addons/mrp/html/mrp_integrate.png b/addons/mrp/static/description/mrp_integrate.png similarity index 100% rename from addons/mrp/html/mrp_integrate.png rename to addons/mrp/static/description/mrp_integrate.png diff --git a/addons/mrp/html/mrp_list.png b/addons/mrp/static/description/mrp_list.png similarity index 100% rename from addons/mrp/html/mrp_list.png rename to addons/mrp/static/description/mrp_list.png diff --git a/addons/mrp/html/mrp_mo.png b/addons/mrp/static/description/mrp_mo.png similarity index 100% rename from addons/mrp/html/mrp_mo.png rename to addons/mrp/static/description/mrp_mo.png diff --git a/addons/mrp/html/mrp_product.png b/addons/mrp/static/description/mrp_product.png similarity index 100% rename from addons/mrp/html/mrp_product.png rename to addons/mrp/static/description/mrp_product.png diff --git a/addons/note/static/src/img/icon.png b/addons/note/static/description/icon.png similarity index 100% rename from addons/note/static/src/img/icon.png rename to addons/note/static/description/icon.png diff --git a/addons/note/html/index.html b/addons/note/static/description/index.html similarity index 100% rename from addons/note/html/index.html rename to addons/note/static/description/index.html diff --git a/addons/note/html/notes_illu_01.png b/addons/note/static/description/notes_illu_01.png similarity index 100% rename from addons/note/html/notes_illu_01.png rename to addons/note/static/description/notes_illu_01.png diff --git a/addons/note/html/notes_sc_00.png b/addons/note/static/description/notes_sc_00.png similarity index 100% rename from addons/note/html/notes_sc_00.png rename to addons/note/static/description/notes_sc_00.png diff --git a/addons/note/html/notes_sc_01.png b/addons/note/static/description/notes_sc_01.png similarity index 100% rename from addons/note/html/notes_sc_01.png rename to addons/note/static/description/notes_sc_01.png diff --git a/addons/note/html/notes_sc_02.png b/addons/note/static/description/notes_sc_02.png similarity index 100% rename from addons/note/html/notes_sc_02.png rename to addons/note/static/description/notes_sc_02.png diff --git a/addons/note/html/notes_sc_03.png b/addons/note/static/description/notes_sc_03.png similarity index 100% rename from addons/note/html/notes_sc_03.png rename to addons/note/static/description/notes_sc_03.png diff --git a/addons/note_pad/i18n/vi.po b/addons/note_pad/i18n/vi.po new file mode 100644 index 00000000000..76bed331d8a --- /dev/null +++ b/addons/note_pad/i18n/vi.po @@ -0,0 +1,28 @@ +# Vietnamese translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-12-21 17:05+0000\n" +"PO-Revision-Date: 2013-06-27 16:48+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Vietnamese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-06-28 05:42+0000\n" +"X-Generator: Launchpad (build 16681)\n" + +#. module: note_pad +#: model:ir.model,name:note_pad.model_note_note +msgid "Note" +msgstr "Ghi chú" + +#. module: note_pad +#: field:note.note,note_pad_url:0 +msgid "Pad Url" +msgstr "Đường dẫn Pad" diff --git a/addons/point_of_sale/point_of_sale.py b/addons/point_of_sale/point_of_sale.py index 370aa2e55ff..126b4b40a07 100644 --- a/addons/point_of_sale/point_of_sale.py +++ b/addons/point_of_sale/point_of_sale.py @@ -975,11 +975,11 @@ class pos_order(osv.osv): }) if data_type == 'product': - key = ('product', values['partner_id'], values['product_id']) + key = ('product', values['partner_id'], values['product_id'], values['debit'] > 0) elif data_type == 'tax': - key = ('tax', values['partner_id'], values['tax_code_id'],) + key = ('tax', values['partner_id'], values['tax_code_id'], values['debit'] > 0) elif data_type == 'counter_part': - key = ('counter_part', values['partner_id'], values['account_id']) + key = ('counter_part', values['partner_id'], values['account_id'], values['debit'] > 0) else: return diff --git a/addons/point_of_sale/static/src/img/icon.png b/addons/point_of_sale/static/description/icon.png similarity index 100% rename from addons/point_of_sale/static/src/img/icon.png rename to addons/point_of_sale/static/description/icon.png diff --git a/addons/point_of_sale/html/index.html b/addons/point_of_sale/static/description/index.html similarity index 100% rename from addons/point_of_sale/html/index.html rename to addons/point_of_sale/static/description/index.html diff --git a/addons/point_of_sale/html/pos_checkout.jpg b/addons/point_of_sale/static/description/pos_checkout.jpg similarity index 100% rename from addons/point_of_sale/html/pos_checkout.jpg rename to addons/point_of_sale/static/description/pos_checkout.jpg diff --git a/addons/point_of_sale/html/pos_customer_form.png b/addons/point_of_sale/static/description/pos_customer_form.png similarity index 100% rename from addons/point_of_sale/html/pos_customer_form.png rename to addons/point_of_sale/static/description/pos_customer_form.png diff --git a/addons/point_of_sale/html/pos_customers.png b/addons/point_of_sale/static/description/pos_customers.png similarity index 100% rename from addons/point_of_sale/html/pos_customers.png rename to addons/point_of_sale/static/description/pos_customers.png diff --git a/addons/point_of_sale/html/pos_devices.png b/addons/point_of_sale/static/description/pos_devices.png similarity index 100% rename from addons/point_of_sale/html/pos_devices.png rename to addons/point_of_sale/static/description/pos_devices.png diff --git a/addons/point_of_sale/html/pos_invoice.png b/addons/point_of_sale/static/description/pos_invoice.png similarity index 100% rename from addons/point_of_sale/html/pos_invoice.png rename to addons/point_of_sale/static/description/pos_invoice.png diff --git a/addons/point_of_sale/html/pos_offline.png b/addons/point_of_sale/static/description/pos_offline.png similarity index 100% rename from addons/point_of_sale/html/pos_offline.png rename to addons/point_of_sale/static/description/pos_offline.png diff --git a/addons/point_of_sale/html/pos_product_form.png b/addons/point_of_sale/static/description/pos_product_form.png similarity index 100% rename from addons/point_of_sale/html/pos_product_form.png rename to addons/point_of_sale/static/description/pos_product_form.png diff --git a/addons/point_of_sale/html/pos_products.png b/addons/point_of_sale/static/description/pos_products.png similarity index 100% rename from addons/point_of_sale/html/pos_products.png rename to addons/point_of_sale/static/description/pos_products.png diff --git a/addons/point_of_sale/html/pos_sc_01.jpg b/addons/point_of_sale/static/description/pos_sc_01.jpg similarity index 100% rename from addons/point_of_sale/html/pos_sc_01.jpg rename to addons/point_of_sale/static/description/pos_sc_01.jpg diff --git a/addons/point_of_sale/html/pos_sc_02.jpg b/addons/point_of_sale/static/description/pos_sc_02.jpg similarity index 100% rename from addons/point_of_sale/html/pos_sc_02.jpg rename to addons/point_of_sale/static/description/pos_sc_02.jpg diff --git a/addons/point_of_sale/html/pos_sc_03.jpg b/addons/point_of_sale/static/description/pos_sc_03.jpg similarity index 100% rename from addons/point_of_sale/html/pos_sc_03.jpg rename to addons/point_of_sale/static/description/pos_sc_03.jpg diff --git a/addons/point_of_sale/html/pos_ui_01.png b/addons/point_of_sale/static/description/pos_ui_01.png similarity index 100% rename from addons/point_of_sale/html/pos_ui_01.png rename to addons/point_of_sale/static/description/pos_ui_01.png diff --git a/addons/point_of_sale/html/pos_ui_02.png b/addons/point_of_sale/static/description/pos_ui_02.png similarity index 100% rename from addons/point_of_sale/html/pos_ui_02.png rename to addons/point_of_sale/static/description/pos_ui_02.png diff --git a/addons/point_of_sale/html/pos_ui_03.png b/addons/point_of_sale/static/description/pos_ui_03.png similarity index 100% rename from addons/point_of_sale/html/pos_ui_03.png rename to addons/point_of_sale/static/description/pos_ui_03.png diff --git a/addons/point_of_sale/wizard/pos_session_opening.py b/addons/point_of_sale/wizard/pos_session_opening.py index 39e7c564831..3d6e314d033 100644 --- a/addons/point_of_sale/wizard/pos_session_opening.py +++ b/addons/point_of_sale/wizard/pos_session_opening.py @@ -85,6 +85,7 @@ class pos_session_opening(osv.osv_memory): session_ids = proxy.search(cr, uid, [ ('state', '!=', 'closed'), ('config_id', '=', config_id), + ('user_id', '=', uid), ], context=context) if session_ids: session = proxy.browse(cr, uid, session_ids[0], context=context) diff --git a/addons/portal/static/src/img/icon.png b/addons/portal/static/description/icon.png similarity index 100% rename from addons/portal/static/src/img/icon.png rename to addons/portal/static/description/icon.png diff --git a/addons/portal_anonymous/i18n/zh_CN.po b/addons/portal_anonymous/i18n/zh_CN.po new file mode 100644 index 00000000000..53ca3f03a6a --- /dev/null +++ b/addons/portal_anonymous/i18n/zh_CN.po @@ -0,0 +1,25 @@ +# Chinese (Simplified) translation for openobject-addons +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-12-21 17:05+0000\n" +"PO-Revision-Date: 2013-07-03 15:17+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Chinese (Simplified) \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2013-07-04 05:12+0000\n" +"X-Generator: Launchpad (build 16692)\n" + +#. module: portal_anonymous +#. openerp-web +#: code:addons/portal_anonymous/static/src/xml/portal_anonymous.xml:8 +#, python-format +msgid "Login" +msgstr "用户名" diff --git a/addons/procurement/procurement_data.xml b/addons/procurement/procurement_data.xml index 6a83d525c68..52503e76c44 100644 --- a/addons/procurement/procurement_data.xml +++ b/addons/procurement/procurement_data.xml @@ -12,7 +12,7 @@ - +
diff --git a/addons/procurement/schedulers.py b/addons/procurement/schedulers.py index 7c9d5ec3290..6f326ccf1c5 100644 --- a/addons/procurement/schedulers.py +++ b/addons/procurement/schedulers.py @@ -36,6 +36,8 @@ class procurement_order(osv.osv): ''' Runs through scheduler. @param use_new_cursor: False or the dbname ''' + if use_new_cursor: + use_new_cursor = cr.dbname self._procure_confirm(cr, uid, use_new_cursor=use_new_cursor, context=context) self._procure_orderpoint_confirm(cr, uid, automatic=automatic,\ use_new_cursor=use_new_cursor, context=context) diff --git a/addons/project/i18n/zh_CN.po b/addons/project/i18n/zh_CN.po index a544153f2d2..a34ee77a749 100644 --- a/addons/project/i18n/zh_CN.po +++ b/addons/project/i18n/zh_CN.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-12-21 17:04+0000\n" -"PO-Revision-Date: 2013-06-27 03:25+0000\n" +"PO-Revision-Date: 2013-07-08 14:09+0000\n" "Last-Translator: Alan \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: 2013-06-27 05:36+0000\n" -"X-Generator: Launchpad (build 16681)\n" +"X-Launchpad-Export-Date: 2013-07-09 05:16+0000\n" +"X-Generator: Launchpad (build 16696)\n" #. module: project #: view:project.project:0 @@ -38,7 +38,7 @@ msgstr "进度" #. module: project #: model:process.node,name:project.process_node_taskbydelegate0 msgid "Task by delegate" -msgstr "委派任务" +msgstr "委派的任务" #. module: project #: view:project.project:0 @@ -58,18 +58,18 @@ msgstr "阶段名称" #. module: project #: model:process.transition.action,name:project.process_transition_action_openpendingtask0 msgid "Set pending" -msgstr "设为未决" +msgstr "设置为等待状态" #. module: project #: view:project.project:0 msgid "New Project Based on Template" -msgstr "新的基于模板的项目" +msgstr "基于该模板新建项目" #. module: project #: view:report.project.task.user:0 #: field:report.project.task.user,day:0 msgid "Day" -msgstr "天数" +msgstr "天" #. module: project #: model:project.task.type,name:project.project_tt_merge @@ -91,7 +91,7 @@ msgstr "警告!" #: help:project.project,message_unread:0 #: help:project.task,message_unread:0 msgid "If checked new messages require your attention." -msgstr "如果要求你关注新消息,勾选此项" +msgstr "如果选中此项,你需要注意新的消息。" #. module: project #: model:process.node,name:project.process_node_donetask0 @@ -101,12 +101,12 @@ msgstr "完成任务" #. module: project #: model:process.node,note:project.process_node_donetask0 msgid "Task is Completed" -msgstr "任务完成" +msgstr "任务已经完成" #. module: project #: view:res.partner:0 msgid "False" -msgstr "否" +msgstr "错误的" #. module: project #: model:project.task.type,name:project.project_tt_testing @@ -121,7 +121,7 @@ msgstr "辅助核算科目" #. module: project #: field:project.config.settings,group_time_work_estimation_tasks:0 msgid "Manage time estimation on tasks" -msgstr "估计管理任务的时间" +msgstr "管理任务的估计时间" #. module: project #: help:project.project,message_summary:0 @@ -129,7 +129,7 @@ msgstr "估计管理任务的时间" msgid "" "Holds the Chatter summary (number of messages, ...). This summary is " "directly in html format in order to be inserted in kanban views." -msgstr "保存复杂的摘要(消息数量,……等)。为了插入到看板视图,这一摘要直接是是HTML格式。" +msgstr "保存对话概要信息,这些概要信息将为直接以HTML格式插入到看板视图。" #. module: project #: code:addons/project/project.py:444 @@ -163,12 +163,12 @@ msgstr "重设项目" #. module: project #: view:report.project.task.user:0 msgid "In progress tasks" -msgstr "进行中任务" +msgstr "进行中的任务" #. module: project #: help:project.project,progress_rate:0 msgid "Percent of tasks closed according to the total of tasks todo." -msgstr "结束任务和全部要做任务的百分比" +msgstr "已结束任务和未结束任务的百分比。" #. module: project #: model:ir.actions.client,name:project.action_client_project_menu @@ -224,7 +224,7 @@ msgstr "分配给" #: model:mail.message.subtype,name:project.mt_project_task_closed #: model:mail.message.subtype,name:project.mt_task_closed msgid "Task Done" -msgstr "" +msgstr "已完成的任务" #. module: project #: view:project.project:0 @@ -265,7 +265,7 @@ msgstr "任务分派" #: model:mail.message.subtype,name:project.mt_project_task_started #: model:mail.message.subtype,name:project.mt_task_started msgid "Task Started" -msgstr "" +msgstr "已开始的任务" #. module: project #: view:project.task:0 diff --git a/addons/project/project.py b/addons/project/project.py index 2e6e351fefb..32841cde927 100644 --- a/addons/project/project.py +++ b/addons/project/project.py @@ -575,6 +575,15 @@ class task(osv.osv): }, } + def _get_default_partner(self, cr, uid, context=None): + """ Override of base_stage to add project specific behavior """ + project_id = self._get_default_project_id(cr, uid, context) + if project_id: + project = self.pool.get('project.project').browse(cr, uid, project_id, context=context) + if project and project.partner_id: + return project.partner_id.id + return super(task, self)._get_default_partner(cr, uid, context=context) + def _get_default_project_id(self, cr, uid, context=None): """ Gives default section by checking if present in the context """ return (self._resolve_project_id_from_context(cr, uid, context=context) or False) @@ -672,13 +681,11 @@ class task(osv.osv): def onchange_planned(self, cr, uid, ids, planned=0.0, effective=0.0): return {'value':{'remaining_hours': planned - effective}} - def onchange_project(self, cr, uid, id, project_id): - if not project_id: - return {} - data = self.pool.get('project.project').browse(cr, uid, [project_id]) - partner_id=data and data[0].partner_id - if partner_id: - return {'value':{'partner_id':partner_id.id}} + def onchange_project(self, cr, uid, id, project_id, context=None): + if project_id: + project = self.pool.get('project.project').browse(cr, uid, project_id, context=context) + if project and project.partner_id: + return {'value': {'partner_id': project.partner_id.id}} return {} def onchange_user_id(self, cr, uid, ids, user_id, context=None): @@ -805,8 +812,9 @@ class task(osv.osv): 'progress': 0, 'sequence': 10, 'active': True, - 'user_id': lambda obj, cr, uid, context: uid, - 'company_id': lambda self, cr, uid, c: self.pool.get('res.company')._company_default_get(cr, uid, 'project.task', context=c), + 'user_id': lambda obj, cr, uid, ctx=None: uid, + 'company_id': lambda self, cr, uid, ctx=None: self.pool.get('res.company')._company_default_get(cr, uid, 'project.task', context=ctx), + 'partner_id': lambda self, cr, uid, ctx=None: self._get_default_partner(cr, uid, context=ctx), } _order = "priority, sequence, date_start, name, id" @@ -1037,6 +1045,10 @@ class task(osv.osv): def create(self, cr, uid, vals, context=None): if context is None: context = {} + + # for default stage + if vals.get('project_id') and not context.get('default_project_id'): + context['default_project_id'] = vals.get('project_id') # user_id change: update date_start if vals.get('user_id'): vals['date_start'] = fields.datetime.now() @@ -1056,6 +1068,7 @@ class task(osv.osv): def write(self, cr, uid, ids, vals, context=None): if isinstance(ids, (int, long)): ids = [ids] + # stage change: update date_last_stage_update if 'stage_id' in vals: vals['date_last_stage_update'] = fields.datetime.now() diff --git a/addons/project/html/Mario-Riva.png b/addons/project/static/description/Mario-Riva.png similarity index 100% rename from addons/project/html/Mario-Riva.png rename to addons/project/static/description/Mario-Riva.png diff --git a/addons/project/html/Yoshi-Tashiro.png b/addons/project/static/description/Yoshi-Tashiro.png similarity index 100% rename from addons/project/html/Yoshi-Tashiro.png rename to addons/project/static/description/Yoshi-Tashiro.png diff --git a/addons/project/static/src/img/icon.png b/addons/project/static/description/icon.png similarity index 100% rename from addons/project/static/src/img/icon.png rename to addons/project/static/description/icon.png diff --git a/addons/project/html/index.html b/addons/project/static/description/index.html similarity index 100% rename from addons/project/html/index.html rename to addons/project/static/description/index.html diff --git a/addons/project/html/project_01.png b/addons/project/static/description/project_01.png similarity index 100% rename from addons/project/html/project_01.png rename to addons/project/static/description/project_01.png diff --git a/addons/project/html/project_calendar.png b/addons/project/static/description/project_calendar.png similarity index 100% rename from addons/project/html/project_calendar.png rename to addons/project/static/description/project_calendar.png diff --git a/addons/project/html/project_chat.png b/addons/project/static/description/project_chat.png similarity index 100% rename from addons/project/html/project_chat.png rename to addons/project/static/description/project_chat.png diff --git a/addons/project/html/project_easy.png b/addons/project/static/description/project_easy.png similarity index 100% rename from addons/project/html/project_easy.png rename to addons/project/static/description/project_easy.png diff --git a/addons/project/html/project_etherpad.png b/addons/project/static/description/project_etherpad.png similarity index 100% rename from addons/project/html/project_etherpad.png rename to addons/project/static/description/project_etherpad.png diff --git a/addons/project/html/project_gantt.png b/addons/project/static/description/project_gantt.png similarity index 100% rename from addons/project/html/project_gantt.png rename to addons/project/static/description/project_gantt.png diff --git a/addons/project/html/project_illu_01.png b/addons/project/static/description/project_illu_01.png similarity index 100% rename from addons/project/html/project_illu_01.png rename to addons/project/static/description/project_illu_01.png diff --git a/addons/project/html/project_kanban.png b/addons/project/static/description/project_kanban.png similarity index 100% rename from addons/project/html/project_kanban.png rename to addons/project/static/description/project_kanban.png diff --git a/addons/project/html/project_kpi.png b/addons/project/static/description/project_kpi.png similarity index 100% rename from addons/project/html/project_kpi.png rename to addons/project/static/description/project_kpi.png diff --git a/addons/project/html/project_timesheet.png b/addons/project/static/description/project_timesheet.png similarity index 100% rename from addons/project/html/project_timesheet.png rename to addons/project/static/description/project_timesheet.png diff --git a/addons/project_gtd/static/src/img/icon.png b/addons/project_gtd/static/description/icon.png similarity index 100% rename from addons/project_gtd/static/src/img/icon.png rename to addons/project_gtd/static/description/icon.png diff --git a/addons/project_issue/project_issue.py b/addons/project_issue/project_issue.py index 7a7d0724161..501202a3791 100644 --- a/addons/project_issue/project_issue.py +++ b/addons/project_issue/project_issue.py @@ -61,15 +61,22 @@ class project_issue(osv.Model): def create(self, cr, uid, vals, context=None): if context is None: context = {} - if not vals.get('stage_id'): - ctx = context.copy() - if vals.get('project_id'): - ctx['default_project_id'] = vals['project_id'] - vals['stage_id'] = self._get_default_stage_id(cr, uid, context=ctx) + if vals.get('project_id') and not context.get('default_project_id'): + context['default_project_id'] = vals.get('project_id') + # context: no_log, because subtype already handle this create_context = dict(context, mail_create_nolog=True) return super(project_issue, self).create(cr, uid, vals, context=create_context) + def _get_default_partner(self, cr, uid, context=None): + """ Override of base_stage to add project specific behavior """ + project_id = self._get_default_project_id(cr, uid, context) + if project_id: + project = self.pool.get('project.project').browse(cr, uid, project_id, context=context) + if project and project.partner_id: + return project.partner_id.id + return super(project_issue, self)._get_default_partner(cr, uid, context=context) + def _get_default_project_id(self, cr, uid, context=None): """ Gives default project by checking if present in the context """ return self._resolve_project_id_from_context(cr, uid, context=context) @@ -211,6 +218,10 @@ class project_issue(osv.Model): return res def on_change_project(self, cr, uid, ids, project_id, context=None): + if project_id: + project = self.pool.get('project.project').browse(cr, uid, project_id, context=context) + if project and project.partner_id: + return {'value': {'partner_id': project.partner_id.id}} return {} def _get_issue_task(self, cr, uid, ids, context=None): @@ -297,6 +308,7 @@ class project_issue(osv.Model): 'priority': crm.AVAILABLE_PRIORITIES[2][0], 'kanban_state': 'normal', 'date_last_stage_update': fields.datetime.now(), + 'user_id': lambda obj, cr, uid, context: uid, } _group_by_full = { diff --git a/addons/project_issue/static/src/img/icon.png b/addons/project_issue/static/description/icon.png similarity index 100% rename from addons/project_issue/static/src/img/icon.png rename to addons/project_issue/static/description/icon.png diff --git a/addons/project_long_term/i18n/zh_CN.po b/addons/project_long_term/i18n/zh_CN.po index 4b5ad3f0e44..33cddc0123b 100644 --- a/addons/project_long_term/i18n/zh_CN.po +++ b/addons/project_long_term/i18n/zh_CN.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-12-21 17:06+0000\n" -"PO-Revision-Date: 2012-11-27 14:57+0000\n" -"Last-Translator: 盈通 ccdos \n" +"PO-Revision-Date: 2013-07-07 04:44+0000\n" +"Last-Translator: Alan \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-16 05:47+0000\n" -"X-Generator: Launchpad (build 16532)\n" +"X-Launchpad-Export-Date: 2013-07-08 05:25+0000\n" +"X-Generator: Launchpad (build 16696)\n" #. module: project_long_term #: help:project.phase,constraint_date_end:0 @@ -46,7 +46,7 @@ msgstr "" #. module: project_long_term #: field:project.phase,user_ids:0 msgid "Assigned Users" -msgstr "指定的用户" +msgstr "已分配的用户" #. module: project_long_term #: view:project.phase:0 diff --git a/addons/purchase/static/src/img/icon.png b/addons/purchase/static/description/icon.png similarity index 100% rename from addons/purchase/static/src/img/icon.png rename to addons/purchase/static/description/icon.png diff --git a/addons/purchase/html/index.html b/addons/purchase/static/description/index.html similarity index 100% rename from addons/purchase/html/index.html rename to addons/purchase/static/description/index.html diff --git a/addons/purchase/html/purchase_compose.png b/addons/purchase/static/description/purchase_compose.png similarity index 100% rename from addons/purchase/html/purchase_compose.png rename to addons/purchase/static/description/purchase_compose.png diff --git a/addons/purchase/html/purchase_dashboard.png b/addons/purchase/static/description/purchase_dashboard.png similarity index 100% rename from addons/purchase/html/purchase_dashboard.png rename to addons/purchase/static/description/purchase_dashboard.png diff --git a/addons/purchase/html/purchase_import.png b/addons/purchase/static/description/purchase_import.png similarity index 100% rename from addons/purchase/html/purchase_import.png rename to addons/purchase/static/description/purchase_import.png diff --git a/addons/purchase/html/purchase_incoming.png b/addons/purchase/static/description/purchase_incoming.png similarity index 100% rename from addons/purchase/html/purchase_incoming.png rename to addons/purchase/static/description/purchase_incoming.png diff --git a/addons/purchase/html/purchase_po.png b/addons/purchase/static/description/purchase_po.png similarity index 100% rename from addons/purchase/html/purchase_po.png rename to addons/purchase/static/description/purchase_po.png diff --git a/addons/purchase/html/purchase_procurement.png b/addons/purchase/static/description/purchase_procurement.png similarity index 100% rename from addons/purchase/html/purchase_procurement.png rename to addons/purchase/static/description/purchase_procurement.png diff --git a/addons/purchase/html/purchase_product.png b/addons/purchase/static/description/purchase_product.png similarity index 100% rename from addons/purchase/html/purchase_product.png rename to addons/purchase/static/description/purchase_product.png diff --git a/addons/purchase/html/purchase_product_form.png b/addons/purchase/static/description/purchase_product_form.png similarity index 100% rename from addons/purchase/html/purchase_product_form.png rename to addons/purchase/static/description/purchase_product_form.png diff --git a/addons/purchase/html/purchase_tender.png b/addons/purchase/static/description/purchase_tender.png similarity index 100% rename from addons/purchase/html/purchase_tender.png rename to addons/purchase/static/description/purchase_tender.png diff --git a/addons/report_webkit/webkit_report.py b/addons/report_webkit/webkit_report.py index b66c7ce6f3b..1a642463df9 100644 --- a/addons/report_webkit/webkit_report.py +++ b/addons/report_webkit/webkit_report.py @@ -173,7 +173,7 @@ class WebKitParser(report_sxw): ), 'w' ) - head_file.write(header) + head_file.write(header.encode('utf-8')) head_file.close() file_to_del.append(head_file.name) command.extend(['--header-html', head_file.name]) @@ -184,7 +184,7 @@ class WebKitParser(report_sxw): ), 'w' ) - foot_file.write(footer) + foot_file.write(footer.encode('utf-8')) foot_file.close() file_to_del.append(foot_file.name) command.extend(['--footer-html', foot_file.name]) @@ -205,7 +205,7 @@ class WebKitParser(report_sxw): for html in html_list : html_file = file(os.path.join(tmp_dir, str(time.time()) + str(count) +'.body.html'), 'w') count += 1 - html_file.write(html) + html_file.write(html.encode('utf-8')) html_file.close() file_to_del.append(html_file.name) command.append(html_file.name) diff --git a/addons/sale/html/Gunther-Rombouts.png b/addons/sale/static/description/Gunther-Rombouts.png similarity index 100% rename from addons/sale/html/Gunther-Rombouts.png rename to addons/sale/static/description/Gunther-Rombouts.png diff --git a/addons/sale/html/Philippe-Leruth.png b/addons/sale/static/description/Philippe-Leruth.png similarity index 100% rename from addons/sale/html/Philippe-Leruth.png rename to addons/sale/static/description/Philippe-Leruth.png diff --git a/addons/sale/static/src/img/icon.png b/addons/sale/static/description/icon.png similarity index 100% rename from addons/sale/static/src/img/icon.png rename to addons/sale/static/description/icon.png diff --git a/addons/sale/html/index.html b/addons/sale/static/description/index.html similarity index 100% rename from addons/sale/html/index.html rename to addons/sale/static/description/index.html diff --git a/addons/sale/html/sale_invoice.png b/addons/sale/static/description/sale_invoice.png similarity index 100% rename from addons/sale/html/sale_invoice.png rename to addons/sale/static/description/sale_invoice.png diff --git a/addons/sale/html/sale_sc_00.png b/addons/sale/static/description/sale_sc_00.png similarity index 100% rename from addons/sale/html/sale_sc_00.png rename to addons/sale/static/description/sale_sc_00.png diff --git a/addons/sale/html/sale_sc_01.png b/addons/sale/static/description/sale_sc_01.png similarity index 100% rename from addons/sale/html/sale_sc_01.png rename to addons/sale/static/description/sale_sc_01.png diff --git a/addons/sale/html/sale_sc_02.png b/addons/sale/static/description/sale_sc_02.png similarity index 100% rename from addons/sale/html/sale_sc_02.png rename to addons/sale/static/description/sale_sc_02.png diff --git a/addons/sale/html/sale_sc_03.png b/addons/sale/static/description/sale_sc_03.png similarity index 100% rename from addons/sale/html/sale_sc_03.png rename to addons/sale/static/description/sale_sc_03.png diff --git a/addons/sale/html/sale_sc_04.png b/addons/sale/static/description/sale_sc_04.png similarity index 100% rename from addons/sale/html/sale_sc_04.png rename to addons/sale/static/description/sale_sc_04.png diff --git a/addons/sale/html/sale_sc_05.png b/addons/sale/static/description/sale_sc_05.png similarity index 100% rename from addons/sale/html/sale_sc_05.png rename to addons/sale/static/description/sale_sc_05.png diff --git a/addons/sale/html/sale_sc_06.png b/addons/sale/static/description/sale_sc_06.png similarity index 100% rename from addons/sale/html/sale_sc_06.png rename to addons/sale/static/description/sale_sc_06.png diff --git a/addons/sale/html/sale_sc_07.png b/addons/sale/static/description/sale_sc_07.png similarity index 100% rename from addons/sale/html/sale_sc_07.png rename to addons/sale/static/description/sale_sc_07.png diff --git a/addons/sale/html/sale_sc_08.png b/addons/sale/static/description/sale_sc_08.png similarity index 100% rename from addons/sale/html/sale_sc_08.png rename to addons/sale/static/description/sale_sc_08.png diff --git a/addons/sale/html/sale_sc_10.png b/addons/sale/static/description/sale_sc_10.png similarity index 100% rename from addons/sale/html/sale_sc_10.png rename to addons/sale/static/description/sale_sc_10.png diff --git a/addons/sale/html/sales_illu_01.png b/addons/sale/static/description/sales_illu_01.png similarity index 100% rename from addons/sale/html/sales_illu_01.png rename to addons/sale/static/description/sales_illu_01.png diff --git a/addons/sale/html/sales_target.png b/addons/sale/static/description/sales_target.png similarity index 100% rename from addons/sale/html/sales_target.png rename to addons/sale/static/description/sales_target.png diff --git a/addons/stock/html/Didier-Georgieff.jpg b/addons/stock/static/description/Didier-Georgieff.jpg similarity index 100% rename from addons/stock/html/Didier-Georgieff.jpg rename to addons/stock/static/description/Didier-Georgieff.jpg diff --git a/addons/stock/html/Mario-Riva.png b/addons/stock/static/description/Mario-Riva.png similarity index 100% rename from addons/stock/html/Mario-Riva.png rename to addons/stock/static/description/Mario-Riva.png diff --git a/addons/stock/static/src/img/icon.png b/addons/stock/static/description/icon.png similarity index 100% rename from addons/stock/static/src/img/icon.png rename to addons/stock/static/description/icon.png diff --git a/addons/stock/html/index.html b/addons/stock/static/description/index.html similarity index 100% rename from addons/stock/html/index.html rename to addons/stock/static/description/index.html diff --git a/addons/stock/html/stock_calendar.png b/addons/stock/static/description/stock_calendar.png similarity index 100% rename from addons/stock/html/stock_calendar.png rename to addons/stock/static/description/stock_calendar.png diff --git a/addons/stock/html/stock_integrate.png b/addons/stock/static/description/stock_integrate.png similarity index 100% rename from addons/stock/html/stock_integrate.png rename to addons/stock/static/description/stock_integrate.png diff --git a/addons/stock/html/stock_main.png b/addons/stock/static/description/stock_main.png similarity index 100% rename from addons/stock/html/stock_main.png rename to addons/stock/static/description/stock_main.png diff --git a/addons/stock/html/stock_procurement.png b/addons/stock/static/description/stock_procurement.png similarity index 100% rename from addons/stock/html/stock_procurement.png rename to addons/stock/static/description/stock_procurement.png diff --git a/addons/stock/html/stock_product.png b/addons/stock/static/description/stock_product.png similarity index 100% rename from addons/stock/html/stock_product.png rename to addons/stock/static/description/stock_product.png diff --git a/addons/stock/html/stock_product_form.png b/addons/stock/static/description/stock_product_form.png similarity index 100% rename from addons/stock/html/stock_product_form.png rename to addons/stock/static/description/stock_product_form.png diff --git a/addons/stock/html/stock_reporting.png b/addons/stock/static/description/stock_reporting.png similarity index 100% rename from addons/stock/html/stock_reporting.png rename to addons/stock/static/description/stock_reporting.png diff --git a/addons/stock/html/warehouse_illu_01.png b/addons/stock/static/description/warehouse_illu_01.png similarity index 100% rename from addons/stock/html/warehouse_illu_01.png rename to addons/stock/static/description/warehouse_illu_01.png diff --git a/addons/stock/html/warehouse_illu_02.png b/addons/stock/static/description/warehouse_illu_02.png similarity index 100% rename from addons/stock/html/warehouse_illu_02.png rename to addons/stock/static/description/warehouse_illu_02.png diff --git a/addons/stock/stock_view.xml b/addons/stock/stock_view.xml index b1a1fa048be..14b3ba04eb5 100644 --- a/addons/stock/stock_view.xml +++ b/addons/stock/stock_view.xml @@ -918,7 +918,7 @@ - + @@ -1045,7 +1045,7 @@