var MSIE_Browser = /MSIE/.test(navigator.userAgent) && !window.opera;

// #797341 (1.)
// #776B07
// #968A26

var	cur_lang='en';
var	cur_ext='';
var height_diff = 250;
var deutsch=false;
Browser_height_correction = 0;
if (MSIE_Browser) Browser_height_correction = 10;
var site_root = 'http://www.ch2009.de/';

var menu_idx = {
	'home':0,
	'organisation':1,
	'programme':2,
	'papers':3,
	'registration':4,
	'location':5,
	'contact':6
};

var menu_titles = {
 'en': {
	'home':'Home',
	'organisation':'Organisation',
	'programme':'Programme',
	'papers':'Papers',
	'registration':'Registration',
	'location':'Location',
	'contact':'Contact'
 },
 'de': {
	'home':'Start',
	'organisation':'Organisation',
	'programme':'Programm',
	'papers':'Beitr&auml;ge',
	'registration':'Anmeldung',
	'location':'Cottbus',
	'contact':'Kontakt'
 }
};

var cur_menu_idx = null;

function overimg() {
	var eventObj = arguments[0];
	if( eventObj == null ) {var eventObj = window.event}
	var obj = ( eventObj.srcElement ) ? eventObj.srcElement : eventObj.originalTarget;
	obj.src = obj.src.replace(/\/default\//,'/over/');
}

var cached_images = new Array();

function outimg() {
	var eventObj = arguments[0];
	if( eventObj == null ) {var eventObj = window.event}
	var obj = ( eventObj.srcElement ) ? eventObj.srcElement : eventObj.originalTarget;
	if (!(cur_menu_idx===null)) {
		var m = obj.src.match(/\/[^\/]*$/);
		if (m && m[0] && m[0].indexOf(''+(cur_menu_idx+1))==-1)
			obj.src = obj.src.replace(/\/over\//,'/default/');
  } else
		obj.src = obj.src.replace(/\/over\//,'/default/');
}

function after_load() {

  //correct language
	if (location.pathname.match(/\.de\.html/)) {
		cur_lang='de';
		cur_ext='.de';
		deutsch=true;
	}

	var menu = document.getElementById('menu');
  
	// load language dependend menu images & register menu mouse over effects
	var menu_imgs = new Array();
	var lnks = menu.getElementsByTagName('A');
	for(var i=0; i<7; i++) {
		var lnk = lnks[i];
		if (deutsch) {
			lnk.href = lnk.href.replace(/\.html/,'.de.html');
		}
		var img = lnk.childNodes[0];
		menu_imgs.push(img);
		img.src = img.src.replace(/\/menu\//,'/menu/'+cur_lang+'/default/');
		img.onmouseover = overimg;
		img.onmouseout = outimg;
	}

	//find menu directory & file name
	var menu_dir = false;
	var file_name = false;
	var top_path = '';
  var cur_path = window.location.pathname;
  if (cur_path.charAt(cur_path.length-1)=='/') cur_path=cur_path+'index.html';
	var head_img_src = document.getElementById('head_img').src;
	var m = head_img_src.match(/(http:\/\/[^\/]*(.*\/))img\/[^\/]+$/);
	if (m && m[2]) {
		site_root = m[1];
		top_path = m[2].substr(1);
		//alert(cur_path.substr(top_path.length));
		var sub_path_arr = cur_path.substr(top_path.length+1).split(/\//);
		menu_dir = sub_path_arr[0];
		file_name = sub_path_arr[sub_path_arr.length-1];
	}
	
	//set current menu idx
	if (menu_titles[cur_lang][menu_dir]) cur_menu_idx=menu_idx[menu_dir];
	menu_imgs[cur_menu_idx].src = menu_imgs[cur_menu_idx].src.replace(/\/default\//,'/over/');

  //if submenu then insert link to menu on first h1 tag 
	if (menu_dir && menu_dir.length>0 && !(file_name=='index.html' || file_name=='index.de.html')) {
		var h1 = document.getElementsByTagName('H1');
		if (h1 && h1.length>0) {
			h1[0].innerHTML = '<a href="/' + top_path + menu_dir + '/index' + cur_ext + '.html">' + menu_titles[cur_lang][menu_dir] + ' &gt;&gt;</a> ' + h1[0].innerHTML;
		}
	}

 //correct language to impressum
 if (deutsch)
  document.getElementById('footer_impressum').innerHTML = '<a href="/' + top_path + 'contact/index.de.html">Impressum &gt;&gt;</a>';

	//set the right language button
	if (deutsch)
		document.getElementById('lang_button').innerHTML = '<img src="'+site_root+'/img/enn.gif" onClick="toggle_language()" title="Switch to English" />';
	else
		document.getElementById('lang_button').innerHTML = '<img src="'+site_root+'/img/den.gif" onClick="toggle_language()" title="Deutscher Text" />';



 //fit content to page
 stretch();
 document.getElementById('footer').style['display'] = '';
 window.onresize = stretch;

 // find the additional info source
 var path_name = '';
 var cur = location.href;
 var m = cur.match(/info=([^&#]*)/);
 if (m && m[1]) path_name = decodeURIComponent(m[1]);
 else {
  path_name = window.location.pathname;
  if (path_name.substr(path_name.length-1,1)=='/') path_name = path_name + 'index.html';
  if (/\.de\.html/.test(path_name))
   path_name = path_name.replace(/\.de\.html/,'/index.de.html');
  else
   path_name = path_name.replace(/\.html/,'/index.html');
 }
 parent.Zusatzinfo.location.href = path_name;

 //write last update time
 if (document.getElementById('last_update'))
 	document.getElementById('last_update').innerHTML = document.lastModified;
 

 	//make images right zoomable
	var imgs = document.getElementsByTagName('IMG');
	for(var i=0; i<imgs.length; i++) {
		if (imgs[i].className)
			if (imgs[i].className=='zoom_max') make_max_zoomable(imgs[i]);
			else if (imgs[i].className.match(/zoom/)) make_right_zoomable(imgs[i]);
  }
  

  // explicitly cache menu images for mouse effects
	for(var i=1; i<=7; i++) {
		var img = new Image();
		img.src = site_root+'img/menu/'+cur_lang+'/over/menu_0'+i+'.gif';
		cached_images.push(img);
	}
	for(var i=1; i<=7; i++) {
		var img = new Image();
		img.src = site_root+'img/menu/'+cur_lang+'/default/menu_0'+i+'.gif';
		cached_images.push(img);
	}

}

function toggle_language() {
	var path_name_zusatz = parent.Zusatzinfo.location.pathname;
	var path_name = window.location.pathname;
	if (!deutsch) {
		path_name_zusatz = path_name_zusatz.replace(/\.html/,'.de.html');
 		if (path_name.substr(path_name.length-1,1)=='/') path_name = path_name + 'index.html';
 		path_name = path_name.replace(/\.html/,'.de.html');
 	} else {
		path_name_zusatz = path_name_zusatz.replace(/\.de\.html/,'.html');
		if (path_name.substr(path_name.length-1,1)=='/') path_name = path_name + 'index.de.html';
		path_name = path_name.replace(/\.de\.html/,'.html');
 	}
	location.href = path_name+'?info='+encodeURIComponent(path_name_zusatz);
}

function stretch() {
	// fit content length to page
	var new_height = (inner_height() - height_diff + Browser_height_correction);
	document.getElementById('Zusatzinfo').style.height = new_height + 'px';
	document.getElementById('left_content_div').style.maxHeight = new_height + 'px';
	document.getElementById('left_content_div').style.height = new_height + 'px';
	//resize zoom layer left
	zoom_left_resize();
	//resize zoom layer right
	zoom_right_resize();
}

