<?php
define('SF_ROOT_DIR', realpath(realpath('./../')));
require_once(SF_ROOT_DIR.DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPARATOR.'config_core_compile.php');
require_once(SF_ROOT_DIR.DIRECTORY_SEPARATOR.'lib'.DIRECTORY_SEPARATOR.'functions'.DIRECTORY_SEPARATOR.'mensajes.php');

$content = trim(file_get_contents("php://input"));
 
//Attempt to decode the incoming RAW post data from JSON.
$decoded = json_decode($content, true);
 
$_POST = $decoded;

/*	
$_POST['datos']['idusuario'] 	= "centrolima";
$_POST['datos']['idsucursal'] 	= "2";
$_POST['datos']['token'] 		= "89nm75nh788";
*/
/*
$_POST['datos']['idusuario'] 	= "supervisor1";
$_POST['datos']['token'] 		= "89nm75nh788";
*/
/*
$_POST['datos']['idusuario'] 	= "admin.sucursal";
$_POST['datos']['idsucursal'] 	= "2";
$_POST['datos']['token'] 		= "89nm75nh788";
*/
/*
$_POST['datos']['idusuario'] 	= "admin.general";
//$_POST['datos']['idsucursal'] 	= "1";
$_POST['datos']['token'] 		= "89nm75nh788";
*/

$j_datos = $_POST;

$s_token 			= "89nm75nh788";

function guardar_log($cadena_log){
	
	$con = Conexion::getConexion();
    $sql = "INSERT INTO 
            cr_wslog
            (idlog,cadena,fecharegistro)
            values
            (null,'".$cadena_log."',now())"
            ;
	//echo $sql;  	
	$result = mysql_db_query(Conexion::getNameDb(), $sql, $con);
}

$j_datos = $_POST;

$s_token 			= "89nm75nh788";

$cadena_log = json_encode($_POST);

guardar_log($cadena_log);

$o_datos = $j_datos['datos'];
//header("Content-type: application/json; charset=utf-8");
if($s_token == $o_datos['token']){
	    $idusuario 	= $o_datos['idusuario'];
	    $idsucursal = $o_datos['idsucursal'];
	    if (1) {
	        
	        $o_user = new user_class();
							
			if ($o_user->findUser($idusuario)){
				
				$a_SucursalMercado 	= sucursalMercado($o_user,$idsucursal);
				
				//print_r($a_SucursalMercado);
				
				if($a_SucursalMercado['idsucursal']){
					$a_idsucursal[] = $a_SucursalMercado['idsucursal'];
				}elseif($a_SucursalMercado['idssucursales']){
					$a_idsucursal 	= $a_SucursalMercado['idssucursales'];
				}
				if(!$a_idsucursal) $a_idsucursal = array("x");
				$o_SucursalBean = new SucursalBean();
				$o_SucursalBean->setIdsSucursales($a_idsucursal);
				
				$o_SucursalDP = new SucursalDP($o_SucursalBean);
				$a_o_SucursalDP = $o_SucursalDP->select();
				$i = 1;
				if(is_array($a_o_SucursalDP)){
					foreach ($a_o_SucursalDP as $key => $o_SucursalDP){
						$matrix[$i]['idsucursal'] = $o_SucursalDP->getIdSucursal();
		                $matrix[$i]['descripcion'] = $o_SucursalDP->getDescripcion();
		                $i++;
					}
					$datos['estado'] = '1';
					$datos['sucursal'] = $matrix;
					print json_encode($datos);
					//print json_encode($datos, JSON_UNESCAPED_UNICODE);
				}else{
					
					print json_encode(array(
					            "estado" => 20,
					            "mensaje" => "No hay sucursales"
					        ));
				}
			}
	        
	    }else{
	        print json_encode(array(
	            "estado" => 30,
	            "mensaje" => "Acceso no autorizado"
	        ));
	    }
}else{
    print json_encode(array(
        "estado" => 30,
        "mensaje" => "Falta datos, Acceso no autorizado"
    ));
}



//metodo 

function sucursalMercado($o_user,$idsucursal=''){
	if($o_user->getUserRoleId() == "sys.ope"){ 
		$IdAdministrador 			= $o_user->getIdParent();
	  	$o_ObjectBean 				= new SucursalBean();
		
		$o_ObjectBean->setIdAdministrador($IdAdministrador);
		
		$o_class 					= new SucursalBL();
		$a_o_sucursales 				= $o_class->busquedaSucursal($o_ObjectBean);
		
		if(is_array($a_o_sucursales)){
			foreach ($a_o_sucursales as $key => $o_sucursales){
				$a_IdSucursales[] = $o_sucursales->getIdSucursal();
			}
		}
		$a_user['idssucursales'] 	= $a_IdSucursales;
	}elseif($o_user->getUserRoleId() == "sys.res"){ // Detectar Sucursal y Mercado si es Administrador de Sucursal
		$IdAdministrador	  		= $o_user->getIdColaborador();
		$o_ObjectBean 				= new SucursalBean();
		
		$o_ObjectBean->setIdAdministrador($IdAdministrador);
		
				
		$o_class 					= new SucursalBL();
		$a_ObjectBean 				= $o_class->busquedaSucursal($o_ObjectBean);
		
		if(count($a_ObjectBean) > 0){
	    	foreach ($a_ObjectBean as $iKey => $o_objBean){
	    		$a_user['idsucursal'] = $o_objBean->getIdSucursal();
	    		$a_user['sucursal'] = $o_objBean->getDescripcion();
	    		$o_SucursalMercadoBean = new SucursalMercadoBean();
	    		$o_SucursalMercadoBean->setIdSucursal($o_objBean->getIdSucursal());
				$o_SucursalMercadoBL = new SucursalMercadoBL();
				$a_o_sucursalmercado = $o_SucursalMercadoBL->busquedaSucursalMercadoDetalle($o_SucursalMercadoBean);
				if(is_array($a_o_sucursalmercado)){
					foreach ($a_o_sucursalmercado as $key => $o_sucursalmercado){
						$a_IdMercados[] = $o_sucursalmercado->getIdMercado();
					}
				}
	    	}
	    }
		
		$a_user['mercado'] 		= "";
		$a_user['idmercado'] 	= "";
		$a_user['idsmercados'] 	= $a_IdMercados;
	}elseif($o_user->getUserRoleId() == "sys.sup"){ // Detectar Sucursal y Mercado si es Administrador de Sucursal
		$IdColaborador			  	= $o_user->getIdColaborador();
		
		$IdAdministrador	  		= $o_user->getIdParent();
		$o_ObjectBean 	= new SucursalBean();
		if($idsucursal){
			$o_ObjectBean->setIdSucursal($idsucursal);
		}else{
			if($IdAdministrador)		$o_ObjectBean->setIdAdministrador($IdAdministrador);
		}
		
		
		$o_class 					= new SucursalBL();
		$a_ObjectBean 				= $o_class->busquedaSucursal($o_ObjectBean);
		
		if(count($a_ObjectBean)>0){
	    	foreach ($a_ObjectBean as $iKey => $o_objBean){
	    		$a_user['idsucursal'] = $o_objBean->getIdSucursal();
	    		$a_user['sucursal'] = $o_objBean->getDescripcion();
	    		$o_SucursalMercadoBean = new SucursalMercadoBean();
	    		$o_SucursalMercadoBean->setIdSucursal($o_objBean->getIdSucursal());
				$o_SucursalMercadoBL = new SucursalMercadoBL();
				$a_o_sucursalmercado = $o_SucursalMercadoBL->busquedaSucursalMercadoDetalle($o_SucursalMercadoBean);
				if(is_array($a_o_sucursalmercado)){
					foreach ($a_o_sucursalmercado as $key => $o_sucursalmercado){
						$a_IdMercados[] = $o_sucursalmercado->getIdMercado();
					}
				}
	    	}
	    }
		$a_user['idmercado'] 	= "";
		$a_user['idsmercados'] 	= $a_IdMercados;
	}elseif($o_user->getUserRoleId() == "sys.gen"){									
		$a_user['idsucursal'] = $idsucursal;
		$o_SucursalBean = new SucursalBean();
		$o_SucursalBean->setIdSucursal($idsucursal);
		$o_SucursalDP = new SucursalDP($o_SucursalBean);
		$a_o_sucursales = $o_SucursalDP->select();
		if(is_array($a_o_sucursales)){
			foreach ($a_o_sucursales as $key => $o_sucursales){
				$a_IdSucursales[] = $o_sucursales->getIdSucursal();
			}
		}
		$a_user['idssucursales'] 	= $a_IdSucursales;
	}
	return $a_user;
}

?>
