diff options
author | Björn Geiger | 2011-04-13 15:43:34 +0200 |
---|---|---|
committer | Björn Geiger | 2011-04-13 15:43:34 +0200 |
commit | 89376dc8bef5548fff83c78034471614f24fcb9b (patch) | |
tree | d580b52cb258e5180d164d9f108c4f9ff1b820c1 /application/models | |
parent | minor (diff) | |
download | pbs2-89376dc8bef5548fff83c78034471614f24fcb9b.tar.gz pbs2-89376dc8bef5548fff83c78034471614f24fcb9b.tar.xz pbs2-89376dc8bef5548fff83c78034471614f24fcb9b.zip |
Suspend und Resume Membership + Decline Grouprequest
Diffstat (limited to 'application/models')
-rw-r--r-- | application/models/Membership.php | 60 | ||||
-rw-r--r-- | application/models/MembershipMapper.php | 62 |
2 files changed, 66 insertions, 56 deletions
diff --git a/application/models/Membership.php b/application/models/Membership.php index eaa1f97..8a18d11 100644 --- a/application/models/Membership.php +++ b/application/models/Membership.php @@ -6,6 +6,7 @@ class Application_Model_Membership protected $_groupID; protected $_roleID; protected $_personID; + protected $_suspended; public function __construct(array $options = null) { @@ -81,39 +82,48 @@ class Application_Model_Membership $this->_personID = $_personID; return $this; } - /** - * Returns current data as associative array using ReflectionClass - * - * @return array Returns associative array containing model data + public function getSuspended() + { + return $this->_suspended; + } + public function setSuspended($_suspended) + { + $this->_suspended = $_suspended; + return $this; + } + /** + * Returns current data as associative array using ReflectionClass + * + * @return array Returns associative array containing model data * If "get"-method not available (our primary keys) the function getID() is called - */ - public function toArray() - { - $reflectionClass = new ReflectionClass($this); - $properties = $reflectionClass->getProperties(); - $result = array(); - foreach ($properties as $property) { - $key = $property->name; - if (substr($key, 0, 1) != '_' && $this->$key !== null) { - $method = 'get' . ucfirst($key); - if ($reflectionClass->hasMethod($method)) { - $result[$key] = $this->$method(); - } else { - $result[$key] = $this->$key; - } - } + */ + public function toArray() + { + $reflectionClass = new ReflectionClass($this); + $properties = $reflectionClass->getProperties(); + $result = array(); + foreach ($properties as $property) { + $key = $property->name; + if (substr($key, 0, 1) != '_' && $this->$key !== null) { + $method = 'get' . ucfirst($key); + if ($reflectionClass->hasMethod($method)) { + $result[$key] = $this->$method(); + } else { + $result[$key] = $this->$key; + } + } elseif(substr($key, 0, 1) == '_' && $this->$key !== null) { $key = substr($key, 1); - $method = 'get' . ucfirst($key); + $method = 'get' . ucfirst($key); if ($reflectionClass->hasMethod($method)) { $result[$key] = $this->$method(); }else{ $result[$key] = $this->getID(); } - + } - } - return $result; - } + } + return $result; + } } diff --git a/application/models/MembershipMapper.php b/application/models/MembershipMapper.php index 94f5236..68d6db8 100644 --- a/application/models/MembershipMapper.php +++ b/application/models/MembershipMapper.php @@ -2,34 +2,34 @@ class Application_Model_MembershipMapper { - + protected $_dbTable; - - public function findBy($where, $array=false, $order=false) - { + + public function findBy($where, $array=false, $order=false) + { foreach($where as $k => $v){ if($v != null) - $where2[] = "$k = '$v'"; - else - $where2[] = "$k IS NULL"; + $where2[] = "$k = '$v'"; + else + $where2[] = "$k IS NULL"; } $where = implode(" AND " ,$where2); - - try{ + + try{ $db = Zend_Db_Table::getDefaultAdapter(); - $select = $this->getDbTable()->select() - ->from($this->_dbTable) - ->where($where); - + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($where); + if(is_array($order)){ foreach ($order as $k => $v) - $a[] = "$k $v"; + $a[] = "$k $v"; $select->order($a); } - + $stmt = $select->query(); $result = $stmt->fetchAll(); - + if(!$array){ $entries = array(); foreach ($result as $row) { @@ -41,11 +41,11 @@ class Application_Model_MembershipMapper }else{ return $result; } - - }catch (Zend_Exception $e) { - echo "Error message 2: " . $e->getMessage() . "\n"; + + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; } - } + } public function setDbTable($dbTable) { @@ -58,7 +58,7 @@ class Application_Model_MembershipMapper } $this->_dbTable = $dbTable; - + return $this; } @@ -67,14 +67,14 @@ class Application_Model_MembershipMapper if (null === $this->_dbTable) { $this->setDbTable('Application_Model_DbTable_Membership'); } - + return $this->_dbTable; } public function save(Application_Model_Membership $membership) { - - $data = array('membershipID'=> $membership->getID() ,'groupID'=> $membership->getGroupID() ,'roleID'=> $membership->getRoleID() ,'personID'=> $membership->getPersonID() ); + + $data = array('membershipID'=> $membership->getID() ,'groupID'=> $membership->getGroupID() ,'roleID'=> $membership->getRoleID() ,'personID'=> $membership->getPersonID() ,'suspended'=> $membership->getSuspended() ); if (null === ($id = $membership->getID()) ) { unset($data['membershipID']); @@ -83,7 +83,7 @@ class Application_Model_MembershipMapper $this->getDbTable()->update($data, array('membershipID = ?' => $id)); } } - + public function delete(Application_Model_Membership $membership) { if (null === ($id = $membership->getID()) ) { @@ -108,8 +108,8 @@ class Application_Model_MembershipMapper } $row = $result->current(); - - $membership->setID($row->membershipID)->setGroupID($row->groupID)->setRoleID($row->roleID)->setPersonID($row->personID); + + $membership->setID($row->membershipID)->setGroupID($row->groupID)->setRoleID($row->roleID)->setPersonID($row->personID)->setSuspended($row->suspended); if($return){ return $membership; } @@ -121,14 +121,14 @@ class Application_Model_MembershipMapper $entries = array(); foreach ($resultSet as $row) { $entry = new Application_Model_Membership(); - - $entry->setID($row->membershipID)->setGroupID($row->groupID)->setRoleID($row->roleID)->setPersonID($row->personID); + + $entry->setID($row->membershipID)->setGroupID($row->groupID)->setRoleID($row->roleID)->setPersonID($row->personID)->setSuspended($row->suspended); $entries[] = $entry; } return $entries; } - + public function compare(Application_Model_Membership $v1,Application_Model_Membership $v2){ $vv1 = $v1->toArray(); $vv2 = $v2->toArray(); @@ -136,6 +136,6 @@ class Application_Model_MembershipMapper } - + } |