Memberpages_XH 3.5

für CMSimple_XH ab 1.5 und CMSimple 4.x,
PHP ab 5

Ursprünglich von svarrer.dk (v. 0.1-1.7), weitergeführt von ge-webdesign.de (v. 2.0-2.3), und ab Version 3 stark verändert und weiter entwickelt von Svasti (3.1 mit Hinweisen von cmb zur Verbesserung der Sicherheit, und 3.2 mit Code von cmb zur Anzeige gegenwärtig aktiver Nutzer).


Memberpages (Mitgliederseiten) hat zwei Anwendungsbereiche:

Per Nutzer können Benutzername, Passwort, Zugangslevel, E-Mail-Adresse, vollständiger Namen und Ablaufdatum der Mitgliedschaft erfasst werden. Eingeloggte Nutzer können Passwort, E-Mail-Adresse und angezeigten vollständigen Namen ändern. Memberpages kann Mitgliederseiten unterschiedlich hohe Zugangslevel zuweisen, so dass nur Nutzer mit entsprechend hoher Berechtigung diese sehen können.

Memberpages führt ein Log über alle Ein- und Auslog-Vorgänge.

Benutzername, Passwort und vollständige Name dürfen äöüß, Sonderzeichen (z.B. Apostroph) und außereuropäische Zeichen enthalten, außer " und \.



Wichtigste Änderungen gegenüber Version 2.3 :


Update 3.x –> 3.5

Neue Version über alte installieren. Zum Pluginbackend gehen und "Plugin aktivieren" klicken. Alte Mitgliederliste und Logdatei kann man importieren. Allerdings müssen Seiteneinstellungen für Login, Logout, Fehler etc. neu eingegeben werden. Eventuell speziell eingegebene Einstellungen des Stylesheets gehen ebenfalls verloren.

Update von älteren Versionen nicht mehr vorgesehen.


Memberpages installieren

Zip-Datei entzippen und den Ordner "memberpages" in CMSimples Plugin-Ordner kopieren. Dann das Login-Eingabeformular entweder ins Template oder auf eine Seite einfügen.

Login-Formular im Template:

loginform.png, 2,0kBloggedinform.png, 2,3kBDie Templatedatei öffen und folgenden php-Code einfügen, wo das Loginformular erscheinen soll: <?php echo memberslogin();?>

Links sieht man das Login-Formular und rechts, wie es sich nach dem Einloggen verändert hat. Das Aussehen hängt auch vom Template ab.

Login-Formular auf einer Seite:

{{{memberslogin 1}}} in den Seitentext schreiben. Das erzeugt das Login-Formular und nach dem Login die Zeile "Sie sind eingeloggt". Zusätzlich muss man <?php echo membersnotice(1);?> ins Template einfügen, um auf allen Seiten die notwendige Information für die eingeloggten Besucher zu zeigen, z.B:
membersnotice.png, 1,5kB
Diese Zeile (die nur nach dem Einloggen erscheint) könnte oben auf der Seite oder oberhalb des Inhaltsbereichs oder unter dem Seitenmenü stehen. Die Zeile ist eingebettet in <div class="mpp_oneline">, wodurch das Aussehen mit CSS geändert werden kann.

Wenn man auf die Seite schreibt {{{memberslogin}}} erhält man dasselbe Login-Formular wie in obigem Beispiel für Templates, wobei nach dem Einloggen das Formular sich entsprechend ändert. Da man auch auf anderen Seiten die Login-Info anzeigen will, kann man das mit <?php echo membersnotice();?> tun, was Formular in der eingeloggten Ansicht zeigt. Auf der Seite auf der man das Einlog-Formular stehen hat, gibt es dann allerdings eine Verdoppelung, das das Formular im Template und auf der Seite erscheint. Deshalb sollte man zumindest auf der Seite {{{memberslogin 1}}} nutzen, welches nach dem Einloggen kein Einlogg-Formular zeigt.


Memberpages_XH und Forum_XH

Wenn man Memberpages nicht zum Verstecken von Seiten nutzt, sollte man beide Methoden zum Seitenverstecken (siehe unten) ausschalten. Wenn Sie Forum_XH 1beta1 nutzen und den vollständigen Namen der Nutzer im Forum anzeigen wollen, Zeile 170 in plugins/forum/index.php ändern von:
return isset($_SESSION['Name']) ? $_SESSION['Name'] : (
zu
return isset($_SESSION['fullname']) ? $_SESSION['fullname'] : (


Normale Seite zu Mitgliederseite machen

Zwei verschiedene Methoden stehen zur Verfügung. Eine von beiden, beide oder keine kann angekreuzt werden. Ist keine Methode angekreuzt, kann Memberpages nur als Einwahlmöglichkeit für andere Plugins dienen. Ungenutzte Methoden sollten abgewählt werden um unnötige Berechnungen zu vermeiden.


Einstellen der Zugangsberechtigungen

Mitgliederseiten ohne Zugangslevel (= Zugangslevel 0) können von allen Mitgliedern gesehen werden. Für den Zugang zu einer Seite mit Zugangslevel gibt es folgende Einstellungen:

  1. Wenn man Zugangslevel nicht nutzt, empfiehlt sich die Einstellung "Mitglieder sehen ALLE Mitgliederseiten". Zugangslevel werden dann auch in der Mitgliederliste ausgeblendet.
  2. "Seiten mit GLEICHEM oder NIEDRIGEREM Level" bewirkt, dass Mitglieder mit hoher Zugangsberechtigung auch Seiten mit niedrigerem Level sehen, z.B. kann jemand mit Zugangsberechtigung 3 Seiten mit Zugangslevel 1, 2 und 3 sehen.
  3. "Seiten mit GLEICHEM oder ohne Level" bewirkt, dass jemand mit Zugangsberechtigung 3 nur noch Seiten mit Level 3 und Seiten ohne Level sehen kann. So kann man verschiedenen Personen exklusiven Zugang zu einzelnen Seiten geben. Die Anzahlt möglicher Levels kann man in nächsten Feld eingeben. Selbst 100 Levels sind möglich.
  4. "Pro Mitglied im Einzelnen für 3, 4 oder 5 Seitenlevel" erlaubt eine detaillierte Zugangsverwaltung. Pro Mitglied kann man festlegen, zu welchen Seitenzugangsleveln das Mitglied eine Zugangsberechtigung hat oder nicht. So könnte jemand Zugang zu Seiten mit Leveln 1, 4 und 5 haben, aber nicht zu 2 und 3.

Die Wirkung der Zugangsmodi kann man schön sehen, wenn man einem fiktiven Mitglied die Zugangberechtigung 3 gibt, Seiten mit Zugangsleveln 0, 1, 2, 3, 4 anlegt und sich als dieses Mitglied anmeldet. Bei Einstellung ALLE Mitgliederseiten sieht man dann im CMSimples Seitenmenü alle Mitgliederseiten 0, 1, 2, 3, 4; bei GLEICHEM oder NIEDRIGEREM Level nur noch Seiten 0, 1, 2, 3; bei mit GLEICHEM oder ohne Level 0, 3; und bei Pro Mitglied im Einzelnen 0, 1, 2 (hier wird die Zahl 3 in die Dualzahl 00011 umgewandelt, woraus dann die Zugangsberechtigungen abgeleitet werden).


Passwort vergessen?

Wenn das aktiviert ist, wird ein entsprechender kleiner Link unter dem Einlogknopf gezeigt. Durch Klick darauf gelangt der Besucher zu einem Menü in dem er sein Passwort durch Angabe seines Benutzernamens anfordern kann. Liegt für diesen Namen eine E-Mail-Adresse vor, wird das Passwort verschickt.

Für diese E-Mail muss eine Site-E-Mailadresse unter E-Mail der Site eingetragen sein. Eine Admin-E-Mail-Adresse wird auch benötigt: Steht der angegebene Benutzernamen nicht in der Mitgliederliste oder liegt keine E-Mail-Adresse zu dem Benutzernamen vor, wird eine Nachricht an die Admin-E-Mail-Adresse geschickt. Site- und Admin-E-Mail-Adressen können identisch sein.


Speicherort der Mitglieder-Datei

Die Mitgliederdatei wird ab Version 3.5 standardmäßig unter userfiles/plugins/memberpages/ gespeichert, sie kann aber auch an anderer Stelle gespeichert werden. Dazu einfach den gewünschten Speicherort in den Einstellungen angeben. Bei der Angabe wird vom der Basisebene des installierten CMSimple_XH-Systems ausgegangen.

Normalerweise ist CMSimple_XH nicht auf dem niedrigsten zugänglichen Verzeichnis auf dem Server installiert. Man kann jetzt sogar die Mitglieder-Datei auf einem niedrigeren Verzeichnis als CMSImple_XH installieren durch eine Angabe wie ../mein_Verzeichnis.

Bei Änderung des Verzeichnispfades wird eine neue Mitgliederliste erzeugt. Will man die alte und auch die alte Logdatei weiter nutzen, diese aus dem alten Verzeichnis mittels ftp ins neue Verzeichnis kopieren.