]> git.llucax.com Git - mecon/yatta.git/blobdiff - lib/YATTA/Archivo.php
BugFix.
[mecon/yatta.git] / lib / YATTA / Archivo.php
index 27bc68391fbbc7a26584b55c456c80f38e3c3e2c..a471702a008f790a0a7c38c67bbf2f60f55aefed 100644 (file)
@@ -27,7 +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/');
+define ('PATH_TACHO', '/var/www/sistemas/yatta/tacho/');
 
 /**
  * Clase para el manejo de los archivos.
 
 /**
  * Clase para el manejo de los archivos.
@@ -144,14 +144,14 @@ class YATTA_Archivo extends MECON_DBO {
      */
     function borrar($db = null)
     {
      */
     function borrar($db = null)
     {
+        //Borro el archivo del tacho
+        if (!unlink(PATH_TACHO.basename($this->archivo))) {
+            return new PEAR_Error('No se pudo 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);
         }
         $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.');
-        }
     }
 
     /**
     }
 
     /**
@@ -160,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();
@@ -184,13 +187,18 @@ 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 '.
-                'AND p.id_sistema = s.id_sistema AND ('. join ("$operador
-                        ", $where).') ';
+                'AND p.id_sistema = s.id_sistema AND ('. join ("$operador "
+                        , $where).') ';
         } 
         else {
             $where = 'WHERE p.id_sistema = s.id_sistema ';
         } 
         else {
             $where = 'WHERE p.id_sistema = s.id_sistema ';