Index: chrome/browser/resources/chromeos/arc_support/background.js |
diff --git a/chrome/browser/resources/chromeos/arc_support/background.js b/chrome/browser/resources/chromeos/arc_support/background.js |
index 65a459c0cf210e94a30358978081050282a6f221..a529c45baa38874482c33d847b55c4e7dff5265f 100644 |
--- a/chrome/browser/resources/chromeos/arc_support/background.js |
+++ b/chrome/browser/resources/chromeos/arc_support/background.js |
@@ -110,8 +110,16 @@ function initialize(data, deviceId) { |
loadTimeData.data = data; |
appWindow.contentWindow.i18nTemplate.process(doc, loadTimeData); |
var countryCode = data.countryCode.toLowerCase(); |
- setBackupRestoreMode(data.textBackupRestore, data.backupRestoreEnabled); |
- setLocationServiceMode(data.textLocationService, data.locationServiceEnabled); |
+ hideTermsIfManaged(data.profileManaged); |
+ |
+ doc.getElementById('text-backup-restore').innerHTML = data.textBackupRestore; |
+ doc.getElementById('learn-more-link-backup-restore'). |
+ addEventListener('click', onLearnMore); |
+ |
+ doc.getElementById('text-location-service').innerHTML = |
+ data.textLocationService; |
+ doc.getElementById('learn-more-link-location-service'). |
+ addEventListener('click', onLearnMore); |
var scriptSetCountryCode = 'document.countryCode = \'' + countryCode + '\';'; |
termsView.addContentScripts([ |
@@ -169,32 +177,41 @@ function setMetricsMode(text, canEnable, on) { |
/** |
* Sets current backup and restore mode. |
- * @param {string} text String used to display next to checkbox. |
* @param {boolean} defaultCheckValue Defines the default value for backup and |
* restore checkbox. |
+ * @param {boolean} isManaged Defines whether this setting is set by policy. |
*/ |
-function setBackupRestoreMode(text, defaultCheckValue) { |
+function setBackupRestoreMode(defaultCheckValue, isManaged) { |
xiyuan
2016/08/11 20:01:11
nit: defaultCheckValue -> enabled, since this is t
khmel
2016/08/12 20:33:23
Done.
|
var doc = appWindow.contentWindow.document; |
doc.getElementById('enable-backup-restore').checked = defaultCheckValue; |
- |
- doc.getElementById('text-backup-restore').innerHTML = text; |
- doc.getElementById('learn-more-link-backup-restore').addEventListener('click', |
- onLearnMore); |
+ doc.getElementById('enable-backup-restore').disabled = isManaged; |
+ doc.getElementById('text-backup-restore').disabled = isManaged; |
} |
/** |
* Sets current usage of location service opt in mode. |
- * @param {string} text String used to display next to checkbox. |
* @param {boolean} defaultCheckValue Defines the default value for location |
* service opt in. |
+ * @param {boolean} isManaged Defines whether this setting is set by policy. |
*/ |
-function setLocationServiceMode(text, defaultCheckValue) { |
+function setLocationServiceMode(defaultCheckValue, isManaged) { |
xiyuan
2016/08/11 20:01:11
nit: defaultCheckValue -> enabled
khmel
2016/08/12 20:33:23
Done.
|
var doc = appWindow.contentWindow.document; |
doc.getElementById('enable-location-service').checked = defaultCheckValue; |
+ doc.getElementById('enable-location-service').disabled = isManaged; |
+ doc.getElementById('text-location-service').disabled = isManaged; |
+} |
- doc.getElementById('text-location-service').innerHTML = text; |
- doc.getElementById('learn-more-link-location-service'). |
- addEventListener('click', onLearnMore); |
+/** |
+ * Hides Terms of Service if the account is managed, because the admin already |
+ * agreed to the terms. |
+ * @param {boolean} profileManaged Whether the account is managed on Chrome OS. |
+ */ |
+function hideTermsIfManaged(profileManaged) { |
+ var doc = appWindow.contentWindow.document; |
+ if (profileManaged) { |
+ doc.getElementById('terms-title').style.visibility = 'hidden'; |
+ doc.getElementById('terms-container').style.visibility = 'hidden'; |
+ } |
} |
/** |
@@ -233,6 +250,10 @@ function onNativeMessage(message) { |
initialize(message.data, message.deviceId); |
} else if (message.action == 'setMetricsMode') { |
setMetricsMode(message.text, message.canEnable, message.on); |
+ } else if (message.action == 'setBackupAndRestoreMode') { |
+ setBackupRestoreMode(message.enabled, message.managed); |
+ } else if (message.action == 'setLocationServiceMode') { |
+ setLocationServiceMode(message.enabled, message.managed); |
} else if (message.action == 'closeUI') { |
closeWindowInternally(); |
} else if (message.action == 'showPage') { |