Chromium Code Reviews| 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 indicators. | 6 * @fileoverview Behavior for policy controlled indicators. |
| 7 */ | 7 */ |
| 8 | 8 |
| 9 /** | 9 /** |
| 10 * Strings required for policy indicators. These must be set at runtime. | 10 * Strings required for policy indicators. These must be set at runtime. |
| 11 * Chrome OS only strings may be undefined. | 11 * Chrome OS only strings may be undefined. |
| 12 * @type {{ | 12 * @type {{ |
| 13 * controlledSettingExtension: string, | |
| 13 * controlledSettingPolicy: string, | 14 * controlledSettingPolicy: string, |
| 14 * controlledSettingRecommendedMatches: string, | 15 * controlledSettingRecommendedMatches: string, |
| 15 * controlledSettingRecommendedDiffers: string, | 16 * controlledSettingRecommendedDiffers: string, |
| 16 * controlledSettingShared: (string|undefined), | 17 * controlledSettingShared: (string|undefined), |
| 17 * controlledSettingOwner: (string|undefined), | 18 * controlledSettingOwner: (string|undefined), |
| 18 * }} | 19 * }} |
| 19 */ | 20 */ |
| 20 var CrPolicyStrings; | 21 var CrPolicyStrings; |
| 21 | 22 |
| 22 /** @enum {string} */ | 23 /** @enum {string} */ |
| 23 var CrPolicyIndicatorType = { | 24 var CrPolicyIndicatorType = { |
| 24 DEVICE_POLICY: 'devicePolicy', | 25 DEVICE_POLICY: 'devicePolicy', |
| 25 EXTENSION: 'extension', | 26 EXTENSION: 'extension', |
| 26 NONE: 'none', | 27 NONE: 'none', |
| 27 OWNER: 'owner', | 28 OWNER: 'owner', |
| 28 PRIMARY_USER: 'primary_user', | 29 PRIMARY_USER: 'primary_user', |
| 29 RECOMMENDED: 'recommended', | 30 RECOMMENDED: 'recommended', |
| 30 USER_POLICY: 'userPolicy', | 31 USER_POLICY: 'userPolicy', |
| 31 }; | 32 }; |
| 32 | 33 |
| 33 /** @polymerBehavior */ | 34 /** @polymerBehavior */ |
| 34 var CrPolicyIndicatorBehavior = { | 35 var CrPolicyIndicatorBehavior = { |
| 35 /** | 36 /** |
| 36 * @param {CrPolicyIndicatorType} type | 37 * @param {CrPolicyIndicatorType} type |
| 37 * @return {boolean} True if the indicator should be shown. | 38 * @return {boolean} True if the indicator should be shown. |
| 38 * @private | 39 * @private |
| 39 */ | 40 */ |
| 40 isIndicatorVisible: function(type) { | 41 isIndicatorVisible: function(type) { |
| 41 return type != CrPolicyIndicatorType.NONE && | 42 return type != CrPolicyIndicatorType.NONE; |
| 42 type != CrPolicyIndicatorType.EXTENSION; | |
|
dschuyler
2017/02/28 00:15:18
This is now accounted for in cr_policy_pref_behavi
| |
| 43 }, | 43 }, |
| 44 | 44 |
| 45 /** | 45 /** |
| 46 * @param {CrPolicyIndicatorType} type | 46 * @param {CrPolicyIndicatorType} type |
| 47 * @return {string} The iron-icon icon name. | 47 * @return {string} The iron-icon icon name. |
| 48 * @private | 48 * @private |
| 49 */ | 49 */ |
| 50 getPolicyIndicatorIcon: function(type) { | 50 getPolicyIndicatorIcon: function(type) { |
| 51 var icon = ''; | |
| 52 switch (type) { | 51 switch (type) { |
| 52 case CrPolicyIndicatorType.NONE: | |
| 53 return ''; | |
| 53 case CrPolicyIndicatorType.EXTENSION: | 54 case CrPolicyIndicatorType.EXTENSION: |
| 54 case CrPolicyIndicatorType.NONE: | 55 return 'cr:extension'; |
| 55 return icon; | |
| 56 case CrPolicyIndicatorType.PRIMARY_USER: | 56 case CrPolicyIndicatorType.PRIMARY_USER: |
| 57 icon = 'cr:group'; | 57 return 'cr:group'; |
| 58 break; | |
| 59 case CrPolicyIndicatorType.OWNER: | 58 case CrPolicyIndicatorType.OWNER: |
| 60 icon = 'cr:person'; | 59 return 'cr:person'; |
| 61 break; | |
| 62 case CrPolicyIndicatorType.USER_POLICY: | 60 case CrPolicyIndicatorType.USER_POLICY: |
| 63 case CrPolicyIndicatorType.DEVICE_POLICY: | 61 case CrPolicyIndicatorType.DEVICE_POLICY: |
| 64 case CrPolicyIndicatorType.RECOMMENDED: | 62 case CrPolicyIndicatorType.RECOMMENDED: |
| 65 icon = 'cr20:domain'; | 63 return 'cr20:domain'; |
| 66 break; | |
| 67 default: | 64 default: |
| 68 assertNotReached(); | 65 assertNotReached(); |
| 69 } | 66 } |
| 70 return icon; | |
| 71 }, | 67 }, |
| 72 | 68 |
| 73 /** | 69 /** |
| 74 * @param {!CrPolicyIndicatorType} type | 70 * @param {!CrPolicyIndicatorType} type |
| 75 * @param {string} name The name associated with the indicator. See | 71 * @param {string} name The name associated with the indicator. See |
| 76 * chrome.settingsPrivate.PrefObject.controlledByName | 72 * chrome.settingsPrivate.PrefObject.controlledByName |
| 77 * @param {boolean=} opt_matches For RECOMMENDED only, whether the indicator | 73 * @param {boolean=} opt_matches For RECOMMENDED only, whether the indicator |
| 78 * value matches the recommended value. | 74 * value matches the recommended value. |
| 79 * @return {string} The tooltip text for |type|. | 75 * @return {string} The tooltip text for |type|. |
| 80 */ | 76 */ |
| 81 getPolicyIndicatorTooltip: function(type, name, opt_matches) { | 77 getPolicyIndicatorTooltip: function(type, name, opt_matches) { |
| 82 if (!CrPolicyStrings) | 78 if (!CrPolicyStrings) |
| 83 return ''; // Tooltips may not be defined, e.g. in OOBE. | 79 return ''; // Tooltips may not be defined, e.g. in OOBE. |
| 84 switch (type) { | 80 switch (type) { |
| 81 case CrPolicyIndicatorType.EXTENSION: | |
| 82 return CrPolicyStrings.controlledSettingExtension; | |
| 85 case CrPolicyIndicatorType.PRIMARY_USER: | 83 case CrPolicyIndicatorType.PRIMARY_USER: |
| 86 return CrPolicyStrings.controlledSettingShared.replace('$1', name); | 84 return CrPolicyStrings.controlledSettingShared.replace('$1', name); |
| 87 case CrPolicyIndicatorType.OWNER: | 85 case CrPolicyIndicatorType.OWNER: |
| 88 return CrPolicyStrings.controlledSettingOwner.replace('$1', name); | 86 return CrPolicyStrings.controlledSettingOwner.replace('$1', name); |
| 89 case CrPolicyIndicatorType.USER_POLICY: | 87 case CrPolicyIndicatorType.USER_POLICY: |
| 90 case CrPolicyIndicatorType.DEVICE_POLICY: | 88 case CrPolicyIndicatorType.DEVICE_POLICY: |
| 91 return CrPolicyStrings.controlledSettingPolicy; | 89 return CrPolicyStrings.controlledSettingPolicy; |
| 92 case CrPolicyIndicatorType.RECOMMENDED: | 90 case CrPolicyIndicatorType.RECOMMENDED: |
| 93 return opt_matches ? | 91 return opt_matches ? |
| 94 CrPolicyStrings.controlledSettingRecommendedMatches : | 92 CrPolicyStrings.controlledSettingRecommendedMatches : |
| 95 CrPolicyStrings.controlledSettingRecommendedDiffers; | 93 CrPolicyStrings.controlledSettingRecommendedDiffers; |
| 96 } | 94 } |
| 97 return ''; | 95 return ''; |
| 98 }, | 96 }, |
| 99 }; | 97 }; |
| OLD | NEW |