sQuery = $sTmpQuery; $this->iResultsToDisplay = $iTmpResultsToDisplay; $this->aColumns = $aTmpColumns; $this->aColumnHeadings = $aTmpColumnHeaders; $this->aColumnTypes = $aTmpColumnTypes; $this->aLinkURLs = $aTmpLinkURLs; $this->aDBQueryStringColumns = $aTmpDBQueryStringColumns; $this->aQueryStringVariableNames = $aTmpQueryStringVariableNames; $this->sQueryString = ""; } function setQueryString($sNewQueryString) { $this->sQueryString = $sNewQueryString; } function getQueryString() { return $this->sOrderByColumn; } function setStartIndex($iNewValue) { $this->iStartIndex = $iNewValue; } function setOrderByColumn($sNewValue) { $this->sOrderByColumn = $sNewValue; } function setOrderDirection($sNewValue) { $this->sOrderDirection = $sNewValue; } /** * Build the HTML string used to render the object * * @return String of HTML used to render object * * @todo possibly add in image size restraints for link types 2 and 3 */ function & render() { global $default; $sSectionName = $default->siteMap->getSectionName(substr($_SERVER["PHP_SELF"], strlen($default->rootUrl), strlen($_SERVER["PHP_SELF"]))); $sTHBGColour = $default->siteMap->getSectionColour($sSectionName, "th"); //add the limit and offset stuff for cutting down result set $sLimitQuery = $this->sQuery . " LIMIT " . $this->iStartIndex . ", " . $this->iResultsToDisplay; $sql = & $default->db; $sql->query($sLimitQuery); $sToRender; if ($sql->num_rows() == 0) { //no results $sToRender = "
No results matched your criteria | \n";
$sToRender .= "
| aColumns[$i] . "&fOrderDirection=DESC&fStartIndex=" . $this->iStartIndex . "\">" . $this->aColumnHeadings[$i]." | \n"; $sToRender .= "" . $this->aColumnHeadings[$i]. " | \n"; } else { //$sToRender .= "aColumns[$i] . "&fOrderDirection=ASC&fStartIndex=" . $this->iStartIndex . "\">" . $this->aColumnHeadings[$i]." | \n"; $sToRender .= "" . $this->aColumnHeadings[$i]. " | \n"; } } else { //$sToRender .= "aColumns[$i] . "&fOrderDirection=ASC&fStartIndex=" . $this->iStartIndex . "\">" . $this->aColumnHeadings[$i]." | \n"; $sToRender .= "" . $this->aColumnHeadings[$i]. " | \n"; } } $sToRender .= "
|---|---|---|---|---|---|
| " . $sql->f($this->aColumns[$i]) . " | \n"; break; case 2: //diplay a checkbox $sToRender .= "" . ($sql->f($this->aColumns[$i]) ? "Yes" : "No") . " | \n"; break; case 3: //display a url $sToRender .= "aLinkURLs[$i]; for ($j = 0; $j < count($this->aDBQueryStringColumns); $j++) { if (strpos($sURLplusQuery, "?") === false) { $sURLplusQuery .= "?" . $this->aQueryStringVariableNames[$j] . "=" . $sql->f($this->aDBQueryStringColumns[$j]); } else { $sURLplusQuery .= "&" . $this->aQueryStringVariableNames[$j] . "=" . $sql->f($this->aDBQueryStringColumns[$j]); } } $sToRender .= $sURLplusQuery; $sToRender .= "\">" . $sql->f($this->aColumns[$i]) . " | \n"; break; case 4: //diplay an image URL $sToRender .= "aLinkURLs[$i];
for ($j = 0; $j < count($this->aDBQueryStringColumns); $j++) {
if (strpos($sToRender, "?") === false) {
$sToRender .= "?" . $this->aQueryStringVariableNames[$j] . "=" . $sql->f($this->aDBQueryStringColumns[$j]);
} else {
$sToRender .= "&" . $this->aQueryStringVariableNames[$j] . "=" . $sql->f($this->aDBQueryStringColumns[$j]);
}
}
$sToRender .= "\"> | \n";
break;
default:
break;
}
}
$sToRender .= "||
|   | |||||
| "; //$sToRender .= ("iStartIndex + $this->iResultsToDisplay) . "\">Next"); $sToRender .= ("graphicsUrl/widgets/next.gif\" onClick=\"setActionAndSubmit('" . $_SERVER["PHP_SELF"] . "?fStartIndex=" . ($this->iStartIndex + $this->iResultsToDisplay) . $this->sQueryString . "')\" />"); $sToRender .= " | \n"; } /* Display both the next and the previous buttons */ else if (($this->iStartIndex + $this->iResultsToDisplay) < $this->getResultCount($sql) && $this->iStartIndex > 0) { $sToRender .= ""; $sToRender .= ("graphicsUrl/widgets/next.gif\" onClick=\"setActionAndSubmit('" . $_SERVER["PHP_SELF"] . "?fStartIndex=" . ($this->iStartIndex + $this->iResultsToDisplay) . $this->sQueryString . "')\" />"); $sToRender .= " | "; $sToRender .= ""; $sToRender .= ("graphicsUrl/widgets/previous.gif\" onClick=\"setActionAndSubmit('" . $_SERVER["PHP_SELF"] . "?fStartIndex=" . ($this->iStartIndex - $this->iResultsToDisplay) . $this->sQueryString . "')\" />"); $sToRender .= " | \n"; } /* Display only the previous button */ else if ($this->iStartIndex > 0) { $sToRender .= "\n"; $sToRender .= (" "); $sToRender .= " | "; $sToRender .= "\n"; $sToRender .= ("graphicsUrl/widgets/previous.gif\" onClick=\"setActionAndSubmit('" . $_SERVER["PHP_SELF"] . "?fStartIndex=" . ($this->iStartIndex - $this->iResultsToDisplay) . $this->sQueryString . "')\" />"); $sToRender .= " | "; } $sToRender .= "