/*
Zolka's Super SearchBar
*/

var searchBarHasFocus = false;
var searchBarHasMouse = false;
var currentSearchEngine = 0;
var searchBarDetailsOpen = false;
var searchEngineListOpen = false;

var searchEngines = Array(
	Array("img/admin.gif", "Keresés a ZolkaBlogon", uri.dir + "/search.php", "", true), 
	Array("img/google.gif", "Keresés Google-ön", "http://www.google.com/search", "_blank", false)
);

function DoSearch()
{
	var editBox = document.getElementById("editSearchBox");
	if (editBox == null)
		return;
	
	if (editBox.value == "")
		return;
	
	SetSearchForm(document.forms.searchForm); 
	document.forms.searchForm.submit();
}

function SetSearchForm(oForm)
{
	oForm.target = searchEngines[currentSearchEngine][3];
	oForm.action = searchEngines[currentSearchEngine][2];
	
    if (searchEngines[currentSearchEngine][4] && (sessionID == "owner"))
    	oForm.action += "?zolkavagyokneszamolj=42";
    	
    return true;
}

function SearchBarGotFocus()
{
	var oSBBase = document.getElementById("searchBoxBase");
	zAnimatorMouseActions(oSBBase, 3);
	searchBarHasFocus = true;
}
function SearchBarLostFocus()
{
	searchBarHasFocus = false;
	if (!searchBarHasMouse)
	{
		var oSBBase = document.getElementById("searchBoxBase");
		zAnimatorMouseActions(oSBBase, 4);
	}
}

function ShowSearchEngimes(isShow)
{
	var oSEList = document.getElementById("searchEngineList");
	if (oSEList)
	{
		oSEList.style.visibility = (isShow ? "visible" : "hidden");
		searchEngineListOpen = isShow;
	}
}
function ChangeSearchEngine(searchEngineID)
{
	currentSearchEngine = searchEngineID;
	
	var oSEImage = document.getElementById("searchEngineImg");
	if (oSEImage)
	{
		switch (searchEngineID)
		{
			case 0 :
				oSEImage.src = "img/admin.gif";
				ShowAdvancedLink(true);
				DisableDetailedForm(false);
				break;
			case 1 :
				oSEImage.src = "img/google.gif";
				ShowAdvancedLink(false);
				DisableDetailedForm(true);
				ShowDetailedSearch(false);
				break;
		}
	}
	
	var oEdit = document.getElementById("editSearchBox");
	if (oEdit)
		oEdit.focus();
	
	ShowSearchEngimes(false);
}

function ShowAdvancedLink(isShow)
{
	var oSELink = document.getElementById("searchBarAdvancedLink");
	if (oSELink)
		oSELink.className = isShow ? "DetailsLink" : "DetailsDisabled";
}

function DetailsLinkMOver(o) { o.className = (currentSearchEngine == 0) ? "DetailsLinkOM" : "DetailsDisabled"; }
function DetailsLinkMOut(o)  { o.className = (currentSearchEngine == 0) ? "DetailsLink" : "DetailsDisabled"; }
function DetailsLinkMClick(o) { if (currentSearchEngine == 0) ShowDetailedSearch(!searchBarDetailsOpen); }

function ShowDetailedSearch(isShow)
{
	if (isShow && (currentSearchEngine != 0))
		return;

	var oSBBase = document.getElementById("searchBoxBase");
	var oFilterBase = document.getElementById("sbFilterBase");
	var oSELink = document.getElementById("searchBarAdvancedLink");
	if (!oSBBase || !oSELink || !oFilterBase)
		return;
	
	oSELink.innerHTML = isShow ? "elrejtés" : "részletek";

	zAnimatorMouseActions(oSBBase, isShow ? 1 : 2);
	zAnimatorMouseActions(oFilterBase, isShow ? 1 : 2);

	searchBarDetailsOpen = isShow;
}

function DisableDetailedForm(isDisabled)
{
	var oSB_CB1 = document.getElementById("cbSearchBlog");
	var oSB_CB2 = document.getElementById("cbSearchGallery");
	var oSB_CB3 = document.getElementById("cbSearchFavs");
	var oSB_CB4 = document.getElementById("cbSearchAudio");
	
	var oSB_Sel1 = document.getElementById("postDateFilterFrom");
	var oSB_Sel2 = document.getElementById("postDateFilterTo");
	var oOwnerInput = document.getElementById("ownerInput");
	
	oSB_CB1.disabled = isDisabled;
	oSB_CB2.disabled = isDisabled;
	oSB_CB3.disabled = isDisabled;
	oSB_CB4.disabled = isDisabled;
	
	oSB_Sel1.disabled = isDisabled;
	oSB_Sel2.disabled = isDisabled;
	
	oOwnerInput.disabled = isDisabled;
}

function cbSearchBlogOnChange(chk)
{
	var oSB_Sel1 = document.getElementById("postDateFilterFrom");
	var oSB_Sel2 = document.getElementById("postDateFilterTo");
	
	oSB_Sel1.disabled = chk;
	oSB_Sel2.disabled = chk;	
}

function zAnimatorRegisterSearchBar(searchBarID, hidewidth, hideheight, hideopacity, 
												 showwidth, showheight, showopacity)
{
	var o = document.getElementById(searchBarID);
	if (o == null)
		return;  // Given ID not found

	// register the menu
	var curid = zMenuContainer.length;
	zMenuContainer[curid] = new Array(o, 0, 
		32000, 32000, hidewidth, hideheight, hideopacity,
		32000, 32000, showwidth, showheight, showopacity);

	// add the mouse event handlers
	if ((hideopacity < 1) || (showopacity < 1))
	{
		o.onmouseover = function() { zAnimatorMouseActions(this, 3); searchBarHasMouse = true; };
		o.onmouseout = function() { searchBarHasMouse = false; if (!searchBarHasFocus) zAnimatorMouseActions(this, 4); };
	}
	
	o.style.width = hidewidth + "px";
	o.style.height = hideheight + "px";
	if (hideopacity < 1)
	{
		o.style.opacity = hideopacity;
		o.style.filter = "alpha(opacity="+(hideopacity * 100)+")"; 
	}
}