function restoreFields()
{
	var aryWords = new Array();
	
	with (document.formSearch)
	{
		intQuery = document.URL.indexOf("?");
		if (intQuery != -1)
		{
		    strQuery = document.URL.substring(++intQuery);
		    
		    x = strQuery.indexOf("_src=");
		    strQuery = strQuery.substring(x + 5);
		    y = strQuery.indexOf("&");
		    strSource = strQuery.substring(0, y);
		    
		    x = strQuery.indexOf("_date=")
		    if (x != -1)
		    {
				strQuery = strQuery.substring(x + 6);
				y = strQuery.indexOf("&");
				strDate = strQuery.substring(0, y);
				if ((i = strDate.indexOf("%2D")) == -1)
				{
					//btnDate[0].checked = true;
					for (i = 0; i < lstDate.options.length; i++)
						if (strDate == lstDate.options[i].value)
						{
							lstDate.selectedIndex = i;
							break;
						}
				}
				else
				{
					//btnDate[1].checked = true;
					if (i != 0)
						txtDateFrom.value = strDate.substring(0, 2) + "/" + strDate.substring(2, 4) + "/" + strDate.substring(4, i);
					if (i != strDate.length - 3)
					{
						strDate = strDate.substring(i + 3);
						txtDateTo.value = strDate.substring(0, 2) + "/" + strDate.substring(2, 4) + "/" + strDate.substring(4);
					}
				}
			}
		    if (source.type == "select-one")
				for (i = 0; i < source.options.length; i++)
					if (source.options[i].value == strSource)
					{
						source.selectedIndex = i;
						break;
					}
					
		    strQuery = strQuery.substring(++y);
		    boolDone = false;
		    for (i = 0; i <= 9; i++)
		    {
				strValue = "";
				if ((x = strQuery.indexOf("_" + i + "=")) != -1)
				{
					y = strQuery.indexOf("&");
					if (y == -1)
					{
						strValue = strQuery.substring(x + 3);
						boolDone = true;
					}
					else
					{
						strValue = strQuery.substring(x + 3, y);
						strQuery = strQuery.substring(++y);
					}
					if (strValue.indexOf("+") != -1)
					{
						aryWords = strValue.split("+");
						strValue = aryWords.join(" ");
					}
				}
					
				if (strValue != "")
				{
					for (j = 0; j < elements.length; j++)
					{
						if ((i == 0) && (elements[j].name == "mm"))
							elements[j].checked = true;
						if (elements[j].name == i)
						{
							if (elements[j].type == "select-one")
							{
								for (k = 0; k < elements[j].options.length; k++)
									if ((elements[j].options[k].text == strValue) || (elements[j].options[k].value == strValue))
									{
										elements[j].selectedIndex = k;
										break;
									}
							}
							else
								elements[j].value = strValue;
						}
					}
				}
				if (boolDone)
					break;
			}
		}
	}
}
