Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(103)

Unified Diff: chrome/browser/ui/webui/policy_ui.cc

Issue 1304843004: Add source column to chrome://policy showing the origins of policies. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Test and platform fixes. Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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..c35802eaee85e356f21596065891ed191657decd 100644
--- a/chrome/browser/ui/webui/policy_ui.cc
+++ b/chrome/browser/ui/webui/policy_ui.cc
@@ -10,7 +10,6 @@
#include "base/compiler_specific.h"
#include "base/json/json_writer.h"
#include "base/logging.h"
-#include "base/memory/scoped_ptr.h"
#include "base/memory/weak_ptr.h"
#include "base/strings/string16.h"
#include "base/time/time.h"
@@ -77,6 +76,27 @@ 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},
+ {"sourceENterpriseOverride", IDS_POLICY_SOURCE_ENTERPRISE_OVERRIDE},
bartfab (slow) 2015/09/17 15:45:51 Nit: s/EN/En/
fhorschig 2015/09/18 08:30:21 Done.
+ {"sourcePlatform", IDS_POLICY_SOURCE_PLATFORM},
+ {"sourceCloud", IDS_POLICY_SOURCE_CLOUD}
+};
+
+void AddLocalizedPoilcySourceStrings(content::WebUIDataSource* source) {
+ DCHECK(policy::POLICY_SOURCE_COUNT == arraysize(kPolicySources));
bartfab (slow) 2015/09/17 15:45:51 Nit 1: Use DCHECK_EQ() Nit 2: #include "base/macro
fhorschig 2015/09/18 08:30:21 Done.
+ for (size_t i = 0; i < arraysize(kPolicySources); ++i) {
bartfab (slow) 2015/09/17 15:45:51 Nit: #include <stddef.h>
fhorschig 2015/09/18 08:30:21 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);

Powered by Google App Engine
This is Rietveld 408576698