summaryrefslogtreecommitdiffstats
path: root/application/models
diff options
context:
space:
mode:
authorBjörn Geiger2011-04-13 15:43:34 +0200
committerBjörn Geiger2011-04-13 15:43:34 +0200
commit89376dc8bef5548fff83c78034471614f24fcb9b (patch)
treed580b52cb258e5180d164d9f108c4f9ff1b820c1 /application/models
parentminor (diff)
downloadpbs2-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.php60
-rw-r--r--application/models/MembershipMapper.php62
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
}
-
+
}