/*
	Datei:    index.js
	Autor:    Joachim Gohlke
*/

// Wenn der iFrame-Inhalt direkt aufgerufen wird, muss das komplette Framset (index.html + iFrame) nachgeladen werden.
// index.html

// Funktion zum Austauschen der Bilder.
function SwapImage(objThis, strSRC)
{
    objThis.src = strSRC;
}

// Funktion zum Aendern des Mauszeigers.
function Mouse(objThis)
{
    objThis.style.cursor = 'pointer';
}

// Menueanzeige.
function ShowContent(strContent)
{
    top.document.getElementById("content").src = strContent;
}

// Funktion zum Anzeigen des Kontaktformularfenster.
function openForm()
{
    Fenster1 = window.open("contact.htm", "Kontakt", "width=500, height=420, left=260, top=100, resizable=yes, scrollbars=no");
    Fenster1.focus();
}

// Funktion zum Schliessen des Versandfensters.
function Close()
{
	window.close();
}

// Formulardaten senden.
function Senden(objForm)
{
    // Company prüfen.
    if ( objForm.Company.value == "" )
    {
        window.alert("Your 'Company' please.");
        objForm.Company.focus();
        return;
    }

    // Name prüfen.
    if ( objForm.Name.value == "" )
    {
        window.alert("Your 'Name' please.");
        objForm.Name.focus();
        return;
    }

    // Country prüfen.
    if ( objForm.Country.value == "" )
    {
        window.alert("Your 'Country' please.");
        objForm.Country.focus();
        return;
    }

    // eMail prüfen.
    if ( objForm.Email.value == "" )
    {
        window.alert("Your 'Email' please.");
        objForm.Email.focus();
        return;
    }
    
    if ( !checkEMail(objForm.Email.value) )
	{
        objForm.Email.focus();
        return;
	}

	// Formulardaten versenden.
    objForm.action = 'contact.php';
    objForm.method = 'post';
    objForm.enctype = 'text/html';
    objForm.submit();
}

// MinimalCheck der Email-Adresse.
function checkEMail(strText)
{
    // MindestLaenge ist 6: a@b.de
    if ( strText.length < 6 )
    {
        window.alert("Please check the lenght of your Email.");
        return false;
    }
    // @-Zeichen.
    arrAt = strText.match(/@/g);
    // Auf fehlendes @-Zeichen pruefen.
    if ( !arrAt )
    {
        window.alert("Your Email doesn't containe an @-characters.");
        return false;
    }
    // Auf mehrere @-Zeichen pruefen.
    if ( arrAt.length > 1 )
    {
        window.alert("Your Email containes " + arrAt.length + " @-characters.");
        return false;
    }
    return true;
}



// Funktion zum Löschen der Formulardaten.
function Loeschen(objForm)
{
	objForm.reset();
}

// Bestehende von 'ColdFusion' übernommene Funktionen zum Scrollen der Texte.
function verifyCompatibleBrowser()
{
    this.ver=navigator.appVersion
    this.dom=document.getElementById?1:0
    this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0;
    this.ie4=(document.all && !this.dom)?1:0;
    this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0;

    this.ns4=(document.layers && !this.dom)?1:0;
    this.bw=(this.ie5 || this.ie4 || this.ns4 || this.ns5)
    return this
}

bw = new verifyCompatibleBrowser()

var speed=50
var loop, timer

function ConstructObject(obj,nest)
{
    nest=(!nest) ? '':'document.'+nest+'.'
    this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0;
    this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0;
    this.scrollHeight=bw.ns4?this.css.document.height:this.el.offsetHeight
    this.clipHeight=bw.ns4?this.css.clip.height:this.el.offsetHeight
    this.up=MoveAreaUp;this.down=MoveAreaDown;
    this.MoveArea=MoveArea; this.x; this.y;
    this.obj = obj + "Object"
    eval(this.obj + "=this")
    return this
}

function MoveArea(x,y)
{
    this.x=x;this.y=y
    this.css.left=this.x
    this.css.top=this.y
}

function MoveAreaDown(move){
    if(this.y>-this.scrollHeight+objContainer.clipHeight){
    this.MoveArea(0,this.y-move)
    if(loop) setTimeout(this.obj+".down("+move+")",speed)
    }
}
function MoveAreaUp(move){
    if(this.y<0){
    this.MoveArea(0,this.y-move)
    if(loop) setTimeout(this.obj+".up("+move+")",speed)
    }
}

function PerformScroll(speed)
{
    if(initialised)
    {
        loop=true;
        if(speed>0) objScroller.down(speed)
        else objScroller.up(speed)
    }
}

function CeaseScroll(){
    loop=false
    if(timer) clearTimeout(timer)
}

var initialised;

function InitialiseScrollableArea()
{
    objContainer=new ConstructObject('divContainer')
    objScroller=new ConstructObject('divContent','divContainer')
    objScroller.MoveArea(0,0)
    objContainer.css.visibility='visible'
    initialised=true;
}
