summaryrefslogtreecommitdiffstats
path: root/chrome/browser/resources
diff options
context:
space:
mode:
authorxiyuan@chromium.org <xiyuan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-09-02 06:06:26 +0000
committerxiyuan@chromium.org <xiyuan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-09-02 06:06:26 +0000
commit1d1debc010530ee4d754a168630f84fb01e5f02e (patch)
treee24242eea0cf41601e41b66f36627bc90c5a4a41 /chrome/browser/resources
parent5bb4beab3e00a329cfe7d172578ea15a3d978bcf (diff)
downloadchromium_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')
-rw-r--r--chrome/browser/resources/options/chromeos_accounts_options.js15
-rw-r--r--chrome/browser/resources/options/chromeos_accounts_options_page.css15
-rw-r--r--chrome/browser/resources/options/chromeos_accounts_user_list.js6
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