Merge pull request #1160 from kapv89/patch-2

Updated Paginator to fit better with bootstrap 2.1
This commit is contained in:
Dayle Rees 2012-09-11 03:20:44 -07:00
commit 38562d5007
2 changed files with 21 additions and 19 deletions

View File

@ -80,29 +80,31 @@ ## Pagination Styling
All pagination link elements can be style using CSS classes. Here is an example of the HTML elements generated by the links method:
<div class="pagination">
<a href="foo" class="previous_page">Previous</a>
<ul>
<li class="previous_page"><a href="foo">Previous</a></li>
<a href="foo">1</a>
<a href="foo">2</a>
<li><a href="foo">1</a></li>
<li><a href="foo">2</a></li>
<span class="dots">...</span>
<li class="dots disabled"><a href="#">...</a></li>
<a href="foo">11</a>
<a href="foo">12</a>
<li><a href="foo">11</a></li>
<li><a href="foo">12</a></li>
<span class="current">13</span>
<li class="active"><a href="#">13</li>
<a href="foo">14</a>
<a href="foo">15</a>
<li><a href="foo">14</a></li>
<li><a href="foo">15</a></li>
<span class="dots">...</span>
<li class="dots disabled"><a href="#">...</a></li>
<a href="foo">25</a>
<a href="foo">26</a>
<li><a href="foo">25</a></li>
<li><a href="foo">26</a></li>
<a href="foo" class="next_page">Next</a>
<li class="next_page"><a href="foo">Next</a></li>
</ul>
</div>
When you are on the first page of results, the "Previous" link will be disabled. Likewise, the "Next" link will be disabled when you are on the last page of results. The generated HTML will look like this:
<span class="disabled prev_page">Previous</span>
<li class="disabled previous_page"><a href="#">Previous</a></li>

View File

@ -65,7 +65,7 @@ class Paginator {
*
* @var string
*/
protected $dots = '<span class="dots">...</span>';
protected $dots = '<li class="dots disabled"><a href="#">...</a></li>';
/**
* Create a new Paginator instance.
@ -183,7 +183,7 @@ public function links($adjacent = 3)
$links = $this->slider($adjacent);
}
$content = $this->previous().' '.$links.' '.$this->next();
$content = '<ul>' . $this->previous() . $links . $this->next() . '</ul>';
return '<div class="pagination">'.$content.'</div>';
}
@ -300,7 +300,7 @@ protected function element($element, $page, $text, $disabled)
// the "first" element should be a span instead of a link.
if ($disabled($this->page, $this->last))
{
return HTML::span($text, array('class' => "{$class} disabled"));
return '<li'.HTML::attributes(array('class'=>"{$class} disabled")).'><a href="#">'.$text.'</a></li>';
}
else
{
@ -349,7 +349,7 @@ protected function range($start, $end)
{
if ($this->page == $page)
{
$pages[] = HTML::span($page, array('class' => 'current'));
$pages[] = '<li class="active"><a href="#">'.$page.'</a></li>';
}
else
{
@ -372,7 +372,7 @@ protected function link($page, $text, $class)
{
$query = '?page='.$page.$this->appendage($this->appends);
return HTML::link(URI::current().$query, $text, compact('class'), Request::secure());
return '<li'.HTML::attributes(array('class' => $class)).'>'. HTML::link(URI::current().$query, $text, array(), Request::secure()).'</li>';
}
/**