require_once 'YATTA/ProcesoDB.php';
require_once 'YATTA/Servidor.php';
-define ('PATH_TACHO', '/var/www/yatta/tacho/');
+define ('PATH_TACHO', '/var/www/sistemas/yatta/tacho/');
/**
* Clase para el manejo centralizado de toda la informacion de YATTA.
/**
* Agrega un proceso a la base de datos
- * Los datos a pasar son:
+ * Recibe un array asociativo con:
* Obligatorios
* script : Path completo para el require_once.
- * id_sistema : Identificador del sistema al que pertenece .
- * descripcion: Es lo que permite al usuario identificar al proecso.
+ * id_sistema : Identificador del sistema al que pertenece. (Es el id que
+ * asigna SAMURAI)
+ * descripcion: Es lo que permite al usuario identificar al proceso.
* owner : Login@Organismo de la persona responsable del proceso.
*
* Opcionales
*
* @return mixed
* @access public
+ * @static
*/
function agregarProceso($db, $datos) {
//XXX Dentro de los datos puede estar el tiempo estimado de ejecucion
elseif (!is_array($datos)) {
return new PEAR_Error ("Error con los datos pasados. El segundo".
" parametro debe ser un array asociativo o una instancia".
- " del objeto YATTA_Proceso.");
+ " del objeto YATTA_ProcesoDB.");
}
$res = $this->_obtenerServidor($db);
return $res;
}
$res = $res->fetchRow(DB_FETCHMODE_ASSOC);
+
+//@FIXME El email se lo envio al owner y a los destinos, o al owner solamente?
+
$dest = split (',', @$res['destinos']);
$to = $owner.'.gov.ar';
foreach ($dest as $d) {
$headers = "From: Intranet - YATTA <intranet2@mecon.gov.ar>\r\n";
$subject = "INTRANET - YATTA - Proceso Finalizado";
- $body = "El proceso {$res['descripcion']} ha finalizado ".
+ $body = "El proceso {$res['descripcion']} ha finalizado ";
switch ($status) {
case 2:
mail($to, $subject, $body, $headers);
}
+ /**
+ * Verifica si un usuario tiene alguna informacion en la base de yatta para
+ * mostrarle el icono en la lista de sistemas de la intranet.
+ *
+ * @param DB $db Conexion a la base de datos.
+ * @param string $login Usuario que se esta verificando
+ *
+ * @return bool
+ * @access public
+ * @static
+ */
+ function visible($DB, $login) {
+ $res = $db->query('SELECT count (p.id) AS id FROM yatta.procesos AS p'.
+ ' WHERE (p.owner LIKE \'%'. $login .'%\') OR'.
+ ' (p.destinos LIKE \'%'. $login .'%\')');
+
+ if (DB::isError($res)) {
+ return $res;
+ }
+ $res = $res->fetchRow(DB_FETCHMODE_ASSOC);
+
+ return $res['id'];
+ }
+
+ /**
+ * Busca los usuarios que tienen al menos una entrada en el mysql como
+ * owners.
+ *
+ * @param DB $db Conexion a la base de datos.
+ *
+ * @return mixed
+ * @access public
+ */
+ function obtenerListaOwners($db) {
+ return $db->query('SELECT DISTINCT p.owner AS owner
+ FROM yatta.procesos As p');
+ }
+
+ /**
+ * Obtiene las cuotas especiales de los usuarios.
+ *
+ * @param DB $db Conexion a la base de datos.
+ *
+ * @return mixed
+ * @access public
+ */
+ function obtenerListaCuotas($db) {
+ return $db->query('SELECT login, cuota
+ FROM yatta.cuotas');
+ }
}
?>
\ No newline at end of file