]> git.llucax.com Git - mecon/yatta.git/blobdiff - lib/YATTA/Archivo.php
Modifico parte de la documentación.
[mecon/yatta.git] / lib / YATTA / Archivo.php
index 0bdcf4920bbced326c326966f320b171cc83e800..e2189ceeb566247421efd747a4eb802678026ae5 100644 (file)
@@ -27,6 +27,7 @@ $Id$
 require_once 'MECON/DBO.php';
 require_once 'PEAR.php';
 
 require_once 'MECON/DBO.php';
 require_once 'PEAR.php';
 
+define ('PATH_TACHO', '/var/www/yatta/tacho/');
 
 /**
  * Clase para el manejo de los archivos.
 
 /**
  * Clase para el manejo de los archivos.
@@ -125,7 +126,7 @@ class YATTA_Archivo extends MECON_DBO {
             $this->nombre_sistema = $res['nombre_sistema'];
             $this->descripcion = $res['descripcion'];
             $this->resultado = $res['resultado'];
             $this->nombre_sistema = $res['nombre_sistema'];
             $this->descripcion = $res['descripcion'];
             $this->resultado = $res['resultado'];
-            $this->archivo = $res['archivo'];
+            $this->archivo = PATH_TACHO.$res['archivo'];
             $this->owner = $res['owner'];
             
             return true;
             $this->owner = $res['owner'];
             
             return true;
@@ -143,10 +144,14 @@ class YATTA_Archivo extends MECON_DBO {
      */
     function borrar($db = null)
     {
      */
     function borrar($db = null)
     {
-        print '<PRE>';var_dump($this);print '</PRE>';
-        //@TODO Solo permitir que el owner borre sus archivos.
-        //@TODO Borra el registro de la base.
-        //@TODO Borrar el archivo del tacho.
+        $res = $db->query('DELETE FROM yatta.procesos WHERE id = '. $this->id);
+        if (PEAR::isError($res)) {
+             trigger_error('Error: ' . $res->getMessage() . "\n", E_USER_ERROR);
+        }
+        //Borro el archivo del tacho
+        if (!unlink($this->archivo)) {
+            return new PEAR_Error('No se pudo borrar el archivo del tacho.');
+        }
     }
 
     /**
     }
 
     /**
@@ -155,11 +160,14 @@ class YATTA_Archivo extends MECON_DBO {
      * @param  DB $db Conexion a la base de datos.
      * @param  string $operador Indica como deben concatenarse las condiciones de busqueda
      * @param  string $orden Indica de que manera deben ordenarse los resultados de la busqueda
      * @param  DB $db Conexion a la base de datos.
      * @param  string $operador Indica como deben concatenarse las condiciones de busqueda
      * @param  string $orden Indica de que manera deben ordenarse los resultados de la busqueda
+     * @param  string $destinos Indica si hay que incluir en la busqueda los
+     * destinos.
      *
      * @return mixed
      * @access public
      */
      *
      * @return mixed
      * @access public
      */
-    function buscar($db = null, $operador = MECON_DBO_OR, $orden = null) 
+    function buscar($db = null, $operador = MECON_DBO_OR, $orden = null,
+            $destinos = true) 
     {
         // Armo el WHERE.
         $where = array();
     {
         // Armo el WHERE.
         $where = array();
@@ -179,8 +187,13 @@ class YATTA_Archivo extends MECON_DBO {
             $where[] = 'p.resultado LIKE '. $db->quote("%$this->resultado%");
         }
         if (!is_null($this->usuario)) {
             $where[] = 'p.resultado LIKE '. $db->quote("%$this->resultado%");
         }
         if (!is_null($this->usuario)) {
-            $where[] = ' (p.owner LIKE '. $db->quote("$this->usuario") .' OR '.
-                    'p.destinos LIKE '. $db->quote("%$this->usuario%") .')';
+            $where[] = ' (p.owner LIKE '. $db->quote("$this->usuario");
+            if ($destinos) {
+                $where[] = 'p.destinos LIKE '. $db->quote("%$this->usuario%"); 
+            }
+        }
+        if (!is_null($this->archivo)) {
+            $where[] = 'p.archivo LIKE '. $db->quote("$this->archivo");
         }
         if ($where) {
             $where = 'WHERE p.status = 2 AND p.resultado is not null '.
         }
         if ($where) {
             $where = 'WHERE p.status = 2 AND p.resultado is not null '.