summaryrefslogtreecommitdiff
path: root/addons/lunch/static/src
diff options
context:
space:
mode:
authorqsm-odoo <qsm@odoo.com>2015-09-11 14:18:28 +0200
committerqsm-odoo <qsm@odoo.com>2015-09-11 16:22:19 +0200
commit047dab70296267aafbdbc1fe6dd6d545d31e166f (patch)
tree5c2c051d12521534108a98c5de10ee163a3de3c5 /addons/lunch/static/src
parentf5f0edaae13b4bb646fbd6de7bfc0fa5b0d40b0d (diff)
[REF] lunch: XML/LESS/JS
CSS to LESS Adaptation to new webclient
Diffstat (limited to 'addons/lunch/static/src')
-rw-r--r--addons/lunch/static/src/css/lunch.css28
-rw-r--r--addons/lunch/static/src/css/lunch.sass24
-rw-r--r--addons/lunch/static/src/js/lunch.js44
-rw-r--r--addons/lunch/static/src/less/lunch.less15
-rw-r--r--addons/lunch/static/src/xml/lunch.xml57
5 files changed, 59 insertions, 109 deletions
diff --git a/addons/lunch/static/src/css/lunch.css b/addons/lunch/static/src/css/lunch.css
deleted file mode 100644
index 3cafcbedfda..00000000000
--- a/addons/lunch/static/src/css/lunch.css
+++ /dev/null
@@ -1,28 +0,0 @@
-.openerp .o_lunch .o_lunch_alert {
- height: 22px;
-}
-.openerp .o_lunch .o_lunch_30pc {
- width: 30%;
- display: inline-block;
- vertical-align: top;
-}
-.openerp .o_lunch .o_lunch_30pc:nth-child(3) {
- padding-right: 0;
-}
-.openerp .o_lunch .o_lunch_30pc {
- padding-right: 5%;
-}
-.openerp .o_lunch h2 {
- color: #7c7bad;
-}
-.openerp .o_lunch .o_lunch_vignette {
- border-bottom: 1px solid #dddddd;
- padding-top: 5px;
- padding-bottom: 5px;
-}
-.openerp .o_lunch .o_lunch_vignette:last-child {
- border: none;
-}
-.openerp .o_lunch .oe_group_text_button {
- margin-bottom: 3px;
-}
diff --git a/addons/lunch/static/src/css/lunch.sass b/addons/lunch/static/src/css/lunch.sass
deleted file mode 100644
index f8a31ec7f47..00000000000
--- a/addons/lunch/static/src/css/lunch.sass
+++ /dev/null
@@ -1,24 +0,0 @@
-@charset "utf-8"
-
-.openerp
- .o_lunch
- .o_lunch_alert
- height: 22px
- .o_lunch_30pc
- width: 30%
- display: inline-block
- vertical-align: top
- .o_lunch_30pc:nth-child(3)
- padding-right: 0
- .o_lunch_30pc
- padding-right: 5%
- h2
- color: #7C7BAD
- .o_lunch_vignette
- border-bottom: 1px solid #dddddd
- padding-top: 5px
- padding-bottom: 5px
- .o_lunch_vignette:last-child
- border: none
- .oe_group_text_button
- margin-bottom: 3px
diff --git a/addons/lunch/static/src/js/lunch.js b/addons/lunch/static/src/js/lunch.js
index 116c24389c6..575fb3e9616 100644
--- a/addons/lunch/static/src/js/lunch.js
+++ b/addons/lunch/static/src/js/lunch.js
@@ -2,20 +2,18 @@ odoo.define('lunch.form_widgets', function (require) {
"use strict";
var core = require('web.core');
-var Model = require('web.Model');
var form_common = require('web.form_common');
var form_widgets = require('web.form_widgets');
var form_relational = require('web.form_relational');
var _t = core._t;
var QWeb = core.qweb;
-var lunch = {};
-lunch.lunch_order_widget_previous_orders = form_relational.AbstractManyField.extend(form_common.ReinitializeWidgetMixin, {
- template : 'lunch_order_widget_previous_orders',
+var LunchPreviousOrdersWidget = form_relational.AbstractManyField.extend(form_common.ReinitializeWidgetMixin, {
+ className: 'row o_lunch_last_orders',
events: {
- 'click span.add_button': 'set_order_line',
+ 'click .o_add_button': 'set_order_line',
},
- init: function(field_manager, node){
+ init: function(field_manager, node) {
this._super.apply(this, arguments);
this.lunch_data = {};
this.fields_to_read = ['product_id', 'supplier', 'note', 'price', 'category_id', 'currency_id'];
@@ -25,13 +23,14 @@ lunch.lunch_order_widget_previous_orders = form_relational.AbstractManyField.ext
fetch_value: function(){
var self = this;
return this.dataset.read_ids(this.get('value'), this.fields_to_read)
- .done(function(data){
- _.each(data, function(order){
+ .then(function(data) {
+ _.each(data, function(order) {
self.lunch_data[order['id']] = order;
});
+ return data;
});
},
- get_line_value: function (id) {
+ get_line_value: function(id) {
var data = _.clone(this.lunch_data[id]);
if (typeof this.lunch_data[id]['product_id'][0] != 'undefined'){
data['product_id'] = this.lunch_data[id]['product_id'][0];
@@ -44,30 +43,33 @@ lunch.lunch_order_widget_previous_orders = form_relational.AbstractManyField.ext
}
return data;
},
- set_order_line: function(event){
- var data = this.get_line_value( parseInt($(event.currentTarget).attr('id')) );
+ set_order_line: function(event) {
+ var data = this.get_line_value(parseInt($(event.currentTarget).data('id')));
var order_line_ids = this.field_manager.fields.order_line_ids;
order_line_ids.data_create(data);
order_line_ids.reload_current_view();
},
render_value: function() {
var self = this;
- return this.fetch_value().done(function(data) {
+ return this.fetch_value().then(function(data) {
if (_.isEmpty(data)) {
- return self.$el.html(QWeb.render("lunch_order_widget_no_previous_order"));
+ return self.$el.html(QWeb.render("lunch_order_widget_no_previous_order"));
}
var categories = _.groupBy(data,function(data1){return data1['supplier'][1];});
- return self.$el.html(QWeb.render("lunch_order_widget_previous_orders_list", {'widget': self, 'categories': categories}
- ));
+ return self.$el.html(QWeb.render("lunch_order_widget_previous_orders_list", {'widget': self, 'categories': categories}));
});
},
- destroy: function () {
- this.monetary.destroy();
- this._super();
- }
+ destroy: function() {
+ this.monetary.destroy();
+ this._super();
+ },
+ is_false: function() {
+ return false;
+ },
});
-core.form_widget_registry.add('previous_order', lunch.lunch_order_widget_previous_orders);
-return lunch;
+core.form_widget_registry.add('previous_order', LunchPreviousOrdersWidget);
+
+return LunchPreviousOrdersWidget;
});
diff --git a/addons/lunch/static/src/less/lunch.less b/addons/lunch/static/src/less/lunch.less
new file mode 100644
index 00000000000..ab79294e233
--- /dev/null
+++ b/addons/lunch/static/src/less/lunch.less
@@ -0,0 +1,15 @@
+
+.o_web_client .o_lunch {
+ .o_lunch_last_orders {
+ width: 100%;
+
+ .o_lunch_vignette {
+ .clearfix();
+ padding: 5px 0;
+
+ + .o_lunch_vignette {
+ border-top: 1px solid @odoo-brand-lightsecondary;
+ }
+ }
+ }
+}
diff --git a/addons/lunch/static/src/xml/lunch.xml b/addons/lunch/static/src/xml/lunch.xml
index 3eedfc9637d..77bce1be30d 100644
--- a/addons/lunch/static/src/xml/lunch.xml
+++ b/addons/lunch/static/src/xml/lunch.xml
@@ -1,42 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<templates>
- <t t-name="lunch_order_widget_previous_orders">
- <div>
- <div class="previous_order_lines"></div>
- </div>
- </t>
- <t t-name="lunch_order_widget_no_previous_order">
- <div class="oe_inline o_lunch_intro">
- <h3>This is the first time you order a meal</h3>
- <p class="text-muted">Select a product and put your order comments on the note.</p>
- <p class="text-muted">Your favorite meals will be created based on your last orders.</p>
- <p class="text-muted">Don't forget the alerts displayed in the reddish area</p>
- </div>
- </t>
+ <div t-name="lunch_order_widget_no_previous_order" class="col-md-12">
+ <h3>This is the first time you order a meal</h3>
+ <p class="text-muted">Select a product and put your order comments on the note.</p>
+ <p class="text-muted">Your favorite meals will be created based on your last orders.</p>
+ <p class="text-muted">Don't forget the alerts displayed in the reddish area</p>
+ </div>
<t t-name="lunch_order_widget_previous_orders_list">
- <t t-foreach="categories" t-as="product_category">
- <div class="o_lunch_30pc">
- <h2><t t-esc="product_category"/></h2>
- <t t-foreach='categories[product_category]' t-as='product'>
- <div class="o_lunch_vignette">
- <span class="pull-right add_button oe_edit_only" t-att-id="product.id">
- <button type="button" class="oe_button oe_link">
- <span class="fa fa-plus-square"></span>
- <span>Add</span>
- </button>
- </span>
- <div class="oe_group_text_button">
- <div class="o_lunch_text">
- <t t-esc="product.product_id[1]"/>
- <span class="badge">
- <t t-esc="widget.monetary.format_value(product.price)"/> <t t-esc="product.currency_id[1]"/>
- </span>
- </div>
- </div>
- <div class="text-muted"><t t-if="product.note != false" t-esc="product.note"/></div>
- </div>
- </t>
+ <div t-foreach="categories" t-as="product_category" class="col-sm-4">
+ <h3><t t-esc="product_category"/></h3>
+ <div t-foreach='categories[product_category]' t-as='product' class="o_lunch_vignette">
+ <button type="button" class="pull-right o_add_button oe_edit_only oe_link" t-att-data-id="product.id">
+ <span class="fa fa-plus-square"></span>
+ <span>Add</span>
+ </button>
+ <div class="o_lunch_text">
+ <t t-esc="product.product_id[1]"/>
+ <span class="badge">
+ <t t-esc="widget.monetary.format_value(product.price)"/> <t t-esc="product.currency_id[1]"/>
+ </span>
+ </div>
+ <div class="text-muted"><t t-if="product.note != false" t-esc="product.note"/></div>
</div>
- </t>
+ </div>
</t>
</templates>