/* COMMON FUNCTIONS */

function goTo(urlParam) {
	window.location.href = urlParam;
}

function getRadioValue(radioElement) {
	for (var i= 0; i < radioElement.length; i++) {
		if (radioElement[i].checked == true) { return radioElement[i].value; }
	}
	return 0;
}

function isEmpty(value) {
	if (value==null || value.length==0) return true;
	else return false;
}

function isInteger(value) {
	return value.match(/^\d+$/);
}

function isArray(obj) {
	return obj.constructor.toString().indexOf("Array") != -1;
}

function cleanText(object, text) {
	if(object.value == text) {
		object.value = '';
	}
}

function reloadOriginalText(object, text) {
	if(object.value == '') {
		object.value = text;
	}
}

function loadIframe(iFrameId, url){
	var iframe = document.getElementById(iFrameId);
	if (isEmpty(iframe.src)) { iframe.src = url;}
}

function forceLoadIframe(iFrameId, url){
	var iframe = document.getElementById(iFrameId);
	iframe.src = url;
}

function initLoadDateIframe(iframeId){
	var iframe;
	if (iframeId == null) iframe = frames.calendarFrame;
	else eval('iframe = frames.' + iframeId);
	if(iframe.cal != null){
		iframe.getFieldDate();
		iframe.cal.load(true, true);
		iframe.loadLinksMonths();
		iframe.loadTitle();
	}
}

function closePopUp() {
	var ventana = window.self;
	ventana.opener = window.self;
	parent.close();
}

function isValidEmail(email) {
  var idx_at = email.value.indexOf('@');
  if (idx_at == -1 || idx_at == 0) return false;
  var idx_dot = email.value.indexOf('.', (idx_at + 2));
  if (idx_dot == -1 ) return false;
  return true;
}

function openWindow(theURL, windowName, w, h) {
  window.open(theURL,windowName, 'toolbar=no,titlebar=no,caption=no,scrollbars=yes,alwaysRaised=yes,resizable=no,width='  + w + ',height=' + h);
}

function showHideMe(me, elementToShowHideId, textShown, textHidden, classShown, classHidden) {
	var layerElement = document.getElementById(elementToShowHideId);
	if (layerElement.style.display == "none") { // Layer Oculto, mostrar
		layerElement.style.display = "block";
		if (classShown != null) me.className = classShown;
		me.innerHTML = textShown;
		me.blur();
	} else if (layerElement.style.display == "block") { // ocultar Layer
		layerElement.style.display = "none";
		if (classHidden != null) me.className = classHidden;
		me.innerHTML = textHidden;
		me.blur();
	}
}

function Browser() {

	var ua, s, i;

	this.isIE = false;
	this.isNS = false;
	this.version = null;

	ua = navigator.userAgent;

	s = "MSIE";
	if ((i = ua.indexOf(s)) >= 0) {
		this.isIE = true;
		this.version = parseFloat(ua.substr(i + s.length));
		return;
	}

	s = "Netscape6/";
	if ((i = ua.indexOf(s)) >= 0) {
		this.isNS = true;
		this.version = parseFloat(ua.substr(i + s.length));
		return;
	}

	// Treat any other "Gecko" browser as NS 6.1.

	s = "Gecko";
	if ((i = ua.indexOf(s)) >= 0) {
		this.isNS = true;
		this.version = 6.1;
		return;
	}
}

var browser = new Browser();

function getX(event) {
	if (browser.isIE) {
		x = window.event.clientX + document.documentElement.scrollLeft + document.body.scrollLeft;
	} else 	if (browser.isNS) {
		x = event.clientX + window.scrollX;
	}
	return x;
}

function getY(event) {
	if (browser.isIE) {
		y = window.event.clientY + document.documentElement.scrollTop + document.body.scrollTop;
	} else 	if (browser.isNS) {
		y = event.clientY + window.scrollY;
	}
	return y;
}

function get(id, documentReference) {
	var element = (documentReference == null)?document.getElementById(id):documentReference.document.getElementById(id);
	return element;
}

function switchDisplay(element, display) {
	var visible = false;
	if (element.style.display == "none" || element.style.display == "") { // Show Element
		show(element, display);
		visible = true;
	} else { // Hide Element
		hide(element);
		visible = false;
	}
	
	return visible;
}

function show(element, display) {
	element.style.display = (display != null)?display:"block";
}

function hide(element) {
	element.style.display = "none";
}