﻿MSIE_Browser = /MSIE/.test(navigator.userAgent) && !window.opera;
var php_lib_dir = 'lib';
var hfform = document.forms[0];
 
var main_menu_img = new Array('','home_button.png','impressum_button.png','projekt_button.png','programm_button.png','rueckschau_button.png','presse_button.gif','kontakt_button.png');
var main_menu_mouse_out_img = new Array();
for(i=1; i<=7; i++) {
	var bild = new Image();
	bild.src = 'images/' + main_menu_img[i];
	main_menu_mouse_out_img[i] = bild;
}
var main_menu_mouse_over_img = new Array();
for(i=1; i<=7; i++) {
	var bild = new Image();
	bild.src = 'images/mouseover/images/' + main_menu_img[i];
	main_menu_mouse_over_img[i] = bild;
}
function mouseOverImg(id) {
	$('main_menu_' + id).src = main_menu_mouse_over_img[id].src;
}

function mouseOutImg(id) {
	$('main_menu_' + id).src = main_menu_mouse_out_img[id].src;
}

function hide_div(id) {$(id).style.diplay='none';}

function escapeHTML(s) {
	var d = document.createElement('div');
	var t = document.createTextNode(s);
	d.appendChild(t);
	return d.innerHTML;
}
function escHTMLnl2br(s) {
	var l = new Array();
	var w = s.split("\n");
	for(var i=0; i<werte.length; i++)	l.push(escapeHTML(w[i]));
  return lines.join("<br>");
}

function inner_height() {
	if (window && (typeof(window.innerWidth)=='number') && window.innerHeight) {
		return window.innerHeight;
	} else if (document.documentElement && document.documentElement.clientHeight) {
		return document.documentElement.clientHeight;
	} else if (document.body && document.body.clientHeight) {
		return document.body.clientHeight;
	}
	return $('body').offsetHeight;
}

function page_offset_x() {
	var x=0;
	if (self.pageYOffset) {
		x = self.pageXOffset;
	} else if (document.documentElement && document.documentElement.scrollLeft) {
		x = document.documentElement.scrollLeft;
	} else if (document.body) {
		x = document.body.scrollLeft;
	}
	return x;
}

function page_offset_y() {
var y=0;
if (self.pageYOffset) {
 y = self.pageYOffset;
} else if (document.documentElement && document.documentElement.scrollTop) {
 y = document.documentElement.scrollTop;
} else if (document.body) {
 y = document.body.scrollTop;
}
return y;
}








 // helper function
 function save_pos_submit() {
  if (hfform.PageOffsetX && hfform.PageOffsetY) {
   hfform.PageOffsetX.value=page_offset_x();
   hfform.PageOffsetY.value=page_offset_y();
  }
  document.forms[0].submit();
 }

 function do_command(com) {hfform.com.value=com; save_pos_submit();}
 function do_sub_command(com) {hfform.sub_com.value=com; save_pos_submit();}
 function do_command_arg(com,arg) {hfform.com.value=com; hfform.com_arg.value=arg; save_pos_submit();}
 function do_sub_command_arg(com,arg) {hfform.sub_com.value=com; hfform.sub_com_arg.value=arg; save_pos_submit();}
 function do_confirmed_sub_command(value) {
  if (confirm("Sind Sie sicher?")) do_sub_command(value);
 }
 function do_confirmed_sub_command_arg(com,value) {
  if (confirm("Sind Sie sicher?")) do_sub_command_arg(com,value);
 }

 function simple_submit() {hfform.submit();}
 function sort_it(val) {if (val=='') return; hfform.order.value=val; save_pos_submit();}

 // commands
 function send_email() {do_command("send_email");}
 function content_edit() {do_command('content_edit');}
 function cancel_it() {if (confirm("Sind Sie sicher?")) do_command("cancel");}
 function save_it() {do_command("save");}
 function logout() {do_command('logout');}
 function delete_this() {if (confirm("Sind Sie sicher?")) do_command("delete");}
 function change_layout_type() {do_command_arg("change_layout_type",hfform.layout_type.value);}
 
 // sub commands
 function save_() {do_sub_command("save");}
 function neu_(nr) {do_sub_command_arg("neu",nr);}
 function edit_(nr) {do_sub_command_arg("edit",nr);}
 function delete_(nr) {if (confirm("Sind Sie sicher?")) do_sub_command_arg("del",nr);}
 function move_up(nr) {do_sub_command_arg("up",nr);}
 function move_down(nr) {do_sub_command_arg("down",nr);}

 function goto_page(nr) {
 	location.href="index.php?page_id="+nr+"&ref_offset="+hfform.page_id.value+","+page_offset_x()+","+page_offset_y();
 }
 function goto_page_anchor(nr,anch) {
 	location.href="index.php?page_id="+nr+"&ref_offset="+hfform.page_id.value+","+page_offset_x()+","+page_offset_y()+"#"+anch;
 }
 function goto_page_param(nr,param) {
 	location.href="index.php?page_id="+nr+"&ref_offset="+hfform.page_id.value+","+page_offset_x()+","+page_offset_y()+"&"+param;
 }
 function bg_col(id,val) {
 	var t = $(id).getElementsByTagName('*');
 	for(var i=0; i<t.length; i++) {
 	  t[i].style.backgroundColor=val;
 	}
 }

 function let_appear_big_image_of(id) {
 	var tn = $('tn_'+id);
  var img = $('big_image_layer_img');
  img.src = big_image_array[id].src;
  var layer = $('big_image_layer');
  var tn_pos = Position.cumulativeOffset(tn);
  var tn_w = tn.offsetWidth;
  var w = big_image_array[id].width;
  var h = big_image_array[id].height;
  layer.style.top=(tn_pos[1]-10)+'px';
  layer.style.height=(h+0)+'px';
  layer.style.width=(w+10)+'px';
  var cc = $('content_cell');
  var cont_pos = Position.cumulativeOffset(cc);
  var al = tn.getAttribute('big_align');
  if (al=='left') {
  	layer.style.left=(cont_pos[0]-10)+'px';
  } else if (al=='center') {
  	layer.style.left=(cont_pos[0]+((cc.offsetWidth-w-24)/2))+'px';
  } else
  	layer.style.left=(tn_pos[0]+tn_w-w-10)+'px';
  layer.style.display = '';
 }

 function leave_big_image_layer() {
  $('big_image_layer').style.display='none';
 }

 
 var mouse_pos_x = 0;
 var mouse_pos_y = 0;

 function hfgidialogload() {
 	/* get form object */
 	hfform = document.forms[0];
 	/* hold mouse position */
  $('body').onmousemove = hfupdatemousexy;
  /*** CATCHING DOCUMENT WIDE KEY EVENTS ***/
	if( document.attachEvent ) {
	 $('body').attachEvent('onkeyup',window_keycode_trigger); // IE
	} else if( document.addEventListener ) {
	 window.addEventListener('keyup', window_keycode_trigger, false ) // none IE
	} 
 }


function hfupdatemousexy(event) {
 if( event == null ) event=window.event;
 mouse_pos_x = event.pageX || (event.clientX +
      (document.documentElement.scrollLeft || document.body.scrollLeft));
 mouse_pos_y = event.pageY || (event.clientY +
      (document.documentElement.scrollTop || document.body.scrollTop));
}

/*** ON WINDOW KEY EVENTS ***/
function window_keycode_trigger(event) {
 /* on CTRL Y event */
 if (event.ctrlKey && event.keyCode == 89) login_to_current_page();
}

function login_to_current_page() {
 if (hfform.page_id) {
  location.href="index.php?Login=1&page_id="+hfform.page_id.value;
 } else {
  location.href="index.php?Login=1";
 }
}


/*** MENU FUNCTIONS ***/

close_pending_popups = new Array();

function show_menu(nr) {
	var mh = $('main_menu_'+nr);
	var mpos = Position.cumulativeOffset(mh);
	var mw = mh.offsetWidth;
	var mh = mh.offsetHeight;
	var sh = $('popmenu_'+nr);
	//Position.absolutize(sh);
  if (sh.style.position != 'absolute') sh.style.position='absolute';
	if (nr==4) { mw=360; mpos[0]=mpos[0]-120;}
	sh.style.left=(mpos[0])+'px';
	sh.style.top=mpos[1]+mh+'px';
	sh.style.width=(mw)+'px';
	sh.style.display='';
	if (MSIE_Browser) {
		sh.style.filter = 'alpha(opacity=100)';
	} else {
		sh.style.mozOpacity = 1;
		sh.style.opacity = 1;
	}
	popmenu_opened(nr);
}
function popmenu_opened(nr) {
	var new_close_pending_popups = new Array();
	for(var i=0; i<close_pending_popups.length; i++) {
		var item = close_pending_popups[i];
		if (item && item[0]!=nr) new_close_pending_popups.push(item);
	}
	close_pending_popups = new_close_pending_popups;
}
var left_menu_closer_interval=null;
function left_menu(nr) {
	if (left_menu_closer_interval==null)
		left_menu_closer_interval = window.setInterval("menu_closer_check()",100);
	var d = new Date();
	close_pending_popups.push([nr,d.getMinutes()*60000+d.getSeconds()*1000+d.getMilliseconds()]);
}
function menu_closer_check() {
	var d = new Date();
	var cur = d.getMinutes()*60000+d.getSeconds()*1000+d.getMilliseconds();
	var still_open = 0;
	if (close_pending_popups.length==0) {
		window.clearInterval(left_menu_closer_interval);
		left_menu_closer_interval = null;
		return;
	}
	for(i=0; i<close_pending_popups.length; i++) {
		var item = close_pending_popups[i];
		if (item && item[1]>cur-50)
			still_open++;
		else if (item) {
			var nr = item[0];
			var d = $('popmenu_'+nr);
			blend_down_item[nr] = [d,window.setInterval('blend_down_step('+nr+')',30),0];
			close_pending_popups[i]=null;
		}
	}
	if (still_open==0) close_pending_popups = new Array();
}
var blend_down_item = [];
function blend_down_step(nr) {
	var d = blend_down_item[nr][0];
	var step = blend_down_item[nr][2];
	if (step>5) {
		window.clearInterval(blend_down_item[nr][1]);
		d.style.display='none';
		if (MSIE_Browser) {
			d.style.filter = 'alpha(opacity=0)';
		} else {
			d.style.mozOpacity = 0;
			d.style.opacity = 0;
		}
		return;
	}
	if (MSIE_Browser) {
		d.style.filter = 'alpha(opacity='+(100-100/5*step)+')';
	} else {
		d.style.mozOpacity = 1/5*(5-step);
		d.style.opacity = 1/5*(5-step);
	}
	blend_down_item[nr][2]++;
}
