
// PopUp Window //
function openWindow(url,w,h,tb,stb,l,mb,sb,rs,x,y){ 
		var t=(document.layers)? ',screenX='+x+',screenY='+y: ',left='+x+',top='+y; //A LITTLE CROSS-BROWSER CODE FOR WINDOW POSITIONING
		tb=(tb)?'yes':'no'; stb=(stb)?'yes':'no'; l=(l)?'yes':'no'; mb=(mb)?'yes':'no'; sb=(sb)?'yes':'no'; rs=(rs)?'yes':'no';
		var x=window.open(url, 'newWin'+new Date().getTime(), 'scrollbars='+sb+',width='+w+',height='+h+',toolbar='+tb+',status='+stb+',menubar='+mb+',links='+l+',resizable='+rs+t);
		x.focus();}

		
// LOADING //

var LoadingData = '<TABLE BORDER="0" CELLPADDING="3" CELLSPACING="0" BGCOLOR="#CC0000" STYLE="position:absolute; right:5px; top:5px;"><TR><TD><IMG SRC="images/progress_white_trans.gif"></TD><TD STYLE="font:9pt Arial; color:#FFFFFF;">Loading...</TD></TR></TABLE>';

function LoadingMessage(active){
	
	if ( active == "yes" ){
	
		// var loading_top = ( document.body.scrollTop + 5 );
		
		var loading_top = pos_scrollTop();
		var divElement = document.getElementById('loading_table_area');		
		
		if ( divElement != null ){
		
			divElement.innerHTML = LoadingData;		
			divElement.style.right = '0px';
			divElement.style.top = loading_top + 'px';
			divElement.className='above_all';	
		};
	}
	else {
		document.getElementById('loading_table_area').innerHTML = "";
	};
};

function LoadingOnTop(){
	//var loading_top = ( document.body.scrollTop + 5 );
	var loading_top = pos_scrollTop();
	document.getElementById('loading_table_area').style.top = loading_top + 'px';
}

// Determina el # del pixel donde esta el tope de la pantalla
function pos_scrollTop() {
	return pos_filterResults (
		window.pageYOffset ? window.pageYOffset : 0,
		document.documentElement ? document.documentElement.scrollTop : 0,
		document.body ? document.body.scrollTop : 0
	);
}

function pos_filterResults(n_win, n_docel, n_body) {
	var n_result = n_win ? n_win : 0;
	if (n_docel && (!n_result || (n_result > n_docel)))
		n_result = n_docel;
	return n_body && (!n_result || (n_result > n_body)) ? n_body : n_result;
};

// FUNCIONES RE-USABLES //

// Funcion para substituir el contenido de un Elemento con una imagen pequeña.
function ClearElement(ElementID){	
	document.getElementById(ElementID).innerHTML = '<IMG SRC="../images/dot_trans.gif" BORDER="0" WIDTH="1" HEIGHT="1">';
}

function trimAll(sString) {
	
	while (sString.substring(0,1) == ' '){
		sString = sString.substring(1, sString.length);
	}					
	while (sString.substring(sString.length-1, sString.length) == ' '){
		sString = sString.substring(0,sString.length-1);
	}
	return sString;
	
};

function findPos(obj){
	
	var PosTop = 0;
	var PosLeft = 0;
	
	if (obj.offsetParent)
	{			
		while (obj.offsetParent)
		{
			PosTop += obj.offsetTop;
			PosLeft += obj.offsetLeft;
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
	{
		PosTop += obj.x;
		PosLeft += obj.x;
	}
	
	return [PosLeft,PosTop];
}

// Funcion para hacer Loading dinamico de un script
function staticLoadScript(url){	
	var e = document.createElement("script");
	e.src = "scripts/" + url;	
	e.type="text/javascript";
	document.getElementsByTagName("head")[0].appendChild(e); 	
}

// Funcion para evitar que cuando des Enter, se someta el valor
function MS_KeyPress(){
	if(window.event.keyCode==13){
		window.event.returnValue=false;
	};
};

// Funcion para hacer Loading dinamico de un Javascript o CSS
// Usage: loadjscssfile("myscript.js", "js") - ó - loadjscssfile("mystyle.css", "css")
var dinamic_loaded = "none;";
function loadjscssfile(filename, filetype){
	
	if ( dinamic_loaded.search(filename + ';') == -1 ){ //if filename has been loaded, do not load
	
		if (filetype=="js"){ //if filename is a external JavaScript file
			var fileref=document.createElement('script')
			fileref.setAttribute("type","text/javascript")
			fileref.setAttribute("src", filename)
		}
		else if (filetype=="css"){ //if filename is an external CSS file
			var fileref=document.createElement("link")
			fileref.setAttribute("rel", "stylesheet")
			fileref.setAttribute("type", "text/css")
			fileref.setAttribute("href", filename)
		}
		
		if (typeof fileref!="undefined"){
			document.getElementsByTagName("head")[0].appendChild(fileref);
			dinamic_loaded = dinamic_loaded + filename + ';';
		};	
	};
};

var FadeLoader = 0;

function FadePage(action){

	if (action){		
		if(!FadeLoader) {		
			var fdiv = document.createElement("div");
			fdiv.setAttribute("id","divFadeLoader");
			fdiv.setAttribute("class","movable_show");			
			document.body.appendChild(fdiv);
		};		
		FadeLoader = document.getElementById('divFadeLoader');
		FadeLoader.className = 'FadeLoaderON';
	} else {
		FadeLoader.parentNode.removeChild(FadeLoader);
		FadeLoader = 0;
	}
};

// Left string truncate
function Left(str, n){
	if (n <= 0)
	    return "";
	else if (n > String(str).length)
	    return str;
	else
	    return String(str).substring(0,n);
}

// Right string truncate
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);
    }
}

// Create div for GetURL
function CreateFloaterDiv(divName){

	var divElement = document.getElementById("divName");
	
	if (divElement == null){
		var _body = document.getElementsByTagName('body') [0];
		var _div = document.createElement('div');
		_div.id = divName;
		_div.classname = "movable_hide";
		_body.appendChild(_div);		
	}
}
