public static function include_pager($params, $tpl = NULL) { static $eid = 0; //~ prepare income parametets $url = ''; $extraurl = ''; $element = $eid; $callback = ''; if (isset($params['url'])) { $url = $params['url']; unset($params['url']); } if (isset($params['extraurl'])) { $extraurl = $params['extraurl']; unset($params['extraurl']); } if (isset($params['element'])) { $element = $params['element']; unset($params['element']); } if (isset($params['callback'])) { $callback = $params['callback']; unset($params['callback']); } $pageparams = array(); $pageparams['pager_eid'] = $eid++; $pageparams['callback'] = $callback != '' ? $callback : ''; $key_arr = array(); $val_arr = array(); foreach ($params as $key => $val) { $key_arr[] = "/%{$key}/"; $val_arr[] = $val; } if (!empty($url) && !empty($key_arr)) { $url = preg_replace($key_arr, $val_arr, $url); } $urlconnter = View::link_connector(); $pager_curr = $GLOBALS['pager_currpage_arr'][$element]; $pager_max = $GLOBALS['pager_totalpage_arr'][$element]; $pos = strpos($url, '#'); if ($pos >= 0) { $url = substr($url, $pos); if ('?' === $urlconnter) { $urlconnter = ','; } } $pagerpname = 'p'; $extraurl = empty($extraurl) ? '' : $extraurl . '&'; $urlprefix = $url . $urlconnter . $extraurl . $pagerpname . '='; $pageparams['pager_max'] = $pager_max; $pageparams['pager_curr'] = $pager_curr; $pageparams['pager_prefix'] = $urlprefix; $pageparams['pager_first'] = $urlprefix . '1'; $pageparams['pager_prev'] = $urlprefix . ($pager_curr - 1); $pageparams['pager_next'] = $urlprefix . ($pager_curr + 1); $pageparams['pager_last'] = $urlprefix . $pager_max; if ($pager_curr == 1) { $pageparams['pager_first'] = ''; $pageparams['pager_prev'] = ''; } if ($pager_curr == $pager_max) { $pageparams['pager_next'] = ''; $pageparams['pager_last'] = ''; } $pageparams['pager_links'] = ''; $selected = ''; for ($i = 1; $i <= $pager_max; $i++) { $selected = ''; if ($i == $pager_curr) { $selected = ' selected="selected"'; } $pageparams['pager_links'] .= '<option value="' . $i . '"' . $selected . '>' . $i . '/' . $pager_max . '</option>'; } $tpl->assign('pageparams', $pageparams); $result = $tpl->fetch('inc/pagination.htm'); return $result; }
/** * return SimPHP link url connector * @return string */ function AC() { return View::link_connector(); }