Seite 1 von 1

Signatur "rückwirkend" für alle Beiträge anzeigen?

Verfasst: 16.04.2007 17:30
von dobra
Hallo,

Gibt es eine Möglichkeit, daß bei der Einstellung "Signatur immer anhängen" diese bei allen - auch den "alten" - Beiträgen angezeigt wird?

Habe sehr viele Beiträge zu "Signatur" gefunden, aber darauf leider keine Antwort (oder ich hab's übersehen)

mfG
dobra

Verfasst: 16.04.2007 20:23
von DanielHeinrich
Hi!

versuchs mal mit folgendem:

Code: Alles auswählen

#
#-----[ OPEN ]------------------------------------------
#
viewtopic.php
#
#-----[ FIND ]------------------------------------------
#
//
// Go ahead and pull all data for this topic
//
$sql = "SELECT u.username, u.user_id, u.user_posts, u.user_from, u.user_website, u.user_email, u.user_icq, u.user_aim, u.user_yim, u.user_regdate, u.user_msnm, u.user_viewemail, u.user_rank, u.user_sig, u.user_sig_bbcode_uid, u.user_avatar, u.user_avatar_type, u.user_allowavatar, u.user_allowsmile, p.*,  pt.post_text, pt.post_subject, pt.bbcode_uid
	FROM " . POSTS_TABLE . " p, " . USERS_TABLE . " u, " . POSTS_TEXT_TABLE . " pt
	WHERE p.topic_id = $topic_id
		$limit_posts_time
		AND pt.post_id = p.post_id
		AND u.user_id = p.poster_id
	ORDER BY p.post_time $post_time_order
	LIMIT $start, ".$board_config['posts_per_page'];
#
#-----[ IN-LINE FIND ]------------------------------------------
#
$sql = "SELECT
#
#-----[ IN-LINE AFTER, ADD ]------------------------------------------
#
 u.user_attachsig,
#
#-----[ FIND ]------------------------------------------
#
$user_sig = ( $postrow[$i]['enable_sig'] && $postrow[$i]['user_sig'] != '' && $board_config['allow_sig'] ) ? $postrow[$i]['user_sig'] : '';
#
#-----[ REPLACE WITH ]------------------------------------------
#
$user_sig = ( ($postrow[$i]['enable_sig'] || $postrow[$i]['user_attachsig'] ) && $postrow[$i]['user_sig'] != '' && $board_config['allow_sig'] ) ? $postrow[$i]['user_sig'] : '';
#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM
cu

Daniel

Verfasst: 16.04.2007 20:44
von dobra
[ externes Bild ] für die schnelle Hilfe !

Funktioniert super

mfG
dobra

Verfasst: 16.04.2007 23:25
von Miriam
Naja, jetzt scheint die Einstellung egal zu sein.

Aber ein einfaches UPDATE hätte es wohl auch getan, meine ich.

Code: Alles auswählen

UPDATE `phpbb_posts` SET `enable_sig` = '1' WHERE `poster_id` > '-1';

Verfasst: 16.04.2007 23:34
von DanielHeinrich
Hi!
Miriam hat geschrieben:Naja, jetzt scheint die Einstellung egal zu sein.

Aber ein einfaches UPDATE hätte es wohl auch getan, meine ich.

Code: Alles auswählen

UPDATE `phpbb_posts` SET `enable_sig` = '1' WHERE `poster_id` > '-1';
So ähnllich sah meine erste spontane Idee auch aus, leider werden hier 2 Dinge meiner Meinung nach nicht berücksichtigt:

1) Dieser Befehl aktiviert ALLE Signaturen in ALLEN Posts von ALLEN Usern -- eventuell gibt es ja welche die das gar nicht wollen ;-)

und selbst wenn das auf alle Posts eines Users beschränkt wird hast du immer noch das Problem dass

2) Wenn der User sich der User später wieder umentscheiden möchte kann er das mit dieser Methode nicht da die Signaturen immer noch in sämtlichen seiner Posts aktivirt ist -- eventuell hat der User ja aus einem bestimmten Grund in bestimmten Foren/Threads/Posts seine Signatur deaktivirt^^


cu

Daniel

Verfasst: 17.04.2007 05:31
von dobra
Hall nochmal.

will mich nicht in eure Diskusion einmischen und kann da auch nur für mich sprechen:

aber genau so, wie DanielHeinrich den Code geschrieben hat, wollte ich es haben :lol:

die Einstellung ist in diesem Fall eben nicht egal - jeder user kann entscheiden, ob und wo seine Signutur angezeigt wird.
Nur eben wenn er "immer anzeigen" wählt, es auch immer = bei allen seinen Nachrichten angezeigt wird (und auch eine Signaturänderung rückwirkend bei allen Beiträgen)

Wie auch immer man das anders lösen hätte können - für mich ist diese Lösung genau richtig!

mfG
dobra

Verfasst: 17.04.2007 08:40
von Miriam
Ahhh,

jetzt habe ich es verstanden:

Die Signaturen sollen immer angezeigt werden, wenn im Profil "Signatur immer anhängen -> ja" markiert ist, unabhängig davon, was beim jeweiligen Posting gewählt wurde.

Wenn dann die (globale) Profileinstellung auf "Signaturen immer anzeigen -> nein" geändert wird, sollen nur noch die lokalen Einstellungen des Postings gelten.

Verfasst: 17.04.2007 08:43
von dobra
Ja - genau so
sorry, wenn ich mich zuerst schlecht ausgedrückt hatte

Verfasst: 26.04.2007 23:17
von Magou77
Hallo,
vielen Dank an Daniel.
Das war genau das was ich gesucht habe.
Ich hatte nicht verstanden, dass die Signatur nur in den zukünftigen Beiträgen versehen ist. Ein User bei mir hatte genau das vor, in allen seinen bisherigen Beiträgen seine Signatur anzeigen zu lassen. Er hat es aber auch nicht geschafft selber eine Sig einzustellen (Ja, es gibt bei mir User, die kein Avatar und keine Sig einstellen können ;)) Macht nichts.

Auf jeden Fall wurde mir hier geholfen.

Herzlichen Dank

Gruss Ulf