//////////////////////////////////////////////////////////////
///// 		NUCLEO DEL SISTEMA						//////////
///// ////////////////////////////////////////////////////////

var Global = {
	validaErr: true,
	SessionCode:''
}

///////////////////////////////////////////////////////////////
///// 		FUNCIONES DEL SISTEMA			         //////////
var Shift = false;
var Site = {
	
	Teclado: function(Destino, tecla, limit) {	
		if(limit == null){limit = 255}			

		switch (tecla){
			case 'Send':
				Submit.Form('_php/php_index.php','FormLog','Load.Effect.hidde("tecladoNumerico","explode","500"); Load.Effect.show("_frm/frmmain.php","contenido","drop")',1);				
				return false;
				break;
				
			case 'Backspace':
				var txt = $( '#'+Destino ); 
				txt.val( txt.val().slice(0,-1) ); 
				break;
				
			case 'return':
				var txt = $( '#'+Destino ).val(); 
				if(txt.length < limit){		txt += '\n';	}
				$( '#'+Destino ).val(txt);
				break;
				
			case 'shift':
				if(Shift){	Shift = false;	}
				else{	Shift = true;	}
				break;
				
			case 'Limpiar':
				$('#'+Destino).val('');
				break;			
				
			default:				
				var txt = $( '#'+Destino ).val();								
				if(txt.length < limit){
					if(Shift){	
						tecla = tecla.replace(',', '!');	tecla = tecla.replace('.', '?');
						txt += tecla.toUpperCase();	
					}	
					else{	txt += tecla.toLowerCase();	}				
				}
				$( '#'+Destino ).val(txt);
		}	
	},		// End Teclado
	
	Relog: function(obj){
		Timer = new Date() 
		h = Timer.getHours()	
		m = Timer.getMinutes()
		 
		if (m < 10) m = "0" + m; 
		if (h < 10) h = "0" + h; 
	
		LaunchTime = h + ":" + m
		$('#'+obj).html(LaunchTime)
		setTimeout("Site.Relog()",1000) ;
	},	// End Relog
	
	Notify: function(type, msg){
		alert(msg)
	},			
	
	Imprimir: function(id){		
		$.post('_php/ticket.php','',function(result){			
			var tmp 			
			tmp = window.open(" ","Tickets","target=_blank,width=1px,height=1px,scrollbars=NO");				 						
			tmp.document.open();
			tmp.document.write('<head><link href="_css/css.main.css" type="text/css" rel="stylesheet"/></head>'); //Esto es omitible
			tmp.document.write(result);
			tmp.document.close();
			tmp.blur();
			tmp.print();
			tmp.close();
			
			$('#asesores').html('<div></div>');
			$('#title').html('Imprimiendo ticket');
			$('#commentassign').html('Su ticket, ha sido asignado correctamente, por favor, recoja su ticket.');
			$('#asesores').html('<div align="center"><table width="600px" border="0" cellspacing="0" cellpadding="0" class="bold t17"><tr><td style="width:100px;" align="center"><img src="_img/mistickets.jpg" style="margin-top:100px; cursor:pointer" onclick="$(\'#asignacion\').attr(\'style\', \'display:none\'); location.reload();" /><br />Continuar</td><td style="width:100px;" align="center"><img src="_img/logout.png" style="margin-top:100px; cursor:pointer" onclick="$(\'#asignacion\').attr(\'style\', \'display:none\');	Load.Effect.show(\'_frm/frmindex.php\', \'contenido\',\'drop\');" /><br />Salir</td></tr></table></div>');		

		});
	
	},
	
	EliminaTicket: function(idTicket){
		if(confirm('Confirma que desea eliminar este ticket?')){
			Submit.Data('_php/php_main.php','opc=EliminaTicket&idTicket=' + idTicket, 'showticket(0)',1)
		}
	}

}  // END SITE



///////////////////////////////////////////////////////////////
///// 		FUNCIONES DEL NUCLEO			         //////////
var Submit = {
	//////////////////////////////////////////////////
	//////   Carga y envio de información   	//////
	Form: function(page,idform,accion,Err){		// Hace post de un formulario
		var str = $("form#"+idform).serialize();	
		$.post(page,str,function(result){
			if(result == ''){
				if(accion != '')	{									
					eval(accion);
				}	
			}
			if(Err == 1 && result != ''){				
				eval(result)	
				// onError();
			}			
		});
		return false;
	},	//End SubmitForm
	
	Data: function(page,string,accion,Err){		// Hace post a variables específicas
		alert(string)
		$.post(page,string,function(result){		
			if(result == ''){
				if(accion != '')	{									
					eval(accion);
				}	
			}
			if(Err == 1 && result != ''){
				eval(result)
			}	
		});
	
	return false;	
	}
	
}		// End Submit

var Load = {
	
	frame: function(page, contener){	// Carga una pagina dentro de un elemento mediante ajax
		$('#' + contener).load(page);	
		return false;
	},	// End LoadPage
	
	Page: function(page, idform, contener){
		if(idform != ''){	var str = $("form#"+idform).serialize();	}
		$.post(page,str,function(result){
			$('#'+contener).html(result);
		});
		return false;
	},
	
	Effect: {
		fadein: function(obj){				
			$( "#"+obj ).effect('fade', {}, 500 );
			$( "#"+obj ).removeAttr( "style" ).hide().fadeIn();
		},		
		alone: function(contener,effect){
			$( "#"+contener ).show( effect, {}, 300, '' );
			return false;									
		},
		
		show: function(page,contener,effect){
			$.post(page,{},function(data){
				$('#'+contener).html(data)		
				$( "#"+contener ).show( effect, {}, 500, '' );
				return false;									
			});
		},	// End Show
		
		hidde: function(contener,effect, time){
			$( "#" + contener ).hide( effect, {}, time, '' );	
		}	// End Hidde
		
	},		// End effect	

	
}	/////////// END VAR LOAD

var Sys = {
	//////////////////////////////////////////////////
	///////	Funciones del sistema		 /////////////
	IsNumber: function(evt){
		var nav4 = window.Event ? true : false;
		// Backspace = 8, Enter = 13, '0′ = 48, '9′ = 57, '.' = 46
		var key = nav4 ? evt.which : evt.keyCode;
		//return (key <= 13 || (key >= 48 && key <= 57) || key == 46);
		return (key <= 13 || (key >= 48 && key <= 57));
	},		// End IsNumber
	
	encode : function (string) {
		string = string.replace(/\r\n/g,"\n");
		var utftext = "";
		for (var n = 0; n < string.length; n++) {
			var c = string.charCodeAt(n);
			if (c < 128) {
				utftext += String.fromCharCode(c);
			}
			else if((c > 127) && (c < 2048)) {
				utftext += String.fromCharCode((c >> 6) | 192);
				utftext += String.fromCharCode((c & 63) | 128);
			}
			else {
				utftext += String.fromCharCode((c >> 12) | 224);
				utftext += String.fromCharCode(((c >> 6) & 63) | 128);
				utftext += String.fromCharCode((c & 63) | 128);
			}
		}
		return utftext;
	},
 
	// public method for url decoding
	decode : function (utftext) {
		var string = "";
		var i = 0;
		var c = c1 = c2 = 0;
		while ( i < utftext.length ) {
			c = utftext.charCodeAt(i);
			if (c < 128) {
				string += String.fromCharCode(c);
				i++;
			}
			else if((c > 191) && (c < 224)) {
				c2 = utftext.charCodeAt(i+1);
				string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
				i += 2;
			}
			else {
				c2 = utftext.charCodeAt(i+1);
				c3 = utftext.charCodeAt(i+2);
				string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
				i += 3;
			}
		}
		return string;
	}
	
}/// END CORE


