Seite 2 von 2
Re: Vorübergehend Login verhindern / Archiv
Verfasst: 20.10.2015 19:40
von Talk19zehn

Köstlich! Ich lache doch so gerne (positiv gemeint), - mal sehen. Im Grunde steht das Wesentliche ja bereits in deiner Antwort, denke ich.

Nur diese findet man dann eher schlecht in der Suchfunktion.
Ihr schafft das im Handumdrehen.
LG
Re: Vorübergehend Login verhindern
Verfasst: 21.10.2015 09:35
von BertB
Hallo beisammen,
@talk19zehn,
... ich habe mich vom Leitsatz verleiten lassen: Vorübergehend Login verhindern
Aber genau so ist es auch gewollt und gemeint. Alle Forenmitglieder - außer Moderatoren/Administrator - sollen sich nicht mehr einloggen können.
Anderen Falls hätte ich ja so wie von BlackHawk87 angemerkt auch nur die Berechtigungen geändert.
@BlackHawk87,
wie ja oben angemerkt war dies auch zuerst mein Gedanke, nur bei 13 verschiedenen Gruppen im Forum, mit jeweils anderen Zugriffsrechten würde ich wohl niemals mehr alles wieder so hinbekommen wie es jetzt ist. Mein Bestreben war stets, je mehr man postet, desto mehr Berechtigungen kommen auch zustande. Wenn ich nun alles in eine andere Gruppe verschiebe, dann ist es kein vorübergehendes Verhindern von Login mehr.
Ich schaue mal, ggf. schalte ich es einfach ab und frickel mir eine neue Index Seite mit allen wichtigen Infos. Das Forum verschiebe ich in einen oder zwei Unterordner und damit ist es nicht mehr erreichbar, bleibt aber so bestehen wie es ist - mit oder ohne Zugriff.
LG
Bert
Re: Vorübergehend Login verhindern
Verfasst: 21.10.2015 10:50
von gn#36
Um den Login eines Mitglieds zu verhindern kannst du dieses Sperren. Wenn du vorher weißt wie lange die Sperre dauern soll kannst du das gleich mit eintragen, die Sperre sollte dann nach Ablauf der Zeit automatisch entfallen. Du kannst auch gleich mehrere Mitglieder auf einmal sperren. Ist möglicherweise einfacher als größere Umbauten vorzunehmen, zumindest sofern du nicht wer weiß wie viele User hast.
Ansonsten sollte ein
Code: Alles auswählen
if (!$auth->acl_getf_global('m_') && !$auth->acl_get('a_'))
{
trigger_error('Dieses Board ist derzeit nicht zugänglich.');
}
unterhalb von
Code: Alles auswählen
$user_lang_name = (file_exists($this->lang_path . $this->data['user_lang'] . "/common.$phpEx")) ? $this->data['user_lang'] : basename($config['default_lang']);
$user_date_format = $this->data['user_dateformat'];
$user_timezone = $this->data['user_timezone'];
in der phpbb/user.php
ebenfalls zuverlässig alle normalen User ohne Mod oder Adminrechte aussperren. Möglicherweise gibt's allerdings Nebeneffekte, wenn trigger_error auch versucht $user->setup() aufzurufen (weiß ich gerade nicht aus dem Kopf). Dann braucht's stattdessen:
Code: Alles auswählen
if (!$auth->acl_getf_global('m_') && !$auth->acl_get('a_') && !defined('DONT_RECALL_SETUP_PLEASE'))
{
define('DONT_RECALL_SETUP_PLEASE', 1);
trigger_error('Dieses Board ist derzeit nicht zugänglich.');
}
an der selben Stelle.
Es gibt noch ein paar andere Stellen an denen man das einbauen könnte die möglicherweise besser sind, aber umfangreiche Änderungen braucht's auf jeden Fall nicht. Für eine temporäre Aussperrung würde ich auf jeden Fall nicht mehr als eine Datei bearbeiten, sonst vergisst du hinterher beim wiederausbau noch ein paar Dateien.