/* Json */

	var JsonData = function(path,id)
	{
		this.sPath 	= path;
		this.sId 	= id;
	
		sQuery = "";
		
		oTableRowTemplade 	= undefined;
		oTableRowStatus 	= null;
		psTable = "table#" + id + " tr";
		oArrCells = Array();
	}
	
	JsonData.prototype.loadData = function(pPath)	
	{
		$("tablePage").set('styles', { 'visibility': 'hidden' });
		var isDelete = isDeleteRegister;
		var slPath = ( pPath == null ) ? this.sPath: pPath;
		var slId = this.sId;
		
		var psTexto = "";
		
		if( oTableRowTemplade == undefined)		
		{
			oTableRowTemplade = $$(psTable)[1].clone();
			oTableRowTemplade.set('class', 'trcolor1');
			var nTotalCell = $$(psTable)[1].getChildren().length;
			
			for(i=0;i<nTotalCell;i++)
			{
				oArrCells[i] = $$(psTable)[1].getChildren()[i].get("html");
			}
			
			if ( $$(psTable)[2] != null)
			{
				oTableRowStatus = $$(psTable)[2].clone();
			}			
		}	

		if ( oTableRowStatus != null) 
		{
			
			var nTotalRows = $$(psTable).length;
			for(i=1;i<nTotalRows;i++) 
			{
					
				$$(psTable)[1].dispose();
			}
			
			var poRow = oTableRowStatus.clone();
			var arrCols = poRow.getChildren();
			arrCols[1].set('html', MSG_LoadData);
			poRow.set('class', '');
			tbody = $(slId).getElementsByTagName("tbody")[0];
			tbody.appendChild(poRow);
		}
		
		var oData = new Request.JSON({url: slPath, onComplete: function(obj) {
								
			
			var poDataSource = obj.data;
			var pnRecordCount = poDataSource.length;			
			var nTotalRows = $$(psTable).length;
			for(i=1;i<nTotalRows;i++) {
				$$(psTable)[1].dispose();
			}

			if( pnRecordCount == 0 ){
				$("tablePage").set('styles', { 	'visibility': 'hidden' });
				if ( oTableRowStatus != null) {
					var poRow = oTableRowStatus.clone();
					poRow.set('class', '');
					tbody = $(slId).getElementsByTagName("tbody")[0];
					tbody.appendChild(poRow);
				}
			} else 	{
				var bColor = true;
				for(indexa=0; indexa<pnRecordCount; indexa++)
				{
					var poRow = oTableRowTemplade.clone();
					if ( bColor ) {
						poRow.set('class', '');
						
					} else {
						poRow.set('class', 'shadow')
					}
					
					bColor = ! bColor ;
					
					var  arrCols = poRow.getChildren();
					for(indexb=0; indexb < arrCols.length; indexb++) {
						psTexto = unescape(oArrCells[indexb]);
						
						psTexto = psTexto.substitute(poDataSource[indexa]);

						if(psTexto.indexOf("checkbox") > 0 )
						{
							if (poDataSource[indexa].DISABLE > 0)
							{
								psTexto = psTexto.replace('checkbox"','checkbox" disabled="disabled"')
							}
						}
						arrCols[indexb].set('html', psTexto);
						
					}
					tbody = $(slId).getElementsByTagName("tbody")[0];
					tbody.appendChild(poRow);
					//poRow.inject($$(psTable)[ $$(psTable).length - 1 ], 'after');
				}
				
				$("tablePage").set( 'styles' , { 'visibility': 'visible' } );
				$("pToRows").set( "text" , obj.rows );
				$("pToPages").set( "text" , obj.pages );
				$("pPages").options.length = 0;
				var ie = document.all;
				for(i=0; i< obj.pages; i++){
					if(ie){
						var oOption = new Option();
						oOption.innerHTML = i + 1; 
						oOption.value = i + 1;
						if( (i+1) == obj.page) oOption.selected = true
						$("pPages").options.appendChild(oOption);
					} else {
						$("pPages").appendChild( new Option() );
						$("pPages").options[i].text = i + 1; 
						$("pPages").options[i].value = i + 1;
						if( (i+1) == obj.page) $("pPages").options[i].selected = true
					}
				}
				
				setSelectByText("pRows", obj.row);
				var arrCols = $$(".trhead img");				
				for(i=0; i<arrCols.length; i++)
					arrCols[i].src = "image/spacer.gif";
				arrCols[(obj.colnumber-1)].src = "image/"+obj.colorder+".gif";	
				var arrCols = $$(".trhead a");
				for(i=0; i<arrCols.length; i++)
					arrCols[i].set('class','');	
				arrCols[(obj.colnumber-1)].set('class','active blue');
				}

		}});
		oData.get();
	}


/* Validacion */





/* */


var nPage;
/* */
var sQuery = "";
var sXPath = "";
var cssStyle = "";
/* */
var MSG_LoadData = " Cargando Data...";
var MSG_NoData = " Cargando Data...";
var objCal = null;
var objInp = null;
var isDeleteRegister = false;


var _MSG_DELETE_ALL = "Estas seguro de eliminar los registros seleccionados?";
var _MSG_DELETE_ALL_CLEAR = "No hay registros seleccionados";
var _MSG_DELETE_IMG = "Estas seguro de elimina el archivo?";
var _MSG_VALID_ERROR = "Data Requerida";
var _MSG_DELETE_ALLDATA = "Estas seguro de eliminar todos los registros?";


/* Functions */
setSendForm = function (){
	$('SUBMIT').click()
	//$("FORM").submit();
}

/* Message */
var efectMessage;
var efectFilter;
var bEfectMessage = false;
var binitScript = true;


initScript = function(e){
	if ( $("middlemessage") != null)
	{
		efectMessage = new Fx.Slide('middlemessage');	
		efectMessage.hide();
	}
	
	if ( $("middlefilter") != null)
	{
		efectFilter = new Fx.Slide('middlefilter');
		if ( binitScript ) {
			efectFilter.hide();
		}
	}
}
setToggleMessage = function()
{
	efectMessage.toggle();
	bEfectMessage = !bEfectMessage;
}

getToggleMessageOpen = function(){
	if ( !bEfectMessage )
	{
		efectMessage.toggle();
		bEfectMessage = true;
	}
}
setToggleFilter = function()
{
	efectFilter.toggle();
}


setUpdateData = function()
{
	isDeleteRegister = false;
	efectMessage = new Fx.Slide('middlemessage');	
	efectMessage.hide();
	LoadData();
}


setUpdatePage = function(){
}
/* Class Paging */

	

	LoadDataSort = function(col){
		sQuery = "sort="+col;
		LoadData();
	}
// End Class

setDeleteData = function()
{
	var arrCheck = $$("table#jsonData tbody input");
	var flag     = false;
	arrCheck.each(function(elem)
	{ 
		if(elem.checked){ flag = true;}
	});
	if(flag)
	{
		if( window.confirm(_MSG_DELETE_ALL) ) 
		{	
			var arrCheck = $$("table#jsonData tbody input");
			var sData = "";
			arrCheck.each(function(elem)
			{ 
				if(elem.checked)
				{
					n = parseInt(elem.value,10); sData = sData + ","+n; 
				}
			});
		
			sData = sData.substring(1);
			sQuery = "del="+sData;
			isDeleteRegister = true;
			LoadData();
			$('allbox').checked=false;
			checkAll();
		}
	}
	else
	{
		alert(_MSG_DELETE_ALL_CLEAR)
	}
}

setDeleteAllData = function()
{
	if( window.confirm(_MSG_DELETE_ALLDATA) ) 
	{	
		sQuery = "del=all";
		LoadData();
	}
}

//function setDelete(id){ if(	window.confirm(_MSG_DELETE_ALL) ) { sQuery = "del="+id; LoadData(nPage); } }

function SaveAllStatus(){ var sCheck = getChecks(); sQuery = "check="+sCheck; LoadData(nPage); }
function DeleteAll(){ 
	if(	window.confirm(_MSG_DELETE_ALL) ) { 
		SaveAllStatus();
	}
}

function setRedirect(url){ window.location = url; }

getChecks = function () {
	// obtiene los checks e ids
	var nodoCheck = document.getElementsByTagName("input");
	var totCheck = 0;
	var msgTemp;
	var msgCheck = "";
	var xmsgtemp="";
	for (i=0; i<nodoCheck.length; i++){
	if (nodoCheck[i].type == "checkbox" && nodoCheck[i].name != "allbox" && nodoCheck[i].disabled == false) { 
		msgTemp = nodoCheck[i].name.split("_"); 
		if (xmsgtemp==msgTemp[1]){ 
			if (nodoCheck[i].checked) { msgCheck = msgCheck + "-1"; 
			} else { msgCheck = msgCheck + "-0"; } 
			xmsgtemp=msgTemp[1]; 
		}else{ 
			if (nodoCheck[i].checked) { msgCheck = msgCheck + ";" + msgTemp[1] + "-1"; 
			} else { msgCheck = msgCheck + ";" + msgTemp[1] + "-0"; } 
			xmsgtemp=msgTemp[1]; 
		}
	}
	if (nodoCheck[i].type == "text" ) { msgTemp = nodoCheck[i].name.split("_");
	if (nodoCheck[i].value > 0) { msgCheck = msgCheck + "-" + nodoCheck[i].value; } else { msgCheck = msgCheck + "-0"; } xmsgtemp=msgTemp[1]; } }
	return msgCheck.substring(1);
}


function checkUnique(input) {
	var nodoCheck = document.getElementsByTagName("input");
	for (i=0; i<nodoCheck.length; i++){
		if ( nodoCheck[i].type == "checkbox" && nodoCheck[i].name != "allbox" && nodoCheck[i].alt == "unique" && nodoCheck[i].name != input ) {
			nodoCheck[i].checked = "";
		}
	}
}

function checkAll() {
	var nodoCheck = document.getElementsByTagName("input");
	var varCheck = $("allbox").checked;
	for (i=0; i<nodoCheck.length; i++){
		if (nodoCheck[i].type == "checkbox" && nodoCheck[i].name != "allbox" && nodoCheck[i].disabled == false /* para que no afecte a los checkbox de status */) {
			nodoCheck[i].checked = varCheck;
		}
	}
	if( varCheck ) 
		$("PAGE_STATE").set("text","Deseleccionar todo")
	else
		$("PAGE_STATE").set("text","Seleccionar todo")
}

function setSelectByText(formSelect, valSelect){
	var varSelect = $(formSelect);
	for (j=0;j<varSelect.options.length ;j++) { if (varSelect.options[j].text == valSelect) { 
			$(formSelect).options[j].selected = true; 
		} 
	}
}

function setSelectByValue(formSelect, valSelect){
	var varSelect = $(formSelect);
	for (j=0;j<varSelect.options.length ;j++) { if (varSelect.options[j].value == valSelect) { 
			$(formSelect).options[j].selected = true; 
		} 
	}
}
/* Paginacion */

	function showCalendar(el) {
		if (objCal) return;	
		var txtInput = el;
		objInp = el;
		objCal = new RichCalendar();
		objCal.start_week_day = 0;
		objCal.show_time = false;
		objCal.user_onchange_handler = onChangeCal;
		objCal.user_onclose_handler = onCloseCal;
		objCal.user_onautoclose_handler = onAutoCloseCal;
		objCal.parse_date(txtInput.value, '%d/%m/%Y');
		objCal.show_at_element(txtInput, "adj_left-bottom");
		objCal.change_skin('alt');
	
	}

	function onChangeCal(cal, object_code) {
		if (object_code == 'day') {
			objInp.value = cal.get_formatted_date('%d/%m/%Y');
			cal.hide();
			objCal = null;
		}
	}
	
	function onCloseCal(cal) {
		cal.hide();
		objCal = null;
	}
	
	function onAutoCloseCal(cal) {
		objCal = null;
	}

	/* Upload File */
	var setFileTextoToInput = function(id,obj){
		$('thFile'+id).value = obj.value;
		if ( $('oFileDelete'+id) != null)
			$('oFileDelete'+id).set('class', 'divinfiledelvisible');
	}
	
	var setRemoveFileInput = function(id,input,file,row){
		var sValue = ( $("h"+input+id) == null ) ? "": $("h"+input+id).value;
		if( sValue == ""){
			$("t"+input+id).value = "";
			$("thFile"+id).value="";
			$('oFileDelete'+id).set('class', 'divinfiledelhidden');
		} else {
			if( window.confirm(_MSG_DELETE_IMG) ) {
				var myRequest = new Request({method: 'post', url: file,
					onSuccess: function (responseText, responseXML){
						if( parseInt(responseText) == 1){
							$("thFile"+id).value = "";
							$("h"+input+id).value = "";
							$("t"+input+id).value = "";
							$('oFileDelete'+id).set('class', 'divinfiledelhidden');
						}
					}
				}).send('del='+row+"&type=h"+input+id+"&file="+$("h"+input+id).value);
			}
		}
	}
	
	/* */

	//xmlStatus  sqllogs


// Function update
function getGrilla()
{
	sXPath = "json/ofertas.aspx?area="+$('idarea').value+'&desc='+$('query').value;
	LoadData();
}

function getOpt(json,id)
{
	$(id).innerHTML=''
//	createOpt(id,value_select,inner_select);
	json.each(
		function(obj)
		{
			createOpt(id,obj.ID,obj.NOMBRE);		
		}
	);
}

function createOpt(id,value,inner)
{
	var opt = document.createElement('option');
	opt.value = value;
	opt.innerHTML = inner;
	$(id).appendChild(opt);
}

function getRequest(slPath,iselect,msj)
{

	var oData = new Request.JSON({url: slPath, 
			onRequest: function()
			{
				$(iselect).innerHTML=''
				$(iselect).disabled = true;
				createOpt(iselect,'0','cargando');
			},					 
			onComplete: function(obj) 
			{
				var data  = obj.data;
				$(iselect).disabled = false;
				getOpt(data,iselect);						
			
			}});

	oData.get();
}
// Function Paging
	function LoadData(pPage) {
		var slUrl = sXPath + (( sXPath.indexOf("?") == -1 )  ? "?" : "&" );
		if ( isNaN(pPage) ){ 
			slUrl += "row="+$("pRows").value+"&page="+$("pPages").value+"&"+sQuery;
		} else { 
			slUrl += "row="+$("pRows").value+"&page="+pPage+"&"+sQuery;
		}
		sQuery = "";
		oJsonData.loadData(slUrl);
	}
	function setPage(pPage){
		if(pPage == "-" && parseInt( $("pPages").value ) > 1 ){ 
			LoadData( parseInt($("pPages").value) - 1 );
		}else if (pPage == "+" && parseInt( $("pPages").value ) < parseInt( $("pToPages").get("text") ) ){ 
			LoadData( parseInt($("pPages").value) + 1 ); 
		}
	}
//
/* VArias*/
	setPlayerType = function(value){
		if(value == 0){
			$('oCol1').set('text', 'HR');
			$('oCol2').set('text', 'RBI');
			$('oCol3').set('text', 'BA');
		}else{
			$('oCol1').set('text', 'Wins');
			$('oCol2').set('text', 'Losses');
			$('oCol3').set('text', 'ERA');
		}
	}
/* */
/// Schedule

	var oTemplate = null;
	var nDinamicID = 0;
	var nDinamicValid = 0;
	var arrValidate = Array();
	

	setTeamLoadPlayer = function(n){
		sQuery = "player="+n; 
		LoadData();
	}

	
	
	
// STYLING FILE INPUTS 1.0 | Shaun Inman <http://www.shauninman.com/> | 2007-09-07
if (!window.SI) { var SI = {}; };
SI.Files =
{
	htmlClass : 'SI-FILES-STYLIZED',
	fileClass : 'file',
	wrapClass : 'cabinet',
	
	fini : false,
	able : false,
	init : function() {
		this.fini = true;
		
		var ie = 0 //@cc_on + @_jscript_version
		if (window.opera || (ie && ie < 5.5) || !document.getElementsByTagName) { return; } // no support for opacity or the DOM
		this.able = true;
		
		var html = document.getElementsByTagName('html')[0];
		html.className += (html.className != '' ? ' ' : '') + this.htmlClass;
	},
	
	stylize : function(elem)	{
		if (!this.fini) { this.init(); };
		if (!this.able) { return; };
		
		elem.parentNode.file = elem;
		elem.parentNode.onmousemove = function(e)		{
			if (typeof e == 'undefined') e = window.event;
			if (typeof e.pageY == 'undefined' &&  typeof e.clientX == 'number' && document.documentElement)	{
				e.pageX = e.clientX + document.documentElement.scrollLeft;
				e.pageY = e.clientY + document.documentElement.scrollTop;
			};

			var ox = oy = 0;
			var elem = this;
			if (elem.offsetParent)	{
				ox = elem.offsetLeft;
				oy = elem.offsetTop;
				while (elem = elem.offsetParent){
					ox += elem.offsetLeft;
					oy += elem.offsetTop;
				};
			};

			var x = e.pageX - ox;
			var y = e.pageY - oy;
			var w = this.file.offsetWidth;
			var h = this.file.offsetHeight;

			this.file.style.top		= y - (h / 2)  + 'px';
			this.file.style.left	= x - (w - 30) + 'px';
		};
	},
	
	stylizeById : function(id)	{
		this.stylize(document.getElementById(id));
	},
	
	stylizeAll : function()	{
		if (!this.fini) { this.init(); };
		if (!this.able) { return; };
		
		var inputs = document.getElementsByTagName('input');
		for (var i = 0; i < inputs.length; i++)		{
			var input = inputs[i];
			if (input.type == 'file' && input.className.indexOf(this.fileClass) != -1 && input.parentNode.className.indexOf(this.wrapClass) != -1){
				this.stylize(input);
			};
		};
	}
};

window.addEvent('domready', function() {
	//time to implement basic show / hide
	Element.implement({
		//implement show
		show: function() {
			this.setStyle('display','');
		},
		//implement hide
		hide: function() {
			this.setStyle('display','none');
		}
	});
});

function getAreas()
{
	//sXPath = "json/ofertas.aspx?area="+$('idarea').value+'&desc='+$('query').value;
	sXPath = "json/ofertas.aspx?area="+$('idarea').value;
	LoadData();
}

function favoritos()
{
	var nav = navigator.userAgent.toLowerCase();
	var url = "http://192.168.1.99/bolsadetrabajo";
	var tit = "Euromotors - Bolsa de Trabajo";
	
	if (nav.indexOf('msie') != -1 && (parseInt(navigator.appVersion)>=4)) 
	{
		window.external.AddFavorite(url,tit);
	}
	else if(nav.indexOf('firefox') != -1)
	{
		window.sidebar.addPanel(tit, url,"");
	}
	else if(nav.indexOf('safari') != -1)
	{
		
		alert("Presione los botones [command]+D para agregar este sitio en sus Favoritos");
	}
}

addRows = function(classs,nom){l = "";
	$$('.'+classs).each(
		function(e){
			l = e.id;
		}
	);

	l = parseInt(l.substring(3),10) + 1;
	var clone = $(nom+'1').clone();
	clone.set('id',nom+l);
	clone.getElementsByTagName('input')[0].value = '';
	clone.getElementsByTagName('td')[4].innerHTML = '<a href="javascript:void(0)" id="active" onclick="delRow(\''+nom+ l+'\')">Eliminar</a>';
	clone.injectAfter(nom+(l-1));

}

delRow = function(id)
{
	$(id).dispose();
}

	