Beiträge: 477
Themen: 93
Registriert seit: 07.04.2014
Hallöchen,
wenn man als Gast ins Forum geht, hat man einige Buttons weniger. Warum ist da eigentlich der "zitieren" Button noch da? Betätigt man den, kommt die Meldung, dass man nicht angemeldet ist usw. ....
Wie und wo müsste ich schrauben, dass der für Gäste auch noch weg kommt?
Zusatzfrage:
Nächster / Voriger Thread und die "untere" Suche würde ich auch gerne für Gäste deaktivieren ...
PHP Version 8.3.27 (Stand 11/2025)
MySQLi Version 8.0.36 (Stand 09/2024)
Mybb Version 1.8.39 (Stand 07/2025)
Grüße, André
Beiträge: 1.762
Themen: 182
Registriert seit: 08.02.2018
MyBB-Version: 1.8.*
Die einfachste und effektivste Lösung ist, den Gästen mit
PHP-Code: <if $mybb->user['usergroup'] != 1 then>...</<if>
die Anzeige(n) zu unterbinden. Da Gäste der Gruppe ( 1) angehören, dürfen alle, außer die Gruppe Gäste ( != 1), sehen.
Button " Zitieren" im Template postbit:
Finde:
PHP-Code: <div class="postbit_buttons post_management_buttons float_right">
{$post['button_edit']}{$post['button_quickdelete']}{$post['button_quickrestore']}{$post['button_quote']}{$post['button_multiquote']}{$post['button_report']}{$post['button_warn']}{$post['button_purgespammer']}{$post['button_reply_pm']}{$post['button_replyall_pm']}{$post['button_forward_pm']}{$post['button_delete_pm']}
</div>
ersetze mit:
PHP-Code: <div class="postbit_buttons post_management_buttons float_right">
{$post['button_edit']}{$post['button_quickdelete']}{$post['button_quickrestore']}<if $mybb->user['usergroup'] != 1 then>{$post['button_quote']}</if>{$post['button_multiquote']}{$post['button_report']}{$post['button_warn']}{$post['button_purgespammer']}{$post['button_reply_pm']}{$post['button_replyall_pm']}{$post['button_forward_pm']}{$post['button_delete_pm']}
</div>
Buttons " Nächster Thread" " Voriger Thread" im Template showthread:
Finde:
PHP-Code: <if $mybb->user['usergroup'] != 1 then>
<div>
<strong>« <a href="{$next_oldest_link}">{$lang->next_oldest}</a> | <a href="{$next_newest_link}">{$lang->next_newest}</a> »</strong>
</div>
</if>
Ersetze mit:
PHP-Code: <if $mybb->user['usergroup'] != 1 then>
<div>
<strong>« <a href="{$next_oldest_link}">{$lang->next_oldest}</a> | <a href="{$next_newest_link}">{$lang->next_newest}</a> »</strong>
</div>
</if>
Wenn ich Helfen kann biete ich Hilfe(n) an ...ich bitte jedoch nicht darum helfen zu dürfen!
Tools ◀ [ PlugIns] ♦ [ Unixzeit ⇔ Realzeit] ♦ [ BOM-Finder] ♦ [ SQL-Prefix-Changer] ♦ [ USV-Rechner] ♦ [ Justiz-XML] ♦ [ QR-Gen] ♦ [ BUS-Adr] ♦ [ PHP-Vers]
Beiträge: 477
Themen: 93
Registriert seit: 07.04.2014
Hallöchen und guten Morgen,
danke erst mal für die Vorschläge. Leider habe ich damit keinen Erfolg :-(
Beim ersten Vorschlag ändert sich nur das Erscheinungsbild, der Link zu newreply bleibt erhalten
Beim zweiten Vorschlag bemerke ich nichts anderes, Erscheinungsbild und Funktion bleiben erhalten. Ich habe sicherheitshalber auch mal die Beschriftung geändert - nicht, dass da was im Cache ist - klappt:
PHP Version 8.3.27 (Stand 11/2025)
MySQLi Version 8.0.36 (Stand 09/2024)
Mybb Version 1.8.39 (Stand 07/2025)
Grüße, André
Beiträge: 477
Themen: 93
Registriert seit: 07.04.2014
die "Designänderung" ist übrigens generell und nicht nur bei Gästen. Irgendwie scheint das if ... nicht so richtig zu funktionieren.
Da gab es wohl irgendwann mal ein Plugin Template Conditionals
Ist das nötig? Das ist nicht mehr zu finden :-( Jedenfalls nicht hier oder bei mybb.com. Eventuell bei mybbhacks.zingaburga? Da scheint das aber schon sehr alt zu sein, so etwa 2010
I
PHP Version 8.3.27 (Stand 11/2025)
MySQLi Version 8.0.36 (Stand 09/2024)
Mybb Version 1.8.39 (Stand 07/2025)
Grüße, André
Beiträge: 2.048
Themen: 10
Registriert seit: 28.06.2007
MyBB-Version: 1.8.x
(29.06.2026, 09:43)schauan schrieb: Da gab es wohl irgendwann mal ein Plugin Template Conditionals
Ist das nötig?
Ja, das brauchst du dafür.
Die aktuellste Version, die ich kenne, ist 1.9.7 von 2023, welche hier zu finden ist.
Beiträge: 477
Themen: 93
Registriert seit: 07.04.2014
29.06.2026, 15:52
(Dieser Beitrag wurde zuletzt bearbeitet: 29.06.2026, 16:40 von schauan.)
Hallöchen,
danke schön. Ich war zwar schon dort, aber gefunden hatte ich das nicht :-(
Werde ich mal ausprobieren.
Trotzdem nochmal die Frage, wo da geschaltet und gewaltet wird - mal wieder hier auf den Zitieren Button bezogen. Wenn ein Gast rein geht, werden andere Buttons raus genommen, dieser nicht.
Das ist doch eigentlich inkonsequent :-( Andere Aktionen, die der Gast nicht ausführen darf, werden automatisch ausgeblendet. Dieser Button, der einen Gast auch nix angeht, bleibt aber drin nebst Meldung bei Betätigung, dass das so nicht geht...
Da habe ich mich auf die Suche gemacht.
Der Zitieren-Button geht auf die newreply.php:
PHP-Code: https://forum.mybb.de/newreply.php?tid=39670&replyto=258981
Der edit-Button, der rausgenommen wird, geht auf die editpost.php.
PHP-Code: https://forum.mybb.de/editpost.php?pid=258982
in der Datenbank gibt es entsprechende Felder, canpostreply und caneditposts
Eine Suche nach canpostreplys ergibt 66 Treffer in 21 Dateien.
Eine Suche nach caneditpost ergibt 61 Treffer in 24 Dateien.
Nun dachte ich, ich schaue mir mal die 61 Treffer an, ob ich da was erkennen kann :-( Vielleicht hat ja jemand einen Tipp, wo ich nachschauen sollte. Eventuell muss ich da nur in eine Datei schauen und nicht in 24 :-) Eventuell kann ich die nächsten Schritte auch nicht nachvollziehen :-( In der forumdisplay.php steht z.B.
PHP-Code: if(is_moderator($fid, "caneditposts") || $fpermissions['caneditposts'] == 1)
{
$can_edit_titles = 1;
}
else
{
$can_edit_titles = 0;
}
Da würde sich für mich die Frage ergeben, soll ich in die nächste Datei schauen oder geht es mit can_edit_titles weiter? OK, schlechtes Beispiel - ich würde das in dem Fall ausschließen - das schaut nach Steuerung der Änderungsmöglichkeiten für die Titel aus und nicht nach einer Buttonsteuerung ...
(Ich habe übrigens auch nach 60 gesucht - ist bei uns die Zeit für Änderungen durch den Ersteller. Ergab 529 Treffer in 94 Dateien, lasse ich also erst mal außen vor. Ist außerdem wohl weniger zutreffend - der Button bleibt ja glaube drin mit entsprechender Meldung beim Absenden? )
PHP Version 8.3.27 (Stand 11/2025)
MySQLi Version 8.0.36 (Stand 09/2024)
Mybb Version 1.8.39 (Stand 07/2025)
Grüße, André
Beiträge: 2.028
Themen: 20
Registriert seit: 18.02.2017
MyBB-Version: 1.8.*
Man kann Gästen eben das Recht einräumen zu schreiben, generell oder nur in bestimmten Foren.
Die Meldung von wegen, dass das nicht erlaubt ist, kommt also nicht daher, dass derjenige Gast ist, sondern dass explizit das Recht zu schreiben für Gäste in den Einstellungen deaktiviert ist.
Da das also nicht grundsätzlich über die Prüfung Gast/User geklärt ist, ob jemand schreiben darf, ist der Button da und wird bei Gästen nicht automatisch ausgeblendet.
Kein Support per PN, Mail, Telefon, Hausbesuch, Discord, Telegram, WhatsApp und anderen nutzlosen Tools
Stammzellenspender werden und Leben retten: DKMS
Beiträge: 477
Themen: 93
Registriert seit: 07.04.2014
30.06.2026, 07:36
(Dieser Beitrag wurde zuletzt bearbeitet: 30.06.2026, 08:26 von schauan.)
Hallöchen,
wenn man einige Aktionen nicht darf und die zugehörigen Buttons werden deswegen rausgenommen und dieser z.B. bleibt drin mit der Meldung, dass man die Aktion nicht darf, frage ich mich schon, warum da ein Unterschied gemacht wird und dieser Button nicht auch ausgeblendet wird. Gibt es da ein technisches Problem, sodass das nicht möglich ist?
Wenn es dazu unterschiedliche Ansichten gibt, ist vollkommen ok.
Vielleicht bleibt der Button ja nur deswegen drin, um dem Gast einen Wink mit dem Zaunspfahl zu geben, dass angemeldet mehr möglich ist.
Man könnt das Behalten des Buttons vielleicht noch darüber begründen, dass es für das Zitieren kein gesondertes Recht gibt. Wenn der Button drin bleibt, wäre ich dafür, dass das irgendwie funktionieren müsste, wozu auch immer.
Vielleicht, das man da was in die Zwischenablage ablagert, was man z.B. dann in einem anderen Forum oder wo auch immer mit entsprechendem Querverweis auf das Forum und den Beitrag und Ersteller einfügen kann.
Nur würde ich mein Ansinnen gerne - mit Eurer Unterstützung - entsprechend meiner Ansicht lösen wollen ...
Der Vorschlag mit dem Template war schon eine gut Variante.
Aber ich würde gerne alternativ dazu tiefer in die Materie eindringen und an der "Schaltstelle" ansetzen ...
In irgendeiner php oder wo auch immer wird vermutlich für die auszublendenden Buttons eine Prüfung auf die Berechtigungen der Gruppe erfolgen und es wird entschieden, einige Buttons wegzunehmen.
Laut Datenbank hat die Gruppe nicht das Recht, zu antworten. Zitieren geht ja auch zur entsprechenden php, lediglich mit der Erweiterung &replyto=258983
PHP-Code: https://forum.mybb.de/newreply.php?tid=39670&replyto=258983
PHP-Code: https://forum.mybb.de/newreply.php?tid=39670
Ein Unterschied ist, das über dem "roten Balken" nur die Buttons raus genommen werden, bei denen js hinterlegt ist (Multizitat, Melden) und die "php-Buttons" drin bleiben. Keine Ahnung, ob das vielleicht relevant ist. Ich tippe da eher auf nicht.
PHP Version 8.3.27 (Stand 11/2025)
MySQLi Version 8.0.36 (Stand 09/2024)
Mybb Version 1.8.39 (Stand 07/2025)
Grüße, André
Beiträge: 477
Themen: 93
Registriert seit: 07.04.2014
Hallöchen,
also, die Buttonsteuerung erfolgt in der functions_post.php.
Speziell der Button wird in Zeile 727:730 gesteuert (Version 1.8.39)
PHP-Code: if($forum['open'] != 0 && ($thread['closed'] != 1 || is_moderator($forum['fid'], "canpostclosedthreads")) && ($thread['uid'] == $mybb->user['uid'] || empty($forumpermissions['canonlyreplyownthreads'])))
Ich habe hier nun folgende Bedingung eingefügt
&& ($forumpermissions['canpostreplys'] != 0
und am Ende noch eine )
und die Zeile sieht nun so aus:
PHP-Code: if($forum['open'] != 0 && ($forumpermissions['canpostreplys'] != 0 && ($thread['closed'] != 1 || is_moderator($forum['fid'], "canpostclosedthreads")) && ($thread['uid'] == $mybb->user['uid'] || empty($forumpermissions['canonlyreplyownthreads']))))
Funktioniert.
PHP Version 8.3.27 (Stand 11/2025)
MySQLi Version 8.0.36 (Stand 09/2024)
Mybb Version 1.8.39 (Stand 07/2025)
Grüße, André
|