Zum Inhalt springen

print-link / pdf / templavoila

Erstellt am 20. Juli 2006 · 27 Antworten · letzte Antwort am 5. Oktober 2010 · Seite 1 von 2

Tags: Frage

greenbanana ·

Hallo,

hat es schon mal jemand geschafft für eine Page mit Templavoila die Extensions:

- make_printlink
- pdf_generator

zum laufen zu bringen?

Folgendes habe ich bis jetzt gemacht:

#Link - Konfiguration
#######################################################

temp.printAndPdf = COA
temp.printAndPdf {

  #print
  10 = USER_INT
  10.userFunc = tx_open_printlink
  20 = TEXT
  20.value = <img src="fileadmin/templates/images/print.gif" alt="print page" border="0" /> drucken</a> / 

  #pdf
  30 = USER_INT
  30.userFunc = tx_pdfgenerator->openPdfLink
  40 = TEXT
  40.value = <img src="fileadmin/templates/images/pdf.gif" alt="PDF version" border="0" /> PDF erstellen</a>
}
lib.footer < temp.printAndPdf

lib.footer zeigt mir jetzt auch "brav" die icons an für print und pdf. Auch der Link wird richtig erstellt.

Für print:
http://www.XXXXX.ch/index.php?id=42&type=98

Für pdf:
http://www.XXXXX.ch/index.php?id=42&type=123

Die entsprechenden typeNum's habe ich folgendermasse konfiguriert:

# Seitenansicht - PRINT
#######################################################
print_page = PAGE
print_page {
  typeNum = 98

  10 = TEXT
  10.value = <h1>:regionalnachrichten.ch </h1>

  15 = TEXT
  15.value = Druckversion

  16 = TEXT
  16.field = title

  17 = TEXT
  17.value = <hr />

# 50 = CONTENT
# 50 < styles.content.get
# 50.userFunc = tx_templavoila_pi1->main_page

50 = USER
50.userFunc = tx_templavoila_pi1->main_page
         
}

# Seitenansicht - PDF
#######################################################
pdf = PAGE
pdf {
  typeNum = 123
  doctype = html4.2
  config.pageGenScript = EXT:pdf_generator/gen_pdf.php
  config.admPanel = 0
	config.xhtml_cleaning = 0
	config.USERNAME_substToken =
	config.ftu = 0
	config.disableCharsetHeader = 1
	config.prefixLocalAnchors = 0
	
# 50 = CONTENT
# 50 < styles.content.get
# 50.userFunc = tx_templavoila_pi1->main_page

50 = USER
50.userFunc = tx_templavoila_pi1->main_page
}

Das Resultat ist folgendes:

PRINT
Die Druckansicht wird zwar angezeig, aber leider kann ich nicht definieren, welche Inhalte ich will. Ich erhalte also die komplette Seite nochmals (inkl. Formatierungen) einfach mit einer Überschrift: "Druckansicht".

PDF
erhalte ich folgende Fehlermeldung:

HTMLDOC Problem:
Htmldoc produced no pdf-output.
Commandline:

/home/httpd/vhosts/regionalnachrichten.ch/httpdocs -t pdf13 --webpage -f /home/httpd/vhosts/regionalnachrichten.ch/httpdocs/typo3temp/hd_3YyuA9 - 2>/home/httpd/vhosts/regionalnachrichten.ch/httpdocs/typo3temp/se_K0VQYq

This is the (stderr) output of the htmldoc command without the htmldoc_append parameters:
If you see no errors here please check your htmldoc_append parameters too.

sh: line 1: /home/httpd/vhosts/regionalnachrichten.ch/httpdocs: is a directory

Bitte helft mir!!! Ich weiss echt nicht mehr wass ich noch versuchen könnte.

Gruss
GreenBanana

greenbanana ·

Hallo waldosparding,

erstmals vielen herzlichen Dank für deine Hilfe.

Ich werde mich mal schlau machen und nach "print=1" suchen. Doch was um Himmelswillen ist FTB für eine Abkürzung. Sorry, bin ja auch nicht mer der grösste Anfänger, aber kann ich jetzt gar nicht einordnen. :o

Gruss
GreenBanana

greenbanana ·

---jetzt hats geklappt--- werde bei gelegenheit das Tut noch etwas verständlicher schreiben.....

Template kopieren
index_news.html -> index_newsPRINT.html

News-Template
Update mapping -> Modify DS / TO -> alle Mappings entfernen die bei der Printseite nicht erwünscht sind. -> Save as -> "News-Template PRINT-TEMP"

News-Template PRINT (editieren)
Make this a sub-template of:-> News-Template
File reference: fileadmin/templates/index_newsPRINT.html
Select a type of rendering: Print friendly

News-Template PRINT [Template]
Update Mappings -> save -> fertig

jenny79 ·

was für ein news template ist das?
dein template von tt_news?
Oder irgendein page template..

Stehe vor dem selben Problem und komme nicht weiter...

Lg
Jenny

jenny79 ·

Super!
hat sehr gut funktioniert , danke!
Ausser bei meinen News bekomme ich die Fehlermeldung, keine news id Übergeben!

Hast du eine Ahnung was ich ändern muss um das zu beheben?
Lg
Jenny

greenbanana ·

Hallo Jenny,

Hier mein TypoScript:

temp.print = COA
temp.print {
10 = TEXT
10.value = <img src="fileadmin/templates/images/icons/print.gif" alt="Diese Seite drucken" border="0" /> Druckansicht
stdWrap.wrap = | 
stdWrap.typolinkno_cache = 1
stdWrap.typolink.target = print
stdWrap.typolink.ATagParams = target = _blank
stdWrap.typolink.parameter.cObject = COA
stdWrap.typolink.parameter.cObject {
   
        5 = TEXT
        5.data = page:uid
        5.wrap = index.php?id=|
        5.required = 1

        10 = TEXT
        10.value = &no_cache=1
       
        20 = TEXT
        20.data = GPvar : L
        20.wrap = &L=|
        20.required = 1
       
        30 = TEXT
        30.data = GPvar : tx_ttnews | backPid
        30.wrap = &tx_ttnews[backPid]=|
        30.required = 1
       
        40 = TEXT
        40.data = GPvar : tx_ttnews | tt_news
        40.wrap = &tx_ttnews[tt_news]=|
        40.required = 1
       
        50 = TEXT
        50.data = GPvar : cHash
        50.wrap = &cHash=|
        50.required = 1
       
        60 = TEXT
        60.value = &print=1
    }
}
lib.footer < temp.print

Damit sollte es dann auch mit der Parameterübergabe funktionieren für die tt_news.

Gruss
GreenBanana

jenny79 ·

Jetzt funktioniert alles super!
Allerdings bringt der hr tag in meinen news, den Drucker dazu nach dem hr tag immer einen neue Seite anzufangen, das heisst ich bekomme beim ausdrucken immer einen Seite pro teaser!!
Das ist natürlich nicht so toll!!1

Weisst du wie man das ändern knn!

Vielleicht gibt es eine Möglichkeit den hr tag zu ersetzten, ich denke der ist zum teilen der teasernachrichten eigentlich unerlässlich!

lg

jenny

greenbanana ·

Dann entferene ihn doch einfach mal in deinem News-Template.

Oder verstehe ich da was falsch?

Oder gibt es einen Link wo ich mir das mal anschauen kann?

jenny79 ·

Mein Fehler!
Hatte gedacht das der tag gebraucht wird, war aber nicht so!

Vielen Vielen Dank!!
Warst mir echt eine super Hilfe!

Lg
Jenny

flashsilver ·

hallo greenbanane hab das gleiche problem, hab dein quellcode für TS kopiert, aber funkt leider nicht. Der link für die Druckansicht ist bei mir:
http://www.test.de/<a href= Was ja nciht so toll ist

Hab vorher das hier asu der FTB genommen, aber da hat ich das gleiche Problem wie Jenny gehabt mit der News-id #paralyzed#

Was kann ich da tun?

@jenny79 benutzt du noch die Extension Make Printlink?

greenbanana ·

Also mit diesem TS funkts:

temp.print = COA
temp.print {
10 = TEXT
10.value = <img src="fileadmin/templates/images/icons/print.gif" alt="Diese Seite drucken" border="0" /> Druckansicht
stdWrap.wrap = | 
stdWrap.typolinkno_cache = 1
stdWrap.typolink.target = print
stdWrap.typolink.ATagParams = target = _blank
stdWrap.typolink.parameter.cObject = COA
stdWrap.typolink.parameter.cObject {
   
        5 = TEXT
        5.data = page:uid
        5.wrap = index.php?id=|
        5.required = 1

        10 = TEXT
        10.value = &no_cache=1
       
        20 = TEXT
        20.data = GPvar : L
        20.wrap = &L=|
        20.required = 1
       
        30 = TEXT
        30.data = GPvar : tx_ttnews | backPid
        30.wrap = &tx_ttnews[backPid]=|
        30.required = 1
       
        40 = TEXT
        40.data = GPvar : tx_ttnews | tt_news
        40.wrap = &tx_ttnews[tt_news]=|
        40.required = 1
       
        50 = TEXT
        50.data = GPvar : cHash
        50.wrap = &cHash=|
        50.required = 1
       
        60 = TEXT
        60.value = &print=1
    }
}
lib.footer < temp.print

Wenn du einen Link erhältst in der Form von www.test.de/<a href= würde ich mir den TS-Code nochmals genau angschauen. Dann wird da was ziemlich falsch zusammengesetzt bei Dir...

Gruss

Winddancer ·

Hallo Leute,

ich brauche Hilfe.

Ich will exakt diesen Printlink nachbauen und es klappt auch alles wunderbar. Ich habe mir auch das FTB durchgelesen, ABER das was ich nicht finde, ist die Einstellung im TO in Templavoila.

Hier aus dem FTB:
Select the type of rendering to “Printer Friendly” - this will instruct TemplaVoila to use this TO record if the “&print=1” parameter is set and the main template will be used otherwise.

Diese Option wird bei mir aber nicht angezeigt. Ergo baut er mir zwar den Link zusammen, aber zeigt mir nicht das richtige TV Template an!

Wo muss ich das einstellen? Ich finds net... 😢

suntzu ·

Hi,

laut FTB sollst Du ein neues TO anlegen und das machst Du, indem du auf das Modul Liste und dann auf Deinen Storage Folder gehst. Rechts werden ja dann die TOs und DOs aufgelistet. Bei den TOs oben neben der Überschrift "Titel" auf das "+"-Symbol für "Datensatz anlegen" gehen. Dann erscheint ein neues Formular, wo Du unter anderem bei "Dies ist eine Untervorlage von" ein Template auswählen kannst. Sobald
Du das getan hast erscheint ein Popup mit der Meldung, dass sich die Eingabefelder
ändern werden. Dieses einfach bestätigen, was zur Folge hat, dass Du nun ein neues Feld namens "Art der Darstellung" hast, was dem "Select a type of rendering" entspricht.

Winddancer ·

glaubt mans??? das wars! 😉 Tausend Dank!!!
Ich hatte natürlich nicht definiert, dass es sich um eine Untervorlage handelt. Und siehe da... da ist die Option!!!

thx again!