<?php namespace App\Http\Controllers;

use Session;
use Request; 
use App\Custom\SQLConnection;
use App;

class TablasGeneralesController extends Controller  {

public static $ent_bancaria;
public static $plataformas;


// Entidades Bancarias

	public function obtenerEntidadesBancarias(){
		
		self::$ent_bancaria = SQLConnection::obtenerCodigos("obtener_EntidadesBancarias");
		$ent_bancaria = self::$ent_bancaria;
		
		return view('tablasgenerales/entidades_bancarias')->with(compact('ent_bancaria'));
	}
	
  public function abmEntidadesBancarias(){
		$accion 		  = Request::input('accion'); 
		$codigo_ent   = Request::input('id_banco');
		$nombre 		  = Request::input('nombre');
		$nombre_corto = Request::input('nombre_corto');
		$grupo 				= Request::input('grupo');
		if($grupo == ''){
			$grupo = null; 
		}	
		$params = array($accion,$codigo_ent,$nombre,$nombre_corto,$grupo); 
		//print_r($params); die(); 
		$mensaje_bancos = SQLConnection::backendStoreProcedure("backend_abm_entidades_bancarias",$params,'selectOne');
			
		$ent_bancaria = SQLConnection::obtenerCodigos("obtener_EntidadesBancarias");
		//print_r($ent_bancaria); die(); 

		return json_encode(array('error' => $mensaje_bancos->error,'mensaje' => $mensaje_bancos->mensaje,
	 	'tabla' => view('tablasgenerales/tabla_entidades_bancarias')->with(compact('ent_bancaria'))->render()
	 	));

		}

	// Terminos y Condiciones

	public function obtenerTerminos(){
		$cuit = Session::get('cuit');
		$visible = 1;
		$terminos  = SQLConnection::backendStoreProcedure('backend_terminos',array(NULL,$visible),'select');
		//print_r($terminos); die(); 
		self::$plataformas = SQLConnection::obtenerCodigos("obtener_plataformas");
		$plataformas = self::$plataformas;
		
		return view('tablasgenerales/terminos')->with(compact('terminos','visible','plataformas'));
	}

	public function filtrarTerminos(){
		$cuit = Session::get('cuit');
		$visible = (Request::input('visible')=="") ? 1 : Request::input('visible');
		$terminos  = SQLConnection::backendStoreProcedure('backend_terminos',array(NULL,$visible),'select');
		return view('tablasgenerales/tabla_terminos')->with(compact('terminos','visible'));
	}

	public function visibleTerminos(){ 
		$id_terminos = Request::input('id_terminos');	
		$visible_terminos = SQLConnection::backendVisible2($id_terminos,'backend_visible_terminos');

		return json_encode(array('error' => $visible_terminos->error,'mensaje' => $visible_terminos->mensaje)); 
	}

	public function altaTerminos(){
	 	$user_id 		= Session::get("usuario")->user_id;
		$valores = [];
		$valores['user_id']		= $user_id; 

		foreach (\Input::except('_token') as $key => $valor) {
			  if (empty($valor)) {
		  	  	$valor = '0';
			  }

			  $valores[$key]=str_replace("\n", "<br>", $valor);
		}
		$valores=array_values($valores);
		//var_dump($valores); die(); 
		
		$store_procedure = 'backend_abm_terminos';
		$mensaje_general = SQLConnection::backendStoreProcedure($store_procedure,$valores,"selectOne");
		$visible = 1; 
		$terminos  = SQLConnection::backendStoreProcedure('backend_terminos',array(NULL,$visible),'select');
				
	 	return json_encode(array('error' => $mensaje_general->error,'mensaje' => $mensaje_general->mensaje,
	 	'tabla' => view('tablasgenerales/tabla_terminos')->with(compact('terminos','visible'))->render()
	 	));
	
	}
}
