<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>TYPO3 Blogger &#187; TypoScript</title>
	<atom:link href="http://typo3blogger.de/category/typoscript/feed/" rel="self" type="application/rss+xml" />
	<link>http://typo3blogger.de</link>
	<description>TYPO3 News, Development &#38; Insider Infos</description>
	<lastBuildDate>Thu, 29 Jul 2010 13:28:24 +0000</lastBuildDate>
	<language>de-de</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>powermail Trickkiste Teil 1 &#8211; User Daten anzeigen</title>
		<link>http://typo3blogger.de/powermail-trickkiste-teil-1-user-daten-anzeigen/</link>
		<comments>http://typo3blogger.de/powermail-trickkiste-teil-1-user-daten-anzeigen/#comments</comments>
		<pubDate>Tue, 22 Jun 2010 11:37:24 +0000</pubDate>
		<dc:creator>Alex Kellner</dc:creator>
				<category><![CDATA[Extension]]></category>
		<category><![CDATA[TypoScript]]></category>
		<category><![CDATA[powermail]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=4388</guid>
		<description><![CDATA[Ich werde oft nach der einen oder anderen Individualisierung eines powermail Formulares gefragt und möchte hier ein paar Tipps aufschreiben. Zum einen habe ich diese dann selber griffbereit und zum anderen kann diese sicher auch jemand anderes gut benötigen. Im Teil 1 geht es um das Wiederverwenden der vom User eingegebenen Daten. Über TypoScript oder [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p><a href="http://typo3.org/extensions/repository/view/powermail/current/" target="_blank"><img src="http://typo3.org/typo3temp/tx_terdoc/documentscache/p/o/powermail-1.5.3/docbook/pictures/100000000000011100000111E8AF27C9.gif" align="left" alt="TYPO3 Extension powermail" width="100" /></a> Ich werde oft nach der einen oder anderen Individualisierung eines powermail Formulares gefragt und möchte hier ein paar Tipps aufschreiben. Zum einen habe ich diese dann selber griffbereit und zum anderen kann diese sicher auch jemand anderes gut benötigen.<br />
Im Teil 1 geht es um das Wiederverwenden der vom User eingegebenen Daten. Über TypoScript oder PHP kein Problem&#8230;<br />
<span id="more-4388"></span></p>
<p><strong>Teil 1 &#8211; Daten aus einem Formular an beliebiger Stelle anzeigen</strong></p>
<p><strong>Erklärung</strong><br />
Sobald ein powermail Formular abgesendet wurde (egal ob mit aktivierter oder deaktivierter Bestätigungsseite), werden die Daten in der Session hinterlegt. Über php oder über TypoScript kommt man nun ganz einfach an diese Daten heran. Im nachfolgenden Beispiel wollen wir an den Wert des Feldes mit der UID 123 herankommen. In dem Zusammenhang nehmen wir an, dass das powermail Formular im Seiteninhalt (Contentelement) mit der UID 45 liegt.</p>
<p><strong>Beispiel TypoScript:</strong></p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;">daten <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
daten<span style="color: #339933; font-weight: bold;">.</span>data <span style="color: #339933; font-weight: bold;">=</span> TSFE<span style="color: #339933; font-weight: bold;">:</span><span style="color: #FF6FEA;">fe_user</span><span style="color: #339933; font-weight: bold;">|</span>sesData<span style="color: #339933; font-weight: bold;">|</span>powermail_45<span style="color: #339933; font-weight: bold;">|</span>uid123</pre></div></div>

<p><strong>Beispiel PHP:</strong></p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #FF6FEA;">$value</span> <span style="color: #339933;">=</span> <span style="color: #FF6FEA;">$GLOBALS</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'TSFE'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">-&gt;</span><span style="color: #909090;">fe_user</span><span style="color: #339933;">-&gt;</span><span style="color: #909090;">sesData</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'powermail_45'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'uid123'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span></pre></div></div>

<p><strong>Anwendungsfall:</strong><br />
Die Anzeige der eingegebenen Daten kann z.B. interessant in einer Druckversion sein. Auf einer neuen Seite wollen wir lediglich eine weiße Ausgabe mit den Daten aus dem Formular. Das Ganze könnte so aussehen:</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>form <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">COA</span>
<span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>form <span style="color: #009900;">&#123;</span>
  <span style="color: #cc0000;">10</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
  10<span style="color: #339933; font-weight: bold;">.</span>noTrimWrap <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #339933; font-weight: bold;">|</span>Vorname<span style="color: #339933; font-weight: bold;">:</span> <span style="color: #339933; font-weight: bold;">|</span><span style="color: #3366CC;">&lt;br /&gt;</span><span style="color: #339933; font-weight: bold;">|</span>
  10<span style="color: #339933; font-weight: bold;">.</span>data <span style="color: #339933; font-weight: bold;">=</span> TSFE<span style="color: #339933; font-weight: bold;">:</span><span style="color: #FF6FEA;">fe_user</span><span style="color: #339933; font-weight: bold;">|</span>sesData<span style="color: #339933; font-weight: bold;">|</span>powermail_45<span style="color: #339933; font-weight: bold;">|</span>uid1
  10<span style="color: #339933; font-weight: bold;">.</span><span style="font-weight: bold;">if</span><span style="color: #339933; font-weight: bold;">.</span>isTrue<span style="color: #339933; font-weight: bold;">.</span>data <span style="color: #339933; font-weight: bold;">=</span> TSFE<span style="color: #339933; font-weight: bold;">:</span><span style="color: #FF6FEA;">fe_user</span><span style="color: #339933; font-weight: bold;">|</span>sesData<span style="color: #339933; font-weight: bold;">|</span>powermail_45<span style="color: #339933; font-weight: bold;">|</span>uid1
&nbsp;
  <span style="color: #cc0000;">20</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
  20<span style="color: #339933; font-weight: bold;">.</span>noTrimWrap <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #339933; font-weight: bold;">|</span>Nachname<span style="color: #339933; font-weight: bold;">:</span> <span style="color: #339933; font-weight: bold;">|</span><span style="color: #3366CC;">&lt;br /&gt;</span><span style="color: #339933; font-weight: bold;">|</span>
  20<span style="color: #339933; font-weight: bold;">.</span>data <span style="color: #339933; font-weight: bold;">=</span> TSFE<span style="color: #339933; font-weight: bold;">:</span><span style="color: #FF6FEA;">fe_user</span><span style="color: #339933; font-weight: bold;">|</span>sesData<span style="color: #339933; font-weight: bold;">|</span>powermail_45<span style="color: #339933; font-weight: bold;">|</span>uid2
  20<span style="color: #339933; font-weight: bold;">.</span><span style="font-weight: bold;">if</span><span style="color: #339933; font-weight: bold;">.</span>isTrue<span style="color: #339933; font-weight: bold;">.</span>data <span style="color: #339933; font-weight: bold;">=</span> TSFE<span style="color: #339933; font-weight: bold;">:</span><span style="color: #FF6FEA;">fe_user</span><span style="color: #339933; font-weight: bold;">|</span>sesData<span style="color: #339933; font-weight: bold;">|</span>powermail_45<span style="color: #339933; font-weight: bold;">|</span>uid2
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #FF6FEA;">page</span> <span style="color: #339933; font-weight: bold;">&gt;</span>
<span style="color: #FF6FEA;">page</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">PAGE</span>
<span style="color: #FF6FEA;">page</span><span style="color: #339933; font-weight: bold;">.</span>10 <span style="color: #339933; font-weight: bold;">&lt;</span> <span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>form</pre></div></div>

<p><strong>Hinweis:</strong><br />
Wenn die Konstante clear.session in powermail aktiviert ist, wird die Session nach dem Absenden geleert. In diesem Fall kann man die Daten in der Regel über data=GP:tx_powermail_pi1|123 auslesen.</p>
<p><strong>TYPO3 Erweiterung powermail</strong><br />
Die TYPO3 Erweiterung <a href="http://typo3.org/extensions/repository/view/powermail/current/" target="_blank">powermail</a> ist eine umfangreiche Formularextension. Im Vergleich zu ähnlichen Plugins besteht der Unterschied vor allem darin, dass der Redakteur ein Formular erstellen und ändern können soll.</p>
<p>Wie immer freue ich mich übrigens über jeden Kommentar!</p>
<p>Gruß, Alex</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/powermail-trickkiste-teil-1-user-daten-anzeigen/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Mit TypoScript am Ende &#8211; userFunc hilft</title>
		<link>http://typo3blogger.de/mit-typoscript-am-ende-userfunc-hilft/</link>
		<comments>http://typo3blogger.de/mit-typoscript-am-ende-userfunc-hilft/#comments</comments>
		<pubDate>Tue, 15 Jun 2010 11:58:08 +0000</pubDate>
		<dc:creator>Alex Kellner</dc:creator>
				<category><![CDATA[TypoScript]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=4344</guid>
		<description><![CDATA[Wir haben auf typo3blogger bereits einige Beiträge die sich mit dem Einsatz von userFuncs in TypoScript und in conditions beschäftigen. Dennoch versuche ich das Thema einmal aus Sicht eines Beginners anhand eines konkreten Beispiels zu beleuchten. Mit TypoScript lassen sich bereits eine Menge Anforderungen abdecken, aber leider eben noch nicht alle. Ein paar spezielle Anforderungen, [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Wir haben auf typo3blogger bereits einige Beiträge die sich mit dem Einsatz von userFuncs in TypoScript und in conditions beschäftigen. Dennoch versuche ich das Thema einmal aus Sicht eines Beginners anhand eines konkreten Beispiels zu beleuchten.<br />
<span id="more-4344"></span><br />
Mit TypoScript lassen sich bereits eine Menge Anforderungen abdecken, aber leider eben noch nicht alle. Ein paar spezielle Anforderungen, die vielleicht in PHP einfach umzusetzen wären, vermisst man vielleicht regelmäßig (number_format(), stristr(), mktime(), str_replace(), &#8230;). In den beiden nachfolgenden Beispielen, versuche ich die Einbindung einer userFunc etwas transparenter zu machen.</p>
<p><strong>Beispiel 1 &#8211; Schritt 1:</strong><br />
Ein einfaches Beispiel wäre die Ausgabe des aktuellen Seitennamens an einem festen Marker.</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #aaa; font-style: italic;"># pagetitle output</span>
<span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>pageTitle <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
<span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>pageTitle<span style="color: #339933; font-weight: bold;">.</span>field <span style="color: #339933; font-weight: bold;">=</span> title
&nbsp;
<span style="color: #aaa; font-style: italic;"># output on marker </span><span style="color: #009900;">###PAGETITLE###</span>
<span style="color: #FF6FEA;">page</span><span style="color: #339933; font-weight: bold;">.</span>10<span style="color: #339933; font-weight: bold;">.</span>marks<span style="color: #339933; font-weight: bold;">.</span>PAGETITLE <span style="color: #339933; font-weight: bold;">&lt;</span> <span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>pageTitle</pre></div></div>

<p><strong>Beispiel 1 &#8211; Schritt 2:</strong><br />
Eventuell möchte man auf allen Seiten mit dem Namen &#8220;Detail&#8221; einen anderen Titel anzeigen. Mit TypoScript kein Problem (Die Zeile mit dem Output an dem Marker habe ich an dieser Stelle weggelassen &#8211; siehe oben).</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>pageTitle <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">CASE</span>
<span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>pageTitle <span style="color: #009900;">&#123;</span>
  key<span style="color: #339933; font-weight: bold;">.</span>field <span style="color: #339933; font-weight: bold;">=</span> title
&nbsp;
  default <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
  default<span style="color: #339933; font-weight: bold;">.</span>title <span style="color: #339933; font-weight: bold;">=</span> title
&nbsp;
  Detail <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
  Detail<span style="color: #339933; font-weight: bold;">.</span>value <span style="color: #339933; font-weight: bold;">=</span> Sie befinden sich innerhalb einer Detailansicht
<span style="color: #009900;">&#125;</span></pre></div></div>

<p><strong>Beispiel 1 &#8211; Schritt 3:</strong><br />
In unserem Fall wollen wir, sobald sich irgendwo im Titel das Wort &#8220;detail&#8221; befindet, immer eine andere Ausgabe haben. Ein paar Zeilen PHP im Zusammenhang mit einer userFunc helfen sofort. Die PHP-Funktion stristr() bietet sich an.</p>
<p>In unserer eigenen Funktion müssen wir drei Dinge bereitstellen:<br />
- Der zu überprüfende Text, der auch in den meisten Fällen zurückgegeben werden soll (außer bei &#8220;detail&#8221;)<br />
- Der zu suchende Begriff &#8211; in unserem Fall &#8220;detail&#8221;<br />
- Einen alternativen Text, falls der zu suchende Begriff gefunden wurde</p>
<p>Im nachfolgenden Beispiel wird zu Beginn mit includeLibs eine PHP Datei geladen, die unsere neue Funktion beinhaltet. Eine Funktion mit Namen stristrTypoScript() innerhalb einer Klasse user_misc wird direkt durch lib.pageTitle aufgerufen. Alle Werte innerhalb der userFunc (titleField, searchFor, foundText) stehen als einfaches Array in PHP zur Verfügung. Dabei fällt auf, dass sich searchFor von den beiden anderen Werten irgendwie unterscheidet:<br />
- titleField (stdWrap mit TEXT)<br />
- searchFor (String)<br />
- foundText (stdWrap mit TEXT)<br />
Bei titleField und foundText wird TypoScript nicht nur gelesen, sondern auch geparst und interpretiert, während bei searchFor lediglich ein Wert übergeben wird. Der Unterschied: Wir wollen die TypoScript Flexibilität auch bei titleField und bei foundText.</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #aaa; font-style: italic;"># include php file</span>
<span style="color: #FF6FEA;">includeLibs</span><span style="color: #339933; font-weight: bold;">.</span>user_misc <span style="color: #339933; font-weight: bold;">=</span> fileadmin<span style="color: #339933; font-weight: bold;">/</span><span style="color: #FF6FEA;">user_misc</span><span style="color: #339933; font-weight: bold;">.</span>php
&nbsp;
<span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>pageTitle <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">USER</span>
<span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>pageTitle <span style="color: #009900;">&#123;</span>
  <span style="color: #ed7d14;">userFunc</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #FF6FEA;">user_misc</span>-<span style="color: #339933; font-weight: bold;">&gt;</span>stristrTypoScript
  <span style="color: #ed7d14;">userFunc</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #aaa; font-style: italic;"># whole string</span>
    titleField <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
    titleField<span style="color: #339933; font-weight: bold;">.</span>field <span style="color: #339933; font-weight: bold;">=</span> title
&nbsp;
    <span style="color: #aaa; font-style: italic;"># keyword to search for</span>
    searchFor <span style="color: #339933; font-weight: bold;">=</span> detail
&nbsp;
    <span style="color: #aaa; font-style: italic;"># TypoScript if keyword found</span>
    foundText <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
    foundText<span style="color: #339933; font-weight: bold;">.</span>value <span style="color: #339933; font-weight: bold;">=</span> Sie befinden sich innerhalb einer Detailansicht
  <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Unsere PHP Datei mit Namen user_misc.php befindet sich im fileadmin Verzeichnis und hat nachfolgenden Inhalt.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #6666FF; font-weight: bold;">&lt;?php</span>
<span style="color: #6666FF; font-weight: bold;">class</span> user_misc <span style="color: #009900;">&#123;</span>
  <span style="color: #6666FF; font-weight: bold;">function</span> stristrTypoScript<span style="color: #009900;">&#40;</span><span style="color: #FF6FEA;">$content</span> <span style="color: #339933;">=</span> <span style="color: #3366CC;">''</span><span style="color: #339933;">,</span> <span style="color: #FF6FEA;">$conf</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #666666; font-style: italic;">// config</span>
    <span style="color: #990000;">global</span> <span style="color: #FF6FEA;">$TSFE</span><span style="color: #339933;">;</span>
    <span style="color: #FF6FEA;">$local_cObj</span> <span style="color: #339933;">=</span> <span style="color: #FF6FEA;">$TSFE</span><span style="color: #339933;">-&gt;</span><span style="color: #909090;">cObj</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// cObject</span>
    <span style="color: #FF6FEA;">$conf</span> <span style="color: #339933;">=</span> <span style="color: #FF6FEA;">$conf</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'userFunc.'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// ts config</span>
    <span style="color: #FF6FEA;">$searchFor</span> <span style="color: #339933;">=</span> <span style="color: #FF6FEA;">$conf</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'searchFor'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// get string</span>
    <span style="color: #FF6FEA;">$titleField</span> <span style="color: #339933;">=</span> <span style="color: #FF6FEA;">$local_cObj</span><span style="color: #339933;">-&gt;</span><span style="color: #909090;">cObjGetSingle</span><span style="color: #009900;">&#40;</span><span style="color: #FF6FEA;">$conf</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'titleField'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #FF6FEA;">$conf</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'titleField.'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// stdWrap for title</span>
    <span style="color: #FF6FEA;">$foundText</span> <span style="color: #339933;">=</span> <span style="color: #FF6FEA;">$local_cObj</span><span style="color: #339933;">-&gt;</span><span style="color: #909090;">cObjGetSingle</span><span style="color: #009900;">&#40;</span><span style="color: #FF6FEA;">$conf</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'foundText'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #FF6FEA;">$conf</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'foundText.'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// stdWrap for alternative Text</span>
&nbsp;
    <span style="color: #666666; font-style: italic;">// let's go</span>
    <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">stristr</span><span style="color: #009900;">&#40;</span><span style="color: #FF6FEA;">$titleField</span><span style="color: #339933;">,</span> <span style="color: #FF6FEA;">$searchFor</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span> <span style="color: #666666; font-style: italic;">// if keyword found</span>
      <span style="color: #b1b100;">return</span> <span style="color: #FF6FEA;">$foundText</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// return alternative text</span>
    <span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #009900;">&#123;</span> <span style="color: #666666; font-style: italic;">// keyword not found</span>
      <span style="color: #b1b100;">return</span> <span style="color: #FF6FEA;">$titleField</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// return title</span>
    <span style="color: #009900;">&#125;</span>
  <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #F5F5DC; font-weight: bold;">?&gt;</span></pre></div></div>

<p><strong>Beispiel 2 &#8211; Schritt 1:</strong><br />
Ein weit einfacheres Beispiel zeige ich im Zusammenhang mit number_format. Eine Zahl soll mit Hilfe einer userFunc formatiert zurückgegeben werden (wie es z.B. die Warenkorb Extension <a href="http://typo3.org/extensions/repository/view/wt_cart/current/" target="_blank">wt_cart</a> macht). Wir wollen also eine Währung anzeigen &#8211; Anstatt 100 die Ausgabe 100,00 € oder eben anstatt 23.5 die Ausgabe 23,50 €.</p>
<p>Ein Feldinhalt könnte als Dezimalzahl (mit Punkt statt Komma) vorliegen und würde eben als solcher wieder ausgegeben werden.</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;">zahl <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
zahl<span style="color: #339933; font-weight: bold;">.</span>field <span style="color: #339933; font-weight: bold;">=</span> number
<span style="color: #aaa; font-style: italic;"># Output: 23.4</span></pre></div></div>

<p><strong>Beispiel 2 &#8211; Schritt 2:</strong><br />
Über einen Wrap können wir ein Euro Zeichen hinten anfügen.</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;">zahl <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
zahl<span style="color: #339933; font-weight: bold;">.</span>field <span style="color: #339933; font-weight: bold;">=</span> number
zahl<span style="color: #339933; font-weight: bold;">.</span>field<span style="color: #339933; font-weight: bold;">.</span>wrap <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #339933; font-weight: bold;">|</span>&amp;nbsp;&amp;euro;
<span style="color: #aaa; font-style: italic;"># Output: 23.4 €</span></pre></div></div>

<p><strong>Beispiel 2 &#8211; Schritt 3:</strong><br />
Nun zur Formatierung der Ausgabe über die PHP Funktion number_format().</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #FF6FEA;">includeLibs</span><span style="color: #339933; font-weight: bold;">.</span>user_misc <span style="color: #339933; font-weight: bold;">=</span> fileadmin<span style="color: #339933; font-weight: bold;">/</span><span style="color: #FF6FEA;">user_misc</span><span style="color: #339933; font-weight: bold;">.</span>php
&nbsp;
zahl <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">USER</span>
zahl<span style="color: #339933; font-weight: bold;">.</span><span style="color: #ed7d14;">userFunc</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #FF6FEA;">user_misc</span>-<span style="color: #339933; font-weight: bold;">&gt;</span>numberFormatTypoScript
zahl <span style="color: #009900;">&#123;</span>
  number <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
  number<span style="color: #339933; font-weight: bold;">.</span>field <span style="color: #339933; font-weight: bold;">=</span> number
<span style="color: #009900;">&#125;</span>
<span style="color: #aaa; font-style: italic;"># Output: 23,40</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #6666FF; font-weight: bold;">&lt;?php</span>
  <span style="color: #6666FF; font-weight: bold;">class</span> user_misc <span style="color: #009900;">&#123;</span>
    <span style="color: #6666FF; font-weight: bold;">function</span> numberFormatTypoScript<span style="color: #009900;">&#40;</span><span style="color: #FF6FEA;">$content</span> <span style="color: #339933;">=</span> <span style="color: #3366CC;">''</span><span style="color: #339933;">,</span> <span style="color: #FF6FEA;">$conf</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
      <span style="color: #990000;">global</span> <span style="color: #FF6FEA;">$TSFE</span><span style="color: #339933;">;</span>
      <span style="color: #FF6FEA;">$local_cObj</span> <span style="color: #339933;">=</span> <span style="color: #FF6FEA;">$TSFE</span><span style="color: #339933;">-&gt;</span><span style="color: #909090;">cObj</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// cObject</span>
      <span style="color: #FF6FEA;">$conf</span> <span style="color: #339933;">=</span> <span style="color: #FF6FEA;">$conf</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'userFunc.'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// TS configuration</span>
&nbsp;
      <span style="color: #FF6FEA;">$number</span> <span style="color: #339933;">=</span> <span style="color: #FF6FEA;">$local_cObj</span><span style="color: #339933;">-&gt;</span><span style="color: #909090;">cObjGetSingle</span><span style="color: #009900;">&#40;</span><span style="color: #FF6FEA;">$conf</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'number'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #FF6FEA;">$conf</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'number.'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// get number</span>
      <span style="color: #b1b100;">return</span> <span style="color: #990000;">number_format</span><span style="color: #009900;">&#40;</span><span style="color: #FF6FEA;">$number</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">','</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'.'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
  <span style="color: #009900;">&#125;</span>
<span style="color: #F5F5DC; font-weight: bold;">?&gt;</span></pre></div></div>

<p><strong>Beispiel 2 &#8211; Schritt 4:</strong><br />
Dummerweise lässt sich eine userFunc nicht so einfach wrappen, weswegen wir für unser Euro Zeichen noch ein COA außen herumpacken sollten</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #FF6FEA;">includeLibs</span><span style="color: #339933; font-weight: bold;">.</span>user_misc <span style="color: #339933; font-weight: bold;">=</span> fileadmin<span style="color: #339933; font-weight: bold;">/</span><span style="color: #FF6FEA;">user_misc</span><span style="color: #339933; font-weight: bold;">.</span>php
&nbsp;
zahl <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">COA</span>
zahl <span style="color: #009900;">&#123;</span>
  wrap <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #339933; font-weight: bold;">|</span>&amp;nbsp;&amp;euro;
  <span style="color: #cc0000;">10</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">USER</span>
  10<span style="color: #339933; font-weight: bold;">.</span><span style="color: #ed7d14;">userFunc</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #FF6FEA;">user_misc</span>-<span style="color: #339933; font-weight: bold;">&gt;</span>numberFormatTypoScript
  10<span style="color: #339933; font-weight: bold;">.</span><span style="color: #ed7d14;">userFunc</span> <span style="color: #009900;">&#123;</span>
    number <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
    number<span style="color: #339933; font-weight: bold;">.</span>field <span style="color: #339933; font-weight: bold;">=</span> number
  <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #aaa; font-style: italic;"># Output: 23,40 €</span></pre></div></div>

<p><strong>Beispiel 2 &#8211; Schritt 5:</strong><br />
Das I-Tüpfelchen wäre natürlich, wenn man die Parameter der Funktion number_format nicht hart in der userFunc hinterlegen würde, sondern auch noch über TypoScript verfügbar macht:</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #FF6FEA;">includeLibs</span><span style="color: #339933; font-weight: bold;">.</span>user_misc <span style="color: #339933; font-weight: bold;">=</span> fileadmin<span style="color: #339933; font-weight: bold;">/</span><span style="color: #FF6FEA;">user_misc</span><span style="color: #339933; font-weight: bold;">.</span>php
&nbsp;
zahl <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">COA</span>
zahl <span style="color: #009900;">&#123;</span>
  wrap <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #339933; font-weight: bold;">|</span>&amp;nbsp;&amp;euro;
  <span style="color: #cc0000;">10</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">USER</span>
  10<span style="color: #339933; font-weight: bold;">.</span><span style="color: #ed7d14;">userFunc</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #FF6FEA;">user_misc</span>-<span style="color: #339933; font-weight: bold;">&gt;</span>numberFormatTypoScript
  10<span style="color: #339933; font-weight: bold;">.</span><span style="color: #ed7d14;">userFunc</span> <span style="color: #009900;">&#123;</span>
    number <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
    number<span style="color: #339933; font-weight: bold;">.</span>field <span style="color: #339933; font-weight: bold;">=</span> number
&nbsp;
    decimal <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #cc0000;">2</span>
    dec_point <span style="color: #339933; font-weight: bold;">=</span> ,
    thousands_sep <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #339933; font-weight: bold;">.</span>
  <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #aaa; font-style: italic;"># Output: 23,40 €</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #6666FF; font-weight: bold;">&lt;?php</span>
  <span style="color: #6666FF; font-weight: bold;">class</span> user_misc <span style="color: #009900;">&#123;</span>
    <span style="color: #6666FF; font-weight: bold;">function</span> numberFormatTypoScript<span style="color: #009900;">&#40;</span><span style="color: #FF6FEA;">$content</span> <span style="color: #339933;">=</span> <span style="color: #3366CC;">''</span><span style="color: #339933;">,</span> <span style="color: #FF6FEA;">$conf</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
      <span style="color: #990000;">global</span> <span style="color: #FF6FEA;">$TSFE</span><span style="color: #339933;">;</span>
      <span style="color: #FF6FEA;">$local_cObj</span> <span style="color: #339933;">=</span> <span style="color: #FF6FEA;">$TSFE</span><span style="color: #339933;">-&gt;</span><span style="color: #909090;">cObj</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// cObject</span>
      <span style="color: #FF6FEA;">$conf</span> <span style="color: #339933;">=</span> <span style="color: #FF6FEA;">$conf</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'userFunc.'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// TS configuration</span>
&nbsp;
      <span style="color: #FF6FEA;">$number</span> <span style="color: #339933;">=</span> <span style="color: #FF6FEA;">$local_cObj</span><span style="color: #339933;">-&gt;</span><span style="color: #909090;">cObjGetSingle</span><span style="color: #009900;">&#40;</span><span style="color: #FF6FEA;">$conf</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'number'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #FF6FEA;">$conf</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'number.'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// get number</span>
      <span style="color: #b1b100;">return</span> <span style="color: #990000;">number_format</span><span style="color: #009900;">&#40;</span><span style="color: #FF6FEA;">$number</span><span style="color: #339933;">,</span> <span style="color: #FF6FEA;">$conf</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'decimal'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #FF6FEA;">$conf</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'dec_point'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #FF6FEA;">$conf</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'thousands_sep'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
  <span style="color: #009900;">&#125;</span>
<span style="color: #F5F5DC; font-weight: bold;">?&gt;</span></pre></div></div>

<p><strong>Links zum Thema</strong></p>
<ul>
<li><a href="/userfunc-benutzen/">userFunc benutzen auf typo3blogger</a></li>
<li><a href="/condition-mit-userfunc/">userFunc für conditions</a></li>
<li><a href="http://www.typo3wizard.com/de/snippets/allgemeine-probleme-und-loesungen/einfache-userfunc.html">userFuncs bei TYPO3 Wizard</a></li>
<li><a href="http://www.slideshare.net/einpraegsam/typoscript-if-cas-case-conditions">TypoScript If, CASE, Conditions</a></li>
</ul>
<p>Freue mich immer über jeden Kommentar&#8230;</p>
<p>Gruß aus dem verregneten München, Alex</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/mit-typoscript-am-ende-userfunc-hilft/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>TYPO3 E-Book veröffentlicht</title>
		<link>http://typo3blogger.de/typo3-e-book-veroeffentlicht/</link>
		<comments>http://typo3blogger.de/typo3-e-book-veroeffentlicht/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 23:05:26 +0000</pubDate>
		<dc:creator>Tim Lochmüller</dc:creator>
				<category><![CDATA[TYPO3]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[TypoScript]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=3966</guid>
		<description><![CDATA[Thomas hat in seinem Webworking Blog (ehemalig Fachinformatiker Blog) ein TYPO3 E-Book veröffentlicht, indem er zahlreiche historische Blogeinträge in überarbeitet Form zusammen gestellt hat. Ein interessanter Ansatz, wobei ich bin gespannt, wie das mit Aktualisierungen laufen wird. Evtl. macht für so etwas ein etwas offeneres Werk Sinn: Wiki? Ansonsten vielen Dank für die Zusammenstellung von [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Thomas hat in seinem <a href="http://www.webworking-blog.de/typo3/typo3-e-book/" target="_blank">Webworking Blog</a> (ehemalig Fachinformatiker Blog) ein TYPO3 E-Book veröffentlicht, indem er zahlreiche historische Blogeinträge in überarbeitet Form zusammen gestellt hat. Ein interessanter Ansatz, wobei ich bin gespannt, wie das mit Aktualisierungen laufen wird. Evtl. macht für so etwas ein etwas offeneres Werk Sinn: Wiki? Ansonsten vielen Dank für die Zusammenstellung von TYPO3 Einstiegshilfen, TypoScript und TYPO3 Tipps.</p>
<p>via <a href="http://typo3weblog.de/2010/02/08/kostenloses-ebook-zu-typo3/" target="_blank">TYPO3Weblog.de</a></p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/typo3-e-book-veroeffentlicht/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Sprachwechsler mit TypoScript und Domainwechsel</title>
		<link>http://typo3blogger.de/sprachwechsler-mit-typoscript-und-domainwechsel/</link>
		<comments>http://typo3blogger.de/sprachwechsler-mit-typoscript-und-domainwechsel/#comments</comments>
		<pubDate>Sat, 09 Jan 2010 14:15:39 +0000</pubDate>
		<dc:creator>Bernhard Berger</dc:creator>
				<category><![CDATA[TYPO3]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[TypoScript]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=3868</guid>
		<description><![CDATA[Ich bin heute vor der Herausforderung gestanden einen Sprachwechsler mit reinem TypoScript zu implementieren, welcher sowohl einen Active-State besitzt, als auch auf die Domain der jeweiligen Sprache wechselt. Die Lösung möchte ich euch natürlich nicht vorenthalten und habe ein kleines Copy-and-Paste-Snippet zusammengestellt. &#160; # Sprach-Links erzeugen &#160; temp.langMenuDE = COA temp.langMenuDE &#123; stdWrap.wrap = &#60;li&#62;&#124;&#60;/li&#62; [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Ich bin heute vor der Herausforderung gestanden einen Sprachwechsler mit reinem TypoScript zu implementieren, welcher sowohl einen Active-State besitzt, als auch auf die Domain der jeweiligen Sprache wechselt. Die Lösung möchte ich euch natürlich nicht vorenthalten und habe ein kleines Copy-and-Paste-Snippet zusammengestellt.</p>
<p><span id="more-3868"></span></p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;">&nbsp;
<span style="color: #aaa; font-style: italic;"># Sprach-Links erzeugen</span>
&nbsp;
<span style="color: #FF6FEA;">temp</span><span style="color: #339933; font-weight: bold;">.</span>langMenuDE <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">COA</span>
<span style="color: #FF6FEA;">temp</span><span style="color: #339933; font-weight: bold;">.</span>langMenuDE <span style="color: #009900;">&#123;</span>
  <span style="font-weight: bold;">stdWrap</span><span style="color: #339933; font-weight: bold;">.</span>wrap <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #3366CC;">&lt;li&gt;</span><span style="color: #339933; font-weight: bold;">|</span><span style="color: #3366CC;">&lt;/li&gt;</span>
&nbsp;
  <span style="color: #cc0000;">10</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
  10<span style="color: #339933; font-weight: bold;">.</span>value <span style="color: #339933; font-weight: bold;">=</span> domain<span style="color: #339933; font-weight: bold;">.</span>de  <span style="color: #aaa; font-style: italic;"># die deutschsprachige Domain</span>
  10<span style="color: #339933; font-weight: bold;">.</span>wrap <span style="color: #339933; font-weight: bold;">=</span>  <span style="color: #339933; font-weight: bold;">&lt;</span>a href<span style="color: #339933; font-weight: bold;">=</span>&quot;http<span style="color: #339933; font-weight: bold;">:</span><span style="color: #aaa; font-style: italic;">//www.|/</span>
&nbsp;
  <span style="color: #cc0000;">20</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
  20<span style="color: #339933; font-weight: bold;">.</span><span style="font-weight: bold;">typolink</span> <span style="color: #009900;">&#123;</span>
    parameter<span style="color: #339933; font-weight: bold;">.</span>data <span style="color: #339933; font-weight: bold;">=</span> TSFE<span style="color: #339933; font-weight: bold;">:</span>id
    returnLast <span style="color: #339933; font-weight: bold;">=</span> url
    additionalParams <span style="color: #339933; font-weight: bold;">=</span> &amp;amp;L<span style="color: #339933; font-weight: bold;">=</span><span style="color: #cc0000;">3</span>
    addQueryString <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #cc0000;">1</span>
    addQueryString<span style="color: #339933; font-weight: bold;">.</span>method <span style="color: #339933; font-weight: bold;">=</span> GET
    addQueryString<span style="color: #339933; font-weight: bold;">.</span>exclude <span style="color: #339933; font-weight: bold;">=</span> id  <span style="color: #aaa; font-style: italic;"># muss gesetzt werden, da ansonsten der id-Parameter 2x auftaucht</span>
  <span style="color: #009900;">&#125;</span>
&nbsp;
  <span style="color: #cc0000;">30</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
  30<span style="color: #339933; font-weight: bold;">.</span>value <span style="color: #339933; font-weight: bold;">=</span> DEU
  30<span style="color: #339933; font-weight: bold;">.</span>wrap <span style="color: #339933; font-weight: bold;">=</span>&quot;<span style="color: #339933; font-weight: bold;">&gt;|</span><span style="color: #3366CC;">&lt;/a&gt;</span>
&nbsp;
<span style="color: #009900;">&#125;</span>
&nbsp;
&nbsp;
<span style="color: #FF6FEA;">temp</span><span style="color: #339933; font-weight: bold;">.</span>langMenuNL &amp;lt; <span style="color: #FF6FEA;">temp</span><span style="color: #339933; font-weight: bold;">.</span>langMenuDE
<span style="color: #FF6FEA;">temp</span><span style="color: #339933; font-weight: bold;">.</span>langMenuNL <span style="color: #009900;">&#123;</span>
  10<span style="color: #339933; font-weight: bold;">.</span>value <span style="color: #339933; font-weight: bold;">=</span> domain<span style="color: #339933; font-weight: bold;">.</span>nl
  20<span style="color: #339933; font-weight: bold;">.</span><span style="font-weight: bold;">typolink</span><span style="color: #339933; font-weight: bold;">.</span>additionalParams <span style="color: #339933; font-weight: bold;">=</span> &amp;amp;L<span style="color: #339933; font-weight: bold;">=</span><span style="color: #cc0000;">0</span>
  30<span style="color: #339933; font-weight: bold;">.</span>value <span style="color: #339933; font-weight: bold;">=</span> NL  
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #FF6FEA;">temp</span><span style="color: #339933; font-weight: bold;">.</span>langMenuFR &amp;lt; <span style="color: #FF6FEA;">temp</span><span style="color: #339933; font-weight: bold;">.</span>langMenuDE
<span style="color: #FF6FEA;">temp</span><span style="color: #339933; font-weight: bold;">.</span>langMenuFR <span style="color: #009900;">&#123;</span>
  10<span style="color: #339933; font-weight: bold;">.</span>value <span style="color: #339933; font-weight: bold;">=</span> domain<span style="color: #339933; font-weight: bold;">.</span>fr
  20<span style="color: #339933; font-weight: bold;">.</span><span style="font-weight: bold;">typolink</span><span style="color: #339933; font-weight: bold;">.</span>additionalParams <span style="color: #339933; font-weight: bold;">=</span> &amp;amp;L<span style="color: #339933; font-weight: bold;">=</span><span style="color: #cc0000;">2</span>
  30<span style="color: #339933; font-weight: bold;">.</span>value <span style="color: #339933; font-weight: bold;">=</span> FR  
<span style="color: #009900;">&#125;</span>
&nbsp;
&nbsp;
<span style="color: #aaa; font-style: italic;"># Menü zusammenbasteln</span>
&nbsp;
<span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>langMenu <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">COA</span>
<span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>langMenu <span style="color: #009900;">&#123;</span>
  wrap <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #3366CC;">&lt;div class=&quot;langmenu&quot;&gt;</span><span style="color: #3366CC;">&lt;ul&gt;</span><span style="color: #339933; font-weight: bold;">|</span><span style="color: #3366CC;">&lt;/ul&gt;</span><span style="color: #3366CC;">&lt;/div&gt;</span>
&nbsp;
  <span style="color: #cc0000;">10</span> &amp;lt; <span style="color: #FF6FEA;">temp</span><span style="color: #339933; font-weight: bold;">.</span>langMenuNL
  <span style="color: #cc0000;">20</span> &amp;lt; <span style="color: #FF6FEA;">temp</span><span style="color: #339933; font-weight: bold;">.</span>langMenuDE
  <span style="color: #cc0000;">30</span> &amp;lt; <span style="color: #FF6FEA;">temp</span><span style="color: #339933; font-weight: bold;">.</span>langMenuFR  
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #aaa; font-style: italic;"># Active-State anhand von Domain bzw. L setzen</span>
<span style="color: #aaa; font-style: italic;"># falls man neu auf die Site gekommen ist</span>
&nbsp;
<span style="color: #009900;">&#91;</span><span style="color: #ed7d14;">globalVar</span> <span style="color: #339933; font-weight: bold;">=</span> GP<span style="color: #339933; font-weight: bold;">:</span>L <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #cc0000;">0</span><span style="color: #009900;">&#93;</span> OR 
<span style="color: #009900;">&#91;</span><span style="color: #ed7d14;">globalString</span> <span style="color: #339933; font-weight: bold;">=</span> IENV<span style="color: #339933; font-weight: bold;">:</span>HTTP_HOST <span style="color: #339933; font-weight: bold;">=</span> www<span style="color: #339933; font-weight: bold;">.</span>domain<span style="color: #339933; font-weight: bold;">.</span>nl<span style="color: #009900;">&#93;</span>
<span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>langMenu<span style="color: #339933; font-weight: bold;">.</span>10 <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
<span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>langMenu<span style="color: #339933; font-weight: bold;">.</span>10 <span style="color: #009900;">&#123;</span>
  value <span style="color: #339933; font-weight: bold;">=</span> NL
  <span style="font-weight: bold;">stdWrap</span><span style="color: #339933; font-weight: bold;">.</span>wrap <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #3366CC;">&lt;li class=&quot;act&quot;&gt;</span><span style="color: #339933; font-weight: bold;">|</span><span style="color: #3366CC;">&lt;/li&gt;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#91;</span><span style="color: #ed7d14;">globalVar</span> <span style="color: #339933; font-weight: bold;">=</span> GP<span style="color: #339933; font-weight: bold;">:</span>L <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #cc0000;">3</span><span style="color: #009900;">&#93;</span> OR 
<span style="color: #009900;">&#91;</span><span style="color: #ed7d14;">globalString</span> <span style="color: #339933; font-weight: bold;">=</span> IENV<span style="color: #339933; font-weight: bold;">:</span>HTTP_HOST <span style="color: #339933; font-weight: bold;">=</span> www<span style="color: #339933; font-weight: bold;">.</span>domain<span style="color: #339933; font-weight: bold;">.</span>de<span style="color: #009900;">&#93;</span>
<span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>langMenu<span style="color: #339933; font-weight: bold;">.</span>20 <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
<span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>langMenu<span style="color: #339933; font-weight: bold;">.</span>20 <span style="color: #009900;">&#123;</span>
  value <span style="color: #339933; font-weight: bold;">=</span> DEU
  <span style="font-weight: bold;">stdWrap</span><span style="color: #339933; font-weight: bold;">.</span>wrap <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #3366CC;">&lt;li class=&quot;act&quot;&gt;</span><span style="color: #339933; font-weight: bold;">|</span><span style="color: #3366CC;">&lt;/li&gt;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#91;</span><span style="color: #ed7d14;">globalVar</span> <span style="color: #339933; font-weight: bold;">=</span> GP<span style="color: #339933; font-weight: bold;">:</span>L <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #cc0000;">2</span><span style="color: #009900;">&#93;</span> OR 
<span style="color: #009900;">&#91;</span><span style="color: #ed7d14;">globalString</span> <span style="color: #339933; font-weight: bold;">=</span> IENV<span style="color: #339933; font-weight: bold;">:</span>HTTP_HOST <span style="color: #339933; font-weight: bold;">=</span> www<span style="color: #339933; font-weight: bold;">.</span>domain<span style="color: #339933; font-weight: bold;">.</span>fr<span style="color: #009900;">&#93;</span>
<span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>langMenu<span style="color: #339933; font-weight: bold;">.</span>30 <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
<span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>langMenu<span style="color: #339933; font-weight: bold;">.</span>30 <span style="color: #009900;">&#123;</span>
  value <span style="color: #339933; font-weight: bold;">=</span> FR
  <span style="font-weight: bold;">stdWrap</span><span style="color: #339933; font-weight: bold;">.</span>wrap <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #3366CC;">&lt;li class=&quot;act&quot;&gt;</span><span style="color: #339933; font-weight: bold;">|</span><span style="color: #3366CC;">&lt;/li&gt;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#91;</span><span style="color: #ed7d14;">global</span><span style="color: #009900;">&#93;</span></pre></div></div>

<p>Damit beim einstieg über die enstprechende Domain (.de, .fr, .nl) auch der richtige L-Parameter gesetzt wird, habe ich die Extension <a href="http://typo3.org/documentation/document-library/extension-manuals/icti_language_on_domain/1.0.0/view/1/1/">icti_language_on_domain</a> verwendet.</p>
<p>Falls jemand nähere Erklärungen benötigt, postet doch bitte einen Comment, ich erkläre gerne den ein oder anderen Schritt im Detail!</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/sprachwechsler-mit-typoscript-und-domainwechsel/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>TypoScript in einer Extension generieren</title>
		<link>http://typo3blogger.de/typoscript-in-einer-extension-generieren/</link>
		<comments>http://typo3blogger.de/typoscript-in-einer-extension-generieren/#comments</comments>
		<pubDate>Fri, 08 Jan 2010 07:43:36 +0000</pubDate>
		<dc:creator>Matthias Stübner</dc:creator>
				<category><![CDATA[Extension]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[TYPO3]]></category>
		<category><![CDATA[TypoScript]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=3848</guid>
		<description><![CDATA[In verschiedenen Situationen kann es notwendig sein, innerhalb einer eigenen Extension TypoScript-Code zu erzeugen, z.B. wenn die Seite auf der die Extension eingebunden sein wird gecacht wird, die Ausgabe einer Funktion aber trotzdem dynamisch sein muss (z.B. Zugriffszähler). In einem Template würde man hierzu z.B. folgendes definieren: page.10.marks.dynamik = COA_INT page.10.marks.dynamik {     10 = [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>In verschiedenen Situationen kann es notwendig sein, innerhalb einer eigenen Extension TypoScript-Code zu erzeugen, z.B. wenn die Seite auf der die Extension eingebunden sein wird gecacht wird, die Ausgabe einer Funktion aber trotzdem dynamisch sein muss (z.B. Zugriffszähler).<span id="more-3848"></span></p>
<p>In einem Template würde man hierzu z.B. folgendes definieren:</p>
<pre class="light">page.10.marks.dynamik = COA_INT
page.10.marks.dynamik {
    10 = USER
    10.userFunc = funktion
}</pre>
<p>Umstände können es jedoch notwendig machen den Marker aus der Extension heraus zu befüllen, z.B. wenn sich der Inhalt des Markers aus anderen Daten ergibt, die ausserhalb der Extension nicht bekannt sein können. Dann muss obiger Code innerhalb der Extension generiert und ausgegeben werden. Dies kann mit folgendem PHP-Code erreicht werden:</p>
<pre class="light">function PageViewCounter() {
    $TS['conf']='COA_INT';
    $TS['conf.']['950']='USER';
    $TS['conf.']['950.']['userFunc']='funktion';
    $ret = $this-&gt;cObj-&gt;cObjGetSingle($TS['conf'],$TS['conf.']);
    return $ret;
}</pre>
<p>Abschliessend wird der Rückgabewert der Funktion in der Extension an einen Marker ausgeben:</p>
<pre class="light">$markerArray['###FIELD_CREATEDATE###'] = $this-&gt;funktionName</pre>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/typoscript-in-einer-extension-generieren/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>E-Mail Adresse gegen Spam schützen</title>
		<link>http://typo3blogger.de/e-mail-adresse-gegen-spam-schutzen/</link>
		<comments>http://typo3blogger.de/e-mail-adresse-gegen-spam-schutzen/#comments</comments>
		<pubDate>Sat, 02 Jan 2010 16:30:28 +0000</pubDate>
		<dc:creator>Alex Kellner</dc:creator>
				<category><![CDATA[Extension]]></category>
		<category><![CDATA[TypoScript]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=3745</guid>
		<description><![CDATA[Zu allererst: Ein frohes neues Jahr an alle TYPO3 Mitstreiter! An der Stelle versuche ich Wissen zum Thema E-Mail Verschlüsselung in TYPO3 zusammenzutragen. E-Mail Adressen im Klartext anzuzeigen, provoziert dass diese von Bots automatisiert gesammelt werden können. Die Spamflut im Postfach wird sich so also weiter vermehren. TYPO3 bringt von Haus aus ein paar interessantere [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Zu allererst: Ein frohes neues Jahr an alle TYPO3 Mitstreiter!</p>
<p>An der Stelle versuche ich Wissen zum Thema E-Mail Verschlüsselung in TYPO3 zusammenzutragen.<br />
E-Mail Adressen im Klartext anzuzeigen, provoziert dass diese von Bots automatisiert gesammelt werden können. Die Spamflut im Postfach wird sich so also weiter vermehren.<br />
TYPO3 bringt von Haus aus ein paar interessantere Möglichkeiten mit&#8230;<br />
<span id="more-3745"></span><br />
<strong>1. spamProtectEmailAddresses</strong><br />
Über spamProtectEmailAddresses bietet TYPO3 ein Javascript zur Link-Verschlüsselung auf eine E-Mail Adresse. Desweiteren kann man das @-Symbol und den Punkt vor der Top-Level-Domain gegen etwas anderes austauschen.<br />
<strong>1.1 @ zu (at)</strong><br />
Mit diesem Typoscript lässt sich das @-Zeichen gegen (at) austauschen:</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #FF6FEA;">config</span><span style="color: #339933; font-weight: bold;">.</span>spamProtectEmailAddresses <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #cc0000;">2</span>
<span style="color: #FF6FEA;">config</span><span style="color: #339933; font-weight: bold;">.</span>spamProtectEmailAddresses_atSubst <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #009900;">&#40;</span>at<span style="color: #009900;">&#41;</span>
<span style="color: #aaa; font-style: italic;"># info@email.de =&gt; info(at)email.de</span></pre></div></div>

<p><strong>1.2 @ zu &copy;</strong><br />
@ zum Copyright Symbol tauschen</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #FF6FEA;">config</span><span style="color: #339933; font-weight: bold;">.</span>spamProtectEmailAddresses <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #cc0000;">2</span>
<span style="color: #FF6FEA;">config</span><span style="color: #339933; font-weight: bold;">.</span>spamProtectEmailAddresses_atSubst <span style="color: #339933; font-weight: bold;">=</span> &amp;copy;
<span style="color: #aaa; font-style: italic;"># info@email.de =&gt; info&amp;copy;email.de</span></pre></div></div>

<p><strong>1.3 @ zu Bild</strong><br />
@ zu einem Bild mit @-Symbol tauschen</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #FF6FEA;">config</span><span style="color: #339933; font-weight: bold;">.</span>spamProtectEmailAddresses <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #cc0000;">2</span>
<span style="color: #FF6FEA;">config</span><span style="color: #339933; font-weight: bold;">.</span>spamProtectEmailAddresses_atSubst <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #3366CC;">&lt;img src=&quot;fileadmin/at.png&quot; /&gt;</span>
<span style="color: #aaa; font-style: italic;"># info@email.de =&gt; info&lt;img src=&quot;fileadmin/at.png&quot; /&gt;email.de</span></pre></div></div>

<p>at.png kann ein Bild sein, das auf den ersten Blick wie ein normals @-Zeichen aussieht</p>
<p><strong>1.4 clear GIF einfügen</strong><br />
Ein nahezu unsichtbares Bild in Mitten einer E-Mail Adresse einfügen</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #FF6FEA;">config</span><span style="color: #339933; font-weight: bold;">.</span>spamProtectEmailAddresses <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #cc0000;">2</span>
<span style="color: #FF6FEA;">config</span><span style="color: #339933; font-weight: bold;">.</span>spamProtectEmailAddresses_atSubst <span style="color: #339933; font-weight: bold;">=</span> &amp;<span style="color: #aaa; font-style: italic;">#64;&lt;img src=&quot;/clear.gif&quot; alt=&quot;noSpam&quot; /&gt;</span>
<span style="color: #aaa; font-style: italic;"># info@email.de =&gt; info&amp;</span><span style="color: #aaa; font-style: italic;">#64;&lt;img src=&quot;/clear.gif&quot; alt=&quot;noSpam&quot; /&gt;email.de</span></pre></div></div>

<p><strong>1.5 unsichtbare HTML Tags einfügen</strong><br />
Inmitten einer E-Mail einen unsichtbaren Tag einfügen</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #FF6FEA;">config</span><span style="color: #339933; font-weight: bold;">.</span>spamProtectEmailAddresses <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #cc0000;">2</span>
<span style="color: #FF6FEA;">config</span><span style="color: #339933; font-weight: bold;">.</span>spamProtectEmailAddresses_atSubst <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #339933; font-weight: bold;">!!&lt;=:&gt;</span>noSpam<span style="color: #3366CC;">&lt;/span&gt;</span>@
<span style="color: #aaa; font-style: italic;"># info@email.de =&gt; info&lt;span style=&quot;display: none;&quot;&gt;noSpam&lt;/span&gt;@email.de</span></pre></div></div>

<p><strong>1.6 @ und . mit JS</strong><br />
@ und . lässt sich auch Clientseitig über Javascript schreiben</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #FF6FEA;">page</span> <span style="color: #009900;">&#123;</span>
headerData<span style="color: #339933; font-weight: bold;">.</span>50 <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
headerData<span style="color: #339933; font-weight: bold;">.</span>50<span style="color: #339933; font-weight: bold;">.</span>value <span style="color: #009900;">&#40;</span>
<span style="color: #3366CC;">&lt;script type=&quot;text/javascript&quot;&gt;</span>
<span style="color: #339933; font-weight: bold;">&lt;!</span>--
function obscureAddMid<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        document<span style="color: #339933; font-weight: bold;">.</span>write<span style="color: #009900;">&#40;</span>'@'<span style="color: #009900;">&#41;</span>;
<span style="color: #009900;">&#125;</span>
function obscureAddEnd<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        document<span style="color: #339933; font-weight: bold;">.</span>write<span style="color: #009900;">&#40;</span>'<span style="color: #339933; font-weight: bold;">.</span>'<span style="color: #009900;">&#41;</span>;
<span style="color: #009900;">&#125;</span>
<span style="color: #aaa; font-style: italic;">// --&gt;</span>
<span style="color: #3366CC;">&lt;/script&gt;</span>
<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #FF6FEA;">config</span><span style="color: #339933; font-weight: bold;">.</span>spamProtectEmailAddresses <span style="color: #339933; font-weight: bold;">=</span> -<span style="color: #cc0000;">2</span>
<span style="color: #FF6FEA;">config</span><span style="color: #339933; font-weight: bold;">.</span>spamProtectEmailAddresses_atSubst <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #3366CC;">&lt;script type=&quot;text/javascript&quot;&gt;</span> obscureAddMid<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #3366CC;">&lt;/script&gt;</span>
<span style="color: #FF6FEA;">config</span><span style="color: #339933; font-weight: bold;">.</span>spamProtectEmailAddresses_lastDotSubst <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #3366CC;">&lt;script type=&quot;text/javascript&quot;&gt;</span> obscureAddEnd<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #3366CC;">&lt;/script&gt;</span></pre></div></div>

<p><strong>2. Verschlüsselung mit recaptcha</strong><br />
Die <a href="http://mailhide.recaptcha.net/" target="_blank">Internetseite von recaptcha</a> bietet eine E-Mail Verschlüsselung an. Ihr könnt eure E-Mail an recaptcha geben und erhaltet im Gegenzug etwas HTML Code.<br />
<img src="http://easycaptures.com/fs/uploaded/202/8536202221.jpg" /><br />
<img src="http://easycaptures.com/fs/uploaded/202/9388968587.jpg" /><br />
<img src="http://easycaptures.com/fs/uploaded/202/1250902026.jpg" /></p>
<p>Bei Klick auf die Punkte in der E-Mail geht ein Popup von recaptcha auf, das die Eingabe der gezeigten Zeichen verlangt.<br />
<img src="http://easycaptures.com/fs/uploaded/202/7086651261.jpg" /></p>
<p>Im Anschluss erhält man die angeforderte E-Mail<br />
<img src="http://easycaptures.com/fs/uploaded/202/6390917404.jpg" /></p>
<p><strong>3. email2powermail</strong><br />
Wenn sowieso die Erweiterung <a href="http://typo3.org/extensions/repository/view/powermail/current/" target="_blank">powermail</a> im Einsatz ist, kann man mit <a href="http://typo3.org/extensions/repository/view/email2powermail/current/" target="_blank" title="TYPO3 email encryption with powermail">email2powermail</a> automatisch alle E-Mail Adressen in Links zu einem powermail Formular umwandeln.<br />
<img src="http://typo3.org/typo3temp/tx_terdoc/documentscache/e/m/email2powermail-0.2.0/docbook/pictures/10000000000002D9000000AE8C3A44D6.jpg" width="498" /><br />
<img src="http://typo3.org/typo3temp/tx_terdoc/documentscache/e/m/email2powermail-0.2.0/docbook/pictures/10000000000001CC000000C1215B127A.jpg" /><br />
Natürlich kann man auch den verlinkten Text automatisch ändern, damit die E-Mail Adresse auf keinen Fall mehr im Quelltext zu finden ist.<br />
Der Vorteil liegt unter anderem darin, dass kein Javascript nötig ist für diese Verschlüsselungsmethode.</p>
<p><strong>4. Wichtige Hinweise</strong><br />
<strong>4.1 Do and Don&#8217;t table:</strong></p>
<table width="498" border="1" cellpadding="5">
<tr>
<td>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #3366CC;">&lt;a href=&quot;mailto:info@mail.de&quot;&gt;</span>info@mail<span style="color: #339933; font-weight: bold;">.</span>de<span style="color: #3366CC;">&lt;/a&gt;</span></pre></div></div>

</td>
<td style="font-weight: bold; color: red;">Don&#8217;t</td>
</tr>
<tr>
<td>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #3366CC;">&lt;a href=&quot;mailto:info@mail.de&quot;&gt;</span>info<span style="color: #009900;">&#40;</span>at<span style="color: #009900;">&#41;</span>mail<span style="color: #339933; font-weight: bold;">.</span>de<span style="color: #3366CC;">&lt;/a&gt;</span></pre></div></div>

</td>
<td style="font-weight: bold; color: red;">Don&#8217;t</td>
</tr>
<tr>
<td>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #3366CC;">&lt;a href=&quot;javascript:linkTo_UnCryptMailto<span style="color: #009900;">&#40;</span>'xxx'<span style="color: #009900;">&#41;</span>;&quot;<span style="color: #339933; font-weight: bold;">&gt;</span></span>info@mail<span style="color: #339933; font-weight: bold;">.</span>de<span style="color: #3366CC;">&lt;/a&gt;</span></pre></div></div>

</td>
<td style="font-weight: bold; color: red;">Don&#8217;t</td>
</tr>
<tr>
<td>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #3366CC;">&lt;a href=&quot;javascript:linkTo_UnCryptMailto<span style="color: #009900;">&#40;</span>'xxx'<span style="color: #009900;">&#41;</span>;&quot;<span style="color: #339933; font-weight: bold;">&gt;</span></span>info&amp;copy;mail<span style="color: #339933; font-weight: bold;">.</span>de<span style="color: #3366CC;">&lt;/a&gt;</span></pre></div></div>

</td>
<td style="font-weight: bold; color: green;">Do</td>
</tr>
<tr>
<td>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #3366CC;">&lt;a href=&quot;index.php?id=<span style="color: #cc0000;">123</span>&quot;<span style="color: #339933; font-weight: bold;">&gt;</span></span>Mail<span style="color: #3366CC;">&lt;/a&gt;</span></pre></div></div>

</td>
<td style="font-weight: bold; color: green;">Do</td>
</tr>
<tr>
<td colspan="2">Vereinfacht lässt sich sagen: Sobald eine E-Mail irgendwo unverschlüsselt im Quelltext sichtbar ist, kann diese einfach eingesammelt werden</td>
</tr>
</table>
<p><strong>4.2 E-Mail komplett als Bild</strong><br />
Mittlerweile kann man E-Mail Adressen sehr leicht automatisiert aus Bildern herauslesen. Dies ist kein angemessener Schutz mehr.</p>
<p><strong>4.3 Ascii Zeichen</strong><br />
Es mehren sich die Anzeichen, dass E-Mail Adressen, geschrieben im Ascii Format, keinen ausreichenden Schutz bieten.</p>
<p><strong>4.4 Barriere</strong><br />
Egal wie eine E-Mail Verschlüsselung von statten geht &#8211; es handelt sich hierbei immer um eine Barriere &#8211; eben das Gegenteil von absoluter Barrierefreiheit.<br />
Ich schätze, dass man an dieser Stelle einen Tod sterben muss.</p>
<p><strong>5. Links</strong></p>
<ul>
<li><a href="http://www.typo3forum.net/forum/faq-template-typoscript/17801-sch-tze-mich-spam.html" target="_blank">Spamschutz vom typo3forum.net</a></li>
<li><a href="http://mailhide.recaptcha.net/protect" target="_blank">E-Mail Verschlüsselung von recaptcha</a></li>
<li><a href="http://typo3.org/extensions/repository/view/email2powermail/current/" target="_blank" title="TYPO3 email encryption with powermail">E-Mail Verschlüsselung mit email2powermail</a></li>
</ul>
<p>Cheers, Alex</p>
<p>P.S.: Was wichtiges vergessen?</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/e-mail-adresse-gegen-spam-schutzen/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Im Menü versteckte Seiten trotzdem anzeigen</title>
		<link>http://typo3blogger.de/im-menu-versteckte-seiten-trotzdem-anzeigen/</link>
		<comments>http://typo3blogger.de/im-menu-versteckte-seiten-trotzdem-anzeigen/#comments</comments>
		<pubDate>Thu, 24 Dec 2009 18:02:24 +0000</pubDate>
		<dc:creator>Bernhard Berger</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[TypoScript]]></category>
		<category><![CDATA[TYPO3]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=3682</guid>
		<description><![CDATA[Zur Feier des Tages möchte ich euch eine kleine Eigenschaft des HMENU-Objektes vorstellen, welche es ermöglicht Seiten die als &#8220;im Menü verstecken&#8221; gesetzt ist trotzdem anzeigen zu lassen. Die Eigenschaft ist meines Erachtens relativ unbekannt und hätte schon öfters dem ein oder anderen TYPO3-Admin weitergeholfen. In meinem Fall hatte ich einen Seitenbaum, indem die Seiten [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Zur Feier des Tages möchte ich euch eine kleine Eigenschaft des HMENU-Objektes vorstellen, welche es ermöglicht Seiten die als &#8220;im Menü verstecken&#8221; gesetzt ist trotzdem anzeigen zu lassen. Die Eigenschaft ist meines Erachtens relativ unbekannt und hätte schon öfters dem ein oder anderen TYPO3-Admin weitergeholfen.</p>
<p><span id="more-3682"></span><br />
In meinem Fall hatte ich einen Seitenbaum, indem die Seiten &#8220;Impressum&#8221; und &#8220;Sitemap&#8221; versteckt waren, da diese nur über das Menü in der Fußleiste der Website erreichbar sein sollten. Einen eigenen Teilbaum wollte ich für die beiden Seiten eigentlich nicht anzeigen, da diese semantisch in einen anderen Teilbaum gehören wie zum Beispiel &#8220;Impressum&#8221; zu &#8220;Rechtliches&#8221; oder &#8220;Kontakt&#8221; gehören würden. Über die Eigenschaft &#8220;<strong>includeNotInMenu&nbsp;=&nbsp;1</strong>&#8221; konnte ich diese in einem anderen Menü-Objekt, welches ich für den Footer verwendet habe eingebunden werden.</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #FF6FEA;">temp</span><span style="color: #339933; font-weight: bold;">.</span>footer <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">COA</span>
<span style="color: #FF6FEA;">temp</span><span style="color: #339933; font-weight: bold;">.</span>footer <span style="color: #009900;">&#123;</span>
  wrap <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #3366CC;">&lt;ul&gt;</span><span style="color: #339933; font-weight: bold;">|</span><span style="color: #3366CC;">&lt;/ul&gt;</span>
&nbsp;
  <span style="color: #cc0000;">10</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
  <span style="color: #cc0000;">10</span> <span style="color: #009900;">&#123;</span>
    wrap <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #3366CC;">&lt;li&gt;</span><span style="color: #339933; font-weight: bold;">|</span><span style="color: #3366CC;">&lt;/li&gt;</span>
    value <span style="color: #339933; font-weight: bold;">=</span> Drucken
    <span style="font-weight: bold;">typolink</span> <span style="color: #009900;">&#123;</span>
      parameter <span style="color: #339933; font-weight: bold;">=</span> javascript<span style="color: #339933; font-weight: bold;">:</span>print<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>;
    <span style="color: #009900;">&#125;</span>
  <span style="color: #009900;">&#125;</span>
&nbsp;
  <span style="color: #cc0000;">20</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">HMENU</span>
  <span style="color: #cc0000;">20</span> <span style="color: #009900;">&#123;</span>
    special <span style="color: #339933; font-weight: bold;">=</span> list
    special<span style="color: #339933; font-weight: bold;">.</span>value <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #cc0000;">42</span>, <span style="color: #cc0000;">24</span>
    includeNotInMenu <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #cc0000;">1</span>   <span style="color: #aaa; font-style: italic;"># zeigt Seiten mit der Eigenschaft &quot;hide in Menu&quot; trotzdem an    </span>
&nbsp;
    <span style="color: #cc0000;">1</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TMENU</span>
    <span style="color: #cc0000;">1</span> <span style="color: #009900;">&#123;</span>
      <span style="color: #990000; font-weight: bold;">NO</span><span style="color: #339933; font-weight: bold;">.</span>wrapItemAndSub <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #3366CC;">&lt;li&gt;</span><span style="color: #339933; font-weight: bold;">|</span><span style="color: #3366CC;">&lt;/li&gt;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
  <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #FF6FEA;">lib</span><span style="color: #339933; font-weight: bold;">.</span>footer &amp;lt; <span style="color: #FF6FEA;">temp</span><span style="color: #339933; font-weight: bold;">.</span>footer</pre></div></div>

<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/im-menu-versteckte-seiten-trotzdem-anzeigen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Automatisch ein- oder zweispaltig ohne TV und ohne templateselector &#8211; Türchen 24</title>
		<link>http://typo3blogger.de/automatisch-ein-oder-zweispaltig-ohne-tv-und-ohne-templateselector/</link>
		<comments>http://typo3blogger.de/automatisch-ein-oder-zweispaltig-ohne-tv-und-ohne-templateselector/#comments</comments>
		<pubDate>Thu, 24 Dec 2009 09:10:30 +0000</pubDate>
		<dc:creator>Alex Kellner</dc:creator>
				<category><![CDATA[TYPO3]]></category>
		<category><![CDATA[Templates]]></category>
		<category><![CDATA[TypoScript]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=3642</guid>
		<description><![CDATA[Immer wieder lese ich in den beiden großen TYPO3-Foren die Frage, wie man es am besten lösen könnte, im Frontend zwischen einem ein- und zwei-Spalten Layout zu wechseln. Das Ganze ist ziemlich einfach über Typoscript möglich und erfordert keine Erweiterung wie templavoila oder rlmp_tmplselector. Ich stelle drei Lösungen vor, die sich dazu eignen automatisch das [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Immer wieder lese ich in den beiden großen TYPO3-Foren die Frage, wie man es am besten lösen könnte, im Frontend zwischen einem ein- und zwei-Spalten Layout zu wechseln. Das Ganze ist ziemlich einfach über Typoscript möglich und erfordert keine Erweiterung wie <a href="http://typo3.org/extensions/repository/view/templavoila/current/" target="_blank">templavoila</a> oder <a href="http://typo3.org/extensions/repository/view/rlmp_tmplselector/current/" target="_blank">rlmp_tmplselector</a>. Ich stelle drei Lösungen vor, die sich dazu eignen automatisch das Layout zu wechseln, um das Leben der Redakteure möglichst einfach zu machen.<br />
<span id="more-3642"></span><br />
<strong>1. Ändern eines Teilbereiches in HTML </strong><br />
Meiner Meinung nach die beste Lösung. Einfach über ein COA abfragen ob sich Inhalt in einer Spalte befindet. Je nach dem Ergebnis .10 oder .20 nutzen:</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #FF6FEA;">page</span><span style="color: #339933; font-weight: bold;">.</span>10 <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEMPLATE</span>
<span style="color: #FF6FEA;">page</span><span style="color: #339933; font-weight: bold;">.</span>10 <span style="color: #009900;">&#123;</span>
	template <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">FILE</span>
	template<span style="color: #339933; font-weight: bold;">.</span>file <span style="color: #339933; font-weight: bold;">=</span> fileadmin<span style="color: #339933; font-weight: bold;">/</span>tmpl<span style="color: #339933; font-weight: bold;">.</span>html
&nbsp;
	subparts<span style="color: #339933; font-weight: bold;">.</span><span style="color: #990000; font-weight: bold;">CONTENT</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">COA</span>
	subparts<span style="color: #339933; font-weight: bold;">.</span><span style="color: #990000; font-weight: bold;">CONTENT</span> <span style="color: #009900;">&#123;</span>
&nbsp;
		<span style="color: #aaa; font-style: italic;"># show both columns if content in left col</span>
		<span style="color: #cc0000;">10</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">COA</span>
		<span style="color: #cc0000;">10</span> <span style="color: #009900;">&#123;</span>
			<span style="font-weight: bold;">if</span><span style="color: #339933; font-weight: bold;">.</span>isTrue<span style="color: #339933; font-weight: bold;">.</span><span style="font-weight: bold;">numRows</span> <span style="color: #339933; font-weight: bold;">&lt;</span> <span style="color: #FF6FEA;">styles</span><span style="color: #339933; font-weight: bold;">.</span>content<span style="color: #339933; font-weight: bold;">.</span>getLeft
&nbsp;
			<span style="color: #cc0000;">10</span> <span style="color: #339933; font-weight: bold;">&lt;</span> <span style="color: #FF6FEA;">styles</span><span style="color: #339933; font-weight: bold;">.</span>content<span style="color: #339933; font-weight: bold;">.</span>getLeft
			10<span style="color: #339933; font-weight: bold;">.</span>wrap <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #3366CC;">&lt;div id=&quot;col1&quot; class=&quot;col&quot;&gt;</span><span style="color: #339933; font-weight: bold;">|</span><span style="color: #3366CC;">&lt;/div&gt;</span>
&nbsp;
			<span style="color: #cc0000;">20</span> <span style="color: #339933; font-weight: bold;">&lt;</span> <span style="color: #FF6FEA;">styles</span><span style="color: #339933; font-weight: bold;">.</span>content<span style="color: #339933; font-weight: bold;">.</span>get
			20<span style="color: #339933; font-weight: bold;">.</span>wrap <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #3366CC;">&lt;div id=&quot;col2&quot; class=&quot;col&quot;&gt;</span><span style="color: #339933; font-weight: bold;">|</span><span style="color: #3366CC;">&lt;/div&gt;</span>
		<span style="color: #009900;">&#125;</span>
&nbsp;
		<span style="color: #aaa; font-style: italic;"># show one column if NO content in left col</span>
		<span style="color: #cc0000;">20</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">COA</span>
		<span style="color: #cc0000;">20</span> <span style="color: #009900;">&#123;</span>
			<span style="font-weight: bold;">if</span><span style="color: #339933; font-weight: bold;">.</span>isFalse<span style="color: #339933; font-weight: bold;">.</span><span style="font-weight: bold;">numRows</span> <span style="color: #339933; font-weight: bold;">&lt;</span> <span style="color: #FF6FEA;">styles</span><span style="color: #339933; font-weight: bold;">.</span>content<span style="color: #339933; font-weight: bold;">.</span>getLeft
&nbsp;
			<span style="color: #cc0000;">10</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
&nbsp;
			<span style="color: #cc0000;">20</span> <span style="color: #339933; font-weight: bold;">&lt;</span> <span style="color: #FF6FEA;">styles</span><span style="color: #339933; font-weight: bold;">.</span>content<span style="color: #339933; font-weight: bold;">.</span>get
			20<span style="color: #339933; font-weight: bold;">.</span>wrap <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #3366CC;">&lt;div id=&quot;col12&quot;&gt;</span><span style="color: #339933; font-weight: bold;">|</span><span style="color: #3366CC;">&lt;/div&gt;</span>
		<span style="color: #009900;">&#125;</span>
&nbsp;
		<span style="color: #aaa; font-style: italic;"># Clear old floats via CSS</span>
		<span style="color: #cc0000;">30</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
		30<span style="color: #339933; font-weight: bold;">.</span>value <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #3366CC;">&lt;div class=&quot;clear&quot;&gt;</span><span style="color: #3366CC;">&lt;/div&gt;</span>
&nbsp;
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Da sich lediglich die ID des umschließenden DIV Containers ändert, muss man jetzt über CSS sinnvoll floaten.</p>
<p>So kann das Ganze dann im FE aussehen:<br />
<img src="http://typo3blogger.de/wp-content/uploads/2009/12/1.jpg" width="502" title="realdevelopers - are you a real developer? Organisation" alt="realdevelopers - are you a real developer? Organisation" /><br />
Einspaltig: <a href="http://www.realdevelopers.com/organisation.html" target="_blank">http://www.realdevelopers.com/organisation.html</a></p>
<p><img src="http://typo3blogger.de/wp-content/uploads/2009/12/2.jpg" width="502" alt="realdevelopers - are you a real developer? Who is conject" title="realdevelopers - are you a real developer? Who is conject" /><br />
Zweispaltig: <a href="http://www.realdevelopers.com/whos-conject.html" target="_blank">http://www.realdevelopers.com/whos-conject.html</a></p>
<p><strong>2. Anderes HTML Template bei zwei Spalten</strong></p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #FF6FEA;">temp</span><span style="color: #339933; font-weight: bold;">.</span>maintemplate <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">COA</span>
<span style="color: #FF6FEA;">temp</span><span style="color: #339933; font-weight: bold;">.</span>maintemplate <span style="color: #009900;">&#123;</span>
	<span style="color: #aaa; font-style: italic;"># if there is content in the right col</span>
	<span style="color: #cc0000;">10</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">COA</span>
	<span style="color: #cc0000;">10</span> <span style="color: #009900;">&#123;</span>
		<span style="font-weight: bold;">if</span><span style="color: #339933; font-weight: bold;">.</span>isTrue<span style="color: #339933; font-weight: bold;">.</span><span style="font-weight: bold;">numRows</span> <span style="color: #339933; font-weight: bold;">&lt;</span> <span style="color: #FF6FEA;">styles</span><span style="color: #339933; font-weight: bold;">.</span>content<span style="color: #339933; font-weight: bold;">.</span>getRight
		<span style="color: #cc0000;">10</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEMPLATE</span>
		<span style="color: #cc0000;">10</span> <span style="color: #009900;">&#123;</span>
			template <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">FILE</span>
			template<span style="color: #339933; font-weight: bold;">.</span>file <span style="color: #339933; font-weight: bold;">=</span> fileadmin<span style="color: #339933; font-weight: bold;">/</span>2cols<span style="color: #339933; font-weight: bold;">.</span>html
		<span style="color: #009900;">&#125;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #aaa; font-style: italic;"># if there is NO content in the right col</span>
	<span style="color: #cc0000;">20</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">COA</span>
	<span style="color: #cc0000;">20</span> <span style="color: #009900;">&#123;</span>
		<span style="font-weight: bold;">if</span><span style="color: #339933; font-weight: bold;">.</span>isFalse<span style="color: #339933; font-weight: bold;">.</span><span style="font-weight: bold;">numRows</span> <span style="color: #339933; font-weight: bold;">&lt;</span> <span style="color: #FF6FEA;">styles</span><span style="color: #339933; font-weight: bold;">.</span>content<span style="color: #339933; font-weight: bold;">.</span>getRight
		<span style="color: #cc0000;">10</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEMPLATE</span>
		<span style="color: #cc0000;">10</span> <span style="color: #009900;">&#123;</span>
			template <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">FILE</span>
			template<span style="color: #339933; font-weight: bold;">.</span>file <span style="color: #339933; font-weight: bold;">=</span> fileadmin<span style="color: #339933; font-weight: bold;">/</span>1col<span style="color: #339933; font-weight: bold;">.</span>html
		<span style="color: #009900;">&#125;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p><strong>3. Anderes CSS File bei zwei Spalten</strong></p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #FF6FEA;">page</span><span style="color: #339933; font-weight: bold;">.</span>headerData <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">COA</span>
<span style="color: #FF6FEA;">page</span><span style="color: #339933; font-weight: bold;">.</span>headerData <span style="color: #009900;">&#123;</span>
	<span style="color: #cc0000;">10</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">COA</span>
	<span style="color: #cc0000;">10</span> <span style="color: #009900;">&#123;</span>
		<span style="font-weight: bold;">if</span><span style="color: #339933; font-weight: bold;">.</span>isTrue<span style="color: #339933; font-weight: bold;">.</span><span style="font-weight: bold;">numRows</span> <span style="color: #339933; font-weight: bold;">&lt;</span> <span style="color: #FF6FEA;">styles</span><span style="color: #339933; font-weight: bold;">.</span>content<span style="color: #339933; font-weight: bold;">.</span>getRight
		<span style="color: #cc0000;">10</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
		10<span style="color: #339933; font-weight: bold;">.</span>value <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #3366CC;">&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;fileadmin/3cols.css&quot; /&gt;</span>
	<span style="color: #009900;">&#125;</span>
	<span style="color: #cc0000;">20</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">COA</span>
	<span style="color: #cc0000;">20</span> <span style="color: #009900;">&#123;</span>
		<span style="font-weight: bold;">if</span><span style="color: #339933; font-weight: bold;">.</span>isFalse<span style="color: #339933; font-weight: bold;">.</span><span style="font-weight: bold;">numRows</span> <span style="color: #339933; font-weight: bold;">&lt;</span> <span style="color: #FF6FEA;">styles</span><span style="color: #339933; font-weight: bold;">.</span>content<span style="color: #339933; font-weight: bold;">.</span>getRight
		<span style="color: #cc0000;">10</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
		10<span style="color: #339933; font-weight: bold;">.</span>value <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #3366CC;">&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;fileadmin/2cols.css&quot; /&gt;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p><strong>Links zum Thema</strong></p>
<ul>
<li><a href="http://www.typo3wizard.com/de/snippets/general-config/template-abhaengig-von-spalteninhalt.html" target="_blank">Template abhängig von Spalteninhalt auf typo3wizard.com</a></li>
<li><a href="http://www.typo3.net/forum/list/list_post//57920/?howto=1" target="_blank">Anderes CSS wenn Inhalt in rechter Spalte auf typo3.net</a></li>
</ul>
<p><strong>Fazit</strong><br />
Ich hoffe ihr könnt das so verwenden? </p>
<p>Frohe Weihnachten wünscht euch das gesamte <a href="/die-blogger/">typo3blogger Team</a></p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/automatisch-ein-oder-zweispaltig-ohne-tv-und-ohne-templateselector/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Header-Feld eines FCE (TemplaVoila) nutzen &#8211; Türchen 23</title>
		<link>http://typo3blogger.de/header-feld-eines-fce-templavoila-nutzen-turchen-23/</link>
		<comments>http://typo3blogger.de/header-feld-eines-fce-templavoila-nutzen-turchen-23/#comments</comments>
		<pubDate>Wed, 23 Dec 2009 07:00:44 +0000</pubDate>
		<dc:creator>Bernhard Berger</dc:creator>
				<category><![CDATA[TYPO3]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[TypoScript]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=3526</guid>
		<description><![CDATA[Oftmals macht es Sinn das Header-Feld eines Flexible Content Elements (FCE) zu nutzen. Dies ist jedoch nicht ohne ein bischen TypoScript möglich. Wie ihr das Feld in eurem Mapping nutzen könnt möchte ich euch in folgendem Snippet zeigen und kurz erklären. &#60;field_headline type="array"&#62; &#60;tx_templavoila type="array"&#62; &#60;title&#62;Headline&#60;/title&#62; &#60;sample_data type="array"&#62; &#60;numIndex index="0"&#62;&#60;/numIndex&#62; &#60;/sample_data&#62; &#60;eType&#62;none&#60;/eType&#62; &#60;TypoScript&#62; 10 = [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Oftmals macht es Sinn das Header-Feld eines Flexible Content Elements (FCE) zu nutzen. Dies ist jedoch nicht ohne ein bischen TypoScript möglich. Wie ihr das Feld in eurem Mapping nutzen könnt möchte ich euch in folgendem Snippet zeigen und kurz erklären.</p>
<p><span id="more-3526"></span></p>
<div style="margin-top: 20px"><code><br />
&lt;field_headline type="array"&gt;<br />
&lt;tx_templavoila type="array"&gt;<br />
&lt;title&gt;Headline&lt;/title&gt;<br />
&lt;sample_data type="array"&gt;<br />
&lt;numIndex index="0"&gt;&lt;/numIndex&gt;<br />
&lt;/sample_data&gt;<br />
&lt;eType&gt;none&lt;/eType&gt;<br />
&lt;TypoScript&gt;<br />
10 = TEXT<br />
10.data = register:tx_templavoila_pi1.parentRec.header<br />
&lt;/TypoScript&gt;<br />
&lt;proc type="array"&gt;<br />
&lt;stdWrap&gt;&lt;/stdWrap&gt;<br />
&lt;HSC&gt;1&lt;/HSC&gt;<br />
&lt;/proc&gt;<br />
&lt;/tx_templavoila&gt;<br />
&lt;/field_headline&gt;</code></div>
<p>Folgendes XML in der DataStructure (DS) erzeugt ein Feld welches der Redakteur im Backend nicht sieht, jedoch verarbeitet wird:</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #cc0000;">10</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #990000; font-weight: bold;">TEXT</span>
10<span style="color: #339933; font-weight: bold;">.</span>data <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #FF6FEA;">register</span><span style="color: #339933; font-weight: bold;">:</span><span style="color: #FF6FEA;">tx_templavoila_pi1</span><span style="color: #339933; font-weight: bold;">.</span>parentRec<span style="color: #339933; font-weight: bold;">.</span>header</pre></div></div>

<p>Über die Eigenschaft &#8220;data&#8221; des TEXT-Objektes wird der Inhalt aus dem Header-Feld des FCEs gezogen. Der Vorteil daran: man kann alles damit machen, was man auch mit einem TEXT-Objekt machen kann. Der Nachteil: sämtliche Eigenschaften welche man dem Header mit auf den Weg gegeben hat (zB Layout) werden ignoriert.</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/header-feld-eines-fce-templavoila-nutzen-turchen-23/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Label und Flagge der Standardsprache ändern</title>
		<link>http://typo3blogger.de/label-und-flagge-der-standardsprache-andern/</link>
		<comments>http://typo3blogger.de/label-und-flagge-der-standardsprache-andern/#comments</comments>
		<pubDate>Tue, 15 Dec 2009 01:53:45 +0000</pubDate>
		<dc:creator>Bernhard Berger</dc:creator>
				<category><![CDATA[TYPO3]]></category>
		<category><![CDATA[TypoScript]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=3470</guid>
		<description><![CDATA[In diesem Post möchte ich euch ein kurzes Snippet vorstellen, mit welchem man den Titel und die Flagge der Standardsprache in TYPO3 ändern kann. Nützlich vorallem bei Seiten mit einer großen Sprachvielfalt oder auch einfach nur um dem User etwas mehr Komfort im Backend zu bieten. Folgende 4 Zeilen müssen dazu in die TSconfig (Seiteneigenschaften [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p><img src="http://typo3blogger.de/wp-content/uploads/2009/12/modlang.jpg" alt="Defaultsprache umbenennen" width="178" height="42" class="size-full wp-image-3471" style="float: right" />In diesem Post möchte ich euch ein kurzes Snippet vorstellen, mit welchem man den Titel und die Flagge der Standardsprache in TYPO3 ändern kann. Nützlich vorallem bei Seiten mit einer großen Sprachvielfalt oder auch einfach nur um dem User etwas mehr Komfort im Backend zu bieten.</p>
<p><span id="more-3470"></span></p>
<p>Folgende 4 Zeilen müssen dazu in die TSconfig (<span style="font-style: italic">Seiteneigenschaften &gt; Optionen &gt; TSconfig</span>) geschrieben werden:</p>
<div style="margin-top: 20px">

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;">mod<span style="color: #339933; font-weight: bold;">.</span>SHARED <span style="color: #009900;">&#123;</span>
 defaultLanguageLabel <span style="color: #339933; font-weight: bold;">=</span> English
 defaultLanguageFlag <span style="color: #339933; font-weight: bold;">=</span> us<span style="color: #339933; font-weight: bold;">.</span>gif <span style="color: #aaa; font-style: italic;"># zu finden unter /typo3/gfx/flags/</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

</div>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/label-und-flagge-der-standardsprache-andern/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>userFunc benutzen &#8211; Türchen 14</title>
		<link>http://typo3blogger.de/userfunc-benutzen/</link>
		<comments>http://typo3blogger.de/userfunc-benutzen/#comments</comments>
		<pubDate>Mon, 14 Dec 2009 21:29:56 +0000</pubDate>
		<dc:creator>Tim Lochmüller</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[TYPO3]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[TypoScript]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=3461</guid>
		<description><![CDATA[Heute will ich euch mal näher bringen wie man eine userFunc z.B. in einer Condition sinnvoll einsetzt. Neben Conditions wie IP, Version, System und den Lieblingen PIDinRootline und PIDupinRootline, gibt es auch noch eine benutzerspezifische Funktion. Mittels dieser ist es möglich, eigene Vergleiche in TypoScript unterzubringen, welche wiederum in PHP geschrieben sind. Um solch eine [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Heute will ich euch mal näher bringen wie man eine userFunc z.B. in einer Condition sinnvoll einsetzt. Neben Conditions wie IP, Version, System und den Lieblingen PIDinRootline und PIDupinRootline, gibt es auch noch eine benutzerspezifische Funktion. Mittels dieser ist es möglich, eigene Vergleiche in TypoScript unterzubringen, welche wiederum in PHP geschrieben sind.<span id="more-3461"></span></p>
<p>Um solch eine Condition zu bauen benötigt man erst einmal eine PHP Datei, in der der Vergleich untergebracht ist. Anders als in der Dokumentation beschrieben, ist es nicht ratsam die Funktion direkt in der localconf.php unterzubringen, sondern in einer separaten Datei. Es gibt nämlich inzwischen Stellen (soweit ich weiß auch im T3 Core), an denen die localconf.php zweimal geladen wird. Wenn dann dort eine Funktion untergebracht ist, führt dies zu einem Fehler (Funktion 2x deklariert). So sieht nun unsere Beispiel Datei (userFunc.php) aus (Teils der TSRef entnommen):</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #6666FF; font-weight: bold;">function</span> user_userfuncmatch<span style="color: #009900;">&#40;</span><span style="color: #FF6FEA;">$cmd</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
   <span style="color: #b1b100;">switch</span><span style="color: #009900;">&#40;</span><span style="color: #FF6FEA;">$cmd</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
      <span style="color: #b1b100;">case</span> <span style="color: #3366CC;">&quot;checkLocalIP&quot;</span><span style="color: #339933;">:</span>
         <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">strstr</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">getenv</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;REMOTE_ADDR&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span><span style="color: #3366CC;">&quot;192.168&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
            <span style="color: #b1b100;">return</span> <span style="color: #6666FF; font-weight: bold;">true</span><span style="color: #339933;">;</span>
         <span style="color: #b1b100;">break</span><span style="color: #339933;">;</span>
      <span style="color: #b1b100;">case</span> <span style="color: #3366CC;">&quot;checkSomethingElse&quot;</span><span style="color: #339933;">:</span>
         <span style="color: #666666; font-style: italic;">// ....</span>
         <span style="color: #b1b100;">break</span><span style="color: #339933;">;</span>
   <span style="color: #009900;">&#125;</span>
   <span style="color: #666666; font-style: italic;">// Wichtig: Die Funktion sollte immer true/false zurückgeben</span>
   <span style="color: #b1b100;">return</span> <span style="color: #6666FF; font-weight: bold;">false</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Diese Datei wird im Anschluss mittels include in die localconf.php geladen.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #b1b100;">include_once</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'userFunc.php'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Im Anschluss kann der Test in TypoScript vorgenommen werden. Dies geschieht wie bei allen Conditions über die eckigen Klammern. Innerhalb der normalen Klammern gibt man den Parameter $cmd an. Diesen kann man in der PHP-Datei abfragen und z.B. (wie oben) mehrere Bedingungen in ein und der selben userFunc unter bringen.</p>

<div class="wp_syntax"><div class="code"><pre class="typoscript" style="font-family:monospace;"><span style="color: #009900;">&#91;</span><span style="color: #ed7d14;">userFunc</span> <span style="color: #339933; font-weight: bold;">=</span> <span style="color: #FF6FEA;">user_userfuncmatch</span><span style="color: #009900;">&#40;</span>checkLocalIP<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#93;</span>
   <span style="color: #aaa; font-style: italic;">// Hier euer Inhalt für die Bedingung</span>
<span style="color: #009900;">&#91;</span><span style="color: #ed7d14;">global</span><span style="color: #009900;">&#93;</span></pre></div></div>

<p>Viel Spaß beim userFunc bauen.</p>
<p>PS: userFunc&#8217;s geben einem viel Freiheit. Diese sollte man nicht zu oft benutzen, weil dadurch das TypoScript undurchsichtig wird und man auch nicht immer weiß wo die Funktion definiert wurde. Also&#8230; mit bedacht benutzen. <img src='http://typo3blogger.de/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/userfunc-benutzen/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Standardbildgröße ändern &#8211; Türchen 12</title>
		<link>http://typo3blogger.de/stadardbildgrosse-aendern/</link>
		<comments>http://typo3blogger.de/stadardbildgrosse-aendern/#comments</comments>
		<pubDate>Sat, 12 Dec 2009 15:01:37 +0000</pubDate>
		<dc:creator>Tim Lochmüller</dc:creator>
				<category><![CDATA[TYPO3]]></category>
		<category><![CDATA[TypoScript]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=3440</guid>
		<description><![CDATA[Heute gibt es im Türchen in kleines TS Snippet. Oft hat man das Problem das Bilder nicht größer werden, obwohl diese größer eingepflegt wurden oder das Kunden riesige Bilder einpflegen und einfach keine Größe setzen (Layout zerschossen). Um dem Problem entgegenzuwirken kann man dies in den Konstanten definieren. Dazu eignen sich diese beiden Zeilen TypoScript: [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Heute gibt es im Türchen in kleines TS Snippet. Oft hat man das Problem das Bilder nicht größer werden, obwohl diese größer eingepflegt wurden oder das Kunden riesige Bilder einpflegen und einfach keine Größe setzen (Layout zerschossen). Um dem Problem entgegenzuwirken kann man dies in den Konstanten definieren. Dazu eignen sich diese beiden Zeilen TypoScript:<span id="more-3440"></span></p>

<div class="wp_syntax"><div class="code"><pre class="typoscipt" style="font-family:monospace;">styles.content.imgtext.maxW = 300
styles.content.imgtext.maxWInText = 150</pre></div></div>

<p>Die obere Konstante ist für die Maximalbreite in Bildelementen. Sobald ein Text um das Bild gewrapt wird, kommt die untere Konstante zum Einsatz, die per Default 50% der ersten ist. Es ist empfehlenswert diese Werte für jede TYPO3 Installation anzupassen, damit die Redakteure nicht so viel Unfug treiben können <img src='http://typo3blogger.de/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/stadardbildgrosse-aendern/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>TipAFriend mit powermail</title>
		<link>http://typo3blogger.de/tipafriend-mit-powermail/</link>
		<comments>http://typo3blogger.de/tipafriend-mit-powermail/#comments</comments>
		<pubDate>Thu, 26 Nov 2009 10:20:00 +0000</pubDate>
		<dc:creator>Alex Kellner</dc:creator>
				<category><![CDATA[Extension]]></category>
		<category><![CDATA[TypoScript]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=3193</guid>
		<description><![CDATA[Im TER gibt es bereits ein paar ReferAFriend Erweiterungen, mit denen man einen Freund auf die aktuelle besuchte Internetseite aufmerksam machen kann. Auch mit powermail ist diese Funktionalität ohne Probleme nachbaubar. Die Idee kam mir eigentlich erst nach einem Tipp durch die TYPO3 Usergroup Leipzig. Warum powermail? Der Einsatz von powermail macht vor allem dann [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Im TER gibt es bereits ein paar ReferAFriend Erweiterungen, mit denen man einen Freund auf die aktuelle besuchte Internetseite aufmerksam machen kann. Auch mit powermail ist diese Funktionalität ohne Probleme nachbaubar. Die Idee kam mir eigentlich erst nach einem Tipp durch die <a href="http://www.tugle.de/know_how/typo3_tutorials/tipafriend_mit_powermail.html" target="_blank">TYPO3 Usergroup Leipzig</a>.</p>
<p><span id="more-3193"></span></p>
<p><strong>Warum powermail?</strong><br />
Der Einsatz von powermail macht vor allem dann Sinn:</p>
<ol>
<li>powermail wird sowieso bereits auf dem System genutzt</li>
<li>Man bestimmt selbst, wieviele und welche Felder gebraucht werden</li>
<li>Verschiedenste Spam-Prevention Maßnahmen werden unterstützt</li>
<li>Speicherung in Datenbank ist Standard</li>
<li>Der Admin kann zur Kontrolle mitlesen</li>
<li>Flexibilität kann genutzt werden (JS Validierung, Eingabenvalidierung über userFunc, TypoScript stdWrap für Felder, etc&#8230;)</li>
</ol>
<p><strong>Die Idee</strong><br />
Der Absender in einem powermail Formular bekommt in der Regel sowieso eine Mail. Jetzt muss nur noch der Empfänger im Frontend bestimmbar sein. Die gewünschte URL kann man in einem Hiddenfield über Typoscript vorfüllen.<br />
<a href="http://www.conject.com/de/unternehmen/seite-weiterempfehlen.html?recommendpage=http://www.conject.com/de/special/xmas.html" target="_blank" title="conject Weihnachtsspiel weiterempfehlen"><img src="http://easycaptures.com/fs/uploaded/430/3060158334.jpg" title="Beispiel tipAFriend mit powermail auf conject.com" style="width: 510px;" /></a></p>
<p><strong>Die Umsetzung</strong><br />
<strong>1. Formular erstellen</strong><br />
Eine neue Seite (z.B. im Menü verborgen) erstellen und ein powermail Formular einfügen. Beispielfelder können hier sein: Absender-Vorname, Absender-Nachname, Absender-E-Mail, Empfänger-Vorname, Empfänger-Nachname, Empfänger-E-Mail, Submit, Hiddenfield für die zu nutzende URL (Hier könnt ihr natürlich selbst entscheiden, welche Felder Pflichtfelder sein sollen).<br />
<img src="http://easycaptures.com/fs/uploaded/430/3369513273.jpg" /><br />
In dem Beispiel oben gibt es noch ein weiteres Feld &#8220;Zeige URL (TS)&#8221; mit dem man die URL nochmal im Formular anzeigt.</p>
<p>Hier ein paar Beispiele zu den anderen wichtigen Feldern in powermail:<br />
<img src="http://easycaptures.com/fs/uploaded/430/9405688844.jpg" alt="TipAFriend mit der TYPO3 Extension powermail - Bild1" title="TipAFriend mit der TYPO3 Extension powermail - Bild1" /><br />
<img src="http://easycaptures.com/fs/uploaded/430/6023936869.jpg" alt="TipAFriend mit der TYPO3 Extension powermail - Bild2" title="TipAFriend mit der TYPO3 Extension powermail - Bild2" /><br />
<img src="http://easycaptures.com/fs/uploaded/430/0081031231.jpg" alt="TipAFriend mit der TYPO3 Extension powermail - Bild3" title="TipAFriend mit der TYPO3 Extension powermail - Bild3" /></p>
<p><strong>2. Die URL einbauen</strong><br />
Man kann nun das Hiddenfield über Typoscript vorfüllen:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># a) Get URL</span>
lib<span style="color: #339933;">.</span>tipafriend <span style="color: #339933;">=</span> TEXT
lib<span style="color: #339933;">.</span>tipafriend<span style="color: #339933;">.</span>data <span style="color: #339933;">=</span> GPvar<span style="color: #339933;">:</span>rp
lib<span style="color: #339933;">.</span>tipafriend<span style="color: #339933;">.</span><span style="color: #990000;">htmlSpecialChars</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># b) Write label for form</span>
lib<span style="color: #339933;">.</span>tipafriendlabel <span style="color: #339933;">=</span> COA
lib<span style="color: #339933;">.</span>tipafriendlabel <span style="color: #009900;">&#123;</span>
	wrap <span style="color: #339933;">=</span> <span style="color: #339933;">&lt;</span>div <span style="color: #6666FF; font-weight: bold;">class</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;tx_powermail_pi1_fieldwrap_html tx_powermail_pi1_fieldwrap_html_text tx_powermail_pi1_fieldwrap_html_0&quot;</span><span style="color: #339933;">&gt;|&lt;/</span>div<span style="color: #339933;">&gt;</span>
&nbsp;
	<span style="color: #cc66cc;">10</span> <span style="color: #339933;">=</span> TEXT
	10<span style="color: #339933;">.</span>value <span style="color: #339933;">=</span> URL<span style="color: #339933;">:</span>
	10<span style="color: #339933;">.</span>noTrimWrap <span style="color: #339933;">=</span> <span style="color: #339933;">||</span> <span style="color: #339933;">|</span>
&nbsp;
	<span style="color: #cc66cc;">20</span> <span style="color: #339933;">&lt;</span> lib<span style="color: #339933;">.</span>tipafriend
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># c) Fill hidden field</span>
plugin<span style="color: #339933;">.</span>tx_powermail_pi1<span style="color: #339933;">.</span>prefill<span style="color: #339933;">.</span>uid123 <span style="color: #339933;">&lt;</span> lib<span style="color: #339933;">.</span>tipafriend</pre></div></div>

<p>Bei a) wird das Objekt einfach nur mit dem Inhalt der GET Variable &#038;rp=inhalt befüllt (Wichtig ist hier htmlSpecialChars, das XSS verhindern soll).<br />
Bei b) wird ein anderes Objekt erstellt, das man im Formular wieder aufgreifen kann &#8211; es zeigt im Formular nochmal die zu versendende URL.<br />
Bei c) wird das Feld uid123 (unser Hiddenfield) mit dem GET Parameter &#038;rp=inhalt befüllt</p>
<p><strong>3. Link auf Formular</strong><br />
Wie bei anderen TipAFriend Erweiterungen braucht man noch einen Link auf die Formularseite mit dem GET Parameter der aktuellen Seite.<br />
Ein Mail-Icon mit einem entsprechendem Link kann z.B. so aussehen:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># Create TipAFriend link</span>
lib<span style="color: #339933;">.</span>tipafriend_icon <span style="color: #339933;">=</span> IMAGE
lib<span style="color: #339933;">.</span>tipafriend_icon <span style="color: #009900;">&#123;</span>
	<span style="color: #990000;">file</span> <span style="color: #339933;">=</span> fileadmin<span style="color: #339933;">/</span><span style="color: #990000;">mail</span><span style="color: #339933;">.</span>gif
	altText <span style="color: #339933;">=</span> Seite empfehlen
	titleText <span style="color: #339933;">=</span> Seite empfehlen
	imageLinkWrap <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span>
	imageLinkWrap<span style="color: #339933;">.</span>enable <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span>
	imageLinkWrap<span style="color: #339933;">.</span>typolink<span style="color: #339933;">.</span>parameter <span style="color: #339933;">=</span> <span style="color: #cc66cc;">123</span>
	imageLinkWrap<span style="color: #339933;">.</span>typolink<span style="color: #339933;">.</span>additionalParams<span style="color: #339933;">.</span>cObject <span style="color: #339933;">=</span> COA
	imageLinkWrap<span style="color: #339933;">.</span>typolink<span style="color: #339933;">.</span>additionalParams<span style="color: #339933;">.</span>cObject <span style="color: #009900;">&#123;</span>
		<span style="color: #cc66cc;">10</span> <span style="color: #339933;">=</span> TEXT
		10<span style="color: #339933;">.</span>wrap <span style="color: #339933;">=</span> <span style="color: #339933;">&amp;</span>rp<span style="color: #339933;">=</span>
		10<span style="color: #339933;">.</span>data <span style="color: #339933;">=</span> getIndpEnv<span style="color: #339933;">:</span>TYPO3_SITE_URL
&nbsp;
		<span style="color: #cc66cc;">20</span> <span style="color: #339933;">=</span> TEXT
		20<span style="color: #339933;">.</span>typolink<span style="color: #339933;">.</span>parameter<span style="color: #339933;">.</span>data <span style="color: #339933;">=</span> TSFE<span style="color: #339933;">:</span>id
		20<span style="color: #339933;">.</span>typolink<span style="color: #339933;">.</span>returnLast <span style="color: #339933;">=</span> url
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># Output on a subpart in the html Template</span>
page<span style="color: #339933;">.</span>10<span style="color: #339933;">.</span>subparts<span style="color: #339933;">.</span>TIPAFRIEND <span style="color: #339933;">&lt;</span> lib<span style="color: #339933;">.</span>tipafriend_icon</pre></div></div>

<p><strong>Abschließendes Blabla</strong></p>
<ul>
<li><strong>ACHTUNG</strong> &#8211; Generell gilt für TipAFriend Erweiterungen: Gerade wenn man dem User die Wahl der Empfängeradresse überlasst, sollte man ein achtsames Auge auf die Nutzung des Formulares werfen. Sonst habt ihr im Handumdrehen eine Spamschleuder geschaffen.</li>
<li>Das ist nur ein Hinweis, wie man es machen kann. Sicher gibt es noch ein paar coole Dinge, die man mit einbauen könnte (Geschlechtsspezifische Anrede, etc&#8230;)</li>
</ul>
<p><strong>Ein paar Links</strong></p>
<ul>
<li><a href="http://www.tugle.de/know_how/typo3_tutorials/tipafriend_mit_powermail.html" target="_blank">Ursprüngliche Idee von der TUGLE</a></li>
<li><a href="http://typo3.org/documentation/document-library/extension-manuals/powermail/1.5.1/view/" target="_blank">Handbuch powermail (Version 1.5.1)</a></li>
<li><a href="http://www.einpraegsam.net/fachliches/typo3-extensions/powermail.html" target="_blank">powermail Testformular</a></li>
<li><a href="http://www.einpraegsam.net/fachliches/typo3-extensions/powermail-video.html" target="_blank">powermail Video Tutorial</a></li>
</ul>
<p>Hoffentlich kann es jemand gebrauchen,</p>
<p>Cheers, Alex</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/tipafriend-mit-powermail/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>FE Login auf jeder Seite einbinden</title>
		<link>http://typo3blogger.de/fe-login-auf-jeder-seite-einbinden/</link>
		<comments>http://typo3blogger.de/fe-login-auf-jeder-seite-einbinden/#comments</comments>
		<pubDate>Wed, 21 Oct 2009 08:46:38 +0000</pubDate>
		<dc:creator>Alex Kellner</dc:creator>
				<category><![CDATA[Extension]]></category>
		<category><![CDATA[TYPO3]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[TypoScript]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=2970</guid>
		<description><![CDATA[Ähnlich dem Thema Suchformular auf jeder Seite einbinden, geht das natürlich auch mit einem Loginfeld. An einem Subpart ###LOGIN### kann man einfach ein Loginformular anzeigen, dass sich bei einer erfolgreichen Anmeldung gegen eine Ansicht mit Vor- und Nachname tauschen soll. Das Ganze ist kein Hexenwerk und auch nicht wirklich bahnbrechend neu &#8211; aber als Copy [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Ähnlich dem Thema <a href="/indexed_search/" target="_blank">Suchformular auf jeder Seite einbinden</a>, geht das natürlich auch mit einem Loginfeld.<br />
An einem Subpart ###LOGIN### kann man einfach ein Loginformular anzeigen, dass sich bei einer erfolgreichen Anmeldung gegen eine Ansicht mit Vor- und Nachname tauschen soll.<br />
Das Ganze ist kein Hexenwerk und auch nicht wirklich bahnbrechend neu &#8211; aber als Copy &#038; Paste Vorlage allemal tauglich <img src='http://typo3blogger.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><span id="more-2970"></span><br />
<strong>Screens</strong><br />
<img src="http://typo3blogger.de/wp-content/uploads/2009/10/screen11.jpg" width="252" height="164" /><br />
<img src="http://typo3blogger.de/wp-content/uploads/2009/10/screen21.jpg" width="247" height="130" /><br />
Beispiele von der Seite <a href="http://www.lehrer-in-spe.de" target="_blank">www.lehrer-in-spe.de</a></p>
<p><strong>Beispiel Code</strong><br />
Setup:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># Loginformular</span>
temp<span style="color: #339933;">.</span>login <span style="color: #339933;">=</span> COA
temp<span style="color: #339933;">.</span>login <span style="color: #009900;">&#123;</span>
	<span style="color: #cc66cc;">10</span> <span style="color: #339933;">=</span> TEXT
	10<span style="color: #339933;">.</span>value <span style="color: #339933;">=</span> <span style="color: #339933;">&lt;</span>form action<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;
	20 = TEXT
	20.typolink {
		parameter.data = TSFE:id
		returnLast = url
	} 
	30 = TEXT
	30.value = &quot;</span> enctype<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;multipart/form-data&quot;</span> method<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;post&quot;</span> <span style="color: #6666FF; font-weight: bold;">class</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;loginform&quot;</span><span style="color: #339933;">&gt;</span>
	<span style="color: #cc66cc;">40</span> <span style="color: #339933;">=</span> TEXT
	40<span style="color: #339933;">.</span>value <span style="color: #339933;">=</span> <span style="color: #339933;">&lt;</span>input name<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;logintype&quot;</span> value<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;login&quot;</span> type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;hidden&quot;</span> <span style="color: #339933;">/&gt;</span>
	<span style="color: #cc66cc;">50</span> <span style="color: #339933;">=</span> TEXT
	50<span style="color: #339933;">.</span>value <span style="color: #339933;">=</span> <span style="color: #339933;">&lt;</span>input name<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;pid&quot;</span> value<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;<span style="color: #006699; font-weight: bold;">{$pid_feuser}</span>&quot;</span> type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;hidden&quot;</span> <span style="color: #339933;">/&gt;</span>
	<span style="color: #cc66cc;">60</span> <span style="color: #339933;">=</span> TEXT
	60<span style="color: #339933;">.</span>value <span style="color: #339933;">=</span> <span style="color: #339933;">&lt;</span>input name<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;user&quot;</span> size<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;20&quot;</span> value<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;Dein Vorname&quot;</span> onfocus<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;if(this.value=='Dein Vorname') this.value='';&quot;</span> onblur<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;if(this.value=='') this.value='Dein Vorname';&quot;</span> type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text&quot;</span> id<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;user&quot;</span> <span style="color: #6666FF; font-weight: bold;">class</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;username&quot;</span> <span style="color: #339933;">/&gt;</span>
	<span style="color: #cc66cc;">70</span> <span style="color: #339933;">=</span> TEXT
	70<span style="color: #339933;">.</span>value <span style="color: #339933;">=</span> <span style="color: #339933;">&lt;</span>input name<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;pass&quot;</span> size<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;20&quot;</span> value<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;Deine E-Mail&quot;</span> onfocus<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;if(this.value=='Deine E-Mail') this.value='';&quot;</span> onblur<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;if(this.value=='') this.value='Deine E-Mail';&quot;</span> type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;password&quot;</span> id<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;pass&quot;</span> <span style="color: #6666FF; font-weight: bold;">class</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;password&quot;</span> <span style="color: #339933;">/&gt;</span>
	<span style="color: #cc66cc;">80</span> <span style="color: #339933;">=</span> TEXT
	80<span style="color: #339933;">.</span>value <span style="color: #339933;">=</span> <span style="color: #339933;">&lt;</span>input name<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;submit&quot;</span> value<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;Login&quot;</span> type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;submit&quot;</span> <span style="color: #6666FF; font-weight: bold;">class</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;submit&quot;</span> <span style="color: #339933;">/&gt;</span>
	<span style="color: #cc66cc;">100</span> <span style="color: #339933;">=</span> TEXT
	100<span style="color: #339933;">.</span>value <span style="color: #339933;">=</span> <span style="color: #339933;">&lt;/</span>form<span style="color: #339933;">&gt;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># Logoutbutton</span>
temp<span style="color: #339933;">.</span>logout <span style="color: #339933;">=</span> COA_INT
temp<span style="color: #339933;">.</span>logout <span style="color: #009900;">&#123;</span>
        <span style="color: #cc66cc;">5</span> <span style="color: #339933;">=</span> TEXT
	5<span style="color: #339933;">.</span>typolink <span style="color: #009900;">&#123;</span>
		parameter <span style="color: #339933;">=</span> <span style="color: #009900;">&#123;</span><span style="color: #FF6FEA;">$pid_logout_redirect</span><span style="color: #009900;">&#125;</span>
		returnLast <span style="color: #339933;">=</span> url
	<span style="color: #009900;">&#125;</span> 
        5<span style="color: #339933;">.</span>wrap <span style="color: #339933;">=</span> <span style="color: #339933;">&lt;</span>form action<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;|&quot;</span> <span style="color: #6666FF; font-weight: bold;">class</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;loginform&quot;</span><span style="color: #339933;">&gt;</span>
	<span style="color: #cc66cc;">10</span> <span style="color: #339933;">=</span> TEXT
	10<span style="color: #339933;">.</span>value <span style="color: #339933;">=</span> <span style="color: #339933;">&lt;</span>input type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;button&quot;</span> value<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;Logout&quot;</span> <span style="color: #6666FF; font-weight: bold;">class</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;submit&quot;</span> onclick<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;location='
	20 = TEXT
	20.wrap = <span style="color: #006699; font-weight: bold;">{$baseURL}</span>|
	20.typolink {
		value = bla
		parameter = <span style="color: #006699; font-weight: bold;">{$pid_logout_redirect}</span>
		returnLast = url
		additionalParams = &amp;logintype=logout
	}
	30 = TEXT
	30.value = '&quot;</span> <span style="color: #6666FF; font-weight: bold;">class</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;submit&quot;</span> <span style="color: #339933;">/&gt;</span>
	30<span style="color: #339933;">.</span>wrap <span style="color: #339933;">=</span> <span style="color: #339933;">|&lt;</span>input type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;hidden&quot;</span> name<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;logintype&quot;</span> value<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;logout&quot;</span> <span style="color: #339933;">/&gt;</span>
	<span style="color: #cc66cc;">40</span> <span style="color: #339933;">=</span> TEXT
	40<span style="color: #339933;">.</span>dataWrap <span style="color: #339933;">=</span> <span style="color: #339933;">&lt;</span>div <span style="color: #6666FF; font-weight: bold;">class</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;logoutname&quot;</span><span style="color: #339933;">&gt;</span><span style="color: #009900;">&#123;</span>TSFE<span style="color: #339933;">:</span>fe_user<span style="color: #339933;">|</span>user<span style="color: #339933;">|</span>name<span style="color: #009900;">&#125;</span><span style="color: #339933;">&lt;/</span>div<span style="color: #339933;">&gt;</span>
	<span style="color: #cc66cc;">50</span> <span style="color: #339933;">=</span> TEXT
	50<span style="color: #339933;">.</span>value <span style="color: #339933;">=</span> <span style="color: #339933;">&lt;/</span>form<span style="color: #339933;">&gt;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
&nbsp;
<span style="color: #009900;">&#91;</span>usergroup <span style="color: #339933;">=</span> <span style="color: #339933;">*</span><span style="color: #009900;">&#93;</span>
page<span style="color: #339933;">.</span>10<span style="color: #339933;">.</span>subparts<span style="color: #339933;">.</span>LOGIN <span style="color: #339933;">&lt;</span> temp<span style="color: #339933;">.</span>logout
<span style="color: #009900;">&#91;</span><span style="color: #b1b100;">else</span><span style="color: #009900;">&#93;</span>
page<span style="color: #339933;">.</span>10<span style="color: #339933;">.</span>subparts<span style="color: #339933;">.</span>LOGIN <span style="color: #339933;">&lt;</span> temp<span style="color: #339933;">.</span>login
<span style="color: #009900;">&#91;</span><span style="color: #990000;">end</span><span style="color: #009900;">&#93;</span></pre></div></div>

<p>Constants:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># Seiten ID in der die FE_User gespeichert sind</span>
pid_feuser <span style="color: #339933;">=</span> <span style="color: #cc66cc;">10</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># Seite die nach einem Logout angesprungen werden soll</span>
pid_logout_redirect <span style="color: #339933;">=</span> <span style="color: #cc66cc;">14</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># Prefix für Redirect</span>
baseURL <span style="color: #339933;">=</span> http<span style="color: #339933;">:</span><span style="color: #666666; font-style: italic;">//www.deineURL.de/</span></pre></div></div>

<p>Cheers, Alex</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/fe-login-auf-jeder-seite-einbinden/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Neue Features in 4.3 &#8211; Teil 5</title>
		<link>http://typo3blogger.de/neue-features-in-4-3-teil-5/</link>
		<comments>http://typo3blogger.de/neue-features-in-4-3-teil-5/#comments</comments>
		<pubDate>Wed, 07 Oct 2009 06:36:09 +0000</pubDate>
		<dc:creator>Georg Ringer</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[Releases]]></category>
		<category><![CDATA[TYPO3]]></category>
		<category><![CDATA[TypoScript]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=2554</guid>
		<description><![CDATA[Im Anschluss zu Teil 4 ist hier nun der nächste Artikel aus der Reihe &#8220;neue Features im neuen TYPO3&#8243;. Sorry für die längere Pause chash mit 32 statt 10 Zeichen Besonders bei größeren Seiten ist es sehr leicht möglich, einen nicht eindeutigen chash zu genieren, da bisher nur die ersten 10 Zeichen des generierten Hashwertes [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Im Anschluss zu <a title="Neue Features in 4.3 - Teil 4" href="http://typo3blogger.de/neue-features-in-4-3-teil-4/">Teil 4</a> ist hier nun der nächste Artikel aus der Reihe &#8220;neue Features im neuen TYPO3&#8243;. Sorry für die längere Pause</p>
<p><span id="more-2554"></span></p>
<p><strong>chash mit 32 statt 10 Zeichen</strong></p>
<p>Besonders bei größeren Seiten ist es sehr leicht möglich, einen nicht eindeutigen chash zu genieren, da bisher nur die ersten 10 Zeichen des generierten Hashwertes verwendet wurden. Ab sofort wird der volle Hashwert mit 32 Zeichen verwendet. Zusätzlich stehen nun Funktionen in t3lib_div zum korrekten Berechnen zur Verfügung.</p>
<p><strong>Überarbeiteter Wizard für neue Datensätze (Backend)</strong></p>
<p>Im Wizard für neue Datensätze wurde etwas aufgeräumt und die verschiedenen Datensätze sind nach Extension gruppiert.</p>
<p><strong>Überarbeiteter Wizard für neue Content-Elemente (Backend)</strong></p>
<p>Auch dieser Wizard hat eine Überarbeitung erfahren und kann nun bequem mit TsConfig sortiert, bearbeitet und ergänzt werden. Hier ein Beispiel aus einer aktuellen Website, wo 2 eigene Elemente hinzugefügt worden sind:</p>
<blockquote><p>mod.wizards.newContentElement.wizardItems {<br />
common.header = LLL:EXT:cms/layout/locallang_db_new_content_el.xml:common<br />
common.elements {<br />
text {<br />
icon = gfx/c_wiz/regular_text.gif<br />
title = LLL:EXT:cms/layout/locallang_db_new_content_el.xml:common_regularText_title<br />
description = LLL:EXT:cms/layout/locallang_db_new_content_el.xml:common_regularText_description<br />
tt_content_defValues {<br />
CType = text<br />
}<br />
}</p>
<p>cenoticemsg {<br />
icon = ../typo3conf/ext/cemodifyelements/ic_aufmerksamkeitserreger.gif<br />
title = LLL:EXT:cenoticemsg/locallang_db.xml:tt_content.CType_pi1<br />
description = LLL:EXT:cms/layout/locallang_db_new_content_el.xml:special_sitemap_description<br />
tt_content_defValues {<br />
CType = cenoticemsg_pi1<br />
}<br />
}</p>
<p>ceerror {<br />
icon = ../typo3conf/ext/cemodifyelements/ic_fehlerbeschreibung.gif<br />
title = LLL:EXT:ceerror/locallang_db.xml:tt_content.CType_pi1<br />
description = LLL:EXT:cms/layout/locallang_db_new_content_el.xml:special_sitemap_description<br />
tt_content_defValues {<br />
CType = ceerror_pi1<br />
}<br />
}</p>
<p>}<br />
common.show = text,textpic,image,bullets,table,cenoticemsg,ceerror<br />
}</p></blockquote>
<p><strong>RSA (Login)</strong></p>
<p>RSA</p>
<p><strong>Error &#8220;Login-error or session timed-out&#8221; (Backend)</strong></p>
<p>Diese Fehlermeldung ist wohl jedem sehr gut bekannt und taucht immer auf sobald man das Backend aufruft und nicht eingeloggt ist. Nun wird man endlich sofort auf die Login-Seite weitergeleitet &#8211; wieder ein sinnloser Klick weniger &#8211; danke!</p>
<p><strong>Neuer Login (Backend)</strong></p>
<p>Mit 4.3. ist ein neuer Login entstanden, der endlich valide ist, Labels benützt, mehrsprachig umgesetzt und halbwegs ansehnlich ist &#8211; auch wenn man sich sicher etwas umgewöhnen muss.</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/neue-features-in-4-3-teil-5/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
