public function scanCodeLoginAction() { $form = new Form(['scanCode' => null]); if ($form->wasSent()) { $form->scanCode->hasValue('Bitte scannen Sie einen validen Code ein')->validate($this->db->hasUserByScanCode($form->scanCode->getString()), 'Der übergebene Scan Code ist keinem Benutzer zugeordnet'); if (!$form->hasErrors()) { $user = $this->db->getUserByScanCode($form->scanCode->getString()); $_SESSION['userId'] = intval($user->id); return ['success' => true, 'user' => ['name' => $user->name, 'scanCode' => $user->scan_code], 'errors' => []]; } } return ['success' => false, 'errors' => $form->getErrors(true)]; }