]> git.llucax.com Git - z.facultad/75.43/tp1.git/blob - src/lib/pagina.php
a187c53825bda300403c7aff9840c856044826fc
[z.facultad/75.43/tp1.git] / src / lib / pagina.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/Usuario.php';
12
13 // Configuración de la sesión.
14 ini_set('session.gc_maxlifetime', 86400); // Que el GC no la limpie por 24hs
15 //ini_set('session.use_only_cookies', 1); // Para mayor seguridad
16 session_set_cookie_params(1800); // La sesión vence en 30 minutos
17
18 // Arranca la sesión
19 session_start();
20
21 // Pongo que tire mucho errores
22 error_reporting(E_ALL);
23
24 // Para que la fecha este en castellano
25 setlocale(LC_ALL, 'es_AR');
26
27 /// Cabecera de página
28 function pagina_cabecera($titulo = '')
29 {
30     // Guarda esta como la última página visitada.
31     $_SESSION['last_page'] = basename($_SERVER['PHP_SELF']);
32 ?>
33 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
34
35 <html lang="es">
36     <head>
37         <title>Grupos<?php echo $titulo ? " - $titulo" : '' ?></title>
38         <script src="lib.js" type="text/javascript" language="JavaScript">
39         </script>
40         <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" >
41     </head>
42     <body>
43         <h1>Grupos</h1>
44         <?php if ($titulo) echo "<h2>$titulo</h2>\n" ?>
45 <?php
46 }
47
48 /// Pie de página
49 function pagina_pie($autor, $mail, $foto)
50 {
51 ?>
52         <br />
53         <address>
54             <span lang="en">Copyleft</span> 2005 - Grupo 10 -
55             Autor:
56             <a href="mailto:<?php echo $mail ?>"><?php echo $autor ?></a>
57             <img src="<?php echo $foto ?>" alt="Foto de <?php echo $autor ?>"
58                  align="middle" />
59         </address>
60     </body>
61 </html>
62 <?php
63 }
64
65 /// Cabecera del menu (debe estar logueado)
66 function menu_cabecera($titulo = '')
67 {
68 ?>
69 <table summary="Estructura, divide contenido (derecha) de menú (izquierda)"
70         border="0" width="100%">
71     <tbody>
72     <tr>
73         <td width="200" valign="top"><!-- MENU -->
74             <h2>Menú</h2>
75             <ul>
76                 <li>
77                     <h3>FAQ</h3>
78                     <ul>
79                         <li><a href="faq.listadoPreguntas.php">Listar Preguntas</a></li>
80                         <li><a href="faq.ingresarPregunta.php">Ingresar Pregunta</a></li>
81                     </ul>
82                 </li>
83                 <li>
84                     <h3>Sitios</h3>
85                     <ul>
86                         <li><a href="">Algo</a></li>
87                         <li><a href="">Otro</a></li>
88                     </ul>
89                 </li>
90                 <?php if ($_SESSION['user']->esAdmin()) { ?>
91                 <li>
92                     <h3>Admin</h3>
93                     <ul>
94                         <li><a href="admin.creditos.php">Créditos</a></li>
95                         <li><a href="admin.admin.php">Cambio de Admin</a></li>
96                     </ul>
97                 </li>
98                 <?php } ?>
99                 <li><a href="admin.log.php">Log</a></li>
100                 <li><a href="admin.logout.php">Salir</a></li>
101             </ul>
102         </td>
103         <td valign="top">
104             <?php if ($titulo) echo "<h2>$titulo</h2>\n" ?>
105 <?php
106 }
107
108 /// Pié del menu
109 function menu_pie()
110 {
111 ?>
112         </td>
113     </tr>
114     </tbody>
115 </table>
116 <?php
117 }
118
119 /// Cabecera del marco de una página (con menú, necesita estar logueado).
120 function marco_cabecera($titulo = '', $admin_check = false)
121 {
122     pagina_check_login();
123     pagina_cabecera();
124     menu_cabecera($titulo);
125     if ($admin_check) admin_check();
126 }
127
128 /// Pie del marco de una página (con menú).
129 function marco_pie($autor, $mail, $foto)
130 {
131     menu_pie();
132     pagina_pie($autor, $mail, $foto);
133 }
134
135 /// Mensajes de error
136 function error($msg)
137 {
138     printf('<p style="color: red">%s</p>', $msg);
139 }
140
141 /// Mensajes de éxito
142 function ok($msg)
143 {
144     printf('<p style="color: green">%s</p>', $msg);
145 }
146
147 // Mensaje de advertencia.
148 function warn($msg)
149 {
150     printf("<p style=\"color: navy; font-weight: bold\">%s</p>\n", $msg);
151 }
152
153 /// Muestra un párrafo común
154 function p($msg)
155 {
156     printf("<p>%s</p>\n", $msg);
157 }
158
159 /// print fácil para debug.
160 function d($var)
161 {
162     echo '<pre>'; var_dump($var); echo '</pre>';
163 }
164
165 /// Verifica que el usuario esté logueado y si no lo está muestra login.
166 function pagina_check_login($redirect = true)
167 {
168     if (!@$_SESSION['user'])
169     {
170         // Avisamos a donde hay que volver
171         if ($redirect) $_SESSION['login_redirect'] = basename($_SERVER['PHP_SELF']);
172         include 'admin.login.php'; // Mostramos el login
173         exit;
174     }
175 }
176
177 ?>