function fade() {

    var obj = document.getElementById('fadeImage');
    
    if (!fade.alpha) {
        
        if (obj.style.opacity == 1.0) {
            fade.alpha = 100;
            fade.fade = "out";
        } else if (obj.style.opacity == 0.0) {
            fade.alpha = 0;
            fade.fade = "in";
        }
    }            
    
    obj.style.opacity = fade.alpha/100;
    obj.style.filter  = 'alpha(opacity=' + fade.alpha + ')';
    
    if (fade.fade == "out") {
        fade.alpha -= 1;

        if (fade.alpha == -1) {
            delete fade.alpha;
            delete fade.fade;
            window.setTimeout("fade()", 8000);
        } else {
            window.setTimeout("fade()", 10);
        }

    } else if (fade.fade == "in") {
        fade.alpha += 1;

        if (fade.alpha == 101) {
            delete fade.alpha;
            delete fade.fade;
            window.setTimeout("fade()", 8000);
        } else {
            window.setTimeout("fade()", 10);
        }

    }
                
}

function moveOutBox() {

    if (moveInBox.isActive != true) {
        var obj = document.getElementById('moveOutBox');    
        var w = parseInt(obj.style.width);
        
        w += 25;
        
        if (w < 540) {
            moveOutBox.isActive = true;
            obj.style.width = w + 'px';
            window.setTimeout("moveOutBox()", 10);
            document.getElementById('contentInnerWrapper').style.opacity = 0;
            document.getElementById('contentInnerWrapper').style.filter  = 'alpha(opacity=0)';
        } else {
            moveOutBox.isActive = false;
            document.getElementById('contentInnerWrapper').style.display = 'block';
            
            /* IE-Fix */
            document.getElementById('content').style.display = 'block';            
            
            fadeInContent();
        }
    }
}

function moveInBox() {

    if (moveOutBox.isActive != true & document.getElementById('contentInnerWrapper').style.opacity == 0.0) {
        var obj = document.getElementById('moveOutBox');
        var w = parseInt(obj.style.width);
    
        w -= 25;
        
        if (w >= 0) {
            moveInBox.isActive = true;
            obj.style.width = w + 'px';
            window.setTimeout("moveInBox()", 10);
        } else {
            moveInBox.isActive = false;
            document.getElementById('contentInnerWrapper').style.display = 'none';
            moveOutBox();
        }
    } else {
        window.setTimeout("moveInBox()", 200);
    }
}

function activateMenuitem(strItem) {

    // activateMenuitem.activeItem != strItem & ...
    if (moveInBox.isActive != true &
        moveOutBox.isActive != true & fadeInContent.isActive != true & fadeOutContent.isActive != true)
    {
        activateMenuitem.activeItem = strItem;
        fadeOutContent();
    }
}

function loadItem(strItem) {
        if (strItem == 'home')              AJAX_Request('inc/getpage.php?page=home');
        else if (strItem == 'events')       AJAX_Request('inc/getpage.php?page=events');
        else if (strItem == 'ticketshop')   AJAX_Request('inc/getpage.php?page=ticketshop');
        else if (strItem == 'impressionen') AJAX_Request('inc/getpage.php?page=impressionen');
        else if (strItem == 'visuals')      AJAX_Request('inc/getpage.php?page=visuals');
        else if (strItem == 'videos')       AJAX_Request('inc/getpage.php?page=videos');
        else if (strItem == 'newsletter')   AJAX_Request('inc/getpage.php?page=newsletter');
        else if (strItem == 'partner')      AJAX_Request('inc/getpage.php?page=partner');

        else if (strItem == 'kontakt')      AJAX_Request('inc/getpage.php?page=kontakt');
        else if (strItem == 'anfahrt')      AJAX_Request('inc/getpage.php?page=anfahrt');
        else if (strItem == 'impressum')    AJAX_Request('inc/getpage.php?page=impressum');
}

function fadeInContent() {

    if (objAjax.readyState == 4 && objAjax.status == 200) {

        if (!fadeInContent.alpha)   fadeInContent.alpha = 0;
        fadeInContent.isActive = true;
    
        fadeInContent.alpha += 10;
        document.getElementById('contentInnerWrapper').style.opacity = fadeInContent.alpha/100;
        document.getElementById('contentInnerWrapper').style.filter  = 'alpha(opacity=' + fadeInContent.alpha + ')';
    
        if (fadeInContent.alpha < 100) {
            window.setTimeout("fadeInContent()", 10);
        } else {
            fadeInContent.isActive = false;
            delete fadeInContent.alpha;
        }
    } else {
        window.setTimeout("fadeInContent()", 100);
    }
}

function fadeOutContent() {
    if (!fadeOutContent.alpha)   fadeOutContent.alpha = 100;
    fadeOutContent.isActive = true;
    
    fadeOutContent.alpha -= 10;
    document.getElementById('contentInnerWrapper').style.opacity = fadeOutContent.alpha/100;
    document.getElementById('contentInnerWrapper').style.filter  = 'alpha(opacity=' + fadeOutContent.alpha + ')';
    
    if (fadeOutContent.alpha > 0) {
        window.setTimeout("fadeOutContent()", 10);
    } else {
        
        /* IE-Fix */
        document.getElementById('content').innerHTML = '';
        document.getElementById('content').style.display = 'none';
        
        loadItem(activateMenuitem.activeItem);
    
        fadeOutContent.isActive = false;
        delete fadeOutContent.alpha;
       
        document.getElementById('headline_home').style.display = 'none';
        document.getElementById('headline_events').style.display = 'none';
        document.getElementById('headline_ticketshop').style.display = 'none';
        document.getElementById('headline_impressionen').style.display = 'none';
        document.getElementById('headline_visuals').style.display = 'none';
        document.getElementById('headline_videos').style.display = 'none';
        document.getElementById('headline_newsletter').style.display = 'none';
        document.getElementById('headline_partner').style.display = 'none';

        document.getElementById('headline_kontakt').style.display = 'none';
        document.getElementById('headline_anfahrt').style.display = 'none';
        document.getElementById('headline_impressum').style.display = 'none';

        document.getElementById('headline_'+activateMenuitem.activeItem).style.display = 'block';
        moveInBox();
        
    }
}


/* AJAX */

var objAjax = getXMLHttpObj();

function getXMLHttpObj() {
    if(typeof(XMLHttpRequest) != 'undefined')
        return new XMLHttpRequest();

    var axO=['Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.4.0', 'Msxml2.XMLHTTP.3.0', 'Msxml2.XMLHTTP', 'Microsoft.XMLHTTP'], i;
    for(i=0;i<axO.length;i++) {
        try {
            return new ActiveXObject(axO[i]);
        } catch(e) {
        }
    }
    return null;
}

function AJAX_Request(url) {
        objAjax.open('GET', url, true);
        objAjax.onreadystatechange = AJAX_Show;
        objAjax.send(null);
}

function AJAX_Show() {
    if (objAjax.readyState == 4) {
        if (objAjax.status == 200) {
            document.getElementById('content').innerHTML = objAjax.responseText;
            if (activateMenuitem.activeItem == 'impressionen') showImpressionen();
            else if (activateMenuitem.activeItem == 'visuals') showVisuals();
        }
    }
}



function showFlyer(strFlyer) {
    document.getElementById('flyer').innerHTML = '<table style="height: 100%; width: 100%;"><tr><td align="center"><img height="398" src="'+strFlyer+'"></td></tr></table>';
    document.getElementById('flyer').style.display = 'block';    
    document.getElementById('flyer').style.zIndex = 99;    
}

function hideFlyer() {
    document.getElementById('flyer').style.display = 'none';    
    document.getElementById('flyer').style.zIndex = 5;    
}

function init() {
    if (document.getElementById('last_img').complete) {
        document.getElementById('preloaded_content').style.visibility = 'visible';
        document.getElementById('preloaded_content').style.display = 'block';
               
        window.setTimeout('fade()', 8000);
    } else {
        window.setTimeout('init()', 500);
    }
}

function openWindow(url) {
    var YOffset=((screen.height-708)/2);
    var XOffset=((screen.width-770)/2);
    var WindowParameter='width=639, height=561, left='+XOffset+', top='+YOffset+', status=no, resizable=yes, toolbar=no, menubar=no, scrollbars=yes';
    newWin= open(url, "", WindowParameter);
}

function openWindow2(url) {
    var YOffset=((screen.height-708)/2);
    var XOffset=((screen.width-770)/2);
    var WindowParameter='width=639, height=650, left='+XOffset+', top='+YOffset+', status=no, resizable=yes, toolbar=no, menubar=no, scrollbars=yes';
    newWin2 = open(url, "", WindowParameter);
}



function isEmailValid(s)
{
  var a = false;
  var res = false;
  if(typeof(RegExp) == 'function')
    {
    var b = new RegExp('abc');
    if(b.test('abc') == true){a = true;}
    }

  if(a == true)
    {
    reg = new RegExp('^([a-zA-Z0-9\\-\\.\\_]+)'+
                     '(\\@)([a-zA-Z0-9\\-\\.]+)'+
                     '(\\.)([a-zA-Z]{2,4})$');
    res = (reg.test(s));
    }
  else
    {
    res = (s.search('@') >= 1 &&
           s.lastIndexOf('.') > s.search('@') &&
           s.lastIndexOf('.') >= s.length-5)
    }
  return(res);
}

function checkNewsletterFormular() {

    var err_email = !(isEmailValid(document.getElementById('femail').value));
    var err_name  = false;
       
    if (document.getElementById('fname').value.length < 2) err_name = true; 

    if (err_email) {
        document.getElementById('err_email').innerHTML = 'Die eMail-Adresse ist ung&uuml;ltig.';
    } else {
        document.getElementById('err_email').innerHTML = '';
    }
    
    if (err_name) {
        document.getElementById('err_name').innerHTML = 'Bitte gib deinen Namen ein.';
    } else {
        document.getElementById('err_name').innerHTML = '';
    }
    
    if (!err_name & !err_email) {
        AJAX_Request('inc/ajax_newsletter.php?action=subscribe&name='+document.getElementById('fname').value+'&email='+document.getElementById('femail').value);
    }

}

function sendContactFormular() {

    var nachname = document.getElementById('fnachname').value;
    var vorname  = document.getElementById('fvorname').value;
    var email    = document.getElementById('femail').value;
    var betreff  = document.getElementById('fbetreff').value;
    var text     = document.getElementById('ftext').value;
    
    var err_nachname = false;
    var err_vorname  = false;
    var err_email    = false;
    var err_betreff  = false;
    var err_text     = false;
    
    document.getElementById('err_nachname').innerHTML = '';
    document.getElementById('err_vorname').innerHTML = '';
    document.getElementById('err_email').innerHTML = '';
    document.getElementById('err_betreff').innerHTML = '';
    document.getElementById('err_text').innerHTML = '';
    
    if (nachname.length < 2)    { err_nachname = true; document.getElementById('err_nachname').innerHTML = 'Gib bitte deinen Nachnamen ein.'; }
    if (vorname.length < 2)     { err_vorname = true; document.getElementById('err_vorname').innerHTML = 'Gib bitte deinen Vornamen ein.'; }
    if (!isEmailValid(email))   { err_email = true; document.getElementById('err_email').innerHTML = 'Die eMail-Adresse ist ung&uuml;ltig.'; }
    if (betreff.length < 2)     { err_betreff = true; document.getElementById('err_betreff').innerHTML = 'Gib bitte einen Betreff ein.'; }
    if (text.length < 2)        { err_text = true; document.getElementById('err_text').innerHTML = 'Gib bitte deinen Text ein.'; }
    
    text = str_replace('\n', '<br>', text);
    
    text = str_replace('&', '_AMP_', text);
    nachname = str_replace('&', '_AMP_', nachname);
    vorname  = str_replace('&', '_AMP_', vorname);
    email    = str_replace('&', '_AMP_', email);
    betreff  = str_replace('&', '_AMP_', betreff);

    if (!err_nachname & !err_vorname & !err_email & !err_betreff & !err_text) {
        AJAX_Request('inc/ajax_kontakt.php?nachname='+nachname+'&vorname='+vorname+'&email='+email+'&betreff='+betreff+'&text='+text);
    }

}

function str_replace(search, replace, subject) {
    return subject.split(search).join(replace);
}

function showImpressionen() {

    if (document.getElementById('preload_img_impressionen').complete) {
        initLytebox();
        document.getElementById('pics_preload').style.display = 'none';
        document.getElementById('pics_content').style.display = 'block';
    } else {
        window.setTimeout("showImpressionen()", 1000);
    }
    
}

function showVisuals() {

    if (document.getElementById('preload_img_visuals').complete) {
        initLytebox();
        document.getElementById('pics_preload').style.display = 'none';
        document.getElementById('pics_content').style.display = 'block';
    } else {
        window.setTimeout("showVisuals()", 1000);
    }
    
}