[MERGE] forward port branch saas-11 up to 9048865
This commit is contained in:
@@ -84,7 +84,7 @@ class CompanyLDAP(osv.osv):
|
|||||||
_logger.warning('Could not format LDAP filter. Your filter should contain one \'%s\'.')
|
_logger.warning('Could not format LDAP filter. Your filter should contain one \'%s\'.')
|
||||||
return False
|
return False
|
||||||
try:
|
try:
|
||||||
results = self.query(conf, filter)
|
results = self.query(conf, filter.encode('utf-8'))
|
||||||
|
|
||||||
# Get rid of (None, attrs) for searchResultReference replies
|
# Get rid of (None, attrs) for searchResultReference replies
|
||||||
results = [i for i in results if i[0]]
|
results = [i for i in results if i[0]]
|
||||||
|
|||||||
@@ -701,7 +701,7 @@ msgstr "R.S.Z. 4de kwartaal"
|
|||||||
#. module: l10n_be
|
#. module: l10n_be
|
||||||
#: model:account.account.template,name:l10n_be.a4540
|
#: model:account.account.template,name:l10n_be.a4540
|
||||||
msgid "ONSS. Arriérés"
|
msgid "ONSS. Arriérés"
|
||||||
msgstr ""
|
msgstr "Achterstallige bijdragen RSZ"
|
||||||
|
|
||||||
#. module: l10n_be
|
#. module: l10n_be
|
||||||
#: model:account.account.template,name:l10n_be.a4553
|
#: model:account.account.template,name:l10n_be.a4553
|
||||||
@@ -879,7 +879,7 @@ msgstr "Waardeverminderingen op voorraden"
|
|||||||
#. module: l10n_be
|
#. module: l10n_be
|
||||||
#: model:account.fiscal.position.template,name:l10n_be.fiscal_position_template_4
|
#: model:account.fiscal.position.template,name:l10n_be.fiscal_position_template_4
|
||||||
msgid "Régime Cocontractant"
|
msgid "Régime Cocontractant"
|
||||||
msgstr ""
|
msgstr "Medecontractant"
|
||||||
|
|
||||||
#. module: l10n_be
|
#. module: l10n_be
|
||||||
#: model:account.fiscal.position.template,name:l10n_be.fiscal_position_template_2
|
#: model:account.fiscal.position.template,name:l10n_be.fiscal_position_template_2
|
||||||
|
|||||||
@@ -128,7 +128,8 @@ function make_message (data) {
|
|||||||
subtype_description: data.subtype_description,
|
subtype_description: data.subtype_description,
|
||||||
is_author: data.author_id && data.author_id[0] === session.partner_id,
|
is_author: data.author_id && data.author_id[0] === session.partner_id,
|
||||||
is_note: data.is_note,
|
is_note: data.is_note,
|
||||||
is_system_notification: data.message_type === 'notification' && data.model === 'mail.channel',
|
is_system_notification: (data.message_type === 'notification' && data.model === 'mail.channel')
|
||||||
|
|| data.info === 'transient_message',
|
||||||
attachment_ids: data.attachment_ids || [],
|
attachment_ids: data.attachment_ids || [],
|
||||||
subject: data.subject,
|
subject: data.subject,
|
||||||
email_from: data.email_from,
|
email_from: data.email_from,
|
||||||
|
|||||||
+3
-4
@@ -185,9 +185,7 @@ class SaleOrder(models.Model):
|
|||||||
"""
|
"""
|
||||||
Trigger the change of fiscal position when the shipping address is modified.
|
Trigger the change of fiscal position when the shipping address is modified.
|
||||||
"""
|
"""
|
||||||
fiscal_position = self.env['account.fiscal.position'].get_fiscal_position(self.partner_id.id, self.partner_shipping_id.id)
|
self.fiscal_position_id = self.env['account.fiscal.position'].get_fiscal_position(self.partner_id.id, self.partner_shipping_id.id)
|
||||||
if fiscal_position:
|
|
||||||
self.fiscal_position_id = fiscal_position
|
|
||||||
return {}
|
return {}
|
||||||
|
|
||||||
@api.multi
|
@api.multi
|
||||||
@@ -919,7 +917,8 @@ class MailComposeMessage(models.TransientModel):
|
|||||||
order = self.env['sale.order'].browse([self._context['default_res_id']])
|
order = self.env['sale.order'].browse([self._context['default_res_id']])
|
||||||
if order.state == 'draft':
|
if order.state == 'draft':
|
||||||
order.state = 'sent'
|
order.state = 'sent'
|
||||||
return super(MailComposeMessage, self.with_context(mail_post_autofollow=True)).send_mail(auto_commit=auto_commit)
|
self = self.with_context(mail_post_autofollow=True)
|
||||||
|
return super(MailComposeMessage, self).send_mail(auto_commit=auto_commit)
|
||||||
|
|
||||||
|
|
||||||
class AccountInvoice(models.Model):
|
class AccountInvoice(models.Model):
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
<field name="inherit_id" ref="account.view_category_property_form"/>
|
<field name="inherit_id" ref="account.view_category_property_form"/>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<group name="account_property" position="inside">
|
<group name="account_property" position="inside">
|
||||||
<group name="account_stock_property" string="Account Stock Properties" attrs="{'invisible': [('property_valuation', '=', 'manual_periodic')]}">
|
<group name="account_stock_property" string="Account Stock Properties">
|
||||||
<field name="property_stock_account_input_categ_id" domain="[('deprecated', '=', False)]"/>
|
<field name="property_stock_account_input_categ_id" domain="[('deprecated', '=', False)]"/>
|
||||||
<field name="property_stock_account_output_categ_id" domain="[('deprecated', '=', False)]"/>
|
<field name="property_stock_account_output_categ_id" domain="[('deprecated', '=', False)]"/>
|
||||||
<field name="property_stock_valuation_account_id" domain="[('deprecated', '=', False)]"/>
|
<field name="property_stock_valuation_account_id" domain="[('deprecated', '=', False)]"/>
|
||||||
|
|||||||
@@ -88,7 +88,8 @@ class account_invoice(osv.osv):
|
|||||||
'account_id':dacc,
|
'account_id':dacc,
|
||||||
'product_id':i_line.product_id.id,
|
'product_id':i_line.product_id.id,
|
||||||
'uom_id':i_line.uom_id.id,
|
'uom_id':i_line.uom_id.id,
|
||||||
'account_analytic_id': False,
|
'account_analytic_id': i_line.account_analytic_id.id,
|
||||||
|
'analytic_tag_ids': i_line.analytic_tag_ids.ids and [(6, 0, i_line.analytic_tag_ids.ids)] or False,
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
@@ -100,7 +101,8 @@ class account_invoice(osv.osv):
|
|||||||
'account_id':cacc,
|
'account_id':cacc,
|
||||||
'product_id':i_line.product_id.id,
|
'product_id':i_line.product_id.id,
|
||||||
'uom_id':i_line.uom_id.id,
|
'uom_id':i_line.uom_id.id,
|
||||||
'account_analytic_id': False,
|
'account_analytic_id': i_line.account_analytic_id.id,
|
||||||
|
'analytic_tag_ids': i_line.analytic_tag_ids.ids and [(6, 0, i_line.analytic_tag_ids.ids)] or False,
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
return []
|
return []
|
||||||
|
|||||||
@@ -56,11 +56,11 @@ class stock_history(osv.osv):
|
|||||||
for ids in group_lines.values():
|
for ids in group_lines.values():
|
||||||
for product_id in ids:
|
for product_id in ids:
|
||||||
line_ids.add(product_id)
|
line_ids.add(product_id)
|
||||||
line_ids = list(line_ids)
|
|
||||||
lines_rec = {}
|
lines_rec = {}
|
||||||
if line_ids:
|
if line_ids:
|
||||||
cr.execute('SELECT id, product_id, price_unit_on_quant, company_id, quantity FROM stock_history WHERE id in %s', (tuple(line_ids),))
|
move_ids = tuple(abs(line_id) for line_id in line_ids)
|
||||||
lines_rec = cr.dictfetchall()
|
cr.execute('SELECT id, product_id, price_unit_on_quant, company_id, quantity FROM stock_history WHERE move_id in %s', (move_ids,))
|
||||||
|
lines_rec = tuple(rec for rec in cr.dictfetchall() if rec['id'] in line_ids)
|
||||||
lines_dict = dict((line['id'], line) for line in lines_rec)
|
lines_dict = dict((line['id'], line) for line in lines_rec)
|
||||||
product_ids = list(set(line_rec['product_id'] for line_rec in lines_rec))
|
product_ids = list(set(line_rec['product_id'] for line_rec in lines_rec))
|
||||||
products_rec = self.pool['product.product'].read(cr, uid, product_ids, ['cost_method', 'id'], context=context)
|
products_rec = self.pool['product.product'].read(cr, uid, product_ids, ['cost_method', 'id'], context=context)
|
||||||
|
|||||||
@@ -13,10 +13,11 @@ from openerp.addons.website_mail.controllers.main import _message_post_helper
|
|||||||
|
|
||||||
|
|
||||||
class sale_quote(http.Controller):
|
class sale_quote(http.Controller):
|
||||||
@http.route([
|
@http.route("/quote/<int:order_id>", type='http', auth="user", website=True)
|
||||||
"/quote/<int:order_id>",
|
def view_user(self, *args, **kwargs):
|
||||||
"/quote/<int:order_id>/<token>"
|
return self.view(*args, **kwargs)
|
||||||
], type='http', auth="public", website=True)
|
|
||||||
|
@http.route("/quote/<int:order_id>/<token>", type='http', auth="public", website=True)
|
||||||
def view(self, order_id, pdf=None, token=None, message=False, **post):
|
def view(self, order_id, pdf=None, token=None, message=False, **post):
|
||||||
# use SUPERUSER_ID allow to access/view order for public user
|
# use SUPERUSER_ID allow to access/view order for public user
|
||||||
# only if he knows the private token
|
# only if he knows the private token
|
||||||
|
|||||||
@@ -574,11 +574,8 @@ class WebsiteSale(http.Controller):
|
|||||||
order.onchange_partner_id()
|
order.onchange_partner_id()
|
||||||
elif mode[1] == 'shipping':
|
elif mode[1] == 'shipping':
|
||||||
order.partner_shipping_id = partner_id
|
order.partner_shipping_id = partner_id
|
||||||
order.onchange_partner_shipping_id()
|
|
||||||
|
|
||||||
order.order_line._compute_tax_id()
|
|
||||||
order.message_partner_ids = [(4, partner_id), (3, request.website.partner_id.id)]
|
order.message_partner_ids = [(4, partner_id), (3, request.website.partner_id.id)]
|
||||||
|
|
||||||
if not errors:
|
if not errors:
|
||||||
return request.redirect(kw.get('callback') or '/shop/checkout')
|
return request.redirect(kw.get('callback') or '/shop/checkout')
|
||||||
|
|
||||||
@@ -622,6 +619,9 @@ class WebsiteSale(http.Controller):
|
|||||||
if redirection:
|
if redirection:
|
||||||
return redirection
|
return redirection
|
||||||
|
|
||||||
|
|
||||||
|
order.onchange_partner_shipping_id()
|
||||||
|
order.order_line._compute_tax_id()
|
||||||
request.session['sale_last_order_id'] = order.id
|
request.session['sale_last_order_id'] = order.id
|
||||||
request.website.sale_get_order(update_pricelist=True)
|
request.website.sale_get_order(update_pricelist=True)
|
||||||
extra_step = request.env.ref('website_sale.extra_info_option')
|
extra_step = request.env.ref('website_sale.extra_info_option')
|
||||||
|
|||||||
Reference in New Issue
Block a user