hasIdentity()) { $this->personmapper = new Application_Model_PersonMapper(); $result = $this->personmapper->findBy('email', Zend_Auth::getInstance()->getIdentity()); $this->person = new Application_Model_Person($result[0]); $this->person->setID($result[0]['personID']); $this->groupMapper = new Application_Model_GroupMapper(); $this->groupRequestMapper = new Application_Model_GroupRequestMapper(); $this->membershipMapper = new Application_Model_MembershipMapper(); $this->memberships = $this->membershipMapper->findBy("personID",$this->person->getID()); if(isset($this->memberships)) { foreach($this->memberships as $membership) { $group = $this->groupMapper->find($membership['groupID']); $this->groups[] = array ( 'groupID' => $group->getID(), 'title' => $group->getTitle(), 'description' => $group->getDescription(), 'membershipID' => $membership['membershipID'] ); } } } else { $this->_helper->redirector('login', 'auth'); return; } } public function indexAction() { $this->_helper-> viewRenderer-> setNoRender(); $this->_helper->redirector('show', 'person'); return; } public function showAction() { $this->view->person = $this->person; $this->view->groups = $this->groups; } public function editAction() { $this->view->person = $this->person; if (!isset($_POST["save"])){ $editForm = new dev_Form_PersonEdit(); } else { $editForm = new dev_Form_PersonEdit($_POST); if ($editForm->isValid($_POST)) { if(isset($_POST['newpassword'])) { $date = new DateTime(); $this->person->setPassword($_POST['newpassword']); $this->person->setPasswordSalt(MD5($date->getTimestamp())); $this->person->setPassword(MD5($this->person->getPassword() . $this->person->getPasswordSalt())); } $this->person->setOptions($_POST); try { $this->personmapper->save($this->person); } catch(Zend_Exception $e) { echo "Caught exception: " . get_class($e) . "
"; echo "Message: " . $e->getMessage() . "
"; echo "Email Address already existing."; return; } $this->_helper->redirector('show', 'person'); return; } } $this->view->editForm = $editForm; } public function requestAction() { $this->view->person = $this->person; $allgroups = $this->groupMapper->fetchAll(); $groupRequests = $this->groupRequestMapper->findBy('personID', $this->person->getID()); $count = 0; foreach($allgroups as $group) { foreach($groupRequests as $groupRequest) { if($groupRequest['groupID'] == $group->getID()) { unset($allgroups[$count]); } } $count++; } if (!isset($_POST["request"])){ if(count($allgroups) <= 0) { echo "No Groups to choose."; } $requestForm = new dev_Form_GroupRequest(array('grouplist' => $allgroups)); } else { $requestForm = new dev_Form_GroupRequest(array('grouplist' => $allgroups), $_POST); if ($requestForm->isValid($_POST)) { $groupRequestMapper = new Application_Model_GroupRequestMapper(); $groupRequest = new Application_Model_GroupRequest(); $groupRequest->setGroupID($_POST['groupID']); $date = new DateTime(); $groupRequest->setTime($date->getTimestamp()); $groupRequest->setPersonID($this->person->getID()); try { $groupRequestMapper->save($groupRequest); } catch(Zend_Exception $e) { echo "Caught exception: " . get_class($e) . "
"; echo "Message: " . $e->getMessage() . "
"; return; } $this->_helper->redirector('show', 'person'); return; } } $this->view->requestForm = $requestForm; } public function leaveAction() { $this->_helper-> viewRenderer-> setNoRender(); $this->view->person = $this->person; $membershipID = $this->_request->getParam('membershipID'); if(isset($membershipID)) { $membership = $this->membershipMapper->find($membershipID); try { $this->membershipMapper->delete($membership); } catch(Zend_Exception $e) { echo "Caught exception: " . get_class($e) . "
"; echo "Message: " . $e->getMessage() . "
"; return; } $this->_helper->redirector('show', 'person'); return; } } }