--- /dev/null
+<?php\r
+// Grupo 10\r
+//\r
+// Lucarella, Schein, Arena\r
+//\r
+// Creado: Sebastian Arena\r
+//\r
+require_once 'lib/info.functions.php';\r
+require_once 'lib/info.forms.php';\r
+\r
+\r
+// Chequea que se este logueado\r
+pagina_check_login();\r
+\r
+if (isset($_GET["id"])) {\r
+ $id = $_GET["id"] * 1;\r
+} else {\r
+ if (!isset($_POST['hidSaving'])) {\r
+ Header("Location: admin.log.php");\r
+ }\r
+}\r
+\r
+marco_cabecera('Ingreso de Comentario');\r
+\r
+// Da de alta el comentario\r
+// Verifica que la persona no sea administrador del sistema\r
+if (!$_SESSION['user']->esAdmin()) {\r
+\r
+ //Para modificar los valores\r
+ if (isset($_POST['__hidID'])) {\r
+ $__hidID = $_POST['__hidID'] * 1;\r
+ } else {\r
+ $__hidID = -1;\r
+ }\r
+\r
+ //isset($_POST['hidInfoID']) && \r
+ if (isset($_POST['txtComentario'])) {\r
+ $__hidID = info_ingresar_comentario( $__hidID, $id, $_POST['txtComentario'], $_SESSION['user']->getId() );\r
+ info_form_ingresar_comentario( $__hidID, $id, $_POST['txtComentario'] );\r
+ } else {\r
+ info_form_ingresar_comentario( $__hidID, $id, "" ); \r
+ }\r
+} else {\r
+ echo warn("No esta habilitado para dar de alta comentarios, debe ser socio o asesor");\r
+}\r
+\r
+marco_pie('Sebastian Arena', 'seba@arenanet.com.ar', 'img/sarena.jpg');\r
+\r
+?>\r
+\r
// Chequea que se este logueado\r
pagina_check_login();\r
\r
-marco_cabecera('Ingreso de Temas');\r
+marco_cabecera('Ingreso de Informacion');\r
\r
-// Da de alta el tema\r
-// Verifica que la persona sea administrador del sistema\r
+// Da de alta la Informacion\r
+// Verifica que la persona no sea administrador del sistema\r
if (!$_SESSION['user']->esAdmin()) {\r
\r
+ //Para modificar los valores\r
+ if (isset($_POST['__hidID'])) {\r
+ $__hidID = $_POST['__hidID'] * 1;\r
+ } else {\r
+ $__hidID = -1;\r
+ }\r
+\r
if (isset($_POST['txtTema']) && isset($_POST['txtURL']) && isset($_POST['txtComentario'])) {\r
- if ( info_ingresar_info( $_POST['txtTema'], $_POST['txtURL'], $_SESSION['user']->getId(), $_POST['txtComentario'] ) ) {\r
- info_form_ingresar_info( "", "", "" ); \r
- } else {\r
- info_form_ingresar_info( $_POST['txtTema'], $_POST['txtURL'], $_POST['txtComentario'] );\r
- }\r
+ $__hidID = info_ingresar_info( $__hidID, $_POST['txtTema'], $_POST['txtURL'], $_SESSION['user']->getId(), $_POST['txtComentario'] );\r
+ info_form_ingresar_info( $__hidID, $_POST['txtTema'], $_POST['txtURL'], $_POST['txtComentario'] );\r
} else {\r
- info_form_ingresar_info( "", "", "" ); \r
+ info_form_ingresar_info( $__hidID, "", "", "" ); \r
}\r
} else {\r
echo warn("No esta habilitado para dar de alta informacion, debe ser socio o asesor");\r
// Verifica que la persona sea administrador del sistema\r
if ($_SESSION['user']->esAdmin()) {\r
\r
+ //Para modificar los valores\r
+ if (isset($_POST['__hidID'])) {\r
+ $__hidID = $_POST['__hidID'] * 1;\r
+ } else {\r
+ $__hidID = -1;\r
+ }\r
+\r
if (isset($_POST['txtNombre']) && isset($_FILES['txtIcono']) && isset($_POST['txtDescripcion'])) {\r
- if ( info_ingresar_tema( $_POST['txtNombre'], $_SESSION['user']->getId(), $_POST['txtDescripcion'], $_FILES['txtIcono']['tmp_name'] ) ) {\r
- info_form_ingresar_tema( "", "", "" ); \r
- } else {\r
- info_form_ingresar_tema( $_POST['txtNombre'], $_FILES['txtIcono'], $_POST['txtDescripcion'] );\r
- }\r
+ $__hidID = info_ingresar_tema( $__hidID, $_POST['txtNombre'], $_SESSION['user']->getId(), $_POST['txtDescripcion'], $_FILES['txtIcono']['tmp_name'] );\r
+ info_form_ingresar_tema( $__hidID, $_POST['txtNombre'], $_FILES['txtIcono'], $_POST['txtDescripcion'] );\r
} else {\r
- info_form_ingresar_tema( "", "", "" ); \r
+ info_form_ingresar_tema( $__hidID, "", "", "" ); \r
}\r
} else {\r
echo warn("No esta habilitado para dar de alta un tema, debe ser administrador del sistema");\r
--- /dev/null
+<?php\r
+// Grupo 10\r
+//\r
+// Lucarella, Schein, Arena\r
+//\r
+// Creado: Sebastian Arena\r
+//\r
+\r
+require_once 'lib/info.forms.php';\r
+require_once 'lib/info.functions.php';\r
+require_once 'lib/Tema.php';\r
+require_once 'lib/Info.php';\r
+\r
+// Chequea que se este logueado\r
+pagina_check_login();\r
+\r
+if (isset($_GET["id"])) {\r
+ $id = $_GET["id"] * 1;\r
+} else {\r
+ Header("Location: admin.log.php");\r
+}\r
+\r
+$objInfo = new Info($id,0);\r
+$objTema = new Tema($objInfo->id,0);\r
+marco_cabecera('Listado de Comentarios para ' . $objInfo->url);\r
+?>\r
+ <table border="1" cellpadding="2" cellspacing="2" style="border-collapse: collapse">\r
+ <tr>\r
+ <td colspan="3">Tema: <img src="<?php echo $objTema->icono;?>" border="0" alt="icono tema <?php echo $objTema->id;?>"/></td>\r
+ </tr>\r
+ <?php if (!$_SESSION['user']->esAdmin()) { ?>\r
+ <tr>\r
+ <td colspan="3"><a href="info.ingresarComentario.php?id=<?echo $id;?>">Ingresar Comentario</a></td>\r
+ </tr>\r
+ <?php } ?>\r
+ <?php info_listar_comentarios('<tr><td colspan="2">Autor</td><td>Comentario</td></tr>',$objInfo->id); ?>\r
+ </table>\r
+<?php\r
+marco_pie('Sebastian Arena', 'seba@arenanet.com.ar', 'img/sarena.jpg');\r
+?>\r
+\r
marco_cabecera('Listado de Informacion');\r
\r
$simpleSort = 1;\r
-if (isset($_GET["simpleSort"])) {\r
- $simpleSort = $_GET["simpleSort"] * 1;\r
+$tema = -1;\r
+if (isset($_GET["txtTema"])) {\r
+ if ( $_GET["txtTema"] != '' ) {\r
+ $tema = $_GET["txtTema"] * 1;\r
+ }\r
}\r
+\r
+$onchangeTema = "location.href = '" . $_SERVER['PHP_SELF'] . "?txtTema=' + this.value;";\r
?>\r
+ Ver Tema: <?info_form_printTemaCombo($tema,$onchangeTema)?><br/><br/>\r
<table border="1" cellpadding="2" cellspacing="2" style="border-collapse: collapse">\r
- <tr>\r
- <td colspan="5"><a href="<?php echo $_SERVER['PHP_SELF']; ?>?simpleSort=1">Ordenar por Ranking</a> | <a href="<?php echo $_SERVER['PHP_SELF']; ?>?simpleSort=0">Ordenar por Tema/Ranking</a></td>\r
- </tr>\r
- <?php info_listar_infos($simpleSort); ?>\r
+ <?php info_listar_infos('<tr><td>Tema</td><td>Autor</td><td>URL</td><td>Descripcion</td><td>Ranking</td><td>Comentarios</td></tr>',$simpleSort,$tema); ?>\r
</table>\r
<?php\r
marco_pie('Sebastian Arena', 'seba@arenanet.com.ar', 'img/sarena.jpg');\r
marco_cabecera('Listado de Temas');\r
?>\r
<table border="1" cellpadding="2" cellspacing="2" style="border-collapse: collapse">\r
- <tr>\r
- <td>ID</td>\r
- <td>Icono</td>\r
- <td>Nombre</td>\r
- <td>Descripcion</td>\r
- <td colspan="2">Autor</td>\r
- </tr>\r
- <?php info_listar_temas(); ?>\r
+ <?php info_listar_temas('<tr><td>ID</td><td>Icono</td><td>Nombre</td><td>Descripcion</td><td colspan="2">Autor</td></tr>'); ?>\r
</table>\r
<?php\r
marco_pie('Sebastian Arena', 'seba@arenanet.com.ar', 'img/sarena.jpg');\r
?>\r
-\r
--- /dev/null
+<?php\r
+// Grupo 10\r
+//\r
+// Lucarella, Schein, Arena\r
+//\r
+// Creado: Sebastian Arena\r
+//\r
+require_once 'lib/info.functions.php';\r
+require_once 'lib/info.forms.php';\r
+require_once 'lib/Usuario.php';\r
+\r
+\r
+// Chequea que se este logueado\r
+pagina_check_login();\r
+\r
+marco_cabecera('Mencion Especial:');\r
+\r
+$arrInfos = info_obtener_infos(false,1,-1);\r
+$arrRankingAutor = array();\r
+foreach( $arrInfos as $objInfo ) {\r
+ if ($objInfo->ranking > 0) {\r
+ if (isset($arrRankingAutor[$objInfo->autor])) {\r
+ $arrRankingAutor[$objInfo->autor] = intval($arrRankingAutor[$objInfo->autor]) + intval($objInfo->ranking);\r
+ } else {\r
+ $arrRankingAutor[$objInfo->autor] = intval($objInfo->ranking);\r
+ }\r
+ } else {\r
+ break;\r
+ }\r
+}\r
+\r
+$max_ranking = 0;\r
+$max_autores = array();\r
+foreach( $arrRankingAutor as $autor => $ranking ) {\r
+ if ($ranking > $max_ranking) {\r
+ $max_ranking = $ranking;\r
+ $max_autores = array();\r
+ $max_autores[] = $autor;\r
+ } else {\r
+ if ($ranking = $max_ranking) {\r
+ $max_autores[] = $autor;\r
+ }\r
+ }\r
+}\r
+?>\r
+<table border="0" cellpadding="2" cellspacing="2">\r
+ <tr>\r
+ <td>Usuario(s) que agregó información con mas ranking:</td>\r
+ </tr>\r
+ <tr>\r
+ <td> </td>\r
+ </tr>\r
+<?php\r
+ foreach($max_autores as $autor) {\r
+ $objUser = new Usuario($autor);\r
+ ?><tr>\r
+ <td><img src="<?php echo $objUser->getFotoFilename();?>" border="0" alt="icono usuario <?php echo $objUser->getId();?>"/></td>\r
+ </tr>\r
+ <?php\r
+ }\r
+?>\r
+</table>\r
+<?\r
+marco_pie('Sebastian Arena', 'seba@arenanet.com.ar', 'img/sarena.jpg');\r
+?>\r
+\r
<?php
-// vim: set binary noeol et sw=4 sts=4 :
// Grupo 10
//
// Lucarella, Schein, Arena
//
-// Creado: Leandro Lucarella (sáb abr 30 20:21:30 ART 2005)
-//
-// $Id$
+// Creado: Sebastian Arena
require_once 'Item.php';
-/**
- * XXX detailed description
- *
- * @author XXX
- * @copyright XXX
- */
class Comentario extends Item
{
- // Attributes
- // Associations
- // Operations
+ var $id;
+
+ /*Extra Data*/
+ var $autor_original;
+ var $autor_foto;
+ var $autor_apellido;
+
+ var $comentarioCSVBaseConst = 'data/comentarios';
+ var $comentarioCSVConst = '';
+ /*
+ Formato en Disco:
+ id | autor | comentario | fecha
+ */
+
+ function Comentario($param, $pInfo_ID, $loadFromRecord) {
+ $this->comentarioCSVConst = $this->comentarioCSVBaseConst . "." . $pInfo_ID . ".csv";
+ if (!$loadFromRecord) {
+ if ($param) {
+ $this->id = $param;
+ $this->reload();
+ }
+ } else {
+ $this->id = $param[0];
+ $this->autor = $param[1];
+ $this->texto = $param[2];
+ $this->fecha = $param[3];
+ }
+ }
+
+ function reload() {
+ if (is_file($this->comentarioCSVConst)) {
+ $record_info = fsearchcsv($this->comentarioCSVConst, $this->id);
+ if ($record_info) {
+ $this->id = $param[0];
+ $this->autor = $param[1];
+ $this->texto = $param[2];
+ $this->fecha = $param[3];
+ }
+ }
+ }
+
+ function saveNew() {
+ return fappendcsv($this->comentarioCSVConst, array( $this->id, $this->autor, $this->texto, $this->fecha ));
+ }
+
+ function saveExisting() {
+ if (($f = fopen($this->comentarioCSVConst, 'r')) == false) return false; // error
+ $index = 0;
+ $indexSave = 0;
+ while (!feof($f))
+ {
+ $d = fgetcsv($f, 4096);
+ $index++;
+ if ($d[0] == $this->id)
+ {
+ fclose($f);
+ if (($f = fopen($this->comentarioCSVConst, 'r+')) == false) return false; // error
+ while ($indexSave!=($index-1)) { fgetcsv($f, 4096); $indexSave++; }
+ fputcsv($f, array( $this->id, $this->autor, $this->texto, $this->fecha ));
+ fclose($f);
+ return true;
+ }
+ }
+ fclose($f);
+ return false;
+ }
+
+ function saveLoadThis( $pId, $pInfo_ID, $pComentario, $pAutor ) {
+ $this->id = $pId;
+ $this->autor = $pAutor;
+ $this->texto = preg_replace('[\n|\r\n]','<br/>',$pComentario);
+ $this->fecha = time();
+ $this->comentarioCSVConst = $this->comentarioCSVBaseConst . "." . $pInfo_ID . ".csv";
+ }
+
+ function ingresar( $pId, $pInfo_ID, $pComentario, $pAutor ) {
+ $this->saveLoadThis( $pId, $pInfo_ID, $pComentario, $pAutor );
+ $resultado = "";
+ if (!$this->saveNew()) {
+ $resultado = "<strong>ERROR</strong> al agregar el comentario. Revise que los parametros sean los adecuados";
+ file_log_add($pAutor,$resultado);
+ } else {
+ file_log_add($pAutor,"Se agregó el comentario");
+ }
+ return $resultado;
+ }
+
+ function modificar( $pId, $pInfo_ID, $pComentario, $pAutor ) {
+ $this->saveLoadThis( $pId, $pInfo_ID, $pComentario, $pAutor );
+ $resultado = "";
+ if (!$this->saveExisting()) {
+ $resultado = "<strong>ERROR</strong> al modificar el comentario. Revise que los parametros sean los adecuados";
+ file_log_add($pAutor,$resultado);
+ } else {
+ file_log_add($pAutor,"Se modificó el comentario");
+ }
+ return $resultado;
+ }
+
+ function toHTML() {
+ ?><tr>
+ <?php
+ if ($this->autor_original != $this->autor) {
+ ?>
+ <td><img src="<?php echo $this->autor_foto;?>" border="0" alt="icono usuario"/></td>
+ <td><?php echo $this->autor_apellido;?></td><?php
+ } else {
+ ?>
+ <td colspan="2"><?php echo $this->autor_original;?> (autor original)</td><?php
+ }
+ ?>
+ <td><?php echo $this->texto;?></td>
+ </tr>
+ <?php
+ }
}
?>
\ No newline at end of file
<?php\r
-// vim: set binary noeol et sw=4 sts=4 :\r
// Grupo 10\r
//\r
// Lucarella, Schein, Arena\r
//\r
-// Creado: Leandro Lucarella (sáb abr 30 20:21:30 ART 2005)\r
+// Creado: Sebastian Arena\r
//\r
-// $Id: Link.php 9 2005-04-30 23:51:21Z llucare $\r
\r
require_once 'Item.php';\r
require_once 'file.php';\r
+require_once 'file.log.php';\r
\r
class Info extends Item\r
{\r
}\r
}\r
\r
- function ingresar( $pId, $pTema, $pURL, $pAutor, $pComentario ) {\r
+ function saveNew() {\r
+ return fappendcsv($this->infoCSVConst, array($this->id, $this->tema, $this->url, $this->autor, $this->comentario, $this->ranking, $this->fecha));\r
+ }\r
+\r
+ function saveExisting() {\r
+ if (($f = fopen($this->infoCSVConst, 'r')) == false) return false; // error\r
+ $index = 0;\r
+ $indexSave = 0;\r
+ while (!feof($f))\r
+ {\r
+ $d = fgetcsv($f, 4096);\r
+ $index++;\r
+ if ($d[0] == $this->id)\r
+ {\r
+ fclose($f);\r
+ if (($f = fopen($this->infoCSVConst, 'r+')) == false) return false; // error\r
+ while ($indexSave!=($index-1)) { fgetcsv($f, 4096); $indexSave++; }\r
+ fputcsv($f, array($this->id, $this->tema, $this->url, $this->autor, $this->comentario, $this->ranking, $this->fecha));\r
+ fclose($f);\r
+ return true;\r
+ }\r
+ }\r
+ fclose($f);\r
+ return false;\r
+ }\r
+\r
+ function saveLoadThis( $pId, $pTema, $pURL, $pAutor, $pComentario ) {\r
$this->id = $pId;\r
$this->tema = $pTema;\r
$this->url = $pURL;\r
$this->autor = $pAutor;\r
- $this->comentario = $pComentario;\r
+ $this->comentario = preg_replace('[\n|\r\n]','<br/>',$pComentario);\r
$this->ranking = 0;\r
$this->fecha = time();\r
$this->texto = '';\r
+ }\r
\r
+ function ingresar( $pId, $pTema, $pURL, $pAutor, $pComentario ) {\r
+ $this->saveLoadThis( $pId, $pTema, $pURL, $pAutor, $pComentario );\r
$resultado = "";\r
- if (!fappendcsv($this->infoCSVConst, array($this->id, $this->tema, $this->url, $this->autor, $this->comentario, $this->ranking, $this->fecha))) {\r
+ if (!$this->saveNew()) {\r
$resultado = "<strong>ERROR</strong> al agregar la informacion. Revise que los parametros sean los adecuados";\r
- }\r
+ file_log_add($pAutor,$resultado);\r
+ } else {\r
+ file_log_add($pAutor,"Se agregó la información");\r
+ }\r
+ return $resultado;\r
+ }\r
+\r
+ function modificar( $pId, $pTema, $pURL, $pAutor, $pComentario ) {\r
+ $this->saveLoadThis( $pId, $pTema, $pURL, $pAutor, $pComentario );\r
+ $resultado = "";\r
+ if (!$this->saveExisting()) {\r
+ $resultado = "<strong>ERROR</strong> al modificar la informacion. Revise que los parametros sean los adecuados";\r
+ file_log_add($pAutor,$resultado);\r
+ } else {\r
+ file_log_add($pAutor,"Se modificó la información");\r
+ }\r
return $resultado;\r
}\r
\r
<td><a href="<?php echo $this->url;?>" onclick="location.href='<?php echo $_SERVER['PHP_SELF'] ?>/../info.agregarRanking.php?id=<?php echo $this->id;?>';return false;"><?php echo $this->url;?></a></td>\r
<td><?php echo $this->comentario;?></td>\r
<td><?php echo $this->ranking;?></td>\r
+ <td><a href="info.listarComentarios.php?id=<?php echo $this->id; ?>">Ver Comentarios</a></td>\r
</tr>\r
<?php\r
}\r
\r
function incrementarRanking() {\r
+ file_log_add($_SESSION['user']->getId(),"Se visitó " . $this->url);\r
$this->ranking = $this->ranking + 1;\r
- if (($f = fopen($this->infoCSVConst, 'r')) == false) return false; // error\r
- $index = 0;\r
- $indexSave = 0;\r
- while (!feof($f))\r
- {\r
- $d = fgetcsv($f, 4096);\r
- $index++;\r
- if ($d[0] == $this->id)\r
- {\r
- $d[5] = $this->ranking;\r
- fclose($f);\r
- if (($f = fopen($this->infoCSVConst, 'r+')) == false) return false; // error\r
- while ($indexSave!=($index-1)) { fgetcsv($f, 4096); $indexSave++; }\r
- fputcsv($f, $d);\r
- fclose($f);\r
- return true;\r
- }\r
- }\r
- fclose($f);\r
- return false;\r
+ return $this->saveExisting();\r
}\r
}\r
?>\r
//\r
\r
require_once 'Item.php';\r
-require_once 'lib/file.php';\r
+require_once 'file.php';\r
require_once 'Usuario.php';\r
+require_once 'file.log.php';\r
\r
class Tema extends Item\r
{\r
}\r
}\r
\r
- function ingresar( $pId, $pNombre, $pAutor, $pDescripcion, $pIcono ) {\r
+ function saveNew() {\r
+ return fappendcsv($this->temasCSVConst, array($this->id, $this->autor, $this->nombre, $this->icono, $this->texto, $this->fecha));\r
+ }\r
+\r
+ function saveExisting() {\r
+ if (($f = fopen($this->temasCSVConst, 'r')) == false) return false; // error\r
+ $index = 0;\r
+ $indexSave = 0;\r
+ while (!feof($f))\r
+ {\r
+ $d = fgetcsv($f, 4096);\r
+ $index++;\r
+ if ($d[0] == $this->id)\r
+ {\r
+ fclose($f);\r
+ if (($f = fopen($this->temasCSVConst, 'r+')) == false) return false; // error\r
+ while ($indexSave!=($index-1)) { fgetcsv($f, 4096); $indexSave++; }\r
+ fputcsv($f, array($this->id, $this->autor, $this->nombre, $this->icono, $this->texto, $this->fecha));\r
+ fclose($f);\r
+ return true;\r
+ }\r
+ }\r
+ fclose($f);\r
+ return false;\r
+ }\r
+\r
+ function saveLoadThis( $pId, $pNombre, $pAutor, $pDescripcion, $pIcono ) {\r
$this->id = $pId;\r
$this->autor = $pAutor;\r
$this->nombre = $pNombre;\r
$this->icono = 'temas/' . $pId;\r
- $this->texto = $pDescripcion;\r
+ $this->texto = preg_replace('[\n|\r\n]','<br/>',$pDescripcion);\r
$this->fecha = time();\r
+ }\r
\r
+ function ingresar( $pId, $pNombre, $pAutor, $pDescripcion, $pIcono ) {\r
+ $this->saveLoadThis( $pId, $pNombre, $pAutor, $pDescripcion, $pIcono );\r
$resultado = "";\r
- //Se obtiene el ID mas alto actual\r
- if (!fappendcsv($this->temasCSVConst, array($this->id, $this->autor, $this->nombre, $this->icono, $this->texto, $this->fecha))) {\r
+ if (!$this->saveNew()) {\r
$resultado = "<strong>ERROR</strong> al agregar el Tema '" . $pNombre . "'. Revise que los parametros sean los adecuados";\r
+ file_log_add( $pAutor, $resultado);\r
} else {\r
if (!copy($pIcono, "temas/" . $pId)) {\r
$resultado = "No se pudo copiar la foto.";\r
+ file_log_add( $pAutor, $resultado);\r
+ } else {\r
+ file_log_add( $pAutor, "Se modificó el el '" . $pNombre . "'");\r
+ }\r
+ }\r
+ return $resultado;\r
+ }\r
+\r
+ function modificar( $pId, $pNombre, $pAutor, $pDescripcion, $pIcono ) {\r
+ $this->saveLoadThis( $pId, $pNombre, $pAutor, $pDescripcion, $pIcono );\r
+ $resultado = "";\r
+ //Se obtiene el ID mas alto actual\r
+ if (!$this->saveExisting()) {\r
+ $resultado = "<strong>ERROR</strong> al modificar el Tema '" . $pNombre . "'. Revise que los parametros sean los adecuados";\r
+ file_log_add( $pAutor, $resultado);\r
+ } else {\r
+ if (!copy($pIcono, "temas/" . $pId)) {\r
+ $resultado = "No se pudo modificar la foto.";\r
+ file_log_add( $pAutor, $resultado);\r
+ } else {\r
+ file_log_add( $pAutor, "Se modificó el el '" . $pNombre . "'");\r
}\r
}\r
return $resultado;\r
require_once 'lib/info.functions.php';\r
require_once 'Tema.php';\r
\r
-function info_form_ingresar_tema( $nombre, $icono, $descripcion ) {\r
+function info_form_ingresar_tema( $__hidID, $nombre, $icono, $descripcion ) {\r
?>\r
<form name="info_ingresar_tema" action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post" onSubmit="return info_validar_ingresar_tema(this);" enctype="multipart/form-data">\r
+ <input type="hidden" name="__hidID" value="<? echo $__hidID; ?>">\r
<script type="text/javascript" language="JavaScript">\r
<!--\r
function info_validar_ingresar_tema(f)\r
{\r
- if (!check_vacio(f.txtNombre, 'Nombre')) return false;\r
- if (!check_vacio(f.txtIcono, 'Icono')) return false;\r
- if (!check_vacio(f.txtDescripcion, 'Descripcion')) return false;\r
+ if ( (!check_vacio(f.txtNombre, 'Nombre')) || (!check_min_max_cant(f.txtURL, 'URL', 5, 20)) ) return false;\r
+ if ( (!check_vacio(f.txtIcono, 'Icono')) ) return false;\r
+ if ( (!check_vacio(f.txtDescripcion, 'Descripcion')) || (!check_min_max_cant(f.txtURL, 'URL', 5, 200)) ) return false;\r
return true;\r
}\r
+\r
+ function info_blankActual(f) {\r
+ if (confirm("Seguro desea perder la posibilidad de modificar?")) {\r
+ location.href = "<?php echo $_SERVER['PHP_SELF'] . '?' . $_SERVER['QUERY_STRING']; ?>";\r
+ }\r
+ }\r
-->\r
</script>\r
<table>\r
<td><textarea name="txtDescripcion" rows="3" cols="50"><?php echo $descripcion ?></textarea></td>\r
</tr>\r
<tr>\r
- <td colspan="2"><input type="submit" name="btnSubmit" value="Guardar"/></td>\r
+ <? if ( $__hidID == -1 ) { ?>\r
+ <td colspan="2"><input type="submit" name="btnSubmit" value="Guardar Tema"/></td>\r
+ <? } else { ?>\r
+ <td colspan="2">\r
+ <input type="submit" name="btnSubmit" value="Modificar Tema"/> \r
+ <input type="button" name="btnNew" value="Nuevo Tema" onclick="info_blankActual(this.form);"/> \r
+ </td>\r
+ <? } ?>\r
</tr>\r
</table>\r
</form>\r
<?php\r
}\r
\r
+function info_form_printTemaCombo( $tema , $onchangeTema) {\r
+\r
+ ?>\r
+ <select name="txtTema"<? if ($onchangeTema != '') { echo ' onchange="' . $onchangeTema . '"'; } ?>\r
+ <option value="">Seleccione un Tema...</option>\r
+ <?php\r
+ $arrTemas = info_obtener_temas();\r
+ foreach( $arrTemas as $objTema ) {\r
+ ?><option value="<?php echo $objTema->id; ?>"<?php if ($tema == $objTema->id) { echo " selected"; } ?>><? echo $objTema->nombre; ?></option><?php\r
+ }\r
+ ?>\r
+ </select>\r
+ <?php\r
+}\r
\r
\r
-function info_form_ingresar_info( $tema, $url, $comentario ) {\r
+function info_form_ingresar_info( $__hidID, $tema, $url, $comentario ) {\r
?>\r
<form name="info_ingresar_info" action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post" onSubmit="return info_validar_ingresar_info(this);">\r
+ <input type="hidden" name="__hidID" value="<? echo $__hidID; ?>">\r
<script type="text/javascript" language="JavaScript">\r
<!--\r
function info_validar_ingresar_info(f)\r
{\r
- if (!check_vacio(f.txtTema, 'Tema')) return false;\r
- if (!check_vacio(f.txtURL, 'URL')) return false;\r
- if (!check_vacio(f.txtComentario, 'Comentario')) return false;\r
+ if ( (!check_vacio(f.txtTema, 'Tema')) ) return false;\r
+ if ( (!check_vacio(f.txtURL, 'URL')) || (!check_min_max_cant(f.txtURL, 'URL', 5, 200)) ) return false;\r
+ if ( (!check_vacio(f.txtComentario, 'Comentario')) || (!check_min_max_cant(f.txtComentario, 'Comentario', 10, 500)) ) return false;\r
return true;\r
}\r
+\r
+ function info_blankActual(f) {\r
+ if (confirm("Seguro desea perder la posibilidad de modificar?")) {\r
+ location.href = "<?php echo $_SERVER['PHP_SELF'] . '?' . $_SERVER['QUERY_STRING']; ?>";\r
+ }\r
+ }\r
-->\r
</script>\r
<table>\r
<tr>\r
<td>Tema:</td>\r
- <td>\r
- <select name="txtTema">\r
- <option value="">Seleccione un Tema...</option>\r
- <?php\r
- $arrTemas = info_obtener_temas();\r
- foreach( $arrTemas as $objTema ) {\r
- ?><option value="<?php echo $objTema->id; ?>"<?php if ($tema == $objTema->id) { echo " selected"; } ?>><? echo $objTema->nombre; ?></option><?php\r
- }\r
- ?>\r
- </select>\r
- </td>\r
+ <td><?info_form_printTemaCombo($tema,'');?></td>\r
</tr>\r
<tr>\r
<td>URL:</td>\r
<td><textarea name="txtComentario" rows="3" cols="50"><?php echo $comentario ?></textarea></td>\r
</tr>\r
<tr>\r
- <td colspan="2"><input type="submit" name="btnSubmit" value="Guardar"/></td>\r
+ <? if ( $__hidID == -1 ) { ?>\r
+ <td colspan="2"><input type="submit" name="btnSubmit" value="Guardar Información"/></td>\r
+ <? } else { ?>\r
+ <td colspan="2">\r
+ <input type="submit" name="btnSubmit" value="Modificar Información"/> \r
+ <input type="button" name="btnNew" value="Nueva Información" onclick="info_blankActual(this.form);"/> \r
+ </td>\r
+ <? } ?>\r
+ </tr>\r
+ </table>\r
+ </form>\r
+<?php\r
+}\r
+\r
+\r
+\r
+\r
+function info_form_ingresar_comentario( $__hidID, $info_id, $comentario ) {\r
+?>\r
+ <form name="info_ingresar_comentario" action="<?php echo $_SERVER['PHP_SELF'] ?>?id=<?echo $info_id;?>" method="post" onSubmit="return info_validar_ingresar_comentario(this);">\r
+ <input type="hidden" name="hidSaving" value="1">\r
+ <input type="hidden" name="__hidID" value="<? echo $__hidID; ?>">\r
+ <script type="text/javascript" language="JavaScript">\r
+ <!--\r
+ function info_validar_ingresar_comentario(f)\r
+ {\r
+ if ( (!check_vacio(f.txtComentario, 'Comentario') || (!check_min_max_cant(f.txtComentario, 'Comentario', 10, 500)) ) ) return false;\r
+ return true;\r
+ }\r
+\r
+ function info_blankActual(f) {\r
+ if (confirm("Seguro desea perder la posibilidad de modificar?")) {\r
+ location.href = "<?php echo $_SERVER['PHP_SELF'] . '?' . $_SERVER['QUERY_STRING']; ?>";\r
+ }\r
+ }\r
+ -->\r
+ </script>\r
+ <table>\r
+ <tr>\r
+ <td>Comentario:</td>\r
+ <td><textarea name="txtComentario" rows="3" cols="50"><?php echo $comentario ?></textarea></td>\r
+ </tr>\r
+ <tr>\r
+ <? if ( $__hidID == -1 ) { ?>\r
+ <td colspan="2"><input type="submit" name="btnSubmit" value="Guardar Comentario"/></td>\r
+ <? } else { ?>\r
+ <td colspan="2">\r
+ <input type="submit" name="btnSubmit" value="Modificar Comentario"/> \r
+ <input type="button" name="btnNew" value="Nuevo Comentario" onclick="info_blankActual(this.form);"/> \r
+ </td>\r
+ <? } ?>\r
</tr>\r
</table>\r
</form>\r
<?php\r
require_once 'pagina.php';\r
require_once 'file.php';\r
+require_once 'file.log.php';\r
require_once 'Tema.php';\r
require_once 'Info.php';\r
+require_once 'Comentario.php';\r
require_once 'Usuario.php';\r
\r
/************** Funciones para Temas ***************/\r
return $maxId;\r
}\r
\r
-function info_ingresar_tema( $pNombre, $pAutor, $pDescripcion, $pIcono ) {\r
+function info_ingresar_tema( $__hidID, $pNombre, $pAutor, $pDescripcion, $pIcono ) {\r
$objTema = new Tema(0,0);\r
- $pId = info_obtener_mayor_id() + 1;\r
-\r
- $resultado = $objTema->ingresar( $pId, $pNombre, $pAutor, $pDescripcion, $pIcono );\r
- if ( $resultado == "" ) {\r
- echo ok("Se agregó el Tema '" . $pNombre . "'");\r
- return true;\r
+ if ($__hidID == -1 ) {\r
+ $__hidID = info_obtener_mayor_id() + 1;\r
+ $resultado = $objTema->ingresar( $__hidID, $pNombre, $pAutor, $pDescripcion, $pIcono );\r
+ if ( $resultado == "" ) {\r
+ echo ok("Se agregó el Tema '" . $pNombre . "'");\r
+ } else {\r
+ echo warn($resultado);\r
+ }\r
} else {\r
- echo warn($resultado);\r
- return false;\r
+ $resultado = $objTema->modificar( $__hidID, $pNombre, $pAutor, $pDescripcion, $pIcono );\r
+ if ( $resultado == "" ) {\r
+ echo ok("Se modificó el Tema '" . $pNombre . "'");\r
+ } else {\r
+ echo warn($resultado);\r
+ }\r
}\r
+\r
+ return $__hidID;\r
}\r
\r
-function info_listar_temas () {\r
+function info_listar_temas ($header) {\r
+ file_log_add($_SESSION['user']->getId(),"Se listaron los temas");\r
$arrTemas = info_obtener_temas();\r
- foreach ( $arrTemas as $objTema) {\r
- $objTema->toHTML();\r
- }\r
+ info_listador($header,$arrTemas,'Temas',6);\r
}\r
/************** Fin Funciones para Temas ***************/\r
\r
\r
\r
/************** Funciones para Infos ***************/\r
-function info_obtener_infos($loadPrintData,$simpleSort) {\r
+function info_obtener_infos($loadPrintData,$simpleSort,$tema) {\r
$arr = array();\r
$infosCSVConst = 'data/infos.csv';\r
\r
if ($simpleSort == -1 ) {\r
$arr[] = $objInfo;\r
} else {\r
- if ($simpleSort == 1) {\r
+ if (($tema == -1) || ($tema == $objInfo->tema)) {\r
$arr[] = array($objInfo->ranking,$objInfo);\r
- } else {\r
- $arr[] = array($objInfo->tema * 1, $objInfo->ranking * -1,$objInfo);\r
}\r
}\r
\r
}\r
if ($simpleSort != -1) {\r
rsort($arr);\r
+ $sortedarr = array();\r
+ foreach($arr as $objArr) {\r
+ $sortedarr[] = $objArr[1];\r
+ }\r
+ return $sortedarr;\r
+ } else {\r
+ return $arr;\r
}\r
- return $arr;\r
}\r
\r
function info_obtener_mayor_id_info() {\r
- $arrInfos = info_obtener_infos(false, -1);\r
+ $arrInfos = info_obtener_infos(false, -1, -1);\r
$cantidad_infos = count($arrInfos);\r
\r
$maxId = 0;\r
return $maxId;\r
}\r
\r
-function info_ingresar_info( $pTema, $pURL, $pAutor, $pComentario ) {\r
+function info_ingresar_info( $__hidID, $pTema, $pURL, $pAutor, $pComentario ) {\r
$objInfo = new Info(0,0);\r
- $pId = info_obtener_mayor_id_info() + 1;\r
+ if ($__hidID == -1 ) {\r
+ $__hidID = info_obtener_mayor_id_info() + 1;\r
+ $resultado = $objInfo->ingresar( $__hidID, $pTema, $pURL, $pAutor, $pComentario );\r
+ if ( $resultado == "" ) {\r
+ echo ok("Se agregó la información.");\r
+ } else {\r
+ echo warn($resultado);\r
+ }\r
+ } else {\r
+ $resultado = $objInfo->modificar( $__hidID, $pTema, $pURL, $pAutor, $pComentario );\r
+ if ( $resultado == "" ) {\r
+ echo ok("Se modificó la información.");\r
+ } else {\r
+ echo warn($resultado);\r
+ }\r
+ }\r
+ return $__hidID;\r
+}\r
+\r
+function info_listar_infos ($header, $simpleSort = 1, $tema = -1) {\r
+ file_log_add($_SESSION['user']->getId(),"Se listaron las informaciones");\r
+ $arrInfos = info_obtener_infos(true,$simpleSort,$tema);\r
+ info_listador($header,$arrInfos,'Informaciones',6);\r
+}\r
+/************** Fin Funciones para Infos ***************/\r
+\r
+\r
+\r
+\r
+/************** Funciones para Comentarios ***************/\r
+\r
+function info_obtener_comentarios($pInfo_ID) {\r
+ $arr = array();\r
+ $comentariosCSVConst = 'data/comentarios.' . $pInfo_ID . '.csv';\r
+\r
+ if (is_file($comentariosCSVConst)) {\r
+ $arrFile = fgetallcsv($comentariosCSVConst);\r
+ if ($arrFile) {\r
+ foreach ( $arrFile as $record_comentario) {\r
+ $objComentario = new Comentario($record_comentario,$pInfo_ID,1);\r
+\r
+ $objInfo = new Info($pInfo_ID,0);\r
+ $objUsuario = new Usuario($objInfo->autor);\r
+ /* Cargo la foto del usuario */\r
+ $objComentario->autor_original = $objUsuario->getId();\r
+ $objComentario->autor_foto = $objUsuario->getFotoFilename();\r
+ $objComentario->autor_apellido = $objUsuario->getApellido();\r
+\r
+ $arr[] = $objComentario;\r
+ }\r
+ }\r
+ }\r
+ return $arr;\r
+}\r
\r
- $resultado = $objInfo->ingresar( $pId, $pTema, $pURL, $pAutor, $pComentario );\r
- if ( $resultado == "" ) {\r
- echo ok("Se agregó la informacion.");\r
- return true;\r
+function info_obtener_mayor_id_comentario($pInfo_ID) {\r
+ $arrComentarios = info_obtener_comentarios($pInfo_ID);\r
+ $cantidad_comentarios = count($arrComentarios);\r
+\r
+ $maxId = 0;\r
+ if ($cantidad_comentarios != 0) {\r
+ $objComentario = $arrComentarios[$cantidad_comentarios - 1];\r
+ $maxId = $objComentario->id;\r
+ }\r
+ return $maxId;\r
+}\r
+\r
+\r
+function info_ingresar_comentario( $__hidID, $pInfo_ID, $pComentario, $pAutor ) {\r
+ $objInfo = new Comentario(0,0,0);\r
+\r
+ if ($__hidID == -1 ) {\r
+ $__hidID = info_obtener_mayor_id_comentario($pInfo_ID) + 1;\r
+ $resultado = $objInfo->ingresar( $__hidID, $pInfo_ID, $pComentario, $pAutor );\r
+ if ( $resultado == "" ) {\r
+ echo ok("Se agregó el comentario.");\r
+ } else {\r
+ echo warn($resultado);\r
+ }\r
} else {\r
- echo warn($resultado);\r
- return false;\r
+ $resultado = $objInfo->modificar( $__hidID, $pInfo_ID, $pComentario, $pAutor );\r
+ if ( $resultado == "" ) {\r
+ echo ok("Se modificó el comentario.");\r
+ } else {\r
+ echo warn($resultado);\r
+ }\r
}\r
+ return $__hidID;\r
+}\r
+\r
+function info_listar_comentarios( $header, $pInfo_ID ) {\r
+ file_log_add($_SESSION['user']->getId(),"Se listaron los comentarios (informacion id = " . $pInfo_ID . ")");\r
+ $arrComentarios = info_obtener_comentarios($pInfo_ID);\r
+ info_listador($header, $arrComentarios,'Comentarios',3);\r
}\r
\r
-function info_listar_infos ($simpleSort = 1) {\r
- if ($simpleSort) {\r
- $arrInfos = info_obtener_infos(true,$simpleSort);\r
- echo '<tr><td>Tema</td><td>Autor</td><td>URL</td><td>Descripcion</td><td>Ranking</td></tr>';\r
- foreach ( $arrInfos as $objInfo ) {\r
- $objInfo[1]->toHTML();\r
+/************** Fin Funciones para Comentarios ***************/\r
+\r
+\r
+\r
+/************** Funciones para Info Generales ***************/\r
+\r
+function info_listador($header, $ObjetosAListar, $dataName = 'Items', $colspan = 0, $link = '', $cant = 5)\r
+{\r
+ if ($link == '') {\r
+ $link = $_SERVER['PHP_SELF'];\r
+ }\r
+ // Calculo posiciones\r
+ $total = count($ObjetosAListar);\r
+ if (!$total)\r
+ {\r
+ echo '<tr><td';\r
+ if ($colspan) {\r
+ echo ' colspan="' . $colspan . '"';\r
}\r
+ echo '>';\r
+ echo error('No se encontraron ' . $dataName);\r
+ echo '</td></tr>';\r
+ return;\r
+ }\r
+\r
+ if (isset($_GET["lista_from"])) {\r
+ $orig_from = intval($_GET["lista_from"]);\r
} else {\r
- $mtxInfos = info_obtener_infos(true,$simpleSort);\r
- $oldTema = 0;\r
- $newTema = 0;\r
- $max = count($mtxInfos);\r
- $index = $max - 1;\r
- while ($index >= 0) {\r
- $arrInfos = $mtxInfos[$index];\r
- $objTema = new Tema($arrInfos[0],0);\r
- $newTema = $objTema->id;\r
- if ($oldTema != $newTema ) {\r
- if ($oldTema) {\r
- echo '<tr><td colspan="5"> </td></tr>';\r
- }\r
- $oldTema = $newTema;\r
- echo '<tr><td colspan="5">"' . $objTema->nombre . '"</td></tr>';\r
- echo '<tr><td>Tema</td><td>Autor</td><td>URL</td><td>Descripcion</td><td>Ranking</td></tr>';\r
+ $orig_from = 0;\r
+ }\r
+ $pags = ceil($total / $cant);\r
+ if ($pags != 1) { // Si tengo una sóla página\r
+ // Arrastro query string, si corresponde\r
+ if ( isset($_SERVER['QUERY_STRING'] ) )\r
+ {\r
+ $query = $_SERVER['QUERY_STRING'];\r
+ }\r
+ else\r
+ {\r
+ $query = '';\r
+ }\r
+ if (($pos = strpos($query, 'lista_from=')) !== false)\r
+ {\r
+ if ($pos) $query = substr($query, 0, --$pos);\r
+ else $query = '';\r
+ }\r
+ echo '<tr><td';\r
+ if ($colspan) {\r
+ echo ' colspan="' . $colspan . '"';\r
+ }\r
+ echo '>';\r
+ \r
+ if (($orig_from - $cant) >= 0) {\r
+ $from = $orig_from - $cant;\r
+ $q = $query ? "$query&lista_from=$from" : "lista_from=$from";\r
+ printf('<a href="%s?%s"><</a> ', $link, $q);\r
+ }\r
+ for ($i = 0; $i < $pags; ++$i)\r
+ {\r
+ $from = $i * $cant;\r
+ if ($from == $orig_from) {\r
+ $data = '<strong>' . ($i + 1) . '</strong>';\r
+ } else {\r
+ $data = $i + 1;\r
}\r
- $arrInfos[2]->toHTML();\r
- $index--;\r
+ $q = $query ? "$query&lista_from=$from" : "lista_from=$from";\r
+ printf('<a href="%s?%s">%s</a> ', $link, $q, $data);\r
+ }\r
+ if ( ($orig_from + $cant) <= $total ) {\r
+ $from = $orig_from + $cant;\r
+ $q = $query ? "$query&lista_from=$from" : "lista_from=$from";\r
+ printf('<a href="%s?%s">></a> ', $link, $q);\r
}\r
+ echo '</td></tr>';\r
}\r
+\r
+ //Listo los resultados\r
+ $from = $orig_from;\r
+ $c = min($total - $from, $cant);\r
+\r
+ echo $header;\r
+ while ( $c-- )\r
+ {\r
+ $obj = $ObjetosAListar[$from++];\r
+ $obj->toHTML();\r
+ }\r
}\r
+\r
+/************** Fin Funciones para Info Generales ***************/\r
?>\r
<?php } ?>
<li><a href="info.listarTemas.php">Listar Temas</a></li>
<li><a href="info.listarInfo.php">Listar Informacion</a></li>
+ <li><a href="info.mencionEspecial.php">Mención Especial</a></li>
</ul>
</li>
<?php if ($_SESSION['user']->esAdmin()) { ?>