Zum Inhalt springen

mm_forum: Sie haben eine neue Nachricht

Erstellt am 3. Juli 2007 · 9 Antworten · letzte Antwort am 19. Juli 2007

Tags: Frage

xantos ·

hallo,

also zuerst einmal möchte ich mich für dieses exzellente Forum bedanken.

Jetzt zu meiner Frage:

Ich habe leider keinen Hinweis gefunden, wie ich eine Meldung aller "Sie haben eine neue private Nachricht erhalten" mit Link ausgeben kann (z.B. via TScript).

Vielleicht kann mir jemand von euch weiterhelfen.

Danke Valentin
PS: natürlich hab ich schon gesucht und die Doku hab ich mir auch schon durchgelesen 😉

steffenk ·

@Armin - das kann nicht funktionieren, da die query falsch ist (read_flg) und Du eine BE-Funktion nutzt, die im FE nicht aufgerufen werden kann.

Ich habe mir dafür eine TS-Lösung ausgedacht:

[loginUser=*]
page.10.marks.PM = COA
page.10.marks.PM {
	wrap = <div class="block">|</div>
	10 = COA_INT
	10.stdWrap.required = 1
	10.stdWrap.noTrimWrap = |Du hast | Nachricht(en)|
	10.stdWrap.typolink.parameter = 247
	10.10 = CONTENT
	10.10 {
		table = tx_mmforum_pminbox
		select {
			selectFields = if(count(*),count(*),NULL) as pm
			pidInList = 244
			andWhere.dataWrap = to_uid = {TSFE:fe_user|user|uid} and read_flg ='' AND mess_type = 0 and hidden=0 and deleted=0
		}
		renderObj = TEXT
  		renderObj.field = pm
	}
	
	
}
[global]

durch einen kleinen Trick im select lasse ich mir statt 0 NULL liefern, um das Element bei 0 ausblenden zu können.

xantos ·

danke steffenk,

dank danke es funktioniert perfekt.
auch danke für die mühe von arminB

mfg valentin

PS: hab noch einen zweites Problem: #64815

Lili ·
steffenk schrieb

@Armin - das kann nicht funktionieren, da die query falsch ist (read_flg) und Du eine BE-Funktion nutzt, die im FE nicht aufgerufen werden kann.

Ich habe mir dafür eine TS-Lösung ausgedacht:

[loginUser=*]
page.10.marks.PM = COA
page.10.marks.PM {
	wrap = <div class="block">|</div>
	10 = COA_INT
	10.stdWrap.required = 1
	10.stdWrap.noTrimWrap = |Du hast | Nachricht(en)|
	10.stdWrap.typolink.parameter = 247
	10.10 = CONTENT
	10.10 {
		table = tx_mmforum_pminbox
		select {
			selectFields = if(count(*),count(*),NULL) as pm
			pidInList = 244
			andWhere.dataWrap = to_uid = {TSFE:fe_user|user|uid} and read_flg ='' AND mess_type = 0 and hidden=0 and deleted=0
		}
		renderObj = TEXT
  		renderObj.field = pm
	}
	
	
}
[global]

durch einen kleinen Trick im select lasse ich mir statt 0 NULL liefern, um das Element bei 0 ausblenden zu können.

Hallo Steffenk,

paar kleine Fragen zum Code:

1. auf welche Seite setzt du das TS-Skript? Wo man möchte?
2. wohin kommt der Code - direkt auf die Seite von 1. ins TSconfig-Feld?
3. die ID 247 zeigt auf die Seite, wo die Nachrichten aufgelistet sind?
4. welche Seite ist bei dir die mit der ID 244?

Vielen Dank schon mal,

Lili

xantos ·

hallo lili,

1. das TScript einfach in dein Template geben, das ganze wird dann einfach beim Marker PM auf jeder Seite ausgegeben.
2. der code kommt einfach irgendwo in dein TScript
3. PID 247 = die Seite wo die nachrichten aufgelistet werden
4. PID 244 ist die Seite mit den Forum-Informationen

MfG valentin