client/app/slideshow/slideshow_controller.js
changeset 4 28208a0ad8b9
parent 2 36ccc573af9a
child 8 824c87a9084c
equal deleted inserted replaced
3:18a4c598ddee 4:28208a0ad8b9
    11     })
    11     })
    12     .service('slideshowApi', function($resource, context) {
    12     .service('slideshowApi', function($resource, context) {
    13       console.log('slideshow 5',this);
    13       console.log('slideshow 5',this);
    14       this.slideshow = $resource(context.urls.slideshowUrl);
    14       this.slideshow = $resource(context.urls.slideshowUrl);
    15     })
    15     })
    16     .service('slideshowModel', function(slideshowApi, context) {
    16     .service('slideshowModel', function(slideshowApi) {
    17       console.log('slideshow 6',this);
    17       console.log('slideshow 6',this);
    18       if(typeof context.slideshow === 'undefined') {
    18       this.slideshow = slideshowApi.slideshow.get();
    19           console.log('slideshow 6-1');
       
    20           this.slideshow = slideshowApi.slideshow.get();
       
    21       }
       
    22       else {
       
    23           console.log('slideshow 6-2');
       
    24           this.slideshow = new slideshowApi.slideshow(context.slideshow);
       
    25       }
       
    26     })
    19     })
    27     .controller('slideshowCtrl', function($scope, $filter, $location, $routeParams, $timeout, searchApi, slideshowModel){
    20     .controller('slideshowCtrl', function($scope, $filter, $location, $routeParams, $timeout, searchApi, slideshowModel){
    28       console.log('slideshow 7', $filter, $routeParams, searchApi, slideshowModel);
    21       console.log('slideshow 7', $location, $routeParams, searchApi, slideshowModel);
    29       $scope.slideshow = slideshowModel.slideshow;
    22       $scope.slideshow = slideshowModel.slideshow;
    30       $scope.iSlide = parseInt($routeParams.iSlide) || 0;
    23       $scope.iSlide = parseInt($routeParams.iSlide) || 0;
       
    24       console.log('$routeParams',$routeParams);
    31       if(typeof $routeParams.searched !== 'undefined'){
    25       if(typeof $routeParams.searched !== 'undefined'){
    32           var a = $routeParams.searched.split(',');
    26           var a = $routeParams.searched.split(',');
    33           var q = a[0], i = parseInt(a[1]);
    27           var q = a[0], i = parseInt(a[1]);
    34           if(a.length===2 && !isNaN(i)){
    28           if(a.length===2 && !isNaN(i)){
    35               searchApi.searchResource({q:q, of: 'json', synthesis: 'false', nresults:'50', callback: 'JSON_CALLBACK'}).$promise.then(
    29               searchApi.searchResource({q:q, of: 'json', synthesis: 'false', nresults:'50', callback: 'JSON_CALLBACK'}).$promise.then(
    47                       alert('Erreur avec la requête (dans slideshow)', error);
    41                       alert('Erreur avec la requête (dans slideshow)', error);
    48                   }
    42                   }
    49               );
    43               );
    50           }
    44           }
    51       }
    45       }
       
    46       $timeout(function(){
       
    47           if($scope.iSlide>=0 && $scope.iSlide<$scope.slideshow.images.length){
       
    48               $scope.slideshow.images[$scope.iSlide].active = true;
       
    49               var l = $location.path();
       
    50               if(l.substr(0,16)==='/slideshow/edit/'){
       
    51                   $scope.slideshow.images[$scope.iSlide].editMode = true;
       
    52               }
       
    53           }
       
    54       }, 200);
    52 
    55 
    53       $scope.save = function(){
    56       $scope.save = function(){
    54           console.log('8 call save POST',$scope.slideshow);
    57           console.log('8 call save POST',$scope.slideshow);
    55           $scope.slideshow
    58           $scope.slideshow
    56           .$save()
    59           .$save()
    77                       $scope.slide.tags = $scope.slide.tags.split(',');
    80                       $scope.slide.tags = $scope.slide.tags.split(',');
    78                   }
    81                   }
    79                   for (var i = $scope.slide.tags.length - 1; i >= 0; i--) {
    82                   for (var i = $scope.slide.tags.length - 1; i >= 0; i--) {
    80                       $scope.slide.tags[i] = $scope.slide.tags[i].trim();
    83                       $scope.slide.tags[i] = $scope.slide.tags[i].trim();
    81                   }
    84                   }
    82                   $scope.editMode = false;
    85                   $scope.slide.editMode = false;
       
    86                   $scope.save();
       
    87               };
       
    88               $scope.editSlidesave = function(){
       
    89                   if(typeof $scope.slide.tags === 'string'){
       
    90                       $scope.slide.tags = $scope.slide.tags.split(',');
       
    91                   }
       
    92                   for (var i = $scope.slide.tags.length - 1; i >= 0; i--) {
       
    93                       $scope.slide.tags[i] = $scope.slide.tags[i].trim();
       
    94                   }
       
    95                   $scope.slide.editMode = false;
    83                   $scope.save();
    96                   $scope.save();
    84               };
    97               };
    85           }
    98           }
    86       };
    99       };
    87   });
   100   });