AnonSec Shell
Server IP : 213.186.33.4  /  Your IP : 216.73.216.193
Web Server : Apache
System : Linux webm006.cluster103.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64
User : awebpaca ( 35430)
PHP Version : 8.5.0
Disable Function : _dyuweyrj4,_dyuweyrj4r,dl
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/a/w/e/awebpaca/piwik/plugins/CoreHome/angularjs/quick-access/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     

Current File : /home/a/w/e/awebpaca/piwik/plugins/CoreHome/angularjs/quick-access/quick-access.controller.js
/*!
 * Matomo - free/libre analytics platform
 *
 * @link https://matomo.org
 * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
 */
(function () {
    angular.module('piwikApp').controller('QuickAccessController', QuickAccessController);

    QuickAccessController.$inject = ['$scope', '$filter', 'siteSelectorModel'];

    function QuickAccessController($scope, $filter, siteSelectorModel){

        this.menuItems = [];
        this.numMenuItems = 0;
        this.sitesModel = siteSelectorModel;

        this.onKeypress = function (event) {
            var areSearchResultsDisplayed = $scope.search && $scope.search.term && $scope.view && $scope.view.searchActive;
            var isTabKey = 9 == event.which;
            var isEscKey = 27 == event.which;

            if (38 == event.which) {
                $scope.highlightPreviousItem();
                event.preventDefault();
            } else if (40 == event.which) {
                $scope.highlightNextItem();
                event.preventDefault();
            } else if (13 == event.which) {
                $scope.clickQuickAccessMenuItem();
            } else if (isTabKey && areSearchResultsDisplayed) {
                $scope.deactivateSearch();
            } else if (isEscKey && areSearchResultsDisplayed) {
                $scope.deactivateSearch();
            }
        };

        this.searchMenu = function (searchTerm) {
            searchTerm = searchTerm.toLowerCase();

            var index = -1;
            var menuItemsIndex = {};
            var menuItems = [];

            var moveToCategory = function (i, submenuItem) {
                submenuItem = angular.copy(submenuItem); // force rerender of element to prevent weird side effects
                submenuItem.menuIndex = ++index; // needed for proper highlighting with arrow keys

                var category = submenuItem.category;
                if (!(category in menuItemsIndex)) {
                    menuItems.push({title: category, items: []});
                    menuItemsIndex[category] = menuItems.length - 1;
                }

                var indexOfCategory = menuItemsIndex[category];
                menuItems[indexOfCategory].items.push(submenuItem);
            };

            $scope.resetSearchIndex();

            if ($scope.hasSitesSelector) {
                this.sitesModel.searchSite(searchTerm);
            }

            var topMenuItems  = $filter('filter')($scope.getTopMenuItems(), searchTerm);
            var leftMenuItems = $filter('filter')($scope.getLeftMenuItems(), searchTerm);
            var segmentItems  = $filter('filter')($scope.getSegmentItems(), searchTerm);

            $.each(topMenuItems, moveToCategory);
            $.each(leftMenuItems, moveToCategory);
            $.each(segmentItems, moveToCategory);

            this.numMenuItems = topMenuItems.length + leftMenuItems.length + segmentItems.length;
            this.menuItems = menuItems;
        };

        this.selectSite = function (idsite) {
            this.sitesModel.loadSite(idsite);
        };

        this.selectMenuItem = function (index) {
            $scope.selectMenuItem(index);
        };

        if (typeof initTopControls !== 'undefined' && initTopControls) {
            initTopControls();
        }

    }
})();

Anon7 - 2022
AnonSec Team