/**
 * Created by alejandrobarreiro on 7/11/15.
 */

angular.module('sapoApp')
  .controller('NotificacionesCtrl', ['$scope', 'notificacionesService', 'usuarioService', 'toastr', 'almacenes', 'AlmacenHandler',
    function ($scope, notificacionesService, usuarioService, toastr, almacenes, AlmacenHandler) {

      $scope.usuarios = {};
      var almacenSeleccionada;

      this.init = function () {
        $scope.almacenes = almacenes;
        $scope.productos = [];
      };

      $scope.$watch('almacenId', function() {
       if ($scope.almacenId) {
         almacenSeleccionada = $scope.almacenId.replace(/ /g,'');
         var AlmacenHdlr= new AlmacenHandler();
         AlmacenHdlr.getAlmacen(almacenSeleccionada).then(function(almacen){
           var productosConNotif = almacen.stockproductos;;

           notificacionesService.getNotificacionesUser(almacenSeleccionada).then(function (notificaciones) {
             console.log(notificaciones);

              angular.forEach(notificaciones, function(notif){
                angular.forEach(productosConNotif, function(prod){
                  if (prod.productoID == notif.productoID) {
                    prod.notifica = true;
                    prod.minimo = notif.minimo;
                  }
                })
              });
              console.log(productosConNotif);
              $scope.productos = productosConNotif;
           });
         })
       }
      });

      $scope.activarNotificacion = function (producto, stockMinimo) {
        var data = {
          productoID: producto.productoID,
          minimo: stockMinimo,
          notifica: true
        };
        notificacionesService.activarNotificacionProducto(almacenSeleccionada, data)
          .then(function(a) {
            console.log(a);
            toastr.success('Notificacion activada.');
          })
          .catch(function () {
            toastr.error('Hubo un error al activar la notificacion.')
          });
      };

      $scope.desactivarNotificacion = function (producto, stockMinimo) {

        var data = {
          productoID: producto.productoID,
        };
        notificacionesService.eliminarNotificacion(almacenSeleccionada, data)
          .then(function(a) {
            console.log(a);
            toastr.success('Notificacion desactivada.');
          })
          .catch(function () {
            toastr.error('Hubo un error al activar la notificacion.')
          });

      };



      this.init();
    }]);
@@ -951,24 +951,176 @@
 aciones);%0A%0A 
+            angular.forEach(productosConNotif, function(prod) %7B%0A               prod.notifica = false;%0A               prod.minimo = 0;%0A             %7D);%0A%0A
             
@@ -1167,20 +1167,19 @@
 n(notif)
+ 
 %7B%0A
-  
         
@@ -1233,16 +1233,17 @@
 on(prod)
+ 
 %7B%0A      
@@ -1779,33 +1779,58 @@
 a: true%0A        
-%7D
+  %7D,%0A          that = this
 ;%0A        notifi
@@ -2004,32 +2004,305 @@
 on activada.');%0A
+            var productos = $scope.productos;%0A            angular.forEach(productos, function(prod)%7B%0A              if (prod.productoID == producto.productoID) %7B%0A                prod.notifica = true;%0A              %7D%0A            %7D);%0A            $scope.productos = productos;%0A
           %7D)%0A   
@@ -2569,19 +2569,22 @@
         
+  
 %7D;%0A
+%0A
         
@@ -2760,32 +2760,306 @@
 desactivada.');%0A
+            var productos = $scope.productos;%0A            angular.forEach(productos, function(prod)%7B%0A              if (prod.productoID == producto.productoID) %7B%0A                prod.notifica = false;%0A              %7D%0A            %7D);%0A            $scope.productos = productos;%0A
           %7D)%0A   
@@ -3148,32 +3148,32 @@
 notificacion.')%0A
-
           %7D);%0A%0A 
@@ -3181,16 +3181,81 @@
     %7D;%0A%0A
+      actualizarLista = function (notifica, idProd) %7B%0A%0A      %7D;%0A%0A
 %0A%0A      

fix notificaciones activar/desactivar