" . $text . "
"; return $ret; } /** * displays header line */ function displayLine() { $ret = "

"; return $ret; } } /** * DisplaySearch */ class DisplaySearch extends Display { /** * Constructor */ function DisplaySearch() { } /** * displays search controls * * @param $align * where to align the control * @param $q * search query * @param $focus * whether to focus control on this block */ function displaySearchBlock($align,$m,$q,$url_opts,$focus) { // align if ($align=='center') { $alignText = "class='bar_center'"; } else { $alignText = "class='bar_left'"; } // url options foreach ($url_opts as $key => $value) { $option_text .= ""; } // build $ret .= "
" . $option_text . "
"; if ($focus=="true") { // search block loaded twice usually so only allow javascript to be loaded on the top block $ret .= ""; } return $ret; } /** * displays info bar * * @param $controls * controls for the page on the bar * @param $q * search query * @param $start * start number of current page * @param $span * number of items on current page * @param $total * total number of records found by current search */ function displayInfoBarBlock($controls,$q,$start,$span,$total) { if ($total<$span) { $span = $total; } $start_count = ($total>0)?$start+1:$start; $span_count = ($start+$span>$total)?$total:$start+$span; if ($controls) { $left_text = $controls; } elseif ($q != NULL) { $left_text = "" . _("Searched for") . " " . $q . ""; } if ($span<$total) { $right_text = "" . sprintf(_("Results %d - %d of %d"),$start_count,$span_count,$total) . ""; } else { $right_text = "" . sprintf(_("Results %d"),$total) . ""; } $ret .= " "; return $ret; } /** * displays navigation bar * * @param $q * search query * @param $start * start number of current page * @param $span * number of items on current page * @param $total * total number of records found by current search */ function displayNavigationBlock($m,$q,$url_opts,$start,$span,$total) { $start = $start=='' ? 0 : $start ; $span = $span=='' ? 15 : $span ; $total_pages = ceil($total/$span); $start_page = floor($start/$span); // if more than ten pages start at this page minus ten otherwise start at zero $begin = ($start_page>10)?($start_page-10):0; // if more than ten pages then stop at this page plus ten otherwise stop at last page $end = ($start_page>8)?($start_page+10):10; // url $unicode_q = urlencode($q); // encode search string foreach ($url_opts as $key => $value) { $option_text .= "&" . $key . "=" . $value; } $url = $_SESSION['ARI_ROOT'] . "?m=" . $m . "&q=" . $unicode_q . $option_text; // build if ($start_page!=0) { $start_page_text = "" . _("First") . "  < "; } for($next_page=$begin;($next_page<$total_pages)&&($next_page<$end);$next_page++) { if ($next_page == $start_page) { $middle_page_text .= "" . ($next_page+1) . " "; } else { $middle_page_text .= "" . ($next_page+1) . " "; } } if ( ($start_page != $total_pages-1) && ($total != 0) ) { $end_page_text = ">  " . _("Last") . " "; } $ret .= "
" . $start_page_text . " " . $middle_page_text . " " . $end_page_text . "
"; return $ret; } } ?>