﻿// global.js

///////////////////////////////////////////////////////////////////////////
// Einstellungen
///////////////////////////////////////////////////////////////////////////

// URLs
var HOME_ONLINE =   "realization.info";
var HOME_OFFLINE =  "D:/Internet/realization";
var HOME_EMAIL =    "realization@realization.info";

// Beschriftung
var S_TITEL =       "Die Erfahrung der Realität";
var S_LOGO_TITEL =  "Ô punaise!";
var S_SUCHE =       "Suche";
var S_SUCHE_TITEL = "Diese Website von Yahoo! durchsuchen lassen";
var S_KONTAKT_TITEL = "Herzlich willkommen! Klicken Sie hier, um eine Email zu schreiben.";
var S_TEXT_VERSIONSINFO_IN = "\u25bcVersionsinfo";
var S_TEXT_VERSIONSINFO_OUT = "\u25b2Versionsinfo: Bei dem Text auf dieser Seite handelt es sich um die ursprüngliche, d.h. nicht um die redaktionell überarbeitete und gedruckte oder sonstwie veröffentlichte Version.";

// Pfade
var LINK_HOME =     "index.html";
var LINK_CSS =      "sys/global.css";
var LINK_LOGO =     "sys/logo.gif";
var LINK_KONTAKT =  "kontakt.html";

// Menüs
var MENU1 = ["Der Krieg gegen den islamischen Terror",
             "Afghanistan",
             "texte/afghanistan/index.html",
             "Afghanistan: Der Krieg gegen Taliban und Al Qaeda",
             "Irak",
             "texte/irak/index.html",
             "Irak: Die Verteidigung der Republik",
             "Iran",
             "texte/iran/index.html",
             "Iran: Der Krieg gegen das Regime",
             "Libanon",
             "texte/libanon/index.html",
             "Libanon: Die Entwaffnung der Hizballah",
             "Somalia",
             "texte/somalia/index.html",
             "Somalia: Clans, Piraten, Sharia-Courts"];
var MENU2 = ["Banden- und Bürgerkiege",
             "Piraten",
             "texte/somalia/somalia002.html",
             "Die Piraten Somalias",
             "Kongo",
             "texte/kongo/index.html",
             "Kongo: Der erste afrikanische Weltkrieg",
             "Kolumbien",
             "texte/kolumbien/index.html",
             "Kolumbien: Der Krieg gegen Paramilitärs, Drogenmafia und linke Revolutionäre",
             "Jugowslawien",
             "texte/jugoslawien/index.html",
             "Jugoslawien: Der Vorstoß zum Rückfall in die Völkerschlacht"];
var MENU3 = ["Die frühere Sowjetunion",
             "Kaukasus",
             "texte/kaukasus/index.html",
             "Kaukasus: Der Jihad gegen Russland",
             "Baltikum",
             "texte/baltikum/index.html",
             "Baltikum: Bewährungsprobe nach National- und Realsozialismus",
             "Ukraine",
             "texte/ukraine/index.html",
             "Ukraine: Nationbuilding zwischen Europa und Eurasien"];
var MENU4 = ["Variété der Ideologien",
             "Deutsche Ideologie",
             "texte/deutscheideologie/index.html",
             "Deutsche Ideologie: Die Einheit von Arbeitsmarkt und Sozialismus",
             "Linke Ideologie",
             "texte/linkeideologie/index.html",
             "Linke Ideologie: Antikapitalismus und Antizionismus",
             "Globale Ideologie",
             "texte/international/index.html",
             "Globale Ideologie: Diesseits der Staatengemeinschaft"];

// Seitendimension
// WIDTH_PAGE und HEIGHT_PAGE werden zunächst auf die
// Dimension des Browserfensters gesetzt, dann in Endlayout
// mit der Dimension der Seite verglichen.
// - Ist die Seitenbreite größer als die Fensterbreite
//   wird die Seitenbreite auf die Fensterbreite reduziert.
// - Ist die Seitenhöhe kleiner als die Fensterhöhe
//   wird die Seitenhöhe auf die Fensterhöhe erweitert.
// SIZE_PAGE_BORDER muss mit der in global.css in
// div.GesamteSeite angegebenen Randbreite übereinstimmen.
var WIDTH_PAGE =                0;
var HEIGHT_PAGE =               0;
var SIZE_PAGE_BORDER =          25;

// Farben für die Animation von Links und Buttons
var LINK_COLOR_OVER =           "#dd0000";
var RED_BTN_COLOR_OVER =        "#dd0000";
var GREEN_BTN_COLOR_OVER =      "#008800";
var BLACK_BTN_COLOR_OVER =      "#666666";
var LINK_COLOR_TEXTMENU =       "#0000ff";

///////////////////////////////////////////////////////////////////////////
// Textmenü
///////////////////////////////////////////////////////////////////////////

var ID_TEXTMENU = "TextMenu"; 
var ID_TEXTSPALTE = "TextSpalte"; 
var TEXTSPALTE_WIDTH = 0;
var TEXTSPALTE_MIN = 200;
var TEXTSPALTE_MAX = 0;
var TEXTSPALTE_ZOOMX = 50;
var TEXTSPALTE = null;
var ID_ZOOM_MINUS = "ZoomMinusx";
var ID_ZOOM_PLUS = "ZoomPlusx";
var ZOOM_MINUS = null;
var ZOOM_PLUS = null;

///////////////////////////////////////////////////////////////////////////
// Systemvariabeln, die in InitApplication() initialisiert werden.
///////////////////////////////////////////////////////////////////////////

var APP_URL = null;
var APP_EMAIL = null;
var APP_BROWSER_NAME = null;
var APP_BROWSER_VERSION = 0;
var APP_BROWSER_MSIE = false;
var APP_BROWSER_FF = false;
var APP_WINVERSION = 0;

///////////////////////////////////////////////////////////////////////////
// Helper
///////////////////////////////////////////////////////////////////////////

// Javascript Module laden

function LoadJsModule(newmsrc,newmsrcid)
{
	var h = document.getElementsByTagName("head")[0];
	var s = document.createElement('script');
	s.id = newmsrcid;
	s.type = "text/javascript";
	s.src = newmsrc;
	h.appendChild(s);
}

// body-/window.onload handler hinzufügen

function AddOnLoadHandler(newf)
{
	var oldf = window.onload;
	if(typeof window.onload != "function")
	{
		window.onload = newf;
	}
	else
	{
		window.onload = function()
		{
			oldf();
			newf();
		}
	}
}

// Fenstergröße ermitteln

function GetWindowWidth()
{
    return (window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth || screen.width);
}

function GetWindowHeight()
{
    return (window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight || screen.height);
}

// Windows Version

function GetWinVersion()
{
	var s = navigator.userAgent;
	var i = s.indexOf("Windows NT");

	APP_WINVERSION = 0;

	if( i != -1 )
	{
		APP_WINVERSION = Number(s.charAt(i+11));
	}
}

// Browser Name und Version ermitteln

function GetBrowser()
{
	var ie = "MSIE ";
	var ff = "Firefox/";
	var s = navigator.userAgent;

	APP_BROWSER_NAME = null;
	APP_BROWSER_VERSION = null;
	APP_BROWSER_MSIE = false;
	APP_BROWSER_FF = false;

	// Try Internet Explorer
	if( s.indexOf(ie) != -1 )
	{
		APP_BROWSER_NAME = navigator.appName;
		APP_BROWSER_VERSION = Number(s.split(ie)[1].substring(0,3)).toPrecision(2);
		APP_BROWSER_MSIE = true;
		return;
	}

	// Try Firefox
	if( s.indexOf(ff) != -1 )
	{
		APP_BROWSER_NAME = "Firefox";
		APP_BROWSER_VERSION = Number(s.split(ff)[1].substring(0,3)).toPrecision(2);
		APP_BROWSER_FF = true;
		return;
	}

	// Andere
	APP_BROWSER_NAME = navigator.appName;
	APP_BROWSER_VERSION = Number(navigator.appVersion.charAt(0));
	return;
}

///////////////////////////////////////////////////////////////////////////
// Links und Buttons animieren bei onmouseover/onmouseout
///////////////////////////////////////////////////////////////////////////

var oldColor = null;
var outElement = null;

function MouseOver()
{
    var e = null;
	if( APP_BROWSER_MSIE )
	{
		e = event.srcElement;
	}
	else
	{
		e = this;
	}
	if( !e )
	{
		return;
	}
	oldColor = e.style.color;
	outElement = e;
	if( e.tagName.toLowerCase() == "a" )
	{
		e.style.color = LINK_COLOR_OVER;
	}
	else
	if( e.className == "TextMenu" )
	{
		e.style.backgroundColor = LINK_COLOR_TEXTMENU;
	}
	else
	if( e.tagName.toLowerCase() == "button" )
	{
    	if( e.className == "Red" )
	    {
		    e.style.backgroundColor = RED_BTN_COLOR_OVER;
	    }
	    else
    	if( e.className == "Green" )
	    {
		    e.style.backgroundColor = GREEN_BTN_COLOR_OVER;
	    }
	    else
    	if( e.className == "Black" )
	    {
		    e.style.backgroundColor = BLACK_BTN_COLOR_OVER;
	    }
	}
	else
	if( e.tagName.toLowerCase() == "div" )
	{
        e.style.backgroundColor = LINK_COLOR_OVER;
	}
}

function MouseOut()
{
	if( !outElement )
	{
		return;
	}
	if( outElement.tagName.toLowerCase() == "a" )
	{
		outElement.style.color = oldColor;
	}
	else
	{
		outElement.style.backgroundColor = oldColor;
	}
	outElement = null;
}

function BodyClicked(e)
{
	if( APP_BROWSER_MSIE )
	{
		e = event.srcElement;
	}
	else
	{
		e = e.target;
	}
	if( !e )
	{
		return;
	}
	if( IsMenu(e) )
	{
    	MenuClicked(e);
	}
	else
	{
    	if( VISIBLE_MENU )
	    {
        	HideVisibleMenu();
	    }
	}
}

///////////////////////////////////////////////////////////////////////////
// Elemente initialisieren
///////////////////////////////////////////////////////////////////////////

function InitBody()
{
	document.getElementsByTagName("body")[0].onclick = BodyClicked;
}

function InitLinks()
{
	var x = document.links;
	if(!x)
	{
		return;
	}
	var e;
	var i = 0;
	var l = x.length;
	while(i < l)
	{
		e = x[i];
		if( e && !e.onmouseover )
		{
			e.onmouseover = MouseOver;
			e.onmouseout = MouseOut;
			if( !APP_BROWSER_MSIE )
			{
				e.onclick = MouseOut;
			}
		}
		i++;
	}
}

function InitButtons()
{
	var x = document.getElementsByTagName("button");
	if(!x)
	{
		return;
	}
	var e;
	var i = 0;
	var l = x.length;
	while(i < l)
	{
		e = x[i];
		if( e && e.className )
		{
			e.onmouseover = MouseOver;
			e.onmouseout = MouseOut;
		}
		i++;
	}
}

// Für Browser, die kein CSS border-spacing kennen:
// cellpadding und cellspacing entfernen.

function InitTables()
{
	if( APP_BROWSER_MSIE && APP_BROWSER_VERSION > 7 )
	{
		return;
	}
	var x = document.getElementsByTagName("table");
	if(!x)
	{
		return;
	}
	var e;
	var i = 0;
	var l = x.length;
	while(i < l)
	{
		e = x[i];
		if( e )
		{
			e.cellPadding = "0px";
			e.cellSpacing = "0px";
		}
		i++;
	}
}

///////////////////////////////////////////////////////////////////////////
// Menü
///////////////////////////////////////////////////////////////////////////

var VISIBLE_MENU = null;

function IsMenu(m)
{
	return ( m && m.tagName.toLowerCase() == "div" && (m.className == "Menu" || m.className == "MenuOver" || m.className == "MenuShow") );
}

function IsMenuItems(mi)
{
	return ( mi && mi.tagName.toLowerCase() == "table" && (mi.className == "MenuItem" || mi.className == "MenuItemOver") )
}

// Das zu einer Tabelle von Menüelementen gehörende Menü ermitteln

function GetMenu(mi)
{
	if( !IsMenuItems(mi) )
	{
		return null;
	}
	var m;
	if( !(m = mi.parentNode) || IsMenu(m) )
	{
		return null;
	}
	return m;
}

// Die zu einem Menü gehörende Tabelle seiner Elemente ermitteln

function GetMenuItems(m)
{
	if( !IsMenu(m) )
	{
		return null;
	}
	var mi;
	var n = APP_BROWSER_MSIE ? 1 : 2;
	if( !(mi = m.parentNode) || !(mi = mi.childNodes[n]) || !IsMenuItems(mi) )
	{
		return null;
	}
	return mi;
}

function IsMenuVisible(m)
{
    var mi = GetMenuItems(m);
    return (mi && mi.style.visibility == "visible");
}

function ShowMenu(m)
{
    var mi = GetMenuItems(m);
	if( !mi )
	{
		return;
	}
	if( VISIBLE_MENU )
	{
	    if( m != VISIBLE_MENU )
	    {
		    HideVisibleMenu();
    	}
    	else
	    {
		    return;
    	}
	}
    mi.style.visibility = "visible";
	m.className = "MenuShow";
    VISIBLE_MENU = m;
}

function HideVisibleMenu()
{
    var mi;
	if( !VISIBLE_MENU || !(mi = GetMenuItems(VISIBLE_MENU)) )
	{
		return;
	}
    mi.style.visibility = "hidden";
    if( VISIBLE_MENU.className != "MenuOver" )
    {
	    VISIBLE_MENU.className = "Menu";
	}
    VISIBLE_MENU = null;
}

function MenuClicked(e)
{
	var mi;
	if( !e || !(mi = GetMenuItems(e)) )
	{
		return;
	}
	if( VISIBLE_MENU && e != VISIBLE_MENU )
	{
	    HideVisibleMenu();
	}
	if( mi.style.visibility != "visible" )
	{
    	ShowMenu(e);
	}
	else
	{
    	e.className = "MenuOver"
    	HideVisibleMenu();
	}
}

function MouseOverMenu()
{
    var e = null;
	if( APP_BROWSER_MSIE )
	{
		e = event.srcElement;
	}
	else
	{
		e = this;
	}
	if( !e )
	{
		return;
	}
	if( (e.className == "Menu") )
	{
    	e.className = "MenuOver";
    	if( VISIBLE_MENU )
	    {
        	if( e != VISIBLE_MENU )
	        {
        	    HideVisibleMenu();
        	    ShowMenu(e);
    	    }
    	    return;
    	}
	}
	if( (e.tagName.toLowerCase() == "a") && !(e = e.parentNode) )
	{
	    return;
	}
	if( e.className == "Menu" )
	{
    	e.className = "MenuOver";
	}
	else
	if( e.className == "MenuItem" )
	{
    	e.className = "MenuItemOver";
	}
}

function MouseOutMenu()
{
    var e = null;
	if( APP_BROWSER_MSIE )
	{
		e = event.srcElement;
	}
	else
	{
		e = this;
	}
	if( !e )
	{
		return;
	}
	if( e.className == "MenuOver" && !IsMenuVisible(e) )
	{
    	e.className = "Menu";
	}
	else
	if( e.className == "MenuItemOver" )
	{
    	e.className = "MenuItem";
	}
}

function InitMenu()
{
	var t = document.getElementById("MenuBar");
	if(!t || !t.rows)
	{
		return;
	}
    var c = t.rows[0].cells;
	if(!c)
    {
		return;
	}
	var e;
	var i = 0;
	var l = c.length;
	while(i < l)
	{
		e = c[i];
		if( e && (e = e.firstChild) && IsMenu(e) )
		{
			e.onmouseover = MouseOverMenu;
			e.onmouseout = MouseOutMenu;
		}

		var n = APP_BROWSER_MSIE ? 1 : 2;
		if( (e = c[i].childNodes[n]) && IsMenuItems(e) && e.rows )
		{
    		if( e.offsetWidth < c[i].offsetWidth )
    		{
    		    e.style.width = c[i].offsetWidth + "px";
    		}
            var rmi = e.rows;
            for( ir = 0; ir < rmi.length; ir++ )
            {
        		if( (e = rmi[ir].cells) && (e = e[0]) && (e.tagName.toLowerCase() == "td") )
	        	{
    	    		e.onmouseover = MouseOverMenu;
	    	    	e.onmouseout = MouseOutMenu;
            		if( (e = e.firstChild) && (e.tagName.toLowerCase() == "a") )
	            	{
        	    		e.onmouseover = MouseOverMenu;
	        	    	e.onmouseout = MouseOutMenu;
                    }
                }
            }
		}
		i++;
	}
}

// Eine Menüspalte schreiben

function WriteMenuColumn(m)
{
	document.writeln("<td class='Menu'><div class='Menu'>"+m[0]+"</div>");
	if( m.length > 1 )
	{
	    document.writeln("<table class='MenuItem'>");
	    for( i = 1; i < (m.length - 2); i += 3 )
	    {
	        document.writeln("<tr><td class='MenuItem' onclick=\"location='"+APP_URL+m[i+1]+"';\" title='"+m[i+2]+"'><a class='MenuItem' href='"+APP_URL+m[i+1]+"' title='"+m[i+2]+"'>"+m[i]+"</a></td></tr>");
	    }
	    document.writeln("</table>");
	}
	document.writeln("</td>");
}

///////////////////////////////////////////////////////////////////////////
// Kontakt-Menu
///////////////////////////////////////////////////////////////////////////

function MouseOverKontakt(e)
{
	if( !e && !(e = event.srcElement) )
	{
		return;
	}
   	e.className = "KontaktOver";
}

function MouseOutKontakt(e)
{
	if( !e && !(e = event.srcElement) )
	{
		return;
	}
   	e.className = "Kontakt";
}

///////////////////////////////////////////////////////////////////////////
// Statuszeile am Ende der Seite.
///////////////////////////////////////////////////////////////////////////

function Statuszeile()
{
	document.writeln("<div class='Statuszeile' id='Statuszeile'></div>");
}

// Text in der Statuszeile anzeigen

function ShowStatuszeile(msg)
{
	var e = document.getElementById("Statuszeile");
	if(e)
	{
		if(e.style.display != "block")
		{
			e.style.display = "block";
		}
		if(msg)
		{
			e.innerHTML = msg;
		}
	}
}

///////////////////////////////////////////////////////////////////////////
// StartPage
// Seite öffnen. Muss unmittelbar nach <body> aufgerufen werden.
///////////////////////////////////////////////////////////////////////////

function StartPage()
{
// Seite öffnen
	document.writeln("<div class='GesamteSeite' id='GesamteSeite'>");

// Start Titelzeile1
	document.writeln("<div class='Titelzeile1' title='"+HOME_ONLINE+"'><a class='Titelzeile1' href='"+APP_URL+LINK_HOME+"' title='"+HOME_ONLINE+"'>"+HOME_ONLINE+"</a></div>");
// Ende Titelzeile1

// Start Titelzeile2
	document.writeln("<table class='Titelzeile2'>");
	document.writeln("<tr class='Titelzeile2' id='Titelzeile2'>");
	document.writeln("<td class='Titel'>"+S_TITEL+"</td>");
	document.writeln("<td class='Logo'><img class='Logo'><img class='Logo' id='Logo' src='"+APP_URL+LINK_LOGO+"' alt='"+S_LOGO_TITEL+"' title='"+S_LOGO_TITEL+"'></img></td>");
	document.writeln("<td class='Suche'>");
	document.writeln("<form method='get' action='http://search.yahoo.com/search'>");
	document.writeln("<div class='Suche' method='get' action='http://search.yahoo.com/search'>");
	document.writeln("<input type='text' name='p' id='p'></input>");
	document.writeln("<button class='Red' type='submit' title='"+S_SUCHE_TITEL+"'>"+S_SUCHE+"</button>");
	document.writeln("<input type='hidden' name='fr' value='yscpb'></input>");
	document.writeln("<input type='hidden' name='vs' value='"+APP_URL+"'></input>");
	document.writeln("</div>");
	document.writeln("</form>");
	document.writeln("</td>");
	document.writeln("</tr>");
	document.writeln("</table>");
// Ende Titelzeile2

// Start Menüzeile
	document.writeln("<div class='MenuBar'>");
	document.writeln("<table class='MenuBar' id='MenuBar'>");
	document.writeln("<tr>");

    WriteMenuColumn(MENU1);
    WriteMenuColumn(MENU2);
    WriteMenuColumn(MENU3);
    WriteMenuColumn(MENU4);

	document.writeln("<td class='Kontakt'><div class='Kontakt' onclick=\"location='"+"mailto:redaktion@realization.info"+"';\" title='"+S_KONTAKT_TITEL+"' onmouseover='MouseOverKontakt(this);' onmouseout='MouseOutKontakt(this);'>Kontakt</div></td>");

	document.writeln("</tr>");
	document.writeln("</table>");
	document.writeln("</div>");
// Ende Menüzeile
}

///////////////////////////////////////////////////////////////////////////
// Seite schließen
///////////////////////////////////////////////////////////////////////////

function EndPage()
{
	document.writeln("</div>");
// Seite geschlossen

	Statuszeile();

	AddOnLoadHandler(EndLayout);
}

///////////////////////////////////////////////////////////////////////////
// Layout abschließen
///////////////////////////////////////////////////////////////////////////

function EndLayout()
{
	
   	var sz = document.getElementById("Statuszeile");
   	if( sz )
   	{
    	ShowStatuszeile(location);
   	}

	var ts = document.getElementById("TextSeite");
	if( ts )
	{
	    InitTextSeite(ts);
	}

	InitBody();
	InitTables();
	InitLinks();
	InitButtons();
	InitMenu();
    ResizePage();
}

function ResizePage()
{
	var tz2 = document.getElementById("Titelzeile2");
	var lgo = document.getElementById("Logo");
	if( tz2 && lgo )
	{
	    lgo.style.height = (tz2.clientHeight - 1) + "px";
	}

	var seite = document.getElementById("GesamteSeite");
   	var sz = document.getElementById("Statuszeile");

	if( !seite || !sz )
	{
	    return;
	}

	if( seite.offsetWidth > WIDTH_PAGE )
	{
	    seite.style.width = (WIDTH_PAGE - (SIZE_PAGE_BORDER*2)) + "px";
	}

    sz.style.width = seite.clientWidth + "px";

	if( seite.offsetHeight + sz.offsetHeight < HEIGHT_PAGE )
	{
	    seite.style.height = (HEIGHT_PAGE - (SIZE_PAGE_BORDER*2) - sz.offsetHeight) + "px";
	}
}

///////////////////////////////////////////////////////////////////////////
// Textdokument initialisieren
///////////////////////////////////////////////////////////////////////////

function InitTextSeite(ts)
{
	if( !ts || ts.tagName.toLowerCase() != "table" )
	{
	    return;
	}

	var e = null;
	if( ts.rows && ts.rows[0].cells && (e = ts.rows[0].cells[0]) )
	{
        e.style.width = "25%";
	}

	if( (e = document.getElementById("TextVersionsinfo")) )
	{
        e.innerHTML = S_TEXT_VERSIONSINFO_IN;
        e.onclick = SwitchVersionsinfo;
        e.style.cursor = "pointer";
	}

	TEXTSPALTE = document.getElementById(ID_TEXTSPALTE);
	if( TEXTSPALTE )
	{
		ShowTextmenu();
	}
}

///////////////////////////////////////////////////////////////////////////
// Textdokument Versionsinfo ein/-ausblenden
///////////////////////////////////////////////////////////////////////////

function SwitchVersionsinfo()
{
    var e = null;
	if( APP_BROWSER_MSIE )
	{
		e = event.srcElement;
	}
	else
	{
		e = this;
	}
	if( !e )
	{
		return;
	}

    if(e.innerHTML == S_TEXT_VERSIONSINFO_IN)
    {
        e.innerHTML = S_TEXT_VERSIONSINFO_OUT;
    }
    else
    {
        e.innerHTML = S_TEXT_VERSIONSINFO_IN;
    }
}

///////////////////////////////////////////////////////////////////////////
// Textmenü anzeigeb
///////////////////////////////////////////////////////////////////////////

function ShowTextmenu()
{
	if( !TEXTSPALTE )
	{
		return;
	}

	var tm = document.getElementById(ID_TEXTMENU);
	if( !tm )
	{
		return;
	}

	var s = "<table class='TextMenu'><tr class='TextMenu'>";
	s = s + "<td>";
	s = s + "Textspalte";
	s = s + "</td>";
	s = s + "<td class='TextMenu'>";
	s = s + "<table><tr>";
	s = s + "<td>";
	s = s + "<div class='TextMenu' id='"+ID_ZOOM_MINUS+"' onclick='ZoomTextSpalte(-1);'>-</div>";
	s = s + "</td>";
	s = s + "<td>";
	s = s + "<div class='TextMenu' id='"+ID_ZOOM_PLUS+"' onclick='ZoomTextSpalte(1);'>+</div>";
	s = s + "</td>";
	s = s + "</tr></table>";
	s = s + "</td>";
	s = s + "</tr></table>";

	tm.innerHTML = s;

	ZOOM_MINUS = document.getElementById(ID_ZOOM_MINUS);
	ZOOM_PLUS = document.getElementById(ID_ZOOM_PLUS);

	if( !ZOOM_MINUS || !ZOOM_PLUS )
	{
		return;
	}

    ZOOM_MINUS.onmouseover = MouseOver;
	ZOOM_MINUS.onmouseout = MouseOut;
    ZOOM_PLUS.onmouseover = MouseOver;
	ZOOM_PLUS.onmouseout = MouseOut;

    ZOOM_MINUS.title = "schmaler";
    ZOOM_PLUS.title = "breiter";

    TEXTSPALTE_WIDTH = TEXTSPALTE.clientWidth;
    TEXTSPALTE_MAX = TEXTSPALTE_WIDTH;
}

///////////////////////////////////////////////////////////////////////////
// Textmenü Textspalte zoomen
///////////////////////////////////////////////////////////////////////////

var ZOOM_MINUS_DISABLED = false;
var ZOOM_PLUS_DISABLED = false;

function ZoomTextSpalte(direction)
{
	if(!TEXTSPALTE)
	{
		return;
	}
	var w = TEXTSPALTE.clientWidth;
	if(direction == 1)
	{
		if(ZOOM_PLUS_DISABLED)
		{
			return;
		}
		if(w == TEXTSPALTE_MAX)
		{
			DisableZoomButton(ZOOM_PLUS,true);
			ZOOM_PLUS_DISABLED = true;
			return;
		}
		w += TEXTSPALTE_ZOOMX;
		if(w >= TEXTSPALTE_MAX)
		{
			TEXTSPALTE.style.width = TEXTSPALTE_MAX + "px";
		}
		else
		{
			TEXTSPALTE.style.width = w + "px";
		}
		if(ZOOM_MINUS_DISABLED)
		{
			DisableZoomButton(ZOOM_MINUS,false);
			ZOOM_MINUS_DISABLED = false;
		}
	}
	else
	{
		if(ZOOM_MINUS_DISABLED)
		{
			return;
		}
		if(w == TEXTSPALTE_MIN)
		{
			DisableZoomButton(ZOOM_MINUS,true);
			ZOOM_MINUS_DISABLED = true;
			return;
		}
		w -= TEXTSPALTE_ZOOMX;
		if(w <= TEXTSPALTE_MIN)
		{
			TEXTSPALTE.style.width = TEXTSPALTE_MIN + "px";
		}
		else
		{
			TEXTSPALTE.style.width = w + "px";
		}
		if(ZOOM_PLUS_DISABLED)
		{
			DisableZoomButton(ZOOM_PLUS,false);
			ZOOM_PLUS_DISABLED = false;
		}
	}
}

///////////////////////////////////////////////////////////////////////////
// Textmenü Zoom-Button disable true/false
///////////////////////////////////////////////////////////////////////////

function DisableZoomButton(btn,b)
{
	if(b)
	{
		btn.onmouseout();
		btn.onmouseover = null;
		btn.onmouseout = null;
		btn.style.cursor = "no-drop"; // "not-allowed";
	}
	else
	{
		btn.onmouseover = MouseOver;
		btn.onmouseout = MouseOut;
		btn.style.cursor = "pointer";
	}
}

///////////////////////////////////////////////////////////////////////////
// Programm Starten:
// - URLs initialisieren
// - Browser ermitteln
// - Betriebssystem ermitteln
// - Monitorauslösung ermitteln
// - Bei schmalem Monitor Stylesheets zoomen
///////////////////////////////////////////////////////////////////////////

function InitApplication()
{
	var prot = location.protocol;
	var online = (prot == "http:");
	var home = online ? HOME_ONLINE : HOME_OFFLINE;
	APP_URL = prot + "//" + home + "/";
	APP_EMAIL = HOME_EMAIL;
	document.writeln("<link rel='stylesheet' type='text/css' href='"+APP_URL+LINK_CSS+"'/>");
	GetWinVersion();
	GetBrowser();
	GetMonitor();
}

// Monitorauflösung ermitteln und
// ggf. Zoom-Faktor festlegen

function GetMonitor()
{
	WIDTH_PAGE = GetWindowWidth();
	HEIGHT_PAGE = GetWindowHeight();
}

///////////////////////////////////////////////////////////////////////////
// Go...
///////////////////////////////////////////////////////////////////////////

InitApplication();
