private static function transformUpdate($out = NULL)
 {
     $returnOut = [];
     $linkeSpalte = [];
     $rechteSpalte = [];
     for ($i = 0; $i < count(Abteilung::getNames()); $i++) {
         array_push($linkeSpalte, Abteilung::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
     if ($out !== NULL) {
         array_push($rechteSpalte, HTML::buildInput('text', 'name', $dbWerte['name'], NULL, 'abteilung'));
         array_push($rechteSpalte, HTML::buildButton('OK', 'ok', 'updateAbteilung', 'OK'));
     } else {
         array_push($rechteSpalte, HTML::buildInput('text', 'name', '', NULL, 'abteilung'));
         array_push($rechteSpalte, HTML::buildButton('OK', 'ok', 'insertAbteilung', 'OK'));
     }
     $returnOut = HTML::buildFormularTable($linkeSpalte, $rechteSpalte);
     return $returnOut;
 }
 public static function doAction($action, $id)
 {
     switch ($action) {
         case 'showList':
             $out = Mitarbeiter::getAll();
             $out = self::transform($out);
             break;
         case 'showUpdate':
             $out = Mitarbeiter::getById($id);
             $out = self::transformUpdate($out);
             break;
         case 'showInsert':
             $out = self::transformUpdate();
             break;
         case 'update':
             $vorgesetzter_idFiltered = filter_input(INPUT_POST, 'vorgesetzter_id', FILTER_SANITIZE_MAGIC_QUOTES & FILTER_SANITIZE_SPECIAL_CHARS);
             $vornameFiltered = filter_input(INPUT_POST, 'vorname', FILTER_SANITIZE_MAGIC_QUOTES & FILTER_SANITIZE_SPECIAL_CHARS);
             $nachnameFiltered = filter_input(INPUT_POST, 'nachname', FILTER_SANITIZE_MAGIC_QUOTES & FILTER_SANITIZE_SPECIAL_CHARS);
             $geschlechtFiltered = filter_input(INPUT_POST, 'geschlecht', FILTER_SANITIZE_MAGIC_QUOTES & FILTER_SANITIZE_SPECIAL_CHARS);
             $geburtsdatumFiltered = filter_input(INPUT_POST, 'geburtsdatum', FILTER_SANITIZE_MAGIC_QUOTES & FILTER_SANITIZE_SPECIAL_CHARS);
             $abteilung_idFiltered = filter_input(INPUT_POST, 'abteilung_id', FILTER_SANITIZE_MAGIC_QUOTES & FILTER_SANITIZE_SPECIAL_CHARS);
             $stundenlohnFiltered = filter_input(INPUT_POST, 'stundenlohn', FILTER_SANITIZE_MAGIC_QUOTES & FILTER_SANITIZE_SPECIAL_CHARS);
             $updatemitarbeiterherstellerFiltered = filter_input(INPUT_POST, 'id', FILTER_SANITIZE_NUMBER_INT & FILTER_SANITIZE_SPECIAL_CHARS);
             $vorgesetzter = $vorgesetzter_idFiltered ? Mitarbeiter::getById($vorgesetzter_idFiltered) : NULL;
             $out = new Mitarbeiter($vornameFiltered, $nachnameFiltered, $geschlechtFiltered, HTML::germanToMysql($geburtsdatumFiltered), Abteilung::getById($abteilung_idFiltered), $stundenlohnFiltered, $vorgesetzter, $updatemitarbeiterherstellerFiltered);
             $out = Mitarbeiter::update($out);
             $out = Mitarbeiter::getAll();
             $out = self::transform($out);
             break;
         case 'insert':
             $vorgesetzter_idFiltered = filter_input(INPUT_POST, 'vorgesetzter_id', FILTER_SANITIZE_MAGIC_QUOTES & FILTER_SANITIZE_SPECIAL_CHARS);
             $vornameFiltered = filter_input(INPUT_POST, 'vorname', FILTER_SANITIZE_MAGIC_QUOTES & FILTER_SANITIZE_SPECIAL_CHARS);
             $nachnameFiltered = filter_input(INPUT_POST, 'nachname', FILTER_SANITIZE_MAGIC_QUOTES);
             $geschlechtFiltered = filter_input(INPUT_POST, 'geschlecht', FILTER_SANITIZE_MAGIC_QUOTES & FILTER_SANITIZE_SPECIAL_CHARS);
             $geburtsdatumFiltered = filter_input(INPUT_POST, 'geburtsdatum', FILTER_SANITIZE_MAGIC_QUOTES & FILTER_SANITIZE_SPECIAL_CHARS);
             $abteilung_idFiltered = filter_input(INPUT_POST, 'abteilung_id', FILTER_SANITIZE_MAGIC_QUOTES & FILTER_SANITIZE_SPECIAL_CHARS);
             $stundenlohnFiltered = filter_input(INPUT_POST, 'stundenlohn', FILTER_SANITIZE_MAGIC_QUOTES & FILTER_SANITIZE_SPECIAL_CHARS);
             $vorgesetzter = $vorgesetzter_idFiltered ? Mitarbeiter::getById($vorgesetzter_idFiltered) : NULL;
             $out = new Mitarbeiter($vornameFiltered, $nachnameFiltered, $geschlechtFiltered, HTML::germanToMysql($geburtsdatumFiltered), Abteilung::getById($abteilung_idFiltered), $stundenlohnFiltered, $vorgesetzter, NULL);
             $out = Mitarbeiter::insert($out);
             $out = Mitarbeiter::getAll();
             $out = self::transform($out);
             break;
         case 'delete':
             $deletemitarbeiteridFiltered = filter_input(INPUT_POST, 'id', FILTER_SANITIZE_NUMBER_INT & FILTER_SANITIZE_SPECIAL_CHARS);
             $out = $deletemitarbeiteridFiltered;
             $out = Mitarbeiter::delete($out);
             $out = Mitarbeiter::getAll();
             $out = self::transform($out);
             break;
         default:
             break;
     }
     return $out;
 }
 public static function doAction($action, &$view, $id)
 {
     switch ($action) {
         case 'showList':
             $out = Mitarbeiter::getAll();
             $out = self::transform($out);
             break;
         case 'showUpdate':
             $out = Mitarbeiter::getById($id);
             $out = self::transformUpdate($out);
             break;
         case 'showInsert':
             $out = self::transformUpdate();
             break;
         case 'update':
             $daten = $_POST['daten'];
             $daten = json_decode($daten, FALSE);
             $vorgesetzter = "";
             if (!$daten->vorgesetzter_id) {
                 $vorgesetzter = NULL;
             } else {
                 $vorgesetzter = $daten->vorgesetzter_id;
             }
             echo $vorgesetzter;
             Mitarbeiter::update(new Mitarbeiter($daten->vorname, $daten->nachname, $daten->geschlecht, $daten->geburtsdatum, Abteilung::getById($daten->abteilung_id), $daten->stundenlohn, Mitarbeiter::getVorgesetzterById($vorgesetzter), $daten->umaid));
             $out = Mitarbeiter::getAll();
             $out = self::transform($out);
             break;
         case 'insert':
             $daten = $_POST['daten'];
             $daten = json_decode($daten, FALSE);
             $vorgesetzter = "";
             if (!$daten->vorgesetzter_id) {
                 $vorgesetzter = NULL;
             } else {
                 $vorgesetzter = $daten->vorgesetzter_id;
             }
             Mitarbeiter::insert(new Mitarbeiter($daten->vorname, $daten->nachname, $daten->geschlecht, $daten->geburtsdatum, Abteilung::getById($daten->abteilung_id), $daten->stundenlohn, Mitarbeiter::getVorgesetzterById($vorgesetzter), ''));
             $out = Mitarbeiter::getAll();
             $out = self::transform($out);
             break;
         case 'delete':
             $out = $_POST['lmaid'];
             $out = Mitarbeiter::delete($out);
             $out = Mitarbeiter::getAll();
             $out = self::transform($out);
             break;
         default:
             break;
     }
     return $out;
 }
Example #4
0
<?php

/* 
 * für die options für die dropdown menüs
 * hier einige vorlagen später auch noch in die HTML umzusetzen
 */
//options für die abteilungen
$abteilung = $out;
$abt = Abteilung::getAll();
$options = [];
// zum abwählen
$options[0] = ['value' => 0, 'label' => ''];
foreach ($abt as $o) {
    $options[$o->getId()] = ['value' => $o->getId(), 'label' => $o->getName()];
    if ($o->getId() === $abteilung->getAbteilung()->getId()) {
        $options[$o->getId()]['selected'] = TRUE;
    }
}
// options für die vorgesetzten
$vorgesetzte = Mitarbeiter::getAll();
$options2 = [];
// zum abwählen
$options2[0] = ['value' => 0, 'label' => ''];
$hatVorgesetzte = FALSE;
foreach ($vorgesetzte as $o) {
    $options2[$o->getId()] = ['value' => $o->getId(), 'label' => $o->getVorname() . ' ' . $o->getNachname()];
    if ($o->getVorgesetzter() !== NULL) {
        if ($o->getId() === $out->getId()) {
            $options2[$o->getVorgesetzter()->getId()]['selected'] = TRUE;
            $hatVorgesetzte = TRUE;
        }
Example #5
0
 public static function getVorgesetzterById($id)
 {
     if ($id !== NULL) {
         $pdo = DbConnect::connect();
         $sql = "SELECT * from mitarbeiter WHERE id=:id";
         $stmt = $pdo->prepare($sql);
         $stmt->execute([':id' => $id]);
         $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
         return new Mitarbeiter($rows[0]['vorname'], $rows[0]['nachname'], $rows[0]['geschlecht'], $rows[0]['geburtsdatum'], Abteilung::getById($rows[0]['abteilung_id']), $rows[0]['stundenlohn'], NULL, $rows[0]['id']);
     } else {
         return NULL;
     }
 }