OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 /** | 5 /** |
6 * @fileoverview Behavior for policy controlled settings prefs. | 6 * @fileoverview Behavior for policy controlled settings prefs. |
7 */ | 7 */ |
8 | 8 |
9 /** @polymerBehavior */ | 9 /** @polymerBehavior */ |
10 var CrPolicyPrefBehavior = { | 10 var CrPolicyPrefBehavior = { |
11 /** | 11 /** |
12 * @param {!chrome.settingsPrivate.PrefObject} pref | 12 * @param {!chrome.settingsPrivate.PrefObject} pref |
13 * @return {boolean} True if the pref is controlled by an enforced policy. | 13 * @return {boolean} True if the pref is controlled by an enforced policy. |
14 */ | 14 */ |
15 isPrefPolicyControlled: function(pref) { | 15 isPrefPolicyControlled: function(pref) { |
16 return pref.policyEnforcement == | 16 return pref.policyEnforcement == |
17 chrome.settingsPrivate.PolicyEnforcement.ENFORCED; | 17 chrome.settingsPrivate.PolicyEnforcement.ENFORCED; |
18 }, | 18 }, |
| 19 |
| 20 /** |
| 21 * @param {chrome.settingsPrivate.PolicySource} source |
| 22 * @param {chrome.settingsPrivate.PolicyEnforcement} enforcement |
| 23 * @return {CrPolicyIndicatorType} The indicator type based on |source| and |
| 24 * |enforcement|. |
| 25 */ |
| 26 getIndicatorType: function(source, enforcement) { |
| 27 if (enforcement == chrome.settingsPrivate.PolicyEnforcement.RECOMMENDED) |
| 28 return CrPolicyIndicatorType.RECOMMENDED; |
| 29 if (enforcement == chrome.settingsPrivate.PolicyEnforcement.ENFORCED) { |
| 30 switch (source) { |
| 31 case chrome.settingsPrivate.PolicySource.PRIMARY_USER: |
| 32 return CrPolicyIndicatorType.PRIMARY_USER; |
| 33 case chrome.settingsPrivate.PolicySource.OWNER: |
| 34 return CrPolicyIndicatorType.OWNER; |
| 35 case chrome.settingsPrivate.PolicySource.USER_POLICY: |
| 36 return CrPolicyIndicatorType.USER_POLICY; |
| 37 case chrome.settingsPrivate.PolicySource.DEVICE_POLICY: |
| 38 return CrPolicyIndicatorType.DEVICE_POLICY; |
| 39 case chrome.settingsPrivate.PolicySource.EXTENSION: |
| 40 return CrPolicyIndicatorType.EXTENSION; |
| 41 } |
| 42 } |
| 43 return CrPolicyIndicatorType.NONE; |
| 44 }, |
19 }; | 45 }; |
OLD | NEW |