From c15e4d23ceed434769e347b481ce2fb8013df59d Mon Sep 17 00:00:00 2001 From: Björn Geiger Date: Mon, 10 Oct 2011 17:05:05 +0200 Subject: weitere Korrekturen --- application/controllers/EventController.php | 36 +++++++++++++++++++++++++---- 1 file changed, 31 insertions(+), 5 deletions(-) diff --git a/application/controllers/EventController.php b/application/controllers/EventController.php index b7e335b..1f0b2ba 100755 --- a/application/controllers/EventController.php +++ b/application/controllers/EventController.php @@ -478,8 +478,10 @@ class EventController extends Zend_Controller_Action unset($filterApiResult); } if(isset($diff['start']) || isset($diff['end']) || isset($diff['pbs_poolID'])) { - $filterApiResult = PostToHost($this->pbs2host, $this->config['pbs2']['deletefilter'] . $this->userIDsNamespace['apikey'], 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'], 'poolctrl', "filterid=" . $event->getPbs_filterID()); - unset($filterApiResult); + if(isset($params['wdh'])) { + $filterApiResult = PostToHost($this->pbs2host, $this->config['pbs2']['deletefilter'] . $this->userIDsNamespace['apikey'], 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'], 'poolctrl', "filterid=" . $event->getPbs_filterID()); + unset($filterApiResult); + } $newFilter = true; } else { $newFilter = false; @@ -507,7 +509,7 @@ class EventController extends Zend_Controller_Action $filterentriesXMLString2 = $filterentriesApiResult2['http-body']; $filterentriesXML2 = new SimpleXMLElement($filterentriesXMLString2); $filterentriesID2 = sprintf("%s", $filterentriesXML2->filterentry->id); - if(!$event->getRepeat()) { + if(!isset($params['wdh'])) { $startDate = date('d.m.Y', strtotime($event->getStart())); if($event->getEnd()) { $endDate = date('d.m.Y', strtotime($event->getEnd())); @@ -532,7 +534,7 @@ class EventController extends Zend_Controller_Action return; } } - //$this->_redirect('/event/'); + $this->_redirect('/event/'); } } else { $this->getRequest()->setParam('title', $event->getTitle()); @@ -2221,7 +2223,7 @@ class EventController extends Zend_Controller_Action private function editRepeatEvent(Application_Model_Event $oldEvent, Application_Model_Event $newEvent) { $diff = $this->eventMapper->compare($newEvent, $oldEvent); - if(isset($diff['start']) || isset($diff['end']) || isset($diff['pbs_filterID'])) { + if(isset($diff['start']) || isset($diff['end'])) { if(isset($diff['start'])) { $diffStart = intval(strtotime($newEvent->getStart())) - intval(strtotime($oldEvent->getStart())); unset($diff['start']); @@ -2250,7 +2252,11 @@ class EventController extends Zend_Controller_Action $newStart = date('Y-m-d H:i:s', strtotime($event->getStart()) + $diffStart); } } + $oldStartDate = date('Y-m-d', strtotime($event->getStart())); + $oldStartTime = date('H:i', strtotime($event->getStart())); $event->setStart($newStart); + $newStartDate = date('Y-m-d', strotime($event->getStart())); + $newStartTime = date('H:i', strtotime($event->getStart())); } if(isset($diffEnd)) { $summertimeEnd = intval(date('I', strtotime($event->getEnd()))); @@ -2268,7 +2274,27 @@ class EventController extends Zend_Controller_Action $newEnd = date('Y-m-d H:i:s', strtotime($event->getEnd()) + $diffEnd); } } + $oldEndDate = date('Y-m-d', strtotime($event->getEnd())); + $oldEndTime = date('H:i', strtotime($event->getEnd())); $event->setEnd($newEnd); + $newEndDate = date('Y-m-d', strotime($event->getEnd())); + $newEndTime = date('H:i', strtotime($event->getEnd())); + } + $repeattypeMapper = new Application_Model_RepeattypeMapper(); + $repeattype = new Application_Model_Repeattype(); + $repeattypeMapper->find($event->getRepeattype(), $repeattype); + if($repeattype == "Once a week") { + $filterentriesquery1 = "filterID=" . $event->getPbs_filterID() . "&filtertypeID=7&filtervalue=" . $newStartTime . "&filtervalue2=" . $newEndTime; + $filterentriesApiResult1 = PostToHost($this->pbs2host, $this->config['pbs2']['addfilterentry'] . $this->userIDsNamespace['apikey'], 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'], 'poolctrl', $filterentriesquery1); + $filterentriesquery2 = "filterID=" . $event->getPbs_filterID() . "&filtertypeID=11&filtervalue=" . $newStartDate . "&filtervalue2=" . $newEndDate; + $filterentriesApiResult2 = PostToHost($this->pbs2host, $this->config['pbs2']['addfilterentry'] . $this->userIDsNamespace['apikey'], 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'], 'poolctrl', $filterentriesquery1); + } else { + $filterentriesQuerie = "filterid=" . $event->getPbs_filterID() . "&oldvalue1=" . $oldStartDate . "&oldvalue2=" . $oldEndDate . "&value1=" . $newStartDate . "&value2=" . $newEndDate; + $filterApiResult = PostToHost($this->pbs2host, $this->config['pbs2']['changefilterentry'] . $this->userIDsNamespace['apikey'], 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'], 'poolctrl', $filterentriesQuerie); + unset($filterApiResult); + $filterentriesQuerie = "filterid=" . $event->getPbs_filterID() . "&oldvalue1=" . $oldStartTime . "&oldvalue2=" . $oldEndTime . "&value1=" . $newStartTime . "&value2=" . $newEndTime; + $filterApiResult = PostToHost($this->pbs2host, $this->config['pbs2']['changefilterentry'] . $this->userIDsNamespace['apikey'], 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'], 'poolctrl', $filterentriesQuerie); + unset($filterApiResult); } $this->eventMapper->save($event); } -- cgit v1.2.3-55-g7522