﻿SstmFunction = function()
{
	return {
		baseURL : './'
	}
}();

function browse_generic(elemento, url)
{
	if(url.substring(0,4) != 'http') url= SstmFunction.baseURL+url;
	Loading.mostrar();
	new Ajax.Updater(elemento, url,
	{
		evalScripts: true,
		onComplete: function()
		{
			Loading.cerrar();
			Element.extend(document.body);
			document.body.scrollTo();
		}
	});
	return false;
}

function browse_prncpl(url) {
	_gaq.push(['_trackPageview', url]);
	return browse_generic('principal', url);
}

function send_form(elemento, url, form, top, url2)
{
	if(url.substring(0,4) != 'http') url= SstmFunction.baseURL+url;
	Loading.mostrar();
	new Ajax.Updater(elemento, url, {
		parameters: $(form).serialize(),
		evalScripts: true,
		onComplete: function() {
			Loading.cerrar();
			if(top)
			{
				top.recUsuarios(url2);
				top.cerrar();
			}
			}
	});
	return false;
}

function open_dialogue(url, ancho, alto)
{
	Dialogo.mostrar(url, ancho || 800, alto || 400);
	return false;
}

Loading = function()
{
	var contenedor = document.createElement('div');
	Element.extend(contenedor);
	contenedor.setStyle({
		background: 'url('+SstmFunction.baseURL+'images/cargando.png)',
		width: 78,
		height: 18,
		position: 'absolute',
		top: 10,
		left: 480,
		
		display: 'none'
	});
	
	Event.observe(window, 'load', function()
	{
		document.body.appendChild(contenedor);
	});

	return {
		mostrar: function()
		{
			contenedor.setStyle({
				background: 'url('+SstmFunction.baseURL+'images/cargando.png)'
			});
			contenedor.show();
		},
		cerrar: function()
		{
			contenedor.hide();
		}
	};
}();


Dialogo = function()
{
	var ieVersion = (navigator.appVersion.indexOf('MSIE 7') > -1 ? 7 : (navigator.appVersion.indexOf('MSIE 6') > -1 ? 6 : 0));

	var fondo = document.createElement('div');
	Element.extend(fondo);
	fondo.setStyle({
		backgroundColor: '#000',
		height: '100%',
		left: 0,
		position: 'absolute',
		opacity: 0.6,
		top: 0,
		width: '100%',
		display: 'none'
	});

	var exterior = document.createElement('div');
	Element.extend(exterior);
	exterior.setStyle({
		position: 'fixed',
		top: 0,
		left: 0,
		width: '100%',
		height: '100%',

		display: 'none'
	});
	Event.observe(fondo, 'click', function() { marco.src = 'wait.php'; exterior.hide(); fondo.hide(); }); // about:blank
	Event.observe(exterior, 'click', function() { marco.src = 'wait.php'; exterior.hide(); fondo.hide(); }); // about:blank
	
	var medio = document.createElement('div');
	Element.extend(medio);
	medio.setStyle({
		height: '100%',
		margin: '0 auto'
	});
	exterior.appendChild(medio);

	var interno = document.createElement('div');
	Element.extend(interno);
	interno.setStyle({
		verticalAlign: 'middle'
	});
	medio.appendChild(interno);

	if (!Prototype.Browser.IE)
	{
		medio.setStyle({ display: 'table' });
		interno.setStyle({ display: 'table-cell' });
	}

	var marco = document.createElement('iframe');
	Element.extend(marco);
	marco.src = 'wait.php'; // about:blank
	marco.setStyle({
		backgroundColor: '#FFF',
		border: '1px solid #000',
		textAlign: 'left',
		top: '-50%'
	});
	interno.appendChild(marco);
	
	if (Prototype.Browser.IE && ieVersion <= 7)
	{
		medio.setStyle({
			position: 'absolute',
			top: '50%',
			left: '50%',
			height: 'auto'
		});
		
		interno.setStyle({
			position: 'relative',
			top: '-50%',
			left: '-50%',
			height: 'auto'
		});
	}

	Event.observe(window, 'load', function()
	{
		var body = document.body;
		Element.extend(body);
		var html = body.up();

		if (Prototype.Browser.IE && ieVersion <= 6)
		{
			body.setStyle({
				'overflow-y': 'auto',
				height: '100%'
			});
			
			html.setStyle({
				'overflow-x': 'auto',
				'overflow-y': 'hidden',
				height: '100%'
			});
			
			exterior.setStyle({
				position: 'absolute'
			});
		}

		document.body.appendChild(fondo);
		document.body.appendChild(exterior);
	});

	return {
		mostrar: function(url, ancho, alto)
		{
			if(url.substring(0,4) != 'http') url= SstmFunction.baseURL+url;
			fondo.show();
			fondo.scrollTo();
			marco.src = url;
			marco.setStyle({
				display: 'block',
				width: ancho,
				height: alto
			});
			interno.setStyle({
				width: ancho,
				height: alto
			});
			setTimeout('Dialogo.mostrarTimeout()',0);
		},
		
		mostrarTimeout: function()
		{
			exterior.show();
		},
		
		cerrar: function()
		{
			marco.src = 'wait.php'; // about:blank
			exterior.hide();
			fondo.hide();
		}
	}
}();
