Druckfunktion für "private Mails - Nachrichten"

25.01.2008 13:31
avatar  69magic
#1 Druckfunktion für "private Mails - Nachrichten"
avatar
Mitglied

Hallo,

manchmal besteht ja die Notwendigkeit auch mal eine Nachricht auszudrucken. Da die einfache Druck-Funktion

<a href="javascript:window.print()">drucken</a>
immer den aktuellen Frame ausdruckt und ich damit nicht zufrieden bin, habe ich nachstehendes Script im Template "Private Mails - Nachricht lesen" eingebaut. Damit erhält man einen einfachen Ausdruck der Nachricht.

Die Umformatierung des Datums ist erforderlich, da sonst bei "jungen" Nachrichten nicht das Datum sondern "vor einer Minute" oder "gestern" etc. steht:


{{now1@dateformat.start}}%d.%m.%Y{{now1@dateformat.end}}
{{now@dateformat.start}}%d.%m.%Y{{now@dateformat.end}}
{{today@dateformat.start}}%d.%m.%Y %H:%i{{today@dateformat.end}}
{{yesterday@dateformat.start}}%d.%m.%Y %H:%i{{yesterday@dateformat.end}}
{{norm@dateformat.start}}%d.%m.%Y %H:%i{{norm@dateformat.end}}
<script language="Javascript">
function ausgabe()
{
var absender = '{{pm_send_user}}';
// nächste Zeile öffnet ein Fenster der Größe 800 x 600 Pixel
ausgabe=window.open("#","fenster","width=800,height=600,resizable=yes,scrollbars=yes,menubar=no,left=50,top=50");
ausgabe.document.open();
ausgabe.document.write('<html><head><title>Druckversion</title>');
ausgabe.document.write('<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">');
// in der nächsten Zeile an das eigene Stylesheet anpassen
ausgabe.document.write('<link rel="stylesheet" href="../styles/design1.css"></head>');
ausgabe.document.write('<table border bgcolor="#FFFFFF" cellpadding=10><tr><td>');
ausgabe.document.write('<body><h1 align="left">hier habe ich bei mir den Board-Titel und die Nummer eingetragen</h1>');
if(absender) {
ausgabe.document.write('<body><h2 align="left">Posteingang</h2>');
} else {
ausgabe.document.write('<body><h2 align="left">Postausgang</h2>');
}
ausgabe.document.write('<body><b>Nachricht vom:</b> {{messagetime|dateformat}}<br>');
if(absender) {
ausgabe.document.write('<body><b>Absender:</b> {{pm_send_user}}<br><br>');
} else {
ausgabe.document.write('<body><b>Empfänger:</b> {{pm_get_user}}<br><br>');
}
ausgabe.document.write('<body><b>Betreff:</b> {{pm_title}}<br>');
ausgabe.document.write('<hr size="2" color="#BEBEBE" width="100%" align="center">');
ausgabe.document.write('{{pm_text}}<br>');
ausgabe.document.write('<div>');
// Ausgabe aller Inhalte mit der id = 'auswahl'
ausgabe.document.write('</div><p align="center"><a href="javascript:window.print()">drucken</a></p></body></html>');
ausgabe.document.close();
}
</script>


Den Auslöser:
<a href="javascript:ausgabe();> Druckversion</a>


hier eintragen:

<td width="100%" class="nnor">
<a href="{{answer_link}}">antworten</a> &middot;
<a href="javascript:ausgabe();"> Druckversion</a>
</td>


 Antworten

 Beitrag melden
25.01.2008 15:41
avatar  doku
#2 RE: Druckfunktion für "private Mails - Nachrichten"
do
Mitglied

Gute Arbeit, magic!

Habs bei mir eingebaut und es funktioniert wunderbar! Thanks!


 Antworten

 Beitrag melden
Bereits Mitglied?
Jetzt anmelden!
Mitglied werden?
Jetzt registrieren!