summaryrefslogtreecommitdiff
path: root/addons/website_sale_stock/views
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
commit3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch)
treea44932296ef4a9b71d5f010906253d8c53727726 /addons/website_sale_stock/views
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/website_sale_stock/views')
-rw-r--r--addons/website_sale_stock/views/product_template_views.xml15
-rw-r--r--addons/website_sale_stock/views/res_config_settings_views.xml37
-rw-r--r--addons/website_sale_stock/views/stock_picking_views.xml13
-rw-r--r--addons/website_sale_stock/views/website_sale_stock_templates.xml60
4 files changed, 125 insertions, 0 deletions
diff --git a/addons/website_sale_stock/views/product_template_views.xml b/addons/website_sale_stock/views/product_template_views.xml
new file mode 100644
index 00000000..21ffdbf6
--- /dev/null
+++ b/addons/website_sale_stock/views/product_template_views.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+ <record id="product_template_form_view_inherit_website_sale_stock" model="ir.ui.view">
+ <field name="name">product.template.form.inherit.website.sale.stock</field>
+ <field name="model">product.template</field>
+ <field name="inherit_id" ref="website_sale.product_template_form_view" />
+ <field name="arch" type="xml">
+ <xpath expr="//field[@name='public_categ_ids']" position="after">
+ <field name="inventory_availability" string="Availability" widget="selection" attrs="{'invisible': [('type', 'in', ['service', 'consu'])]}"/>
+ <field name="available_threshold" attrs="{'invisible': ['|', ('type', 'in', ['service', 'consu']), ('inventory_availability', '!=', 'threshold')], 'required': [('inventory_availability', '=', 'threshold'), ('type', '=', 'product')]}"/>
+ <field name="custom_message" attrs="{'invisible': ['|', ('type', 'in', ['service', 'consu']), ('inventory_availability', '!=', 'custom')]}"/>
+ </xpath>
+ </field>
+ </record>
+</odoo>
diff --git a/addons/website_sale_stock/views/res_config_settings_views.xml b/addons/website_sale_stock/views/res_config_settings_views.xml
new file mode 100644
index 00000000..64b527e5
--- /dev/null
+++ b/addons/website_sale_stock/views/res_config_settings_views.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+
+ <record id="res_config_settings_view_form" model="ir.ui.view">
+ <field name="name">res.config.settings.view.form.inherit.website.sale.stock</field>
+ <field name="model">res.config.settings</field>
+ <field name="inherit_id" ref="website_sale.res_config_settings_view_form" />
+ <field name="arch" type="xml">
+ <xpath expr="//div[@id='product_availability_setting']" position="attributes">
+ <attribute name="title">Manage the inventory of your products and display their availability status on the website.</attribute>
+ </xpath>
+
+ <xpath expr="//div[@name='stock_inventory_availability']" position="inside">
+ <div class="content-group">
+ <div class="row mt16"
+ id="website_warehouse_setting"
+ groups="stock.group_stock_multi_warehouses">
+ <label for="website_warehouse_id" string="Warehouse" class="col-lg-3 o_light_label" />
+ <field name="website_warehouse_id"/>
+ </div>
+ <div class="row mt16"
+ id="inventory_availability_setting"
+ title="Default availability mode set on newly created storable products. This can be changed at the product level.">
+ <label for="inventory_availability" string="Mode" class="col-lg-3 o_light_label" />
+ <field name="inventory_availability" string="Inventory"/>
+ </div><br/>
+ <div class="row" id="available_treshold_setting" attrs="{'invisible': [('inventory_availability', '!=', 'threshold')]}">
+ <label for="available_threshold" string="Threshold" class="col-lg-3 o_light_label" />
+ <field name="available_threshold" class="oe_inline" attrs="{'required': [('inventory_availability', '=', 'threshold')]}"/>
+ </div>
+ </div>
+ </xpath>
+ </field>
+ </record>
+
+</odoo>
+
diff --git a/addons/website_sale_stock/views/stock_picking_views.xml b/addons/website_sale_stock/views/stock_picking_views.xml
new file mode 100644
index 00000000..1153465f
--- /dev/null
+++ b/addons/website_sale_stock/views/stock_picking_views.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+ <record id="view_picking_form_inherit_website_sale_stock" model="ir.ui.view">
+ <field name="name">stock.picking.form.inherit.website.sale.stock</field>
+ <field name="model">stock.picking</field>
+ <field name="inherit_id" ref="stock.view_picking_form"/>
+ <field name="arch" type="xml">
+ <xpath expr="//page[@name='extra']/group/group/field[@name='company_id']" position="before">
+ <field name="website_id" groups="website.group_multi_website" invisible="1"/>
+ </xpath>
+ </field>
+ </record>
+</odoo>
diff --git a/addons/website_sale_stock/views/website_sale_stock_templates.xml b/addons/website_sale_stock/views/website_sale_stock_templates.xml
new file mode 100644
index 00000000..cd010a29
--- /dev/null
+++ b/addons/website_sale_stock/views/website_sale_stock_templates.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+ <template id="assets_frontend" inherit_id="website.assets_frontend" name="Website Sale Stock">
+ <xpath expr="." position="inside">
+ <script type="text/javascript" src="/website_sale_stock/static/src/js/variant_mixin.js" />
+ </xpath>
+ </template>
+
+ <!-- Shopping Cart Lines -->
+ <template id="website_sale_stock_cart_lines" inherit_id="website_sale.cart_lines" name="Shopping Cart Lines">
+ <xpath expr="//input[@type='text'][hasclass('quantity')]" position="attributes">
+ <attribute name='t-att-data-max'>(line.product_uom_qty + (line.product_id.virtual_available - line.product_id.cart_qty)) if line.product_id.type == 'product' and line.product_id.inventory_availability in ['always', 'threshold'] else None</attribute>
+ </xpath>
+ <xpath expr="//div[hasclass('css_quantity')]//i[hasclass('fa-plus')]/.." position="replace">
+ <t t-if="line._get_stock_warning(clear=False)">
+ <div class="input-group-append">
+ <a t-attf-href="#" class="btn btn-link">
+ <i class='fa fa-warning text-warning' t-att-title="line._get_stock_warning()" role="img" aria-label="Warning"/>
+ </a>
+ </div>
+ </t>
+ <t t-else="1">
+ <t>$0</t>
+ </t>
+ </xpath>
+ <xpath expr="//div[hasclass('css_quantity')]" position="after">
+ <div class='availability_messages'/>
+ </xpath>
+ <xpath expr="//div[hasclass('js_cart_lines')]" position="after">
+ <t t-if='website_sale_order'>
+ <div t-if='website_sale_order._get_stock_warning(clear=False)' class="alert alert-warning" role="alert">
+ <strong>Warning!</strong> <t t-esc='website_sale_order._get_stock_warning()'/>
+ </div>
+ </t>
+ </xpath>
+ </template>
+
+ <template id="website_sale_stock_product" inherit_id="website_sale.product" priority="4">
+ <xpath expr="//a[@id='add_to_cart']" position="after">
+ <div class="availability_messages o_not_editable"/>
+ </xpath>
+ </template>
+
+ <template id="website_sale_stock_payment" inherit_id="website_sale.cart_summary">
+ <xpath expr="//table[@id='cart_products']//td[hasclass('td-qty')]" position="inside">
+ <t t-if='line._get_stock_warning(clear=False)'>
+ <i class='fa fa-warning text-warning' t-att-title="line._get_stock_warning()" role="img" aria-label="Warning"/>
+ </t>
+ </xpath>
+ <xpath expr="//table[@id='cart_products']" position="after">
+ <t t-if='website_sale_order'>
+ <t t-set='warning' t-value='website_sale_order._get_stock_warning(clear=False)' />
+ <div t-if='warning' class="alert alert-warning" role="alert">
+ <strong>Warning!</strong> <t t-esc='website_sale_order._get_stock_warning()'/>
+ </div>
+ </t>
+ </xpath>
+ </template>
+
+</odoo>