// muss natuerlich der Code ueberprueft werden if ($getMode === 4 && !$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['gbc_text'] = admFuncVariableIsValid($_POST, 'gbc_text', 'html'); // POST Variablen in das Gaestebuchkommentarobjekt schreiben foreach ($_POST as $key => $value) { if (strpos($key, 'gbc_') === 0) { if (!$guestbook_comment->setValue($key, $value)) { // Daten wurden nicht uebernommen, Hinweis ausgeben if ($key === 'gbc_email') { $gMessage->show($gL10n->get('SYS_EMAIL_INVALID', $gL10n->get('SYS_EMAIL'))); } } } } if ($getMode === 4) { $guestbook_comment->setValue('gbc_gbo_id', $getGboId); } if (strlen($guestbook_comment->getValue('gbc_name')) > 0 && strlen($guestbook_comment->getValue('gbc_text')) > 0) { // Gaestebuchkommentar speichern if ($gValidLogin) { if (strlen($guestbook_comment->getValue('gbc_name')) === 0) { // Falls der User eingeloggt ist, wird die aktuelle UserId und der korrekte Name mitabgespeichert...
$guestbook_comment->readDataById($getGbcId); // Pruefung, ob der Eintrag zur aktuellen Organisation gehoert if ($guestbook_comment->getValue('gbo_org_id') != $gCurrentOrganization->getValue('org_id')) { $gMessage->show($gL10n->get('SYS_NO_RIGHTS')); } } if (isset($_SESSION['guestbook_comment_request'])) { // durch fehlerhafte Eingabe ist der User zu diesem Formular zurueckgekehrt // nun die vorher eingegebenen Inhalte ins Objekt schreiben $guestbook_comment->setArray($_SESSION['guestbook_comment_request']); unset($_SESSION['guestbook_comment_request']); } // Wenn der User eingeloggt ist und keine cid uebergeben wurde // koennen zumindest Name und Emailadresse vorbelegt werden... if ($getGbcId === 0 && $gValidLogin) { $guestbook_comment->setValue('gbc_name', $gCurrentUser->getValue('FIRST_NAME') . ' ' . $gCurrentUser->getValue('LAST_NAME')); $guestbook_comment->setValue('gbc_email', $gCurrentUser->getValue('EMAIL')); } 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(*) FROM ' . TBL_GUESTBOOK_COMMENTS . ' WHERE unix_timestamp(gbc_timestamp_create) > unix_timestamp()-' . $gPreferences['flooding_protection_time'] . ' AND gbc_ip_address = \'' . $guestbook_comment->getValue('gbc_ip_address') . '\''; $statement = $gDb->query($sql); $row = $statement->fetch(); if ($row[0] > 0) { // Wenn dies der Fall ist, gibt es natuerlich keinen Gaestebucheintrag...