Hallo, Gast! (Registrieren)

Wir wünschen allen Besuchern frohe Ostern!

Letzte Ankündigung: MyBB 1.8.37 veröffentlicht (04.11.23)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Beiträge automatisch zusammenfügen - für bestimmte Foren anpassbar
#1
Hallo ihr Lieben,
in der Konfiguration gibt es ja die folgende Einstellung: "Beiträge automatisch zusammenfügen". Diese ist für das Forum, das ich zusammen mit anderen aufbaue, sehr interessant. Allerdings nützt sie uns nur wirklich etwas, wenn man sie erweitern könnte. Und zwar um folgende Punkte:

Die Funktion müsste für einzelne Unterforen "individuell" anpassbar sein. Für Das Unterforum mit der ID 3 gilt beispielsweise, dass innerhalb von 24 Stunden zusammengefügt wird, für das Forum mit der ID 10, dass es 72 Stunden sind. Wäre es möglich, diese Funktion dahingehend umzuschreiben oder gibt es sogar ein Plugin dieser Art?  Blush  Das fände ich wirklich grandios! 
Anmerkung: Man müsst es auch nicht "Generell" anpassen, sondern uns geht es eigentlich wirklich nur um zwei bestimmte Unterforen, falls das bei der Verwirklichung irgendwie hilft.

Liebe Grüße
Jule
Zitieren
#2
Das Zusammenfügen von Beiträgen wird von der Funktion verify_post_merge() erledigt. Ggf. müsste man hierzu diese Funktion anpassen oder über zugehörige Hooks dort eingreifen. Ad hoc kenne ich kein Plugin, das dies umsetzt.
viele Grüße
Jockl
übersetzte und eigene Plugins
Zitieren
#3
Ich muss wieder peinlicherweise zugeben, dass ich zwar verstehe, was in den Zeilen vor sich geht, ich es aber partout nicht hinbekomme, mir selbst Funktionen (um) zu schreiben ._. (Bin eher Gestaltungs- als Programmiertyp). Wäre es vielleicht möglich, dass du mir bei einer solchen Änderung hilfst? Natürlich nur, wenn du Zeit und Lust hättest. Smile
Zitieren
#4
Wenn es dir nur um die beiden genannten Foren geht, könntest du zB direkt die Funktion verify_post_merge(), wie von Jockl erwähnt, bearbeiten.

Ich habe es nicht getestet, aber du könntest mal damit etwas herumexperimentieren. In der Datei inc/datahandlers/post.php suche nach

PHP-Code:
// Check to see if the same author has posted within the merge post time limit
        
if(((int)$mybb->settings['postmergemins'] != && trim($mybb->settings['postmergemins']) != "") && (TIME_NOW-$thread['lastpost']) > ((int)$mybb->settings['postmergemins']*60))
        {
            return 
true;
        } 

und ersetze es durch

PHP-Code:
// Check to see if the same author has posted within 24 h in forum #3
        
if(((int)$mybb->settings['postmergemins'] != && trim($mybb->settings['postmergemins']) != "") && $thread['fid'] == && (TIME_NOW-$thread['lastpost']) > (24*60*60))
        {
            return 
true;
        }
        
// Check to see if the same author has posted within 72 h in forum #10
        
if(((int)$mybb->settings['postmergemins'] != && trim($mybb->settings['postmergemins']) != "") && $thread['fid'] == 10 && (TIME_NOW-$thread['lastpost']) > (72*60*60))
        {
            return 
true;
        }

        
// Check to see if the same author has posted within the merge post time limit
        
if(((int)$mybb->settings['postmergemins'] != && trim($mybb->settings['postmergemins']) != "") && $thread['fid'] != && $thread['fid'] != 10 && (TIME_NOW-$thread['lastpost']) > ((int)$mybb->settings['postmergemins']*60))
        {
            return 
true;
        } 
Zitieren
#5
Du kannst auch einfach $mybb->settings['postmergemins'] direkt setzen, dann musst du den restlichen Code nicht duplizieren. Meistens wird das ja nur einmal pro Request abgefragt...
Zitieren
#6
Hmm, ich hab es so mal probiert und leider tut sich nichts. Hab's auch mit mehreren Unterforen ausprobiert, aber die Posts werden wie gewohnt untereinander angezeigt. Sad Danke dennoch für den Versuch bisher. Smile
Zitieren
#7
Hast du es mal mit diesem Plugin probiert?

Vielleicht könntest du auch mal bei Autor dieser Erweiterung nachfragen, ob er die gewünschte Funktion nachrüsten könnte. Wink
Zitieren
#8
Das verlinkte Plugin funktioniert!
Vielen Dank, Sven!
Zitieren