summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDerek Allard <derek.allard@ellislab.com>2010-07-05 17:06:07 +0200
committerDerek Allard <derek.allard@ellislab.com>2010-07-05 17:06:07 +0200
commite01fd0fc3b694d12dc6b968727bd7f21f8c1a0fb (patch)
tree3355999eefcd2cc3cf38d12650c6134fbfcefd67
parent96bb75cd4e9b1cbd82fe7496e9b831054c8228f1 (diff)
suppress page list
-rw-r--r--system/libraries/Pagination.php37
-rw-r--r--user_guide/changelog.html2
-rw-r--r--user_guide/libraries/pagination.html9
3 files changed, 31 insertions, 17 deletions
diff --git a/system/libraries/Pagination.php b/system/libraries/Pagination.php
index 68c35a57e..3a0632d09 100644
--- a/system/libraries/Pagination.php
+++ b/system/libraries/Pagination.php
@@ -56,6 +56,7 @@ class CI_Pagination {
var $num_tag_close = '';
var $page_query_string = FALSE;
var $query_string_segment = 'per_page';
+ var $display_pages = TRUE;
var $anchor_class = '';
/**
@@ -216,30 +217,34 @@ class CI_Pagination {
}
- // Write the digit links
- for ($loop = $start -1; $loop <= $end; $loop++)
+ // Render the pages
+ if ($this->display_pages !== FALSE)
{
- $i = ($loop * $this->per_page) - $this->per_page;
-
- if ($i >= 0)
+ // Write the digit links
+ for ($loop = $start -1; $loop <= $end; $loop++)
{
- if ($this->cur_page == $loop)
- {
- $output .= $this->cur_tag_open.$loop.$this->cur_tag_close; // Current page
- }
- else
+ $i = ($loop * $this->per_page) - $this->per_page;
+
+ if ($i >= 0)
{
- $n = ($i == 0) ? '' : $i;
-
- if ($n == '' && $this->first_url != '')
+ if ($this->cur_page == $loop)
{
- $output .= $this->num_tag_open.'<a '.$this->anchor_class.'href="'.$this->first_url.'">'.$loop.'</a>'.$this->num_tag_close;
+ $output .= $this->cur_tag_open.$loop.$this->cur_tag_close; // Current page
}
else
{
- $n = ($n == '') ? '' : $this->prefix.$n.$this->suffix;
+ $n = ($i == 0) ? '' : $i;
+
+ if ($n == '' && $this->first_url != '')
+ {
+ $output .= $this->num_tag_open.'<a '.$this->anchor_class.'href="'.$this->first_url.'">'.$loop.'</a>'.$this->num_tag_close;
+ }
+ else
+ {
+ $n = ($n == '') ? '' : $this->prefix.$n.$this->suffix;
- $output .= $this->num_tag_open.'<a '.$this->anchor_class.'href="'.$this->base_url.$n.'">'.$loop.'</a>'.$this->num_tag_close;
+ $output .= $this->num_tag_open.'<a '.$this->anchor_class.'href="'.$this->base_url.$n.'">'.$loop.'</a>'.$this->num_tag_close;
+ }
}
}
}
diff --git a/user_guide/changelog.html b/user_guide/changelog.html
index 4f86c1e94..94eff05ba 100644
--- a/user_guide/changelog.html
+++ b/user_guide/changelog.html
@@ -79,7 +79,7 @@ Hg Tag: </p>
<li>Libraries
<ul>
<li>Added <var>$prefix</var>, <var>$suffix</var> and <var>$first_url</var> properties to <a href="./libraries/pagination.html">Pagination library</a>.</li>
- <li>Added the ability to suppress first, previous, next and last links by setting their values to FALSE in the <a href="./libraries/pagination.html">Pagination library</a>.</li>
+ <li>Added the ability to suppress first, previous, next, last, and page links by setting their values to FALSE in the <a href="./libraries/pagination.html">Pagination library</a>.</li>
<li>Added <a href="./libraries/security.html">Security library</a>, which now contains the <dfn>xss_clean</dfn> function, <dfn>filename_security</dfn> function and other security related functions.</li>
<li>Added CSRF (Cross-site Reference Forgery) protection to the <a href="./libraries/security.html">Security library</a>.</li>
<li>Added <var>$parse_exec_vars</var> property to Output library.</li>
diff --git a/user_guide/libraries/pagination.html b/user_guide/libraries/pagination.html
index 33c871078..521b708b1 100644
--- a/user_guide/libraries/pagination.html
+++ b/user_guide/libraries/pagination.html
@@ -197,6 +197,15 @@ something different you can specify it.</p>
<h4>$config['num_tag_close'] = '&lt;/div>';</h4>
<p>The closing tag for the "digit" link.</p>
+<h2>Hiding the Pages</h2>
+
+<p>If you wanted to not list the specific pages (for example, you only want "next" and "previous" links), you can suppress their rendering by adding:</p>
+
+<code>
+$config['display_pages'] = FALSE;
+</code>
+
+
<h2>Adding a class to every anchor</h2>
<p>If you want to add a class attribute to every link rendered by the pagination class, you can set the config "anchor_class" equal to the classname you want.</p>