/* jQuery.preloader - v0.95 - K Reeve aka BinaryKitten
*
* v0.95
*     # Note - keeping below v1 as really not sure that I consider it public usable.
*     # But it saying that it does the job it was intended to do.
*     Added Completion of loading callback.
*     Main Reworking With Thanks to Remy Sharp of jQuery for Designers
*
*
* v0.9
*     Fixed .toString being .toSteing
*
* v0.8
*        Fixed sheet.href being null error (was causing issues in FF3RC1)
*
* v0.7
*        Remade the preLoadImages from jQuery to DOM
*
* v0.6
*         Fixed IE6 Compatability!
*        Moved from jQuery to DOM
*
* v0.5
*         Shifted the additionalimages loader in the preLoadAllImages so it wasn't called multiple times
*         Created secondary .preLoadImages to handle additionalimages and so it can be called on itself
*/

(function ($) {
    $.preLoadImages = function(imageList,callback) {
        var pic = [], i, total, loaded = 0;
        if (typeof imageList != 'undefined') {
            if ($.isArray(imageList)) {
                total = imageList.length; // used later
                    for (i=0; i < total; i++) {
                        pic[i] = new Image();
                        pic[i].onload = function() {
                            loaded++; // should never hit a race condition due to JS's non-threaded nature
                            if (loaded == total) {
                                if ($.isFunction(callback)) {
                                    callback();
                                }
                            }
                        };
                        pic[i].src = imageList[i];
                    }
            }
            else {
                pic[0] = new Image();
                pic[0].onload = function() {
                    if ($.isFunction(callback)) {
                        callback();
                    }
                }
                pic[0].src = imageList;
            }
        }
        pic = undefined;
    };

    $.preLoadCSSImages = function(callback) {
        var pic = [], i, imageList = [], loaded = 0, total, regex = new RegExp("url\((.*)\)",'i'),spl;
        var cssSheets = document.styleSheets, path,myRules,Rule,match,txt,img,sheetIdx,ruleIdx;
        for (sheetIdx=0;sheetIdx < cssSheets.length;sheetIdx++){
            var sheet = cssSheets[sheetIdx];
            if (typeof sheet.href == 'string' && sheet.href.length > 0) {
                spl = sheet.href.split('/');spl.pop();path = spl.join('/')+'/';
            }
            else {
                path = './';
            }
            myRules = sheet.cssRules ? sheet.cssRules : sheet.rules;
            for (ruleIdx=0;ruleIdx < myRules.length;ruleIdx++) {
                Rule = myRules[ruleIdx];
                txt = Rule.cssText ? Rule.cssText : Rule.style.cssText;
                match = regex.exec(txt);
                if (match != null) {
                    img = match[1].substring(1,match[1].indexOf(')',1));
                    if (img.substring(0,4) == 'http') {
                        imageList[imageList.length] = img;
                    }
                    else if ( match[1].substring(1,2) == '/') {
                        var p2 = path.split('/');p2.pop();p2.pop();p2x = p2.join("/");
                        imageList[imageList.length] = p2x+img;
                    }
                    else {
                        imageList[imageList.length] = path+img;
                    }
                }
            };
        };

        total = imageList.length; // used later
        for (i=0; i < total; i++) {
            pic[i] = new Image();
            pic[i].onload = function() {
                loaded++; // should never hit a race condition due to JS's non-threaded nature
                if (loaded == total) {
                    if ($.isFunction(callback)) {
                        callback();
                    }
                }
            };
            pic[i].src = imageList[i];
        }

    };
    $.preLoadAllImages = function(imageList,callback) {
        if (typeof imageList != 'undefined') {
            if ($.isFunction(imageList)) {
                callback = imageList;
            }
            else if (!$.isArray(imageList)) {
                imageList = [imageList];
            }
        }
        $.preLoadCSSImages(function(){
            if (imageList.length > 0) {
                $.preLoadImages(imageList,function(){
                    callback();
                });
            }
            else {
                callback();
            }
        });
    }
    
    $.preLoadImages(
     ["fileadmin/Hintergrundbilder/new/final_1.jpg","fileadmin/Hintergrundbilder/new/final_2.jpg","fileadmin/Hintergrundbilder/new/final_3.jpg","fileadmin/Hintergrundbilder/new/final_4.jpg","fileadmin/Hintergrundbilder/new/final_5.jpg"],
     function(){
          return;
     }
    );
})(jQuery);



$(document).ready(function(){
    var moviehieght = 0;
    if(isIOS()) {
        movieheight = parseInt(window.innerHeight) - 30; 
        $('#menu').css({display:"none"});
        $('body').append($('<div id="skipintro"><a href="de/news.html">Skip Intro</a></div>'));
        $('body').attr('id', 'ios');
    }
    else { movieheight = "100%"; }
    
    //alert(movieheight);
    
    jwplayer("startmovie").setup({
        flashplayer: "http://www.distanz.de/fileadmin/templates/swf/player.swf",
        file: "http://d3922kgphsej27.cloudfront.net/distanz_video_ipad.m4v",
        image: "http://www.distanz.de/fileadmin/videos/dis_fallback.jpg",
        height: movieheight,
        width: "100%",
        skin: "http://www.distanz.de/fileadmin/templates/swf/boros.zip",
        "controlbar.position": "none",
        stretching: "fill",
        screencolor: "0xffffff",
        background: "0xffffff",
        autostart: "true",
        showicons: "false",
        repeat: "always",
        modes: [{
            type: "flash",
            src: "http://www.distanz.de/fileadmin/templates/swf/player.swf"
        },{
            type: "html5",
            config: {
                file: "http://d3922kgphsej27.cloudfront.net/distanz_video_ipad.m4v",
                provider: "video"
            }
        }]
    });
    
    $('#menu a').click(function(event) {
        jwplayer("startmovie").stop();    
    });
});

$(document).ready(function(){
    $('#menu a').click(function(event) {
        //var distanzmovie = document.getElementById("distanzmovie");
        //distanzmovie.stopMovie();
        //return false;
        //alert('test');
        //return false;
    });
    
    $('#startmovie_wrapper').click(function(event) {
        //var distanzmovie = document.getElementById("distanzmovie");
        //distanzmovie.stopMovie();
        //return false;
        //alert('test');
        //return false;
    });
});

isIOS = function () {
    var a = navigator.userAgent.toLowerCase();
    return (a.match(/iP(hone|ad)/i) !== null);
};
