sQuery = $sTmpQuery; $this->aColumns = & $aTmpColumns; $this->aColumnTypes = $aTmpColumnTypes; $this->aColumnHeaderNames = $aTmpColumnHeaderNames; $this->sWidth = $sTmpWidth; $this->bDisplayColumnHeadings = $bTmpDisplayColumnHeadings; $this->aLinkURLs = $aTmpLinkURLs; $this->aDBQueryStringColumns = $aTmpDBQueryStringColumns; $this->aQueryStringVariableNames = $aNewQueryStringVariableNames; } function setEmptyTableMessage($sNewValue) { $this->sEmptyTableMessage = $sNewValue; } function setTableHeading($sNewValue) { $this->sTableHeading = $sNewValue; } function setImageURL($sNewValue) { $this->sImageURL = $sNewValue; } function setUseImageURLFromQuery($bNewValue) { $this->bUseImageURLFromQuery = $bNewValue; } function setDisplayColumnHeadings($bNewValue) { $this->bDisplayColumnHeadings = $bNewValue; } function setIncludeBorder($bNewValue) { $this->bIncludeBorder = $bNewValue; } /** * 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; $sToRender = "bIncludeBorder ? "1" : "0") . "\" >\n"; if (isset($this->sTableHeading)) { $sToRender .= "\n"; } if ($this->bDisplayColumnHeadings) { for ($i = 0; $i < count($this->aColumnHeaderNames); $i++) { $sToRender .= "\n"; } } $sql = $default->db; $sql->query($this->sQuery); if ($sql->num_rows() == 0) { $sToRender .= "\n"; if (isset($this->sEmptyTableMessage)) { $sToRender .= "\n"; } else { $sToRender .= "\n"; } $sToRender .= "\n"; } else { while ($sql->next_record()) { $sToRender .= "\n"; for ($i = 0; $i < count($this->aColumns); $i++) { switch ($this->aColumnTypes[$i]) { case 1: //text $sToRender .= ""; } else { $sToRender .= " "; } break; case 3: //hyperlink $sToRender .= "\n"; break; default: break; } } $sToRender .= "\n"; } } $sToRender .= "
$this->sTableHeading
" . $this->aColumnHeaderNames[$i] . "
$this->sEmptyTableMessageNo " . (isset($this->sTableHeading) ? $this->sTableHeading : "") . " data
"; if (isset($this->sImageURL)) { $sToRender .= $this->generateImageURL($this->sImageURL); } else if ($this->bUseImageURLFromQuery) { $sToRender .= $this->generateImageURL($sql->f("image_url")); } if ($sql->f($this->aColumns[$i] != null)) { $sToRender .= stripslashes($sql->f($this->aColumns[$i])) . "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 .= "\">"; if (isset($this->sImageURL)) { $sToRender .= $this->generateImageURL($this->sImageURL); } else if ($this->bUseImageURLFromQuery) { $sToRender .= $this->generateImageURL($sql->f("image_url")); } $sToRender .= stripslashes($sql->f($this->aColumns[$i])) . "
"; return $sToRender; } function generateImageURL($sURL) { return ""; } } ?>