Round 2, fight
bzr revid: xmo@openerp.com-20110908171722-gdyixqgw935jcvrl
This commit is contained in:
commit
4bd2269466
|
@ -1363,12 +1363,19 @@ class Reports(View):
|
|||
openerpweb.nonliterals.CompoundContext(
|
||||
req.context or {}, action[ "context"]))
|
||||
|
||||
report_data = {"id": context["active_id"], "model": context["active_model"]}
|
||||
report_data = {}
|
||||
report_ids = context["active_ids"]
|
||||
if 'report_type' in action:
|
||||
report_data['report_type'] = action['report_type']
|
||||
if 'datas' in action:
|
||||
if 'form' in action['datas']:
|
||||
report_data['form'] = action['datas']['form']
|
||||
if 'ids' in action['datas']:
|
||||
report_ids = action['datas']['ids']
|
||||
|
||||
report_id = report_srv.report(
|
||||
req.session._db, req.session._uid, req.session._password,
|
||||
action["report_name"], context["active_ids"],
|
||||
action["report_name"], report_ids,
|
||||
report_data, context)
|
||||
|
||||
report_struct = None
|
||||
|
|
|
@ -1276,3 +1276,38 @@ label.error {
|
|||
border-left: none;
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
ul.oe-arrow-list {
|
||||
padding-left: 0.5em;
|
||||
}
|
||||
ul.oe-arrow-list li {
|
||||
display: inline-block;
|
||||
margin-left: -0.5em;
|
||||
}
|
||||
ul.oe-arrow-list li span {
|
||||
vertical-align: top;
|
||||
display: inline-block;
|
||||
border-width:1em;
|
||||
border-style:solid;
|
||||
border-color: white;
|
||||
line-height:0em;
|
||||
}
|
||||
ul.oe-arrow-list .oe-arrow-list-before {
|
||||
border-left-color: rgba(0,0,0,0);
|
||||
border-right-width:0;
|
||||
}
|
||||
ul.oe-arrow-list .oe-arrow-list-after {
|
||||
border-color: rgba(0,0,0,0);
|
||||
border-left-color: white;
|
||||
border-right-width:0;
|
||||
}
|
||||
ul.oe-arrow-list li.oe-arrow-list-selected span {
|
||||
border-color: #CFCCCC;
|
||||
}
|
||||
ul.oe-arrow-list li.oe-arrow-list-selected .oe-arrow-list-before {
|
||||
border-left-color: rgba(0,0,0,0);
|
||||
}
|
||||
ul.oe-arrow-list li.oe-arrow-list-selected .oe-arrow-list-after {
|
||||
border-color: rgba(0,0,0,0);
|
||||
border-left-color: #CFCCCC;
|
||||
}
|
||||
|
|
|
@ -382,9 +382,9 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView#
|
|||
},
|
||||
on_saved: function(r, success) {
|
||||
if (!r.result) {
|
||||
this.notification.warn("Record not saved", "Problem while saving record.");
|
||||
this.notification.warn(_t("Record not saved"), _t("Problem while saving record."));
|
||||
} else {
|
||||
this.notification.notify("Record saved", "The record #" + this.datarecord.id + " has been saved.");
|
||||
this.notification.notify(_t("Record saved"), _.sprintf(_("The record #%s has been saved.") + this.datarecord.id));
|
||||
if (success) {
|
||||
success(r);
|
||||
}
|
||||
|
@ -406,7 +406,7 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView#
|
|||
*/
|
||||
on_created: function(r, success, prepend_on_create) {
|
||||
if (!r.result) {
|
||||
this.notification.warn("Record not created", "Problem while creating record.");
|
||||
this.notification.warn(_t("Record not created"), "Problem while creating record.");
|
||||
} else {
|
||||
this.datarecord.id = r.result;
|
||||
if (!prepend_on_create) {
|
||||
|
@ -420,7 +420,7 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView#
|
|||
if (this.sidebar) {
|
||||
this.sidebar.attachments.do_update();
|
||||
}
|
||||
this.notification.notify("Record created", "The record has been created with id #" + this.datarecord.id);
|
||||
this.notification.notify(_t("Record created"), "The record has been created with id #" + this.datarecord.id);
|
||||
if (success) {
|
||||
success(_.extend(r, {created: true}));
|
||||
}
|
||||
|
@ -2478,6 +2478,50 @@ openerp.web.form.FieldBinaryImage = openerp.web.form.FieldBinary.extend({
|
|||
}
|
||||
});
|
||||
|
||||
openerp.web.form.FieldStatus = openerp.web.form.Field.extend({
|
||||
template: "FieldStatus",
|
||||
start: function() {
|
||||
this._super();
|
||||
this.selected_value = null;
|
||||
|
||||
this.render_list();
|
||||
},
|
||||
set_value: function(value) {
|
||||
this._super(value);
|
||||
this.selected_value = value;
|
||||
|
||||
this.render_list();
|
||||
},
|
||||
render_list: function() {
|
||||
var self = this;
|
||||
var shown = _.map(((this.node.attrs || {}).statusbar_visible || "").split(","),
|
||||
function(x) { return x.trim(); });
|
||||
|
||||
if (shown.length == 0) {
|
||||
this.to_show = this.field.selection;
|
||||
} else {
|
||||
this.to_show = _.select(this.field.selection, function(x) {
|
||||
return _.indexOf(shown, x[0]) !== -1 || x[0] === self.selected_value;
|
||||
});
|
||||
}
|
||||
|
||||
var content = openerp.web.qweb.render("FieldStatus.content", {widget: this, _:_});
|
||||
this.$element.html(content);
|
||||
|
||||
var colors = JSON.parse(((this.node.attrs || {}).statusbar_colors || "{}").split("'").join('"'));
|
||||
var color = colors[this.selected_value];
|
||||
if (color) {
|
||||
var elem = this.$element.find("li.oe-arrow-list-selected span");
|
||||
elem.css("border-color", color);
|
||||
elem = this.$element.find("li.oe-arrow-list-selected .oe-arrow-list-before");
|
||||
elem.css("border-left-color", "rgba(0,0,0,0)");
|
||||
elem = this.$element.find("li.oe-arrow-list-selected .oe-arrow-list-after");
|
||||
elem.css("border-color", "rgba(0,0,0,0)");
|
||||
elem.css("border-left-color", color);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* Registry of form widgets, called by :js:`openerp.web.FormView`
|
||||
*/
|
||||
|
@ -2507,7 +2551,8 @@ openerp.web.form.widgets = new openerp.web.Registry({
|
|||
'float_time': 'openerp.web.form.FieldFloat',
|
||||
'progressbar': 'openerp.web.form.FieldProgressBar',
|
||||
'image': 'openerp.web.form.FieldBinaryImage',
|
||||
'binary': 'openerp.web.form.FieldBinaryFile'
|
||||
'binary': 'openerp.web.form.FieldBinaryFile',
|
||||
'status': 'openerp.web.form.FieldStatus'
|
||||
});
|
||||
|
||||
};
|
||||
|
|
|
@ -1377,4 +1377,17 @@
|
|||
</p>
|
||||
</div>
|
||||
</t>
|
||||
<t t-name="FieldStatus">
|
||||
<div t-att-id="widget.element_id"></div>
|
||||
</t>
|
||||
<t t-name="FieldStatus.content">
|
||||
<ul class="oe-arrow-list">
|
||||
<t t-set="size" t-value="widget.to_show.length"/>
|
||||
<t t-foreach="_.range(size)" t-as="i">
|
||||
<li t-att-class="widget.to_show[i][0] === widget.selected_value ? 'oe-arrow-list-selected' : ''">
|
||||
<span class="oe-arrow-list-before" t-if="i > 0"></span><span><t t-esc="widget.to_show[i][1]"/></span><span class="oe-arrow-list-after" t-if="i < size - 1"></span>
|
||||
</li>
|
||||
</t>
|
||||
</ul>
|
||||
</t>
|
||||
</templates>
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
import controllers
|
|
@ -19,7 +19,7 @@ openerp.web_mobile.MobileWebClient = openerp.web.Widget.extend({
|
|||
this.$element.html(QWeb.render("WebClient", {}));
|
||||
this.session = new openerp.web.Session("oe_errors");
|
||||
this.crashmanager = new openerp.web.CrashManager(this);
|
||||
this.login = new openerp.web_mobile.Login(this, "oe_app");
|
||||
this.login = new openerp.web_mobile.Login(this, "oe_login");
|
||||
// this.session.on_session_invalid.add(this.login.do_ask_login);
|
||||
},
|
||||
start: function() {
|
||||
|
@ -49,6 +49,7 @@ openerp.web_mobile.Login = openerp.web.Widget.extend({
|
|||
var db = $e.find("div select[name=database]").val();
|
||||
var login = $e.find("div input[name=login]").val();
|
||||
var password = $e.find("div input[name=password]").val();
|
||||
|
||||
//$e.hide();
|
||||
// Should hide then call callback
|
||||
this.session.session_login(db, login, password, function() {
|
||||
|
@ -70,8 +71,9 @@ openerp.web_mobile.Login = openerp.web.Widget.extend({
|
|||
.removeClass("login_invalid")
|
||||
.addClass("login_valid");
|
||||
//.hide();
|
||||
this.homepage = new openerp.web_mobile.HomePage(this, "oe_app");
|
||||
this.homepage.start();
|
||||
|
||||
this.menu = new openerp.web_mobile.Menu(this, "oe_menu", "oe_secondary_menu");
|
||||
this.menu.start();
|
||||
},
|
||||
do_ask_login: function(continuation) {
|
||||
this.on_login_invalid();
|
||||
|
@ -83,25 +85,6 @@ openerp.web_mobile.Login = openerp.web.Widget.extend({
|
|||
}
|
||||
});
|
||||
|
||||
openerp.web_mobile.HomePage = openerp.web.Widget.extend({
|
||||
init: function(session, element_id) {
|
||||
this._super(session, element_id);
|
||||
},
|
||||
start: function() {
|
||||
this.$element.html(QWeb.render("HomePage", {}));
|
||||
this.header = new openerp.web_mobile.Header(this, "oe_header");
|
||||
this.shortcuts = new openerp.web_mobile.Shortcuts(this, "oe_shortcuts");
|
||||
this.menu = new openerp.web_mobile.Menu(this, "oe_menu", "oe_secondary_menu");
|
||||
this.options = new openerp.web_mobile.Options(this, "oe_options");
|
||||
this.header.start();
|
||||
this.shortcuts.start();
|
||||
this.menu.start();
|
||||
this.options.start();
|
||||
jQuery("#oe_header").find("h1").html('Home');
|
||||
this.$element.find("a").click(this.on_clicked);
|
||||
}
|
||||
});
|
||||
|
||||
openerp.web_mobile.Header = openerp.web.Widget.extend({
|
||||
init: function(session, element_id) {
|
||||
this._super(session, element_id);
|
||||
|
@ -109,15 +92,16 @@ openerp.web_mobile.Header = openerp.web.Widget.extend({
|
|||
start: function() {
|
||||
var self = this;
|
||||
self.$element.html(QWeb.render("Header", this));
|
||||
self.$element.find("a").click(this.on_clicked);
|
||||
}
|
||||
});
|
||||
|
||||
openerp.web_mobile.Footer = openerp.web.Widget.extend({
|
||||
init: function(session, element_id) {
|
||||
this._super(session, element_id);
|
||||
},
|
||||
on_clicked: function(ev) {
|
||||
var $opt = $(ev.currentTarget);
|
||||
var current_id = $opt.attr('id');
|
||||
if (current_id == 'home') {
|
||||
this.homepage = new openerp.web_mobile.HomePage(this, "oe_app");
|
||||
this.homepage.start();
|
||||
}
|
||||
start: function() {
|
||||
var self = this;
|
||||
self.$element.html(QWeb.render("Footer", this));
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -128,17 +112,29 @@ openerp.web_mobile.Shortcuts = openerp.web.Widget.extend({
|
|||
start: function() {
|
||||
var self = this;
|
||||
this.rpc('/web/session/sc_list',{} ,function(res){
|
||||
self.$element.html(QWeb.render("Shortcuts", {'sc' : res}));
|
||||
self.$element.find("a").click(self.on_clicked);
|
||||
})
|
||||
self.$element.html(QWeb.render("Shortcuts", {'sc' : res}))
|
||||
self.$element.find('#content').find("a").click(self.on_clicked);
|
||||
self.$element.find("#footer").find('#preference').click(function(){
|
||||
if(!$('#oe_options').html().length){
|
||||
this.options = new openerp.web_mobile.Options(self, "oe_options");
|
||||
this.options.start();
|
||||
}
|
||||
else{
|
||||
self.$element.find("#footer").find('#preference').attr('href','#oe_options');
|
||||
}
|
||||
});
|
||||
$.mobile.changePage($("#oe_shortcuts"), "slide", true, true);
|
||||
});
|
||||
},
|
||||
on_clicked: function(ev) {
|
||||
var $shortcut = $(ev.currentTarget);
|
||||
var id = $shortcut.data('menu');
|
||||
var res_id = $shortcut.data('res');
|
||||
jQuery("#oe_header").find("h1").html($shortcut.data('name'));
|
||||
this.listview = new openerp.web_mobile.ListView(this, "oe_app", res_id);
|
||||
$shortcut = $(ev.currentTarget);
|
||||
id = $shortcut.data('menu');
|
||||
res_id = $shortcut.data('res');
|
||||
// this.header = new openerp.web_mobile.Header(this, "oe_header");
|
||||
this.listview = new openerp.web_mobile.ListView(this, "oe_list", res_id);
|
||||
// this.header.start();
|
||||
this.listview.start();
|
||||
jQuery("#oe_header").find("h1").html($shortcut.data('name'));
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -153,9 +149,30 @@ openerp.web_mobile.Menu = openerp.web.Widget.extend({
|
|||
this.rpc("/web/menu/load", {}, this.on_loaded);
|
||||
},
|
||||
on_loaded: function(data) {
|
||||
var self = this;
|
||||
this.data = data;
|
||||
this.$element.html(QWeb.render("Menu", this.data));
|
||||
this.$element.add(this.$secondary_menu).find("a").click(this.on_menu_click);
|
||||
|
||||
this.$element.find("#footer").find('#shrotcuts').click(function(){
|
||||
if(!$('#oe_shortcuts').html().length){
|
||||
this.shortcuts = new openerp.web_mobile.Shortcuts(self, "oe_shortcuts");
|
||||
this.shortcuts.start();
|
||||
}
|
||||
else{
|
||||
self.$element.find("#footer").find('#shrotcuts').attr('href','#oe_shortcuts');
|
||||
}
|
||||
});
|
||||
this.$element.find("#footer").find('#preference').click(function(){
|
||||
if(!$('#oe_options').html().length){
|
||||
this.options = new openerp.web_mobile.Options(self, "oe_options");
|
||||
this.options.start();
|
||||
}
|
||||
else{
|
||||
self.$element.find("#footer").find('#preference').attr('href','#oe_options');
|
||||
}
|
||||
});
|
||||
this.$element.add(this.$secondary_menu).find("#content").find('a').click(this.on_menu_click);
|
||||
$.mobile.changePage($("#oe_menu"), "slide", true, true);
|
||||
},
|
||||
on_menu_click: function(ev, id) {
|
||||
var $menu = $(ev.currentTarget);
|
||||
|
@ -165,50 +182,80 @@ openerp.web_mobile.Menu = openerp.web.Widget.extend({
|
|||
this.children = this.data.data.children[i];
|
||||
}
|
||||
}
|
||||
jQuery("#oe_header").find("h1").html($menu.data('name'));
|
||||
this.$element
|
||||
.removeClass("login_valid")
|
||||
.addClass("secondary_menu");
|
||||
//.hide();
|
||||
this.secondary = new openerp.web_mobile.Secondary(this, "oe_app", this.children);
|
||||
this.secondary.start();
|
||||
if(!$('#oe_sec_menu').html().length){
|
||||
this.secondary = new openerp.web_mobile.Secondary(this, "oe_sec_menu", this.children);
|
||||
this.secondary.start();
|
||||
}else{
|
||||
this.$element.find("#content").find('a').attr('href','#oe_sec_menu');
|
||||
}
|
||||
/*if(!$('#oe_sec_menu').html().length){
|
||||
this.secondary = new openerp.web_mobile.Secondary(this, "oe_sec_menu", this.children);
|
||||
this.secondary.start();
|
||||
}else{
|
||||
// self.$element.find("#content").find('a').attr('href','#oe_sec_menu');
|
||||
this.$element.add(this.$secondary_menu).find("#content").find('a').attr('href','#oe_sec_menu');
|
||||
}*/
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
openerp.web_mobile.Secondary = openerp.web.Widget.extend({
|
||||
init: function(session, element_id, secondary_menu_id) {
|
||||
this._super(session, element_id);
|
||||
this.data = secondary_menu_id;
|
||||
},
|
||||
start: function(ev, id) {
|
||||
var self = this;
|
||||
// console.log(this.data,this.$element.html().length);
|
||||
|
||||
/* if(this.$element.html().length){
|
||||
self.$element.find('[data-role="listview"]').remove();
|
||||
|
||||
_.each(self.data.children,function(i){
|
||||
var newul = '<ul data-dividertheme="b" class="ui-listview ui-listview-inset ui-corner-all ui-shadow" data-theme="c" data-inset="true" data-role="listview"><li data-role="list-divider">'+
|
||||
i.name+'</li></ul>'; // Create New List Item
|
||||
self.$element.find('#content').append(newul);
|
||||
//console.log('in for loop',i.children);
|
||||
});
|
||||
console.log('saaasasaaa',self.$element.find('#content'),self.data);
|
||||
//self.$element.find('[data-role="listview"]').listview('refresh');
|
||||
}else{*/
|
||||
|
||||
var v = { menu : this.data };
|
||||
this.$element.html(QWeb.render("Menu.secondary", v));
|
||||
this.$element.add(this.$secondary_menu).find("a").click(this.on_menu_click);
|
||||
this.$element.find("#header").find("h1").html(this.data.name);
|
||||
this.$element.add(this.$secondary_menu).find('#content').find("a").click(this.on_menu_click);
|
||||
this.$element.find("#footer").find('#shrotcuts').click(function(){
|
||||
if(!$('#oe_shortcuts').html().length){
|
||||
this.shortcuts = new openerp.web_mobile.Shortcuts(self, "oe_shortcuts");
|
||||
this.shortcuts.start();
|
||||
}
|
||||
else{
|
||||
self.$element.find("#footer").find('#shrotcuts').attr('href','#oe_shortcuts');
|
||||
}
|
||||
});
|
||||
this.$element.find("#footer").find('#preference').click(function(){
|
||||
if(!$('#oe_options').html().length){
|
||||
this.options = new openerp.web_mobile.Options(self, "oe_options");
|
||||
this.options.start();
|
||||
}
|
||||
else{
|
||||
self.$element.find("#footer").find('#preference').attr('href','#oe_options');
|
||||
}
|
||||
});
|
||||
$.mobile.changePage($("#oe_sec_menu"), "slide", true, true);
|
||||
},
|
||||
on_menu_click: function(ev, id) {
|
||||
var $menu = $(ev.currentTarget);
|
||||
id = $menu.data('menu');
|
||||
for (var i = 0; i < this.data.children.length; i++) {
|
||||
if (this.data.children[i].id == id) {
|
||||
this.children = this.data.children[i];
|
||||
}
|
||||
if (id) {
|
||||
this.listview = new openerp.web_mobile.ListView(this, "oe_list", id);
|
||||
this.listview.start();
|
||||
}
|
||||
jQuery("#oe_header").find("h1").html($menu.data('name'));
|
||||
var child_len = this.children.children.length;
|
||||
if (child_len > 0) {
|
||||
this.$element
|
||||
.removeClass("secondary_menu")
|
||||
.addClass("content_menu");
|
||||
//.hide();
|
||||
this.secondary = new openerp.web_mobile.Secondary(this, "oe_app", this.children);
|
||||
this.secondary.start();
|
||||
}
|
||||
else {
|
||||
if (id) {
|
||||
this.listview = new openerp.web_mobile.ListView(this, "oe_app", id);
|
||||
this.listview.start();
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -216,12 +263,16 @@ openerp.web_mobile.Options = openerp.web.Widget.extend({
|
|||
start: function() {
|
||||
var self = this;
|
||||
this.$element.html(QWeb.render("Options", this));
|
||||
self.$element.find("#logout").click(self.on_logout);
|
||||
},
|
||||
on_logout: function(ev) {
|
||||
this.session.logout();
|
||||
// this.login = new openerp.web_mobile.Login(this, "oe_app");
|
||||
// this.login.start();
|
||||
this.$element.find("#footer").find('#shrotcuts').click(function(){
|
||||
if(!$('#oe_shortcuts').html().length){
|
||||
this.shortcuts = new openerp.web_mobile.Shortcuts(self, "oe_shortcuts");
|
||||
this.shortcuts.start();
|
||||
}
|
||||
else{
|
||||
self.$element.find("#footer").find('#shrotcuts').attr('href','#oe_shortcuts');
|
||||
}
|
||||
});
|
||||
$.mobile.changePage($("#oe_options"), "slide", true, true);
|
||||
}
|
||||
});
|
||||
|
||||
|
|
|
@ -22,15 +22,16 @@ openerp.web_mobile.FormView = openerp.web.Widget.extend({
|
|||
var model = this.action.res_model;
|
||||
var view_id = this.action.views[1][0];
|
||||
this.dataset = new openerp.web.DataSetSearch(this, this.action.res_model, null, null);
|
||||
var context = new openerp.web.CompoundContext(this.dataset.get_context());
|
||||
this.dataset.read_slice([],{}, function (result) {
|
||||
for (var i = 0; i < result.length; i++) {
|
||||
if (result[i].id == id) {
|
||||
var data = result[i];
|
||||
}
|
||||
}
|
||||
self.rpc("/web/formview/load", {"model": model, "view_id": view_id }, function (result) {
|
||||
var fields = result.fields_view.fields;
|
||||
var view_fields = result.fields_view.arch.children;
|
||||
self.rpc("/web/view/load", {"model": model, "view_id": view_id, "view_type": "form", context: context}, function (result) {
|
||||
var fields = result.fields;
|
||||
var view_fields = result.arch.children;
|
||||
var get_fields = self.get_fields(view_fields);
|
||||
var selection = new openerp.web_mobile.Selection();
|
||||
for (var j = 0; j < view_fields.length; j++) {
|
||||
|
@ -38,8 +39,9 @@ openerp.web_mobile.FormView = openerp.web.Widget.extend({
|
|||
var notebooks = view_fields[j];
|
||||
}
|
||||
}
|
||||
$("#oe_header").find("h1").html(result.fields_view.arch.attrs.string);
|
||||
self.$element.html(QWeb.render("FormView", {'get_fields': get_fields, 'notebooks': notebooks || false, 'fields' : fields, 'values' : data }));
|
||||
|
||||
self.$element.find("#header").find('h1').html(self.action.name);
|
||||
self.$element.find('select').change(function(ev){
|
||||
selection.on_select_option(ev);
|
||||
});
|
||||
|
@ -69,31 +71,50 @@ openerp.web_mobile.FormView = openerp.web.Widget.extend({
|
|||
if (!next.find('.detail').html().length) {
|
||||
for (var i = 0; i < get_fields.length; i++) {
|
||||
if (fields[get_fields[i].attrs.name].type == 'one2many'){
|
||||
var get_fields_test = self.get_fields(fields[get_fields[i].attrs.name].views.form.arch.children);
|
||||
var fields_test = fields[get_fields[i].attrs.name]['views'].form.fields;
|
||||
var notebook=fields[get_fields[i].attrs.name].views.form.arch;
|
||||
if(fields[get_fields[i].attrs.name].views.form){
|
||||
var get_fields_test = self.get_fields(fields[get_fields[i].attrs.name].views.form.arch.children);
|
||||
var fields_test = fields[get_fields[i].attrs.name]['views'].form.fields;
|
||||
var notebook=fields[get_fields[i].attrs.name].views.form.arch;
|
||||
}
|
||||
var relational = get_fields[i].attrs.name;
|
||||
}
|
||||
}
|
||||
if(notebook){
|
||||
next.find('.detail').append(QWeb.render("FormView", {'get_fields': get_fields,'fields' : result.fields_view.fields, 'values' : data,'til': notebook.attrs.string }));
|
||||
next.find('.detail').append(QWeb.render("FormView", {'get_fields': get_fields,'fields' : result.fields, 'values' : data,'til': notebook.attrs.string }));
|
||||
}else{
|
||||
next.find('.detail').append(QWeb.render("FormView", {'get_fields': get_fields,'fields' : result.fields_view.fields, 'values' : data }));
|
||||
next.find('.detail').append(QWeb.render("FormView", {'get_fields': get_fields,'fields' : result.fields, 'values' : data }));
|
||||
}
|
||||
}
|
||||
next.find('.detail').find('a').click(function(){
|
||||
if(next.find('.detail').find('a').next().find('.detail').html().length){
|
||||
if (next.find('.detail').find('a').next().hasClass(self.content_collapsed_class)) {
|
||||
self.collapsed(next.find('.detail').find('a').next(),next.find('.detail').find('a').find('span .ui-icon'));
|
||||
}
|
||||
else if (next.find('.detail').find('a').next().hasClass(self.content_expanded_class)) {
|
||||
self.expanded(next.find('.detail').find('a').next(),next.find('.detail').find('a').find('span .ui-icon'));
|
||||
}
|
||||
|
||||
//$.mobile.changePage($("#oe_form"), "slide", true, true);
|
||||
/*next.find('.detail').find('li').click(function(){
|
||||
if(data[relational]){
|
||||
var dataset = new openerp.web.DataSetStatic(self, result.fields[relational].relation, result.fields[relational].context);
|
||||
dataset.domain=[['id', 'in', data[relational]]];
|
||||
dataset.name_search('', dataset.domain, 'in',false ,function(res){
|
||||
for(var i=0;i<res.length;i++){
|
||||
var splited_data = res[i][1].split(',');
|
||||
res[i][1] = splited_data[0];
|
||||
}
|
||||
self.$element.html(QWeb.render("ListView", {'records' : res}));
|
||||
self.$element.find("#searchid").focus();
|
||||
self.$element.find("a#list-id").click(function(ev){
|
||||
dataset = new openerp.web.DataSetSearch(self, dataset.model, null, null);
|
||||
dataset.read_slice([],{}, function (result_relational) {
|
||||
for (var i = 0; i < result_relational.length; i++) {
|
||||
if (result_relational[i].id == $(ev.currentTarget).data('id')) {
|
||||
var data_relational = result_relational[i];
|
||||
}
|
||||
}
|
||||
self.$element.html(QWeb.render("FormView", {'get_fields': get_fields_test, 'notebooks': false, 'fields' : fields_test, 'values' : data_relational }));
|
||||
self.$element.find('select').change(function(ev){
|
||||
selection.on_select_option(ev);
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
if(!next.find('.detail').find('a').next().find('.detail').html().length){
|
||||
next.find('.detail').find('a').next().find('.detail').append(QWeb.render("FormView", {'get_fields': get_fields_test,'fields' : fields_test, 'values' : data }));
|
||||
self.collapsed(next.find('.detail').find('a').next(),next.find('.detail').find('a').find('span .ui-icon'));
|
||||
}
|
||||
});
|
||||
});*/
|
||||
}
|
||||
}
|
||||
self.$element.find('select').change(function(ev){
|
||||
|
@ -101,6 +122,8 @@ openerp.web_mobile.FormView = openerp.web.Widget.extend({
|
|||
});
|
||||
});
|
||||
});
|
||||
$.mobile.changePage($("#oe_form"), "slide", true, true);
|
||||
//$("#oe_header").find("h1").html(result.arch.attrs.string);
|
||||
});
|
||||
},
|
||||
get_fields: function(view_fields, fields) {
|
||||
|
|
|
@ -17,56 +17,53 @@ openerp.web_mobile.ListView = openerp.web.Widget.extend({
|
|||
var self = this;
|
||||
if (data.action.length) {
|
||||
this.action = data.action[0][2];
|
||||
this.on_search_data('');
|
||||
this.on_search_data();
|
||||
}
|
||||
},
|
||||
on_search_data: function(request){
|
||||
if(request){
|
||||
if(request.term){
|
||||
var search_val = request.term;
|
||||
}else{
|
||||
if(request.which==27 || request.which==13 || request.which==9){
|
||||
var search_val = '';
|
||||
}else if(request.which==38 || request.which==40 || request.which==39 || request.which==37){
|
||||
return;
|
||||
}else if($("#searchid").val()==""){
|
||||
var search_val = '';
|
||||
}else{
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
else{
|
||||
var search_val = '';
|
||||
}
|
||||
on_search_data: function(ev){
|
||||
var self = this;
|
||||
|
||||
var dataset = new openerp.web.DataSetStatic(this, this.action.res_model, this.action.context);
|
||||
dataset.domain=[['name','ilike',search_val]];
|
||||
dataset.name_search(search_val, dataset.domain, 'ilike',false ,function(result){
|
||||
dataset.name_search('', [], 'ilike',false ,function(result){
|
||||
if(self.$element.html().length){
|
||||
self.$element.find('[data-role="listview"]').find('li').remove();
|
||||
for(var i=0;i<result.length;i++){
|
||||
var newli = '<li><a id="list-id" data-id='+ result[i][0] +' href="#">' + result[i][1] + '</a></li>'; // Create New List Item
|
||||
self.$element.find('[data-role="listview"]').append(newli);
|
||||
}
|
||||
self.$element.find('[data-role="listview"]').listview('refresh');
|
||||
}else{
|
||||
self.$element.html(QWeb.render("ListView", {'records' : result}));
|
||||
self.$element.find("#searchid").focus();
|
||||
if(request.term){
|
||||
self.$element.find("#searchid").val(request.term);
|
||||
}
|
||||
self.$element.find("#searchid").autocomplete({
|
||||
source: function(req) { self.on_search_data(req); },
|
||||
focus: function(e, ui) {
|
||||
e.preventDefault();
|
||||
},
|
||||
html: true,
|
||||
minLength: 0,
|
||||
delay: 0
|
||||
self.$element.find("#header").find('h1').html(self.action.name);
|
||||
self.$element.find("#footer").find('#shortcuts').click(function(){
|
||||
if(!$('#oe_shortcuts').html().length){
|
||||
this.shortcut = new openerp.web_mobile.Options(self, "oe_shortcuts");
|
||||
this.options.start();
|
||||
}
|
||||
else{
|
||||
self.$element.find("#footer").find('#shrotcuts').attr('href','#oe_shortcuts');
|
||||
}
|
||||
});
|
||||
self.$element.find("#searchid").keyup(self.on_search_data);
|
||||
self.$element.find("#footer").find('#preference').click(function(){
|
||||
if(!$('#oe_options').html().length){
|
||||
this.options = new openerp.web_mobile.Options(self, "oe_options");
|
||||
this.options.start();
|
||||
}
|
||||
else{
|
||||
self.$element.find("#footer").find('#preference').attr('href','#oe_options');
|
||||
}
|
||||
});
|
||||
}
|
||||
self.$element.find("a#list-id").click(self.on_list_click);
|
||||
$.mobile.changePage($("#oe_list"), "slide", true, true);
|
||||
});
|
||||
},
|
||||
on_list_click: function(ev) {
|
||||
var $record = $(ev.currentTarget);
|
||||
var self = this;
|
||||
var id = $record.data('id');
|
||||
this.formview = new openerp.web_mobile.FormView(this, "oe_app", id, this.action);
|
||||
id = $record.data('id');
|
||||
// this.header = new openerp.web_mobile.Header(this, "oe_header");
|
||||
this.formview = new openerp.web_mobile.FormView(this, "oe_form", id, this.action);
|
||||
// this.header.start();
|
||||
this.formview.start();
|
||||
}
|
||||
});
|
||||
|
|
|
@ -7,19 +7,19 @@
|
|||
<link rel="stylesheet" href="/web_mobile/static/lib/jquery_mobile/css/jquery.mobile-1.0a4.1.css"/>
|
||||
<link rel="stylesheet" href="/web_mobile/static/src/css/web_mobile.css"/>
|
||||
|
||||
<script type="text/javascript" src="/base/static/lib/jquery/jquery-1.6.2.js"></script>
|
||||
<script type="text/javascript" src="/base/static/lib/jquery.ui/js/jquery-ui-1.8.9.custom.min.js"></script>
|
||||
<script type="text/javascript" src="/base/static/lib/jquery.ba-bbq/jquery.ba-bbq.js"></script>
|
||||
<script type="text/javascript" src="/base/static/lib/underscore/underscore.js"></script>
|
||||
<script type="text/javascript" src="/base/static/lib/underscore/underscore.string.js"></script>
|
||||
<script type="text/javascript" src="/web/static/lib/jquery/jquery-1.6.2.js"></script>
|
||||
<script type="text/javascript" src="/web/static/lib/jquery.ui/js/jquery-ui-1.8.9.custom.min.js"></script>
|
||||
<script type="text/javascript" src="/web/static/lib/jquery.ba-bbq/jquery.ba-bbq.js"></script>
|
||||
<script type="text/javascript" src="/web/static/lib/underscore/underscore.js"></script>
|
||||
<script type="text/javascript" src="/web/static/lib/underscore/underscore.string.js"></script>
|
||||
<script type="text/javascript" src="/web_mobile/static/lib/jquery_mobile/js/jquery.mobile-1.0a4.1.js"></script>
|
||||
|
||||
<script type="text/javascript" src="/base/static/lib/qweb/qweb2.js"></script>
|
||||
<script type="text/javascript" src="/base/static/src/js/boot.js"></script>
|
||||
<script type="text/javascript" src="/base/static/src/js/core.js"></script>
|
||||
<script type="text/javascript" src="/base/static/src/js/chrome.js"></script>
|
||||
<script type="text/javascript" src="/base/static/src/js/data.js"></script>
|
||||
<script type="text/javascript" src="/base/static/src/js/formats.js"></script>
|
||||
<script type="text/javascript" src="/web/static/lib/qweb/qweb2.js"></script>
|
||||
<script type="text/javascript" src="/web/static/src/js/boot.js"></script>
|
||||
<script type="text/javascript" src="/web/static/src/js/core.js"></script>
|
||||
<script type="text/javascript" src="/web/static/src/js/chrome.js"></script>
|
||||
<script type="text/javascript" src="/web/static/src/js/data.js"></script>
|
||||
<script type="text/javascript" src="/web/static/src/js/formats.js"></script>
|
||||
|
||||
<script type="text/javascript" src="/web_mobile/static/src/js/web_mobile.js"></script>
|
||||
<script type="text/javascript" src="/web_mobile/static/src/js/chrome_mobile.js"></script>
|
||||
|
|
|
@ -4,10 +4,14 @@
|
|||
<templates id="template" xml:space="preserve">
|
||||
|
||||
<t t-name="WebClient">
|
||||
<div data-role="page">
|
||||
<div id="oe_header"></div>
|
||||
<div id="oe_app"></div>
|
||||
</div>
|
||||
<div data-role="page" id="oe_login"></div>
|
||||
<div data-role="page" id="oe_sec_menu"></div>
|
||||
<div data-role="page" id="oe_sec_menu_new"></div>
|
||||
<div data-role="page" id="oe_list"></div>
|
||||
<div data-role="page" id="oe_form"></div>
|
||||
<div data-role="page" id="oe_shortcuts"></div>
|
||||
<div data-role="page" id="oe_menu"></div>
|
||||
<div data-role="page" id="oe_options"></div>
|
||||
</t>
|
||||
|
||||
<t t-name="Login">
|
||||
|
@ -38,131 +42,123 @@
|
|||
</div>
|
||||
</t>
|
||||
|
||||
<t t-name="HomePage">
|
||||
<div role="main" class="ui-content" data-role="content">
|
||||
<div id="oe_shortcuts" class="shortcuts"></div>
|
||||
<div id="oe_menu" class="menu"></div>
|
||||
<div id="oe_options" class="options"></div>
|
||||
<t t-name="Header">
|
||||
<div data-role="header" data-theme="b" data-position="fixed">
|
||||
<h1>OpenERP</h1>
|
||||
<a id="home" class="ui-btn-right" data-iconpos="notext" data-icon="home" href="#" title="Home" data-theme="b"></a>
|
||||
</div>
|
||||
</t>
|
||||
|
||||
<t t-name="Header">
|
||||
<div role="banner" class="ui-bar-b ui-header" data-role="header" data-theme="b">
|
||||
<h1 aria-level="1" role="heading" tabindex="0" class="ui-title">OpenERP</h1>
|
||||
<a id="home" class="ui-btn-right jqm-home ui-btn ui-btn-icon-notext ui-btn-corner-all ui-shadow ui-btn-up-b" data-direction="reverse" data-iconpos="notext" data-icon="home" href="#" title="Home" data-theme="b">
|
||||
<span class="ui-btn-inner ui-btn-corner-all">
|
||||
<span class="ui-btn-text">Home</span>
|
||||
<span class="ui-icon ui-icon-home ui-icon-shadow"></span>
|
||||
</span>
|
||||
</a>
|
||||
<t t-name="Footer">
|
||||
<div data-role="footer" data-theme="b" data-position="fixed">
|
||||
<h1></h1>
|
||||
</div>
|
||||
</t>
|
||||
|
||||
<t t-name="Shortcuts">
|
||||
<ul data-dividertheme="b" data-theme="c" data-inset="true" data-role="listview" class="ui-listview ui-listview-inset ui-corner-all ui-shadow">
|
||||
<li data-role="list-divider" role="heading" class="ui-li ui-li-divider ui-btn ui-bar-b ui-corner-top ui-btn-up-undefined">
|
||||
Shortcuts
|
||||
</li>
|
||||
<li data-theme="c" class="ui-btn ui-btn-icon-right ui-li ui-btn-up-c" t-foreach="sc" t-as="opt">
|
||||
<div class="ui-btn-inner ui-li">
|
||||
<div class="ui-btn-text">
|
||||
<a href="#" class="ui-link-inherit" t-att-data-menu="opt.id" t-att-data-name="opt.name" t-att-data-res="opt.res_id">
|
||||
<span><t t-esc="opt.name"/></span>
|
||||
</a>
|
||||
</div>
|
||||
<span class="ui-icon ui-icon-arrow-r"></span>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
<div id="header" data-role="header" data-theme="b" data-position="fixed">
|
||||
<h1>Favourite</h1>
|
||||
<a id="application" class="ui-btn-right" data-iconpos="notext" data-icon="home" href="#oe_menu" title="Home" data-theme="b"></a>
|
||||
</div>
|
||||
<div id="content" data-role="content">
|
||||
<ul data-role="listview" data-inset="true">
|
||||
<li data-theme="c" t-foreach="sc" t-as="opt">
|
||||
<a href="#" t-att-data-menu="opt.id" t-att-data-name="opt.name" t-att-data-res="opt.res_id">
|
||||
<span><t t-esc="opt.name"/></span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="footer" data-role="footer" data-theme="b" data-position="fixed">
|
||||
<a id="shrotcuts" href="#" title="Favourite" data-theme="b">Favourite</a>
|
||||
<a id="preference" class="ui-btn-right" href="#" title="Preference" data-theme="b">Preference</a>
|
||||
</div>
|
||||
</t>
|
||||
|
||||
<t t-name="Menu">
|
||||
<ul data-dividertheme="b" data-theme="c" data-inset="true" data-role="listview" class="ui-listview ui-listview-inset ui-corner-all ui-shadow">
|
||||
<li data-role="list-divider" role="heading" class="ui-li ui-li-divider ui-btn ui-bar-b ui-corner-top ui-btn-up-undefined">
|
||||
Menu
|
||||
</li>
|
||||
<li data-theme="c" class="ui-btn ui-btn-icon-right ui-li ui-btn-up-c" t-foreach="data.children" t-as="menu">
|
||||
<div class="ui-btn-inner ui-li">
|
||||
<div class="ui-btn-text">
|
||||
<a href="#" class="ui-link-inherit" t-att-data-menu="menu.id" t-att-data-name="menu.name">
|
||||
<span><t t-esc="menu.name"/></span>
|
||||
</a>
|
||||
</div>
|
||||
<span class="ui-icon ui-icon-arrow-r"></span>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</t>
|
||||
|
||||
<t t-name="Menu.secondary">
|
||||
<div role="main" class="ui-content" data-role="content">
|
||||
<ul data-role="listview" class="ui-listview">
|
||||
<li data-theme="c" class="ui-btn ui-btn-icon-right ui-li ui-btn-up-c" t-foreach="menu.children" t-as="menu">
|
||||
<div class="ui-btn-inner ui-li">
|
||||
<div class="ui-btn-text">
|
||||
<a href="#" class="ui-link-inherit" t-attf-id="menu_#{menu.id}" t-att-data-menu="menu.id" t-att-data-name="menu.name">
|
||||
<span><t t-esc="menu.name"/></span>
|
||||
</a>
|
||||
</div>
|
||||
<span class="ui-icon ui-icon-arrow-r"></span>
|
||||
</div>
|
||||
<div data-role="header" data-theme="b" data-position="fixed">
|
||||
<h1>Applications</h1>
|
||||
</div>
|
||||
<div id="content" data-role="content">
|
||||
<ul data-role="listview" data-inset="true">
|
||||
<li data-theme="c" t-foreach="data.children" t-as="menu">
|
||||
<a href="#" t-att-data-menu="menu.id" t-att-data-name="menu.name">
|
||||
<span><t t-esc="menu.name"/></span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="footer" data-role="footer" data-theme="b" data-position="fixed">
|
||||
<a id="shrotcuts" href="#" title="Favourite" data-theme="b">Favourite</a>
|
||||
<a id="preference" href="#" title="Preference" data-theme="b">Preference</a>
|
||||
</div>
|
||||
</t>
|
||||
|
||||
<t t-name="Menu.secondary">
|
||||
<div id="header" data-role="header" data-theme="b" data-position="fixed">
|
||||
<h1></h1>
|
||||
<a id="application" class="ui-btn-right" data-iconpos="notext" data-icon="home" href="#oe_menu" title="Home" data-theme="b"></a>
|
||||
</div>
|
||||
<div id="content" data-role="content">
|
||||
<t t-foreach="menu.children" t-as="menu1" >
|
||||
<ul data-dividertheme="b" data-theme="c" data-inset="true" data-role="listview">
|
||||
<li data-role="list-divider">
|
||||
<t t-esc="menu1.name"/>
|
||||
</li>
|
||||
<t t-if="menu1.children.length">
|
||||
<li data-theme="c" t-foreach="menu1.children" t-as="childmenu" >
|
||||
<a href="#" t-attf-id="menu_#{childmenu.id}" t-att-data-menu="childmenu.id" t-att-data-name="childmenu.name">
|
||||
<t t-esc="childmenu.name" />
|
||||
</a>
|
||||
</li>
|
||||
</t>
|
||||
</ul>
|
||||
</t>
|
||||
</div>
|
||||
<div id="footer" data-role="footer" data-theme="b" data-position="fixed">
|
||||
<a id="shrotcuts" href="#" title="Favourite" data-theme="b">Favourite</a>
|
||||
<a id="preference" href="#" title="Preference" data-theme="b">Preference</a>
|
||||
</div>
|
||||
</t>
|
||||
<t t-name="Options">
|
||||
<ul data-dividertheme="b" data-theme="c" data-inset="true" data-role="listview" class="ui-listview ui-listview-inset ui-corner-all ui-shadow">
|
||||
<li data-role="list-divider" role="heading" class="ui-li ui-li-divider ui-btn ui-bar-b ui-corner-top ui-btn-up-undefined">
|
||||
Options
|
||||
</li>
|
||||
<li data-theme="c" class="ui-btn ui-btn-icon-right ui-li ui-btn-up-c">
|
||||
<div class="ui-btn-inner ui-li">
|
||||
<div class="ui-btn-text">
|
||||
<a id="logout" href="#" class="ui-link-inherit">
|
||||
Logout
|
||||
</a>
|
||||
</div>
|
||||
<span class="ui-icon ui-icon-arrow-r"></span>
|
||||
</div>
|
||||
</li>
|
||||
<li data-theme="c" class="ui-btn ui-btn-icon-right ui-li ui-btn-up-c">
|
||||
<div class="ui-btn-inner ui-li">
|
||||
<div class="ui-btn-text">
|
||||
<a id="pref" href="#" class="ui-link-inherit">
|
||||
Preferences
|
||||
</a>
|
||||
</div>
|
||||
<span class="ui-icon ui-icon-arrow-r"></span>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
<div id="header" data-role="header" data-theme="b" data-position="fixed">
|
||||
<h1>Options</h1>
|
||||
<a id="application" class="ui-btn-right" data-iconpos="notext" data-icon="home" href="#oe_menu" title="Home" data-theme="b"></a>
|
||||
</div>
|
||||
<div data-role="content">
|
||||
<ul data-dividertheme="b" data-theme="c" data-inset="true" data-role="listview">
|
||||
<li data-theme="c">
|
||||
<a id="logout" href="#oe_login">Logout</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="footer" data-role="footer" data-theme="b" data-position="fixed">
|
||||
<a id="shrotcuts" href="#" title="Favourite" data-theme="b">Favourite</a>
|
||||
<a id="preference" href="#" title="Preference" data-theme="b">Preference</a>
|
||||
</div>
|
||||
</t>
|
||||
|
||||
<t t-name="ListView">
|
||||
<div role="main" class="ui-content" data-role="content">
|
||||
<form class="ui-listview-filter ui-bar-c" role="search">
|
||||
<div id="search-data" class="ui-input-search ui-shadow-inset ui-btn-corner-all ui-btn-shadow ui-icon-searchfield ui-body-c">
|
||||
<input id="searchid" placeholder="Filter items..." data-type="search" class="ui-input-text ui-body-null" autosearch="true" setTimeDefault="700"/>
|
||||
</div>
|
||||
</form>
|
||||
<ul role="listbox" data-role="listview" class="ui-listview">
|
||||
<li data-theme="c" class="ui-btn ui-btn-icon-right ui-li ui-btn-up-c" t-foreach="records" t-as="record">
|
||||
<div class="ui-btn-inner ui-li">
|
||||
<div class="ui-btn-text">
|
||||
<a id="list-id" t-att-data-id="record[0]" href="#" class="ui-link-inherit">
|
||||
<span><t t-esc="record[1]"/></span>
|
||||
</a>
|
||||
</div>
|
||||
<span class="ui-icon ui-icon-arrow-r"></span>
|
||||
</div>
|
||||
<div id="header" data-role="header" data-theme="b" data-position="fixed">
|
||||
<h1></h1>
|
||||
<a id="application" class="ui-btn-right" data-iconpos="notext" data-icon="home" href="#oe_menu" title="Home" data-theme="b"></a>
|
||||
</div>
|
||||
<div id="content" data-role="content">
|
||||
<ul data-role="listview" data-inset="true" data-theme="d" data-filter="true">
|
||||
<li data-theme="c" t-foreach="records" t-as="record">
|
||||
<a id="list-id" t-att-data-id="record[0]" href="#">
|
||||
<t t-esc="record[1]"/>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="footer" data-role="footer" data-theme="b" data-position="fixed">
|
||||
<a id="shrotcuts" href="#" title="Favourite" data-theme="b">Favourite</a>
|
||||
<a id="preference" href="#" title="Preference" data-theme="b">Preference</a>
|
||||
</div>
|
||||
</t>
|
||||
|
||||
<t t-name="FormView">
|
||||
<div role="main" class="ui-content" data-role="content">
|
||||
<div role="main" data-role="content">
|
||||
<form>
|
||||
<t t-foreach="get_fields" t-as="field">
|
||||
<div data-role="fieldcontain">
|
||||
|
@ -242,7 +238,6 @@
|
|||
</div>
|
||||
</t>
|
||||
<t t-if="fields[field.attrs.name].type == 'many2one'">
|
||||
|
||||
<div class="ui-select">
|
||||
<div data-theme="c" class="ui-btn ui-btn-icon-right ui-btn-corner-all ui-shadow ui-btn-up-c">
|
||||
<span class="ui-btn-inner ui-btn-corner-all">
|
||||
|
@ -270,12 +265,46 @@
|
|||
</div>
|
||||
</t>
|
||||
<t t-if="fields[field.attrs.name].type == 'one2many'">
|
||||
<div class="info ui-collapsible-contain" data-collapsed="true" data-role="collapsible">
|
||||
<ul role="listbox" data-role="listview" class="ui-listview ui-listview-inset ui-corner-all ui-shadow">
|
||||
<li tabindex="0" data-theme="d" role="option" class="ui-btn ui-btn-icon-right ui-li ui-corner-top ui-corner-bottom ui-btn-up-d">
|
||||
<div class="ui-btn-inner">
|
||||
<div class="ui-btn-text">
|
||||
<a href="#" class="ui-link-inherit">
|
||||
<span><t t-esc="til"/></span>
|
||||
</a>
|
||||
</div>
|
||||
<span class="ui-icon ui-icon-arrow-r"></span>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
<!-- <div class="info ui-collapsible-contain" data-collapsed="true" data-role="collapsible">
|
||||
<h1 class="ui-collapsible-heading">
|
||||
<a class="ui-collapsible-heading-toggle ui-btn ui-btn-icon-left ui-shadow ui-corner-all ui-btn-up-c" href="#" data-theme="c" t-id="page.attrs.string">
|
||||
<span class="ui-btn-inner ui-corner-all">
|
||||
<span class="ui-btn-text">
|
||||
<t t-esc="til"></t>
|
||||
<span class="ui-collapsible-heading-status"></span>
|
||||
</span>
|
||||
</span>
|
||||
</a>
|
||||
<span class="ui-icon ui-icon-arrow-r"></span>
|
||||
<div class="ui-collapsible-content ui-collapsible-content-collapsed" aria-hidden="true">
|
||||
<div class="detail"></div>
|
||||
</div>
|
||||
</h1>
|
||||
</div>-->
|
||||
</t>
|
||||
</div>
|
||||
</t>
|
||||
<t t-if="notebooks">
|
||||
<t t-foreach="notebooks.children" t-as="page">
|
||||
<t t-if="page.attrs.invisible">
|
||||
<div style="display:none;" class="info ui-collapsible-contain" data-collapsed="true" data-role="collapsible">
|
||||
<h1 class="ui-collapsible-heading">
|
||||
<a class="ui-collapsible-heading-toggle ui-btn ui-btn-icon-left ui-shadow ui-corner-all ui-btn-up-c" href="#" data-theme="c" t-id="page.attrs.string">
|
||||
<span class="ui-btn-inner ui-corner-all">
|
||||
<span class="ui-btn-text">
|
||||
<t t-esc="page.attrs.string"></t>
|
||||
<!-- <span class="ui-collapsible-heading-status"></span> -->
|
||||
</span>
|
||||
<span data-theme="d" class="ui-btn ui-btn-icon-left ui-btn-corner-all ui-shadow ui-btn-up-d">
|
||||
|
@ -291,11 +320,8 @@
|
|||
</div>
|
||||
</h1>
|
||||
</div>
|
||||
</t>
|
||||
</div>
|
||||
</t>
|
||||
<t t-if="notebooks">
|
||||
<t t-foreach="notebooks.children" t-as="page">
|
||||
</t>
|
||||
<t t-if="!page.attrs.invisible">
|
||||
<div class="info ui-collapsible-contain" data-collapsed="true" data-role="collapsible">
|
||||
<h1 class="ui-collapsible-heading">
|
||||
<a class="ui-collapsible-heading-toggle ui-btn ui-btn-icon-left ui-shadow ui-corner-all ui-btn-up-c" href="#" data-theme="c" t-id="page.attrs.string">
|
||||
|
@ -317,10 +343,10 @@
|
|||
</div>
|
||||
</h1>
|
||||
</div>
|
||||
</t>
|
||||
</t>
|
||||
</t>
|
||||
</form>
|
||||
</div>
|
||||
</t>
|
||||
|
||||
</templates>
|
||||
|
|
Loading…
Reference in New Issue