function setHomeBox(id, hasScroll)
{
	var container = d.getElementById(id);
	var mask = getElementsByClassName(container, 'mask')[0];
	var btnEnlarge = getElementsByClassName(container, 'btnEnlarge')[0];
	var diffH = 170;
	var boxIsOpen = false;
	var self = this;
	
	if (hasScroll)
	{
		var track = getElementsByClassName(container, 'Scrollbar-Track')[0];
		var scrollContainer = mask;
		var scroll = getElementsByClassName(container, 'scrollbar')[0];
		var scroller  = new Scrolling.Scroller(scrollContainer, scroll.offsetWidth, scroll.offsetHeight);
		var scrollbar = new Scrolling.Scrollbar(scroll, scroller, new Scrolling.ScrollTween());
	}
	
	this.init = function()
	{
		mask.initH = mask.offsetHeight;
		mask.endH = mask.offsetHeight + diffH;
		
		btnEnlarge.onclick = function()
		{
			self.boxOpen(!boxIsOpen);
		}
	};
	
	this.boxOpen = function(isOpen)
	{
		if (isOpen)
		{
			btnEnlarge.className += ' active';
			mask.H = mask.endH;
			if (hasScroll)	self.resetScroll();
		}
		else
		{
			btnEnlarge.className = btnEnlarge.className.replace(/active/, '');
			mask.H = mask.initH;
		}
		
		this.motion(mask);
		boxIsOpen = isOpen;
	};
	
	this.resetScroll = function()
	{
		scroller.swapContent(scrollContainer, scroll.offsetWidth, scroll.offsetHeight);
		scrollbar.swapContent(scrollContainer, scroll.offsetWidth, scroll.offsetHeight);
	};
	
	this.motion = function(obj, start)
	{
		if (start)
		{
			obj.style.height = obj.H + 'px';
			return;
		}
		
		obj.objH = obj.offsetHeight;
		
		obj.goStep = (obj.H - obj.objH)/5;
		if (obj.goStep > 0)	obj.goStep = Math.ceil(obj.goStep);
		if (obj.goStep < 0)	obj.goStep = Math.floor(obj.goStep);

		if (!(Math.abs(obj.objH - obj.H) < 1))
		{
			obj.objH += obj.goStep;
			obj.timeOut = setTimeout(function(){self.motion(obj);}, 10);
		}
		else
		{
			obj.objH = obj.H;
			clearTimeout(obj.timeOut);
			if (hasScroll)	self.resetScroll();
		}
		
		obj.style.height = obj.objH + 'px';
		if (hasScroll)	track.style.height = (obj.objH - 4) + 'px';
		//window.status = obj.offsetHeight + '  :  ' + obj.H;
	};
	
	this.init();
}

