summaryrefslogtreecommitdiffstats
path: root/application
diff options
context:
space:
mode:
authorBjörn Geiger2011-08-22 13:19:46 +0200
committerBjörn Geiger2011-08-22 13:19:46 +0200
commitc770772284a0dac429953e6f24dc9daf8daf0ce6 (patch)
tree51348845773dc36b9810da372a3f574da6889c89 /application
parentweitere Korrektur (diff)
downloadpoolctrl-c770772284a0dac429953e6f24dc9daf8daf0ce6.tar.gz
poolctrl-c770772284a0dac429953e6f24dc9daf8daf0ce6.tar.xz
poolctrl-c770772284a0dac429953e6f24dc9daf8daf0ce6.zip
EventReport
Diffstat (limited to 'application')
-rw-r--r--application/controllers/EventController.php90
1 files changed, 81 insertions, 9 deletions
diff --git a/application/controllers/EventController.php b/application/controllers/EventController.php
index 46529b8..fcd1406 100644
--- a/application/controllers/EventController.php
+++ b/application/controllers/EventController.php
@@ -496,13 +496,13 @@ class EventController extends Zend_Controller_Action
}
public function listAction(){
-
+
$this->_helper->layout->disableLayout();
$this->_helper->viewRenderer->setNoRender();
$eventList = $this->eventMapper->fetchAll();
-
+
foreach ($eventList as $event){
- $events[] = array(
+ $events[] = array(
'id' => $event->getID(),
'title' => $event->getTitle(),
'start' => $event->getStart(),
@@ -513,7 +513,7 @@ class EventController extends Zend_Controller_Action
'poolID' => $event->getPbs_poolID(),
'bootosID' => $event->getPbs_bootosID(),
'allDay' => false,
- );
+ );
}
echo json_encode($events);
}
@@ -530,20 +530,24 @@ class EventController extends Zend_Controller_Action
$this->_helper->viewRenderer->setNoRender();
$events = $this->eventMapper->findBy(array('running' => 1));
- $runningtypeMapper = new Application_Model_RunningtypeMapper();
- $runningtypeBoot = $runningtypeMapper->findBy(array("title" => "boot"));
- $runningtypeShutdown = $runningtypeMapper->findBy(array("title" => "shutdown"));
+ $eventtypeMapper = new Application_Model_EventtypeMapper();
+ $result = $eventtypeMapper->findBy(array("title" => "boot"));
+ $eventtypeBoot = $result[0];
+ $result = $eventtypeMapper->findBy(array("title" => "shutdown"));
+ $eventtypeShutdown = $result[0];
$eventBootNames = array();
$eventShutdownNames = array();
foreach($events as $event) {
- if($event->getRunningtype() == $runningtypeBoot[0]->getID()) {
+ if($event->getRunningtype() == $eventtypeBoot->getID()) {
$eventBootNames[] = $event->getTitle();
- } else if($event->getRunningtype() == $runningtypeShutdown[0]->getID()) {
+ } else if($event->getRunningtype() == $eventtypeShutdown->getID()) {
$eventShutdownNames[] = $event->getTitle();
}
}
+ $eventreportMapper = new Application_Model_EventreportMapper();
+
if(count($eventBootNames) > 0) {
$data = array(
'type' => 'boot',
@@ -557,6 +561,40 @@ class EventController extends Zend_Controller_Action
echo "ERROR " . $gmc->error() . "\n";
exit;
}
+ $bootResultDecode = json_decode($bootResult);
+ foreach($bootResultDecode as $k => $eventResult) {
+ $eventResult->result = sprintf('%s', $eventResult->result);
+ if($eventResult->result == "not finished" || $eventResult->result = 'not founded') {
+ continue;
+ }
+ $result = $this->eventMapper->findBy(array("title" => $k));
+ $event = $result[0];
+ $eventreport = new Application_Model_Eventreport();
+ $eventreport->setEventID($event->getID());
+ $eventreport->setResult($eventResult->result);
+ if($eventResult->result == "failed") {
+ $eventreport->setErrors(json_encode($eventResult->errors));
+ }
+ $eventreport->setType($eventtypeBoot->getID());
+ try {
+ $eventreportMapper->save($eventreport);
+ } catch(Zend_Exception $e)
+ {
+ echo "Caught exception: " . get_class($e) . "<br/>";
+ echo "Message: " . $e->getMessage() . "<br/>";
+ return;
+ }
+ $event->setRunning(false);
+ $event->setRunningtype(null);
+ try {
+ $this->eventMapper->save($event);
+ } catch(Zend_Exception $e)
+ {
+ echo "Caught exception: " . get_class($e) . "<br/>";
+ echo "Message: " . $e->getMessage() . "<br/>";
+ return;
+ }
+ }
}
if(count($eventShutdownNames) > 0) {
@@ -572,6 +610,40 @@ class EventController extends Zend_Controller_Action
echo "ERROR " . $gmc->error() . "\n";
exit;
}
+ $shutdownResultDecode = json_decode($shutdownResult);
+ foreach($shutdownResultDecode as $k => $eventResult) {
+ $eventResult->result = sprintf('%s', $eventResult->result);
+ if($eventResult->result == "not finished" || $eventResult->result = 'not founded') {
+ continue;
+ }
+ $result = $this->eventMapper->findBy(array("title" => $k));
+ $event = $result[0];
+ $eventreport = new Application_Model_Eventreport();
+ $eventreport->setEventID($event->getID());
+ $eventreport->setResult($eventResult->result);
+ if($eventResult->result == 'failed') {
+ $eventreport->setErrors(json_encode($eventResult->errors));
+ }
+ $eventreport->setType($eventtypeShutdown->getID());
+ try {
+ $eventreportMapper->save($eventreport);
+ } catch(Zend_Exception $e)
+ {
+ echo "Caught exception: " . get_class($e) . "<br/>";
+ echo "Message: " . $e->getMessage() . "<br/>";
+ return;
+ }
+ $event->setRunning(false);
+ $event->setRunningtype(null);
+ try {
+ $this->eventMapper->save($event);
+ } catch(Zend_Exception $e)
+ {
+ echo "Caught exception: " . get_class($e) . "<br/>";
+ echo "Message: " . $e->getMessage() . "<br/>";
+ return;
+ }
+ }
}
}
} \ No newline at end of file