summaryrefslogtreecommitdiffstats
path: root/application
diff options
context:
space:
mode:
Diffstat (limited to 'application')
-rwxr-xr-xapplication/controllers/EventController.php57
-rwxr-xr-xapplication/models/Event.php12
-rwxr-xr-xapplication/models/EventMapper.php4
-rwxr-xr-xapplication/models/Eventreport.php14
-rwxr-xr-xapplication/models/EventreportMapper.php6
-rwxr-xr-xapplication/views/scripts/event/index.phtml6
6 files changed, 90 insertions, 9 deletions
diff --git a/application/controllers/EventController.php b/application/controllers/EventController.php
index 7256335..b856d94 100755
--- a/application/controllers/EventController.php
+++ b/application/controllers/EventController.php
@@ -944,6 +944,63 @@ class EventController extends Zend_Controller_Action
echo $resultString;
}
+ public function showreportsAction() {
+ if(!$this->acl->checkRight('er')) {
+ header('HTTP/1.0 403 No Right to run events');
+ die();
+ }
+ $eventID = $this->_request->getParam("eventID");
+ if($eventID) {
+ $event = new Application_Model_Event();
+ $this->eventMapper->find($eventID, $event);
+ $eventreportMapper = new Application_Model_EventreportMapper();
+ $reportlist = $eventreportMapper->findBy(array("eventID" => $eventID));
+ $eventtypeMapper = new Application_Model_EventtypeMapper();
+ $eventtypes = array();
+ $result = $eventtypeMapper->fetchAll();
+ if(count($result) > 0) {
+ foreach($result as $type) {
+ $eventtypes[$type->getID()] = $type->getTitle();
+ }
+ }
+ for($i = 0; $i < count($reportlist); $i++) {
+ $reportType = $eventtypes[$reportlist[$i]->getType()];
+ $reportlist[$i]->setType($reportType);
+ }
+ $this->view->eventTitle = $event->getTitle();
+ $this->view->reportlist = $reportlist;
+ } else {
+ $this->_redirect('/event/');
+ exit;
+ }
+ }
+
+ public function deletereportAction() {
+ if(!$this->acl->checkRight('er')) {
+ $this->_redirect('/');
+ }
+ $this->_helper->viewRenderer->setNoRender();
+ $reportID = $this->_request->getParam('reportID');
+ if(isset($reportID)) {
+ $eventreportMapper = new Application_Model_EventreportMapper();
+ $report = new Application_Model_Eventreport();
+ $eventreportMapper->find($reportID, $report);
+ $eventID = $report->getEventID();
+ try {
+ $eventreportMapper->delete($report);
+ } catch(Zend_Exception $e)
+ {
+ echo "Caught exception: " . get_class($e) . "<br/>";
+ echo "Message: " . $e->getMessage() . "<br/>";
+ return;
+ }
+ $this->_redirect('/event/showreports/eventID/' . $eventID);
+ } else {
+ $this->_redirect('/event/');
+ exit;
+ }
+ }
+
private function runEvent(Application_Model_Event $event, $apikey) {
$data = array(
'eventName' => $event->getTitle(),
diff --git a/application/models/Event.php b/application/models/Event.php
index 7f20d10..76bb2dc 100755
--- a/application/models/Event.php
+++ b/application/models/Event.php
@@ -30,6 +30,7 @@ class Application_Model_Event
protected $_running;
protected $_runningtype;
protected $_note;
+ protected $_created;
public function __construct(array $options = null)
{
@@ -300,5 +301,16 @@ class Application_Model_Event
$this->_runningtype = $_runningtype;
return $this;
}
+
+ public function getCreated()
+ {
+ return $this->_created;
+ }
+
+ public function setCreated($_created)
+ {
+ $this->_created = $_created;
+ return $this;
+ }
}
diff --git a/application/models/EventMapper.php b/application/models/EventMapper.php
index 921fb41..418bab8 100755
--- a/application/models/EventMapper.php
+++ b/application/models/EventMapper.php
@@ -85,7 +85,7 @@ class Application_Model_EventMapper
public function save(Application_Model_Event $event)
{
- $data = array('eventID'=> $event->getID() ,'category'=> $event->getCategory() ,'title'=> $event->getTitle(), 'pbs_membershipID'=> $event->getPbs_membershipID(),'end'=> $event->getEnd() ,'immediate'=> $event->getImmediate() ,'note'=> $event->getNote() ,'participants'=> $event->getParticipants() ,'pbs_bootosID'=> $event->getPbs_bootosID(),'pbs_poolID'=> $event->getPbs_poolID(),'repeat'=> $event->getRepeat(),'repeatEnd'=> $event->getRepeatEnd(),'start'=> $event->getStart(),'pbs_bootmenuID'=> $event->getPbs_bootmenuID(),'pbs_filterID'=> $event->getPbs_filterID(), 'running' => $event->getRunning(), 'runningtype' => $event->getRunningtype() );
+ $data = array('eventID'=> $event->getID() ,'category'=> $event->getCategory() ,'title'=> $event->getTitle(), 'pbs_membershipID'=> $event->getPbs_membershipID(),'end'=> $event->getEnd() ,'immediate'=> $event->getImmediate() ,'note'=> $event->getNote() ,'participants'=> $event->getParticipants() ,'pbs_bootosID'=> $event->getPbs_bootosID(),'pbs_poolID'=> $event->getPbs_poolID(),'repeat'=> $event->getRepeat(),'repeatEnd'=> $event->getRepeatEnd(),'start'=> $event->getStart(),'pbs_bootmenuID'=> $event->getPbs_bootmenuID(),'pbs_filterID'=> $event->getPbs_filterID(), 'running' => $event->getRunning(), 'runningtype' => $event->getRunningtype(), 'created' => $event->getCreated() );
if (null === ($id = $event->getID()) ) {
unset($data['eventID']);
return $this->getDbTable()->insert($data);
@@ -133,6 +133,7 @@ class Application_Model_EventMapper
->setRepeatEnd($row->repeatEnd)
->setStart($row->start)
->setRunning($row->running)
+ ->setCreated($row->created)
->setRunningtype($row->runningtype);
}
@@ -161,6 +162,7 @@ class Application_Model_EventMapper
->setRepeatEnd($row->repeatEnd)
->setStart($row->start)
->setRunning($row->running)
+ ->setCreated($row->created)
->setRunningtype($row->runningtype);
$entries[$row->eventID] = $entry;
diff --git a/application/models/Eventreport.php b/application/models/Eventreport.php
index ff94a09..f40b16a 100755
--- a/application/models/Eventreport.php
+++ b/application/models/Eventreport.php
@@ -16,6 +16,7 @@ class Application_Model_Eventreport
protected $_result;
protected $_errors;
protected $_type;
+ protected $_created;
protected $_eventID;
public function __construct(array $options = null)
@@ -133,7 +134,7 @@ class Application_Model_Eventreport
return $this;
}
- public function geType()
+ public function getType()
{
return $this->_type;
}
@@ -143,5 +144,16 @@ class Application_Model_Eventreport
$this->_type = $_type;
return $this;
}
+
+ public function getCreated()
+ {
+ return $this->_created;
+ }
+
+ public function setCreated($_created)
+ {
+ $this->_created = $_created;
+ return $this;
+ }
}
diff --git a/application/models/EventreportMapper.php b/application/models/EventreportMapper.php
index 00379f9..b5f405e 100755
--- a/application/models/EventreportMapper.php
+++ b/application/models/EventreportMapper.php
@@ -43,7 +43,7 @@ class Application_Model_EventreportMapper
$entries = array();
if(count($result) > 0) {
foreach ($result as $row) {
- $entry = new Application_Model_Event($row);
+ $entry = new Application_Model_Eventreport($row);
$entry->setID($row['reportID']);
$entries[] = $entry;
}
@@ -84,7 +84,7 @@ class Application_Model_EventreportMapper
public function save(Application_Model_Eventreport $eventreport)
{
- $data = array('reportID'=> $eventreport->getID() ,'eventID'=> $eventreport->getEventID() ,'result'=> $eventreport->getResult(), 'errors' => $eventreport->getErrors(), 'type' => $eventreport->geType() );
+ $data = array('reportID'=> $eventreport->getID() ,'eventID'=> $eventreport->getEventID() ,'result'=> $eventreport->getResult(), 'errors' => $eventreport->getErrors(), 'type' => $eventreport->geType(), 'created' => $eventreport->getCreated() );
if (null === ($id = $eventreport->getID()) ) {
unset($data['reportID']);
return $this->getDbTable()->insert($data);
@@ -120,6 +120,7 @@ class Application_Model_EventreportMapper
->setEventID($row->eventID)
->setResult($row->result)
->setErrors($row->errors)
+ ->setCreated($row->created)
->setType($row->type);
}
@@ -135,6 +136,7 @@ class Application_Model_EventreportMapper
->setEventID($row->eventID)
->setResult($row->result)
->setErrors($row->errors)
+ ->setCreated($row->created)
->setType($row->type);
$entries[$row->reportID] = $entry;
diff --git a/application/views/scripts/event/index.phtml b/application/views/scripts/event/index.phtml
index c0416f5..4f19efd 100755
--- a/application/views/scripts/event/index.phtml
+++ b/application/views/scripts/event/index.phtml
@@ -1,8 +1,4 @@
-<head>
-<title>Pool Control</title>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-</head>
-<h1>Pool Control</h1>
+<h1>Events</h1>
<div id='calendar'
style='margin: 3em 0; font-size: 13px'></div>