	
	function addMultipleParameterToSearch(strVelVarName, fieldVelVarName, value, valueLabel, catalogueSearchParamSessionKey){
		ContentletAjaxForCatalogue.addMultipleParameterToSearch(catalogueSearchParamSessionKey, strVelVarName, fieldVelVarName, value, valueLabel, { callback: submitFormCallBack, async: false });
	}
	
	function addSingletonParameterToSearch(strVelVarName, fieldVelVarName, value, valueLabel, catalogueSearchParamSessionKey){
		ContentletAjaxForCatalogue.addSingletonParameterToSearch(catalogueSearchParamSessionKey, strVelVarName, fieldVelVarName, value, valueLabel, { callback: submitFormCallBack, async: false });
	}
	
	function removeMultipleParameterFromSearch(strVelVarName, fieldVelVarName, value, catalogueSearchParamSessionKey){
		ContentletAjaxForCatalogue.removeStandardParameterFromSearch(catalogueSearchParamSessionKey, strVelVarName, fieldVelVarName, value, { callback: submitFormCallBack, async: false });
	}
	
	function submitFormCallBack(){
		document.getElementById("searchForm").submit();
	}
	
	function clearCatalogueSearchParamFromSession(catalogueSearchParamSessionKey){
		var callBackFunc = function(){
			document.getElementById("clearSearchForm").value="true";
			document.getElementById("searchForm").submit();
		}
		ContentletAjaxForCatalogue.clearCatalogueSearchParamFromSession(catalogueSearchParamSessionKey,{ callback: callBackFunc, async: false });
	}
	
	function clearCatalogueSearchParamFromSessionAndSetStructure(catalogueSearchParamSessionKey, structureVelocityVarName){
		var setSrtParam = function(){
			var callBackFunc = function(){
				document.getElementById("clearSearchForm").value="false";
				document.getElementById("searchForm").submit();
			}
			ContentletAjaxForCatalogue.setStructureSearchParameter(catalogueSearchParamSessionKey, structureVelocityVarName,{ callback: callBackFunc, async: false });
		}
		ContentletAjaxForCatalogue.clearCatalogueSearchParamFromSession(catalogueSearchParamSessionKey, { callback: setSrtParam, async: false });
	}
	
	
	function clearCatalogueSearchParamFromSessionAndSetFidelity(catalogueSearchParamSessionKey, enableFidelitySearch){
		var setFidelityParam = function(){
			var callBackFunc = function(){
				document.getElementById("clearSearchForm").value="false";
				document.getElementById("searchForm").submit();
			}
			ContentletAjaxForCatalogue.setFidelitySearchParameter(catalogueSearchParamSessionKey, enableFidelitySearch,{ callback: callBackFunc, async: false });
		}
		ContentletAjaxForCatalogue.clearCatalogueSearchParamFromSession(catalogueSearchParamSessionKey, { callback: setFidelityParam, async: false });
	}
		
	function removeStandardParameterFromSearch(strVelVarName, fieldVelVarName, value, catalogueSearchParamSessionKey){
		ContentletAjaxForCatalogue.removeStandardParameterFromSearch(catalogueSearchParamSessionKey, strVelVarName, fieldVelVarName, value, { callback: submitFormCallBack, async: false });
	}

	function removeOneTextFieldParameterFromSearch(strVelVarName, fieldVelVarName, value, isVariantField, catalogueSearchParamSessionKey){
		if (isVariantField){
			try {
				dijit.byId("_text_var_"+fieldVelVarName).setValue("");
			}catch (ex){
				if (document.getElementById("_text_var_"+fieldVelVarName) != null){
					document.getElementById("_text_var_"+fieldVelVarName).value="";
				}
			}
		}else{
			try {
				dijit.byId("_text_"+fieldVelVarName).setValue("");
			}catch (ex){
				if (document.getElementById("_text_"+fieldVelVarName) != null){
					document.getElementById("_text_"+fieldVelVarName).value="";
				}
			}
		}
		ContentletAjaxForCatalogue.removeTextFieldParameterFromSearch(catalogueSearchParamSessionKey, strVelVarName, fieldVelVarName, value, { callback: submitFormCallBack, async: false });
	}
	
	function removeTextFieldParameterFromSearch(strVelVarName, fieldVelVarName, value, catalogueSearchParamSessionKey){
		try {
			dijit.byId("_text_"+fieldVelVarName).setValue("");
		}catch (ex){
			if (document.getElementById("_text_"+fieldVelVarName) != null){
				document.getElementById("_text_"+fieldVelVarName).value="";
			}
		}
		
		ContentletAjaxForCatalogue.removeTextFieldParameterFromSearch(catalogueSearchParamSessionKey, strVelVarName, fieldVelVarName, value, { callback: submitFormCallBack, async: false });
	}
	
	function addVariantParameterToSearch(strVelVarName, fieldVelVarName, value, valueLabel, catalogueSearchParamSessionKey){
		ContentletAjaxForCatalogue.addVariantParameterToSearch(catalogueSearchParamSessionKey, strVelVarName, fieldVelVarName, value, valueLabel,  { callback: submitFormCallBack, async: false });
	}
	
	function removeVariantParameterFromSearch(strVelVarName, fieldVelVarName, value, catalogueSearchParamSessionKey){
		ContentletAjaxForCatalogue.removeVariantParameterFromSearch(catalogueSearchParamSessionKey, strVelVarName, fieldVelVarName, value,  { callback: submitFormCallBack, async: false });
	}
	
	/*function addSortParameterToSearch(strVelVarName, fieldVelVarName, catalogueSearchParamSessionKey){
		ContentletAjaxForCatalogue.addSortParameterToSearch(catalogueSearchParamSessionKey, strVelVarName, fieldVelVarName, { callback: submitFormCallBack, async: false });
	}*/
	
	function addSortParameterToSearch(selectObj, catalogueSearchParamSessionKey){
		if (selectObj.selectedIndex > -1){
			var optionValue = selectObj.options[selectObj.selectedIndex].value;
			var optionValueSplit = optionValue.split("-");
			var strVelVarName = optionValueSplit[0];
			var fieldVelVarName = optionValueSplit[1];
			var sortMode = optionValueSplit[2];
			ContentletAjaxForCatalogue.addSortParameterToSearch(catalogueSearchParamSessionKey, strVelVarName, fieldVelVarName, sortMode, { callback: submitFormCallBack, async: false });
		}
	}
	
	function removeSortParameterFromSearch(strVelVarName, fieldVelVarName, catalogueSearchParamSessionKey){
		ContentletAjaxForCatalogue.removeSortParameterFromSearch(catalogueSearchParamSessionKey, strVelVarName, fieldVelVarName, { callback: submitFormCallBack, async: false });
	}
	
	function removeTextParameterFromSearch(textQueryParamIdentifier, catalogueSearchParamSessionKey){
		document.getElementById(textQueryParamIdentifier).value = '';
		ContentletAjaxForCatalogue.removeTextParameterFromSearch(catalogueSearchParamSessionKey, { callback: submitFormCallBack, async: false });
	}
	
	function removePriceParameterFromSearch(catalogueSearchParamSessionKey){
		document.getElementById("clearPriceParam").value='true';
		ContentletAjaxForCatalogue.removePriceParameterFromSearch(catalogueSearchParamSessionKey, { callback: submitFormCallBack, async: false });
	}
	
	function removeQuantityParameterFromSearch(catalogueSearchParamSessionKey){
		document.getElementById("clearQuantityParam").value='true';
		ContentletAjaxForCatalogue.removeQuantityParameterFromSearch(catalogueSearchParamSessionKey, { callback: submitFormCallBack, async: false });
	}
	
	function changePage(newPage){
		document.getElementById("displayPage").value=newPage;
		document.getElementById("searchForm").submit();
	}
	
	function changeProductsPerPage(newProductsPerPage){
		document.getElementById("nProductsPerPage").value=newProductsPerPage;
		document.getElementById("searchForm").submit();
	}
	
	
