]> git.llucax.com Git - z.facultad/75.43/tp1.git/commitdiff
Se agregan nuevos métodos estáticos a Usuario: getSocios() y getAsesores() para
authorLeandro Lucarella <llucax@gmail.com>
Fri, 6 May 2005 18:40:45 +0000 (18:40 +0000)
committerLeandro Lucarella <llucax@gmail.com>
Fri, 6 May 2005 18:40:45 +0000 (18:40 +0000)
obtener los usuarios que sean de un tipo particular. Además se agrega un
parámetro extra $admins para indicar si se quieren incluir usuarios
administradores.
Se usan los nuevos métodos para obtener listas de usuarios con más sentido a la
hora de agregar créditos (sólo se muestran Socios) y de cambiar el administrador
(se muestran usuarios que no sean administradores).

src/admin.admin.php
src/admin.creditos.php
src/lib/Usuario.php

index 40631f8d75a4e01692a04c8fa2ec8110ea230229..b8c932bd180554b1b42bb857e3a3a5dc5ea37174 100644 (file)
@@ -25,7 +25,7 @@ if (isset($_POST['admin_ceder']) and isset($_POST['admin_ceder_pass']))
     {
         marco_cabecera('Ceder Administración', true);
         error($err);
-        admin_form_ceder_admin(Usuario::getAll(), $_POST['admin_ceder']);
+        admin_form_ceder_admin(Usuario::getAll(false), $_POST['admin_ceder']);
     }
     else // ok
     {
@@ -39,7 +39,7 @@ if (isset($_POST['admin_ceder']) and isset($_POST['admin_ceder_pass']))
 else // Si no llenó el formulario
 {
     marco_cabecera('Ceder Administración', true);
-    admin_form_ceder_admin(Usuario::getAll());
+    admin_form_ceder_admin(Usuario::getAll(false));
 }
 
 marco_pie('Leandro Lucarella', 'llucare@fi.uba.ar');
index c04af012a626c57ca912a316c7d1b8592e021f62..f98c4344a49157bf4743d2f6d785f03cf3705959 100644 (file)
@@ -28,17 +28,17 @@ if (isset($_POST['admin_cred']) and isset($_POST['admin_cred_user'])
         $u->addCreditos($_POST['admin_cred']);
         ok('Se agregaron '.$_POST['admin_cred'].' créditos al usuario '
             .$u->getNombre().' '.$u->getApellido());
-        admin_form_creditos(Usuario::getAll(), $u->getId(),$_POST['admin_cred']);
+        admin_form_creditos(Usuario::getSocios(), $u->getId(),$_POST['admin_cred']);
     }
     else
     {
-        admin_form_creditos(Usuario::getAll(), $_POST['admin_cred_user'],
+        admin_form_creditos(Usuario::getSocios(), $_POST['admin_cred_user'],
             $_POST['admin_cred']);
     }
 }
 else // Si no llenó el formulario
 {
-    admin_form_creditos(Usuario::getAll());
+    admin_form_creditos(Usuario::getSocios());
 }
 
 marco_pie('Leandro Lucarella', 'llucare@fi.uba.ar');
index bdef593a2d7af22f2f3aea45259c36063c98a1be..3de140892c939e94fe2474a3d9acaa646bb75cc4 100644 (file)
@@ -221,17 +221,57 @@ class Usuario
         return '';
     }
 
+    /**
+     * Obtiene una lista de los usuarios que son socios.
+     * Si $admins es false, no incluye administradores.
+     * @return array con los objetos de usuarios.
+     * @static
+     */
+    function getSocios($admins = true)
+    {
+        $r = array();
+        foreach (file_users_get_all() as $i)
+        {
+            $u = new Usuario($i[0]);
+            if (!$u->esAsesor()
+                    and (!$u->esAdmin() or $u->esAdmin() and $admins))
+                $r[] = $u;
+        }
+        return $r;
+    }
+
+    /**
+     * Obtiene una lista de los usuarios que son asesores.
+     * Si $admins es false, no incluye administradores.
+     * @return array con los objetos de usuarios.
+     * @static
+     */
+    function getAsesores($admins = true)
+    {
+        $r = array();
+        foreach (file_users_get_all() as $i)
+        {
+            $u = new Usuario($i[0]);
+            if ($u->esAsesor()
+                    and (!$u->esAdmin() or $u->esAdmin() and $admins))
+                $r[] = $u;
+        }
+        return $r;
+    }
+
     /**
      * Obtiene una lista de todos los usuarios asociados al sistema.
+     * Si $admins es false, no incluye administradores.
      * @return array con los objetos de usuarios.
      * @static
      */
-    function getAll()
+    function getAll($admins = true)
     {
         $r = array();
-        foreach (file_users_get_all() as $u)
+        foreach (file_users_get_all() as $i)
         {
-            $r[] = new Usuario($u[0]);
+            $u = new Usuario($i[0]);
+            if (!$u->esAdmin() or $u->esAdmin() and $admins) $r[] = $u;
         }
         return $r;
     }