Index: chrome/browser/ui/webui/policy_ui.cc |
diff --git a/chrome/browser/ui/webui/policy_ui.cc b/chrome/browser/ui/webui/policy_ui.cc |
index 03d43485804641fe4dced0da2ec12c88bcb51905..78ecff8bd91e954582a2cf21d9566fb4201db342 100644 |
--- a/chrome/browser/ui/webui/policy_ui.cc |
+++ b/chrome/browser/ui/webui/policy_ui.cc |
@@ -77,6 +77,26 @@ namespace em = enterprise_management; |
namespace { |
+struct PolicySourceMap { |
+ const char* key; |
+ int string_id; |
+}; |
+ |
+// Strings that map from PolicySource enum to i18n string keys and their IDs. |
+const PolicySourceMap kPolicySources[policy::POLICY_SOURCE_COUNT] = { |
+ {"sourceEnterpriseDefault", IDS_POLICY_SOURCE_ENTERPRISE_DEFAULT}, |
+ {"sourceBuiltIn", IDS_POLICY_SOURCE_BUILT_IN}, |
+ {"sourcePlatform", IDS_POLICY_SOURCE_PLATFORM}, |
+ {"sourceCloud", IDS_POLICY_SOURCE_CLOUD} |
+}; |
+ |
+void AddLocalizedPoilcySourceStrings(content::WebUIDataSource* source) { |
+ for (int i = 0; i < policy::POLICY_SOURCE_COUNT; ++i) { |
bartfab (slow)
2015/09/16 15:58:41
Nit: arraysize() would be safer.
fhorschig
2015/09/17 11:20:41
Done.
|
+ source->AddLocalizedString(kPolicySources[i].key, |
+ kPolicySources[i].string_id); |
+ } |
+} |
+ |
content::WebUIDataSource* CreatePolicyUIHTMLSource() { |
content::WebUIDataSource* source = |
content::WebUIDataSource::Create(chrome::kChromeUIPolicyHost); |
@@ -108,6 +128,7 @@ content::WebUIDataSource* CreatePolicyUIHTMLSource() { |
source->AddLocalizedString("headerName", IDS_POLICY_HEADER_NAME); |
source->AddLocalizedString("headerValue", IDS_POLICY_HEADER_VALUE); |
source->AddLocalizedString("headerStatus", IDS_POLICY_HEADER_STATUS); |
+ source->AddLocalizedString("headerSource", IDS_POLICY_HEADER_SOURCE); |
source->AddLocalizedString("showExpandedValue", |
IDS_POLICY_SHOW_EXPANDED_VALUE); |
source->AddLocalizedString("hideExpandedValue", |
@@ -120,6 +141,7 @@ content::WebUIDataSource* CreatePolicyUIHTMLSource() { |
source->AddLocalizedString("unset", IDS_POLICY_UNSET); |
source->AddLocalizedString("unknown", IDS_POLICY_UNKNOWN); |
source->AddLocalizedString("notSpecified", IDS_POLICY_NOT_SPECIFIED); |
+ AddLocalizedPoilcySourceStrings(source); |
source->SetJsonPath("strings.js"); |
@@ -752,6 +774,7 @@ void PolicyUIHandler::GetPolicyValues(const policy::PolicyMap& map, |
value->SetString("level", "recommended"); |
else |
value->SetString("level", "mandatory"); |
+ value->SetString("source", kPolicySources[entry->second.source].key); |
base::string16 error = errors->GetErrors(entry->first); |
if (!error.empty()) |
value->SetString("error", error); |