2 "name" : "Pman.Dialog.BAdminStaff",
5 "path" : "/home/alan/gitlive/Pman.BAdmin/Pman.Dialog.BAdminStaff.bjs",
9 "ce8ae9da5b7cd6c3df2929543a9af92d" : "Email",
10 "bcc254b55c4a1babdf1dcb82c207506b" : "Phone",
11 "a0f852ef8bfccd86a0e7217d7959e3e8" : "Add / Edit User",
12 "0bfe42db3eb05bf39f03812166391939" : "Use Secure Passwords",
13 "ea4788705e6873b424c65e91c2846b19" : "Cancel",
14 "6f958ddaf50fd5ade7858ef1d1a63e51" : "Type again to confirm",
15 "bbbabdbe1b262f75d99d62880b953be1" : "Role",
16 "49ee3087348e8d44e1feda1917443987" : "Name",
17 "c9cc8cce247e49bae79f15173ce97354" : "Save",
18 "828e70f83623b262e14187c039df99c0" : "Enable Two-Factor Authentication",
19 "acf45fd8829f809b29c601a3a193804f" : "Set / Change Password",
20 "01028205a11cf95a503c4c1d005989da" : "Generate One"
23 "email_placeholder" : "ce8ae9da5b7cd6c3df2929543a9af92d",
24 "secure_passwords_boxLabel" : "0bfe42db3eb05bf39f03812166391939",
25 "name_placeholder" : "49ee3087348e8d44e1feda1917443987",
26 "role_fieldLabel" : "bbbabdbe1b262f75d99d62880b953be1",
27 "name_fieldLabel" : "49ee3087348e8d44e1feda1917443987",
28 "role_placeholder" : "bbbabdbe1b262f75d99d62880b953be1",
29 "phone_fieldLabel" : "bcc254b55c4a1babdf1dcb82c207506b",
30 "_enable_oath_key_boxLabel" : "828e70f83623b262e14187c039df99c0",
31 "email_fieldLabel" : "ce8ae9da5b7cd6c3df2929543a9af92d",
32 "passwd2_placeholder" : "6f958ddaf50fd5ade7858ef1d1a63e51"
37 "render" : "function (_self)\n{\n _this.dialog = this;\n}"
39 "String cls" : "add-user-dialog",
40 "string fit_content" : true,
42 "$ xns" : "Roo.bootstrap",
43 "String title" : "Add / Edit User",
47 "actioncomplete" : "function (_self, action)\n{\n if(action.type == 'setdata'){\n \n // _this.layout.showPanel('DetailPanel');\n \n _this.dialog.setTitle(_this.data.id *1 > 0 ? \"Edit User: \" + _this.data.name : 'Add User');\n _this.form.findField('role').setDisabled(false);\n \n /*\n * Use for init -- Call from Pman.Login.js\n */\n if(\n typeof(_this.data.role) != 'undefined' &&\n _this.data.role == 'Administrators'\n ) {\n _this.dialog.setTitle(\"Create Adminstrator\");\n _this.form.findField('role').setDisabled(true);\n }\n \n _this.form.findField('passwd1').el.select('input',true).first().dom.type=\"password\";\n _this.form.findField('passwd2').show();\n _this.passwordbox.collapse();\n \n _this.form.findField('secure_passwords').setValue(1);\n \n if(_this.data.id * 1 > 0) {\n this.doAction('load',{ method: 'GET', params: { '_id' : _this.data.id }});\n }\n \n \n \n this.clearInvalid();\n \n _this.dialog.resize();\n \n return;\n }\n \n if (action.type == 'load') {\n \n _this.data = action.result.data;\n \n // oath handling...\n \n _this.form.findField('_enable_oath_key').setChecked(false,false);\n \n if(_this.data.length_oath_key != '0') {\n _this.form.findField('_enable_oath_key').setChecked(true,false);\n }\n \n return;\n }\n \n if (action.type == 'submit') { // only submitted here if we are \n \n _this.dialog.hide();\n \n if (_this.callback) {\n _this.callback.call(this, action.result.data);\n }\n \n return;\n }\n}",
48 "render" : "function (_self)\n{\n _this.form = this;\n}"
50 "$ url" : "baseURL + '/Roo/core_person' ",
51 "style" : "margin-top: 20px;",
53 "String labelAlign" : "top",
54 "$ xns" : "Roo.bootstrap",
55 "string errorMask" : true,
59 "$ xns" : "Roo.bootstrap",
64 "$ xns" : "Roo.bootstrap",
67 "Boolean allowBlank" : false,
68 "String name" : "name",
70 "string placeholder" : "Name",
71 "String labelAlign" : "left",
72 "string fieldLabel" : "Name",
73 "$ xns" : "Roo.bootstrap"
81 "$ xns" : "Roo.bootstrap",
86 "$ xns" : "Roo.bootstrap",
89 "String name" : "role",
91 "string placeholder" : "Role",
92 "string fieldLabel" : "Role",
93 "String labelAlign" : "left",
94 "$ xns" : "Roo.bootstrap"
102 "$ xns" : "Roo.bootstrap",
107 "$ xns" : "Roo.bootstrap",
110 "Boolean allowBlank" : false,
111 "String name" : "email",
114 "string placeholder" : "Email",
115 "String labelAlign" : "left",
116 "string fieldLabel" : "Email",
117 "$ xns" : "Roo.bootstrap"
125 "$ xns" : "Roo.bootstrap",
130 "$ xns" : "Roo.bootstrap",
133 "String name" : "phone",
135 "string fieldLabel" : "Phone",
136 "String labelAlign" : "left",
137 "$ xns" : "Roo.bootstrap"
145 "$ xns" : "Roo.bootstrap",
150 "$ xns" : "Roo.bootstrap",
154 "click" : "function (_self, e)\n{\n if(!Pman.Login.authUser) {\n Roo.bootstrap.MessageBox.alert('Error', 'Please login again');\n return;\n }\n \n e.preventDefault();\n \n if(!this.checked) {\n \n Pman.Dialog.BAdminStaffTwoFactorQRCode.show({\n id: _this.data.id,\n allow_close: false,\n allow_cancel : true\n }, function(valid){\n if(valid) {\n _this.dialog.hide({});\n return;\n }\n \n _this.form.findField('_enable_oath_key').setChecked(false,false);\n }\n );\n \n return;\n }\n \n new Pman.Request({\n url : baseURL + '/Roo/Core_person',\n method :'GET',\n params : {\n oath_key_disable: 1,\n id: _this.data.id\n },\n success : function(res)\n {\n switch(res.data) {\n case 'DONE':\n Roo.bootstrap.MessageBox.alert('Success', 'The two factor authentication has been disabled');\n break;\n default:\n Roo.log('invalid usage');\n break;\n }\n },\n failure : function(res)\n {\n Roo.bootstrap.MessageBox.alert('Error', res);\n }\n });\n}",
155 "check" : "function (_self, checked)\n{\n if(checked) {\n \n this.setBoxLabel('Untick to disable Two Factor authentication');\n \n return;\n }\n \n this.setBoxLabel('Enable Two Factor Authentication');\n}"
157 "String name" : "_enable_oath_key",
158 "xtype" : "CheckBox",
159 "String boxLabel" : "Enable Two-Factor Authentication",
160 "$ xns" : "Roo.bootstrap"
168 "$ xns" : "Roo.bootstrap",
173 "$ xns" : "Roo.bootstrap",
177 "render" : "function (_self)\n{\n _this.passwordbox = this;\n}"
179 "String header" : "Set / Change Password",
180 "Boolean expanded" : false,
181 "xtype" : "Container",
182 "String panel" : "primary",
183 "$ xns" : "Roo.bootstrap",
184 "Boolean expandable" : true,
188 "$ xns" : "Roo.bootstrap",
193 "$ xns" : "Roo.bootstrap",
196 "String name" : "passwd1",
198 "String inputType" : "password",
199 "$ xns" : "Roo.bootstrap"
206 "$ xns" : "Roo.bootstrap",
210 "click" : "function (_self, e)\n{\n var pw = Math.random().toString(36).replace('0.', '');\n _this.form.findField('passwd1').el.select('input',true).first().dom.type=\"input\";\n _this.form.findField('passwd1').setValue(pw);\n _this.form.findField('passwd2').hide();\n}"
213 "$ xns" : "Roo.bootstrap",
214 "String html" : "Generate One",
215 "String style" : "width:100%"
222 "String name" : "passwd2",
224 "string placeholder" : "Type again to confirm",
225 "String inputType" : "password",
226 "$ xns" : "Roo.bootstrap"
229 "String name" : "secure_passwords",
230 "xtype" : "CheckBox",
231 "String boxLabel" : "Use Secure Passwords",
232 "$ xns" : "Roo.bootstrap"
242 "render" : "function (_self)\n{\n _this.userID = _self;\n}"
244 "String name" : "id",
246 "String labelAlign" : "left",
247 "String inputType" : "hidden",
248 "$ xns" : "Roo.bootstrap"
251 "String name" : "company_id",
253 "String inputType" : "hidden",
254 "$ xns" : "Roo.bootstrap"
260 "click" : "function (_self, e)\n{\n _this.dialog.hide(); \n}"
263 "$ xns" : "Roo.bootstrap",
264 "String html" : "Cancel",
265 "* prop" : "buttons[]"
269 "click" : "function (_self, e)\n{\n if(!_this.form.isValid()){\n //Roo.bootstrap.MessageBox.alert('Error', 'Please Correct all the errors in red');\n return;\n }\n \n var myID = _this.form.findField('id').getValue() * 1;\n var myName = _this.form.findField('name').getValue();\n\n if (_this.form.findField('company_id') && !_this.form.findField('company_id').getValue()) {\n Roo.bootstrap.MessageBox.alert(\"Error\", \"Select a Company\");\n return;\n }\n \n // validate password match (only needed if we are not using generated one..\n if (_this.form.findField('passwd1') \n && _this.form.findField('passwd1').getValue().length > 0 \n && _this.form.findField('passwd1').inputEl().dom.type == \"password\") {\n \n var p1 = _this.form.findField('passwd1').getValue();\n var p2 = _this.form.findField('passwd2').getValue();\n \n \n if (Pman.Login.authUser.id < 0 && !p1.length) {\n Roo.bootstrap.MessageBox.alert(\"Error\", \"You must create a password for the admin account\");\n return;\n }\n \n \n if (p1.length || p2.length) {\n if (p1 != p2) {\n Roo.bootstrap.MessageBox.alert(\"Error\", \"Passwords do not match\");\n return;\n }\n }\n \n \n }\n \n // get the list of record with tick\n \n _this.form.doAction(\"submit\");\n \n return;\n\n}"
271 "String weight" : "primary",
273 "$ xns" : "Roo.bootstrap",
274 "String html" : "Save",
275 "* prop" : "buttons[]"