4 // Lucarella, Schein, Arena
\r
6 // Creado: Sebastian Arena
\r
9 require_once 'Item.php';
\r
10 require_once 'file.php';
\r
11 require_once 'Usuario.php';
\r
12 require_once 'file.log.php';
\r
14 class Tema extends Item
\r
20 var $temasCSVConst = 'data/temas.csv';
\r
23 id | autor | nombre | icono | descripcion | fecha
\r
26 function Tema($param, $loadFromRecord) {
\r
27 if (!$loadFromRecord) {
\r
33 $this->id = $param[0];
\r
34 $this->autor = $param[1];
\r
35 $this->nombre = $param[2];
\r
36 $this->icono = $param[3];
\r
37 $this->texto = $param[4];
\r
38 $this->fecha = $param[5];
\r
43 if (is_file($this->temasCSVConst)) {
\r
44 $record_tema = fsearchcsv($this->temasCSVConst, $this->id);
\r
46 $this->id = $record_tema[0];
\r
47 $this->autor = $record_tema[1];
\r
48 $this->nombre = $record_tema[2];
\r
49 $this->icono = $record_tema[3];
\r
50 $this->texto = $record_tema[4];
\r
51 $this->fecha = $record_tema[5];
\r
56 function saveNew() {
\r
57 return fappendcsv($this->temasCSVConst, array($this->id, $this->autor, $this->nombre, $this->icono, $this->texto, $this->fecha));
\r
60 function saveExisting() {
\r
61 if (($f = fopen($this->temasCSVConst, 'r')) == false) return false; // error
\r
66 $d = fgetcsv($f, 4096);
\r
68 if ($d[0] == $this->id)
\r
71 if (($f = fopen($this->temasCSVConst, 'r+')) == false) return false; // error
\r
72 while ($indexSave!=($index-1)) { fgetcsv($f, 4096); $indexSave++; }
\r
73 fputcsv($f, array($this->id, $this->autor, $this->nombre, $this->icono, $this->texto, $this->fecha));
\r
82 function saveLoadThis( $pId, $pNombre, $pAutor, $pDescripcion, $pIcono ) {
\r
84 $this->autor = $pAutor;
\r
85 $this->nombre = $pNombre;
\r
86 $this->icono = 'temas/' . $pId;
\r
87 $this->texto = preg_replace('[\n|\r\n]','<br/>',$pDescripcion);
\r
88 $this->fecha = time();
\r
91 function ingresar( $pId, $pNombre, $pAutor, $pDescripcion, $pIcono ) {
\r
92 $this->saveLoadThis( $pId, $pNombre, $pAutor, $pDescripcion, $pIcono );
\r
94 if (!$this->saveNew()) {
\r
95 $resultado = "<strong>ERROR</strong> al agregar el Tema '" . $pNombre . "'. Revise que los parametros sean los adecuados";
\r
96 file_log_add( $pAutor, $resultado);
\r
98 if (!copy($pIcono, "temas/" . $pId)) {
\r
99 $resultado = "No se pudo copiar la foto.";
\r
100 file_log_add( $pAutor, $resultado);
\r
102 file_log_add( $pAutor, "Se modificó el el '" . $pNombre . "'");
\r
108 function modificar( $pId, $pNombre, $pAutor, $pDescripcion, $pIcono ) {
\r
109 $this->saveLoadThis( $pId, $pNombre, $pAutor, $pDescripcion, $pIcono );
\r
111 //Se obtiene el ID mas alto actual
\r
112 if (!$this->saveExisting()) {
\r
113 $resultado = "<strong>ERROR</strong> al modificar el Tema '" . $pNombre . "'. Revise que los parametros sean los adecuados";
\r
114 file_log_add( $pAutor, $resultado);
\r
116 if (!copy($pIcono, "temas/" . $pId)) {
\r
117 $resultado = "No se pudo modificar la foto.";
\r
118 file_log_add( $pAutor, $resultado);
\r
120 file_log_add( $pAutor, "Se modificó el el '" . $pNombre . "'");
\r
126 function toHTML() {
\r
127 $objUser = new Usuario($this->autor);
\r
129 <td><?php echo $this->id;?></td>
\r
130 <td><img src="<?php echo $this->icono;?>" border="0" alt="icono tema <?php echo $this->id;?>"/></td>
\r
131 <td><?php echo $this->nombre;?></td>
\r
132 <td><?php echo $this->texto;?></td>
\r
133 <td><img src="<?php echo $objUser->getFotoFilename();?>" border="0" alt="icono usuario <?php echo $objUser->getId();?>"/></td>
\r
134 <td><?php echo $objUser->getApellido() . ", " . $objUser->getNombre() . " (". $objUser->getId() . ")";?></td>
\r