summaryrefslogtreecommitdiff
path: root/demos/quickstart/protected/comments/QuickStartComments.php
diff options
context:
space:
mode:
authorxue <>2006-07-02 18:05:42 +0000
committerxue <>2006-07-02 18:05:42 +0000
commit7e002c23edc5fb5db70935591aa6adeda25fc7fb (patch)
tree846feb337405448cc1559c2e7b4ed6f85798e0c7 /demos/quickstart/protected/comments/QuickStartComments.php
parent618293517861b69334cd470068199394120cd20a (diff)
Merge from 3.0 branch till 1224.
Diffstat (limited to 'demos/quickstart/protected/comments/QuickStartComments.php')
-rw-r--r--demos/quickstart/protected/comments/QuickStartComments.php175
1 files changed, 0 insertions, 175 deletions
diff --git a/demos/quickstart/protected/comments/QuickStartComments.php b/demos/quickstart/protected/comments/QuickStartComments.php
deleted file mode 100644
index 7b504caf..00000000
--- a/demos/quickstart/protected/comments/QuickStartComments.php
+++ /dev/null
@@ -1,175 +0,0 @@
-<?php
-
-/**
- * QuickStartComments class.
- *
- * @author Wei Zhuo <weizhuo[at]gmail[dot]com>
- * @version : $ Sat May 27 16:49:19 AZOST 2006 $
- * @package Demos.QuickStart.comments
- * @since 3.0
- */
-class QuickStartComments
-{
- /**
- * @var string sqlite database source.
- */
- private $_database;
- /**
- * @var sqlite connection.
- */
- private $_connection;
-
- /**
- * Sets the sqlite comment database file.
- */
- public function __construct()
- {
- $this->_database = realpath(dirname(__FILE__).'/comments.db');
- }
-
- /**
- * Closed the database connection.
- */
- public function __destruct()
- {
- if(!is_null($this->_connection))
- sqlite_close($this->_connection);
- }
-
- /**
- * @return resource sqlite database connection.
- */
- protected function getConnection()
- {
- if(is_null($this->_connection))
- $this->_connection = sqlite_open($this->_database);
- return $this->_connection;
- }
-
- /**
- * Quote database input data.
- */
- protected function quote($value)
- {
- return sqlite_escape_string($value);
- }
-
- /**
- * Executes an sqlite query.
- * @param string SQL
- * @return mixed query results.
- */
- protected function query($sql)
- {
- return sqlite_query($this->getConnection(), $sql);
- }
-
- /**
- * Returns a row from the sqlite result.
- * @param resource sqlite result
- * @return array database record.
- */
- protected function fetch($resource)
- {
- if($resource !== false)
- return sqlite_fetch_array($resource);
- else
- return false;
- }
-
- /**
- * Fetch all the records for given SQL query.
- * @param string SQL query.
- * @return array result set.
- */
- protected function fetchAll($sql)
- {
- $rs = $this->query($sql);
- $rows = array();
- while($row = $this->fetch($rs))
- $rows[] = $row;
- return $rows;
- }
-
- /**
- * Returns all the comments for a given page.
- * @param string specific page comments
- * @return array list of comments
- */
- public function getComments($pageID)
- {
- $page = $this->quote($pageID);
- $sql = "SELECT * FROM comments WHERE page='$page' AND approved = 1 ORDER BY date_added ASC";
- return $this->fetchAll($sql);
- }
-
- /**
- * Adds a new comment for moderation.
- * @param string ID of the page to comment belongs
- * @param string email address of the commenter
- * @param string comment contents
- */
- public function addNewComment($pageID, $email, $comment)
- {
- $page = $this->quote($pageID);
- $email = $this->quote($email);
- $comment = $this->quote($comment);
- $date_added = time();
- $sql = <<<EOD
- INSERT INTO comments(page, email, comment, date_added)
- VALUES ('$page', '$email', '$comment', '$date_added')
-EOD;
- return $this->query($sql);
- }
-
- /**
- * Update an existing comment.
- * @param string comment ID
- * @param string page ID
- * @param string email address
- * @param string updated comment.
- */
- public function updateComment($commentID, $page, $email, $content)
- {
- $ID = intval($commentID);
- $email = $this->quote($email);
- $comment = $this->quote($content);
- $page = $this->quote($page);
- $sql = <<<EOD
- UPDATE comments SET
- email = '$email', comment = '$comment', page = '$page'
- WHERE id = $ID;
-EOD;
- $this->query($sql);
- }
-
- /**
- * Delete a comment.
- * @param string comment ID
- */
- public function deleteComment($commentID)
- {
- $ID = intval($commentID);
- $this->query("DELETE FROM comments WHERE id=$ID");
- }
-
- /**
- * @return array all the quequed comments.
- */
- public function getQuequedComments()
- {
- return $this->fetchAll("SELECT * FROM comments WHERE approved != 1");
- }
-
- /**
- * Approve a quequed comment.
- * @param string comment ID.
- */
- public function approveComment($commentID)
- {
- $ID = intval($commentID);
- $this->query("UPDATE comments SET approved = 1 WHERE id=$ID");
- }
-}
-
-?> \ No newline at end of file