var navigateToNewPage = false;
var activeMenuElement = null;
var activeSubMenuElement = null;
//****************************************
function initMainFrames()
{
//See if there is a bookmark hash on the page URL.
var bookmark = location.hash;
if (bookmark) bookmark = bookmark.substring(1);
//If we have a bookmark, load that as the initial state.
if (!bookmark)
{
dojo.widget.byId("mainframe").setUrl("welcome.htm");
dojo.undo.browser.setInitialState({changeUrl: "", handle: navigate});
}
else
{
dojo.undo.browser.setInitialState({changeUrl: bookmark, handle: navigate});
var mainframe = dojo.widget.byId("mainframe");
mainframe.addOnLoad(function()
{
navigateInfoFrame(bookmark,false);
});
mainframe.setUrl("main.htm");
}
}
function navigate(direction)
{
if (this.changeUrl)
{
var url = this.changeUrl;
if (dojo.widget.byId("mainframe").href != "main.htm")
{
dojo.widget.byId("mainframe").setUrl("main.htm");
dojo.widget.byId("mainframe").addOnLoad(function(){navigateInfoFrame(url,false);});
}
else
{
navigateInfoFrame(url,false);
}
}
else
{
dojo.widget.byId("mainframe").setUrl("welcome.htm");
}
}
function loadbanner(menu)
{
dojo.widget.byId("mainbanner").setContent("
");
}
function loadpic(name)
{
dojo.byId("infoimageframe").innerHTML = "
";
}
function loadinfo(infofile)
{
dojo.widget.byId("infoframe").setUrl(infofile);
}
function loadsubmenu(submenufile, submenu)
{
var subMenu = dojo.widget.byId("submenu");
if (submenu == null)
{
subMenu.setContent("");
}
else
{
subMenu.addOnLoad(function()
{
if (activeSubMenuElement != null && activeSubMenuElement != submenu && dojo.byId(activeSubMenuElement))
dojo.byId(activeSubMenuElement).style.backgroundImage = "";
activeSubMenuElement = findMenuElement("submenulink", submenu).id;
if (dojo.byId(activeSubMenuElement).style.backgroundImage == "")
dojo.byId(activeSubMenuElement).style.backgroundImage = "url(images/buzga.gif)";
});
subMenu.setUrl(submenufile);
}
}
function navigateMainFrame()
{
try
{
var mf = dojo.widget.byId("mainframe");
mf.addOnLoad(function(){navigateInfoFrame('michelehof_familie',true);});
mf.setUrl("main.htm");
}
catch (e)
{
}
}
function navigateInfoFrame(file, setHistory)
{
try
{
var erg = /(\w*)_(\w*)/.exec(file);
var m;
var sm = null;
if (erg)
{
m = erg[1];
sm = m + "_" + erg[2];
}
else
m = file;
loadbanner(m);
loadsubmenu("submenu_" + m + ".htm", sm);
if (sm != null)
loadinfo("info_" + sm + ".htm");
else
loadinfo("info_" + m + ".htm");
if (activeMenuElement != null && activeMenuElement != m)
dojo.byId(activeMenuElement).style.backgroundImage = "";
activeMenuElement = findMenuElement("menulink", m).id;
if (dojo.byId(activeMenuElement).style.backgroundImage == "")
dojo.byId(activeMenuElement).style.backgroundImage = "url(images/buzga.gif)";
if (setHistory)
{
dojo.undo.browser.addToHistory({changeUrl: file, handle: navigate});
}
}
catch (e)
{
alert("Fehler:" + e.description);
}
}
function findMenuElement(menuclass, id)
{
var elements = document.getElementsByTagName("td");
var i;
for (i = 0; i < elements.length; i++)
{
if (elements[i].className == menuclass)
{
if (elements[i].id == id) return elements[i];
}
}
return null;
}
//Mousehandler events
function showBuzga(elem)
{
elem.style.backgroundImage = "url(images/buzga_orange.gif)";
}
function hideBuzga(elem)
{
if ((elem.className == "menulink" && activeMenuElement != null && elem.id == activeMenuElement)
|| (elem.className == "submenulink" && activeSubMenuElement != null && elem.id == activeSubMenuElement))
elem.style.backgroundImage = "url(images/buzga.gif)";
else
elem.style.backgroundImage = "";
}
function mousehandler(classname)
{
var elements = document.getElementsByTagName("td");
for (i = 0; i < elements.length; i++)
{
if (elements[i].className == classname)
{
elements[i].onmouseover = function () {showBuzga(this);};
elements[i].onmouseout = function () {hideBuzga(this);};
elements[i].onclick = function(e) {
var parent = dojo.html.getParentByType(dojo.html.getEventTarget(e),"td");
if (dojo.html.getAttribute(parent,"href"))
navigateInfoFrame(dojo.html.getAttribute(parent,"href"),true);
else
navigateInfoFrame(parent.id,true);
};
}
}
}