CallBackery
view release on metacpan or search on metacpan
lib/CallBackery/qooxdoo/callbackery/source/class/callbackery/ui/Login.js view on Meta::CPAN
*
* @param ret {Boolean} true if the login is ok and false if it is not ok.
* @param exc {Exception} any error found during the login process.
* @return {void}
*/
__iframe: null,
__passwdBtn: null,
__registrationBtn: null,
__ensureIframe: function(){
var iframe = document.getElementById("cbLoginIframe");
if (!iframe) {
iframe = qx.dom.Element.create('iframe',{
id: "cbLoginIframe",
style: "width:0px;height:0px;border:0px;"
});
document.body.appendChild(iframe);
}
iframe.setAttribute('src',
'login?nocache='+Math.round(1000000*Math.random()).toString(16));
return iframe;
},
__getIframeDocument: function(){
var iframe = this.__iframe;
return iframe.contentWindow ? iframe.contentWindow.document : iframe.contentDocument;
},
__loginHandler : function(ret, exc) {
if (exc == null) {
if (qx.lang.Type.isObject(ret) && ret.sessionCookie) {
// submit the iframe form to trigger the browser to save the password
this.__getIframeDocument().getElementById('cbLoginForm').submit();
this.fireDataEvent('login', ret);
this.close();
}
else {
var element = this.getContentElement().getDomElement();
var tada = {duration: 1000, keyFrames : {
0 : {scale: 1, rotate: "0deg"},
10 : {scale: 0.9, rotate: "-3deg"},
20 : {scale: 0.9, rotate: "-3deg"},
30 : {scale: 1.1, rotate: "3deg"},
40 : {scale: 1.1, rotate: "-3deg"},
50 : {scale: 1.1, rotate: "3deg"},
60 : {scale: 1.1, rotate: "-3deg"},
70 : {scale: 1.1, rotate: "3deg"},
80 : {scale: 1.1, rotate: "-3deg"},
90 : {scale: 1.1, rotate: "3deg"},
100 : {scale: 1, rotate: "0deg"}
}};
qx.bom.element.Animation.animate(element,tada);
this.setEnabled(true);
}
}
else {
callbackery.ui.MsgBox.getInstance().exc(exc);
this.setEnabled(true);
}
},
__makeExtraButton: function(cfg,label) {
var ul = this.tr('<span style="text-decoration: underline;">%1</span>',label);
var button = new qx.ui.basic.Label(ul).set({
cursor: 'pointer',
rich: true
});
button.addListener('tap',function(e) {
var popup = new callbackery.ui.Popup(cfg);
popup.addListenerOnce('close', function(e) {
this.getApplicationRoot().remove(popup);
popup.dispose();
this.setModal(true);
},this);
this.setModal(false);
popup.open();
},this);
return button;
},
__setMaxWidth: function() {
let bounds = this.getApplicationRoot().getBounds();
// make sure the window does not get larger than the screen by default ...
if (bounds) {
this.setMaxWidth(bounds.width-20);
}
}
}
});
( run in 0.486 second using v1.01-cache-2.11-cpan-39bf76dae61 )