/*
* Fecha        	: 01/07/2005
* Archivo       : formateador.js
* Descripcion 	: Funciones de formateo ES_es de campos de formularios
*/

// Función para dar formatear años
// Pensada para llamar al onblur de un campo de texto pasándole this como parámetro


function _tabCreateArray(cell){
	var rw=cell.parentElement.parentElement.rows;
	
	var _tabl=rw.length;
	var _tabS=new Array(_tabl-1);
	var _tmp=null;
	_tabSha=new Array(_tabl-1);
	if (!isNaN(Date.parse(rw.item(1).cells.item(cell.cellIndex).innerText))) _tabDa=true;
	for(var i=1;i<_tabl;i++) _tabSha[i-1]=i;
	for(var i=1;i<_tabl;i++){
		_tabS[i-1]=rw.item(i).cells.item(cell.cellIndex).innerText;
	}
	_tabBubbleSort(_tabS);
}

function _tabBubbleSort(array){
	var ar=array;
	var sh=_tabSha;
	rest=array.length;
	for(var i=rest-1;i>=0;i--){
		for(var j=0;j<=i;j++){
			if (_tabDa){
				if(Date.parse(ar[j+1])<Date.parse(ar[j])){
					var temp=ar[j];
					ar[j]=ar[j+1];
					ar[j+1]=temp;
					var temp=sh[j];
					sh[j]=sh[j+1];
					sh[j+1]=temp;
				}
			}else{
				if(ar[j+1]<ar[j]){
					var temp=ar[j];
					ar[j]=ar[j+1];
					ar[j+1]=temp;
					var temp=sh[j];
					sh[j]=sh[j+1];
					sh[j+1]=temp;
				}
			}
		}
	}
}

function _tabBuildRows(obj,tipo,tipo2){
	var rows = obj.parentElement.parentElement.rows;
	var tb=obj.parentElement.parentElement;
	var ci=rows.item(0).cells.length;
	var tdO = null;
	var trA=new Array(_tabSha.length);
	var trO=null;
	var trCabecera=null;
	if(tb.rows.length>0){
	for(var i=0;i<_tabSha.length;i++){
		tr = tabDoc.createElement("TR");
		for(var y=(ci-1);y>=0;y--){
			td = tabDoc.createElement("TD");
			tr.insertBefore(td, tdO);
			td.className = 'listCell';
			td.className = rows.item(_tabSha[i]).cells.item(y).className;
			
			if ((y==1) && (tipo==1)){
			td.className = 'inputFieldTitle';
            DATO1 = tabDoc.createElement('a'); 
            DATO1.setAttribute('href','JavaScript:fncModificar('+"'"+rows.item(_tabSha[i]).cells.item(y).innerText+"')" ) ;
            texto = document.createTextNode(rows.item(_tabSha[i]).cells.item(y).innerText);
            DATO1.appendChild(texto) 
            td.appendChild(DATO1) 
            }else if ((y==0) && (tipo==0) && (tipo2=="M") ){
			td.className = 'inputFieldTitle';
            DATO1 = tabDoc.createElement('a'); 
            DATO1.setAttribute('href','JavaScript:fncModificarGasto('+"'"+rows.item(_tabSha[i]).cells.item(y).innerText+"')" ) ;
            texto = document.createTextNode(rows.item(_tabSha[i]).cells.item(y).innerText);
            DATO1.appendChild(texto) 
            td.appendChild(DATO1)             
            }else{
            td.innerText=rows.item(_tabSha[i]).cells.item(y).innerText;
            
            }


			tdO=td;
			
		}
		tdO=null;
		trA[i]=tr;
	}
	_tabDeleteRows(tb);
	if(_tabMode){
		for(var i=trA.length-1;i>=0;i--){
			tb.insertBefore(trA[i],trO);
			trO=trA[i];
		}
	}else{
		for(var i=0;i<trA.length;i++){
			tb.insertBefore(trA[i],trO);
			trO=trA[i];
		}
	}
	}
	_tabSha=null;
	_tabDa=false;
}
	
function _tabDeleteRows(tb){
	for(var i=tb.rows.length-1;i>0;i--)
	tb.deleteRow(i);
}

	
function _tabSort(obj,tipo,tipo2){
	if (_tabLast==obj) _tabMode=!(_tabMode);
	_tabCreateArray(obj);
	_tabBuildRows(obj,tipo,tipo2);
	_tabLast=obj;
	return _tabMode;
}


	function changeEl (obj, mode) {
			if (mode == 1) {
			obj.style.color = 'RED';
		} else if (mode == 2) {
			obj.style.color = '#005d99';
		}
	}
	
	function setStyle(obj, name, value) {
		obj.style[name] = value;
	}
	
	function clickHead(obj1,obj, type) {
  //        if (_tabMode){
  //          obj1.innerText=_trFecha+"a-z";
  //          }else{
  //          obj1.innerText=_trFecha+"z-a";            
  //         }
		type = parseInt(type);
		if (isFinite(type)) {
			if (type == 1) {
				setStyle(obj, 'border', 'outset');
				setStyle(obj, 'borderWidth', '1px');
				setStyle(obj, 'borderRightColor', 'black');
				setStyle(obj, 'borderBottomColor', 'black');

			} else {
				setStyle(obj, 'border', 'inset');
				setStyle(obj, 'borderWidth', '1px');
				setStyle(obj, 'borderLeftColor', 'black');
				setStyle(obj, 'borderTopColor', 'black');
				setStyle(obj, 'borderRightColor', 'white');
				setStyle(obj, 'borderBottomColor', 'white');
			}
		}
	}

