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 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); }; } } }