| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 /** | 5 /** |
| 6 * @fileoverview Locally managed user creation flow screen. | 6 * @fileoverview Locally managed user creation flow screen. |
| 7 */ | 7 */ |
| 8 | 8 |
| 9 login.createScreen('LocallyManagedUserCreationScreen', | 9 login.createScreen('LocallyManagedUserCreationScreen', |
| 10 'managed-user-creation', function() { | 10 'managed-user-creation', function() { |
| (...skipping 352 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 363 }, | 363 }, |
| 364 | 364 |
| 365 /** | 365 /** |
| 366 * Returns all the pods in this pod list. | 366 * Returns all the pods in this pod list. |
| 367 * @type {NodeList} | 367 * @type {NodeList} |
| 368 */ | 368 */ |
| 369 get pods() { | 369 get pods() { |
| 370 return this.children; | 370 return this.children; |
| 371 }, | 371 }, |
| 372 | 372 |
| 373 /** |
| 374 * Returns selected pod. |
| 375 * @type {Node} |
| 376 */ |
| 377 get selectedPod() { |
| 378 return this.selectedPod_; |
| 379 }, |
| 380 |
| 373 addPod: function(user) { | 381 addPod: function(user) { |
| 374 var importPod = new ImportPod({user: user}); | 382 var importPod = new ImportPod({user: user}); |
| 375 this.appendChild(importPod); | 383 this.appendChild(importPod); |
| 376 importPod.update(); | 384 importPod.update(); |
| 377 }, | 385 }, |
| 378 | 386 |
| 379 clearPods: function() { | 387 clearPods: function() { |
| 380 this.innerHTML = ''; | 388 this.innerHTML = ''; |
| 381 this.selectedPod_ = null; | 389 this.selectedPod_ = null; |
| 382 }, | 390 }, |
| (...skipping 445 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 828 $('managed-user-creation-password-confirm').value; | 836 $('managed-user-creation-password-confirm').value; |
| 829 var userName = $('managed-user-creation-name').value; | 837 var userName = $('managed-user-creation-name').value; |
| 830 if (firstPassword != secondPassword) { | 838 if (firstPassword != secondPassword) { |
| 831 this.showPasswordError( | 839 this.showPasswordError( |
| 832 loadTimeData.getString('createManagedUserPasswordMismatchError')); | 840 loadTimeData.getString('createManagedUserPasswordMismatchError')); |
| 833 return; | 841 return; |
| 834 } | 842 } |
| 835 if (this.disabled) | 843 if (this.disabled) |
| 836 return; | 844 return; |
| 837 this.disabled = true; | 845 this.disabled = true; |
| 846 |
| 838 this.context_.managedName = userName; | 847 this.context_.managedName = userName; |
| 839 chrome.send('specifyLocallyManagedUserCreationFlowUserData', | 848 chrome.send('specifyLocallyManagedUserCreationFlowUserData', |
| 840 [userName, firstPassword]); | 849 [userName, firstPassword]); |
| 841 }, | 850 }, |
| 842 | 851 |
| 843 /** | 852 /** |
| 844 * Does sanity check and calls backend with selected existing supervised | 853 * Does sanity check and calls backend with selected existing supervised |
| 845 * user id to import user. | 854 * user id to import user. |
| 846 * @private | 855 * @private |
| 847 */ | 856 */ |
| (...skipping 446 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1294 return this.disabled_; | 1303 return this.disabled_; |
| 1295 }, | 1304 }, |
| 1296 | 1305 |
| 1297 set disabled(value) { | 1306 set disabled(value) { |
| 1298 this.disabled_ = value; | 1307 this.disabled_ = value; |
| 1299 var controls = this.querySelectorAll('button,input'); | 1308 var controls = this.querySelectorAll('button,input'); |
| 1300 for (var i = 0, control; control = controls[i]; ++i) { | 1309 for (var i = 0, control; control = controls[i]; ++i) { |
| 1301 control.disabled = value; | 1310 control.disabled = value; |
| 1302 } | 1311 } |
| 1303 $('login-header-bar').disabled = value; | 1312 $('login-header-bar').disabled = value; |
| 1313 $('cancel-add-user-button').disabled = false; |
| 1304 }, | 1314 }, |
| 1305 | 1315 |
| 1306 /** | 1316 /** |
| 1307 * Called by backend part to propagate list of possible managers. | 1317 * Called by backend part to propagate list of possible managers. |
| 1308 * @param {Array} userList - list of users that can be managers. | 1318 * @param {Array} userList - list of users that can be managers. |
| 1309 */ | 1319 */ |
| 1310 loadManagers: function(userList) { | 1320 loadManagers: function(userList) { |
| 1311 $('managed-user-creation-managers-block').hidden = false; | 1321 $('managed-user-creation-managers-block').hidden = false; |
| 1312 this.managerList_.clearPods(); | 1322 this.managerList_.clearPods(); |
| 1313 for (var i = 0; i < userList.length; ++i) | 1323 for (var i = 0; i < userList.length; ++i) |
| (...skipping 221 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1535 chrome.send('supervisedUserDiscardPhoto'); | 1545 chrome.send('supervisedUserDiscardPhoto'); |
| 1536 announceAccessibleMessage( | 1546 announceAccessibleMessage( |
| 1537 loadTimeData.getString('photoDiscardAccessibleText')); | 1547 loadTimeData.getString('photoDiscardAccessibleText')); |
| 1538 }, | 1548 }, |
| 1539 | 1549 |
| 1540 setCameraPresent: function(present) { | 1550 setCameraPresent: function(present) { |
| 1541 this.getScreenElement('image-grid').cameraPresent = present; | 1551 this.getScreenElement('image-grid').cameraPresent = present; |
| 1542 }, | 1552 }, |
| 1543 | 1553 |
| 1544 setExistingManagedUsers: function(users) { | 1554 setExistingManagedUsers: function(users) { |
| 1555 var selectedUser = null; |
| 1556 // Store selected user |
| 1557 if (this.importList_.selectedPod) |
| 1558 selectedUser = this.importList_.selectedPod.user.id; |
| 1559 |
| 1545 var userList = users; | 1560 var userList = users; |
| 1546 | |
| 1547 userList.sort(function(a, b) { | 1561 userList.sort(function(a, b) { |
| 1548 // Put existing users last. | 1562 // Put existing users last. |
| 1549 if (a.exists != b.exists) | 1563 if (a.exists != b.exists) |
| 1550 return a.exists ? 1 : -1; | 1564 return a.exists ? 1 : -1; |
| 1551 // Sort rest by name. | 1565 // Sort rest by name. |
| 1552 return a.name.localeCompare(b.name, [], {sensitivity: 'base'}); | 1566 return a.name.localeCompare(b.name, [], {sensitivity: 'base'}); |
| 1553 }); | 1567 }); |
| 1554 | 1568 |
| 1555 this.importList_.clearPods(); | 1569 this.importList_.clearPods(); |
| 1556 for (var i = 0; i < userList.length; ++i) | 1570 var selectedIndex = -1; |
| 1571 for (var i = 0; i < userList.length; ++i) { |
| 1557 this.importList_.addPod(userList[i]); | 1572 this.importList_.addPod(userList[i]); |
| 1573 if (selectedUser == userList[i].id) |
| 1574 selectedIndex = i; |
| 1575 } |
| 1558 | 1576 |
| 1559 if (userList.length == 1) | 1577 if (userList.length == 1) |
| 1560 this.importList_.selectPod(this.managerList_.pods[0]); | 1578 this.importList_.selectPod(this.importList_.pods[0]); |
| 1561 | 1579 |
| 1562 if (userList.length > 0 && this.currentPage_ == 'username') | 1580 if (selectedIndex >= 0) |
| 1563 this.getScreenElement('import-link').hidden = false; | 1581 this.importList_.selectPod(this.importList_.pods[selectedIndex]); |
| 1582 |
| 1583 if (this.currentPage_ == 'username') |
| 1584 this.getScreenElement('import-link').hidden = (userList.length == 0); |
| 1564 }, | 1585 }, |
| 1565 }; | 1586 }; |
| 1566 }); | 1587 }); |
| 1567 | 1588 |
| OLD | NEW |