Diffstat (limited to 'frontend/gamma/js/Clipperz/PM/UI/Web') (more/less context) (ignore whitespace changes)
-rw-r--r-- | frontend/gamma/js/Clipperz/PM/UI/Web/Components/LoginForm.js | 52 | ||||
-rw-r--r-- | frontend/gamma/js/Clipperz/PM/UI/Web/Controllers/LoginController.js | 8 |
2 files changed, 16 insertions, 44 deletions
diff --git a/frontend/gamma/js/Clipperz/PM/UI/Web/Components/LoginForm.js b/frontend/gamma/js/Clipperz/PM/UI/Web/Components/LoginForm.js index 389d876..a10ba4f 100644 --- a/frontend/gamma/js/Clipperz/PM/UI/Web/Components/LoginForm.js +++ b/frontend/gamma/js/Clipperz/PM/UI/Web/Components/LoginForm.js | |||
@@ -44,66 +44,51 @@ Clipperz.PM.UI.Web.Components.LoginForm = function(args) { | |||
44 | Clipperz.Base.extend(Clipperz.PM.UI.Web.Components.LoginForm, Clipperz.PM.UI.Common.Components.BaseComponent, { | 44 | Clipperz.Base.extend(Clipperz.PM.UI.Web.Components.LoginForm, Clipperz.PM.UI.Common.Components.BaseComponent, { |
45 | 45 | ||
46 | //------------------------------------------------------------------------- | 46 | //------------------------------------------------------------------------- |
47 | 47 | ||
48 | 'toString': function () { | 48 | 'toString': function () { |
49 | return "Clipperz.PM.UI.Web.Components.LoginForm component"; | 49 | return "Clipperz.PM.UI.Web.Components.LoginForm component"; |
50 | }, | 50 | }, |
51 | 51 | ||
52 | 'autocomplete': function () { | 52 | 'autocomplete': function () { |
53 | return this._autocomplete; | 53 | return this._autocomplete; |
54 | }, | 54 | }, |
55 | 55 | ||
56 | //------------------------------------------------------------------------- | 56 | //------------------------------------------------------------------------- |
57 | 57 | ||
58 | 'renderSelf': function() { | 58 | 'renderSelf': function() { |
59 | this.append(this.element(), {tag:'div', id:'loginBox', children:[ | 59 | this.append(this.element(), {tag:'div', id:'loginBox', children:[ |
60 | {tag:'div', cls:'header'}, | 60 | {tag:'div', cls:'header'}, |
61 | {tag:'div', cls:'body', id:this.getId('body'), children:[ | 61 | {tag:'div', cls:'body', id:this.getId('body'), children:[ |
62 | {tag:'div', id:this.getId('loginForm'), children:[ | 62 | {tag:'div', id:this.getId('loginForm'), children:[ |
63 | {tag:'div', children:[ | 63 | {tag:'div', children:[ |
64 | {tag:'h4', html:'Login'}, | 64 | {tag:'h4', html:'Login'}, |
65 | // {tag:'form', cls:'loginForm', autocomplete:this.autocomplete(), children:[ | 65 | // {tag:'form', cls:'loginForm', autocomplete:this.autocomplete(), children:[ |
66 | {tag:'form', id:this.getId('form'), cls:'loginForm', children:[ | 66 | {tag:'form', id:this.getId('form'), cls:'loginForm', children:[ |
67 | {tag:'label', html:'username', 'for':this.getId('usernameField')}, | 67 | {tag:'label', html:'username', 'for':this.getId('usernameField')}, |
68 | {tag:'input', id:this.getId('usernameField'), type:'text', cls:'username'/*, value:'joe'*/}, | 68 | {tag:'input', id:this.getId('usernameField'), type:'text', cls:'username'}, |
69 | {tag:'ul', id:this.getId('passwordOptions'), children:[ | 69 | {tag:'label', html:'passphrase / OTP', 'for':this.getId('passphraseField')}, |
70 | {tag:'li', id:this.getId('passphraseOption'), children:[ | 70 | {tag:'input', id:this.getId('passphraseField'), type:'password', cls:'password'}, |
71 | {tag:'label', html:'passphrase / OTP', 'for':this.getId('passphraseField')}, | ||
72 | {tag:'input', id:this.getId('passphraseField'), type:'password', cls:'password'/*, value:'clipperz'*/} | ||
73 | ]} //, | ||
74 | /* | ||
75 | {tag:'li', id:this.getId('otpOption'), children:[ | ||
76 | {tag:'label', html:'one-time password', 'for':this.getId('otpField_1')}, | ||
77 | {tag:'input', id:this.getId('otpField_1'), type:'text', cls:'otp', value:'abcd-efgh'}, | ||
78 | {tag:'input', id:this.getId('otpField_2'), type:'text', cls:'otp', value:'abcd-efgh'}, | ||
79 | {tag:'input', id:this.getId('otpField_3'), type:'text', cls:'otp', value:'abcd-efgh'}, | ||
80 | {tag:'input', id:this.getId('otpField_4'), type:'text', cls:'otp', value:'abcd-efgh'} | ||
81 | ]} | ||
82 | */ | ||
83 | ]}, | ||
84 | // {tag:'input', id:this.getId('otpCheckbox'), type:'checkbox', cls:'checkbox'}, | ||
85 | // {tag:'label', html:'use a one-time passphrase', 'for':this.getId('otpCheckbox'), cls:'checkbox'}, | ||
86 | 71 | ||
87 | {tag:'div', cls:'translations', children:[ | 72 | {tag:'div', cls:'translations', children:[ |
88 | {tag:'h4', html:'choose your language'}, | 73 | {tag:'h4', html:'choose your language'}, |
89 | {tag:'ul', children:[ | 74 | {tag:'ul', children:[ |
90 | {tag:'li', cls:'selected', html:'english'}, | 75 | {tag:'li', cls:'selected', html:'english'}, |
91 | {tag:'li', html:'italiano'}, | 76 | {tag:'li', html:'italiano'}, |
92 | {tag:'li', html:'dutch'}, | 77 | {tag:'li', html:'dutch'}, |
93 | {tag:'li', html:'french'}, | 78 | {tag:'li', html:'french'}, |
94 | {tag:'li', html:'spanish'}, | 79 | {tag:'li', html:'spanish'}, |
95 | {tag:'li', html:'chinese'}, | 80 | {tag:'li', html:'chinese'}, |
96 | {tag:'li', html:'japanese'}, | 81 | {tag:'li', html:'japanese'}, |
97 | {tag:'li', html:'portugal'}, | 82 | {tag:'li', html:'portugal'}, |
98 | {tag:'li', html:'arabic'} | 83 | {tag:'li', html:'arabic'} |
99 | ]} | 84 | ]} |
100 | ]}, | 85 | ]}, |
101 | 86 | ||
102 | {tag:'input', id:this.getId('submitButton'), type:'submit', value:'login', cls:'submit'} | 87 | {tag:'input', id:this.getId('submitButton'), type:'submit', value:'login', cls:'submit'} |
103 | ]} | 88 | ]} |
104 | ]} | 89 | ]} |
105 | ]} | 90 | ]} |
106 | ]}, | 91 | ]}, |
107 | {tag:'div', cls:'footer'} | 92 | {tag:'div', cls:'footer'} |
108 | ]}); | 93 | ]}); |
109 | 94 | ||
@@ -140,61 +125,54 @@ Clipperz.Base.extend(Clipperz.PM.UI.Web.Components.LoginForm, Clipperz.PM.UI.Com | |||
140 | //----------------------------------------------------------------------------- | 125 | //----------------------------------------------------------------------------- |
141 | /* | 126 | /* |
142 | 'showPassphraseField': function() { | 127 | 'showPassphraseField': function() { |
143 | this.showElement('passphraseOption'); | 128 | this.showElement('passphraseOption'); |
144 | this.hideElement('otpOption'); | 129 | this.hideElement('otpOption'); |
145 | }, | 130 | }, |
146 | */ | 131 | */ |
147 | //----------------------------------------------------------------------------- | 132 | //----------------------------------------------------------------------------- |
148 | 133 | ||
149 | 'focusOnPassphraseField': function () { | 134 | 'focusOnPassphraseField': function () { |
150 | this.getElement('passphraseField').focus(); | 135 | this.getElement('passphraseField').focus(); |
151 | this.getElement('passphraseField').select(); | 136 | this.getElement('passphraseField').select(); |
152 | }, | 137 | }, |
153 | 138 | ||
154 | //----------------------------------------------------------------------------- | 139 | //----------------------------------------------------------------------------- |
155 | /* | 140 | /* |
156 | 'showOTPFields': function() { | 141 | 'showOTPFields': function() { |
157 | this.hideElement('passphraseOption'); | 142 | this.hideElement('passphraseOption'); |
158 | this.showElement('otpOption'); | 143 | this.showElement('otpOption'); |
159 | }, | 144 | }, |
160 | */ | 145 | */ |
161 | //------------------------------------------------------------------------- | 146 | //------------------------------------------------------------------------- |
162 | 147 | ||
163 | 'loginEventHandler': function(anEvent) { | 148 | 'loginEventHandler': function(anEvent) { |
164 | varusername; | 149 | // varusername; |
165 | var passphrase; | 150 | // var passphrase; |
166 | // var shouldUseOTP; | ||
167 | // var otp; | ||
168 | var signalArguments; | 151 | var signalArguments; |
169 | 152 | ||
170 | anEvent.preventDefault(); | 153 | anEvent.preventDefault(); |
171 | 154 | ||
172 | username = this.getElement('usernameField').value; | 155 | // username = this.getElement('usernameField').value; |
173 | passphrase = this.getElement('passphraseField').value; | 156 | // passphrase = this.getElement('passphraseField').value; |
174 | // otp =this.getElement('otpField_1').value + | 157 | |
175 | // this.getElement('otpField_2').value + | 158 | // signalArguments = {username:username}; |
176 | // this.getElement('otpField_3').value + | 159 | // signalArguments.passphrase = passphrase; |
177 | // this.getElement('otpField_4').value; | 160 | |
178 | // shouldUseOTP = this.getElement('otpCheckbox').checked; | 161 | signalArguments = { |
179 | 162 | 'username': this.getElement('usernameField').value, | |
180 | signalArguments = {username:username}; | 163 | 'passphrase':this.getElement('passphraseField').value |
181 | 164 | }; | |
182 | // if (shouldUseOTP) { | ||
183 | // signalArguments.otp = otp; | ||
184 | // } else { | ||
185 | signalArguments.passphrase = passphrase; | ||
186 | // } | ||
187 | 165 | ||
188 | MochiKit.Signal.signal(this, 'doLogin', signalArguments); | 166 | MochiKit.Signal.signal(this, 'doLogin', signalArguments); |
189 | }, | 167 | }, |
190 | 168 | ||
191 | //------------------------------------------------------------------------- | 169 | //------------------------------------------------------------------------- |
192 | 170 | ||
193 | 'submitButtonElement': function() { | 171 | 'submitButtonElement': function() { |
194 | return this.getElement('submitButton'); | 172 | return this.getElement('submitButton'); |
195 | }, | 173 | }, |
196 | 174 | ||
197 | //------------------------------------------------------------------------- | 175 | //------------------------------------------------------------------------- |
198 | 176 | ||
199 | __syntaxFix__: "syntax fix" | 177 | __syntaxFix__: "syntax fix" |
200 | }); | 178 | }); |
diff --git a/frontend/gamma/js/Clipperz/PM/UI/Web/Controllers/LoginController.js b/frontend/gamma/js/Clipperz/PM/UI/Web/Controllers/LoginController.js index d0b378c..a57152d 100644 --- a/frontend/gamma/js/Clipperz/PM/UI/Web/Controllers/LoginController.js +++ b/frontend/gamma/js/Clipperz/PM/UI/Web/Controllers/LoginController.js | |||
@@ -60,71 +60,65 @@ MochiKit.Base.update(Clipperz.PM.UI.Web.Controllers.LoginController.prototype, { | |||
60 | 60 | ||
61 | //----------------------------------------------------------------------------- | 61 | //----------------------------------------------------------------------------- |
62 | 62 | ||
63 | 'run': function(args) { | 63 | 'run': function(args) { |
64 | varslot; | 64 | varslot; |
65 | varloginPage; | 65 | varloginPage; |
66 | varloginForm; | 66 | varloginForm; |
67 | 67 | ||
68 | slot = args.slot; | 68 | slot = args.slot; |
69 | 69 | ||
70 | loginForm =new Clipperz.PM.UI.Web.Components.LoginForm({'autocomplete': this.args()['autocomplete']}); | 70 | loginForm =new Clipperz.PM.UI.Web.Components.LoginForm({'autocomplete': this.args()['autocomplete']}); |
71 | 71 | ||
72 | slot.setContent(this.loginPage()); | 72 | slot.setContent(this.loginPage()); |
73 | this.loginPage().slotNamed('loginForm').setContent(loginForm); | 73 | this.loginPage().slotNamed('loginForm').setContent(loginForm); |
74 | 74 | ||
75 | MochiKit.Signal.connect(loginForm, 'doLogin', MochiKit.Base.method(this, 'doLogin', loginForm)); | 75 | MochiKit.Signal.connect(loginForm, 'doLogin', MochiKit.Base.method(this, 'doLogin', loginForm)); |
76 | MochiKit.Signal.connect(Clipperz.Signal.NotificationCenter, 'doLogin', MochiKit.Base.method(this, 'doLogin', loginForm)); | 76 | MochiKit.Signal.connect(Clipperz.Signal.NotificationCenter, 'doLogin', MochiKit.Base.method(this, 'doLogin', loginForm)); |
77 | }, | 77 | }, |
78 | 78 | ||
79 | //----------------------------------------------------------------------------- | 79 | //----------------------------------------------------------------------------- |
80 | 80 | ||
81 | 'doLogin': function(aLoginForm, anEvent) { | 81 | 'doLogin': function(aLoginForm, anEvent) { |
82 | var deferredResult; | 82 | var deferredResult; |
83 | varparameters; | 83 | varparameters; |
84 | // varshouldUseOTP; | ||
85 | var loginProgress; | 84 | var loginProgress; |
86 | varuser; | 85 | varuser; |
87 | var getPassphraseDelegate; | 86 | var getPassphraseDelegate; |
88 | 87 | ||
89 | parameters = anEvent; | 88 | parameters = anEvent; |
90 | // shouldUseOTP = (typeof(parameters.passphrase) == 'undefined'); | ||
91 | 89 | ||
92 | getPassphraseDelegate = MochiKit.Base.partial(MochiKit.Async.succeed, parameters.passphrase); | 90 | getPassphraseDelegate = MochiKit.Base.partial(MochiKit.Async.succeed, parameters.passphrase); |
93 | user = new Clipperz.PM.DataModel.User({'username':parameters.username, 'getPassphraseFunction':MochiKit.Base.method(Clipperz.PM.RunTime.mainController, 'getPassphrase')}); | 91 | user = new Clipperz.PM.DataModel.User({'username':parameters.username, 'getPassphraseFunction':MochiKit.Base.method(Clipperz.PM.RunTime.mainController, 'getPassphrase')}); |
94 | 92 | ||
95 | loginProgress = new Clipperz.PM.UI.Web.Components.LoginProgress(); | 93 | loginProgress = new Clipperz.PM.UI.Web.Components.LoginProgress(); |
96 | 94 | ||
97 | deferredResult = new Clipperz.Async.Deferred("LoginController.doLogin", {trace:false}); | 95 | deferredResult = new Clipperz.Async.Deferred("LoginController.doLogin", {trace:false}); |
98 | deferredResult.addCallbackPass(MochiKit.Signal.signal, Clipperz.Signal.NotificationCenter, 'initProgress', {'steps':4}); | 96 | deferredResult.addCallbackPass(MochiKit.Signal.signal, Clipperz.Signal.NotificationCenter, 'initProgress', {'steps':4}); |
99 | deferredResult.addMethod(Clipperz.PM.RunTime.mainController, 'setPassphraseDelegate', getPassphraseDelegate); | 97 | deferredResult.addMethod(Clipperz.PM.RunTime.mainController, 'setPassphraseDelegate', getPassphraseDelegate); |
100 | deferredResult.addMethod(loginProgress, 'deferredShowModal', {deferredObject:deferredResult, openFromElement:aLoginForm.submitButtonElement()}); | 98 | deferredResult.addMethod(loginProgress, 'deferredShowModal', {deferredObject:deferredResult, openFromElement:aLoginForm.submitButtonElement()}); |
101 | deferredResult.addMethod(Clipperz.Crypto.PRNG.defaultRandomGenerator(), 'deferredEntropyCollection'); | 99 | deferredResult.addMethod(Clipperz.Crypto.PRNG.defaultRandomGenerator(), 'deferredEntropyCollection'); |
102 | // if (shouldUseOTP == false) { | 100 | deferredResult.addMethod(user, 'login'); |
103 | deferredResult.addMethod(user, 'login'); | ||
104 | // } else { | ||
105 | // deferredResult.addMethod(user, 'loginUsingOTP', parameters.username, parameters.otp); | ||
106 | // } | ||
107 | deferredResult.addCallback(function(aLoginProgress, res) { | 101 | deferredResult.addCallback(function(aLoginProgress, res) { |
108 | aLoginProgress.disableCancel(); | 102 | aLoginProgress.disableCancel(); |
109 | return res; | 103 | return res; |
110 | }, loginProgress); | 104 | }, loginProgress); |
111 | deferredResult.addCallback(function () { | 105 | deferredResult.addCallback(function () { |
112 | MochiKit.Signal.connect(Clipperz.Signal.NotificationCenter, 'CARDS_CONTROLLER_DID_RUN',MochiKit.Base.method(loginProgress, 'deferredHideModalAndRemove', {closeToElement:MochiKit.DOM.currentDocument().body})); | 106 | MochiKit.Signal.connect(Clipperz.Signal.NotificationCenter, 'CARDS_CONTROLLER_DID_RUN',MochiKit.Base.method(loginProgress, 'deferredHideModalAndRemove', {closeToElement:MochiKit.DOM.currentDocument().body})); |
113 | }) | 107 | }) |
114 | deferredResult.addMethod(this, 'userLoggedIn', user, loginProgress, aLoginForm); | 108 | deferredResult.addMethod(this, 'userLoggedIn', user, loginProgress, aLoginForm); |
115 | deferredResult.addErrback (MochiKit.Base.method(this, 'handleFailedLogin', loginProgress)); | 109 | deferredResult.addErrback (MochiKit.Base.method(this, 'handleFailedLogin', loginProgress)); |
116 | 110 | ||
117 | deferredResult.addErrback (MochiKit.Base.method(loginProgress, 'deferredHideModalAndRemove', {closeToElement:aLoginForm.submitButtonElement()})); | 111 | deferredResult.addErrback (MochiKit.Base.method(loginProgress, 'deferredHideModalAndRemove', {closeToElement:aLoginForm.submitButtonElement()})); |
118 | deferredResult.addErrbackPass (MochiKit.Base.method(aLoginForm, 'focusOnPassphraseField')); | 112 | deferredResult.addErrbackPass (MochiKit.Base.method(aLoginForm, 'focusOnPassphraseField')); |
119 | deferredResult.addBoth(MochiKit.Base.method(Clipperz.PM.RunTime.mainController, 'removePassphraseDelegate', getPassphraseDelegate)); | 113 | deferredResult.addBoth(MochiKit.Base.method(Clipperz.PM.RunTime.mainController, 'removePassphraseDelegate', getPassphraseDelegate)); |
120 | deferredResult.callback(); | 114 | deferredResult.callback(); |
121 | 115 | ||
122 | MochiKit.Signal.connect(loginProgress, 'cancelEvent', deferredResult, 'cancel'); | 116 | MochiKit.Signal.connect(loginProgress, 'cancelEvent', deferredResult, 'cancel'); |
123 | 117 | ||
124 | return deferredResult; | 118 | return deferredResult; |
125 | }, | 119 | }, |
126 | 120 | ||
127 | //----------------------------------------------------------------------------- | 121 | //----------------------------------------------------------------------------- |
128 | 122 | ||
129 | 'userLoggedIn': function(aUser) { | 123 | 'userLoggedIn': function(aUser) { |
130 | //Clipperz.log(">>> LoginController.userLoggedIn"); | 124 | //Clipperz.log(">>> LoginController.userLoggedIn"); |