/**
 *  Verschiedenen Javascript Funktionen 
 *  @ Intabo GmbH 2007
 *  
 */


$(function(){
    /** Aktiven Menüpunkt kennzeichnen **/
    var path = location.pathname.substring(1);
    if ( path ) {
        $('#nav_main li a[@href$="' + path + '"]').parent().attr('class', 'current');
        $('#col1_content li a[@href$="' + path + '"]').parent().attr('class', 'current');
    } 
    
    /** WAI-ARIA für das Kontaktformular **/
    $('form input.required').attr('aria-required', 'true');
    $('form textarea.required').attr('aria-required', 'true');
    $('form div.error input.required').attr('aria-invalide', 'true');
    $('form div.error').attr('aria-live', 'assertive').attr('role', 'alert');
    
    /** Formularvalidierung **/
    $('#kontaktformularDE').submit(function(){
        var error = false;
        $('.required', $(this)).each(function() {
            var $this = $(this);
            var email = false;
            $this.parent('div').removeClass('error').removeAttr('role').removeAttr('aria-live');
            $this.removeAttr('aria-invalide');
            $this.siblings('label[class*="error"]').remove();
            if($this.attr('class').split(' ').slice(-1) == "email") {
                if(/^[\w-+\.]+@([\w-]+\.)+[\w-]{2,}$/i.test($this.val())) {
                    email = false;
                }
                else {
                    email = true;
                }
            } 
            if($this.val().length == 0 || email ) {
                error = true;
                $this.parent('div').addClass('error').attr('role', 'alert').attr('aria-live', 'assertive');
                if($this.siblings('label[class*="error"]').length == 0) {
                    var $label = $this.siblings('label'); 
                    var text = $label.text().split('*');
                    if(email) {
                        $label.before('<label class="error" for="name">Bitte füllen sie das Feld «' + text[0] + '» mit einer gültigen E-Mail Adresse aus.</label>');
                    }
                    else {
                        $label.before('<label class="error" for="name">Bitte füllen sie das Feld «' + text[0] + '» aus.</label>');
                    }
                    $this.attr('aria-invalide', 'true');
                }
            }
        });
        if(error) {
            return false;
        }
        return true;
    });

    /*** Lightbox aktivieren ***/
    $('a[@rel*=lightbox]').lightBox(); 
    
    /*** FAQ's ***/
    $('div.faq_content').hide();
    $('div#faq h2').click(function() {
        $(this).next('div.faq_content').slideToggle('fast').siblings('div.faq_content:visible').slideUp('fast');
    });  
});

