	function str_replace(strSearch, strReplace, strSource)
	{
		str 	= new String(strSource);
		rExp	= "/"+strSearch+"/gi";
		rExp	= eval(rExp);
		newS	= String(strReplace);
		str	= new String(str.replace(rExp, newS));
		return str;
	}

	function clean_special_chars ( str )
	{
		str = str_replace("%28", "", str);	// (
		str = str_replace("%29", "", str);	// )
		str = str_replace("%20", "-", str);	// ' '

		str = str.replace(/http(s)?%3A\/\//i, "");
		str = str.replace(/www./i, "");
		str = str.replace( "/", "--" );	// "/"

		return str;
	}

	function trim(stringToTrim) {
		return stringToTrim.replace(/^\s+|\s+$/g,"");
	}
	// Return the search URL.
	function getSearchUrl( search_string )
	{
		var search="";
		if ( search_string.match( "\"" ) )
			search_string = checkQuotes( search_string );

		str = new String( escape( search_string.toLowerCase() ) );
		str = str.replace( "_", "-" );		// _
		str = str.replace( "%2C", "-" );	// ,
		search = clean_special_chars( str );
//		while (search.match("--"))
//			search = str_replace( "--", "-", search );
		url = "http://www.filespack.com/a/" + search;
		return url;
	}

	function checkQuotes( search_string )
	{
		new_search_string = search_string.replace( /\"(.[^\s-]*)\"/g, '$1' )
		return new_search_string;
	}

	function searchsite()
	{
		var frm = window.document.searchform;
		search_value = new String( trim(frm.q.value) );
		if ( search_value.length < 1 )
		{
			alert("Please enter a search query");
			return false;
		}

		search_url = getSearchUrl( search_value );
		if ( search_url )
		{
			top.document.location = search_url;
		}
		return false;
	}

