[MOV] website_sale_*: directory organization

This commit is contained in:
Jérome Maes
2016-07-12 14:29:31 +02:00
parent 42cfd81b32
commit c8d238093e
15 changed files with 67 additions and 63 deletions
+3 -3
View File
@@ -10,9 +10,9 @@ Delivery Costs
""",
'depends': ['website_sale', 'delivery', 'website_sale_stock'],
'data': [
'views/website_sale_delivery.xml',
'views/website_sale_delivery_view.xml',
'demo/website_sale_delivery_data.xml'
'views/website_sale_delivery_templates.xml',
'views/website_sale_delivery_views.xml',
'data/website_sale_delivery_data.xml'
],
'demo': [
'data/website_sale_delivery_demo.xml'
@@ -1,13 +0,0 @@
<openerp>
<data>
<record id="delivery.delivery_carrier" model="delivery.carrier">
<field name="website_published" eval="True"/>
</record>
<record id="delivery.normal_delivery_carrier" model="delivery.carrier">
<field name="website_published" eval="True"/>
</record>
</data>
</openerp>
@@ -1 +1,6 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
import res_country
import delivery
import sale_order
@@ -0,0 +1,12 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo import fields, models
class DeliveryCarrier(models.Model):
_name = 'delivery.carrier'
_inherit = ['delivery.carrier', 'website.published.mixin']
website_description = fields.Text(related='product_id.description_sale', string='Description for Online Quotations')
website_published = fields.Boolean(default=False)
@@ -0,0 +1,39 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo import fields, models
class ResCountry(models.Model):
_inherit = 'res.country'
def get_website_sale_countries(self, mode='billing'):
res = super(ResCountry, self).get_website_sale_countries(mode=mode)
if mode == 'shipping':
countries = self.env['res.country']
delivery_carriers = self.env['delivery.carrier'].sudo().search([('website_published', '=', True)])
for carrier in delivery_carriers:
if not carrier.country_ids and not carrier.state_ids:
countries = res
break
countries |= carrier.country_ids
res = res & countries
return res
def get_website_sale_states(self, mode='billing'):
res = super(ResCountry, self).get_website_sale_states(mode=mode)
states = self.env['res.country.state']
if mode == 'shipping':
dom = ['|', ('country_ids', 'in', self.id), ('country_ids', '=', False), ('website_published', '=', True)]
delivery_carriers = self.env['delivery.carrier'].sudo().search(dom)
for carrier in delivery_carriers:
if not carrier.country_ids and not carrier.state_ids:
states = res
break
states |= carrier.state_ids
res = res & states
return res
@@ -1,4 +1,5 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
import logging
from odoo import api, fields, models, _
@@ -7,14 +8,6 @@ from odoo.exceptions import ValidationError
_logger = logging.getLogger(__name__)
class DeliveryCarrier(models.Model):
_name = 'delivery.carrier'
_inherit = ['delivery.carrier', 'website.published.mixin']
website_description = fields.Text(related='product_id.description_sale', string='Description for Online Quotations')
website_published = fields.Boolean(default=False)
class SaleOrder(models.Model):
_inherit = 'sale.order'
@@ -139,38 +132,3 @@ class SaleOrder(models.Model):
self._check_carrier_quotation()
return values
class ResCountry(models.Model):
_inherit = 'res.country'
def get_website_sale_countries(self, mode='billing'):
res = super(ResCountry, self).get_website_sale_countries(mode=mode)
if mode == 'shipping':
countries = self.env['res.country']
delivery_carriers = self.env['delivery.carrier'].sudo().search([('website_published', '=', True)])
for carrier in delivery_carriers:
if not carrier.country_ids and not carrier.state_ids:
countries = res
break
countries |= carrier.country_ids
res = res & countries
return res
def get_website_sale_states(self, mode='billing'):
res = super(ResCountry, self).get_website_sale_states(mode=mode)
states = self.env['res.country.state']
if mode == 'shipping':
dom = ['|', ('country_ids', 'in', self.id), ('country_ids', '=', False), ('website_published', '=', True)]
delivery_carriers = self.env['delivery.carrier'].sudo().search(dom)
for carrier in delivery_carriers:
if not carrier.country_ids and not carrier.state_ids:
states = res
break
states |= carrier.state_ids
res = res & states
return res
+6 -3
View File
@@ -1,3 +1,6 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
{
'name': 'eCommerce Optional Products',
'category': 'Website',
@@ -10,11 +13,11 @@ Odoo E-Commerce
""",
'depends': ['website_sale'],
'data': [
'views/views.xml',
'views/templates.xml',
'views/product_views.xml',
'views/website_sale_options_templates.xml',
],
'demo': [
'data/demo.xml',
'data/product_demo.xml',
],
'qweb': ['static/src/xml/*.xml'],
'installable': True,
+1 -1
View File
@@ -13,6 +13,6 @@
],
'auto_install': True,
'data': [
'views/templates.xml',
'views/website_sale_stock_templates.xml',
]
}