MyBB.de Forum

Normale Version: [G][WOL] Fehlerhafte Behandlung von error_no_permission()
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Wenn ein User keine Rechte für eine bestimmte Seite hat (d.h. er wurde mit error_no_permission() abgewiesen), wird in der Wer-Ist-Online-Liste dennoch sein wahrer Aufenthaltsort angezeigt und nicht "Viewing No Permissions Page" wie eigentlich vorgesehen.

Reproduktion:
* Unterforum anlegen, einer Benutzergruppe A den Zutritt sperren.
* Mit einem Benutzer aus Gruppe A dieses Forum über die URL aufrufen, er gelangt auf die No-Permission-Page
* Mit einem anderen Benutzer die WOL aufrufen, er sieht, dass der Benutzer aus Gruppe A angeblich das gesperrte Forum ansieht.

Ursache:
Die Funktion build_friendly_wol_location() in der functions_online.php prüft zwar auf nopermission (relativ am Ende, Zeile 894ff), allerdings wird ihr der Wert niemals im Array mit übergeben, sodass die Prüfung immer fehlschlägt.

Mögliche Lösung:
In der online.php folgendes Suchen (Zeile 170f):
PHP-Code:
        // Fetch the WOL activity
        
$user['activity'] = fetch_wol_activity($user['location']); 
Danach einfügen:
PHP-Code:
        $user['activity']['nopermission'] = $user['nopermission']; 
Stimmt...das fand ich auch komisch, da Gäste manche Bereiche gar nicht sehen dürften (z.B.: "Viewing User Control Panel").

Habs gemeldet.