Anleitung für das Einbinden des globalen Gästebuchscripts Anleitung für das Einbinden des globalen Gästebuchskripts 1. Die Funktionen des Gästebuchskripts............................................................................................2 1.1 Das Eingabeformular.................................................................................................................2 1.2 Die Smilies.................................................................................................................................2 1.3 Die Anzeige der Einträge..........................................................................................................2 1.4 Anzahl der angezeigten Einträge pro Seite..............................................................................2 2 Optionale Funktionen des Gästebuchskripts................................................................................... 3 2.1 Emailb-Benachrichtigung...........................................................................................................3 2.2 Spamk-Kontrolle.......................................................................................................................3 2.3 Moderierte Funktion des Gästebuchs......................................................................................4 2.4 Text innerhalb des Gästebuchs................................................................................................4 1. Datenbanktabelle.............................................................................................................................5 1.1 Erstellen einer NEUEN Datenbanktabelle...............................................................................5 1.2 Anpassen der alten Gästebuchtabelle.......................................................................................6 2. Einbinden des Skripts in die vorhandene Seitenstruktur .............................................................6 2.1 Einbindung in die PHP-Vorlage der DLRG-Jugend (sowohl die normale als auch die Variante des StammGesamtverbandes)..........................................................................................7 2.2 Einbindung in die SHTML-Vorlage der DLRG-Jugend.............................................................7 2.3 Einbindung in die PHP-Vorlage der DLRG..............................................................................8 2.4 Einbindung in die PHTML-Vorlage der DLRG.........................................................................8 3. Erstellen der Konfigurationsdatei....................................................................................................8 3.1 Konfiguration des Datenbankzugriffs.......................................................................................8 3.2 Konfiguration der Email-Bbenachrichtigung.............................................................................9 3.3 Aussehen und Verhalten des Gästebuchs..............................................................................10 3.3.1 Aussehen.........................................................................................................................10 3.3.2 Verhalten des Gästebuchs...............................................................................................11 4. Erstellen der Datei mit den Zugangsdaten für die Datenbank ...................................................12 Erstellt von: Sabine Lüer - Arbeitsgruppe Digitales der DLRG-Jugend Stand: 13.10.06 1 Anleitung für das Einbinden des globalen Gästebuchscripts 1. Die Funktionen des Gästebuchscripts 1.1 Das Eingabeformular Das Gästebuch beinhaltet zusätzlich zu den sichtbaren Funktionen auch einige Funktionen, die für die/den BenutzerIn nicht sichtbar sind. Es ermöglicht den Besuchern der Seite, einen Kommentar oder eine Nachricht auf der Seite zu hinterlassen. Es können Name, Emailadresse, Homepage, der eigentliche Kommentar sowie Mitgliedschaft in der DLRG und die Gliederung angegeben werden. Hierbei sind lediglich die mit * gekennzeichneten Felder Pflichtfelder. Alle anderen sind optional. 1.2 Die Smilies Werden von der/dem BesucherIn im Text die Tastaturkürzel für einen Smiley eingegeben, so wird dieser vom Script in die dazugehörige Grafik geändert und in der Gästebuchanzeige dann auch als Grafik dargestellt. 1.3 Die Anzeige der Einträge Unterhalb des Eingabeformulars werden die Einträge des Gästebuchs angezeigt. Dafür gibt es eine Navigationsmöglichkeit, die je nach gewünschtem Layout entweder mit den Icons der Jugend oder mit den Icons des Gesamtverbandes gezeigt werden. Dies kann über die Konfiguration gesteuert werden. Zusätzlich hat die/der BesucherIn der Seite die Möglichkeit, die Anzahl der Einträge, die auf einer Seite angezeigt werden, zu beeinflussen. Die Einträge werden durch ihren farbigen Hintergrund voneinander getrennt. Unterhalb der Einträge wird, bei einer Ansicht von mehr als 5 Einträgen pro Seite, ebenfalls noch einmal eine Navigation angezeigt. Über die Navigation kann entweder auf die nächste, die vorhergehende oder die erste oder letzte Seite gesprungen werden. Es ist über die Zahlen auch möglich, eine bestimmte Seite direkt auszusuchen. 1.4 Anzahl der angezeigten Einträge pro Seite Die Anzahl der Einträge, die auf einer Seite des Gästebuchs angezeigt werden, kann sowohl von der/dem Admin als Default-Wert gesetzt werden, als auch von jeder/jedem BesucherIn der Seite individuell eingestellt werden. Hierbei ist die Auswahl so vorgegeben, dass entweder ein Eintrag pro Seite, fünf Einträge, zehn Einträge und dann in Zehnerschritten aufwärts angezeigt werden Erstellt von: Sabine Lüer - Arbeitsgruppe Digitales der DLRG-Jugend Stand: 13.10.06 2 Anleitung für das Einbinden des globalen Gästebuchscripts kann. Ebenfalls ist es möglich, alle Einträge anzeigen zu lassen. 2 Optionale Funktionen des Gästebuchscripts 2.1 Email-Benachrichtigung Über die Konfigurationsdatei kann eingestellt werden, ob bei einem neuen Eintrag in das Gästebuch eine Benachrichtigung per Email versandt werden soll. Wird die Option eingeschaltet, so können ein oder mehrere Personen per Email über einen neuen Eintrag informiert werden. In der Benachrichtigung werden die Daten angegeben, die auch im Internet sichtbar sind. Aussehen und Verhalten dieser Email-Benachrichtigung kann ebenfalls über die Konfigurationsdatei beeinflusst werden. Der Betreff, der einleitende Text der Nachricht, sowie auch Absender und Reply-Adresse können beliebig gewählt werden. Genauso ist es möglich am Ende der Nachricht noch einen Link oder etwas ähnliches zu setzen, über den man direkt zur Admin-Oberfläche des Gästebuchs kommt, um Einträge zu bearbeiten. 2.2 Spam-Kontrolle Die Spam-Kontrolle kann je nach belieben ein- oder ausgeschaltet werden. Siehe hierzu die Anleitung unter 3.3.2 zur Konfiguration des Gästebuchs. Ist die Spam-Kontrolle eingeschaltet, so werden sowohl Name als auch Email, URL und der eingegebene Text auf bestimmte unerwünschte Worte kontrolliert. Die Liste dieser Worte wird ständig zentral erweitert, weil sich die Spam-Roboter stetig ändern. Die Kontrolle erfolgt hierbei nach einen Prioritäten-System. Jeder Fund eines bestimmten Begriffs erhöht die Priorität des Wortes. Die Einträge werden dann der Reihe nach erst nach den am häufigsten auftauchenden Worten und dann abnehmend nach den weniger häufig auftretenden Worten untersucht. Zusätzlich wurde eine Zeichenbegrenzung eingeschaltet. Einträge, die länger als 1000 Zeichen sind, werden automatisch von dem Filter als Spam eingestuft. Hierbei kann es natürlich sein, dass auch normale Einträge als Spam eingestuft werden. Diese können dann über die AdminOberfläche oder direkt über die Datenbank wieder freigegeben werden. Wenn in dem Text des Eintrags mehr als drei Mal eine URL angegeben wird, wird der Eintrag ebenfalls als Spam markiert. Wichtig! Spam-Einträge werden lediglich markiert, niemals gelöscht. Sie können direkt wieder freigegeben werden, wenn der Filter einmal zu scharf war und einen harmlosen Gästebucheintrag als Spam markiert hat. 2.3 Moderierte Funktion des Gästebuchs Erstellt von: Sabine Lüer - Arbeitsgruppe Digitales der DLRG-Jugend Stand: 13.10.06 3 Anleitung für das Einbinden des globalen Gästebuchscripts Das Gästebuch kann über die Konfigurationsdatei auf 'moderiert' geschaltet werden. Dies bewirkt, dass ein Eintrag, der von einer/einem BesucherIn der Seite gemacht wird, erst dann auf der Seite angezeigt wird, wenn er von einem Gästebuchadmin freigegeben wurde. Dies kann entweder über das Admin-Script oder direkt über die Datenbank erfolgen. Genauso können Einträge explizit gesperrt werden. 2.4 Text innerhalb des Gästebuchs Für die/den Admin ist es möglich, das Gästebuchscript in bestimmten Bereichen des Gästebuchs individuellen Text anzeigen zu lassen. Dies ist einmal direkt am Seitenanfang der Fall, wo Überschrift sowie ein folgender Text individuell gesetzt werden können. Ebenso ist dies am Ende der Seite möglich. Über die Konfigurationsdatei hat die/der Webmaster zusätzlich die Möglichkeit, innerhalb des Scripts noch individuellen Text ausgeben zu lassen. Dies ist einmal zwischen den Formularfeldern und dem Eintragen-Button möglich. Die zweite Möglichkeit befindet sich oberhalb der Gästebuchnavigation und unterhalb des Formularfeldes. Erstellt von: Sabine Lüer - Arbeitsgruppe Digitales der DLRG-Jugend Stand: 13.10.06 4 Anleitung für das Einbinden des globalen Gästebuchscripts Für das Gästebuchscript wird eine Datenbank benötigt. Sollte deine Gliederung noch nicht über eine Datenbank verfügen, kann diese über die Verwaltungsoberfläche (https://www.dlrg.de/) erstellt werden. 1. Datenbanktabelle In der Datenbank muss eine Tabelle angelegt werden. Wie diese Tabelle neu angelegt wird, erklärt das Kapitel 1.1 „Erstellen einer NEUEN Datenbanktabelle“. Soll eine bereits vorhandene Datenbanktabelle verwendet werden, in der sich alte Gästebucheinträge befinden, muss die Anleitung in Kapitel 1.2 befolgt werden. 1.1 Erstellen einer NEUEN Datenbanktabelle Zur Erstellung der Datenbanktabelle kann PHPMyAdmin (http://pelikan.dlrg.de/phpmyadmin/) verwendet werden. Dazu dort einloggen, dann SQL auswählen und den folgenden Code eingeben: CREATE TABLE `gaestebuch` ( `id` int(11) NOT NULL auto_increment, `name` varchar(50) NOT NULL default '', `email` varchar(50) default NULL, `datum` date NOT NULL default '0000-00-00', `uhrzeit` datetime NOT NULL default '0000-00-00 00:00:00', `text` longtext NOT NULL, `kommentar` longtext, `url` varchar(100) default NULL, `mitglied` enum('true','false') NOT NULL default 'false', `gliederung` varchar(100) default NULL, `ip` varchar(15) NOT NULL default '', `freigabe` enum('true','false','offen') NOT NULL default 'offen', `filter` enum('true','false') NOT NULL default 'false', PRIMARY KEY (`id`) ) TYPE=MyISAM; Erstellt von: Sabine Lüer - Arbeitsgruppe Digitales der DLRG-Jugend Stand: 13.10.06 5 Anleitung für das Einbinden des globalen Gästebuchscripts Hierbei kann in der ersten Zeile (CREATE TABLE `gaestebuch` ) der Name der Tabelle gesetzt werden. Dazu muß „gaestebuch“ durch den gewünschten Namen ersetzt werden. Umlaute und Sonderzeichen sind nicht zulässig. Ausgenommen hiervon ist der Bindestrich (minus). Zahlen können genutzt werden. (Hinweis darauf, ob deutsche Umlaute und weitere Sonderzeichen unzulässig sind, ist hier noch sinnvoll.) 1.2 Anpassen der alten Gästebuchtabelle Hierzu könnt ihr das Script 'gb_convert.php' verwenden, dass im Vorlagenpaket enthalten ist. Die Datei mit einem Editor öffnen, dort den alten und einen anderslautenden, neuen Tabellennamen, sowie die Datenbankzugangsdaten eintragen. Soll der alte Name weiterhin verwendet werden, dann hinterher die alte Tabelle löschen und mit Hilfe von PHPMyAdmin die neue Tabelle entsprechend umbenennen. Das Script kopiert die Daten aus der alten Tabelle in eine neue, weil einige Formatierungen nicht durch einfaches Ändern der Datenbankattribute angepasst werden können. Das Script muss lediglich einmal aufgerufen werden. Danach kann es vom Webspace wieder gelöscht werden. 2. Einbinden des Scripts in die vorhandene Seitenstruktur Wie das Script in die vorhandene Seitenstruktur eingebunden werden muß hängt von der Art des verwendeten Vorlagenpakets ab. Für die Einrichtung unter Typo3 wird es eine gesonderte Anleitung geben. Diese Möglichkeit wird auch noch einige Zeit brauchen, da dies erst bei Umstellung auf Typo3 V4.0 möglich ist. 2.1 Einbindung in die PHP-Vorlage der DLRG-Jugend (sowohl die normale als auch die Variante des Gesamtverbandes) Um das Gästebuch in die vorhandene PHP-Struktur einzubinden, muß zunächst eine neue Datei für den Seiteninhalt erstellt werden. Im Inhaltsbereich der Seite kann sowohl die Überschrift als auch ein oberhalb des Gästebuch Erstellt von: Sabine Lüer - Arbeitsgruppe Digitales der DLRG-Jugend Stand: 13.10.06 6 Anleitung für das Einbinden des globalen Gästebuchscripts stehender Text eingegeben werden. Nachfolgend müssen drei Dateien per Include eingebunden werden. include 'gaestebuch_config.inc'; include $db_path; include "gaestebuch/gaestebuch/gaestebuch_global.inc"; Die Variable $db_path wird in gaestebuch_config.inc gesetzt und beinhaltet den Pfad zu der Datei, in der die Datenbankzugangsdaten gespeichert sind. Die Datei gaestebuch_config.inc wird noch genauer in Punkt 3 erläutert. 2.2 Einbindung in die SHTML-Vorlage der DLRG-Jugend Um das Gäestebuch in die vorhandene SHTML-Seite einzubinden, muss eine Datei „gaestebuch.php“ erstellt werden. Die Datei kann bei Bedarf natürlich auch anders benannt werden. In dieser Datei stehen drei Includes. include 'gaestebuch_config.inc'; include $db_path; include "gaestebuch/gaestebuch/gaestebuch_global.inc"; Die Variable $db_path wird in gaestebuch_config.inc gesetzt und beinhaltet den Pfad zu der Datei, in der die Datenbankzugangsdaten gespeichert sind. Die Datei gaestebuch_config.inc wird jedoch genauer in Punkt 3 erläutert. In der gaestebuch_config.inc muss für das Gästebuchscript die Variable $scripturl auf ='index.shtml' gesetzt werden. Heißt die Datei, in die das Gästebuchscript eingebunden wird anders, muss index.shtml gegen die andere Bezeichnung geändert werden. Die erstellte Datei gaestebuch.php wird per SHTML-include in eine index.shtml-Datei eingebunden. Wie die index.shtml-Datei aufgebaut wird, ist der Anleitung für die Erstellung einer neuen Webseite in SHTML zu entnehmen. Diese befindet sich auf der Seite www.layout.dlrgjugend.de unter dem Punkt Webdesign. Erstellt von: Sabine Lüer - Arbeitsgruppe Digitales der DLRG-Jugend Stand: 13.10.06 7 Anleitung für das Einbinden des globalen Gästebuchscripts Der folgende Code muß im Inhaltsbereich der Seite eingebunden werden. <!--#include virtual='gaestebuch.php?$QUERY_STRING' --> Davor können Überschrift, sowie weiterer Text noch gesetzt werden. 2.3 Einbindung in die PHP-Vorlage der DLRG Die Einbindung in die PHP-Vorlage der DLRG erfollt analog zu 2.1 2.4 Einbindung in die PHTML-Vorlage der DLRG Auch bei der PHTML-Variante wird zum Einbinden analog zu 2.1 vorgegangen. 3. Erstellen der Konfigurationsdatei Über die Konfigurationsdatei kann das Verhalten und das Aussehen des Gästebuchs beeinflusst werden. 3.1 Konfiguration des Datenbankzugriffs Der Datenbankzugriff wird über zwei Variablen gesteuert. Dies sind die Variable $DB_TABLE_NAME die den Namen der Datenbanktabelle setzt und die Variable $db_path die den Pfad zu der Datei mit den restlichen Datenbankzugangsdaten setzt. Der Name der Tabelle wird über die Variable $DB_TABLE_NAME wie folgt gesetzt: $DB_TABLE_NAME = 'gaestebuch'; Der Pfad zu der Datei mit den Datenbankkonfigurationen wird über die folgende Variable gesetzt und in der Inhaltsdatei per Include eingebunden. $db_path = $_DLRG_PATH['content'].'db.inc'; 3.2 Konfiguration der Email-Benachrichtigung Die Email-Benachrichtigung ist eine optionale Einstellung, die über die folgenden Variablen konfiguriert werden kann. Über die folgende Variable wird die Emailbenachrichtigung ein- bzw. ausgeschaltet. Erstellt von: Sabine Lüer - Arbeitsgruppe Digitales der DLRG-Jugend Stand: 13.10.06 8 Anleitung für das Einbinden des globalen Gästebuchscripts Standardmäßig ist sie auf 'true' gesetzt. Sollte 'false' gewählt werden, muß das Gästebuch auf jeden Fall täglich möglichst mehrfach kontrolliert werden, um mögliche Spameinträge schnellstmöglich zu löschen. In diesem Fall ist es nicht nötig, die folgenden Variablen noch zu setzen. Zusammenfassend also: true: Emailbenachrichtigung wird eingeschaltet false: Emailbenachrichtigung wird ausgeschaltet $emailbenachrichtigung = true; Über die folgenden drei Variablen werden die Empfängeradressen für die Emailbenachrichtigung gesetzt. Weitere Mailadressen müssen durch Komma getrennt eingefügt werden. $empfaenger = 'Webmaster<[email protected]>'; $empfaengerCC = ''; $empfaengerBCC = ''; Über die nachfolgende Variable kann man den einleitenden Text für die Emailbenachrichtigung setzen. Der Text muß dabei als String eingetragen werden. $einleitung_global='Neuer Eintrag im Gästebuch'; Die folgenden Variablen definieren den Absender und die Antwortadresse für die Emailbenachrichtigung: $absender_global='[email protected]'; $reply_global='[email protected]'; Über die Variable $betreff_global='Neuer Eintrag im Gästebuch' kann der Betreff für die Emailbenachrichtigung gesetzt werden. Erstellt von: Sabine Lüer - Arbeitsgruppe Digitales der DLRG-Jugend Stand: 13.10.06 9 Anleitung für das Einbinden des globalen Gästebuchscripts Die Variable $link_global kann gesetzt werden, um beispielsweise einen Link zum Adminscript direkt in der Email mitzusenden. Dieser wird dann am Ende der Email angefügt. $link_global='Um die Einträge zu bearbeiten benutze den folgenden Link:'; 3.3 Aussehen und Verhalten des Gästebuchs Aussehen und Verhalten des Gästebuchs können ebenfalls über die Konfigurationsdatei gesteuert werden. 3.3.1 Aussehen Über die Variable $design kann das Aussehen des Gästebuchs an das verwendete Design angepasst werden. Hierfür muss die Variable $design auf 'jugend' oder auf 'stammverband' gestellt werden. jugend: Das Gästebuch wird im Stil des neuen Jugend-Designs angezeigt. stammverband: Das Gästebuch wird im Stil des Designs des Gesamtverbandes angezeigt. $design='jugend'; Die Anzahl der Gästebucheinträge, die auf einer Seite angezeigt werden, sofern der Benutzer nichts anderes auswählt, können über die Variable $config_anzahl festgelegt werden. Als Defaultwert werden 15 Einträge pro Seite angezeigt. $config_anzahl=15; Über die folgenden Variablen können optional variable Texte innerhalb des Gästebuchscripts gesetzt werden. Die Variable $zwischen_text wird zwischen den Eingabefeldern und dem 'Eintragen'-Button des Gästebuches ausgegeben. $zwischen_text = 'Text zwischen Eingabefeldern und Button'; Die Variable $box_text wird unterhalb des Eingabeformulars angezeigt, direkt oberhalb der Navigation der Gästebucheinträge. Wenn hier Text angezeigt werden soll, dann dazu die Erstellt von: Sabine Lüer - Arbeitsgruppe Digitales der DLRG-Jugend Stand: 13.10.06 10 Anleitung für das Einbinden des globalen Gästebuchscripts folgende Variable setzen. $box_text= 'Text unterhalb des Eingabeformulars'; Soll kein zusätzlicher Text eingeblendet werden, müssen sie mit einem leeren String gesetzt werden. Also $zwischen_text=''; $box_text=''; 3.3.2 Verhalten des Gästebuchs Das Verhalten des Gästebuchs bei neuen Einträgen kann ebenfalls über die Konfigurationsdatei gesteuert werden. Über die Variable $moderiert kann das Gästebuch als moderiert eingestellt werden. Einträge werden erst dann angezeigt, wenn sie von einem Gästebuchadmin freigegeben wurden. Als Default wurde 'false' eingetragen. Ist 'moderiert' ausgeschaltet, muss das Gästebuch regelmäßig auf neue Einträge überprüft werden. true: Der neue Eintrag wird nur dann im Gästebuch angezeigt, wenn er von einem Gästebuchadmin freigegeben wurde. false: Ein neuer Eintrag wird sofort für das Gästebuch freigegeben und wird sofort angezeigt. $moderiert=false; Über die Variable $filter kann der Eintragsfilter eingeschaltet werden. VORSICHT: Trotz eingeschaltetem Filter können Spam-Einträge im Gästebuch erscheinen. Daher ist es unbedingt nötig, das Gästebuch möglichst täglich auf neue Einträge zu kontrollieren und die Einträge auf Spam zu überprüfen. Ein eingeschalteter Filter enthebt die/den WebmasterIn nicht der Kontrollpflicht der Gästebucheinträge, aber er erleichtert ihre/seine Arbeit ganz enorm! Zusammenfassen also: Erstellt von: Sabine Lüer - Arbeitsgruppe Digitales der DLRG-Jugend Stand: 13.10.06 11 Anleitung für das Einbinden des globalen Gästebuchscripts true: der Filter ist eingeschaltet false: der Filter wird ausgeschaltet $filter=true; 4. Erstellen der Datei mit den Zugangsdaten für die Datenbank Die folgenden vier Variablen müssen in der Datei gesetzt werden. Für den Namen der Datenbank muss die Variable $DB_NAME gesetzt werden. Der $DB_NAME ist normalerweise gleichzeitig der username (login) für den Zugang zur Datenbank: $DB_NAME = ' '; Für den Usernamen muss die Variable $DB_USERNAME gesetzt werden. Dies ist der username (login) der Gliederung für den Datenbankzugang. $DB_USERNAME = ' '; Das Passwort wird über die Variable $DB_PASSWORD gesetzt. Dafür wird das Passwort benötigt, das für den Login in die Datenbank verwendet wird. Da dieses Passwort im Klartext eingegeben werden muss, wird empfohlen, diese Datei in ein Verzeichnis zu legen, das von außen nicht direkt zu erreichen ist. Hierfür eignet sich das Verzeichnis 'private_data', welches jeder auf dem DLRG-Server vertretenen Gliederung zur verfügung steht (sofern sie nicht Typo3 benutzt). $DB_PASSWORD = ' '; Der Datenbankserver ist 'mysql.dlrg.de'. Dieser wird über die Variable $DB_SERVER gesetzt. $DB_SERVER = 'mysql.dlrg.de'; Erstellt von: Sabine Lüer - Arbeitsgruppe Digitales der DLRG-Jugend Stand: 13.10.06 12