Skip to content
Extraits de code Groupes Projets
Valider b25bc6b8 rédigé par Thomas Steur's avatar Thomas Steur
Parcourir les fichiers

exposing config as an angular module

parent bb99f42e
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -182,6 +182,17 @@ class Config extends Singleton
return $this->getHostname();
}
public function getClientSideOptions()
{
$general = $this->General;
return array(
'action_url_category_delimiter' => $general['action_url_category_delimiter'],
'autocomplete_min_sites' => $general['autocomplete_min_sites'],
'site_selector_max_sites' => $general['site_selector_max_sites']
);
}
protected static function getByDomainConfigPath()
{
$host = self::getHostname();
......
......@@ -507,7 +507,7 @@ abstract class Controller
$language = LanguagesManager::getLanguageForSession();
$view->language = !empty($language) ? $language : LanguagesManager::getLanguageCodeForCurrentUser();
$view->config_action_url_category_delimiter = PiwikConfig::getInstance()->General['action_url_category_delimiter'];
$view->clientSideConfig = PiwikConfig::getInstance()->getClientSideOptions();
$this->setBasicVariablesView($view);
......
......@@ -91,6 +91,8 @@ class CoreHome extends \Piwik\Plugin
$jsFiles[] = "plugins/CoreHome/javascripts/notification.js";
$jsFiles[] = "plugins/CoreHome/javascripts/notification_parser.js";
$jsFiles[] = "plugins/CoreHome/javascripts/piwikAppConfig.js";
$jsFiles[] = "plugins/CoreHome/javascripts/services/services.js";
$jsFiles[] = "plugins/CoreHome/javascripts/services/piwik.js";
$jsFiles[] = "plugins/CoreHome/javascripts/services/piwikApi.js";
......@@ -105,7 +107,7 @@ class CoreHome extends \Piwik\Plugin
$jsFiles[] = "plugins/CoreHome/javascripts/directives/ignoreClick.js";
$jsFiles[] = "plugins/CoreHome/javascripts/piwikApp.js";
$jsFiles[] = "plugins/CoreHome/javascripts/siteselector/siteSelectorModel.js";
$jsFiles[] = "plugins/CoreHome/javascripts/siteselector/siteSelectorController.js";
$jsFiles[] = "plugins/CoreHome/javascripts/siteselector/siteSelectorDirectives.js";
......
var piwikApp = angular.module('piwikApp', [
'ngSanitize',
'piwikApp.config',
'piwikApp.service',
'piwikApp.directive',
'piwikApp.filter'
......
var piwikAppConfig = angular.module('piwikApp.config', []);
(function () {
for (var index in piwik.config) {
piwikAppConfig.constant(index.toUpperCase(), piwik.config[index])
};
})()
\ No newline at end of file
......@@ -5,10 +5,11 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
piwikApp.controller('SiteSelectorController', function($scope, siteSelectorModel, piwik){
piwikApp.controller('SiteSelectorController', function($scope, siteSelectorModel, piwik, AUTOCOMPLETE_MIN_SITES){
$scope.model = siteSelectorModel;
$scope.autocompleteMinSites = AUTOCOMPLETE_MIN_SITES;
$scope.selectedSite = {id: '', name: ''};
$scope.activeSiteId = piwik.idSite;
......
piwikApp.factory('siteSelectorModel', function (piwikApi, $filter) {
piwikApp.factory('siteSelectorModel', function (piwikApi, $filter, SITE_SELECTOR_MAX_SITES) {
var model = {};
model.sites = [];
......@@ -15,7 +15,7 @@ piwikApp.factory('siteSelectorModel', function (piwikApi, $filter) {
model.isLoading = true;
params.filter_limit = 10;
params.filter_limit = SITE_SELECTOR_MAX_SITES;
params.showColumns = 'name,idsite';
piwikApi.fetch(params).then(function (response) {
......
......@@ -41,7 +41,7 @@
<div ng-if="allSitesLocation=='bottom' && showAllSitesItem"
ng-include="'siteselector_allsiteslink.html'"></div>
<div class="custom_select_search" ng-show="model.hasMultipleWebsites">
<div class="custom_select_search" ng-show="autocompleteMinSites <= model.sites.length">
<input type="text"
ng-click="view.searchTerm=''"
ng-model="view.searchTerm"
......
......@@ -29,9 +29,9 @@
{% endif %}
{% if language is defined %}piwik.language = "{{ language }}";{% endif %}
{% if config_action_url_category_delimiter is defined %}
piwik.config = {};
piwik.config.action_url_category_delimiter = "{{ config_action_url_category_delimiter }}";
{% if clientSideConfig is defined %}
piwik.config = {{ clientSideConfig|json_encode|raw }};
{% endif %}
{{ postEvent("Template.jsGlobalVariables") }}
</script>
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter