function clearText(objInputText, defaultText)
{
	if (defaultText == objInputText.value)
		objInputText.value = "";
}

function restoreText(objInputText, defaultText)
{
	if (objInputText.value == "")
		objInputText.value = defaultText;
}

function changeType(objInputText, newType)
{
	if (objInputText.value == "")
		objInputText.type = newType;
}

function isEnterKey(txt, ev)
{
	var e = window.event ? window.event : ev;
	var iKeyCode = e.keyCode ? e.keyCode: e.charCode;
	
	return (iKeyCode == 13);
}

var _previousLanguageId = 0;

function setCurrentLanguageId(currentLanguageId)
{
	_previousLanguageId = currentLanguageId;
}

function showLanguageTab(currentLanguageId)
{
	var element = document.getElementById("langDiv_" + _previousLanguageId);
	if (element != null)
		element.style.display = "none";
		
	element = document.getElementById("langLink_" + _previousLanguageId);
	if (element != null)
		element.className = "language_link";

	_previousLanguageId = currentLanguageId;
	
	element = document.getElementById("langDiv_" + currentLanguageId);
	if (element != null)
		element.style.display = "block";
		
	element = document.getElementById("langLink_" + currentLanguageId);
	if (element != null)
		element.className = "language_link_selected";
}

var _currentTabId = '';
function showTab(tabId)
{
	if (_currentTabId != tabId)
	{
		if (_currentTabId != '') toggleDisplay(_currentTabId);
		toggleDisplay(tabId);
		_currentTabId = tabId;
	}
}

function toggleDisplay(elementId)
{
	var element = document.getElementById(elementId);
	if (element != null) element.style.display = (element.style.display == 'none')?'':'none';
}

function toggleDisplayMultiple(elementsIds)
{
	var arrElements = elementsIds.split('|');
	var elementsCount = arrElements.length;
	for (var elementIndex = 0; elementIndex < elementsCount; elementIndex++)
		toggleDisplay(arrElements[elementIndex]);
}


var chkSet = false;
function toggleCheck(elementClassName)
{
	chkSet = !chkSet;
	if (chkSet)
		$("."+elementClassName).attr('checked','checked');
	else
		$("."+elementClassName).removeAttr('checked');
}

function showElement(elementId)
{
	var element = document.getElementById(elementId);
	if (element != null)
		element.style.display = "";
}

function hideElement(elementId)
{
	var element = document.getElementById(elementId);
	if (element != null)
		element.style.display = "none";
}

function openPage(pageUrl, pageTitle)
{
	var mywindow = window.open (pageUrl, pageTitle, "location=1,status=1,scrollbars=1, width=800,height=600");
	mywindow.moveTo(0,0);
}

function setSearchView(nViewID)
{
	if (nViewID == 0)
	{
		document.getElementById("advanced_search").style.display = "none";
		document.getElementById("basic_search").style.display = "block";
	}
	else
	{
		document.getElementById("advanced_search").style.display = "block";
		document.getElementById("basic_search").style.display = "none";
	}
}

function pad2(number) 
{
     return (number < 10 ? '0' : '') + number
}


function limitTextarea(inputId, maxChars, outputId)
{
	var inputArea = document.getElementById(inputId);
	var outputField = document.getElementById(outputId);

	if (inputArea != null && outputField != null)
	{
		var userText = inputArea.value;
		var textLength = userText.length;
		var charsRemaining = maxChars - textLength;
		if (charsRemaining < 0) charsRemaining = 0;

		if (textLength > maxChars)
		{
			userText = userText.substring(0,maxChars);
			inputArea.value = userText;
		}
		
		outputField.innerHTML = charsRemaining;
	}
}

function isValueInArray(arr, val) 
{
	var inArray = false;
	for (var i = 0; i < arr.length; i++) 
	{ 
		if (val == arr[i]) { inArray = true; break; }
	}

	return inArray;
}

// search functions - BEGIN
var showCategories = true;
var showCompanies = true;
function showCategoriesSelect(relativePath)
{
	if (!showCategories) $("#divFiltersCategories").hide();
	else
	{
		$("#divFiltersCompanies").hide();
		showCompanies = true;
		$.get(relativePath + 'ajax/ajaxGetCategories.php?ref='+window.location.href, function(data) 
		{
			$("#divFiltersCategories").html(data);
			$("#divFiltersCategories").show();
		});
	}
	showCategories = !showCategories;
	return false;
}

function showCompaniesSelect(relativePath)
{
	if (!showCompanies) $("#divFiltersCompanies").hide();
	else
	{
		$("#divFiltersCategories").hide();
		showCategories = true;
		$.get(relativePath + 'ajax/ajaxGetCompanies.php?ref='+window.location.href, function(data) 
		{
			$("#divFiltersCompanies").html(data);
			$("#divFiltersCompanies").show();
		});
	}
	showCompanies = !showCompanies;

	return false;
}
// search functions - END
