function getAdr(prefix, postfix, text) {
        document.write('<a href="mailto:' + prefix + '@' + postfix + '">' + (text ? text : prefix + '@' + postfix) + '</a>');
}

cookie_pairs = new Object();
cookie_expiration = new Date(2099,1,1,1,1,1,1);
css_rules = new Object();
css_rules_exceptions = new Object();
css_rules_exceptions.fontsizes = new Object();
css_rules_exceptions.fontsizes['#nav *'] = new Object();
css_rules_exceptions.fontsizes['#nav'] = new Object();
css_rules_exceptions.fontsizes['#bottom *'] = new Object();
css_rules_exceptions.fontsizes['#bottom'] = new Object();

fontsizes_default = new Object();
window_loaded = false;
js_init();

window.onload = js_onload;
function js_init () {

	js_fontsizes_init();
	
	if (js_browser_accepts_cookies()) {
		js_cookie_init();

		if (cookie_pairs.fontsizefactor!=0){
			js_fontsize_change(cookie_pairs.fontsizefactor);
		}
	}
	
}


function js_browser_accepts_cookies () {
	return navigator.cookieEnabled;
}



function js_cookie_init () {

	if (!document.cookie){
		document.cookie = "fontsizefactor=0; path=/; expires=" + cookie_expiration.toGMTString();
	}
	
	cookie_vals = document.cookie.split(";")[0];
	cookie_pairs_arr = cookie_vals.split(",");
	for (pair in cookie_pairs_arr){
		pair_arr = cookie_pairs_arr[pair].split("=");
		cookie_pairs[pair_arr[0]] = pair_arr[1];
	}

	if (cookie_pairs.fontsizefactor){
		parseInt(cookie_pairs.fontsizefactor);
		if (isNaN(cookie_pairs.fontsizefactor)){
			cookie_pairs.fontsizefactor = 0;
		}
	}
	else {
		cookie_pairs.fontsizefactor = 0;
	}
	
	document.cookie = "fontsizefactor=" + cookie_pairs.fontsizefactor + "; path=/; expires=" + cookie_expiration.toGMTString();
}


function js_fontsizes_init() {
	obj_stylesheet = document.styleSheets[1];
	if (obj_stylesheet.rules){
		arr_css_rules = obj_stylesheet.rules;
	}
	else {
		arr_css_rules = obj_stylesheet.cssRules;
	}

	for (i=0;i<arr_css_rules.length;i++){
		rule_name = arr_css_rules[i].selectorText.toLowerCase();

		if (arr_css_rules[i].style.fontSize && arr_css_rules[i].style.fontSize.length > 0){
			
			size = parseInt(arr_css_rules[i].style.fontSize);
			if (size>1){
				css_rules[rule_name] = arr_css_rules[i];				
				fontsizes_default[rule_name] = size;
			}
		}
	}
	
}

function js_fontsize_change_click(factor){
	js_fontsize_change(factor);
	js_fontsize_save(factor);
}

function js_fontsize_change(factor) {
	for (rule in css_rules){
		if (css_rules[rule].style.fontSize && css_rules[rule].style.fontSize.length > 0){
			size = parseInt(css_rules[rule].style.fontSize);
			if (size>1){
				doit = true;
				if (css_rules_exceptions.fontsizes[rule.toLowerCase()]){
				doit = false
				}

				if (doit){
					size_new = size + parseInt(factor);
					css_rules[rule].style.fontSize = size_new + 'px';
				}
			}
		}
	}

	if (window_loaded){
		js_content_rerender();
	}

	js_resize();
}



function js_fontsize_reset() {

	for (rule in fontsizes_default){
		css_rules[rule].style.fontSize = fontsizes_default[rule] + 'px';
	}
	
	if (js_browser_accepts_cookies()) {

		cookie_pairs.fontsizefactor = 0;
		document.cookie = "fontsizefactor=" + cookie_pairs.fontsizefactor + "; path=/; expires=" + cookie_expiration.toGMTString();
	}
	

	if (window_loaded){
		js_content_rerender();
	}
	

	js_resize();
}


function js_fontsize_save(factor){
	if (js_browser_accepts_cookies()) {
		if (!cookie_pairs.fontsizefactor) {
			cookie_pairs.fontsizefactor = factor;
		}
		cookie_pairs.fontsizefactor = parseInt(cookie_pairs.fontsizefactor) + parseInt(factor);
		document.cookie = "fontsizefactor=" + cookie_pairs.fontsizefactor + "; path=/; expires=" + cookie_expiration.toGMTString();
	}
}

function js_content_rerender(){
	document.body.innerHTML = document.body.innerHTML;
}


function js_onload(){
	window_loaded = true;
	window.onresize = js_resize;
	js_resize();
}

function Fensterweite() {
  if (window.innerWidth) {
    return window.innerWidth;
  } else if (document.body && document.body.offsetWidth) {
    return document.body.offsetWidth;
  } else {
    return 0;
  }
}

function Fensterhoehe() {
  if (window.innerHeight) {
    return window.innerHeight;
  } else if (document.body && document.body.offsetHeight) {
    return document.body.offsetHeight;
  } else {
    return 0;
  }
}

function js_resize() {
	if (window_loaded){
		var array = new Array("functions_rechts");
		var obj;
	
		if (document.body.offsetWidth < 850) {
			for(i = 0; i < array.length; i++) {
				obj = document.getElementById(array[i])
				if(obj)
					obj.style.display = 'none';
			}
		} else {
			for(i = 0; i < array.length; i++) {
				obj = document.getElementById(array[i])
				if(obj)
					obj.style.display = '';
			}
		}

	}
}


function open_function(url,width,height,options)
  {
    self.msgWindow = open(url,"Fenster","width=" + width + ",height=" + height
      + ",screenX=" + (screen.width-width)/2
      + ",screenY=" + (screen.height-height)/2
      + ",dependent=yes"
      + ",left=" + (screen.width-width)/2
      + ",top=" + (screen.height-height)/2
      + options
      );
    self.msgWindow.focus();
    if (self.msgWindow.opener == null) self.msgWindow.opener = self;
  }

function OpenWindow(url, breite, hoehe, scrollbars, menue) {
	Y = (screen.height - hoehe) / 2;
	X = (screen.width - breite) / 2;
	window.open(url, 'w', 'height=' + hoehe + ',width=' + breite + ',top=' + Y + ',left=' + X + ',scrollbars=' + scrollbars + ',menu=' + menue + '');
}