Thanks Willr! and apologies for the late reply, I do appreciate your help :)
One issue holding up progress is that I'm a tard, I can see your logic but the finer points of implementation of such a solution have me flummoxed. Would it be at all possible for you to elaborate?
This is what I am working with:
function SearchForm() {
$searchText = isset($_REQUEST['Search']) ? $_REQUEST['Search'] : 'Search';
$fields = new FieldSet(
new TextField("Search", "", $searchText)
);
$actions = new FieldSet(
new FormAction('results', 'Search')
);
return new SearchForm($this, "SearchForm", $fields, $actions);
}
function results($data, $form){
$data = array(
'Results' => $form->getResults(),
'Query' => $form->getSearchQuery(),
'Title' => 'Search Results'
);
return $this->customise($data)->renderWith(array('Page_results', 'Page'));
}