diff options
| author | Thibault Delavallée <tde@openerp.com> | 2013-03-19 10:01:48 +0100 |
|---|---|---|
| committer | Thibault Delavallée <tde@openerp.com> | 2013-03-19 10:01:48 +0100 |
| commit | e559949f07bf3f5ade9ccd335e5dc033ed59b552 (patch) | |
| tree | f21574d81a5d64276160a9c622385a38f5d498f2 | |
| parent | acb14cdead5114e1202465363465cb1884d127ac (diff) | |
| parent | 3f28f3540527f5f3bacc8fccaade90310cfb7c7c (diff) | |
[MERGE] Sync with trunk.
bzr revid: tde@openerp.com-20130319090148-ggdkll48f9343y1l
28 files changed, 2354 insertions, 223 deletions
diff --git a/addons/account/data/account_data.xml b/addons/account/data/account_data.xml index 949d03324f3..9d2e65a3a4c 100644 --- a/addons/account/data/account_data.xml +++ b/addons/account/data/account_data.xml @@ -30,7 +30,6 @@ </record> <record id="account_payment_term_line_15days" model="account.payment.term.line"> - <field name="name">15 Days</field> <field name="value">balance</field> <field eval="15" name="days"/> <field eval="0" name="days2"/> @@ -48,7 +47,6 @@ </record> <record id="account_payment_term_line_net" model="account.payment.term.line"> - <field name="name">30 Net Days</field> <field name="value">balance</field> <field eval="30" name="days"/> <field eval="0" name="days2"/> diff --git a/addons/account/demo/account_demo.xml b/addons/account/demo/account_demo.xml index 6918ad44702..8a450c0b6aa 100644 --- a/addons/account/demo/account_demo.xml +++ b/addons/account/demo/account_demo.xml @@ -135,7 +135,6 @@ <field name="note">30 Days End of Month</field> </record> <record id="account_payment_term_line" model="account.payment.term.line"> - <field name="name">30 Days End of Month</field> <field name="value">balance</field> <field eval="30" name="days"/> <field eval="-1" name="days2"/> @@ -147,16 +146,13 @@ <field name="note">30% Advance End 30 Days</field> </record> <record id="account_payment_term_line_advance1" model="account.payment.term.line"> - <field name="name">30% Advance</field> <field name="value">procent</field> - <field eval="3" name="sequence"/> <field eval="0.300000" name="value_amount"/> <field eval="0" name="days"/> <field eval="0" name="days2"/> <field eval="account_payment_term_advance" name="payment_id"/> </record> <record id="account_payment_term_line_advance2" model="account.payment.term.line"> - <field name="name">Remaining Balance</field> <field name="value">balance</field> <field eval="30" name="days"/> <field eval="-1" name="days2"/> diff --git a/addons/account_analytic_analysis/account_analytic_analysis_view.xml b/addons/account_analytic_analysis/account_analytic_analysis_view.xml index 3c477b5556f..6f670b2c6b9 100644 --- a/addons/account_analytic_analysis/account_analytic_analysis_view.xml +++ b/addons/account_analytic_analysis/account_analytic_analysis_view.xml @@ -276,7 +276,7 @@ <field name="view_type">form</field> <field name="view_mode">tree,form</field> <field name="domain">[('invoice_id','=',False)]</field> - <field name="context">{'search_default_to_invoice': 1, 'search_default_sales': 1}</field> + <field name="context">{'search_default_to_invoice': 1}</field> <field name="search_view_id" ref="account.view_account_analytic_line_filter"/> <field name="help" type="html"> <p> diff --git a/addons/account_payment/__openerp__.py b/addons/account_payment/__openerp__.py index 66d0201b2fe..4c3c8f045e3 100644 --- a/addons/account_payment/__openerp__.py +++ b/addons/account_payment/__openerp__.py @@ -53,7 +53,6 @@ have a new option to import payment orders as bank statement lines. 'account_payment_view.xml', 'account_payment_workflow.xml', 'account_payment_sequence.xml', - 'account_invoice_view.xml', 'account_payment_report.xml', ], 'demo': ['account_payment_demo.xml'], diff --git a/addons/account_payment/account_invoice.py b/addons/account_payment/account_invoice.py index 7c8560fc9e8..bcce77a54ce 100644 --- a/addons/account_payment/account_invoice.py +++ b/addons/account_payment/account_invoice.py @@ -19,9 +19,8 @@ # ############################################################################## -from datetime import datetime from openerp.tools.translate import _ -from openerp.osv import fields, osv +from openerp.osv import osv class Invoice(osv.osv): _inherit = 'account.invoice' @@ -43,28 +42,6 @@ class Invoice(osv.osv): raise osv.except_osv(_('Error!'), _("You cannot cancel an invoice which has already been imported in a payment order. Remove it from the following payment order : %s."%(payment_order_name))) return super(Invoice, self).action_cancel(cr, uid, ids, context=context) - def _amount_to_pay(self, cursor, user, ids, name, args, context=None): - '''Return the amount still to pay regarding all the payment orders''' - if not ids: - return {} - res = {} - for invoice in self.browse(cursor, user, ids, context=context): - res[invoice.id] = 0.0 - if invoice.move_id: - for line in invoice.move_id.line_id: - if not line.date_maturity or \ - datetime.strptime(line.date_maturity, '%Y-%m-%d') \ - < datetime.today(): - res[invoice.id] += line.amount_to_pay - return res - - _columns = { - 'amount_to_pay': fields.function(_amount_to_pay, - type='float', string='Amount to be paid', - help='The amount which should be paid at the current date\n' \ - 'minus the amount which is already in payment order'), - } - Invoice() # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_payment/account_invoice_view.xml b/addons/account_payment/account_invoice_view.xml deleted file mode 100644 index ebb6bcbf965..00000000000 --- a/addons/account_payment/account_invoice_view.xml +++ /dev/null @@ -1,15 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<openerp> - <data> - <record id="invoice_supplier_form" model="ir.ui.view"> - <field name="name">account.invoice.supplier.form.inherit</field> - <field name="model">account.invoice</field> - <field name="inherit_id" ref="account.invoice_supplier_form"/> - <field name="arch" type="xml"> - <field name="partner_bank_id" position="before"> - <field name="amount_to_pay"/> - </field> - </field> - </record> - </data> -</openerp> diff --git a/addons/account_payment/account_move_line.py b/addons/account_payment/account_move_line.py index 35c30c686e8..c601d9e8da3 100644 --- a/addons/account_payment/account_move_line.py +++ b/addons/account_payment/account_move_line.py @@ -19,65 +19,12 @@ # ############################################################################## -from operator import itemgetter -from openerp.osv import fields, osv +from openerp.osv import osv from openerp.tools.translate import _ class account_move_line(osv.osv): _inherit = "account.move.line" - def amount_to_pay(self, cr, uid, ids, name, arg=None, context=None): - """ Return the amount still to pay regarding all the payemnt orders - (excepting cancelled orders)""" - if not ids: - return {} - cr.execute("""SELECT ml.id, - CASE WHEN ml.amount_currency < 0 - THEN - ml.amount_currency - ELSE ml.credit - END - - (SELECT coalesce(sum(amount_currency),0) - FROM payment_line pl - INNER JOIN payment_order po - ON (pl.order_id = po.id) - WHERE move_line_id = ml.id - AND po.state != 'cancel') AS amount - FROM account_move_line ml - WHERE id IN %s""", (tuple(ids),)) - r = dict(cr.fetchall()) - return r - - def _to_pay_search(self, cr, uid, obj, name, args, context=None): - if not args: - return [] - line_obj = self.pool.get('account.move.line') - query = line_obj._query_get(cr, uid, context={}) - where = ' and '.join(map(lambda x: '''(SELECT - CASE WHEN l.amount_currency < 0 - THEN - l.amount_currency - ELSE l.credit - END - coalesce(sum(pl.amount_currency), 0) - FROM payment_line pl - INNER JOIN payment_order po ON (pl.order_id = po.id) - WHERE move_line_id = l.id - AND po.state != 'cancel' - ) %(operator)s %%s ''' % {'operator': x[1]}, args)) - sql_args = tuple(map(itemgetter(2), args)) - - cr.execute(('''SELECT id - FROM account_move_line l - WHERE account_id IN (select id - FROM account_account - WHERE type=%s AND active) - AND reconcile_id IS null - AND credit > 0 - AND ''' + where + ' and ' + query), ('payable',)+sql_args ) - - res = cr.fetchall() - if not res: - return [('id', '=', '0')] - return [('id', 'in', map(lambda x:x[0], res))] - def line2bank(self, cr, uid, ids, payment_type=None, context=None): """ Try to return for each Ledger Posting line a corresponding bank @@ -110,11 +57,6 @@ class account_move_line(osv.osv): raise osv.except_osv(_('Error!'), _('There is no partner defined on the entry line.')) return line2bank - _columns = { - 'amount_to_pay': fields.function(amount_to_pay, - type='float', string='Amount to pay', fnct_search=_to_pay_search), - } - account_move_line() # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_payment/account_payment.py b/addons/account_payment/account_payment.py index bf0377111a8..2b0fe1271d2 100644 --- a/addons/account_payment/account_payment.py +++ b/addons/account_payment/account_payment.py @@ -352,7 +352,7 @@ class payment_line(osv.osv): if move_line_id: line = move_line_obj.browse(cr, uid, move_line_id, context=context) - data['amount_currency'] = line.amount_to_pay + data['amount_currency'] = line.amount_residual_currency res = self.onchange_amount(cr, uid, ids, data['amount_currency'], currency, company_currency, context) diff --git a/addons/account_payment/account_payment_view.xml b/addons/account_payment/account_payment_view.xml index c2f27a576a2..aa52d1d443e 100644 --- a/addons/account_payment/account_payment_view.xml +++ b/addons/account_payment/account_payment_view.xml @@ -2,29 +2,6 @@ <openerp> <data> - <!-- View used in the wizard --> - <record id="view_move_line_form" model="ir.ui.view"> - <field name="name">account.move.line.form.inherit</field> - <field name="model">account.move.line</field> - <field name="inherit_id" ref="account.view_move_line_form"/> - <field name="arch" type="xml"> - <field name="reconcile_partial_id" position="after"> - <field name="amount_to_pay"/> - </field> - </field> - </record> - - <!-- <record model="ir.ui.view" id="view_move_line_tree_wiz"> - <field name="name">account.move.line.tree</field> - <field name="model">account.move.line</field> - <field name="inherit_id" ref="account.view_move_line_tree"/> - <field name="arch" type="xml"> - <field name="reconcile" position="after"> - <field name="amount_to_pay"/> - </field> - </field> - </record> --> - <menuitem id="menu_main_payment" name="Payment" parent="account.menu_finance" sequence="7"/> <record id="view_payment_mode_search" model="ir.ui.view"> @@ -116,7 +93,7 @@ <notebook> <page string="Payment"> <group col="4"> - <field name="move_line_id" on_change="onchange_move_line(move_line_id,parent.mode,parent.date_prefered,parent.date_scheduled,currency,company_currency)" domain="[('reconcile_id','=', False), ('credit', '>',0),('amount_to_pay','>',0)] "/> + <field name="move_line_id" on_change="onchange_move_line(move_line_id,parent.mode,parent.date_prefered,parent.date_scheduled,currency,company_currency)" domain="[('reconcile_id','=', False), ('credit', '>',0),('amount_residual','>',0)] "/> <separator colspan="4" string="Transaction Information"/> <field name="date"/> <label for="amount_currency" groups="base.group_multi_currency"/> @@ -242,7 +219,7 @@ <page string="Payment"> <group col="4"> <field name="order_id"/> - <field name="move_line_id" on_change="onchange_move_line(move_line_id, False, currency, company_currency)" domain="[('reconcile_id','=', False), ('credit', '>',0),('amount_to_pay','>',0)]"/> + <field name="move_line_id" on_change="onchange_move_line(move_line_id, False, currency, company_currency)" domain="[('reconcile_id','=', False), ('credit', '>',0),('amount_residual','>',0)]"/> <separator colspan="4" string="Transaction Information"/> <field name="date"/> <label for="amount_currency" groups="base.group_multi_currency"/> diff --git a/addons/account_payment/wizard/account_payment_order.py b/addons/account_payment/wizard/account_payment_order.py index f4d695a05d1..4bd969726fe 100644 --- a/addons/account_payment/wizard/account_payment_order.py +++ b/addons/account_payment/wizard/account_payment_order.py @@ -82,7 +82,7 @@ class payment_order_create(osv.osv_memory): date_to_pay = payment.date_scheduled payment_obj.create(cr, uid,{ 'move_line_id': line.id, - 'amount_currency': line.amount_to_pay, + 'amount_currency': line.amount_residual_currency, 'bank_id': line2bank.get(line.id), 'order_id': payment.id, 'partner_id': line.partner_id and line.partner_id.id or False, @@ -102,7 +102,7 @@ class payment_order_create(osv.osv_memory): # payment = self.pool.get('payment.order').browse(cr, uid, context['active_id'], context=context) # Search for move line to pay: - domain = [('reconcile_id', '=', False), ('account_id.type', '=', 'payable'), ('amount_to_pay', '>', 0)] + domain = [('reconcile_id', '=', False), ('account_id.type', '=', 'payable'), ('amount_residual', '>', 0)] domain = domain + ['|', ('date_maturity', '<=', search_due_date), ('date_maturity', '=', False)] line_ids = line_obj.search(cr, uid, domain, context=context) context.update({'line_ids': line_ids}) diff --git a/addons/auth_openid/static/src/css/openid.css b/addons/auth_openid/static/src/css/openid.css index ab01ffd2f60..57c745f0aca 100644 --- a/addons/auth_openid/static/src/css/openid.css +++ b/addons/auth_openid/static/src/css/openid.css @@ -1,25 +1,15 @@ -.login .pane { - width: 260px; - height: 175px; -} - -.login .pane input[name='openid_url'] { +.oe_login .oe_login_pane input[name='openid_url'] { background: #fff url(../img/login-bg.gif) no-repeat 1px; padding-left: 20px; } -.auth_choice { - position: static; - display: none; +.openerp .oe_login .openid_providers { + text-align: center; } - -.openid_providers { - padding: 0; - list-style: none; - float: right; +.openerp .oe_login .openid_providers ul { + display: inline-block; } - -.openid_providers li { +.openerp .oe_login .openid_providers ul li { display: block; float: left; margin: 0 1px 3px 2px; @@ -29,7 +19,6 @@ display: block; width: 24px; height: 24px; - border: 1px solid #ddd; background: #fff url(../img/openid_16.png) no-repeat 50%; text-indent: -9999px; overflow: hidden; @@ -37,20 +26,16 @@ } .openid_providers a.selected { - border-color: #9A0404; + background-color: #DC5F59; } -.openid_providers a[title="Password"] { background-image: url(../img/textfield_key.png); } -.openid_providers a[title="AOL"] { background-image: url(../img/aol.png); } -.openid_providers a[title="ClaimID"] { background-image: url(../img/claimid.png); } -.openid_providers a[title="Google"] { background-image: url(../img/googlefav.png); } -.openid_providers a[title="Google Apps"] { background-image: url(../img/marketplace.gif); } -.openid_providers a[title="MyOpenID"] { background-image: url(../img/myopenid.png); } -.openid_providers a[title="VeriSign"] { background-image: url(../img/verisign.png); } -.openid_providers a[title="Yahoo!"] { background-image: url(../img/yahoo.png); } -.openid_providers a[title="Launchpad"] { background-image: url(../img/launchpad.png); } - +.openid_providers a[data-provider="Password"] { background-image: url(../img/textfield_key.png); } +.openid_providers a[data-provider="AOL"] { background-image: url(../img/aol.png); } +.openid_providers a[data-provider="ClaimID"] { background-image: url(../img/claimid.png); } +.openid_providers a[data-provider="Google"] { background-image: url(../img/googlefav.png); } +.openid_providers a[data-provider="Google Apps"] { background-image: url(../img/marketplace.gif); } +.openid_providers a[data-provider="MyOpenID"] { background-image: url(../img/myopenid.png); } +.openid_providers a[data-provider="VeriSign"] { background-image: url(../img/verisign.png); } +.openid_providers a[data-provider="Yahoo!"] { background-image: url(../img/yahoo.png); } +.openid_providers a[data-provider="Launchpad"] { background-image: url(../img/launchpad.png); } -li.auth_choice.selected { - display: table-row; -} diff --git a/addons/auth_openid/static/src/js/auth_openid.js b/addons/auth_openid/static/src/js/auth_openid.js index f8615481a40..ac2804cb130 100644 --- a/addons/auth_openid/static/src/js/auth_openid.js +++ b/addons/auth_openid/static/src/js/auth_openid.js @@ -14,6 +14,16 @@ instance.web.Login = instance.web.Login.extend({ self.$openid_selected_input = $(); self.$openid_selected_provider = null; + + // Hook auth_signup events. noop if module is not installed. + self.on('change:login_mode', self, function() { + var mode = self.get('login_mode') || 'default'; + if (mode !== 'default') { + return; + } + self.do_openid_select(self.$openid_selected_button, self.$openid_selected_provider, true); + }); + var openIdProvider = null; if (self.has_local_storage && self.remember_credentials) { @@ -21,12 +31,10 @@ instance.web.Login = instance.web.Login.extend({ } if (openIdProvider) { - $openid_selected_provider = openIdProvider; + self.$openid_selected_provider = openIdProvider; self.do_openid_select('a[href="#' + openIdProvider + '"]', openIdProvider, true); - if (self.has_local_storage && self.remember_credentials) { - self.$openid_selected_input.find('input').val(localStorage.getItem('openid-login')); - } + self.$openid_selected_input.find('input').val(localStorage.getItem('openid-login') || ''); } else { self.do_openid_select('a[data-url=""]', 'login,password', true); @@ -49,11 +57,12 @@ instance.web.Login = instance.web.Login.extend({ do_openid_select: function (button, provider, noautosubmit) { var self = this; + self.$('li[data-provider]').hide(); self.$openid_selected_button.add(self.$openid_selected_input).removeClass('selected'); self.$openid_selected_button = self.$el.find(button).addClass('selected'); var input = _(provider.split(',')).map(function(p) { return 'li[data-provider="'+p+'"]'; }).join(','); - self.$openid_selected_input = self.$el.find(input).addClass('selected'); + self.$openid_selected_input = self.$el.find(input).show(); self.$openid_selected_input.find('input:first').focus(); self.$openid_selected_provider = (self.$openid_selected_button.attr('href') || '').substr(1); @@ -62,7 +71,7 @@ instance.web.Login = instance.web.Login.extend({ localStorage.setItem('openid-provider', self.$openid_selected_provider); } - if (!noautosubmit && self.$openid_selected_input.length == 0) { + if (!noautosubmit && self.$openid_selected_input.length === 0) { self.$el.find('form').submit(); } diff --git a/addons/auth_openid/static/src/xml/auth_openid.xml b/addons/auth_openid/static/src/xml/auth_openid.xml index 6a40439a012..75fd2a8fe45 100644 --- a/addons/auth_openid/static/src/xml/auth_openid.xml +++ b/addons/auth_openid/static/src/xml/auth_openid.xml @@ -4,44 +4,53 @@ <t t-extend="Login"> <t t-jquery=".oe_login .oe_login_logo" t-operation="after"> - <ul class="openid_providers oe_semantic_html_override"> - <li><a href="#login,password" title="Password" data-url="" id="btn_password">Password</a></li> - <li><a href="#google" title="Google" data-url="https://www.google.com/accounts/o8/id">Google</a></li> - <li><a href="#googleapps" title="Google Apps" data-url="https://www.google.com/accounts/o8/site-xrds?hd={id}">Google</a></li> - <li><a href="#launchpad" title="Launchpad" data-url="https://launchpad.net/~{id}">Launchpad</a></li> - <li><a href="#openid_url" title="OpenID" data-url="{id}">OpenID</a></li> - </ul> + <div class="openid_providers" data-modes="default openid"><ul> + <li><a href="#login,password" data-provider='Password' title="Password" data-url="" id="btn_password">Password</a></li> + <li><a href="#google" data-provider='Google' title="Google" data-url="https://www.google.com/accounts/o8/id">Google</a></li> + <li><a href="#googleapps" data-provider='Google Apps' title="Google Apps" data-url="https://www.google.com/accounts/o8/site-xrds?hd={id}">Google</a></li> + <li><a href="#launchpad" data-provider='Launchpad' title="Launchpad" data-url="https://launchpad.net/~{id}">Launchpad</a></li> + <li><a href="#openid_url" data-provider='OpenID' title="OpenID" data-url="{id}">OpenID</a></li> + </ul></div> </t> </t> <t t-extend="Login"> - <t t-jquery=".oe_login .oe_login_pane form ul li:nth-child(4)" t-operation="after"> - <li> + <t t-jquery=".oe_login .oe_login_pane form ul li:last-child()" t-operation="before"> + <li data-modes="openid" data-provider='googleapps'> Google Apps Domain </li> - <li> + <li data-modes="openid" data-provider='googleapps'> <input type="text" name="googleapps" /> </li> - <li> + <li data-modes="openid" data-provider='launchpad'> Username </li> - <li> + <li data-modes="openid" data-provider='launchpad'> <input type="text" name="launchpad" /> </li> - <li> + <li data-modes="openid" data-provider='openid_url'> OpenID URL </li> - <li> + <li data-modes="openid" data-provider='openid_url'> <input type="text" name="openid_url" /> </li> </t> </t> <t t-extend="Login"> - <t t-jquery=".oe_login .oe_login_pane form ul li:has(input)"> + <t t-jquery=".oe_login .oe_login_pane form ul li:has(input[name=password])"> + this.each(function() { + var $i = $(this); + $i.add($i.prev()).attr('data-provider', 'password'); + }); + </t> + <t t-jquery=".oe_login .oe_login_pane form ul li:has(input[name=login])"> this.each(function() { var $i = $(this), - dp = $i.find('input').attr('name'); - $i.add($i.prev()).attr('class', 'auth_choice').attr('data-provider', dp); + dp = $i.find('input').attr('name'), + $p = $i.prev(); + // $p may not be the correct label when auth_signup is installed. + while(($p.attr('data-modes') || 'default') !== 'default') { $p = $p.prev(); } + $i.add($p).attr('data-provider', dp); }); </t> </t> diff --git a/addons/auth_signup/res_users.py b/addons/auth_signup/res_users.py index 4e86de5b474..b5383e41775 100644 --- a/addons/auth_signup/res_users.py +++ b/addons/auth_signup/res_users.py @@ -161,14 +161,12 @@ class res_users(osv.Model): def _get_state(self, cr, uid, ids, name, arg, context=None): res = {} for user in self.browse(cr, uid, ids, context): - res[user.id] = ('reset' if user.signup_valid else - 'active' if user.login_date else - 'new') + res[user.id] = ('active' if user.login_date else 'new') return res _columns = { 'state': fields.function(_get_state, string='Status', type='selection', - selection=[('new', 'New'), ('active', 'Active'), ('reset', 'Resetting Password')]), + selection=[('new', 'Never Connected'), ('active', 'Activated')]), } def signup(self, cr, uid, values, token=None, context=None): @@ -270,16 +268,7 @@ class res_users(osv.Model): if mail_state and mail_state['state'] == 'exception': raise self.pool.get('res.config.settings').get_config_warning(cr, _("Cannot send email: no outgoing email server configured.\nYou can configure it under %(menu:base_setup.menu_general_configuration)s."), context) else: - return { - 'type': 'ir.actions.client', - 'name': '_(Server Notification)', - 'tag': 'action_notify', - 'params': { - 'title': 'Mail Sent to: %s' % user.name, - 'text': 'You can reset the password by yourself using this <a href=%s>link</a>' % user.partner_id.signup_url, - 'sticky': True, - } - } + return True def create(self, cr, uid, values, context=None): # overridden to automatically invite user to sign up diff --git a/addons/auth_signup/res_users_view.xml b/addons/auth_signup/res_users_view.xml index 201abba140b..28f66eb101d 100644 --- a/addons/auth_signup/res_users_view.xml +++ b/addons/auth_signup/res_users_view.xml @@ -17,11 +17,25 @@ <header> <field name="state" widget="statusbar"/> </header> + <div class="oe_form_box_info oe_text_center" attrs="{'invisible': [('signup_valid', '!=', True)]}"> + <p attrs="{'invisible': [('state', '!=', 'active')]}"> + <b>A password reset has been requested for this user. An email containing the following link has been sent:</b> + </p> + <p attrs="{'invisible': [('state', '!=', 'new')]}"> + <b>An invitation email containing the following subscription link has been sent:</b> + </p> + <p><field class="oe_inline" name="signup_url" widget="url"/></p> + <field name="signup_valid" invisible="1"/> + </div> </xpath> <!-- add Reset Password button --> <xpath expr="//div[@class='oe_right oe_button_box']//button" position="replace"> <button string="Send Reset Password Instructions" - type="object" name="action_reset_password" /> + type="object" name="action_reset_password" + attrs="{'invisible': [('state', '!=', 'active')]}"/> + <button string="Send an Invitation Email" + type="object" name="action_reset_password" context="{'create_user': 1}" + attrs="{'invisible': [('state', '!=', 'new')]}"/> </xpath> </field> </record> diff --git a/addons/auth_signup/static/src/js/auth_signup.js b/addons/auth_signup/static/src/js/auth_signup.js index fe071fde55d..bbaf907c625 100644 --- a/addons/auth_signup/static/src/js/auth_signup.js +++ b/addons/auth_signup/static/src/js/auth_signup.js @@ -56,7 +56,7 @@ openerp.auth_signup = function(instance) { self.rpc("/auth_signup/get_config", {dbname: dbname}).done(function(result) { self.signup_enabled = result.signup; self.reset_password_enabled = result.reset_password; - if (self.$("form input[name=login]").val()){ + if (!self.signup_enabled || self.$("form input[name=login]").val()){ self.set('login_mode', 'default'); } else { self.set('login_mode', 'signup'); diff --git a/addons/auth_signup/static/src/xml/auth_signup.xml b/addons/auth_signup/static/src/xml/auth_signup.xml index 9ef4f394e27..1c41dbed181 100644 --- a/addons/auth_signup/static/src/xml/auth_signup.xml +++ b/addons/auth_signup/static/src/xml/auth_signup.xml @@ -12,6 +12,9 @@ <li data-modes="default">Username</li> <li data-modes="signup reset">Username (Email)</li> </t> + <t t-jquery="form ul:first li:has(input[name=login], input[name=password]), form ul:first li:contains('Password')"> + this.attr('data-modes', 'default signup reset'); + </t> <t t-jquery="form ul:first li:has(input[name=password])" t-operation="after"> <li data-modes="signup reset">Confirm Password</li> <li data-modes="signup reset"><input name="confirm_password" type="password"/></li> diff --git a/addons/base_calendar/i18n/hu.po b/addons/base_calendar/i18n/hu.po index 3ddba871eff..0cf98289d91 100644 --- a/addons/base_calendar/i18n/hu.po +++ b/addons/base_calendar/i18n/hu.po @@ -13,7 +13,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-18 04:46+0000\n" +"X-Launchpad-Export-Date: 2013-03-19 05:33+0000\n" "X-Generator: Launchpad (build 16532)\n" #. module: base_calendar diff --git a/addons/base_import/i18n/hu.po b/addons/base_import/i18n/hu.po index 7892a528c57..2c3c4e60ab2 100644 --- a/addons/base_import/i18n/hu.po +++ b/addons/base_import/i18n/hu.po @@ -14,7 +14,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-18 04:46+0000\n" +"X-Launchpad-Export-Date: 2013-03-19 05:33+0000\n" "X-Generator: Launchpad (build 16532)\n" #. module: base_import diff --git a/addons/crm/crm_lead_view.xml b/addons/crm/crm_lead_view.xml index 236d49a72fd..5522273e8fa 100644 --- a/addons/crm/crm_lead_view.xml +++ b/addons/crm/crm_lead_view.xml @@ -104,9 +104,9 @@ </header> <sheet> <div class="oe_right oe_button_box" name="buttons"> - <button type="action" - name="%(act_crm_opportunity_crm_phonecall_new)d" - string="Phone Calls"/> + <button string="Schedule/Log Call" + name="%(opportunity2phonecall_act)d" + type="action"/> </div> <div class="oe_title"> <label for="name" class="oe_edit_only"/> diff --git a/addons/crm/i18n/hu.po b/addons/crm/i18n/hu.po index 6a5b8424cdd..193fbdfc6cb 100644 --- a/addons/crm/i18n/hu.po +++ b/addons/crm/i18n/hu.po @@ -13,7 +13,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2013-03-18 04:46+0000\n" +"X-Launchpad-Export-Date: 2013-03-19 05:33+0000\n" "X-Generator: Launchpad (build 16532)\n" #. module: crm diff --git a/addons/crm_partner_assign/res_partner_view.xml b/addons/crm_partner_assign/res_partner_view.xml index aeafc367792..433a290ae81 100644 --- a/addons/crm_partner_assign/res_partner_view.xml +++ b/addons/crm_partner_assign/res_partner_view.xml @@ -77,6 +77,7 @@ <field name="inherit_id" ref="base.view_partner_tree"/> <field name="arch" type="xml"> <field name="user_id" position="after"> + <field name="date_review_next"/> <field name="grade_id"/> <field name="activation"/> </field> @@ -104,17 +105,19 @@ <field name="arch" type="xml"> <xpath expr="//notebook[last()]" position="inside"> <page string="Geo Localization"> - <group colspan="2" col="2"> - <separator string="Partner Activation" colspan="2"/> - <field name="grade_id" widget="selection"/> - <field name="activation" widget="selection"/> - <field name="partner_weight"/> - </group> - <group colspan="2" col="2"> - <separator string="Partner Review" colspan="2"/> - <field name="date_review"/> - <field name="date_review_next"/> - <field name="date_partnership"/> + <group> + <group> + <separator string="Partner Activation" colspan="2"/> + <field name="grade_id" widget="selection"/> + <field name="activation" widget="selection"/> + <field name="partner_weight"/> + </group> + <group> + <separator string="Partner Review" colspan="2"/> + <field name="date_review"/> + <field name="date_review_next"/> + <field name="date_partnership"/> + </group> </group> <group colspan="2" col="2"> <separator string="Geo Localization" colspan="2"/> diff --git a/addons/hr_timesheet_sheet/hr_timesheet_sheet.py b/addons/hr_timesheet_sheet/hr_timesheet_sheet.py index d4e71cedbf5..4be032ba99b 100644 --- a/addons/hr_timesheet_sheet/hr_timesheet_sheet.py +++ b/addons/hr_timesheet_sheet/hr_timesheet_sheet.py @@ -213,6 +213,7 @@ class hr_timesheet_sheet(osv.osv): def onchange_employee_id(self, cr, uid, ids, employee_id, context=None): department_id = False + user_id = False if employee_id: empl_id = self.pool.get('hr.employee').browse(cr, uid, employee_id, context=context) department_id = empl_id.department_id.id diff --git a/addons/portal_anonymous/portal_anonymous_data.xml b/addons/portal_anonymous/portal_anonymous_data.xml index ae97f4a577a..eb1fd3889b4 100644 --- a/addons/portal_anonymous/portal_anonymous_data.xml +++ b/addons/portal_anonymous/portal_anonymous_data.xml @@ -9,6 +9,7 @@ <!-- Avoid auto-including this demo user in any default group --> <field name="groups_id" eval="[(5,)]"/> <field name="image">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</field> + <field name="share" eval="True"/> </record> <record id="portal.group_anonymous" model="res.groups"> diff --git a/addons/purchase/i18n/es_CO.po b/addons/purchase/i18n/es_CO.po new file mode 100644 index 00000000000..fd424c50845 --- /dev/null +++ b/addons/purchase/i18n/es_CO.po @@ -0,0 +1,2210 @@ +# Spanish (Colombia) 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 <EMAIL@ADDRESS>, 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2012-12-21 17:04+0000\n" +"PO-Revision-Date: 2013-03-19 03:56+0000\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: Spanish (Colombia) <es_CO@li.org>\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-19 05:33+0000\n" +"X-Generator: Launchpad (build 16532)\n" + +#. module: purchase +#: model:res.groups,name:purchase.group_analytic_accounting +msgid "Analytic Accounting for Purchases" +msgstr "Contabilidad analítica para Compras" + +#. module: purchase +#: model:ir.model,name:purchase.model_account_config_settings +msgid "account.config.settings" +msgstr "contabilidad.configuracion.parametros" + +#. module: purchase +#: view:board.board:0 +msgid "Monthly Purchases by Category" +msgstr "Compras Mensuales por Categoría" + +#. module: purchase +#: help:purchase.config.settings,module_warning:0 +msgid "" +"Allow to configure notification on products and trigger them when a user " +"wants to purchase a given product or a given supplier.\n" +"Example: Product: this product is deprecated, do not purchase more than 5.\n" +" Supplier: don't forget to ask for an express delivery." +msgstr "" +"Permite configurar notificaciones en los productos y lanzarlas cuando un " +"usuario quiera comprar un producto dado o en un proveedor determinado.<br>\n" +"Ejemplo: Producto: este producto está obsoleto - No comprar más de 5.<br>\n" +"  " +"; Proveedor: no olvidar preguntar por una entrega rápida." + +#. module: purchase +#: model:product.pricelist,name:purchase.list0 +msgid "Default Purchase Pricelist" +msgstr "Lista de Precios de Compra por Defecto" + +#. module: purchase +#: report:purchase.order:0 +msgid "Tel :" +msgstr "Tel [nbsp;]:" + +#. module: purchase +#: help:purchase.order,pricelist_id:0 +msgid "" +"The pricelist sets the currency used for this purchase order. It also " +"computes the supplier price for the selected products/quantities." +msgstr "" +"La lista de precios establece la moneda usada para esta orden de compra. " +"También calcula el precio al proveedor para los productos/cantidades " +"seleccionados." + +#. module: purchase +#: view:purchase.report:0 +#: field:purchase.report,day:0 +msgid "Day" +msgstr "Día" + +#. module: purchase +#: view:purchase.report:0 +msgid "Order of Day" +msgstr "Orden del Día" + +#. module: purchase +#: help:purchase.order,message_unread:0 +msgid "If checked new messages require your attention." +msgstr "Si está marcado, hay nuevos mensajes que requieren su atención." + +#. module: purchase +#: model:ir.ui.menu,name:purchase.menu_procurement_management_inventory +#: model:process.node,name:purchase.process_node_packinglist0 +#: model:process.node,name:purchase.process_node_productrecept0 +msgid "Incoming Products" +msgstr "Productos Entrantes" + +#. module: purchase +#: view:purchase.order:0 +msgid "Reference" +msgstr "Referencia" + +#. module: purchase +#: field:purchase.order.line,account_analytic_id:0 +msgid "Analytic Account" +msgstr "Cuenta Analítica" + +#. module: purchase +#: help:purchase.order,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 "" +"Contiene el resumen de la charla (número de mensajes, ...). Este resumen " +"viene directamente en formato HTML para que pueda insertarse en las vistas " +"kanban." + +#. module: purchase +#: code:addons/purchase/purchase.py:1024 +#, python-format +msgid "Configuration Error!" +msgstr "Error de Configuración!" + +#. module: purchase +#: code:addons/purchase/purchase.py:587 +#, python-format +msgid "You must first cancel all receptions related to this purchase order." +msgstr "" +"Primero tiene que cancelar todas las recepciones relacionas con esta orden " +"de compra." + +#. module: purchase +#: model:ir.model,name:purchase.model_res_partner +#: field:purchase.order.line,partner_id:0 +msgid "Partner" +msgstr "Empresa/Cliente" + +#. module: purchase +#: field:purchase.report,negociation:0 +msgid "Purchase-Standard Price" +msgstr "Precio Compra-Estándar" + +#. module: purchase +#: code:addons/purchase/purchase.py:1011 +#, python-format +msgid "No supplier defined for this product !" +msgstr "No se ha definido un proveedor para este producto!" + +#. module: purchase +#: model:ir.actions.act_window,help:purchase.action_picking_tree4_picking_to_invoice +msgid "" +"<p>\n" +" Here you can track all the product receptions of purchase\n" +" orders where the invoicing is \"Based on Incoming " +"Shipments\",\n" +" and for which you have not received a supplier invoice yet.\n" +" You can generate a supplier invoice based on those " +"receptions.\n" +" </p>\n" +" " +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +#: field:purchase.report,price_average:0 +msgid "Average Price" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Purchase order which are in the exception state" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,name:purchase.action_view_purchase_order_group +msgid "Merge Purchase orders" +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +#: field:purchase.report,price_total:0 +msgid "Total Price" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +#: field:purchase.order,minimum_planned_date:0 +#: report:purchase.quotation:0 +#: field:purchase.report,expected_date:0 +msgid "Expected Date" +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +msgid "Shipping address :" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Confirm Order" +msgstr "" + +#. module: purchase +#: field:purchase.config.settings,module_warning:0 +msgid "Alerts by products or supplier" +msgstr "" + +#. module: purchase +#: field:purchase.order,name:0 +#: view:purchase.order.line:0 +#: field:purchase.order.line,order_id:0 +msgid "Order Reference" +msgstr "" + +#. module: purchase +#: view:purchase.config.settings:0 +msgid "Invoicing Process" +msgstr "" + +#. module: purchase +#: model:process.transition,name:purchase.process_transition_approvingpurchaseorder0 +msgid "Approbation" +msgstr "" + +#. module: purchase +#: help:purchase.config.settings,group_uom:0 +msgid "" +"Allows you to select and maintain different units of measure for products." +msgstr "" + +#. module: purchase +#: help:purchase.order,minimum_planned_date:0 +msgid "" +"This is computed as the minimum scheduled date of all purchase order lines' " +"products." +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:260 +#, python-format +msgid "In order to delete a purchase order, you must cancel it first." +msgstr "" + +#. module: purchase +#: view:product.product:0 +msgid "When you sell this product, OpenERP will trigger" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Approved purchase orders" +msgstr "" + +#. module: purchase +#: model:email.template,subject:purchase.email_template_edi_purchase +msgid "${object.company_id.name} Order (Ref ${object.name or 'n/a' })" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Total Untaxed amount" +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +#: field:purchase.report,category_id:0 +msgid "Category" +msgstr "" + +#. module: purchase +#: model:process.transition,note:purchase.process_transition_purchaseinvoice0 +msgid "" +"A purchase order generates a supplier invoice, as soon as it is confirmed by " +"the buyer. Depending on the Invoicing control of the purchase order, the " +"invoice is based on received or on ordered quantities." +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +#: field:purchase.order,state:0 +#: view:purchase.order.line:0 +#: field:purchase.order.line,state:0 +#: view:purchase.report:0 +msgid "Status" +msgstr "" + +#. module: purchase +#: selection:purchase.report,month:0 +msgid "August" +msgstr "" + +#. module: purchase +#: view:product.product:0 +msgid "to" +msgstr "" + +#. module: purchase +#: selection:purchase.report,month:0 +msgid "June" +msgstr "" + +#. module: purchase +#: model:ir.model,name:purchase.model_purchase_report +msgid "Purchases Orders" +msgstr "" + +#. module: purchase +#: help:account.config.settings,group_analytic_account_for_purchases:0 +#: help:purchase.config.settings,group_analytic_account_for_purchases:0 +msgid "Allows you to specify an analytic account on purchase orders." +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,help:purchase.action_invoice_pending +msgid "" +"<p class=\"oe_view_nocontent_create\">\n" +" Click to create a draft invoice.\n" +" </p><p>\n" +" Use this menu to control the invoices to be received from your\n" +" supplier. OpenERP generates draft invoices from your purchase\n" +" orders or receptions, according to your settings.\n" +" </p><p>\n" +" Once you receive a supplier invoice, you can match it with the\n" +" draft invoice and validate it.\n" +" </p>\n" +" " +msgstr "" + +#. module: purchase +#: selection:purchase.report,month:0 +msgid "October" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:1024 +#, python-format +msgid "" +"The product \"%s\" has been defined with your company as reseller which " +"seems to be a configuration error!" +msgstr "" + +#. module: purchase +#: view:product.product:0 +msgid "When you sell this service to a customer," +msgstr "" + +#. module: purchase +#: model:process.transition,note:purchase.process_transition_createpackinglist0 +msgid "A pick list is generated to track the incoming products." +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,name:purchase.purchase_rfq +#: model:ir.ui.menu,name:purchase.menu_purchase_rfq +#: view:purchase.order:0 +#: view:purchase.report:0 +msgid "Quotations" +msgstr "" + +#. module: purchase +#: view:purchase.order.line_invoice:0 +msgid "Do you want to generate the supplier invoices?" +msgstr "" + +#. module: purchase +#: field:purchase.order.line,product_qty:0 +#: view:purchase.report:0 +#: field:purchase.report,quantity:0 +msgid "Quantity" +msgstr "" + +#. module: purchase +#: field:purchase.order,fiscal_position:0 +msgid "Fiscal Position" +msgstr "" + +#. module: purchase +#: field:purchase.config.settings,default_invoice_method:0 +msgid "Default invoicing control method" +msgstr "" + +#. module: purchase +#: model:ir.model,name:purchase.model_stock_picking_in +#: model:ir.ui.menu,name:purchase.menu_action_picking_tree4 +#: view:purchase.order:0 +msgid "Incoming Shipments" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,help:purchase.act_res_partner_2_supplier_invoices +msgid "" +"<p class=\"oe_view_nocontent_create\">\n" +" Click here to record a supplier invoice.\n" +" </p><p>\n" +" Supplier invoices can be pre-generated based on " +"purchase\n" +" orders or receptions. This allows you to control " +"invoices\n" +" you receive from your supplier according to the draft\n" +" document in OpenERP.\n" +" </p>\n" +" " +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +#: view:purchase.order.line:0 +msgid "Search Purchase Order" +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +msgid "Date Req." +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +#: view:purchase.order.line:0 +msgid "Purchase Order Lines" +msgstr "" + +#. module: purchase +#: help:purchase.order,dest_address_id:0 +msgid "" +"Put an address if you want to deliver directly from the supplier to the " +"customer. Otherwise, keep empty to deliver to your own company." +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,help:purchase.purchase_line_form_action2 +msgid "" +"<p>\n" +" Here you can track all the lines of purchase orders where " +"the\n" +" invoicing is \"Based on Purchase Order Lines\", and for " +"which you\n" +" have not received a supplier invoice yet. You can generate " +"a\n" +" draft supplier invoice based on the lines from this list.\n" +" </p>\n" +" " +msgstr "" + +#. module: purchase +#: field:purchase.order.line,date_planned:0 +msgid "Scheduled Date" +msgstr "" + +#. module: purchase +#: field:purchase.order,currency_id:0 +msgid "Currency" +msgstr "" + +#. module: purchase +#: field:purchase.order,journal_id:0 +msgid "Journal" +msgstr "" + +#. module: purchase +#: view:board.board:0 +#: model:ir.actions.act_window,name:purchase.purchase_draft +msgid "Request for Quotations" +msgstr "" + +#. module: purchase +#: field:purchase.order.line,move_ids:0 +msgid "Reservation" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Purchase orders that include lines not invoiced." +msgstr "" + +#. module: purchase +#: view:product.product:0 +#: field:product.template,purchase_ok:0 +msgid "Can be Purchased" +msgstr "" + +#. module: purchase +#: model:ir.ui.menu,name:purchase.menu_action_picking_tree_in_move +msgid "Incoming Products" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Request for Quotation " +msgstr "" + +#. module: purchase +#: help:purchase.order,partner_ref:0 +msgid "" +"Reference of the sales order or quotation sent by your supplier. It's mainly " +"used to do the matching when you receive the products as this reference is " +"usually written on the delivery order sent by your supplier." +msgstr "" + +#. module: purchase +#: view:purchase.config.settings:0 +#: view:purchase.order.group:0 +#: view:purchase.order.line_invoice:0 +msgid "or" +msgstr "" + +#. module: purchase +#: field:res.company,po_lead:0 +msgid "Purchase Lead Time" +msgstr "" + +#. module: purchase +#: model:process.transition,note:purchase.process_transition_invoicefrompurchase0 +msgid "" +"The invoice is created automatically if the Invoice control of the purchase " +"order is 'On order'. The invoice can also be generated manually by the " +"accountant (Invoice control = Manual)." +msgstr "" + +#. module: purchase +#: model:mail.message.subtype,name:purchase.mt_rfq_approved +msgid "RFQ Approved" +msgstr "" + +#. module: purchase +#: view:purchase.config.settings:0 +msgid "Apply" +msgstr "" + +#. module: purchase +#: field:purchase.order,amount_untaxed:0 +msgid "Untaxed Amount" +msgstr "" + +#. module: purchase +#: model:process.transition,note:purchase.process_transition_confirmingpurchaseorder0 +msgid "" +"The buyer has to approve the RFQ before being sent to the supplier. The RFQ " +"becomes a confirmed Purchase Order." +msgstr "" + +#. module: purchase +#: model:mail.message.subtype,name:purchase.mt_rfq_confirmed +msgid "RFQ Confirmed" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Customer Address" +msgstr "" + +#. module: purchase +#: selection:purchase.order,state:0 +msgid "RFQ Sent" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Not Invoiced" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +#: field:purchase.order,partner_id:0 +#: view:purchase.order.line:0 +#: view:purchase.report:0 +#: field:purchase.report,partner_id:0 +msgid "Supplier" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:525 +#, python-format +msgid "Define expense account for this company: \"%s\" (id:%d)." +msgstr "" + +#. module: purchase +#: model:process.transition,name:purchase.process_transition_packinginvoice0 +#: model:process.transition,name:purchase.process_transition_productrecept0 +msgid "From a Pick list" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,name:purchase.action_purchase_order_monthly_categ_graph +#: view:purchase.report:0 +msgid "Monthly Purchase by Category" +msgstr "" + +#. module: purchase +#: field:purchase.order.line,price_subtotal:0 +msgid "Subtotal" +msgstr "" + +#. module: purchase +#: field:purchase.order,shipped:0 +msgid "Received" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Purchase order which are in draft state" +msgstr "" + +#. module: purchase +#: view:product.product:0 +msgid "Suppliers" +msgstr "" + +#. module: purchase +#: view:product.product:0 +msgid "To Purchase" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,help:purchase.purchase_form_action +msgid "" +"<p class=\"oe_view_nocontent_create\">\n" +" Click to create a quotation that will be converted into a " +"purchase order. \n" +" </p><p>\n" +" Use this menu to search within your purchase orders by\n" +" references, supplier, products, etc. For each purchase " +"order,\n" +" you can track the related discussion with the supplier, " +"control\n" +" the products received and control the supplier invoices.\n" +" </p>\n" +" " +msgstr "" + +#. module: purchase +#: view:purchase.order.line:0 +msgid "Invoices and Receptions" +msgstr "" + +#. module: purchase +#: model:process.transition,note:purchase.process_transition_packinginvoice0 +msgid "" +"A Pick list generates an invoice. Depending on the Invoicing control of the " +"sales order, the invoice is based on delivered or on ordered quantities." +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +#: field:purchase.report,nbr:0 +msgid "# of Lines" +msgstr "" + +#. module: purchase +#: code:addons/purchase/wizard/purchase_line_invoice.py:106 +#, python-format +msgid "Define expense account for this product: \"%s\" (id:%d)." +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "(update)" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Calendar View" +msgstr "" + +#. module: purchase +#: help:purchase.order,shipped:0 +msgid "It indicates that a picking has been done" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:579 +#: code:addons/purchase/purchase.py:586 +#, python-format +msgid "Unable to cancel this purchase order." +msgstr "" + +#. module: purchase +#: model:ir.ui.menu,name:purchase.menu_procurement_management_invoice +msgid "Invoice Control" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,help:purchase.action_stock_move_report_po +msgid "" +"Reception Analysis allows you to easily check and analyse your company order " +"receptions and the performance of your supplier's deliveries." +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Print" +msgstr "" + +#. module: purchase +#: field:purchase.order,order_line:0 +msgid "Order Lines" +msgstr "" + +#. module: purchase +#: help:purchase.order,name:0 +msgid "" +"Unique number of the purchase order, computed automatically when the " +"purchase order is created." +msgstr "" + +#. module: purchase +#: model:ir.ui.menu,name:purchase.menu_product_pricelist_action2_purchase +#: model:ir.ui.menu,name:purchase.menu_purchase_config_pricelist +msgid "Pricelists" +msgstr "" + +#. module: purchase +#: model:product.pricelist.type,name:purchase.pricelist_type_purchase +#: field:res.partner,property_product_pricelist_purchase:0 +msgid "Purchase Pricelist" +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +msgid "Total :" +msgstr "" + +#. module: purchase +#: field:purchase.order,pricelist_id:0 +#: field:purchase.report,pricelist_id:0 +msgid "Pricelist" +msgstr "" + +#. module: purchase +#: selection:purchase.order,state:0 +msgid "Draft PO" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:941 +#: code:addons/purchase/purchase.py:956 +#: code:addons/purchase/purchase.py:960 +#: code:addons/purchase/wizard/purchase_order_group.py:47 +#, python-format +msgid "Warning!" +msgstr "" + +#. module: purchase +#: model:process.node,name:purchase.process_node_draftpurchaseorder0 +#: model:process.node,name:purchase.process_node_draftpurchaseorder1 +msgid "RFQ" +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +#: view:purchase.order:0 +#: field:purchase.order,date_order:0 +#: field:purchase.order.line,date_order:0 +#: field:purchase.report,date:0 +msgid "Order Date" +msgstr "" + +#. module: purchase +#: field:purchase.config.settings,group_uom:0 +msgid "Manage different units of measure for products" +msgstr "" + +#. module: purchase +#: model:process.node,name:purchase.process_node_invoiceafterpacking0 +#: model:process.node,name:purchase.process_node_invoicecontrol0 +msgid "Draft Invoice" +msgstr "" + +#. module: purchase +#: help:purchase.order,amount_tax:0 +msgid "The tax amount" +msgstr "" + +#. module: purchase +#: field:purchase.order,shipped_rate:0 +msgid "Received Ratio" +msgstr "" + +#. module: purchase +#: selection:purchase.report,month:0 +msgid "September" +msgstr "" + +#. module: purchase +#: selection:purchase.report,state:0 +msgid "Waiting Supplier Ack" +msgstr "" + +#. module: purchase +#: report:purchase.quotation:0 +msgid "Request for Quotation :" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,name:purchase.action_picking_tree4_picking_to_invoice +#: model:ir.ui.menu,name:purchase.menu_action_picking_tree4_picking_to_invoice +msgid "On Incoming Shipments" +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +msgid "Taxes :" +msgstr "" + +#. module: purchase +#: view:purchase.order.line:0 +msgid "Stock Moves" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:1156 +#, python-format +msgid "Draft Purchase Order created" +msgstr "" + +#. module: purchase +#: model:ir.ui.menu,name:purchase.menu_product_category_config_purchase +msgid "Product Categories" +msgstr "" + +#. module: purchase +#: help:purchase.order,invoiced:0 +msgid "It indicates that an invoice has been paid" +msgstr "" + +#. module: purchase +#: field:purchase.order,notes:0 +msgid "Terms and Conditions" +msgstr "" + +#. module: purchase +#: help:purchase.order,date_order:0 +msgid "Date on which this document has been created." +msgstr "" + +#. module: purchase +#: field:purchase.order,message_is_follower:0 +msgid "Is a Follower" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,name:purchase.action_purchase_order_report_graph +#: view:purchase.report:0 +msgid "Total Qty and Amount by month" +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +msgid "Extended Filters..." +msgstr "" + +#. module: purchase +#: code:addons/purchase/wizard/purchase_order_group.py:48 +#, python-format +msgid "Please select multiple order to merge in the list view." +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Exception" +msgstr "" + +#. module: purchase +#: model:ir.ui.menu,name:purchase.menu_purchase_partner_cat +msgid "Address Book" +msgstr "" + +#. module: purchase +#: model:ir.model,name:purchase.model_res_company +msgid "Companies" +msgstr "" + +#. module: purchase +#: view:purchase.order.group:0 +msgid "Are you sure you want to merge these orders?" +msgstr "" + +#. module: purchase +#: field:account.config.settings,module_purchase_analytic_plans:0 +msgid "Use multiple analytic accounts on orders" +msgstr "" + +#. module: purchase +#: view:product.product:0 +msgid "will be created in order to subcontract the job" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,name:purchase.action_purchase_line_product_tree +#: model:ir.actions.act_window,name:purchase.open_board_purchase +#: model:ir.ui.menu,name:purchase.menu_board_purchase +#: model:ir.ui.menu,name:purchase.menu_purchase_config +#: view:res.partner:0 +msgid "Purchases" +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +#: field:purchase.report,delay:0 +msgid "Days to Validate" +msgstr "" + +#. module: purchase +#: view:purchase.config.settings:0 +msgid "Supplier Features" +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +#: report:purchase.quotation:0 +msgid "Qty" +msgstr "" + +#. module: purchase +#: model:process.transition.action,name:purchase.process_transition_action_approvingcancelpurchaseorder0 +#: model:process.transition.action,name:purchase.process_transition_action_cancelpurchaseorder0 +#: view:purchase.config.settings:0 +#: view:purchase.order.group:0 +#: view:purchase.order.line_invoice:0 +msgid "Cancel" +msgstr "" + +#. module: purchase +#: sql_constraint:purchase.order:0 +msgid "Order Reference must be unique per Company!" +msgstr "" + +#. module: purchase +#: model:process.transition,name:purchase.process_transition_purchaseinvoice0 +msgid "From a purchase order" +msgstr "" + +#. module: purchase +#: model:ir.actions.report.xml,name:purchase.report_purchase_quotation +#: selection:purchase.report,state:0 +msgid "Request for Quotation" +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +msgid "Order of Month" +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +#: field:purchase.order.line,price_unit:0 +msgid "Unit Price" +msgstr "" + +#. module: purchase +#: field:purchase.order,date_approve:0 +#: field:purchase.report,date_approve:0 +msgid "Date Approved" +msgstr "" + +#. module: purchase +#: view:product.product:0 +msgid "a draft purchase order" +msgstr "" + +#. module: purchase +#: model:email.template,body_html:purchase.email_template_edi_purchase +msgid "" +"\n" +"<div style=\"font-family: 'Lucica Grande', Ubuntu, Arial, Verdana, sans-" +"serif; font-size: 12px; color: rgb(34, 34, 34); background-color: #FFF; \">\n" +"\n" +" <p>Hello$ ${object.partner_id.name},</p>\n" +" \n" +" <p>Here is a ${object.state in ('draft', 'sent') and 'request for " +"quotation' or 'purchase order confirmation'} from ${object.company_id.name}: " +"</p>\n" +" \n" +" <p style=\"border-left: 1px solid #8e0000; margin-left: 30px;\">\n" +" <strong>REFERENCES</strong><br />\n" +" Order number: <strong>${object.name}</strong><br />\n" +" Order total: <strong>${object.amount_total} " +"${object.pricelist_id.currency_id.name}</strong><br />\n" +" Order date: ${object.date_order}<br />\n" +" % if object.origin:\n" +" Order reference: ${object.origin}<br />\n" +" % endif\n" +" % if object.partner_ref:\n" +" Your reference: ${object.partner_ref}<br />\n" +" % endif\n" +" % if object.validator:\n" +" Your contact: <a href=\"mailto:${object.validator.email " +"or ''}?subject=Order%20${object.name}\">${object.validator.name}</a>\n" +" % endif\n" +" </p>\n" +"\n" +" <br/>\n" +" <p>If you have any question, do not hesitate to contact us.</p>\n" +" <p>Thank you!</p>\n" +" <br/>\n" +" <br/>\n" +" <div style=\"width: 375px; margin: 0px; padding: 0px; background-color: " +"#8E0000; border-top-left-radius: 5px 5px; border-top-right-radius: 5px 5px; " +"background-repeat: repeat no-repeat;\">\n" +" <h3 style=\"margin: 0px; padding: 2px 14px; font-size: 12px; color: " +"#DDD;\">\n" +" <strong style=\"text-" +"transform:uppercase;\">${object.company_id.name}</strong></h3>\n" +" </div>\n" +" <div style=\"width: 347px; margin: 0px; padding: 5px 14px; line-height: " +"16px; background-color: #F2F2F2;\">\n" +" <span style=\"color: #222; margin-bottom: 5px; display: block; \">\n" +" % if object.company_id.street:\n" +" ${object.company_id.street}<br/>\n" +" % endif\n" +" % if object.company_id.street2:\n" +" ${object.company_id.street2}<br/>\n" +" % endif\n" +" % if object.company_id.city or object.company_id.zip:\n" +" ${object.company_id.zip} ${object.company_id.city}<br/>\n" +" % endif\n" +" % if object.company_id.country_id:\n" +" ${object.company_id.state_id and ('%s, ' % " +"object.company_id.state_id.name) or ''} ${object.company_id.country_id.name " +"or ''}<br/>\n" +" % endif\n" +" </span>\n" +" % if object.company_id.phone:\n" +" <div style=\"margin-top: 0px; margin-right: 0px; margin-bottom: " +"0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: " +"0px; padding-left: 0px; \">\n" +" Phone: ${object.company_id.phone}\n" +" </div>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <div>\n" +" Web : <a " +"href=\"${object.company_id.website}\">${object.company_id.website}</a>\n" +" </div>\n" +" %endif\n" +" <p></p>\n" +" </div>\n" +"</div>\n" +" " +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +msgid "Order of Year" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,name:purchase.act_res_partner_2_purchase_order +msgid "RFQs and Purchases" +msgstr "" + +#. module: purchase +#: field:account.config.settings,group_analytic_account_for_purchases:0 +#: field:purchase.config.settings,group_analytic_account_for_purchases:0 +msgid "Analytic accounting for purchases" +msgstr "" + +#. module: purchase +#: model:process.transition,note:purchase.process_transition_confirmingpurchaseorder1 +msgid "" +"In case there is no supplier for this product, the buyer can fill the form " +"manually and confirm it. The RFQ becomes a confirmed Purchase Order." +msgstr "" + +#. module: purchase +#: help:purchase.config.settings,group_purchase_pricelist:0 +msgid "" +"Allows to manage different prices based on rules per category of Supplier.\n" +" Example: 10% for retailers, promotion of 5 EUR on this " +"product, etc." +msgstr "" + +#. module: purchase +#: model:ir.model,name:purchase.model_mail_mail +msgid "Outgoing Mails" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:456 +#, python-format +msgid "You cannot confirm a purchase order without any purchase order line." +msgstr "" + +#. module: purchase +#: help:purchase.order,message_ids:0 +msgid "Messages and communication history" +msgstr "" + +#. module: purchase +#: field:purchase.order,warehouse_id:0 +#: field:stock.picking.in,warehouse_id:0 +msgid "Destination Warehouse" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:941 +#, python-format +msgid "" +"Selected Unit of Measure does not belong to the same category as the product " +"Unit of Measure." +msgstr "" + +#. module: purchase +#: view:purchase.order.line_invoice:0 +msgid "Select an Open Sales Order" +msgstr "" + +#. module: purchase +#: model:ir.ui.menu,name:purchase.menu_purchase_unit_measure_purchase +#: model:ir.ui.menu,name:purchase.menu_purchase_uom_form_action +msgid "Units of Measure" +msgstr "" + +#. module: purchase +#: field:purchase.config.settings,group_purchase_pricelist:0 +msgid "Manage pricelist per supplier" +msgstr "" + +#. module: purchase +#: view:board.board:0 +msgid "Purchase Dashboard" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:580 +#, python-format +msgid "First cancel all receptions related to this purchase order." +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Approve Order" +msgstr "" + +#. module: purchase +#: help:purchase.report,date:0 +msgid "Date on which this document has been created" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +#: view:purchase.order.line:0 +#: view:purchase.report:0 +msgid "Group By..." +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Approved purchase order" +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +msgid "Purchase Orders Statistics" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +#: field:purchase.order,message_unread:0 +msgid "Unread Messages" +msgstr "" + +#. module: purchase +#: model:ir.ui.menu,name:purchase.menu_purchase_uom_categ_form_action +msgid "Unit of Measure Categories" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Set to Draft" +msgstr "" + +#. module: purchase +#: help:purchase.order,origin:0 +msgid "" +"Reference of the document that generated this purchase order request; a " +"sales order or an internal procurement request." +msgstr "" + +#. module: purchase +#: view:purchase.order.line:0 +msgid "Notes" +msgstr "" + +#. module: purchase +#: field:purchase.config.settings,module_purchase_requisition:0 +msgid "Manage purchase requisitions" +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +#: field:purchase.order,amount_tax:0 +#: field:purchase.order.line,taxes_id:0 +msgid "Taxes" +msgstr "" + +#. module: purchase +#: model:ir.ui.menu,name:purchase.menu_procurement_management_product +#: model:ir.ui.menu,name:purchase.menu_procurement_partner_contact_form +#: model:ir.ui.menu,name:purchase.menu_product_in_config_purchase +msgid "Products" +msgstr "" + +#. module: purchase +#: model:ir.model,name:purchase.model_stock_move +msgid "Stock Move" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:260 +#, python-format +msgid "Invalid Action!" +msgstr "" + +#. module: purchase +#: field:purchase.order,validator:0 +#: view:purchase.report:0 +msgid "Validated by" +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +#: field:purchase.report,price_standard:0 +msgid "Products Value" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Purchase orders which are in exception state" +msgstr "" + +#. module: purchase +#: model:process.node,note:purchase.process_node_draftpurchaseorder0 +#: model:process.node,note:purchase.process_node_draftpurchaseorder1 +msgid "Request for Quotations." +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Source" +msgstr "" + +#. module: purchase +#: model:ir.model,name:purchase.model_stock_picking +#: field:purchase.order,picking_ids:0 +msgid "Picking List" +msgstr "" + +#. module: purchase +#: report:purchase.quotation:0 +msgid "Fax:" +msgstr "" + +#. module: purchase +#: help:purchase.order,invoice_ids:0 +msgid "Invoices generated for a purchase order" +msgstr "" + +#. module: purchase +#: selection:purchase.config.settings,default_invoice_method:0 +msgid "Pre-generate draft invoices based on purchase orders" +msgstr "" + +#. module: purchase +#: help:product.template,purchase_ok:0 +msgid "Specify if the product can be selected in a purchase order line." +msgstr "" + +#. module: purchase +#: model:process.transition,note:purchase.process_transition_invoicefrompackinglist0 +msgid "" +"The invoice is created automatically if the Invoice control of the purchase " +"order is 'On picking'. The invoice can also be generated manually by the " +"accountant (Invoice control = Manual)." +msgstr "" + +#. module: purchase +#: report:purchase.quotation:0 +msgid "Regards," +msgstr "" + +#. module: purchase +#: selection:purchase.report,month:0 +msgid "July" +msgstr "" + +#. module: purchase +#: model:process.node,name:purchase.process_node_packinginvoice0 +msgid "Outgoing Products" +msgstr "" + +#. module: purchase +#: view:product.product:0 +msgid "" +"to buy the required quantities to the supplier.\n" +" The delivery order will be ready after having " +"received the\n" +" products." +msgstr "" + +#. module: purchase +#: view:product.product:0 +msgid "" +"a draft\n" +" purchase order" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:320 +#, python-format +msgid "Please create Invoices." +msgstr "" + +#. module: purchase +#: model:ir.model,name:purchase.model_procurement_order +msgid "Procurement" +msgstr "" + +#. module: purchase +#: selection:purchase.order,state:0 +#: selection:purchase.report,state:0 +msgid "Shipping Exception" +msgstr "" + +#. module: purchase +#: selection:purchase.report,month:0 +msgid "March" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Receive Invoice" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Receive Products" +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +#: field:purchase.report,month:0 +msgid "Month" +msgstr "" + +#. module: purchase +#: help:res.company,po_lead:0 +msgid "This is the leads/security time for each purchase order." +msgstr "" + +#. module: purchase +#: model:process.node,note:purchase.process_node_invoiceafterpacking0 +#: model:process.node,note:purchase.process_node_invoicecontrol0 +msgid "To be reviewed by the accountant." +msgstr "" + +#. module: purchase +#: model:ir.model,name:purchase.model_purchase_config_settings +msgid "purchase.config.settings" +msgstr "" + +#. module: purchase +#: model:process.node,note:purchase.process_node_approvepurchaseorder0 +#: model:process.node,note:purchase.process_node_confirmpurchaseorder0 +msgid "State of the Purchase Order." +msgstr "" + +#. module: purchase +#: field:purchase.order.line,product_uom:0 +msgid "Product Unit of Measure" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,help:purchase.purchase_pricelist_version_action +msgid "" +"<p class=\"oe_view_nocontent_create\">\n" +" Click to add a pricelist version.\n" +" </p><p>\n" +" There can be more than one version of a pricelist, each of\n" +" these must be valid during a certain period of time. Some\n" +" examples of versions: Main Prices, 2010, 2011, Summer " +"Sales,\n" +" etc.\n" +" </p>\n" +" " +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,name:purchase.action_view_purchase_line_invoice +msgid "Create invoices" +msgstr "" + +#. module: purchase +#: model:ir.model,name:purchase.model_purchase_order_line_invoice +msgid "Purchase Order Line Make Invoice" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:1141 +#, python-format +msgid "PO: %s" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Send by EMail" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:515 +#, python-format +msgid "Define purchase journal for this company: \"%s\" (id:%d)." +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Purchase Order " +msgstr "" + +#. module: purchase +#: help:purchase.config.settings,group_costing_method:0 +msgid "Allows you to compute product cost price based on average cost." +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,name:purchase.action_purchase_configuration +#: view:purchase.config.settings:0 +msgid "Configure Purchases" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Untaxed" +msgstr "" + +#. module: purchase +#: model:process.transition,name:purchase.process_transition_createpackinglist0 +msgid "Pick list generated" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,name:purchase.purchase_line_form_action2 +#: model:ir.ui.menu,name:purchase.menu_purchase_line_order_draft +msgid "On Purchase Order Lines" +msgstr "" + +#. module: purchase +#: report:purchase.quotation:0 +msgid "TVA:" +msgstr "" + +#. module: purchase +#: help:purchase.order,picking_ids:0 +msgid "" +"This is the list of incoming shipments that have been generated for this " +"purchase order." +msgstr "" + +#. module: purchase +#: field:purchase.config.settings,module_purchase_double_validation:0 +msgid "Force two levels of approvals" +msgstr "" + +#. module: purchase +#: model:ir.ui.menu,name:purchase.menu_product_pricelist_action2_purchase_type +msgid "Price Types" +msgstr "" + +#. module: purchase +#: help:purchase.order,date_approve:0 +msgid "Date on which purchase order has been approved" +msgstr "" + +#. module: purchase +#: model:process.node,name:purchase.process_node_approvepurchaseorder0 +#: view:purchase.order:0 +#: selection:purchase.report,state:0 +msgid "Approved" +msgstr "" + +#. module: purchase +#: selection:purchase.order,state:0 +#: selection:purchase.order.line,state:0 +#: selection:purchase.report,state:0 +msgid "Done" +msgstr "" + +#. module: purchase +#: model:process.transition,name:purchase.process_transition_invoicefrompackinglist0 +#: model:process.transition,name:purchase.process_transition_invoicefrompurchase0 +msgid "Invoice" +msgstr "" + +#. module: purchase +#: model:process.node,note:purchase.process_node_purchaseorder0 +msgid "Confirmed purchase order to invoice" +msgstr "" + +#. module: purchase +#: model:process.node,note:purchase.process_node_productrecept0 +msgid "Incoming products to control" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,help:purchase.purchase_rfq +msgid "" +"<p class=\"oe_view_nocontent_create\">\n" +" Click to create a request for quotation.\n" +" </p><p>\n" +" The quotation contains the history of the " +"discussion/negociation\n" +" you had with your supplier. Once confirmed, a request for\n" +" quotation is converted into a purchase order.\n" +" </p><p>\n" +" Most propositions of purchase orders are created " +"automatically\n" +" by OpenERP based on inventory needs.\n" +" </p>\n" +" " +msgstr "" + +#. module: purchase +#: model:process.transition,note:purchase.process_transition_approvingpurchaseorder0 +msgid "The supplier approves the Purchase Order." +msgstr "" + +#. module: purchase +#: code:addons/purchase/wizard/purchase_order_group.py:80 +#: model:ir.actions.act_window,name:purchase.purchase_form_action +#: model:ir.ui.menu,name:purchase.menu_purchase_form_action +#: view:purchase.order:0 +#: view:purchase.report:0 +#: view:res.partner:0 +#, python-format +msgid "Purchase Orders" +msgstr "" + +#. module: purchase +#: field:purchase.order,origin:0 +msgid "Source Document" +msgstr "" + +#. module: purchase +#: view:purchase.order.group:0 +msgid "Merge orders" +msgstr "" + +#. module: purchase +#: field:purchase.config.settings,module_purchase_analytic_plans:0 +msgid "Use multiple analytic accounts on purchase orders" +msgstr "" + +#. module: purchase +#: model:ir.ui.menu,name:purchase.menu_procurement_management +#: model:process.process,name:purchase.process_process_purchaseprocess0 +msgid "Purchase" +msgstr "" + +#. module: purchase +#: field:purchase.order,create_uid:0 +#: view:purchase.report:0 +#: field:purchase.report,user_id:0 +msgid "Responsible" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Manually Corrected" +msgstr "" + +#. module: purchase +#: field:purchase.config.settings,group_costing_method:0 +msgid "Compute product cost price based on average cost" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:350 +#: code:addons/purchase/wizard/purchase_line_invoice.py:137 +#: model:ir.actions.act_window,name:purchase.act_res_partner_2_supplier_invoices +#: view:res.partner:0 +#, python-format +msgid "Supplier Invoices" +msgstr "" + +#. module: purchase +#: field:purchase.order,product_id:0 +#: view:purchase.order.line:0 +#: field:purchase.order.line,product_id:0 +#: view:purchase.report:0 +#: field:purchase.report,product_id:0 +msgid "Product" +msgstr "" + +#. module: purchase +#: model:process.transition,name:purchase.process_transition_confirmingpurchaseorder0 +#: model:process.transition,name:purchase.process_transition_confirmingpurchaseorder1 +msgid "Confirmation" +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +msgid "TIN :" +msgstr "" + +#. module: purchase +#: model:ir.ui.menu,name:purchase.menu_product_by_category_purchase_form +msgid "Products by Category" +msgstr "" + +#. module: purchase +#: help:purchase.order.line,state:0 +msgid "" +" * The 'Draft' status is set automatically when purchase order in draft " +"status. \n" +"* The 'Confirmed' status is set automatically as confirm when purchase order " +"in confirm status. \n" +"* The 'Done' status is set automatically when purchase order is set as done. " +" \n" +"* The 'Cancelled' status is set automatically when user cancel purchase " +"order." +msgstr "" + +#. module: purchase +#: field:purchase.order,invoiced:0 +msgid "Invoice Received" +msgstr "" + +#. module: purchase +#: field:purchase.order,invoice_method:0 +msgid "Invoicing Control" +msgstr "" + +#. module: purchase +#: model:process.transition.action,name:purchase.process_transition_action_approvingpurchaseorder0 +msgid "Approve" +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +msgid "Reference UOM" +msgstr "" + +#. module: purchase +#: selection:purchase.report,month:0 +msgid "May" +msgstr "" + +#. module: purchase +#: model:res.groups,name:purchase.group_purchase_manager +msgid "Manager" +msgstr "" + +#. module: purchase +#: selection:purchase.order,invoice_method:0 +msgid "Based on Purchase Order lines" +msgstr "" + +#. module: purchase +#: field:purchase.order,amount_total:0 +msgid "Total" +msgstr "" + +#. module: purchase +#: help:account.config.settings,module_purchase_analytic_plans:0 +#: help:purchase.config.settings,module_purchase_analytic_plans:0 +msgid "" +"Allows the user to maintain several analysis plans. These let you split " +"lines on a purchase order between several accounts and analytic plans.\n" +" This installs the module purchase_analytic_plans." +msgstr "" + +#. module: purchase +#: field:purchase.order,location_id:0 +#: view:purchase.report:0 +#: field:purchase.report,location_id:0 +msgid "Destination" +msgstr "" + +#. module: purchase +#: field:purchase.order,dest_address_id:0 +msgid "Customer Address (Direct Delivery)" +msgstr "" + +#. module: purchase +#: model:ir.actions.client,name:purchase.action_client_purchase_menu +msgid "Open Purchase Menu" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:1028 +#, python-format +msgid "No address defined for the supplier" +msgstr "" + +#. module: purchase +#: field:purchase.order,company_id:0 +#: field:purchase.order.line,company_id:0 +#: view:purchase.report:0 +#: field:purchase.report,company_id:0 +msgid "Company" +msgstr "" + +#. module: purchase +#: selection:purchase.order,state:0 +#: selection:purchase.report,state:0 +msgid "Invoice Exception" +msgstr "" + +#. module: purchase +#: help:res.partner,property_product_pricelist_purchase:0 +msgid "" +"This pricelist will be used, instead of the default one, for purchases from " +"the current partner" +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +msgid "Fax :" +msgstr "" + +#. module: purchase +#: model:ir.model,name:purchase.model_stock_partial_picking +msgid "Partial Picking Processing Wizard" +msgstr "" + +#. module: purchase +#: model:product.pricelist.version,name:purchase.ver0 +msgid "Default Purchase Pricelist Version" +msgstr "" + +#. module: purchase +#: selection:purchase.order,invoice_method:0 +msgid "Based on generated draft invoice" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,name:purchase.action_stock_move_report_po +#: model:ir.ui.menu,name:purchase.menu_action_stock_move_report_po +msgid "Receptions Analysis" +msgstr "" + +#. module: purchase +#: field:purchase.order,message_ids:0 +msgid "Messages" +msgstr "" + +#. module: purchase +#: model:ir.actions.report.xml,name:purchase.report_purchase_order +#: model:ir.model,name:purchase.model_purchase_order +#: model:process.node,name:purchase.process_node_purchaseorder0 +#: field:procurement.order,purchase_id:0 +#: view:purchase.config.settings:0 +#: view:purchase.order:0 +#: selection:purchase.order,state:0 +#: field:res.partner,purchase_order_ids:0 +#: model:res.request.link,name:purchase.req_link_purchase_order +#: field:stock.picking,purchase_id:0 +#: field:stock.picking.in,purchase_id:0 +msgid "Purchase Order" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:320 +#: code:addons/purchase/purchase.py:456 +#: code:addons/purchase/purchase.py:514 +#: code:addons/purchase/purchase.py:525 +#: code:addons/purchase/wizard/purchase_line_invoice.py:105 +#, python-format +msgid "Error!" +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +msgid "Net Total :" +msgstr "" + +#. module: purchase +#: help:purchase.order,state:0 +msgid "" +"The status of the purchase order or the quotation request. A quotation is a " +"purchase order in a 'Draft' status. Then the order has to be confirmed by " +"the user, the status switch to 'Confirmed'. Then the supplier must confirm " +"the order to change the status to 'Approved'. When the purchase order is " +"paid and received, the status becomes 'Done'. If a cancel action occurs in " +"the invoice or in the reception of goods, the status becomes in exception." +msgstr "" + +#. module: purchase +#: selection:purchase.order,state:0 +#: selection:purchase.order.line,state:0 +#: selection:purchase.report,state:0 +msgid "Cancelled" +msgstr "" + +#. module: purchase +#: field:res.partner,purchase_order_count:0 +msgid "# of Purchase Order" +msgstr "" + +#. module: purchase +#: model:ir.model,name:purchase.model_mail_compose_message +msgid "Email composition wizard" +msgstr "" + +#. module: purchase +#: report:purchase.quotation:0 +msgid "Tel.:" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Resend Purchase Order" +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +msgid "Net Price" +msgstr "" + +#. module: purchase +#: model:ir.model,name:purchase.model_purchase_order_line +#: view:purchase.order.line:0 +#: field:stock.move,purchase_line_id:0 +msgid "Purchase Order Line" +msgstr "" + +#. module: purchase +#: model:process.transition.action,name:purchase.process_transition_action_confirmpurchaseorder0 +#: view:purchase.order.line_invoice:0 +msgid "Confirm" +msgstr "" + +#. module: purchase +#: selection:purchase.config.settings,default_invoice_method:0 +msgid "Based on receptions" +msgstr "" + +#. module: purchase +#: field:purchase.order,partner_ref:0 +msgid "Supplier Reference" +msgstr "" + +#. module: purchase +#: model:process.transition,note:purchase.process_transition_productrecept0 +msgid "" +"A Pick list generates a supplier invoice. Depending on the Invoicing control " +"of the purchase order, the invoice is based on received or on ordered " +"quantities." +msgstr "" + +#. module: purchase +#: field:purchase.order,message_follower_ids:0 +msgid "Followers" +msgstr "" + +#. module: purchase +#: help:purchase.config.settings,module_purchase_requisition:0 +msgid "" +"Purchase Requisitions are used when you want to request quotations from " +"several suppliers for a given set of products.\n" +" You can configure per product if you directly do a Request for " +"Quotation\n" +" to one supplier or if you want a purchase requisition to " +"negotiate with several suppliers." +msgstr "" + +#. module: purchase +#: field:purchase.order.line,invoice_lines:0 +msgid "Invoice Lines" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,help:purchase.action_purchase_order_report_all +msgid "" +"Purchase Analysis allows you to easily check and analyse your company " +"purchase history and performance. From this menu you can track your " +"negotiation performance, the delivery performance of your suppliers, etc." +msgstr "" + +#. module: purchase +#: model:email.template,report_name:purchase.email_template_edi_purchase +msgid "RFQ_${(object.name or '').replace('/','_')}" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:956 +#, python-format +msgid "The selected supplier only sells this product by %s" +msgstr "" + +#. module: purchase +#: model:process.transition.action,name:purchase.process_transition_action_invoicefrompurchaseorder0 +msgid "Create invoice" +msgstr "" + +#. module: purchase +#: field:purchase.order.line,move_dest_id:0 +msgid "Reservation Destination" +msgstr "" + +#. module: purchase +#: model:ir.ui.menu,name:purchase.menu_purchase_config_purchase +msgid "Configuration" +msgstr "" + +#. module: purchase +#: help:purchase.config.settings,module_purchase_double_validation:0 +msgid "" +"Provide a double validation mechanism for purchases exceeding minimum " +"amount.\n" +" This installs the module purchase_double_validation." +msgstr "" + +#. module: purchase +#: code:addons/purchase/edi/purchase_order.py:132 +#, python-format +msgid "EDI Pricelist (%s)" +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +#: field:purchase.report,product_uom:0 +msgid "Reference Unit of Measure" +msgstr "" + +#. module: purchase +#: model:process.node,note:purchase.process_node_packinginvoice0 +msgid "Outgoing products to invoice" +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +#: field:purchase.report,validator:0 +msgid "Validated By" +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +#: field:purchase.report,delay_pass:0 +msgid "Days to Deliver" +msgstr "" + +#. module: purchase +#: selection:purchase.report,month:0 +msgid "April" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +#: field:purchase.order,invoice_ids:0 +msgid "Invoices" +msgstr "" + +#. module: purchase +#: selection:purchase.report,month:0 +msgid "December" +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +msgid "Total Orders Lines by User per month" +msgstr "" + +#. module: purchase +#: help:purchase.order,amount_untaxed:0 +msgid "The amount without tax" +msgstr "" + +#. module: purchase +#: model:process.node,note:purchase.process_node_packinglist0 +msgid "List of ordered products." +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Incoming Shipments & Invoices" +msgstr "" + +#. module: purchase +#: selection:purchase.order,state:0 +msgid "Waiting Approval" +msgstr "" + +#. module: purchase +#: help:purchase.order,amount_total:0 +msgid "The total amount" +msgstr "" + +#. module: purchase +#: field:purchase.order,invoiced_rate:0 +#: field:purchase.order.line,invoiced:0 +msgid "Invoiced" +msgstr "" + +#. module: purchase +#: model:process.node,name:purchase.process_node_confirmpurchaseorder0 +#: selection:purchase.order.line,state:0 +msgid "Confirmed" +msgstr "" + +#. module: purchase +#: selection:purchase.order.line,state:0 +msgid "Draft" +msgstr "" + +#. module: purchase +#: model:ir.model,name:purchase.model_purchase_order_group +msgid "Purchase Order Merge" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,name:purchase.action_email_templates +msgid "Email Templates" +msgstr "" + +#. module: purchase +#: model:res.groups,name:purchase.group_purchase_user +msgid "User" +msgstr "" + +#. module: purchase +#: selection:purchase.report,month:0 +msgid "November" +msgstr "" + +#. module: purchase +#: view:purchase.order.line:0 +msgid "Manual Invoices" +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +msgid "Our Order Reference" +msgstr "" + +#. module: purchase +#: selection:purchase.report,month:0 +msgid "January" +msgstr "" + +#. module: purchase +#: help:purchase.order,invoice_method:0 +msgid "" +"Based on Purchase Order lines: place individual lines in 'Invoice Control > " +"Based on P.O. lines' from where you can selectively create an invoice.\n" +"Based on generated invoice: create a draft invoice you can validate later.\n" +"Bases on incoming shipments: let you create an invoice when receptions are " +"validated." +msgstr "" + +#. module: purchase +#: model:ir.ui.menu,name:purchase.menu_partner_categories_in_form +msgid "Partner Categories" +msgstr "" + +#. module: purchase +#: field:purchase.report,state:0 +msgid "Order Status" +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +msgid "Request for Quotation N°" +msgstr "" + +#. module: purchase +#: view:purchase.config.settings:0 +msgid "Invoicing Settings" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,name:purchase.action_purchase_order_by_user_all +msgid "Total Orders by User per month" +msgstr "" + +#. module: purchase +#: selection:purchase.order,invoice_method:0 +msgid "Based on incoming shipments" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:1018 +#, python-format +msgid "No default supplier defined for this product" +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +#: field:purchase.report,warehouse_id:0 +msgid "Warehouse" +msgstr "" + +#. module: purchase +#: code:addons/purchase/purchase.py:960 +#, python-format +msgid "" +"The selected supplier has a minimal quantity set to %s %s, you should not " +"purchase less." +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +#: field:purchase.order.line,name:0 +#: report:purchase.quotation:0 +msgid "Description" +msgstr "" + +#. module: purchase +#: report:purchase.quotation:0 +msgid "Expected Delivery address:" +msgstr "" + +#. module: purchase +#: selection:purchase.report,month:0 +msgid "February" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,name:purchase.action_invoice_pending +#: model:ir.ui.menu,name:purchase.menu_procurement_management_pending_invoice +msgid "On Draft Invoices" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,name:purchase.action_purchase_order_report_all +#: model:ir.ui.menu,name:purchase.menu_action_purchase_order_report_all +msgid "Purchase Analysis" +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +msgid "Your Order Reference" +msgstr "" + +#. module: purchase +#: report:purchase.order:0 +msgid "Purchase Order Confirmation N°" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Total amount" +msgstr "" + +#. module: purchase +#: model:ir.model,name:purchase.model_product_template +msgid "Product Template" +msgstr "" + +#. module: purchase +#: view:purchase.order.group:0 +msgid "" +" Please note that: \n" +" \n" +" Orders will only be merged if: \n" +" * Purchase Orders are in draft \n" +" * Purchase Orders belong to the same supplier \n" +" * Purchase Orders are have same stock location, same pricelist \n" +" \n" +" Lines will only be merged if: \n" +" * Order lines are exactly the same except for the product,quantity and unit " +"\n" +" " +msgstr "" + +#. module: purchase +#: field:purchase.order,message_summary:0 +msgid "Summary" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,name:purchase.purchase_pricelist_version_action +#: model:ir.ui.menu,name:purchase.menu_purchase_pricelist_version_action +msgid "Pricelist Versions" +msgstr "" + +#. module: purchase +#: field:purchase.order,payment_term_id:0 +msgid "Payment Term" +msgstr "" + +#. module: purchase +#: view:purchase.order:0 +msgid "Purchase orders which are in draft state" +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +#: field:purchase.report,name:0 +msgid "Year" +msgstr "" + +#. module: purchase +#: selection:purchase.config.settings,default_invoice_method:0 +msgid "Based on purchase order lines" +msgstr "" + +#. module: purchase +#: model:ir.actions.act_window,help:purchase.act_res_partner_2_purchase_order +msgid "" +"<p class=\"oe_view_nocontent_create\">\n" +" This supplier has no purchase order. Click to create a " +"new RfQ.\n" +" </p><p>\n" +" The request for quotation is the first step of the " +"purchases flow. Once\n" +" converted into a purchase order, you will be able to " +"control the reception\n" +" of the products and the supplier invoice.\n" +" </p>\n" +" " +msgstr "" + +#. module: purchase +#: view:purchase.report:0 +msgid "Orders" +msgstr "" diff --git a/addons/sale/sale.py b/addons/sale/sale.py index 09ee8d5e3fd..bf9e9484b9f 100644 --- a/addons/sale/sale.py +++ b/addons/sale/sale.py @@ -729,7 +729,7 @@ class sale_order_line(osv.osv): 'salesman_id':fields.related('order_id', 'user_id', type='many2one', relation='res.users', store=True, string='Salesperson'), 'company_id': fields.related('order_id', 'company_id', type='many2one', relation='res.company', string='Company', store=True, readonly=True), } - _order = 'order_id desc, sequence' + _order = 'order_id desc, sequence, id' _defaults = { 'product_uom' : _get_uom_id, 'discount': 0.0, diff --git a/addons/sale_analytic_plans/i18n/es_CO.po b/addons/sale_analytic_plans/i18n/es_CO.po new file mode 100644 index 00000000000..e10a4c9df00 --- /dev/null +++ b/addons/sale_analytic_plans/i18n/es_CO.po @@ -0,0 +1,33 @@ +# Spanish (Colombia) 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 <EMAIL@ADDRESS>, 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2012-12-21 17:06+0000\n" +"PO-Revision-Date: 2013-03-19 03:45+0000\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: Spanish (Colombia) <es_CO@li.org>\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-19 05:33+0000\n" +"X-Generator: Launchpad (build 16532)\n" + +#. module: sale_analytic_plans +#: field:sale.order.line,analytics_id:0 +msgid "Analytic Distribution" +msgstr "Distribución Analítica" + +#. module: sale_analytic_plans +#: model:ir.model,name:sale_analytic_plans.model_sale_order +msgid "Sales Order" +msgstr "Pedido de Venta" + +#. module: sale_analytic_plans +#: model:ir.model,name:sale_analytic_plans.model_sale_order_line +msgid "Sales Order Line" +msgstr "Línea de Pedido de Venta" diff --git a/addons/web_linkedin/static/src/js/linkedin.js b/addons/web_linkedin/static/src/js/linkedin.js index 661aecdc400..5d8d7a29b1d 100644 --- a/addons/web_linkedin/static/src/js/linkedin.js +++ b/addons/web_linkedin/static/src/js/linkedin.js @@ -88,7 +88,7 @@ openerp.web_linkedin = function(instance) { $("body").append(self.$linkedin); var tag = document.createElement('script'); tag.type = 'text/javascript'; - tag.src = "http://platform.linkedin.com/in.js"; + tag.src = "https://platform.linkedin.com/in.js"; tag.innerHTML = 'api_key : ' + self.api_key + '\nauthorize : true\nscope: r_network r_basicprofile'; // r_contactinfo r_fullprofile r_emailaddress'; document.getElementsByTagName('head')[0].appendChild(tag); |
