function disp_mselected_vals( sel, field, mode, emptyText )
{

	var str = "";
	var div = "";

	var totitems = 0;
	var selitems = 0;

	if ( !mode)
		mode = 0;

	for (var i = 0; i < sel.options.length; i++)
	{
		totitems++;
		if (sel.options[i].selected)
			selitems++;
	}

	var excdisp = false;
	if ( totitems > 30 && selitems > totitems/2 )
		excdisp = true;


	for (var i = 0; i < sel.options.length; i++)
	{
		var flag = excdisp ? !sel.options[i].selected : sel.options[i].selected;

		if (flag)
		{
			str += div + ( mode == 0 ? sel.options[i].value : sel.options[i].text );
			div = ", ";
		}
	}

	var lstdiv = null;
	if (document.getElementById)
		lstdiv = document.getElementById(field + '_selvals');
	else if (document.all)
		lstdiv = document.all[field + '_selvals'];
	else if (document.layers)
		lstdiv = document.layers[field + '_selvals'];

	if ( excdisp )
		str = "<b>"+_Phrase("APP_GD_AllExcept")+"</b> " + str;
	if( str.length == 0 ) str = emptyText ? emptyText : _Phrase("APP_GD_None"); //"None";
	if( totitems == selitems ) str = _Phrase("APP_GD_All"); // All

	if( lstdiv ) lstdiv.innerHTML=str;
}


function select_mselected_items(e)
{
	var el = eventhandler(e);

	for (var i = 0; i < el.options.length; i++)
	{
		if ((el.options[i].selected === false) && (s_brands['_' + el.options[i].value] === true))
		{

			for (var j = 0; j < el.options.length; j++)
			{
				if ( el.options[i].value == brands["_" + el.options[j].value])
				{
					el.options[j].selected = false;
				}
			}
		}
	}

	fill_brand_array();

	for (var i = 0; i < el.options.length; i++)
	{
		if (el.options[i].selected)
		{
			for (var j = 0; j < el.options.length; j++)
			{
				if ( el.options[i].value == brands["_" + el.options[j].value])
				{
					el.options[j].selected = true;
				}
			}
		}
	}
	disp_mselected_vals(document.mainform.elements['edvals[ubrandlist][]'], 'edvals[ubrandlist][]', parseInt('1'), ''.length?'':null);
}

function makeEditable(e)
{
	var el = eventhandler(e);
	var el_hidden = document.getElementById(el.id + '_h')?document.getElementById(el.id + '_h'):false;
	var el_input = document.getElementById(el.id + '_i')?document.getElementById(el.id + '_i'):false;
	var el_ok = document.getElementById(el.id + '_ok')?document.getElementById(el.id + '_ok'):false;
	var el_can = document.getElementById(el.id + '_can')?document.getElementById(el.id + '_can'):false;

	el.style.width = "auto";
	el_input.style.width = el.offsetWidth;
	el_input.style.height = el.offsetHeight;
	el_input.value = el_hidden.value;
	el.style.display = "none";
	el_input.style.display = "block";
	el_ok.style.display = "block";
	el_can.style.display = "block";
	el_input.focus();
	if (typeof(el_ok) !== "undefined" && el_ok)
	{
		if (el_ok.addEventListener) el_ok.addEventListener("click", saveEditable, false);
		else if (el_ok.attachEvent) el_ok.attachEvent("onclick", saveEditable);
	}
	if (typeof(el_can) !== "undefined" && el_can)
	{
		if (el_can.addEventListener) el_can.addEventListener("click", cancelEditable, false);
		else if (el_can.attachEvent) el_can.attachEvent("onclick", cancelEditable);
	}
}

function saveEditable(e)
{
	var el_ok = eventhandler(e);
	var el = document.getElementById(el_ok.id.replace('_ok', ''));
	var el_hidden = document.getElementById(el_ok.id.replace('_ok', '') + '_h');
	var el_input = document.getElementById(el_ok.id.replace('_ok', '') + '_i');
	var el_can = document.getElementById(el_ok.id.replace('_ok', '') + '_can');

	el_hidden.value = el_input.value;
	el.innerHTML = el_input.value;
	el_input.style.display = "none";
	el_ok.style.display = "none";
	el_can.style.display = "none";
	el.style.display = "block";
	setTimeout(hidePopWin,100);
}

function cancelEditable(e)
{
	var el_can = eventhandler(e);
	var el = document.getElementById(el_can.id.replace('_can', ''));
	var el_input = document.getElementById(el_can.id.replace('_can', '') + '_i');
	var el_ok = document.getElementById(el_can.id.replace('_can', '') + '_ok');

	el_input.style.display = "none";
	el_ok.style.display = "none";
	el_can.style.display = "none";
	el.style.display = "block";
	setTimeout(hidePopWin,100);
}

/*
	Private functions
*/

function fill_brand_array( e )
{
	var el = document.getElementById('i_ubrandlist')?document.getElementById('i_ubrandlist'):'';
	if (el)
	{
		for ( var i = 0; i < el.options.length; i++ )
		{
			s_brands["_" + el.options[i].value] = el.options[i].selected;
		}
	}
	else
	{
		return false;
	}
}

function eventhandler( evt )
{
	if ( evt )
	{
		var el = evt.target || evt.srcElement;
		return el;
	}
	else if ( event )
	{
		evt = event;
		var el = evt.srcElement;
		return el;
	}
	else
	return;
}
