summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorstefanorigano <sri@odoo.com>2017-09-01 15:16:54 +0200
committerqsm-odoo <qsm@odoo.com>2017-09-15 14:34:18 +0200
commitfafbc5ebe9ef7c492a691680988e0c9c7a906976 (patch)
treef3c2a4b81b295d5b2cdc7c346c210f29715ae58a
parent3e1d46dcc90fb09f24de49783f0f1c1d50058186 (diff)
[REF] *: use new kanban record classes/layout
-rw-r--r--addons/account/views/account_invoice_view.xml16
-rw-r--r--addons/account/views/account_view.xml2
-rw-r--r--addons/crm/views/crm_lead_views.xml50
-rw-r--r--addons/event/views/event_views.xml4
-rw-r--r--addons/fleet/views/fleet_vehicle_model_views.xml10
-rw-r--r--addons/fleet/views/fleet_vehicle_views.xml2
-rw-r--r--addons/gamification/views/badge.xml22
-rw-r--r--addons/gamification/views/challenge.xml4
-rw-r--r--addons/google_drive/views/google_drive_views.xml4
-rw-r--r--addons/hr/views/hr_views.xml12
-rw-r--r--addons/hr_attendance/views/hr_attendance_view.xml8
-rw-r--r--addons/hr_contract/views/hr_contract_views.xml4
-rw-r--r--addons/hr_expense/views/hr_expense_views.xml20
-rw-r--r--addons/hr_holidays/views/hr_holidays_views.xml55
-rw-r--r--addons/hr_holidays/views/hr_views.xml2
-rw-r--r--addons/hr_recruitment/views/hr_job_views.xml2
-rw-r--r--addons/hr_recruitment/views/hr_recruitment_views.xml50
-rw-r--r--addons/im_livechat/views/im_livechat_channel_views.xml4
-rw-r--r--addons/lunch/views/lunch_views.xml38
-rw-r--r--addons/mail/views/mail_channel_views.xml2
-rw-r--r--addons/maintenance/views/maintenance_views.xml62
-rw-r--r--addons/mass_mailing/views/mass_mailing_views.xml90
-rw-r--r--addons/membership/views/product_views.xml12
-rw-r--r--addons/mrp/views/mrp_bom_views.xml10
-rw-r--r--addons/mrp/views/mrp_message_views.xml2
-rw-r--r--addons/mrp/views/mrp_production_views.xml18
-rw-r--r--addons/mrp/views/mrp_routing_views.xml10
-rw-r--r--addons/mrp/views/mrp_unbuild_views.xml10
-rw-r--r--addons/mrp/views/mrp_workcenter_views.xml21
-rw-r--r--addons/mrp/views/mrp_workorder_views.xml4
-rw-r--r--addons/point_of_sale/views/point_of_sale_dashboard.xml24
-rw-r--r--addons/point_of_sale/views/pos_category_view.xml2
-rw-r--r--addons/point_of_sale/views/pos_order_view.xml12
-rw-r--r--addons/point_of_sale/views/pos_session_view.xml22
-rw-r--r--addons/product/views/product_pricelist_views.xml10
-rw-r--r--addons/product/views/product_template_views.xml4
-rw-r--r--addons/product/views/product_views.xml10
-rw-r--r--addons/purchase/views/purchase_views.xml20
-rw-r--r--addons/purchase_requisition/views/purchase_requisition_views.xml39
-rw-r--r--addons/sale/views/sale_views.xml21
-rw-r--r--addons/sales_team/views/crm_team_views.xml14
-rw-r--r--addons/stock/views/stock_inventory_views.xml17
-rw-r--r--addons/stock/views/stock_move_views.xml26
-rw-r--r--addons/stock/views/stock_picking_views.xml22
-rw-r--r--addons/stock/views/stock_quant_views.xml4
-rw-r--r--addons/stock/views/stock_warehouse_views.xml22
-rw-r--r--addons/stock_picking_batch/views/stock_picking_batch_views.xml17
-rw-r--r--addons/survey/views/survey_views.xml43
-rw-r--r--addons/web/static/src/less/kanban_view.less1
-rw-r--r--addons/website_event_track/views/event_track_views.xml27
-rw-r--r--addons/website_forum_doc/views/doc.xml9
-rw-r--r--odoo/addons/base/res/res_partner_view.xml2
52 files changed, 454 insertions, 464 deletions
diff --git a/addons/account/views/account_invoice_view.xml b/addons/account/views/account_invoice_view.xml
index 09af679aae2..9ae605def70 100644
--- a/addons/account/views/account_invoice_view.xml
+++ b/addons/account/views/account_invoice_view.xml
@@ -159,19 +159,17 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
- <div class="row">
- <div class="col-xs-6">
- <strong><span><t t-esc="record.partner_id.value"/></span></strong>
- </div>
- <div class="col-xs-6 pull-right text-right">
- <strong><field name="amount_total_signed" widget="monetary"/></strong>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings">
+ <strong class="o_kanban_record_title"><span><t t-esc="record.partner_id.value"/></span></strong>
</div>
+ <strong><field name="amount_total_signed" widget="monetary"/></strong>
</div>
- <div class="row">
- <div class="col-xs-6 text-muted">
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left text-muted">
<span><t t-esc="record.number.value"/> <t t-esc="record.date_invoice.value"/></span>
</div>
- <div class="col-xs-6">
+ <div class="oe_kanban_bottom_right">
<span class="pull-right text-right">
<field name="state" widget="label_selection" options="{'classes': {'draft': 'default', 'cancel': 'default', 'none': 'danger', 'open': 'warning',
'paid': 'success'}}"/>
diff --git a/addons/account/views/account_view.xml b/addons/account/views/account_view.xml
index b8063af00ca..a8062b69ebe 100644
--- a/addons/account/views/account_view.xml
+++ b/addons/account/views/account_view.xml
@@ -1665,7 +1665,7 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
- <div><strong><t t-esc="record.name.value"/></strong></div>
+ <div><strong class="o_kanban_record_title"><t t-esc="record.name.value"/></strong></div>
<div t-if="record.note.value"><t t-esc="record.note.value"/></div>
</div>
</t>
diff --git a/addons/crm/views/crm_lead_views.xml b/addons/crm/views/crm_lead_views.xml
index 3e8b0494310..bf182683df1 100644
--- a/addons/crm/views/crm_lead_views.xml
+++ b/addons/crm/views/crm_lead_views.xml
@@ -198,25 +198,27 @@
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_content oe_kanban_global_click">
<div>
- <strong><span><field name="name"/></span></strong>
+ <strong class="o_kanban_record_title"><span><field name="name"/></span></strong>
</div>
<div>
- <field name="tag_ids"/>
+ <span class="o_kanban_record_subtitle"><field name="contact_name"/></span>
</div>
<div>
- <span><field name="contact_name"/></span>
- </div>
- <div class="oe_kanban_bottom_left">
- <field name="priority" widget="priority"/>
- <t t-if="record.message_needaction_counter.raw_value">
- <span class="oe_kanban_mail_new" title="Unread Messages"><i class="fa fa-comments"/><t t-raw="record.message_needaction_counter.raw_value"/></span>
- </t>
+ <field name="tag_ids"/>
</div>
- <div class="oe_kanban_bottom_right">
- <div class="o_kanban_inline_block">
- <field name="activity_ids" widget="kanban_activity"/>
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left">
+ <field name="priority" widget="priority"/>
+ <t t-if="record.message_needaction_counter.raw_value">
+ <span class="oe_kanban_mail_new" title="Unread Messages"><i class="fa fa-comments"/><t t-raw="record.message_needaction_counter.raw_value"/></span>
+ </t>
+ <div class="o_kanban_inline_block">
+ <field name="activity_ids" widget="kanban_activity"/>
+ </div>
+ </div>
+ <div class="oe_kanban_bottom_right">
+ <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar pull-right"/>
</div>
- <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar pull-right"/>
</div>
</div>
</t>
@@ -318,24 +320,24 @@
</div>
<div class="oe_kanban_content">
<div>
- <strong><field name="name"/></strong>
+ <strong class="o_kanban_record_title"><field name="name"/></strong>
</div>
<div>
<field name="tag_ids" widget="many2many_tags" options="{'color_field': 'color'}"/>
</div>
- <div class="text-muted">
+ <div class="text-muted o_kanban_record_subtitle">
<t t-if="record.planned_revenue.raw_value"><field name="planned_revenue" widget="monetary" options="{'currency_field': 'company_currency'}"/><span t-if="record.partner_id.value">,</span></t> <span t-if="record.partner_id.value"> <t t-esc="record.partner_id.value"/></span>
</div>
- <div class="o_kanban_footer">
- <field name="priority" widget="priority" groups="base.group_user"/>
- <t t-if="record.message_needaction_counter.raw_value">
- <span class='oe_kanban_mail_new' title='Unread Messages'><i class='fa fa-comments'/><t t-raw="record.message_needaction_counter.raw_value"/></span>
- </t>
- <div>
- <div class="o_kanban_inline_block">
- <field name="activity_ids" widget="kanban_activity"/>
- </div>
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left">
+ <field name="priority" widget="priority" groups="base.group_user"/>
+ <t t-if="record.message_needaction_counter.raw_value">
+ <span class='oe_kanban_mail_new' title='Unread Messages'><i class='fa fa-comments'/><t t-raw="record.message_needaction_counter.raw_value"/></span>
+ </t>
+ <field name="activity_ids" widget="kanban_activity"/>
+ </div>
+ <div class="oe_kanban_bottom_right">
<img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar"/>
</div>
</div>
diff --git a/addons/event/views/event_views.xml b/addons/event/views/event_views.xml
index 140e06f11d1..92670b6c032 100644
--- a/addons/event/views/event_views.xml
+++ b/addons/event/views/event_views.xml
@@ -323,9 +323,9 @@
<div><t t-esc="moment(record.date_begin.raw_value).format('LT')"/></div>
</div>
<div class="o_event_right">
- <h4><field name="name"/></h4>
+ <h4 class="o_kanban_record_title"><field name="name"/></h4>
<div>
- <t t-if="record.country_id.raw_value"> <b> <field name="country_id"/> </b> <br/> </t>
+ <t t-if="record.country_id.raw_value"> <b class="o_kanban_record_subtitle"> <field name="country_id"/> </b> <br/> </t>
<i class="fa fa-clock-o"/>
<b>To</b> <t t-esc="moment(record.date_end.raw_value).format('lll')"/>
</div>
diff --git a/addons/fleet/views/fleet_vehicle_model_views.xml b/addons/fleet/views/fleet_vehicle_model_views.xml
index 579fe921518..0e3a35c40b6 100644
--- a/addons/fleet/views/fleet_vehicle_model_views.xml
+++ b/addons/fleet/views/fleet_vehicle_model_views.xml
@@ -25,9 +25,9 @@
<templates>
<t t-name="kanban-box">
<div style="position: relative">
- <a t-if="! read_only_mode" type="delete" style="position: absolute; right: 0; padding: 4px; diplay: inline-block">X</a>
+ <a t-if="! read_only_mode" type="delete" style="position: absolute; right: 0; padding: 4px; diplay: inline-block"><i class="fa fa-times text-danger"/></a>
<div class="oe_module_vignette">
- <div class="oe_module_desc">
+ <div class="oe_module_desc o_kanban_record_title">
<field name="name"/>
</div>
</div>
@@ -125,12 +125,12 @@
<templates>
<t t-name="kanban-box">
<div class="oe_kanban_vignette oe_semantic_html_override">
- <a type="open" href="#" class="oe_kanban_action">
+ <a type="open" href="#" class="o_kanban_image oe_kanban_action">
<img t-att-src="kanban_image('fleet.vehicle.model.brand', 'image_small', record.id.raw_value)" class="img-responsive" style="width:100px;"/>
</a>
- <div class="text-center">
+ <div class="oe_kanban_details">
<h4 class="oe_partner_heading">
- <a type="open">
+ <a type="open" class="o_kanban_record_title">
<field name="name"/>
</a>
</h4>
diff --git a/addons/fleet/views/fleet_vehicle_views.xml b/addons/fleet/views/fleet_vehicle_views.xml
index 93fcc220243..1213f7cbefd 100644
--- a/addons/fleet/views/fleet_vehicle_views.xml
+++ b/addons/fleet/views/fleet_vehicle_views.xml
@@ -185,7 +185,7 @@
<img t-att-src="kanban_image('fleet.vehicle', 'image_small', record.id.raw_value)"/>
</div>
<div class="oe_kanban_details">
- <strong>
+ <strong class="o_kanban_record_title">
<field name="license_plate"/> : <field name="model_id"/>
</strong>
<div class="o_kanban_tags_section">
diff --git a/addons/gamification/views/badge.xml b/addons/gamification/views/badge.xml
index 20194764070..1269fdf99fd 100644
--- a/addons/gamification/views/badge.xml
+++ b/addons/gamification/views/badge.xml
@@ -115,7 +115,7 @@
<img t-att-src="kanban_image('gamification.badge', 'image', record.id.raw_value)" t-att-title="record.name.value"/>
</div>
<div class="oe_kanban_details">
- <strong><field name="name"/></strong>
+ <strong class="o_kanban_record_title"><field name="name"/></strong>
<span class="oe_grey">
<t t-if="record.remaining_sending.value != -1">
<t t-esc="record.stat_my_monthly_sending.value"/>/<t t-esc="record.rule_max_number.value"/>
@@ -165,16 +165,18 @@
<t t-name="kanban-box">
<div class="oe_kanban_card oe_kanban_global_click oe_kanban_badge oe_kanban_color_white o_kanban_gamification">
<div class="o_kanban_content">
- <div class="pull-left">
- <a type="open"><img t-att-src="kanban_image('gamification.badge', 'image', record.badge_id.raw_value)" t-att-title="record.badge_name.value" width="24" height="24" /></a>
+ <div class="o_kanban_image">
+ <a type="open"><img t-att-src="kanban_image('gamification.badge', 'image', record.badge_id.raw_value)" t-att-title="record.badge_name.value" /></a>
+ </div>
+ <div class="oe_kanban_details">
+ <h4 class="mt0 mb0">
+ <a class="o_kanban_record_title" type="open"><t t-esc="record.badge_name.raw_value" /></a>
+ </h4>
+ <t t-if="record.comment.raw_value">
+ <p class="o_kanban_record_subtitle"><em><field name="comment"/></em></p>
+ </t>
+ <p>Granted by <a type="open"><field name="create_uid" /></a> the <t t-esc="moment(record.create_date.raw_value).format('L')" /></p>
</div>
- <h4>
- <a type="open"><t t-esc="record.badge_name.raw_value" /></a>
- </h4>
- <t t-if="record.comment.raw_value">
- <p><em><field name="comment"/></em></p>
- </t>
- <p>Granted by <a type="open"><field name="create_uid" /></a> the <t t-esc="moment(record.create_date.raw_value).format('L')" /></p>
</div>
</div>
</t>
diff --git a/addons/gamification/views/challenge.xml b/addons/gamification/views/challenge.xml
index 84a68994ff4..36547f9bb2b 100644
--- a/addons/gamification/views/challenge.xml
+++ b/addons/gamification/views/challenge.xml
@@ -147,8 +147,8 @@
<div t-attf-class="oe_kanban_card o_kanban_gamification oe_kanban_global_click">
<div class="o_kanban_content">
<strong>
- <h4 class="text-center"><field name="name"/></h4>
- <div class="oe_kanban_project_list text-center">
+ <h4 class="o_kanban_record_title"><field name="name"/></h4>
+ <div class="oe_kanban_project_list o_kanban_record_subtitle">
<a type="action" name="%(goals_from_challenge_act)d" style="margin-right: 10px">
<span t-if="record.line_ids.raw_value.length gt 1"><t t-esc="record.line_ids.raw_value.length"/> Goals</span>
<span t-if="record.line_ids.raw_value.length lt 2"><t t-esc="record.line_ids.raw_value.length"/> Goal</span>
diff --git a/addons/google_drive/views/google_drive_views.xml b/addons/google_drive/views/google_drive_views.xml
index 74ca3f93da5..e71aaf2fe12 100644
--- a/addons/google_drive/views/google_drive_views.xml
+++ b/addons/google_drive/views/google_drive_views.xml
@@ -63,13 +63,13 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
- <div class="row">
+ <div class="row o_kanban_record_title">
<div class="col-xs-4 text-center"><strong>Template</strong></div>
<div class="col-xs-4 text-center"><strong>Model</strong></div>
<div class="col-xs-4 text-center"><strong>Active</strong></div>
</div>
<hr class="mb4 mt4"/>
- <div class="row">
+ <div class="row o_kanban_record_subtitle">
<div class="col-xs-4 text-center"><field name="name"/></div>
<div class="col-xs-4 text-center"><field name="model_id"/></div>
<div class="col-xs-4 text-center">
diff --git a/addons/hr/views/hr_views.xml b/addons/hr/views/hr_views.xml
index b683726f0dd..aae1a300f3d 100644
--- a/addons/hr/views/hr_views.xml
+++ b/addons/hr/views/hr_views.xml
@@ -192,13 +192,17 @@
</div>
</div>
<div class="oe_kanban_details">
- <strong>
- <field name="name"/>
- </strong>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings">
+ <strong class="o_kanban_record_title">
+ <field name="name"/>
+ </strong>
+ <span t-if="record.job_id.raw_value" class="o_kanban_record_subtitle"><field name="job_id"/></span>
+ </div>
+ </div>
<field name="category_ids" widget="many2many_tags" options="{'color_field': 'color'}"/>
<ul>
<li id="last_login"/>
- <li t-if="record.job_id.raw_value"><field name="job_id"/></li>
<li t-if="record.work_location.raw_value"><field name="work_location"/></li>
<li t-if="record.work_email.raw_value"><i class="fa fa-envelope"></i> <field name="work_email"/></li>
<li t-if="record.work_phone.raw_value"><i class="fa fa-phone"></i> <field name="work_phone"/></li>
diff --git a/addons/hr_attendance/views/hr_attendance_view.xml b/addons/hr_attendance/views/hr_attendance_view.xml
index 16c69ff4919..1571d7516f4 100644
--- a/addons/hr_attendance/views/hr_attendance_view.xml
+++ b/addons/hr_attendance/views/hr_attendance_view.xml
@@ -27,13 +27,13 @@
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
<div>
- <img t-att-src="kanban_image('hr.employee', 'image_small', record.employee_id.raw_value)" t-att-title="record.employee_id.value" width="24" height="24" class="oe_kanban_avatar pull-right"/>
- <span class="ml8">
+ <img t-att-src="kanban_image('hr.employee', 'image_small', record.employee_id.raw_value)" t-att-title="record.employee_id.value" width="24" height="24" class="oe_kanban_avatar mr4"/>
+ <span class="o_kanban_record_title">
<strong><t t-esc="record.employee_id.value"/></strong>
</span>
</div>
- <hr class="mt4 mb4"/>
- <div>
+ <hr class="mt4 mb8"/>
+ <div class="o_kanban_record_subtitle">
<i class="fa fa-calendar" aria-hidden="true"></i>
<t t-esc="record.check_in.value"/>
- <t t-esc="record.check_out.value"/>
diff --git a/addons/hr_contract/views/hr_contract_views.xml b/addons/hr_contract/views/hr_contract_views.xml
index 92e45f79a7d..4a9221df020 100644
--- a/addons/hr_contract/views/hr_contract_views.xml
+++ b/addons/hr_contract/views/hr_contract_views.xml
@@ -181,9 +181,9 @@
</div>
<div class="oe_kanban_content">
<div>
- <strong><field name="name"/></strong>
+ <strong class="o_kanban_record_title"><field name="name"/></strong>
</div>
- <div class="text-muted">
+ <div class="text-muted o_kanban_record_subtitle">
<field name="job_id"/>
</div>
<div class="oe_kanban_bottom_right">
diff --git a/addons/hr_expense/views/hr_expense_views.xml b/addons/hr_expense/views/hr_expense_views.xml
index 8867044d3c4..566648c560e 100644
--- a/addons/hr_expense/views/hr_expense_views.xml
+++ b/addons/hr_expense/views/hr_expense_views.xml
@@ -101,14 +101,12 @@
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
<div class="row">
- <div class="col-xs-6">
- <strong><span><t t-esc="record.name.value"/></span></strong>
- </div>
- <div class="col-xs-6">
- <strong><span class="pull-right text-right"><t t-esc="record.total_amount.value"/></span></strong>
+ <div class="col-xs-12">
+ <strong class="o_kanban_record_title"><span><t t-esc="record.name.value"/></span></strong>
+ <strong class="o_kanban_record_subtitle pull-right"><span class="text-right"><t t-esc="record.total_amount.value"/></span></strong>
</div>
</div>
- <div class="row">
+ <div class="row mt8">
<div class="col-xs-6 text-muted">
<span><t t-esc="record.employee_id.value"/> <t t-esc="record.date.value"/></span>
</div>
@@ -476,14 +474,12 @@
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
<div class="row">
- <div class="col-xs-6">
- <strong><span><t t-esc="record.name.value"/></span></strong>
- </div>
- <div class="col-xs-6">
- <strong><span class="pull-right text-right"><t t-esc="record.total_amount.value"/></span></strong>
+ <div class="col-xs-12">
+ <strong class="o_kanban_record_title"><span><t t-esc="record.name.value"/></span></strong>
+ <strong class="o_kanban_record_subtitle pull-right"><span class="text-right"><t t-esc="record.total_amount.value"/></span></strong>
</div>
</div>
- <div class="row">
+ <div class="row mt8">
<div class="col-xs-6 text-muted">
<span><t t-esc="record.employee_id.value"/> <t t-esc="record.accounting_date.value"/></span>
</div>
diff --git a/addons/hr_holidays/views/hr_holidays_views.xml b/addons/hr_holidays/views/hr_holidays_views.xml
index c0a1d500d9e..38e78fdb698 100644
--- a/addons/hr_holidays/views/hr_holidays_views.xml
+++ b/addons/hr_holidays/views/hr_holidays_views.xml
@@ -207,37 +207,40 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
- <div class="row">
- <div class="col-xs-2">
- <img t-att-src="kanban_image('hr.employee', 'image_small', record.employee_id.raw_value)" t-att-title="record.employee_id.value" width="40" height="40" class="oe_kanban_avatar pull-left"/>
- </div>
- <div class="col-xs-5">
- <div class="row">
- <div class="col-xs-12">
- <strong><t t-esc="record.employee_id.value"/></strong>
- </div>
+ <div>
+ <span>
+ <img t-att-src="kanban_image('hr.employee', 'image_small', record.employee_id.raw_value)" t-att-title="record.employee_id.value" width="40" height="40" class="oe_kanban_avatar pull-left mr4"/>
+ </span>
+ <span>
+ <div>
+ <strong class="o_kanban_record_title"><t t-esc="record.employee_id.value"/></strong>
+ <span class="pull-right">
+ <field name="state" widget="kanban_label_selection" options="{'classes': {'draft': 'default', 'validate': 'success','confirm': 'default', 'cancel': 'danger'}}"/>
+ </span>
</div>
- <div class="row">
- <div class="col-xs-12 o_text_overflow text-mute">
- <t t-esc="record.name.value"/>
- </div>
+ <div class="text-muted o_kanban_record_subtitle">
+ <t t-esc="record.name.value"/>
</div>
+ </span>
+ </div>
+ <hr class="mt4 mb8"/>
+ <div class="o_kanban_record_bottom mt8 mb4">
+ <div t-attf-class="oe_kanban_bottom_left #{record.date_from.value ? 'mt8 mb4': ''}">
+ <table class="text-right" t-if="record.date_from.value">
+ <tr>
+ <td style="padding-bottom:4px"><small class="text-muted">from</small></td>
+ <td style="padding:0 0 4px 4px"><t t-esc="record.date_from.value"/></td>
+ </tr>
+ <tr>
+ <td><small class="text-muted">to</small></td>
+ <td style="padding-left:4px"><t t-esc="record.date_to.value"/></td>
+ </tr>
+ </table>
</div>
- <div class="col-xs-5">
- <span class="pull-right mt8 label label-default">
- <field name="state" widget="kanban_label_selection" options="{'classes': {'draft': 'default', 'validate': 'success','confirm': 'default', 'cancel': 'danger'}}"/>
- </span>
+ <div t-attf-class="oe_kanban_bottom_right #{record.date_from.value ? 'mt8': ''}">
+ <span class="badge"><t t-esc="record.number_of_days.value"/> days</span>
</div>
</div>
- <hr class="mt4 mb4"/>
- <div t-if="record.date_from.value">
- <i class="fa fa-calendar" aria-hidden="true"></i>
- <t t-esc="record.date_from.value"/>
- - <t t-esc="record.date_to.value"/>
- </div>
- <div>
- <span class="badge"><t t-esc="record.number_of_days.value"/> days</span>
- </div>
</div>
</t>
</templates>
diff --git a/addons/hr_holidays/views/hr_views.xml b/addons/hr_holidays/views/hr_views.xml
index a026bc20794..90b54965535 100644
--- a/addons/hr_holidays/views/hr_views.xml
+++ b/addons/hr_holidays/views/hr_views.xml
@@ -39,7 +39,7 @@
</xpath>
<xpath expr="//div[hasclass('o_kanban_primary_right')]" position="after">
- <div class="col-xs-12 o_kanban_primary_bottom">
+ <div class="col-xs-12 o_kanban_primary_bottom bottom_block">
<div class="row">
<div class="col-xs-3">
<a name="%(hr_employee_action_from_department)d" type="action" title="Absent Employee(s), Whose leaves request are either confirmed or validated on today">Absence</a>
diff --git a/addons/hr_recruitment/views/hr_job_views.xml b/addons/hr_recruitment/views/hr_job_views.xml
index 0a63565ff56..af9127d2c1c 100644
--- a/addons/hr_recruitment/views/hr_job_views.xml
+++ b/addons/hr_recruitment/views/hr_job_views.xml
@@ -55,7 +55,7 @@
</div>
</div>
<div class="row">
- <div class="col-xs-12 o_kanban_primary_bottom">
+ <div class="col-xs-12 o_kanban_primary_bottom bottom_block">
<field name="no_of_hired_employee" widget="progressbar" title="Hired Employees" options="{'current_value': 'no_of_hired_employee', 'max_value': 'no_of_recruitment', 'editable': true, 'edit_max_value': true}"/>
</div>
</div>
diff --git a/addons/hr_recruitment/views/hr_recruitment_views.xml b/addons/hr_recruitment/views/hr_recruitment_views.xml
index 939abf62e56..ca26e882c40 100644
--- a/addons/hr_recruitment/views/hr_recruitment_views.xml
+++ b/addons/hr_recruitment/views/hr_recruitment_views.xml
@@ -282,33 +282,37 @@
</ul>
</div>
<div class="oe_kanban_content" tooltip="kanban-tooltip">
- <b t-if="record.partner_name.raw_value">
- <field name="partner_name"/>
- </b><t t-else="1">
- <i><field name="name"/></i><br/>
- </t><br/>
- <field name="categ_ids" widget="many2many_tags" options="{'color_field': 'color'}"/>
- <div invisible="context.get('search_default_job_id', False)">
- <field name="job_id"/>
+ <div class="o_kanban_record_top">
+ <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="30" height="30" class="oe_kanban_avatar mr8"/>
+ <div class="o_kanban_record_headings">
+ <b class="o_kanban_record_title mt8" t-if="record.partner_name.raw_value">
+ <field name="partner_name"/><br/>
+ </b><t t-else="1">
+ <i class="o_kanban_record_title"><field name="name"/></i><br/>
+ </t>
+ <div class="o_kanban_record_subtitle" invisible="context.get('search_default_job_id', False)">
+ <field name="job_id"/>
+ </div>
</div>
- <t t-if="record.partner_mobile.raw_value"><i class="fa fa-mobile fa-fw"/><field name="partner_mobile"/><br/></t>
- <div class="oe_kanban_bottom_right">
- <div class="o_kanban_inline_block ml4">
- <field name="activity_ids" widget="kanban_activity"/>
+ </div>
+ <field name="categ_ids" widget="many2many_tags" options="{'color_field': 'color'}"/>
+ <t t-if="record.partner_mobile.raw_value"><i class="fa fa-mobile mr4"/><field name="partner_mobile"/><br/></t>
+ <div class="o_kanban_record_bottom mt4">
+ <div class="oe_kanban_bottom_left">
+ <a t-if="record.attachment_number" name="action_get_attachment_tree_view" type="object"> <field name="attachment_number"/> Documents</a>
</div>
- <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar pull-right"/>
- <div class="pull-left mt4" groups="base.group_user">
- <field name="priority" widget="priority"/>
+ <div class="oe_kanban_bottom_right">
+ <t t-if="record.message_needaction_counter.raw_value">
+ <span class='oe_kanban_mail_new mr4' title='Unread Messages'><i class='fa fa-comments'/><t t-raw="record.message_needaction_counter.raw_value"/></span>
+ </t>
+ <div class="o_kanban_inline_block mr8">
+ <field name="activity_ids" widget="kanban_activity"/>
+ </div>
+ <div class="pull-left mr4" groups="base.group_user">
+ <field name="priority" widget="priority"/>
+ </div>
</div>
</div>
- <div class="oe_kanban_bottom_left mt4">
- <t t-if="record.message_needaction_counter.raw_value">
- <span class='oe_kanban_mail_new' title='Unread Messages'><i class='fa fa-comments'/><t t-raw="record.message_needaction_counter.raw_value"/></span>
- </t>
- <a t-if="record.attachment_number" name="action_get_attachment_tree_view" type="object"> <field name="attachment_number"/> Documents</a>
- </div>
- <div class="oe_kanban_footer_left mt4">
- </div>
</div>
<div class="oe_clear"></div>
</div>
diff --git a/addons/im_livechat/views/im_livechat_channel_views.xml b/addons/im_livechat/views/im_livechat_channel_views.xml
index a2726079468..2974fd70d2a 100644
--- a/addons/im_livechat/views/im_livechat_channel_views.xml
+++ b/addons/im_livechat/views/im_livechat_channel_views.xml
@@ -39,7 +39,7 @@
<img t-att-src="kanban_image('im_livechat.channel', 'image_medium', record.id.raw_value)" class="img-responsive"/>
</div>
<div class="oe_kanban_details">
- <strong><field name="name"/></strong>
+ <strong class="o_kanban_record_title"><field name="name"/></strong>
<div>
<p>
<i class="fa fa-user"></i>
@@ -110,7 +110,7 @@
<div class="oe_group_details" style="min-height: 40px">
<img t-att-src="kanban_image('res.users', 'image', record.id.raw_value)"
class="oe_avatar oe_kanban_avatar_smallbox" style="float:left; margin-right: 10px;"/>
- <h4><field name="name"/></h4>
+ <h4 class="o_kanban_record_title"><field name="name"/></h4>
</div>
</div>
</t>
diff --git a/addons/lunch/views/lunch_views.xml b/addons/lunch/views/lunch_views.xml
index cc47fcc2acf..4fcc3b56c18 100644
--- a/addons/lunch/views/lunch_views.xml
+++ b/addons/lunch/views/lunch_views.xml
@@ -100,7 +100,7 @@
<div class="row mb4">
<div class="col-xs-8">
<span>
- <strong><t t-esc="record.description.value"/></strong>
+ <strong class="o_kanban_record_title"><t t-esc="record.description.value"/></strong>
</span>
</div>
<div class="col-xs-4 text-right">
@@ -379,15 +379,11 @@
<templates>
<t t-name="kanban-box">
<div class="oe_kanban_global_click">
- <div class="row mb4">
- <div class="col-xs-6">
- <strong><field name="product_id"/></strong>
- </div>
- <div class="col-xs-6">
- <span class="pull-right">
- <field name="state" widget="kanban_label_selection" options="{'classes': {'new': 'default', 'confirmed': 'success', 'cancelled':'danger'}}"/>
- </span>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings">
+ <strong class="o_kanban_record_title"><field name="product_id"/></strong>
</div>
+ <field name="state" widget="kanban_label_selection" options="{'classes': {'new': 'default', 'confirmed': 'success', 'cancelled':'danger'}}"/>
</div>
<div>
<field name="note"/>
@@ -402,13 +398,13 @@
</div>
<div class="row mt4">
<div class="col-xs-6">
- <a class="btn btn-sm btn-success" name="order" string="Order" type="object" attrs="{'invisible': ['|',('state','=','confirmed'),('state','=','ordered')]}" groups="lunch.group_lunch_manager">
+ <a class="btn btn-xs btn-success" name="order" string="Order" type="object" attrs="{'invisible': ['|',('state','=','confirmed'),('state','=','ordered')]}" groups="lunch.group_lunch_manager">
<i class="fa fa-phone"/>
</a>
- <a class="btn btn-sm btn-info" name="confirm" string="Receive" type="object" attrs="{'invisible': [('state','!=','ordered')]}" groups="lunch.group_lunch_manager">
+ <a class="btn btn-xs btn-info" name="confirm" string="Receive" type="object" attrs="{'invisible': [('state','!=','ordered')]}" groups="lunch.group_lunch_manager">
<i class="fa fa-check"/>
</a>
- <a class="btn btn-sm btn-danger" name="cancel" string="Cancel" type="object" attrs="{'invisible': [('state','=','cancelled')]}" groups="lunch.group_lunch_manager">
+ <a class="btn btn-xs btn-danger" name="cancel" string="Cancel" type="object" attrs="{'invisible': [('state','=','cancelled')]}" groups="lunch.group_lunch_manager">
<i class="fa fa-times"/>
</a>
</div>
@@ -524,15 +520,13 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
- <div class="row mb4">
- <div class="col-xs-8">
- <strong><t t-esc="record.name.value"/></strong>
- </div>
- <div class="col-xs-4">
- <span class="badge pull-right">
- Price: <t t-esc="record.price.value"/>
- </span>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings">
+ <strong class="o_kanban_record_title"><t t-esc="record.name.value"/></strong>
</div>
+ <span class="badge pull-right">
+ Price: <t t-esc="record.price.value"/>
+ </span>
</div>
<div>
<t t-esc="record.supplier.value"/>
@@ -633,8 +627,8 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
- <div>
- <strong><t t-esc="record.message.value"/></strong>
+ <div class="o_kanban_record_top">
+ <strong class="o_kanban_record_title"><t t-esc="record.message.value"/></strong>
</div>
<div class="row mb4">
<div class="col-xs-6">
diff --git a/addons/mail/views/mail_channel_views.xml b/addons/mail/views/mail_channel_views.xml
index d31c585eb39..d5acaae761e 100644
--- a/addons/mail/views/mail_channel_views.xml
+++ b/addons/mail/views/mail_channel_views.xml
@@ -63,7 +63,7 @@
<div class="oe_module_vignette oe_kanban_global_click">
<img t-att-src="kanban_image('mail.channel', 'image_medium', record.id.raw_value)" class="oe_module_icon"/>
<div class="oe_module_desc">
- <h4>#<field name="name"/></h4>
+ <h4 class="o_kanban_record_title">#<field name="name"/></h4>
<p class="oe_module_name">
<field name="description"/>
</p>
diff --git a/addons/maintenance/views/maintenance_views.xml b/addons/maintenance/views/maintenance_views.xml
index d5425e91a6d..f4af45f98ad 100644
--- a/addons/maintenance/views/maintenance_views.xml
+++ b/addons/maintenance/views/maintenance_views.xml
@@ -143,25 +143,29 @@
</ul>
</div>
<div class="oe_kanban_content" tooltip="kanban-tooltip">
- <div>
- <b><field name="name"/></b> <br/>
+ <div class="o_kanban_record_top">
+ <b class="o_kanban_record_title"><field name="name"/></b>
+ </div>
+ <div class="o_kanban_record_body">
<span name="owner_user_id" t-if="record.owner_user_id.raw_value">Requested by : <field name="owner_user_id"/><br/></span>
<span name="technician_user_id" t-if="record.technician_user_id.raw_value">Responsible : <field name="technician_user_id"/><br/></span>
<span class="oe_grey" t-if="record.equipment_id.raw_value"><field name="equipment_id"/><br/></span>
<span t-if="record.category_id.raw_value"><field name="category_id"/></span>
</div>
- <div class="oe_kanban_footer_left" style="margin-top:2px;">
- <field name="priority" widget="priority"/>
- <t t-if="record.message_needaction_counter.raw_value">
- <span class='oe_kanban_mail_new' title='Unread Messages'><i class='fa fa-comments'/><t t-raw="record.message_needaction_counter.raw_value"/></span>
- </t>
- </div>
- <div class="oe_kanban_bottom_right">
- <div class="o_kanban_inline_block ml4 mr4">
- <field name="activity_ids" widget="kanban_activity" />
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left">
+ <field name="priority" widget="priority"/>
+ <t t-if="record.message_needaction_counter.raw_value">
+ <span class='oe_kanban_mail_new' title='Unread Messages'><i class='fa fa-comments'/><t t-raw="record.message_needaction_counter.raw_value"/></span>
+ </t>
+ <div class="o_kanban_inline_block ml4 mr4">
+ <field name="activity_ids" widget="kanban_activity" />
+ </div>
+ </div>
+ <div class="oe_kanban_bottom_right">
+ <field name="kanban_state" widget="state_selection"/>
+ <img t-att-src="kanban_image('res.users', 'image_small', record.technician_user_id.raw_value)" t-att-title="record.technician_user_id.value" width="24" height="24" class="oe_kanban_avatar pull-right"/>
</div>
- <field name="kanban_state" widget="state_selection"/>
- <img t-att-src="kanban_image('res.users', 'image_small', record.technician_user_id.raw_value)" t-att-title="record.technician_user_id.value" width="24" height="24" class="oe_kanban_avatar pull-right"/>
</div>
</div>
<div class="oe_clear"></div>
@@ -406,27 +410,35 @@
<ul class="dropdown-menu" role="menu" aria-labelledby="dLabel">
<t t-if="widget.editable"><li><a type="edit">Edit...</a></li></t>
<t t-if="widget.deletable"><li><a type="delete">Delete</a></li></t>
+ <li class="divider"></li>
+ <li class="dropdown-header">Record Colour</li>
<li><ul class="oe_kanban_colorpicker" data-field="color"/></li>
</ul>
</div>
<div class="oe_kanban_content" tooltip="kanban-tooltip">
- <div><b><field name="name"/><span t-if="record.model.raw_value"> (<field name="model"/>)</span></b></div>
- <div class="mt4">
+ <div class="o_kanban_record_top">
+ <b class="o_kanban_record_title"><field name="name"/><small><span t-if="record.model.raw_value"> (<field name="model"/>)</span></small></b>
+ </div>
+ <div class="o_kanban_record_body">
<div t-if="record.serial_no.raw_value"><field name="serial_no"/></div>
<div t-if="!record.owner_user_id.raw_value">Unassigned</div>
<div t-if="record.owner_user_id.raw_value"><field name="owner_user_id"/></div>
</div>
- <div class="oe_kanban_bottom_right">
- <div class="o_kanban_inline_block">
- <field name="activity_ids" widget="kanban_activity" />
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left">
+ <div class="label label-danger" t-if="record.maintenance_open_count.raw_value" >
+ <t t-raw="record.maintenance_open_count.raw_value"/> Request
+ </div>
+ <div class="label label-default" t-if="record.next_action_date.raw_value" >
+ <t t-raw="moment(record.next_action_date.raw_value).format('MMMM Do')"/>
+ </div>
+ </div>
+ <div class="oe_kanban_bottom_right">
+ <div class="o_kanban_inline_block">
+ <field name="activity_ids" widget="kanban_activity" />
+ </div>
+ <img t-att-src="kanban_image('res.users', 'image_small', record.owner_user_id.raw_value)" t-att-title="record.owner_user_id.value" width="27" height="27" class="oe_kanban_avatar"/>
</div>
- <img t-att-src="kanban_image('res.users', 'image_small', record.owner_user_id.raw_value)" t-att-title="record.owner_user_id.value" width="27" height="27" class="oe_kanban_avatar"/>
- </div>
- <div class="oe_kanban_footer_left mt4 label label-danger" t-if="record.maintenance_open_count.raw_value" >
- <t t-raw="record.maintenance_open_count.raw_value"/> Request
- </div>
- <div class="oe_kanban_footer_left mt4 label label-default" t-if="record.next_action_date.raw_value" >
- <t t-raw="moment(record.next_action_date.raw_value).format('MMMM Do')"/>
</div>
</div>
<div class="oe_clear"></div>
diff --git a/addons/mass_mailing/views/mass_mailing_views.xml b/addons/mass_mailing/views/mass_mailing_views.xml
index b5e6764317d..6eba6d8573b 100644
--- a/addons/mass_mailing/views/mass_mailing_views.xml
+++ b/addons/mass_mailing/views/mass_mailing_views.xml
@@ -77,26 +77,26 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
- <div>
- <field name="tag_ids"/>
- </div>
- <div class="row">
- <div class="col-xs-8">
- <strong>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings">
+ <strong class="o_kanban_record_title">
<t t-esc="record.name.value"/>
</strong>
</div>
- <div class="col-xs-4">
- <span class="badge pull-right" title="Number of bounced email.">
- <i class="fa fa-exclamation-triangle"/> <t t-esc="record.message_bounce.value" title=""/>
- </span>
- </div>
+ <span class="badge" title="Number of bounced email.">
+ <i class="fa fa-exclamation-triangle"/> <t t-esc="record.message_bounce.value" title=""/>
+ </span>
+ </div>
+ <div class="o_kanban_record_body">
+ <field name="tag_ids"/>
</div>
- <div class="row">
- <div class="col-xs-6">
- <t t-esc="record.email.value"/>
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left">
+ <strong>
+ <t t-esc="record.email.value"/>
+ </strong>
</div>
- <div class="col-xs-6">
+ <div class="oe_kanban_bottom_right">
<t t-esc="record.company_name.value"/>
</div>
</div>
@@ -236,9 +236,11 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
- <div>
- <strong><t t-esc="record.name.value"/></strong>
- <span class="pull-right badge">
+ <div class="o_kanban_record_top mb0">
+ <div class="o_kanban_record_headings mt4">
+ <strong class="o_kanban_record_title"><t t-esc="record.name.value"/></strong>
+ </div>
+ <span class="badge">
<i class="fa fa-user"/>
<t t-esc="record.contact_nbr.value"/>
</span>
@@ -488,14 +490,16 @@
</ul>
</div>
<div class="oe_kanban_content">
- <div class="o_title">
- <h3 class="mt4 mb4"><field name="name"/></h3>
- <div attrs="{'invisible': [('sent_date', '=', False)]}">
- <h4 style="display: inline;"><field name="mass_mailing_campaign_id" groups="mass_mailing.group_mass_mailing_campaign"/></h4>
- <t t-if="record.mass_mailing_campaign_id.raw_value" groups="mass_mailing.group_mass_mailing_campaign"> - </t><field name="sent_date"/>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings">
+ <h3 class="mt4 mb4"><field name="name"/></h3>
+ <div class="o_kanban_record_subtitle" attrs="{'invisible': [('sent_date', '=', False)]}">
+ <h5 style="display: inline;"><field name="mass_mailing_campaign_id" groups="mass_mailing.group_mass_mailing_campaign"/></h5>
+ <t t-if="record.mass_mailing_campaign_id.raw_value" groups="mass_mailing.group_mass_mailing_campaign"> - </t><field name="sent_date"/>
+ </div>
</div>
</div>
- <div attrs="{'invisible': [('sent_date', '=', False)]}">
+ <div class="o_kanban_record_body" attrs="{'invisible': [('sent_date', '=', False)]}">
<t t-if="record.sent_date">
<div class="row">
<div class="col-xs-8">
@@ -811,29 +815,35 @@
<t t-if="widget.deletable">
<li><a type="delete">Delete</a></li>
</t>
+ <li class="divider"/>
+ <li class="dropdown-header">Colour</li>
<li><ul class="oe_kanban_colorpicker" data-field="color"/></li>
</ul>
</div>
<div class="oe_kanban_content">
- <div>
- <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)"
- t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar pull-right"/>
- <h3 class="oe_margin_bottom_8"><field name="name"/></h3>
- <a name="%(action_view_mass_mailings_from_campaign)d" type="action"
- class="oe_mailings">
- <h4 class="oe_margin_top_8"><t t-raw="record.mass_mailing_ids.raw_value.length"/> Mailings</h4>
- </a>
+ <div class="o_kanban_record_top mb16">
+ <div class="o_kanban_record_headings">
+ <h3 class="oe_margin_bottom_8 o_kanban_record_title"><field name="name"/></h3>
+ <a name="%(action_view_mass_mailings_from_campaign)d" type="action"
+ class="oe_mailings o_kanban_record_subtitle">
+ <t t-raw="record.mass_mailing_ids.raw_value.length"/> Mailings
+ </a>
+ </div>
+ </div>
+ <div class="o_kanban_record_body">
+ <field name="tag_ids" widget="many2many_tags" options="{'color_field': 'color'}"/>
</div>
- <field name="tag_ids" widget="many2many_tags" options="{'color_field': 'color'}"/>
- <div class="oe_clear"></div>
- <div>
- <div style="display: inline-block">
+ <div class="o_kanban_record_bottom mt16" style="height:90px">
+ <div class="oe_kanban_bottom_left" style="height:90px">
<field name="delivered" widget="gauge" options="{'max_field': 'total', 'style': 'width:120px; height: 90px;'}"/>
+ <div>
+ <strong>Opened</strong> <field name="opened_ratio"/> %<br />
+ <strong>Replied</strong> <field name="replied_ratio"/> % <br />
+ <strong>Clicks</strong> <field name="clicks_ratio"/> % <br />
+ </div>
</div>
- <div style="display: inline-block; vertical-align: top;">
- <strong>Opened</strong> <field name="opened_ratio"/> %<br />
- <strong>Replied</strong> <field name="replied_ratio"/> % <br />
- <strong>Clicks</strong> <field name="clicks_ratio"/> % <br />
+ <div class="oe_kanban_bottom_right" style="height:90px">
+ <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="30" height="30" class="oe_kanban_avatar"/>
</div>
</div>
</div>
diff --git a/addons/membership/views/product_views.xml b/addons/membership/views/product_views.xml
index 909ed782082..7bde4262c79 100644
--- a/addons/membership/views/product_views.xml
+++ b/addons/membership/views/product_views.xml
@@ -51,15 +51,13 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
- <div class="row mb4">
- <div class="col-xs-6">
- <strong><span><field name="name"/></span></strong>
- </div>
- <div class="col-xs-6 pull-right text-right">
- <strong><span class="badge"><i class="fa fa-money"/> <field name="list_price"/></span></strong>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings">
+ <strong class="o_kanban_record_title"><span class="mt4"><field name="name"/></span></strong>
</div>
+ <span class="badge"><i class="fa fa-money"/> <field name="list_price"/></span>
</div>
- <div>
+ <div class="o_kanban_record_body">
<i class="fa fa-clock-o" aria-hidden="true"></i><strong> From: </strong><field name="membership_date_from"/><strong> To:</strong> <field name="membership_date_to"/>
</div>
</div>
diff --git a/addons/mrp/views/mrp_bom_views.xml b/addons/mrp/views/mrp_bom_views.xml
index cf442e62ff6..5f4114b08fa 100644
--- a/addons/mrp/views/mrp_bom_views.xml
+++ b/addons/mrp/views/mrp_bom_views.xml
@@ -100,13 +100,11 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
- <div class="row">
- <div class="col-xs-7">
- <strong><span><field name="product_tmpl_id"/></span></strong>
- </div>
- <div class="col-xs-5">
- <strong><span class="pull-right badge"><t t-esc="record.product_qty.value"/> <t t-esc="record.product_uom_id.value"/></span></strong>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings mt4">
+ <strong class="o_kanban_record_title"><span clatt="mt4"><field name="product_tmpl_id"/></span></strong>
</div>
+ <span class="pull-right badge"><t t-esc="record.product_qty.value"/> <small><t t-esc="record.product_uom_id.value"/></small></span>
</div>
</div>
</t>
diff --git a/addons/mrp/views/mrp_message_views.xml b/addons/mrp/views/mrp_message_views.xml
index e5b353a81a8..df42e54f7a1 100644
--- a/addons/mrp/views/mrp_message_views.xml
+++ b/addons/mrp/views/mrp_message_views.xml
@@ -96,7 +96,7 @@
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
<div t-if="record.product_id.value">
- <strong>Product: <t t-esc="record.product_id.value"/></strong>
+ <strong class="o_kanban_record_title">Product: <t t-esc="record.name.value"/></strong>
</div>
<hr class="mt4 mb4"/>
<div class="row">
diff --git a/addons/mrp/views/mrp_production_views.xml b/addons/mrp/views/mrp_production_views.xml
index 3dbc4effaa4..d0415dc2fc3 100644
--- a/addons/mrp/views/mrp_production_views.xml
+++ b/addons/mrp/views/mrp_production_views.xml
@@ -179,20 +179,18 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
- <div class="row">
- <div class="col-xs-6">
- <strong><span><t t-esc="record.product_id.value"/></span></strong>
- </div>
- <div class="col-xs-6">
- <strong><span class="pull-right text-right"><t t-esc="record.product_qty.value"/> <t t-esc="record.product_uom_id.value"/></span></strong>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings mt4">
+ <strong class="o_kanban_record_title"><span><t t-esc="record.product_id.value"/></span></strong>
</div>
+ <span class="pull-right text-right"><t t-esc="record.product_qty.value"/> <small><t t-esc="record.product_uom_id.value"/></small></span>
</div>
- <div class="row">
- <div class="col-xs-6 text-muted">
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left text-muted">
<span><t t-esc="record.name.value"/> <t t-esc="record.date_planned_start.value and record.date_planned_start.value.split(' ')[0] or False"/></span>
</div>
- <div class="col-xs-6">
- <span t-attf-class="pull-right text-right label #{['draft', 'cancel'].indexOf(record.state.raw_value) > -1 ? 'label-default' : ['none'].indexOf(record.state.raw_value) > -1 ? 'label-danger' : ['confirmed'].indexOf(record.state.raw_value) > -1 ? 'label-warning' : ['done'].indexOf(record.state.raw_value) > -1 ? 'label-success' : 'label-primary'}"><t t-esc="record.state.value"/></span>
+ <div class="oe_kanban_bottom_right">
+ <span t-attf-class="label #{['draft', 'cancel'].indexOf(record.state.raw_value) > -1 ? 'label-default' : ['none'].indexOf(record.state.raw_value) > -1 ? 'label-danger' : ['confirmed'].indexOf(record.state.raw_value) > -1 ? 'label-warning' : ['done'].indexOf(record.state.raw_value) > -1 ? 'label-success' : 'label-primary'}"><t t-esc="record.state.value"/></span>
</div>
</div>
</div>
diff --git a/addons/mrp/views/mrp_routing_views.xml b/addons/mrp/views/mrp_routing_views.xml
index 8d76d6d1e02..3952dfaec43 100644
--- a/addons/mrp/views/mrp_routing_views.xml
+++ b/addons/mrp/views/mrp_routing_views.xml
@@ -124,13 +124,11 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
- <div class="row">
- <div class="col-xs-7">
- <strong><span><t t-esc="record.name.value"/></span></strong>
- </div>
- <div class="col-xs-5 pull-right text-right">
- <span class="badge"><field name="code"/></span>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings mt4">
+ <strong class="o_kanban_record_title"><span><t t-esc="record.name.value"/></span></strong>
</div>
+ <span class="badge"><field name="code"/></span>
</div>
</div>
</t>
diff --git a/addons/mrp/views/mrp_unbuild_views.xml b/addons/mrp/views/mrp_unbuild_views.xml
index 5ba1a073ff6..ebfccb2af7f 100644
--- a/addons/mrp/views/mrp_unbuild_views.xml
+++ b/addons/mrp/views/mrp_unbuild_views.xml
@@ -66,13 +66,11 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
- <div class="row">
- <div class="col-xs-6">
- <strong><span><field name="name"/></span></strong>
- </div>
- <div class="col-xs-6">
- <strong><span class="pull-right text-right"><t t-esc="record.product_qty.value"/> <t t-esc="record.product_uom_id.value"/></span></strong>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings mt4">
+ <strong class="o_kanban_record_title"><span><field name="name"/></span></strong>
</div>
+ <strong><t t-esc="record.product_qty.value"/> <small><t t-esc="record.product_uom_id.value"/></small></strong>
</div>
<div class="row">
<div class="col-xs-8 text-muted">
diff --git a/addons/mrp/views/mrp_workcenter_views.xml b/addons/mrp/views/mrp_workcenter_views.xml
index 06c4f5f1c35..8afdc372e57 100644
--- a/addons/mrp/views/mrp_workcenter_views.xml
+++ b/addons/mrp/views/mrp_workcenter_views.xml
@@ -143,10 +143,23 @@
<field name="oee_target"/>
<templates>
<t t-name="kanban-box">
- <div style="min-width: 400px;" t-attf-class="#{kanban_color(record.color.raw_value)}">
- <div t-attf-class="o_kanban_card_header">
- <div class="o_kanban_card_header_title">
- <div class="o_primary"><field name="name"/></div>
+ <div style="max-width: 250px; margin: 0 10px 10px" t-attf-class="#{kanban_color(record.color.raw_value)}">
+ <div t-attf-class="o_kanban_card_header o_kanban_record_top">
+ <div class="o_kanban_record_headings o_kanban_card_header_title">
+ <span name="wc_stages" class="pull-left">
+ <a name="%(act_mrp_block_workcenter)d" type="action" class="o_status"
+ title="No workorder currently in progress. Click to mark work center as blocked."
+ attrs="{'invisible': [('working_state','in',('blocked','done'))]}"/>
+ <a name="unblock" type="object" class=" o_status o_status_red"
+ title="Workcenter blocked, click to unblock."
+ attrs="{'invisible': [('working_state','in',('normal','done'))]}"/>
+ <a name="%(act_mrp_block_workcenter)d" type="action" class="o_status o_status_green"
+ title="Work orders in progress. Click to block work center."
+ attrs="{'invisible': [('working_state','in',('normal','blocked'))]}"/>
+ </span>
+ <span class="o_primary ml8" style="display: inline-block">
+ <field name="name"/>
+ </span>
</div>
<div class="o_kanban_manage_button_section">
<a class="o_kanban_manage_toggle_button" href="#"><i class="fa fa-ellipsis-v" /></a>
diff --git a/addons/mrp/views/mrp_workorder_views.xml b/addons/mrp/views/mrp_workorder_views.xml
index 5e274b1633c..dc4f003ffb6 100644
--- a/addons/mrp/views/mrp_workorder_views.xml
+++ b/addons/mrp/views/mrp_workorder_views.xml
@@ -336,8 +336,8 @@
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
<div class="oe_kanban_content">
- <div>
- <span><strong><t t-esc="record.product_id.value"/></strong></span>
+ <div class="o_kanban_record_top">
+ <span><strong class="o_kanban_record_title"><t t-esc="record.product_id.value"/></strong></span>
</div>
<div class="row">
<div class="col-xs-7 o_kanban_primary_left">
diff --git a/addons/point_of_sale/views/point_of_sale_dashboard.xml b/addons/point_of_sale/views/point_of_sale_dashboard.xml
index 3c8c9e073b0..6eed2cc4e99 100644
--- a/addons/point_of_sale/views/point_of_sale_dashboard.xml
+++ b/addons/point_of_sale/views/point_of_sale_dashboard.xml
@@ -56,22 +56,22 @@
<field name="currency_id"/>
<templates>
<t t-name="kanban-box">
- <div class="oe_kanban_color_1">
+ <div>
<div class="o_kanban_card_header">
- <div class="o_kanban_card_header_title">
+ <div class="o_kanban_card_header_title mb16">
<div class="o_primary">
<t t-esc="record.name.value"/>
- <t t-if="record.pos_session_state.raw_value == 'opening_control'">
- <div class="label label-info o_kanban_inline_block">Opening Control</div>
- </t>
- <t t-if="record.pos_session_state.raw_value == 'opened'">
- <div class="label label-success o_kanban_inline_block">In Progress</div>
- </t>
- <t t-if="record.pos_session_state.raw_value == 'closing_control'">
- <div class="label label-info o_kanban_inline_block">Closing Control</div>
- </t>
</div>
- <div class="o_secondary"><t t-esc="record.pos_session_username.value || 'Unused'"/></div>
+ <t t-if="record.pos_session_state.raw_value == 'opening_control'">
+ <div class="label label-info o_kanban_inline_block">Opening Control</div>
+ </t>
+ <t t-if="record.pos_session_state.raw_value == 'opened'">
+ <div class="label label-success o_kanban_inline_block">In Progress</div>
+ </t>
+ <t t-if="record.pos_session_state.raw_value == 'closing_control'">
+ <div class="label label-info o_kanban_inline_block">Closing Control</div>
+ </t>
+ <div class="o_secondary mt16"><t t-esc="record.pos_session_username.value || 'Unused'"/></div>
</div>
<div class="o_kanban_manage_button_section">
<a class="o_kanban_manage_toggle_button" href="#"><i class="fa fa-ellipsis-v" /></a>
diff --git a/addons/point_of_sale/views/pos_category_view.xml b/addons/point_of_sale/views/pos_category_view.xml
index 9ddfa08bb42..27ada704060 100644
--- a/addons/point_of_sale/views/pos_category_view.xml
+++ b/addons/point_of_sale/views/pos_category_view.xml
@@ -46,7 +46,7 @@
<img height="100" width="100" t-att-src="kanban_image('pos.category', 'image_medium', record.id.raw_value)"/>
</div>
<div class="col-xs-8">
- <strong><field name="name"/></strong>
+ <strong class="o_kanban_record_title"><field name="name"/></strong>
</div>
</div>
</div>
diff --git a/addons/point_of_sale/views/pos_order_view.xml b/addons/point_of_sale/views/pos_order_view.xml
index 36523315e17..fcf1ce8c2da 100644
--- a/addons/point_of_sale/views/pos_order_view.xml
+++ b/addons/point_of_sale/views/pos_order_view.xml
@@ -117,15 +117,11 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
- <div class="row mb4">
- <div class="col-xs-6">
- <strong><span><t t-esc="record.user_id.value"/></span></strong>
- </div>
- <div class="col-xs-6 pull-right text-right">
- <strong>
- <span class="badge"><i class="fa fa-money"/> <field name="amount_total"/></span>
- </strong>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings">
+ <strong class="o_kanban_record_title"><span><t t-esc="record.user_id.value"/></span></strong>
</div>
+ <strong><span class="badge"><i class="fa fa-money"/> <field name="amount_total"/></span></strong>
</div>
<div class="row">
<div class="col-xs-12">
diff --git a/addons/point_of_sale/views/pos_session_view.xml b/addons/point_of_sale/views/pos_session_view.xml
index f610fbd683c..8b79dc4e0b5 100644
--- a/addons/point_of_sale/views/pos_session_view.xml
+++ b/addons/point_of_sale/views/pos_session_view.xml
@@ -157,26 +157,22 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
- <div class="row mb4">
- <div class="col-xs-6">
- <strong><span><field name="config_id"/></span></strong>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings">
+ <strong class="o_kanban_record_title"><span><field name="config_id"/></span></strong>
</div>
- <div class="col-xs-6 pull-right text-right">
- <field name="state" widget="kanban_label_selection" options="{'classes': {'opening_control': 'default',
+ <field name="state" widget="kanban_label_selection" options="{'classes': {'opening_control': 'default',
'opened': 'success', 'closing_control': 'warning', 'closed': 'warning'}}"/>
- </div>
</div>
- <div class="mb4">
+ <div class="o_kanban_record_body">
<field name="name" />
</div>
- <div class="row">
- <div class="col-xs-8">
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left">
<span><field name="start_at" /></span>
</div>
- <div class="col-xs-4">
- <span class="pull-right">
- <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar pull-right"/>
- </span>
+ <div class="oe_kanban_bottom_right">
+ <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar pull-right"/>
</div>
</div>
</div>
diff --git a/addons/product/views/product_pricelist_views.xml b/addons/product/views/product_pricelist_views.xml
index 12089aa9fae..b2496285d71 100644
--- a/addons/product/views/product_pricelist_views.xml
+++ b/addons/product/views/product_pricelist_views.xml
@@ -115,11 +115,11 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
- <div id="product_pricelist">
- <strong><span><field name="name"/></span></strong>
- <span class="text-primary pull-right">
- <strong><i class="fa fa-money" aria-hidden="true"></i> <field name="currency_id"/></strong>
- </span>
+ <div id="product_pricelist" class="o_kanban_record_top mb0">
+ <div class="o_kanban_record_headings">
+ <strong class="o_kanban_record_title"><span><field name="name"/></span></strong>
+ </div>
+ <strong><i class="fa fa-money" aria-hidden="true"></i> <field name="currency_id"/></strong>
</div>
</div>
</t>
diff --git a/addons/product/views/product_template_views.xml b/addons/product/views/product_template_views.xml
index 96c3bfe333f..1cd7f1a166c 100644
--- a/addons/product/views/product_template_views.xml
+++ b/addons/product/views/product_template_views.xml
@@ -78,9 +78,9 @@
<img t-att-src="kanban_image('product.template', 'image_small', record.id.raw_value)"/>
</div>
<div class="oe_kanban_details">
- <strong>
- <span t-if="record.default_code.value">[<field name="default_code"/>]</span>
+ <strong class="o_kanban_record_title">
<field name="name"/>
+ <small t-if="record.default_code.value">[<field name="default_code"/>]</small>
</strong>
<div t-if="record.product_variant_count.value &gt; 1" groups="product.group_product_variant">
<strong>
diff --git a/addons/product/views/product_views.xml b/addons/product/views/product_views.xml
index ac5cdeebcbe..eb7e0261d79 100644
--- a/addons/product/views/product_views.xml
+++ b/addons/product/views/product_views.xml
@@ -346,16 +346,16 @@
<templates>
<t t-name="kanban-box">
<div class="oe_kanban_global_click">
- <div class="o_kanban_tags_section">
- <field name="attribute_value_ids" groups="product.group_product_variant"/>
- </div>
<div class="o_kanban_image">
<img t-att-src="kanban_image('product.product', 'image_small', record.id.raw_value)"/>
</div>
<div class="oe_kanban_details">
- <strong><field name="name"/></strong>
+ <strong class="o_kanban_record_title"><field name="name"/></strong>
+ <div class="o_kanban_tags_section">
+ <field name="attribute_value_ids" groups="product.group_product_variant"/>
+ </div>
<ul>
- <li>Price: <field name="lst_price"></field></li>
+ <li><strong>Price: <field name="lst_price"></field></strong></li>
</ul>
<div name="tags"/>
</div>
diff --git a/addons/purchase/views/purchase_views.xml b/addons/purchase/views/purchase_views.xml
index 045cdb97ab7..2446bd50c89 100644
--- a/addons/purchase/views/purchase_views.xml
+++ b/addons/purchase/views/purchase_views.xml
@@ -356,22 +356,18 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
- <div class="row">
- <div class="col-xs-6">
- <strong><span><t t-esc="record.partner_id.value"/></span></strong>
- </div>
- <div class="col-xs-6 pull-right text-right">
- <strong><field name="amount_total" widget="monetary"/></strong>
+ <div class="o_kanban_record_top mb16">
+ <div class="o_kanban_record_headings mt4">
+ <strong class="o_kanban_record_title"><span><t t-esc="record.partner_id.value"/></span></strong>
</div>
+ <strong><field name="amount_total" widget="monetary"/></strong>
</div>
- <div class="row">
- <div class="col-xs-6">
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left">
<span><t t-esc="record.name.value"/> <t t-esc="record.date_order.value and record.date_order.value.split(' ')[0] or False"/></span>
</div>
- <div class="col-xs-6">
- <span class="pull-right text-right">
- <field name="state" widget="label_selection" options="{'classes': {'draft': 'default', 'cancel': 'default', 'done': 'success', 'approved': 'warning'}}"/>
- </span>
+ <div class="oe_kanban_bottom_right">
+ <field name="state" widget="label_selection" options="{'classes': {'draft': 'default', 'cancel': 'default', 'done': 'success', 'approved': 'warning'}}"/>
</div>
</div>
</div>
diff --git a/addons/purchase_requisition/views/purchase_requisition_views.xml b/addons/purchase_requisition/views/purchase_requisition_views.xml
index 3c21493b04d..97484e9b0c1 100644
--- a/addons/purchase_requisition/views/purchase_requisition_views.xml
+++ b/addons/purchase_requisition/views/purchase_requisition_views.xml
@@ -26,15 +26,11 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
- <div class="row">
- <div class="col-xs-12">
- <strong><field name="name"/></strong>
- </div>
- </div>
- <div class="row">
- <div class="col-xs-12">
- <field name="exclusive" widget="kanban_label_selection"/>
+ <div class="o_kanban_record_top ">
+ <div class="o_kanban_record_headings mt4">
+ <strong class="o_kanban_record_title"><field name="name"/></strong>
</div>
+ <field name="exclusive" widget="kanban_label_selection"/>
</div>
</div>
</t>
@@ -232,28 +228,21 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
- <div class="row mb4">
- <div class="col-xs-6">
- <strong><span><field name="name"/></span></strong>
- </div>
- <div class="col-xs-6 pull-right text-right">
- <field name="state" widget="kanban_label_selection" options="{'classes': {'draft': 'default', 'in_progress': 'default',
- 'open': 'success', 'done': 'success', 'close': 'danger'}}"/>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings mt4">
+ <strong class="o_kanban_record_title"><span><field name="name"/></span></strong>
</div>
+ <field name="state" widget="kanban_label_selection" options="{'classes': {'draft': 'default', 'in_progress': 'default', 'open': 'success', 'done': 'success', 'close': 'danger'}}"/>
</div>
- <div class="row">
- <div class="col-xs-12 text-muted">
- <field name="type_id"/>
- </div>
+ <div class="o_kanban_record_body">
+ <span class="text-muted"><field name="type_id"/></span>
</div>
- <div class="row">
- <div class="col-xs-8">
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left">
<field name="vendor_id"/>
</div>
- <div class="col-xs-4">
- <span class="pull-right">
- <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar pull-right"/>
- </span>
+ <div class="oe_kanban_bottom_right">
+ <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar pull-right"/>
</div>
</div>
</div>
diff --git a/addons/sale/views/sale_views.xml b/addons/sale/views/sale_views.xml
index cb2564451a2..ef7ec08ab35 100644
--- a/addons/sale/views/sale_views.xml
+++ b/addons/sale/views/sale_views.xml
@@ -119,23 +119,18 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
- <div class="row">
- <div class="col-xs-6">
- <strong><span><t t-esc="record.partner_id.value"/></span></strong>
- </div>
- <div class="col-xs-6 pull-right text-right">
- <strong><field name="amount_total" widget="monetary"/></strong>
+ <div class="o_kanban_record_top mb16">
+ <div class="o_kanban_record_headings mt4">
+ <strong class="o_kanban_record_title"><span><t t-esc="record.partner_id.value"/></span></strong>
</div>
+ <strong><field name="amount_total" widget="monetary"/></strong>
</div>
- <div class="row">
- <div class="col-xs-6 text-muted">
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left text-muted">
<span><t t-esc="record.name.value"/> <t t-esc="record.date_order.value"/></span>
</div>
- <div class="col-xs-6">
- <span class="pull-right text-right">
- <field name="state" widget="label_selection" options="{'classes': {'draft': 'default', 'cancel': 'default',
- 'done': 'success'}}"/>
- </span>
+ <div class="oe_kanban_bottom_right">
+ <field name="state" widget="label_selection" options="{'classes': {'draft': 'default', 'cancel': 'default', 'done': 'success'}}"/>
</div>
</div>
</div>
diff --git a/addons/sales_team/views/crm_team_views.xml b/addons/sales_team/views/crm_team_views.xml
index fbff36f7052..8b4f968ecb9 100644
--- a/addons/sales_team/views/crm_team_views.xml
+++ b/addons/sales_team/views/crm_team_views.xml
@@ -75,13 +75,15 @@
<field name="name"/>
<templates>
<t t-name="kanban-box">
- <div class="oe_kanban_global_click" style="position: relative">
- <a t-if="! read_only_mode" type="delete" style="position: absolute; right: 0; padding: 4px; diplay: inline-block">X</a>
- <div class="oe_module_vignette">
- <img t-att-src="kanban_image('res.users', 'image_small', record.id.raw_value)" class="oe_avatar oe_kanban_avatar_smallbox"/>
- <div class="oe_module_desc">
- <field name="name"/>
+ <div class="oe_kanban_global_click" style="max-width: 200px">
+ <div class="o_kanban_record_top">
+ <img t-att-src="kanban_image('res.users', 'image_small', record.id.raw_value)" height="40" width="40" class="oe_avatar oe_kanban_avatar_smallbox mb0"/>
+ <div class="o_kanban_record_headings ml8">
+ <strong class="o_kanban_record_title"><field name="name"/></strong>
</div>
+ <a t-if="! read_only_mode" type="delete" class="text-danger">
+ <i class="fa fa-times"></i>
+ </a>
</div>
</div>
</t>
diff --git a/addons/stock/views/stock_inventory_views.xml b/addons/stock/views/stock_inventory_views.xml
index 421324c16ad..af9af7be00a 100644
--- a/addons/stock/views/stock_inventory_views.xml
+++ b/addons/stock/views/stock_inventory_views.xml
@@ -89,17 +89,16 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
- <div class="row mb4">
- <div class="col-xs-6">
- <strong><span><t t-esc="record.name.value"/></span></strong>
- </div>
- <div class="col-xs-6 pull-right text-right">
- <field name="state" widget="kanban_label_selection" options="{'classes': {'draft': 'info', 'cancel': 'default',
- 'confirm': 'success', 'done': 'success'}}"/>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings">
+ <strong class="o_kanban_record_title"><span><t t-esc="record.name.value"/></span></strong>
</div>
+ <field name="state" widget="kanban_label_selection" options="{'classes': {'draft': 'info', 'cancel': 'default', 'confirm': 'success', 'done': 'success'}}"/>
</div>
- <div>
- <i class="fa fa-clock-o"/> <t t-esc="record.date.value"/>
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left">
+ <i class="fa fa-clock-o"/> <t t-esc="record.date.value"/>
+ </div>
</div>
</div>
</t>
diff --git a/addons/stock/views/stock_move_views.xml b/addons/stock/views/stock_move_views.xml
index 5e2a47009b0..c4c360774e6 100644
--- a/addons/stock/views/stock_move_views.xml
+++ b/addons/stock/views/stock_move_views.xml
@@ -82,23 +82,19 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
- <div class="row mb4">
- <div class="col-xs-6">
- <strong><span><field name="name"/></span></strong>
- </div>
- <div class="col-xs-6">
- <span class="pull-right text-right">
- <field name="state" widget="kanban_label_selection" options="{'classes': {'draft': 'default', 'cancel': 'danger',
- 'assigned': 'success', 'confirmed': 'default'}}"/>
- </span>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings">
+ <strong class="o_kanban_record_title"><span><field name="name"/></span></strong>
</div>
+ <field name="state" widget="kanban_label_selection" options="{'classes': {'draft': 'default', 'cancel': 'danger', 'assigned': 'success', 'confirmed': 'default'}}"/>
</div>
- <div class="row">
- <div class="col-xs-8">
- <field name="product_id"/>
- </div>
- <div class="col-xs-4">
- <span class="pull-right"><field name="product_uom_qty"/></span>
+ <div class="o_kanban_record_body">
+ <field name="product_id"/>
+ </div>
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left"/>
+ <div class="oe_kanban_bottom_right">
+ <span><field name="product_uom_qty"/></span>
</div>
</div>
</div>
diff --git a/addons/stock/views/stock_picking_views.xml b/addons/stock/views/stock_picking_views.xml
index 0179d422697..2444cc1e714 100644
--- a/addons/stock/views/stock_picking_views.xml
+++ b/addons/stock/views/stock_picking_views.xml
@@ -150,22 +150,20 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
- <div class="row">
- <div class="col-xs-6">
- <strong><span><t t-esc="record.name.value"/></span></strong>
+ <div class="o_kanban_record_top mb8">
+ <div class="o_kanban_record_headings">
+ <strong class="o_kanban_record_title"><span><t t-esc="record.name.value"/></span></strong>
</div>
- <div class="col-xs-6">
- <strong><span class="pull-right text-right">
+ <strong>
<field name="state" widget="label_selection" options="{'classes': {'draft': 'default', 'cancel': 'default', 'none': 'danger', 'waiting': 'warning', 'confirmed': 'warning', 'partially_available': 'warning', 'done': 'success'}}"/>
- </span></strong>
- </div>
+ </strong>
</div>
- <div class="row text-muted">
- <div class="col-xs-6">
- <span><t t-esc="record.partner_id.value"/></span>
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left">
+ <t t-esc="record.partner_id.value"/>
</div>
- <div class="col-xs-6">
- <span class="pull-right text-right"><t t-esc="record.date.value and record.date.value.split(' ')[0] or False"/></span>
+ <div class="oe_kanban_bottom_right">
+ <t t-esc="record.date.value and record.date.value.split(' ')[0] or False"/>
</div>
</div>
</div>
diff --git a/addons/stock/views/stock_quant_views.xml b/addons/stock/views/stock_quant_views.xml
index d3f232cd784..f3160638a4d 100644
--- a/addons/stock/views/stock_quant_views.xml
+++ b/addons/stock/views/stock_quant_views.xml
@@ -231,8 +231,8 @@
<field name="name"/>
<t t-name="kanban-box">
<div class="oe_kanban_global_click">
- <div class="oe_kanban_vignette">
- <strong><field name="name"/></strong>
+ <div class="o_kanban_record_top mb0">
+ <strong class="o_kanban_record_title"><field name="name"/></strong>
</div>
</div>
</t>
diff --git a/addons/stock/views/stock_warehouse_views.xml b/addons/stock/views/stock_warehouse_views.xml
index e92b4bb815c..a4678d2867c 100644
--- a/addons/stock/views/stock_warehouse_views.xml
+++ b/addons/stock/views/stock_warehouse_views.xml
@@ -131,24 +131,18 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
- <div class="row mb4">
- <div class="col-xs-6">
- <strong><t t-esc="record.name.value"/></strong>
- </div>
- <div class="col-xs-6">
- <span class="pull-right badge">
- <strong>Min qty :</strong><t t-esc="record.product_min_qty.value"/>
- </span>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings">
+ <strong class="o_kanban_record_title"><t t-esc="record.name.value"/></strong>
</div>
+ <span class="badge"><strong>Min qty :</strong><t t-esc="record.product_min_qty.value"/></span>
</div>
- <div class="row">
- <div class="col-xs-6">
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left">
<span><t t-esc="record.product_id.value"/></span>
</div>
- <div class="col-xs-6">
- <span class="pull-right badge">
- <strong>Max qty :</strong><t t-esc="record.product_max_qty.value"/>
- </span>
+ <div class="oe_kanban_bottom_right">
+ <span class="badge"><strong>Max qty :</strong><t t-esc="record.product_max_qty.value"/></span>
</div>
</div>
</div>
diff --git a/addons/stock_picking_batch/views/stock_picking_batch_views.xml b/addons/stock_picking_batch/views/stock_picking_batch_views.xml
index a31f50c0037..1ac8d9b7d3f 100644
--- a/addons/stock_picking_batch/views/stock_picking_batch_views.xml
+++ b/addons/stock_picking_batch/views/stock_picking_batch_views.xml
@@ -64,16 +64,17 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
- <div class="row mb4">
- <div class="col-xs-6">
- <strong><field name="name"/></strong>
- </div>
- <div class="col-xs-6 text-right">
- <field name="state" widget="kanban_label_selection"/>
+ <div class="o_kanban_record_top mb16">
+ <div class="o_kanban_record_headings">
+ <strong class="o_kanban_record_title"><field name="name"/></strong>
</div>
+ <field name="state" widget="kanban_label_selection"/>
</div>
- <div class="pull-right">
- <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar pull-right"/>
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left"/>
+ <div class="oe_kanban_bottom_right">
+ <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar"/>
+ </div>
</div>
</div>
</t>
diff --git a/addons/survey/views/survey_views.xml b/addons/survey/views/survey_views.xml
index 8b196871fe6..f3955e65d12 100644
--- a/addons/survey/views/survey_views.xml
+++ b/addons/survey/views/survey_views.xml
@@ -97,28 +97,18 @@
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
- <div class="row mb8">
- <div class="col-xs-8">
- <strong>
- <t t-esc="record.survey_id.value"/>
- </strong>
- </div>
- <div class="col-xs-4">
- <span class="pull-right badge">
- <t t-esc="record.type.value"/>
- </span>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings">
+ <strong class="o_kanban_record_title"><t t-esc="record.survey_id.value"/></strong>
</div>
+ <span class="badge"><t t-esc="record.type.value"/></span>
</div>
- <div class="row">
- <div class="col-xs-8">
- <strong>
- <field name="date_create"/>
- </strong>
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left">
+ <field name="date_create"/>
</div>
- <div class="col-xs-4">
- <span class="pull-right">
- <field name="state" widget="kanban_label_selection" options="{'classes': {'new': 'default', 'done': 'success', 'skip':'warning'}}"/>
- </span>
+ <div class="oe_kanban_bottom_right mr4">
+ <field name="state" widget="kanban_label_selection" options="{'classes': {'new': 'default', 'done': 'success', 'skip':'warning'}}"/>
</div>
</div>
</div>
@@ -252,12 +242,16 @@
<ul class="dropdown-menu" role="menu" aria-labelledby="dLabel">
<li><a type="edit">Edit Survey</a></li>
<li t-if="widget.deletable"><a type="delete">Delete</a></li>
+ <li class="divider"/>
+ <li>Color</li>
<li><ul class="oe_kanban_colorpicker" data-field="color"/></li>
</ul>
</div>
- <div class="oe_kanban_content">
- <h4 class="oe_center"><field name="title" /></h4>
- <div><ul>
+ <div class="o_kanban_record_top">
+ <h4 class="o_kanban_record_title mb4"><field name="title" /></h4>
+ </div>
+ <div class="o_kanban_record_bottom">
+ <ul class="list-unstyled">
<li>
<a name="action_test_survey" type="object">Design</a>
</li>
@@ -273,7 +267,10 @@
<t t-if="record.tot_start_survey.raw_value &gt; 0"><a name="action_result_survey" type="object">Analyze Answers</a> <span t-if="record.tot_start_survey.raw_value &gt; 0">(<field name="tot_start_survey" />)</span></t>
<t t-if="record.tot_start_survey.raw_value &lt;= 0"><a style="color: #aaaaaa;">Analyze Answers</a></t>
</li>
- </ul></div>
+ </ul>
+ </div>
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left"/>
<div class="oe_kanban_bottom_right">
<field name="activity_ids" widget="kanban_activity" />
</div>
diff --git a/addons/web/static/src/less/kanban_view.less b/addons/web/static/src/less/kanban_view.less
index e63bd357269..0eb54bdc652 100644
--- a/addons/web/static/src/less/kanban_view.less
+++ b/addons/web/static/src/less/kanban_view.less
@@ -230,6 +230,7 @@
> * {
margin-right: 6px;
+ line-height: 1;
}
.o_priority_star {
diff --git a/addons/website_event_track/views/event_track_views.xml b/addons/website_event_track/views/event_track_views.xml
index c54ba3bfa6b..265598e53fd 100644
--- a/addons/website_event_track/views/event_track_views.xml
+++ b/addons/website_event_track/views/event_track_views.xml
@@ -29,24 +29,25 @@
</ul>
</div>
<div class="oe_kanban_content">
- <h4><field name="name"/></h4>
- <div>
- <t t-if="duration"><field name="duration" widget="float_time"/> hours</t>
+ <div class="o_kanban_record_top">
+ <h4 class="o_kanban_record_title"><field name="name"/></h4>
</div>
- <field name="tag_ids" widget="many2many_tags" options="{'color_field': 'color'}"/>
- <div class="oe_kanban_bottom_left">
- <field name="priority" widget="priority"/>
+ <div class="o_kanban_record_body">
+ <t t-if="duration"><field name="duration" widget="float_time"/> hours</t>
+ <field name="tag_ids" widget="many2many_tags" options="{'color_field': 'color'}"/>
</div>
- <div class="oe_kanban_bottom_right">
- <img t-att-src="kanban_image('res.partner', 'image_small', record.partner_id.raw_value)"
- t-att-title="record.partner_id.value" width="24" height="24"
- class="oe_kanban_avatar pull-right"/>
- <div class="pull-left mr4">
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left">
+ <field name="priority" widget="priority"/>
<field name="activity_ids" widget="kanban_activity"/>
+ </div>
+ <div class="oe_kanban_bottom_right">
<field name="kanban_state" widget="state_selection" groups="base.group_user"/>
+ <img t-att-src="kanban_image('res.partner', 'image_small', record.partner_id.raw_value)"
+ t-att-title="record.partner_id.value" width="24" height="24"
+ class="oe_kanban_avatar"/>
</div>
</div>
- <div class="oe_clear"/>
</div>
</div>
</t>
@@ -416,7 +417,7 @@
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
<div>
- <strong><field name="name"/></strong>
+ <strong class="o_kanban_record_title"><field name="name"/></strong>
</div>
</div>
</t>
diff --git a/addons/website_forum_doc/views/doc.xml b/addons/website_forum_doc/views/doc.xml
index 4f86558d5c9..099de859f13 100644
--- a/addons/website_forum_doc/views/doc.xml
+++ b/addons/website_forum_doc/views/doc.xml
@@ -37,7 +37,6 @@
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_color_#{kanban_getcolor(record.color.raw_value)} oe_kanban_card oe_kanban_global_click">
<div class="o_dropdown_kanban dropdown" groups="base.group_user">
-
<a class="dropdown-toggle btn" data-toggle="dropdown" href="#" >
<span class="fa fa-ellipsis-v"/>
</a>
@@ -47,13 +46,15 @@
<li><ul class="oe_kanban_colorpicker" data-field="color"/></li>
</ul>
</div>
- <div class="oe_kanban_content">
- <div><b><field name="name"/></b></div>
+ <div class="o_kanban_record_top">
+ <b class="o_kanban_record_title"><field name="name"/></b>
+ </div>
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left"/>
<div class="oe_kanban_bottom_right">
<img t-att-src="kanban_image('res.users', 'image_small', record.create_uid.raw_value)" t-att-title="record.create_uid.value" width="24" height="24" class="oe_kanban_avatar"/>
</div>
</div>
- <div class="oe_clear"></div>
</div>
</t>
</templates>
diff --git a/odoo/addons/base/res/res_partner_view.xml b/odoo/addons/base/res/res_partner_view.xml
index 143f6fad07a..31b689826d0 100644
--- a/odoo/addons/base/res/res_partner_view.xml
+++ b/odoo/addons/base/res/res_partner_view.xml
@@ -463,7 +463,7 @@
</t>
</div>
<div class="oe_kanban_details">
- <strong class="oe_partner_heading"><field name="display_name"/></strong>
+ <strong class="o_kanban_record_title oe_partner_heading"><field name="display_name"/></strong>
<div class="o_kanban_tags_section oe_kanban_partner_categories"/>
<ul>
<li t-if="record.parent_id.raw_value and !record.function.raw_value"><field name="parent_id"/></li>