Bug 1465952 - about:support displays JSON of successfully parsed policies r?felipe draft
authorKanika Saini <ksaini@mozilla.com>
Mon, 25 Jun 2018 19:45:16 +0530
changeset 812786 4dc553cfe6038c7babb6acf36cf730800ab8cfac
parent 812757 28ad9a9e95d518e1163e550ae19c972aabb44df5
push id114683
push userbmo:ksaini@mozilla.com
push dateSat, 30 Jun 2018 05:17:49 +0000
reviewersfelipe
bugs1465952
milestone63.0a1
Bug 1465952 - about:support displays JSON of successfully parsed policies r?felipe MozReview-Commit-ID: 8l7RE5ZO0jb
toolkit/content/aboutSupport.js
--- a/toolkit/content/aboutSupport.js
+++ b/toolkit/content/aboutSupport.js
@@ -89,17 +89,32 @@ var snapshotFormatters = {
         case Services.policies.ACTIVE:
           policiesText = strings.GetStringFromName("policies.active");
           break;
 
         default:
           policiesText = strings.GetStringFromName("policies.error");
           break;
       }
-      $("policies-status").textContent = policiesText;
+
+      if (data.policiesStatus == Services.policies.ACTIVE) {
+        let activePolicies = $.new("a", policiesText);
+        activePolicies.addEventListener("click", function(event) {
+          let activePoliciesJson = {};
+          activePoliciesJson.policies = Services.policies.getActivePolicies();
+          let activePoliciesJsonBlob = new Blob([JSON.stringify(activePoliciesJson)],
+                                                {type: "application/json"});
+          let jsonURL = URL.createObjectURL(activePoliciesJsonBlob);
+          window.open(jsonURL);
+          URL.revokeObjectURL(jsonURL);
+        });
+        $("policies-status").appendChild(activePolicies);
+      } else {
+        $("policies-status").textContent = policiesText;
+      }
     } else {
       $("policies-status-row").hidden = true;
     }
 
     let keyGoogleFound = data.keyGoogleFound ? "found" : "missing";
     $("key-google-box").textContent = strings.GetStringFromName(keyGoogleFound);
 
     let keyMozillaFound = data.keyMozillaFound ? "found" : "missing";