﻿	globalvar   = new Object();
	var page        = new Object();
	var mouse_x = 0;
	var mouse_y = 0;
	
	var contentx;
	var content_url;

	this.ua=navigator.userAgent.toLowerCase();
	var ie  = (ua.indexOf("msie") != -1) && (ua.indexOf("opera") == -1);
	var ie6 = (this.ua.indexOf('msie 6') !=-1);			
	var ns4		= (document.layers);
	var ns6		= (!document.all && document.getElementById); //safari
	var ie4		= (document.all && !document.getElementById && !window.opera);
	var ie5		= (document.all && !document.fireEvent && !window.opera);
	var op7		= (window.opera && document.createComment) ;
	var w3dom	= (document.getElementById || op7); //safari
	
	this.iemac = !!(this.ie && this.ua.indexOf("mac") >= 0);
 	this.mac = !!(this.ua.indexOf("mac") >= 0);
 	this.win = !!(this.ua.indexOf("win") >= 0);
 	
	if(ie && win){
 		var top_position = 145;
 	}else{
 		var top_position = 138;
 	} 
	var mouse_x = 0;
	var mouse_y = 0;
	
	var xlock;
	var ylock;
	
	var sccroll_ypos = 300;
	
	var target_layer = '';
	var nav_pos = '';
	var nav_selection = '';
	var nav_selection_array = new Array();
	var nav_pos_array = new Array('0','220');
	var nav_div_anzahl = 0;
	var nav_path = new Array();
	var scorll_xpos = 0;
	
	window.onload=function(){if (window.windowOnload) window.windowOnload();}
	window.onresize=function(){if (window.windowOnresize) window.windowOnresize();}

	function checkMail(mailadresse){
		var x = mailadresse;
		var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
		if (filter.test(x)){
			return true;
		}else{
			return false
       	}
	}


	function checkform_ticket(formular) {
		if (!formular.name.value || !formular.tel.value || !formular.email.value || !formular.anz.value) {
			alert ("\nBitte alle Felder ausfuellen.");
			return false;
		} else {
			if (checkMail(formular.email.value)) {
				return true;
			} else {
				alert ("\nBitte geben Sie eine korrekte E-Mail adresse an.");
				return false;
			}
		}
	}
	
	function checkform_newsletter(formular) {
		if (!formular.Email.value) {
			alert ("\nBitte geben Sie eine E-Mail Adresse an.");
			return false;
		} else {
			if (checkMail(formular.Email.value)) {
				return true;
			} else {
				alert ("\nBitte geben Sie eine korrekte E-Mail Adresse an.");
				return false;
			}
		}
	}
	
	function checkform_partyservice(formular) {
		if (!formular.Name.value || !formular.Telefon.value || !formular.Email.value || !formular.Datum.value || !formular.Personen.value) {
			alert ("\nBitte alle Felder mit * ausfuellen.");
			return false;
		} else {
			if (checkMail(formular.Email.value)) {
				return true;
			} else {
				alert ("\nBitte geben Sie eine korrekte E-Mail Adresse an.");
				return false;
			}
		}
	}
	
	function checkform_querfeld(formular) {
		if (!formular.Name.value || !formular.Telefon.value || !formular.Email.value || !formular.Datum.value || !formular.Personen.value) {
			alert ("\nBitte alle Felder mit * ausfuellen.");
			return false;
		} else {
			if (checkMail(formular.Email.value)) {
				return true;
			} else {
				alert ("\nBitte geben Sie eine korrekte E-Mail Adresse an.");
				return false;
			}
		}
	}
	
	function checkform_euro08(formular) {
		if (!formular.Person.value || !formular.Adresse.value || !formular.Telefon.value || !formular.Email.value || !formular.Datum.value || !formular.Personen.value) {
			alert ("\nBitte alle Felder mit * ausfuellen.");
			return false;
		} else {
			if (checkMail(formular.Email.value)) {
				return true;
			} else {
				alert ("\nBitte geben Sie eine korrekte E-Mail Adresse an.");
				return false;
			}
		}
	}
	
	function testimg(){
		alert()
		document.getElementById("content").style.top = 250;
		document.getElementById("content").style.left = 250;
	
	}
				
	function centerContent(){
		
		globalvar.win_width = (ns4 || ns6 || op7) ? window.innerWidth  : document.body.clientWidth;
		globalvar.win_height = (ns4 || ns6 || op7) ? window.innerHeight : document.body.offsetHeight;
		//alert(globalvar.win_height)
		contentx = Math.floor((globalvar.win_width-710)/2);
		if(contentx < 20) contentx =20;
		move_div('header',contentx,0);
		move_div('index',contentx,top_position);
		move_div('maincontent',contentx,top_position);
		move_div('maincontenttop',contentx,top_position);		
		
	}

	function move_div(a,x,y){
		if(ie4){
			document.all[a].style.left = x;
			document.all[a].style.top = y;
		}else if(ns4){
			document[a].left = x;
			document[a].top = y;
		}else{
			if(x != 'x'){
				document.getElementById(a).style.left = x;
			}
			if(y != 'y'){
				document.getElementById(a).style.top = y;
			}
		}
	}
	function get_scroll_y(){
		if(ie){
			yscroll = document.body.scrollTop;	
		}else{
			yscroll = window.pageYOffset;	
		}
		return yscroll;
	}
	function get_scroll_x(){
		if(ie){
			xscroll = document.body.scrollLeft;	
		}else{
			xscroll = window.pageXOffset;	
		}
		return xscroll;
	}
	
	function xscroll_to(xpos){
		scroll_xpos = xpos;
		xs = get_scroll_x();
		xdiff = Math.ceil((xpos-xs)/2);
		xs_new = xs + xdiff;
		self.scrollTo(xs_new,0);
		block_scroll = 1;
		if(xs_new == get_scroll_x() && xs_new != xs){
			if(xpos != get_scroll_x){
				page_timer2 = setTimeout("xscroll_to('"+xpos+"')",50);
			}else{
				block_scroll = 0;
			}
		}else{
			block_scroll = 0;
		}
	}

	function yscroll_to(ypos){
		scroll_ypos = ypos;
		ys = get_scroll_y();
		ydiff = Math.ceil((ypos-ys)/2);
		ys_new = ys + ydiff;
		self.scrollTo(ys_new,0);
		block_scroll = 1;
		if(ys_new == get_scroll_y() && ys_new != ys){
			if(ypos != get_scroll_y){
				page_timer2 = setTimeout("yscroll_to('"+ypos+"')",50);
			}else{
				block_scroll = 0;
			}
		}else{
			block_scroll = 0;
		}
	}

	function moveby_div(a,dx,dy){
		if(ie4){
			document.all[a].style.left = get_div_x(a)+dx;
			document.all[a].style.top =  get_div_y(a)+dy;
		}else if(ns4){
			document[a].left =  get_div_x(a)+dx;
			document[a].top =  get_div_y(a)+dy;
		}else{
			document.getElementById(a).style.left = get_div_x(a)+dx;
			document.getElementById(a).style.top = get_div_y(a)+dy;
		}
	}

	function show_div(a){
		if(ns4){
			document[a].visibility = "show";
		}else if(ie4){
			document.all[a].style.visibility = "visible";
		}else{	
			document.getElementById(a).style.visibility = "visible";
		}
	}

	function hide_div(a){
		if(w3dom){
			document.getElementById(a).style.visibility = "hidden";
		}else if(ns4){
			document[a].visibility = "hide";
		}
	}

	function display_inline(a){
		if(ns4){
			document[a].display = "inline";
		}else if(ie4){
			document.all[a].style.display = "inline";
		}else{	
			document.getElementById(a).style.display = "inline";
		}
	}

	function display_none(a){
		if(w3dom){
			document.getElementById(a).style.display = "none";
		}else if(ns4){
			document[a].display = "none";
		}
	}

	function switch_display(a){
		if(w3dom){
			if (document.getElementById(a).style.display == "none") {
				document.getElementById(a).style.display = "block";
			} else {
				document.getElementById(a).style.display = "none";
			}
		}else if(ns4){
			if (document[a].display == "none") {
				document[a].display = "block";
			} else {
				document[a].display = "none";
			}
		}
	}

	function set_div_z(a,z){
		if(w3dom){
			document.getElementById(a).style.zIndex=z;
		}else if(ns4){
			document[a].visibility = zindex = z;
		}
	}
	
	function get_div_x(a){
		if(w3dom){
			return parseInt(document.getElementById(a).style.left);
		}else if(ns4){
			return document[a].left;
		}
	}
	function get_div_y(a){
		if(w3dom){
			return parseInt(document.getElementById(a).style.top);
		}else if(ns4){
			return document[a].top;
		}
	}
	function get_div_w(a){
		if(w3dom){
			return parseInt(document.getElementById(a).style.width);
		}else if(ns4){
			return document[a].width;
		}
	}
	function get_div_z(a){
		if(w3dom){
			return parseInt(document.getElementById(a).style.zIndex);
		}else if(ns4){
			return document[a].zIndex;
		}
	}
	function get_win_size(){
		
		page.width    = (ns4||ns6||op7) ? innerWidth  : document.body.clientWidth;
		page.height   = (ns4||ns6||op7) ? innerHeight : document.body.clientHeight;
	}
	
	
	function xinnerHTML() {
		
		var args = xinnerHTML.arguments;
		if(args[2]){
			target_layer = args[2];
		}
		nav_pos = args[3];
		//alert(args[0]+"--"+args[1]+"--"+args[2]+"--"+args[3]+"--"+args[4]+"--"+args[5]+"--"+args[6])			
		switch(args[0]) {
		
		// arg 0 	= status
		// arg 1 	= file to load
		// arg 2	= 
		// arg 3 	= 
		// arg 4 	= 
		// arg 5 	= 
		// arg 6 	=  
		
		case "load_html" :
		//alert('load')
		if(args[1]){
			if(args[3]){
				nav_pos = args[3];
			}
			
			if(args[5]){
				nav_path[nav_pos] = args[5];
			}
			if(args[6]){
				nav_pos_array[nav_pos] = eval(nav_pos_array[nav_pos-1]) + eval(args[6]);
			}else{
				nav_pos_array[nav_pos] = eval(nav_pos_array[nav_pos-1]) + nav_width;
			}
			
			
			
			// sprachvariable + incrementierte zahl (safari reload bug) am ende der url anh?ngen
			filecount = filecount+1;
				
			if(args[1].lastIndexOf("?")!=-1){ // falls variablen mitgegeben werden
				//url = args[1]+"&spr="+spr+"&i="+filecount+"&nav_pos="+nav_pos+"&layer="+target_layer;
				url = args[1]+"&a2="+args[2]+"&a3="+args[3]+"&a4="+args[4]+"&a5="+args[5]+"&a6="+args[6];
				alert(url);
			}else{
				alert(url);
				url = args[1]+"?a2="+args[2]+"&a3="+args[3]+"&a4="+args[4]+"&a5="+args[5]+"&a6="+args[6];
			}
			if(w3dom) {
				//alert(url)
				dataFrameName.location.href=url;
			}
		}
		break;
		case "html_is_loaded" :
			
			page_timer = setTimeout("xinnerHTML('display_html','','','"+args[3]+"')",50);
		break;
		case "img_is_loaded" :	
			page_timer = setTimeout("xinnerHTML('display_img','','','"+args[3]+"')",50);
		break;
		case "display_html" :
			//alert(target_layer+"-"+(nav_pos_array[nav_pos-1])+x_pos+"-"+y_pos)
			if(!document.getElementById(target_layer)){
				new_div(target_layer,0,0,100,100);
				nav_div_anzahl ++;
			}
			alert(nav_pos)
			document.getElementById(target_layer).innerHTML = window.frames.dataFrameName.document.getElementById('content').innerHTML;
			//move_div(target_layer,(nav_pos_array[nav_pos-1])+x_pos,y_pos);
			move_div(target_layer,200*(nav_pos-1)+x_pos,y_pos);
			
			show_div(target_layer);
			
			for(i = nav_div_anzahl;i>nav_pos;i--){
				hide_div('layer'+i);
				move_div('layer'+i,-400,'y');
			}
			if(document.getElementById('contentwin')){
				move_div('contentwin',contentwin_x,contentwin_y);
				win_zpos += 10;
				set_div_z('contentwin',win_zpos);
				
			}
			if(document.getElementById('textwin')){
				move_div('textwin',textwin_x,textwin_y);
				win_zpos += 10;
				set_div_z('textwin',win_zpos);
				
			}
			blurLinks();		
		break;
		case "display_img" :
			
			document.getElementById('img').innerHTML = window.frames.dataFrameName.document.getElementById('content').innerHTML;
			for(i = nav_div_anzahl;i>nav_pos;i--){
				div_name = 'layer'+i;
				if(div_name != contentwin_div && div_name != textwin_div){
					hide_div(div_name);
				}
			}
			hide_div('logo');
			show_div('img');
			show_div('imgload');
			blurLinks();
		break;
		}
	}	
	function send_form_p(suche){
		alert(suche);
		parent.xinnerHTML('load_html','../content/_suche.php?object=projekte&search='+suche,'werklistecontent');
				
	}
				
	function unblur() {
		this.blur();
	}
				
	function blurLinks() {
		if (!document.getElementById) return;
		theLinks = document.getElementsByTagName("a");
		for(i=0; i<theLinks.length; i++) {
			theLinks[i].onfocus = unblur;
		}
	}
	
	function set_heighlight(){
		
		if(nav_selection_array[nav_pos-1]){
			id = nav_selection_array[nav_pos-1];
			style = "navlink";
			change_style(id,style);
		}
		nav_selection_array[nav_pos-1] = "a"+(nav_pos-1)+nav_selection;
		id = "a"+(nav_pos-1)+nav_selection;
		style = "navlinkover";
		change_style(id,style);
		//alert(nav_selection_array)
	}		

	function bookmarkit(){
	  	window.external.addFavorite('http://www.claudiabasel.ch','VIPER BASEL');
	}
	
	var z_pos = 100;
	function topz_div(a) {
		if(!a){
			a = selected_div;
		}
		z_pos ++;
		document.getElementById(a).style.zIndex=z_pos;
	}	

	// mouse pos capture

	function initmouse(){
		if (ie) {
			document.onmousemove=checkMouse
		} 
	 	else if(ns4||ns6) { 
			window.captureEvents(Event.MOUSEMOVE)
			window.onmousemove=checkMouse
		}
	}
	function checkMouse(e){
		if (ie) {
			page.mouse_x=window.event.clientX;
			page.mouse_y=window.event.clientY;
			mouse_x=window.event.clientX;
			mouse_y=window.event.clientY;			
		}
		if (ns6||ns4) {
			page.mouse_x=e.pageX;
			page.mouse_y=e.pageY;
			mouse_x=e.pageX;
			mouse_y=e.pageY;
		}
	}

	// --- Initializes the drag
	var AllowDrag=0;var oldMouseX,oldMouseY,oldDragX,oldDragY,selected_layer;	
	var selected_div = '';
	
	function oDragINIT(layername,handlername,xl,yl) {
		xlock = xl;
		ylock = yl;

 		if (AllowDrag == 0){
 			selected_div = layername;
 			moveby_div(layername,0,0) // fix f?r ns browser nach innerhtml
 			if (ns4) {
 				alert('ns4')
 				this.hobj=document.layers[handlername];
 				this.objCSS=document.layers[layername]; DragObjCSS=this.objCSS;
			 	this.hobj.captureEvents(Event.MOUSEDOWN | Event.MOUSEUP)
				this.hobj.onmousedown=oDragSTART
			 	this.hobj.onmouseup=oDragSTOP
		 	}
 			else if (ns6) {
 		
 				this.hobj=document.getElementById(handlername);
 				this.objCSS=document.getElementById(layername).style; DragObjCSS=this.objCSS;
			 	this.hobj.onmousedown=oDragSTART
 				this.hobj.onmouseup=oDragSTOP
 				
		 	}
 			else if (ie) {
 		
 				this.hobj=document.all[handlername];
 				this.objCSS=document.all[layername].style; DragObjCSS=this.objCSS; 
				this.hobj.onmousedown=oDragSTART
				this.hobj.onmouseup=oDragSTOP
			}
		}
 	}
 
 	
 
	function oDragSTART(e) {
		win_zpos += 10;
		set_div_z(selected_div,win_zpos);
		
 		if (ie) {
			oldMouseX=window.event.clientX
			oldMouseY=window.event.clientY
			oldDragX=DragObjCSS.pixelLeft
			oldDragY=DragObjCSS.pixelTop
			document.onmousemove=oDragDRAG
			document.onmouseup=oDragSTOP
			AllowDrag=1;
		} 
	 	else if(ns4||ns6) { 
	 					
			oldMouseX=e.pageX
			oldMouseY=e.pageY
			oldDragX=parseInt(DragObjCSS.left)
			oldDragY=parseInt(DragObjCSS.top)
			window.captureEvents(Event.MOUSEMOVE)
			window.onmousemove=oDragDRAG
			window.onmouseup=oDragSTOP
			AllowDrag=1;
			document.onmousedown=disableselect // ns6 drag+select fix
		}
	}
 
 // --- Sets oDrag to the proper positions
 
	function oDragDRAG(e) {
		
		if (AllowDrag&&ie) {
			if(xlock == 1){
				DragObjCSS.pixelLeft=window.event.clientX-oldMouseX+oldDragX;
			}
			if(ylock == 1){
				DragObjCSS.pixelTop=window.event.clientY-oldMouseY+oldDragY;
			}
			if(selected_div == "progscroll"){
				fixpos();
			}
			return false;
		}
		if (AllowDrag&&ns6) {
			 //alert('ns6--'+e.pageX+'--'+oldMouseX+'--'+oldDragX);
			if(xlock == 1){
				DragObjCSS.left=e.pageX-oldMouseX+oldDragX;
			}
			if(ylock == 1){
				DragObjCSS.top=e.pageY-oldMouseY+oldDragY;
			}
			
			return false;
		}
 		if (AllowDrag&&ns4) {
			DragObjCSS.left=e.pageX-oldMouseX+oldDragX;
			DragObjCSS.top=e.pageY-oldMouseY+oldDragY;
			return false;
		}
		
	}
 
	function oDragSTOP() {

		if(AllowDrag==1){
			//if (ie && selected_div=="werkliste") {
			//	xinnerHTML('load_html',werkliste_url,'werklistecontent');
			//}
			if (selected_div=="contentwin") {
				//win_zpos += 10;
				//alert(get_div_z('contentwin'))
				//set_div_z('contentwin',win_zpos);
				contentwin_x = get_div_x('contentwin');
				contentwin_y = get_div_y('contentwin');
				//	alert(contentwin_x+"--"+contentwin_y)
			}
			if (selected_div=="textwin") {
				//win_zpos += 10;
				//set_div_z('textwin',win_zpos);
				textwin_x = get_div_x('textwin');
				textwin_y = get_div_y('textwin');
			}
			//alert(selected_div)		
			document.onmousedown = reEnable // ns6 drag+select fix
			AllowDrag=0;
			initmouse()
		}
	}
	
	var hxpos = 0;
	var hxspielorte = 0;
	
	function fixpos(){
		hxpos = get_div_x('progscroll');
		
		if(hxpos < contentx){
			move_div('progscroll', contentx,'x');
			hxpos = contentx;
		}
		if(hxpos > contentx+710-72){
			move_div('progscroll', contentx+710-72,'x')
			hxpos = contentx+710-72;
		}
		hxspielorte = -(hxpos-contentx)*((178*(num_spielorte-4))/(710-72))
		move_div('programm',hxspielorte,'x')
	}
	
	// ns6 drag+select fix	
 	function disableselect(e){
		return false
	}

	function reEnable(){
		return true
	}
	
	




	//** end
	
	// popup window
	
	function open_window(url,param,winname) {
	 
		w_toolbar = param.substr(1,1);
		w_location = param.substr(2,1);
		w_directories = param.substr(3,1);
		w_menubar = param.substr(4,1);
		w_status = param.substr(5,1);
		w_scrollbars = param.substr(6,1);
		w_resize = param.substr(7,1);
		win_width =  parseFloat(param.substr(8,4)).toString();
		win_height =  parseFloat(param.substr(12,4)).toString();
		win_xpos = parseFloat(param.substr(16,4)).toString();
		win_ypos =  parseFloat(param.substr(20,4)).toString();
  		
		winStats1='toolbar='+w_toolbar
		winStats1+=',location='+w_location
		winStats1+=',directories='+w_directories
		winStats1+=',menubar='+w_menubar
		winStats1+=',status='+w_status
		winStats1+=',scrollbars='+w_scrollbars
		winStats1+=',resizable='+w_resize
		winStats1+=',width='+win_width
		winStats1+=',height='+win_height

		if (navigator.appName.indexOf("Microsoft")>=0) {
			winStats1+=',left='
			winStats1+=win_xpos
			winStats1+=',top='
			winStats1+=win_ypos
		}else{
			winStats1+=',screenX='
			winStats1+=win_xpos
			winStats1+=',screenY='
			winStats1+=win_ypos
		}
  	
  		//alert(winStats1);
		new_window=window.open(url,winname,winStats1);
		new_window.moveTo(win_xpos,win_ypos);  // moving window to the screencenter (ie 4.5 mac!!)
		new_window.focus();
	}

	

	
	var mxpos = 0;
	var mypos = 0;
	var mcount = 0;
	var speed = 0;
	var newpos_x = 0;
	var newpos_y = 0;
	var divma = '';
	
	function move_div_to(){
		
		mxpos = get_div_x(divma);
		mypos = get_div_y(divma);
		
 		mxpos = mxpos - ((mxpos-newpos_x)/speed);
 		mypos = mypos - ((mypos-newpos_y)/speed);
 		
		move_div(divma,mxpos,mypos);
  
  		if(mcount < 15){
			mcount++;
			tm=setTimeout('move_div_to()',speed);
		}else{
			move_div(divma,newpos_x,newpos_y);
			mcount =0;
		}
 	 }	
	
	//** end window open
 
 	//** create div
 	
 	function new_div(id,x,y,w,h){
		this_body=document.getElementsByTagName("body").item(0);
		this_div = document.createElement("DIV");
		this_div.id = id;
		s_offset = 8; 
		s_w = 30;
		this_body.appendChild(this_div);
		this_div.style.position = "absolute";
		this_div.style.top = y;
		this_div.style.left = x;
		this_div.style.visibility = "visible";
		this_div.style.width = w;
		this_div.style.height = h;
	}
	
	//** end create div
	
	function none(){
	
	}