$(document).ready(function() {
	var delay = 4500;

	setInterval(function(){
    shuffleImages();
  },delay);

});

/* this function from:
 * http://www.admixweb.com/2010/08/24/javascript-tip-get-a-random-number-between-two-integers/
 */
function randomFromTo(from, to){
    return Math.floor(Math.random() * (to - from + 1) + from);
}


function shuffleImages() {
	var children = $("#shuffle").children();
	var child = $("#shuffle div:first-child");
	var imagesNo = 6;

	var array_img = new Array();

	var array_img_unigue = new Array();



	for (i=0; i<children.length; i++) {

		$("#box"+(i+1)).fadeOut(50+(i+1)*100);
		array_img[i] = $("#"+child.attr("id")+" img").attr("src");
		child = child.next();
	}

	var child = $("#shuffle div:first-child");


	shuffle(array_img);

	//var arr = new Array('http://www.kate.ro/container/img/synevo-01-50b735aec649c312bc3527109da436b4_88_40.jpg','http://www.kate.ro/container/img/synevo-01-50b735aec649c312bc3527109da436b4_88_40.jpg',4,2,6,4,8,6,10);

	array_img_unique = unique(array_img)

	//array_img_unique = unique(array_img);
	//alert(array_img.toString());
	//alert(array_img_unique.toString());

	//console.log(array_img);

	//console.log(array_img_unique);

	//array_img_cut = array_img.slice(0,imagesNo+1);

	for (z=0; z<imagesNo; z++) {
		randIndex = randomFromTo(0, array_img_unique.length - 1);

		// set new image
		$("#"+child.attr("id")+" img").attr("src", array_img_unique[randIndex]);
		$("#box"+(z+1)).fadeIn(10+(z+1)*250);

		array_img_unique.splice(randIndex, 1);

		child = child.next();
	}


}

function shuffle(ary) {
	var s = [];
	while (ary.length)
		s.push(ary.splice(Math.random() * ary.length, 1));
	while (s.length)
		ary.push(s.pop());
}

function unique(arrayName){
  var newArray=new Array();
  label:for(var i=0; i<arrayName.length;i++ )
  {
  	for(var j=0; j<newArray.length;j++ )
  	{
  		if(newArray[j].toString()==arrayName[i].toString())
  		continue label;
  	}
  	newArray[newArray.length] = arrayName[i].toString();
  }
  return newArray;
}

(function($){

    var _old = $.unique;

    $.unique = function(arr){

        // do the default behavior only if we got an array of elements
        if (!!arr[0].nodeType){
            return _old.apply(this,arguments);
        } else {
            // reduce the array to contain no dupes via grep/inArray
            return $.grep(arr,function(v,k){
                return $.inArray(v,arr) === k;
            });
        }
    };
})(jQuery);

