} } if (strlen($_POST['rol_end_time']) > 0) { $validToTime = DateTime::createFromFormat('Y-m-d ' . $gPreferences['system_time'], DATE_NOW . ' ' . $_POST['rol_end_time']); if (!$validToTime) { $gMessage->show($gL10n->get('SYS_TIME_INVALID', $gL10n->get('ROL_TIME_TO'), $gPreferences['system_time'])); } else { // now write date and time with database format to date object $_POST['rol_end_time'] = $validToTime->format('H:i:s'); } } // Kontrollieren ob bei nachtraeglicher Senkung der maximalen Mitgliederzahl diese nicht bereits ueberschritten wurde if ($getRoleId > 0 && $_POST['rol_max_members'] != $role->getValue('rol_max_members')) { // Zaehlen wieviele Leute die Rolle bereits haben, ohne Leiter $role->setValue('rol_max_members', $_POST['rol_max_members']); $num_free_places = $role->countVacancies(); if ($num_free_places < 0) { $gMessage->show($gL10n->get('SYS_ROLE_MAX_MEMBERS', $role->getValue('rol_name'))); } } // POST Variablen in das Role-Objekt schreiben foreach ($_POST as $key => $value) { if (strpos($key, 'rol_') === 0) { $returnCode = $role->setValue($key, $value); // at least one role must have this flag otherwise show error if (!$returnCode && $key === 'rol_default_registration') { $gMessage->show($gL10n->get('ROL_NO_DEFAULT_ROLE', $gL10n->get('ROL_DEFAULT_REGISTRATION'))); } } } // Daten in Datenbank schreiben