[MERGE] forward port of branch 7.0 up to e2dd18f
[odoo/odoo.git] / addons / product / product_view.xml
index f0908dd..35efd04 100644 (file)
@@ -8,7 +8,7 @@
             <field name="model">product.product</field>
             <field name="arch" type="xml">
                 <search string="Product">
-                   <field name="name" string="Product" filter_domain="['|',('name','ilike',self),('default_code','ilike',self)]"/>
+                   <field name="name" string="Product" filter_domain="['|','|',('name','ilike',self),('default_code','ilike',self),('variants','ilike',self)]"/>
                    <filter string="Services" icon="terp-accessories-archiver" domain="[('type','=','service')]"/>
                    <filter string="Consumable" name="consumable" icon="terp-accessories-archiver" domain="[('type','=','consu')]" help="Consumable products"/>
                    <separator/>
@@ -23,6 +23,7 @@
                        <filter string='Default Unit of Measure' icon="terp-mrp" domain="[]" context="{'group_by' : 'uom_id'}"/>
                        <filter string='Type' icon="terp-stock_symbol-selection" domain="[]" context="{'group_by' : 'type'}"/>
                        <filter string='Company' icon="terp-go-home" domain="[]" context="{'group_by' : 'company_id'}" groups="base.group_multi_company"/>
+                       <filter string='Template' name="template_id" domain="[]" context="{'group_by' : 'product_tmpl_id'}" groups="product.group_product_variant"/>
                    </group>
                 </search>
             </field>
@@ -36,9 +37,9 @@
                 <tree colors="red:virtual_available&lt;0;blue:virtual_available&gt;=0 and state in ('draft', 'end', 'obsolete');black:virtual_available&gt;=0 and state not in ('draft', 'end', 'obsolete')" string="Products">
                     <field name="default_code"/>
                     <field name="name"/>
+                    <field name="variants" groups="product.group_product_variant"/>
                     <field name="categ_id" invisible="1"/>
                     <field name="type" invisible="1"/>
-                    <field name="variants" groups="product.group_product_variant"/>
                     <field name="uom_id" string="Unit of Measure" groups="product.group_uom"/>
                     <field name="qty_available"/>
                     <field name="virtual_available"/>
@@ -47,6 +48,7 @@
                     <field name="standard_price" invisible="1"/>
                     <field name="state"/>
                     <field name="company_id" groups="base.group_multi_company" invisible="1"/>
+                    <field name="product_tmpl_id" invisible="1"/>
                 </tree>
             </field>
         </record>
             <field name="arch" type="xml">
                 <form string="Product" version="7.0">
                     <sheet>
-                        <field name="image_medium" widget="image" class="oe_avatar oe_left"/>
+                        <field name="is_only_child" invisible="1"/>
+                        <field name="image_medium" widget="image" class="oe_avatar oe_left"
+                            attrs="{'readonly': [('is_only_child', '=', False)]}"/>
                         <div class="oe_title">
                             <div class="oe_edit_only">
-                                <label for="name" string="Product Name"/>
+                                <label for="name" name='label_name' string="Product Name"
+                                    attrs="{'invisible': [('is_only_child', '=', False)]}"/>
+                                <label for="name" name='label_name' string="Product Template"
+                                    attrs="{'invisible': [('is_only_child', '=', True)]}"/>
                             </div>
                             <h1>
-                                <field name="name"/>
+                                <field name="name" class="oe_inline"
+                                    attrs="{'required': [('is_only_child', '=', True)],
+                                            'invisible': [('is_only_child', '=', False)]}"/>
+                                <field name="product_tmpl_id" class="oe_inline" readonly="1" required="0"
+                                    attrs="{'invisible': [('is_only_child', '=', True)]}"/>
+                                <span groups="product.group_product_variant"
+                                    attrs="{'invisible': [('is_only_child', '=', True), ('variants', '=', False)]}">
+                                    - <field name="variants" placeholder="Variant Name" class="oe_inline"/>
+                                </span>
                             </h1>
+                            <span attrs="{'invisible': [('is_only_child', '=', True)]}">
+                                <p>Generic product settings are managed on
+                                    <button name="open_product_template" type="object" string="the template" class="oe_link"/>
+                                </p>
+                            </span>
                             <label for="categ_id" class="oe_edit_only"/>
-                            <h2><field name="categ_id"/></h2>
+                            <h2><field name="categ_id" attrs="{'readonly': [('is_only_child', '=', False)]}"/></h2>
+                            <label for="public_categ_id" class="oe_edit_only"/>
+                            <h3><field name="public_categ_id" attrs="{'readonly': [('is_only_child', '=', False)]}"/></h3>
                             <div name="options" groups="base.group_user">
                                 <field name="sale_ok"/>
                                 <label for="sale_ok"/>
                             <page string="Information">
                                 <group>
                                     <group>
-                                        <field name="type"/>
-                                        <field name="uom_id" on_change="onchange_uom(uom_id,uom_po_id)" groups="product.group_uom"/>
-                                        <field name="list_price"/>
+                                        <field name="type"
+                                            attrs="{'invisible': [('is_only_child', '=', False)]}"/>
+                                        <field name="uom_id" on_change="onchange_uom(uom_id,uom_po_id)" groups="product.group_uom"
+                                            attrs="{'invisible': [('is_only_child', '=', False)]}"/>
+                                        <field name="lst_price" string="Public Sale Price"
+                                            attrs="{'readonly': [('is_only_child', '=', False)]}"/>
+                                        <field name="price_extra"
+                                            attrs="{'invisible': [('is_only_child', '=', True)]}"/>
                                     </group>
                                     <group>
                                         <field name="default_code"/>
                                         <div name="ean">
                                             <field name="ean13" placeholder="e.g. 5901234123457"/>
                                         </div>
-                                    </group>
-                                    <group>
-                                        <field groups="product.group_product_variant" name="variants"/>
-                                        <field name="price_margin" groups="product.group_product_variant"/>
-                                        <field name="price_extra" groups="product.group_product_variant"/>
+                                        <field name="company_id" groups="base.group_multi_company" widget="selection"
+                                            attrs="{'invisible': [('is_only_child', '=', False)]}"/>
+                                        <field name="active" />
                                     </group>
                                 </group>
-                                <field name="description" placeholder="describe the product characteristics..."/>
+                                <field name="description" placeholder="describe the product characteristics..."
+                                    attrs="{'readonly': [('is_only_child', '=', False)]}"/>
                             </page>
                             <page string="Procurements" groups="base.group_user">
                                 <group name="procurement">
                                     <group name="general">
-                                        <field name="cost_method" groups="product.group_costing_method"/>
-                                        <field name="standard_price" attrs="{'readonly':[('cost_method','=','average')]}"/>
+                                        <field name="cost_method" groups="product.group_costing_method"
+                                            attrs="{'readonly': [('is_only_child', '=', False)]}"/>
+                                        <field name="standard_price"
+                                            attrs="{'readonly': ['|', ('cost_method','=','average'), ('is_only_child', '=', False)]}"/>
                                     </group>
                                     <group name="procurement_uom" groups="product.group_uom" string="Purchase">
-                                        <field name="uom_po_id"/>
+                                        <field name="uom_po_id"
+                                            attrs="{'readonly': [('is_only_child', '=', False)]}"/>
                                     </group>
                                 </group>
                                 <separator string="Description for Suppliers"/>
                             <page string="Inventory" groups="base.group_user">
                                 <group name="inventory">
                                     <group name="status" string="Status">
-                                        <field name="state"/>
-                                        <field name="product_manager"/>
+                                        <field name="state"
+                                            attrs="{'readonly': [('is_only_child', '=', False)]}"/>
+                                        <field name="product_manager"
+                                            attrs="{'readonly': [('is_only_child', '=', False)]}"
+                                            context="{'default_groups_ref': ['base.group_user', 'base.group_partner_manager', 'base.group_sale_manager']}"/>
                                     </group>
                                     <group name="Weights" string="Weights">
-                                        <field digits="(14, 3)" name="volume" attrs="{'readonly':[('type','=','service')]}"/>
-                                        <field name="weight" attrs="{'readonly':[('type','=','service')]}"/>
-                                        <field name="weight_net" attrs="{'readonly':[('type','=','service')]}"/>
+                                        <field digits="(14, 3)" name="volume"
+                                            attrs="{'readonly': ['|', ('type','=','service'), ('is_only_child', '=', False)]}"/>
+                                        <field name="weight"
+                                            attrs="{'readonly': ['|', ('type','=','service'), ('is_only_child', '=', False)]}"/>
+                                        <field name="weight_net" 
+                                            attrs="{'readonly': ['|', ('type','=','service'), ('is_only_child', '=', False)]}"/>
                                     </group>
                                 </group>
                             </page>
                                 <group name="sale">
                                     <group string="Sale Conditions">
                                         <label for="warranty"/>
-                                        <div>
+                                        <div attrs="{'readonly': [('is_only_child', '=', False)]}">
                                             <field name="warranty" class="oe_inline"/> months
                                         </div>
                                     </group>
                                     <group groups="product.group_uos" string="Unit of Measure">
-                                        <field name="uos_id"/>
-                                        <field name="uos_coeff"/>
-                                        <field name="mes_type"/>
+                                        <field name="uos_id"
+                                            attrs="{'readonly': [('is_only_child', '=', False)]}"/>
+                                        <field name="uos_coeff"
+                                            attrs="{'readonly': [('is_only_child', '=', False)]}"/>
+                                        <field name="mes_type"
+                                            attrs="{'readonly': [('is_only_child', '=', False)]}"/>
                                     </group>
                                 </group>
-                                <field name="packaging" groups="product.group_stock_packaging">
+                                <field name="packaging" groups="product.group_stock_packaging"
+                                        attrs="{'readonly': [('is_only_child', '=', False)]}">
                                     <form string="Packaging" version="7.0">
                                         <group col="4">
                                             <field name="ean"/>
                                     </form>
                                 </field>
                                 <separator string="Description for Quotations"/>
-                                <field name="description_sale" placeholder="note to be displayed on quotations..."/>
+                                <field name="description_sale" placeholder="note to be displayed on quotations..."
+                                    attrs="{'readonly': [('is_only_child', '=', False)]}"/>
                             </page>
                         </notebook>
                     </sheet>
                                 <div class="oe_kanban_details">
                                     <h4>
                                         <a type="open">
-                                             <t t-if="record.code.raw_value">[<field name="code"/>]</t> <field name="name"/>
+                                             <t t-if="record.code.raw_value">[<field name="code"/>]</t> <field name="name"/> <t t-if="record.variants.raw_value">(<field name="variants"/>)</t>
                                         </a>
                                     </h4>
                                     <div name="tags"/>
         </record>
 
         <menuitem id="base.menu_product" name="Products" parent="base.menu_base_partner" sequence="9"/>
-        <menuitem action="product.product_normal_action_sell" id="product.menu_products" parent="base.menu_product" sequence="1"/>
+        <menuitem id="product.menu_products" action="product.product_normal_action_sell" parent="base.menu_product" sequence="1"/>
 
         <record id="product_normal_action_puchased" model="ir.actions.act_window">
             <field name="name">Products</field>
             action="product_category_action"
             id="product.menu_products_category"
             parent="base.menu_product"
-            sequence="0" groups="base.group_no_one"/>
+            sequence="30" groups="base.group_no_one"/>
         <record id="product_category_action_form" model="ir.actions.act_window">
             <field name="name">Product Categories</field>
             <field name="type">ir.actions.act_window</field>
         </record>
 
 
+        <!-- Product Public Categories -->
+        <record id="product_public_category_form_view" model="ir.ui.view">
+            <field name="name">product.public.category.form</field>
+            <field name="model">product.public.category</field>
+            <field name="arch" type="xml">
+                <form string="Pos/Public Categories" version="7.0">
+                    <sheet>
+                        <field name="image_medium" widget='image' class="oe_avatar oe_right"/>
+                        <div class="oe_left">
+                            <group>
+                                <field name="name"/>
+                                <field name="parent_id"/>
+                                <field name="sequence"/>
+                            </group>
+                        </div>
+                    </sheet>
+                </form>
+            </field>
+        </record>
+        <record id="product_public_category_tree_view" model="ir.ui.view">
+            <field name="name">product.public.category.tree</field>
+            <field name="model">product.public.category</field>
+            <field name="field_parent" eval="False"/>
+            <field name="arch" type="xml">
+                <tree string="Product Product Categories">
+                    <field name="sequence" invisible="1"/>
+                    <field name="complete_name"/>
+                </tree>
+            </field>
+        </record>
+        <record id="product_public_category_action" model="ir.actions.act_window">
+            <field name="name">Pos/Public Product Categories</field>
+            <field name="type">ir.actions.act_window</field>
+            <field name="res_model">product.public.category</field>
+            <field name="view_type">form</field>
+            <field name="view_mode">tree,form</field>
+            <field name="view_id" eval="False"/>
+            <field name="help" type="html">
+              <p class="oe_view_nocontent_create">
+                Click to define a new category.
+              </p><p>
+                Categories are used to browse your products through the
+                touchscreen interface.
+              </p><p>
+                If you put a photo on the category, the layout of the
+                touchscreen interface will automatically. We suggest not to put
+                a photo on categories for small (1024x768) screens.
+              </p>
+            </field>
+        </record>
+        <menuitem action="product_public_category_action" id="menu_product_public_category" parent="prod_config_main" sequence="10" />
+        <!-- END -->
+
         <!-- Unit of Measure -->
 
         <record id="product_uom_tree_view" model="ir.ui.view">
             </field>
         </record>
         <menuitem
-            action="product_ul_form_action" groups="product.group_stock_packaging" id="menu_product_ul_form_action" parent="prod_config_main" sequence="3"/>
+            action="product_ul_form_action" groups="product.group_stock_packaging" id="menu_product_ul_form_action" parent="prod_config_main" sequence="5"/>
 
         <record id="product_packaging_tree_view" model="ir.ui.view">
             <field name="name">product.packaging.tree.view</field>
             </field>
         </record>
 
+        <!-- Variants -->
+        <record id="product_variant_search_form_view" model="ir.ui.view">
+            <field name="name">product.variant.search.form</field>
+            <field name="model">product.product</field>
+            <field name="arch" type="xml">
+                <search string="Product Variant">
+                   <field name="product_tmpl_id"/>
+                   <field name="name" string="Product" filter_domain="['|','|',('name','ilike',self),('default_code','ilike',self),('variants','ilike',self)]"/>
+                   <group  expand='0' string='Group by...'>
+                       <filter string='Template' name="template_id" domain="[]" context="{'group_by' : 'product_tmpl_id'}"/>
+                   </group>
+                </search>
+            </field>
+        </record>
         <record id="product_variant_form_view" model="ir.ui.view">
             <field name="name">product.variant.form</field>
             <field name="model">product.product</field>
                     <group col="4">
                         <field name="product_tmpl_id"/>
                         <field name="active"/>
-                        <field name="variants"/>
+                        <field name="variants" required="1"/>
                         <field name="default_code"/>
                         <field name="price_margin"/>
                         <field name="price_extra"/>
                 </form>
             </field>
         </record>
-
         <record id="product_variant_tree_view" model="ir.ui.view">
             <field name="name">product.variant.tree</field>
             <field name="model">product.product</field>
             <field name="arch" type="xml">
                 <tree string="Product Variant">
                     <field name="product_tmpl_id"/>
-                    <field name="active"/>
                     <field name="variants"/>
                     <field name="default_code"/>
                     <field name="price_margin"/>
                     <field name="price_extra"/>
+                    <field name="company_id" invisible="1"/>
+                    <field name="type" invisible="1"/>
+                    <field name="uom_id" invisible="1"/>
+                    <field name="categ_id" invisible="1"/>
                 </tree>
             </field>
         </record>
+        <record id="product_variant_action" model="ir.actions.act_window">
+            <field name="name">Product Variants</field>
+            <field name="type">ir.actions.act_window</field>
+            <field name="domain">[('variants','!=', '')]</field>
+            <field name="res_model">product.product</field>
+            <field name="view_type">form</field>
+            <field name="view_mode">tree,form,kanban</field>
+            <field name="view_id" ref="product_variant_tree_view"/>
+            <field name="search_view_id" ref="product_variant_search_form_view"/>
+            <field name="help" type="html">
+              <p class="oe_view_nocontent_create">
+                Click to define a new variant of product.
+              </p>
+            </field>
+        </record>
+        <record id="tree_view_product_variant" model="ir.actions.act_window.view">
+            <field name="sequence" eval="10"/>
+            <field name="view_mode">tree</field>
+            <field name="view_id" ref="product_variant_tree_view"/>
+            <field name="act_window_id" ref="product_variant_action"/>
+        </record>
+        <record id="form_view_product_variant" model="ir.actions.act_window.view">
+            <field name="sequence" eval="20"/>
+            <field name="view_mode">form</field>
+            <field name="view_id" ref="product_variant_form_view"/>
+            <field name="act_window_id" ref="product_variant_action"/>
+        </record>
+        <menuitem action="product.product_variant_action" id="product.menu_variant_product" parent="prod_config_main" sequence="4" groups="product.group_product_variant"/>
+
+        <!-- templates -->
+
+        <record id="product_template_search_view" model="ir.ui.view">
+            <field name="name">product.template.search</field>
+            <field name="model">product.template</field>
+            <field name="arch" type="xml">
+                <search string="Product Template">
+                    <field name="name" string="Product"/>
+                    <filter string="Services" icon="terp-accessories-archiver" domain="[('type','=','service')]"/>
+                    <filter string="Consumable" name="consumable" icon="terp-accessories-archiver" domain="[('type','=','consu')]" help="Consumable products"/>
+                    <separator/>
+                    <filter string="Can be Sold" name="filter_to_sell" icon="terp-accessories-archiver-minus" domain="[('sale_ok','=',1)]"/>
+                    <field name="categ_id"/>
+                    <group  expand='0' string='Group by...'>
+                       <filter string='Category' icon="terp-stock_symbol-selection" domain="[]" context="{'group_by' : 'categ_id'}"/>
+                       <filter string='Default Unit of Measure' icon="terp-mrp" domain="[]" context="{'group_by' : 'uom_id'}"/>
+                       <filter string='Type' icon="terp-stock_symbol-selection" domain="[]" context="{'group_by' : 'type'}"/>
+                    </group>
+                </search>
+            </field>
+        </record>
 
         <record id="product_template_tree_view" model="ir.ui.view">
             <field name="name">product.template.product.tree</field>
                     <field name="categ_id"/>
                     <field name="type"/>
                     <field name="state"/>
+                    <field name="uom_id" invisible="1"/>
                 </tree>
             </field>
         </record>
             <field name="model">product.template</field>
             <field name="arch" type="xml">
                 <form string="Product Template" version="7.0">
-                    <label for="name" class="oe_edit_only"/>
-                    <h1><field name="name"/></h1>
-                    <label for="categ_id" class="oe_edit_only"/>
-                    <h2><field name="categ_id"/></h2>
-                    <notebook>
-                        <page string="Information">
-                        <group>
-                            <group string="Product Type">
+                    <sheet>
+                        <field name="image_medium" widget="image" class="oe_avatar oe_left"/>
+                        <div class="oe_title">
+                            <div class="oe_edit_only">
+                                <label for="name" string="Product Name"/>
+                            </div>
+                            <h1>
+                                <field name="name"/>
+                            </h1>
+                            <label for="categ_id" class="oe_edit_only"/>
+                            <h2><field name="categ_id"/></h2>
+                            <label for="public_categ_id" class="oe_edit_only"/>
+                            <h3><field name="public_categ_id"/></h3>
+                            <div name="options" groups="base.group_user">
                                 <field name="sale_ok"/>
-                            </group>
-                            <group string="Procurement">
-                                <field name="type"/>
-                            </group>
-
-                            <group string="Base Prices">
-                                <field name="list_price"/>
-                                <field name="standard_price" attrs="{'readonly':[('cost_method','=','average')]}"/>
-                                <field name="cost_method"/>
-                            </group>
-
-                            <group string="Weights">
-                                <field digits="(14, 3)" name="volume" attrs="{'readonly':[('type','=','service')]}"/>
-                                <field digits="(14, 3)" name="weight" attrs="{'readonly':[('type','=','service')]}"/>
-                                <field digits="(14, 3)" name="weight_net" attrs="{'readonly':[('type','=','service')]}"/>
-                            </group> 
-
-                            <group name="status" string="Status">
-                                <field name="categ_id"/>
-                                <field name="state"/>
-                                <field name="product_manager"/>
-                            </group>
-
-                            <group name="uom" string="Unit of Measure">
-                                <field name="uom_id" on_change="onchange_uom(uom_id,uom_po_id)" groups="product.group_uom"/>
-                                <field name="uom_po_id"/>
-                            </group>
-
-                            <group name="uos" groups="product.group_uom" string="Second Unit of Measure">
-                                <field name="uos_id"/>
-                                <field name="uos_coeff"/>
-                                <field name="mes_type"/>
-                            </group>
-                        </group>
-                        </page>
-                        <page string="Procurement &amp; Locations">
-                            <group>
-                                <group name="delay" string="Delays">
-                                    <label for="produce_delay"/>
-                                    <div>
-                                        <field name="produce_delay" class="oe_inline"/> days
-                                    </div>
-                                    <field name="warranty"/>
+                                <label for="sale_ok"/>
+                            </div>
+                        </div>
+                        <notebook>
+                            <page string="Information">
+                                <group  colspan="4">
+                                    <group>
+                                        <field name="type"/>
+                                        <field name="uom_id" on_change="onchange_uom(uom_id,uom_po_id)" groups="product.group_uom"/>
+                                        <field name="list_price"/>
+                                    </group>
+                                    <group>
+                                        <field name="company_id" groups="base.group_multi_company" widget="selection"/>
+                                    </group>
                                 </group>
-                            </group>
-
-                        </page>
-                        <page string="Suppliers">
-                            <field name="seller_ids"/>
-                        </page>
-                        <page string="Descriptions">
-                            <separator string="Internal Description"/>
-                            <field name="description"/>
-                            <separator string="Sale Description"/>
-                            <field name="description_sale"/>
-                            <separator string="Purchase Description"/>
-                            <field name="description_purchase"/>
-                        </page>
-                    </notebook>
+                                <group colspan="4" string="Product Variants" groups="product.group_product_variant">
+                                    <field colspan="4" name="product_variant_ids" nolabel="1" >
+                                        <tree string="Product Variants" editable="bottom">
+                                            <field name="variants" required="1"/>
+                                            <field name="price_margin" string="Variant Price Margin"/>
+                                            <field name="price_extra"/>
+                                            <field name="lst_price" string="Sale Price" readonly="1"/>
+                                        </tree>
+                                    </field>
+                                </group>
+                                <field name="description" placeholder="describe the product characteristics..."/>
+                            </page>
+                            <page string="Procurements" groups="base.group_user">
+                                <group name="procurement">
+                                    <group name="general">
+                                        <field name="cost_method" groups="product.group_costing_method"/>
+                                        <field name="standard_price" attrs="{'readonly':[('cost_method','=','average')]}"/>
+                                    </group>
+                                    <group name="delay" string="Delays">
+                                        <label for="produce_delay"/>
+                                        <div>
+                                            <field name="produce_delay" class="oe_inline" style="vertical-align:baseline"/> days
+                                        </div>
+                                    </group>
+                                    <group name="procurement_uom" groups="product.group_uom" string="Purchase">
+                                        <field name="uom_po_id"/>
+                                    </group>
+                                </group>
+                                <separator string="Suppliers"/>
+                                <field name="seller_ids"/>
+                                <separator string="Description for Suppliers"/>
+                                <field name="description_purchase" placeholder="This note will be displayed on requests for quotation..."/>
+                            </page>
+                            <page string="Inventory">
+                                <group name="inventory">
+                                     <group name="status" string="Status">
+                                        <field name="state"/>
+                                        <field name="product_manager"/>
+                                    </group>
+                                    <group name ="weight" string="Weights">
+                                        <field digits="(14, 3)" name="volume" attrs="{'readonly':[('type','=','service')]}"/>
+                                        <field digits="(14, 3)" name="weight" attrs="{'readonly':[('type','=','service')]}"/>
+                                        <field digits="(14, 3)" name="weight_net" attrs="{'readonly':[('type','=','service')]}"/>
+                                    </group>
+                                </group>
+                            </page>
+                            <page string="Sales" attrs="{'invisible':[('sale_ok','=',False)]}">   
+                                <group name="sale">
+                                    <group name="sale_condition" string="Sale Conditions">
+                                        <label for="warranty"/>
+                                        <div>
+                                            <field name="warranty" class="oe_inline" style="vertical-align:baseline"/> months
+                                        </div>
+                                    </group>
+                                    <group groups="product.group_uos" string="Unit of Measure">
+                                        <field name="uos_id"/>
+                                        <field name="uos_coeff"/>
+                                        <field name="mes_type"/>
+                                    </group>
+                                </group>
+                                <separator string="Description for Quotations"/>
+                                <field name="description_sale" placeholder="note to be displayed on quotations..."/>
+                            </page>
+                        </notebook>
+                    </sheet>
+                    <div class="oe_chatter">
+                        <field name="message_follower_ids" widget="mail_followers"/>
+                        <field name="message_ids" widget="mail_thread"/>
+                    </div>
                 </form>
             </field>
         </record>
 
-        <record id="product_template_action_tree" model="ir.actions.act_window">
-            <field name="name">Product Templates</field>
+        <record model="ir.ui.view" id="product_template_kanban_view">
+            <field name="name">Product Template Kanban</field>
+            <field name="model">product.template</field>
+            <field name="arch" type="xml">
+                <kanban>
+                    <field name="image_small"/>
+                    <field name="list_price"/>
+                    <templates>
+                        <t t-name="kanban-box">
+                            <div class="oe_kanban_vignette oe_semantic_html_override">
+                                <a type="open"><img t-att-src="kanban_image('product.template', 'image_small', record.id.value)" class="oe_kanban_image"/></a>
+                                <div class="oe_kanban_details">
+                                    <h4>
+                                        <a type="open">
+                                             <field name="name"/> 
+                                        </a>
+                                    </h4>
+                                    <div name="tags"/>
+                                    <ul>
+                                        <li>Price: <field name="list_price"></field></li>
+                                    </ul>
+                                </div>
+                            </div>
+                        </t>
+                    </templates>
+                </kanban>
+            </field>
+        </record>
+
+        <record id="product_template_action" model="ir.actions.act_window">
+            <field name="name">Templates</field>
             <field name="type">ir.actions.act_window</field>
             <field name="res_model">product.template</field>
+            <field name="view_mode">kanban,tree,form</field>
             <field name="view_type">form</field>
-            <field name="view_id" ref="product_template_tree_view"/>
+            <field name="view_id" ref="product_template_kanban_view"/>
+            <field name="context">{"search_default_filter_to_sell":1}</field>
         </record>
 
+        <menuitem action="product_template_action"
+            id="menu_product_template_action"
+            parent="base.menu_product" sequence="20" 
+            groups="product.group_product_variant"/>
+
     </data>
 </openerp>