function hideSelects() {
}

function showSelects() {
}

function hideWindowedElements() {
	hideSelects();
}

function showWindowElements() {
	showSelects();
}

function createImage(imagePath, imageAlt) {
	var result = new Image();
	result.src = imagePath;
	return result;
}

function createParagraph(paragraphText) {
	var result = document.createElement('p');
	result.appendChild(document.createTextNode(paragraphText));
	return result;
}

function createDiv(divClass) {
	var result = document.createElement('div');
	result.className = divClass;
	return result;
}

function getWindowInnerSize() {
	var size = new Array(2);
	if (self.innerHeight) {
		size[0] = self.innerWidth;
		size[1] = self.innerHeight;
	} else if (document.documentElement && document.documentElement.clientHeight) {
		size[0] = document.documentElement.clientWidth;
		size[1] = document.documentElement.clientHeight;
	} else if (document.body) {
		size[0] = document.body.clientWidth;
		size[1] = document.body.clientHeight;
	}
	return size;
}

function stretchToFullSize(stretchMe, windowInnerSize) {
	stretchMe.style.width = '100%';
	stretchMe.style.height = windowInnerSize[1] + 'px';
}

function getBodyScrollOffset() {
	var offset = new Array(2);	
	if (document.documentElement && document.documentElement.scrollTop != null) {
		offset[0] = document.documentElement.scrollLeft;
		offset[1] = document.documentElement.scrollTop;
	} else if (document.body) {	
		offset[0] = document.body.scrollLeft;
		offset[1] = document.body.scrollTop;
	}
	return offset;
}

function centerOnScreen(centerMe, windowInnerSize) {
	var bodyScrollOffset = getBodyScrollOffset();
	centerMe.style.left = (((windowInnerSize[0] - centerMe.offsetWidth) / 2) + bodyScrollOffset[0]) + 'px';
	centerMe.style.top = (((windowInnerSize[1] - centerMe.offsetHeight) / 2) + bodyScrollOffset[1]) + 'px';
}

// Preload
var loadingImage = createImage('indicator.white.gif', 'Cargando... Por favor, espere');
function showLoadingMessage() {
	document.body.style.cursor = 'wait';
	var loadingMessageDiv = createDiv('loading');	
	loadingMessageDiv.appendChild(loadingImage);
	var loadingText = createParagraph('Cargando...');
	loadingMessageDiv.appendChild(loadingText);
	var size = getWindowInnerSize();
	var backgroundDiv = createDiv('loading-bg');	
	document.body.appendChild(backgroundDiv);		
	stretchToFullSize(backgroundDiv, size);
	document.body.appendChild(loadingMessageDiv);
	centerOnScreen(loadingMessageDiv, size);
}

try {
	window.onbeforeunload = showLoadingMessage;
} catch (e) {
	// do nothing
}