﻿//pControle = ASPxPopUpControl
//pTitulo = titulo
//pRodape = rodape
//pUrl = URL a ser aberta
//pMaximizada = valor booleano = true|false
//pLarguraX = Borda|Tamanho
//pAlturaY = Borda|Tamanho
function ExibirPopUpControl(pControle, pTitulo, pRodape, pUrl, pMaximazada, pLarguraX, pAlturaY) {
	pControle.Hide();

	//Define o titulo da popup
	if (pTitulo != null) {
		pControle.SetHeaderText(pTitulo);
	}

	//Define o rodape da popup
	if (pRodape == null) {
		pControle.SetFooterText("Para fechar a janela utilize o X no canto superior direito.");
	}
	else {
		pControle.SetFooterText(pRodape);
	}

	//Define o url de conteúdo
	pControle.SetContentUrl(pUrl);

	pControle.Show();

	if (pMaximazada == true) {
		//É uma popup maximizada, são definidas as margens
		pControle.cpMargemX = pLarguraX;
		pControle.cpMargemY = pAlturaY;
		AdicionarPopupArray(pControle);
		AjustarPosicionarPopupControl(pControle);
	}
	else {
		//Não é uma janela maximizada, serão definidas largura e altura caso não sejam nulas.
		var vLargura, vAltura;
		if (pLarguraX != null) { vLargura = pLarguraX; }
		if (pAlturaY != null) { vAltura = pAlturaY; }
		pControle.SetSize(vLargura, vAltura);
		pControle.UpdatePosition();
	}
}
function OcultarPopUpControl(pControleName) {
	vControle = window[pControleName];
	vControle.SetContentUrl("../Livre/PopUp/Aguarde.htm");
	RemoverPopupArray(vControle);
}

var vAlturaBrowser, vAlturaPopup, vLarguraBrowser, vLarguraPopup, vVisible;
var aPopups = new Array();
window.onload = DefinirAlturaBrowser;
window.onresize = DefinirAlturaBrowser;

function AdicionarPopupArray(pControle) {

	if (aPopups.length == 0) {
		aPopups[0] = pControle;
	}
	else {
		var vAdicionar = true;

		for (i = 0; i < aPopups.length; i++) {
			if (aPopups[i] == pControle) {
				vAdicionar = false;
				break;
			}
		}

		if (vAdicionar) {
			aPopups[aPopups.length] = pControle;
		}
	}
}
function AjustarPosicionarPopupControl(pControle) {
	if (pControle != null) {
		vAlturaPopup = vAlturaBrowser - pControle.cpMargemY;
		vLarguraPopup = vLarguraBrowser - pControle.cpMargemX;
		pControle.SetSize(vLarguraPopup, vAlturaPopup);
		if (pControle.IsVisible()) {
			pControle.UpdatePosition();
		}
	}
}
function AjustarPosicionarPopups() {
	for (i = 0; i < aPopups.length; i++) {
		AjustarPosicionarPopupControl(aPopups[i]);
	}
}
function DefinirAlturaBrowser() {
	vLarguraBrowser = RetornarLarguraBrowser();
	vAlturaBrowser = RetornarAlturaBrowser();
	AjustarPosicionarPopups();
}
function RemoverPopupArray(pControle) {
	for (i = 0; i < aPopups.length; i++) {
		if (aPopups[i] == pControle) {
			aPopups.splice(i, 1);
		}
	}
}
function RetornarAlturaBrowser() {
	document.documentElement.scrollTop = 0;
	var vAltura = null;

	if (self.innerHeight) // all except Explorer
	{
		vAltura = self.innerHeight;
	}
	else if (document.documentElement && document.documentElement.clientHeight)
	// Explorer 6 Strict Mode
	{
		vAltura = document.documentElement.clientHeight;
	}
	else if (document.body) // other Explorers
	{
		vAltura = document.body.clientHeight;
	}

	return vAltura;
}
function RetornarLarguraBrowser() {
	document.documentElement.scrollTop = 0;
	var vLargura = null;

	if (self.innerWidth) // all except Explorer
	{
		vLargura = self.innerWidth;
	}
	else if (document.documentElement && document.documentElement.clientWidth)
	// Explorer 6 Strict Mode
	{
		vLargura = document.documentElement.clientWidth;
	}
	else if (document.body) // other Explorers
	{
		vLargura = document.body.clientWidth;
	}

	return vLargura;
}

var vDiferencaAlturaGridPopup = 15;
function AjustarAlturaGridPopup(pGrid) {
	var gridParentControl = document.getElementById("mainDiv");
	var rootTable = pGrid.GetRootTable();
	var scrollDiv = pGrid.getScrollableControl();
	if (!_aspxIsExists(gridParentControl) || !_aspxIsExists(rootTable) || !_aspxIsExists(scrollDiv)) return;
	scrollDiv.style.height = (scrollDiv.offsetHeight + (gridParentControl.clientHeight - rootTable.offsetHeight)) - vDiferencaAlturaGridPopup + "px";
	gridParentControl.height = scrollDiv.style.height;
}
