Mysql_Pager Class Reference

Inheritance diagram for Mysql_Pager:
Claro_Pager_Interface Claro_Sortable

Public Member Functions

 __construct ($query, $database=null)
 sortBy ($field, $direction)
 setPageSize ($pageSize)
 getAll ()
 getPage ($pageNumber)
 hasNext ($pageNumber)
 hasPrev ($pageNumber)
 isPageNumberValid ($pageNumber)
 countPages ()

Protected Member Functions

 getCount ()
 getLimit ($pageNumber)
 getOrder ($pageNumber)

Protected Attributes

 $query
 $database
 $pageSize = 25
 $numberOfItems
 $sortArray = array()

Detailed Description

Definition at line 251 of file pager.lib.php.


Constructor & Destructor Documentation

__construct ( query,
database = null 
)

Constructor, can be used directly or through Database_Connection::pager()

Parameters:
string $query database query
Database_Connection $database connection to the database, if missing the Claroline default database will be used

Definition at line 266 of file pager.lib.php.


Member Function Documentation

countPages (  ) 

Count the number of pages in the database. Return 1 if pageSize is set to 0. Return 0 if no result have been returned by the database

Returns:
int number of pages

Implements Claro_Pager_Interface.

Definition at line 409 of file pager.lib.php.

getAll (  ) 

Get all the results on one page. This method will use the sort by fields.

Returns:
Database_ResultSet
Exceptions:
Claro_Database_Exception 

Implements Claro_Pager_Interface.

Definition at line 308 of file pager.lib.php.

getCount (  )  [protected]

Definition at line 440 of file pager.lib.php.

getLimit ( pageNumber  )  [protected]

Definition at line 449 of file pager.lib.php.

getOrder ( pageNumber  )  [protected]

Definition at line 457 of file pager.lib.php.

getPage ( pageNumber  ) 

Get one page of the result set. Pages are numbered from 0 to countPages(). If pageSize set to 0, calling getPage() is the same as calling getAll(). In this case only 0 is a valid page number.

Parameters:
int $pageNumber number of the page needed
Returns:
Database_ResultSet
Exceptions:
Claro_Database_Exception if an error occurs while executing the query
OutOfBoundsException if the page number is not valid

Implements Claro_Pager_Interface.

Definition at line 329 of file pager.lib.php.

hasNext ( pageNumber  ) 

Returns true if the current page as a next page, false else

Parameters:
int $pageNumber
Returns:
bool true if there is a next page
Exceptions:
OutOfBoundsException if the given page number is not valid

Implements Claro_Pager_Interface.

Definition at line 358 of file pager.lib.php.

hasPrev ( pageNumber  ) 

Returns true if the current page as a previous page, false else

Parameters:
int $pageNumber
Returns:
bool true if there is a previous page
Exceptions:
OutOfBoundsException if the given page number is not valid

Implements Claro_Pager_Interface.

Definition at line 377 of file pager.lib.php.

isPageNumberValid ( pageNumber  ) 

Check if the given page number is valid i.e. : 0 <= $pageNumber < Claro_Pageable::countPages()

Parameters:
int $pageNumber
Returns:
bool

Implements Claro_Pager_Interface.

Definition at line 396 of file pager.lib.php.

setPageSize ( pageSize  ) 

Set the number of items by page. If set to 0, all items are going to be returned on one single page by getPage() (same as calling the getAll() method)

Parameters:
int $pageSize

Implements Claro_Pager_Interface.

Definition at line 296 of file pager.lib.php.

sortBy ( field,
direction 
)

Add an sort condition on the given field name in the given sort direction

Parameters:
string $field field name
string $direction Claro_Sortable::ASC or Claro_Sortable::DESC

Implements Claro_Sortable.

Definition at line 284 of file pager.lib.php.


Field Documentation

$database [protected]

Definition at line 254 of file pager.lib.php.

$numberOfItems [protected]

Definition at line 256 of file pager.lib.php.

$pageSize = 25 [protected]

Definition at line 255 of file pager.lib.php.

$query [protected]

Definition at line 253 of file pager.lib.php.

$sortArray = array() [protected]

Definition at line 257 of file pager.lib.php.


The documentation for this class was generated from the following file:
Generated on Tue Jun 8 12:28:39 2010 for Claroline API by  doxygen 1.6.3