// ------------------------------------------------------------------
// FUP GENERALS
// ------------------------------------------------------------------

// Init
var loading_complete=false;
var wu_fe_init_stack=new Array();
window.onload=wu_fe_init;

// preloader
function wu_fe_init() {
	// OnLoad Init
	for (var a=0; a<wu_fe_init_stack.length; a++) {eval(wu_fe_init_stack[a]);}
	loading_complete=true;
}


var wu_fe_key_pressed=0;
var wu_fe_hotkey_pressed=new Array(255);
var wu_fe_hotkey_href=new Array(255);
var wu_fe_click_handled=false;
var wu_fe_click_x=0;
var wu_fe_click_y=0;
var wu_fe_mouse_x=0;
var wu_fe_mouse_y=0;
var wu_fe_dropdown_active=null;

document.onclick=wu_fe_click;
// document.onmousemove=wu_fe_mousemove;
document.onkeydown=wu_fe_keydown;
document.onkeyup=wu_fe_keyup;
function wu_fe_keycode(e) {
	if (!e) {if (window.event) {e = window.event;} else {return 0;}}
	if (typeof(e.which)=='number') {return e.which;}
	if (typeof(e.keyCode)=='number') {return e.keyCode;}
	if (typeof(e.charCode)=='number') {return e.charCode;}
	return 0;
}
function wu_fe_keydown(e)	{wu_fe_key_pressed=wu_fe_keycode(e); wu_fe_hotkey_pressed[wu_fe_key_pressed]=true; return wu_fe_hotkeys(wu_fe_key_pressed);}
function wu_fe_keyup(e) 	{wu_fe_key_pressed=0; wu_fe_hotkey_pressed[wu_fe_keycode(e)]=false; if (wu_fe_keycode(e)==18) {wu_fe_hotkey_pressed[17]=false; /* Opera + AltGr = 17 + 18 */}}
function wu_fe_click(e)		{if (window.event) {wu_fe_click_x=window.event.clientX; wu_fe_click_y=window.event.clientY;} else {wu_fe_click_x=e.pageX; wu_fe_click_y=e.pageY; wu_fe_dropdown_pos(wu_fe_dropdown_active);} if (wu_fe_click_handled) {wu_fe_click_handled=false;} else {wu_fe_dropdown_hide(wu_fe_dropdown_active);}}
function wu_fe_mousemove(e){e = e || window.event; if (e.pageX || e.pageY)	{wu_fe_mouse_x=e.pageX; wu_fe_mouse_y=e.pageY;} else {wu_fe_mouse_x=e.clientX + document.body.scrollLeft - document.body.clientLeft; wu_fe_mouse_y=e.clientY + document.body.scrollTop - document.body.clientTop;}}

function wu_fe_hotkeys(key) {
	if (key==17 || (!wu_fe_hotkey_pressed[17] && key!=13 && key!=27)) {return true;}
	if (wu_fe_hotkey_href[key]) {eval(wu_fe_hotkey_href[key]); return false;}
	return true;
}

// ------------------------------------------------------------------
// General
// ------------------------------------------------------------------

// global params
var my_user_id=0;
var my_aff_partner_id=0;
var my_register_href="/register";

// wird an diversen Stellen benötigt für display:block/table-row Browserweiche
var MSIEOffset = navigator.appVersion.indexOf('MSIE');
var isIE = (MSIEOffset > 0 ? true : false);
if (isIE) {
	var versionIE = parseFloat(navigator.appVersion.substring(MSIEOffset + 5, navigator.appVersion.indexOf(";", MSIEOffset)));
}

// ------------------------------------------------------------------
// Messenger Popup
// ------------------------------------------------------------------
var pop_messenger_win=null;
function pop_messenger(url, window_properties)
{
	if (!window_properties) {
		window_properties = "width=230,height=600,left=600,top=150,scrollbars=yes,location=no,resizable=yes";
	}
	if (!pop_messenger_win || pop_messenger_win.closed) {
		pop_messenger_win=window.open(url, "pop_messenger_win", window_properties);
	}
	if (pop_messenger_win) { pop_messenger_win.focus(); }
	pop_messenger_win.opener = self;
	return false;
}

var pop_memo_win=null;
// ------------------------------------------------------------------
// Boss
// ------------------------------------------------------------------
wu_fe_hotkey_href[27]='boss();';
var boss_active=false;
var boss_node_backup=new Array();
var boss_body_backup="";
var boss_title_backup="";
var boss_messenger_url_backup="";
function boss() {
	if (window.name != 'main') {
		try // when parent has browsed to another site access to self.opener.location.href is denied
		{
			// when in sub-frame pass function call to top element
			if (top && top.name != window.name) {
				top.boss();
				return;
			}
			if (!self.opener || self.opener.closed || !self.opener.location.href) {
				self.close();
			} else if (self.opener.name != 'main') {
				self.opener.close();
				self.close();
			} else {
				opener.boss();
			}
		}
		catch (e)
		{
			self.close();
		}
		return;
	}
	var boss_obj=document.getElementById('boss');
	var body_obj=document.getElementById('body');
	if (!boss_obj || !body_obj) {return;}
	if (boss_active) {
		boss_active=false;
		boss_obj.style.display='none';
		body_obj.className=boss_body_backup;
		document.title=boss_title_backup;
		for (var a=0; a<body_obj.childNodes.length; a++) {
			if (body_obj.childNodes[a].id!='boss') {
				body_obj.childNodes[a].style.display=boss_node_backup[a];
			}
		}
		if (boss_messenger_url_backup) {
			pop_messenger(boss_messenger_url_backup, boss_messenger_window_backup);
			boss_messenger_url_backup="";
		}
	} else {
		boss_active=true;
		boss_obj.style.display='block';
		boss_body_backup=body_obj.className;
		body_obj.className="";
		boss_title_backup=document.title;
		document.title='Tabelle 1';
		for (var a=0; a<body_obj.childNodes.length; a++) {
			if (body_obj.childNodes[a].id!='boss') {
				boss_node_backup[a]=body_obj.childNodes[a].style.display;
				body_obj.childNodes[a].style.display='none';
			}
		}
		if (pop_messenger_win) {
			if (pop_messenger_win.innerWidth > 0) {
				messenger_win_width = pop_messenger_win.innerWidth;
				messenger_win_height = pop_messenger_win.innerHeight;
			} else {
				messenger_win_width = pop_messenger_win.document.body.clientWidth;
				messenger_win_height = pop_messenger_win.document.body.clientHeight;
			}
			if (pop_messenger_win.screenLeft) {
				messenger_win_left = pop_messenger_win.screenLeft;
				messenger_win_top = pop_messenger_win.screenTop;
			} else {
				messenger_win_left = pop_messenger_win.screenX;
				messenger_win_top = pop_messenger_win.screenY;
			}
			boss_messenger_url_backup=pop_messenger_win.location.href;
			boss_messenger_window_backup = "width=" + messenger_win_width + ",height=" + messenger_win_height + ",left=" + messenger_win_left + ",top=" + messenger_win_top + ",scrollbars=yes,location=no,resizable=yes";
			pop_messenger_win.close();
		}
		if (pop_memo_win) {
			pop_memo_win.close();
		}
		if (pop_chat_win) {
			pop_chat_win.close();
		}
		if (pop_clubmail_notify_win) {
			pop_clubmail_notify_win.close();
		}
	}
}
