diff -r 69a7e0b101de -r 926f0426ce78 client/app/app.js --- a/client/app/app.js Fri Oct 17 17:54:06 2014 +0200 +++ b/client/app/app.js Sun Oct 19 12:52:38 2014 +0200 @@ -18,23 +18,26 @@ //console.log('dataApi',$resource, context); this.dataResource = $resource(context.urls.dataUrl); }) - .service('dataModel', function(dataApi) { + .service('dataModel', function(dataApi, context, $q) { //console.log('dataModel',this,dataApi); - this.data = dataApi.dataResource.get(); + if(typeof context.categories_json !== 'undefined' && context.categories_json) { + this.data = JSON.parse(context.categories_json); + } + else { + this.data = dataApi.dataResource.get(); + } }) .controller('homeCtrl', function($scope, $location, dataModel, context, $interval){ - + function getURLParameter(name) { return decodeURI( (new RegExp(name + '=' + '(.+?)(&|$)').exec(location.search)||[,null])[1] ); } - - //console.log('homeCtrl 1', $scope, $location, context); - //console.log('homeCtrl 2', context); + $scope.data = dataModel.data; - dataModel.data.$promise.then(function(data) { + var process_categories = function(data) { if(typeof data.categories!=='undefined' && data.categories.length>0){ var cats = []; var nbCat = data.categories.length; @@ -49,7 +52,14 @@ } $scope.allCatLabels = cats; } - }); + }; + + if (typeof dataModel.data.$promise !== 'undefined') { + dataModel.data.$promise.then(process_categories); + } + else { + process_categories(dataModel.data); + } $scope.selectedlevel = false;