It is really hard to do remote debugging :). Although you do have access to some code if you can physically access files on disk.
The default web part code is located in CMS\CMSWebParts\SmartSearch\SearchBox.ascx.cs
. There is a method that does submission around line 820::
private void Search()
{
string url = SearchResultsPageUrl;
if (url.StartsWithCSafe("~"))
{
url = ResolveUrl(url.Trim());
}
url = URLHelper.UpdateParameterInUrl(url, "searchtext", HttpUtility.UrlEncode(txtWord.Text));
url = URLHelper.UpdateParameterInUrl(url, "searchmode", SearchMode.ToStringRepresentation());
// Log "internal search" activity
Activity internalSearch = new ActivityInternalSearch(txtWord.Text, DocumentContext.CurrentDocument, AnalyticsContext.ActivityEnvironmentVariables);
internalSearch.Log();
// Try remove paging parameter
url = URLHelper.RemoveParameterFromUrl(url, "page");
URLHelper.Redirect(url.Trim());
}
You can put a break point and debug (if have access of course). For starters if you don't have access to the code do this:
- create a new blank template or use existing one.
- put smart search box web part there with the same setting like you have on the home page
- see if it is working correctly,i.e. the result url doesntcontain any weird shit i.e the result url is correct
/Search.aspx?searchtext=test&searchmode=anyword
- if it is working correctly on the blank template it means the problem is with your template.
- There something there that causes the issue you may try to disable all web parts and start submitting search again and enable them one by one till you pin point the one that causes a conflict.
P.S. Save code from view source and upload it somewhere so we can take a look.