]> git.llucax.com Git - z.facultad/75.43/tp1.git/blob - src/lib/Usuario.php
Saco link de Ingresar si faltan admins.
[z.facultad/75.43/tp1.git] / src / lib / Usuario.php
1 <?php
2 // vim: set binary noeol et sw=4 sts=4 :
3 // Grupo 10
4 //
5 // Lucarella, Schein, Arena
6 //
7 // Creado: Leandro Lucarella (sáb abr 30 20:21:30 ART 2005)
8 //
9 // $Id$
10
11 require_once 'lib/file.creditos.php';
12 require_once 'lib/file.admins.php';
13 require_once 'lib/file.users.php';
14
15 /**
16  * XXX detailed description
17  *
18  * @author    XXX
19  * @copyright XXX
20  * @abstract
21  */
22 class Usuario
23 {
24     // Attributes
25    /**
26     *    XXX
27     *    @access public
28     */
29     var $id;
30
31    /**
32     *    XXX
33     *    @access public
34     */
35     var $apellido;
36
37    /**
38     *    XXX
39     *    @access public
40     */
41     var $nombre;
42
43    /**
44     *    XXX
45     *    @access public
46     */
47     var $admin;
48
49    /**
50     *    XXX
51     *    @access public
52     */
53     var $ultimoLogin;
54
55     // Operations
56    /**
57     *    XXX
58     *    
59     *    @access public 
60     *    @returns string
61     */
62     function toHTML()
63     {
64     }
65
66     function cargar($id)
67     {
68     }
69
70     /**
71      * Chequea si existen 2 admins.
72      * @return string true si existen 2 admins, false de otra forma.
73      * @static
74      */
75     function checkAdmins()
76     {
77         $admins = @file('data/admins.txt');
78         if (count($admins) < 2) return false;
79         return true;
80     }
81
82     /**
83      * Asocia a un integrante del grupo.
84      * @return mixed Si hubo error, retorna un string con el error, si no retorna ''.
85      * @static
86      */
87     function asociar($id, $pass, $email, $admin = false)
88     {
89         // TODO lo mismo para asesores
90         if (($f = fopen('data/int_2005.txt', 'r')) === false)
91             return 'Error al abrir archivo de integrantes!';
92         while (!feof($f))
93         {
94             $int = fgetcsv($f, 4096);
95             if ($int[0] == $id) break;
96         }
97         if ($int[0] != $id)
98             return 'El número de registro no existe, ese usuario no se puede asociar al grupo!';
99         if (@file_users_get($id, true))
100             return 'El usuario ya está registrado!';
101         if (!file_users_add($id, $pass, $email))
102             return 'No se pudo agregar el usuario!';
103         if ($admin)
104         {
105             if (Usuario::checkAdmins())
106                 return 'Ya hay 2 administradores en el sistema!';
107             if (!file_admins_add($id))
108                 return 'No se pudo agregar el usuario a la lista de administradores!';
109         }
110         if (!file_creditos_crear($id))
111             return 'No se pudo crear el archivo de créditos!';
112         return '';
113     }
114
115 }
116
117 ?>