Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(397)

Side by Side Diff: chrome/browser/resources/options/manage_profile_overlay.js

Issue 403343002: Rename "managed (mode|user)" to "supervised user" (part 8) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 cr.define('options', function() { 5 cr.define('options', function() {
6 var OptionsPage = options.OptionsPage; 6 var OptionsPage = options.OptionsPage;
7 var ArrayDataModel = cr.ui.ArrayDataModel; 7 var ArrayDataModel = cr.ui.ArrayDataModel;
8 8
9 /** 9 /**
10 * ManageProfileOverlay class 10 * ManageProfileOverlay class
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 CreateProfileOverlay.cancelCreateProfile(); 64 CreateProfileOverlay.cancelCreateProfile();
65 }; 65 };
66 66
67 $('manage-profile-cancel').onclick = 67 $('manage-profile-cancel').onclick =
68 $('disconnect-managed-profile-cancel').onclick = 68 $('disconnect-managed-profile-cancel').onclick =
69 $('delete-profile-cancel').onclick = function(event) { 69 $('delete-profile-cancel').onclick = function(event) {
70 OptionsPage.closeOverlay(); 70 OptionsPage.closeOverlay();
71 }; 71 };
72 $('delete-profile-ok').onclick = function(event) { 72 $('delete-profile-ok').onclick = function(event) {
73 OptionsPage.closeOverlay(); 73 OptionsPage.closeOverlay();
74 if (BrowserOptions.getCurrentProfile().isManaged) 74 if (BrowserOptions.getCurrentProfile().isSupervised)
75 return; 75 return;
76 chrome.send('deleteProfile', [self.profileInfo_.filePath]); 76 chrome.send('deleteProfile', [self.profileInfo_.filePath]);
77 options.ManagedUserListData.resetPromise(); 77 options.SupervisedUserListData.resetPromise();
78 }; 78 };
79 $('add-shortcut-button').onclick = function(event) { 79 $('add-shortcut-button').onclick = function(event) {
80 chrome.send('addProfileShortcut', [self.profileInfo_.filePath]); 80 chrome.send('addProfileShortcut', [self.profileInfo_.filePath]);
81 }; 81 };
82 $('remove-shortcut-button').onclick = function(event) { 82 $('remove-shortcut-button').onclick = function(event) {
83 chrome.send('removeProfileShortcut', [self.profileInfo_.filePath]); 83 chrome.send('removeProfileShortcut', [self.profileInfo_.filePath]);
84 }; 84 };
85 85
86 $('disconnect-managed-profile-ok').onclick = function(event) { 86 $('disconnect-managed-profile-ok').onclick = function(event) {
87 OptionsPage.closeOverlay(); 87 OptionsPage.closeOverlay();
88 chrome.send('deleteProfile', 88 chrome.send('deleteProfile',
89 [BrowserOptions.getCurrentProfile().filePath]); 89 [BrowserOptions.getCurrentProfile().filePath]);
90 }; 90 };
91 91
92 $('create-profile-managed-signed-in-learn-more-link').onclick = 92 $('create-profile-supervised-signed-in-learn-more-link').onclick =
93 function(event) { 93 function(event) {
94 OptionsPage.navigateToPage('managedUserLearnMore'); 94 OptionsPage.navigateToPage('supervisedUserLearnMore');
95 return false; 95 return false;
96 }; 96 };
97 97
98 $('create-profile-managed-not-signed-in-link').onclick = function(event) { 98 $('create-profile-supervised-not-signed-in-link').onclick =
99 function(event) {
99 // The signin process will open an overlay to configure sync, which 100 // The signin process will open an overlay to configure sync, which
100 // would replace this overlay. It's smoother to close this one now. 101 // would replace this overlay. It's smoother to close this one now.
101 // TODO(pamg): Move the sync-setup overlay to a higher layer so this one 102 // TODO(pamg): Move the sync-setup overlay to a higher layer so this one
102 // can stay open under it, after making sure that doesn't break anything 103 // can stay open under it, after making sure that doesn't break anything
103 // else. 104 // else.
104 OptionsPage.closeOverlay(); 105 OptionsPage.closeOverlay();
105 SyncSetupOverlay.startSignIn(); 106 SyncSetupOverlay.startSignIn();
106 }; 107 };
107 108
108 $('create-profile-managed-sign-in-again-link').onclick = function(event) { 109 $('create-profile-supervised-sign-in-again-link').onclick =
110 function(event) {
109 OptionsPage.closeOverlay(); 111 OptionsPage.closeOverlay();
110 SyncSetupOverlay.showSetupUI(); 112 SyncSetupOverlay.showSetupUI();
111 }; 113 };
112 114
113 $('import-existing-managed-user-link').onclick = function(event) { 115 $('import-existing-supervised-user-link').onclick = function(event) {
114 // Hide the import button to trigger a cursor update. The import button 116 // Hide the import button to trigger a cursor update. The import button
115 // is shown again when the import overlay loads. TODO(akuegel): Remove 117 // is shown again when the import overlay loads. TODO(akuegel): Remove
116 // this temporary fix when crbug/246304 is resolved. 118 // this temporary fix when crbug/246304 is resolved.
117 $('import-existing-managed-user-link').hidden = true; 119 $('import-existing-supervised-user-link').hidden = true;
118 OptionsPage.navigateToPage('managedUserImport'); 120 OptionsPage.navigateToPage('supervisedUserImport');
119 }; 121 };
120 }, 122 },
121 123
122 /** @override */ 124 /** @override */
123 didShowPage: function() { 125 didShowPage: function() {
124 chrome.send('requestDefaultProfileIcons', ['manage']); 126 chrome.send('requestDefaultProfileIcons', ['manage']);
125 127
126 // Just ignore the manage profile dialog on Chrome OS, they use /accounts. 128 // Just ignore the manage profile dialog on Chrome OS, they use /accounts.
127 if (!cr.isChromeOS && window.location.pathname == '/manageProfile') 129 if (!cr.isChromeOS && window.location.pathname == '/manageProfile')
128 ManageProfileOverlay.getInstance().prepareForManageDialog_(); 130 ManageProfileOverlay.getInstance().prepareForManageDialog_();
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
171 }, 173 },
172 174
173 /** 175 /**
174 * Set the profile info used in the dialog. 176 * Set the profile info used in the dialog.
175 * @param {Object} profileInfo An object of the form: 177 * @param {Object} profileInfo An object of the form:
176 * profileInfo = { 178 * profileInfo = {
177 * name: "Profile Name", 179 * name: "Profile Name",
178 * iconURL: "chrome://path/to/icon/image", 180 * iconURL: "chrome://path/to/icon/image",
179 * filePath: "/path/to/profile/data/on/disk", 181 * filePath: "/path/to/profile/data/on/disk",
180 * isCurrentProfile: false, 182 * isCurrentProfile: false,
181 * isManaged: false 183 * isSupervised: false
182 * }; 184 * };
183 * @param {string} mode A label that specifies the type of dialog box which 185 * @param {string} mode A label that specifies the type of dialog box which
184 * is currently being viewed (i.e. 'create' or 'manage'). 186 * is currently being viewed (i.e. 'create' or 'manage').
185 * @private 187 * @private
186 */ 188 */
187 setProfileInfo_: function(profileInfo, mode) { 189 setProfileInfo_: function(profileInfo, mode) {
188 this.iconGridSelectedURL_ = profileInfo.iconURL; 190 this.iconGridSelectedURL_ = profileInfo.iconURL;
189 this.profileInfo_ = profileInfo; 191 this.profileInfo_ = profileInfo;
190 $(mode + '-profile-name').value = profileInfo.name; 192 $(mode + '-profile-name').value = profileInfo.name;
191 $(mode + '-profile-icon-grid').selectedItem = profileInfo.iconURL; 193 $(mode + '-profile-icon-grid').selectedItem = profileInfo.iconURL;
(...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after
316 * @param {string} mode A label that specifies the type of dialog box which 318 * @param {string} mode A label that specifies the type of dialog box which
317 * is currently being viewed (i.e. 'create' or 'manage'). 319 * is currently being viewed (i.e. 'create' or 'manage').
318 * @private 320 * @private
319 */ 321 */
320 onNameChanged_: function(mode) { 322 onNameChanged_: function(mode) {
321 this.profileNameIsDefault_ = false; 323 this.profileNameIsDefault_ = false;
322 this.updateCreateOrImport_(mode); 324 this.updateCreateOrImport_(mode);
323 }, 325 },
324 326
325 /** 327 /**
326 * Called when the profile name is changed or the 'create managed' checkbox 328 * Called when the profile name is changed or the 'create supervised'
327 * is toggled. Updates the 'ok' button and the 'import existing supervised 329 * checkbox is toggled. Updates the 'ok' button and the 'import existing
328 * user' link. 330 * supervised user' link.
329 * @param {string} mode A label that specifies the type of dialog box which 331 * @param {string} mode A label that specifies the type of dialog box which
330 * is currently being viewed (i.e. 'create' or 'manage'). 332 * is currently being viewed (i.e. 'create' or 'manage').
331 * @private 333 * @private
332 */ 334 */
333 updateCreateOrImport_: function(mode) { 335 updateCreateOrImport_: function(mode) {
334 // In 'create' mode, check for existing managed users with the same name. 336 // In 'create' mode, check for existing supervised users with the same
335 if (mode == 'create' && $('create-profile-managed').checked) { 337 // name.
336 options.ManagedUserListData.requestExistingManagedUsers().then( 338 if (mode == 'create' && $('create-profile-supervised').checked) {
337 this.receiveExistingManagedUsers_.bind(this), 339 options.SupervisedUserListData.requestExistingSupervisedUsers().then(
340 this.receiveExistingSupervisedUsers_.bind(this),
338 this.onSigninError_.bind(this)); 341 this.onSigninError_.bind(this));
339 } else { 342 } else {
340 this.updateOkButton_(mode); 343 this.updateOkButton_(mode);
341 } 344 }
342 }, 345 },
343 346
344 /** 347 /**
345 * Callback which receives the list of existing managed users. Checks if the 348 * Callback which receives the list of existing supervised users. Checks if
346 * currently entered name is the name of an already existing managed user. 349 * the currently entered name is the name of an already existing supervised
347 * If yes, the user is prompted to import the existing managed user, and the 350 * user. If yes, the user is prompted to import the existing supervised
348 * create button is disabled. 351 * user, and the create button is disabled.
349 * @param {Array.<Object>} The list of existing managed users. 352 * @param {Array.<Object>} The list of existing supervised users.
350 * @private 353 * @private
351 */ 354 */
352 receiveExistingManagedUsers_: function(managedUsers) { 355 receiveExistingSupervisedUsers_: function(supervisedUsers) {
353 var newName = $('create-profile-name').value; 356 var newName = $('create-profile-name').value;
354 var i; 357 var i;
355 for (i = 0; i < managedUsers.length; ++i) { 358 for (i = 0; i < supervisedUsers.length; ++i) {
356 if (managedUsers[i].name == newName && 359 if (supervisedUsers[i].name == newName &&
357 !managedUsers[i].onCurrentDevice) { 360 !supervisedUsers[i].onCurrentDevice) {
358 var errorHtml = loadTimeData.getStringF( 361 var errorHtml = loadTimeData.getStringF(
359 'manageProfilesExistingSupervisedUser', 362 'manageProfilesExistingSupervisedUser',
360 HTMLEscape(elide(newName, /* maxLength */ 50))); 363 HTMLEscape(elide(newName, /* maxLength */ 50)));
361 this.showErrorBubble_(errorHtml, 'create', true); 364 this.showErrorBubble_(errorHtml, 'create', true);
362 365
363 // Check if another supervised user also exists with that name. 366 // Check if another supervised user also exists with that name.
364 var nameIsUnique = true; 367 var nameIsUnique = true;
365 var j; 368 var j;
366 for (j = i + 1; j < managedUsers.length; ++j) { 369 for (j = i + 1; j < supervisedUsers.length; ++j) {
367 if (managedUsers[j].name == newName) { 370 if (supervisedUsers[j].name == newName) {
368 nameIsUnique = false; 371 nameIsUnique = false;
369 break; 372 break;
370 } 373 }
371 } 374 }
372 var self = this; 375 var self = this;
373 function getImportHandler(managedUser, nameIsUnique) { 376 function getImportHandler(supervisedUser, nameIsUnique) {
374 return function() { 377 return function() {
375 if (managedUser.needAvatar || !nameIsUnique) { 378 if (supervisedUser.needAvatar || !nameIsUnique) {
376 OptionsPage.navigateToPage('managedUserImport'); 379 OptionsPage.navigateToPage('supervisedUserImport');
377 } else { 380 } else {
378 self.hideErrorBubble_('create'); 381 self.hideErrorBubble_('create');
379 CreateProfileOverlay.updateCreateInProgress(true); 382 CreateProfileOverlay.updateCreateInProgress(true);
380 chrome.send('createProfile', 383 chrome.send('createProfile',
381 [managedUser.name, managedUser.iconURL, false, true, 384 [supervisedUser.name, supervisedUser.iconURL, false, true,
382 managedUser.id]); 385 supervisedUser.id]);
383 } 386 }
384 } 387 }
385 }; 388 };
386 $('supervised-user-import').onclick = 389 $('supervised-user-import-existing').onclick =
387 getImportHandler(managedUsers[i], nameIsUnique); 390 getImportHandler(supervisedUsers[i], nameIsUnique);
388 $('create-profile-ok').disabled = true; 391 $('create-profile-ok').disabled = true;
389 return; 392 return;
390 } 393 }
391 } 394 }
392 this.updateOkButton_('create'); 395 this.updateOkButton_('create');
393 }, 396 },
394 397
395 /** 398 /**
396 * Called in case the request for the list of managed users fails because of 399 * Called in case the request for the list of supervised users fails because
397 * a signin error. 400 * of a signin error.
398 * @private 401 * @private
399 */ 402 */
400 onSigninError_: function() { 403 onSigninError_: function() {
401 this.updateImportExistingManagedUserLink_(false); 404 this.updateImportExistingSupervisedUserLink_(false);
402 }, 405 },
403 406
404 /** 407 /**
405 * Called to update the state of the ok button depending if the name is 408 * Called to update the state of the ok button depending if the name is
406 * already used or not. 409 * already used or not.
407 * @param {string} mode A label that specifies the type of dialog box which 410 * @param {string} mode A label that specifies the type of dialog box which
408 * is currently being viewed (i.e. 'create' or 'manage'). 411 * is currently being viewed (i.e. 'create' or 'manage').
409 * @private 412 * @private
410 */ 413 */
411 updateOkButton_: function(mode) { 414 updateOkButton_: function(mode) {
(...skipping 19 matching lines...) Expand all
431 * profile info. 434 * profile info.
432 * @private 435 * @private
433 */ 436 */
434 submitManageChanges_: function() { 437 submitManageChanges_: function() {
435 var name = $('manage-profile-name').value; 438 var name = $('manage-profile-name').value;
436 var iconURL = $('manage-profile-icon-grid').selectedItem; 439 var iconURL = $('manage-profile-icon-grid').selectedItem;
437 440
438 chrome.send('setProfileIconAndName', 441 chrome.send('setProfileIconAndName',
439 [this.profileInfo_.filePath, iconURL, name]); 442 [this.profileInfo_.filePath, iconURL, name]);
440 if (name != this.profileInfo_.name) 443 if (name != this.profileInfo_.name)
441 options.ManagedUserListData.resetPromise(); 444 options.SupervisedUserListData.resetPromise();
442 }, 445 },
443 446
444 /** 447 /**
445 * Called when the user clicks "OK" or hits enter. Creates the profile 448 * Called when the user clicks "OK" or hits enter. Creates the profile
446 * using the information in the dialog. 449 * using the information in the dialog.
447 * @private 450 * @private
448 */ 451 */
449 submitCreateProfile_: function() { 452 submitCreateProfile_: function() {
450 // This is visual polish: the UI to access this should be disabled for 453 // This is visual polish: the UI to access this should be disabled for
451 // managed users, and the back end will prevent user creation anyway. 454 // supervised users, and the back end will prevent user creation anyway.
452 if (this.profileInfo_ && this.profileInfo_.isManaged) 455 if (this.profileInfo_ && this.profileInfo_.isSupervised)
453 return; 456 return;
454 457
455 this.hideErrorBubble_('create'); 458 this.hideErrorBubble_('create');
456 CreateProfileOverlay.updateCreateInProgress(true); 459 CreateProfileOverlay.updateCreateInProgress(true);
457 460
458 // Get the user's chosen name and icon, or default if they do not 461 // Get the user's chosen name and icon, or default if they do not
459 // wish to customize their profile. 462 // wish to customize their profile.
460 var name = $('create-profile-name').value; 463 var name = $('create-profile-name').value;
461 var iconUrl = $('create-profile-icon-grid').selectedItem; 464 var iconUrl = $('create-profile-icon-grid').selectedItem;
462 var createShortcut = $('create-shortcut').checked; 465 var createShortcut = $('create-shortcut').checked;
463 var isManaged = $('create-profile-managed').checked; 466 var isSupervised = $('create-profile-supervised').checked;
464 var existingManagedUserId = ''; 467 var existingSupervisedUserId = '';
465 468
466 // 'createProfile' is handled by the CreateProfileHandler. 469 // 'createProfile' is handled by the CreateProfileHandler.
467 chrome.send('createProfile', 470 chrome.send('createProfile',
468 [name, iconUrl, createShortcut, 471 [name, iconUrl, createShortcut,
469 isManaged, existingManagedUserId]); 472 isSupervised, existingSupervisedUserId]);
470 }, 473 },
471 474
472 /** 475 /**
473 * Called when the selected icon in the icon grid changes. 476 * Called when the selected icon in the icon grid changes.
474 * @param {string} mode A label that specifies the type of dialog box which 477 * @param {string} mode A label that specifies the type of dialog box which
475 * is currently being viewed (i.e. 'create' or 'manage'). 478 * is currently being viewed (i.e. 'create' or 'manage').
476 * @private 479 * @private
477 */ 480 */
478 onIconGridSelectionChanged_: function(mode) { 481 onIconGridSelectionChanged_: function(mode) {
479 var iconURL = $(mode + '-profile-icon-grid').selectedItem; 482 var iconURL = $(mode + '-profile-icon-grid').selectedItem;
(...skipping 19 matching lines...) Expand all
499 * @private 502 * @private
500 */ 503 */
501 prepareForManageDialog_: function() { 504 prepareForManageDialog_: function() {
502 chrome.send('refreshGaiaPicture'); 505 chrome.send('refreshGaiaPicture');
503 var profileInfo = BrowserOptions.getCurrentProfile(); 506 var profileInfo = BrowserOptions.getCurrentProfile();
504 ManageProfileOverlay.setProfileInfo(profileInfo, 'manage'); 507 ManageProfileOverlay.setProfileInfo(profileInfo, 'manage');
505 $('manage-profile-overlay-create').hidden = true; 508 $('manage-profile-overlay-create').hidden = true;
506 $('manage-profile-overlay-manage').hidden = false; 509 $('manage-profile-overlay-manage').hidden = false;
507 $('manage-profile-overlay-delete').hidden = true; 510 $('manage-profile-overlay-delete').hidden = true;
508 $('manage-profile-overlay-disconnect-managed').hidden = true; 511 $('manage-profile-overlay-disconnect-managed').hidden = true;
509 $('manage-profile-name').disabled = profileInfo.isManaged; 512 $('manage-profile-name').disabled = profileInfo.isSupervised;
510 this.hideErrorBubble_('manage'); 513 this.hideErrorBubble_('manage');
511 }, 514 },
512 515
513 /** 516 /**
514 * Display the "Manage Profile" dialog. 517 * Display the "Manage Profile" dialog.
515 * @private 518 * @private
516 */ 519 */
517 showManageDialog_: function() { 520 showManageDialog_: function() {
518 this.prepareForManageDialog_(); 521 this.prepareForManageDialog_();
519 OptionsPage.navigateToPage('manageProfile'); 522 OptionsPage.navigateToPage('manageProfile');
520 }, 523 },
521 524
522 /** 525 /**
523 * Display the "Delete Profile" dialog. 526 * Display the "Delete Profile" dialog.
524 * @param {Object} profileInfo The profile object of the profile to delete. 527 * @param {Object} profileInfo The profile object of the profile to delete.
525 * @private 528 * @private
526 */ 529 */
527 showDeleteDialog_: function(profileInfo) { 530 showDeleteDialog_: function(profileInfo) {
528 if (BrowserOptions.getCurrentProfile().isManaged) 531 if (BrowserOptions.getCurrentProfile().isSupervised)
529 return; 532 return;
530 533
531 ManageProfileOverlay.setProfileInfo(profileInfo, 'manage'); 534 ManageProfileOverlay.setProfileInfo(profileInfo, 'manage');
532 $('manage-profile-overlay-create').hidden = true; 535 $('manage-profile-overlay-create').hidden = true;
533 $('manage-profile-overlay-manage').hidden = true; 536 $('manage-profile-overlay-manage').hidden = true;
534 $('manage-profile-overlay-delete').hidden = false; 537 $('manage-profile-overlay-delete').hidden = false;
535 $('manage-profile-overlay-disconnect-managed').hidden = true; 538 $('manage-profile-overlay-disconnect-managed').hidden = true;
536 $('delete-profile-icon').style.content = 539 $('delete-profile-icon').style.content =
537 getProfileAvatarIcon(profileInfo.iconURL); 540 getProfileAvatarIcon(profileInfo.iconURL);
538 $('delete-profile-text').textContent = 541 $('delete-profile-text').textContent =
539 loadTimeData.getStringF('deleteProfileMessage', 542 loadTimeData.getStringF('deleteProfileMessage',
540 elide(profileInfo.name, /* maxLength */ 50)); 543 elide(profileInfo.name, /* maxLength */ 50));
541 $('delete-managed-profile-addendum').hidden = !profileInfo.isManaged; 544 $('delete-supervised-profile-addendum').hidden =
545 !profileInfo.isSupervised;
542 546
543 // Because this dialog isn't useful when refreshing or as part of the 547 // Because this dialog isn't useful when refreshing or as part of the
544 // history, don't create a history entry for it when showing. 548 // history, don't create a history entry for it when showing.
545 OptionsPage.showPageByName('manageProfile', false); 549 OptionsPage.showPageByName('manageProfile', false);
546 }, 550 },
547 551
548 /** 552 /**
549 * Display the "Disconnect Managed Profile" dialog. 553 * Display the "Disconnect Managed Profile" dialog.
550 * @private 554 * @private
551 */ 555 */
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
604 CreateProfileOverlay.prototype = { 608 CreateProfileOverlay.prototype = {
605 // Inherit from ManageProfileOverlay. 609 // Inherit from ManageProfileOverlay.
606 __proto__: ManageProfileOverlay.prototype, 610 __proto__: ManageProfileOverlay.prototype,
607 611
608 // The signed-in email address of the current profile, or empty if they're 612 // The signed-in email address of the current profile, or empty if they're
609 // not signed in. 613 // not signed in.
610 signedInEmail_: '', 614 signedInEmail_: '',
611 615
612 /** @override */ 616 /** @override */
613 canShowPage: function() { 617 canShowPage: function() {
614 return !BrowserOptions.getCurrentProfile().isManaged; 618 return !BrowserOptions.getCurrentProfile().isSupervised;
615 }, 619 },
616 620
617 /** 621 /**
618 * Configures the overlay to the "create user" mode. 622 * Configures the overlay to the "create user" mode.
619 * @override 623 * @override
620 */ 624 */
621 didShowPage: function() { 625 didShowPage: function() {
622 chrome.send('requestCreateProfileUpdate'); 626 chrome.send('requestCreateProfileUpdate');
623 chrome.send('requestDefaultProfileIcons', ['create']); 627 chrome.send('requestDefaultProfileIcons', ['create']);
624 chrome.send('requestNewProfileDefaults'); 628 chrome.send('requestNewProfileDefaults');
625 629
626 $('manage-profile-overlay-create').hidden = false; 630 $('manage-profile-overlay-create').hidden = false;
627 $('manage-profile-overlay-manage').hidden = true; 631 $('manage-profile-overlay-manage').hidden = true;
628 $('manage-profile-overlay-delete').hidden = true; 632 $('manage-profile-overlay-delete').hidden = true;
629 $('manage-profile-overlay-disconnect-managed').hidden = true; 633 $('manage-profile-overlay-disconnect-managed').hidden = true;
630 $('create-profile-instructions').textContent = 634 $('create-profile-instructions').textContent =
631 loadTimeData.getStringF('createProfileInstructions'); 635 loadTimeData.getStringF('createProfileInstructions');
632 this.hideErrorBubble_(); 636 this.hideErrorBubble_();
633 this.updateCreateInProgress_(false); 637 this.updateCreateInProgress_(false);
634 638
635 var shortcutsEnabled = loadTimeData.getBoolean('profileShortcutsEnabled'); 639 var shortcutsEnabled = loadTimeData.getBoolean('profileShortcutsEnabled');
636 $('create-shortcut-container').hidden = !shortcutsEnabled; 640 $('create-shortcut-container').hidden = !shortcutsEnabled;
637 $('create-shortcut').checked = shortcutsEnabled; 641 $('create-shortcut').checked = shortcutsEnabled;
638 642
639 $('create-profile-name-label').hidden = true; 643 $('create-profile-name-label').hidden = true;
640 $('create-profile-name').hidden = true; 644 $('create-profile-name').hidden = true;
641 $('create-profile-ok').disabled = true; 645 $('create-profile-ok').disabled = true;
642 646
643 $('create-profile-managed').checked = false; 647 $('create-profile-supervised').checked = false;
644 $('import-existing-managed-user-link').hidden = true; 648 $('import-existing-supervised-user-link').hidden = true;
645 $('create-profile-managed').onchange = function() { 649 $('create-profile-supervised').onchange = function() {
646 ManageProfileOverlay.getInstance().updateCreateOrImport_('create'); 650 ManageProfileOverlay.getInstance().updateCreateOrImport_('create');
647 }; 651 };
648 $('create-profile-managed-signed-in').disabled = true; 652 $('create-profile-supervised-signed-in').disabled = true;
649 $('create-profile-managed-signed-in').hidden = true; 653 $('create-profile-supervised-signed-in').hidden = true;
650 $('create-profile-managed-not-signed-in').hidden = true; 654 $('create-profile-supervised-not-signed-in').hidden = true;
651 655
652 this.profileNameIsDefault_ = false; 656 this.profileNameIsDefault_ = false;
653 }, 657 },
654 658
655 /** @override */ 659 /** @override */
656 handleCancel: function() { 660 handleCancel: function() {
657 this.cancelCreateProfile_(); 661 this.cancelCreateProfile_();
658 }, 662 },
659 663
660 /** @override */ 664 /** @override */
(...skipping 11 matching lines...) Expand all
672 /** 676 /**
673 * Updates the UI when a profile create step begins or ends. 677 * Updates the UI when a profile create step begins or ends.
674 * Note that hideErrorBubble_() also enables the "OK" button, so it 678 * Note that hideErrorBubble_() also enables the "OK" button, so it
675 * must be called before this function if both are used. 679 * must be called before this function if both are used.
676 * @param {boolean} inProgress True if the UI should be updated to show that 680 * @param {boolean} inProgress True if the UI should be updated to show that
677 * profile creation is now in progress. 681 * profile creation is now in progress.
678 * @private 682 * @private
679 */ 683 */
680 updateCreateInProgress_: function(inProgress) { 684 updateCreateInProgress_: function(inProgress) {
681 this.createInProgress_ = inProgress; 685 this.createInProgress_ = inProgress;
682 this.updateCreateManagedUserCheckbox_(); 686 this.updateCreateSupervisedUserCheckbox_();
683 687
684 $('create-profile-icon-grid').disabled = inProgress; 688 $('create-profile-icon-grid').disabled = inProgress;
685 $('create-profile-name').disabled = inProgress; 689 $('create-profile-name').disabled = inProgress;
686 $('create-shortcut').disabled = inProgress; 690 $('create-shortcut').disabled = inProgress;
687 $('create-profile-ok').disabled = inProgress; 691 $('create-profile-ok').disabled = inProgress;
688 $('import-existing-managed-user-link').disabled = inProgress; 692 $('import-existing-supervised-user-link').disabled = inProgress;
689 693
690 $('create-profile-throbber').hidden = !inProgress; 694 $('create-profile-throbber').hidden = !inProgress;
691 }, 695 },
692 696
693 /** 697 /**
694 * Cancels the creation of the a profile. It is safe to call this even 698 * Cancels the creation of the a profile. It is safe to call this even
695 * when no profile is in the process of being created. 699 * when no profile is in the process of being created.
696 * @private 700 * @private
697 */ 701 */
698 cancelCreateProfile_: function() { 702 cancelCreateProfile_: function() {
(...skipping 25 matching lines...) Expand all
724 this.showErrorBubble_(warning); 728 this.showErrorBubble_(warning);
725 }, 729 },
726 730
727 /** 731 /**
728 * For new supervised users, shows a confirmation page after successfully 732 * For new supervised users, shows a confirmation page after successfully
729 * creating a new profile; otherwise, the handler will open a new window. 733 * creating a new profile; otherwise, the handler will open a new window.
730 * @param {Object} profileInfo An object of the form: 734 * @param {Object} profileInfo An object of the form:
731 * profileInfo = { 735 * profileInfo = {
732 * name: "Profile Name", 736 * name: "Profile Name",
733 * filePath: "/path/to/profile/data/on/disk" 737 * filePath: "/path/to/profile/data/on/disk"
734 * isManaged: (true|false), 738 * isSupervised: (true|false),
735 * }; 739 * };
736 * @private 740 * @private
737 */ 741 */
738 onSuccess_: function(profileInfo) { 742 onSuccess_: function(profileInfo) {
739 this.updateCreateInProgress_(false); 743 this.updateCreateInProgress_(false);
740 OptionsPage.closeOverlay(); 744 OptionsPage.closeOverlay();
741 if (profileInfo.isManaged) { 745 if (profileInfo.isSupervised) {
742 options.ManagedUserListData.resetPromise(); 746 options.SupervisedUserListData.resetPromise();
743 profileInfo.custodianEmail = this.signedInEmail_; 747 profileInfo.custodianEmail = this.signedInEmail_;
744 ManagedUserCreateConfirmOverlay.setProfileInfo(profileInfo); 748 SupervisedUserCreateConfirmOverlay.setProfileInfo(profileInfo);
745 OptionsPage.showPageByName('managedUserCreateConfirm', false); 749 OptionsPage.showPageByName('supervisedUserCreateConfirm', false);
746 BrowserOptions.updateManagesSupervisedUsers(true); 750 BrowserOptions.updateManagesSupervisedUsers(true);
747 } 751 }
748 }, 752 },
749 753
750 /** 754 /**
751 * Updates the signed-in or not-signed-in UI when in create mode. Called by 755 * Updates the signed-in or not-signed-in UI when in create mode. Called by
752 * the handler in response to the 'requestCreateProfileUpdate' message. 756 * the handler in response to the 'requestCreateProfileUpdate' message.
753 * updateManagedUsersAllowed_ is expected to be called after this is, and 757 * updateSupervisedUsersAllowed_ is expected to be called after this is, and
754 * will update additional UI elements. 758 * will update additional UI elements.
755 * @param {string} email The email address of the currently signed-in user. 759 * @param {string} email The email address of the currently signed-in user.
756 * An empty string indicates that the user is not signed in. 760 * An empty string indicates that the user is not signed in.
757 * @param {boolean} hasError Whether the user's sign-in credentials are 761 * @param {boolean} hasError Whether the user's sign-in credentials are
758 * still valid. 762 * still valid.
759 * @private 763 * @private
760 */ 764 */
761 updateSignedInStatus_: function(email, hasError) { 765 updateSignedInStatus_: function(email, hasError) {
762 this.signedInEmail_ = email; 766 this.signedInEmail_ = email;
763 this.hasError_ = hasError; 767 this.hasError_ = hasError;
764 var isSignedIn = email !== ''; 768 var isSignedIn = email !== '';
765 $('create-profile-managed-signed-in').hidden = !isSignedIn; 769 $('create-profile-supervised-signed-in').hidden = !isSignedIn;
766 $('create-profile-managed-not-signed-in').hidden = isSignedIn; 770 $('create-profile-supervised-not-signed-in').hidden = isSignedIn;
767 771
768 if (isSignedIn) { 772 if (isSignedIn) {
769 var accountDetailsOutOfDate = 773 var accountDetailsOutOfDate =
770 $('create-profile-managed-account-details-out-of-date-label'); 774 $('create-profile-supervised-account-details-out-of-date-label');
771 accountDetailsOutOfDate.textContent = loadTimeData.getStringF( 775 accountDetailsOutOfDate.textContent = loadTimeData.getStringF(
772 'manageProfilesManagedAccountDetailsOutOfDate', email); 776 'manageProfilesSupervisedAccountDetailsOutOfDate', email);
773 accountDetailsOutOfDate.hidden = !hasError; 777 accountDetailsOutOfDate.hidden = !hasError;
774 778
775 $('create-profile-managed-signed-in-label').textContent = 779 $('create-profile-supervised-signed-in-label').textContent =
776 loadTimeData.getStringF( 780 loadTimeData.getStringF(
777 'manageProfilesManagedSignedInLabel', email); 781 'manageProfilesSupervisedSignedInLabel', email);
778 $('create-profile-managed-signed-in-label').hidden = hasError; 782 $('create-profile-supervised-signed-in-label').hidden = hasError;
779 783
780 $('create-profile-managed-sign-in-again-link').hidden = !hasError; 784 $('create-profile-supervised-sign-in-again-link').hidden = !hasError;
781 $('create-profile-managed-signed-in-learn-more-link').hidden = hasError; 785 $('create-profile-supervised-signed-in-learn-more-link').hidden =
786 hasError;
782 } 787 }
783 788
784 this.updateImportExistingManagedUserLink_(isSignedIn && !hasError); 789 this.updateImportExistingSupervisedUserLink_(isSignedIn && !hasError);
785 }, 790 },
786 791
787 /** 792 /**
788 * Enables/disables the 'import existing managed users' link button. 793 * Enables/disables the 'import existing supervised users' link button.
789 * It also updates the button text. 794 * It also updates the button text.
790 * @param {boolean} enable True to enable the link button and 795 * @param {boolean} enable True to enable the link button and
791 * false otherwise. 796 * false otherwise.
792 * @private 797 * @private
793 */ 798 */
794 updateImportExistingManagedUserLink_: function(enable) { 799 updateImportExistingSupervisedUserLink_: function(enable) {
795 var importManagedUserElement = $('import-existing-managed-user-link'); 800 var importSupervisedUserElement =
796 importManagedUserElement.hidden = false; 801 $('import-existing-supervised-user-link');
797 importManagedUserElement.disabled = !enable || this.createInProgress_; 802 importSupervisedUserElement.hidden = false;
798 importManagedUserElement.textContent = enable ? 803 importSupervisedUserElement.disabled = !enable || this.createInProgress_;
799 loadTimeData.getString('importExistingManagedUserLink') : 804 importSupervisedUserElement.textContent = enable ?
800 loadTimeData.getString('signInToImportManagedUsers'); 805 loadTimeData.getString('importExistingSupervisedUserLink') :
806 loadTimeData.getString('signInToImportSupervisedUsers');
801 }, 807 },
802 808
803 /** 809 /**
804 * Sets whether creating managed users is allowed or not. Called by the 810 * Sets whether creating supervised users is allowed or not. Called by the
805 * handler in response to the 'requestCreateProfileUpdate' message or a 811 * handler in response to the 'requestCreateProfileUpdate' message or a
806 * change in the (policy-controlled) pref that prohibits creating managed 812 * change in the (policy-controlled) pref that prohibits creating supervised
807 * users, after the signed-in status has been updated. 813 * users, after the signed-in status has been updated.
808 * @param {boolean} allowed True if creating managed users should be 814 * @param {boolean} allowed True if creating supervised users should be
809 * allowed. 815 * allowed.
810 * @private 816 * @private
811 */ 817 */
812 updateManagedUsersAllowed_: function(allowed) { 818 updateSupervisedUsersAllowed_: function(allowed) {
813 this.managedUsersAllowed_ = allowed; 819 this.supervisedUsersAllowed_ = allowed;
814 this.updateCreateManagedUserCheckbox_(); 820 this.updateCreateSupervisedUserCheckbox_();
815 821
816 $('create-profile-managed-not-signed-in-link').hidden = !allowed; 822 $('create-profile-supervised-not-signed-in-link').hidden = !allowed;
817 if (!allowed) { 823 if (!allowed) {
818 $('create-profile-managed-indicator').setAttribute('controlled-by', 824 $('create-profile-supervised-indicator').setAttribute('controlled-by',
819 'policy'); 825 'policy');
820 } else { 826 } else {
821 $('create-profile-managed-indicator').removeAttribute('controlled-by'); 827 $('create-profile-supervised-indicator').removeAttribute(
828 'controlled-by');
822 } 829 }
823 }, 830 },
824 831
825 /** 832 /**
826 * Updates the status of the "create managed user" checkbox. Called from 833 * Updates the status of the "create supervised user" checkbox. Called from
827 * updateManagedUsersAllowed_() or updateCreateInProgress_(). 834 * updateSupervisedUsersAllowed_() or updateCreateInProgress_().
828 * updateSignedInStatus_() does not call this method directly, because it 835 * updateSignedInStatus_() does not call this method directly, because it
829 * will be followed by a call to updateManagedUsersAllowed_(). 836 * will be followed by a call to updateSupervisedUsersAllowed_().
830 * @private 837 * @private
831 */ 838 */
832 updateCreateManagedUserCheckbox_: function() { 839 updateCreateSupervisedUserCheckbox_: function() {
833 $('create-profile-managed').disabled = 840 $('create-profile-supervised').disabled =
834 !this.managedUsersAllowed_ || this.createInProgress_ || 841 !this.supervisedUsersAllowed_ || this.createInProgress_ ||
835 this.signedInEmail_ == '' || this.hasError_; 842 this.signedInEmail_ == '' || this.hasError_;
836 }, 843 },
837 }; 844 };
838 845
839 // Forward public APIs to private implementations. 846 // Forward public APIs to private implementations.
840 [ 847 [
841 'cancelCreateProfile', 848 'cancelCreateProfile',
842 'onError', 849 'onError',
843 'onSuccess', 850 'onSuccess',
844 'onWarning', 851 'onWarning',
845 'updateCreateInProgress', 852 'updateCreateInProgress',
846 'updateManagedUsersAllowed',
847 'updateSignedInStatus', 853 'updateSignedInStatus',
854 'updateSupervisedUsersAllowed',
848 ].forEach(function(name) { 855 ].forEach(function(name) {
849 CreateProfileOverlay[name] = function() { 856 CreateProfileOverlay[name] = function() {
850 var instance = CreateProfileOverlay.getInstance(); 857 var instance = CreateProfileOverlay.getInstance();
851 return instance[name + '_'].apply(instance, arguments); 858 return instance[name + '_'].apply(instance, arguments);
852 }; 859 };
853 }); 860 });
854 861
855 // Export 862 // Export
856 return { 863 return {
857 ManageProfileOverlay: ManageProfileOverlay, 864 ManageProfileOverlay: ManageProfileOverlay,
858 CreateProfileOverlay: CreateProfileOverlay, 865 CreateProfileOverlay: CreateProfileOverlay,
859 }; 866 };
860 }); 867 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698