/******************************************************************************
*
*	Pivotal eService 5.7
*
*	File:		globalSearch.js 
*	Purpose:	Global search javascript functions. Used with the search object.
*	Date:		January 1, 2005
*
******************************************************************************/

function srch_openGlobalSearch ( bUseNewWindow, txtInputFieldName, strSearchText, strSortField, strSortDir, strSearchName, strTableId, intStartRecordNumber )
{
	if ( bUseNewWindow )
	{
		alert( g_LDSTRING_MESSAGE_OPEN_FT_NEW_WINDOW );
	} else {
	
		if ( ( search_getSearchObject().getFullTextSourceCount() > 0 ) || ( search_getSearchObject().getQuickSearchCount() > 0 ))
		{
			var i, j=0;
			var oKeys = new Array();
			var oVals = new Array();
			
			oKeys[j] = "type";
			oVals[j++] = search_getSearchObject().getSearchType();

			oKeys[j] = "searchText";
			oVals[j++] = parent.menumain.document.getElementById("txtSearchString").value;
			
			if ( search_getSearchObject().getFullTextSourceCount() > 0 ) {	
				for (i = 0; i < search_getSearchObject().getFullTextSourceCount(); i++){
					oKeys[j] = "fullTextID";
					oVals[j++] = search_getSearchObject().getFullTextSourceByIndex( i );
				}
			} 
			
			if ( search_getSearchObject().getQuickSearchCount() > 0 ) {
				for ( i = 0; i < search_getSearchObject().getQuickSearchCount(); i++) {
					oKeys[j] = "quickSearchID";
					oVals[j++] = search_getSearchObject().getQuickSearchByIndex( i );
				}
			} 
					
			oKeys[j] = "startRecord";
			if ( intStartRecordNumber != "")
				oVals[j++] = intStartRecordNumber;
			else 
				oVals[j++] = "0";
			
			oKeys[j] = "maxRecords";
			if ( search_getPageObject().getMaxPageSize() != "" )
				oVals[j++] = search_getPageObject().getMaxPageSize();
			else 
				oVals[j++] = "10";
				
			
			oKeys[j] = "maxPages";
			if ( search_getPageObject().getMaxPages() != "")
				oVals[j++] = search_getPageObject().getMaxPages();
			else
				oVals[j++] = "5";
				
			oKeys[j] = "selectedTab";
			if ( strSearchName == "" )
				oVals[j++] = search_getSearchObject().getSelectedTab();
			else
				oVals[j++] = strSearchName;
				
			oKeys[j] = "selectedTableId";
			if ( strTableId == "" )
				oVals[j++] = search_getSearchObject().getSearchTableId();
			else
				oVals[j++] = strTableId;
			
			oKeys[j] = "sortItem";
			if ((strSortField=="")&&(strSortDir=="")) //RD Issue#48170
			{			
				if (document.getElementById("sortbyisrank") != null && document.getElementById("sortbyisrank").value != "")
				{
					strSortField = "fullTextRank";
					strSortDir=document.getElementById("sortbyisrank").value;
					if (strSortDir=="ascending")
					{
						strSortDir="descending";
					}
					else
					{
						strSortDir="ascending";
					}
				}
				else
				{
					strSortDir="descending";
				}
			}
			if ( strSortField != "fullTextRank"){
				if ( strSearchName == search_getSearchObject().getSelectedTab() ){
					if ((search_getSearchObject().getSelectedTab()=="")&& (parent.menumain.document.getElementById("txtSearchString").value!="")) //RD Issue#48170
					{
					   	    oVals[j++] = "";
							oKeys[j] = "fullTextRank";
							oVals[j++] = strSortDir;
					}
					else
					{
						if (strSortField == "")
							oVals[j++] = search_getSearchObject().getSortItem();
						else
							oVals[j++] = strSortField;
				  	}
				}else
					if (strSearchName=="")
					{oVals[j++] =search_getSearchObject().getSortItem();
					}
					else
						{
						    if (strSearchText=="") //RD Issue#48170
							{
								oVals[j++] = "";
							}
							else
							{
								oVals[j++] = "";
								oKeys[j] = "fullTextRank";
								oVals[j++] = strSortDir;
							}
						}
			} else {
				oVals[j++] = "";
				oKeys[j] = "fullTextRank";
				oVals[j++] = strSortDir;
			}
			
			oKeys[j] = "sortDir";
			if ( strSortField != "fullTextRank"){
				if ( strSearchName == search_getSearchObject().getSelectedTab() ){
					if ( strSortDir == "" )
						oVals[j++] = "DESC";
					else{
						if ( strSortField == search_getSearchObject().getSortItem()){
							if ( search_getSearchObject().getSortOrder() == "ASC")
								oVals[j++] = "DESC";
							else
								oVals[j++] = "ASC";
						} else 
							oVals[j++] = strSortDir;
					}
				}else{
					if (strSearchName=="")
					{
						oVals[j++] = search_getSearchObject().getSortOrder();
					}
					else
					{
						oVals[j++] = "";
					}
				}
			} else {
				oVals[j++] = "";
			}

			oKeys[j] = "SRLName";
			if ( strSearchName == search_getSearchObject().getSelectedTab() )
				oVals[j++] = search_getSearchObject().getSearchResultListName();
			else
				if (strSearchName=="") //RD Issue#48170
					{oVals[j++] = search_getSearchObject().getSearchResultListName();
					}
					else
						oVals[j++] = "";
			
			if ( strSearchName == search_getSearchObject().getSelectedTab() ){	
				for (i = 0; i < search_getSearchObject().getSRLFieldsCount(); i++){
					oKeys[j] = "SRLFields";
					oVals[j++] = search_getSearchObject().getSRLItemsByIndex( i );
				}
			} else {
				if (strSearchName=="") //RD Issue#48170
				{
				  for (i = 0; i < search_getSearchObject().getSRLFieldsCount(); i++){
					oKeys[j] = "SRLFields";
					oVals[j++] = search_getSearchObject().getSRLItemsByIndex( i );
				  }
				}
				else
				{
				oKeys[j] = "SRLFields";
				oVals[j++] = "";
				}
			}
			window.top.hidden.location = nav_buildURL( "xmlloader.asp", oKeys, oVals );
			
			
		}
	}
	return;
}
