public function deleterecursiveAction() { //delete ce //delete imageset attributes -> DB on delete cascade //delete ce has image -> DB on delete cascade //delete ce has attribute desc. -> DB on delete cascade //delete participants -> DB on delete cascade //delete annotations -> DB on delete cascade //delete dots -> DB on delete cascade //auskommentiert am 14.10.2009 weil RAW DELETE in der Calibration exercise list //nicht immer funktionierte (wenn WS name = training exercise war) //stattdessen soll die cdId aus dem Request geholt werden //$ceId = $this->callingCeId; $ceId = $this->getRequest()->getParam(CalibrationExercise::COL_ID); $ce = new CalibrationExercise(); if ($this->userRole == 'admin' || AuthQuery::getUserId() == Default_SimpleQuery::getWsManagerUserId(Default_SimpleQuery::getWorkshopId($ceId))) { $rowset = $ce->find($ceId); if (count($rowset) == 1) { $ce->delete($ce->getAdapter()->quoteInto(CalibrationExercise::COL_ID . ' = ?', $ceId)); } } $Redirect = new Zend_Controller_Action_Helper_Redirector(); if ($this->defaultNamespace->callingAction == 'ce/search/myce') { $Redirect->setGotoSimple('myce', 'search', 'ce'); } elseif ($this->defaultNamespace->callingAction == 'ce/search/list') { $Redirect->setGotoSimple('list', 'search', 'ce'); } }