| Index: chrome/browser/resources/options/options_page.js
|
| diff --git a/chrome/browser/resources/options/options_page.js b/chrome/browser/resources/options/options_page.js
|
| index beaa9999ea1030873751c4975ea9f54edfe8f2e4..ffed188c7bd5565e6020eda23a5c50d466bb18c8 100644
|
| --- a/chrome/browser/resources/options/options_page.js
|
| +++ b/chrome/browser/resources/options/options_page.js
|
| @@ -21,7 +21,6 @@ cr.define('options', function() {
|
| this.pageDivName = pageDivName;
|
| this.pageDiv = $(this.pageDivName);
|
| this.tab = null;
|
| - this.managed = false;
|
| }
|
|
|
| const SUBPAGE_SHEET_COUNT = 2;
|
| @@ -808,16 +807,6 @@ cr.define('options', function() {
|
| initializePage: function() {},
|
|
|
| /**
|
| - * Sets managed banner visibility state.
|
| - */
|
| - setManagedBannerVisibility: function(visible) {
|
| - this.managed = visible;
|
| - if (this.visible) {
|
| - this.updateManagedBannerVisibility();
|
| - }
|
| - },
|
| -
|
| - /**
|
| * Updates managed banner visibility state. This function iterates over
|
| * all input fields of a window and if any of these is marked as managed
|
| * it triggers the managed banner to be visible. The banner can be enforced
|
| @@ -827,23 +816,32 @@ cr.define('options', function() {
|
| updateManagedBannerVisibility: function() {
|
| var bannerDiv = $('managed-prefs-banner');
|
|
|
| - var hasManaged = this.managed;
|
| - if (!hasManaged) {
|
| - var inputElements = this.pageDiv.querySelectorAll('input');
|
| - for (var i = 0, len = inputElements.length; i < len; i++) {
|
| - if (inputElements[i].managed) {
|
| - hasManaged = true;
|
| - break;
|
| - }
|
| - }
|
| + var controlledByPolicy = false;
|
| + var controlledByExtension = false;
|
| + var inputElements = this.pageDiv.querySelectorAll('input[controlledBy]');
|
| + for (var i = 0, len = inputElements.length; i < len; i++) {
|
| + if (inputElements[i].controlledBy == 'policy')
|
| + controlledByPolicy = true;
|
| + else if (inputElements[i].controlledBy == 'extension')
|
| + controlledByExtension = true;
|
| }
|
| - if (hasManaged) {
|
| - bannerDiv.hidden = false;
|
| - var height = window.getComputedStyle($('managed-prefs-banner')).height;
|
| - $('subpage-backdrop').style.top = height;
|
| - } else {
|
| + if (!controlledByPolicy && !controlledByExtension) {
|
| bannerDiv.hidden = true;
|
| $('subpage-backdrop').style.top = '0';
|
| + } else {
|
| + bannerDiv.hidden = false;
|
| + var height = window.getComputedStyle(bannerDiv).height;
|
| + $('subpage-backdrop').style.top = height;
|
| + if (controlledByPolicy && !controlledByExtension) {
|
| + $('managed-prefs-text').textContent =
|
| + templateData.policyManagedPrefsBannerText;
|
| + } else if (!controlledByPolicy && controlledByExtension) {
|
| + $('managed-prefs-text').textContent =
|
| + templateData.extensionManagedPrefsBannerText;
|
| + } else if (controlledByPolicy && controlledByExtension) {
|
| + $('managed-prefs-text').textContent =
|
| + templateData.policyAndExtensionManagedPrefsBannerText;
|
| + }
|
| }
|
| },
|
|
|
|
|