Benutzerechte Admin´s können keine Mitglieder Muten

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

      Benutzerechte Admin´s können keine Mitglieder Muten

      Hallo zusammen

      in meinem gt-chat gibt es Folgende Benutzergruppen

      Gesperrt
      Gast (Deaktivirt)
      Registrirte Benutzer
      Familymitglied
      stammchatter
      Ehrenmitglied
      Administrator
      Vertrauensadmin
      Sysadmin
      Sysadmin-1
      Chat-Leitung
      Chat-inhaber

      Nun habe ich Folgendes Problem wenn ein neues mitglied sich Registrirt hat er automatisch den Status Registrirte Benutzer so ich habe es mal gesteste Und wenn ein Mitglied nun den Status Familymitglied ereichen würde kann Kein Admin cm oder Höher dieses Mitglied Knebeln oder Kicken woran liegt es selbst ich als Chat-Inhaber kann es nicht ich bekomme immer nur die Meldung

      Chat-Name:%%Nick%% Ist ein Admin Du woltest ihn doch nicht wirklich Knebeln oder ?

      Ich kann nur Mitglieder der Benutzergruppe Registrirte Benutzer Knebeln Oder Kicken was muss ich machen um auch mal nen cm kicken zu können oder Familey´s

      Kann mir da jemand weiterhelfen ?
      Asoooo

      löööl

      Jetzt soll ich alle statusse Registrirte benutzer nennen ?

      Es geht ja nicht um die namen sondern die Rechte

      Ich betohne nochmal Ich als Chat-Inhaber kann niemanden Kicken oder Muten sobald ich den auf status 1 gesetzte habe (status 1 => Famileymitglied)


      Da muss doch irgentetwas falsch sein oder ?
      Hm, wenn ein Familymitglied den Status 1 hat, muss ein registrierter Benutzer den Status 0 oder -1 haben, also benenne es so um, dass Family Mitlied nicht Userstatus 1 ist, sondern das Family Mitglied an der Stelle steht wo eigentlich Registrierter Benutzer steht...
      Das wäre ja zu einfach lööööööööl

      Ne mal Ehrlich wenn ich doch den Status Niedriger setze dann hilft es ja auch nichts denn ich kann ja nicht alle Statusse Niedriger Setzen

      Also nochmal

      Alle die höher als den Status Registrite Benutzer sind (Sprich 1-9) Kann ich nicht /gag oder /kick oder /ungag und /unkick machen und das kann ja nicht sein oder ?


      Und dein forschlag wäre zu einfach und eigentlich nicht machbar denn dann könnte wieder ein admin nicht das Familey mitglied Kicken weisste jetzt wie ich es meine Jeder Status hat ja seine eigene benneung das heisst

      Status 1 => Familey
      Status 2 => Stammi
      usw.

      Und ich kann nicht einfach alles auf Status 1 Setzen
      Okay ich werde es gleich mal testen Melde mich dann mit Edit ob es geklappt hat oder nicht



      Okay habe mir die datei jetzt angeschaut aber irgentwie verstehe ich das nicht ganz was muss ich da ändern ?

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Nailsy“ ()

      Na, die Suche funktioniert ja doch und führt zum gesuchten Thread... jedoch die Lösung fand ich hier nicht... :(

      So hab ich mich denn doch selbst an die Problematik gemacht und fand - zumindest in der von mir genutzten Dawn-Version - dank des Hinweises von bullet, die Datei AdminCommands.pm im entsprechenden Admin-Menü und konnte hier die Werte ändern, die mich halbwegs zum gewünschten Ziel führten.


      Dort gibt es jeweils zu den Befehlen gag, kick oder push die Zeile

      Quellcode

      1. ($user->{tempgroup} > 0);


      in dieser habe ich entsprechend den Wert der User-Stufe angepasst, bspw.

      Quellcode

      1. ($user->{tempgroup} > 2);


      und somit erreicht, dass ich auch die User der beiden nächst höheren Hirarchien muten oder kicken kann.

      Natürlich wirkt sich diese Änderung grundsätzlich auf die User aus und nicht hirachisch, d.h. ein User der Stufe 2 könnte nun nicht nur einen User der Stufen 0 und 1 kicken, sondern auch einen der ebenfalls auf Stufe 2 steht.

      Aber vielleicht hilft es ja dennoch bei deinem Problem, sofern es überhaupt noch akut ist.

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „NurJo“ ()

      RE: Benutzerechte Admin´s können keine Mitglieder Muten

      die frage zur problematik ist ja ok.

      aber was ich mich hier frage:
      warum nicht noch ein paar ränge mehr?
      ich würde es verstehen, wenn es sich um chats mit einigen hundert usern handeln würde, was aber sicher nicht so ist.

      deswegen finde ich dies sowas von übertrieben, total an der spur vorbei und spielerei, die nix bringt. das sind dann die chats, in denen es mehr superuser, admins etc. als chatter gibt.

      mein subjektiver vorschlag nailsy:
      an deiner stelle würde ich eher gäste, reguser, einen admin und bei bedarf den chatmaster für änderungen haben. bringt dir sicher mehr als so ein gedöns.
      ich würde dir auch raten, die vergabe der ränge nach punkten einzustellen, sodas des automatisch geht... so hast du nicht die probs das du da nich kicken etc annst...

      oder aber du machst es so, das jeder der einen status hat, einen höheren, gleichen udn nedrigere status kicken kann. so hab ich es bei mir im chat
      Naja... im Dawn ist die Struktur mit den vielen Rängen ja sowieso hinterlegt und ich habe sie so genutzt, um die Rechte besser staffeln zu können.

      So hab ich die Möglichkeit, dass ich einem, dem ich zwar die Rechte zum muten oder kicken nicht geben möchte, das Recht geben kann Bilder einzustellen oder als Steigerung dazu auch externe Links einzustellen. Mag für den einen Spielerei sein, hat sich bei mir aber als durchaus nützlich erwiesen.

      Und diese "normalen" User kann ich jetzt - ohne die Rechte ändern zu müssen - auch mal kurz zum Schweigen bringen.

      oder aber du machst es so, das jeder der einen status hat, einen höheren, gleichen udn nedrigere status kicken kann. so hab ich es bei mir im chat


      Wäre noch besser... und wie würde die Realisierung dazu aussehen?
      gehe zu Plugins/CommandHandlers/Admincommands.pm

      suche nach

      sub kick_handler

      und lösche alles bis
      sub kick_handler {


      füge dafür ein (für kicken)

      sub kick_handler
      {
      my($self,$main,$command,$text) = @_;
      my ($nick) = split(/\s+/,$text);
      return [$main->createErrorOutput('kick_namenotgiven')] unless defined($nick);
      my $candidates = $main->getPossibleOnlineUsers($nick);
      #return [$main->createErrorOutput('notonline',{nick => $nick})] if ($#$candidates < 0);
      #return [$main->createErrorOutput('ambiguousname',{nick => $nick})] if ($#$candidates > 0);
      my $user = $candidates->[0];
      return [$main->createErrorOutput('kick_nopermission',{nick => $user->{nick}})] if ($main->{current_user}{tempgroup} <= $user->{tempgroup});
      return [$main->createErrorOutput('kick_admin',{nick => $user->{nick}})] if ($user->{tempgroup} > 9);
      $main->kickUser($user,{error_name => 'error_kicked',nologoutmsg => 1});
      my $info = $main->createInfoOutput('kicked',
      {
      admin => $main->{current_user}{nick},
      nick => $user->{nick},
      });
      $info->restrictToRoom($user->{room});
      return [$info];
      }


      suche fürs knebeln

      sub gag_handler
      {
      my($self,$main,$command,$text) = @_;
      my ($nick,$time) = split(/\s+/,$text);
      return [$main->createErrorOutput($command.'_namenotgiven')] unless defined($nick);
      my $candidates = $main->getPossibleOnlineUsers($nick);
      return [$main->createErrorOutput('notonline',{nick => $nick})] if ($#$candidates < 0);
      return [$main->createErrorOutput('ambiguousname',{nick => $nick})] if ($#$candidates > 0);
      my $user = $candidates->[0];
      return [$main->createErrorOutput($command.'_nopermission',{nick => $user->{nick}})] if ($main->{current_user}{tempgroup} <= $user->{tempgroup});
      return [$main->createErrorOutput($command.'_admin',{nick => $user->{nick}})] if ($user->{tempgroup} > 9);
      $time = 1 if $time<=0 || $time>9999999999;
      $time = int($time);
      my $info;
      $main->loadUser($user->{name},$user);
      if ($command eq 'gag')
      {
      $user->{gagtime} = $main->{runtime}{now}+$time*60;
      $info = $main->createInfoOutput('gagged',
      {
      admin => $main->{current_user}{nick},
      nick => $user->{nick},
      minutes => $time,
      });
      }
      else
      {
      return [$main->createErrorOutput('notgagged',{nick => $user->{nick}})] unless exists($user->{gagtime}) && $user->{gagtime}>$main->{runtime}{now};
      delete $user->{gagtime};
      $info = $main->createInfoOutput('ungagged',
      {
      admin => $main->{current_user}{nick},
      nick => $user->{nick},
      });
      }
      $main->saveUser($user);
      $info->restrictToRoom($user->{room});
      return [$info];
      }


      und ersetze mit

      sub gag_handler
      {
      my($self,$main,$command,$text) = @_;
      my ($nick,$time) = split(/\s+/,$text);
      return [$main->createErrorOutput($command.'_namenotgiven')] unless defined($nick);
      my $candidates = $main->getPossibleOnlineUsers($nick);
      return [$main->createErrorOutput('notonline',{nick => $nick})] if ($#$candidates < 0);
      return [$main->createErrorOutput('ambiguousname',{nick => $nick})] if ($#$candidates > 0);
      my $user = $candidates->[0];
      # return [$main->createErrorOutput($command.'_nopermission',{nick => $user->{nick}})] if ($main->{current_user}{tempgroup} <= $user->{tempgroup});
      # return [$main->createErrorOutput($command.'_admin',{nick => $user->{nick}})] if ($user->{tempgroup} > 9);
      $time = 1 if $time<=0 || $time>9999999999;
      $time = int($time);
      my $info;
      $main->loadUser($user->{name},$user);
      if ($command eq 'gag')
      {
      $user->{gagtime} = $main->{runtime}{now}+$time*60;
      $info = $main->createInfoOutput('gagged',
      {
      admin => $main->{current_user}{nick},
      nick => $user->{nick},
      minutes => $time,
      });
      }
      else
      {
      return [$main->createErrorOutput('notgagged',{nick => $user->{nick}})] unless exists($user->{gagtime}) && $user->{gagtime}>$main->{runtime}{now};
      delete $user->{gagtime};
      $info = $main->createInfoOutput('ungagged',
      {
      admin => $main->{current_user}{nick},
      nick => $user->{nick},
      });
      }
      $main->saveUser($user);
      $info->restrictToRoom($user->{room});
      return [$info];
      }
      Ich hätte dazu auch eine Frage. Wenn ich auf einen User klicke und sein Profil sehe steht bei Gästern und registrierten darunter knebeln und kicken. Wenn ich eine Stufe höher schaue ist da weg. Jetzt habe ich die Vorgaben für oben mal übernommen und die funktionieren auch. Aber bekomm ich die knebeln und kicken anzeige irgendwie in die höherern Profile ?