[IMP]Improved selection menu and add message on invalid login.
bzr revid: jra@tinyerp.com-20110719062335-ha1p559hg2xrp58u
This commit is contained in:
parent
c15ddcd5f9
commit
8c03c936c8
|
@ -1680,4 +1680,24 @@ div.ui-slider-switch div.ui-slider-labelbg-b { width: 60%; height: 100%; right:
|
|||
div.ui-slider-switch a.ui-slider-handle { z-index: 20; width: 101%; height: 32px; margin-top: -18px; margin-left: -101%; }
|
||||
span.ui-slider-label { width: 100%; position: absolute;height: 32px; font-size: 16px; text-align: center; line-height: 2; background: none; border-color: transparent; }
|
||||
span.ui-slider-label-a { left: -100%; margin-right: -1px }
|
||||
span.ui-slider-label-b { right: -100%; margin-left: -1px }
|
||||
span.ui-slider-label-b { right: -100%; margin-left: -1px }
|
||||
|
||||
.login_error_message {
|
||||
display: none;
|
||||
background-color: #9A0404;
|
||||
border-radius: 3px;
|
||||
-moz-border-radius: 3px;
|
||||
-webkit-border-radius: 3px;
|
||||
color: white;
|
||||
font-family: Ubuntu, Helvetica, sans-serif;
|
||||
font-size: 16px;
|
||||
padding: 5px;
|
||||
margin-top: 5px;
|
||||
text-align: center;
|
||||
}
|
||||
.login_invalid .login_error_message {
|
||||
display: block;
|
||||
}
|
||||
.login_valid .login_error_message {
|
||||
display: none;
|
||||
}
|
|
@ -130,16 +130,18 @@ openerp.web_mobile.Login = openerp.base.Controller.extend({
|
|||
|
||||
jQuery("#oe_header").children().remove();
|
||||
this.rpc("/base/session/get_databases_list", {}, function(result) {
|
||||
var selection = new openerp.web_mobile.Selection();
|
||||
self.db_list = result.db_list;
|
||||
self.$element.html(QWeb.render("Login", self));
|
||||
self.$element.find('#database').click(self.on_db_select);
|
||||
self.$element.find('#database').prev().find(".ui-btn-text").html($('#database').find("option:selected").text());
|
||||
self.$element.find('#database').change(function(ev){
|
||||
selection.on_select_option(ev);
|
||||
});
|
||||
self.$element.find("#login").click(self.on_login);
|
||||
$.mobile.initializePage();
|
||||
})
|
||||
},
|
||||
on_db_select: function(ev) {
|
||||
var db = this.$element.find("#database option:selected").val();
|
||||
jQuery("#db_text").html(db);
|
||||
});
|
||||
this.$element
|
||||
.removeClass("login_invalid");
|
||||
},
|
||||
on_login: function(ev) {
|
||||
ev.preventDefault();
|
||||
|
@ -190,6 +192,20 @@ openerp.web_mobile.Login = openerp.base.Controller.extend({
|
|||
});
|
||||
}
|
||||
});
|
||||
openerp.web_mobile.Selection = openerp.base.Controller.extend({
|
||||
init: function (){
|
||||
this._super();
|
||||
},
|
||||
start: function(){
|
||||
this._super();
|
||||
var self = this;
|
||||
},
|
||||
on_select_option: function(ev){
|
||||
ev.preventDefault();
|
||||
var $this = ev.currentTarget;
|
||||
$($this).prev().find(".ui-btn-text").html($($this).find("option:selected").text());
|
||||
}
|
||||
});
|
||||
openerp.web_mobile.MobileWebClient = openerp.base.Controller.extend({
|
||||
init: function(element_id) {
|
||||
var self = this;
|
||||
|
|
|
@ -20,8 +20,10 @@ openerp.web_mobile.FormView = openerp.base.Controller.extend({
|
|||
}
|
||||
}
|
||||
self.rpc("/base/formview/load", {"model": model, "view_id": view_id }, function (result) {
|
||||
|
||||
var view_fields = result.fields_view.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++) {
|
||||
if (view_fields[j].tag == 'notebook') {
|
||||
|
@ -31,6 +33,10 @@ openerp.web_mobile.FormView = openerp.base.Controller.extend({
|
|||
$("#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' : result.fields_view.fields, 'values' : data }));
|
||||
|
||||
self.$element.find('select').change(function(ev){
|
||||
selection.on_select_option(ev);
|
||||
});
|
||||
|
||||
self.$element.find('a').click(function(){
|
||||
|
||||
for (var k = 0; k < notebooks.children.length; k++) {
|
||||
|
@ -80,6 +86,10 @@ openerp.web_mobile.FormView = openerp.base.Controller.extend({
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
self.$element.find('select').change(function(ev){
|
||||
selection.on_select_option(ev);
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
@ -98,7 +108,7 @@ openerp.web_mobile.FormView = openerp.base.Controller.extend({
|
|||
}
|
||||
}
|
||||
return this.fields;
|
||||
},
|
||||
}
|
||||
});
|
||||
|
||||
}
|
|
@ -55,6 +55,7 @@
|
|||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
<div class="login_error_message">Bad username or password</div>
|
||||
</t>
|
||||
|
||||
<t t-name="HomePage">
|
||||
|
@ -133,7 +134,8 @@
|
|||
</span>
|
||||
<span class="ui-icon ui-icon-arrow-d ui-icon-shadow"></span>
|
||||
</span>
|
||||
<select>
|
||||
|
||||
<select t-att-id="'selection_'+fields[field.attrs.name].string">
|
||||
<t t-foreach="fields[field.attrs.name].selection" t-as="opt">
|
||||
<option t-att-value="opt[0]"><t t-esc="opt[1]"/></option>
|
||||
</t>
|
||||
|
@ -146,14 +148,23 @@
|
|||
<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">
|
||||
<span class="ui-btn-text">
|
||||
<t t-esc="values[field.attrs.name][1]"/>
|
||||
<t t-if="values[field.attrs.name][1]">
|
||||
<t t-esc="values[field.attrs.name][1]"/>
|
||||
</t>
|
||||
<!-- <t t-esc="values[field.attrs.name][1]+values[field.attrs.name]"/> -->
|
||||
</span>
|
||||
<span class="ui-icon ui-icon-arrow-d ui-icon-shadow"></span>
|
||||
</span>
|
||||
<select>
|
||||
|
||||
<select t-att-id="'selection_'+fields[field.attrs.name].string">
|
||||
<t t-if="fields[field.attrs.name].selection">
|
||||
<t t-foreach="fields[field.attrs.name].selection" t-as="opt">
|
||||
<option t-att-value="opt[0]"><t t-esc="opt[1]"/></option>
|
||||
<t t-if="values[field.attrs.name]==opt[0]">
|
||||
<option t-att-value="opt[0]" selected="true" ><t t-esc="opt[1]"/></option>
|
||||
</t>
|
||||
<t t-if="values[field.attrs.name]!=opt[0]">
|
||||
<option t-att-value="opt[0]" ><t t-esc="opt[1]"/></option>
|
||||
</t>
|
||||
</t>
|
||||
</t>
|
||||
</select>
|
||||
|
|
Loading…
Reference in New Issue