//STAND: 26.06.07
/*
HISTORIE:

function TsA,TgA,TgAN()			//26.06.07 - DJ: neu: setAttribute, getAttribute, getAttribute als Number
function Tmxi()				//19.06.07 - DJ: geändert: EventHandler-Funktion für MouseOver-Grafiken auch ohne Parameter m (=0!)
function TgfC,TgpN()			//		 neu: Zugriff auf tiefere/höhere Ebenen (fest einstellbar)
function TgEI(),TgEN(),TgET() = f(e,b)	//04.05.07 - DJ: geändert: Funktionen getElementBy... auch auf beliebiges Basis-Objekt anwendbar
function S()				//02.05.07 - DJ: geändert: Statistik pers. IFrame probeweise geändert (p&&b<12?b+12:b ==> ...?8:b)
function TgEx() (+TgEpx,TgEax,...())	//27.03.07 - DJ: geändert: erweitert auf Übergabe-Möglichkeit eines Objekts (this)
function TgEpX,TgEaX()			//		 neu: Zugriff auf gleicher Ebene (analog TgEpx,TgEax = Zugriff tiefer/höher)
function TgExT()			//		 neu: Zugriff Folgeelemente-TagName ab Element x (hier Zugriff wie TgEx)
function oWtf()				//19.03.07 - DJ: neu: Fenster für HTML-target per onclick-Handler öffnen + fokussieren
TnlV,TnlDZ,TnlDI			//26.02.07 - DJ: geändert: NewsLine-/NewsTicker langsamer: Schrittweite---, Geschwindigkeit++
function fFSL()				//07.02.07 - DJ: geändert: a) Tinc() statt cssX(), b) Höhenanpassung nicht mehr bei ClickToEnlarge
function fA()				//01.02.07 - DJ: geändert: Tinc() statt cssX() + zentrales Opera-CSS: ol&ul pos.:static statt rel.
function pF()				//		 geändert: Komplettüberarbeitung Versionsabfrage, Variablen-Reset, target;
							   2 neue Parameter: o=wmode, c=CSS
function TifIDn()			//		 geändert: 3. Parameter für IFrame-Scrolling. Löschen Vorläufer-function TnsIF()
TisOP					//29.01.07 - DJ: neu: Browser-Kennung Opera
function Tsc_06_submG()			//04.01.07 - DJ: geändert: Statistik-Klickfunktion S() eingebaut
function TscFok()			//02.01.07 - DJ: vorübergehend: Sucheingabefeld: "Fokus setzen" entfernen
Anpassung an Überarbeitung sys.js	//12.12.06 - DJ: geändert: Komplette Überarbeitung des von sys.js stammenden Basis-Teils
							   Bildschirm-Abmessungen, Browser-Abfrage, Flash-Version, ...; L, O, R, ...
function TgT()				//11.12.06 - DJ: neu: aktuelle Zeit [ms]
function TgEIT()			//		 neu: Zugriff Folgeelemente-TagName ab Element-ID
function TnlRun(),TnlIni()		//15.11.06 - DJ: geändert: an ".top"-Werte "+'px'" angehängt gegen Firefox-Fehler unter XHTML
function TclrI()			//30.10.06 - DJ: neu: Clear Input-Feld (löschen / füllen)
TscLS, Tsc1,Tsc2, TscSV			//		 neu: Lokale Suche, Vorbelegungstexte, Selected Value (DropDown)
function Tsc_06_submG,_syncG,_syncLS()	//		 neu/geändert: Suchfunktionen Tsc_06_submG(), Tsc_06_syncG(e), Tsc_06_syncLS(e)
							   erweitert um Lokale Suche usw.
function fA()				//27.09.06 - DJ: geändert: Hintergrundgrafik-Überschreiben neben Header ausgeschaltet für SWL
function TifIDn()			//21.09.06 - DJ: geändert: kein height-Attribut, falls keine Höhe übergeben
TSx, function TS0(),TS2(),S()		//20.07.06 - DJ: neu/geändert: TSx=dezimal-gewandelter Timestamp TS
//col,c()),j()				//		 gelöscht: Menü: Farbsteuerung per JS, Jump to URL
//wS(),splitScreen(),WSU,WSH,WSW,WST	//		 gelöscht: Werbung im Splitscreen
function fZ()				//		 geändert: keine Werbung im Splitscreen
function TifIDn()			//		 neu: dynam. Schreiben IFrame mit ID als name; Ersatz für TnsIF()
function Tmxi()				//20.06.06 - DJ: neu: EventHandler-Funktion für MouseOver-Grafiken
function fZ()				//		 geändert: Aufruf NewsLine-Start TnlIni(), falls TnlOK gesetzt (in NewsLine-Modul)
function TSIVW()			//31.05.06 - OE: geändert: Angleichung an TS2() für Fotoshows (SI)
self.focus && EGO!=''			//16.05.06 - DJ: geändert: Selbstfokussierung nur wenn EGO definiert (!='')
function Tz2()				//04.05.06 - DJ: neu: Wandlung/Return 2 Ziffern (2-stellig '0x')
function Tsc_05_syncG()			//20.04.06 - DJ: geändert: erweitert um weitere Option-Values 7 (Wikipedia) & 10 (Business)
function Tinc()				//		 neu: Include im <head> von CSS- & JS-Dateien oder CSS direkt
TMS, function TSIVW(),TS2(),S()		//06.04.06 - DJ: geändert: "Protokoll" in TMS bereits inkl. '://'
TnlSV,TnlST,TnlV,TnlDZ,TnlDI,TnlP	//04.04.06 - DJ: neu: NewsLine-/NewsTicker-Variablen und
function TnlRun(),TnlIni(),TnlM()	//		   -Funktionen
function Tsc_05_submG()			//24.03.06 - DJ: geändert: Pfad .../toi05/... ==> .../toi/...
function Tsc_05_submG(),Tsc_05_syncG()	//20.02.06 - DJ: neu: ersetzen tsc_n_submG() & tsc_n_submG() für Suche-Relaunch
function TSIVW()			/(07.03.06 - DJ:)neu: ersetzt den direkten IVW-document.write()-Aufruf
T1px					//		 neu: 1px-Grafik - rechter Quelltext-Rand (Abkürzung)
function TS1(),TS2()			//		 neu/geändert: umbenannte Funktionen fS1(), fS2()
function TS2(),S()			//		 geändert: Anpassung an neue PI- & Click-TrafficManagement/Statistik/Verpixelung
					//		   und Personalisierung
function TS0()				//		 neu: Reset/Default für fehlende TrafficManagement/Statistik-Parameter SN, ID, ...
function TnsIF()			//		 neu: NoScript-IFrame lesen und als Script-IFrame schreiben
function S()				/(08.03.06 - DJ:)geändert: PersonalisierungsKorrektur auch im LinkBereich
function TadSky()			//16.02.06 - DJ: neu: Abfrage, ob Bildschirm breit genug für Werbung Skyscraper/Splitscreen
O=Object				//		 neu: Objekt (Abkürzung)
TMS					//		 neu: Objekt Traffic-Monitoring/Management-System
function TscFok()			//		 neu: Sucheingabefeld: Fokus setzen
function TgE...()			//17.01.06 - DJ: geändert: Vereinheitlichung Parameter
function TgEx(),TgEpx(),TgEax()		//		 geändert: Reihenfolge Parameter neu(1,2,3) = alt(1,3,2)
//function TsVI(),TsDI()		//		 geändert/gelöscht: Änderung Funktionsnamen: ==> 
function TsV(),TsD()			//		 neu/geändert: Erhöhung Parameterzahl + Änderung Funktionsnamen
function TsIG()				//		 neu: Inputfelder ausgrauen EIN/AUS
function tsc_n_submG()			//10.01.06 - DJ: geändert: Korrektur Cookie-'TSC_n'-Abfrage
function tsc_n_submG()			//05.01.06 - DJ: geändert: Einbau Cookie-'TSC_n'-Abfrage für Suchen-Weiche
function S()				//09.12.05 - DJ: geändert: Einbau aktuelle Zeit in TS und DD bei fehlendem TS
if(Ttop)Twt=TgCwt();			//07.12.05 - DJ: geändert: Aufruf der Fkt. für Ttop==1 mit Ergebnis in Twt
Ttop					//02.12.05 - DJ: neu: Ttop = 1 (self==top) / 0 (im (I)Frame)
					//		 geändert: nur self.focus() if(Ttop) (statt if(self==parent))
function TgCwt()			//		 geändert: Name globale AdServer-Var.="Ads_prf"; Aufruf der Fkt. für Ttop==1
function TgCwt()			//30.11.05 - DJ: geändert: zusätzl. Auslesen wt-Cookie der "|"-Folgezeichen
function TgCwt()			//04.-11.11.05	 geändert: Korrektur Auslesen wt-Cookie mit Folgezeichen "|" & Längenprüfung
function TgEx(),TgEpx(),TgEax()		//	   - DJ: neu: DOM-Baum-Zugriff per ID/Name/TagName direkt (x) / auf Folge/Kind-Element (px) /
					//		 auf Vorgänger/Eltern-Element (ax)   [...verschieden optimierte Versuche...]
//function TgCwt()			//10.11.05 - DJ: geändert: Korrektur Auslesen wt-Cookie mit Folgezeichen
//function TgEfC(), //TgEIf()		//09.11.05 - DJ: neu: DOM-Baum-Zugriff per ID/Name/TagName auf Folgeelement; TgEIf() weg
//function TgEIf()			//04.11.05 - DJ: neu: DOM-Baum-Zugriff per ID auf ID-Folgeelement
function TdC()				//24.10.05 - DJ: geändert: Parameter reduziert (ohne v,e)
function TgCwt()			//		 geändert: Rückgabewert '0000...' bei fehlendem wt-Cookie
self.focus()				//21.10.05 - DJ: geändert: nur self.focus() if(self==parent)
TisIE,TisGK				//		 neu: Browser-Kennung IE und Gecko
function TgEI(),TgEN(),TgET()		//		 neu: Funktionen/Abkürzungen für Zugriff DOM-Baum
function TsVI(),TsDI()			//		 neu: Visibility EIN/AUS, Display AUS/EIN inline/EIN block per DOM-ID
function TsC(),TdC(),TgC()		//10.10.05 - DJ: neu/geändert: Funktionen umbenannt: führendes "T" [alte gelten vorläufig weiter]
function TgCwt()			//		 neu: Funktion getCookie('wt')
function tsc_n_...()			//		 neu: neue Funktionen für neue Suche [alte sind weiterhin vorhanden]
HH					//		 geändert: HeaderHöhe für Refresh angehoben: 123
function sC(),dC(),gC()			//13.09.05 - DJ: geändert: Funktion getCookie() gekürzt & beschleunigt
					//		 (nicht gestaget)
function S()				//25.07.05 - DJ: geändert: Defaultwerte für (unbekannte) dateispezifische Variablen
tmD					//20.06.05 - DJ: geändert: Defaultwert neu
XX, DR,DD				//09.06.05 - DJ: Konstanten-Def. hier gegen fS2()-Fehler
function fS2(),S(); tmD,tmP		//07.06.05 - DJ: geändert: Funktionen fS2() & S(), Var.s tmS (=cts), tmD, tmP:
  cts => tmS				//		 Anpassungen für TrafficManagementSystem
function fA(){...if(HH)...}		//04.05.05 - DJ: geändert: Funktion fA(): D.write(noschatt.gif) nur if(HH)
					//		 Korrektur: else WP='/';
function sC(), dC(), gC()		//27.04.05 - DJ: neu: Funktionen setCookie() & deleteCookie()
					//		 geändert: Funktion getCookie()
function gC()				//14.03.05 - DJ: neu: Funktion getCookie()
function fS2()				//21.02.05 - DJ: fS2() mit sinnvollem Inhalt: Aufruf eigenes Zählpixel
function fS1(), fS2()			//03.02.05 - DJ: neu: fS1/2() für Statistik (zunächst leer)
					//		 l=-2/t=-2: left/top=0
function oWcS()				//09.11.04 - DJ: neu: oWcS() = oW() + close self
function oW()				//25.10.04 - DJ: Hinzunahme weiterer Parameterwerte: w=-1: Full Size-Popup,
cssX('#ftz div{}')			//06.10.04 - DJ: Spezial-CSS für Footer auf Mac-IE
WP,webappPath				//		 WebApplicationPath: geänderte Logik, Defaultwert '/'
function fFSL() statt fFS()		//19.09.04 - DJ: Umbenennung: Funktion für FotoShows-Large (max. Bildhöhe)
cssX('.ol...{}; .ul...{}')		//		 Spezial-CSS für Listen auf Mac & Mac-IE
function tsc_...()			//31.08.04 - DJ: Neu: Suche/Suchaufruf im Header (tsc = T-Online SuchCenter)
function fFS() statt fES()		//04.08.04 - DJ: Umbenennung: Funktion für FotoShows (max. Bildhöhe)
function fES()				//02.08.04 - DJ: Neu: Funktion für ErotikfotoShows (max. Bildhöhe)
function oW()				//		 Änderung: Positionsberechnung bei Popup-Zentrierung
function fA()				//		 Änderung: Hintergrundgrafik-Überschreiben neben Header 
					//		 erweitert für Suchergebnisseiten
wp=...					//20.07.04 - DJ: Einführung dynamisches wp zu statischem WP
self.focus && EGO!='_mf'		//		 Selbstfokussierung nicht im MultiMediaFenster (AutoRefresh)

funcs.js = sys.js + functions.js	//17.05.04 - DJ: Zusammenführen aller JS-Includes & -Aufrufe in 1 Datei

============================================================================================

--- functions.js (bis inkl. 17.05.04) -----:
EGO=='fs'||EGO=='as'			//17.05.04 - DJ: Hintergrund-Grau nur für Foto- & Artikelshows in JS statt in CSS
EGO='pr'				//		 Workaround für fehlendes EGO bei Druckansicht
var szmvars,KG				//		 Aufhebung der Abfrage-Einschränkung auf Nachrichten
var szmvars,KG				//06.05.04 - DJ: Korrektur Abfrage-Einschränkung auf Nachrichten
var szmvars,KG				//07.04.04 - DJ: Einführung globale Var. für IVW/AGOF-Fragebogen-Popup
					//		 vorläufig in fZ() und per Auslesen aus IVW-Pixel
function S0()				//		 Einführung interne Funktion S0() ("String ohne Abschicken") in S();
dynamisches CSS				//10.03.04 - DJ: Abfrage für Netscape/Mozilla geändert
var HH,H0;function wS(),function fA()	//		 Einführung globale Var. HH & H0, Korrektur WST & Layer-Clip in wS(),
					//		 Einsatz in fA()
//function sucHe(), onResize()		//		 rauswerfen, da überflüssig + nicht verwendet
function S(); var cts			//		 Einführung globale Var. cts für S()
col[]					//20.01.04 - DJ: erweitert um 2 Farben (BUNTE)

					//27.11.03 - DJ: Großreinemachen:
function openWindow()=oW()		//		 Erweiterung um (letzten) Parameter i, Umbenennung in oW()
function openPopup=openPWCT=openPW=oW;	//		 Ersetzen der anderen Popup-Funktionen durch oW()
function splitScreen()=wS(),WSH,WSW,WST	//		 Komplettüberarbeitung, Umbenennung in wS(); Einführung WSx
function noschatt()			//		 Komplettüberarbeitung. Ablösung von noschatt() durch
					//		 direkte Integration des Funktionsinhalts in zuErst()
function fA()				//		 Umbenennung zuErst() in fA()
function fZ()				//		 Umbenennung zuLetzt() in fZ()
function playFlash()=pF()		//		 Komplettüberarbeitung, Umbenennung in pF()
function rbT(), cbT()			//		 Neu: Radiobutton- & Checkbox-Texte klickbar
function S()				//		 Neu: ClickThrough-Statistik
					//09.12.03 - DJ: CT+'/'+... ...+'?d='+...
					//19.12.03 - DJ: IMMER Pixel holen; Stest nur noch für Anzeige

function splitScreen()			//12.11.03 - DJ: größere Höhe Splitscreen
function noschatt(), HSCH		//		 absolute Adressierung der SchattenÜberschreibGrafik
col[]					//03.11.03 - CoreMedia: Erweiterung Farbpalette für Insider/Memberzones
cssX('.tabli{...}')			//30.10.03 - DJ: Anpassung für Opera
EGO, self.name, self.focus()		//30.10.03 - DJ: Änderung der Abfrage
function pr()				//		 neu
function noschatt(), HSCH		//		 Überarbeitung, HSCH, buschatt.gif
EGO, self.name, self.focus()		//20.10.03 - DJ: neu

--------------------------------------------------------------------------------------------

--- sys.js (bis inkl. 11.02.04) -----------:
sf=0;					//11.02.04 - DJ: vorher Defaultwert gesetzt
jsDOM,isIE4,isNN4=1/0			//		 explizite Wertzuweisungen statt true/false/undefined
os,brN,brD				//		 Wertzuweisungen vereinfacht
fiBxH()					//29.01.04 - DJ: (x=D.body) aus if() rausgenommen
x					//		 Restliches X ==> x
Flash-Prüfung				//		 Version 3...7 ==> 3...8
x					//16.12.03 - DJ: globale Var. X ==> x (trotz Layer-Problemen bei NN4)
top.inner/outer/Client-Width/Height	//16.12.03 - DJ: "top."... raus wg. Domain-Fehlern z.B. bei (I)Framesets
fr=self==top?0:1;			//		   ebenso raus

============================================================================================

DOKU:

--- sys.js -----------------------------:

br = Browser (IE6.0 - NN6.2)
     brN = Name (TO / OP / IE / NN / MZ / SF); brN0 = Name im Original
//   brX = CrossBrowser-Name (IE / NN) ==>
     brF = (Cross-)Browser-Familie (IE / GK)
     brV = Version (6); brV0 = Version im Original
     brVv= Vollversion (6.0)
//brVx= CrossBrowser-Version (von Mozilla/xx) ???
     brB = brN+brV = Name + Version = Browser (IE6)
     brC0= Codename im Original (Mozilla)
     brU = User-Agent; ; brU0 = User-Agent im Original ("Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)")
     brD = DHTML-Fähigkeit (DOM / IE4 / NN4)
     brJ = Java erlaubt/enabled (1 / 0 / -1 (nicht messbar))
     brC = Cookies erlaubt/enabled (1 / 0 / -1 (nicht messbar))
     brJS= JavaScript-Version (0 / 1.0 ... 1.x)  [außerhalb sys.js-Datei]

os = Betriebs-/Operating System (WIN / MAC / UNX)

bs = Bildschirm-
     -Auflösung (1024x768):
     bsB = Breite (1024)
     bsH = Höhe (768)
     -Farbtiefe:
     bsF = Farbtiefe (24)	[==> Farbanzahl = 2 exp Farbtiefe_bsF (24 ==> 2exp24=16777216)]

fi = Fenstergröße innen (IE4:1004x578 (-ScrollbalkenBreite), IE5:1020x578, IE5.5:1260x834, NN4.51:1020x586, NN6.2:1024x614)  [Laptop/PC]:
fa = Fenstergröße außen (nicht bei IE):
     fiB,faB = Breite
     fiH,faH = Höhe
fiBxH(noBody) = Berechnung von fiB & fiH [außerhalb sys.js-Datei: fiBxH() nach <body> wg. IE / fiBxH(noBody=1) davor]

sf = Shockwave-Flash Versionsnummer (6)

D = document, W = window, N = navigator, U = 'undefined' (Abkürzungen)
O = Object (Abkürzung (sys.js)); x=new O() = leeres Objekt
sys = 1 (vorher undefiniert)
jsDOM = JavaScript/DHTML nach DOModell (1/0)
isIE4,isNN4 = Browsertyp/DHTML-Modell (jeweils 1/0)

JsV(nk) = Berechnung der JavaScript-Version (0 / 1.0 ... 1.x)  [außerhalb sys.js-Datei: JsV(brJS=1.0); nicht bei neueren IE]

--------------------------------------------------------------------------------------------

--- functions.js -----------------------:

WP= Webapplication-Pfad (inkl. Domäne) [zu TG], statisch
wp= dynamisches WP
TG= URL transparente Grafik

Ttop = 1 (self==top) / 0 (im (I)Frame)
self.name=EGO, self.focus(): Fenster-Name & Selbstfokussierung
HH,H0= Höhe Header, Default-Wert Höhe (Header & Splitscreen-Anfang - gleich!!!)

TisIE,TisGK,TisOP: Browser-Kennung IE, Gecko und Opera


Element-Zugriff per DOM-Baum:
Funktionen/Abkürzungen document.getElement<s>ByXYZ():
function TgEI(e,b), TgEN(e,b), TgET(e,b) - ...ById('Element-ID') / ...ByName('El.-Name')[index] / ...ByTagName('El.-TagName')[index]
  mit der Option, einen 2. Parameter b="Basisobjekt / Basis für Elementbezug" zu übergeben - falls nicht: Basis="D"="document"=Standardfall.
  BEISPIEL: TgET('li',TgEI('IDx'))[1].firstChild.nodeValue = Inhalt von Listenelement 2 von Element mit ID IDx (ul-Liste)
            TgET('li',TgET('ul')[3])[1].firstChild.nodeValue = Inhalt von Listenelement 2 von ul-Liste 4
function TgEx(e,m,i) - Element beliebig per Id(e) oder Objekt(this) / Name(e,Methode m=1,Index i) / TagName(e,Methode m=2,Index i)
  Funktion unabhängig von Zwischen-Whitespace (= DOM-Element: FF=ja, IE=nein)
  TgEx() wirkt direkt auf Element -x
function TgEpx(e,m,i), TgEax(e,m,i) / TgEpX(e,m,i), TgEaX(e,m,i) - wie TgEx() für Folge/Vorgänger-Elemente mit:
  -p- = Folge-Element (post-x) / -a- = Vorgänger-Element (ante-x)
   -x = Folge/Vorgänger-Element in hierarchischer Ordnung = auf tieferer/höherer Ebene (Kind,firstChild / Eltern,parentNode)
   -X = Folge/Vorgänger-Element auf gleicher Ebene (nextSibling / previousSibling)
  TgEpx(e,m,i) / TgEax(e,m,i) wirkt auf Kind-Element (-px) / Eltern-Element (-ax) auf tieferer/höherer Ebene (firstChild / parentNode)
  TgEpX(e,m,i) / TgEaX(e,m,i) wirkt auf Folge-Element (-px) / Vorgänger-Element (-ax) auf gleicher Ebene (nextSibling / previousSibling)
function TgExT(ex,et,m,i) - Folgeelemente-TagName (et) ab Element-ID/this/... (ex) {wie TgEx()}: TgExT(ex,et <,m,i>)[et-index]
  BEISPIEL: TgExT('IDx','li')[1].firstChild.nodeValue = Inhalt von Listenelement 2 von Element mit ID IDx (ul-Liste)
function TgEIT(ei,et) - Folgeelemente-TagName (et) ab Element-ID (ei): TgEIT(ei,et)[et-index]		//eigentl. überflüssig wg. TgExT()
  BEISPIEL: TgEIT('IDx','li')[1].firstChild.nodeValue = Inhalt von Listenelement 2 von Element mit ID IDx (ul-Liste)
function TgfC(e,x), TgpN(obj,x) - Zugriff von Element/Objekt e auf x. tiefere (.firstChild * x) / x. höhere (.parentNode * x) Ebene
  BEISPIEL: bei tieferen HTML-Strukturen Zugriff auf den übergeordneten Container <div><p><a ...><img onmouseover="TgpN(this,3)" ... /> ... <...>
|
Attribute:
function TsA(e,a,v,m,i) - Attribut a auf Wert/Value v setzen, andere Parameter wie TgEx(e,m,i)
function TgA(e,a,m,i) / TgAN(e,a,m,i) - Attribut a lesen / als Zahl/Number lesen, andere Parameter wie TgEx(e,m,i)
|
Sichtbarkeit:
function TsV(e,x,m,i) - Visibility AUS/EIN (x=0/1), andere Parameter wie TgEx(e,m,i)
function TsD(e,x,m,i) - Display AUS/inline/block (x=0/'i'/1 oder beliebig), andere Parameter wie TgEx(e,m,i)
  für Abwärtskompatibilität (bei reinem ID-Zugriff, vorläufig): TsV=TsVI; TsD=TsDI;
|
Ausgrauen/Deaktivieren von Input-Feldern:
function TsIG(e,x,m,i) - setInputGrey AUS (x=0: aktiv, nicht grau) / EIN (x=1: grau, nicht aktiv); andere Parameter wie TgEx(e,m,i)
  ein Input-Feld ist defaultmäßig aktiv, nicht grau (ohne Grau-Attribut)
//ÜBERARBEITEN/KÜRZEN per Input-Objekt.disable!!!
|
ACHTUNG bei Verwendung dieser Methoden direkt in HTML-Tags über (this): Funktioniert z.B. nicht in <a href="javascript:TgExyz(this)">, 
  sondern nur in Event-Handlern ==> z.B. <a href="javascript:TgExyz(This)" onclick="This=this"> !!!

aktuelle Zeit holen:
function TgT() - "getTime" [MilliSekunden seit 1.1.1970 (UNIX-Zeit)]


function cssX(css_einzeln), cssD(css_InkludeDatei): browser-typische & spezielle CSS-Definitionen
  Definition & verschiedene spezielle Anwendungen
function fFSL(): 1. Funktion bei FotoShows-Large (Erotik/PlayboyNet/normale überdim.) + ClickToEnlarge: passt Bildübergrößen an Hoch-/Querformat an

Include von CSS- & JS-Dateien oder CSS direkt:
function Tinc(css1,css2,js) - "T-Include"
  CSS- und/oder JS-Elemente dynamisch im <head> einfügen, per DOM + JS, ohne D.write(), also auch nachträglich;
  beliebige Anzahl von Elementen (einzelne Strings oder 1 gemeinsamer String für CSS!),
  für css1 = 'xyz.css' (am Anfang!!!) CSS-Datei(en) includen; <head>-Einbau = W3C-konform
  für js   = 'xyz.js' JS-Datei(en) includen
  (Programmierung am Ende: if IE else W3C)


2-stellige Zahl:
function Tz2(x) - Wandlung/Return 2 Ziffern: 2-stellig, ggf. führende '0x' [string]


Popups/Fenster:
function oW (u,n,w,h,l,t,r,s,c,k,i)  - "openWindow"
function oWcS(u,n,w,h,l,t,r,s,c,k,i) - "openWindow+closeSelf"
Parameter:
 0=u	URL [string]
 1=n	Name [string]
 2=w	width [int/0/-1=Full Size-Popup]
 3=h	height [int/0/w=-1:Full Size-Popup]
 4=l	left (Abstand von links) [int/0/-1=zentrieren/-2="0"]
 5=t	top (Abstand von oben) [int/0/-1=zentrieren/-2="0"]
 6=r	resizable [1/0]
 7=s	status (Statuszeile/Footer) [1/0]
 8=c	scrollbars [1/0/-1=auto]
 9=k	Kopf (Browser-"Kopf": Menü, Browserbuttons, URL-Zeile, Links/Favoriten) [1/0]
10=i	Titel des Popup-Fensters, für c=-1 (scrollbars=auto) bei IE! [-1=auto (Auslesen aus Datei - Vorsicht: funktioniert nicht bei unterschiedlichen Domänen popup & content!!!) / 0 (kein Titel) / String (Titel)]
Bei Übergabe nur der beiden ersten Werte URL & Name, d.h. ohne Fenster-Parameter, oder Name="ef" wird ein "normales" Browser-Fenster in Browser-Default-Einstellung geöffnet
function _w(): Hilfsfunktion zur Bereits-geöffnet-Prüfung

function oWtf(o) - "openWindow,name=target,+focus"
HTML-Link: leeres Fenster für HTML-target per onclick-Handler öffnen + fokussieren; Ziel-URL & target aus <a>-HLML-Attributen;
Aufruf: <a href="" target="" onclick="oWtf(this)">...</a>


Container:
Hilfsfunktion(en) oL,onLoad: function oL(), function onLoad(): <body ... onload="oL()">, oL() ruft onLoad()
erste Funktion (nach <body>): function fA():
	ruft ehemalige function noSchatt() = Schatten-Überschreiben (oben neben Header)
	Opera-CSS: bei Listen-Formatierung position:static statt relative (Opera 9.x - Bug)
letzte Funktion (vor </body>): function fZ():
	ruft function TnlIni() = NewsLine-Start, falls TnlOK gesetzt (in NewsLine-Modul)
	schreibt FraBo-Tag (vorläufig)


Flash:
function pF(s,v,l,w,h,m,u,y,t,a,o,c) - "playFlash"
Parameter:
 0=s	URL Shockwave-Flash-Datei [string]
 1=v	Version Flash-Datei [int]
 2=l	Flash-Loop/Dauerlauf Ein/Aus [1-t/0-f]
 3=w	Breite [int]
 4=h	Höhe [int]
 5=m	MacroMedia-Downloadlink Ein/Aus [1-t/0-f]
6...9	NoFlash-/NoScript Alternativ-Grafik (kann auch weggelassen werden => dann Default-Grafik) [alle string]:
 6=u	URL
 7=y	Link
 8=t	Target
 9=a	Alt-Text
10=o	Flash-wmode  [string: a) (leer/default) 'window'; b) 'transparent' (HG durchsichtig); c) 'opaque' (HG lichtundurchlässig)]
	b) & c): unterwerfen Flash der Browser-Layer-Hierarchie (z-index)
11=c	CSS-Klasse für HTML-Flash-Aufruf
Aufruf Flash (return: akt. Flash-Datei darstellbar 1-true/0-false):


Drucken:
function pr() - "print"


Inputfeld leeren / füllen (bedingt):
function TclrI(o,v,vx) - "clearInput"
  Inputfeld (o = Objekt), falls es den Inhalt v hat, a) leeren oder b) füllen mit vx (falls vx vorhanden)


Radiobutton- & Checkbox-Texte:
function rbT(o), cbT(o)
Texte ebenfalls klickbar, wie Button & Box


Statistik / Verpixelung / Traffic-Management/Monitoring-System (tmXYZ, TMxyz):
TMS: Objekt (Arrays) für Traffic-Monitoring/Management-System: TMS.IVW, TMS.PI, TMS.CT = ['Protokoll://','Domäne/Pfad','Typ']
function TS0()
  Reset/Default für fehlende TrafficManagement/Statistik-Parameter SN, ID, ...
  erzeugt TSx (siehe unten)
T1px: 1px-Grafik - rechter Quelltext-Rand (Abkürzung)

ClickThrough-Statistik:
function S(z,l,b,t,s) - "Statistik"
Parameter:
 0=z Ziel-ID ['Base36']
 1=l Linkdoc-ID (optional, für erweiterte Statistik: Element mit Link, z.B. Teaser; wenn unbenutzt: 0) ['Base36']
 2=b Bereich [int] : FRAME_...: 0=NAVI, 1=HEAD, 2=CONT, 3=BREADCRUMB, 4=FOOT, 5=UNSPECIFIED, 6=NEWSTICKER, 7=MMFENSTER, 8=TOOLBOX
 3=t LinkTyp [int] : LINKTYPE_...: 0=UNSPECIFIED, 1=IMAGE, 2=TEXT, 3=MODHEADER, 4=FLAECHE
 4=s Showitem (optional, für Fotoshows, ab 0; wenn unbenutzt: entfällt) [int]
Benutzung statischer Variablen/Konstanten:
 SN  System-Nummer [int]
 ID  Page-ID der gesamten Seite (gleiche Darstellung wie im CMS: Base10/Dezimal) [int als 'String']
 TS  Timestamp der Generierung der Page-ID-Seite [Sekunden seit 1.1.1970] ['Base36']
 TSx dezimal-gewandelter Timestamp TS [int]
// CT  Host/Basis-URL Server ClickThrough-Zähl-Pixel ['String'] (veraltet!!!)
 Grafik <img name="pix" ...> für ältere Browser, die das JS-Image-Objekt noch nicht kennen
Aufgabe/Ausgabe:
 Anfordern des parametrisierten ClickThrough-Zähl-Pixels über errechnete URL bei Link-Klick
 Übergabe aller Parameter als Base10/Dezimal-Zahlen, entsprechende Wandlung der Base36-Zahlen
 vorher Reset dateispezifischer Variablen, falls unbekannt
//function S0(z,l,b,t,s): Hilfsfunktion zur String-Berechnung (ohne Abschicken/Anforderung)

weitere Größen:
 PA  Pfad zu ID ['String']
 TI  Topic-ID [int als 'String']
 TPD T-Online Portal-Domäne ['String']
 KG  Kategorisierung (IVW & AGOF) [int als 'String' (ggf. mit führender 0)]
 szmvars = 'angebotskennung//contentyp//code' (IVW & AGOF) ['String']
	   (angebotskennung=3.Level-Domäne='toi'; contentyp='CP'; code=Kategorisierung KG)
<!—- SZMFRABO VERSION="1.1" -->
<script language="Javascript">var szmvars="angebotskennung//contentyp//code";</script>
<script src="http://angebotskennung.ivwbox.de/2004/01/survey.js" language="Javascript"></script>
<!-- /SZMFRABO -->

Seitenaufruf-Statistik:
function TS1() (=fS1 alt)
  VOR IVW-Pixel: zunächst leer
function TSIVW()
  IVW-Pixel-Aufruf: gekapselt in Funktion, ersetzt den direkten IVW-document.write()-Aufruf
function TS2() (=fS2 alt)
  NACH IVW-Pixel: ruft eigenes Zählpixel auf, analog IVW-Pixel und bisherigem Personalisierungspixel


Suche/Suchaufruf im Header (tsc = T-Online SuchCenter):  (Versionen: ._n_. / ._05_. / ._06_.)
tsc_submG(g){}    tsc_ocrG(){}    tsc_jmpG(t){}    tsc_ctpG(c,t,p){}    tsc_syncG(e){}
//tsc_n_submG(g)  //tsc_n_syncG(e)
//Tsc_05_submG(g) //Tsc_05_syncG(e)
TscLS, Tsc1,Tsc2, TscSV: Lokale Suche, Vorbelegungstexte, Selected Value (DropDown)
function Tsc_06_submG():   Suchfunktion Submit/Abschicken
function Tsc_06_syncG(e):  Suchfunktion Synchronisieren der Parameter für Suchräume allgemein
function Tsc_06_syncLS(e): Suchfunktion Synchronisieren und Umschalten Lokale Suche
function TscFok(): Fokus auf Sucheingabefeld setzen


Cookies:
  Gesamt-Cookie = "Cookie1; Cookie2; Cookie3; ...; CookieN" mit CookieX = "Name=Wert"
function TgC(n) - "getCookie (name)"
  Parameter: n=CookieName
  Return = CookieWert unescaped / null
function TsC(n,v,e,p,d,s) - "setCookie (name, value[, expire[, path[, domain[, secure]]]])"
  Parameter:
  name, value: ASCII-Zeichen außer ";", "," & "Whitespace"; value wird escaped
  [, expire[, path[, domain[, secure]]]]: gestaffelt optional
  expire: a) ganze Zahl: rel. Zeit in Sekunden (-1 = Löschen)
  	  b) 'String':   abs. Zeit als Datum+opt.Uhrzeit 'JJJJ,MM,TT[,SS,mm,ss]' in normaler Schreibweise
  path:	  Pfad in der Domäne, oft '/'
  domain: Domäne (mindestens 2 Perioden), z.B. 't-online.de'
  secure: Ja/Nein: true/false oder 1/0
function TdC(n,p,d,s) - "deleteCookie (name[, path[, domain[, secure]]])"
  Parameter wie bei setCookie() mit value & expire: beliebig
function TgCwt() - "getCookie ('wt')"
  wt-Cookie holen und aufsplitten in Array mit den Einzel-Werten [Strings]:
  Cookie:  ab cd ef gh ij kl m n op qr st uv w  xy z  <|abc:def:ghi:...> [123456]
  Array[]: 0  1  2  3  4  5  6 7 8  9  10 11 12 13 14   15               (Timestamp)
  Return = Array wt-Cookie-Werte (Strings, unescaped) / '0'/'00' bei nicht-vorhandenem wt-Cookie
           [15]='abc:def:ghi:...' / '0'


Passive Personalisierung:
function TifIDn(url,h,scl)
  dynamisches Schreiben IFrame mit Seiten-ID als IFrame-name
  Parameter: url=URL/SRC, h=Höhe (default: kein height-Attribut), scl=Scrolling ('auto'/'yes'/'no'; default: 'no')


NewsLine (NewsTicker/Laufband/Marquee):
Tnl...	T-NewsLine:
function TnlIni() - "Initialisierung"
function TnlRun() - "Lauf"
function TnlM(obj,x) - "onMouseOver/Out" (MOver:x=1=Pause / MOut:x=0=weiter) (obj=this (optional))
Tnl0	Objekt zu ID #nl0; Tnl0s  Style-Objekt dazu
Tnl1	Objekt zu ID #nl1; Tnl1s  Style-Objekt dazu
TnlH	aktuelle Höhe
TnlSV	StartVerzögerung [ms]
TnlST	StartTopoffset [px]
TnlV	Geschwindigkeit (==> Schritt-Intervall [ms] = 1000/Geschwindigkeit)
TnlDI	Differenz [px] pro Schritt-Intervall (konst); TnlDZ Differenz [px] Zwischenmerker (Var)
TnlP	Schalter für Pause bei MouseOver (0=aus: keine Pause / 1=an: Pause)
TnlOK	Schalter für Vorhandensein des NewsLine-Moduls in der Seite; wird am Ende des Moduls gesetzt (nicht hier!!!): TnlOK=1;
	löst - wenn gesetzt - am Seitenende in fZ() den Start TnlIni() aus


MouseOver-Grafiken:
function Tmxi(o,m,h) - "MouseOver-Schaltfunktion für Images" (EventHandler)
Parameter:
  o=Objekt (this)
  m=Maus-Aktion (onmouseout: 0/-, -over: 1, -down: 2, -up: 3)
  h=Höhe (optional, ansonsten Grafik-Eigenhöhe)
MouseOver-Grafiken zeigen bei Überfahren mit der Maus ein anderes Bild (2 Zustände: Grundzustand=mouseOut=0 - MausDrüber=mouseOver=1), 
ggf. bei Drücken der Maus ein 3. (3 Zustände = 2 Z. + zusätzlich: Drücken=mouseDown=2 - Loslassen=mouseUp=3), wobei mouseUp-3=mouseOver-1.
MouseOver-Grafiken sind zusammengesetzte Grafiken: Oben Grund-Bild (normale, einfache Höhe), darunter MouseOver-Bild (doppelte Höhe), 
darunter MouseDown-Bild (3-fache Höhe); sie liegen als CSS-Hintergrund-Grafik unter einer transparenten Grafik mit der normalen, einfachen 
Höhe; sichtbar durch das transparente "Fenster" hindurch ist jeweils nur der eine Teil der Grafik, der durch diese Funktion ausgewählt 
wurde. Die Auswahl/Veränderung erfolgt durch Verschieben der Hintergrund-Grafik (nach oben) unter dem "Fenster".
Durch die Verwendung von einer (1) Grafik entfällt MouseOver-Preload, ohne dass Nachlade-Verzögerung bei mouseOver eintritt.
Aufruf-Beispiel:
	<img src="/t.gif" style="background-image:url(grafik.gif)" width="W" height="H" (border="0") alt="A" (title="A") 
	onmouseover="Tmxi(this,1)" onmouseout="Tmxi(this,0)" onmousedown="Tmxi(this,2)" onmouseup="Tmxi(this,3)" />


sys= Semaphor (für Folgeaufruf von sys.js)

============================================================================================
*/

D=document,W=window,L=location,O=Object;brJS=x=0;
function JsV(nk){D.write('<script language="JavaScript1.'+nk+'">brJS=1.'+nk+';JsV('+(nk+1)+')<\/script>')}
function fiBxH(){if(D.body){fiB=D.body.clientWidth;fiH=D.body.clientHeight} else if(W.innerWidth){fiB=W.innerWidth;fiH=W.innerHeight}return fiB}
function rxV(x,n){D.write('<script type="text/javascript">(/'+x+'[ \\/]?(\\d*\\.?\\d*)(\\.(\\d))?(\\.(\\d))?/).exec(brU); brV=parseFloat((R=RegExp).$1+R.$3+R.$5);<\/script>');if(n)brN=n}
function uX(s){return brU.indexOf(s)+1}
if(typeof(sys)==(U='undefined'))with(N=navigator){brV0=appVersion;brC0=appCodeName;brU=(brU0=userAgent).toLowerCase();os=uX('win')?'WIN':uX('mac')?'MAC':uX('x')?'UNX':'-';
brN=(brN0=appName).toLowerCase();brF=brN=brN.indexOf('microsoft')>=0?'IE':brN.indexOf('netscape')>=0?'NN':'-';if(uX('gecko')){brF='GK';isGK=1}else{isGK=0;if(uX('t-online'))brN='TO'}
if(uX('netscape'))rxV('netscape\\d*',0);else if(uX('firefox')){rxV('firefox\\d*','FF')}else if(uX('safari')){rxV('safari','SF');if((''+brV).indexOf('.')<0)brV='0.'+brV}else if(uX('gecko')){rxV('rv:','MZ')}else if(uX('opera')){rxV('opera','OP')}else brV=parseFloat((x=uX('msie'))?brU.substring(x+4):brV0);if(brV>=4)R=RegExp;
brB=brN+(brVv=parseInt(brV));if(brV==brVv)brV+='.0';if(W.screen){bsB=screen.width;bsH=screen.height;bsF=screen.colorDepth}else bsB=bsH=bsF=0;fiB=fiH=0;if(W.outerWidth){faB=W.outerWidth;faH=W.outerHeight}else faB=faH=0;
brJ=typeof(N.javaEnabled)==U?-1:javaEnabled()?1:0;brC=typeof(x=N.cookieEnabled)==U?-1:x?1:0;isIE=D.all?1:0,isIE4=(!(jsDOM=D.getElementById?1:0)&&brIE)?1:0,isNN4=D.layers?1:0,brD=jsDOM?'DOM':isIE4?'IE4':isNN4?'NN4':'-';
sf=0;if(((x=N.mimeTypes)&&(x=x['application/x-shockwave-flash']))?(x=x.enabledPlugin):0)sf=parseFloat(x.description.substring('Shockwave Flash '.length));
else if(brF=='IE'&&os=='WIN'){delete f;D.write('<script type="text/vbscript">on error resume next:dim i,o,f:f=0:for i=4 to 20:o=0:o=IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash."&i)):if o then f=i else exit for end if:next<\/script>');sf=f}
brX=brF;sys=1}


if(typeof(WP)==U)if(typeof(webappPath)!=U)WP=webappPath;else WP='/';	//!!!
wp=WP=='/'?'http://www.t-online.de/':WP;
TG=WP+'t.gif';

if(typeof(EGO)==U){if(self.name=='pr')EGO='pr';else EGO=''}else if(!self.name)self.name=EGO;
if((Ttop=self==top?1:0)&&EGO!=''&&EGO!='_mf'&&self.focus)self.focus();
H0=123;if(typeof(HH)==U)HH=EGO=='tob'?123:H0;

TisIE=brU.indexOf('msie')>=0||D.all?1:0; TisGK=brU.indexOf('gecko')>=0?1:0; TisOP=brU.indexOf('opera')>=0?1:0;

function TgEI(e,b) {return (b?b:D).getElementById(e)}
function TgEN(e,b) {return (b?b:D).getElementsByName(e)}
function TgET(e,b) {return (b?b:D).getElementsByTagName(e)}
function TgEx(e,m,i) {if(typeof(e)=='object')return e; if(m){if(!i)i=0; return m==1?TgEN(e)[i]:TgET(e)[i]} else return TgEI(e)}
function TgEpx(e,m,i) {var r; return (r=TgEx(e,m,i).firstChild).nodeType==3?r.nextSibling:r}
function TgEax(e,m,i) {var r; return (r=TgEx(e,m,i).parentNode).nodeType==3?r.previousSibling:r}
function TgEpX(e,m,i) {var r; return (r=TgEx(e,m,i).nextSibling).nodeType==3?r.nextSibling:r}
function TgEaX(e,m,i) {var r; return (r=TgEx(e,m,i).previousSibling).nodeType==3?r.previousSibling:r}
function TgExT(ex,et,m,i) {return TgEx(ex,m,i).getElementsByTagName(et)}
function TgEIT(ei,et) {return TgEI(ei).getElementsByTagName(et)}	//!!!
function TgfC(e,x) {for(var i=0;i<x;i++) e=e.firstChild; return e}
function TgpN(e,x) {for(var i=0;i<x;i++) e=e.parentNode; return e}
function TsA(e,a,v,m,i) {TgEx(e,m,i).setAttribute(a,v)}
function TgA(e,a,m,i) {return TgEx(e,m,i).getAttribute(a)}
function TgAN(e,a,m,i) {return Number(TgEx(e,m,i).getAttribute(a))}
function TsV(e,x,m,i) {TgEx(e,m,i).style.visibility=x?'visible':'hidden'} TsVI=TsV;	//!!!
function TsD(e,x,m,i) {TgEx(e,m,i).style.display=x==0?'none':x=='i'?'inline':'block'} TSDI=TsD;	//!!!
function TsIG(e,x,m,i) {var g=TgEx(e,m,i),a='disabled'; if(x) g.setAttribute(a,1); else g.removeAttribute(a)}

function TgT() {return (new Date()).getTime()}

function cssX(css) {D.write('<style type="text/css">'+css+'<\/style>')}
function cssD(css) {D.write('<link rel="stylesheet" type="text/css" href="'+css+'" />')}
if(brN=='IE'||brN=='TO')cssX('.tabli{margin-right:-3px}');else if(brX=='NN'&&brV>=5)cssX('.lrb{margin-top:1px}');
if(EGO=='fs'||EGO=='as')cssX('.wb{background-color:#e0e0e0}');
if(os=='MAC')cssX('.ol div'+(brN=='IE'?',.ul p':'')+'{left:0;margin:0}'+(brN=='IE'?'#ftz div{overflow:visible}':''));
function fFSL() {if(EGO!='cte'&&fiBxH()>=600)Tinc('#fslb{height:400px}')}
fFS=fFSL;	//!!!

function Tinc(css1,css2,js) {var a=arguments,l=a.length,c='',i=0,h,j,s,x;(s=D.createElement('style')).type='text/css';(h=TgET('head')[0]).appendChild(s);
for(;i<l;) {if((x=a[i++]).indexOf('.js')!=-1){(j=D.createElement('script')).type='text/javascript';j.src=x;h.appendChild(j);} else c+=x.indexOf('.css')!=-1?'@import url('+x+');':x;}
if(x=s.styleSheet) x.cssText=c; else s.appendChild(D.createTextNode(c));
}

function Tz2(x) {return x>9?''+x:'0'+x}

function _w() {this.w=W; this.vor=0}
function oW(u,n,w,h,l,t,r,s,c,k,i){
var x=0,a=(c&&c<0&&brX=='IE')?(c=0):1,f,p,F=new _w();
if(w==-1){x=l=t=-2;w=screen.availWidth;h=screen.availHeight}
if(arguments.length==2||n=='ef')f=F.w.open('',n);
else{f=F.w.open('',n,p=((w?(',width='+w+(l?(',left='+(l==-1?((bsB-w-10)/2):(l==-2?0:l))):'')):'')+(h?(',height='+h+(t?(',top='+(t==-1?((bsH-h-50)/2):(t==-2?0:t))):'')):'')+(r?',resizable':'')+(s?',status':'')+(c?',scrollbars':'')+(k?',menubar,toolbar,location,directories':'')));if(f.vor){f.close();f=F.w.open('',n,p)}}
if(x)f.resizeTo(w,h);
if(a)f.location.href=u;
else with(f.document){open();write('<html><head></head><body leftmargin="0" topmargin="0"><iframe src="'+u+'" id="'+(n='i'+n)+'" width="100%" height="100%" frameborder="0" marginwidth="0" marginheight="0"></iframe></body></html>');close();if(i)title=i=='-1'?eval('f.'+n+'.document.title'):i}
if(W.focus)f.focus();f.vor=1;
}
openPopup=openPWCT=openPW=openWindow=oW;	//!!!
function oWcS(u,n,w,h,l,t,r,s,c,k,i) {if(arguments.length>2)oW(u,n,w,h,l,t,r,s,c,k,i);else oW(u,n);self.close()}
function oWtf(o) {W.open('',o.target).focus()}

function TadSky() {return fiBxH()>820}

function onLoad(){}	//((( !!! )))
function oL() {onLoad()}

var szmvars,KG;
function fA() {if(fiBxH()>790&&EGO!='swl'){if(EGO=='tsc')Tinc('#nosch{left:980px}');if(HH)D.write('<div id="nosch"><img src="'+wp+(EGO=='tob'?'bu':'no')+'schatt.gif" width="5" height="'+(HH+16)+'" /></div>')} if(TisOP)Tinc('.sta .ul p,.sta .ol div{position:static}')}
zuErst=fA;	//!!!
function fZ(){
x=D.images.pix; if(x&&ID!=46&&location.href.indexOf('https:')<0) {(/.*CP\/([\w]*);/).exec(x.src);szmvars='toi//CP//'+(KG=RegExp.$1);D.write('<script src="http://toi.ivwbox.de/2004/01/survey.js" type="text/javascript"><\/script>')}
if(typeof(TnlOK)!=U) setTimeout('TnlIni()',TnlSV);
}
zuLetzt=fZ;	//!!!

function pF(s,v,l,w,h,m,u,y,t,a,o,c) {var x,r=v?sf>=v:false,f='width="'+w+'" height="'+h+'" ',l=l?'true':'false';
if(r)x=(c?'<span class="'+c+'">':'')+'<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" '+(m?'codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version='+v+',0,0,0" ':'')+f+' /><param name="movie" value="'+s+'" /><param name="quality" value="high" /><param name="loop" value="'+l+'" />'+(o?'<param name="wmode" value="'+o+'" />':'')+'<embed src="'+s+'" '+f+'" quality="high" loop="'+l+'" swliveconnect="false" type="application/x-shockwave-flash"'+(m?' pluginspage="http://www.macromedia.com/go/getflashplayer"':'')+(o?' wmode="'+o+'"':'')+'></embed></object>'+(c?'</span>':'');
else x=(y?'<a href="'+y+(t?'" target="'+t:'')+'">':'')+'<img src="'+(u?u:'t.gif')+'" '+f+' alt="'+(a?a:'')+'" border="0" />'+(y?'</a>':'');
D.write(x);return r;
}
playFlash=pF;	//!!!

function pr() {if(window.print) print(); else alert('Ihr Browser kann leider nicht aus einer Seite heraus drucken!')}

function TclrI(o,v,vx) {if(o.value==v)o.value=vx?vx:''}

function rbT(o) {o.firstChild.checked=true}
function cbT(o) {if(o){if(cbt)o.firstChild.checked=o.firstChild.checked?false:true;cbt=1}else cbt=0}cbt=1;

DR=escape(D.referrer); DD=Date.parse(new Date()); XX='';
TMS=new O();
T1px=' width="1" height="1" align="right" />';
	tmD=(x=location.protocol)+'//toi'+(x=='https:'?'ssl':''); tmS='';
(TS0=new O()).d=0;
TS0.f=new Function("","if(!this.d){var i,k=['SN','ID','TS','PA','KG'],v=[1,0,0,'',''];for(i in k)eval('if(typeof('+k[i]+')==U)'+k[i]+'=v[i]');TSx=TS?parseInt(TS,36):DD/1000} this.d=1");

function TS1(){} fS1=TS1;	//!!!
function TSIVW(){
if(TMS.IVW){  //neu:
D.write('<img src="'+TMS.IVW[0]+TMS.IVW[1]+TMS.IVW[2]+'/'+KG+';'+PA+'.html'+(typeof(SI)!=U?'/'+SI:'')+','+ID+'?r='+DR+'&d='+DD+'" name="pix"'+T1px);
}
else{  //alt:
D.write('<img src="http://toi.ivwbox.de/cgi-bin/ivw/CP/'+KG+';'+PA+'.html'+(typeof(SI)!=U?'/'+SI:'')+','+ID+'?r='+DR+'&d='+DD+'" name="pix"'+T1px);
}
}
function TS2(){
if(TMS.PI){  //neu:
TS0.f();
var p=EGO=='ifp',i=SN+'.'+(p?name.substring(1):ID);
D.write('<img src="'+TMS.PI[0]+TMS.PI[1]+TMS.PI[2]+'/'+(p?(';/Personalisierung'+PA+'/'+SN+'.'+ID+'/'+i):(KG+';'+PA+'.html'+(typeof(SI)!=U?'/'+SI:'')))+','+i+'.'+TSx+'?d='+DD+(p?'':'&r='+DR+'&s='+escape("scr="+bsB+"x"+bsH+"x"+bsF+(XX?';x='+XX:'')))+'" name="rpix"'+T1px);
}
else{  //alt:
x=location.protocol;
if( (tmD=( (tmP=D.pix?D.pix.src:0) ?tmP.substr(0,tmP.indexOf('.')):x+'//intern')+(x=='https:'?'ssl':'')) =='https://spixlssl' || tmD=='https://spixlcontssl') tmD='https://toissl';
D.write('<img name="rpix" width="1" height="1" align="right" src="'+tmD+'.passul.t-online.de/cgi-bin/CP/'+KG+';'+PA+'.html'+(typeof(SI)!=U?'/'+SI:'')+','+SN+'.'+ID+'.'+parseInt(TS,36)+'?r='+DR+'&d='+DD+'&s='+escape("scr="+bsB+"x"+bsH+"x"+bsF)+(XX?';x='+XX:'')+'" />');
}
}fS2=TS2;	//!!!

function S(z,l,b,t,s){
if(TMS.CT){  //neu:
TS0.f();
var p=EGO=='ifp';if((l=p?ID:parseInt(l,36))>0)l=SN+'.'+l;
//(new Image()).src=TMS.CT[0]+TMS.CT[1]+TMS.CT[2]+ '/'+SN+'.'+(p?name.substring(1):ID)+','+SN+'.'+parseInt(z,36)+','+l+','+(p&&b<12?b+12:b)+','+(p&&t>0&&t<4?t+4:t)+','+TSx+'?d='+DD;
  (new Image()).src=TMS.CT[0]+TMS.CT[1]+TMS.CT[2]+ '/'+SN+'.'+(p?name.substring(1):ID)+','+SN+'.'+parseInt(z,36)+','+l+','+(p&&b<12?8   :b)+','+(p&&t>0&&t<4?t+4:t)+','+TSx+'?d='+DD;
}
else{  //alt:
var v=['SN','ID','TS'];for(x in v)eval('if(typeof('+v[x]+')==U)'+v[x]+'=0');
tmS=tmD+'.passul.t-online.de/cgi-bin/XP/'+SN+'.'+ID+(k=',')+SN+'.'+parseInt(z,36)+k+((parseInt(l,36)>0)?SN+'.':'')+parseInt(l,36)+k+b+k+t+k+(TS?parseInt(TS,36):(DD=Date.parse(new Date()))/1000)+'?d='+DD;
if(typeof(Stest)==U)Stest=0;if(Stest)alert(tmS); if(D.images)(new Image()).src=tmS; else if(D.pix)D.pix.src=tmS;
}
}

TscLS=0; Tsc1='was?'; Tsc2='wo?';
function tsc_submG(g) {var f=D.tsc_topsrch,t,i=0; tsc_syncG(g.q); if(!(f.q.value.match(/\w/))) return false; f.ptl.value='std'; for(;i<f.tpc.length;i++) if(f.tpc[i].checked) {t=f.tpc[i].value;f.context.value=t+'-tab';f.classification.value=f.context.value+'_'+t+'_'+f.ptl.value;break} if(g.name==f.name) return true; f.submit(); return false}
function tsc_ocrG() {var f=D.tsc_topsrch; if(f.ocr && tsc_submG(f)) {f.ocr.value=(f.ocr.value=='yes')?'no':'yes';f.submit()}}
function tsc_jmpG(t) {tsc_ctpG(t+'-tab',t,'std')}
function tsc_ctpG(c,t,p) {var f=D.tsc_topsrch,i=0; f.context.value=c; f.ptl.value=p; for(;i<f.tpc.length;i++) if(f.tpc[i].value==t) {f.tpc[i].checked=true;break} f.classification.value=c+'_'+t+'_'+p; f.submit()}
function tsc_syncG(e) {if(D.tsc_newsrch) {var f=(e.form.name=='tsc_topsrch')?D.tsc_newsrch:D.tsc_topsrch,d,i=0; for(;i<f.elements.length;i++) {if((d=f.elements[i]).name==e.name && (e.type!='radio'||d.value==e.value)) {if(e.type=='radio')d.checked=true;else d.value=e.value; break}}}}
function tsc_n_submG(g) {var f=D.tsc_topsrch;f.ptl.value='std';var t=f.tpc.value;f.context.value=t+'-tab';var c='toi05';if(TgC('TSC_n')==c)f.mandant.value=c;f.classification.value=f.context.value+'_'+t+'_'+f.ptl.value;return true}
function tsc_n_syncG(e) {if(D.tsc_newsrch){var f=(e.form.name=='tsc_topsrch')?D.tsc_newsrch:D.tsc_topsrch;for(var i=0;i<f.elements.length;i++){var d=f.elements[i];if(d.name==e.name && (e.type!='radio'||d.value==e.value)){if(e.type=='radio')d.checked=true; else d.value=e.value; break;}}}}
function Tsc_05_submG(g) {var f=D.tsc_topsrch; Tsc_05_syncG(f.suchraum); var c=f.context,t=f.tpc,p=f.ptl,m=f.map,x=f.q.value.toLowerCase(),i,w=['http://','www.','.de','.com','.net']; f.classification.value=c.value+'_'+t.value+'_'+p.value; if(x==''){open('http://suche.t-online.de/toi/html/de/startseite_de.html','tsc').focus();return false} for(i in w)if(x.indexOf(w[i])>-1){c.value='internet-tab';t.value='internet';m.value='1';m.disabled=0;break} return true}
function Tsc_05_syncG(e) {var f=D.tsc_topsrch,t='internet',c=t+'-tab',d=1; if(e.name=='suchraum') {switch(e.value){case'1':break;case'10':d=0;case'2':c='themen-tab';t='themen';break;case'3':c='shop-tab';t='shop';break;case'4':c='news';break;case'5':c='img';break;case'6':c='multimedia';break;case'7':c='wiki-tab';break} f.context.value=c;f.tpc.value=t;if(f.dev)f.dev.disabled=d}}
function Tsc_06_submG() {S('5zi7m','0',1,1); var f=D.tsc_topsrch; Tsc_06_syncG(f.suchraum); var c=f.context,t=f.tpc,p=f.ptl,m=f.map,x=f.q.value.toLowerCase(),i,w=['http://','www.','.de','.com','.net']; f.classification.value=c.value+'_'+t.value+'_'+p.value; TclrI(f.q,Tsc1); TclrI(f.wo,Tsc2); if(x==''&&!TscLS){open('http://suche.t-online.de/toi/html/de/startseite_de.html','tsc').focus();return false} for(i in w)if(x.indexOf(w[i])>-1){c.value='internet-tab';t.value='internet';m.value='1';m.disabled=0;break} return true}
function Tsc_06_syncG(e) {var f=D.tsc_topsrch,c='internet-tab',t='internet',d=1; switch(e.value){case'1':break;case'10':d=0;case'2':c='themen-tab';t='themen';break;case'3':c='shop-tab';t='shop';break;case'4':c='news';break;case'5':c='img';break;case'6':c='multimedia';break;case'7':c='wiki-tab';break;case'-1':c='local';t='std';break} f.context.value=c; f.tpc.value=t; if(f.dev)f.dev.disabled=d}
function Tsc_06_syncLS(e) {var v=e.value,ls=v==-1; if(v*TscSV<0){TgEI('lwas').style.width=ls?'154px':'308px'; TsD('lwo',ls?'i':0); TgEI('lwo').disabled=ls?0:1; TgEI('limg').src=TgEI('limg').src.replace(ls?/google/:/suchde/,ls?'suchde':'google'); if(ls){TclrI(TgEI('lwas'),'',Tsc1); TclrI(TgEI('lwo'),'',Tsc2)} else TclrI(TgEI('lwas'),Tsc1)} TscSV=v;TscLS=ls; Tsc_06_syncG(e)}
//function TscFok() {TgEN('q')[0].focus()}
function TscFok() {}

function TgC(n) {var c,s=(c=D.cookie).indexOf(n+='='),e; return s<0?null:unescape(c.substring(s+n.length,(e=c.indexOf(';',s))<0?c.length:e))} gC=TgC;
function TsC(n,v,e,p,d,s){
if(e) if (typeof(e)=='number')e=new Date((new Date()).getTime()+e*1000); else e=(e=e.split(',')).length==3?new Date(e[0],e[1]-1,e[2]):new Date(e[0],e[1]-1,e[2],e[3],e[4],e[5]);
D.cookie=n+'='+escape(v)+(e?'; expires='+e.toGMTString():'')+(p?'; path='+p:'')+(d?'; domain='+d:'')+(s?'; secure':'')
} sC=TsC;
function TdC(n,p,d,s) {TsC(n,0,-1,p,d,s)} dC=TdC;
function TgCwt() {var a=[],b='0',c,x; if(!(c=TgC('wt'))||c.indexOf('[')<26)c='00000000000000000000000000|0[]';
Ads_prf=x=c.replace(/^(..)(..)(..)(..)(..)(..)(.)(.)(..)(..)(..)(..)(.)(..)(.).*/, "a[0]='$1';a[1]='$2';a[2]='$3';a[3]='$4';a[4]='$5';a[5]='$6';a[6]='$7';a[7]='$8';a[8]='$9';a[9]='$10';a[10]='$11';a[11]='$12';a[12]='$13';a[13]='$14';a[14]='$15';");
if((i=c.indexOf('|'))>0&&(j=c.indexOf('['))>i+1) b=c.substring(i+1,j); Ads_prf+="b='"+b+"';";
eval(x); a[15]=b; return a
}
if(Ttop) Twt=TgCwt();

function TifIDn(url,h,scl) {D.write('<iframe name="x'+ID+'" src="'+url+'" width="100%"'+(h?' height="'+h+'"':'')+' scrolling="'+(scl?scl:'no')+'" frameborder="0"></iframe>')}

TnlSV=500; TnlH=TnlST=0; TnlV=15; TnlDZ=TnlDI=1; TnlP=1;
function TnlRun() {if(parseInt(Tnl0s.top)>-TnlH) {Tnl0s.top=parseInt(Tnl0s.top)-TnlDZ+'px'; Tnl1s.top=parseInt(Tnl1s.top)-TnlDZ+'px'} if(parseInt(Tnl0s.top)<=-TnlH) Tnl0s.top=TnlH+'px'; if(parseInt(Tnl1s.top)<=-TnlH) Tnl1s.top=TnlH+'px'}
function TnlIni() {(Tnl0s=(Tnl0=TgEI('nl0')).style).top=TnlST; TnlH=Tnl0.offsetHeight; (Tnl1s=(Tnl1=TgEI('nl1')).style).top=TnlST+TnlH+'px'; Tnl1.innerHTML=Tnl0.innerHTML; setInterval('TnlRun()',parseInt(1000/TnlV))}
function TnlM(obj,x) {TnlDZ=x?TnlP?0:TnlDZ:TnlDI}

function Tmxi(o,m,h) {o.style.backgroundPosition='0 -'+(m?(m==3?1:m)*(h?h:o.height):0)+'px'}

sys=-1;


if(isNN4) cssD(wp+'stylesnn4.css');
