Seite 1 von 1

Restriktives Board erstellen

Verfasst: 17.10.2006 12:03
von dirkj
Ich bin Web/php/phpBB Neuling und bin hoch erfreut wie leicht sich dank der gute Informationen auf phpbb.de das Board hat einrichten lassen. Super!

Jetzt muß das Board aber noch an meine (sehr speziellen) Vorstellungen anpassen. Leider habe ich dafür trotz langer Recherche noch keine Optionen gefunden.

Mein Ziel ist es das Board ausschließlich für einen kleinen, privaten Nutzerkreis einzurichten. Deshalb soll das Board:

1. Einloggen obligatorisch machen: Nicht eingelogte Nutzer kriegen im besten Fall nur den Login-Screen zu sehen.
2. Es soll keine Möglichkeit geben sich zu registrieren. Registrien von Nutzer soll nur durch den Admin geschehen
3. Jeder Nutzer hat ein privates Forum das nur für ihn und die Moderatoren sichtbar und einsehbar ist.

Ich habe den Verdacht dass ich Punkt 3 über die Steurung von Benutzerrechten hinbekommen kann, bei 1 und 2 stehe ich aber total auf dem Schlauch. Kann ich das auch über den Admin-Bereich realisieren oder brauche ich dafür Mods?

Vielen Dank für alle Unterstützung!

Verfasst: 17.10.2006 17:31
von gn#36
1. Lässt sich bis auf wenige Ausnahmen über das ACP machen. Die Ausnahmen sind die Betrachtung der Benutzergruppen, der Mitgliederliste und der Details zu einem Mitglied. Hierzu gibt es z.B. das hier.

2. Du kannst die Admin Aktivierung im ACP einschalten. Allerdings besteht dann immer noch die Möglichkeit eine Registrierung zu beantragen, diese muss allerdings dann vom Admin bestätigt werden. Wenn das nicht reicht könnte man durch eine geringfügige Codeänderung in der profile.php eine Registrierung unmöglich machen, gleichzeitig sollte man dann natürlich auch aus dem Header den Link entfernen.
Codeänderung:
Du findest folgenden Code in der Datei

Code: Alles auswählen

else if ( $mode == 'editprofile' || $mode == 'register' )
	{
		if ( !$userdata['session_logged_in'] && $mode == 'editprofile' )
		{
			redirect(append_sid("login.$phpEx?redirect=profile.$phpEx&mode=editprofile", true));
		}

		include($phpbb_root_path . 'includes/usercp_register.'.$phpEx);
		exit;
	}
Diesen müsstest du ersetzen durch z.b. folgendes:

Code: Alles auswählen

else if ( $mode == 'editprofile' )
	{
		if ( !$userdata['session_logged_in'] )
		{
			redirect(append_sid("login.$phpEx?redirect=profile.$phpEx&mode=editprofile", true));
		}

		include($phpbb_root_path . 'includes/usercp_register.'.$phpEx);
		exit;
	}
else if (  $mode == 'register' )
{
message_die(GENERAL_MESSAGE, 'Eine Registrierung in diesem Board ist nicht möglich.','Keine Registrierung');
}
Der Link ist in der Template datei overall_header.tpl zu finden.
Der Code in SubSilver wäre z.B. dieser:

Code: Alles auswählen

<!-- BEGIN switch_user_logged_out -->
						&nbsp;<a href="{U_REGISTER}" class="mainmenu"><img src="templates/subSilver/images/icon_mini_register.gif" width="12" height="13" border="0" alt="" hspace="3" />{L_REGISTER}</a>&nbsp;
						<!-- END switch_user_logged_out -->
Einfach den Link oder den ganzen Block löschen und der Registrieren Link erscheint nicht mehr.

3. Die Foren alle anlegen im ACP und mit der Rechteverwaltung so einstellen. Ob es evtl. einen passenden Mod gibt weiß ich nicht, kann aber sein, müsstest du mal suchen.
Wichtig: Alle Dateien vor der Änderung sichern! Ich habe das nicht getestet und übernehme keine Garantie!

Verfasst: 17.10.2006 17:46
von dirkj
Vielen Dank für die schnelle Hilfe!

Die Lösung zu Punkt 2 gefällt mir schon sehr gut. Allerdings ergibt sich da noch eine Frage: Wie kann der Admin nach dem Mod neue Nutzer in die Datenbank einpflegen? Über den Admin-Bereich geht das nicht, oder? Hat da jemand noch eine Idee?

Zu Punkte 1 ergänzt dein Verweis den Mode den ich in der Zwischenzeit selber gefunden habe:
## MOD Title: Redirect anonymous users to login
## MOD Author: StefanKausL < stefan@kuhlins.de > (Stefan Kuhlins) http://kuhlins.de/
## MOD Description: This very simple MOD redirects anonymous
## users to the login page instead of showing member, groups,
## or profile pages. That way anonymous users can't see
## registered user's data.
## MOD Version: 1.0.8

Bei Punkt 3 ist für mich die Handarbeit in Ordnung. Bei 60 Nutzern ist das keine Freude aber machbar...