private static function showPacking($results, $displayMode, $dropMenu, $page, $footer) { $request = Request::createFromGlobals(); $queryStr = $request->getQueryString(); $dm = array(); $selD = $request->get('d', 't'); foreach ($displayMode as $name => $text) { $newParamStr = Utility::setParam('d', $name, Utility::setParam('p', 1, $queryStr)); $dm[] = array('sel' => $selD == $name, 'url' => 'show?' . $newParamStr, 'value' => $text); } $selP = $request->get('p') ? $request->get('p') : 1; $navStartP = $selP < 5 ? 0 : $selP - 3; $navEndP = $navStartP + 10 >= $page ? $page : $navStartP + 10; $nav = array('prev' => 'show?' . Utility::setParam('p', $selP - 1, $queryStr), 'next' => 'show?' . Utility::setParam('p', $selP + 1, $queryStr), 'pages' => array(), 'startP' => $navStartP, 'now' => $selP); for ($i = $navStartP; $i < $navEndP; $i++) { $nav['pages'][] = 'show?' . Utility::setParam('p', $i + 1, $queryStr); } $resultNum = $results['count']; $topBar = array(array('text' => 'NCKU入口', 'url' => 'http://i.ncku.edu.tw/', 'sel' => false), array('text' => 'XDBrowser', 'url' => '../app.php/', 'sel' => true), array('text' => 'XDPrayer', 'url' => '../app.php/pray', 'sel' => false), array('text' => '使用說明', 'url' => '../app.php/help', 'sel' => false)); return array('topbar' => $topBar, 'show' => true, 'results' => $results['items'], 'resultInfo' => "約有 {$resultNum} 項結果", 'dmodes' => $dm, 'menuItems' => $dropMenu, 'query' => $request->get('q'), 'nav' => $nav, 'footer' => $footer); }