<?php

/*
 * Copyright 2017-09-06  Cámara de Comercio de Santa Marta para el Magdalena.
 * Autor: Luis Montoya <lmontoya@ccsm.org.co at www.ccsm.org.co>.
 * Archivo: Parametros.
 *
 * Licenciado bajo la Licencia Apache, Versión 2.0;
 * Usted no puede usar este archivo excepto en conformidad con la Licencia.
 * Usted puede obtener una copia de la Licencia en
 *
 *   	http://www.apache.org/licenses/LICENSE-2.0
 *
 * A menos que sea requerido por la ley aplicable o acordado por escrito, el software
 * Distribuido bajo la licencia se distribuye en una "AS IS" o  "COMO ESTA" BASE,
 * SIN GARANTÍAS NI CONDICIONES DE NINGÚN TIPO, expresas o implícitas.
 * Consulte la Licencia para los permisos y Limitaciones bajo la Licencia.
 */

/**
 * Description of Parametros
 *
 * @author Luis Montoya <lmontoya@ccsm.org.co at www.ccsm.org.co>
 */
class Parametros {

    //put your code here
    public static function datos($parametroID) {
        $sqlQuery = ParametrosSQL::DATOS_COMPLETOS . " WHERE Parametros.parametroID = ? ";
        return SicamDB::selectUnaFila($sqlQuery, array($parametroID));
    }
    
    public static function todos() {
        $sqlQuery = ParametrosSQL::DATOS_COMPLETOS; 
        return SicamDB::selectVariasFilas($sqlQuery, array());
    }
    
    public static function valor($codigoParametro) {
        $sqlQuery = "SELECT * FROM Parametros  WHERE parametroCODIGO=?; ";
        $Parametro = SicamDB::selectUnaFila($sqlQuery, array($codigoParametro));
        switch ($Parametro->parametroTIPO) {
            case 'COLABORADOR':
                return Colaboradores::porId($Parametro->parametroVALOR);
                break;
            default:
                return $Parametro->parametroVALOR;
                break;
        }
        return null;
    }
    
    public static function tipos() {
        $sqlQuery = ParametrosSQL::TIPOS_PARAMETROS;
        $consulta = SicamDB::selectUnaFila($sqlQuery, array());
        $tipos = explode("','",substr($consulta->Type,6,-2));
        return $tipos;
    }
    
    public static function guardar( $parametroTIPO, $parametroCODIGO, $parametroTITULO, $parametroDESCRIPCION, $parametroVALOR) {
        $sqlQuery = ParametrosSQL::CREAR_REGISTRO;
        return SicamDB::insertFila($sqlQuery, array(
               $parametroTIPO, $parametroCODIGO, $parametroTITULO, $parametroDESCRIPCION, $parametroVALOR, Cliente::usuarioID()
                )
        );
    }
    
     public static function actualizar( $parametroID ,$parametroTIPO, $parametroCODIGO, $parametroTITULO, $parametroDESCRIPCION, $parametroVALOR) {
        $sqlQuery = ParametrosSQL::ACTUALIZAR_REGISTRO;
        return SicamDB::actualizarFila($sqlQuery, array(
               $parametroTIPO, $parametroCODIGO, $parametroTITULO, $parametroDESCRIPCION, $parametroVALOR, Cliente::usuarioID(), $parametroID
                )
        );
    }
    
        /**
     * Recibe un identificador de ControlConsecutivos y elimina el registro.
     * @param int $consecutivosID Identificador del registro
     * ha eliminar.
     * @return int Cantidad de registros eliminados
     */
    public static function eliminar($parametroID) {
        $sqlQuery = ParametrosSQL::ELIMINAR_REGISTRO;
        return SicamDB::actualizarFila($sqlQuery, array($parametroID));
    }
}

