Mejor descripción de la funcionalidad del menú de utilidades y herramientas.
[ecomupi.git] / contenido / sub.php
blob70f0ba78cf41ec37c90813020881904740cf90cc
1 <?php
2 /*Crear un link HTML*/
3 function CREAR_LINK($sAccion, $sTexto, $sTitulo) {
4 return "<a href=\"$sAccion\" title=\"$sTitulo\">$sTexto</a>";
7 /*Crear un link apropiado para GET*/
8 function CREAR_LINK_GET($sAccion, $sTexto, $sTitulo) {
9 return "<a href=\"?"._ACC_."=$sAccion\" title=\"$sTitulo\">$sTexto</a>";
12 function CONTENIDO_en_linea(){
13 global $session, $database;
14 echo '<h1>'. ($database->num_active_users + $database->num_active_guests) . ' usuario(s) en línea </h1>';
15 echo 'Clientes: ' . $database->num_active_users . "<br />";
16 echo 'Visitantes: ' . $database->num_active_guests . "<br />" . '<hr />';
17 echo "<ul>";
18 $q = "SELECT codigo FROM " . TBL_ACTIVE_USERS . " ORDER BY timestamp DESC,codigo";
19 //echo $q;
20 $result = $database->query($q);
21 $num_rows = mysql_numrows($result);
22 DEPURAR($num_rows);
23 if($num_rows > 0){
24 for($i=0; $i<$num_rows; $i++){
25 $uname = mysql_result($result,$i,"codigo");
26 echo CREAR_LINK_GET("ver+cliente:$uname","<li>" . $uname . "</li>" , "Ver la información de este cliente");
29 echo'</ul>';
32 function CONTENIDO_mostrar_principal() {
33 global $session;
35 CONTENIDO_mostrar_logo_cliente();
37 if ( isset( $_GET[_ACC_]) ) {
38 $ACC = explode(":",$_GET[_ACC_]);
39 if ( isset( $ACC[0] ) ) { $accion = urldecode($ACC[0]); }
40 } else {
41 $accion = "ingresar";
43 /* Verificamos si es permitido ver el sitio sin estar registrado, si no forzamor a ir al registro*/
44 if ( !$session->logged_in ) {
45 switch ( $accion ) {
46 case "ayuda contacto": break;
47 case "rpr clave": break;
48 case "info que": break;
49 case "info precios": break;
50 case "info servicios": break;
51 case "info creativo": break;
52 case "info detalles": break;
53 case "info contacto": break;
54 default:
55 $accion= "ingresar";
58 $usuario = isset( $ACC[1] ) ? $ACC[1] : "";
59 switch ( $accion ) {
60 case "ver cliente":
61 CONTENIDO_usuario_info( $usuario );
62 break;
64 case "editar usuario":
65 CONTENIDO_usuario_editar( $usuario );
66 break;
67 case "rpr clave":
68 CONTENIDO_recuperar_clave();
69 break;
71 case "gestionar clientes":
72 if($session->isAdmin()){
73 CONTENIDO_admin();
74 break;
77 case "gestionar pantallas":
78 if($session->isAdmin()){
79 $pantalla= isset( $_GET['id'] ) ? $_GET['id'] : "";
80 $catorcena= isset( $_GET['catorcena'] ) ? $_GET['catorcena'] : "";
81 CONTENIDO_pantallas($usuario,$pantalla,$catorcena);
82 break;
85 case "ver pedidos":
86 case "gestionar pedidos":
87 $pedido = isset( $_GET['pedido'] ) ? $_GET['pedido'] : "";
88 CONTENIDO_pedidos($usuario,$pedido);
89 break;
91 case "registro":
92 if($session->isAdmin()){
93 CONTENIDO_usuario_registrar();
94 break;
97 case "ingresar":
98 CONTENIDO_usuario_ingresar();
99 break;
101 case "ayuda contacto":
102 CONTENIDO_ayuda_contacto() ;
103 break;
105 case "gestionar mupis":
106 if($session->isAdmin()){
107 $mupi = isset( $_GET['mupi'] ) ? $_GET['mupi'] : "";
108 CONTENIDO_mupis($usuario,$mupi);
109 break;
112 case "gestionar calles":
113 if($session->isAdmin()){
114 $calle = isset( $_GET['calle'] ) ? $_GET['calle'] : "";
115 CONTENIDO_calles($usuario,$calle);
116 break;
119 case "ver reportes":
120 ADMIN_reportes();
121 break;
123 case "ver ubicaciones":
124 CONTENIDO_mupis_ubicaciones($usuario);
125 break;
127 case "gestionar eventos":
128 case "ver eventos":
129 $evento = isset( $_GET['evento'] ) ? $_GET['evento'] : "";
130 CONTENIDO_mupis_eventos($usuario, $evento);
131 break;
133 case "ver estadisticas":
134 CONTENIDO_global_estadisticas();
135 break;
137 case "info contacto":
138 CONTENIDO_mupis_contacto();
139 break;
141 case "info creativo":
142 CONTENIDO_mupis_creativo();
143 break;
145 case "info que":
146 CONTENIDO_mupis_info();
147 break;
149 case "info precios":
150 CONTENIDO_mupis_precios();
151 break;
153 case "info servicios":
154 CONTENIDO_mupis_servicios();
155 break;
157 case "info creativo":
158 CONTENIDO_mupis_creativo();
159 break;
161 case "info detalles":
162 CONTENIDO_mupis_detalle();
163 break;
165 case "info nosotros":
166 CONTENIDO_global_info();
167 break;
169 case "gestionar comentarios":
170 $id_comentario = isset( $_GET['comentario'] ) ? $_GET['comentario'] : "";
171 CONTENIDO_comentarios($usuario, $id_comentario);
172 break;
174 case "salir":
175 $session->logout();
176 header("Location: ./");
177 break;
179 case "ver":
180 $id = isset( $ACC[1] ) ? $ACC[1] : "";
181 echo '<h1>Mostrando imagen con Id. '.$id.'</h1>';
182 echo '<center>'.CargarImagenDesdeBD($id).'</center>';
183 break;
185 default:
186 CONTENIDO_global_404();
189 function IMAGEN ($ruta, $alt="") {
190 return '<img src="'. $ruta . '" alt="'. $alt .'" />';
193 function CONTENIDO_mostrar_logo() {
194 //echo '<center>' . IMAGEN("./logo.gif") . '</center>';
195 echo IMAGEN("./logo.gif");
198 function CONTENIDO_mostrar_logo_cliente() {
199 global $session, $database;
200 if ( !$session->isAdmin() && $session->logged_in ) {
201 $q = "SELECT logotipo FROM ". TBL_USERS . " WHERE codigo='".$session->codigo."';";
202 $result = $database->query($q);
203 echo '<center>' . CargarImagenDesdeBD(mysql_result($result,0,"logotipo"),'200px','200px') . '</center><hr />';
204 //echo IMAGEN("./logo_generico.gif");
208 function INICIAR_MENUES () {
209 global $session;
210 switch ($session->userlevel) {
211 case ADMIN_LEVEL:
212 $s =
214 <div class="chromestyle" id="chromemenu">
215 <ul>
216 <li><a href="./">Inicio</a></li>
217 <li><a href="#" rel="menu_herramientas">Editar</a></li>'
218 .'<li>'. CREAR_LINK_GET("registro","Registrar cliente", "Agregar un nuevo cliente al sistema") .'</li>'
219 .'<li>'. CREAR_LINK_GET("ver+ubicaciones","Ubicaciones", "Ver mapa de MUPIS") .'</li>'
220 .'<li>'. CREAR_LINK_GET("gestionar+pantallas","Gestionar pantallas", "Eliminar o modificar pantallas") .'</li>'
221 .'<li>'. CREAR_LINK_GET("gestionar+pedidos","Gestionar pedidos", "Eliminar o modificar pedidos") .'</li>'
222 .'<li>'. CREAR_LINK_GET("ver+reportes", "Reportes", "Generar reportes") .'</li>'
223 .'<li><a href="./?accion=salir">Cerrar sesión</a></li>
224 </ul>
225 </div>
227 //Herramientas
228 $s .= '
229 <div id="menu_herramientas" class="dropmenudiv" style="width: 150px;">'
230 . CREAR_LINK_GET("gestionar+clientes","Clientes", "Gestionar clientes")
231 . CREAR_LINK_GET("gestionar+mupis","Eco Mupis", "Eliminar o modificar MUPIS")
232 . CREAR_LINK_GET("gestionar+calles","Calles", "Eliminar o modificar calles")
233 . CREAR_LINK_GET("ver+eventos","Eventos", "Agregar, Eliminar o modificar eventos")
234 . CREAR_LINK_GET("gestionar+comentarios", "Comentarios", "Eliminar o modificar comentarios")
235 .'</div>';
236 break;
238 case SALESMAN_LEVEL:
239 $s =
241 <div class="chromestyle" id="chromemenu">
242 <ul>
243 <li><a href="./">Inicio</a></li>'
244 .'<li>'. CREAR_LINK_GET("ver+ubicaciones","Ubicaciones", "Ver mapa de MUPIS") .'</li>'
245 .'<li><a href="./?accion=salir">Cerrar sesión</a></li>
246 </ul>
247 </div>
249 break;
251 CASE CLIENT_LEVEL:
252 $s =
254 <div class="chromestyle" id="chromemenu">
255 <ul>
256 <li><a href="./">Estadísticas</a></li>
257 <li><a href="./?accion=ver+ubicaciones">Mis Ubicaciones</a></li>
258 <li><a href="./?accion=ver+eventos" >Eventos</a></li>
259 <li><a href="./?accion=ayuda+contacto">Comenta</a></li>
260 <li><a href="./?accion=ver+reportes">Reportes</a></li>
261 <li><a href="./?accion=salir">Cerrar sesión</a></li>
262 </ul>
263 </div>
265 break;
267 case USER_LEVEL:
268 $s =
270 <div class="chromestyle" id="chromemenu">
271 <ul>
272 <li><a href="./" onclick="return false">Estadísticas</a></li>
273 <li><a href="./?accion=ver+ubicaciones">Mis Ubicaciones</a></li>
274 <li><a href="./" onclick="return false">Eventos</a></li>
275 <li><a href="./?accion=ayuda+contacto">Comenta</a></li>
276 <li><a href="./" onclick="return false"">Reportes</a></li>
277 <li><a href="./?accion=salir">Cerrar sesión</a></li>
278 </ul>
279 </div>
281 break;
284 // Finalmente iniciamos el script.
285 $s .= '<script type="text/javascript">cssdropdown.startchrome("chromemenu")</script>';
286 return $s;
289 function Query2Table($result, $tableFeatures="") {
290 $table = "";
291 $table .= "<table $tableFeatures>\n\n";
292 $noFields = mysql_num_fields($result);
293 $table .= "<tr>\n";
294 for ($i = 0; $i < $noFields; $i++) {
295 $field = mysql_field_name($result, $i);
296 $table .= "\t<th>$field</th>\n";
298 while ($r = mysql_fetch_row($result)) {
299 $table .= "<tr>\n";
300 foreach ($r as $column) {
301 $table .= "\t<td>$column</td>\n";
303 $table .= "</tr>\n";
305 $table .= "</table>\n\n";
306 return $table;
309 function AnularFechaNula ($time,$EnVacioHoy=false) {
310 if ( $EnVacioHoy ) { $vacio = date("d-m-Y"); } else { $vacio = ""; }
311 if ( $time ) { return date("d-m-Y", $time); } else { return $vacio; }
313 function SCRIPT ($Script) {
314 return '<script type="text/javascript">$(document).ready(function (){'.$Script.'});</script>';
316 function CargarImagenEnBD ($NombreCampo, $Categoria, $Id_Imagen = 0) {
317 global $database;
319 Verificamos que exista la superglobal $_FILES para el indice del supuesto campo INPUT=FILE para no trabajar de gusto...
321 //print_ar($_FILES);
322 if ( !$_FILES[$NombreCampo]['error'] ) {
323 $ParsedIMG = mysql_real_escape_string(file_get_contents($_FILES[$NombreCampo]['tmp_name']));
324 //echo $ParsedIMG;
325 $q = "INSERT INTO ".TBL_IMG." (id_imagen, data, categoria, mime) VALUES(".$Id_Imagen.", '".$ParsedIMG."', '".$Categoria."', '".$_FILES[$NombreCampo]['type']."') ON DUPLICATE KEY UPDATE data=VALUES(data), categoria=VALUES(categoria), mime=VALUES(mime);";
326 $database->query($q);
327 return mysql_insert_id($database->connection);
328 } else {
330 Ok, si no esta establecida ninguna imagen y nos dieron y $Id_Imagen es porque quieren eliminarla.
331 * Eliminamos los datos de esa fila para recuperar el espacio.
332 * Retornamos NULL para denotar la nueva anti-referencia.
334 if ( $Id_Imagen ) {
335 $q = "DELETE FROM ".TBL_IMG." WHERE id_imagen=".$Id_Imagen.";";
336 $database->query($q);
339 return NULL;
342 function CargarImagenDesdeBD ($id, $width='100%', $height='100%') {
343 return '<img style="max-width:'.$width.';max-height:'.$height.';" src="include/ver.php?id='.$id.'" />';
346 function GenerarTooltip ($texto) {
347 return ' onMouseOver=\'toolTip("'.addslashes($texto).'")\' onMouseOut="toolTip()" ';
350 function Mensaje ($texto, $tipo=_M_INFO){
351 switch ( $tipo ) {
352 case _M_INFO:
353 $id = "info";
354 break;
355 case _M_ERROR:
356 $id = "error";
357 break;
358 case _M_NOTA:
359 $id = "nota";
360 break;
361 default:
362 echo 'Error: no se definió el $tipo de mensaje';
365 return "<div id=\"$id\">".$texto."</div>";
369 function truncate($string, $max = 120, $replacement = '...')
371 if (strlen($string) <= $max)
373 return $string;
375 $leave = $max - strlen ($replacement);
376 return substr_replace($string, $replacement, $leave);