<?php
require_once('DataManager.Class.php');

class Parametro {
    
    public $conn;

    function __construct($c) {
        
        if(isset($c)){
                $this->conn = $c;
        } else {
                $this->conn = DataManager::getInstance();
        }
    }


	public function informacionParametroPadre($idPadre, $tipo_retorno)
	{
		$stmt = $this->conn->prepare("{CALL agenda.SP_parametro_padre_informacion (?)}");
		$stmt->bindValue(1, $idPadre, PDO::PARAM_INT);
		$stmt->execute();

		if($tipo_retorno == 0) {
			return $stmt->fetch();
		} else {
			return $stmt->fetchAll();
		}

		
	}

	public function informacionParametro($idPadre, $idHijo, $estado, $tipo_retorno)
	{
		$stmt = $this->conn->prepare("{CALL agenda.SP_parametro_informacion (?, ?, ?)}");
		$stmt->bindValue(1, $idPadre, PDO::PARAM_INT);
		$stmt->bindValue(2, $idHijo, PDO::PARAM_INT);
		$stmt->bindValue(3, $estado, PDO::PARAM_BOOL);
		$stmt->execute();

		if($tipo_retorno == 0) {
			return $stmt->fetch();
		} else {
			return $stmt->fetchAll();
		}
		
	}

	public function ingresarParametro($idParaPadre, $codigo, $nombre) 
	{
		$stmt = $this->conn->prepare("{CALL agenda.SP_parametro_ingresa (?, ?, ?)}");
		$stmt->execute(array($idParaPadre, $codigo, $nombre));

        return $stmt->fetch();	
    }
	
	public function modificarParametro($idParaPadre, $idPara, $codigo, $nombre, $estado) 
	{
		$stmt = $this->conn->prepare("{CALL agenda.SP_parametro_modifica (?, ?, ?, ?, ?)}");
		$stmt->execute(array($idParaPadre, $idPara, $codigo, $nombre, $estado));

        return $stmt->fetch();	
    }

	public function eliminarParametro($idParametroHijo) 
	{		
		$stmt = $this->conn->prepare("{CALL agenda.SP_parametro_eliminar (?)}");        
		$stmt->execute(array($idParametroHijo));

        return $stmt->fetch();	
    }
	 
    function Close() {
        
        $this->conn = null;
        
    }
}
?>