<?php

/* vim: set expandtab tabstop=4 shiftwidth=4 foldmethod=marker: */

/**
* Funciones diversas útiles en fuentes que requieren interfaz de captura 
 *
 * PHP version 5
 *
 * @category  SIVeL
 * @package   SIVeL
 * @author    Vladimir Támara <vtamara@pasosdeJesus.org>
 * @copyright 2006 Dominio público. Sin garantías.
 * @license   http://creativecommons.org/licenses/publicdomain/ Dominio Público. Sin garantías.
 * @version   $Id: misc_caso.php,v 1.17 2009/05/02 03:15:45 vtamara Exp $
 * @link      http://sivel.sf.net
*/


/**
 * Funciones diversas útiles en fuentes que requieren interfaz de captura 
 */
require_once 'aut/conf.php';
require_once 'PagBasicos.php';
require_once 'PagLocalizacion.php';
require_once 'PagUbicacion.php';
require_once 'PagFuentesFrecuentes.php';
require_once 'PagOtrasFuentes.php';
require_once 'PagTipoViolencia.php';
require_once 'PagPResponsables.php';
require_once 'PagVictimaIndividual.php';
require_once 'PagVictimaColectiva.php';
require_once 'PagVictimaCombatiente.php';
require_once 'PagMemo.php';
require_once 'PagEvaluacion.php';

/** 
 * eliminaCaso(db, idcaso) elimina el caso número idcaso usando la conexión
 * a la base db. 
 *
 * @param handle  &$db    Conexión a base de datos
 * @param integer $idcaso Id. del caso
 *
 * @return void
 */
function eliminaCaso(&$db, $idcaso) 
{
    if (!isset($idcaso) || $idcaso == "") {
        die("Sólo se eliminan casos ya ingresados");
    } 
    foreach ($GLOBALS['ficha_tabuladores'] as $tab) {
        list($n, $c, $o) = $tab;
        $bo[$o] = $c;
    }
    ksort($bo);
    foreach ($bo as $k => $c) {
        if (is_callable(array($c, 'eliminaDep'))) {
            call_user_func(array($c, 'eliminaDep'), $db, $idcaso);
        } else {
            echo ("Falta eliminaDep en $k, $c");
        }
    }
    $q = "DELETE FROM funcionario_caso WHERE id_caso='$idcaso'";
    $db->query($q);
    $q = "DELETE FROM caso WHERE id='$idcaso'";
    $res = $db->query($q);

    if (PEAR::isError($res)) {
        die($res->getMessage());
    }
}

?>
