// ----------------------------------------------------------------------------
// -- Contents JavaScript -----------------------------------------------------
// ----------------------------------------------------------------------------

var request = null;
var READY_STATE_UNINITIALIZED = 0;
var READY_STATE_LOADING = 1;
var READY_STATE_LOADED = 2;
var READY_STATE_INTERACTIVE = 3;
var READY_STATE_COMPLETE = 4;
var HTTP_SC_OK = 200;
var HTTP_SC_NOT_FOUND = 404;

// ----------------------------------------------------------------------------

function initXMLHTTPRequest() {
	var xRequest = null;
	if (window.XMLHttpRequest) {
		xRequest = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
		xRequest = new ActiveXObject("Microsoft.XMLHTTP");
	}
	return xRequest;
}

// ----------------------------------------------------------------------------

function sendRequest(url, params, HttpMethod, noCache, onReadyStateEventHandler) {
	if (!HttpMethod) {
		HttpMethod = "GET";
	}
	
	request = initXMLHTTPRequest();	
		
	if (request && onReadyStateEventHandler) {
		request.onreadystatechange = onReadyStateEventHandler.handleEvent;
		request.open(HttpMethod, url, true);
		request.setRequestHeader ( "Content-Type", "application/x-www-form-urlencoded" );
		if (noCache) {
			request.setRequestHeader ( "Cache-Control", "no-cache" );
			request.setRequestHeader ( "Pragma", "no-cache" );
		}
		request.send (params);
	}
}

// ----------------------------------------------------------------------------

function ReplaceTargetOnReadyState(target) {
	this.target = target;
	this.handleEvent = function () {
		if (request.readyState == READY_STATE_COMPLETE) {
			if (request.status == HTTP_SC_OK) {
				document.getElementById(target).innerHTML = request.responseText;
			} else {
				document.getElementById(target).innerHTML =
					"<div class='loading'><img src='/images/error.gif'/><br />" +
					"AJAX error:\n"+ request.status + "\n" +request.statusText + "</div>";
			}
		}
	}
}

// ----------------------------------------------------------------------------

function loadDataInTarget(url, target, waitMessage, defaultMessageContainer, noCache) {
	if (defaultMessageContainer) {
		document.getElementById(target).innerHTML =
			"<div class='loading'><img src='/images/loading.gif'/><br />" +
			waitMessage + "</div>";
	} else {
		document.getElementById(target).innerHTML = waitMessage;
	}
	onReadyStateEventHandler = new ReplaceTargetOnReadyState(target);
	sendRequest(url, "", null, noCache, onReadyStateEventHandler);
	return false;
}

// ----------------------------------------------------------------------------

function loadData(url, target) {
	loadData(url, target, false);
	return false;
}

// ----------------------------------------------------------------------------

function loadData(url, target, noCache) {
	loadDataInTarget(url, target, "Cargando contenidos...", true, noCache);
	return false;
}

// ----------------------------------------------------------------------------
/*
	function getElementsByClassName
	Written by Jonathan Snook, http://www.snook.ca/jonathan
	Add-ons by Robert Nyman, http://www.robertnyman.com
*/
function getElementsByClassName(oElm, strTagName, strClassName){
	var arrElements = (strTagName == "*" && document.all)? document.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	strClassName = strClassName.replace(/\-/g, "\\-");
	var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
	var oElement;
	for(var i=0; i < arrElements.length; i++){
		oElement = arrElements[i];
		if(oRegExp.test(oElement.className)){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}

// ----------------------------------------------------------------------------

function changeStyle(id, selectedTab, inactiveTab) {
    var menuElements = getElementsByClassName(document, "li", selectedTab);
	for (var k = 0; k < menuElements.length; k++) {
		menuElements[k].className = inactiveTab;
	}
	var identity = document.getElementById(id);
	identity.className = selectedTab;
    if (document.getElementById("contenidosCorp") != null)
      document.getElementById("contenidosCorp").className = "caja1";
}

// ----------------------------------------------------------------------------

function showLayer(targetLayer, newLayer) {
	document.getElementById(targetLayer).innerHTML = document.getElementById(newLayer).innerHTML;
}
