sQuery = $sTmpQuery; $this->iResultsToDisplay = $iTmpResultsToDisplay; $this->aColumns = $aTmpColumns; $this->aColumnHeadings = $aTmpColumnHeaders; $this->aColumnTypes = $aTmpColumnTypes; $this->aLinkURLs = $aTmpLinkURLs; $this->aDBQueryStringColumns = $aTmpDBQueryStringColumns; $this->aQueryStringVariableNames = $aTmpQueryStringVariableNames; } 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; //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 = "
| aColumns[$i] . "&fOrderDirection=DESC&fStartIndex=" . $this->iStartIndex . "\">" . $this->aColumnHeadings[$i]." | \n"; } else { $sToRender .= "aColumns[$i] . "&fOrderDirection=ASC&fStartIndex=" . $this->iStartIndex . "\">" . $this->aColumnHeadings[$i]." | \n"; } } else { $sToRender .= "aColumns[$i] . "&fOrderDirection=ASC&fStartIndex=" . $this->iStartIndex . "\">" . $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($sToRender, "?") === false) { $sToRender .= "?" . $this->aQueryStringVariableNames[$j] . "=" . $sql->f($this->aDBQueryStringColumns[$j]); } else { $sToRender .= "&" . $this->aQueryStringVariableNames[$j] . "=" . $sql->f($this->aDBQueryStringColumns[$j]); } } $sToRender .= "\">" . $sql->f($this->aColumns[$i]) . " | \n"; break; default: break; } } $sToRender .= "||
|   | ||||
| "; $sToRender .= ("iStartIndex + $this->iResultsToDisplay) . "\">Next"); $sToRender .= " | \n"; } /* Display both the next and the previous buttons */ else if (($this->iStartIndex + $this->iResultsToDisplay) < $this->getResultCount($sql) && $this->iStartIndex > 0) { $sToRender .= ""; $sToRender .= ("iStartIndex + $this->iResultsToDisplay) . "\">Next"); $sToRender .= " | "; $sToRender .= ""; $sToRender .= ("iStartIndex - $this->iResultsToDisplay) . "\">Previous"); $sToRender .= " | \n"; } /* Display only the previous button */ else if ($this->iStartIndex > 0) { $sToRender .= "\n"; $sToRender .= (" "); $sToRender .= " | "; $sToRender .= "\n"; $sToRender .= ("iStartIndex - $this->iResultsToDisplay) . "\">Previous"); $sToRender .= " | "; } $sToRender .= "