Amit (Open ERP) has proposed merging 
lp:~openerp-dev/openobject-addons/trunk-kabanization-product-kanban-view-apa 
into lp:~openerp-dev/openobject-addons/trunk-kanban-views.

Requested reviews:
  OpenERP R&D Team (openerp-dev)

For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-kabanization-product-kanban-view-apa/+merge/77446
-- 
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-kabanization-product-kanban-view-apa/+merge/77446
Your team OpenERP R&D Team is requested to review the proposed merge of 
lp:~openerp-dev/openobject-addons/trunk-kabanization-product-kanban-view-apa 
into lp:~openerp-dev/openobject-addons/trunk-kanban-views.
=== added file 'product/images/product.png'
Binary files product/images/product.png	1970-01-01 00:00:00 +0000 and product/images/product.png	2011-09-29 05:10:27 +0000 differ
=== modified file 'product/product.py'
--- product/product.py	2011-09-25 22:15:43 +0000
+++ product/product.py	2011-09-29 05:10:27 +0000
@@ -460,6 +460,7 @@
         'active': lambda *a: 1,
         'price_extra': lambda *a: 0.0,
         'price_margin': lambda *a: 1.0,
+        'color': 0,
     }
 
     _name = "product.product"
@@ -486,8 +487,10 @@
         'price_margin': fields.float('Variant Price Margin', digits_compute=dp.get_precision('Sale Price')),
         'pricelist_id': fields.dummy(string='Pricelist', relation='product.pricelist', type='many2one'),
         'name_template': fields.related('product_tmpl_id', 'name', string="Name", type='char', size=128, store=True),
+        'color': fields.integer('Color Index'),
+        'product_image': fields.binary('Image'),
     }
-
+    
     def unlink(self, cr, uid, ids, context=None):
         unlink_ids = []
         unlink_product_tmpl_ids = []

=== modified file 'product/product_view.xml'
--- product/product_view.xml	2011-09-15 12:03:44 +0000
+++ product/product_view.xml	2011-09-29 05:10:27 +0000
@@ -69,7 +69,7 @@
             <field eval="7" name="priority"/>
             <field name="arch" type="xml">
                 <form string="Product">
-                   <group colspan="4" col="6">
+                   <group colspan="4" col="8">
                     <group colspan="4" col="2">
                         <separator string="Name" colspan="2"/>
                         <field name="name"/>
@@ -85,6 +85,9 @@
                         <field name="sale_ok"/>
                         <field name="purchase_ok"/>
                     </group>
+                    <group colspan="1" col="1">
+                        <field name="product_image" widget='image' nolabel="1"/>
+                    </group> 
                    </group>
 
                     <notebook colspan="4">
@@ -191,6 +194,68 @@
                 </form>
             </field>
         </record>
+        
+        <!-- Product Kanban View  -->
+        <record model="ir.ui.view" id="product_kanban_view">
+            <field name="name">Product Kanban</field>
+            <field name="model">product.product</field>
+            <field name="type">kanban</field>
+            <field name="arch" type="xml">
+                <kanban default_group_by="type">
+                    <templates>
+                        <t t-name="kanban-box">
+                            <t t-set="color" t-value="kanban_color(record.color.raw_value || record.type.raw_value)"/>
+                            <div t-att-class="color + (record.color.raw_value == 1 ? ' oe_kanban_color_alert' : '')">
+                                <div class="oe_kanban_box oe_kanban_color_border">
+                                    <table class="oe_kanban_table oe_kanban_box_header oe_kanban_color_bgdark oe_kanban_color_border oe_kanban_draghandle">
+                                        <tr>
+                                            <td class="oe_kanban_title1" align="left" valign="middle">
+                                                <t t-if="record.default_code.raw_value">[<field name="default_code"/>]</t>
+                                                <field name="name"/>
+                                            </td>
+                                            <td align="right" valign="top" width="22">
+                                                <img t-att-src="kanban_gravatar(record.product_manager.raw_value, 22)" class="oe_kanban_gravatar"/>
+                                            </td>
+                                        </tr>
+                                    </table>
+                                    <div class="oe_kanban_box_content oe_kanban_color_bglight oe_kanban_box_show_onclick_trigger">
+                                        <table class="oe_kanban_table">
+                                            <tr>
+                                                <td valign="top" width="22">
+                                                    <t t-if="record.product_image.raw_value">
+                                                        <img t-att-src="'data:image/png;base64,'+record.product_image.raw_value" width='48' height='48'/>
+                                                    </t>
+                                                    <t t-if="!record.product_image.raw_value">
+                                                        <img src="/web/static/src/img/product_default.png"/>
+                                                    </t> 
+                                                </td>
+                                                <td>
+                                                    <div class="oe_kanban_title2">
+                                                        <t t-if="record.type.raw_value=='service'">No Stock</t>
+                                                        <t t-if="record.type.raw_value!='service'">
+                                                            <div><field name="qty_available"/> On Hand , <field name="virtual_available"/> Available</div>
+                                                            <div><t t-if="record.list_price.raw_value!=0">Public Price : <field name="lst_price"/> ,</t> Cost : <field name="standard_price"/></div>
+                                                        </t>
+                                                    </div>
+                                                </td>
+                                            </tr>
+                                        </table>
+                                    </div>
+                                    <div class="oe_kanban_buttons_set oe_kanban_color_border oe_kanban_color_bglight oe_kanban_box_show_onclick">
+                                        <div class="oe_kanban_left">
+                                            <a string="Edit" icon="gtk-edit" type="edit"/>
+                                            <a string="Change Color" icon="color-picker" type="color" name="color"/>
+                                         </div>
+                                        <br class="oe_kanban_clear"/>
+                                    </div>
+                                </div>
+                            </div>
+                        </t>
+                    </templates>
+                </kanban>
+            </field>
+        </record>
+        
         <record id="product_normal_action" model="ir.actions.act_window">
             <field name="name">Products</field>
             <field name="type">ir.actions.act_window</field>
@@ -204,12 +269,27 @@
             <field name="name">Products</field>
             <field name="type">ir.actions.act_window</field>
             <field name="res_model">product.product</field>
+            <field name="view_mode">tree,form,kanban</field>
             <field name="view_type">form</field>
             <field name="context">{"search_default_filter_to_sell":1}</field>
             <field name="view_id" ref="product_product_tree_view"/>  
             <field name="search_view_id" ref="product_search_form_view"/>            
             <field name="help">You must define a Product for everything you buy or sell. Products can be raw materials, stockable products, consumables or services. The Product form contains detailed information about your products related to procurement logistics, sales price, product category, suppliers and so on.</field>
         </record>
+        
+        <record id="open_view_product_tree1" model="ir.actions.act_window.view">
+            <field name="sequence" eval="1"/>
+            <field name="view_mode">tree</field>
+           <field name="view_id" ref="product_product_tree_view"/>
+            <field name="act_window_id" ref="product_normal_action_sell"/>
+        </record>
+        
+        <record id="open_view_product_form1" model="ir.actions.act_window.view">
+            <field name="sequence" eval="2"/>
+            <field name="view_mode">form</field>
+            <field name="view_id" ref="product_normal_form_view"/>
+            <field name="act_window_id" ref="product_normal_action_sell"/>
+        </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"/>

=== modified file 'stock/product_view.xml'
--- stock/product_view.xml	2011-09-07 09:32:31 +0000
+++ stock/product_view.xml	2011-09-29 05:10:27 +0000
@@ -120,6 +120,67 @@
                 </group>
             </field>
         </record>
+        
+        <record model="ir.ui.view" id="product.product_kanban_view">
+            <field name="name">Product Kanban</field>
+            <field name="model">product.product</field>
+            <field name="type">kanban</field>
+            <field name="arch" type="xml">
+                <kanban default_group_by="type">
+                    <templates>
+                        <t t-name="kanban-box">
+                            <t t-set="color" t-value="kanban_color(record.color.raw_value || record.type.raw_value)"/>
+                            <div t-att-class="color + (record.color.raw_value == 1 ? ' oe_kanban_color_alert' : '')">
+                                <div class="oe_kanban_box oe_kanban_color_border">
+                                    <table class="oe_kanban_table oe_kanban_box_header oe_kanban_color_bgdark oe_kanban_color_border oe_kanban_draghandle">
+                                        <tr>
+                                            <td class="oe_kanban_title1" align="left" valign="middle">
+                                                <t t-if="record.default_code.raw_value">[<field name="default_code"/>]</t>
+                                                <field name="name"/>
+                                            </td>
+                                            <td align="right" valign="top" width="22">
+                                                <img t-att-src="kanban_gravatar(record.product_manager.raw_value, 22)" class="oe_kanban_gravatar"/>
+                                            </td>
+                                        </tr>
+                                    </table>
+                                    <div class="oe_kanban_box_content oe_kanban_color_bglight oe_kanban_box_show_onclick_trigger">
+                                        <table class="oe_kanban_table">
+                                            <tr>
+                                                <td valign="top" width="22">
+                                                    <t t-if="record.product_image.raw_value">
+                                                        <img t-att-src="'data:image/png;base64,'+record.product_image.raw_value" width='48' height='48'/>
+                                                    </t>
+                                                    <t t-if="!record.product_image.raw_value">
+                                                        <img src="/web/static/src/img/product_default.png"/>
+                                                    </t> 
+                                                </td>
+                                                <td>
+                                                    <div class="oe_kanban_title2">
+                                                        <t t-if="record.type.raw_value=='service'">No Stock</t>
+                                                        <t t-if="record.type.raw_value!='service'">
+                                                            <div><field name="qty_available"/> On Hand , <field name="virtual_available"/> Available</div>
+                                                            <div><t t-if="record.list_price.raw_value!=0">Public Price : <field name="lst_price"/> ,</t> Cost : <field name="standard_price"/></div>
+                                                        </t>
+                                                    </div>
+                                                </td>
+                                            </tr>
+                                        </table>
+                                    </div>
+                                    <div class="oe_kanban_buttons_set oe_kanban_color_border oe_kanban_color_bglight oe_kanban_box_show_onclick">
+                                        <div class="oe_kanban_left">
+                                            <a string="Edit" icon="gtk-edit" type="edit"/>
+                                            <a string="Change Color" icon="color-picker" type="color" name="color"/>
+                                            <a string="Update Stock" name="%(stock.action_view_change_product_quantity)d" icon="gtk-execute" type="action"/> 
+                                         </div>
+                                        <br class="oe_kanban_clear"/>
+                                    </div>
+                                </div>
+                            </div>
+                        </t>
+                    </templates>
+                </kanban>
+            </field>
+        </record>
 
         <record id="view_normal_property_form" model="ir.ui.view">
             <field name="name">product.normal.stock.property.form.inherit</field>

_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help   : https://help.launchpad.net/ListHelp

Reply via email to