public static function doAction($action, &$view, $id) { switch ($action) { case 'showList': $out = Projekt::getAll(); $out = self::transform($out); break; case 'showUpdate': $out = Projekt::getById($id); $out = self::transformUpdate($out); break; case 'showInsert': $out = self::transformUpdate(); break; case 'update': $daten = $_POST['daten']; $daten = json_decode($daten, FALSE); $out = new Projekt($daten->projekt, $daten->uprid); $out = Projekt::update($out); $out = Projekt::getAll(); $out = self::transform($out); break; case 'insert': $daten = $_POST['daten']; $daten = json_decode($daten, FALSE); $out = new Projekt($daten->projekt, NULL); $out = Projekt::insert($out); $out = Projekt::getAll(); $out = self::transform($out); break; case 'delete': $out = $_POST['lprid']; $out = Projekt::delete($out); $out = Projekt::getAll(); $out = self::transform($out); break; default: break; } return $out; }
public static function doAction($action, $id) { switch ($action) { case 'showList': $out = Projekt::getAll(); $out = self::transform($out); break; case 'showUpdate': $out = Projekt::getById($id); $out = self::transformUpdate($out); break; case 'showInsert': $out = self::transformUpdate(); break; case 'update': $ProjektFiltered = filter_input(INPUT_POST, 'Projekt', FILTER_SANITIZE_MAGIC_QUOTES & FILTER_SANITIZE_SPECIAL_CHARS); $updateprojektidFiltered = filter_input(INPUT_POST, 'id', FILTER_SANITIZE_NUMBER_INT & FILTER_SANITIZE_SPECIAL_CHARS); $out = new Projekt($ProjektFiltered, $updateprojektidFiltered); $out = Projekt::update($out); $out = Projekt::getAll(); $out = self::transform($out); break; case 'insert': $projektFiltered = filter_input(INPUT_POST, 'projekt', FILTER_SANITIZE_MAGIC_QUOTES & FILTER_SANITIZE_SPECIAL_CHARS); $out = new Projekt($projektFiltered, NULL); $out = Projekt::insert($out); $out = Projekt::getAll(); $out = self::transform($out); break; case 'delete': $deleteprojektidFiltered = filter_input(INPUT_POST, 'id', FILTER_SANITIZE_NUMBER_INT & FILTER_SANITIZE_SPECIAL_CHARS); $out = $deleteprojektidFiltered; $out = Projekt::delete($out); $out = Projekt::getAll(); $out = self::transform($out); break; default: break; } return $out; }
private static function transformUpdate($out = NULL) { $returnOut = []; $linkeSpalte = []; $rechteSpalte = []; for ($i = 0; $i < count(ProjektMitarbeiter::getNames()); $i++) { array_push($linkeSpalte, ProjektMitarbeiter::getNames()[$i]); } if ($out !== NULL) { array_push($linkeSpalte, HTML::buildInput('hidden', 'id', $out->getId())); } else { array_push($linkeSpalte, ''); } if ($out !== NULL) { $dbWerte = json_decode(json_encode($out), true); } // überführe $dbWerte in rechte Spalte // options für die vorgesetzten $projekte = Projekt::getAll(); $options = []; // zum abwählen $options[0] = ['value' => 0, 'label' => '']; $hatProjekt = FALSE; foreach ($projekte as $o) { $options[$o->getId()] = ['value' => $o->getId(), 'label' => $o->getName()]; if ($out !== NULL) { if ($o->getId() === $out->getProjekt()->getId()) { $options[$o->getId()]['selected'] = TRUE; $hatProjekt = TRUE; } } } if ($hatProjekt == FALSE) { $options[0]['selected'] = TRUE; } $mitarbeiter = Mitarbeiter::getAll(); $options2 = []; // zum abwählen $options2[0] = ['value' => 0, 'label' => '']; $hatMitarbeiter = FALSE; foreach ($mitarbeiter as $o) { $options2[$o->getId()] = ['value' => $o->getId(), 'label' => $o->getVorname() . ' ' . $o->getNachname()]; if ($out !== NULL) { if ($o->getId() === $out->getMitarbeiter()->getId()) { $options2[$o->getId()]['selected'] = TRUE; $hatMitarbeiter = TRUE; } } } if ($hatMitarbeiter == FALSE) { $options2[0]['selected'] = TRUE; } if ($out !== NULL) { array_push($rechteSpalte, HTML::buildDropDown('projekt', '1', $options, NULL, 'projekt')); array_push($rechteSpalte, HTML::buildDropDown('mitarbeiter', '1', $options2, NULL, 'mitarbeiter')); array_push($rechteSpalte, HTML::buildInput('text', 'vonTag', HTML::extractDateFromDateTime($dbWerte['von']))); array_push($rechteSpalte, HTML::buildInput('text', 'vonZeit', HTML::extractTimeFromDateTime($dbWerte['von']))); array_push($rechteSpalte, HTML::buildInput('text', 'bisTag', HTML::extractDateFromDateTime($dbWerte['bis']))); array_push($rechteSpalte, HTML::buildInput('text', 'bisZeit', HTML::extractTimeFromDateTime($dbWerte['bis']))); array_push($rechteSpalte, HTML::buildButton('OK', 'ok', 'updateProjektMitarbeiter', 'OK')); } else { array_push($rechteSpalte, HTML::buildDropDown('projekt', '1', $options, NULL, 'projekt')); array_push($rechteSpalte, HTML::buildDropDown('mitarbeiter', '1', $options2, NULL, 'mitarbeiter')); array_push($rechteSpalte, HTML::buildInput('text', 'vonTag', '', NULL, 'vonTag')); array_push($rechteSpalte, HTML::buildInput('text', 'vonZeit', '', NULL, 'vonZeit')); array_push($rechteSpalte, HTML::buildInput('text', 'bisTag', '', NULL, 'bisTag')); array_push($rechteSpalte, HTML::buildInput('text', 'bisZeit', '', NULL, 'bisZeit')); array_push($rechteSpalte, HTML::buildButton('OK', 'ok', 'insertProjektMitarbeiter', 'OK')); } $returnOut = HTML::buildFormularTable($linkeSpalte, $rechteSpalte); return $returnOut; }