/* =================================================================*/
//
// Automatische Site-Navigation mit dynamisch erzeugtem Javascript 
//
// (c) Nov 1999 Marco Zierl
// Kontakt: mzierl@gmx.net
//
// Modifikationen bezüglich Navigation 3.Ebene sind urheberrechtlich geschützt.
// Eine freie Weitergabe dieses Sciptes ist streng untersagt und wird strafrechtlich verfolgt.
// (c) TRICK-DESIGN, Christian Lück
// Kontakt: info@trick-design.de
/* =================================================================*/

/* =================================================*/
// !!!! folgende Variablen unbedingt anpassen !!!! //

// Physikalisches Startverzeichnis in dem die html-Dateien liegen
// leerer String = Root-Verzeichnis
// - zu testzwecken beim Entwickeln ohne Webserver
// - vor dem Publizieren unbedingt ändern!!!!
var root_directory = "http://www.gc-gelstern.de";

// Unterverzeichnis mit den Navigationsgrafiken
var image_dir = "/gif/";

// voreingestellte Höhe und Breite der Navigationsbilder
// diese Werte werden verwendet, wenn keine Einträge für height und width 
// existieren
var default_height = 25;
var default_width = 180;

// Dateiendung der Mouseover-Grafiken - wird an den normalen 
// Grafikdateinamen angehängt
var mouseover_extension = "_1";

// standard-menü: 
// bestimmt die Reihenfolge der Menüeinträge in der Navigationsleiste
var default_menu = new Array('club','platz','kurzplatz','golfschule','turniere','service','gaestebuch','kontakt');

// HTML-Dateiendung: wird bei der automatischen link.erzeugung verwendet
var html_extension = ".htm";

// Mouseover-toggle: ja oder nein  
var mouseover_effects = true; // oder false;

// Grafikdateityp: Ändern, wenn die Navigation aus jpg-Grafiken besteht
var file_type = ".gif"; 

// !!!! Ende Variablenanpassung !!!! //
/* =================================================*/


var MenuEntries=new Object();
var current_entry =0;
  

function add_subentry_bild(name, mother, im, image_h, link){
	if(MenuEntries[mother].child_counter == null){
		MenuEntries[mother].child_counter=0;
		MenuEntries[mother].children = new Array();
	}
	var child_count = MenuEntries[mother].child_counter;
	MenuEntries[mother].children[child_count]=name;
	MenuEntries[mother].child_counter++;

	// mormalen Eintrag für Kind erzeugen
	if(! link){
		add_entry_bild(name,im,image_h);
	} else {
		add_entry_bild(name,im,image_h, link);
	}	
	MenuEntries[name].mother = mother;
}


function add_entry_bild(name, im,image_h, link){
	MenuEntries[name] = new Object();
	MenuEntries[name].name= name;
	MenuEntries[name].image = Image;
	if(mouseover_effects == true){
		MenuEntries[name].image_h = image_h + mouseover_extension;
	}
	MenuEntries[name].alt = name;
	if(!link){
		MenuEntries[name].link = root_directory + "/" + name + html_extension;
	} else {
		MenuEntries[name].link = root_directory + "/" + link;
	}		

	if(mouseover_effects == true){
		// image objekte zum mouseover-austausch anlegen
		eval(name + '= new Image()');
		eval(name + '.src="' + root_directory + image_dir + im + file_type + '"'); 
		eval(name + '_h= new Image()');
		eval(name + '_h.src="' + root_directory + image_dir + image_h + mouseover_extension + file_type + '"'); 
	}
	current_entry++;
}

function build_nav(page_menu, highlight){

	var mother="";
	var mother1="";
	// check for mother node
	if(highlight != null)
	{
		if(MenuEntries[highlight].mother != null)
		{
			mother = MenuEntries[highlight].mother;
			if(MenuEntries[mother].mother != null)
			{
				mother1=MenuEntries[highlight].mother;
				mother = MenuEntries[mother].mother;
			}
		}
	}
	for(i=0; i< page_menu.length; i++){
		var current_entry = page_menu[i];
		// link und image tags schreiben (mit document.write
		if(current_entry == mother)
		{
			write_html(current_entry, mother);
		}
		else write_html(current_entry, highlight);

		if(current_entry == mother){
			for(var j=0; j<MenuEntries[current_entry].children.length; j++){
				
				//document.write(MenuEntries[current_entry].children[j]+" -- "+highlight);
				if (MenuEntries[current_entry].children[j]==mother1)
				{
					write_html(MenuEntries[current_entry].children[j], mother1);
				}
				else write_html(MenuEntries[current_entry].children[j], highlight);
				//level 3 entrys anzeigen
				
				var dings = MenuEntries[current_entry].children[j];
				if (MenuEntries[highlight].children != null && MenuEntries[dings].children != null && highlight==MenuEntries[current_entry].children[j]) //<--- doof, aber geht
				{ 
					
					for(var z=0; z<MenuEntries[highlight].children.length; z++)
					{
						write_html(MenuEntries[highlight].children[z], highlight);
					}
				}
				//alert(highlight+"-"+current_entry+"-"+dings+"--"+MenuEntries[dings].children);
				if (MenuEntries[dings].child_counter>1)
				{
					for(var y=0; y<MenuEntries[dings].children.length; y++)
					{
						if(MenuEntries[dings].children[y]==highlight )
						{
							for(var z=0; z<MenuEntries[mother1].children.length; z++)
							{
								write_html(MenuEntries[mother1].children[z], highlight);
							}
							
						}
					}
					
					
				}
				else if (MenuEntries[dings].child_counter==1)
				{
					if(MenuEntries[dings].children==highlight )
					{
						for(var z=0; z<MenuEntries[mother1].children.length; z++)
						{
							write_html(MenuEntries[mother1].children[z], highlight);
						}
						
					}
				}
									
			}
		}

			
		if(MenuEntries[current_entry].name == highlight &&
			MenuEntries[current_entry].child_counter != null){
			// Untermenü vorhanden
			for(var j=0; j<MenuEntries[current_entry].children.length; j++){
				write_html(MenuEntries[current_entry].children[j], highlight);	
				
				

				
				/*var dings = MenuEntries[current_entry].children[j];
				if (MenuEntries[dings].children != null)
				{ 
					for(var z=0; z<MenuEntries[dings].children.length; z++)
					{
						write_html(MenuEntries[dings].children[z], highlight);
					}
				}	*/
			}
		}
	}
}

/* ------------------------------------------------------------------*/
// write_html()
//
// ausgabe des html-codes für die navigationsleiste
// - nehmen Sie hier Änderungen vor, wenn Sie z.B. die Ausgabe der
//  Navigationsleiste als Tabelle oder div-Container möchten
//
// - zur Zeit werden für jeden eintrag die folgenden tags ausgegeben:
//   <a href=.... onmouseover...> <img src=...> </a> <br>
/* ------------------------------------------------------------------*/

function	write_html(current_entry, highlight){
		var extension = "";
		var curr_name = MenuEntries[current_entry].name;
		// abprüfen, ob eintrag als ausgewählt angezeigt wird
		if(curr_name == highlight){
			extension = mouseover_extension; // highlight grafik 
		}
				
		// höhe und breite der grafik setzen
		if(!MenuEntries[current_entry].height ){
			height = default_height;
		} else {
			height = MenuEntries[current_entry].height;
		}

		if(!MenuEntries[current_entry].width ){
			width = default_width;
		} else {
			width = MenuEntries[current_entry].width;
		}

		output="";

		// html Ausgabe erzeugen
		if(MenuEntries[current_entry].name != highlight)
		{
			output = '<a href="' + MenuEntries[current_entry].link + '"';
			if(mouseover_effects == true )
			{
				// mouse events einfügen
				output+= ' onMouseOver="ch(\'' + curr_name + '\',\'' + curr_name;
				output+= '_h\'); return true"';
				output+= ' onMouseOut="ch(\'' + curr_name + '\',\'' + curr_name;
				output+= '\'); return true"';
			}
			output += '>';
		}
		else
		{
			output = '<a href="' + MenuEntries[current_entry].link + '"';
			output += '>';		
		}

		// image tag aufbauen- src, height, width  und alt
		output += '<img src="' + root_directory + image_dir + MenuEntries[current_entry].image;
		output += extension + '.gif" height=' + height;
		output += ' width="' + width + '" border=0 alt="';
		output += MenuEntries[current_entry].alt + '" name="' + curr_name;
		output += '"></a><br>';
		document.write(output);
}

/* ------------------------------------------------------------------*/
// ch()
//
// Funktion zum Austauschen der Grafiken beim mousover / mouseout 
/* ------------------------------------------------------------------*/

function ch(im,sr) {
	eval('document.'+im+'.src='+sr+'.src');
}

function ieFake(fake) {
	if ((document.all) && (fake)) fake.blur();
}

function feldGr(feld,inhalt,max) {
	who = feld;
	if (inhalt >= max) {
		alert('Achtung, maximale Feldgröße erreicht!');
		who.value = who.value.substr(0,max-1);
	}
}

function drucken() {
	if (window.print) self.print();
	if(document.all && navigator.appVersion.substring(22,23)==4) {
		self.focus();
	    var OLECMDID_PRINT = 6;
	    var OLECMDEXECOPT_DONTPROMPTUSER = 2;
	    var OLECMDEXECOPT_PROMPTUSER = 1;
	    var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH="0" HEIGHT="0" CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>';
	    document.body.insertAdjacentHTML('beforeEnd',WebBrowser);
	    WebBrowser1.ExecWB(OLECMDID_PRINT,OLECMDEXECOPT_DONTPROMPTUSER);
	    WebBrowser1.outerHTML = '';
	}
}


var twi = null;
function tunierinfo(tunierID) {
	tmpX = 300;
	tmpY = 350;
	if (twi != null) if (!twi.closed) twi.close();
	twi = window.open('/turniere_detail.asp?id=' + tunierID,'InfofensterTuniere','left=' + ((screen.availWidth/2)-tmpX/2) + ',top=' + ((screen.availHeight/2)-tmpY/2) + ',marginwidth=0 marginheight=0,leftmargin=0,topmargin=0,scrollbars=yes,status=no,width=' + tmpX + ',height=' + tmpY + ',resizable=no');
	if (twi.opener==null) twi.opener=self;
//	if (vn >= "4") twi.moveTo((screen.availWidth/2)-tmpX/2,(screen.availHeight/2)-tmpY/2);
	return;
}

var wi = null;
function info(datei,x,y,scbar) {
	tmpScroll = "yes";
	if (scbar == 0) tmpScroll = "no";
	if (!x) var tmpX = 520;
	else var tmpX = x+20;
	if (!y) var tmpY = 350;
	else var tmpY = y+30;
	if (wi != null) if (!wi.closed) wi.close();
	wi = window.open('/' + datei,'Infofenster','left=' + ((screen.availWidth/2)-tmpX/2) + ',top=' + ((screen.availHeight/2)-tmpY/2) + ',marginwidth=0 marginheight=0,leftmargin=0,topmargin=0,scrollbars=' + tmpScroll + ',status=no,width=' + tmpX + ',height=' + tmpY + ',resizable=no');
	if (wi.opener==null) wi.opener=self;
	//if (vn >= "4") wi.moveTo((screen.availWidth/2)-tmpX/2,(screen.availHeight/2)-tmpY/2);
	return;
}
