//$currentPage = Check::postGetSessionInt('page_problem', 1);
$currentPage = Check::postGetSessionInt('page', 1);
$searchType = Check::postGetSessionInt('search_type_problem');
$logical = Check::postGetSessionString('logical_problem');
$limit = Check::postGetSessionInt('limit_problem');
// remove slashes added by form post
$searchText = stripslashes(Check::postGetSessionString('search_text_problem'));
// remove redundant whitespace
$searchText = preg_replace("/[[:space:]]+/i", " ", $searchText);
// transform string in array of strings
$arraySearch = Search::explodeQuoted($searchText);
/**
 * Search database
 */
$problemQ = new Query_Page_Problem();
$problemQ->setItemsPerPage(OPEN_ITEMS_PER_PAGE);
$problemQ->search($searchType, $arraySearch, $currentPage, $logical, $limit);
/**
 * No results message if no results returned from search.
 */
if ($problemQ->getRowCount() == 0) {
    $problemQ->close();
    FlashMsg::add(sprintf(_("No results found for '%s'."), $searchText));
    header("Location: ../medical/patient_search_form.php");
    exit;
}
/**
 * Show problem view screen if only one result from query
 */
if ($problemQ->getRowCount() == 1) {
    $problem = $problemQ->fetch();