// ZSite widget library -- resizer widget routines
// (c) Zagorodnikov Anton 2007-2008

var zsite_resizerbar_oldmousemove = null;
var zsite_resizerbar_oldmouseup = null;

var zsite_resizerbar_size = Array();
var zsite_resizerbar_minsize = Array();
var zsite_resizerbar_hiddensize = Array();
var zsite_resizerbar_folded = Array();

var zsite_resizerbar_types = Array();

function zsite_resizerbar_init(id, type)
{
	zsite_resizerbar_folded[id] = false;
	zsite_resizerbar_types[id] = type;
}

function zsite_resizerbar_fold(id)
{
	if(zsite_resizerbar_size[id] == null)
	{
		zsite_resizerbar_size[id] = dojo._getMarginBox(dojo.byId(id+'_resizerbar_container')).w;
		zsite_resizerbar_minsize[id] = zsite_resizerbar_size[id];
	}

	if(zsite_resizerbar_folded[id])
	{
		if((zsite_resizerbar_types[id] == 3)||(zsite_resizerbar_types[id] == 4))
		{
		    dojo.byId(id+'_resizerbar_container').style.height = zsite_resizerbar_size[id] + 'px';
		    dojo.byId(id+'_resizerbar_container').style.width = '';
		}
		else
		{
		    dojo.byId(id+'_resizerbar_container').style.width = zsite_resizerbar_size[id] + 'px';
		    dojo.byId(id+'_resizerbar_container').style.height = '';
		}

	    dojo.byId(id+'_resizerbar_content').style.display = '';


		if(zsite_resizerbar_types[id] == 1)
		    dojo.byId(id+'_resizerbar_moverimg').style.background = 'url('+zsitewww+'res/images/controls/resizerbar/resizerbar_handle_left.gif)';
		else if(zsite_resizerbar_types[id] == 2)
		    dojo.byId(id+'_resizerbar_moverimg').style.background = 'url('+zsitewww+'res/images/controls/resizerbar/resizerbar_handle_right.gif)';
		else if(zsite_resizerbar_types[id] == 3)
		    dojo.byId(id+'_resizerbar_moverimg').style.background = 'url('+zsitewww+'res/images/controls/resizerbar/resizerbar_handle_top.gif)';
		else
		    dojo.byId(id+'_resizerbar_moverimg').style.background = 'url('+zsitewww+'res/images/controls/resizerbar/resizerbar_handle_bottom.gif)';
	}
	else
	{


		if((zsite_resizerbar_types[id] == 3)||(zsite_resizerbar_types[id] == 4))
		{
		    zsite_resizerbar_hiddensize[id] = dojo._getMarginBox(dojo.byId(id+'_resizerbar_container')).w;
		    dojo.byId(id+'_resizerbar_container').style.height = '5px';
		    dojo.byId(id+'_resizerbar_container').style.width = zsite_resizerbar_hiddensize[id] + 'px';
		}
		else
		{
		    zsite_resizerbar_hiddensize[id] = dojo._getMarginBox(dojo.byId(id+'_resizerbar_container')).h;
		    dojo.byId(id+'_resizerbar_container').style.width = '5px';
		    dojo.byId(id+'_resizerbar_container').style.height = zsite_resizerbar_hiddensize[id] + 'px';
		}



	    dojo.byId(id+'_resizerbar_content').style.display = 'none';

		if(zsite_resizerbar_types[id] == 1)
		    dojo.byId(id+'_resizerbar_moverimg').style.background = 'url('+zsitewww+'res/images/controls/resizerbar/resizerbar_handle_right.gif)';
		else if(zsite_resizerbar_types[id] == 2)
		    dojo.byId(id+'_resizerbar_moverimg').style.background = 'url('+zsitewww+'res/images/controls/resizerbar/resizerbar_handle_left.gif)';
		else if(zsite_resizerbar_types[id] == 3)
		    dojo.byId(id+'_resizerbar_moverimg').style.background = 'url('+zsitewww+'res/images/controls/resizerbar/resizerbar_handle_bottom.gif)';
		else
		    dojo.byId(id+'_resizerbar_moverimg').style.background = 'url('+zsitewww+'res/images/controls/resizerbar/resizerbar_handle_top.gif)';
	}

	zsite_resizerbar_folded[id] = !zsite_resizerbar_folded[id];
}

function zsite_resizerbar_resize(id)
{
	if(zsite_resizerbar_folded[id]) return;

	zsite_resizerbar_oldmouseup = zsite_mouseup_handlers; 
	zsite_mouseup_handlers = function()
	{
		zsite_mouseup_handlers = zsite_resizerbar_oldmouseup;
		zsite_mousemove_handlers = zsite_resizerbar_oldmousemove;
	};

	zsite_resizerbar_oldmousemove = zsite_mousemove_handlers;
	zsite_mousemove_handlers = function()
	{
		if(zsite_resizerbar_size[id] == null)
		{
			if((zsite_resizerbar_types[id] == 3)||(zsite_resizerbar_types[id] == 4))
			{
				zsite_resizerbar_size[id] = dojo._getMarginBox(dojo.byId(id+'_resizerbar_content')).h+5;
			}
			else
				zsite_resizerbar_size[id] = dojo._getMarginBox(dojo.byId(id+'_resizerbar_container')).w;

			zsite_resizerbar_minsize[id] = 10;//zsite_resizerbar_size[id];
		}

		if((zsite_resizerbar_types[id] == 3)||(zsite_resizerbar_types[id] == 4))
		{
			zsite_resizerbar_size[id] = zsite_resizerbar_size[id] - (mousey - prevposy);
		}
		else
			zsite_resizerbar_size[id] = zsite_resizerbar_size[id] - (mousex - prevposx);

		if(zsite_resizerbar_size[id] < zsite_resizerbar_minsize[id]) zsite_resizerbar_size[id] = zsite_resizerbar_minsize[id];


		if((zsite_resizerbar_types[id] == 3)||(zsite_resizerbar_types[id] == 4))
			dojo.byId(id+'_resizerbar_content').style.height = (zsite_resizerbar_size[id])+'px';
		else
			dojo.byId(id+'_resizerbar_container').style.width = (zsite_resizerbar_size[id])+'px';

		zsite_resizerbar_oldmousemove();
	};
}

