]> git.llucax.com Git - mecon/samurai.git/blobdiff - lib_perl/Perm.epl
Saco carteles de confirmacion en el abm de permisos y sistemas
[mecon/samurai.git] / lib_perl / Perm.epl
index b36bab69df4b6e4490b9267fa50fab91a6f3e4a5..346cc67dd7bca87e8f3609e8f92ecee1d553a1ab 100644 (file)
@@ -30,6 +30,9 @@
 [!
 $CLEANUP{'SAMURAI_Perm'} = 0;
 
+use Data::Dumper;
+
+
 # Simil Constructor.
 #
 # @param  string $login Login del usuario para el cual obtener los permisos.
@@ -38,12 +41,13 @@ $CLEANUP{'SAMURAI_Perm'} = 0;
 # @return void
 $SAMURAI_Perm->{new} = sub
 {
-    my $sql = "SELECT DISTINCT psu.isd_sistema AS sistema, pps.id_permiso AS permiso FROM samurai.perfil_sist_usuario AS psu, samurai.perm_perfil_sist AS pps WHERE psu.login = ? AND psu.id_perfil = pps.id_perfil AND psu.id_sistema = pps.id_sistema ORDER BY psu.id_sistema";
+    my $sql = "SELECT DISTINCT psu.id_sistema AS sistema, pps.id_permiso AS permiso FROM samurai.perfil_sist_usuario AS psu, samurai.perm_perfil_sist AS pps WHERE psu.login = ? AND psu.id_perfil = pps.id_perfil AND psu.id_sistema = pps.id_sistema ORDER BY psu.id_sistema";
     $udat{SAMURAI_Perm_vars}{login} = @_[0];
     $udat{SAMURAI_Perm_vars}{id_sistema} = @_[1];
     ##Conexion con la base
     #TODO Cambiar los parametros de conexion segun corresponda.
-    my $dbh = DBI->connect('dbi:mysql:dbname=samurai;host=bal747f',"intranet","intranet");
+    
+    my $dbh = DBI->connect('dbi:mysql:dbname=samurai;host=localhost',"samurai","25fdd50c0e4d68");
     ##Obtengo los permisos de la base        
     $re = $dbh->prepare($sql);
     $re->execute($udat{SAMURAI_Perm_vars}{login});        
@@ -118,7 +122,6 @@ $SAMURAI_Perm->{getPermisos} = sub
 # permisos automaticamente lo redirige a una pagina de error.
 #
 # @return void
-# TODO Probar que esto este funcionando bien.
 $SAMURAI_Perm->{chequear} = sub
 {
     if (!$ret->{SAMURAI_Perm}->{tiene} (@_)) {
@@ -148,7 +151,8 @@ $SAMURAI_Perm->{getObservaciones} = sub
     if (!$udat{SAMURAI_Perm_vars}{observaciones}{$sistema}{$perm}) {
         $udat{SAMURAI_Perm_vars}{observaciones} = '';
         $sql = 'SELECT ps.observaciones AS observaciones FROM samurai.perm_sist AS ps WHERE ps.id_permiso = ? AND ps.id_sistema = ?';
-        my $dbh = DBI->connect('dbi:mysql:dbname=samurai;host=bal747f',"intranet","intranet");
+        #TODO cambiar los parametros de conexion segun corresponda
+        my $dbh = DBI->connect('dbi:mysql:dbname=samurai;host=localhost',"samurai","25fdd50c0e4d68");
         $re = $dbh->prepare($sql);
         $re->execute($perm, $sistema);        
         while ($r = $re->fetchrow_hashref()) {
@@ -157,11 +161,49 @@ $SAMURAI_Perm->{getObservaciones} = sub
         $re->finish();             
         #Desconexion con la base
         $dbh->disconnect;          
-        $udat{SAMURAI_Perm_vars}{observaciones}{$sistema}{$perm} = \%obser;        
-        
-        return $obser;
+        $udat{SAMURAI_Perm_vars}{observaciones} = \%obser;
+        return $udat{SAMURAI_Perm_vars}{observaciones};
     }
 };
+
+# MANAZAR: Funcion para dar un perfil a un usuario en un sistema
+#
+# @return void
+$SAMURAI_Perm->{asignarPerfil} = sub
+{
+    $id_perfil = @_[0];
+       my $login=$udat{SAMURAI_Perm_vars}{login};
+       my $id_sistema=$udat{SAMURAI_Perm_vars}{id_sistema};
+       my $resp=$udat{'user'};
+       my $sql = "REPLACE INTO perfil_sist_usuario (login,id_perfil,id_sistema,responsable) VALUES ('$login',$id_perfil,$id_sistema,'$resp')";
+       ##Conexion con la base
+       #TODO Cambiar los parametros de conexion segun corresponda.
+       my $dbh = DBI->connect('dbi:mysql:dbname=samurai;host=localhost',"samurai","25fdd50c0e4d68");
+       my $result=$dbh->do($sql);
+    #Desconexion con la base
+       $dbh->disconnect;  
+};
+
+# MANAZAR: Funcion para quitar perfil a un usuario en un sistema
+#
+# @return void
+$SAMURAI_Perm->{quitarPerfil} = sub
+{
+    $id_perfil = @_[0];
+       my $login=$udat{SAMURAI_Perm_vars}{login};
+       my $id_sistema=$udat{SAMURAI_Perm_vars}{id_sistema};
+       my $resp=$udat{'user'};
+       my $sql = "DELETE FROM perfil_sist_usuario where (login='$login') AND (id_perfil=$id_perfil) AND (id_sistema=$id_sistema)";
+       ##Conexion con la base
+       #TODO Cambiar los parametros de conexion segun corresponda.
+       my $dbh = DBI->connect('dbi:mysql:dbname=samurai;host=localhost',"samurai","25fdd50c0e4d68");
+       my $result=$dbh->do($sql);
+    #Desconexion con la base
+       $dbh->disconnect;  
+};
+
+
+
 !]
 [-
     $ret = shift;