makeSlide = function(domObj,w,h,divx,divy)
{
	x.Object.fromDOM(domObj);

	domObj.prvImgs = new Array();

	while (domObj.childNodes.length > 0)
	{
		if (domObj.childNodes[0].tagName == "IMG")
		{
			x.Object.fromDOM(domObj.childNodes[0]);

			if (x.imageLoaded(domObj.childNodes[0]))
			{			
				domObj.prvImgs.push(domObj.childNodes[0]);
			}
			else
			{
				domObj.childNodes[0].slide = domObj;
				domObj.childNodes[0].onload = makeSlide.onloadEH;
			}
		}

		domObj.removeChild(domObj.childNodes[0]);
	}

	var uw = Math.round(w/divx);
	var uh = Math.round(h/divy);

	domObj.setSize(w,h);
	domObj.prvParts = new Array();

	for (var i = 0; i < divx ; i++ )
	{
		domObj.prvParts.push(new Array());

		for(var j = 0; j < divy; j++)
		{
			var div = x.Object.fromTag("div");
			
			div.setSize( (i < divx-1) ? uw : w-i*uw, (j < divy-1) ? uh : h-j*uh);
			div.style.position = "relative";
			div.style.cssFloat = div.style.styleFloat = "left";

			div.style.backgroundPosition = (-i*uw)+"px "+(-j*uh)+"px";
			div.style.backgroundImage = domObj.style.backgroundImage;

			domObj.prvParts[i].push(div);
		}
	}

	for (var j = 0; j < domObj.prvParts[0].length ; j++ )
	{
		for (var i = 0; i < domObj.prvParts.length ; i++ )
		{
			domObj.appendChild(domObj.prvParts[i][j]);
		}
	}

	domObj.addPhoto = function(url)
	{
		var img = x.Object.fromTag("img");

		img.src = url;

		if (x.imageLoaded(img))
		{
			domObj.prvImgs.push(img);
		}
		else
		{
			img.slide = domObj;
			img.onload = makeSlide.onloadEH;
		}

	}

	domObj.play = function()
	{
		if (makeSlide.slide.prvImgs.length == 0)
		{
			var timer = new x.utils.Timer(200,1);			

			timer.addListener(makeSlide.slide.play);
			timer.start();
		}
		else
		{
			makeSlide.slide.playOnce();
			var timer = new x.utils.Timer(500,1);			

			timer.addListener(makeSlide.slide.play);
			timer.start();
		}
	}

	domObj.playOnce = function()
	{
		makeSlide.slide.style.backgroundImage = "none";

		x.fx.Manager.addEffect(new x.fx.ChangeAlpha(makeSlide.slide,0,10,function()
		{
			x.fx.Manager.removeEffectsByTarget(makeSlide.slide);
			makeSlide.slide.setAlpha(100);
			for (var i = 0; i < makeSlide.slide.prvParts.length ; i++ )
			{				
				for (var j = 0; j < makeSlide.slide.prvParts[i].length ; j++ )
				{
					x.fx.Manager.removeEffectsByTarget(makeSlide.slide.prvParts[i][j]);
					makeSlide.slide.prvParts[i][j].setAlpha(0);
					makeSlide.slide.prvParts[i][j].style.backgroundImage = "url('"+makeSlide.slide.prvImgs[0].src+"')";

					//var speed = 2+20*(i*makeSlide.slide.prvParts[0].length + j)/(makeSlide.slide.prvParts.length*makeSlide.slide.prvParts[0].length);

					x.fx.Manager.addEffect(new x.fx.ChangeAlpha(makeSlide.slide.prvParts[i][j],100,Math.random()*5+3));
				}
			}
		}));
		var img = makeSlide.slide.prvImgs.shift();
		makeSlide.slide.prvImgs.push(img);
	}
	
	makeSlide.slide = domObj;
	return domObj;
}

makeSlide.onloadEH = function()
{
	this.slide.prvImgs.push(this);
}
