I found a bug. When searching in title only, it doesn't honor datecut.
To fix, change:
PHP Code:
// get posts from before $datecut
case 'before':
$cl->SetFilterRange('dateline', 0, $datecut);
break;
// get posts from after $datecut
default:
$cl->SetFilterRange('dateline', $datecut, 0xFFFFFFFF);
to:
PHP Code:
// get posts from before $datecut
case 'before':
$cl->SetFilterRange($sphinx_sort_by_date, 0, $datecut);
break;
// get posts from after $datecut
default:
$cl->SetFilterRange($sphinx_sort_by_date, $datecut, 0xFFFFFFFF);
Another thing I found is that vb caches the search results and it tries to find the closest or exact match. There's no problem with exact matches, but when it saves the results sorted in ascending date order the subsequent searches in reverse order shows only old threads. To fix this, just comment out the $highScore = 1 & highScore = 2 lines in search.php. This disables using the stale cache for non-exact matches.
Thanks for the great hack orban!