﻿/*
    WNT Layout Scripts
*/
var accordion_container_delta = 395;
var accordion_scroll_list;
var greybox_container_delta = 395;
var greybox_max_height = 0;
var greybox_scroll;
/***
/* Background
 **/
var bg_count; // Anzahl Hintergrundbilder
var bg_active; // Aktives Hintergrundbild
var bg_images; // Liste Hintergrundbilder
var bg_width = 1280;
var bg_height = 657;
var bg_ratio = bg_height / bg_width;
var bg_align_top;

function init_background(images, pvalign) {
    if (pvalign==0) bg_align_top = 136;
    if (pvalign==1) bg_align_top = 0;
    bg_count = images.length;
    bg_active = 0;
    bg_images = images;            
    var browserwidth = get_width();
    var css_left;
    $.each(bg_images, function(index, value) { 
        css_left = 0;
        if (index != 0) css_left = browserwidth;
        $("<div id=\"background_" + index + "\" style=\"position:fixed;top:" + bg_align_top + "px;left:" + css_left + "px;width:100%;height:100%\"><img src=\"" + value.image + "\" /></div>").insertBefore("#top_white");
        maximize_div("#background_" + index);
        if (bg_count==1) {
            var bgwidth = $("#background_0").width();
            $("#background_0").css("left", (browserwidth-bgwidth)/2);
        }
    });
    
    // Wenn > 1 Hintergrundbild: Scroll-Pfeile
    if (bg_count > 1) {
        $("<div id=\"background_scroll_left\" style=\"position:absolute;z-index:999;top:50%;left:5px;cursor:pointer;\" onclick=\"scroll_background(false)\"><img src=\"/layout/bg_arrow_left.png\" /></div>").insertBefore("#top_white");
        $("<div id=\"background_scroll_right\" style=\"position:absolute;z-index:999;top:50%;right:5px;cursor:pointer;\" onclick=\"scroll_background(true)\"><img src=\"/layout/bg_arrow_right.png\" /></div>").insertBefore("#top_white");                
     
        // iPhone / iPad
        var agent = navigator.userAgent.toLowerCase();
        var is_ios = ((agent.indexOf('iphone')!=-1) || (agent.indexOf('ipad')!=-1));
        if (is_ios) { 
            for (var i=0; i< bg_count; i++) {
                $("#background_" + i).swipe({swipe: bg_swipe, threshold:20});        
            }
        }        
    }
    
    if ($(".accordion_list").length != 0) $(".accordion_list").css("height", get_height()-accordion_container_delta + "px");
    if ($(".grey_box").length != 0) init_greybox();
    if ($("#start_news").length != 0) $("#start_news").css("top", get_height()-395 + "px");
    if ($("#start_news_next").length != 0) $("#start_news_next").css("top", get_height()-395 + "px");    
    
}

function bg_swipe(event, direction) {
    if (direction == "left") scroll_background(true);
    if (direction == "right") scroll_background(false);
}

function resize_background() {
    var browserwidth = get_width();
    for (var i=0; i<bg_count; i++) {
        css_left = browserwidth;
        if (i == bg_active) css_left = 0;
        maximize_div("#background_" + i);                
        $("#background_" + i).css("left", css_left+"px");
    }
    if (bg_count==1) {
        var bgwidth = $("#background_0").width();
        $("#background_0").css("left", (browserwidth-bgwidth)/2);
    }    
}

function maximize_div(div) {
    var browserwidth = get_width();
    var browserheight = get_height();
    if ((browserheight/browserwidth) > bg_ratio){
        $(div).height(browserheight);
        $(div).width(browserheight / bg_ratio);
        $(div).children().height(browserheight);
        $(div).children().width(browserheight / bg_ratio);
    } else {
        $(div).width(browserwidth);
        $(div).height(browserwidth * bg_ratio);
        $(div).children().width(browserwidth);
        $(div).children().height(browserwidth * bg_ratio);
    }            
}

function reinitialise_accordion_scroller(scroll_y) { // Scroller beim Accordion reinitialisieren
    var api = accordion_scroll_list.data('jsp');
    api.reinitialise();
    api.scrollTo(0, scroll_y, true);
}

function reinitialise_greybox_scroller() { // Scroller bei Greybox reinitialisieren
    var apigb = greybox_scroll.data('jsp');
    apigb.reinitialise();
}

$(window).bind("resize", reposition_divs);

function reposition_divs() {
    if ($(".accordion_list").length != 0) {
        $(".accordion_list").css("height", get_height()-accordion_container_delta + "px");
        reinitialise_accordion_scroller(0);
    }
    
    if ($(".grey_box").length != 0) {
        init_greybox();
        reinitialise_greybox_scroller();
    }
    
    if ($("#start_news").length != 0) $("#start_news").css("top", get_height()-395 + "px");
    if ($("#start_news_next").length != 0) $("#start_news_next").css("top", get_height()-395 + "px");    
    
    resize_background();
}

function scroll_background(dir) {
        var bg_next = bg_active + (dir ? 1 : -1);
        if (bg_next < 0) bg_next = bg_count -1;
        if (bg_next > bg_count-1) bg_next = 0;
        var browserwidth = get_width();
        
        if (dir) {
            $("#background_" + bg_next).css("left", $("#background_" + bg_active).width() + "px");
            $("#background_" + bg_active).animate({left: "-" + $("#background_" + bg_active).width() + "px", top: bg_align_top + "px"}, {easing: 'easeOutQuad', duration: 500}); 
            $("#background_" + bg_next).animate({left: "0px", top: bg_align_top + "px"}, {easing: 'easeOutQuad', duration: 500});                                     
        } else {
            $("#background_" + bg_next).css("left", "-" + $("#background_" + bg_active).width() + "px");
            $("#background_" + bg_active).stop().animate({left: $("#background_" + bg_active).width() + "px", top: bg_align_top + "px"}, {easing: 'easeOutQuad', duration: 500}); 
            $("#background_" + bg_next).stop().animate({left: "0px", top: bg_align_top + "px"}, {easing: 'easeOutQuad', duration: 500});                 
            
        }
        
        bg_active = bg_next;
}

/***
/* Greybox Höhe anpassen
 **/
function init_greybox() {
    if (greybox_max_height==0) greybox_max_height = parseInt($(".grey_box").css("height"))+30;
    var new_height = get_height()-greybox_container_delta;
    
    if (new_height < greybox_max_height) {
        $(".grey_box").css("height", new_height + "px");
    } else {
        $(".grey_box").css("height", greybox_max_height + "px");
    }
    // iPhone / iPad
    var agent = navigator.userAgent.toLowerCase();
    var is_ios = ((agent.indexOf('iphone')!=-1) || (agent.indexOf('ipad')!=-1));
    if (is_ios) { 
      $(".grey_box .content").swipe({swipe: open_greybox_link, threshold:20});  
    } 
}
function open_greybox_link() {
 if (direction == "left" || direction == "right") {
  if ($("#nextlink").length != 0) {
   if ($("#nextlink").attr("href") != "") window.location=$("#nextlink").attr("href");
  }
 }
}
/***
/* Start News
 **/
function init_start_news(newslist) {
    var left = 0;
    var i = 0;
    $.each(newslist, function(index, value) { 
        var html = ''+
            '<div onclick="window.location.href=\'' + value.link + '\'" class="start_news_item" style="left:' + left + 'px;">'+
            '    <img src="' + value.image + '" alt="' + value.text + '" title="' + value.text + '" />'+
            '  <p>' + value.text + '</p>'+
          '</div>'+
        '';
        $("#start_news").append(html);
        $(".start_news_item").last().data("sort", i);
        left += 125;
        i++;
    });

    $("#start_news_next").click(function() {
        scroll_news(-1);
    });

    // iPhone / iPad
    var agent = navigator.userAgent.toLowerCase();
    var is_ios = ((agent.indexOf('iphone')!=-1) || (agent.indexOf('ipad')!=-1));
    if (is_ios) { 
        $("#start_news").swipe({swipe: start_news_swipe, threshold:20});
    }
}

function start_news_swipe(event, direction) {
    if (direction == "left") scroll_news(-1);
    if (direction == "right") scroll_news(1);
}

function scroll_news(direction) {
    $(".start_news_item").each(function (i) {
        var psort = $(this).data("sort");
        psort+=direction;
        if (psort < -1) {
            psort = $(".start_news_item").length-2;
            $(this).css("left", psort*125+125 + "px");
        }
        if (psort >= $(".start_news_item").length) {
            psort = 0;
            $(this).css("left", "-125px");
        }
        $(this).data("sort", psort);
    });
    $(".start_news_item").each(function (i) {
        var left = $(this).data("sort") * 125;                                                                                     
        $(this).stop().animate({"left": left + "px"}, {easing: 'easeOutQuad', duration: 500});                 
    });
}

function get_height() {
    return $(window).height();
}
function get_width() {
    return $(window).width();    
}

/* Produkte Slider */
function produkte_slider(produkte) {
    var left = 0;
    var i = 0;
    $.each(produkte, function(index, value) { 
        var html;
        if (value.target=="self") {
            html = ''+
                '<div onclick="window.location.href=\'' + value.link + '\'" class="produkt_item" style="left:' + left + 'px;">'+
                '    <img src="' + value.image + '" alt="' + value.text + '" title="' + value.text + '" />'+
                '</div>';
        } else if (value.target=="blank") {
            html = ''+
                '<div onclick="window.open(\'' + value.link + '\')" class="produkt_item" style="left:' + left + 'px;">'+
                '    <img src="' + value.image + '" alt="' + value.text + '" title="' + value.text + '" />'+
                '</div>';
        } else if (value.target=="layer") {
            html = ''+
                '<div onclick="open_layer(\'' + value.layertype + '\', \'' + value.link + '\')" class="produkt_item" style="left:' + left + 'px;">'+
                '    <img src="' + value.image + '" alt="' + value.text + '" title="' + value.text + '" />'+
                '</div>';            
        } else if (value.target=="video") {
            html = ''+
                '<div onclick="video_play(\'' + value.link + '\')" class="produkt_item" style="left:' + left + 'px;">'+
                '    <img src="' + value.image + '" alt="' + value.text + '" title="' + value.text + '" />'+
                '</div>';            
        }
        
        $("#produkte_slider").append(html);
        $(".produkt_item").last().data("sort", i);
        left += 125;
        i++;
    });
    if (produkte.length > 3) {
        $("#produkte_slider_next").click(function() {
            produkte_scroll(-1);
        });

        // iPhone / iPad
        var agent = navigator.userAgent.toLowerCase();
        var is_ios = ((agent.indexOf('iphone')!=-1) || (agent.indexOf('ipad')!=-1));
        if (is_ios) { 
            $("#produkte_slider").swipe({swipe: produkte_swipe, threshold:20});        
        }
    } else {
        $("#produkte_slider_next").css("display", "none");
    }
}

function produkte_swipe(event, direction) {
    if (direction == "left") produkte_scroll(-1);
    if (direction == "right") produkte_scroll(1);
}

function produkte_scroll(direction) {
    $(".produkt_item").each(function (i) {
        var psort = $(this).data("sort");
        psort+=direction;
        if (psort < -1) {
            psort = $(".produkt_item").length-2;
            $(this).css("left", psort*125+125 + "px");
        }
        if (psort >= $(".produkt_item").length) {
            psort = 0;
            $(this).css("left", "-125px");
        }
        $(this).data("sort", psort);
    });
    $(".produkt_item").each(function (i) {
        var left = $(this).data("sort") * 125;                                                                                     
        $(this).stop().animate({"left": left + "px"}, {easing: 'easeOutQuad', duration: 500});                 
    });
}

/* Toolomat Slider */
function toolomat_slider(produkte) {
    var left = 0;
    var i = 0;
    $.each(produkte, function(index, value) { 
        var html;
        if (value.target=="self") {
            html = ''+
                '<div onclick="window.location.href=\'' + value.link + '\'" class="produkt_item" style="left:' + left + 'px;">'+
                '    <img src="' + value.image + '" alt="' + value.text + '" title="' + value.text + '" />'+
                '</div>';
        } else if (value.target=="blank") {
            html = ''+
                '<div onclick="window.open(\'' + value.link + '\')" class="produkt_item" style="left:' + left + 'px;">'+
                '    <img src="' + value.image + '" alt="' + value.text + '" title="' + value.text + '" />'+
                '</div>';
        } else if (value.target=="layer") {
            html = ''+
                '<div onclick="open_layer(\'' + value.layertype + '\', \'' + value.link + '\')" class="produkt_item" style="left:' + left + 'px;">'+
                '    <img src="' + value.image + '" alt="' + value.text + '" title="' + value.text + '" />'+
                '</div>';            
        }        
        
        $("#toolomat_slider").append(html);
        $(".produkt_item").last().data("sort", i);
        left += 105;
        i++;
    });
    if (produkte.length > 4) {
        $("#toolomat_slider_next").click(function() {
            toolomat_scroll(-1);
        });

        // iPhone / iPad
        var agent = navigator.userAgent.toLowerCase();
        var is_ios = ((agent.indexOf('iphone')!=-1) || (agent.indexOf('ipad')!=-1));
        if (is_ios) { 
            $("#toolomat_slider").swipe({swipe: toolomat_swipe, threshold:20});        
        }
        
    } else {
        $("#toolomat_slider_next").css("display", "none");
    }
}

function toolomat_swipe(event, direction) {
    if (direction == "left") toolomat_scroll(-1);
    if (direction == "right") toolomat_scroll(1);
}

function toolomat_scroll(direction) {
    $(".produkt_item").each(function (i) {
        var psort = $(this).data("sort");
        psort+=direction;
        if (psort < -1) {
            psort = $(".produkt_item").length-2;
            $(this).css("left", psort*105+105 + "px");
        }
        if (psort >= $(".produkt_item").length) {
            psort = 0;
            $(this).css("left", "-105px");
        }
        $(this).data("sort", psort);
    });
    $(".produkt_item").each(function (i) {
        var left = $(this).data("sort") * 105;                                                                                     
        $(this).stop().animate({"left": left + "px"}, {easing: 'easeOutQuad', duration: 500});                 
    });
}

/* Produkte */
function produkte_positionieren(produkte, pimage) {
    var h = 657;
    var h_browser = get_height()-180;
    if (h_browser < h) h=h_browser;
        
    var w = 980;
    var w_browser = get_width();
    if (w_browser < w) w=w_browser;
    $("#main").append('<div id="products_scroll_layer" style="position: absolute; overflow: auto; width:' + w + 'px; height: ' + h + 'px;"><div id="product_scroll_inner" style="width: 1280px; height: 657px;"><div style="position: absolute"><img src="' + pimage + '" /></div></div></div>');
    var i = 0;
    product_opened = 0;
    
    $.each(produkte, function(index, value) {
        var html = '<div class="produkt_titel" style="position: absolute; top: ' + value.top + 'px; left: ' + value.left + 'px">' +  value.text + '</div>';
        $("#product_scroll_inner").append(html);
        $(".produkt_titel").last().data("productid", i);
        $(".produkt_titel").last().data("direction", value.direction);
        $(".produkt_titel").last().data("x", value.left);
        $(".produkt_titel").last().data("y", value.top);
        
        var content = value.content;
        var ihtml = '<div id="produkt_titel_content_' + i + '" class="produkt_titel_content" style="top: ' + value.top + 'px;">';
        $.each(content, function(iindex, ivalue) {
            ihtml += '<a href="' + ivalue.link + '">' + ivalue.text + '</a><br />';
        });
        ihtml += '</div>';
        $("#product_scroll_inner").append(ihtml);
        i++;
    });
    
    product_scroll = $("#products_scroll_layer").jScrollPane();
    
    $(".produkt_titel").mouseover(function() {
        $(this).css( { fontSize:"18px", padding:"5px 20px" })
    }).mouseout(function() {
        $(this).css( { fontSize:"16px", padding:"3px 15px" })
    }).click(function() {
        var save_width = $("#produkt_titel_content_" + $(this).data("productid")).css("width");
        $(".produkt_titel_content").css("display", "none");
        var pwidth;
        if ($(this).data("direction")=="left") {
            pwidth = parseInt($(this).css("left")) - parseInt($("#produkt_titel_content_" + $(this).data("productid")).css("width")) - 50;
        } else {
            pwidth = parseInt($(this).css("left")) + parseInt($(this).css("width")) + 45;
        }
        $("#produkt_titel_content_" + $(this).data("productid")).css("left", pwidth); 
        $("#produkt_titel_content_" + $(this).data("productid")).css("width", save_width); // alte width wieder herstellen                                               
        $("#produkt_titel_content_" + $(this).data("productid")).css("display", "inline-block");
        product_opened = 1;
    });
    $("#product_scroll_inner").click(function() {
        product_opened++;
        if (product_opened==3) $(".produkt_titel_content").css("display", "none");
        if (product_opened>2) product_opened=2;
    });
    /*
    $(document).find(".produkt_titel").each(function (i) {
        var t = $(this).data("y") * (get_height()+160) / 1024;
        $(this).css("top", t);
        $("#produkt_titel_content_" + $(this).data("productid")).css("top", t);
    });    
    */
    
    $(window).bind("resize", function() {
                                                                        
        var h = 657;
        var h_browser = get_height()-180;
        if (h_browser < h) h=h_browser;
        
        var w = 980;
        var w_browser = get_width();
        if (w_browser < w) w=w_browser;
        $("#products_scroll_layer").css("height", h+"px");
        $("#products_scroll_layer").css("width", w+"px");        
        
        var api = product_scroll.data('jsp');
        api.reinitialise();
        api.scrollTo(0, 0, false);
                                                                        
                                                                        /*
        $(document).find(".produkt_titel").each(function (i) {
            var t = $(this).data("y") * (get_height()+160) / 1024;
            $(this).css("top", t);
            $("#produkt_titel_content_" + $(this).data("productid")).css("top", t);
        });    
        */
        
    });
}

/* Accordion */
function accordion_init() {
    $(".accordion_body").each(function(index) {
        //var h = parseInt($(this).find(".content").css("height")) + 50;
        var h = parseInt($(this).find(".content").actual("height")) + 50;
        $(this).css("height", h).find(".transparenz").css("height", h);
        $(this).css("height", h).find(".opaque").css("height", h);        
    });
    
    var i=0;
    $(".accordion_head").each(function(index) {
        $(this).data("opened", 0);
        $(this).data("position", i);
        i++;

    });
    $(".accordion_body").hide();                    
    
    $(".accordion_head").click(function()    {
        $(this).data("opened", $(this).data("opened") + 10);
        $(".accordion_head").each(function(index) {
            if ($(this).data("opened") == 1) {
                $(this).css("text-transform", "none");
                $(this).css("font-weight", "normal");
                $(this).find(".content").css("background-image", "url('/layout/accordion_plus.png')");
                $(this).data("opened", 0);
                var scroll_y = $(this).data("position")*40;                            
                $(this).next(".accordion_body").slideUp(500, function() {reinitialise_accordion_scroller(scroll_y);});
            }
        });                                                                                            
        
        $(this).data("opened", $(this).data("opened") - 10);                        
        if ($(this).data("opened") == 0) {
            $(this).css("text-transform", "uppercase");
            $(this).css("font-weight", "bold");
            $(this).find(".content").css("background-image", "url('/layout/accordion_minus.png')");
            $(this).data("opened", 1);

            $(this).next(".accordion_body").find(".content").show();
            $(this).next(".accordion_body").find(".transparenz").show();
            var scroll_y = $(this).data("position")*40;
            $(this).next(".accordion_body").slideDown(500, function() {reinitialise_accordion_scroller(scroll_y);});
        } else {
            $(this).css("text-transform", "none");
            $(this).css("font-weight", "normal");
            $(this).find(".content").css("background-image", "url('/layout/accordion_plus.png')");
            $(this).data("opened", 0);
            var scroll_y = $(this).data("position")*40;                          
            $(this).next(".accordion_body").slideUp(500, function() {reinitialise_accordion_scroller(scroll_y);});
        }
        
    });
    
    if (window.location.hash) { // Direktverlinkung auf Accordion
        hash = window.location.hash; 
        var ihash = hash.substring(hash.lastIndexOf('#')+1, hash.length);
        var n = $(".accordion_head").length;
        if (ihash >= 0 && ihash < n) {
            $(".accordion_head").eq(ihash).trigger("click");
        }
    }
    
    reinitialise_accordion_scroller(0);
}

function accordion_slider(acccontainer, nextacccontainer, items) {
    var left = 0;
    var i = 0;
    $(acccontainer).html("");
    $.each(items, function(index, value) { 
        var html;
        if (value.target=="self") {
            html = ''+
                '<div onclick="window.location.href=\'' + value.link + '\'" id="sort_' + i + '" class="accordion_item" style="left:' + left + 'px;">'+
                ' <div class="accordion_item_description">' + value.text + '</div>'+
                '    <img src="' + value.image + '" alt="' + value.text + '" title="' + value.text + '" />'+
                '</div>';
        } else if (value.target=="blank") {
            html = ''+
                '<div onclick="window.open(\'' + value.link + '\')" id="sort_' + i + '" class="accordion_item" style="left:' + left + 'px;">'+
                ' <div class="accordion_item_description">' + value.text + '</div>'+
                '    <img src="' + value.image + '" alt="' + value.text + '" title="' + value.text + '" />'+
                '</div>';
        } else if (value.target=="layer") {
            html = ''+
                '<div onclick="open_layer(\'' + value.layertype + '\', \'' + value.link + '\')" id="sort_' + i + '" class="accordion_item" style="left:' + left + 'px;">'+
                ' <div class="accordion_item_description">' + value.text + '</div>'+
                '    <img src="' + value.image + '" alt="' + value.text + '" title="' + value.text + '" />'+
                '</div>';
        }
        
        $(acccontainer).append(html);
        left += 195;
        i++;
    });
    
    $(acccontainer).find(".accordion_item").each(function (j) {
        $(this).data("sort", j);
    });
    if (items.length > 2) {
        $(nextacccontainer).unbind('click');
        $(nextacccontainer).click(function() {
            accordion_scroll(acccontainer);
        });

        // iPhone / iPad
        var agent = navigator.userAgent.toLowerCase();
        var is_ios = ((agent.indexOf('iphone')!=-1) || (agent.indexOf('ipad')!=-1));
        if (is_ios) {
            $(acccontainer).swipe({swipe: function() { accordion_swipe(acccontainer, direction); }, threshold:20});
        }

    } else {
        $(nextacccontainer).css("display", "none");
    }
}

function accordion_swipe(paccordion, pdir) {
    if (pdir == "left") accordion_scroll(paccordion);
}


function accordion_scroll(acccontainer) {
    $(acccontainer).find(".accordion_item").each(function (i) {
        var psort = $(this).data("sort");
        psort--;
        if (psort < -1) {
            psort = $(acccontainer).find(".accordion_item").length-2;
            $(this).css("left", psort*195+195 + "px");
    }
        $(this).data("sort", psort);
    });
    $(acccontainer).find(".accordion_item").each(function (i) {
        var left = $(this).data("sort") * 195;                                                                                     
        $(this).stop().animate({"left": left + "px"}, {easing: 'easeOutQuad', duration: 500});                 
    });
}

/* Karte */
function toggle_map_bubble() {
    $("#map_bubble").toggle(500);
}

/* Kontaktformular */
function check_submit_contact(pform) {
    $(".watermark").removeWatermark('watermark');
    var check=true;
    $(pform).find(".mandatory").each(function (i) {
        $(this).css("color", "#000000");
        if ($(this).attr("type")=="text" && $(this).attr("value")=="") {
            check=false;
            $(this).css("color", "#c1151f");
        }
        if ($(this).attr("type")=="select-one" && $(this).attr("value")=="0") {
            check=false;
            $(this).css("color", "#000000");
        }
        if ($(this).hasClass("mandatory_email")) {
            if (!/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test($(this).val())) {
                check=false;
                $(this).css("color", "#c1151f");
            }
        }

    });
    if (check) $(pform).submit();
    if (!check) {
        // alert("Bitte überprüfen Sie Ihre Daten!");
    }
                
    $('.watermark').watermark('watermark');
}

/* Text und Bild */
function resize_image_floats() {
    $(document).find(".imageleft, .imageright").each(function (i) {
        var w = $(this).find("img").width();
        $(this).css("width", w);
    });        
}

/* Layer */
function open_layer(type, content) {
    if (type == "text" || type == "map") { // Text Layer
        if ($("#layercover").length == 0) $("body").append('<div id="layercover"></div>'); // Abdeckung
        $("#layercover").css("height", $(document).height());        
        if ($("#layer").length > 0) { // Layer
            $("#layer").remove();
        }
                        
        if (type == "map") {
            $("body").append('<div id="layer" style="display: none";><div id="layercloser"></div><div id="layer_in" class="layercontent_map">' + $(content).html() + '</div></div>');
        } else {
            $("body").append('<div id="layer" style="display: none";><div id="layercloser"></div><div id="layer_in" class="layercontent">' + $(content).html() + '</div></div>');                          
        }
                        
        $("#layer").css("top", ( $(window).height() - $("#layer").height() ) / 2+$(window).scrollTop() + "px");
        $("#layer").css("left", ( $(window).width() - $("#layer").width() ) / 2 + "px");
        
        $("#layercover").fadeTo('fast', 0.7, function() {
            $(content).css("top", "30px");
            $("#layer").fadeIn();
            $("#layer_in").fadeIn();
        });    
        
        $("#layercloser").unbind('click');
        $("#layercloser").click(function() {
            $("#layer").fadeOut();
            $("#layer_in").fadeOut('fast', function() {
                    $("#layercover").fadeOut();                                                                                                        
                }
            );
        });
        
        $("#layercover").unbind('click');
        $("#layercover").click(function() { $("#layercloser").trigger("click"); });
        
    }
    
}

/* Videos / Videos Slider */
function video_slider(videos) {
    var left = 0;
    var i = 0;
    $.each(videos, function(index, value) { 
        var html = ''+
            '<div class="video_item" style="left:' + left + 'px;">'+
            ' <div class="title" onclick="video_play(\'' + value.video + '\')">' + value.title + '</div>'+
            '    <div class="picture">'+
            '     <div class="playbutton" onclick="video_play(\'' + value.video + '\')"></div>'+            
            '        <img onclick="video_play(\'' + value.video + '\')" src="' + value.image + '" alt="' + value.text + '" title="' + value.text + '" />'+
            ' </div>'+
            ' <div class="description">' + value.text + '</div>'+
            ' <div class="download" onclick="video_download(\'' + value.video + '\')">&raquo; Download - ' + value.size + '</div>'+
          '</div>'+
        '';
        $("#video_slider").append(html);
        $(".video_item").last().data("sort", i);
        left += 210;
        i++;
    });
    if (videos.length > 2) {
        $("#video_slider_next").click(function() {
            video_scroll();
        });
    } else {
        $("#video_slider_next").css("display", "none");
    }
}

function video_scroll() {
    $(".video_item").each(function (i) {
        var psort = $(this).data("sort");
        psort--;
        if (psort < -1) {
            psort = $(".video_item").length-2;
            $(this).css("left", psort*210+210 + "px");
    }
        $(this).data("sort", psort);
    });
    $(".video_item").each(function (i) {
        var left = $(this).data("sort") * 210;                                                                                     
        $(this).stop().animate({"left": left + "px"}, {easing: 'easeOutQuad', duration: 500});                 
    });
}

function video_play(videofile) {
    if ($("#layercover").length == 0) $("body").append('<div id="layercover"></div>'); // Abdeckung
    $("#layercover").css("height", $(document).height());      
    
    if ($("#videolayer").length > 0) { // Layer
        $("#videolayer").remove();
    }
        
    var videohtml = ''+
    '<video poster="/images/' + videofile + '.jpg" id="video5" width="640" height="360" autoplay="autoplay" loop="loop" controls="controls" tabindex="0" >'+
    '  <source src="/videos/' + videofile + '.mp4" type=\'video/mp4; codecs="avc1.42E01E, mp4a.40.2"\' />'+
    '  <source src="/videos/' + videofile + '.webm" type=\'video/webm; codecs="vp8, vorbis"\' />'+
    '  <source src="/videos/' + videofile + '.OGG" type=\'video/ogg; codecs="theora, vorbis"\' />'+
    '        <object id="player" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" name="player" width="640" height="360">'+
    '            <param name="movie" value="/flash/player.swf" />'+
    '            <param name="allowfullscreen" value="true" />'+
    '            <param name="allowscriptaccess" value="always" />'+
    '            <param name="flashvars" value="file=/videos/' + videofile + '.flv&image=/images/' + videofile + '.jpg&autostart=true&controlbar.position=over" />'+
    '            <embed'+
    '                type="application/x-shockwave-flash"'+
    '                id="player2"'+
    '                name="player2"'+
    '                src="/flash/player.swf" '+
    '                width="640" '+
    '                height="360"'+
    '                allowscriptaccess="always" '+
    '                allowfullscreen="true"'+
    '                flashvars="file=/videos/' + videofile + '.flv&image=/images/' + videofile + '.jpg&autostart=true&controlbar.position=over" '+
    '            />'+
    '        </object>'+
    '</video>';
    
    $("body").append('<div id="videolayer" style="display: none";><div id="layercloser"></div><div id="layer_in" class="layercontent">' + videohtml + '</div></div>');
    
    $("#videolayer").css("top", ( $(window).height() - $("#videolayer").height() ) / 2+$(window).scrollTop() + "px");
    $("#videolayer").css("left", ( $(window).width() - $("#videolayer").width() ) / 2 + "px");
    
    $("#layercover").fadeTo('fast', 0.7, function() {
        $("#videolayer").fadeIn();
        $("#layer_in").fadeIn();
    });    
    
    $("#layercloser").unbind('click');
    $("#layercover").unbind('click');
    
    $("#layercloser").click(function() {
        $("#videolayer").fadeOut('fast', function() { $("#videolayer").remove(); $("#video5").remove(); });
        $("#layer_in").fadeOut('fast', function() {
                $("#layer_in").remove();
                $("#layercover").fadeOut('fast', function() { $("#layercover").remove(); });                                                                                                        
            }
        );
    });
    
    $("#layercover").click(function() { $("#layercloser").trigger("click"); });
}

function video_download(videofile) {
    window.open("/videos/" + videofile + ".zip", "Download");
}
 
/* WNT Karte */
function map_create(divid, divbid, map_entries) {
    
    $(divid).html("");
    $(divbid).html("");
                
    var closer = '<div id="wnt_map_closer"></div>';
    $(divid).append(closer);
    $('#wnt_map_closer').die('click');
    $("#wnt_map_closer").live("click", function() {
        $("#layercloser").trigger("click");
    });           
                
    var i = 0;
    $.each(map_entries, function(index, value) { 
        var pin_class = "wnt_map_pin";
        if (value.pin=="red") pin_class="wnt_map_pin_red";
        var html = '<div onclick="show_map_bubble(\'wnt_map_pin_' + i + '_bubble\');" class="' + pin_class + '" id="wnt_map_pin_' + i + '" style="left: ' + value.x + 'px; top: ' + value.y + 'px;"></div>';
        $(divid).append(html);
        
        var px = parseInt(value.x);
        var py = parseInt(value.y)-163;        
        var bubble = '<div class="wnt_map_bubble wnt_map_pin_' + i + '_bubble" style="left: ' + px + 'px; top: ' + py + 'px;">'+
            '<div class="close" id="wnt_map_bubble_' + i + '_close">&nbsp;</div>'+
            '<div class="image"><img src="' + value.image + '" alt="' + value.title + '" title="' + value.title + '" /></div>'+            
            '    <div class="content">'+
            '        <h2>' + value.title + '</h2>'+ value.address +
            '<br /><a href="http://maps.google.com/maps?saddr=&daddr=' + value.destination + '&maptype=roadmap" target="_blank">Google Maps &raquo;</a>'+
            '    </div>'+
            '</div>';
        
        $(divbid).append(bubble);
        i++;
    });

    
}
function show_map_bubble(pclass) {
    $(".wnt_map_bubble").hide();
    $("." + pclass).show();    
}
$(".wnt_map_bubble .close").live("click", function() {
    $(this).parent().hide();
});
/* !! Änderung in function open_layer(type, content) { .... if ... map */
/* Ende WNT Karte */
/*LOGO*/
function resize_topleft_box() {
                var w1 = $("#main .topleft_box .logo").width();
                if (w1==0) { // Logo links fehlt, Text von ganz links bis Ende Contentbox
                               $("#main .topleft_box .text").css("width", "655px");                                                                   
                } else {
                               var w2_margin = 130-w1;
                               $("#main .topleft_box .text").css("margin-left", w2_margin + "px");                                                                   
                               $("#main .topleft_box .text").css("width", "500px");                                                                   
                }              
}
