From 6eac37a4c0ebb9732c3d1c0fafb2b5f59baf913b Mon Sep 17 00:00:00 2001
From: Thomas Steur <thomas.steur@googlemail.com>
Date: Thu, 20 Feb 2014 12:23:32 +0100
Subject: [PATCH] refs #2174 remove access service in favor of writing
 superUserAccess info directly into a var as it is just faster and allows us
 to execute less code

---
 core/Plugin/Controller.php                    |  1 +
 plugins/CoreHome/CoreHome.php                 |  1 -
 .../services/piwik-access-service.js          | 22 -------------------
 .../templates/_jsGlobalVariables.twig         |  1 +
 4 files changed, 2 insertions(+), 23 deletions(-)
 delete mode 100644 plugins/CoreHome/javascripts/services/piwik-access-service.js

diff --git a/core/Plugin/Controller.php b/core/Plugin/Controller.php
index d107dcfdca..a49013a8de 100644
--- a/core/Plugin/Controller.php
+++ b/core/Plugin/Controller.php
@@ -546,6 +546,7 @@ abstract class Controller
         $view->debugTrackVisitsInsidePiwikUI = PiwikConfig::getInstance()->Debug['track_visits_inside_piwik_ui'];
         $view->isSuperUser = Access::getInstance()->hasSuperUserAccess();
         $view->hasSomeAdminAccess = Piwik::isUserHasSomeAdminAccess();
+        $view->hasSuperUserAccess = Piwik::hasUserSuperUserAccess();
 
         $customLogo = new CustomLogo();
         $view->isCustomLogo = $customLogo->isEnabled();
diff --git a/plugins/CoreHome/CoreHome.php b/plugins/CoreHome/CoreHome.php
index edf60aae77..3faa3e01be 100644
--- a/plugins/CoreHome/CoreHome.php
+++ b/plugins/CoreHome/CoreHome.php
@@ -97,7 +97,6 @@ class CoreHome extends \Piwik\Plugin
         $jsFiles[] = "plugins/CoreHome/javascripts/services/service.js";
         $jsFiles[] = "plugins/CoreHome/javascripts/services/piwik-service.js";
         $jsFiles[] = "plugins/CoreHome/javascripts/services/piwik-api-service.js";
-        $jsFiles[] = "plugins/CoreHome/javascripts/services/piwik-access-service.js";
         $jsFiles[] = "plugins/CoreHome/javascripts/services/websitegroups-service.js";
 
         $jsFiles[] = "plugins/CoreHome/javascripts/filters/filter.js";
diff --git a/plugins/CoreHome/javascripts/services/piwik-access-service.js b/plugins/CoreHome/javascripts/services/piwik-access-service.js
deleted file mode 100644
index abc2139207..0000000000
--- a/plugins/CoreHome/javascripts/services/piwik-access-service.js
+++ /dev/null
@@ -1,22 +0,0 @@
-/*!
- * Piwik - Web Analytics
- *
- * @link http://piwik.org
- * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- */
-
-angular.module('piwikApp.service').service('piwikAccess', function(piwikApi){
-
-    this.hasSuperUserAccess = false;
-
-    this.fetchHasSuperUserAccess = function () {
-        var that = this;
-
-        piwikApi.fetch({method: 'UsersManager.hasSuperUserAccess'}).then(function (response) {
-            if (response && response.value) {
-                that.hasSuperUserAccess = response.value;
-            }
-            return response;
-        });
-    }
-});
\ No newline at end of file
diff --git a/plugins/Zeitgeist/templates/_jsGlobalVariables.twig b/plugins/Zeitgeist/templates/_jsGlobalVariables.twig
index 8e6980828b..e777342258 100644
--- a/plugins/Zeitgeist/templates/_jsGlobalVariables.twig
+++ b/plugins/Zeitgeist/templates/_jsGlobalVariables.twig
@@ -29,6 +29,7 @@
 {% endif %}
     {% if language is defined %}piwik.language = "{{ language }}";{% endif %}
 
+    piwik.hasSuperUserAccess = {{ hasSuperUserAccess|default(0)|e('js')}};
     piwik.config = {};
 {% if clientSideConfig is defined %}
     piwik.config = {{ clientSideConfig|json_encode|raw }};
-- 
GitLab