<?php
include_once('../../../php/sessionStart.php');
include_once('../../../php/db/dbExec.php');
include_once('../../../php/functions.php');
include_once('../../../php/timezone.php');
include_once('../../../php/privileges.php');

$bitForm = "cnt2130";
$bitMod = "cnt";
$empCod = $_SESSION['empCod'];
$usuCod = utf8_decode($_SESSION['usuCod']);
$usuNom = utf8_decode($_SESSION['usuNom']);
$Mescie=date("m", strtotime($_SESSION['empFciee']));

switch ($_POST['action']) {
	case 'consultar':
		echo consultar();
		break;

	case 'guardar':
		echo guardar();
		break;
}

function consultar() {
	global $empCod;

	$priv = new privileges();
	if (!$priv->consult($_SESSION['usuPriv'])) {
		return json_encode($priv->rErrorConsult());
	}

	$func = new functions();

	$selMesCod=$_POST['selMesCod'];
	$numAno=$_POST['numAno'];

	# QUERYS
	$sCiemes = "SELECT * FROM ciemes WHERE ciem_emp='$empCod' AND ciem_mes='$selMesCod' AND ciem_ano='$numAno'";
	
	# EJECUCION DE QUERYS
	$db = new dbExec();
	$resp = $db->sEx($sCiemes, "ciemes");
	$db->close();

	$func = new functions();
	return $func->jsonEncodeArray($resp, "ciemes");
}


function guardar() {
	global $empCod, $usuNom, $bitMod, $bitForm, $Mescie;

	$priv = new privileges();
	if (!$priv->modify($_SESSION['usuPriv'])) {
		return json_encode($priv->rErrorModify());
	}

	$func = new functions();

	$selMesCod=$_POST['selMesCod'];
	$selMesNom=$_POST['selMesNom'];	
	$numAno=$_POST['numAno'];
	$txtStat="C";
    $numMesn = $selMesCod+1;
    $primerDia = (strval($numAno)."-".(($numMesn<10) ? ('0'.strval($numMesn)) : strval($numMesn))."-01");
	$nuevaFecha = TRIM($primerDia);

	# QUERYS PARA UN REGISTRO
	$sCiemes = "SELECT * FROM ciemes WHERE ciem_emp='$empCod' AND ciem_mes='$selMesCod' AND ciem_ano='$numAno'";

	$uCiemes = "UPDATE ciemes SET ciem_stat='$txtStat' WHERE ciem_emp='$empCod' AND ciem_mes='$selMesCod' AND ciem_ano='$numAno'";

	$iCiemes = "INSERT INTO ciemes(ciem_emp, ciem_ano, ciem_mes, ciem_stat) VALUES ('$empCod','$numAno','$selMesCod','$txtStat')";

	$uEmpresas = "UPDATE empresas SET emp_ftrab='$nuevaFecha' WHERE emp_cod='$empCod'";
	
	# EJECUCION DE QUERYS 
	$db = new dbExec();
    $t_sicie=true;
	if ($selMesCod != $Mescie ) {   # Para que no haga cierre de Diciembre
    	// Aqui sirve para verificar si el cierre es nuevo o ya hay algun registro
		$select["ciemes"] = $db->query($sCiemes);
		if ($db->numRows($select["ciemes"]) == 0) {
			$resp = $db->iEx($iCiemes);
			$db->iEx($func->iBitacora(utf8_decode("Se Cerro el mes $selMesNom del $numAno Usuario: ").$usuNom, $bitMod, $bitForm));
		} else {
			$resp = $db->uEx($uCiemes);
			$db->iEx($func->iBitacora(utf8_decode("Se Cerro el mes $selMesNom del $numAno Usuario: ").$usuNom, $bitMod, $bitForm));
		}  
	
		// Para actualizar la fecha de trabajo
 		$resp = $db->uEx($uEmpresas);
  		$_SESSION['empFtrab'] = $nuevaFecha;

	} else {  		
		$t_sicie=false;
	}


	$db->close();

    if (!$t_sicie) {
		$resp['msgWarning'] = array(
			'error'=>true,
			'msg'=>array(
				'title'=>'CIERRE NO NECESARIO',
				'text'=>'Este mes no necesita ser cerrado, se hara con el cierre del periodo'
			),
		); 
	} else {  	
		$resp['msgWarning'] = array(
			'error'=>true,
			'msg'=>array(
				'title'=>'CIERRE DE MES',
				'text'=>'Se cerro el mes puede continuar'
			),
		); 
	}
	return json_encode($resp);
}

?>