Zum Inhalt springen

Powermail Empfänger im Formular mit Checkboxen selber auswählen

Erstellt am 23. April 2008 · 35 Antworten · letzte Antwort am 9. August 2010 · Seite 1 von 2

Tags: Powermail, Tipp

Dirk1 ·

Hallo Alex,

ist zwar schon etwas älter aber dennoch:
Super tipp - vielen Dank.

Hast du vielleicht auch noch eine Idee, wie man jetzt in z.B. Bestätigungsmails o.dgl. wieder den Text angezeigt bekommt und nicht die ID?
Also in deinem Beispiel "receiver1" statt "1"?

Das würde die Lösung perfekt machen.

Gruß
Dirk

Dirk1 ·

Hallo,

ich muß noch einmal dumm nachfragen.
Wie kann ich lib.object auf der Antwortseite referenzieren.
Und wie bekomme ich die Auswahl in TS refenziert?
Mit ###UID72### komme ich ja wahrscheinlich nicht weiter. Oder?

lib.object = CONTENT
lib.object {
	table = fe_users
	select {
		pidInList = 551
		where = uid = 72
#		where = uid = ###UID72###
		}
	renderObj = COA_INT
	renderObj {
		10 = TEXT
		10.field = name
		10.wrap = | 
		}
	}

Bin ich überhaupt auf dem richtigen Weg?

Gruß
Dirk

Dirk1 ·

Hallo Alex,

die Antwort auf die erste Frage habe ich inzwischen selbst herausbekommen.
Man braucht den Prefix POWERMAIL_TYPOSCRIPT. Steht sogar in der Doku. #paralyzed#

Fehlt also nur noch die Referenzierung des Feldes in TS.
Was muß statt
where = uid = ###UID72###
da stehen?

Wäre nett, wenn du mir da noch auf die Sprünge helfen könntest.

Gruß
Dirk

Dirk1 ·

..und jetzt kommt die Lösung:

plugin.tx_powermail_pi1.dynamicTyposcript {
	receiver = CONTENT
	receiver {
		table = fe_users
		select {
			pidInList = 551
			andWhere.data = TSFE:fe_user|sesData|powermail_356|uid72
			andWhere.wrap = uid=|
		}
		renderObj = COA_INT
		renderObj {
			10 = TEXT
			10.field = name
			10.wrap = | 
		}
	}
}

Dieses
"andWhere.data = TSFE:fe_user|sesData|powermail_356|uid72"

hat mir dabei ziemliches Kopfzerbrechen bereitet.
Vielleicht könnte man das bei passender Gelegenheit in der Doku etwas deutlicher schreiben. Vor allem, dass (in dem vorliegenden Beispiel) die 356 die uid des Content-Elementes (nicht des Formulares) ist.

Abgesehen davon schüttle ich so einen TSFE-String auch nicht aus dem Ärmel. Das liegt aber widerum an der Dokumentationslage von Typo3 allgemein. Ich weiss nicht, wie es da anderen geht.

Dirk

einpraegsam.​net ·

Nunja, das Handbuch von Powermail umfasst jetzt schon ca. 90 Seiten. Klar kann man noch tausend weitere Beispiele mit aufnehmen, aber das halte ich für kontraproduktiv.

Hier z.B. zwei ähnliche Problemlösungen, die man dann auch aufnehmen müsste:
#87081
#86451

and so on...

Cheers

Dirk1 ·

Hallo Alex,

ja das verstehe ich. Ich sehe auch deine große Leistung für die Community. Vielen Dank dafür.

Ich würde auch nicht unbedingt dafür plädieren, weitere Beispiele in die Doku aufzunehmen. Das wäre wirklich ein unendliches Unterfangen, wenn man sich die zahlreichen Diskussionen so ansieht.

Es geht mir persönlich eher darum, dass die (in diesem Fall) Powermail-spezifischen Fakten möglichst vollständig aufgeführt sind.

Zumindest zu dem Konstrukt powermail_356 habe ich nur in einem Forenbeitrag etwas gefunden. Aber vielleicht habe ich das in der Doku auch lediglich übersehen.

Gruß
Dirk

bloedbiber ·

Hallo Dirk,

ich sitze gerade am gleichen Problem, vielleicht kannst du mir kurz dazu was schreiben:

Dirk1 schrieb
plugin.tx_powermail_pi1.dynamicTyposcript {
	receiver = CONTENT
	receiver {
		table = fe_users
		select {
			pidInList = 551
			andWhere.data = TSFE:fe_user|sesData|powermail_356|uid72
			andWhere.wrap = uid=|
		}
		renderObj = COA_INT
		renderObj {
			10 = TEXT
			10.field = name
			10.wrap = | 
		}
	}
}
Dirk1 schrieb

pidInList = 551

...ist doch in dem Fall die Seiten ID auf der die fe_users angelegt sind, die als Empfänger herhalten sollen, oder???

Dirk1 schrieb

andWhere.data = TSFE:fe_user|sesData|powermail_356|uid72

und die berühmte 356 ist die tt_content ID vom Powermailformular, oder?

uid72 ist bei mir uid7... und ist die template id des feldes der mehrfachauswahl bei powermail.... ?

ich probiere gerade powermail damit ans laufen zu bekommen, aber er findet die Empfängeradressen nicht. so geht natürlich keine mail raus, ich seh aber die einträge in der DB. der weg zum empfängeremail-string....da verläuft sich was.

und ich vermute es liegt an fehlerhaften ID's.

Thx o.O

bloedbiber ·

Hallo Dirk,

ich nutze den debug modus... 😉
daran sehe ich ja das die receiver mail adresse leer ist. Die übergebene uid des Empfängers ist aber korrekt.

wenn ich die SQL Abfrage (ich bin ziemlicher mySQL Noob)
direkt im phpmyAdmin ausführe erhalte ich einen Synthaxfehler.

SELECT email FROM fe_users WHERE uid IN(###UID7###)

Ich werd mal mein SQL Synthax Wissen ein wenig aufrischen...fehlen wahrscheinlich nur n paar Kleinigkeiten

Da lagst du also richtig..

ich meld mich wie es ausgeht.

einpraegsam.​net ·

###UID7### musst du schon durch kommaseparierte Zahlen (oder wenigstens eine Zahl) ersetzen, wenn du die Abfrage direkt in phpmyadmin machen willst

bloedbiber ·
einpraegsam.net schrieb

###UID7### musst du schon durch kommaseparierte Zahlen (oder wenigstens eine Zahl) ersetzen, wenn du die Abfrage direkt in phpmyadmin machen willst

Hallo einpraegsam

soweit bin ich in 20 min. Schnellauffrischungskurs auch schon gekommen.
Die Abfrage

SELECT email FROM `fe_users` WHERE uid IN(12,13)

gibt mir beide Email Adressen aus. Das funktioniert soweit.

Ich hab schon ewig nix mehr mit der Synthax am Hut, daher hab ich schon das meiste wieder vergessen.

Aber was macht powermail dann aus meiner alternativen SQL Abfrage aus dem BE?

SELECT email FROM fe_users where uid IN(###UID7###)

Sollte doch richtig sein?

bloedbiber ·

Hallo Dirk, hallo einpraegsam.

nachdem ich usergruppe und die fe_user neu eingerichtet habe geht es plötzlich.
dabei war da jetzt nichts anders als vorher. alle gelöscht und neu angelegt. Ich benutzte die gleichen ID's, lediglich die uid hat sich geändert. *kopfschüttel*

danke für euren support.

anders ·

Hallo zusammen,

mittlerweile ist die SQL-Query ja aus Sicherheitsgründen abgeschafft worden. Ich hab mir jetzt schon Stunden einen Wolf gesucht um herauszufinden, wie ich die Auswahl aus mehreren Empfängern per TypoScript realisiert bekomme.

Ich könnte echt dringend einen Tipp gebrauchen, bin noch nicht ganz so fit in TS...

anders ·

Genau, das habe ich doch auch so verstanden. Ändert nichts an der Tatsache, das ich es einfach nicht zusammenkriege, wie das gehen soll...

einpraegsam.​net ·

Blick ins TypoScript der Extension hilft:

plugin.tx_powermail_pi1.email {
email_query = TEXT
email_query.value = SELECT email FROM fe_users WHERE uid = ###UID123### AND disable = 0 AND deleted = 0
}
anders ·

Vielen Dank erstmal für Deine Hilfe!

Habe heute keinen Nerv mehr, werde mir das morgen mal anschauen...