// Javascript-Funktionen Mygallery V1.0 - ah 20020801

	// Rollover Effekt mit Lock-Funktion
	var mygallery_imob = new Array();			// enthält die Image-Objekte als 2D-Array:
															// 		[0] = name
															//		[1] = altes Image Objekt
															//		[2] = neues Image Objekt
															//		[3] = lock-flag free=0
	function mygallery_createImage() {						// erhält Name-sourceAlt-sourceNeu Triples als Argument
		var i, j, len, a, anz, im=mygallery_imob;
		len = im.length;
		a = mygallery_createImage.arguments;
		for (j=0;j<a.length;j+=3) {
			im[len] = new Array();
			im[len][0] = a[j];
			im[len][1] = new Image();
			im[len][2] = new Image();
			im[len][1].src = a[j+1];
			im[len][2].src = a[j+2];
			im[len++][3] = 0;								// lock-status
		}
	}
	
	function mygallery_freeImage(name) {					// löscht das lock-Flag
		var i, im=mygallery_imob;
		if (name=="") {	// alle flags löschen
			for (i=0;i<im.length;i++) {
				im[i][3] = 0;
				document.getElementsByName(im[i][0])[0].src = im[i][1].src;
			}
		} else {		// sonst nur das eine
			index = mygallery_getImage(name);
			im[index][3] = 0;
			document.getElementsByName(name)[0].src = im[index][1].src;
		}
	}
	 
	function mygallery_getImage(name) {						// gibt den Index vom name-Image zurück
		var i, r=-1, im=mygallery_imob;
		for (i=0;i<im.length;i++) {
			if (im[i][0] == name) {
				r = i;
				break;
			}
		}
		return r; // oder -1 wenn nichts gefunden!
	}
	
	function mygallery_lockImage(name) {					// setzt das lock-flag für name-Image
		mygallery_imob[mygallery_getImage(name)][3] = 1;
		mygallery_over(name);
	}
	
	function mygallery_over(name) {
		index = mygallery_getImage(name);
		if (index != -1 && document.getElementsByName(name)[0]) {
			document.getElementsByName(name)[0].src = mygallery_imob[index][2].src;
		}
	}
	
	function mygallery_out(name) {
		index = mygallery_getImage(name);
		if (index != -1) {
			if (!mygallery_imob[index][3] && document.getElementsByName(name)[0]) {
				document.getElementsByName(name)[0].src = mygallery_imob[index][1].src;
			}
		}
	}
	
	// blendet layer aus und ein
	var mygallery_form_id; // global value
	
	function mygallery_showForm(id){
   		mygallery_hideForm("g_all"); // if any
   		mygallery_form_id = id;	// store in global
   		if (document.all) {
			bubble = eval("document.all."+id);
			//bubble.style.top = (parseInt(bubble.style.top) + 12) + "px";
			bubble.style.visibility="visible";
		}
		else if (document.layers) eval("document."+id+".visibility='show'");
		else if (document.getElementById) {
			bubble = eval("document.getElementById('"+id+"')");
			bubble.style.visibility = "visible";
		}
   }
   
   function mygallery_hideForm(id){
	   	if (id=="g_all") {
			fid = mygallery_form_id;
		} else {
			fid = id;
		}
		if (fid) {
	   		if (document.all) {
				bubble = eval("document.all."+fid);
				bubble.style.visibility="hidden";
				//bubble.style.top = (parseInt(bubble.style.top) - 12) + "px";
			}
			else if (document.layers) eval("document."+fid+".visibility='hide'");
			else if (document.getElementById) {
				bubble = eval("document.getElementById('"+fid+"')");
				bubble.style.visibility="hidden";
			}
			mygallery_form_id = 0; // unset global
			mygallery_freeImage("");
		}
   }
   
   function mygallery_toggleForm(id) {
	   if (mygallery_form_id == id) {
		   mygallery_hideForm(id);
	   } else {
		   mygallery_showForm(id);
	   }
   }
   
   
   // aendert den css-stil fuer das uebergebene objekt (nur DOM, funktioniert nicht mit opera)
   var mygallery_hl_id; // globals
   function mygallery_hl(id, cn) { // dom only!
   		mygallery_hl_id=id; // fuer downlight merken
		if (document.getElementById) {
			document.getElementById(id).className = cn;
		}
	}
	
	function mygallery_dl(cn) {
		if (mygallery_hl_id) {
			if (document.getElementById) {
				document.getElementById(mygallery_hl_id).className = cn;
			}
		mygallery_hl_id=0; // unset
		}
	}
	
	var mygallery_popup_window = ""; // globals
	function mygallery_popup(url,id,w,h,x,y){
		if (mygallery_popup_window) {
			mygallery_popup_window.close();
		}
		if (!w) w=320;
		if (!h) h=300;
		if (!x) x=150;
		if (!y) y=150;
		var win_opt= "toolbar=0,location=0,directories=0,status=0,menubar=0,";
		win_opt += "scrollbars=1,resizable=1,copyhistory=0,";
		win_opt += "width=" + w + ",height=" + h + ",";
		win_opt += "left=" + x + ",top=" + y;
		mygallery_popup_window = window.open(url+"?element_id="+id,"popup",win_opt);
		if (mygallery_popup_window != null) {
			mygallery_popup_window.location.href = url+"?element_id="+id;
			if (document.all) { // dom for ie
				document.attachEvent("onclick",mygallery_keeppopupalive);
			} else if (document.getElementById) { // dom for ns
				document.addEventListener("click",mygallery_keeppopupalive,false);
			}
		}
	}
	
	function mygallery_keeppopupalive(evt){
		if (mygallery_popup_window && !mygallery_popup_window.closed) {
			mygallery_popup_window.focus();
		}
	}
	
	//debug
	function showLength(variable){
		alert(variable.length);
	}

// end of scripts
