Gesperrten Benutzer automatisch einen Benutzerrang zuteilen
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Gesperrten Benutzer automatisch einen Benutzerrang zuteilen
Grüsst euch!
Ich hoffe das ich hier Hilfe find.
Ich hab mir eine "Gesperrt" Ranggrafik erstellen lassen, weil ich wollte, das wenn ein Benutzer gesperrt wird (unabhängig von der Dauer) automatisch den Benutzerrang "Gesperrt" zugeteilt bekommt, und wenn der User wieder durch mich entsperrt wird oder automatisch nach Ablauf der Zeit wieder seinen ursprünglichen Benutzerrang zurückbekommt.
Ich möchte nur den Benutzerrang geändert haben automatisch, nicht die Benutzerrechte oder die Benutzergruppe.
Vielen dank schonmal für die kommenden Antworten.
Gruss, Alduin
Ich hoffe das ich hier Hilfe find.
Ich hab mir eine "Gesperrt" Ranggrafik erstellen lassen, weil ich wollte, das wenn ein Benutzer gesperrt wird (unabhängig von der Dauer) automatisch den Benutzerrang "Gesperrt" zugeteilt bekommt, und wenn der User wieder durch mich entsperrt wird oder automatisch nach Ablauf der Zeit wieder seinen ursprünglichen Benutzerrang zurückbekommt.
Ich möchte nur den Benutzerrang geändert haben automatisch, nicht die Benutzerrechte oder die Benutzergruppe.
Vielen dank schonmal für die kommenden Antworten.
Gruss, Alduin
Verschoben von phpBB 3.0: Administration und Benutzung nach phpBB 3.0: Mod Suche/Anfragen am 15.09.2012 14:44 durch Metzle
-
- Mitglied
- Beiträge: 996
- Registriert: 28.08.2008 20:20
- Wohnort: Kassel
Re: Gesperrten Benutzer automatisch einen Benutzerrang zutei
Hey Alduin, dafür gab es mal eine MOD, die wurde aber eingestellt, weil man nach einiger Zeit merkte, dass die MOD den Moderatoren ihren Rang weg nimmt. Deswegen solltest du das lieber per Hand machen.
Re: Gesperrten Benutzer automatisch einen Benutzerrang zutei
Irgendwas war da mal. Was genau weiß ich nicht mehr. Da gab es ungelöste Herausforderungen, soweit ich mich entsinne.
Das mit dem Moderatoren Rang sollte nicht so wild sein: Ein gesperrter Moderator ist kein Moderator mehr.
Das mit dem Moderatoren Rang sollte nicht so wild sein: Ein gesperrter Moderator ist kein Moderator mehr.
Zuletzt geändert von Miriam am 16.09.2012 12:08, insgesamt 1-mal geändert.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Ich schmeiß' alles hin und...
... lasse es liegen
-
- Mitglied
- Beiträge: 996
- Registriert: 28.08.2008 20:20
- Wohnort: Kassel
Re: Gesperrten Benutzer automatisch einen Benutzerrang zutei
Ja, dabei ging es aber um die aktiven (nicht gesperrten) Moderatoren, die ihren Rang immer wieder verloren haben.
Re: Gesperrten Benutzer automatisch einen Benutzerrang zutei
'kay.
Mal sehen... was hältst Du von dieser Idee? -->
Beachte, daß Du folgende Zeile nach den Vorgaben Deines Boards anpassen mußt:
Was genau angepaßt werdeen muß, sollte unerklärt klar sein.
Mal sehen... was hältst Du von dieser Idee? -->
- Du erstellst einen Spezialrang namens "gesperrt" und stellst dafür ein Bild ein und alles, was Du eben brauchst.
- Du findest die ID dieses neuen Rangs heraus indem du
- in die Tabelle phpbb_ranks schaust oder
- im ACP unter Ränge die ID durch "überfahren" des grünen Zahnrades beim Rang aus der angezeigten URL herausliest.
(Bsp.: /adm/index.php?i=ranks&sid=e9c40ecb6ec7a4ae512d9b813f2fa74b&mode=ranks&action=edit&id=2)
- Du baust folgenden Code ein:
Finde in der includes/functions_display.phpCode: Alles auswählen
function get_user_rank($user_rank, $user_posts, &$rank_title, &$rank_img, &$rank_img_src) { global $ranks, $config, $phpbb_root_path; if (empty($ranks)) { global $cache; $ranks = $cache->obtain_ranks(); }
Code: Alles auswählen
function get_user_rank($user_rank, $user_posts, &$rank_title, &$rank_img, &$rank_img_src, $user_id = false) { global $ranks, $config, $phpbb_root_path, $phpEx, $db; $banned_rank_id = 2; //set special rank ID here if (empty($ranks)) { global $cache; $ranks = $cache->obtain_ranks(); } if (isset($user_id)) { if (!function_exists('phpbb_get_banned_user_ids')) { include($phpbb_root_path . 'includes/functions_user.' . $phpEx); } if ( in_array((int)$user_id, phpbb_get_banned_user_ids((int)$user_id)) ) { $rank_title = (isset($ranks['special'][$banned_rank_id]['rank_title'])) ? $ranks['special'][$banned_rank_id]['rank_title'] : ''; $rank_img = (!empty($ranks['special'][$banned_rank_id]['rank_image'])) ? '<img src="' . $phpbb_root_path . $config['ranks_path'] . '/' . $ranks['special'][$banned_rank_id]['rank_image'] . '" alt="' . $ranks['special'][$banned_rank_id]['rank_title'] . '" title="' . $ranks['special'][$banned_rank_id]['rank_title'] . '" />' : ''; $rank_img_src = (!empty($ranks['special'][$banned_rank_id]['rank_image'])) ? $phpbb_root_path . $config['ranks_path'] . '/' . $ranks['special'][$banned_rank_id]['rank_image'] : ''; return; } }
- Überall, wo Du diese neue angepaßte Anzeige haben möchtest, änderst Du den Aufruf der Funktion
get_user_rank()
etwas ab, indem Du die ID des zu überprüfenden Users einfügst:
Bspw.: in der viewtopic.php
sucheCode: Alles auswählen
get_user_rank($row['user_rank'], false, $user_cache[$poster_id]['rank_title'], $user_cache[$poster_id]['rank_image'], $user_cache[$poster_id]['rank_image_src']);
Code: Alles auswählen
get_user_rank($row['user_rank'], false, $user_cache[$poster_id]['rank_title'], $user_cache[$poster_id]['rank_image'], $user_cache[$poster_id]['rank_image_src'], $poster_id);
Code: Alles auswählen
get_user_rank($row['user_rank'], $row['user_posts'], $user_cache[$poster_id]['rank_title'], $user_cache[$poster_id]['rank_image'], $user_cache[$poster_id]['rank_image_src']);
Code: Alles auswählen
get_user_rank($row['user_rank'], $row['user_posts'], $user_cache[$poster_id]['rank_title'], $user_cache[$poster_id]['rank_image'], $user_cache[$poster_id]['rank_image_src'], $poster_id);
Beachte, daß Du folgende Zeile nach den Vorgaben Deines Boards anpassen mußt:
$banned_rank_id = 2; //set special rank ID here
Was genau angepaßt werdeen muß, sollte unerklärt klar sein.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Ich schmeiß' alles hin und...
... lasse es liegen
Re: Gesperrten Benutzer automatisch einen Benutzerrang zutei
Puh, da muss ich aber ne Menge ändern. Den Rang "Gesperrt" hab ich schon
Aber danke, dass du mir den Code vorgibst, ich werd mich wohl bald daran setzen.
#Edit: Ich hab das mit dem banned_ID rank gemacht aber es passiert nichts.
Und "überall wo ich das angezeigt haben will" versteh ich auch nicht so recht ^^
Aber danke, dass du mir den Code vorgibst, ich werd mich wohl bald daran setzen.
#Edit: Ich hab das mit dem banned_ID rank gemacht aber es passiert nichts.
Und "überall wo ich das angezeigt haben will" versteh ich auch nicht so recht ^^
Re: Gesperrten Benutzer automatisch einen Benutzerrang zutei
Wenn Du die Codes so eingebaut und auch die Spezialrang ID eingepflegt hast, wird bei den gesperrten Benutzern dieser Rang in der Profilansicht der Themenansicht gezeigt.
Falls Du das auch noch woanders angepaßt haben möchtest, z.B. in der Profilansicht oder wo sonst noch Ränge angezeigt werden, dann mußt Du in den entsprechenden PHP Dateien den besagten Funktionsaufruf um den Paramater der User ID erweitern. Das ändert sich natürlich von Datei zu Datei; ist also nicht immer gleich. Mal heißt der Parameter
Im Zweifel kannst Du gern dem Link in meiner Signatur folgen.
Falls Du das auch noch woanders angepaßt haben möchtest, z.B. in der Profilansicht oder wo sonst noch Ränge angezeigt werden, dann mußt Du in den entsprechenden PHP Dateien den besagten Funktionsaufruf um den Paramater der User ID erweitern. Das ändert sich natürlich von Datei zu Datei; ist also nicht immer gleich. Mal heißt der Parameter
$user_id
mal $poster_id
etc. pp.Im Zweifel kannst Du gern dem Link in meiner Signatur folgen.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Ich schmeiß' alles hin und...
... lasse es liegen
Re: Gesperrten Benutzer automatisch einen Benutzerrang zutei
Hab ich ja alles gemacht, bei der functions_display.php und bei der viewtopic.php.
Und entsprechend auch die RangID ersetzt bei der functions_display.php bei diesem banned-rankID. (bei mir ist das die 10).
Trotzdem passiert nichts.
Und in der unteren Hälfte deines Beitrags sind irgendwie alle Codes gleich...
Und ich weiss garnicht wohin mit denen.
Und entsprechend auch die RangID ersetzt bei der functions_display.php bei diesem banned-rankID. (bei mir ist das die 10).
Trotzdem passiert nichts.
Und in der unteren Hälfte deines Beitrags sind irgendwie alle Codes gleich...
Und ich weiss garnicht wohin mit denen.
Re: Gesperrten Benutzer automatisch einen Benutzerrang zutei
Meinst Du die unter 4.?
Na dann suche mal nach
Na dann suche mal nach
get_user_rank
. Ich habe 2 Ergebnisse. Wieviele hast Du in der viewtopic.php?Die Codes sind mitnichten identisch. Schreibe dort jeweils VOR\viewtopic.php (2 hits) hat geschrieben: Line 1129: get_user_rank($row['user_rank'], false, $user_cache[$poster_id]['rank_title'], $user_cache[$poster_id]['rank_image'], $user_cache[$poster_id]['rank_image_src']);
Line 1182: get_user_rank($row['user_rank'], $row['user_posts'], $user_cache[$poster_id]['rank_title'], $user_cache[$poster_id]['rank_image'], $user_cache[$poster_id]['rank_image_src']);
);
diesen Code: , $poster_id
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Ich schmeiß' alles hin und...
... lasse es liegen
Re: Gesperrten Benutzer automatisch einen Benutzerrang zutei
Also in jedem Codeabsatz wo dieses user_rank drinne ist soll ich vor jedem ); dieses poster_id Zeug schreiben? direkt davor oder mit Leerzeichen?
(Jetzt hast du es weginstens vereinfacht, das da oben ist nämlich ab der zweiten Hälfte des Beitrages irgendwie verwirrend)
(Jetzt hast du es weginstens vereinfacht, das da oben ist nämlich ab der zweiten Hälfte des Beitrages irgendwie verwirrend)