[TYPO3-german] Ein FCE um PDFs anzuzeigen

Stephan Schuler Stephan.Schuler at netlogix.de
Thu Jul 8 12:17:56 CEST 2010


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Hallo zusammen.


Mindestens die Templavoila-Version die ich auf die Schnelle gefunden habe erlaubt kein Mapping in "embed".

Ich habe ein simples HTML-Konstrukt mit einem BODY und einem DIV#pdf-pseudo-frame verwendet. Das kann ruhig ein Einzeiler sein:
<body><div id="pdf-pseudo-frame"></body>

ROOT habe ich inner auf BODY gemapt, dann ein EL outer auf das DIV.

Zunächst habe ich das das EL als "Plain input field" verwendet. Speichern und schließen.

Dann die Data-Structure des gerade erzeugten TV-Templates bearbeiten (Edit-Button, es geht das TCEforms für den Datastructure-Record auf, man sieht also das DS-XML).

Aus dem automatisch erzeugten 10=TEXT habe ich folgendes gemacht:
        <TypoScript><![CDATA[
                10 = TEXT
                10.current = 1
                10.wrap = <embed src="uploads/|" width="100%" height="500px"></embed>
        ]]></TypoScript>
Die CDATA-Klammern sind wichtig und durch mich hinzugekommen.

Anschließend das <HSC type="integer"> von 1 auf 0 setzen -- HTML-Special-Chars brauchen wir hier nicht.

Jetzt noch im TCEforms-Teil von <type>input</type> auf "Dateiauswahl" umstellen:
        <config type="array">
                <type>group</type>
                <internal_type >file</internal_type>
                <uploadfolder>uploads</uploadfolder>
                <allowed>pdf</allowed>
                <size>4</size>
                <maxitems>1</maxitems>
        </config>

Ab jetzt steht im FCE-Backend ein File-Selektor zur Verfügung der sowohl interne Files auswählen als auch neue hochladen lässt. Zielverzeichnis ist "uploads". Wer das vergisst hat absolute Pfade zu den Dateien.

Um die Sache "schön" zu machen könnte man das 10=TEXT jetzt noch in ein 10<lib.pdffce umwandeln und das Konstrukt in einen normalen Typoscript-Record auslagern. Dadurch wird das Element ein Stück einfacher konfigurierbar und wenn die 500px mal nicht mehr zum Layout passen kann man im TS-Record drehen anstatt den TV-Datensatz umbauen zu müssen.

Je nach Templavoila-Version muss man hier beim "Update Mapping" allerdings aufpassen was nach dem Speichervorgang in der Datastructure steht. Einige TV-Versionen überschreiben sowas gerne mal.


Grüße,




Stephan Schuler
Web-Entwickler

Telefon: +49 (911) 539909 - 0
E-Mail: Stephan.Schuler at netlogix.de
Internet: http://media.netlogix.de

- --
netlogix GmbH & Co. KG
IT-Services | IT-Training | Media
Andernacher Straße 53 | 90411 Nürnberg
Telefon: +49 (911) 539909 - 0 | Fax: +49 (911) 539909 - 99
E-Mail: mailto:info at netlogix.de | Internet: http://www.netlogix.de/

netlogix GmbH & Co. KG ist eingetragen am Amtsgericht Nürnberg (HRA 13338)
Persönlich haftende Gesellschafterin: netlogix Verwaltungs GmbH (HRB 20634)
Umsatzsteuer-Identifikationsnummer: DE 233472254
Geschäftsführer: Stefan Buchta, Matthias Schmidt

- -----Ursprüngliche Nachricht-----


Von: typo3-german-bounces at lists.typo3.org [mailto:typo3-german-bounces at lists.typo3.org] Im Auftrag von Koller Michel
Gesendet: Donnerstag, 8. Juli 2010 11:48
An: typo3-german at lists.typo3.org
Betreff: Re: [TYPO3-german] Ein FCE um PDFs anzuzeigen


"Chris Bernhard" <chris at dreamride.de> schrieb im Newsbeitrag news:mailman.1.1278579572.17437.typo3-german at lists.typo3.org...
> Am 08.07.2010 10:38, schrieb Koller Michel:
>> Guten Tag
>>
>> Ich möchte ein FCE mit Templavoila erstellen mit eigentlich nur
>> diesem
>> Code:
>>
>> <body>
>> <embed src="/fileadmin/Kundenordner/muster/testpdf.pdf" width="100%"
>> height="500px"></embed>
>> </body>
>>
>> dabei stelle ich mir das FCE so vor das es einfach einen uploadlink
>> hat wo ich lokal das PDF auswählen kann, es hochgeladen und dann
>> angezeigt wird.
>>
>> Welchen Ansatz sollte ich da verfolgen?
>> Ich denke den Link irgendwie als Attribut zu mappen, ein
>> Pseudolinkfeld auch noch mappen und das irgendwie im XML
>> zusammenraufen?
>>
>> Ist das der richtige Ansatz?
>>
>> Bin sehr froh über einen kleinen Schupps
>>
>> vielen Dank
>> M.Koller
>>
>>
>>
>
> Hi Michael,
>
> ich denke, Du benötigst fürs Mapping nur diesen Code:
>
> <div>
> <embed src="/fileadmin/Kundenordner/muster/testpdf.pdf" width="100%"
> height="500px"></embed>
> </div>
>
> Das body-tag wird aber wahrscheinlich sowieso als root gemappt und
> erscheint nicht im Quellcode.
>
> Eine direkte Uploadfunktion kannst Du in TV-nicht nachbilden.
>
> Mappe aber den Link einfach als Attribut und so stellst Du dem User
> über das Backend beim Aussuchen des PDF's ja automatisch eine
> Uploadfunktion zur Verfügung.
>
> Viele Grüße vom Chris


Vielen Dank für die Antwort Chris

Kann beim Code :
<div>
<embed src="/fileadmin/Kundenordner/muster/testpdf.pdf" width="100%"
height="500px"></embed>
</div>

das "embed" nicht mappen, hm ich versuche nun ein normales Link element zu mappen und im XML den Link durch das embed zu ersetzen.?
Ärgerlich die einzige Homepage mit einem beitrag zu diesem thema ist gesperrt :-(

viele grüsse
Michel




-----BEGIN PGP SIGNATURE-----
Version: PGP Universal 3.0.0 (Build 2881)
Charset: Windows-1252

wpUDBQFMNaXXpp0IwsibV8MBCHsUA/40HI8Zm7a/3usN2QUdeOFgHX+nQUJIlI4/
aRl7iT3USwlQ1wQ/mdwBSQWfSAM1kI099/pCqGNNm717qNd7SoCRKmFBHz6Q/tsS
pKzqh9sO43OZPnlFiuMpoYXe39NUU7DjxWlBqYgzynwIMJWV+/FHZAg7nUQYXbR7
/mkPKsueuQ==
=n2mE
-----END PGP SIGNATURE-----


More information about the TYPO3-german mailing list