// ******************************************************************************
// Rotinas para as janela Modais
// ******************************************************************************

function pageWidth() {
	if (parent.mainFrame != null) {
		var win = parent.mainFrame.self;
		var doc = parent.mainFrame.document;
	} else if (parent.parent.mainFrame != null) {
		var win = parent.parent.mainFrame.self;
		var doc = parent.parent.mainFrame.document;
	} else {
		var win = parent.parent.parent.mainFrame.self;
		var doc = parent.parent.parent.mainFrame.document;
	}
	return win.innerWidth != null? win.innerWidth: doc.documentElement && doc.documentElement.clientWidth ? doc.documentElement.clientWidth:doc.body != null? doc.body.clientWidth:null;
}

function pageHeight() {
	if (parent.mainFrame != null) {
		var win = parent.mainFrame.self;
		var doc = parent.mainFrame.document;
	} else if (parent.parent.mainFrame != null) {
		var win = parent.parent.mainFrame.self;
		var doc = parent.parent.mainFrame.document;
	} else {
		var win = parent.parent.parent.mainFrame.self;
		var doc = parent.parent.parent.mainFrame.document;
	}
	return win.innerHeight != null? win.innerHeight: doc.documentElement && doc.documentElement.clientHeight ? doc.documentElement.clientHeight:doc.body != null? doc.body.clientHeight:null;
}

function posLeft() {
	if (parent.mainFrame != null) {
		var win = parent.mainFrame.self;
		var doc = parent.mainFrame.document;
	} else if (parent.parent.mainFrame != null) {
		var win = parent.parent.mainFrame.self;
		var doc = parent.parent.mainFrame.document;
	} else {
		var win = parent.parent.parent.mainFrame.self;
		var doc = parent.parent.parent.mainFrame.document;
	}
	return typeof win.pageXOffset != 'undefined' ? win.pageXOffset:doc.documentElement && doc.documentElement.scrollLeft? doc.documentElement.scrollLeft:doc.body.scrollLeft? doc.body.scrollLeft:0;
}

function posTop() {
	if (parent.mainFrame != null) {
		var win = parent.mainFrame.self;
		var doc = parent.mainFrame.document;
	} else if (parent.parent.mainFrame != null) {
		var win = parent.parent.mainFrame.self;
		var doc = parent.parent.mainFrame.document;
	} else {
		var win = parent.parent.parent.mainFrame.self;
		var doc = parent.parent.parent.mainFrame.document;
	}
	return typeof win.pageYOffset != 'undefined' ? win.pageYOffset:doc.documentElement && doc.documentElement.scrollTop? doc.documentElement.scrollTop: doc.body.scrollTop?doc.body.scrollTop:0;
}

function $(x){
	if (parent.mainFrame != null) {
		var doc = parent.mainFrame.document;
	} else if (parent.parent.mainFrame != null) {
		var doc = parent.parent.mainFrame.document;
	} else {
		var doc = parent.parent.parent.mainFrame.document;
	}
	return doc.getElementById(x);
}

function scrollFix(){
	var obol=$('ModalBG');
	obol.style.top=posTop()+'px';
	obol.style.left=posLeft()+'px'
	
	//**************************************
	// Reposiciona o popup 
	//**************************************
	var obbx=$('mbox');
	if (obbx != null) {
		if (obbx.style.display == 'block') {
			var ht = obbx.style.height.substring(0,obbx.style.height.length-2);
			var wd = obbx.style.width.substring(0,obbx.style.width.length-2);
			var tp=posTop()+((pageHeight()-ht)/2)-12;
			var lt=posLeft()+((pageWidth()-wd)/2)-12;
			obbx.style.top=(tp<0?0:tp);
			obbx.style.left=(lt<0?0:lt);
		}
	}
}

function sizeFix(){
	var obol=$('ModalBG');
	obol.style.height=pageHeight()+'px';
	obol.style.width=pageWidth()+'px';
	
	//**************************************
	// Reposiciona o popup 
	//**************************************
	var obbx=$('mbox');
	if (obbx != null) {
		if (obbx.style.display == 'block') {
			var ht = obbx.style.height.substring(0,obbx.style.height.length-2);
			var wd = obbx.style.width.substring(0,obbx.style.width.length-2);
			var tp=posTop()+((pageHeight()-ht)/2)-12;
			var lt=posLeft()+((pageWidth()-wd)/2)-12;
			obbx.style.top=(tp<0?0:tp);
			obbx.style.left=(lt<0?0:lt);
		}
	}
}

function kp(e){
	ky=e?e.which:event.keyCode;
	if(ky==88||ky==120)
		hm();
	return false
}

function disable_select() {
	if (parent.mainFrame != null) {
		var doc = parent.mainFrame.document;
	} else if (parent.parent.mainFrame != null) {
		var doc = parent.parent.mainFrame.document;
	} else {
		var doc = parent.parent.parent.mainFrame.document;
	}
	tag = doc.getElementsByTagName('select');
	for(i=tag.length-1;i>=0;i--) {
		tag[i].disabled=true;
	}
}

function enable_select() {
	if (parent.mainFrame != null) {
		var doc = parent.mainFrame.document;
	} else if (parent.parent.mainFrame != null) {
		var doc = parent.parent.mainFrame.document;
	} else {
		var doc = parent.parent.parent.mainFrame.document;
	}
	tag = doc.getElementsByTagName('select');
	for(i=tag.length-1;i>=0;i--) {
		tag[i].disabled=false;
	}
}

function sm(HTML, wd, ht) {
	var b='block';
	var p='px';
	var obol=$('ModalBG'); 
	var obbxd = $('mbd');
	obbxd.innerHTML = HTML;
	obol.style.height=pageHeight()+p;
	obol.style.width=pageWidth()+p;
	obol.style.top=posTop()+p;
	obol.style.left=posLeft()+p;
	obol.style.display=b;
	var tp=posTop()+((pageHeight()-ht)/2)-12;
	var lt=posLeft()+((pageWidth()-wd)/2)-12;
	var obbx=$('mbox');
	obbx.style.top=(tp<0?0:tp)+p;
	obbx.style.left=(lt<0?0:lt)+p;
	obbx.style.width=wd+p;
	obbx.style.height=ht;
	obbx.style.display=b;
	
	//*********************************************
	// Desabilita os combos na tela
	//*********************************************
	var is_ie6 = document.all && (navigator.userAgent.toLowerCase().indexOf("msie 6.") != -1);
	if (is_ie6) {
		disable_select();
	}
	
	return false;
}

function hm(){
	if (parent.mainFrame != null) {
		var doc = parent.mainFrame.document;
	} else if (parent.parent.mainFrame != null) {
		var doc = parent.parent.mainFrame.document;
	} else {
		var doc = parent.parent.parent.mainFrame.document;
	}
	var n='none';
	$('ModalBG').style.display=n;
	$('mbox').style.display=n;
	doc.onkeypress='';
	
	//*********************************************
	// Habilita os combos na tela
	//*********************************************
	var is_ie6 = document.all && (navigator.userAgent.toLowerCase().indexOf("msie 6.") != -1);
	if (is_ie6) {
		enable_select();
	}	
}

function initmb(){
	if (parent.mainFrame != null) {
		var doc = parent.mainFrame.document;
	} else if (parent.parent.mainFrame != null) {
		var doc = parent.parent.mainFrame.document;
	} else if (parent.parent.parent.mainFrame != null) {
		var doc = parent.parent.parent.mainFrame.document;
	} else {
		var doc = document;
	}
	
	var ab='absolute';
	var n='none';
	var obody=doc.getElementsByTagName('body')[0];
	var frag=doc.createDocumentFragment();
	var obol=doc.createElement('div');
	obol.setAttribute('id','ModalBG');
	obol.style.display=n;
	obol.style.position=ab;
	obol.style.top=0;
	obol.style.left=0;
	obol.style.zIndex=996;
	obol.style.width='100%';
	frag.appendChild(obol);
	var obbx=doc.createElement('div');
	obbx.setAttribute('id','mbox');
	obbx.style.display=n;
	obbx.style.position=ab;
	obbx.style.zIndex=997;
	var obl=doc.createElement('span');
	obbx.appendChild(obl);
	var obbxd=doc.createElement('div');
	obbxd.setAttribute('id','mbd');
	obl.appendChild(obbxd);
	frag.insertBefore(obbx,obol.nextSibling);
	obody.insertBefore(frag,obody.firstChild);
	
	window.onscroll = scrollFix; 
	window.onresize = sizeFix;
}

// ******************************************************************************

function alterarURL(HTML,URL) {
	//*********************************************************
	// Altera a URL do iFrame do Popup
	//*********************************************************

	var HTML_Final = "";
	var HTML_Parcial = "";
	
	var pos_iframe = HTML.indexOf("<iframe");
	
	HTML_Final   = HTML.substring(0,pos_iframe);
	HTML_Parcial = HTML.substring(pos_iframe,HTML.length);
	
	var pos_src = HTML_Parcial.indexOf("src=");
	
	HTML_Final  += HTML_Parcial.substring(0,pos_src+5);
	HTML_Parcial = HTML_Parcial.substring(pos_src+5,HTML_Parcial.length);
	
	var pos_aspas = HTML_Parcial.indexOf("'");

	HTML_Final += URL;
	HTML_Final += HTML_Parcial.substring(pos_aspas,HTML_Parcial.length);

	return HTML_Final;	
}

function adicionarURL(HTML,PARAM_URL) {
	//*********************************************************
	// Adiciona um valor no final da URL do iFrame do Popup
	//*********************************************************

	var HTML_Final = "";
	var HTML_Parcial = "";
	
	var pos_iframe = HTML.indexOf("<iframe");
	
	HTML_Final   = HTML.substring(0,pos_iframe);
	HTML_Parcial = HTML.substring(pos_iframe,HTML.length);
	
	var pos_src = HTML_Parcial.indexOf("src=");
	
	HTML_Final  += HTML_Parcial.substring(0,pos_src+5);
	HTML_Parcial = HTML_Parcial.substring(pos_src+5,HTML_Parcial.length);
	
	var pos_aspas = HTML_Parcial.indexOf("'");
	var URL       = HTML_Parcial.substring(0,pos_aspas);
	
	var pos_igual = PARAM_URL.indexOf("=");
	var param     = PARAM_URL.substring(1,pos_igual);
	
	// Verifica se o parâmetro já existe
	var pos_param = URL.indexOf(param);
	if (pos_param >= 0) {
		var URL_PARCIAL = URL.substring(pos_param,URL.length);
		URL             = URL.substring(0,pos_param-1);
		
		var pos_nextParam = URL_PARCIAL.indexOf("&");
		if (URL_PARCIAL.indexOf("&") >= 0) {
			URL += URL_PARCIAL.substring(pos_nextParam,URL_PARCIAL.length);
		}
	}
	
	HTML_Final += URL;
	if (URL.indexOf(PARAM_URL) < 0) {
		HTML_Final += PARAM_URL;
	}
	HTML_Final += HTML_Parcial.substring(pos_aspas,HTML_Parcial.length);

	return HTML_Final;	
}

// ******************************************************************************

function montaHTML(url,titulo,w,h,habilita_scroll,habilita_fechar,id,veio_de) {
	if (parent.hiddenFrame != null) {
		var global_frame = parent.hiddenFrame;
	} else if (parent.parent.hiddenFrame != null) {
		var global_frame = parent.parent.hiddenFrame;
	} else {
		var global_frame = parent.parent.parent.hiddenFrame;
	}

	var HTML_popup = "";
	var tipo_scroll = "";
	var func_fechar = "";
	var w_popup = 0;
	var h_popup = h+26;
	
	if (habilita_scroll == true) {
		tipo_scroll = 'yes';
		w_popup = w+8;
	} else {
		tipo_scroll = 'no';
		w_popup = w;
	}
	
	if (id == 2) {
		func_fechar = 'fechaPopup2';
	} else if (id == 3) {
		func_fechar = 'fechaPopup3';
	} else {
		func_fechar = 'fechaPopup';
	}
	
	var msg_aguarde = getTermo(global_frame.iIdioma, 32, "Carregando", 0) + "...";
	var msg_fechar = getTermo(global_frame.iIdioma, 220, "fechar", 2);
	
	var path = "";
	if ((veio_de != undefined) && (veio_de != "")) {
		path = "../";
	}
		
	if (habilita_fechar == true) {
		HTML_popup = "<table cellpadding=0 cellspacing=0 width='"+w_popup+"' height='"+h_popup+"'>" +
					 "<tr height='26'><td class='cabecalho_fundo' style='border-bottom: 0px solid #000000; border-left: 0px solid #666666; border-right: 0px solid #666666; border-top: 0px solid #666666;'>" +
					 "<font class='cabecalho_fonte'>&nbsp;<b>SophiA Biblioteca - " + titulo + "</b></font></td>" +
					 "<td class='cabecalho_fundo' align='right'><a class='link_topo' href='javascript:" + func_fechar + "();'><b>" + msg_fechar + "&nbsp;[X]</b></a>&nbsp;&nbsp;</td></tr>" +
					 "<tr height='"+(h_popup-26)+"'><td class='cabecalho_fundo' colspan=2><div id='div_loadingPop' name='div_loadingPop' style='position: absolute; top: 60px; width: "+w_popup+"px;'>" +
					 "<center><img src='"+path+"imagens/mozilla_blu.gif' border='0'><br><br>"+msg_aguarde+"</center></div>" +
					 "<iframe frameborder='0' height='"+(h_popup-28)+"' width='100%' src='" + url + "' scrolling='" + tipo_scroll + "'></iframe>" +
					 "</td></tr></table>";
	} else {
		HTML_popup = "<table cellpadding=0 cellspacing=0 width='"+w_popup+"' height='"+h_popup+"'>" +
					 "<tr height='26'><td class='cabecalho_fundo' style='border-bottom: 0px solid #000000; border-left: 0px solid #666666; border-right: 0px solid #666666; border-top: 0px solid #666666;'>" +
					 "<font class='cabecalho_fonte'>&nbsp;<b>SophiA Biblioteca - " + titulo + "</b></font></td></tr>" +
					 "<tr height='"+(h_popup-26)+"'><td class='cabecalho_fundo'><div id='div_loadingPop' name='div_loadingPop' style='position: absolute; top: 60px; width: "+w_popup+"px;'>" +
					 "<center><img src='"+path+"imagens/mozilla_blu.gif' border='0'><br><br>"+msg_aguarde+"</center></div>" +
					 "<iframe frameborder='0' height='"+(h_popup-28)+"' width='100%' src='" + url + "' scrolling='" + tipo_scroll + "'></iframe>" +
					 "</td></tr></table>";
	}
	
	//******************************************************************************************
	// Adiciona o HTML abaixo no IE6 para que o combo não fique por cima do div
	//******************************************************************************************
	var is_ie6 = document.all && (navigator.userAgent.toLowerCase().indexOf("msie 6.") != -1);
	if (is_ie6) {
		HTML_popup += "<iframe style=\"position: absolute; display: block; " +
					  "z-index: -1; width: 100%; height: 100%; top: 0; left: 0;" +
					  "filter: mask(); background-color: #ffffff;\"></iframe>";	
	}
	
	return HTML_popup;
}

function fechaPopup(veio_de) {
	if (parent.hiddenFrame != null) {
		var global_frame = parent.hiddenFrame;
		var main_frame = parent.mainFrame;
	} else if (parent.parent.hiddenFrame != null) {
		var global_frame = parent.parent.hiddenFrame;
		var main_frame = parent.parent.mainFrame;
	} else {
		var global_frame = parent.parent.parent.hiddenFrame;
		var main_frame = parent.parent.parent.mainFrame;
	}	
	
	hm();
	global_frame.popup_html = "";
	global_frame.popup_w = 0;
	global_frame.popup_h = 0;
	
	if (global_frame.popup_refresh == true) {	
		if ((global_frame.content == "resultado") || (global_frame.content == "busca_link")) {
			LinkPesquisa(global_frame.modo_busca,1,veio_de);
		} else if (global_frame.content == "selecao") {
			LinkSelecao(global_frame.modo_busca,veio_de);
		} else if (global_frame.content == "detalhe") {
			main_frame.location = main_frame.location + "&refresh_popup=1";
		} else {
			var pos = main_frame.location.toString().indexOf("?");
			if (pos < 0) {
				main_frame.location = main_frame.location + "?refresh_popup=1";
			} else {
				main_frame.location = main_frame.location + "&refresh_popup=1";
			}
		}
		global_frame.popup_refresh = false;
	}
}

function abrePopup(url,titulo,w,h,habilita_scroll,habilita_fechar,veio_de) {
	if (parent.hiddenFrame != null) {
		var global_frame = parent.hiddenFrame;
	} else if (parent.parent.hiddenFrame != null) {
		var global_frame = parent.parent.hiddenFrame;
	} else {
		var global_frame = parent.parent.parent.hiddenFrame;
	}	
	
	var HTML_popup = "";
	var w_popup = 0;
	var h_popup = h+26;
	
	if (habilita_scroll == true) {
		w_popup = w+8;
	} else {
		w_popup = w;
	}
	
	HTML_popup = montaHTML(url,titulo,w,h,habilita_scroll,habilita_fechar,1,veio_de);
	
	sm(HTML_popup, w_popup, h_popup);
	
	global_frame.popup_html = HTML_popup;
	global_frame.popup_w = w_popup;
	global_frame.popup_h = h_popup;
}

function fechaPopup2() {
	if (parent.hiddenFrame != null) {
		var global_frame = parent.hiddenFrame;
	} else if (parent.parent.hiddenFrame != null) {
		var global_frame = parent.parent.hiddenFrame;
	} else {
		var global_frame = parent.parent.parent.hiddenFrame;
	}
	
	global_frame.popup_html2 = "";
	global_frame.popup_w2 = 0;
	global_frame.popup_h2 = 0;
	
	var HTML = global_frame.popup_html;
	var w = global_frame.popup_w;
	var h = global_frame.popup_h;
	
	sm(HTML, w, h);
}

function abrePopup2(url,titulo,w,h,habilita_scroll,habilita_fechar,veio_de) {
	if (parent.hiddenFrame != null) {
		var global_frame = parent.hiddenFrame;
	} else if (parent.parent.hiddenFrame != null) {
		var global_frame = parent.parent.hiddenFrame;
	} else {
		var global_frame = parent.parent.parent.hiddenFrame;
	}
	
	var HTML_popup = "";
	var w_popup = 0;
	var h_popup = h+26;
	
	if (habilita_scroll == true) {
		w_popup = w+8;
	} else {
		w_popup = w;
	}
	
	HTML_popup = montaHTML(url,titulo,w,h,habilita_scroll,habilita_fechar,2,veio_de);
	
	sm(HTML_popup, w_popup, h_popup);
	
	global_frame.popup_html2 = HTML_popup;
	global_frame.popup_w2 = w_popup;
	global_frame.popup_h2 = h_popup;
}

function fechaPopup3() {
	if (parent.hiddenFrame != null) {
		var global_frame = parent.hiddenFrame;
	} else if (parent.parent.hiddenFrame != null) {
		var global_frame = parent.parent.hiddenFrame;
	} else {
		var global_frame = parent.parent.parent.hiddenFrame;
	}
	
	var HTML = global_frame.popup_html2;
	var w = global_frame.popup_w2;
	var h = global_frame.popup_h2;
	
	sm(HTML, w, h);
}

function abrePopup3(url,titulo,w,h,habilita_scroll,habilita_fechar,veio_de) {
	var HTML_popup = "";
	var w_popup = 0;
	var h_popup = h+26;
	
	if (habilita_scroll == true) {
		w_popup = w+8;
	} else {
		w_popup = w;
	}
	
	HTML_popup = montaHTML(url,titulo,w,h,habilita_scroll,habilita_fechar,3,veio_de);
	
	sm(HTML_popup, w_popup, h_popup);
}

function fechaLoadingPopup() {
	var div = $('div_loadingPop');
	if (div != null) {
		div.innerHTML = "";
	}
}

function exibeLoadingPopup() {
	if (parent.hiddenFrame != null) {
		var global_frame = parent.hiddenFrame;
	} else if (parent.parent.hiddenFrame != null) {
		var global_frame = parent.parent.hiddenFrame;
	} else {
		var global_frame = parent.parent.parent.hiddenFrame;
	}
	
	var div = $('div_loadingPop', parent.document);
	if (div != null) {
		var msg_aguarde = getTermo(global_frame.iIdioma, 32, "Carregando", 0) + "...";
		div.innerHTML = "<center><img src='imagens/mozilla_blu.gif' border='0'><br><br>"+msg_aguarde+"</center>";
	}
}