﻿/* **************************************************
   *                                                *
   *   Copyright © 2006-2010 by Dominic Griesel     *
   *                                                *
   ************************************************** */

var progress_text;

var preloadSources = new Array(
    "flash/Newsticker.swf",
    "images/balken.jpg",
    "images/band_bra_b.jpg",
    "images/band_bra_chris.jpg",
    "images/band_bra_empty1.jpg",
    "images/band_bra_empty2.jpg",
    "images/band_bra_kai.jpg",
    "images/band_bra_laumann.jpg",
    "images/band_bra_sebo.jpg",
    "images/band_bra_t.jpg",
    "images/band_emp_b.jpg",
    "images/band_emp_t.jpg",
    "images/band_rhy_b.jpg",
    "images/band_rhy_dominic.jpg",
    "images/band_rhy_empty1.jpg",
    "images/band_rhy_empty2.jpg",
    "images/band_rhy_hertel.jpg",
    "images/band_rhy_maxi.jpg",
    "images/band_rhy_t.jpg",
    "images/band_rhy_zehner.jpg",
    "images/band_voc_b.jpg",
    "images/band_voc_flo.jpg",
    "images/band_voc_kathlen.jpg",
    "images/band_voc_katrin.jpg",
    "images/band_voc_t.jpg",
    "images/contentbox_b.png",
    "images/contentbox_bl.png",
    "images/contentbox_br.png",
    "images/contentbox_l.png",
    "images/contentbox_r.png",
    "images/contentbox_t.png",
    "images/contentbox_tl.png",
    "images/contentbox_tr.png",
    "images/fadeout.png",
    "images/header_l.jpg",
    "images/header_m.jpg",
    "images/header_m_band.png",
    "images/header_m_guestbook.png",
    "images/header_m_home.png",
    "images/header_m_impressum.png",
    "images/header_m_kontakt.png",
    "images/header_m_media.png",
    "images/header_m_presse.png",
    "images/header_m_repertoire.png",
    "images/header_m_termine.png",
    "images/i.png",
    "images/kontakt_inhalt.jpg",
    "images/loading.gif",
    "images/media_inhalt.jpg",
    "images/navi_band.jpg",
    "images/navi_bg.jpg",
    "images/navi_bg.png",
    "images/navi_gb.jpg",
    "images/navi_home.jpg",
    "images/navi_kontakt.jpg",
    "images/navi_l.jpg",
    "images/navi_media.jpg",
    "images/navi_presse.jpg",
    "images/navi_repertoire.jpg",
    "images/navi_termine.jpg",
    "images/past.png",
    "images/repertoireinhalt.jpg", //"images/right.jpg",
    "images/right_band.jpg",
    "images/right_guestbook.jpg",
    "images/right_impressum.jpg",
    "images/right_kontakt.jpg",
    "images/right_media.jpg",
    "images/right_presse.jpg",
    "images/right_repertoire.jpg",
    "images/right_termine.jpg",
    "images/showcasetest.jpg",
    "images/showcase_aufhaengung.jpg",
    "images/showcase_next.png",
    "images/showcase_prev.png",
    "images/showcase_seile.png",
    "images/spacer.jpg",
    "images/thisyear.png", 
    "script/highlight.js",
    "script/script.js",
    "script/showcase.js",
    "style/band.css",
    "style/guestbook.css",
    "style/page.css",
    "style/presse.css",
    "style/showcase.css",
    "style/termine.css",
    "band.html",
    "home.html",
    "impressum.html",
    "kontakt.html",
    "media.html",
    "presse.html",
    "repertoire.html",
    "trumpet.aspx"
    );
var preloadImages = new Array();
var finished = 0;
var _forward = true;
var done = new Array();
var blah = "";
var _debug = false;

function ImageCompleted() {
    if (this != undefined && this.src != undefined && done.indexOf(this.src) == -1) {
        done.push(this.src);
        blah += "Completed: " + this.src + "\r\n<br />";
    }
    showProgress(done.length * 100 / preloadImages.length);
    if (done.length == preloadImages.length && _forward) {
        if (_debug)
            document.writeln(blah);
        else
            setTimeout('location.href = "home.html";', 200);
    }
}

function ImageError() {
    if (done.indexOf(this.src) == -1) done.push(this.src);   
    blah += "Error: " + this.src + "\r\n<br />";
    ImageCompleted();
}

function startPreload(forward) {
    if (forward == false) _forward = false;
    progress_text = findObj("progress");
    
    for (var i = 0; i < preloadSources.length; i++) {
        var src = preloadSources[i];
        if ((!is_saf) || GoodForSafari(src)) {
            var img = new Image();
            img.onload = ImageCompleted;
            img.onerror = ImageError;
            img.onabort = ImageError;
            img.src = src;
            preloadImages.push(img);
        }
    }
}

function GoodForSafari(src) {
    return !(src.endsWith(".swf") || src.endsWith("/script.js"));
}

function showProgress(progress)
{
    progress = Math.round(progress);
    progress_text.innerHTML = progress + "%";
}

function whatIsMissing() {
    var missing = new Array();
    for (var i in preloadImages) {
        var img = preloadImages[i];
        if (done.indexOf(img.src) == -1) missing.push(img.src);
    }
    return missing;
}
