
////////////////////////////////////////////
/// FUNCIONES VARIAS
////////////////////////////////////////////

//Funciones de cadena.
function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}
function ltrim(stringToTrim) {
	return stringToTrim.replace(/^\s+/,"");
}
function rtrim(stringToTrim) {
	return stringToTrim.replace(/\s+$/,"");
}
function left(str, n)
{
	if (n <= 0)
		return "";
	else if (n > String(str).length)
		return str;
	else
		return String(str).substring(0,n);
}
function right(str, n)
{
	if (n <= 0)
		return "";
	else if (n > String(str).length)
		return str;
	else
	{
		var iLen = String(str).length;
		return String(str).substring(iLen, iLen - n);
	}
}

//Inyectar css online.
function injectCss (archivos) 
{
	a = archivos.split(",");    
  for (i=0;i<a.length;i++) {
    //Obtenemos el nombre de id.
    if (a[i]!="") {    
      id = a[i].replace(".","","g").replace("/","_","g");            
      //Comprobamos que el nombre no exista para no volver a cargar.
      if ($("#"+id).length == 0) {              
        $('head').append('<link id="'+id+'" rel="stylesheet" type="text/css" href="'+a[i]+'"/>');
      }        
    }
  }    
}

//Mostrar y ocultar columnas.
function toggleLateralD()
{
	if ($("#rightColumn").is(':visible')) 
	{
		hideLateralD();
		$.ajax({
		   type: "POST",
		   url: "modipar.php",
		   data: "ocultarcold=1"
			});
	}
	else
	{
		showLateralD();
		$.ajax({
		   type: "POST",
		   url: "modipar.php",
		   data: "ocultarcold=0"
			});
	}
}

function hideLateralD()
{
	$("#rightColumn").css({'width': '2px', 'height':'2px', 'margin': '0 -2px 0 1px', 'overflow':'hidden', 'visibility':'hidden'});
	$("#outerColumnContainer").css({'border-right':'solid 2px ' + $("#outerColumnContainer").css("border-right-color")});
	$(".imagenocultar").css({'visibility':'visible'});		
}

function showLateralD()
{
	$("#rightColumn").css({'width': '12em', 'height':'auto', 'margin': '0 -12em 0 1px', 'overflow':'auto', 'visibility':'visible'});
	$("#outerColumnContainer").css({'border-right':'solid 12em ' + $("#outerColumnContainer").css("border-right-color")});
	$(".imagenocultar").css({'visibility':'hidden'});
}	

//Ver fotos de artículos en ventana modal.
function verfoto(prov,codigo)
{	
	//comprobamos si estan los includes para mostrar modal.
	insertScript("jqui-core-js","./jquery/ui/packed/ui.core.packed.js");
	insertScript("jqdlg-js","./jquery/ui/packed/ui.dialog.packed.js");
	insertCSS("jqdlg-css","./jquery/themes/flora/flora.dialog.css");	
	
	setTimeout(function(){
		
		if ($("#dlgFoto").length == 0)
		{
			$('body').prepend('<div id="dlgFoto" class="flora">' + CadenaEsperaCarga() + '</div>');
			$("#dlgFoto").dialog({
				autoOpen: false,
				modal: true,
	    	overlay: { 
	        opacity: 0.5, 
	        background: "black" 
	    		} ,
	    	position: "center",
	    	width: 800,
	    	height: 800,
	    	resizable: false
				});
		}
		else
			$("#dlgFoto").html(CadenaEsperaCarga());  
		$("#dlgFoto").load("verfoto.php?prov=" + prov + "&file=" + codigo + "x.jpg");
		$("#dlgFoto").dialog("open");
	},1000);
}

//Ver .
function verdetalles(codigo)
{	

	//comprobamos si estan los includes para mostrar modal.
	insertScript("jqui-core-js","./jquery/ui/packed/ui.core.packed.js");
	insertScript("jqdlg-js","./jquery/ui/packed/ui.dialog.packed.js");
	insertCSS("jqdlg-css","./jquery/themes/flora/flora.dialog.css");	
	
	setTimeout(function(){
		
		if ($("#dlgFoto").length == 0)
		{
			$('body').prepend('<div id="dlgDetalles" class="flora">' + CadenaEsperaCarga() + '</div>');
			$("#dlgDetalles").dialog({
				autoOpen: false,
				modal: true,
	    	overlay: { 
	        opacity: 0.5, 
	        background: "black" 
	    		} ,
	    	position: "center",
	    	width: 600,
	    	height: 600,
	    	resizable: false
				});
		}
		else
			$("#dlgDetalles").html(CadenaEsperaCarga());  
		
    $("#dlgDetalles").load("verdetalles.php?codigo=" + codigo);
    $("#dlgDetalles").dialog("open");
	},1000);

}

//Funciones para mostrar contenidos.
function listPedidos()
{
	//Mostramos la espera.
	$('#middleColumn > .inside').html(CadenaEsperaCarga());

	//inyectamos el javascript para ver grids.
	insertScript("jqgrid-js","./jqgrid/jquery.jqGrid.js");
	//ponemos el javascript del ui/calendario.
	insertScript("jqui-core-js","./jquery/ui/packed/ui.core.packed.js");
	insertScript("jqui-datepk-js","./jquery/ui/packed/ui.datepicker.packed.js");
	//Ponemos el script del idioma.
	idioma=$("#idiomaactual").attr("value");	
	if (idioma!="" && idioma!="EN")
		insertScript("jqui-datepkid-js","./jquery/ui/i18n/ui.datepicker-"+idioma.toLowerCase()+".js");
	//Ponemos el javascript con las funciones para listar pedidos.
	insertScript("flistaped-js","./app_js/flistapedidos.js");	
	//y también el css del grid.
	estilogrid = window.estilogrid ? window.estilogrid : "basic";
	insertCSS("jqgrid-css","./jqgrid/themes/" + estilogrid + "/grid.css");
	//y del calendario
	insertCSS("jqui-datepk-css","./jquery/themes/flora/flora.datepicker.css");
	
	//Ocultamos la columna derecha.
	hideLateralD();
	
	//Cargamos la página con el listado.
	//Usamos ajax y al terminar iniciamos los grids.		
	$.ajax({		
		url: "./listapedidos.php", 
		type: "GET",
		cache: false,
		success: function (data) 
			{
				//Llenamos la pantalla con los filtros.				
				$('#middleColumn > .inside').html(data);
				$("#zonagrids").html(CadenaEsperaCarga());
				
				//Iniciamos el calendario con una pausa para cargar bien el dom.
				setTimeout(function(){
						$('#rangofechas').datepicker({
							rangeSelect: true, 
							firstDay: 1, 
							dateFormat: 'dd/mm/yy', 
							onClose: function(dateText){mostrarGridPed($('#seldoc').val(),$('#selpro').val(),$('#rangofechas').val())}
						});						
						mostrarGridPed($("#seldoc").val(),$("#selpro").val(),$("#rangofechas").val());												
					},1000);
			}
		});
}

function showConfigCliente()
{	
	//Mostramos la espera.
	$('#middleColumn > .inside').html(CadenaEsperaCarga());
	//Ocultamos la columna derecha.
	hideLateralD();
	//Usamos ajax y al terminar iniciamos los grids.			
	$('#middleColumn > .inside').load("./configcliente.php");	
}

function showPaginaPortada(pagina)
{
	//Mostramos la espera.
	$('#middleColumn > .inside').html(CadenaEsperaCarga());
	//Mostramos la columna derecha.
	showLateralD();	
	//Cargamos el contenido de la página.
	$.ajax({
		url: "./fpagina.php?pag="+pagina, 
		cache: false,
		type: "GET",		
		success: function (data) 
			{
				$('#middleColumn > .inside').html(data)
				//Actualizamos las noticias.
				showMiniNoticias();
			}
	});
}

function showEstadisticas()
{		
	//Mostramos la espera.
	$('#middleColumn > .inside').html(CadenaEsperaCarga());

	//ponemos el javascript del ui/tabs y los grids
	insertScript("jqui-core-js","./jquery/ui/packed/ui.core.packed.js");
	insertScript("jqui-tabs-js","./jquery/ui/packed/ui.tabs.packed.js");
	insertScript("jqgrid-js","./jqgrid/jquery.jqGrid.js");
	//El js de funciones de estadísticas.
	insertScript("stadis-js","./app_js/festadisticas.js");
	//el css de los tabs.
	insertCSS("jqui-tabs-css","./jquery/themes/flora/flora.tabs.css");
	//y también el css del grid.
	estilogrid = window.estilogrid ? window.estilogrid : "basic";
	insertCSS("jqgrid-css","./jqgrid/themes/" + estilogrid + "/grid.css");

	//Ocultamos el lateral.
	hideLateralD();
	
	//Cargamos la página con el listado.
	//Usamos ajax y al terminar pintamos la primera gráfica.
	$.ajax({		
		url: "./estadisticas.php", 
		type: "POST",
		cache: false,
		success: function (data) 
			{	
				//Llenamos la pantalla básica con la estructura.				
				$('#middleColumn > .inside').html(data);
				$('#tabstadis').css("display","none");
				$('#middleColumn > .inside').prepend("<div id='cargastadis'>"+CadenaEsperaCarga()+"</div>");
				
				//Iniciamos los tabs con el temporizador.				
				setTimeout(function(){
					$("#cargastadis").remove();
					$('#tabstadis').css("display","block");
					$("#tabstadis > ul").tabs();
				},1000);
			}
		});
}

function showMiniNoticias()
{
	$('#rightColumn > .inside').html(CadenaEsperaCarga());
	//Mostramos la columna derecha.
	showLateralD();	
	//Cargamos el contenido de la página.
	$('#rightColumn > .inside').load("./fnoticias.php");	
}

function showMenuTop()
{
	$("#pageWrapper > .hnav > ul").html(CadenaEsperaCarga());
	$("#pageWrapper > .hnav > ul").load("./fmenutop.php");
}

function showMenuLeft()
{
	$("#leftColumn > .inside > .vnav").html(CadenaEsperaCarga());	
	//Cargamos el contenido de la página.
	$.ajax({
		url: "./fmenuleft.php", 
		cache: false,
		type: "GET",
		success: function (data) 
			{
				$("#leftColumn > .inside > .vnav").html(data)
			}
	});
}

function insertScript(id,src)
{	
	if ($("#"+id).length == 0)
	{
	  $.getScript(src,function()
	  	{			  
			  var s=document.createElement('script');
			  //s.setAttribute('src',src);
			  s.setAttribute('id',id);
			  s.type = 'text/javascript';
			  document.getElementsByTagName('head')[0].appendChild(s);
			});
	}
}

function insertCSS(id,href)
{
	if ($("#"+id).length == 0)
  	$('head').append('<link id="'+id+'" rel="stylesheet" type="text/css" href="'+href+'">');
}

function ComprobarUsuario(campocodigo,campoclave)
{	

	var infopost = "&"+campocodigo+"="+$("input[@name=parcodigo]").val()+"&"+campoclave+"="+$("input[@name=parclave]").val();
	$("#leftColumn > .inside > .vnav").html(CadenaEsperaCarga());
	$('#middleColumn > .inside').html(CadenaEsperaCarga());
  
	$.ajax({
		url: "./fregistro.php", 
		cache: false,
		type: "POST",
		data: infopost,
		success: function (data) 
			{
				eval("resultado="+data);								
				if (resultado.estado == "OK")
				{
					//Obtenemos algunos parámetros de configuración que necesita js. Por ejemplo el estilo de grids.					
					estilogrid = resultado.estilogrid;
					if (estilogrid == "") estilogrid = "basic";					
					//Usuario registrado con exito.
					$("#middleColumn > .inside").load("./fregbienvenida.php");
					showMenuLeft();
					showMenuTop();
				}
				else
				{
					$("#middleColumn > .inside").html(resultado.texto);
					showMenuLeft();
					showMenuTop();
				}
			}
		});
}	

function showForo()
{
	//Insertamos el css de foros.
	insertCSS("foro-css","./estilofor.css");
	//Mostramos la espera.
	$('#middleColumn > .inside').html(CadenaEsperaCarga());
	//Ocultamos la columna derecha.
	hideLateralD();
	//Usamos ajax y al terminar iniciamos los grids.			
	$('#middleColumn > .inside').load("./fforo.php");	
}

function desconectar()
{
	$("#leftColumn > .inside > .vnav").html(CadenaEsperaCarga());
	$('#middleColumn > .inside').html(CadenaEsperaCarga());
	
	$.ajax({
		type: "POST",
		url: "modipar.php",
		cache: false,
		data: "desconectar=1",
		success: function (data) 
		{			
			showPaginaPortada("PRINCIPAL");	
			showMenuLeft();
		}
	});	
}

function CadenaEsperaCarga()
{
	return "<img style='margin:20px; border:1px solid gray;' src='./iconos/loading1.gif'>"
}

