// JavaScript Document
// основные переменные
var GoodsList = new Array();
var VarName = new Array("Price","Age",	"Persona","Size","Soft","Fun","Original","Usefull","Color","Group","Theme");
var NameLength ={
	"Price":9,
	"Age":9,
	"Persona":6,
	"Size":9,"Soft":12,"Fun":15,"Original":15,"Usefull":8,"Color":1,"Group":1,"Theme":1};
// получение параметров в одну строку
function GetFilterParams()
{
	params = "";
	sep = "";
	for(i=0; i<VarName.length; i++)
	{
		params += sep + VarName[i]+"="+Params[VarName[i]]+"&Loc"+VarName[i]+"="+LockParams[VarName[i]];
		sep = "&";
	}
	//params = "Price=2&Age=1&Persona=0&Size=0&Soft=0&Fun=0&Original=0&Usefull=0";
	//params += "&LocPrice=0&LocAge=0&LocPersona=0&LocSize=0&LocSoft=0&LocFun=0&LocOriginal=0&LocUsefull=0&LocColor=0&LocGroup=0&LocTheme=0";
	//params += "&Color=0&Group=0&Theme=0";
	//alert(params);
	return params;
}
// каждый раз получаем выборку
function OnChangeFilterVal()
{
	params = GetFilterParams();
	sendGoodsRequest(params)
}

// посыл данных на сервер
function sendGoodsRequest(params)
{
	url = '/ajax/';
	pars = 'action=getGoodsList&' + params ;
	new Ajax.Request(url, {method:'get', parameters: pars, onComplete:loadGoodsList });
}
// обработка ответа
function loadGoodsList(originalRequest)
{
	//$("debugg").value += "\n" + originalRequest.responseText;
	eval(' GoodsList = '+ originalRequest.responseText + ';');
	// декодируем
	for(i=0; i < GoodsList.length; i++)
	{
		GoodsList[i].description = decodeURIComponent(GoodsList[i].description);
		GoodsList[i].title = decodeURIComponent(GoodsList[i].title);
	}
	//debugger;
	if(GoodsList.length>0)
	{
		CurrentGoodsNum = 0;
		ShowGoodsBig(0);
	}
	else
	{
		$("GoodsImageArea").innerHTML = "<div style='margin-top:30px;'>Sorry, I can't find anything by your request.</div>";
		$("GoodsDescriptionArea").innerHTML = "Try unlock something.";
		$("GoodsPriceArea").innerHTML = "";
		GoodsList = [];
	}
	LightDevArrows();
}

function CloseAnotherDDL(name)
{
	for(i=0; i<VarName.length; i++)
	{
		if(name != VarName[i] && $(VarName[i]+"_ItemList"))
		{
			obj = $(VarName[i]+"_ItemList");
			if(obj.opened)
			{
				obj.style.visibility = "hidden";
				obj.opened=0;	
			}
		}
		else if(name != VarName[i] && $(VarName[i]+"_DropDownList"))
		{
			/*obj = $(VarName[i]+"_DropDownList");
			if(obj.opened)
			{
				obj.style.visibility = "hidden";
				obj.opened = 0;
			}*/
			CloseDDL(VarName[i]);
		}
	}
}

function hookGlobalKeyboard(env)
{
	keyPress = env.which?env.which:env.keyCode;
	if(keyPress == 27)
	{
		CloseAnotherDDL('');
	}
}

function hookGlobalClick()
{
	if(MenuClick)
	{
		MenuClick = false;
	}
	else
	{
		for(i=0; i<VarName.length; i++)
		{
			if($(VarName[i]+"_ItemList"))
			{
				obj = $(VarName[i]+"_ItemList");
				if(obj.opened)
				{
					obj.style.visibility = "hidden";
					obj.opened=0;	
				}
			}
			else if($(VarName[i]+"_DropDownList"))
			{
				/*obj = $(VarName[i]+"_DropDownList");
				if(obj.opened)
				{
					obj.style.visibility = "hidden";
					obj.opened = 0;
				}*/
				CloseDDL(VarName[i]);
			}
		}
	}
}

if (document.addEventListener) {
     document.addEventListener("click", hookGlobalClick, false);
} else if (document.attachEvent) {
      document.attachEvent('onclick', hookGlobalClick);
}

if (document.addEventListener) {
     document.addEventListener("keyup", hookGlobalKeyboard, false);
} else if (document.attachEvent) {
      document.attachEvent('onkeyup', hookGlobalKeyboard);
}



//document.attachEvent("click", hookGlobalClick);