﻿

// change these paths for your images
var myImages = ['http://www.vistavusolutions.com/img/1.jpg', 'http://www.vistavusolutions.com/img/3.jpg', 'http://www.vistavusolutions.com/img/5.jpg', 'http://www.vistavusolutions.com/img/bhb.jpg', 'http://www.vistavusolutions.com/img/biovision.jpg', 'http://www.vistavusolutions.com/img/edEx.jpg', 'http://www.vistavusolutions.com/img/gasfrac.jpg', 'http://www.vistavusolutions.com/img/skodopole.jpg'];

// how many times should the photo change per page load
var maxChanges = myImages.length * 2;

// shuffle images so each time page loads, the photos show in different order
var do_shuffle = true;

// use simple randomness instead of shuffling (tends to repeat images too often)
var do_randomly = false;

// number of seconds between photo changes
var seconds_between_photos = 10;

// name of DIV to load photos into
var div_name = "loader";



var changes = 0;
var timer;
var thisImg = myImages.length - 1;

//+ Jonas Raoni Soares Silva
//@ http://jsfromhell.com/array/shuffle [v1.0]

shuffle = function (o) { //v1.0
    for (var j, x, i = o.length; i; j = parseInt(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x);
    return o;
};


// shuffling is better than random because of less potential repetition
if (do_shuffle) {
    myImages = shuffle(myImages);
}

function nextImage() {

    var low = 0;
    var high = myImages.length - 1;
    var rand_no = Math.floor((high - (low - 1)) * Math.random()) + low;

    thisImg++;
    changes++;
    if (thisImg == myImages.length) {
        thisImg = 0;
    }
    if (changes == maxChanges) {
        clearInterval(timer);
    }
    if (do_randomly) {
        thisImg = rand_no;
        return myImages[rand_no];
    } else {
        return myImages[thisImg];
    }
}

function changeImage() {

    var t = myImages[thisImg];
    var n = nextImage();

    if (t != n) {
        $("#" + div_name).addClass("loading");
        showImage(n);
    } else {
        changeImage();
    }
}

function showImage(src) {
    $("#" + div_name + " img").fadeOut("normal").remove();
    var largeImage = new Image();
    $(largeImage).load(function () {
        $(this).hide();
        $("#" + div_name).append(this).removeClass("loading");

        $(this).fadeIn("slow");
    });
    $(largeImage).attr("src", src);
}

function checkForLoaded() {
    if (document.getElementById(div_name) != null) {
        //alert("loaded");
        clearInterval(timer);
        changeImage();
        timer = setInterval(changeImage, (seconds_between_photos * 1000));
    }
}

// check every second to see if DIV exists, when it does, start photo changing timer
timer = setInterval(checkForLoaded, 500);
