5e4ee5baa1cfe8beda3c0fd79ee21e4d235f31e9
[roojs1] / docs / symbols / src / Roo_Login.js.html
1 <html><head><title>../roojs1/Roo/Login.js</title><link rel="stylesheet" type="text/css" href="../../../css/highlight-js.css"/></head><body class="highlightpage"><code class="jsdoc-pretty"><span class="jsdoc-comment">//&lt;script type=&quot;text/javascript&quot;&gt;
2
3
4 /**
5  * @class Roo.Login
6  * @extends Roo.LayoutDialog
7  * A generic Login Dialog..... - only one needed in theory!?!?
8  *
9  * Fires XComponent builder on success...
10  * 
11  * Sends 
12  *    username,password, lang = for login actions.
13  *    check = 1 for periodic checking that sesion is valid.
14  *    passwordRequest = email request password
15  *    logout = 1 = to logout
16  * 
17  * Affects: (this id=&quot;????&quot; elements)
18  *   loading  (removed) (used to indicate application is loading)
19  *   loading-mask (hides) (used to hide application when it's building loading)
20  *   
21  * 
22  * Usage: 
23  *    
24  * 
25  * Myapp.login = Roo.Login({
26      url: xxxx,
27    
28      realm : 'Myapp', 
29      
30      
31      method : 'POST',
32      
33      
34      * 
35  })
36  * 
37  * 
38  * 
39  **/
40  
41 </span><span class="jsdoc-var">Roo.Login </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cfg</span><span class="jsdoc-syntax">)
42 {
43     </span><span class="jsdoc-var">this.addEvents</span><span class="jsdoc-syntax">({
44         </span><span class="jsdoc-string">'refreshed' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true
45     </span><span class="jsdoc-syntax">});
46     
47     </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">cfg</span><span class="jsdoc-syntax">);
48     
49     </span><span class="jsdoc-var">Roo.onReady</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
50         </span><span class="jsdoc-var">this.onLoad</span><span class="jsdoc-syntax">();
51     }, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
52     </span><span class="jsdoc-comment">// call parent..
53     
54    
55     </span><span class="jsdoc-var">Roo.Login.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
56     </span><span class="jsdoc-comment">//this.addxtype(this.items[0]);
57     
58     
59 </span><span class="jsdoc-syntax">}
60
61
62 </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.Login</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.LayoutDialog</span><span class="jsdoc-syntax">, {
63     
64     </span><span class="jsdoc-comment">/**
65      * @cfg {String} method
66      * Method used to query for login details.
67      */
68     
69     </span><span class="jsdoc-var">method </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'POST'</span><span class="jsdoc-syntax">,
70     </span><span class="jsdoc-comment">/**
71      * @cfg {String} url
72      * URL to query login data. - eg. baseURL + '/Login.php'
73      */
74     </span><span class="jsdoc-var">url </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">,
75     
76     </span><span class="jsdoc-comment">/**
77      * @property user
78      * The user data - if user.id &lt; 0 then login will be bypassed. (used for inital setup situation.
79      * @type {Object} 
80      */
81     </span><span class="jsdoc-var">user </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
82     </span><span class="jsdoc-comment">/**
83      * @property checkFails
84      * Number of times we have attempted to get authentication check, and failed.
85      * @type {Number} 
86      */
87     </span><span class="jsdoc-var">checkFails </span><span class="jsdoc-syntax">: 0,
88       </span><span class="jsdoc-comment">/**
89      * @property intervalID
90      * The window interval that does the constant login checking.
91      * @type {Number} 
92      */
93     </span><span class="jsdoc-var">intervalID </span><span class="jsdoc-syntax">: 0,
94     
95     
96     </span><span class="jsdoc-var">onLoad </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() </span><span class="jsdoc-comment">// called on page load...
97     </span><span class="jsdoc-syntax">{
98         </span><span class="jsdoc-comment">// load 
99          
100         </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'loading'</span><span class="jsdoc-syntax">)) { </span><span class="jsdoc-comment">// clear any loading indicator..
101             </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'loading'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.remove</span><span class="jsdoc-syntax">();
102         }
103         
104         </span><span class="jsdoc-comment">//this.switchLang('en'); // set the language to english..
105        
106         </span><span class="jsdoc-var">this.check</span><span class="jsdoc-syntax">({
107             </span><span class="jsdoc-var">success</span><span class="jsdoc-syntax">:  </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">opts</span><span class="jsdoc-syntax">)  {  </span><span class="jsdoc-comment">// check successfull...
108             
109                 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">res </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.processResponse</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">);
110                 </span><span class="jsdoc-var">this.checkFails </span><span class="jsdoc-syntax">=0;
111                 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">res.success</span><span class="jsdoc-syntax">) { </span><span class="jsdoc-comment">// error!
112                     </span><span class="jsdoc-var">this.checkFails </span><span class="jsdoc-syntax">= 5;
113                     </span><span class="jsdoc-comment">//console.log('call failure');
114                     </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.failure</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">opts</span><span class="jsdoc-syntax">);
115                 }
116                 
117                 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">res.data.id</span><span class="jsdoc-syntax">) { </span><span class="jsdoc-comment">// id=0 == login failure.
118                     </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.show</span><span class="jsdoc-syntax">();
119                 }
120                 
121                               
122                         </span><span class="jsdoc-comment">//console.log(success);
123                 </span><span class="jsdoc-var">this.fillAuth</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">res.data</span><span class="jsdoc-syntax">);   
124                 </span><span class="jsdoc-var">this.checkFails </span><span class="jsdoc-syntax">=0;
125                 </span><span class="jsdoc-var">Roo.XComponent.build</span><span class="jsdoc-syntax">();
126             },
127             </span><span class="jsdoc-var">failure </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.show
128         </span><span class="jsdoc-syntax">});
129         
130     }, 
131     
132     
133     </span><span class="jsdoc-var">check</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cfg</span><span class="jsdoc-syntax">) </span><span class="jsdoc-comment">// called every so often to refresh cookie etc..
134     </span><span class="jsdoc-syntax">{
135         </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cfg.again</span><span class="jsdoc-syntax">) { </span><span class="jsdoc-comment">// could be undefined..
136             </span><span class="jsdoc-var">this.checkFails</span><span class="jsdoc-syntax">++;
137         } </span><span class="jsdoc-keyword">else </span><span class="jsdoc-syntax">{
138             </span><span class="jsdoc-var">this.checkFails </span><span class="jsdoc-syntax">= 0;
139         }
140         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_this </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
141         </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.sending</span><span class="jsdoc-syntax">) {
142             </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">( </span><span class="jsdoc-var">this.checkFails </span><span class="jsdoc-syntax">&gt; 4) {
143                 </span><span class="jsdoc-var">Roo.MessageBox.alert</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;Error&quot;</span><span class="jsdoc-syntax">,  
144                     </span><span class="jsdoc-string">&quot;Error getting authentication status. - try reloading, or wait a while&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
145                         </span><span class="jsdoc-var">_this.sending </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
146                     }); 
147                 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
148             }
149             </span><span class="jsdoc-var">cfg.again </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
150             </span><span class="jsdoc-var">_this.check.defer</span><span class="jsdoc-syntax">(10000, </span><span class="jsdoc-var">_this</span><span class="jsdoc-syntax">, [ </span><span class="jsdoc-var">cfg </span><span class="jsdoc-syntax">]); </span><span class="jsdoc-comment">// check in 10 secs.
151             </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
152         }
153         </span><span class="jsdoc-var">this.sending </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
154         
155         </span><span class="jsdoc-var">Roo.Ajax.request</span><span class="jsdoc-syntax">({  
156             </span><span class="jsdoc-var">url</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.url</span><span class="jsdoc-syntax">,
157             </span><span class="jsdoc-var">params</span><span class="jsdoc-syntax">: {
158                 </span><span class="jsdoc-var">getAuthUser</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true
159             </span><span class="jsdoc-syntax">},  
160             </span><span class="jsdoc-var">method</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.method</span><span class="jsdoc-syntax">,
161             </span><span class="jsdoc-var">success</span><span class="jsdoc-syntax">:  </span><span class="jsdoc-var">cfg.success </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.success</span><span class="jsdoc-syntax">,
162             </span><span class="jsdoc-var">failure </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">cfg.failure </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.failure</span><span class="jsdoc-syntax">,
163             </span><span class="jsdoc-var">scope </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">,
164             </span><span class="jsdoc-var">callCfg </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">cfg
165               
166         </span><span class="jsdoc-syntax">});  
167     }, 
168     
169     
170     </span><span class="jsdoc-var">logout</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
171     {
172         </span><span class="jsdoc-var">window.onbeforeunload </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() { }; </span><span class="jsdoc-comment">// false does not work for IE..
173         </span><span class="jsdoc-var">this.user </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
174         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_this </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
175         
176         </span><span class="jsdoc-var">Roo.Ajax.request</span><span class="jsdoc-syntax">({  
177             </span><span class="jsdoc-var">url</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.url</span><span class="jsdoc-syntax">,
178             </span><span class="jsdoc-var">params</span><span class="jsdoc-syntax">: {
179                 </span><span class="jsdoc-var">logout</span><span class="jsdoc-syntax">: 1
180             },  
181             </span><span class="jsdoc-var">method</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'GET'</span><span class="jsdoc-syntax">,
182             </span><span class="jsdoc-var">failure </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
183                 </span><span class="jsdoc-var">Roo.MessageBox.alert</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;Error&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">&quot;Error logging out. - continuing anyway.&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
184                     </span><span class="jsdoc-var">document.location </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">document.location.toString</span><span class="jsdoc-syntax">() + </span><span class="jsdoc-string">'?ts=' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">Math.random</span><span class="jsdoc-syntax">();
185                 });
186                 
187             },
188             </span><span class="jsdoc-var">success </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
189                 </span><span class="jsdoc-var">_this.user </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
190                 </span><span class="jsdoc-var">this.checkFails </span><span class="jsdoc-syntax">=0;
191                 </span><span class="jsdoc-comment">// fixme..
192                 </span><span class="jsdoc-var">document.location </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">document.location.toString</span><span class="jsdoc-syntax">() + </span><span class="jsdoc-string">'?ts=' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">Math.random</span><span class="jsdoc-syntax">();
193             }
194               
195               
196         }); 
197     },
198     
199     </span><span class="jsdoc-var">processResponse </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">)
200     {
201         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">res </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
202         </span><span class="jsdoc-keyword">try </span><span class="jsdoc-syntax">{
203             </span><span class="jsdoc-var">res </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.decode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">response.responseText</span><span class="jsdoc-syntax">);
204             </span><span class="jsdoc-comment">// oops...
205             </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">res</span><span class="jsdoc-syntax">) != </span><span class="jsdoc-string">'object'</span><span class="jsdoc-syntax">) {
206                 </span><span class="jsdoc-var">res </span><span class="jsdoc-syntax">= { </span><span class="jsdoc-var">success </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">errorMsg </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">res</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">errors </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true </span><span class="jsdoc-syntax">};
207             }
208             </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">res.success</span><span class="jsdoc-syntax">) == </span><span class="jsdoc-string">'undefined'</span><span class="jsdoc-syntax">) {
209                 </span><span class="jsdoc-var">res.success </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
210             }
211             
212         } </span><span class="jsdoc-keyword">catch</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">) {
213             </span><span class="jsdoc-var">res </span><span class="jsdoc-syntax">= { </span><span class="jsdoc-var">success </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,  </span><span class="jsdoc-var">errorMsg </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">response.responseText</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">errors </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true </span><span class="jsdoc-syntax">};
214         }
215         </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">res</span><span class="jsdoc-syntax">;
216     },
217     
218     </span><span class="jsdoc-var">success </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">opts</span><span class="jsdoc-syntax">)  </span><span class="jsdoc-comment">// check successfull...
219     </span><span class="jsdoc-syntax">{  
220         </span><span class="jsdoc-var">this.sending </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
221         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">res </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.processResponse</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">);
222         </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">res.success</span><span class="jsdoc-syntax">) {
223             </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.failure</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">opts</span><span class="jsdoc-syntax">);
224         }
225         </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">res.data </span><span class="jsdoc-syntax">|| !</span><span class="jsdoc-var">res.data.id</span><span class="jsdoc-syntax">) {
226             </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.failure</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">opts</span><span class="jsdoc-syntax">);
227         }
228         </span><span class="jsdoc-comment">//console.log(res);
229         </span><span class="jsdoc-var">this.fillAuth</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">res.data</span><span class="jsdoc-syntax">);
230         
231         </span><span class="jsdoc-var">this.checkFails </span><span class="jsdoc-syntax">=0;
232         
233     },
234     
235     
236     </span><span class="jsdoc-var">failure </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">opts</span><span class="jsdoc-syntax">) </span><span class="jsdoc-comment">// called if login 'check' fails.. (causes re-check)
237     </span><span class="jsdoc-syntax">{
238         </span><span class="jsdoc-var">this.authUser </span><span class="jsdoc-syntax">= -1;
239         </span><span class="jsdoc-var">this.sending </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
240         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">res </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.processResponse</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">);
241         </span><span class="jsdoc-comment">//console.log(res);
242         </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">( </span><span class="jsdoc-var">this.checkFails </span><span class="jsdoc-syntax">&gt; 2) {
243         
244             </span><span class="jsdoc-var">Roo.MessageBox.alert</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;Error&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">res.errorMsg </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">res.errorMsg </span><span class="jsdoc-syntax">: 
245                 </span><span class="jsdoc-string">&quot;Error getting authentication status. - try reloading&quot;</span><span class="jsdoc-syntax">); 
246             </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
247         }
248         </span><span class="jsdoc-var">opts.callCfg.again </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
249         </span><span class="jsdoc-var">this.check.defer</span><span class="jsdoc-syntax">(1000, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, [ </span><span class="jsdoc-var">opts.callCfg </span><span class="jsdoc-syntax">]);
250         </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;  
251     },
252     
253     
254     
255     </span><span class="jsdoc-var">fillAuth</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">au</span><span class="jsdoc-syntax">) {
256         </span><span class="jsdoc-var">this.startAuthCheck</span><span class="jsdoc-syntax">();
257         </span><span class="jsdoc-var">this.authUserId </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">au.id</span><span class="jsdoc-syntax">;
258         </span><span class="jsdoc-var">this.authUser </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">au</span><span class="jsdoc-syntax">;
259         </span><span class="jsdoc-var">this.lastChecked </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Date</span><span class="jsdoc-syntax">();
260         </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'refreshed'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">au</span><span class="jsdoc-syntax">);
261         </span><span class="jsdoc-comment">//Pman.Tab.FaxQueue.newMaxId(au.faxMax);
262         //Pman.Tab.FaxTab.setTitle(au.faxNumPending);
263         </span><span class="jsdoc-var">au.lang </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">au.lang </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-string">'en'</span><span class="jsdoc-syntax">;
264         </span><span class="jsdoc-comment">//this.switchLang(Roo.state.Manager.get('Pman.Login.lang', 'en'));
265         </span><span class="jsdoc-var">Roo.state.Manager.set</span><span class="jsdoc-syntax">( </span><span class="jsdoc-var">this.realm </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'lang' </span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">au.lang</span><span class="jsdoc-syntax">);
266         </span><span class="jsdoc-var">this.switchLang</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">au.lang </span><span class="jsdoc-syntax">);
267         
268      
269         </span><span class="jsdoc-comment">// open system... - -on setyp..
270         </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.authUserId  </span><span class="jsdoc-syntax">&lt; 0) {
271             </span><span class="jsdoc-var">Roo.MessageBox.alert</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;Warning&quot;</span><span class="jsdoc-syntax">, 
272                 </span><span class="jsdoc-string">&quot;This is an open system - please set up a admin user with a password.&quot;</span><span class="jsdoc-syntax">);  
273         }
274          
275         </span><span class="jsdoc-comment">//Pman.onload(); // which should do nothing if it's a re-auth result...
276         
277              
278     </span><span class="jsdoc-syntax">},
279     
280     </span><span class="jsdoc-var">startAuthCheck </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() </span><span class="jsdoc-comment">// starter for timeout checking..
281     </span><span class="jsdoc-syntax">{
282         </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.intervalID</span><span class="jsdoc-syntax">) { </span><span class="jsdoc-comment">// timer already in place...
283             </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">;
284         }
285         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_this </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
286         </span><span class="jsdoc-var">this.intervalID </span><span class="jsdoc-syntax">=  </span><span class="jsdoc-var">window.setInterval</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
287               </span><span class="jsdoc-var">_this.check</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
288             }, 120000); </span><span class="jsdoc-comment">// every 120 secs = 2mins..
289         
290         
291     </span><span class="jsdoc-syntax">},
292          
293     
294     </span><span class="jsdoc-var">switchLang </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">lang</span><span class="jsdoc-syntax">) 
295     {
296         </span><span class="jsdoc-var">_T </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_T</span><span class="jsdoc-syntax">) == </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">? </span><span class="jsdoc-keyword">false </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">_T</span><span class="jsdoc-syntax">;
297           </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">_T </span><span class="jsdoc-syntax">|| !</span><span class="jsdoc-var">lang.length</span><span class="jsdoc-syntax">) {
298             </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
299         }
300         
301         </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">_T </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">lang </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-string">'en'</span><span class="jsdoc-syntax">) {
302             </span><span class="jsdoc-var">Roo.MessageBox.alert</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;Sorry&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">&quot;Language not available yet (&quot; </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">lang </span><span class="jsdoc-syntax">+</span><span class="jsdoc-string">')'</span><span class="jsdoc-syntax">);
303             </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
304         }
305         
306         </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_T.en</span><span class="jsdoc-syntax">) == </span><span class="jsdoc-string">'undefined'</span><span class="jsdoc-syntax">) {
307             </span><span class="jsdoc-var">_T.en </span><span class="jsdoc-syntax">= {};
308             </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_T.en</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">_T</span><span class="jsdoc-syntax">);
309         }
310         
311         </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_T</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">lang</span><span class="jsdoc-syntax">]) == </span><span class="jsdoc-string">'undefined'</span><span class="jsdoc-syntax">) {
312             </span><span class="jsdoc-var">Roo.MessageBox.alert</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;Sorry&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">&quot;Language not available yet (&quot; </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">lang </span><span class="jsdoc-syntax">+</span><span class="jsdoc-string">')'</span><span class="jsdoc-syntax">);
313             </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
314         }
315         
316         
317         </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_T</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">_T</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">lang</span><span class="jsdoc-syntax">]);
318         </span><span class="jsdoc-comment">// just need to set the text values for everything...
319         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_this </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
320         </span><span class="jsdoc-comment">/* this will not work ...
321         if (this.form) { 
322             
323                
324             function formLabel(name, val) {
325                 _this.form.findField(name).fieldEl.child('label').dom.innerHTML  = val;
326             }
327             
328             formLabel('password', &quot;Password&quot;+':');
329             formLabel('username', &quot;Email Address&quot;+':');
330             formLabel('lang', &quot;Language&quot;+':');
331             this.dialog.setTitle(&quot;Login&quot;);
332             this.dialog.buttons[0].setText(&quot;Forgot Password&quot;);
333             this.dialog.buttons[1].setText(&quot;Login&quot;);
334         }
335         */
336         
337         
338     </span><span class="jsdoc-syntax">},
339     
340     
341     </span><span class="jsdoc-var">title</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;Login&quot;</span><span class="jsdoc-syntax">,
342     </span><span class="jsdoc-var">modal</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
343     </span><span class="jsdoc-var">width</span><span class="jsdoc-syntax">:  350,
344     </span><span class="jsdoc-comment">//height: 230,
345     </span><span class="jsdoc-var">height</span><span class="jsdoc-syntax">: 180,
346     </span><span class="jsdoc-var">shadow</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
347     </span><span class="jsdoc-var">minWidth</span><span class="jsdoc-syntax">:200,
348     </span><span class="jsdoc-var">minHeight</span><span class="jsdoc-syntax">:180,
349     </span><span class="jsdoc-comment">//proxyDrag: true,
350     </span><span class="jsdoc-var">closable</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
351     </span><span class="jsdoc-var">draggable</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
352     </span><span class="jsdoc-var">collapsible</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
353     </span><span class="jsdoc-var">resizable</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
354     </span><span class="jsdoc-var">center</span><span class="jsdoc-syntax">: {  </span><span class="jsdoc-comment">// needed??
355         </span><span class="jsdoc-var">autoScroll</span><span class="jsdoc-syntax">:</span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
356         </span><span class="jsdoc-var">titlebar</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
357        </span><span class="jsdoc-comment">// tabPosition: 'top',
358         </span><span class="jsdoc-var">hideTabs</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
359         </span><span class="jsdoc-var">closeOnTab</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
360         </span><span class="jsdoc-var">alwaysShowTabs</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false
361     </span><span class="jsdoc-syntax">} ,
362     </span><span class="jsdoc-var">listeners </span><span class="jsdoc-syntax">: {
363         
364         </span><span class="jsdoc-var">show  </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">dlg</span><span class="jsdoc-syntax">)
365         {
366             </span><span class="jsdoc-comment">//console.log(this);
367             </span><span class="jsdoc-var">this.form </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.layout.getRegion</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'center'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.activePanel.form</span><span class="jsdoc-syntax">;
368             </span><span class="jsdoc-var">this.form.dialog </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">dlg</span><span class="jsdoc-syntax">;
369             </span><span class="jsdoc-var">this.buttons</span><span class="jsdoc-syntax">[0]</span><span class="jsdoc-var">.form </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.form</span><span class="jsdoc-syntax">;
370             </span><span class="jsdoc-var">this.buttons</span><span class="jsdoc-syntax">[0]</span><span class="jsdoc-var">.dialog </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">dlg</span><span class="jsdoc-syntax">;
371             </span><span class="jsdoc-var">this.buttons</span><span class="jsdoc-syntax">[1]</span><span class="jsdoc-var">.form </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.form</span><span class="jsdoc-syntax">;
372             </span><span class="jsdoc-var">this.buttons</span><span class="jsdoc-syntax">[1]</span><span class="jsdoc-var">.dialog </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">dlg</span><span class="jsdoc-syntax">;
373            
374            </span><span class="jsdoc-comment">//this.resizeToLogo.defer(1000,this);
375             // this is all related to resizing for logos..
376             //var sz = Roo.get(Pman.Login.form.el.query('img')[0]).getSize();
377            //// if (!sz) {
378              //   this.resizeToLogo.defer(1000,this);
379              //   return;
380            // }
381             //var w = Ext.lib.Dom.getViewWidth() - 100;
382             //var h = Ext.lib.Dom.getViewHeight() - 100;
383             //this.resizeTo(Math.max(350, Math.min(sz.width + 30, w)),Math.min(sz.height+200, h));
384             //this.center();
385             </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.disabled</span><span class="jsdoc-syntax">) {
386                 </span><span class="jsdoc-var">this.hide</span><span class="jsdoc-syntax">();
387                 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
388             }
389             
390             </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.user.id </span><span class="jsdoc-syntax">&lt; 0) { </span><span class="jsdoc-comment">// used for inital setup situations.
391                 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
392             }
393             
394             </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.intervalID</span><span class="jsdoc-syntax">) {
395                 </span><span class="jsdoc-comment">// remove the timer
396                 </span><span class="jsdoc-var">window.clearInterval</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.intervalID</span><span class="jsdoc-syntax">);
397                 </span><span class="jsdoc-var">this.intervalID </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
398             }
399             
400             
401             </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'loading'</span><span class="jsdoc-syntax">)) {
402                 </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'loading'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.remove</span><span class="jsdoc-syntax">();
403             }
404             </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'loading-mask'</span><span class="jsdoc-syntax">)) {
405                 </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'loading-mask'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.hide</span><span class="jsdoc-syntax">();
406             }
407             
408             </span><span class="jsdoc-comment">//incomming._node = tnode;
409             </span><span class="jsdoc-var">this.form.reset</span><span class="jsdoc-syntax">();
410             </span><span class="jsdoc-comment">//this.dialog.modal = !modal;
411             //this.dialog.show();
412             </span><span class="jsdoc-var">this.el.unmask</span><span class="jsdoc-syntax">(); 
413             
414             
415             </span><span class="jsdoc-var">this.form.setValues</span><span class="jsdoc-syntax">({
416                 </span><span class="jsdoc-string">'username' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.state.Manager.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.realm </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'.username'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">),
417                 </span><span class="jsdoc-string">'lang' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.state.Manager.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.realm </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'.lang'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'en'</span><span class="jsdoc-syntax">)
418             });
419             
420             </span><span class="jsdoc-var">this.switchLang</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.state.Manager.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.realm </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'.lang'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'en'</span><span class="jsdoc-syntax">));
421             </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.form.findField</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'username'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.getValue</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.length </span><span class="jsdoc-syntax">&gt; 0 ){
422                 </span><span class="jsdoc-var">this.form.findField</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'password'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.focus</span><span class="jsdoc-syntax">();
423             } </span><span class="jsdoc-keyword">else </span><span class="jsdoc-syntax">{
424                </span><span class="jsdoc-var">this.form.findField</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'username'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.focus</span><span class="jsdoc-syntax">();
425             }
426     
427         }
428     },
429     </span><span class="jsdoc-var">items </span><span class="jsdoc-syntax">: [
430          {
431        
432             </span><span class="jsdoc-var">xtype </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'ContentPanel'</span><span class="jsdoc-syntax">,
433             </span><span class="jsdoc-var">xns </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo</span><span class="jsdoc-syntax">,
434             </span><span class="jsdoc-var">region</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'center'</span><span class="jsdoc-syntax">,
435             </span><span class="jsdoc-var">fitToFrame </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
436             
437             </span><span class="jsdoc-var">items </span><span class="jsdoc-syntax">: [
438     
439                 {
440                
441                     </span><span class="jsdoc-var">xtype </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Form'</span><span class="jsdoc-syntax">,
442                     </span><span class="jsdoc-var">xns </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.form</span><span class="jsdoc-syntax">,
443                     </span><span class="jsdoc-var">labelWidth</span><span class="jsdoc-syntax">: 100,
444                     </span><span class="jsdoc-var">style </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'margin: 10px;'</span><span class="jsdoc-syntax">,
445                     
446                     </span><span class="jsdoc-var">listeners </span><span class="jsdoc-syntax">: {
447                         </span><span class="jsdoc-var">actionfailed </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">f</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">act</span><span class="jsdoc-syntax">) {
448                             </span><span class="jsdoc-comment">// form can return { errors: .... }
449                                 
450                             //act.result.errors // invalid form element list...
451                             //act.result.errorMsg// invalid form element list...
452                             
453                             </span><span class="jsdoc-var">this.dialog.el.unmask</span><span class="jsdoc-syntax">();
454                             </span><span class="jsdoc-var">Roo.MessageBox.alert</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;Error&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">act.result.errorMsg </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">act.result.errorMsg </span><span class="jsdoc-syntax">: 
455                                         </span><span class="jsdoc-string">&quot;Login failed - communication error - try again.&quot;</span><span class="jsdoc-syntax">);
456                                       
457                         },
458                         </span><span class="jsdoc-var">actioncomplete</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">re</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">act</span><span class="jsdoc-syntax">) {
459                              
460                             </span><span class="jsdoc-var">Roo.state.Manager.set</span><span class="jsdoc-syntax">(
461                                 </span><span class="jsdoc-var">this.dialog.realm </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'.username'</span><span class="jsdoc-syntax">,  
462                                     </span><span class="jsdoc-var">this.findField</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'username'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.getValue</span><span class="jsdoc-syntax">()
463                             );
464                             </span><span class="jsdoc-var">Roo.state.Manager.set</span><span class="jsdoc-syntax">(
465                                 </span><span class="jsdoc-var">this.dialog.realm </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'.lang'</span><span class="jsdoc-syntax">,  
466                                 </span><span class="jsdoc-var">this.findField</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'lang'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.getValue</span><span class="jsdoc-syntax">() 
467                             );
468                             
469                             </span><span class="jsdoc-var">this.dialog.fillAuth</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">act.result.data</span><span class="jsdoc-syntax">);
470                               
471                             </span><span class="jsdoc-var">this.dialog.hide</span><span class="jsdoc-syntax">();
472                             
473                             </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'loading-mask'</span><span class="jsdoc-syntax">)) {
474                                 </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'loading-mask'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.show</span><span class="jsdoc-syntax">();
475                             }
476                             </span><span class="jsdoc-var">Roo.XComponent.build</span><span class="jsdoc-syntax">();
477                             
478                              
479                             
480                         }
481                     },
482                     </span><span class="jsdoc-var">items </span><span class="jsdoc-syntax">: [
483                         {
484                             </span><span class="jsdoc-var">xtype </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'TextField'</span><span class="jsdoc-syntax">,
485                             </span><span class="jsdoc-var">xns </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.form</span><span class="jsdoc-syntax">,
486                             </span><span class="jsdoc-var">fieldLabel</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;Email Address&quot;</span><span class="jsdoc-syntax">,
487                             </span><span class="jsdoc-var">name</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'username'</span><span class="jsdoc-syntax">,
488                             </span><span class="jsdoc-var">width</span><span class="jsdoc-syntax">:200,
489                             </span><span class="jsdoc-var">autoCreate </span><span class="jsdoc-syntax">: {</span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;input&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">type</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;text&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">size</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;20&quot;</span><span class="jsdoc-syntax">}
490                         },
491                         {
492                             </span><span class="jsdoc-var">xtype </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'TextField'</span><span class="jsdoc-syntax">,
493                             </span><span class="jsdoc-var">xns </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.form</span><span class="jsdoc-syntax">,
494                             </span><span class="jsdoc-var">fieldLabel</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;Password&quot;</span><span class="jsdoc-syntax">,
495                             </span><span class="jsdoc-var">inputType</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'password'</span><span class="jsdoc-syntax">,
496                             </span><span class="jsdoc-var">name</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'password'</span><span class="jsdoc-syntax">,
497                             </span><span class="jsdoc-var">width</span><span class="jsdoc-syntax">:200,
498                             </span><span class="jsdoc-var">autoCreate </span><span class="jsdoc-syntax">: {</span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;input&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">type</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;text&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">size</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;20&quot;</span><span class="jsdoc-syntax">},
499                             </span><span class="jsdoc-var">listeners </span><span class="jsdoc-syntax">: {
500                                 </span><span class="jsdoc-var">specialkey </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">ev</span><span class="jsdoc-syntax">) {
501                                     </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ev.keyCode </span><span class="jsdoc-syntax">== 13) {
502                                         </span><span class="jsdoc-var">this.form.dialog.el.mask</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;Logging in&quot;</span><span class="jsdoc-syntax">);
503                                         </span><span class="jsdoc-var">this.form.doAction</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'submit'</span><span class="jsdoc-syntax">, {
504                                             </span><span class="jsdoc-var">url</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.form.dialog.url</span><span class="jsdoc-syntax">,
505                                             </span><span class="jsdoc-var">method</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.form.dialog.method
506                                         </span><span class="jsdoc-syntax">});
507                                     }
508                                 }
509                             }  
510                         },
511                         {
512                             </span><span class="jsdoc-var">xtype </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'ComboBox'</span><span class="jsdoc-syntax">,
513                             </span><span class="jsdoc-var">xns </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.form</span><span class="jsdoc-syntax">,
514                             </span><span class="jsdoc-var">fieldLabel</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;Language&quot;</span><span class="jsdoc-syntax">,
515                             </span><span class="jsdoc-var">name </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'langdisp'</span><span class="jsdoc-syntax">,
516                             </span><span class="jsdoc-var">store</span><span class="jsdoc-syntax">: {
517                                 </span><span class="jsdoc-var">xtype </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'SimpleStore'</span><span class="jsdoc-syntax">,
518                                 </span><span class="jsdoc-var">fields</span><span class="jsdoc-syntax">: [</span><span class="jsdoc-string">'lang'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'ldisp'</span><span class="jsdoc-syntax">],
519                                 </span><span class="jsdoc-var">data </span><span class="jsdoc-syntax">: [
520                                     [ </span><span class="jsdoc-string">'en'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'English' </span><span class="jsdoc-syntax">],
521                                     [ </span><span class="jsdoc-string">'zh_HK' </span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'\u7E41\u4E2D' </span><span class="jsdoc-syntax">],
522                                     [ </span><span class="jsdoc-string">'zh_CN'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'\u7C21\u4E2D' </span><span class="jsdoc-syntax">]
523                                 ]
524                             },
525                             
526                             </span><span class="jsdoc-var">valueField </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'lang'</span><span class="jsdoc-syntax">,
527                             </span><span class="jsdoc-var">hiddenName</span><span class="jsdoc-syntax">:  </span><span class="jsdoc-string">'lang'</span><span class="jsdoc-syntax">,
528                             </span><span class="jsdoc-var">width</span><span class="jsdoc-syntax">: 200,
529                             </span><span class="jsdoc-var">displayField</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'ldisp'</span><span class="jsdoc-syntax">,
530                             </span><span class="jsdoc-var">typeAhead</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
531                             </span><span class="jsdoc-var">editable</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
532                             </span><span class="jsdoc-var">mode</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'local'</span><span class="jsdoc-syntax">,
533                             </span><span class="jsdoc-var">triggerAction</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'all'</span><span class="jsdoc-syntax">,
534                             </span><span class="jsdoc-var">emptyText</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'Select a Language...'</span><span class="jsdoc-syntax">,
535                             </span><span class="jsdoc-var">selectOnFocus</span><span class="jsdoc-syntax">:</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
536                             </span><span class="jsdoc-var">listeners </span><span class="jsdoc-syntax">: {
537                                 </span><span class="jsdoc-var">select </span><span class="jsdoc-syntax">:  </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cb</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rec</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">ix</span><span class="jsdoc-syntax">) {
538                                     </span><span class="jsdoc-var">this.form.switchLang</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">rec.data.lang</span><span class="jsdoc-syntax">);
539                                 }
540                             }
541                         
542                         }
543                     ]
544                 }
545                   
546                 
547             ]
548         }
549     ],
550     </span><span class="jsdoc-var">buttons </span><span class="jsdoc-syntax">: [
551         {
552             </span><span class="jsdoc-var">xtype </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Button'</span><span class="jsdoc-syntax">,
553             </span><span class="jsdoc-var">xns </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Roo'</span><span class="jsdoc-syntax">,
554             </span><span class="jsdoc-var">text </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;Forgot Password&quot;</span><span class="jsdoc-syntax">,
555             </span><span class="jsdoc-var">listeners </span><span class="jsdoc-syntax">: {
556                 </span><span class="jsdoc-var">click </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
557                     </span><span class="jsdoc-comment">//console.log(this);
558                     </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">n </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.form.findField</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'username'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.getValue</span><span class="jsdoc-syntax">();
559                     </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">n.length</span><span class="jsdoc-syntax">) {
560                         </span><span class="jsdoc-var">Roo.MessageBox.alert</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;Error&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">&quot;Fill in your email address&quot;</span><span class="jsdoc-syntax">);
561                         </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
562                     }
563                     </span><span class="jsdoc-var">Roo.Ajax.request</span><span class="jsdoc-syntax">({
564                         </span><span class="jsdoc-var">url</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.dialog.url</span><span class="jsdoc-syntax">,
565                         </span><span class="jsdoc-var">params</span><span class="jsdoc-syntax">: {
566                             </span><span class="jsdoc-var">passwordRequest</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">n
567                         </span><span class="jsdoc-syntax">},
568                         </span><span class="jsdoc-var">method</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.dialog.method</span><span class="jsdoc-syntax">,
569                         </span><span class="jsdoc-var">success</span><span class="jsdoc-syntax">:  </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">opts</span><span class="jsdoc-syntax">)  {  </span><span class="jsdoc-comment">// check successfull...
570                         
571                             </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">res </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.dialog.processResponse</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">);
572                             </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">res.success</span><span class="jsdoc-syntax">) { </span><span class="jsdoc-comment">// error!
573                                </span><span class="jsdoc-var">Roo.MessageBox.alert</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;Error&quot; </span><span class="jsdoc-syntax">,
574                                     </span><span class="jsdoc-var">res.errorMsg </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">res.errorMsg  </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;Problem Requesting Password Reset&quot;</span><span class="jsdoc-syntax">);
575                                </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
576                             }
577                             </span><span class="jsdoc-var">Roo.MessageBox.alert</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;Notice&quot; </span><span class="jsdoc-syntax">,
578                                 </span><span class="jsdoc-string">&quot;Please check you email for the Password Reset message&quot;</span><span class="jsdoc-syntax">);
579                         },
580                         </span><span class="jsdoc-var">failure </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
581                             </span><span class="jsdoc-var">Roo.MessageBox.alert</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;Error&quot; </span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">&quot;Problem Requesting Password Reset&quot;</span><span class="jsdoc-syntax">);
582                         }
583                         
584                     });
585                 }
586             }
587         },
588         {
589             </span><span class="jsdoc-var">xtype </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Button'</span><span class="jsdoc-syntax">,
590             </span><span class="jsdoc-var">xns </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Roo'</span><span class="jsdoc-syntax">,
591             </span><span class="jsdoc-var">text </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;Login&quot;</span><span class="jsdoc-syntax">,
592             </span><span class="jsdoc-var">listeners </span><span class="jsdoc-syntax">: {
593                 
594                 </span><span class="jsdoc-var">click </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function </span><span class="jsdoc-syntax">() {
595                         
596                     </span><span class="jsdoc-var">this.dialog.el.mask</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;Logging in&quot;</span><span class="jsdoc-syntax">);
597                     </span><span class="jsdoc-var">this.form.doAction</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'submit'</span><span class="jsdoc-syntax">, {
598                             </span><span class="jsdoc-var">url</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.dialog.url</span><span class="jsdoc-syntax">,
599                             </span><span class="jsdoc-var">method</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.dialog.method
600                     </span><span class="jsdoc-syntax">});
601                 }
602             }
603         }
604     ]
605   
606   
607 })
608  
609
610
611    </span></code></body></html>