[FIX] auth_openid: properly inherit Login.start and return a `deferred`
bzr revid: odo@openerp.com-20121122142942-jz8chz5xtf2lj7t4
This commit is contained in:
parent
f50f0bd089
commit
f3955000e7
|
@ -5,42 +5,44 @@ var QWeb = instance.web.qweb;
|
||||||
|
|
||||||
instance.web.Login = instance.web.Login.extend({
|
instance.web.Login = instance.web.Login.extend({
|
||||||
start: function() {
|
start: function() {
|
||||||
this._super.apply(this, arguments);
|
|
||||||
var self = this;
|
var self = this;
|
||||||
|
var d = self._super.apply(this, arguments).done(function() {
|
||||||
this._default_error_message = this.$el.find('.oe_login_error_message').text();
|
|
||||||
|
self._default_error_message = self.$el.find('.oe_login_error_message').text();
|
||||||
this.$openid_selected_button = $();
|
|
||||||
this.$openid_selected_input = $();
|
self.$openid_selected_button = $();
|
||||||
this.$openid_selected_provider = null;
|
self.$openid_selected_input = $();
|
||||||
|
self.$openid_selected_provider = null;
|
||||||
|
|
||||||
var openIdProvider = null;
|
|
||||||
if (this.has_local_storage && this.remember_credentials) {
|
var openIdProvider = null;
|
||||||
openIdProvider = localStorage.getItem('openid-provider');
|
if (self.has_local_storage && self.remember_credentials) {
|
||||||
}
|
openIdProvider = localStorage.getItem('openid-provider');
|
||||||
|
|
||||||
if (openIdProvider) {
|
|
||||||
$openid_selected_provider = openIdProvider;
|
|
||||||
this.do_openid_select('a[href="#' + openIdProvider + '"]', openIdProvider, true);
|
|
||||||
|
|
||||||
if (this.has_local_storage && this.remember_credentials) {
|
|
||||||
this.$openid_selected_input.find('input').val(localStorage.getItem('openid-login'));
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
else {
|
if (openIdProvider) {
|
||||||
this.do_openid_select('a[data-url=""]', 'login,password', true);
|
$openid_selected_provider = openIdProvider;
|
||||||
}
|
self.do_openid_select('a[href="#' + openIdProvider + '"]', openIdProvider, true);
|
||||||
|
|
||||||
this.$el.find('a[data-url]').click(function (event) {
|
if (self.has_local_storage && self.remember_credentials) {
|
||||||
event.preventDefault();
|
self.$openid_selected_input.find('input').val(localStorage.getItem('openid-login'));
|
||||||
var selected_oidh = $(this).attr('href').substr(1);
|
}
|
||||||
if (selected_oidh != self.$openid_selected_provider) {
|
|
||||||
self.do_openid_select(this, selected_oidh);
|
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
self.do_openid_select('a[data-url=""]', 'login,password', true);
|
||||||
|
}
|
||||||
|
|
||||||
|
self.$el.find('a[data-url]').click(function (event) {
|
||||||
|
event.preventDefault();
|
||||||
|
var selected_oidh = $(this).attr('href').substr(1);
|
||||||
|
if (selected_oidh != self.$openid_selected_provider) {
|
||||||
|
self.do_openid_select(this, selected_oidh);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
self._check_error();
|
||||||
});
|
});
|
||||||
|
return d;
|
||||||
this._check_error();
|
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue