diff options
author | wei <> | 2006-07-28 12:32:01 +0000 |
---|---|---|
committer | wei <> | 2006-07-28 12:32:01 +0000 |
commit | 623447ffea7a49359c773a0bc3a851397885f319 (patch) | |
tree | 93676acdeea5697dd00fb10d0eb70948901b549e /demos/time-tracker/protected/App_Code/Dao/ProjectDao.php | |
parent | fbf05a159bc1a688940c16dc304eaaf140188b01 (diff) |
Add sqlite support for time-tracker.
Diffstat (limited to 'demos/time-tracker/protected/App_Code/Dao/ProjectDao.php')
-rw-r--r-- | demos/time-tracker/protected/App_Code/Dao/ProjectDao.php | 105 |
1 files changed, 105 insertions, 0 deletions
diff --git a/demos/time-tracker/protected/App_Code/Dao/ProjectDao.php b/demos/time-tracker/protected/App_Code/Dao/ProjectDao.php new file mode 100644 index 00000000..0a0771e3 --- /dev/null +++ b/demos/time-tracker/protected/App_Code/Dao/ProjectDao.php @@ -0,0 +1,105 @@ +<?php
+/**
+ * Project DAO class file.
+ *
+ * @author Wei Zhuo <weizhuo[at]gmail[dot]com>
+ * @link http://www.pradosoft.com/
+ * @copyright Copyright © 2005-2006 PradoSoft
+ * @license http://www.pradosoft.com/license/
+ * @version $Revision: $ $16/07/2006: $
+ * @package Demos
+ */
+
+/**
+ * Project DAO class.
+ *
+ * @author Wei Zhuo <weizhuo[at]gmail[dot]com>
+ * @version $Revision: $ $16/07/2006: $
+ * @package Demos
+ * @since 3.1
+ */
+class ProjectDao extends BaseDao
+{
+ public function projectNameExists($projectName)
+ {
+ $sqlmap = $this->getConnection();
+ return $sqlmap->queryForObject('ProjectNameExists', $projectName);
+ }
+
+ public function addNewProject($project)
+ {
+ $sqlmap = $this->getConnection();
+ $sqlmap->insert('CreateNewProject', $project);
+ }
+
+ public function getProjectByID($projectID)
+ {
+ $sqlmap = $this->getConnection();
+ return $sqlmap->queryForObject('GetProjectByID', $projectID);
+ }
+
+ public function deleteProject($projectID)
+ {
+ $sqlmap = $this->getConnection();
+ $sqlmap->update('DeleteProject',$projectID);
+ }
+
+ public function addUserToProject($projectID, $username)
+ {
+ $sqlmap = $this->getConnection();
+ $members = $this->getProjectMembers($projectID);
+ if(!in_array($username, $members))
+ {
+ $param['username'] = $username;
+ $param['project'] = $projectID;
+ $sqlmap->insert('AddUserToProject',$param);
+ }
+ }
+
+ public function getProjectMembers($projectID)
+ {
+ $sqlmap = $this->getConnection();
+ return $sqlmap->queryForList('GetProjectMembers', $projectID);
+ }
+
+ public function getAllProjects($sort='', $order='ASC')
+ {
+ $sqlmap = $this->getConnection();
+ if($sort === '')
+ return $sqlmap->queryForList('GetAllProjects');
+ else
+ {
+ $param['sort'] = $sort;
+ $param['order'] = $order;
+ return $sqlmap->queryForList('GetAllProjectsOrdered', $param);
+ }
+ }
+
+ public function getProjectsByManagerName($manager)
+ {
+ $sqlmap = $this->getConnection();
+ return $sqlmap->queryForList('GetProjectsByManagerName', $manager);
+ }
+
+ public function getProjectsByUserName($username)
+ {
+ $sqlmap = $this->getConnection();
+ return $sqlmap->queryForList('GetProjectsByUserName', $username);
+ }
+
+ public function removeUserFromProject($projectID, $username)
+ {
+ $sqlmap = $this->getConnection();
+ $param['username'] = $username;
+ $param['project'] = $projectID;
+ $sqlmap->delete('RemoveUserFromProject', $param);
+ }
+
+ public function updateProject($project)
+ {
+ $sqlmap = $this->getConnection();
+ $sqlmap->update('UpdateProject', $project);
+ }
+}
+
+?>
\ No newline at end of file |