// muss natuerlich der Code ueberprueft werden if ($getMode === 1 && !$gValidLogin && $gPreferences['enable_guestbook_captcha'] == 1) { if (!isset($_SESSION['captchacode']) || admStrToUpper($_SESSION['captchacode']) != admStrToUpper($_POST['captcha'])) { if ($gPreferences['captcha_type'] === 'pic') { $gMessage->show($gL10n->get('SYS_CAPTCHA_CODE_INVALID')); } elseif ($gPreferences['captcha_type'] === 'calc') { $gMessage->show($gL10n->get('SYS_CAPTCHA_CALC_CODE_INVALID')); } } } // make html in description secure $_POST['gbo_text'] = admFuncVariableIsValid($_POST, 'gbo_text', 'html'); // POST Variablen in das Gaestebuchobjekt schreiben foreach ($_POST as $key => $value) { if (strpos($key, 'gbo_') === 0) { if (!$guestbook->setValue($key, $value)) { // Daten wurden nicht uebernommen, Hinweis ausgeben if ($key === 'gbo_email') { $gMessage->show($gL10n->get('SYS_EMAIL_INVALID', $gL10n->get('SYS_EMAIL'))); } elseif ($key === 'gbo_homepage') { $gMessage->show($gL10n->get('SYS_URL_INVALID_CHAR', $gL10n->get('SYS_WEBSITE'))); } } } } if (strlen($guestbook->getValue('gbo_name')) > 0 && strlen($guestbook->getValue('gbo_text')) > 0) { // Gaestebucheintrag speichern if ($gValidLogin) { if (strlen($guestbook->getValue('gbo_name')) === 0) { // Falls der User eingeloggt ist, wird die aktuelle UserId und der korrekte Name mitabgespeichert... $guestbook->setValue('gbo_name', $gCurrentUser->getValue('FIRST_NAME') . ' ' . $gCurrentUser->getValue('LAST_NAME'));
if ($getGboId > 0) { // Falls ein Eintrag bearbeitet werden soll muss geprueft weden ob die Rechte gesetzt sind... require '../../system/login_valid.php'; if (!$gCurrentUser->editGuestbookRight()) { $gMessage->show($gL10n->get('SYS_NO_RIGHTS')); } $guestbook->readDataById($getGboId); // Pruefung, ob der Eintrag zur aktuellen Organisation gehoert if ($guestbook->getValue('gbo_org_id') != $gCurrentOrganization->getValue('org_id')) { $gMessage->show($gL10n->get('SYS_NO_RIGHTS')); } } // Wenn keine ID uebergeben wurde, der User aber eingeloggt ist koennen zumindest // Name, Emailadresse und Homepage vorbelegt werden... if ($getGboId === 0 && $gValidLogin) { $guestbook->setValue('gbo_name', $gCurrentUser->getValue('FIRST_NAME') . ' ' . $gCurrentUser->getValue('LAST_NAME')); $guestbook->setValue('gbo_email', $gCurrentUser->getValue('EMAIL')); $guestbook->setValue('gbo_homepage', $gCurrentUser->getValue('WEBSITE')); } if (isset($_SESSION['guestbook_entry_request'])) { // durch fehlerhafte Eingabe ist der User zu diesem Formular zurueckgekehrt // nun die vorher eingegebenen Inhalte ins Objekt schreiben $guestbook->setArray($_SESSION['guestbook_entry_request']); unset($_SESSION['guestbook_entry_request']); } if (!$gValidLogin && $gPreferences['flooding_protection_time'] != 0) { // Falls er nicht eingeloggt ist, wird vor dem Ausfuellen des Formulars noch geprueft ob der // User innerhalb einer festgelegten Zeitspanne unter seiner IP-Adresse schon einmal // einen GB-Eintrag erzeugt hat... $ipAddress = $_SERVER['REMOTE_ADDR']; $sql = 'SELECT COUNT(*)