browse by developer: Allow filtering by name

This commit is contained in:
Alexander Nicolaysen Sørnes
2008-06-15 22:01:57 +02:00
committed by Chris Morgan
parent ec4898ba75
commit c6e3cc1007

View File

@@ -247,18 +247,30 @@ class Vendor {
return 'vendorName'; return 'vendorName';
} }
function objectGetEntries($sState, $iRows = 0, $iStart = 0, $sOrderBy = 'vendorName', $bAscending = TRUE) function objectGetFilterInfo()
{
$oFilter = new FilterInterface();
$oFilter->AddFilterInfo('vendorName', 'Name', array(FILTER_CONTAINS, FILTER_STARTS_WITH, FILTER_ENDS_WITH), FILTER_VALUES_NORMAL);
return $oFilter;
}
function objectGetEntries($sState, $iRows = 0, $iStart = 0, $sOrderBy = 'vendorName', $bAscending = TRUE, $oFilter = null)
{ {
/* Not implemented */ /* Not implemented */
if($sState == 'rejected') if($sState == 'rejected')
return FALSE; return FALSE;
$sWhereFilter = $oFilter ? $oFilter->getWhereClause() : '';
$sOrder = $bAscending ? 'ASC' : 'DESC'; $sOrder = $bAscending ? 'ASC' : 'DESC';
if(!$iRows) if($sWhereFilter)
$iRows = Vendor::objectGetEntriesCount($sState); $sWhereFilter = " AND $sWhereFilter";
$hResult = query_parameters("SELECT * FROM vendor WHERE state = '?' if(!$iRows)
$iRows = Vendor::objectGetEntriesCount($sState, $oFilter);
$hResult = query_parameters("SELECT * FROM vendor WHERE state = '?' $sWhereFilter
ORDER BY $sOrderBy $sOrder LIMIT ?,?", ORDER BY $sOrderBy $sOrder LIMIT ?,?",
$sState, $iStart, $iRows); $sState, $iStart, $iRows);
@@ -399,13 +411,17 @@ class Vendor {
return "<a href=\"".$this->objectMakeUrl()."\">$this->sName</a>"; return "<a href=\"".$this->objectMakeUrl()."\">$this->sName</a>";
} }
function objectGetEntriesCount($sState) function objectGetEntriesCount($sState, $oFilter = null)
{ {
/* Not implemented */ /* Not implemented */
if($sState == 'rejected') if($sState == 'rejected')
return FALSE; return FALSE;
$hResult = query_parameters("SELECT COUNT(vendorId) as count FROM vendor WHERE state = '?'", $sWhereClause = $oFilter ? $oFilter->getWhereClause() : '';
if($sWhereClause)
$sWhereClause = " AND $sWhereClause";
$hResult = query_parameters("SELECT COUNT(vendorId) as count FROM vendor WHERE state = '?' $sWhereClause",
$sState); $sState);
if(!$hResult) if(!$hResult)