Double Post Merge: Smilies deaktiviert

Allgemeiner Support zum phpBB 2 Board und phpBB 2 Modifikationen
Forumsregeln
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
Antworten
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Double Post Merge: Smilies deaktiviert

Beitrag von Holger »

Hi,

ich benutze den Double Post Merge Mod.
Sobald damit aber ein Beitrag mit einem vorhergehenden zusammengefügt wird, sind die Smilies deaktiviert.
Warum? ^1

Wenn ich den neuen, zusammengeschlagenen, Beitrag editiere, ist das Kästchen "Smilies deaktivieren" nicht markiert.

Gruss
Holger
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Ich hatte den MOD auch nur auf einem meiner Foren installiert, allerdings mich nicht wirklich um die Funktionsweise gekümmert.
Da müsste ich erst mal Zeit für finden, dem nachzugehen, was wann wie wo gemacht wird, damit alles wieder passt.

Könnte es sein, daß einer der beiden Posts, die zusammengefahren wurden, die Smilies deaktiviert wurden?
Vielleicht auch "nur" ein Einbaufehler...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Beitrag von Holger »

Ne, ich behaupte mal selbstbewusst: beides nein.
Real men don’t back up, they learn data recovery. ;-)
http://www.mysqldumper.de
http://www.mysqldumper.se
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Wie gesagt: Ich kenne den MOD "intern" so gut wie garnicht, kann also hierzu aktuell weniger sagen...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Beitrag von Holger »

Ich suche mal weiter, dieser Bug nervt nämlich.

In den Instructions kommt folgendes vor:

Code: Alles auswählen

			$last_message_row = $db->sql_fetchrow($result);
			$bb_uid = ':' . $last_message_row['bbcode_uid'];
			
			// i don't know much about parsing the message, so it may well be that,
			// there are some wrongs, anyway all seems to work fine
			$last_message = str_replace($bb_uid, '', $last_message_row['post_text']);
			$last_message = preg_replace('/\:[0-9a-z\:]+\]/si', ']', $last_message);
			$last_message = undo_htmlspecialchars(addslashes($last_message));
Kann da was im Argen liegen?

/Holger
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Anstelle der Zeilen

Code: Alles auswählen

			$last_message = str_replace($bb_uid, '', $last_message_row['post_text']);
			$last_message = preg_replace('/\:[0-9a-z\:]+\]/si', ']', $last_message);
			$last_message = undo_htmlspecialchars(addslashes($last_message));
würde ich eher diese hier verwenden:

Code: Alles auswählen

			$unhtml_specialchars_match = array('#>#', '#<#', '#"#', '#&#');
			$unhtml_specialchars_replace = array('>', '<', '"', '&');
			
			$last_message = preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, last_message);
			
			if ($bb_uid != '')
			{
				$last_message = preg_replace("/\:(([a-z0-9]:)?)$bb_uid/si", '', $last_message);
			}
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Beitrag von Holger »

Ok, aber hat das was mit dem Smilies zu tun?

Zusätzliche Info:
Wenn ich einen Beitrag schreibe, werden die Smilies angezeigt.
Schiebe ich einen Beitrag nach, auf den der Mod anspringt ist das Ergebnis ein Beitrag, in dem der erste Teil keine Smilies parst, der zweite Teil jedoch normal die Smilies anzeigt.
Real men don’t back up, they learn data recovery. ;-)
http://www.mysqldumper.de
http://www.mysqldumper.se
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Ok, aber hat das was mit dem Smilies zu tun?
Richtig, war aber dennoch nicht korrekt.

Und nochmal:
Ich kenne den MOD "intern" so gut wie garnicht, kann also hierzu aktuell weniger sagen...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Beitrag von Holger »

Extrem komisch.
Ich werde Deine Code-Änderung mal testen.
So sieht das aus, wenn ich mehrere Beiträge nacheinander schreibe.
Komischerweise klappt es manchmal, manchmal nicht, manchmal nur teilweis :wall:

Sehr irritierend, hänge noch ein Beispiel an.
Im Zitat ist alles ok, im ersten Post (mit Zitat) wird der Smily nicht mehr richtig angezeigt.
:x:

EDIT: habe jetzt festgestellt, dass es nur passiert, wenn der Beitrag mit einem Smiley endet! Und wenn dann der Double Post Merge zur Anwendung kommt.
Zuletzt geändert von Holger am Mo 15.Sep, 2008 09:22, insgesamt 2-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Hm, dann müsste dem Text vor dem Speichern noch ein Leerzeichen angefügt werden, damit beim Formatieren zur Anzeige genau das Smiley wieder angezeigt werde kann...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Beitrag von Holger »

Ah! Ich kann ja die Stelle mit der Grafik und "Tillägg efter x minut(er)" erweitern.
Das wird jetzt im Moment mit einem /n<img erledigt
Ich könnte da ja {blank}/n<img draus machen ...

EDIT: hmmmmm ... andere Stellen haben auch keinen Blank nach dem Smiley, dort wird er richtig angezeigt ...

Wäre es ev. sinnvoll diesen zu verwenden?
http://phpbbguru.net/mods/?download&id=89
Scheint auch mit dem Mod Autor (Mercuree) zu tun zu haben.
Zuletzt geändert von Holger am Mo 15.Sep, 2008 10:56, insgesamt 2-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Wäre es ev. sinnvoll diesen zu verwenden?
Kann ich nicht beurteilen, da ich beide nicht, bzw. nicht besonders gut kenne.

Es ist immer die Frage, welches Ende-Zeichen nach einem Smiley am Post-Ende gespeichert wird.
Wenn die Double Post Merge MOD hier ein anderes Zeichen angibt, als durch einen normalen Post, kann die Formatierung der Smileys eben in die Hose gehen.
Dann muss man eben ein Blank einfügen, damit alles wie gewollt klappt.
Daran wird vermutlich die andere Modifikation auch nichts ändern...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Beitrag von Holger »

Komisch ist doch nur, dass der "zerstörte" Smiley mitten drin liegt, oder? Der Smiley, der mit dem 2. Post geschrieben wurde, ist ja korrekt!
Real men don’t back up, they learn data recovery. ;-)
http://www.mysqldumper.de
http://www.mysqldumper.se
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Wenn der Smiley am Ende des 1. Textes liegt, würde die MOD stur den Text direkt dranhängen und damit das Smiley zerstören.
Besser eben erst ein Leerzeichen und dann den 2. Post anfügen ;)
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Beitrag von Holger »

Ich bin so ein Idiot!
Beim Einbau und modifizieren hatte ich

Code: Alles auswählen

		$separator = "\n\n[img]http://www.maskinisten.net/images/plus.gif[/img] [size=9][color=#FF0000]Tillägg efter";
Anstatt

Code: Alles auswählen

		$separator = " \n\n[img]http://www.maskinisten.net/images/plus.gif[/img] [size=9][color=#FF0000]Tillägg efter";
Man bemerke das Leerzeichen vor \n\n!!! :x: :wall:

Jetzt geht es!!!!!!!!




ÜBRIGENS!
Dein Hinweis auf den fehlerhaften Code in Beitrag 6 hat dazu geführt, dass der erste Beitrag nur noch aus dem Text "last_message" bestand ... ^1
Zuletzt geändert von Holger am Mo 15.Sep, 2008 21:06, insgesamt 1-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Man bemerke das Leerzeichen vor \n\n!!!
Sag ich doch ;)
Dein Hinweis auf den fehlerhaften Code in Beitrag 6 hat dazu geführt, dass der erste Beitrag nur noch aus dem Text "last_message" bestand ...
Sorry, war aber auch ungetestet...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Antworten