$gMessage->show($gL10n->get('SYS_MODULE_DISABLED')); } // Initialize and check the parameters $getHeadline = admFuncVariableIsValid($_GET, 'headline', 'string', array('defaultValue' => $gL10n->get('GBO_GUESTBOOK'))); // die 10 letzten Eintraege aus der DB fischen... $sql = 'SELECT * FROM ' . TBL_GUESTBOOK . ' WHERE gbo_org_id = ' . $gCurrentOrganization->getValue('org_id') . ' AND gbo_locked = 0 ORDER BY gbo_timestamp_create DESC LIMIT 10 '; $statement = $gDb->query($sql); // ab hier wird der RSS-Feed zusammengestellt // create RSS feed object with channel information $rss = new RSSfeed($gCurrentOrganization->getValue('org_longname') . ' - ' . $getHeadline, $gCurrentOrganization->getValue('org_homepage'), $gL10n->get('GBO_LATEST_GUESTBOOK_ENTRIES_OF_ORGA', $gCurrentOrganization->getValue('org_longname')), $gCurrentOrganization->getValue('org_longname')); $guestbook = new TableGuestbook($gDb); // Dem RSSfeed-Objekt jetzt die RSSitems zusammenstellen und hinzufuegen while ($row = $statement->fetch()) { // ausgelesene Gaestebuchdaten in Guestbook-Objekt schieben $guestbook->clear(); $guestbook->setArray($row); // set data for attributes of this entry $title = $guestbook->getValue('gbo_name'); $description = $guestbook->getValue('gbo_text'); $link = $g_root_path . '/adm_program/modules/guestbook/guestbook.php?id=' . $guestbook->getValue('gbo_id'); $author = $guestbook->getValue('gbo_name'); $pubDate = date('r', strtotime($guestbook->getValue('gbo_timestamp_create'))); // add entry to RSS feed $rss->addItem($title, $description, $link, $author, $pubDate); } // jetzt nur noch den Feed generieren lassen $rss->buildFeed();
require_once '../../system/login_valid.php'; } if ($getMode === 2 || $getMode === 3 || $getMode === 5 || $getMode === 8) { // Fuer die modes 2,3,5,6,7 und 8 werden editGuestbook-Rechte benoetigt if (!$gCurrentUser->editGuestbookRight()) { $gMessage->show($gL10n->get('SYS_NO_RIGHTS')); } } } if ($getMode === 1 || $getMode === 2 || $getMode === 3 || $getMode === 9) { // Gaestebuchobjekt anlegen $guestbook = new TableGuestbook($gDb); if ($getGboId > 0) { $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')); } } } else { // Gaestebuchobjekt anlegen $guestbook_comment = new TableGuestbookComment($gDb); if ($getGboId > 0 && $getMode != 4) { $guestbook_comment->readDataById($getGboId); // 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 ($getMode === 1 || $getMode === 3) {
$countGuestbookEntries = $guestbookStatement->rowCount(); if ($countGuestbookEntries === 0) { // Keine Gaestebucheintraege gefunden if ($getGboId > 0) { $page->addHtml('<p>' . $gL10n->get('SYS_NO_ENTRY') . '</p>'); } else { $page->addHtml('<p>' . $gL10n->get('SYS_NO_ENTRIES') . '</p>'); } } else { // Gaestebucheintraege auflisten while ($row = $guestbookStatement->fetch()) { // GB-Objekt initialisieren und neuen DS uebergeben $guestbook->clear(); $guestbook->setArray($row); $page->addHtml(' <div class="panel panel-primary" id="gbo_' . $guestbook->getValue('gbo_id') . '"> <div class="panel-heading"> <div class="pull-left"> <img class="admidio-panel-heading-icon" src="' . THEME_PATH . '/icons/guestbook.png" alt="' . $guestbook->getValue('gbo_name') . '" />' . $guestbook->getValue('gbo_name')); // Falls eine Homepage des Users angegeben wurde, soll der Link angezeigt werden... if (strlen($guestbook->getValue('gbo_homepage')) > 0) { $page->addHtml(' <a class="admidio-icon-link" href="' . $guestbook->getValue('gbo_homepage') . '" target="_blank"><img src="' . THEME_PATH . '/icons/weblinks.png" alt="' . $guestbook->getValue('gbo_homepage') . '" title="' . $guestbook->getValue('gbo_homepage') . '" /></a>'); } // Falls eine Mailadresse des Users angegeben wurde, soll ein Maillink angezeigt werden... if (strlen($guestbook->getValue('gbo_email')) > 0) { $page->addHtml(' <a class="admidio-icon-link" href="mailto:' . $guestbook->getValue('gbo_email') . '"><img src="' . THEME_PATH . '/icons/email.png" alt="' . $gL10n->get('SYS_SEND_EMAIL_TO', $guestbook->getValue('gbo_email')) . '" title="' . $gL10n->get('SYS_SEND_EMAIL_TO', $guestbook->getValue('gbo_email')) . '" /></a>'); }
} else { $headline = $gL10n->get('GBO_CREATE_VAR_ENTRY', $getHeadline); } // add current url to navigation stack $gNavigation->addUrl(CURRENT_URL, $headline); // Gaestebuchobjekt anlegen $guestbook = new TableGuestbook($gDb); 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']);