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

Side by Side Diff: chrome/browser/resources/options2/browser_options.js

Issue 9513016: uber managed pref banners (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: self review 2 Created 8 years, 9 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 var RepeatingButton = cr.ui.RepeatingButton; 8 var RepeatingButton = cr.ui.RepeatingButton;
9 9
10 // 10 //
(...skipping 234 matching lines...) Expand 10 before | Expand all | Expand 10 after
245 /** 245 /**
246 * Handler for messages sent from the main uber page. 246 * Handler for messages sent from the main uber page.
247 * @param {Event} e The 'message' event from the uber page. 247 * @param {Event} e The 'message' event from the uber page.
248 */ 248 */
249 handleWindowMessage_: function(e) { 249 handleWindowMessage_: function(e) {
250 if (e.data.method == 'frameSelected') 250 if (e.data.method == 'frameSelected')
251 $('search-field').focus(); 251 $('search-field').focus();
252 }, 252 },
253 253
254 /** 254 /**
255 * Updates managed banner visibility state. This function iterates over
256 * all input fields of all subpages and if any of these is marked as managed
257 * it triggers the managed banner to be visible.
258 * @private
259 */
260 updateManagedBannerVisibility_: function() {
261 var bannerDiv = $('managed-prefs-banner');
262
263 var controlledByPolicy = false;
264 var controlledByExtension = false;
265 var inputElements = document.querySelectorAll('input[controlled-by]');
266 var mainPages = document.querySelectorAll('#page-container .page');
267 for (var i = 0, len = inputElements.length; i < len; i++) {
268 if (inputElements[i].controlledBy == 'policy')
269 controlledByPolicy = true;
270 else if (inputElements[i].controlledBy == 'extension')
271 controlledByExtension = true;
272 }
273 if (!controlledByPolicy && !controlledByExtension) {
274 bannerDiv.hidden = true;
275 for (var i = 0; i < mainPages.length; i++)
276 mainPages[i].classList.remove('under-managed-prefs-banner');
277 } else {
278 bannerDiv.hidden = false;
279 for (var i = 0; i < mainPages.length; i++)
280 mainPages[i].classList.add('under-managed-prefs-banner');
281
282 if (controlledByPolicy && !controlledByExtension) {
283 $('managed-prefs-text').textContent =
284 templateData.policyManagedPrefsBannerText;
285 } else if (!controlledByPolicy && controlledByExtension) {
286 $('managed-prefs-text').textContent =
287 templateData.extensionManagedPrefsBannerText;
288 } else if (controlledByPolicy && controlledByExtension) {
289 $('managed-prefs-text').textContent =
290 templateData.policyAndExtensionManagedPrefsBannerText;
291 }
292 }
293 },
294
295 /**
296 * Initializes a button for controlling screen brightness. 255 * Initializes a button for controlling screen brightness.
297 * @param {string} id Button ID. 256 * @param {string} id Button ID.
298 * @param {string} callback Name of the callback function. 257 * @param {string} callback Name of the callback function.
299 */ 258 */
300 initBrightnessButton_: function(id, callback) { 259 initBrightnessButton_: function(id, callback) {
301 var button = $(id); 260 var button = $(id);
302 cr.ui.decorate(button, RepeatingButton); 261 cr.ui.decorate(button, RepeatingButton);
303 button.repeatInterval = 300; 262 button.repeatInterval = 300;
304 button.addEventListener(RepeatingButton.Event.BUTTON_HELD, function(e) { 263 button.addEventListener(RepeatingButton.Event.BUTTON_HELD, function(e) {
305 chrome.send(callback); 264 chrome.send(callback);
(...skipping 336 matching lines...) Expand 10 before | Expand all | Expand 10 after
642 'getStartStopSyncButton', 601 'getStartStopSyncButton',
643 'setGtkThemeButtonEnabled', 602 'setGtkThemeButtonEnabled',
644 'setInstantFieldTrialStatus', 603 'setInstantFieldTrialStatus',
645 'setProfilesInfo', 604 'setProfilesInfo',
646 'setProfilesSectionVisible', 605 'setProfilesSectionVisible',
647 'setThemesResetButtonEnabled', 606 'setThemesResetButtonEnabled',
648 'updateAccountPicture', 607 'updateAccountPicture',
649 'updateAutocompleteSuggestions', 608 'updateAutocompleteSuggestions',
650 'updateAutoLaunchState', 609 'updateAutoLaunchState',
651 'updateHomePageLabel', 610 'updateHomePageLabel',
652 'updateManagedBannerVisibility',
653 'updateSearchEngines', 611 'updateSearchEngines',
654 'updateSyncState', 612 'updateSyncState',
655 'updateStartupPages', 613 'updateStartupPages',
656 ].forEach(function(name) { 614 ].forEach(function(name) {
657 BrowserOptions[name] = function() { 615 BrowserOptions[name] = function() {
658 var instance = BrowserOptions.getInstance(); 616 var instance = BrowserOptions.getInstance();
659 return instance[name + '_'].apply(instance, arguments); 617 return instance[name + '_'].apply(instance, arguments);
660 }; 618 };
661 }); 619 });
662 620
(...skipping 15 matching lines...) Expand all
678 BrowserOptions.getLoggedInUsername = function() { 636 BrowserOptions.getLoggedInUsername = function() {
679 return BrowserOptions.getInstance().username_; 637 return BrowserOptions.getInstance().username_;
680 }; 638 };
681 } 639 }
682 640
683 // Export 641 // Export
684 return { 642 return {
685 BrowserOptions: BrowserOptions 643 BrowserOptions: BrowserOptions
686 }; 644 };
687 }); 645 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698