MyBB.de Forum
Wie im AJAX-Chat bestimmte Benutzgruppen ausschließen? - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Anpassungen (https://www.mybb.de/forum/forum-47.html)
+--- Forum: Plugin-Diskussionen (https://www.mybb.de/forum/forum-38.html)
+--- Thema: Wie im AJAX-Chat bestimmte Benutzgruppen ausschließen? (/thread-31593.html)

Seiten: Seiten: 1 2


RE: Wie im AJAX-Chat bestimmte Benutzgruppen ausschließen? - Koelner - 14.03.2015

Hallo waldo,

danke schon mal für den Rat.

Die Datei lib/class/AJAXChat.php hat mehr als 3.000 Zeilen ich suche mir gerade einen Wolff. Kannst du mir in etwa sagen, wo ich den Code finde? Die Suchfunktion in Notepad+++ kann damit jedenfalls nichts anfangen.

Falls es weiterhilft, ab Zeile 3051 steht mehrmals "f($userID...":

PHP-Code:
function getPrivateChannelID($userID=null) {

 if(
$userID === null) {
$userID $this->getUserID();
}
return 
$userID $this->getConfig('privateChannelDiff');
}

function 
getPrivateMessageID($userID=null) {
if(
$userID === null) {
$userID $this->getUserID();




Dort vielleicht?

Gastzugänge sind nebenbei gesperrt.


RE: Wie im AJAX-Chat bestimmte Benutzgruppen ausschließen? - StefanT - 14.03.2015

waldo hat aber von einer anderen Datei geschrieben.


RE: Wie im AJAX-Chat bestimmte Benutzgruppen ausschließen? - Koelner - 14.03.2015

Ah, okay. Diese Datei widerum habe ich gleich gefunden und dort auch den Code eingefügt. Eine Änderung kann ich im Chat nicht erkennen. Ich muss ja auch noch im Chat neue Chaträume einfügen können. Wie mache ich das? In der class.php habe ich das bereits getan.

Die Folgefrage ist nicht als unhöflich zu verstehen, ich möchte ja, dass bestimme Benutzergruppen in den Chat dürfen und Chaträume für bestimmte Benutzer einrichten.

Hier der Screenshot aus dem Chat nach Änderung der Datei:

   


RE: Wie im AJAX-Chat bestimmte Benutzgruppen ausschließen? - Koelner - 14.03.2015

Nachtrag: ich muss mich korrigieren, habe gerade nochmal nachgeschaut.

Selbstverständlich habe ich, beim Versuch, neue Räume anzulegen, nicht die class.php beharbeitet, sondern die Datei chat/lib/data/channels.php, und die sieht bei mir jetzt so aus:

PHP-Code:
<?php

/*
* @package AJAX_Chat
* @author Sebastian Tschan
* @copyright (c) Sebastian Tschan
* @license GNU Affero General Public License
* @link https://blueimp.net/ajax/
*/

// List containing the custom channels:
$channels = array();

// Sample channel list:
$channels[0] = 'Public';
$channels[1] = 'Private';
$channels[3] = 'FSK 18';
$channels[4] = 'Fetisch FSK 18';
?>

Mein gewünschtes Ziel ist, dass Registrierte (User ohne Freischaltung) gar nicht in den Chat dürfen, dafür haben waldo und StefanT. mir bereits geholfen, und, dass bestimmte Benutzergruppen nur in bestimmte Räume dürfen, und eine bestimmte Benutzergruppe in alle Räume.

Nebenbei suche ich gerade in einer bekannten Suchmaschine, aber ich finde darüber nichts.


RE: Wie im AJAX-Chat bestimmte Benutzgruppen ausschließen? - Koelner - 20.03.2015

(14.03.2015, 17:34)waldo schrieb: Vermutlich wird es über die Konfiguration nicht funktionieren, sondern nur über eine Code-Änderung.
Schau mal in der Datei lib/Class/CustomAJAXChat.php in die Funktion getValidLoginUserData und um die Gruppe Registrierte ebenfalls auszuschließen, ändere testweise:

PHP-Code:
if($mybb->user['uid']) { 

in

PHP-Code:
if($mybb->user['uid'] && $mybb->user['usergroup'] != 2) { 

Natürlich muss Gast-Login dafür ebenfalls deaktiviert sein.

Guten Morgen.

Dazu habe ich doch nochmal eine Frage. Habe soeben ein Profil angelegt und dieses befindet sich nun in der Benutzergruppe "Registrierte", und komme mit diesem Profil in den Chat, was aber nicht sein soll.

Bezieht sich die Ziffer 2 des zu ergänzenden Codes

PHP-Code:
user['usergroup'] != 2

auf die ID der Benutzergruppe? Falls ja, wie ändere ich die?

In der config.php habe ich den Zugang für Gäste untersagt.


Gruß
Koelner