client/app/app.js
changeset 42 926f0426ce78
parent 36 5d392dea4f49
child 44 76f2fa4eb4f7
equal deleted inserted replaced
41:69a7e0b101de 42:926f0426ce78
    16         })
    16         })
    17         .service('dataApi', function($resource, context) {
    17         .service('dataApi', function($resource, context) {
    18             //console.log('dataApi',$resource, context);
    18             //console.log('dataApi',$resource, context);
    19             this.dataResource = $resource(context.urls.dataUrl);
    19             this.dataResource = $resource(context.urls.dataUrl);
    20         })
    20         })
    21         .service('dataModel', function(dataApi) {
    21         .service('dataModel', function(dataApi, context, $q) {
    22             //console.log('dataModel',this,dataApi);
    22             //console.log('dataModel',this,dataApi);
    23             this.data = dataApi.dataResource.get();
    23             if(typeof context.categories_json !== 'undefined' && context.categories_json) {
       
    24                 this.data = JSON.parse(context.categories_json);
       
    25             }
       
    26             else {
       
    27                 this.data = dataApi.dataResource.get();
       
    28             }
    24         })
    29         })
    25         .controller('homeCtrl', function($scope, $location, dataModel, context, $interval){
    30         .controller('homeCtrl', function($scope, $location, dataModel, context, $interval){
    26             
    31 
    27             function getURLParameter(name) {
    32             function getURLParameter(name) {
    28                 return decodeURI(
    33                 return decodeURI(
    29                     (new RegExp(name + '=' + '(.+?)(&|$)').exec(location.search)||[,null])[1]
    34                     (new RegExp(name + '=' + '(.+?)(&|$)').exec(location.search)||[,null])[1]
    30                 );
    35                 );
    31             }
    36             }
    32             
    37 
    33             //console.log('homeCtrl 1', $scope, $location, context);
       
    34             //console.log('homeCtrl 2', context);
       
    35             $scope.data = dataModel.data;
    38             $scope.data = dataModel.data;
    36 
    39 
    37             dataModel.data.$promise.then(function(data) {
    40             var process_categories = function(data) {
    38                 if(typeof data.categories!=='undefined' && data.categories.length>0){
    41                 if(typeof data.categories!=='undefined' && data.categories.length>0){
    39                     var cats = [];
    42                     var cats = [];
    40                     var nbCat = data.categories.length;
    43                     var nbCat = data.categories.length;
    41                     for(var i=0;i<nbCat;i++){
    44                     for(var i=0;i<nbCat;i++){
    42                         cats.push(data.categories[i].label);
    45                         cats.push(data.categories[i].label);
    47                             }
    50                             }
    48                         }
    51                         }
    49                     }
    52                     }
    50                     $scope.allCatLabels = cats;
    53                     $scope.allCatLabels = cats;
    51                 }
    54                 }
    52             });
    55             };
       
    56 
       
    57             if (typeof dataModel.data.$promise !== 'undefined') {
       
    58                 dataModel.data.$promise.then(process_categories);
       
    59             }
       
    60             else {
       
    61                 process_categories(dataModel.data);
       
    62             }
    53 
    63 
    54             $scope.selectedlevel = false;
    64             $scope.selectedlevel = false;
    55 
    65 
    56             $scope.currentInterval = false;
    66             $scope.currentInterval = false;
    57             $scope.showSuccessAlert = false;
    67             $scope.showSuccessAlert = false;