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

Unified Diff: chrome/browser/resources/options/managed_user_import.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, 5 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/resources/options/managed_user_import.js
diff --git a/chrome/browser/resources/options/managed_user_import.js b/chrome/browser/resources/options/managed_user_import.js
deleted file mode 100644
index b4db95cb5f6e50e6ae8ad46a753e1126c114e67e..0000000000000000000000000000000000000000
--- a/chrome/browser/resources/options/managed_user_import.js
+++ /dev/null
@@ -1,251 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-cr.define('options', function() {
- var OptionsPage = options.OptionsPage;
- var ArrayDataModel = cr.ui.ArrayDataModel;
-
- /**
- * ManagedUserImportOverlay class.
- * Encapsulated handling of the 'Import existing managed user' overlay page.
- * @constructor
- * @class
- */
- function ManagedUserImportOverlay() {
- var title = loadTimeData.getString('managedUserImportTitle');
- OptionsPage.call(this, 'managedUserImport',
- title, 'managed-user-import');
- };
-
- cr.addSingletonGetter(ManagedUserImportOverlay);
-
- ManagedUserImportOverlay.prototype = {
- // Inherit from OptionsPage.
- __proto__: OptionsPage.prototype,
-
- /** @override */
- canShowPage: function() {
- return !BrowserOptions.getCurrentProfile().isManaged;
- },
-
- /** @override */
- initializePage: function() {
- // Call base class implementation to start preference initialization.
- OptionsPage.prototype.initializePage.call(this);
-
- var managedUserList = $('managed-user-list');
- options.managedUserOptions.ManagedUserList.decorate(managedUserList);
-
- var avatarGrid = $('select-avatar-grid');
- options.ProfilesIconGrid.decorate(avatarGrid);
- var avatarIcons = loadTimeData.getValue('avatarIcons');
- avatarGrid.dataModel = new ArrayDataModel(avatarIcons);
-
- managedUserList.addEventListener('change', function(event) {
- var managedUser = managedUserList.selectedItem;
- if (!managedUser)
- return;
-
- $('managed-user-import-ok').disabled =
- managedUserList.selectedItem.onCurrentDevice;
- });
-
- var self = this;
- $('managed-user-import-cancel').onclick = function(event) {
- if (self.inProgress_) {
- self.updateImportInProgress_(false);
-
- // 'cancelCreateProfile' is handled by CreateProfileHandler.
- chrome.send('cancelCreateProfile');
- }
- OptionsPage.closeOverlay();
- };
-
- $('managed-user-import-ok').onclick =
- this.showAvatarGridOrSubmit_.bind(this);
- $('managed-user-select-avatar-ok').onclick =
- this.showAvatarGridOrSubmit_.bind(this);
- },
-
- /**
- * @override
- */
- didShowPage: function() {
- // When the import link is clicked to open this overlay, it is hidden in
- // order to trigger a cursor update. We can show the import link again
- // now. TODO(akuegel): Remove this temporary fix when crbug/246304 is
- // resolved.
- $('import-existing-managed-user-link').hidden = false;
-
- options.ManagedUserListData.requestExistingManagedUsers().then(
- this.receiveExistingManagedUsers_, this.onSigninError_.bind(this));
- options.ManagedUserListData.addObserver(this);
-
- this.updateImportInProgress_(false);
- $('managed-user-import-error-bubble').hidden = true;
- $('managed-user-import-ok').disabled = true;
- this.showAppropriateElements_(/* isSelectAvatarMode */ false);
- },
-
- /**
- * @override
- */
- didClosePage: function() {
- options.ManagedUserListData.removeObserver(this);
- },
-
- /**
- * Shows either the managed user import dom elements or the select avatar
- * dom elements.
- * @param {boolean} isSelectAvatarMode True if the overlay should show the
- * select avatar grid, and false if the overlay should show the managed
- * user list.
- * @private
- */
- showAppropriateElements_: function(isSelectAvatarMode) {
- var avatarElements =
- this.pageDiv.querySelectorAll('.managed-user-select-avatar');
- for (var i = 0; i < avatarElements.length; i++)
- avatarElements[i].hidden = !isSelectAvatarMode;
- var importElements =
- this.pageDiv.querySelectorAll('.managed-user-import');
- for (var i = 0; i < importElements.length; i++)
- importElements[i].hidden = isSelectAvatarMode;
- },
-
- /**
- * Called when the user clicks the "OK" button. In case the managed
- * user being imported has no avatar in sync, it shows the avatar
- * icon grid. In case the avatar grid is visible or the managed user
- * already has an avatar stored in sync, it proceeds with importing
- * the managed user.
- * @private
- */
- showAvatarGridOrSubmit_: function() {
- var managedUser = $('managed-user-list').selectedItem;
- if (!managedUser)
- return;
-
- $('managed-user-import-error-bubble').hidden = true;
-
- if ($('select-avatar-grid').hidden && managedUser.needAvatar) {
- this.showAvatarGridHelper_();
- return;
- }
-
- var avatarUrl = managedUser.needAvatar ?
- $('select-avatar-grid').selectedItem : managedUser.iconURL;
-
- this.updateImportInProgress_(true);
-
- // 'createProfile' is handled by CreateProfileHandler.
- chrome.send('createProfile', [managedUser.name, avatarUrl,
- false, true, managedUser.id]);
- },
-
- /**
- * Hides the 'managed user list' and shows the avatar grid instead.
- * It also updates the overlay text and title to instruct the user
- * to choose an avatar for the supervised user.
- * @private
- */
- showAvatarGridHelper_: function() {
- this.showAppropriateElements_(/* isSelectAvatarMode */ true);
- $('select-avatar-grid').redraw();
- $('select-avatar-grid').selectedItem =
- loadTimeData.getValue('avatarIcons')[0];
- },
-
- /**
- * Updates the UI according to the importing state.
- * @param {boolean} inProgress True to indicate that
- * importing is in progress and false otherwise.
- * @private
- */
- updateImportInProgress_: function(inProgress) {
- this.inProgress_ = inProgress;
- $('managed-user-import-ok').disabled = inProgress;
- $('managed-user-select-avatar-ok').disabled = inProgress;
- $('managed-user-list').disabled = inProgress;
- $('select-avatar-grid').disabled = inProgress;
- $('managed-user-import-throbber').hidden = !inProgress;
- },
-
- /**
- * Sets the data model of the managed user list to |managedUsers|.
- * @param {Array.<Object>} managedUsers An array of managed user objects.
- * Each object is of the form:
- * managedUser = {
- * id: "Managed User ID",
- * name: "Managed User Name",
- * iconURL: "chrome://path/to/icon/image",
- * onCurrentDevice: true or false,
- * needAvatar: true or false
- * }
- * @private
- */
- receiveExistingManagedUsers_: function(managedUsers) {
- managedUsers.sort(function(a, b) {
- if (a.onCurrentDevice != b.onCurrentDevice)
- return a.onCurrentDevice ? 1 : -1;
- return a.name.localeCompare(b.name);
- });
-
- $('managed-user-list').dataModel = new ArrayDataModel(managedUsers);
- if (managedUsers.length == 0) {
- this.onError_(loadTimeData.getString('noExistingManagedUsers'));
- $('managed-user-import-ok').disabled = true;
- } else {
- // Hide the error bubble.
- $('managed-user-import-error-bubble').hidden = true;
- }
- },
-
- onSigninError_: function() {
- $('managed-user-list').dataModel = null;
- this.onError_(loadTimeData.getString('managedUserImportSigninError'));
- },
-
- /**
- * Displays an error message if an error occurs while
- * importing a managed user.
- * Called by BrowserOptions via the BrowserOptionsHandler.
- * @param {string} error The error message to display.
- * @private
- */
- onError_: function(error) {
- var errorBubble = $('managed-user-import-error-bubble');
- errorBubble.hidden = false;
- errorBubble.textContent = error;
- this.updateImportInProgress_(false);
- },
-
- /**
- * Closes the overlay if importing the managed user was successful. Also
- * reset the cached list of managed users in order to get an updated list
- * when the overlay is reopened.
- * @private
- */
- onSuccess_: function() {
- this.updateImportInProgress_(false);
- options.ManagedUserListData.resetPromise();
- OptionsPage.closeAllOverlays();
- },
- };
-
- // Forward public APIs to private implementations.
- [
- 'onSuccess',
- ].forEach(function(name) {
- ManagedUserImportOverlay[name] = function() {
- var instance = ManagedUserImportOverlay.getInstance();
- return instance[name + '_'].apply(instance, arguments);
- };
- });
-
- // Export
- return {
- ManagedUserImportOverlay: ManagedUserImportOverlay,
- };
-});

Powered by Google App Engine
This is Rietveld 408576698