diff options
author | xiyuan@chromium.org <xiyuan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-02 06:06:26 +0000 |
---|---|---|
committer | xiyuan@chromium.org <xiyuan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-02 06:06:26 +0000 |
commit | 1d1debc010530ee4d754a168630f84fb01e5f02e (patch) | |
tree | e24242eea0cf41601e41b66f36627bc90c5a4a41 /chrome/browser/resources | |
parent | 5bb4beab3e00a329cfe7d172578ea15a3d978bcf (diff) | |
download | chromium_src-1d1debc010530ee4d754a168630f84fb01e5f02e.zip chromium_src-1d1debc010530ee4d754a168630f84fb01e5f02e.tar.gz chromium_src-1d1debc010530ee4d754a168630f84fb01e5f02e.tar.bz2 |
Only enable users DOMUI if current user is owner.
BUG=chromium-os:968
TEST=In ChromeOS, users DOMUI should only be enabled for owner.
Review URL: http://codereview.chromium.org/3284008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58325 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/resources')
3 files changed, 34 insertions, 2 deletions
diff --git a/chrome/browser/resources/options/chromeos_accounts_options.js b/chrome/browser/resources/options/chromeos_accounts_options.js index 3adb4b7..72e63e1 100644 --- a/chrome/browser/resources/options/chromeos_accounts_options.js +++ b/chrome/browser/resources/options/chromeos_accounts_options.js @@ -32,12 +32,16 @@ cr.define('options', function() { OptionsPage.prototype.initializePage.call(this); // Set up accounts page. - options.accounts.UserList.decorate($('userList')); + var userList = $('userList'); + options.accounts.UserList.decorate(userList); var userNameEdit = $('userNameEdit'); options.accounts.UserNameEdit.decorate(userNameEdit); userNameEdit.addEventListener('add', this.handleAddUser_); + userList.disabled = + userNameEdit.disabled = !AccountsOptions.currentUserIsOwner(); + this.addEventListener('visibleChange', this.handleVisibleChange_); }, @@ -51,7 +55,7 @@ cr.define('options', function() { handleVisibleChange_: function(e) { if (!this.userListInitalized_ && this.visible) { this.userListInitalized_ = true; - userList.redraw(); + $('userList').redraw(); } }, @@ -65,6 +69,13 @@ cr.define('options', function() { } }; + /** + * Returns whether the current user is owner or not. + */ + AccountsOptions.currentUserIsOwner = function() { + return localStrings.getString('current_user_is_owner') == 'true'; + }; + // Export return { AccountsOptions: AccountsOptions diff --git a/chrome/browser/resources/options/chromeos_accounts_options_page.css b/chrome/browser/resources/options/chromeos_accounts_options_page.css index ceb4a9e..f92132f 100644 --- a/chrome/browser/resources/options/chromeos_accounts_options_page.css +++ b/chrome/browser/resources/options/chromeos_accounts_options_page.css @@ -58,6 +58,21 @@ html[dir=rtl] .remove-user-button { height: 166px; } +#userList[disabled], +#userList[disabled] > [selected], +#userList[disabled] > :hover { + border-color: hsl(0, 0%, 85%); +} + +#userList[disabled] > [selected], +#userList[disabled] > :hover { + background-color: hsl(0,0%,90%); +} + +#userList[disabled] .remove-user-button { + visibility: hidden; +} + #userNameEdit { border: 1px solid lightgrey; width: 366px; diff --git a/chrome/browser/resources/options/chromeos_accounts_user_list.js b/chrome/browser/resources/options/chromeos_accounts_user_list.js index c57f290..1f37f61 100644 --- a/chrome/browser/resources/options/chromeos_accounts_user_list.js +++ b/chrome/browser/resources/options/chromeos_accounts_user_list.js @@ -119,6 +119,12 @@ cr.define('options.accounts', function() { }; /** + * Whether the user list is disabled. Only used for display purpose. + * @type {boolean} + */ + cr.defineProperty(UserList, 'disabled', cr.PropertyKind.BOOL_ATTR); + + /** * Creates a new user list item. * @param user The user account this represents. * @constructor |