Skip to content

Loading…

mail_default.tpl DEPRECATED #3449

Closed
issue-bot opened this Issue · 27 comments

6 participants

@issue-bot

Beim Testen des Newsletter-Versands bekomme ich im Schnitt einmal pro Tag diese Fehlermeldung. Dies deutet darauf hin, dass dieses (System)-Modul auch noch nicht ganz vorbereitet ist für XHTML oder HTML5-Einsatz, richtig? Wie umgehe ich diese Meldung (wenn dies die Kunden bekommen wirds peinlich …)?

Notice: Using .tpl files (system/modules/frontend/templates/mail_default.tpl) is deprecated. Please use the new .html5 and .xhtml files instead. in /XYZ/httpdocs/system/libraries/Controller.php on line 169
#0 [internal function]: __error(1024, 'Using .tpl file...', '/home/httpd/vho...', 169, Array)
#1 /XYZ/httpdocs/system/libraries/Controller.php(169): trigger_error('Using .tpl file...', 1024)
#2 /XYZ/httpdocs/system/libraries/Template.php(246): Controller->getTemplate('mail_default', 'html5')
#3 /XYZ/httpdocs/system/modules/backend/BackendTemplate.php(49): Template->parse()
#4 /XYZ/httpdocs/system/modules/newsletter/Newsletter.php(383): BackendTemplate->parse()
#5 /XYZ/httpdocs/system/modules/newsletter/Newsletter.php(139): Newsletter->sendNewsletter(Object(Email), Object(DB_Mysql_Result), Array, 'Lesen Sie den P...', '
send(Object(DC_Table), 'tl_newsletter', Array)
#7 /XYZ/httpdocs/contao/main.php(101): Backend->getBackendModule('newsletter')
#8 /XYZ/httpdocs/contao/main.php(286): Main->run()
#9 {main}

Related issues: #1964

--- Originally created by truni on September 8th, 2011, at 11:12am (ID 3449)

@leofeyer leofeyer was assigned
@BugBuster1701

Diese Datei gibt es in 2.10 nicht. (jedenfalls nicht bei mir)
Ist die Installation per Update auf 2.10 gekommen? Dann gibt es dazu zahlreiche Beiträge im Forum.

--- Originally created on September 8th, 2011, at 11:18am

@issue-bot

OK, somit braucht es dieses mail_default.tpl gar nicht mehr, wie ich das sehe. Heisst das Template neu mod_newsletter.xhtml, falls man was ändern möchte?

--- Originally created by truni on September 8th, 2011, at 01:27pm

@aschempp
Contao member

Das Template gibt es sehr wohl noch. Allerdings liegt es im Backend-Ordner und daher gibt es nur eine .html5 Version (nicht unbedingt optimal). Dieses Template wird für HTML-Emails als Basis verwendet (schau mal in den Quellcode).

--- Originally created on September 8th, 2011, at 01:39pm

@issue-bot

… Interessant!
Wenn ich das Seitenlayout als XHTML definiert habe, kann dies somit einen Fehler auslösen (wenns kein XHTML-Template gibt) oder sollte es so klappen, wenn wir das .html5-Template einfach so belassen?

--- Originally created by truni on September 8th, 2011, at 01:44pm

@aschempp
Contao member

Aus meiner Sicht gehört das Template in's Frontend-Modul und es gehört auch eine xhtml-Version hin. Allerdings ist es etwas lächerlich, denn das Template ist HTML4 ;-)

--- Originally created on September 8th, 2011, at 07:27pm

@LeoUnglaub

warum sollte das Template ins Frontend? Ich kann E-Mails genau so gut auch im Backend verschicken.

--- Originally created on September 9th, 2011, at 06:47am

@aschempp
Contao member

Naja, aus dem einfachen Grund weil das backend-Modul nur .html5 Templates enthält, und das Frontend beides. Das Template war mal im Newsletter-Modul, aber wir haben das verschoben weil es sonst nicht zur Verfügung steht wenn Newsletter deaktiviert ist.

--- Originally created on September 9th, 2011, at 09:00am

@aschempp
Contao member

Leo, dieses Problem ist nicht erledigt. Eine Menge Erweiterungen nutzen das mail_default Template zum Email-Versand. Wenn das Frontend nun auf XHTML eingestellt ist, fehlt dieses Template und ein Versand schlägt fehlt (siehe z.B. http://www.contao-community.de/showthread.php?23759-E-Mails-funktionieren-nicht)

--- Originally created on October 10th, 2011, at 09:05am

@leofeyer
Contao member

Ein Template mail_default.xhtml gab es meines Wissen nach noch nie im Core, oder? Wo genau wird das aufgerufen in Isotope?

--- Originally created on October 11th, 2011, at 09:49am

@aschempp
Contao member

Das ist genau das Problem... es gab ein Template mail_default.tpl, welches immer bei Email-Versand als HTML-Grundgerüst benutzt wird. Seit 2.10 gibt es das nur in .html5, was aber zu Fehlern führt wenn das Frontend auf .xhtml eingestellt ist.

--- Originally created on October 11th, 2011, at 09:56am

@leofeyer
Contao member

Es wäre schon hilfreich, wenn ihr euch mal entscheiden könntet. Erst heißt es "bitte ins Backend verschieben" (siehe #1964), jetzt soll es wieder zurück ins Frontend. Was denn nun?

--- Originally created on November 1st, 2011, at 02:43pm

@Toflar
Contao member

Das stimmt nicht ganz Leo. Erst war es in "newsletter", musste aber nach "backend", weil nicht nur das Newsletter-Modul dieses Template verwendet hat. Nun ist es eine neue Ausgangslage, weil ein neues Template-System mit der 2.10 eingeführt wurde. Jetzt ist es halt auch in "backend" wieder falsch platziert - sowas passiert ;)
Es geht also nicht "zurück" sondern wiederum woanders hin :)

--- Originally created on November 1st, 2011, at 02:59pm

@leofeyer
Contao member

Das Template hat aber im FE nichts verloren. Der Newsletter-Versand erfolgt im BE und dort wird das Template auch mittels new BackendTemplate() eingelesen.

--- Originally created on November 1st, 2011, at 03:55pm

@Toflar
Contao member

Das kann gut sein. Offenbar verwenden es Extension also fälschlicherweise? Vielleicht sollte man es also "be_mail_default" nennen oder sowas? Mir fällt grad keine saubere Lösung ein. Aber so wie der Status momentan ist darf das Ticket nicht invalid sein, weil es auch bei Core-Modulen (Newsletter) den genannten Fehler produziert.

--- Originally created on November 1st, 2011, at 03:58pm

@leofeyer
Contao member

Wirklich? Ich habe vorhin noch Test-Newsletter versendet und die Meldung nicht gesehen.

--- Originally created on November 1st, 2011, at 06:43pm

@aschempp
Contao member

Das Template bezieht sich eben nicht auf den Newsletter, sondern auf die Email-Klasse in den Libraries. Sobald man diese verwendet und HTML benutzen will, braucht man ein entsprechendes Template... Ob es im Ordner "backend" oder "frontend" liegt ist ziemlich egal, aber es benötigt eine .xhtml-Variante falls ein Theme aktiv ist.

--- Originally created on November 1st, 2011, at 07:10pm

@leofeyer
Contao member

Die Email-Klasse benötigt kein Template (vgl. Code). Das Template war von Anfang an Teil der Newsletter-Erweiterung.

--- Originally created on November 1st, 2011, at 08:00pm

@leofeyer
Contao member

So, das Template ist jetzt wieder da, wo es von Anfang an hin gehört hat. Im Core wird es auch nur von der Newsletter-Erweiterung genutzt und wenn es jemand in einer eigenen Extension nutzen möchte, muss er halt die Newsletter-Erweiterung als Abhängigkeit definieren oder sein eigenes Template mitliefern.

--- Originally created on November 2nd, 2011, at 06:22pm

@aschempp
Contao member

Ich finde das keine gute Lösung. Du hast natürlich recht dass die Email Klasse das Template nicht direkt benötigt, aber sobald ich HTML in der Email Klasse versenden will, brauche ich das Template (bzw. eine entsprechende HTML-Grundstruktur). Es ist natürlich auch so, dass dieses Template weder .html5 noch .xhtml ist, sondern HTML 4. Könnte man nicht beim instantiieren der Template-Klasse die Dateiendung übersteuern (anstatt nochmals setFormat() aufrufen zu müssen)?

Auf jeden Fall ist es im Newsletter am falschen Ort, denn eine Core-Erweiterung kann auch gar nicht als abhängig definiert werden.

--- Originally created on November 3rd, 2011, at 06:19am

@leofeyer
Contao member

denn eine Core-Erweiterung kann auch gar nicht als abhängig definiert werden

Ich meinte damit auch, dass man vorher Config->getActiveModules() prüft.

Das Template war von Anfang an dafür gedacht, verschiedene Templates für Newsletter zu erstellen, und nicht, um es als Grundlage für HTML-Mails zu verwenden. Insofern ist es in der Newsletter-Erweiterung genau am richtigen Platz.

--- Originally created on November 3rd, 2011, at 08:37am

@aschempp
Contao member

Wie stellst du dir denn nun die Lösung für alle Module vor, welche bisher das Template verwendet haben?

ich liefere mein mail_isotope Template (mit gleichem Inhalt) aus, und der Benutzer bekommt ggf. zwei Optionen im Dropdown

ich liefere eine Kopie von mail_default in meinem Modul mit

ich erfinde einen neuen Template-Prefix, der Benutzer muss bestehende umbenennen und ggf. Anpassungen an zwei Orten pflegen?

Wo liegt das Problem, das Template einfach in "frontend" zu verschieben und beide Varianten zur Verfügung zu stellen?

--- Originally created on November 5th, 2011, at 05:28am

@leofeyer
Contao member

Wo ist der Unterschied, ob es in "frontend" oder in "newsletter" liegt? In beiden Fällen sind sowohl die HTML5- als auch die XHTML-Variante verfügbar.

--- Originally created on November 5th, 2011, at 12:24pm

@aschempp
Contao member

Das Modul "newsletter" kann deaktiviert werden, was ich in den meisten Installationen mache. Dann wird das Template nicht mehr gefunden und es erscheint auch ein Fehler.

--- Originally created on November 6th, 2011, at 02:14pm

@leofeyer
Contao member

Ich dachte Du lieferst ein eigenes mail_-Template mit? Meinetwegen verschiebe ich das Template nach frontend.

--- Originally created on November 8th, 2011, at 07:48pm

@leofeyer
Contao member

Geändert in e1b1bf8.

--- Originally created on November 8th, 2011, at 07:49pm

@aschempp
Contao member

Vielen Dank, jetzt ist es perfekt.

(nein, ich liefere eben keines mit, wäre aber dazu gezwungen wenn mail_default im Newsletter liegt)

--- Originally created on November 8th, 2011, at 08:30pm

@leofeyer
Contao member

--- Originally completed on November 8th, 2011, at 07:49pm

@leofeyer leofeyer closed this
@leofeyer leofeyer added a commit that referenced this issue
@leofeyer leofeyer #3449 7ade7e2
@leofeyer leofeyer added a commit that referenced this issue
@leofeyer leofeyer #3449 e28783a
@leofeyer leofeyer added a commit that referenced this issue
@leofeyer leofeyer #3449 e1b1bf8
@leofeyer leofeyer added a commit that referenced this issue
@leofeyer leofeyer #3449 03d6a0a
@leofeyer leofeyer added a commit that referenced this issue
@leofeyer leofeyer #3449 4519fc5
@leofeyer leofeyer added a commit that referenced this issue
@leofeyer leofeyer #3449 29b926f
@leofeyer leofeyer added a commit that referenced this issue
@leofeyer leofeyer #3449 cb5e137
@leofeyer leofeyer added a commit that referenced this issue
@leofeyer leofeyer #3449 2dd5518
@leofeyer leofeyer added a commit that referenced this issue
@leofeyer leofeyer #3449 2ba0fab
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.