Difference between revisions of "API:EPrints/Paginate"

From EPrints Documentation
Jump to: navigation, search
 
Line 8: Line 8:
 
'''EPrints::Paginate''' - Methods for rendering a paginated List
 
'''EPrints::Paginate''' - Methods for rendering a paginated List
  
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
−
</div>
 
 
<!-- Pod2Wiki=head_description -->
 
<!-- Pod2Wiki=head_description -->
 
==DESCRIPTION==
 
==DESCRIPTION==
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
+
* $xhtml = EPrints::Paginate-&gt;paginate_list( $session, $basename, $list, %opts )
−
<span style='display:none'>User Comments</span>
+
: Render a "paginated" view of the list i.e. display a "page" of items  with links to navigate through the list.
−
<!-- Edit below this comment -->
 
  
 +
: $basename is the basename to use for pagination-specific CGI parameters, to avoid clashes.
  
−
<!-- Pod2Wiki= -->
+
: %opts is a hash of options which can be used to customise the  behaviour and/or rendering of the paginated list. See EPrints::Search  for a good example!
−
</div>
 
−
<!-- Pod2Wiki=item_paginate_list -->
 
−
===$xhtml = EPrints::Paginate-&gt;paginate_list( $session, $basename, $list, %opts )===
 
  
−
Render a "paginated" view of the list i.e. display a "page" of items  with links to navigate through the list.
+
: '''Behaviour options:'''
  
−
$basename is the basename to use for pagination-specific CGI parameters, to avoid clashes.
+
** page_size
 +
:: The maximum number of items to display on a page.
  
−
%opts is a hash of options which can be used to customise the  behaviour and/or rendering of the paginated list. See EPrints::Search  for a good example!
+
** pagejumps
 +
:: The maximum number of page jump links to display.
  
−
'''Behaviour options:'''
+
** params
 +
:: A hashref of parameters to include in the prev/next/jump URLs,  e.g. to maintain the state of other controls on the page between jumps.
  
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
+
: '''Rendering options:'''
−
<span style='display:none'>User Comments</span>
 
−
<!-- Edit below this comment -->
 
  
 +
** controls_before, controls_after
 +
:: Additional links to display before/after the page navigation controls.
  
−
<!-- Pod2Wiki= -->
+
** container
−
</div>
+
:: A containing XML DOM element for the list of items on the current page.
−
<!-- Pod2Wiki=item_page_size -->
 
−
===page_size ===
 
  
−
The maximum number of items to display on a page.
+
** render_result, render_result_params
 +
:: A custom subroutine for rendering an individual item on the current  page. The subroutine will be called with $session, $item, and the parameter specified by the render_result_params option. The rendered item should be returned.
  
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
+
** phrase
−
<span style='display:none'>User Comments</span>
+
:: The phrase to use to render the entire "page". Can make use of the following pins:
−
<!-- Edit below this comment -->
 
  
 +
*** controls
 +
::: prev/next/jump links
  
−
<!-- Pod2Wiki= -->
+
*** searchdesc
−
</div>
+
::: description of list e.g. what search parameters produced it
−
<!-- Pod2Wiki=item_pagejumps -->
 
−
===pagejumps===
 
  
−
The maximum number of page jump links to display.
+
*** matches
 +
::: total number of items in list, range of items displayed on current page
  
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
+
*** results
−
<span style='display:none'>User Comments</span>
+
::: list of rendered items
−
<!-- Edit below this comment -->
 
  
 +
*** controls_if_matches
 +
::: prev/next/jump links (only if list contains &gt;0 items)
  
−
<!-- Pod2Wiki= -->
+
:: These can be overridden in the "pins" option (below).
−
</div>
 
−
<!-- Pod2Wiki=item_params -->
 
−
===params===
 
  
−
A hashref of parameters to include in the prev/next/jump URLs,  e.g. to maintain the state of other controls on the page between jumps.
+
** pins
 +
:: Named "pins" to render on the page. These may override the default  "pins" (see above), or specify new "pins" (although you would need to define a custom phrase in order to make use of them).
  
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
+
<!-- Pod2Wiki=head_copyright -->
−
<span style='display:none'>User Comments</span>
+
==COPYRIGHT==
−
<!-- Edit below this comment -->
+
: Copyright 2000-2011 University of Southampton.
−
 
 
−
 
 
−
<!-- Pod2Wiki= -->
 
−
</div>
 
−
<!-- Pod2Wiki=item_controls_before_controls_after -->
 
−
===controls_before, controls_after===
 
−
 
 
−
Additional links to display before/after the page navigation controls.
 
−
 
 
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
−
<!-- Edit below this comment -->
 
−
 
 
−
 
 
−
<!-- Pod2Wiki= -->
 
−
</div>
 
−
<!-- Pod2Wiki=item_container -->
 
−
===container===
 
−
 
 
−
A containing XML DOM element for the list of items on the current page.
 
−
 
 
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
−
<!-- Edit below this comment -->
 
−
 
 
−
 
 
−
<!-- Pod2Wiki= -->
 
−
</div>
 
−
<!-- Pod2Wiki=item_render_result_render_result_params -->
 
−
===render_result, render_result_params===
 
−
 
 
−
A custom subroutine for rendering an individual item on the current  page. The subroutine will be called with $session, $item, and the parameter specified by the render_result_params option. The rendered item should be returned.
 
−
 
 
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
−
<!-- Edit below this comment -->
 
−
 
 
−
 
 
−
<!-- Pod2Wiki= -->
 
−
</div>
 
−
<!-- Pod2Wiki=item_phrase -->
 
−
===phrase===
 
−
 
 
−
The phrase to use to render the entire "page". Can make use of the following pins:
 
−
 
 
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
−
<!-- Edit below this comment -->
 
−
 
 
−
 
 
−
<!-- Pod2Wiki= -->
 
−
</div>
 
−
<!-- Pod2Wiki=item_controls -->
 
−
===controls===
 
−
 
 
−
prev/next/jump links
 
−
 
 
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
−
<!-- Edit below this comment -->
 
−
 
 
−
 
 
−
<!-- Pod2Wiki= -->
 
−
</div>
 
−
<!-- Pod2Wiki=item_searchdesc -->
 
−
===searchdesc===
 
  
−
description of list e.g. what search parameters produced it
+
: This file is part of EPrints http://www.eprints.org/.
  
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
+
: EPrints is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
−
<span style='display:none'>User Comments</span>
 
−
<!-- Edit below this comment -->
 
  
 +
: EPrints is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
  
−
<!-- Pod2Wiki= -->
+
: You should have received a copy of the GNU Lesser General Public License along with EPrints.  If not, see http://www.gnu.org/licenses/.
−
</div>
 
−
<!-- Pod2Wiki=item_matches -->
 
−
===matches===
 
  
−
total number of items in list, range of items displayed on current page
 
−
 
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
−
</div>
+
<!-- Pod2Wiki=_postamble_ -->
−
<!-- Pod2Wiki=item_results -->
 
−
===results===
 
−
 
 
−
list of rendered items
 
−
 
 
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
−
 
−
 
−
<!-- Pod2Wiki= -->
 
−
</div>
 
−
<!-- Pod2Wiki=item_controls_if_matches -->
 
−
===controls_if_matches===
 
−
 
−
prev/next/jump links (only if list contains &gt;0 items)
 
−
 
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
−
<!-- Edit below this comment -->
 
−
 
−
 
−
<!-- Pod2Wiki= -->
 
−
</div>
 
−
<!-- Pod2Wiki=item_pins -->
 
−
===pins===
 
−
 
−
Named "pins" to render on the page. These may override the default  "pins" (see above), or specify new "pins" (although you would need  to define a custom phrase in order to make use of them).
 
−
 
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
−
<!-- Edit below this comment -->
 
−
 
−
 
−
<!-- Pod2Wiki= -->
 
−
</div>
 
−
<!-- Pod2Wiki=head_copyright -->
 
−
==COPYRIGHT==
 
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
−
<!-- Edit below this comment -->
 
−
 
−
 
−
<!-- Pod2Wiki= -->
 
−
</div>
 
−
<!-- Pod2Wiki=_postamble_ --><!-- Edit below this comment -->
 

Latest revision as of 09:56, 22 January 2013

EPrints 3 Reference: Directory Structure - Metadata Fields - Repository Configuration - XML Config Files - XML Export Format - EPrints data structure - Core API - Data Objects


API: Core API

Latest Source Code (3.4, 3.3) | Revision Log | Before editing this page please read Pod2Wiki


NAME

EPrints::Paginate - Methods for rendering a paginated List


DESCRIPTION

  • $xhtml = EPrints::Paginate->paginate_list( $session, $basename, $list, %opts )
Render a "paginated" view of the list i.e. display a "page" of items with links to navigate through the list.
$basename is the basename to use for pagination-specific CGI parameters, to avoid clashes.
 %opts is a hash of options which can be used to customise the behaviour and/or rendering of the paginated list. See EPrints::Search for a good example!
Behaviour options:
    • page_size
The maximum number of items to display on a page.
    • pagejumps
The maximum number of page jump links to display.
    • params
A hashref of parameters to include in the prev/next/jump URLs, e.g. to maintain the state of other controls on the page between jumps.
Rendering options:
    • controls_before, controls_after
Additional links to display before/after the page navigation controls.
    • container
A containing XML DOM element for the list of items on the current page.
    • render_result, render_result_params
A custom subroutine for rendering an individual item on the current page. The subroutine will be called with $session, $item, and the parameter specified by the render_result_params option. The rendered item should be returned.
    • phrase
The phrase to use to render the entire "page". Can make use of the following pins:
      • controls
prev/next/jump links
      • searchdesc
description of list e.g. what search parameters produced it
      • matches
total number of items in list, range of items displayed on current page
      • results
list of rendered items
      • controls_if_matches
prev/next/jump links (only if list contains >0 items)
These can be overridden in the "pins" option (below).
    • pins
Named "pins" to render on the page. These may override the default "pins" (see above), or specify new "pins" (although you would need to define a custom phrase in order to make use of them).

COPYRIGHT

Copyright 2000-2011 University of Southampton.
This file is part of EPrints http://www.eprints.org/.
EPrints is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
EPrints is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with EPrints. If not, see http://www.gnu.org/licenses/.