Index: themes/seven/style.css =================================================================== RCS file: /cvs/drupal/drupal/themes/seven/style.css,v retrieving revision 1.18 diff -u -p -r1.18 style.css --- themes/seven/style.css 11 Sep 2009 13:48:44 -0000 1.18 +++ themes/seven/style.css 23 Sep 2009 10:55:08 -0000 @@ -430,6 +430,32 @@ table tr.selected td { border-color: #eeb; } +/* Pager */ +.short-pager { + text-align: right; + margin-top: 2em; +} + +.short-pager div { + display: inline; + margin-left: 1em; +} + +.short-pager .short-pager-total { + font-size: 0.8em; + color: #5d5d5d; +} + +.short-pager .short-pager-prev { + background: url(images/arrow-prev.png) no-repeat center left; + padding-left: 10px; +} + +.short-pager .short-pager-next { + background: url(images/arrow-next.png) no-repeat center right; + padding-right: 10px; +} + /** * Forms. */ Index: themes/seven/template.php =================================================================== RCS file: /cvs/drupal/drupal/themes/seven/template.php,v retrieving revision 1.6 diff -u -p -r1.6 template.php --- themes/seven/template.php 15 Sep 2009 17:10:39 -0000 1.6 +++ themes/seven/template.php 23 Sep 2009 10:55:08 -0000 @@ -89,3 +89,41 @@ function seven_fieldset($element) { return '' . ($element['#title'] ? '' . $element['#title'] . '' : '') . (isset($element['#description']) && $element['#description'] ? '
' . $element['#description'] . '
' : '') . (!empty($element['#children']) ? $element['#children'] : '') . (isset($element['#value']) ? $element['#value'] : '') . "\n"; } + +/** + * Override of theme_pager(). + * + * Implement "Showing 1-50 of 2345 Next 50 >" type of output. + */ +function seven_pager($tags = array(), $element = 0, $parameters = array(), $quantity = 9) { + global $pager_page_array, $pager_total, $pager_total_items, $pager_limits; + + $total_items = $pager_total_items[$element]; + + if ($total_items == 0) { + // No items to display. + return; + } + + $total_pages = $pager_total[$element]; + $limit = $pager_limits[$element]; + $showing_min = $pager_page_array[$element] * $limit + 1; + $showing_max = min(($pager_page_array[$element] + 1) * $limit, $total_items); + $pager_current = $pager_page_array[$element]; + + $output = '
'; + if ($pager_current > 0) { + $page_new = pager_load_array($pager_current - 1, $element, $pager_page_array); + $output .= '
' . theme('pager_link', t('Previous @limit', array('@limit' => $limit)), $page_new, $element, $parameters, array('title' => t('Go to the previous page'))) . '
'; + } + + $output .= '
' . t('Showing @range of @total', array('@range' => $showing_min . ' - ' . $showing_max, '@total' => $total_items)) . '
'; + + if (($pager_current < ($total_pages - 1)) && ($total_pages > 1)) { + $page_new = pager_load_array($pager_current + 1, $element, $pager_page_array); + $output .= '
' . theme('pager_link', t('Next @limit', array('@limit' => $limit)), $page_new, $element, $parameters, array('title' => t('Go to the next page'))) . '
'; + } + $output .= '
'; + + return $output; +}