// CPIA.org Website Document Frame Creator
// Author: Waldemar Villamayor Venialbo <wvilla@cpia.org>
// Copyright: 2007, CPIA.org, all rights reserved.
// URL: http://www.cpia.org

// Global site environment values.

var nameWebmaster = "Javier Gray",
	mailWebmaster = "Webm&aacute;ster CPIA.org &lt;webmaster@cpia.org&gt;",
	nameEditor = "Javier Gray",
	mailEditor = "Editor CPIA.org &lt;webmaster@cpia.org&gt;",
	nameCurator = "Miguel Volpe"
	mailCurator = "Procurador CPIA.org &lt;mvolpe@cpia.org&gt;",
	nameCoordinator = "Waldemar Villamayor",
	mailCoordinator = "Coordinador CPIA.org &lt;wvilla@cpia.org&gt;",
	undefined, level_mr = 0;

var fmn = new Array("enero","febrero","marzo","abril","mayo","junio","julio",
	"agosto","septiembre","octubre","noviembre","diciembre");

var fwd = new Array("domingo","lunes","martes","mi&eacute;rcoles",
					"jueves","viernes","s&aacute;bado");

// Instant data. (These values should be provided by the server,
//                if not, use these default values.)

// Server time/date.
var its = 0,      // seconds
    itm = 0,      // minutes
    ith = 12,     // hours
    itz = 0,      // time zone
    idd = 1,      // day
    idm = 0,      // month
    idy = 2000,   // year
    iwd = 1,      // wek day
    iyd = 1,      // day of year
    idj = 2451545.0, // JD
    logon = "";
	
// Object shortcuts.

var doc = document,
	loc = location.href,
	loc_type = 0, // 0 = localhost, 1 = www, 2 = CD, 3 = local drive
	base = "";

// Media/Support determination.

if (loc.indexOf("wwwroot") > 0) // is a local drive?
{
	loc_type = 3;
	var ik = location.href.indexOf("wwwroot");
	base = location.href.substr(0, ik) + "wwwroot/";
}
else if (loc.indexOf("file:///") == 0) // is a CD?
{
	loc_type = 2;
	base = "/";
}
else // is a www server url!
{
	if (loc.indexOf("localhost") < 0)
		loc_type = 1;
	base = loc.substr(0, loc.indexOf("/", 7) + 1);
}

// Auxiliar methods

function ltrim(val, chr)
{
	if (chr == undefined)
		chr = ' ';
	for (var i = 0; i < val.length; ++i)
	{
		if (val.charAt(i) != chr)
			break;
	}
	val = val.substring(i);
	return val;
}

function rtrim(val, chr)
{
	if (chr == undefined)
		chr = ' ';
	for (i = val.length - 1; i >= 0; --i)
	{
		if (val.charAt(i) != chr)
			break;
	}
	val = val.substring(0, i + 1);
	return val;
}

function trim(val, chr)
{
	return rtrim(ltrim(val, chr));
}

function getToken(name, query, separator, delimiter)
{
    var prefix = name + delimiter;
    var begin = query.indexOf(separator + prefix);
    if (begin == -1)
	{
        begin = query.indexOf(prefix);
        if (begin != 0)
			return null;
	}
	else
	{
        begin += separator.length;
    }
    var end = query.indexOf(separator, begin);
    if (end == -1)
        end = query.length;
    return query.substring(begin + prefix.length, end);
}

function getQuery(name, query)
{
	return getToken(name, query, "&", "=");
}

function queryDecode(query)
{
	for (var i = 0; i < query.length; ++i)
	{
		if (query.charAt(i) == '+')
		{
		    query = query.substring(0, i)
		          + ' ' + query.substring(i + 1);
	    }
	}
	return unescape(query);
}

function setCookie(name, value, expires, path, domain, secure)
{
    doc.cookie = name + "=" + escape(value)
		+ (expires ? "; expires=" + expires.toGMTString() : "")
		+ (path ? "; path=" + path : "")
		+ (domain ? "; domain=" + domain : "")
		+ (secure ? "; secure" : "");
}

function getCookie(name)
{
	return getToken(name, doc.cookie, "; ", "=");
}

function delCookie(name, path, domain)
{
	if (getCookie(name))
	{
		doc.cookie = name + "=; expires=Thu, 23-Aug-70 02:37:24 GMT"
			+ (path ? "; path=" + path : "")
			+ (domain ? "; domain=" + domain : "");
	}
}

// Site framework methods.

function linkTitle(href)
{
	var dcl = href.substr(base.length);
	dcl = dcl.substr(dcl.indexOf("/") + 1);
	if (dcl.indexOf("/") >= 0)
		return " &gt; ... &gt; " + doc.title.substr(10);
	if (doc.title.indexOf("Centro Par") == 0)
		return "";
	return " &gt; " + doc.title.substr(10);
}

function linkUrl(href)
{
	var dcl = href.substr(base.length);
	if (dcl.indexOf("/") >= 0)
		return dcl.substr(0, dcl.indexOf("/")) + "/";
	return dcl.substr(0, dcl.indexOf(".")) + ".";
}

function linkText(href)
{
	var dcl = href.substr(base.length);
	if (dcl.indexOf("cap") == 0)
		return "CAP";
	else if (dcl.indexOf("doc") == 0)
		return "Art&iacute;culos Monogr&aacute;ficos";
	else if (dcl.indexOf("ephem") == 0)
		return "Efem&eacute;rides";
	else if (dcl.indexOf("event") == 0)
		return "Actividades y Eventos";
	else if (dcl.indexOf("frame") == 0 || dcl.indexOf("image") == 0 || dcl.indexOf("script") == 0 || dcl.indexOf("style") == 0)
		return "Entorno del sitio";
	else if (dcl.indexOf("gallery") == 0)
		return "Galer&iacute;a de Im&aacute;genes";
	else if (dcl.indexOf("iya2009") == 0)
		return "AIA2009";
	else if (dcl.indexOf("links") == 0)
		return "Enlaces";
	else if (dcl.indexOf("tech") == 0)
		return "Art&iacute;culos T&eacute;cnicos";
	return "";
}

doc.getMenuL = function()
{
	return new Array("", "", "");
}

doc.getMenuR = function()
{
	return new Array("-", "", "", "");
}

function makeMenuR(nar, vtmp)
{
	++level_mr;
	//alert(level_mr);
	var i = 0;
	if (nar == undefined || nar.length < 3 || nar[2] == "")
	{
		nar = new Array();
	}
	else
	{
		while (vtmp[i] == nar[i])
			++i;
		if (level_mr > 1 && vtmp[0].indexOf("-") < 0)
		{
			nar.pop();
			nar.pop();
		}
	}
	for (; i < vtmp.length; ++i)
		nar[nar.length] = vtmp[i];
	return nar;
}

doc.getPromoL = function()
{
	return "";
}

doc.getPromoR = function()
{
	return "";
}

doc.getPromoB = function()
{
	return "";
}

function mailTo(who, txt, ttl, sbj, bdy)
{
	var nm = txt, ml = who;
	switch (who)
	{
	case 0:
		nm = nameCoordinator, ml = mailCoordinator;
		break;
	case 1:
		nm = nameCurator, ml = mailCurator;
		break;
	case 2:
		nm = nameEditor, ml = mailEditor;
		break;
	case 3:
		nm = nameWebmaster, ml = mailWebmaster;
		break;
	}
	if (ttl == undefined || ttl == "")
		ttl = "Escribir a " + nm;
	if (txt == undefined || txt == "")
		txt = nm;
	if (sbj != undefined || bdy != undefined)
		ml += "?";
	if (sbj != undefined)
	{
		ml += "subject=" + sbj;
		if (bdy != undefined)
			ml += "&";
	}
	if (bdy != undefined)
		ml += "body=" + bdy;
	return "<a href='mailto:" + ml + "' title='" + ttl + "'>" + txt + "</a>";
}

function openWnd(url, nam, optn, ttl)
{
	if (optn == "")
		optn = "width=800,height=600,resizable=no,scrollbars=yes,toolbar=no";
	var w = window.open("", nam, optn);
	w.document.write("<html><head><title>" + ttl
		+ "</title></head><body style=\"padding:0px;margin:0px;\"><img src=\""
		+ url + "\"></body></html>");
	w.focus();
}

function writeLastMod()
{
	// last modified
	var sd = document.lastModified,
		nd = new Date(sd);
	document.write("<div style=\"font-size:7pt;text-align:right;\">&Uacute;ltima revisi&oacute;n: "
		+ nd.getDate() + " de " + fmn[nd.getMonth()] + " de " + nd.getYear() + "&nbsp;&mdash;&nbsp;"
		+ sd.substring(sd.indexOf(" "), sd.length) + ".</div>");
}

doc.writePageHdr = function()
{
	// Write Page header: three components (mini-logo, doc.header, doc.environment)
	doc.write("<div align=\"center\"><div style=\"width:1024px;\">");

	// Draw top-mini-logo
	var text = "<div class='top_logo'><a href='" + base + "index.html' title='Portal CPIA.org'><img src='"
		+ base + "frame/cpia_org_small.jpg' alt='Ir al Portal' class='logo'></a></div>";
	doc.write(text);

	// Draw document-header
	doc.write("<div class='doc_hdr'><div class='border_r'>");

	// - Draw search-tool
	if (0)
	{
	text = "<div class='topbox'>"
		+ "<form action='" + base + "cgi-bin/robot.exe/search' accept-charset='utf-8' method='GET'>"
		+ "<input type='hidden' name='charset' value='utf-8'>"
		+ "<input type='hidden' name='section' value='sect-name'>"
		+ "<table class='toptool'><tr>"
		+ "<td nowrap><span class='rightarrow'>&raquo;</span>&nbsp;<a href='" + base + "search_tips.html' title='C&oacute;mo encontrar m&aacute;s'>pistas</a>&nbsp;</td>"
		+ "<td><input class='searchbox' name='query' size=7 onFocus='javascript:if (this.value == this.defaultValue) this.value=\"\";' value='Buscar'></td>"
		+ "<td valign='middle' align='left'><input name='button' type='image' border=0 src='" + base + "frame/button_go.gif' alt='Buscar'></td>"
		+ "</tr><tr>"
		+ "<td colspan=3 class='site_maint'>Sitio mantenido por el Club<br>de Astrof&iacute;sica del Paraguay</td>"
		+ "</tr></table></form></div>";
	}
	else
	{
	text = "<div class='topbox'>"
		+ "<table class='toptool'><tr>"
		+ "<td nowrap>&nbsp;</td>"
		+ "<td>&nbsp;</td>"
		+ "<td valign='middle' align='left'>&nbsp;</td>"
		+ "</tr><tr>"
		+ "<td colspan=3 class='site_maint'>Sitio mantenido por el Club<br>de Astrof&iacute;sica del Paraguay</td>"
		+ "</tr></table></form></div>";
	}
	doc.write(text);

	// - Write header links
	doc.write("<table class='lnk_map'>");

	// -- Inst. links
	text = "<tr>"
		+ "<td rowspan=2 class='logo_ct'><a href='" + base + "index.html' title='Portal CPIA.org'><img src='" + base + "frame/s.gif' alt='Ir al Portal' class='logo'></a></td>"
		+ "<td rowspan=2 class='pad_cp'></td>"
		+ "<td colspan=1 class='capt_ct'><a href='" + base + "index.html' title='Ir al Portal'><img src='" + base + "frame/s.gif' alt='CPIA.org' class='caption'></a></td>"
		+ "<td rowspan=2 class='pad_wm'></td>"
		+ "<td rowspan=2 class='logo_wm_ct'><a href='" + base + "cap/index.html' title='Club de Astrof&iacute;sica del Paraguay'><img src='" + base + "frame/s.gif' alt='CAP' class='logo_wm'></a></td>"
		+ "</tr>";
	doc.write(text);

	// -- Topic links
	text = "<tr>"
		+ "<td colspan=1 class='topics'>"
		+ "<table class='links'>"
		+ "<tr>"
		+ "<td class='sect_lnk'><span class='rightarrow'>&raquo;</span>&nbsp;<a href='" + base + "event/index.html'>Actividades</a></td>"
		+ "<td class='sep_lnk'></td>"
		+ "<td class='sect_lnk'><span class='rightarrow'>&raquo;</span>&nbsp;<a href='" + base + "doc/index.html'>Art&iacute;culos</a></td>"
		+ "<td class='sep_lnk'></td>"
		+ "<td class='sect_lnk'><span class='rightarrow'>&raquo;</span>&nbsp;<a href='" + base + "tech/index.html'>T&eacute;cnicas</a></td>"
		+ "<td class='sep_lnk'></td>"
		+ "<td class='sect_lnk'><span class='rightarrow'>&raquo;</span>&nbsp;<a href='" + base + "gallery/index.html'>Galer&iacute;a</a></td>"
		+ "<td class='sep_lnk'></td>"
		+ "<td class='sect_lnk'><span class='rightarrow'>&raquo;</span>&nbsp;<a href='" + base + "cap/index.html'>CAP</a></td>"
		+ "<td class='sep_lnk'></td>"
		+ "<td class='sect_lnk'><span class='rightarrow'>&raquo;</span>&nbsp;<a href='" + base + "links/index.html'>Enlaces</a></td>"
		+ "<td class='sep_lnk'></td>"
		+ "<td class='sect_lnk'><span class='rightarrow'>&raquo;</span>&nbsp;<a href='" + base + "contact.html'>Contactos</a></td>"
		+ "</tr>"
		+ "</table>"
		+ "</td>"
		+ "</tr>";
	doc.write(text);

	// - ...
	doc.write("</table>");

	// ...
	doc.write("</div></div>");

	// Document environment
	doc.write("<table class='doc_env'><tr>")

	// - Directory tree
	var url = linkUrl(loc), lnkt = linkText(loc), dct = linkTitle(loc);
	text = "<td><div class='path'>";
	if (lnkt.length > 0)
	{
		text += "<a href='" + base + "index.html'>Portal CPIA.org</a>";
		if (loc == (base+url+"index.html"))
		{
			text += " &gt; " + lnkt;
			dct = "";
		}
		else
		{
			text += " &gt; <a href='" + base + url + "index.html'>" + lnkt + "</a>";
		}
	}
	else if ((url.indexOf(".") >= 0 && url != "index." && url != ".") || url == "cgi-bin/")
	{
		text += "<a href='" + base + "index.html'>Portal CPIA.org</a>";
	}
	else
	{
		text += "Portal CPIA.org";
	}
	doc.write(text + dct + "</div></td>");

	if (logon.length > 0)
	{
	doc.write("<td>Usuario: "
	        + "<span style=\"color:red;line-height:100%;\">"
			+ getQuery("UID", logon)
			+ "</span>&nbsp;&nbsp;("
			+ queryDecode(getQuery("UNM", logon))
			+ ")</td>");
	}

	// - Date from gateway
	text = "<td><div class='cgi_date'>Asunci&oacute;n, "
		+ idd + " de " + fmn[idm] + " de " + idy
		+ " &middot; JD = " + idj + "</div></td>";
	doc.write(text);

	// ...
	doc.write("</tr></table>");
	
	// ---
	doc.write("<br>");
}

function frmDig(dig)
{
	var txt = dig.toString();
	if (txt.length == 1)
		return "0" + txt;
	return txt;
}

doc.serverTime = function()
{
	var tsp = "<span style=\"font-size:10px;\">&nbsp;</span>";
	var text = fwd[iwd] + " " + idd + " de " + fmn[idm] + " de " + idy
		+ " &ndash; " + frmDig(ith) + ":" + frmDig(itm) + ":" + frmDig(its)
		+ " &middot; (GMT" + tsp + "&ndash;" + tsp
		+ (itz == -14400 ? "4" : "3")
		+ ")&nbsp;&nbsp;&ndash;&nbsp;&nbsp;JD = " + idj
		+ "&nbsp;&nbsp;&ndash;&nbsp;&nbsp;YD = " + iyd;
	return text;
}

doc.writeMenuL = function()
{
	var i = 0;

	urlLst = doc.getMenuL();

	var tt = urlLst[i++];

	while (tt != "")
	{
		var ut = urlLst[i++];
		doc.write("<div class='topic'>");
		if (ut != "")
			doc.write("<a href='" + ut + "'>" + tt + "</a>");
		else
			doc.write(tt);
		doc.write("</div><table>");
		var dt = urlLst[i++];
		while (dt != "")
		{
			ut = urlLst[i++];
			doc.write("<tr><td>-&nbsp;");
			if (ut != "")
				doc.write("<a href='" + ut + "'>" + dt + "</a>");
			else
				doc.write(dt);
			doc.write("</td></tr>");
			dt = urlLst[i++];
		}
		doc.write("</table><hr>");
		tt = urlLst[i++];
	}
}

doc.writeMenuR = function(pd)
{
	//alert("doc.writeMenuR()");
	// Write rigt side menu

	var text = "";

	if (!isNaN(pd))
		for (var k = 0; k < pd; ++k)
			text += "<br>";

	var i = 0;

	urlLst = doc.getMenuR();

	text += "<div class='rel_lnk'>"
		+ "<div class='tbx_blue'><table class='text_box'>";
	doc.write(text);

	var tt = urlLst[i++];

while(tt.indexOf("+") == 0 || tt.indexOf("-") == 0)
{
	//alert("TT = " + tt);
	var sty1 = (i == 1 ? "<div class='tl'><div class='tr'>" :
					     "<div class='nr'>");
	var sty2 = (i == 1 ? "</div></div>" : "</div>");

	var bdy = (tt.indexOf("+") == 0 ? "body_ch" : "body");

	text = "<tr><th class='head'>" + sty1 + tt.substr(1) + sty2 + "</th></tr>"
		+ "<tr><td class='" + bdy + "'><br>";
	doc.write(text);

	tt = urlLst[i++];

	while (tt != "")
	{
		//alert("tt = " + tt);
		text = "<div>"
		if (tt != "...")
			text = "<b>" + tt + "</b>"
		doc.write(text + "<ul>");
		var dt = urlLst[i++];
		while (dt != "")
		{
			//alert("dt = " + dt);
			var ut = urlLst[i++], tg = "";
			//alert("ut = " + ut);
			if (ut.substr(0, 16) != loc.substr(0, 16))
				tg = " target='_blank'";
			if (ut != "" && ut != loc)
				doc.write("<li><a href='" + ut + "'" + tg + ">" + dt + "</a></li>");
			else if (ut == loc)
				;
			else
				doc.write("<li>" + dt + "</li>");
			dt = urlLst[i++];
		}
		doc.write("</ul></div><br>");
		tt = urlLst[i++];
	}
	
	doc.write("</td></tr>");

	tt = urlLst[i++];
}

	var promo = (urlLst[urlLst.length-1] == "promo" ? doc.getPromoR() : "");

	text = "</table></div></div>" + promo
		+ "<div align='center' class='menu_t'><br><br><hr style='margin-bottom:0;'>"
		+ "<span style='font-size:10px;'>P&aacute;ginas optimizadas para resoluciones"
		+ "de 800&times;600 y 1024&times;768 (<a href='" + base
		+ "info.html' style='font-size:10px;'>recomendado</a>).</span><hr></div>";
	doc.write(text);
}

doc.writePageFtr = function()
{
	// Write page footer: staff, legal info, promotions, etc.
	
	doc.write(doc.getPromoB());

	var text = "<div class='doc_footer'><table><tr><td colspan=4>"
		+ "<hr class='divider'></td></tr>";
	doc.write(text);

	// Left logo
	text = "<tr><td rowspan=2 class='foot_logo'><div><a href='" + base
		+ "cap/index.html' title='CAP'><img src='" + base
		+ "frame/cap_small.gif' class='logo' alt='CAP'></a></div></td>";
	doc.write(text);

	// Crew
	text = "<td class='links'><div style='color:#024;'>"
		+ "Webm&aacute;ster: " + mailTo(3) + "<br>"
		+ "Editor: " + mailTo(3) + "<br>"
		+ "Coordinador: " + mailTo(0)
		+ "</div></td><td>&nbsp;</td>";
	doc.write(text);

	// Legal info + Right logo
	text = "<td rowspan=2 class='foot_legal'><div>"
		+ "<a href='" + base + "index.html' title='Portal CPIA.org'><img src='"
		+ base + "frame/cpia_small.gif' class='logo' alt='CPIA.org'></a>"
		+ "De no indicarse lo contrario, todo el material aplicativo, documental "
		+ "o infogr&aacute;fico contenido en este sitio es propiedad de sus respectivos "
		+ "autores, o de CPIA.org.</div></td></tr>";
	doc.write(text);

	// Copyright notice
	text = "<tr><td colspan=2><div>Copyright 1997&ndash;"
		+ (new Date).getYear() + " Centro Paraguayo de Informaciones Astron&oacute;micas.<br>"
		+ "Todos los derechos reservados.</div></td></tr>";
	doc.write(text);

	// ...
	text = "<tr><td colspan=4><hr class='divider'></td>"
		+ "</tr></table></div>";
	doc.write(text);
	
	doc.write("</div></div>");
}

doc.writeNoImg = function(w, h)
{
	var text = "<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' "
		+ "codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/"
		+ "swflash.cab#version=6,0,29,0' width=" + w + " height=" + h + ">"
		+ "<param name='movie' value='" + base + "frame/no_img.swf'>"
		+ "<param name='quality' value='high'>"
		+ "<param name='loop' value='1'>"
		+ "<embed src='" + base + "frame/no_img.swf' width=" + w + " height=" + h + " loop=1 quality='high' "
		+ "pluginspage='http://www.macromedia.com/go/getflashplayer' "
		+ "type='application/x-shockwave-flash' menu='false'></embed>"
		+ "</object>";
	doc.write(text);
}

// Events on links.

function anchorOnMouseOver()
{
	if (this.title)
		window.status = this.title;
	else
		window.status = this.innerHTML;
	return true;
}

function anchorOnMouseOut()
{
	window.status = "";
	return true;
}

// Page initialization

window.onload = function()
{
	for (var i = 0; i < document.links.length; ++i)
	{
		with (document.links[i])
		{
			if (!onmouseover)
			{
				onmouseover = anchorOnMouseOver;
				onmouseout = onclick = anchorOnMouseOut;
			}
		}
	}
}

// Page setup

doc.writeln("<link rel='stylesheet' type='text/css' media='all' title='CPIA.org Document Frame Layout' href='" + base + "frame/frame.css'>");

