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

Unified Diff: chrome/browser/resources/options2/chromeos/accounts_options.js

Issue 9464053: Hide/Disable several (meaningless) options in Settings uber-page for Guest. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Rename variable Created 8 years, 10 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/options2/chromeos/accounts_options.js
diff --git a/chrome/browser/resources/options2/chromeos/accounts_options.js b/chrome/browser/resources/options2/chromeos/accounts_options.js
index e4c0651a0666e68dc189469b9fed9bb5e057dbce..2a33757411887dea8f021069d916706a62fd8641 100644
--- a/chrome/browser/resources/options2/chromeos/accounts_options.js
+++ b/chrome/browser/resources/options2/chromeos/accounts_options.js
@@ -141,7 +141,7 @@ cr.define('options', function() {
* Returns whether we're currently in guest mode.
*/
AccountsOptions.loggedInAsGuest = function() {
- return localStrings.getString('logged_in_as_guest') == 'true';
+ return localStrings.getString('loggedInAsGuest') == 'true';
};
/**
@@ -160,6 +160,50 @@ cr.define('options', function() {
$('userList').updateAccountPicture(username);
};
+ /**
+ * Disable and mark page elements for Guest mode.
James Hawkins 2012/03/05 17:07:12 nit: Method documentation should be declarative (a
Denis Kuznetsov (DE-MUC) 2012/03/12 10:32:15 Done.
+ * It adds guest-disabled css class to all elements within given subtree,
James Hawkins 2012/03/05 17:07:12 nit: Don't use pronouns (it) in comments; they're
Denis Kuznetsov (DE-MUC) 2012/03/12 10:32:15 Done.
+ * disables interactive elements (input/select/button), and removes href
+ * attribute from <a> elements.
+ *
+ * @param {Element} element Root element of DOM subtree that should be
+ * disabled.
+ */
+ AccountsOptions.disableElementsForGuest = function(element) {
+ AccountsOptions.disableElementForGuest_(element);
+
+ // Walk the tree, searching each ELEMENT node.
+ var walker = document.createTreeWalker(element,
+ NodeFilter.SHOW_ELEMENT,
+ null,
+ false);
+
+ var node = walker.nextNode();
+ while (node) {
+ AccountsOptions.disableElementForGuest_(node);
+ node = walker.nextNode();
+ }
+ };
+
+ /**
+ * Disables single element for Guest mode.
+ * It adds guest-disabled css class, adds disabled attribute for appropriate
James Hawkins 2012/03/05 17:07:12 nit: s/It adds/Adds/
Denis Kuznetsov (DE-MUC) 2012/03/12 10:32:15 Done.
+ * elements (input/select/button), and removes href attribute from
+ * <a> element.
+ *
+ * @private
+ * @param {Element} element Element that should be disabled.
+ */
+ AccountsOptions.disableElementForGuest_ = function(element) {
+ element.classList.add('guest-disabled');
+ if (element.nodeName == 'INPUT' ||
+ element.nodeName == 'SELECT' ||
+ element.nodeName == 'BUTTON')
+ element.disabled = true;
+ if (element.nodeName == 'A')
+ element.removeAttribute('href');
+ };
+
// Export
return {
AccountsOptions: AccountsOptions

Powered by Google App Engine
This is Rietveld 408576698