<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="https://de.contaowiki.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
		<id>https://de.contaowiki.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Cliff.parnitzky</id>
		<title>Contao Community Documentation - Benutzerbeiträge [de]</title>
		<link rel="self" type="application/atom+xml" href="https://de.contaowiki.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Cliff.parnitzky"/>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Spezial:Beitr%C3%A4ge/Cliff.parnitzky"/>
		<updated>2026-04-30T12:27:23Z</updated>
		<subtitle>Benutzerbeiträge</subtitle>
		<generator>MediaWiki 1.22.6</generator>

	<entry>
		<id>https://de.contaowiki.org/C3:_Tutorial_Extension_Entwicklung_1.Teil:_Grundlagen</id>
		<title>C3: Tutorial Extension Entwicklung 1.Teil: Grundlagen</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/C3:_Tutorial_Extension_Entwicklung_1.Teil:_Grundlagen"/>
				<updated>2015-10-02T15:13:49Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Die Übersetzung für das FE-Template erstellen (Video 44:00) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Dev HOWTOS]] &lt;br /&gt;
&lt;br /&gt;
=Einleitung= &lt;br /&gt;
Seit 2010 arbeite ich nun schon mit Contao. Vorher habe ich die CMS Joomla, Typo3 und Drupal ausprobiert und muss sagen: Contao rocks! Leider hat das CMS aus meiner Sicht jedoch einen entscheidenden Nachteil gegenüber anderen Systemen: Es gibt nur wenige Tutorials, die &amp;quot;semiprofessionellen&amp;quot; Programmierern einen schrittweisen und zusammenhängenden Einstieg in die Extension-Entwicklung mit Contao 3 anhand eines Praxisbeispiels ermöglichen. &lt;br /&gt;
&lt;br /&gt;
Die Screencast-Reihe von '''Tristan Lins auf Youtube''' stellt dabei eine Ausnahme dar. Ich persönlich mag es aber, Tutorials auch in geschriebener Form vor mir zu haben. Daher habe ich damit begonnen, die Videos in dieses Wiki zu übertragen. Viel Spaß damit! &lt;br /&gt;
&lt;br /&gt;
Videolink:  [http://www.youtube.com/watch?v=WeN5a0R9asQ&amp;amp;feature=share&amp;amp;list=PL3mn8AtCRAstvuAWY8dhrHisMYapPxOnt Basics - der Contao Aufbau, DCA]&lt;br /&gt;
==An wen richtet sich dieses Tutorial?==&lt;br /&gt;
Dieses Tutorial ist für all diejenigen gedacht, die ein Step-by-Step Tutorial zum Einstieg in die Extension-Entwicklung mit Contao 3 suchen. &lt;br /&gt;
&lt;br /&gt;
==Lernziel==&lt;br /&gt;
In diesem Tutorial lernt ihr die Grundlagen der Extension-Entwicklung mit Contao 3 anhand eines praktischen Beispiels. Es wird ein Modul programmiert, welches verschiedene Screencast-URLs inkl. Titel auflistet.&lt;br /&gt;
&lt;br /&gt;
'''So sieht das fertige Modul aus:'''&lt;br /&gt;
&lt;br /&gt;
[[Datei:T1_fertigesModul.jpg|Fertiges Modul]]&lt;br /&gt;
&lt;br /&gt;
==Was man wissen sollte==&lt;br /&gt;
Grundlagen in PHP, objektorientierter Programmierung und SQL sind nötig. Natürlich sollte man sich auch mit den Grundlagen von Contao 3 auskennen.&lt;br /&gt;
&lt;br /&gt;
==Vorbereitung==&lt;br /&gt;
Eine Version von Contao 3.0.4 oder höher sollte installiert sein.&lt;br /&gt;
Optional: Da die Extension in das bestehende „Music Academy“-Theme integriert wird, empfiehlt es sich, selbiges zu installieren.&lt;br /&gt;
Ferner sollte folgende Ordnerstruktur in&lt;br /&gt;
''contao/system/modules''&lt;br /&gt;
angelegt werden:&lt;br /&gt;
&lt;br /&gt;
[[Datei:T1_vorbereitung.png|Verzeichnisstruktur der Erweiterung]]&lt;br /&gt;
&lt;br /&gt;
Zum Verständnis: Im Verzeichnis modules liegen die Module, die bereits von Contao mitgeliefert werden, wie z.B. FAQ, Calendar etc. Auch unser Erweiterungsmodul 'screencast' gehört in dieses Verzeichnis.&lt;br /&gt;
&lt;br /&gt;
==Source-Code==&lt;br /&gt;
Den Quellcode könnt ihr hier:&lt;br /&gt;
https://github.com/bit3/contao-screencast3&lt;br /&gt;
herunterladen.&lt;br /&gt;
 {{Hinweis|Es kann sein, dass der Quellcode auf github bereits einer fortgeschritteneren Version entspricht. Passt die Dateien daher ggf. dem Code dieses Tutorials an oder (am besten) programmiert alles selber! }}&lt;br /&gt;
&lt;br /&gt;
=Einen Menüeintrag im Inhaltsbereich der Backend-Module erzeugen.=&lt;br /&gt;
*Erstellt im Verzeichnis ''config'' die Datei ''config.php''. &amp;lt;br/&amp;gt;In der ''config.php'' werden z.B. Frontend- und Backend-Module registriert.&lt;br /&gt;
*Schreibt in die ''config.php'' folgenden Code:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Back end modules&lt;br /&gt;
 */&lt;br /&gt;
$GLOBALS['BE_MOD']['content']['screencast'] = array(&lt;br /&gt;
	'tables' =&amp;gt; array('tl_screencast'),&lt;br /&gt;
	'icon'   =&amp;gt; 'system/modules/screencast/assets/images/screencast.png'&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dabei steht ''['BE_MOD']['content']'' für die Elemente der Backend-Module im Inhaltsbereich (Array). Durch die Erweiterung des Arrays um ''['screencast']'' wird unser neues Modul referenziert.&lt;br /&gt;
Als Wert wird dem Array ein assoziatives Array mit zwei Einträgen (Verweis auf die Tabelle in der Datenbank, sowie auf die Bilddatei) übergeben.&lt;br /&gt;
*Fügt in den Ordner ''screencast/assets/images'' ein Icon für euer Modul ein.&lt;br /&gt;
*Da das assets-Verzeichnis geschützt ist, müsst ihr noch eine ''.htaccess'' Datei in ''screencast/assets/'' speichern. Darin muss stehen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;IfModule !mod_authz_core.c&amp;gt;&lt;br /&gt;
  Order allow,deny&lt;br /&gt;
  Allow from all&lt;br /&gt;
&amp;lt;/IfModule&amp;gt;&lt;br /&gt;
&amp;lt;IfModule mod_authz_core.c&amp;gt;&lt;br /&gt;
  Require all granted&lt;br /&gt;
&amp;lt;/IfModule&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Achtung: Hier besteht eine Abweichung vom Screencast, da ab Apache-Version 2.4 die Anweisung anders lauten muss. &lt;br /&gt;
&lt;br /&gt;
Nun soll in der Auflistung der Elemente im Backend-Modul auch eine entsprechende Übersetzung ausgegeben werden. &lt;br /&gt;
*Erstellt hierzu ein Verzeichnis ''de'' in eurem Verzeichnis ''screencast/languages/''&lt;br /&gt;
*Erstellt in diesem Verzeichnis eine Datei ''modules.php''&lt;br /&gt;
*In diese Datei gebt ihr folgenden Code ein:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
$GLOBALS['TL_LANG']['MOD']['screencast'][0] = 'Screencasts';&lt;br /&gt;
$GLOBALS['TL_LANG']['MOD']['screencast'][1] = 'Screencasts verwalten';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
*Öffnet eure Contao-Backend und navigiert dort zu ''System-&amp;gt;Einstellungen''&lt;br /&gt;
*Setzt dort einen Haken unter den ''Sicherheitseinstellungen-&amp;gt;Internen Cache'' (ab v 3.1. Globale Einstellungen-&amp;gt;Internen Cache umgehen) umgehen.  Und &amp;lt;br/&amp;gt;''Sicherheitseinstellungen-&amp;gt;Fehlermeldungen'' anzeigen.&lt;br /&gt;
*Eure Seitenleiste sollte nach einer Aktualisierung der Seite nun so aussehen:&lt;br /&gt;
[[Datei:t1_BE_Module.png|Die Backend-Module sind nun um den Eintrag &amp;quot;Screencasts&amp;quot; erweitert]]&lt;br /&gt;
&lt;br /&gt;
Heureka! Der Eintrag erscheint in der Liste. Leider wirft Contao jedoch nach Klick auf Screencast noch eine Fehlermeldung.&lt;br /&gt;
&lt;br /&gt;
Was fehlt? Contao kann noch kein DCA-Objekt erstellen. &lt;br /&gt;
&lt;br /&gt;
==Was macht ein DCA?==&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Data Container Arrays (DCAs) dienen zur Speicherung von Tabellen-Metadaten. Jedes DCA beschreibt die Konfiguration einer bestimmten Tabelle, ihre Beziehungen zu anderen Tabellen sowie die einzelnen Felder. Die Contao Core-Engine erkennt anhand dieser Metadaten, wie Datensätze aufgelistet, bearbeitet und gespeichert werden.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
(Quelle: https://contao.org/de/manual/3.0/data-container-arrays.html, Stand: 6.4.13)&lt;br /&gt;
 &lt;br /&gt;
{{Achtung|Momentan gibt es in Abhängigkeit der Version mehrere DCA-Dokus. Schaut daher bitte vorher, welche Doku für eure Contao Version zutrifft.}}&lt;br /&gt;
&lt;br /&gt;
==Wie ist ein DCA aufgebaut?==&lt;br /&gt;
&amp;quot;Ein Data Container Array ist in 6 Sektionen unterteilt. Die erste Sektion speichert globale Informationen wie z.B. Relationen zu anderen Tabellen. Die zweite und dritte Sektion legt fest, wie Datensätze aufgelistet werden und welche Aktionen ein Benutzer ausführen kann. Die vierte Sektion definiert verschiedene Gruppen von Eingabefelder (Paletten) und die letzten beiden Sektionen beschreiben die Eingabefelder im Detail.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
(Quelle: https://contao.org/de/manual/3.0/data-container-arrays.html, Stand: 6.4.13)&lt;br /&gt;
&lt;br /&gt;
Neu in Contao 3: In der DCA-Datei werden auch die SQL-Befehle eingetragen. Eine separate Datei ist nicht mehr notwendig.&lt;br /&gt;
&lt;br /&gt;
Alles klar? Nicht? Ok...dann Schritt für Schritt.&lt;br /&gt;
&lt;br /&gt;
=Das Formular zur Eintragung der Daten erstellen, sowie die Datenbank-Tabelle anlegen.=&lt;br /&gt;
Erstellt im Verzeichnis ''screencast/dca/'' eine Datei mit Namen ''tl_screencast.php''. &lt;br /&gt;
&lt;br /&gt;
==Die Tabellenkonfiguartion==&lt;br /&gt;
&lt;br /&gt;
Anmerkung: Ab jetzt ist &amp;quot;Mut zur Lücke&amp;quot; gefordert. Einige Sachverhalte sind mir in dem Screencast nicht ganz klar geworden. Leider ist auch die Dokumentation auf Contao.org in diesem Bereich noch recht rudimentär. Ich schreib daher auf, was ich verstanden habe.&lt;br /&gt;
&lt;br /&gt;
Auf der Contao-Seite kann man sich über die möglichen Einträge in den DCA informieren.&lt;br /&gt;
https://contao.org/de/manual/3.0/data-container-arrays.html&lt;br /&gt;
&lt;br /&gt;
Leider ist hier derzeit noch nicht aufgeführt, welchem Array-Abschnitt welche Einträge zugeordnet sind. Tristan empfiehlt, sich die Verwendungsmöglichkeiten in bestehenden Modulen abzugucken. &lt;br /&gt;
Für die nachfolgenden Erklärungen empfiehlt es sich jedoch trotzdem, den DCA-Teil der Online-Doku aufzufrufen, um scih über die Bedeutung der Arrayeinträge zu informieren. &lt;br /&gt;
&lt;br /&gt;
Wer nicht alles selber schreiben möchte, kopiert sich nun erstmal den gesamten Inhalt der Datei ''sytem/modules/core/dca/tl_theme.php'' in die ''tl_screencast.php'' und modifiziert diese nur entsprechend der folgenden Beispiele.&lt;br /&gt;
&lt;br /&gt;
*Schreibt in die Datei ''tl_screencast.php'' folgende Zeilen Code:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Table tl_screencast&lt;br /&gt;
 */&lt;br /&gt;
$GLOBALS['TL_DCA']['tl_screencast'] = array&lt;br /&gt;
(&lt;br /&gt;
&lt;br /&gt;
	// Config&lt;br /&gt;
	'config'   =&amp;gt; array&lt;br /&gt;
	(&lt;br /&gt;
		'dataContainer'    =&amp;gt; 'Table',&lt;br /&gt;
		'enableVersioning' =&amp;gt; true,&lt;br /&gt;
		'sql'              =&amp;gt; array&lt;br /&gt;
		(&lt;br /&gt;
			'keys' =&amp;gt; array&lt;br /&gt;
			(&lt;br /&gt;
				'id' =&amp;gt; 'primary'&lt;br /&gt;
			)&lt;br /&gt;
		),&lt;br /&gt;
	),&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''Was passiert hier?'' &lt;br /&gt;
&lt;br /&gt;
In diesem Abschnitt legen wir die Grundeinstellungen für unser Modul fest, so z.B. woher die Daten kommen. &lt;br /&gt;
Ergänzt die Datei mit folgendem Code (Video: 17:47):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
// List&lt;br /&gt;
	'list'     =&amp;gt; array&lt;br /&gt;
	(&lt;br /&gt;
		'sorting'           =&amp;gt; array&lt;br /&gt;
		(&lt;br /&gt;
			'mode'        =&amp;gt; 2,&lt;br /&gt;
			'fields'      =&amp;gt; array('title'),&lt;br /&gt;
			'flag'        =&amp;gt; 1,&lt;br /&gt;
			'panelLayout' =&amp;gt; 'filter;sort,search,limit'&lt;br /&gt;
		),&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
''Was passiert hier?''&lt;br /&gt;
&lt;br /&gt;
Im diesem Abschnitt wird festgelegt, wie die Datensätze aufgelistet werden und welche Sortieroptionen dem Nutzer zur Verfügung stehen sollen.&lt;br /&gt;
So steht ''panelLayout'' z.B. dafür, welche Optionen in der Kopzeile erscheinen sollen. Semiokolon oder Komma stehen dafür, ob das Layout (ein- oder mehrzeilig). Fragt mich aber nicht, warum ''filter'' in Tristans Beispiel nicht auftaucht.&lt;br /&gt;
&lt;br /&gt;
[[Datei:t1_panelLayout.png|Die Elemente des Panel Layouts]]&lt;br /&gt;
&lt;br /&gt;
Schaut bzgl. der anderen Optionen der Online-Doku unter &amp;quot;Datensätze auflisten&amp;quot; nach. &lt;br /&gt;
*Ergänzt die Datei mit folgendem Code (Video: 20:45):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
'label'             =&amp;gt; array&lt;br /&gt;
		(&lt;br /&gt;
			'fields' =&amp;gt; array('title'),&lt;br /&gt;
			'format' =&amp;gt; '%s',&lt;br /&gt;
		),&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Was passiert hier?&lt;br /&gt;
&lt;br /&gt;
Hier werden die Bezeichnungen gesetzt, die später in der Listenansicht erscheinen sollen. In unserem Fall also immer der Titel der Screencasts.&lt;br /&gt;
&lt;br /&gt;
[[Datei:t1_screencastListe.png|Die Titel der Screencasts]]&lt;br /&gt;
&lt;br /&gt;
*Ergänzt die Datei mit folgendem Code (Video: 21:25):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
'global_operations' =&amp;gt; array&lt;br /&gt;
		(&lt;br /&gt;
			'all' =&amp;gt; array&lt;br /&gt;
			(&lt;br /&gt;
				'label'      =&amp;gt; &amp;amp;$GLOBALS['TL_LANG']['MSC']['all'],&lt;br /&gt;
				'href'       =&amp;gt; 'act=select',&lt;br /&gt;
				'class'      =&amp;gt; 'header_edit_all',&lt;br /&gt;
				'attributes' =&amp;gt; 'onclick=&amp;quot;Backend.getScrollOffset()&amp;quot; accesskey=&amp;quot;e&amp;quot;'&lt;br /&gt;
			)&lt;br /&gt;
		),&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Was passiert hier?&lt;br /&gt;
&lt;br /&gt;
Bei den 'global operations' handelt es sich um die Bearbeitungsfelder unterhalb der Filterfelder.&lt;br /&gt;
&lt;br /&gt;
[[Datei:t1_globalOperations.png|Die Global Operations]]&lt;br /&gt;
&lt;br /&gt;
*Ergänzt die Datei mit folgendem Code (Video: 21:44):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
'operations'        =&amp;gt; array&lt;br /&gt;
		(&lt;br /&gt;
			'edit'   =&amp;gt; array&lt;br /&gt;
			(&lt;br /&gt;
				'label' =&amp;gt; &amp;amp;$GLOBALS['TL_LANG']['tl_screencast']['edit'],&lt;br /&gt;
				'href'  =&amp;gt; 'act=edit',&lt;br /&gt;
				'icon'  =&amp;gt; 'edit.gif'&lt;br /&gt;
			),&lt;br /&gt;
			'delete' =&amp;gt; array&lt;br /&gt;
			(&lt;br /&gt;
				'label'      =&amp;gt; &amp;amp;$GLOBALS['TL_LANG']['tl_screencast']['delete'],&lt;br /&gt;
				'href'       =&amp;gt; 'act=delete',&lt;br /&gt;
				'icon'       =&amp;gt; 'delete.gif',&lt;br /&gt;
				'attributes' =&amp;gt; 'onclick=&amp;quot;if(!confirm(\'' . $GLOBALS['TL_LANG']['MSC']['deleteConfirm'] . '\'))return false;Backend.getScrollOffset()&amp;quot;'&lt;br /&gt;
			),&lt;br /&gt;
			'show'   =&amp;gt; array&lt;br /&gt;
			(&lt;br /&gt;
				'label'      =&amp;gt; &amp;amp;$GLOBALS['TL_LANG']['tl_screencast']['show'],&lt;br /&gt;
				'href'       =&amp;gt; 'act=show',&lt;br /&gt;
				'icon'       =&amp;gt; 'show.gif',&lt;br /&gt;
				'attributes' =&amp;gt; 'style=&amp;quot;margin-right:3px&amp;quot;'&lt;br /&gt;
			),&lt;br /&gt;
		)&lt;br /&gt;
	),&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
''Was passiert hier?''&lt;br /&gt;
&lt;br /&gt;
Bei den 'operations' handelt es sich um die Bearbeitungsfelder zu jedem Listeneintrag.&lt;br /&gt;
&lt;br /&gt;
[[Datei:t1_operations.png|Die Operations]]&lt;br /&gt;
&lt;br /&gt;
Nun kommen wir zum eigentlichen Herzstück einer jeden Erweiterung: Das BE-Formular mit den Eingabefeldern.&lt;br /&gt;
Im DCA wird dies definiert unter dem Bereich ''palettes''.&lt;br /&gt;
*Ergänzt die Datei mit folgendem Code (Video: 22:55):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
// Palettes&lt;br /&gt;
	'palettes' =&amp;gt; array&lt;br /&gt;
	(&lt;br /&gt;
		'default'       =&amp;gt; '{title_legend},type,title,{screencast_legend},url'&lt;br /&gt;
),&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
''Was passiert hier?''&lt;br /&gt;
&lt;br /&gt;
Die Grobstruktur des Formulars wird angelegt, also das, was später dem BE-User zur Dateneingabe präsentiert wird. Dabei stehen in den geschweifen Klammern immer die Abschnittsnamen. Es folgen die Felder. Ein Semikolon leitet einen neuen Abschnitt ein.&lt;br /&gt;
&lt;br /&gt;
[[Datei:t1_beModule.png|Das BE Formular des Screencast Moduls]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Ergänzt die Datei mit folgendem Code (Video: 24:30)&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
// Fields&lt;br /&gt;
	'fields'   =&amp;gt; array&lt;br /&gt;
	(&lt;br /&gt;
		'id'     =&amp;gt; array&lt;br /&gt;
		(&lt;br /&gt;
			'sql' =&amp;gt; &amp;quot;int(10) unsigned NOT NULL auto_increment&amp;quot;&lt;br /&gt;
		),&lt;br /&gt;
		'tstamp' =&amp;gt; array&lt;br /&gt;
		(&lt;br /&gt;
			'sql' =&amp;gt; &amp;quot;int(10) unsigned NOT NULL default '0'&amp;quot;&lt;br /&gt;
		),&lt;br /&gt;
		'title'  =&amp;gt; array&lt;br /&gt;
		(&lt;br /&gt;
			'label'     =&amp;gt; &amp;amp;$GLOBALS['TL_LANG']['tl_screencast']['title'],&lt;br /&gt;
			'inputType' =&amp;gt; 'text',&lt;br /&gt;
			'exclude'   =&amp;gt; true,&lt;br /&gt;
			'sorting'   =&amp;gt; true,&lt;br /&gt;
			'flag'      =&amp;gt; 1,&lt;br /&gt;
                        'search'    =&amp;gt; true,&lt;br /&gt;
			'eval'      =&amp;gt; array(&lt;br /&gt;
				'mandatory'   =&amp;gt; true,&lt;br /&gt;
                                'unique'         =&amp;gt; true,&lt;br /&gt;
                                'maxlength'   =&amp;gt; 255,&lt;br /&gt;
				'tl_class'        =&amp;gt; 'w50',&lt;br /&gt;
&lt;br /&gt;
			),&lt;br /&gt;
			'sql'       =&amp;gt; &amp;quot;varchar(255) NOT NULL default ''&amp;quot;&lt;br /&gt;
		),&lt;br /&gt;
                'url'    =&amp;gt; array&lt;br /&gt;
		(&lt;br /&gt;
			'label'         =&amp;gt; &amp;amp;$GLOBALS['TL_LANG']['tl_screencast']['url'],&lt;br /&gt;
			'inputType' =&amp;gt; 'text',&lt;br /&gt;
			'exclude'     =&amp;gt; true,&lt;br /&gt;
			'sql'            =&amp;gt; &amp;quot;text NULL&amp;quot;&lt;br /&gt;
		)&lt;br /&gt;
       )&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''Was passiert hier?''&lt;br /&gt;
&lt;br /&gt;
Im Abschnitt ''fields'' werden alle Felder definiert, die in der Datenbank-Tabelle angelegt werden sollen. Dies sind meist mehr Felder, als im Formular des Backend-Moduls ausgegeben werden (z.B. wird man die id wohl fast immer automatisch setzen). &lt;br /&gt;
Die Felder ''id'' und ''tstamp'' sind übrigens immer Pflicht. ''sql'' ist (Überraschung) immer das SQL-Statement.&lt;br /&gt;
&lt;br /&gt;
Kümmern wir uns der um die einzelnen Felder:&lt;br /&gt;
'title' und 'url' sind die beiden Eingabefelder im BE-Modul. Diese haben wir auch in den 'palettes' definiert. Beide felder werden noch mit einigen weiteren Eigenschaften konfikuriert:&lt;br /&gt;
&lt;br /&gt;
*label: Ist eine Referenz auf die Sprachvariable, die noch erstellt wird.&lt;br /&gt;
*inputType: (s. Contao-Docs) in userem Fall ein Textfeld&lt;br /&gt;
*exclude: Erlaubt dem Admin, dieses Feld später für Redakteure zu sperren.&lt;br /&gt;
*sorting: Bestimmt, dass dieses Feld oben in der Sortierpalette angewählt werden kann&lt;br /&gt;
*flag: Regelt die Sortierreihenfolge&lt;br /&gt;
*search: Bestimmt, dass nach dieses Feld oben in der Sortierpalette gesucht werden kann&lt;br /&gt;
*eval: Konfiguriert ein Eingabefeld im Detail (s. Contao-Docs). In unserem Fall ob es  ein Pflichtfeld ist, ob es einzigartig ist, die Textfeldlänge sowie die Darstellung, wie dieses Feld im BE-Modul angezeigt wird. Schaut euch zu ''tl_class'' auch das Video an oder den Abschnitt ''Felder ausrichten'' in den Docs.&lt;br /&gt;
&lt;br /&gt;
*Diejenigen, die den Code aus der ''tl_theme.php'' kopiert haben:&lt;br /&gt;
Löscht bitte den nachfolgenden Code aus eurer Datei. Die Klassendefinition wird für diese Beispiel nicht benötigt.&lt;br /&gt;
*Der große Moment ist nah: Navigiert im Contao-BE zu ''System-&amp;gt;Erweiterungsverwaltung'' und klickt auf Datenbank aktualisieren.&lt;br /&gt;
Wenn ihr alles richtig gemacht habt, solltet ihr nun eine Meldung von Contao darüber erhalten, dass eine neue Tabelle angelegt wird. Klickt auf Aktualisieren.&lt;br /&gt;
*Jetzt könntet ihr eigentlich schon einen Screencast anlegen....aber es fehlen noch die Sprachvariablen.&lt;br /&gt;
*Erstellt daher eine Datei ''tl_screencast.php'' im Verzeichnis ''screencast/languages/de''. &lt;br /&gt;
*Gebt folgenden Code in diese Datei ein (Video: 32:30):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_screencast']['title_legend'] = 'Titel';&lt;br /&gt;
&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_screencast']['type'][0] = 'Typ';&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_screencast']['type'][1] = 'Wählen Sie hier aus, ob es sich um ein externes oder lokales Video handelt.';&lt;br /&gt;
&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_screencast']['title'][0] = 'Titel';&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_screencast']['title'][1] = 'Geben Sie hier den Screencast Titel ein.';&lt;br /&gt;
&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_screencast']['screencast_legend'] = 'Screencast';&lt;br /&gt;
&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_screencast']['url'][0] = 'Video URL';&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_screencast']['url'][1] = 'Geben Sie hier die Video URL ein.';&lt;br /&gt;
&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_screencast']['new'][0] = 'Neuer Screencast';&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_screencast']['new'][1] = 'Einen neuen Screencast anlegen';&lt;br /&gt;
&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_screencast']['edit'][0] = 'Screencast bearbeiten';&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_screencast']['edit'][1] = 'Screencast ID %s bearbeiten';&lt;br /&gt;
&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_screencast']['delete'][0] = 'Screencast löschen';&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_screencast']['delete'][1] = 'Screencast ID %s löschen';&lt;br /&gt;
&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_screencast']['show'][0] = 'Screencastdetails';&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_screencast']['show'][1] = 'Details des Screencast ID %s anzeigen';&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''Was passiert hier?''&lt;br /&gt;
&lt;br /&gt;
Es werden alle Übersetzungen angelegt, die für das Backend notwendig sind.&lt;br /&gt;
Die notwendigen Keys der Arrays findet ihr z.T. in der DCA-Datei unter ''paletts'' bzw. im Bereich  ''global operations'' und ''operations''. Die Beschreibungen der Felder liegen immer auf dem zweiten Arrayeintrag.&lt;br /&gt;
&lt;br /&gt;
''Beispiel:''&lt;br /&gt;
&lt;br /&gt;
''['title']'' bezieht sich auf das den paletts-Eintrag title. ''[0]'' ist dabei der Titel des BE-Feldes.''[1]'' ist die Beschreibung unterhalb des Feldes. Diese wird automatisch hinzugefügt.&lt;br /&gt;
&lt;br /&gt;
[[Datei:t1_title.png|Die Übersetzungen zu den Feldern]]&lt;br /&gt;
&lt;br /&gt;
=Anlegen der Klasse für die Ausgabe-Logik=&lt;br /&gt;
 (Video:39:00)&lt;br /&gt;
*Legt im Verzeichnis ''screencast/modules/'' die Datei ''ModuleScreencastList.php''&lt;br /&gt;
*Legt im Verzeichnis ''screencast/templates'' die Datei ''mod_screencast_list.html5'' an. Wer noch mit xhtml arbeitet: Legt auch noch eine ''mod_screencast_list.xhtm''l an. Ich gehe im Folgenden aber nur auf die .html5 Datei ein.&lt;br /&gt;
*Fügt dort folgenden Code in die Datei ''ModuleScreencastList.php'' ein:&lt;br /&gt;
&amp;lt;source lang=php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
class ModuleScreencastList extends Module&lt;br /&gt;
{&lt;br /&gt;
	/**&lt;br /&gt;
	 * Template&lt;br /&gt;
	 * @var string&lt;br /&gt;
	 */&lt;br /&gt;
	protected $strTemplate = 'mod_screencast_list';&lt;br /&gt;
&lt;br /&gt;
	/**&lt;br /&gt;
	 * Compile the current element&lt;br /&gt;
	 */&lt;br /&gt;
	protected function compile()&lt;br /&gt;
	{&lt;br /&gt;
		/** @var \Contao\Database\Result $rs */&lt;br /&gt;
		$rs = Database::getInstance()&lt;br /&gt;
			-&amp;gt;query('SELECT * FROM tl_screencast ORDER BY title');&lt;br /&gt;
&lt;br /&gt;
		$this-&amp;gt;Template-&amp;gt;screencasts = $rs-&amp;gt;fetchAllAssoc();&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''Was passiert hier?''&lt;br /&gt;
In dieser Datei werden die Datensätze aus der Datenbank gelesen und an das FE-Template übergeben.&lt;br /&gt;
Die hierzu notwendige Klasse muss den selben Namen erhalten, wie der Dateiname. Ferner muss die Klasse von der übergeordneten Klasse ''Module'' erben.&lt;br /&gt;
&lt;br /&gt;
Die folgenden Anweisungen kann man eigentlich nur richtig verstehen, wenn man sich die Datei module.php in system/modules/core/modules anschaut, bzw. einen Blick in die weiter übergeordnetetn Klassen wirft.&lt;br /&gt;
&lt;br /&gt;
Ich versuch's mal ohne Referenz auf die übergeordneten Klassen:&lt;br /&gt;
#Zunächst wird Contao die Template-Datei übergeben ($strTemplate).&lt;br /&gt;
#Anschließend folgt die Methode compile(), welche für die Daten für die Übergabe an das Template vorbereitet.&lt;br /&gt;
#Nun wird über die statische Methode getInstance() ein Contao-Datenbankobjekt erzeugt (system/modules/core/library/Contao/Database.php). Dieses Objekt hat die Methoden query und liefert ein Contao-DB-Ergebnisobjekt zurück (system/modules/core/library/Contao/Database/Result.php). Dieses Objekt wiederum hat die Methode fetchAllAssoc(), welche ein assoziatives Array zurückgibt (Key=Feldnamen). Diese speichern wir in der Variablen screencasts, welche durch die übergeordneten Klassen von ModuleScreencastList einem FE-Templateobjekt zugeordnet wird.&lt;br /&gt;
&lt;br /&gt;
=Das FE-Template erstellen=&lt;br /&gt;
(Video 43:00)&lt;br /&gt;
&lt;br /&gt;
Wer faul ist, kopiert sich den Code aus der ''mod_flash.html5'' (system/modules/core/templates) in seine Datei ''mod_screencast_list.html5''.&lt;br /&gt;
&lt;br /&gt;
Am Ende sollte der Code wie folgt aussehen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;&amp;lt;?php echo $this-&amp;gt;class; ?&amp;gt; block&amp;quot;&amp;lt;?php echo $this-&amp;gt;cssID; ?&amp;gt;&amp;lt;?php if ($this-&amp;gt;style): ?&amp;gt; style=&amp;quot;&amp;lt;?php echo $this-&amp;gt;style; ?&amp;gt;&amp;quot;&amp;lt;?php endif; ?&amp;gt;&amp;gt;&lt;br /&gt;
&amp;lt;?php if ($this-&amp;gt;headline): ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;&amp;lt;?php echo $this-&amp;gt;hl; ?&amp;gt;&amp;gt;&amp;lt;?php echo $this-&amp;gt;headline; ?&amp;gt;&amp;lt;/&amp;lt;?php echo $this-&amp;gt;hl; ?&amp;gt;&amp;gt;&lt;br /&gt;
&amp;lt;?php endif; ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;?php foreach ($this-&amp;gt;screencasts as $screencast): ?&amp;gt;&lt;br /&gt;
	&amp;lt;h2&amp;gt;&amp;lt;?php echo $screencast['title']; ?&amp;gt;&amp;lt;/h2&amp;gt;&lt;br /&gt;
	&amp;lt;p&amp;gt;&lt;br /&gt;
		&amp;lt;iframe width=&amp;quot;560&amp;quot; height=&amp;quot;315&amp;quot; src=&amp;quot;http://www.youtube-nocookie.com/embed/&amp;lt;?php echo str_replace('http://youtu.be/', '', $screencast['url']); ?&amp;gt;?rel=0&amp;quot; frameborder=&amp;quot;0&amp;quot; allowfullscreen&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
	&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;?php endforeach; ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''Was passiert hier?''&lt;br /&gt;
&lt;br /&gt;
Das Template wird im Kontext der FE-Templateklasse ausgegeben. Daher kann mit ''$this'' auf die Attribute und Methoden des Objekts zugegriffen werden. Dies haben wir in der compile()-Methode in ''ModuleScreencastList.php'' definiert.&lt;br /&gt;
&lt;br /&gt;
=Das FE-Template im System registrieren (Video 44:00)=&lt;br /&gt;
(Video 43:00)&lt;br /&gt;
Ergänzt die Datei config.php um folgenden Code&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
/**&lt;br /&gt;
 * Front end modules&lt;br /&gt;
 */&lt;br /&gt;
$GLOBALS['FE_MOD']['screencast'] = array&lt;br /&gt;
(&lt;br /&gt;
	'screencast_list'     =&amp;gt; 'ModuleScreencastList',&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''Was passiert hier?''&lt;br /&gt;
Unser FE-Template muss noch dem Contao-System bekannt gemacht werden. Jetzt sollte man das Modul bereits im Backend in der Modulliste auswählen können. Es fehlt jedoch noch die Übersetzung. &lt;br /&gt;
&lt;br /&gt;
=Die Übersetzung für das FE-Template erstellen (Video 44:00)=&lt;br /&gt;
Öffnet die Datei modules.php in screencast/languages/de/ und ergänzt folgende Zeilen Code:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
$GLOBALS['TL_LANG']['FMD']['screencast_list'][0] = 'Screencast Liste';&lt;br /&gt;
$GLOBALS['TL_LANG']['FMD']['screencast_list'][1] = 'Auflistung der Screencasts';&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''Was passiert hier?''&lt;br /&gt;
Nun....in der Modulliste steht künftig &amp;quot;Screencast Liste&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=Erstellung der autoloader-Dateien=&lt;br /&gt;
Der Autoloader sorgt z.B. dafür, dass alle notwendigen Templates bzw. Klassen des Moduls im Contao-System registriert werden. Praktischerweise können die autoloader-Dateien automatisch generiert werden. &lt;br /&gt;
Navigiert hierzu im Backend auf ''Entwickler-Tools-&amp;gt;Autoload-Creator''.&lt;br /&gt;
Wählt das Modul screencast aus und klickt auf ''Autoload-Dateien erstellen''.&lt;br /&gt;
Prüft, ob die Dateien ''autoload.php'' und autiload.ini in eurem ''config''-Verzeichnis erstellt wurden.&lt;br /&gt;
autoload.php:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Contao Open Source CMS&lt;br /&gt;
 * &lt;br /&gt;
 * Copyright (C) 2005-2013 Leo Feyer&lt;br /&gt;
 * &lt;br /&gt;
 * @package Screencast&lt;br /&gt;
 * @link    https://contao.org&lt;br /&gt;
 * @license http://www.gnu.org/licenses/lgpl-3.0.html LGPL&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Register the classes&lt;br /&gt;
 */&lt;br /&gt;
ClassLoader::addClasses(array&lt;br /&gt;
(&lt;br /&gt;
	// Modules&lt;br /&gt;
	'ModuleScreencastList' =&amp;gt; 'system/modules/screencast/modules/ModuleScreencastList.php',&lt;br /&gt;
));&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Register the templates&lt;br /&gt;
 */&lt;br /&gt;
TemplateLoader::addFiles(array&lt;br /&gt;
(&lt;br /&gt;
	'mod_screencast_list' =&amp;gt; 'system/modules/screencast/templates',&lt;br /&gt;
));&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
autoload.ini&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;;&lt;br /&gt;
; Configure what you want the autoload creator to register&lt;br /&gt;
;;&lt;br /&gt;
register_namespaces = true&lt;br /&gt;
register_classes    = true&lt;br /&gt;
register_templates  = true&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Geschafft!=&lt;br /&gt;
Wenn ich mich nicht verschrieben habe und ihr alles richtig gemacht habt, könnt ihr eure Screencast-Modul nun einsetzen.&lt;br /&gt;
&lt;br /&gt;
=Ausblick=&lt;br /&gt;
Im folgenden Teil wird unser Modul erweitert. Dabei geht es schwerpunktsmässig um das Hinzufügen von sog. Subpaletten, die eine kontextsensitive (schönes Wort) Auswahl von Einstellungen im Modulbereich erlauben. Zu Deutsch: Wenn der Nutzer die Wahl zwischen verschiedenen Screencast-Quellen (z.B. Youtube, Vimeo etc.) hat, verändern sich die folgenden Eingabe-/Auswahlfelder.&lt;br /&gt;
&lt;br /&gt;
Das Video könnt ihr euch hier schon ansehen:&lt;br /&gt;
Videolink : [http://www.youtube.com/watch?v=I1-1mqIR_B4&amp;amp;list=PL3mn8AtCRAstvuAWY8dhrHisMYapPxOnt&amp;amp;index=4 DCA Paletten und Subpaletten, MetaPalettes]&lt;br /&gt;
&lt;br /&gt;
So...ich habe erstmal fertig. Bis demnächst.&lt;br /&gt;
Grüße von&lt;br /&gt;
kobajashi&lt;br /&gt;
&lt;br /&gt;
=Weiterführende Links=&lt;br /&gt;
[[C3: Tutorial Extension Entwicklung 2.Teil: Selective DCA Paletten und Subpaletten|2. Teil Selective DCA Paletten und Subpaletten]]&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Composer/Hosting</id>
		<title>Composer/Hosting</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Composer/Hosting"/>
				<updated>2015-06-15T13:00:11Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: &amp;quot;Paket: Homepage Perfect&amp;quot; zu Inkompatibel verschoben&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
[[Category:Composer]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Installation und Updates]]&lt;br /&gt;
&lt;br /&gt;
=Kompatibilitätsliste=&lt;br /&gt;
&lt;br /&gt;
Auf dieser Seite werden Webhoster gelistet, auf denen Contao mit Composer läuft, mit Einschränkungen läuft oder nicht läuft.&lt;br /&gt;
&lt;br /&gt;
==Kompatible Webhostingpakete==&lt;br /&gt;
&lt;br /&gt;
Bitte beim Eintragen auf eine alphabetische Reihenfolge achten.&lt;br /&gt;
&lt;br /&gt;
* [https://www.1und1.de/ 1&amp;amp;1] Paket: Basic ([[User:Claudia.Rathert|Claudia.Rathert]]), Paket: Dual Perfect, Paket: Unlimited ([https://community.contao.org/de/member.php?4741-cliffen cliff.parnitzky])&lt;br /&gt;
* [https://www.all-inkl.com/ All-Inkl] Getestet unter Contao 3.3.5 auf Paket 'all-inkl PrivatPlus', mit Zeile ''AddHandler php53-cgi .php'' am Anfang der .htaccess  ([[User:Nina|Nina]])&lt;br /&gt;
* [https://cyon.ch/ cyon.ch] alle ( --[[Benutzer:Lucina|lucina]] )&lt;br /&gt;
* [https://www.df.eu/ domainfactory] ManagedServer L4  ([[User:Hellschu|Hellschu]])/ ab ManagedHosting Pro lauffähig ([[User:MacKP|MacKP]])&lt;br /&gt;
* [http://hosteurope.de/ Hosteurope] Virtual Server Managed, phar whitellisten ([[User:Lucina|Lucina]]), Virtual Server Advanced (Ubuntu) ([[User:Mj1985|Mj1985]])&lt;br /&gt;
* [http://hostpoint.ch/ Hostpoint] Webhosting Smart&lt;br /&gt;
* [https://inetrobots.de/ Inetrobots.de] Getestet mit Webhosting &amp;quot;Professional&amp;quot; ([https://community.contao.org/de/member.php?4042-ciaobello ciaobello]) sowie altem Web Business-Paket ([[User:Mj1985|Mj1985]])&lt;br /&gt;
* [https://jweiland.net/ jweiland] Paket: Privat ([[User:Mlweb|Mlweb]])&lt;br /&gt;
* [https://www.fc-hosting.de/ fc-hosting.de] Paket: Expert 3.2 ohne Extras ([https://community.contao.org/de/member.php?6680-dackelchen dackelchen])&lt;br /&gt;
* [http://www.metanet.ch Metanet.ch] Wichtig ist zu beachten dass mindestens Plesk 11.5 installiert ist (darauf beharren). Dann kann die notwendige Funktion im Kontrollpanel pro Domain eingeschaltet werden. Getestet mit METAHost ([https://community.contao.org/de/member.php?4042-ciaobello ciaobello])&lt;br /&gt;
* [https://www.netcup.de/hosting/ Netcup] Paket: Web Standard M getestet von Tristan, ausführlicher Bericht [https://c-c-a.org/doku/erfahrungsberichte/details/webhosting-bei-netcup CCA] ([[User:Mlweb|Mlweb]])&lt;br /&gt;
* [https://www.strato.de/ Strato] Paket: PowerWeb Plus ([https://community.contao.org/de/member.php?4741-cliffen cliff.parnitzky])&lt;br /&gt;
* [https://uberspace.de/ Uberspace.de] Getestet mit Contao 3.4.4 ([[User:BugBuster|BugBuster]])&lt;br /&gt;
* [http://w4w.net/ w4w.net] Standardhosting ([[User:Lucina|Lucina]])&lt;br /&gt;
* [https://www.webhostone.de/ WebhostOne] Webhosting MultiApp ([[User:Lucina|Lucina]])&lt;br /&gt;
&lt;br /&gt;
==Inkompatible Webhostingpakete==&lt;br /&gt;
&lt;br /&gt;
* [https://www.1und1.de/ 1&amp;amp;1] Paket: Dual Basic ([[User:Claudia.Rathert|Claudia.Rathert]]), Paket: Homepage Perfect ([https://community.contao.org/de/member.php?4741-cliffen cliff.parnitzky])&lt;br /&gt;
* [https://alfahosting.de Alfahosting] Webhosting Tarife: proc_open ist gesperrt, daher nur bedingt zu benutzen (siehe [https://community.contao.org/de/showthread.php?57581-Composer-proc_open-und-Alfahosting Forum]) ([[User:Mindbird|wusch]])&lt;br /&gt;
* [http://df.eu/ Domain Factory] MyHomePlus (zu geringe Ressourcen, u.a. nur 50 MB Ram ([[User:Lucina|Lucina]])&lt;br /&gt;
* [http://www.flyhost.de/ Flyhost] Starter-Tarife (RAM nicht ausreichend, gesperrte PHP Funktionen, daher  Composer-verwendung nicht möglich) ([[User:ways2web|ways2web]])&lt;br /&gt;
* [https://www.hosteurope.de/ Hosteurope] Webpack (nicht Webpack Pro) (Ursache z.Zt. unbekannt) ([[User:Lucina|Lucina]])&lt;br /&gt;
* [https://www.strato.de/ Strato] Paket: PowerWeb Basic ([https://community.contao.org/de/member.php?4741-cliffen cliff.parnitzky])&lt;br /&gt;
* [https://www.webhostone.de/ WebhostOne] Webhosting Single App (RAM nicht ausreichend) ([[User:Lucina|Lucina]])&lt;br /&gt;
&lt;br /&gt;
==Tipps und Tricks ==&lt;br /&gt;
* Bei df.eu kann die php.ini so bearbeitet werden, das auch die Optionalen Bedingungen erfüllt werden (per php.ini Editor im Backend von df.eu)&lt;br /&gt;
* Bei goneo + PHP 5.4 kann eine eigene php.ini verwendet werden, damit kann man die Bedingungen erreichen. [[Webhoster#goneo]]&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Mail-Adresse_bei_Anmeldung_doppelt_abfragen</id>
		<title>Mail-Adresse bei Anmeldung doppelt abfragen</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Mail-Adresse_bei_Anmeldung_doppelt_abfragen"/>
				<updated>2014-10-22T20:47:18Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Dev HOWTOS]]&lt;br /&gt;
[[Category:Dev Snippets]]&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=2.X&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{msgWarning|Diese Methode funktioniert in dieser Form '''nur für das Layout MIT Tabelle'''. Für das tabellenlose Layout müssen Anpassungen vorgenommen werden, da das Script ja die Tabellenzeile identifiziert und dupliziert - und die ist beim tabellenlosen Layout nicht vorhanden.}}&lt;br /&gt;
{{Hinweis|Mit der Erweiterung [CheckedEmail] kann man diese Funktion ohne JavaScript und mit echter Validierung umsetzen (ab Version 1.2.0 integriert sie sich auch in die Contao Module &amp;quot;Persönliche Daten&amp;quot; und &amp;quot;Registrierung&amp;quot;)}}&lt;br /&gt;
&lt;br /&gt;
=Einleitung=&lt;br /&gt;
[[Datei:email_doppelt_bei_registrierung.png|thumb|328px|Ein zweites E-Mail-Feld bei der Nutzer-Registrierung]]&lt;br /&gt;
&lt;br /&gt;
Es ist eine gute Praxis, den Nutzer die Mail-Adresse bei der Registrierung seines Accounts ein zweites Mal eintippen zu lassen, weil der dann deutlich genauer schaut, ob alles stimmt. &lt;br /&gt;
&lt;br /&gt;
Leider bietet Contao keine Möglichkeit, die Mailadresse in der Registrierung doppelt abzufragen. Das Template kann man auch nicht ohne Weiteres abändern, weil die Registrierungsfelder ja leider dynamisch generiert werden.&lt;br /&gt;
&lt;br /&gt;
Dennoch lässt sich mit JavaScript eine recht simple Lösung erarbeiten.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Einbau=&lt;br /&gt;
&lt;br /&gt;
Es macht keinen Sinn, wenn der Code auf jeder Seite eingebunden wird. Daher ist zu empfehlen, ihn in das Template &amp;quot;member_default&amp;quot; zu packen.&lt;br /&gt;
&lt;br /&gt;
Schritte im Contao-Backend:&lt;br /&gt;
&lt;br /&gt;
# Layout -&amp;gt; Templates&lt;br /&gt;
# neues Template -&amp;gt; &amp;quot;member_default.tpl|.html5&amp;quot;&lt;br /&gt;
# Template-Code bearbeiten&lt;br /&gt;
# Code '''am Ende''' des Templates einfügen&lt;br /&gt;
&lt;br /&gt;
Sollte das Template bereits bearbeitet worden sein, dann muss Schritt 2 natürlich nicht ausgeführt werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
/* &amp;lt;![CDATA[ */&lt;br /&gt;
&lt;br /&gt;
/* Texte */&lt;br /&gt;
var labelText = 'E-Mail wiederh.*';&lt;br /&gt;
&lt;br /&gt;
/* Funktion zur Überprüfung, ob Mail-Adressen identisch sind */&lt;br /&gt;
function checkEmailInputs() {&lt;br /&gt;
	if(eMailInput.value != '') {&lt;br /&gt;
		if (eMailInput.value == eMailVerifyInput.value) {&lt;br /&gt;
			eMailVerifyInput.removeClass('wrong');&lt;br /&gt;
			eMailVerifyInput.addClass('correct');&lt;br /&gt;
			submitBtn.disabled = 0;&lt;br /&gt;
		} else {&lt;br /&gt;
			eMailVerifyInput.addClass('wrong');&lt;br /&gt;
			eMailVerifyInput.removeClass('correct');&lt;br /&gt;
			submitBtn.disabled = 1;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Nötige Objekte besorgen */&lt;br /&gt;
var eMailInput 		= $$(&amp;quot;#tl_registration&amp;quot;)[0].elements['email'];&lt;br /&gt;
var eMailRow 		= eMailInput.getParent().getParent();&lt;br /&gt;
var eMailClone 		= eMailRow.clone();&lt;br /&gt;
var eMailVerifyInput 	= eMailClone.getChildren('.col_1 input')[0];&lt;br /&gt;
var submitBtn		= $$(&amp;quot;#tl_registration .submit&amp;quot;)[0];&lt;br /&gt;
&lt;br /&gt;
/* eMail-Feld etwas umbauen und ins Markup injizieren */&lt;br /&gt;
eMailClone.set('class', 'email_verify_row');&lt;br /&gt;
eMailClone.getChildren('.col_0').set('html', labelText);&lt;br /&gt;
eMailVerifyInput.name = 'mail_verify';&lt;br /&gt;
eMailVerifyInput.erase('class');&lt;br /&gt;
eMailVerifyInput.addClass('mail_verify');&lt;br /&gt;
eMailClone.inject(eMailRow, 'after');&lt;br /&gt;
&lt;br /&gt;
/* Events registrieren */&lt;br /&gt;
eMailVerifyInput.addEvent('keyup', function() {&lt;br /&gt;
	checkEmailInputs();&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
eMailInput.addEvent('keyup', function() {&lt;br /&gt;
	checkEmailInputs();&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
/* Beim Seitenaufruf ausführen */&lt;br /&gt;
submitBtn.disabled = 1;&lt;br /&gt;
checkEmailInputs();&lt;br /&gt;
&lt;br /&gt;
/* ]]&amp;gt; */&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Wirkung=&lt;br /&gt;
&lt;br /&gt;
Der Nutzer kann nun seine Registrierung nur noch abschicken, wenn beide eingegebene eMail-Adressen identisch sind. In jedem anderen Fall wird der Submit-Button deaktiviert.&lt;br /&gt;
&lt;br /&gt;
Mittels CSS-Klassen, die dem zweiten Eingabefeld zugewiesen werden, kann dem Nutzer eine optische Rückmeldung gegeben werden. Siehe: CSS-Klassen&lt;br /&gt;
&lt;br /&gt;
=Anmerkungen=&lt;br /&gt;
&lt;br /&gt;
Getestet mit Contao 2.11 - Es sollte aber mit allen Contao-Versionen funktionieren, die die entsprechende Markup-Struktur aufweisen.&lt;br /&gt;
&lt;br /&gt;
Das zusätzliche Eingabefeld wird von Contao 2.11 nicht beachtet und verursacht keine bekannten Probleme.&lt;br /&gt;
&lt;br /&gt;
==CSS-Klassen==&lt;br /&gt;
* Der Tabellen-Zeile wird die CSS-Klasse '''mail_verify_row''' zugewiesen&lt;br /&gt;
* Dem neuen eMail-Eingabefeld wird die CSS-Klasse '''mail_verify''' zugewiesen&lt;br /&gt;
* Dem neuen eMail-Eingabefeld wird außerdem die Klasse '''correct''' zugewiesen, wenn die Eingaben übereinstimmen. Sonst besitzt es die Klasse '''wrong'''&lt;br /&gt;
&lt;br /&gt;
==Sonstiges==&lt;br /&gt;
* Soll das Submit-Feld nicht beeinflusst werden, müssen alle '''submitBtn.disabled = X''' auskommentiert werden&lt;br /&gt;
* Das zweite Eingabefeld wird direkt nach dem Laden der Seite überprüft. Sollte der Nutzer die Seite neu geladen haben und bereits etwas im Eingabefeld stehen, wird es entsprechend mit '''correct''' und '''wrong''' markiert&lt;br /&gt;
* Soll der Label-Text des zweiten eMail-Feldes geändert werden, dann ist das mittels Editieren der Variable '''labelText''' auf der ersten Zeile möglich&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Mail-Adresse_bei_Anmeldung_doppelt_abfragen</id>
		<title>Mail-Adresse bei Anmeldung doppelt abfragen</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Mail-Adresse_bei_Anmeldung_doppelt_abfragen"/>
				<updated>2014-10-22T20:46:46Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Dev HOWTOS]]&lt;br /&gt;
[[Category:Dev Snippets]]&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=2.X&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{msgWarning|Diese Methode funktioniert in dieser Form '''nur für das Layout MIT Tabelle'''. Für das tabellenlose Layout müssen Anpassungen vorgenommen werden, da das Script ja die Tabellenzeile identifiziert und dupliziert - und die ist beim tabellenlosen Layout nicht vorhanden.}}&lt;br /&gt;
&lt;br /&gt;
{{Hinweis|Mit der Erweiterung [CheckedEmail] kann man diese Funktion ohne JavaScript und mit echter Validierung umsetzen (ab Version 1.2.0 integriert sie sich auch in die Contao Module &amp;quot;Persönliche Daten&amp;quot; und &amp;quot;Registrierung&amp;quot;)}}&lt;br /&gt;
&lt;br /&gt;
=Einleitung=&lt;br /&gt;
[[Datei:email_doppelt_bei_registrierung.png|thumb|328px|Ein zweites E-Mail-Feld bei der Nutzer-Registrierung]]&lt;br /&gt;
&lt;br /&gt;
Es ist eine gute Praxis, den Nutzer die Mail-Adresse bei der Registrierung seines Accounts ein zweites Mal eintippen zu lassen, weil der dann deutlich genauer schaut, ob alles stimmt. &lt;br /&gt;
&lt;br /&gt;
Leider bietet Contao keine Möglichkeit, die Mailadresse in der Registrierung doppelt abzufragen. Das Template kann man auch nicht ohne Weiteres abändern, weil die Registrierungsfelder ja leider dynamisch generiert werden.&lt;br /&gt;
&lt;br /&gt;
Dennoch lässt sich mit JavaScript eine recht simple Lösung erarbeiten.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Einbau=&lt;br /&gt;
&lt;br /&gt;
Es macht keinen Sinn, wenn der Code auf jeder Seite eingebunden wird. Daher ist zu empfehlen, ihn in das Template &amp;quot;member_default&amp;quot; zu packen.&lt;br /&gt;
&lt;br /&gt;
Schritte im Contao-Backend:&lt;br /&gt;
&lt;br /&gt;
# Layout -&amp;gt; Templates&lt;br /&gt;
# neues Template -&amp;gt; &amp;quot;member_default.tpl|.html5&amp;quot;&lt;br /&gt;
# Template-Code bearbeiten&lt;br /&gt;
# Code '''am Ende''' des Templates einfügen&lt;br /&gt;
&lt;br /&gt;
Sollte das Template bereits bearbeitet worden sein, dann muss Schritt 2 natürlich nicht ausgeführt werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
/* &amp;lt;![CDATA[ */&lt;br /&gt;
&lt;br /&gt;
/* Texte */&lt;br /&gt;
var labelText = 'E-Mail wiederh.*';&lt;br /&gt;
&lt;br /&gt;
/* Funktion zur Überprüfung, ob Mail-Adressen identisch sind */&lt;br /&gt;
function checkEmailInputs() {&lt;br /&gt;
	if(eMailInput.value != '') {&lt;br /&gt;
		if (eMailInput.value == eMailVerifyInput.value) {&lt;br /&gt;
			eMailVerifyInput.removeClass('wrong');&lt;br /&gt;
			eMailVerifyInput.addClass('correct');&lt;br /&gt;
			submitBtn.disabled = 0;&lt;br /&gt;
		} else {&lt;br /&gt;
			eMailVerifyInput.addClass('wrong');&lt;br /&gt;
			eMailVerifyInput.removeClass('correct');&lt;br /&gt;
			submitBtn.disabled = 1;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Nötige Objekte besorgen */&lt;br /&gt;
var eMailInput 		= $$(&amp;quot;#tl_registration&amp;quot;)[0].elements['email'];&lt;br /&gt;
var eMailRow 		= eMailInput.getParent().getParent();&lt;br /&gt;
var eMailClone 		= eMailRow.clone();&lt;br /&gt;
var eMailVerifyInput 	= eMailClone.getChildren('.col_1 input')[0];&lt;br /&gt;
var submitBtn		= $$(&amp;quot;#tl_registration .submit&amp;quot;)[0];&lt;br /&gt;
&lt;br /&gt;
/* eMail-Feld etwas umbauen und ins Markup injizieren */&lt;br /&gt;
eMailClone.set('class', 'email_verify_row');&lt;br /&gt;
eMailClone.getChildren('.col_0').set('html', labelText);&lt;br /&gt;
eMailVerifyInput.name = 'mail_verify';&lt;br /&gt;
eMailVerifyInput.erase('class');&lt;br /&gt;
eMailVerifyInput.addClass('mail_verify');&lt;br /&gt;
eMailClone.inject(eMailRow, 'after');&lt;br /&gt;
&lt;br /&gt;
/* Events registrieren */&lt;br /&gt;
eMailVerifyInput.addEvent('keyup', function() {&lt;br /&gt;
	checkEmailInputs();&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
eMailInput.addEvent('keyup', function() {&lt;br /&gt;
	checkEmailInputs();&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
/* Beim Seitenaufruf ausführen */&lt;br /&gt;
submitBtn.disabled = 1;&lt;br /&gt;
checkEmailInputs();&lt;br /&gt;
&lt;br /&gt;
/* ]]&amp;gt; */&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Wirkung=&lt;br /&gt;
&lt;br /&gt;
Der Nutzer kann nun seine Registrierung nur noch abschicken, wenn beide eingegebene eMail-Adressen identisch sind. In jedem anderen Fall wird der Submit-Button deaktiviert.&lt;br /&gt;
&lt;br /&gt;
Mittels CSS-Klassen, die dem zweiten Eingabefeld zugewiesen werden, kann dem Nutzer eine optische Rückmeldung gegeben werden. Siehe: CSS-Klassen&lt;br /&gt;
&lt;br /&gt;
=Anmerkungen=&lt;br /&gt;
&lt;br /&gt;
Getestet mit Contao 2.11 - Es sollte aber mit allen Contao-Versionen funktionieren, die die entsprechende Markup-Struktur aufweisen.&lt;br /&gt;
&lt;br /&gt;
Das zusätzliche Eingabefeld wird von Contao 2.11 nicht beachtet und verursacht keine bekannten Probleme.&lt;br /&gt;
&lt;br /&gt;
==CSS-Klassen==&lt;br /&gt;
* Der Tabellen-Zeile wird die CSS-Klasse '''mail_verify_row''' zugewiesen&lt;br /&gt;
* Dem neuen eMail-Eingabefeld wird die CSS-Klasse '''mail_verify''' zugewiesen&lt;br /&gt;
* Dem neuen eMail-Eingabefeld wird außerdem die Klasse '''correct''' zugewiesen, wenn die Eingaben übereinstimmen. Sonst besitzt es die Klasse '''wrong'''&lt;br /&gt;
&lt;br /&gt;
==Sonstiges==&lt;br /&gt;
* Soll das Submit-Feld nicht beeinflusst werden, müssen alle '''submitBtn.disabled = X''' auskommentiert werden&lt;br /&gt;
* Das zweite Eingabefeld wird direkt nach dem Laden der Seite überprüft. Sollte der Nutzer die Seite neu geladen haben und bereits etwas im Eingabefeld stehen, wird es entsprechend mit '''correct''' und '''wrong''' markiert&lt;br /&gt;
* Soll der Label-Text des zweiten eMail-Feldes geändert werden, dann ist das mittels Editieren der Variable '''labelText''' auf der ersten Zeile möglich&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Composer/Hosting</id>
		<title>Composer/Hosting</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Composer/Hosting"/>
				<updated>2014-10-17T13:49:02Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Inkompatible Webhostingpakete */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
[[Category:Composer]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Installation und Updates]]&lt;br /&gt;
&lt;br /&gt;
=Kompatibilitätsliste=&lt;br /&gt;
&lt;br /&gt;
Auf dieser Seite werden Webhoster gelistet, auf denen Contao mit Composer läuft, mit Einschränkungen läuft oder nicht läuft.&lt;br /&gt;
&lt;br /&gt;
==Kompatible Webhostingpakete==&lt;br /&gt;
&lt;br /&gt;
Bitte beim Eintragen auf eine alphabetische Reihenfolge achten.&lt;br /&gt;
&lt;br /&gt;
* [https://www.1und1.de/ 1&amp;amp;1] Paket: Basic ([[User:Claudia.Rathert|Claudia.Rathert]]), Paket: Homepage Perfect, Paket: Dual Perfect, Paket: Unlimited ([https://community.contao.org/de/member.php?4741-cliffen cliff.parnitzky])&lt;br /&gt;
* [https://www.all-inkl.com/ All-Inkl] Getestet unter Contao 3.3.5 auf Paket 'all-inkl PrivatPlus', mit Zeile ''AddHandler php53-cgi .php'' am Anfang der .htaccess  ([[User:Nina|Nina]])&lt;br /&gt;
* [https://www.df.eu/ domainfactory] ManagedServer L4  ([[User:Hellschu|Hellschu]])/ ab ManagedHosting Pro lauffähig ([[User:MacKP|MacKP]])&lt;br /&gt;
* [http://hosteurope.de/ Hosteurope] Virtual Server Managed, phar whitellisten ([[User:Lucina|Lucina]]), Virtual Server Advanced (Ubuntu) ([[User:Mj1985|Mj1985]])&lt;br /&gt;
* [https://inetrobots.de/ Inetrobots.de] Getestet mit Webhosting &amp;quot;Professional&amp;quot; ([https://community.contao.org/de/member.php?4042-ciaobello ciaobello]) sowie altem Web Business-Paket ([[User:Mj1985|Mj1985]])&lt;br /&gt;
* [https://www.fc-hosting.de/ fc-hosting.de] Paket: Expert 3.2 ohne Extras ([https://community.contao.org/de/member.php?6680-dackelchen dackelchen])&lt;br /&gt;
* [http://www.metanet.ch Metanet.ch] Wichtig ist zu beachten dass mindestens Plesk 11.5 installiert ist (darauf beharren). Dann kann die notwendige Funktion im Kontrollpanel pro Domain eingeschaltet werden. Getestet mit METAHost ([https://community.contao.org/de/member.php?4042-ciaobello ciaobello])&lt;br /&gt;
* [https://www.strato.de/ Strato] Paket: PowerWeb Plus ([https://community.contao.org/de/member.php?4741-cliffen cliff.parnitzky])&lt;br /&gt;
* [http://w4w.net/ w4w.net] Standardhosting ([[User:Lucina|Lucina]])&lt;br /&gt;
* [https://www.webhostone.de/ WebhostOne] Webhosting MultiApp ([[User:Lucina|Lucina]])&lt;br /&gt;
&lt;br /&gt;
==Inkompatible Webhostingpakete==&lt;br /&gt;
&lt;br /&gt;
* [https://www.1und1.de/ 1&amp;amp;1] Paket: Dual Basic ([[User:Claudia.Rathert|Claudia.Rathert]])&lt;br /&gt;
* [http://df.eu/ Domain Factory] MyHomePlus (zu geringe Ressourcen, u.a. nur 50 MB Ram ([[User:Lucina|Lucina]])&lt;br /&gt;
* [http://www.flyhost.de/ Flyhost] Starter-Tarife (RAM nicht ausreichend, gesperrte PHP Funktionen) ([[User:ways2web|ways2web]])&lt;br /&gt;
* [https://www.hosteurope.de/ Hosteurope] Webpack (nicht Webpack Pro) (Ursache z.Zt. unbekannt) ([[User:Lucina|Lucina]])&lt;br /&gt;
* [https://www.strato.de/ Strato] Paket: PowerWeb Basic ([https://community.contao.org/de/member.php?4741-cliffen cliff.parnitzky])&lt;br /&gt;
* [https://www.webhostone.de/ WebhostOne] Webhosting Single App (RAM nicht ausreichend) ([[User:Lucina|Lucina]])&lt;br /&gt;
&lt;br /&gt;
==Tipps und Tricks ==&lt;br /&gt;
* Bei df.eu kann die php.ini so bearbeitet werden, das auch die Optionalen Bedingungen erfüllt werden (per php.ini Editor im Backend von df.eu)&lt;br /&gt;
* Bei goneo + PHP 5.4 kann eine eigene php.ini verwendet werden, damit kann man die Bedingungen erreichen. [[Webhoster#goneo]]&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Composer/Hosting</id>
		<title>Composer/Hosting</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Composer/Hosting"/>
				<updated>2014-10-17T13:47:38Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Kompatible Webhostingpakete */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
[[Category:Composer]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Installation und Updates]]&lt;br /&gt;
&lt;br /&gt;
=Kompatibilitätsliste=&lt;br /&gt;
&lt;br /&gt;
Auf dieser Seite werden Webhoster gelistet, auf denen Contao mit Composer läuft, mit Einschränkungen läuft oder nicht läuft.&lt;br /&gt;
&lt;br /&gt;
==Kompatible Webhostingpakete==&lt;br /&gt;
&lt;br /&gt;
Bitte beim Eintragen auf eine alphabetische Reihenfolge achten.&lt;br /&gt;
&lt;br /&gt;
* [https://www.1und1.de/ 1&amp;amp;1] Paket: Basic ([[User:Claudia.Rathert|Claudia.Rathert]]), Paket: Homepage Perfect, Paket: Dual Perfect, Paket: Unlimited ([https://community.contao.org/de/member.php?4741-cliffen cliff.parnitzky])&lt;br /&gt;
* [https://www.all-inkl.com/ All-Inkl] Getestet unter Contao 3.3.5 auf Paket 'all-inkl PrivatPlus', mit Zeile ''AddHandler php53-cgi .php'' am Anfang der .htaccess  ([[User:Nina|Nina]])&lt;br /&gt;
* [https://www.df.eu/ domainfactory] ManagedServer L4  ([[User:Hellschu|Hellschu]])/ ab ManagedHosting Pro lauffähig ([[User:MacKP|MacKP]])&lt;br /&gt;
* [http://hosteurope.de/ Hosteurope] Virtual Server Managed, phar whitellisten ([[User:Lucina|Lucina]]), Virtual Server Advanced (Ubuntu) ([[User:Mj1985|Mj1985]])&lt;br /&gt;
* [https://inetrobots.de/ Inetrobots.de] Getestet mit Webhosting &amp;quot;Professional&amp;quot; ([https://community.contao.org/de/member.php?4042-ciaobello ciaobello]) sowie altem Web Business-Paket ([[User:Mj1985|Mj1985]])&lt;br /&gt;
* [https://www.fc-hosting.de/ fc-hosting.de] Paket: Expert 3.2 ohne Extras ([https://community.contao.org/de/member.php?6680-dackelchen dackelchen])&lt;br /&gt;
* [http://www.metanet.ch Metanet.ch] Wichtig ist zu beachten dass mindestens Plesk 11.5 installiert ist (darauf beharren). Dann kann die notwendige Funktion im Kontrollpanel pro Domain eingeschaltet werden. Getestet mit METAHost ([https://community.contao.org/de/member.php?4042-ciaobello ciaobello])&lt;br /&gt;
* [https://www.strato.de/ Strato] Paket: PowerWeb Plus ([https://community.contao.org/de/member.php?4741-cliffen cliff.parnitzky])&lt;br /&gt;
* [http://w4w.net/ w4w.net] Standardhosting ([[User:Lucina|Lucina]])&lt;br /&gt;
* [https://www.webhostone.de/ WebhostOne] Webhosting MultiApp ([[User:Lucina|Lucina]])&lt;br /&gt;
&lt;br /&gt;
==Inkompatible Webhostingpakete==&lt;br /&gt;
&lt;br /&gt;
* [https://www.1und1.de/ 1&amp;amp;1] Paket 1&amp;amp;1 Dual Basic ([[User:Claudia.Rathert|Claudia.Rathert]])&lt;br /&gt;
* [http://df.eu/ Domain Factory] MyHomePlus (zu geringe Ressourcen, u.a. nur 50 MB Ram ([[User:Lucina|Lucina]])&lt;br /&gt;
* [https://www.hosteurope.de/ Hosteurope] Webpack (nicht Webpack Pro) (Ursache z.Zt. unbekannt) ([[User:Lucina|Lucina]])&lt;br /&gt;
* [https://www.webhostone.de/ WebhostOne] Webhosting Single App (RAM nicht ausreichend) ([[User:Lucina|Lucina]])&lt;br /&gt;
* [http://www.flyhost.de/ Flyhost] Starter-Tarife (RAM nicht ausreichend, gesperrte PHP Funktionen) ([[User:ways2web|ways2web]])&lt;br /&gt;
&lt;br /&gt;
==Tipps und Tricks ==&lt;br /&gt;
* Bei df.eu kann die php.ini so bearbeitet werden, das auch die Optionalen Bedingungen erfüllt werden (per php.ini Editor im Backend von df.eu)&lt;br /&gt;
* Bei goneo + PHP 5.4 kann eine eigene php.ini verwendet werden, damit kann man die Bedingungen erreichen. [[Webhoster#goneo]]&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Diskussion:EFG</id>
		<title>Diskussion:EFG</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Diskussion:EFG"/>
				<updated>2014-09-27T13:38:57Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Warum wurden &amp;quot;Absatz für Inserttags für Datei-Uploads&amp;quot; wieder eingefügt ? . Diese sind in der Ver.3.2.x nicht notwendig da sie über Optionsfelder möglich sind. &lt;br /&gt;
Die hier aktuelle Version des EFG bezieht sich auf Contao-Version 3.2.x. Das wurde auch so dargestellt.&lt;br /&gt;
&lt;br /&gt;
Korrekt wäre IMHO allenfalls die Info, dass es möglich wäre, auch ausserhalb der Optionen diese tags händisch hinzuzufügen, was jedoch widersinnig wäre.&lt;br /&gt;
&lt;br /&gt;
Bitte um Erklärung.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Das ist nicht ganz richtig.&lt;br /&gt;
&lt;br /&gt;
a.) Man kann Dateianhänge für eine Mail in der Formularkonfiguration definieren ... das sind dann Dateien aus der Dateiverwaltung.&lt;br /&gt;
&lt;br /&gt;
und / oder&lt;br /&gt;
&lt;br /&gt;
b.) Die hochgeladene(n) Datei(en) aus dem Formular (über den Feldtyp 'Datei-Upload') an die Mail anhängen. Das macht man mit dem Inserttag.&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Diskussion:EFG</id>
		<title>Diskussion:EFG</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Diskussion:EFG"/>
				<updated>2014-09-27T13:38:37Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Warum wurden &amp;quot;Absatz für Inserttags für Datei-Uploads&amp;quot; wieder eingefügt ? . Diese sind in der Ver.3.2.x nicht notwendig da sie über Optionsfelder möglich sind. &lt;br /&gt;
Die hier aktuelle Version des EFG bezieht sich auf Contao-Version 3.2.x. Das wurde auch so dargestellt.&lt;br /&gt;
&lt;br /&gt;
Korrekt wäre IMHO allenfalls die Info, dass es möglich wäre, auch ausserhalb der Optionen diese tags händisch hinzuzufügen, was jedoch widersinnig wäre.&lt;br /&gt;
&lt;br /&gt;
Bitte um Erklärung.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Das ist nicht ganz richtig. Man kann Dateianhänge für eine Mail&lt;br /&gt;
&lt;br /&gt;
a.) Man kann Dateianhänge für eine Mail in der Formularkonfiguration definieren ... das sind dann Dateien aus der Dateiverwaltung.&lt;br /&gt;
&lt;br /&gt;
und / oder&lt;br /&gt;
&lt;br /&gt;
b.) Die hochgeladene(n) Datei(en) aus dem Formular (über den Feldtyp 'Datei-Upload') an die Mail anhängen. Das macht man mit dem Inserttag.&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/EFG</id>
		<title>EFG</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/EFG"/>
				<updated>2014-09-26T13:34:19Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
&lt;br /&gt;
'''EFG (Extended Form Generator)'''&lt;br /&gt;
Übertrag Handbuch EFG aus altem Wiki&lt;br /&gt;
&lt;br /&gt;
'''Tickets / Bugs'''&lt;br /&gt;
https://bitbucket.org/thk/efg/issues&lt;br /&gt;
&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=3.2.X&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Thomas Kuhn&lt;br /&gt;
| ExtVersion=2.2.1 stable&lt;br /&gt;
| Version=3.2.2 - 3.2.7&lt;br /&gt;
| ERLink=http://www.contao.org/erweiterungsliste/view/efg.20000019.de.html&lt;br /&gt;
|Depending=[http://www.contao.org/erweiterungsliste/view/xls_export.de.html&lt;br /&gt;
}}&lt;br /&gt;
[[Kategorie:Extensions]]&lt;br /&gt;
== Was ist und was bietet EFG? ==&lt;br /&gt;
EFG steht für Extended Form Generator und erweitert den Contao Formular-Generator um die folgenden Features.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== A - (EFG) Per E-Mail versenden ===&lt;br /&gt;
EFG bietet die Möglichkeit eine E-Mail die übermittelten Daten an eine definierte E-Mail-Adresse zu versenden. Die Option &amp;quot;(EFG) Per E-Mail versenden&amp;quot; sollte verwendet werden wenn EFG in Kombination mit z.B. einer Bestätigungsmail zur Anwendung kommt.&lt;br /&gt;
&amp;quot;Insert-Tags&amp;quot; können verwendet werden.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg_01_form_send_mail.png|Efg_01_form_send_mail.png]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== B - (EFG) Bestätigung per E-Mail versenden ===&lt;br /&gt;
Eine Kopie des per E-Mail vesendeten Formulars kann auch an den Absender geschickt werden.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg_02_small_form_confirm_mail.png|Efg_02_small_form_confirm_mail.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Der Text und Betreff kann durch den Einsatz von &amp;quot;Insert-Tags&amp;quot; personalisiert werden. &lt;br /&gt;
&lt;br /&gt;
Ab v1.8 können die &amp;quot;Insert-Tags&amp;quot; (wie in der Bestätigungs-Mail) auch auf der Bestätigungs-Seite verwendet werden.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== C - Speichern eingehender &amp;quot;Formular-Daten&amp;quot;, Erstellung von Backend-Modulen ===&lt;br /&gt;
EFG bietet im Formular-Generator eine weitere Option &amp;quot;Daten im Modul 'Formular-Daten' speichern&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg_03_form_backup_data_small.png|Efg_03_form_backup_data_small.png]]&lt;br /&gt;
&lt;br /&gt;
Bei gewählter Option werden Backend-Module erzeugt, in denen die aus Frontend-Formularen eingehenden Daten verwaltet werden können.&lt;br /&gt;
Es ist ebenso möglich, neue Datensätze direkt im Backend anzulegen - auch ohne veröffentlichtes Frontend-Formular. Dadurch können nahezu beliebige Backend-Module/-Tabellen erstellt werden, einfach durch Anlegen eines Fomulars mit den benötigten Feldern. Manuelles Anlegen von Datenbank-Tabellen ist nicht erforderlich.&lt;br /&gt;
&lt;br /&gt;
Zur Ausgabe und Bearbeitung der &amp;quot;Formular-Daten&amp;quot; im Frontend (mit Listen- und Detailansicht sowie Suche) steht letztlich noch ein spezielles Listing-Modul zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== D - zusätzliche Formularfeld-Typen ===&lt;br /&gt;
EFG stellt im Formular-Generator weitere Feld-Typen bereit:&lt;br /&gt;
* Select-Menü (DB)&lt;br /&gt;
* Radio-Button-Menü (DB) und&lt;br /&gt;
* Checkbox-Menü (DB)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== E - Datei an E-Mail anhängen ===&lt;br /&gt;
Mit dem EFG können Dateien jeweils an die versendende E-Mail und/oder an die versendende Bestätigungs-E-Mail angehängt werden.&lt;br /&gt;
Beim Verwenden dieser Option kann direkt aus der Dateiverwaltung eine Datei ausgewählt werden&lt;br /&gt;
&lt;br /&gt;
[[Datei:efg_10_attached_sheet_mail_01.png|efg_10_attached_sheet_mail_01.png]] &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Funktionsweise und Erläuterungen ==&lt;br /&gt;
&lt;br /&gt;
*(EFG) Per E-Mail versenden&lt;br /&gt;
&lt;br /&gt;
Hierfür stehen im Formular-Generator die im folgenden dargestellten Felder zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
'''Empfängeradresse'''&lt;br /&gt;
&lt;br /&gt;
Die Emailadresse an welche die übermittelten Daten gesendet werden sollen&lt;br /&gt;
&lt;br /&gt;
'''Betreff'''&lt;br /&gt;
&lt;br /&gt;
Die Betreffzeile&lt;br /&gt;
&lt;br /&gt;
'''Text der E-Mail'''&lt;br /&gt;
&lt;br /&gt;
Die Textnachricht, Insert-Tags sind möglich, siehe Abblidung unten&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg 04 form options data.png|Efg 04 form options data.png]] &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
*(EFG)Bestätigung per E-Mail versenden&lt;br /&gt;
&lt;br /&gt;
Nur wenn diese Option gewählt ist, wird eine Bestätigungs-E-Mail versendet.&lt;br /&gt;
Hierfür stehen im Formular-Generator die im folgenden dargestellten Felder zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
'''Formularfeld der Empfänger-E-Mailadresse:'''&lt;br /&gt;
&lt;br /&gt;
Hier muss das Formularfeld angegeben werden in dem der Absender ( Frontend-Benutzers/Seitenbesucher ) seine Emailadresse angibt oder ein Formularfeld das die Emailadresse als Wert enthält&lt;br /&gt;
&lt;br /&gt;
'''Absender:'''&lt;br /&gt;
&lt;br /&gt;
Die E-Mail-Adresse, die als Absender der Bestätigungs-Mail verwendet wird&lt;br /&gt;
Verwendung von Insert-Tags möglich, siehe &amp;quot;Text der Bestätigungs-E-Mail&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Antwort an (Reply-to)'''&lt;br /&gt;
&lt;br /&gt;
Hier kann die Emailadresse angegeben werden falls die Antwort auf die Bestätigungsmail nicht an den Absender gesendet werden sollen. Alternative ist die Eingabe mehrerer Emailadressen ( kommagetrennt ) möglich&lt;br /&gt;
&lt;br /&gt;
'''Betreff:'''&lt;br /&gt;
&lt;br /&gt;
Die Betreffzeile der Bestätigungs-Mail&lt;br /&gt;
Verwendung von Insert-Tags möglich, siehe &amp;quot;Text der Bestätigungs-E-Mail&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Text der Bestätigungs-E-Mail:'''&lt;br /&gt;
&lt;br /&gt;
Der eigentliche Text (Mail-Body) der Bestätigungs-Email. Es können die allgemeinen &amp;quot;Insert-Tags&amp;quot; (siehe http://www.contao.org/inserttags.html ) zur Ausgabe von Datum o.ä. eingesetzt werden.&lt;br /&gt;
&lt;br /&gt;
Weiterhin können die per Formular übermittelten Daten  mit Insert-Tags der Form&lt;br /&gt;
&amp;lt;source&amp;gt;{{form::FELDNAME}}&amp;lt;/source&amp;gt; im Text eingesetzt werden.&lt;br /&gt;
&lt;br /&gt;
FELDNAME steht hierbei für den &amp;quot;Feldnamen&amp;quot;, der im Formular-Generator für das jeweilige Formularfeld eingetragen wurde.&lt;br /&gt;
&lt;br /&gt;
Enthält das Formular z.B. ein Feld mit Feldname &amp;quot;user_name&amp;quot;, so wird der folgende Insert Tag im Text der Email durch den vom Formular-Absender angegebenen Namen ersetzt: &amp;lt;source&amp;gt;{{form::user_name}}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Datei-Uploads können als Anhang der Bestätigungs-Mail versendet werden, durch Einfügen von Insert-Tags der Form: &amp;lt;source&amp;gt;{{form::FELDNAME?attachment=true}}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um der Ausgabe ein Label hinzu zu fügen, verwendet man: &amp;lt;source&amp;gt;{{form::FELDNAME?label=Label of this field: }}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''HTML-Vorlage für die Bestätigungs-Email:'''&lt;br /&gt;
&lt;br /&gt;
Falls die Bestätigungs-Email als HTML-Mail (bzw. als Multipart, sowohl Text- als auch HTML-Version) versendet werden soll, kann hier aus dem Dateisystem eine HTML-Datei gewählt werden.&lt;br /&gt;
&lt;br /&gt;
Mit der Installation dieser Extension wird im Ordner &amp;quot;example_confirmation_mail&amp;quot; ein einfaches Beispiel für Testzwecke bereitgestellt. Die Verwendung der Insert-Tags ist auch in der HTML-Vorlage möglich.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg 05 form options confirm.png|Efg 05 form options confirm.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Leere Felder auslassen'''&lt;br /&gt;
&lt;br /&gt;
Ist diese Option gewählt, werden leere Felder ( z.B. Felder die nicht als Pflichtfeld deklaiert und auch nicht ausgefüllt wurden, nicht im Mailversand berücksichtigt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dateien an Mail anhängen'''&lt;br /&gt;
&lt;br /&gt;
Mit dieser Option können Dateien als Anhang der Mail versendet werden ( sowohl in der Mail-Versendung als auch in der Bestätigungsmail-Versendung )&lt;br /&gt;
Die entsprechende Dateien können direkt aus der Dateiverwaltung von Contao ausgewählt werden.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Attached mail 01.png|Attached mail 01.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Speichern von &amp;quot;Formular-Daten&amp;quot; im Backend, Erstellung von Backend-Modulen ==&lt;br /&gt;
&lt;br /&gt;
EFG stellt im Formular-Generator eine zusätzliche Option zur Verfügung:&lt;br /&gt;
Wenn diese Option aktiviert ist, werden über das Frontend-Formular übermittelte Daten in der Datenbank gespeichert und können im Backend verwaltet werden.&lt;br /&gt;
{{Hinweis|Nach Ergänzung oder Änderung von Formular-Feldern muß das Formular erneut gespeichert werden, oder aber diese Option erst nach Anlegen aller benötigten Formular-Felder gewählt werden.}}&lt;br /&gt;
&lt;br /&gt;
* Daten im Modul &amp;quot;Formular-Daten&amp;quot; speichern&lt;br /&gt;
&lt;br /&gt;
Hierfür stehen im Formular-Generator die im folgenden dargestellten Optionen zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
'''Formularfeld für Alias*'''&lt;br /&gt;
&lt;br /&gt;
Hier muss das Formularfeld gewählt werden dessen Inhalt zur Erzeugung des Formulardaten-Alias verwendet wird.{{msgInfo|Um eine korrekte ID für jeden Datensatz zu erhalten, sollte man beim Erstellen der Formularfelder mit einem versteckten Feld beginnen, dieses z.B. als ID benennen und den Standard-Wert für das Feld mit &amp;lt;source&amp;gt;{{date::Ymdi}} &amp;lt;/source&amp;gt; belegen. So ist eine eindeutige Referenz als Alias gewährleistet. &lt;br /&gt;
[[Datei:Efg 07 tooltip alias.png|Efg 07 tooltip alias.png]]}}&lt;br /&gt;
&lt;br /&gt;
'''Optionswerte speichern'''&lt;br /&gt;
&lt;br /&gt;
Hier kann die Option gewählt werden, das bei den Feldern des Typ 'Select-Menü', 'Radio-Button-Menü' und 'Checkbox-Menü' der ausgewählte Wert anstelle der Bezeichnung gespeichert wird. Die Option hat keine Auswirkung auf die Felder 'Select-Menü (DB)', 'Radio-Button-Menü (DB)' und 'Checkbox-Menü (DB)' &lt;br /&gt;
&lt;br /&gt;
'''Feldwerte exportieren'''&lt;br /&gt;
&lt;br /&gt;
Wird diese Option gewählt, werden beim Export der Formulardaten die ausgewählten Werte von Formularfeldern anstelle der ausgewählten Bezeichnungen exportiert. Dies trifft für alle Radio-Buttons, Checkboxen und Selects zu&lt;br /&gt;
&lt;br /&gt;
'''Feldnamen exportieren'''&lt;br /&gt;
&lt;br /&gt;
Wird diese Option gewählt, werden beim Export der Formulardaten die Feldnamen anstelle der Feldbezeichnungen exportiert &lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg 06 form backup data.png|Efg 06 form backup data.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Verwaltung der &amp;quot;Formular-Daten&amp;quot; im Backend&lt;br /&gt;
&lt;br /&gt;
Sobald für mindestens ein Formular die Speicherung der &amp;quot;Formular-Daten&amp;quot; aktiviert ist, erscheint ein neuer Bereich in der Backend-Navigation, benannt als &amp;quot;Formular-Daten&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg_be_module_feedback.png|Efg_be_module_feedback.png]]&lt;br /&gt;
&lt;br /&gt;
Jedes &amp;quot;daten-speichernde&amp;quot; Formular erzeugt darunter einen weiteren Eintrag (die Bezeichnung entspricht dabei dem Titel des Formulars).&lt;br /&gt;
&lt;br /&gt;
Hier können die Daten bearbeitet/verändert und gelöscht werden. Auch Neuanlegen von Datensätzen, sowie Export der Daten im CSV-Format ist im Backend möglich.&lt;br /&gt;
&lt;br /&gt;
Zusätzlich bietet der Navigations-Eintrag &amp;quot;Feedback&amp;quot; den gleichzeitigen Zugriff auf die aus verschiedenen Formularen gespeicherten Daten. Dies kann genutzt werden, wenn z.B. mehrere unterschiedliche &amp;quot;Anfrage&amp;quot;-Formulare im Einsatz sind. (Ein Neuanlegen von Daten ist allerdings nur in den formularspezifischen Listen-Ansichten möglich.)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
*Bearbeitung der Daten im Backend&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg 08 backend edit data.png|Efg 08 backend edit data.png]]&lt;br /&gt;
&lt;br /&gt;
Jeder Datensatz umfasst: - zusätzlich zu den per Formularfeld definierten - folgende Basis-/Metadaten:&lt;br /&gt;
&lt;br /&gt;
* Anzeige des betreffenden Formulars aus dem der Datensatz stammt ( Feldbezeichung &amp;quot;Formular&amp;quot; ) '''''*1'''''&lt;br /&gt;
* Die Referenz-Anzeige des Eintrags ( Feldbezeichung &amp;quot;Alias&amp;quot; ) '''''*1'''''&lt;br /&gt;
* das Datum der Erstellung/Übermittlung des Datensatzes (Feldname &amp;quot;date&amp;quot;) '''''*1'''''&lt;br /&gt;
* die IP-Adresse des Benutzers (Feldname &amp;quot;ip&amp;quot;) '''''*1'''''&lt;br /&gt;
* eine Checkbox &amp;quot;Veröffentlicht&amp;quot; (Feldname: &amp;quot;published&amp;quot;, Vorgabewert: nicht veröffentlicht, kann wie bei Artikeln z.B. in    Verbindung mit Auflistung-Modul als Kriterium für Anzeige im Frontend dienen) '''''*2'''''&lt;br /&gt;
* den Sortierindex ( Der Sortierindex kann bei einer Auflistung verwendet werden ) '''''*1'''''&lt;br /&gt;
* &amp;quot;Bestätigungsmail gesendet&amp;quot; ( Hinweis ob eine Bestätigungsmail gesendet wurde ) '''''*1'''''&lt;br /&gt;
* &amp;quot;Bestätigungsmail gesendet am&amp;quot; ( Hinweis wann eine Bestätigungsmail gesendet wurde ) '''''*1'''''&lt;br /&gt;
* ein Textfeld &amp;quot;Bemerkung&amp;quot; (Feldname: &amp;quot;be_notes&amp;quot;) '''''*2'''''&lt;br /&gt;
* Dropdownfeld zur Auswahl von Mitglied als Besitzer des Datensatzes '''''*3'''''&lt;br /&gt;
* Dropdownfeld zur Auswahl von Mitgliedsgruppe als Besitzer des Datensatzes '''''*3'''''&lt;br /&gt;
* Dropdownfeld zur Auswahl von Benutzer als Besitzer des Datensatzes '''''*3'''''&lt;br /&gt;
* Dropdownfeld zur Auswahl von Benutzergruppe als Besitzer des Datensatzes '''''*3'''''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''''*1''''' - Diese Felder sind im Frontend-Formular nicht verfügbar; sie werden sowohl per Frontend-Formular als auch bei Daten-Erfassung im Backend automatisch befüllt&lt;br /&gt;
&lt;br /&gt;
'''''*2''''' - Diese Felder sind im Frontend-Formular nicht verfügbar, können aber z.B. in Verbindung mit Auflistungs-Modul Verwendung finden &lt;br /&gt;
&lt;br /&gt;
'''''*3''''' - Diese Felder dienen der Zuordnung von Mitglieder- und Benutzergruppenberechtigungen bei der Ansicht / Bearbeitung im FE&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
'''Frontend-Modul &amp;quot;Auflistung Formular-Daten&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Zur Ausgabe der &amp;quot;Formular-Daten&amp;quot; im Frontend steht ein Ausgabe-Modul &amp;quot;Auflistung Fomular-Daten&amp;quot; zur Verfügung. Die Anwendung und Funktionsweise entspricht dem Modul &amp;quot;Auflistung&amp;quot;.&lt;br /&gt;
Optional kann die Bearbeitung und das Löschen der Daten im Frontend ermöglicht werden (wahlweise öffentlich, nur Daten der eigenen Mitglieder-Gruppe oder nur eigene Daten). &lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg 09 form show fe data 01.png|Efg 09 form show fe data 01.png]]&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg 09 form show fe data 02.png|Efg 09 form show fe data 02.png]]&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg 09 form show fe data 03.png|Efg 09 form show fe data 03.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Anstelle von Datenbank-Feldnamen wird bei den Angaben &amp;quot;Felder&amp;quot;, &amp;quot;Bedingung&amp;quot;, &amp;quot;Sortieren nach&amp;quot;, &amp;quot;Durchsuchbare Felder&amp;quot; und &amp;quot;Felder der Detailseite&amp;quot; der im Formular-Generator für das jeweilige Formularfeld eingetragene &amp;quot;Feldname&amp;quot; verwendet.&lt;br /&gt;
&lt;br /&gt;
== Lizenz ==&lt;br /&gt;
EFG wird der Contao Community unter der gleichen Lizenz wie Contao zur Verfügung gestellt (LGPL).&lt;br /&gt;
&lt;br /&gt;
== Autor der Erweiterung EFG ==&lt;br /&gt;
Thomas Kuhn&lt;br /&gt;
&lt;br /&gt;
== Weiterführende Links ==&lt;br /&gt;
Auf dem TYPOlight-Usertreffen 2009 in Frankfurt am Main wurde die Erweiterung EFG mit Praxisbeispielen vorgestellt. Die dazu gehörenden Informationen sind auf http://www.tl-usertreffen.weitzeldesign.com/usertreffen-2009.html zu finden.&lt;br /&gt;
&lt;br /&gt;
[https://community.contao.org/de/forumdisplay.php?13-efg Rubrik EFG im Contao-Forum]&lt;br /&gt;
&lt;br /&gt;
[https://contao.org/de/extension-list/view/efg.20020019.de.html EFG in der Erweiterungsliste]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Planepix|Planepix]] 15:04, 12. Mär. 2011 (CET)&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/EFG</id>
		<title>EFG</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/EFG"/>
				<updated>2014-09-26T13:33:01Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: Absatz für Inserttags für Datei-Uploads wieder eingefügt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
&lt;br /&gt;
'''EFG (Extended Form Generator)'''&lt;br /&gt;
Übertrag Handbuch EFG aus altem Wiki&lt;br /&gt;
&lt;br /&gt;
'''Tickets / Bugs'''&lt;br /&gt;
https://bitbucket.org/thk/efg/issues&lt;br /&gt;
&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=3.2.X&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Thomas Kuhn&lt;br /&gt;
| ExtVersion=2.2.1 stable&lt;br /&gt;
| Version=3.2.2 - 3.2.7&lt;br /&gt;
| ERLink=http://www.contao.org/erweiterungsliste/view/efg.20000019.de.html&lt;br /&gt;
|Depending=[http://www.contao.org/erweiterungsliste/view/xls_export.de.html&lt;br /&gt;
}}&lt;br /&gt;
[[Kategorie:Extensions]]&lt;br /&gt;
== Was ist und was bietet EFG? ==&lt;br /&gt;
EFG steht für Extended Form Generator und erweitert den Contao Formular-Generator um die folgenden Features.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== A - (EFG) Per E-Mail versenden ===&lt;br /&gt;
EFG bietet die Möglichkeit eine E-Mail die übermittelten Daten an eine definierte E-Mail-Adresse zu versenden. Die Option &amp;quot;(EFG) Per E-Mail versenden&amp;quot; sollte verwendet werden wenn EFG in Kombination mit z.B. einer Bestätigungsmail zur Anwendung kommt.&lt;br /&gt;
&amp;quot;Insert-Tags&amp;quot; können verwendet werden.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg_01_form_send_mail.png|Efg_01_form_send_mail.png]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== B - (EFG) Bestätigung per E-Mail versenden ===&lt;br /&gt;
Eine Kopie des per E-Mail vesendeten Formulars kann auch an den Absender geschickt werden.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg_02_small_form_confirm_mail.png|Efg_02_small_form_confirm_mail.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Der Text und Betreff kann durch den Einsatz von &amp;quot;Insert-Tags&amp;quot; personalisiert werden. &lt;br /&gt;
&lt;br /&gt;
Ab v1.8 können die &amp;quot;Insert-Tags&amp;quot; (wie in der Bestätigungs-Mail) auch auf der Bestätigungs-Seite verwendet werden.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== C - Speichern eingehender &amp;quot;Formular-Daten&amp;quot;, Erstellung von Backend-Modulen ===&lt;br /&gt;
EFG bietet im Formular-Generator eine weitere Option &amp;quot;Daten im Modul 'Formular-Daten' speichern&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg_03_form_backup_data_small.png|Efg_03_form_backup_data_small.png]]&lt;br /&gt;
&lt;br /&gt;
Bei gewählter Option werden Backend-Module erzeugt, in denen die aus Frontend-Formularen eingehenden Daten verwaltet werden können.&lt;br /&gt;
Es ist ebenso möglich, neue Datensätze direkt im Backend anzulegen - auch ohne veröffentlichtes Frontend-Formular. Dadurch können nahezu beliebige Backend-Module/-Tabellen erstellt werden, einfach durch Anlegen eines Fomulars mit den benötigten Feldern. Manuelles Anlegen von Datenbank-Tabellen ist nicht erforderlich.&lt;br /&gt;
&lt;br /&gt;
Zur Ausgabe und Bearbeitung der &amp;quot;Formular-Daten&amp;quot; im Frontend (mit Listen- und Detailansicht sowie Suche) steht letztlich noch ein spezielles Listing-Modul zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== D - zusätzliche Formularfeld-Typen ===&lt;br /&gt;
EFG stellt im Formular-Generator weitere Feld-Typen bereit:&lt;br /&gt;
* Select-Menü (DB)&lt;br /&gt;
* Radio-Button-Menü (DB) und&lt;br /&gt;
* Checkbox-Menü (DB)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== E - Datei an E-Mail anhängen ===&lt;br /&gt;
Mit dem EFG können Dateien jeweils an die versendende E-Mail und/oder an die versendende Bestätigungs-E-Mail angehängt werden.&lt;br /&gt;
Beim Verwenden dieser Option kann direkt aus der Dateiverwaltung eine Datei ausgewählt werden&lt;br /&gt;
&lt;br /&gt;
[[Datei:efg_10_attached_sheet_mail_01.png|efg_10_attached_sheet_mail_01.png]] &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Funktionsweise und Erläuterungen ==&lt;br /&gt;
&lt;br /&gt;
*(EFG) Per E-Mail versenden&lt;br /&gt;
&lt;br /&gt;
Hierfür stehen im Formular-Generator die im folgenden dargestellten Felder zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
'''Empfängeradresse'''&lt;br /&gt;
&lt;br /&gt;
Die Emailadresse an welche die übermittelten Daten gesendet werden sollen&lt;br /&gt;
&lt;br /&gt;
'''Betreff'''&lt;br /&gt;
&lt;br /&gt;
Die Betreffzeile&lt;br /&gt;
&lt;br /&gt;
'''Text der E-Mail'''&lt;br /&gt;
&lt;br /&gt;
Die Textnachricht, Insert-Tags sind möglich, siehe Abblidung unten&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg 04 form options data.png|Efg 04 form options data.png]] &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
*(EFG)Bestätigung per E-Mail versenden&lt;br /&gt;
&lt;br /&gt;
Nur wenn diese Option gewählt ist, wird eine Bestätigungs-E-Mail versendet.&lt;br /&gt;
Hierfür stehen im Formular-Generator die im folgenden dargestellten Felder zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
'''Formularfeld der Empfänger-E-Mailadresse:'''&lt;br /&gt;
&lt;br /&gt;
Hier muss das Formularfeld angegeben werden in dem der Absender ( Frontend-Benutzers/Seitenbesucher ) seine Emailadresse angibt oder ein Formularfeld das die Emailadresse als Wert enthält&lt;br /&gt;
&lt;br /&gt;
'''Absender:'''&lt;br /&gt;
&lt;br /&gt;
Die E-Mail-Adresse, die als Absender der Bestätigungs-Mail verwendet wird&lt;br /&gt;
Verwendung von Insert-Tags möglich, siehe &amp;quot;Text der Bestätigungs-E-Mail&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Antwort an (Reply-to)'''&lt;br /&gt;
&lt;br /&gt;
Hier kann die Emailadresse angegeben werden falls die Antwort auf die Bestätigungsmail nicht an den Absender gesendet werden sollen. Alternative ist die Eingabe mehrerer Emailadressen ( kommagetrennt ) möglich&lt;br /&gt;
&lt;br /&gt;
'''Betreff:'''&lt;br /&gt;
&lt;br /&gt;
Die Betreffzeile der Bestätigungs-Mail&lt;br /&gt;
Verwendung von Insert-Tags möglich, siehe &amp;quot;Text der Bestätigungs-E-Mail&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Text der Bestätigungs-E-Mail:'''&lt;br /&gt;
&lt;br /&gt;
Der eigentliche Text (Mail-Body) der Bestätigungs-Email. Es können die allgemeinen &amp;quot;Insert-Tags&amp;quot; (siehe http://www.contao.org/inserttags.html ) zur Ausgabe von Datum o.ä. eingesetzt werden.&lt;br /&gt;
&lt;br /&gt;
Weiterhin können die per Formular übermittelten Daten  mit Insert-Tags der Form&lt;br /&gt;
&amp;lt;source&amp;gt;{{form::FELDNAME}}&amp;lt;/source&amp;gt; im Text eingesetzt werden.&lt;br /&gt;
&lt;br /&gt;
FELDNAME steht hierbei für den &amp;quot;Feldnamen&amp;quot;, der im Formular-Generator für das jeweilige Formularfeld eingetragen wurde.&lt;br /&gt;
&lt;br /&gt;
Enthält das Formular z.B. ein Feld mit Feldname &amp;quot;user_name&amp;quot;, so wird der folgende Insert Tag im Text der Email durch den vom Formular-Absender angegebenen Namen ersetzt: &amp;lt;source&amp;gt;{{form::user_name}}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Datei-Uploads können als Anhang der Bestätigungs-Mail versendet werden, durch Einfügen von Insert-Tags der Form: &amp;lt;source&amp;gt;{{form::FELDNAME?attachment=true}}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um der Ausgabe ein Label hinzu zu fügen, verwendet man: &amp;lt;source&amp;gt;{{form::FELDNAME?label=Label of this field: }}&amp;lt;/source&amp;gt;&lt;br /&gt;
Mit der Formularoption &amp;quot;Leere Felder auslassen&amp;quot; kann so die Ausgabe leerer Felder inkl. Label unterdrückt werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''HTML-Vorlage für die Bestätigungs-Email:'''&lt;br /&gt;
&lt;br /&gt;
Falls die Bestätigungs-Email als HTML-Mail (bzw. als Multipart, sowohl Text- als auch HTML-Version) versendet werden soll, kann hier aus dem Dateisystem eine HTML-Datei gewählt werden.&lt;br /&gt;
&lt;br /&gt;
Mit der Installation dieser Extension wird im Ordner &amp;quot;example_confirmation_mail&amp;quot; ein einfaches Beispiel für Testzwecke bereitgestellt. Die Verwendung der Insert-Tags ist auch in der HTML-Vorlage möglich.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg 05 form options confirm.png|Efg 05 form options confirm.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Leere Felder auslassen'''&lt;br /&gt;
&lt;br /&gt;
Ist diese Option gewählt, werden leere Felder ( z.B. Felder die nicht als Pflichtfeld deklaiert und auch nicht ausgefüllt wurden, nicht im Mailversand berücksichtigt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dateien an Mail anhängen'''&lt;br /&gt;
&lt;br /&gt;
Mit dieser Option können Dateien als Anhang der Mail versendet werden ( sowohl in der Mail-Versendung als auch in der Bestätigungsmail-Versendung )&lt;br /&gt;
Die entsprechende Dateien können direkt aus der Dateiverwaltung von Contao ausgewählt werden.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Attached mail 01.png|Attached mail 01.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Speichern von &amp;quot;Formular-Daten&amp;quot; im Backend, Erstellung von Backend-Modulen ==&lt;br /&gt;
&lt;br /&gt;
EFG stellt im Formular-Generator eine zusätzliche Option zur Verfügung:&lt;br /&gt;
Wenn diese Option aktiviert ist, werden über das Frontend-Formular übermittelte Daten in der Datenbank gespeichert und können im Backend verwaltet werden.&lt;br /&gt;
{{Hinweis|Nach Ergänzung oder Änderung von Formular-Feldern muß das Formular erneut gespeichert werden, oder aber diese Option erst nach Anlegen aller benötigten Formular-Felder gewählt werden.}}&lt;br /&gt;
&lt;br /&gt;
* Daten im Modul &amp;quot;Formular-Daten&amp;quot; speichern&lt;br /&gt;
&lt;br /&gt;
Hierfür stehen im Formular-Generator die im folgenden dargestellten Optionen zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
'''Formularfeld für Alias*'''&lt;br /&gt;
&lt;br /&gt;
Hier muss das Formularfeld gewählt werden dessen Inhalt zur Erzeugung des Formulardaten-Alias verwendet wird.{{msgInfo|Um eine korrekte ID für jeden Datensatz zu erhalten, sollte man beim Erstellen der Formularfelder mit einem versteckten Feld beginnen, dieses z.B. als ID benennen und den Standard-Wert für das Feld mit &amp;lt;source&amp;gt;{{date::Ymdi}} &amp;lt;/source&amp;gt; belegen. So ist eine eindeutige Referenz als Alias gewährleistet. &lt;br /&gt;
[[Datei:Efg 07 tooltip alias.png|Efg 07 tooltip alias.png]]}}&lt;br /&gt;
&lt;br /&gt;
'''Optionswerte speichern'''&lt;br /&gt;
&lt;br /&gt;
Hier kann die Option gewählt werden, das bei den Feldern des Typ 'Select-Menü', 'Radio-Button-Menü' und 'Checkbox-Menü' der ausgewählte Wert anstelle der Bezeichnung gespeichert wird. Die Option hat keine Auswirkung auf die Felder 'Select-Menü (DB)', 'Radio-Button-Menü (DB)' und 'Checkbox-Menü (DB)' &lt;br /&gt;
&lt;br /&gt;
'''Feldwerte exportieren'''&lt;br /&gt;
&lt;br /&gt;
Wird diese Option gewählt, werden beim Export der Formulardaten die ausgewählten Werte von Formularfeldern anstelle der ausgewählten Bezeichnungen exportiert. Dies trifft für alle Radio-Buttons, Checkboxen und Selects zu&lt;br /&gt;
&lt;br /&gt;
'''Feldnamen exportieren'''&lt;br /&gt;
&lt;br /&gt;
Wird diese Option gewählt, werden beim Export der Formulardaten die Feldnamen anstelle der Feldbezeichnungen exportiert &lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg 06 form backup data.png|Efg 06 form backup data.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Verwaltung der &amp;quot;Formular-Daten&amp;quot; im Backend&lt;br /&gt;
&lt;br /&gt;
Sobald für mindestens ein Formular die Speicherung der &amp;quot;Formular-Daten&amp;quot; aktiviert ist, erscheint ein neuer Bereich in der Backend-Navigation, benannt als &amp;quot;Formular-Daten&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg_be_module_feedback.png|Efg_be_module_feedback.png]]&lt;br /&gt;
&lt;br /&gt;
Jedes &amp;quot;daten-speichernde&amp;quot; Formular erzeugt darunter einen weiteren Eintrag (die Bezeichnung entspricht dabei dem Titel des Formulars).&lt;br /&gt;
&lt;br /&gt;
Hier können die Daten bearbeitet/verändert und gelöscht werden. Auch Neuanlegen von Datensätzen, sowie Export der Daten im CSV-Format ist im Backend möglich.&lt;br /&gt;
&lt;br /&gt;
Zusätzlich bietet der Navigations-Eintrag &amp;quot;Feedback&amp;quot; den gleichzeitigen Zugriff auf die aus verschiedenen Formularen gespeicherten Daten. Dies kann genutzt werden, wenn z.B. mehrere unterschiedliche &amp;quot;Anfrage&amp;quot;-Formulare im Einsatz sind. (Ein Neuanlegen von Daten ist allerdings nur in den formularspezifischen Listen-Ansichten möglich.)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
*Bearbeitung der Daten im Backend&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg 08 backend edit data.png|Efg 08 backend edit data.png]]&lt;br /&gt;
&lt;br /&gt;
Jeder Datensatz umfasst: - zusätzlich zu den per Formularfeld definierten - folgende Basis-/Metadaten:&lt;br /&gt;
&lt;br /&gt;
* Anzeige des betreffenden Formulars aus dem der Datensatz stammt ( Feldbezeichung &amp;quot;Formular&amp;quot; ) '''''*1'''''&lt;br /&gt;
* Die Referenz-Anzeige des Eintrags ( Feldbezeichung &amp;quot;Alias&amp;quot; ) '''''*1'''''&lt;br /&gt;
* das Datum der Erstellung/Übermittlung des Datensatzes (Feldname &amp;quot;date&amp;quot;) '''''*1'''''&lt;br /&gt;
* die IP-Adresse des Benutzers (Feldname &amp;quot;ip&amp;quot;) '''''*1'''''&lt;br /&gt;
* eine Checkbox &amp;quot;Veröffentlicht&amp;quot; (Feldname: &amp;quot;published&amp;quot;, Vorgabewert: nicht veröffentlicht, kann wie bei Artikeln z.B. in    Verbindung mit Auflistung-Modul als Kriterium für Anzeige im Frontend dienen) '''''*2'''''&lt;br /&gt;
* den Sortierindex ( Der Sortierindex kann bei einer Auflistung verwendet werden ) '''''*1'''''&lt;br /&gt;
* &amp;quot;Bestätigungsmail gesendet&amp;quot; ( Hinweis ob eine Bestätigungsmail gesendet wurde ) '''''*1'''''&lt;br /&gt;
* &amp;quot;Bestätigungsmail gesendet am&amp;quot; ( Hinweis wann eine Bestätigungsmail gesendet wurde ) '''''*1'''''&lt;br /&gt;
* ein Textfeld &amp;quot;Bemerkung&amp;quot; (Feldname: &amp;quot;be_notes&amp;quot;) '''''*2'''''&lt;br /&gt;
* Dropdownfeld zur Auswahl von Mitglied als Besitzer des Datensatzes '''''*3'''''&lt;br /&gt;
* Dropdownfeld zur Auswahl von Mitgliedsgruppe als Besitzer des Datensatzes '''''*3'''''&lt;br /&gt;
* Dropdownfeld zur Auswahl von Benutzer als Besitzer des Datensatzes '''''*3'''''&lt;br /&gt;
* Dropdownfeld zur Auswahl von Benutzergruppe als Besitzer des Datensatzes '''''*3'''''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''''*1''''' - Diese Felder sind im Frontend-Formular nicht verfügbar; sie werden sowohl per Frontend-Formular als auch bei Daten-Erfassung im Backend automatisch befüllt&lt;br /&gt;
&lt;br /&gt;
'''''*2''''' - Diese Felder sind im Frontend-Formular nicht verfügbar, können aber z.B. in Verbindung mit Auflistungs-Modul Verwendung finden &lt;br /&gt;
&lt;br /&gt;
'''''*3''''' - Diese Felder dienen der Zuordnung von Mitglieder- und Benutzergruppenberechtigungen bei der Ansicht / Bearbeitung im FE&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
'''Frontend-Modul &amp;quot;Auflistung Formular-Daten&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Zur Ausgabe der &amp;quot;Formular-Daten&amp;quot; im Frontend steht ein Ausgabe-Modul &amp;quot;Auflistung Fomular-Daten&amp;quot; zur Verfügung. Die Anwendung und Funktionsweise entspricht dem Modul &amp;quot;Auflistung&amp;quot;.&lt;br /&gt;
Optional kann die Bearbeitung und das Löschen der Daten im Frontend ermöglicht werden (wahlweise öffentlich, nur Daten der eigenen Mitglieder-Gruppe oder nur eigene Daten). &lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg 09 form show fe data 01.png|Efg 09 form show fe data 01.png]]&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg 09 form show fe data 02.png|Efg 09 form show fe data 02.png]]&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg 09 form show fe data 03.png|Efg 09 form show fe data 03.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Anstelle von Datenbank-Feldnamen wird bei den Angaben &amp;quot;Felder&amp;quot;, &amp;quot;Bedingung&amp;quot;, &amp;quot;Sortieren nach&amp;quot;, &amp;quot;Durchsuchbare Felder&amp;quot; und &amp;quot;Felder der Detailseite&amp;quot; der im Formular-Generator für das jeweilige Formularfeld eingetragene &amp;quot;Feldname&amp;quot; verwendet.&lt;br /&gt;
&lt;br /&gt;
== Lizenz ==&lt;br /&gt;
EFG wird der Contao Community unter der gleichen Lizenz wie Contao zur Verfügung gestellt (LGPL).&lt;br /&gt;
&lt;br /&gt;
== Autor der Erweiterung EFG ==&lt;br /&gt;
Thomas Kuhn&lt;br /&gt;
&lt;br /&gt;
== Weiterführende Links ==&lt;br /&gt;
Auf dem TYPOlight-Usertreffen 2009 in Frankfurt am Main wurde die Erweiterung EFG mit Praxisbeispielen vorgestellt. Die dazu gehörenden Informationen sind auf http://www.tl-usertreffen.weitzeldesign.com/usertreffen-2009.html zu finden.&lt;br /&gt;
&lt;br /&gt;
[https://community.contao.org/de/forumdisplay.php?13-efg Rubrik EFG im Contao-Forum]&lt;br /&gt;
&lt;br /&gt;
[https://contao.org/de/extension-list/view/efg.20020019.de.html EFG in der Erweiterungsliste]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Planepix|Planepix]] 15:04, 12. Mär. 2011 (CET)&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/MetaModels_Backend:_Eingabemaske</id>
		<title>MetaModels Backend: Eingabemaske</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/MetaModels_Backend:_Eingabemaske"/>
				<updated>2014-09-16T07:10:20Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Eingabemaske */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:MetaModels|M3]]&lt;br /&gt;
=Allgemeines zur Eingabemaske (fka Paletteneinstellungen)=&lt;br /&gt;
# [[MetaModels_Backend:_Attribute| MetaModels Attribute]]&lt;br /&gt;
# [[MetaModels_Backend:_Ausgabevorgaben| MetaModels Ausgabevorgaben]]&lt;br /&gt;
# [[MetaModels_Backend:_Eingabemaske| MetaModels Eingabemaske]]&lt;br /&gt;
# [[MetaModels_Backend:_Filter| MetaModels Filter]]&lt;br /&gt;
# [[MetaModels_Backend:_Ansichtseinstellungen| MetaModels Ansichtseinstellungen]]&lt;br /&gt;
&lt;br /&gt;
==Was ist eigentlich eine Eingabemaske ?==&lt;br /&gt;
[[File:icons_paletteneinstellungen.png|left|32px]]&lt;br /&gt;
Mit der Eingabemaske wird im Wesentlichen das Aussehen der Datenerfassung im Backend gesteuert. Es beantwortet die folgenden Fragen:&lt;br /&gt;
* Wo werden die Daten erfasst?&lt;br /&gt;
* Wie sieht die Übersichtsliste aus?&lt;br /&gt;
* Wie kann ich die Übersichtliste organisieren?&lt;br /&gt;
* Wie sieht das Erfassungsformular aus?&lt;br /&gt;
* Wie kann ich das Aussehen des Erfassungsformulars beeinflussen?&lt;br /&gt;
&lt;br /&gt;
=Einstieg=&lt;br /&gt;
[[File:mm_backend_paletteneinstellungen.png|thumb|400px]]&lt;br /&gt;
Nachdem man über '''Neue Eingabemaske''' einen Eintrag generiert hat, stehen 2 Funktionen zur Verfügung:&lt;br /&gt;
# Eingabemaske bearbeiten: Erstellen und organisieren der BE Liste&lt;br /&gt;
# Einstellungen der Eingabemaske bearbeiten: Erstellen und organisieren des BE Formulars&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Backend Liste=&lt;br /&gt;
==Eingabemaske==&lt;br /&gt;
[[File:mm_backend_paletteneinstellungen_palette.png|thumb|400px]]&lt;br /&gt;
Nachdem man über '''Neue Eingabemaske''' einen Eintrag generiert hat, stehen 2 Funktionen zur Verfügung:&lt;br /&gt;
* '''Name''': Name der Palette&lt;br /&gt;
* '''Panel-Layout''': Damit lässt sich die BE Liste organisieren. 4 Werte stehen zur Verfügung: filter, sort, search und limit. Mit Komma oder Semikolon steuert man die Darstellung (siehe nächster Screen)&lt;br /&gt;
* '''Integration''': Unabhängig, Als Kind-Tabelle&lt;br /&gt;
* '''Sortiermodus''': &lt;br /&gt;
** 0 Datensätze werden nicht sortiert &lt;br /&gt;
** 1 Datensätze nach festem Feld sortieren, &lt;br /&gt;
** 2 Datensätze nach variablen Feld sortieren, &lt;br /&gt;
** 5 Einträge werden als Baumstruktur dargestellt (siehe Seitenstruktur)&lt;br /&gt;
* '''Sortier-Flag''': diverse Optionen&lt;br /&gt;
* '''Backend-Bereich''': Hier kann man auswählen, wo in der Backend-Navigation (links) der Eintrag 'Musicbox' erscheinen soll. Neu lässt sich das eigene MetaModel auch in einen Bereich namens &amp;quot;MetaModel Boilerplate&amp;quot; packen&lt;br /&gt;
** TIP: hat man mehrer MetaModels in einem Bereich der Navigation kann die Reihenfolge über das Sorting-Attribut der MetaModel gesteuert werden.&lt;br /&gt;
* '''Backend-Icon''': Optional kann man sein eigenes Icon anzeigen lassen&lt;br /&gt;
* '''Backend-Beschreibung''': Sprache, Labeltext (Name deiner BE Liste), Beschreibungstext (Tooltip)&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Panel-Layout==&lt;br /&gt;
[[File:mm_backend_paletteneinstellungen_panel.png|thumb|400px]]&lt;br /&gt;
Die Einträge unter dem Panel-Layout bestimmen, ob und wie die einzelnen Funktionen erscheinen.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Backend Liste gestalten==&lt;br /&gt;
[[File:mm_backend_liste_rendereinstellungen.png|thumb|400px]]&lt;br /&gt;
Es besteht die Möglichkeit, die BE-Liste etwas user-freundlicher zu gestalten, indem man eine spezifische CSS-Datei einbettet. Mit wenigen CSS-Anweisungen kriegt man recht schnell eine anständige Ansicht hin. Hier folgend ein Beispiel.&lt;br /&gt;
&lt;br /&gt;
'''CSS-Datei laden'''&amp;lt;br /&amp;gt;&lt;br /&gt;
Die CSS-Datei kann irgendwo im Verzeichnis '''tl_files''' (Contao 2) bzw. '''files''' (Contao 3) abgelegt werden. Über '''Zusätzliche CSS-Dateien''' kann die Datei geladen und anschliessend die Option '''Veröffentlichen''' angewählt werden. Nützlich ist in diesem Fall auch die Option '''Labels verbergen'''. &lt;br /&gt;
&lt;br /&gt;
Über die HTML-Source Ansicht der BE-Liste kann man sich die verwendeten CSS-Klassen anzeigen lassen und in der CSS-Datei entsprechend formatieren. Ein Beispiel folgt unten.&lt;br /&gt;
&lt;br /&gt;
Das Ganze funktioniert selbstredend auch für FE-Ansichten.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Das Beispiel musicbox.css'''&lt;br /&gt;
[[File:mm_backend_liste.png|thumb|400px]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;css&amp;quot;&amp;gt;&lt;br /&gt;
.item {&lt;br /&gt;
	overflow: hidden;&lt;br /&gt;
	padding: 10px 0;&lt;br /&gt;
}&lt;br /&gt;
.item .field {&lt;br /&gt;
	margin-bottom: 2px;&lt;br /&gt;
}&lt;br /&gt;
.item .cover {&lt;br /&gt;
	float: left;&lt;br /&gt;
	margin-right: 20px;&lt;br /&gt;
}&lt;br /&gt;
.item .title .value {&lt;br /&gt;
	font-size: 13px;&lt;br /&gt;
	font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
.item .composer .value {&lt;br /&gt;
	color: #c00;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Backend Formular=&lt;br /&gt;
==Attribute==&lt;br /&gt;
[[File:mm_backend_paletteneinstellungen_liste.png|thumb|400px]]&lt;br /&gt;
Nachdem man über '''Alle hinzufügen''' alle Attribute hinzugefügt hast, kann man die Liste per Drag&amp;amp;Drop organisieren. Die Reihenfolge legt fest, in welcher Reihenfolge die Eingabefelder im Erfassungsformular erscheinen.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Attribut bearbeiten==&lt;br /&gt;
[[File:mm_backend_paletteneinstellungen_attribut.png|thumb|400px]]&lt;br /&gt;
Jedes Attribut hat gemäss seinem Typ spezifische Einstelloptionen. Was sie jedoch alle gemein haben, sind die so genannten '''Backend-Classes'''. Darüber lassen sich die Eingabefelder ein wenig gestalten. Folgende CSS-Klassen stehen zur Verfügung:&lt;br /&gt;
* '''w50''': Die Breite auf 50% festlegen und nach links floaten.&lt;br /&gt;
* '''clr''': Alle Floats clearen.&lt;br /&gt;
* '''long''': Vergrößert das Eingabefeld, sodass es zwei Spalten umfasst.&lt;br /&gt;
* '''wizard''': Das Eingabefeld kürzen, sodass Platz für einen Wizard ist (z.B. einen Date-Picker).&lt;br /&gt;
* '''m12''': Dem Element einen oberen Abstand (top-margin) von 12 Pixel geben (für einzelne Checkboxen).&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Das Backend-Formular==&lt;br /&gt;
[[File:mm_backend_paletteneinstellungen_formular.png|thumb|400px]]&lt;br /&gt;
Und so könnte das Backend-Formular in etwa aussehen. Rot gekennzeichnet die Backend-Klassen, die den Attributen mitgegeben wurden.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Das Backend-Formular mit Legenden==&lt;br /&gt;
[[File:mm_backend_eingabemaske_legenden.png|thumb|400px]]&lt;br /&gt;
Das Backend-Formular lässt sich noch weiter organisieren, indem man Eingabefelder, etc. über '''Legenden''' gruppiert (siehe nebenstehendes Beispiel). &lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_eingabemaske_legende_erfassen1.png|thumb|400px]]&lt;br /&gt;
Hierzu auf der Attributsübersicht auf '''Neu''' klicken. &lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_eingabemaske_legende_erfassen2.png|thumb|400px]]&lt;br /&gt;
Als Typ kann man nun den Typ '''Legende''' wählen und gibt anschliessend einen '''Legenden-Titel''' ein.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_eingabemaske_legende_erfassen3.png|thumb|400px]]&lt;br /&gt;
Die '''Legenden-Titel''' können nun per Drag&amp;amp;Drop an die gewünschte Position verschoben werden. Sie können auch jederzeit umbenannt werden.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Einstellungen der Eingabefelder (Attribute)=&lt;br /&gt;
&lt;br /&gt;
==Alias==&lt;br /&gt;
[[File:mm_paletteneinstellungen_alias.png|thumb|400px]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Auswahl (Select)==&lt;br /&gt;
[[File:mm_paletteneinstellungen_select.png|thumb|400px]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Checkbox==&lt;br /&gt;
[[File:mm_paletteneinstellungen_checkbox.png|thumb|400px]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Color==&lt;br /&gt;
[[File:mm_eingabemaske_color.png|thumb|400px]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Datei==&lt;br /&gt;
[[File:mm_paletteneinstellungen_file.png|thumb|400px]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Dezimal==&lt;br /&gt;
[[File:mm_paletteneinstellungen_decimal.png|thumb|400px]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==GeoProtection==&lt;br /&gt;
[[File:mm_paletteneinstellungen_geoprotection.png|thumb|400px]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Longtext==&lt;br /&gt;
[[File:mm_paletteneinstellungen_longtext.png|thumb|400px]]&lt;br /&gt;
Standardmäßig stehen drei Richtext-Editoren zur Verfügung: tinyFlash, tinyMCE und tinyNews.&amp;lt;br&amp;gt;&lt;br /&gt;
Eigens angepasste RTEs können hier ausgewählt werden, sofern sie auch angelegt wurden, bspw. in einer ''tinyCustom.php''&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Numerisch==&lt;br /&gt;
[[File:mm_paletteneinstellungen_numeric.png|thumb|400px]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Sprachcode==&lt;br /&gt;
[[File:mm_paletteneinstellungen_sprachcode.png|thumb|400px]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tags==&lt;br /&gt;
[[File:mm_paletteneinstellungen_tags.png|thumb|400px]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Text==&lt;br /&gt;
[[File:mm_paletteneinstellungen_text.png|thumb|400px]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Timestamp (Datum/Zeit)==&lt;br /&gt;
[[File:mm_paletteneinstellungen_timestamp.png|thumb|400px]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==URL==&lt;br /&gt;
[[File:mm_paletteneinstellungen_url.png|thumb|400px]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Übersetztes Alias==&lt;br /&gt;
Details folgen&lt;br /&gt;
&lt;br /&gt;
==Übersetzte Datei==&lt;br /&gt;
Details folgen&lt;br /&gt;
&lt;br /&gt;
==Übersetzter Longtext==&lt;br /&gt;
Details folgen&lt;br /&gt;
&lt;br /&gt;
==Übersetzte Auswahl==&lt;br /&gt;
Details folgen&lt;br /&gt;
&lt;br /&gt;
==Übersetzte Tags==&lt;br /&gt;
Details folgen&lt;br /&gt;
&lt;br /&gt;
==Übersetzter Text==&lt;br /&gt;
Details folgen&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/EFG</id>
		<title>EFG</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/EFG"/>
				<updated>2014-02-06T13:01:27Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Funktionsweise und Erläuterungen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
&lt;br /&gt;
'''EFG (Extended Form Generator)'''&lt;br /&gt;
Übertrag Handbuch EFG aus altem Wiki&lt;br /&gt;
&lt;br /&gt;
'''Tickets / Bugs'''&lt;br /&gt;
https://bitbucket.org/thk/efg/issues&lt;br /&gt;
&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=2.9&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Thomas Kuhn&lt;br /&gt;
| ExtVersion=2.0.1 stable&lt;br /&gt;
| Version=2.7.0 - 3.0.5&lt;br /&gt;
| ERLink=http://www.contao.org/erweiterungsliste/view/efg.20000019.de.html&lt;br /&gt;
|Depending=[http://www.contao.org/erweiterungsliste/view/xls_export.de.html&lt;br /&gt;
}}&lt;br /&gt;
[[Kategorie:Extensions]]&lt;br /&gt;
== Was ist und was bietet EFG? ==&lt;br /&gt;
EFG steht für Extended Form Generator und erweitert den Contao Formular-Generator um die folgenden Features.&lt;br /&gt;
&lt;br /&gt;
=== A - Bestätigung per Email ===&lt;br /&gt;
Contao bietet die Möglichkeit, nach Absenden eines Formulars im Frontend auf eine &amp;quot;Danke-Seite&amp;quot; weiterzuleiten, sowie eine E-Mail mit den übermittelten Daten an eine definierte E-Mail-Adresse zu versenden. Diese kann optional als Kopie auch an den Absender des Formulars geschickt werden.&lt;br /&gt;
&lt;br /&gt;
EFG bietet darüberhinaus die Möglichkeit, eine E-Mail mit beliebigem Text-Inhalt an den Formular-Absender zu senden. Der Text und Betreff kann durch den Einsatz von &amp;quot;Insert-Tags&amp;quot; personalisiert werden. &lt;br /&gt;
&lt;br /&gt;
Ab v1.8 können die &amp;quot;Insert-Tags&amp;quot; (wie in der Bestätigungs-Mail) auch auf der Bestätigungs-Seite verwendet werden.&lt;br /&gt;
&lt;br /&gt;
=== B - Speichern eingehender &amp;quot;Formular-Daten&amp;quot;, Erstellung von Backend-Modulen ===&lt;br /&gt;
EFG bietet im Formular-Generator eine weitere Option &amp;quot;Daten im Backend-Modul speichern&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Bei gewählter Option werden Backend-Module erzeugt, in denen die aus Frontend-Formularen eingehenden Daten verwaltet werden können.&lt;br /&gt;
Es ist ebenso möglich, neue Datensätze direkt im Backend anzulegen - auch ohne veröffentlichtes Frontend-Formular. Dadurch können nahezu beliebige Backend-Module/-Tabellen erstellt werden, einfach durch Anlegen eines Fomulars mit den benötigten Feldern. Manuelles Anlegen von Datenbank-Tabellen ist nicht erforderlich.&lt;br /&gt;
&lt;br /&gt;
Zur Ausgabe und Bearbeitung der &amp;quot;Formular-Daten&amp;quot; im Frontend (mit Listen- und Detailansicht sowie Suche) steht letztlich noch ein spezielles Listing-Modul zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
=== C - zusätzliche Formularfeld-Typen ===&lt;br /&gt;
EFG stellt im Formular-Generator weitere Feld-Typen bereit:&lt;br /&gt;
* Select-Menü (DB)&lt;br /&gt;
* Radio-Button-Menü (DB) und&lt;br /&gt;
* Checkbox-Menü (DB)&lt;br /&gt;
 &lt;br /&gt;
Die im Frontend-Formular verfügbaren Optionen dieser Formular-Elemente werden aus beliebigen TL-Datenbank-Tabellen generiert (Angabe der Tabelle, des anzuzeigenden Feldes sowie optionaler Einschränkung zur Filterung der Werte)&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg-be_formdatalisting_de.png]]&lt;br /&gt;
&lt;br /&gt;
Dieser Feld-Typ erzeugt im Frontend-Formular eine Bilder-Galerie, ergänzt um Radio-Buttons zur Auswahl eines Bildes.&lt;br /&gt;
&lt;br /&gt;
== Funktionsweise und Erläuterungen ==&lt;br /&gt;
&lt;br /&gt;
'''Bestätigungs-Email'''&lt;br /&gt;
&lt;br /&gt;
Hierfür stehen im Formular-Generator die im folgenden dargestellten Felder zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
'''Bestätigung per E-Mail versenden:'''&lt;br /&gt;
&lt;br /&gt;
Nur wenn diese Option gewählt ist, wird eine Bestätigungs-E-Mail versendet und es stehen die weiteren Felder zur Verfügung:&lt;br /&gt;
&lt;br /&gt;
'''Formularfeld der Empfänger-E-Mailadresse:'''&lt;br /&gt;
&lt;br /&gt;
Hier muß das Formularfeld gewählt werden, das die E-Mail-Adresse des Frontend-Benutzers/Seitenbesuchers enthält&lt;br /&gt;
&lt;br /&gt;
'''Absender:'''&lt;br /&gt;
&lt;br /&gt;
Die E-Mail-Adresse, die als Absender der Bestätigungs-Mail verwendet wird&lt;br /&gt;
Verwendung von Insert-Tags möglich, siehe &amp;quot;Text der Bestätigungs-E-Mail&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Betreff:'''&lt;br /&gt;
&lt;br /&gt;
Die Betreffzeile der Bestätigungs-Mail&lt;br /&gt;
Verwendung von Insert-Tags möglich, siehe &amp;quot;Text der Bestätigungs-E-Mail&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Text der Bestätigungs-E-Mail:'''&lt;br /&gt;
&lt;br /&gt;
Der eigentliche Text (Mail-Body) der Bestätigungs-Email. Es können die allgemeinen &amp;quot;Insert-Tags&amp;quot; (siehe http://www.contao.org/inserttags.html ) zur Ausgabe von Datum o.ä. eingesetzt werden.&lt;br /&gt;
&lt;br /&gt;
Weiterhin können die per Formular übermittelten Daten  mit Insert-Tags der Form&lt;br /&gt;
&amp;lt;source&amp;gt;{{form::FELDNAME}}&amp;lt;/source&amp;gt; im Text eingesetzt werden.&lt;br /&gt;
&lt;br /&gt;
FELDNAME steht hierbei für den &amp;quot;Feldname&amp;quot;, der im Formular-Generator für das jeweilige Formularfeld eingetragen wurde.&lt;br /&gt;
&lt;br /&gt;
Enthält das Formular z.B. ein Feld mit Feldname &amp;quot;user_name&amp;quot;, so wird der folgende Insert Tag im Text der Email durch den vom Formular-Absender angegebenen Namen ersetzt: &amp;lt;source&amp;gt;{{form::user_name}}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Datei-Uploads können als Anhang der Bestätigungs-Mail versendet werden, durch Einfügen von Insert-Tags der Form: &amp;lt;source&amp;gt;{{form::FELDNAME?attachment=true}}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um der Ausgabe ein Label hinzu zu fügen, verwendet man: &amp;lt;source&amp;gt;{{form::FELDNAME?label=Label of this field: }}&amp;lt;/source&amp;gt;&lt;br /&gt;
Mit der Formularoption &amp;quot;Leere Felder auslassen&amp;quot; kann so die Ausgabe leerer Felder inkl. Label unterdrückt werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''HTML-Vorlage für die Bestätigungs-Email:'''&lt;br /&gt;
&lt;br /&gt;
Falls die Bestätigungs-Email als HTML-Mail (bzw. als Multipart, sowohl Text- als auch HTML-Version) versendet werden soll, kann hier aus dem Dateisystem eine HTML-Datei gewählt werden.&lt;br /&gt;
&lt;br /&gt;
Mit der Installation dieser Extension wird im Ordner &amp;quot;example_confirmation_mail&amp;quot; ein einfaches Beispiel für Testzwecke bereitgestellt. Die Verwendung der Insert-Tags ist auch in der HTML-Vorlage möglich.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg_form_options1_de.png|efg_form_options1_de.png]]&lt;br /&gt;
&lt;br /&gt;
== Speichern von &amp;quot;Formular-Daten&amp;quot; im Backend, Erstellung von Backend-Modulen ==&lt;br /&gt;
&lt;br /&gt;
'''&amp;quot;Formular-Daten&amp;quot; im Backend'''&lt;br /&gt;
&lt;br /&gt;
EFG stellt im Formular-Generator eine zusätzliche Option zur Verfügung:&lt;br /&gt;
&lt;br /&gt;
* Daten im Modul &amp;quot;Formular-Daten&amp;quot; speichern&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg_form_options2_de.png|Efg_form_options2_de.png]]&lt;br /&gt;
&lt;br /&gt;
Wenn diese Option aktiviert ist, werden über das Frontend-Formular übermittelte Daten in der Datenbank gespeichert und können im Backend verwaltet werden.&lt;br /&gt;
{{Hinweis|Nach Ergänzung oder Änderung von Formular-Feldern muß das Formular erneut gespeichert werden, oder aber diese Option erst nach Anlegen aller benötigten Formular-Felder gewählt werden.}}&lt;br /&gt;
&lt;br /&gt;
'''Verwaltung der &amp;quot;Formular-Daten&amp;quot; im Backend'''&lt;br /&gt;
&lt;br /&gt;
Sobald für mindestens ein Formular die Speicherung der &amp;quot;Formular-Daten&amp;quot; aktiviert ist, erscheint ein neuer Bereich in der Backend-Navigation, benannt als &amp;quot;Formular-Daten&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg_be_module_feedback.png|Efg_be_module_feedback.png]]&lt;br /&gt;
&lt;br /&gt;
Jedes &amp;quot;daten-speichernde&amp;quot; Formular erzeugt darunter einen weiteren Eintrag (die Bezeichnung entspricht dabei dem Titel des Formulars).&lt;br /&gt;
&lt;br /&gt;
Hier können die Daten bearbeitet/verändert und gelöscht werden. Auch Neuanlegen von Datensätzen, sowie Export der Daten im CSV-Format ist im Backend möglich.&lt;br /&gt;
&lt;br /&gt;
Zusätzlich bietet der Navigations-Eintrag &amp;quot;Feedback&amp;quot; den gleichzeitigen Zugriff auf die aus verschiedenen Formularen gespeicherten Daten. Dies kann genutzt werden, wenn z.B. mehrere unterschiedliche &amp;quot;Anfrage&amp;quot;-Formulare im Einsatz sind. (Ein Neuanlegen von Daten ist allerdings nur in den formularspezifischen Listen-Ansichten möglich.)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
'''Bearbeitung der Daten im Backend'''&lt;br /&gt;
&lt;br /&gt;
[[Datei:Efg_be_formdata_edit_de.png|Efg_be_formdata_edit_de.png]]&lt;br /&gt;
&lt;br /&gt;
Jeder Datensatz umfasst&lt;br /&gt;
* zusätzlich zu den per Formularfeld definierten - folgende Basis-/Metadaten:&lt;br /&gt;
* das Datum der Erstellung/Übermittlung des Datensatzes (Feldname &amp;quot;date&amp;quot;) '''''*1'''''&lt;br /&gt;
* die IP-Adresse des Benutzers (Feldname &amp;quot;ip&amp;quot;) '''''*1'''''&lt;br /&gt;
* eine Checkbox &amp;quot;Veröffentlicht&amp;quot; (Feldname: &amp;quot;published&amp;quot;, Vorgabewert: nicht veröffentlicht, kann wie bei Artikeln z.B. in Verbindung mit Auflistung-Modul als Kriterium für Anzeige im Frontend dienen) '''''*2'''''&lt;br /&gt;
* ein Textfeld &amp;quot;Bemerkung&amp;quot; (Feldname: &amp;quot;be_notes&amp;quot;) '''''*2'''''&lt;br /&gt;
&lt;br /&gt;
'''''*1''''' - diese Felder sind im Frontend-Formular nicht verfügbar; sie werden sowohl per Frontend-Formular als auch bei Daten-Erfassung im Backend automatisch befüllt&lt;br /&gt;
&lt;br /&gt;
'''''*2''''' - diese Felder sind im Frontend-Formular nicht verfügbar, können aber z.B. in Verbindung mit Auflistungs-Modul Verwendung finden&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
'''Frontend-Modul &amp;quot;Auflistung Formular-Daten&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Zur Ausgabe der &amp;quot;Formular-Daten&amp;quot; im Frontend steht ein Ausgabe-Modul &amp;quot;Auflistung Fomular-Daten&amp;quot; zur Verfügung. Die Anwendung und Funktionsweise entspricht dem Modul &amp;quot;Auflistung&amp;quot;.&lt;br /&gt;
Optional kann die Bearbeitung und das Löschen der Daten im Frontend ermöglicht werden (wahlweise öffentlich, nur Daten der eigenen Mitglieder-Gruppe oder nur eigene Daten). &lt;br /&gt;
&lt;br /&gt;
[[Datei:efg-be_formdatalisting_de.png|efg-be_formdatalisting_de.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Anstelle von Datenbank-Feldnamen wird bei den Angaben &amp;quot;Felder&amp;quot;, &amp;quot;Bedingung&amp;quot;, &amp;quot;Sortieren nach&amp;quot;, &amp;quot;Durchsuchbare Felder&amp;quot; und &amp;quot;Felder der Detailseite&amp;quot; der im Formular-Generator für das jeweilige Formularfeld eingetragene &amp;quot;Feldname&amp;quot; verwendet.&lt;br /&gt;
&lt;br /&gt;
== Lizenz ==&lt;br /&gt;
EFG wird der Contao Community unter der gleichen Lizenz wie Contao zur Verfügung gestellt (LGPL).&lt;br /&gt;
&lt;br /&gt;
== Autor der Erweiterung EFG ==&lt;br /&gt;
Thomas Kuhn&lt;br /&gt;
&lt;br /&gt;
== Weiterführende Links ==&lt;br /&gt;
Auf dem TYPOlight-Usertreffen 2009 in Frankfurt am Main wurde die Erweiterung EFG mit Praxisbeispielen vorgestellt. Die dazu gehörenden Informationen sind auf http://www.tl-usertreffen.weitzeldesign.com/usertreffen-2009.html zu finden.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Planepix|Planepix]] 15:04, 12. Mär. 2011 (CET)&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/TinyMCE</id>
		<title>TinyMCE</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/TinyMCE"/>
				<updated>2012-10-18T11:25:41Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* TinyMCE konfigurieren */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{AppliesTo&lt;br /&gt;
|Version=2.9.1&lt;br /&gt;
}}&lt;br /&gt;
[[Category:Admin HOWTOS]]&lt;br /&gt;
{{stub}}&lt;br /&gt;
=TinyMCE in Contao=&lt;br /&gt;
==Unterschiede TYPOlight vs Contao==&lt;br /&gt;
Während in TYPOlight&lt;br /&gt;
#automatisch die basic.css für TinyMCE eingebunden wird&lt;br /&gt;
#in der basic.css definierte Klassen im Editor übers Format-DropDownMenü ausgewählt werden können&lt;br /&gt;
#Regeln aus der basic.css auch im Editor-Fenster greifen&lt;br /&gt;
&lt;br /&gt;
wird die '''basic.css in Contao nicht mehr standardmäßig eingebunden'''.&lt;br /&gt;
&lt;br /&gt;
Stattdessen gibt es seit Contao die Datei tl_files/tinymce.css.&lt;br /&gt;
#hier definierte Klassen können im Editor übers Format-DropDownMenü ausgewählt werden&lt;br /&gt;
#Regeln aus der tl_files/tinymce.css greifen auch im Editor-Fenster&lt;br /&gt;
#tl_files/tinymce.css wird default im Frontend eingebunden&lt;br /&gt;
{{Hinweis|Im Layout kann eingestellt werden, dass tl_files/tinymce.css nicht ins Frontend eingebunden werden soll.}}&lt;br /&gt;
&lt;br /&gt;
==TinyMCE-Dateien in Contao==&lt;br /&gt;
#tl_files/tinymce.css&lt;br /&gt;
#system/themes/tinymce.css&lt;br /&gt;
#system/config/tinyMCE.php&lt;br /&gt;
&lt;br /&gt;
'''tl_files/tinymce.css''' - Frontend und Formatierung im Texteditor&lt;br /&gt;
*Diese Datei wird per default sowohl im Frontend, als auch im Texteditor im Backend eingebunden.&lt;br /&gt;
*Die hier definierten Regeln können im Frontend durch Regeln aus den Stylesheets der Themes überschrieben werden.&lt;br /&gt;
*In den Layouteinstellungen kann die Einbindung dieses Stylesheets verhindert werden (die Datei wird im Frontend ignoriert).&lt;br /&gt;
*Die definierten Regeln greifen im Editor-Fenster, angesprochene Elemente werden hier also entsprechend formatiert dargestellt.&lt;br /&gt;
*Die definierten Klassen werden im Texteditor übers Format-DropDownMenü zur Auswahl angeboten.&lt;br /&gt;
&lt;br /&gt;
'''system/themes/tinymce.css''' - Formatierung im Texteditor&lt;br /&gt;
*Diese Datei wird per default über tinyMCE.php in den Texteditor eingebunden.&lt;br /&gt;
*Ihre Regeln gelten also ebenfalls für die Darstellung im Texteditor.&lt;br /&gt;
&lt;br /&gt;
'''system/config/tinyMCE.php''' - Einstellungen des TinyMCE&lt;br /&gt;
*Änderungen sind nicht updatesicher, da diese Datei bei einem Update überschrieben wird.&lt;br /&gt;
&lt;br /&gt;
Für eine '''updatesichere''' Modifizierung der Einstellungen verfährt man wie folgt:&lt;br /&gt;
#tinyMCE.php duplizieren und umbenennen in zum Beispiel '''tinyMCE_custom.php'''&lt;br /&gt;
#Die eigene Datei tinyMCE_custom.php über system/config/dcaconfig.php in Contao einbinden&lt;br /&gt;
#Eintrag in der system/config/dcaconfig.php&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
// Die eigene RTE-Konfiguration verwenden für Text-Elemente&lt;br /&gt;
$GLOBALS['TL_DCA']['tl_content']['fields']['text']['eval']['rte'] = 'tinyMCE_custom';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Näheres dazu weiter unten auf dieser Seite [[TinyMCE#Updatesicheres_Anpassen_der_system.2Fconfig.2FtinyMCE.php|Updatesicheres Anpassen der system/config/tinyMCE.php]]&lt;br /&gt;
&lt;br /&gt;
*Cache leeren und evtl. Abmelden und wieder Anmelden bzw. sogar Browser-Neustart, oder '''Shift + Mausklick auf 'Seite neu laden''''&lt;br /&gt;
[http://www.contao-community.de/showthread.php?10392-TinyMCE-einzelne-Felder-ausblenden Siehe auch MacKP im Forum zu diesem Thema]&lt;br /&gt;
&lt;br /&gt;
=Mit dem TinyMCE arbeiten=&lt;br /&gt;
==Bereitstellung von CSS-Klassen im Editor==&lt;br /&gt;
Um im TinyMCE Elemente mit vorbereiteten Klassen auszuzeichnen, ohne in den Quellcode gehen zu müssen, kann man die Datei tl_files/tinymce.css bearbeiten. &lt;br /&gt;
&lt;br /&gt;
Klassen, die hier definiert werden, können direkt im TinyMCE übers Format-DropDownMenü ausgewählt werden.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Tl_files_tinymce-css.png‎|Die CSS-Datei tl_files/tinymce.css|center|frame|Anpassen der tinymce.css Datei]]&lt;br /&gt;
&lt;br /&gt;
{{Hinweis|ID-Selektoren wie z.B. '''#meineID, #raute ...''' werden '''nicht''' im Format-DropDownMenü angezeigt. Nur Klassen-Selektoren wie z.B. '''.meineKlasse, .warning ...'''.}}&lt;br /&gt;
&lt;br /&gt;
[[Datei:Tinymce-klassenauswahl.png||center|frame|Ansicht des TinyMce im Backend]]&lt;br /&gt;
&lt;br /&gt;
Elemente, welche man mit diesen Klassen auszeichnet, werden nun im Editor und im Frontend entsprechend formatiert dargestellt.&lt;br /&gt;
&lt;br /&gt;
Jede dieser Regeln kann mit einer Regel aus einem anderen Stylesheet der jeweiligen Seite wieder überschrieben werden ('''C'''as'''C'''ading-'''S'''tylesheet = CSS).&lt;br /&gt;
[[Datei:Tinyklassen-frontend.png|center|frame|Frontendansicht]]&lt;br /&gt;
&lt;br /&gt;
Weiterhin kann die tl_files/tinymce.css in jedem Seitenlayout auch ignoriert (nicht eingebunden) werden.&lt;br /&gt;
[[Datei:Tinymce-css-ignorieren.png|center|frame|Einstellungsmöglichkeit im Seitenlayout]]&lt;br /&gt;
&lt;br /&gt;
{{Achtung|Wenn man in einem Layout eingestellt hat, dass die tl_files/tinymce.css ignoriert wird, dann stehen die definierten Klassen zwar weiterhin im Editor zur Verfügung (Format-DropDownMenü) und werden auch entsprechend formatiert dargestellt, aber die tl_files/tinymce.css wird dann nicht mehr im Frontend eingebunden.}}&lt;br /&gt;
&lt;br /&gt;
==Spezieller Selektor nur für den Editor-Inhalt==&lt;br /&gt;
Der Editor-Inhalt ist eine eigene HTML-Seite und wird in einem IFRAME dargestellt. Das BODY-Element dieser Seite besitzt die ID ''''tinymce'''' sowie die Klasse ''''mceContentBody''''. Mit den Selektoren '''#tinymce''' sowie '''.mceContentBody''' kann somit der Inhalt des Editors individuell gestaltet werden. Das wird z.B. dafür benötigt, um den Hintergrund zu formatieren, wenn man die Ansicht im Editor der Ansicht im Frontend angleichen möchte. Die Inhalte im Frontend befinden sich ja innerhalb des HTML-Frameworks, welches im Editor-Inhalt so nicht vorhanden ist.&lt;br /&gt;
&lt;br /&gt;
Quelle: [http://wiki.moxiecode.com/index.php/TinyMCE:Configuration/content_css#TinyMCE_specific_rules TinyMCE:Configuration/content css#TinyMCE specific rules - Moxiecode Documentation Wiki]&lt;br /&gt;
&lt;br /&gt;
=TinyMCE anpassen=&lt;br /&gt;
&lt;br /&gt;
==Updatesicheres Anpassen der system/config/tinyMCE.php==&lt;br /&gt;
&lt;br /&gt;
{{Hinweis|Direkte Änderungen in der tinyMCE.php sind nicht updatesicher.}}&lt;br /&gt;
&lt;br /&gt;
Um updatesicher Anpassungen vornehmen zu können, kann man folgenden Weg gehen:&lt;br /&gt;
#system/config/tinyMCE.php wird dupliziert und in tinyCustom.php umbenannt&lt;br /&gt;
#system/config/tinyCustom.php kann nun editiert werden.&lt;br /&gt;
&lt;br /&gt;
Damit die tinyCustom.php (anstatt der tinyMCE.php) dann auch benutzt wird, kann '''updatesicher''' folgender Eintrag in der '''system/config/dcaconfig.php''' vorgenommen werden:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
// Die eigene RTE-Konfiguration verwenden für Text-Elemente&lt;br /&gt;
$GLOBALS['TL_DCA']['tl_content']['fields']['text']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nun wird für den Texteditor im Backend nicht mehr die Original-Einstellungsdatei eingebunden, sondern die neu angelegte Datei tinyCustom.php&lt;br /&gt;
&lt;br /&gt;
Obiger Eintrag gilt nur für den Editor im Inhaltselement vom Typ Text. Sollen die Veränderungen auch in anderen Modulen wirksam werden, müssen folgende Anweisungen hinzugefügt werdeen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
// Die eigene RTE-Konfiguration verwenden für&lt;br /&gt;
  //Artikel-Teaser&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_article']['fields']['teaser']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // Events-Details&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_calendar_events']['fields']['details']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // Kommentare&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_comments']['fields']['comment']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // Text-Elemente&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_content']['fields']['text']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // FAQs&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_faq']['fields']['answer']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // Formulare&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_form_field']['fields']['text']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // News&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_news']['fields']['text']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Meistens wird ein abgespeckter, modifizierter TinyMCE-Editor nur für Redakteure (Nicht-Admins) angeboten. Dazu muss man obigen Code noch ein wenig erweitern:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
// Nur für Non-Admins.&lt;br /&gt;
$this-&amp;gt;import('BackendUser', 'User');&lt;br /&gt;
&lt;br /&gt;
if(!$this-&amp;gt;User-&amp;gt;isAdmin)&lt;br /&gt;
{&lt;br /&gt;
// Die eigene RTE-Konfiguration verwenden für&lt;br /&gt;
  //Artikel-Teaser&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_article']['fields']['teaser']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // Events-Details&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_calendar_events']['fields']['details']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // Kommentare&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_comments']['fields']['comment']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // Text-Elemente&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_content']['fields']['text']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // FAQs&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_faq']['fields']['answer']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // Formulare&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_form_field']['fields']['text']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // News&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_news']['fields']['text']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TinyMCE - Contao - basic.css==&lt;br /&gt;
{{Hinweis|In früheren Versionen (TYPOlight) wurde automatisch die basic.css (sofern diese vorhanden war) eingebunden. Dadurch gab es die in der basic.css definierten Klassen im Editor zur Auswahl und die Regeln wurde auch im Editor angewendet.}}&lt;br /&gt;
&lt;br /&gt;
Nina hat hier auch einen schönen Beitrag über TYPOlight geschrieben - inklusive Beispiel basic.css als Reset-Stylesheet.&lt;br /&gt;
[http://www.contao.org/blog-leser/items/wie-man-die-basiccss-fuer-den-rich-text-editor-einsetzt.html Wie man die basic.css für den Rich Text Editor einsetzt]&lt;br /&gt;
&lt;br /&gt;
Wenn weiterhin die basic.css für den TinyMCE benutzt werden soll, verfährt man wie folgt.&lt;br /&gt;
&lt;br /&gt;
Einbinden der basic.css in den Texteditor über die Konfigurations-Datei tinyCustom.php:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
content_css : &amp;quot;&amp;lt;?php echo TL_PATH; ?&amp;gt;/system/themes/tinymce.css,&amp;lt;?php echo TL_PATH;?&amp;gt;/basic.css,&amp;lt;?php echo TL_PATH .'/'. $this-&amp;gt;uploadPath; ?&amp;gt;/tinymce.css&amp;quot;,&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nun greifen die Regeln aus der basic.css auch im Texteditor (und im Frontend, sofern die basic.css ins Frontend eingebunden ist).&lt;br /&gt;
&lt;br /&gt;
{{Hinweis|Hierbei ist zu bedenken, dass es bei Contao nun nicht mehr eine basic.css gibt, die auf jeder Seite eingebunden werden kann, da nur in einem Theme eine basic.css erstellt werden kann.}}&lt;br /&gt;
&lt;br /&gt;
Oder man kopiert die Regeln aus der basic.css in das Stylesheet tl_files/tinymce.css.&lt;br /&gt;
Sofern dieses Stylesheet vom Layout nicht ignoriert wird, wird es ja sowohl vom Frontend als auch vom TinyMCE benutzt.&lt;br /&gt;
&lt;br /&gt;
Allerdings kann dieses Stylesheet nicht über den Stylesheetgenerator von Contao bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
Aber gibt es da nicht auch eine Erweiterung?&lt;br /&gt;
&lt;br /&gt;
==TinyMCE PopUp's anpassen (Tabs &amp;quot;löschen&amp;quot;)==&lt;br /&gt;
Wenn man bestimmte Felder (oder sonstiges) bei den PopUp's (Beispiel: Tabelleneigenschaften) ausblenden möchte, muss man in der TinyMCE-Konfigurationsdatei folgenden Eintrag einbauen:&lt;br /&gt;
{{Hinweis|Der Pfad ist frei wählbar. Wichtig ist, dass man ihn, respektive die Datei, &amp;quot;von außen&amp;quot; erreichen kann. Daher eignet sich &amp;quot;tl_files&amp;quot; am ehesten. Der Dateiname ist auch frei wählbar.}}&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
tinyMCE.init({&lt;br /&gt;
        ...&lt;br /&gt;
        popup_css_add : &amp;quot;&amp;lt;?php echo TL_PATH; ?&amp;gt;/tl_files/tinyMCE/tinyMCE_popup.css&amp;quot;,&lt;br /&gt;
        ...&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nun kann man in der betreffenden CSS-Datei die Einstellungen vornehmen. Ausblenden via &amp;quot;display:none;&amp;quot;. Auch Hintergrundfarben, Schriftarten (etc) kann man bestimmen. Einfach alles, was CSS unterstützt. Die CSS-Klassen/ID's kann man ganz einfach via Firebug oder sonstigen Entwickler-Plugins in den Browsern auslesen.&lt;br /&gt;
&lt;br /&gt;
Um das Tab &amp;quot;Erweitert&amp;quot; bei den Tabelleneigenschaften auszublenden, ist z.B. folgender Eintrag zuständig:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;css&amp;quot;&amp;gt;&lt;br /&gt;
#advanced_tab { display:none; }&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TinyMCE konfigurieren==&lt;br /&gt;
Die tinyMCE.php (bzw. wie im Beispiel die tinyCustom.php) bietet ebenfalls interessante Möglichkeiten um das Erscheinungsbild des Editors anzupassen.&lt;br /&gt;
Hier können z.B. Buttons deaktiviert werden, um nicht benötigte Funktionen zu entfernen.&amp;lt;br /&amp;gt;&lt;br /&gt;
Voraussetzung ist eine zuvor erstellte tinyCustom.php, wie im Abschnitt [[#Updatesicheres_Anpassen_der_system/config/tinyMCE.php|Updatesicheres Anpassen der system/config/tinyMCE.php]] beschrieben.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Contao Standard TinyMCE''' &lt;br /&gt;
&lt;br /&gt;
[[Datei:Tinymce-standard.png|center|frame|Standardausgabe von tinyMCE.php]]&lt;br /&gt;
&lt;br /&gt;
'''Quellcodeauszug aus der tinyMCE.php'''&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
theme_advanced_buttons1 : &amp;quot;newdocument,save,separator,spellchecker,separator,anchor,separator,typolinks,unlink,separator,image,typobox,separator,sub,sup,separator,abbr,acronym,separator,styleprops,attribs,separator,search,replace,separator,undo,redo,separator,removeformat,cleanup,separator,code&amp;quot;,&lt;br /&gt;
theme_advanced_buttons2 : &amp;quot;formatselect,fontsizeselect,styleselect,separator,bold,italic,underline,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,bullist,numlist,indent,outdent,separator,blockquote,separator,forecolor,backcolor&amp;quot;,&lt;br /&gt;
theme_advanced_buttons3 : &amp;quot;tablecontrols,separator,template,separator,charmap,emotions,separator,help&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Über /system/config/tinyCustom.php angepasster TinyMCE'''&lt;br /&gt;
&lt;br /&gt;
[[Datei:Tinymce-angepasst.png|center|frame|Angepasste tinyCustom.php]]&lt;br /&gt;
&lt;br /&gt;
'''Quellcodeauszug aus der tinyCustom.php'''&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
theme_advanced_buttons1 : &amp;quot;code,removeformat,separator,typolinks,unlink,separator,image,typobox,separator,sup,separator,formatselect,styleselect,separator,bold,italic,underline,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,bullist,separator,forecolor&amp;quot;,&lt;br /&gt;
theme_advanced_buttons2 : &amp;quot;&amp;quot;,&lt;br /&gt;
theme_advanced_buttons3 : &amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alle Konfigurationsmöglichkeiten findet man auf der Entwickler-Seite:&lt;br /&gt;
[http://wiki.moxiecode.com/index.php/TinyMCE:Configuration TinyMCE:Configuration - Moxiecode Documentation Wiki]&lt;br /&gt;
&lt;br /&gt;
Über das [http://www.delusionworld.com/files/tinymce_rte-config-utility/ TinyMCE RTE Button configuration utility] kann man sich sehr schnell und einfach eine neue Menükonfiguration zusammenstellen.&lt;br /&gt;
&lt;br /&gt;
==TinyMCE Anführungszeichen automatisch ersetzen==&lt;br /&gt;
Wenn man Texte vorwiegend in Word verfasst, oder diese zur Verfügung gestellt bekommt, kopiert man meist den Text in Inhaltselemente. Dabei werden die Word-eigenen Formatierung und Zeichen übernommen. Das sind die folgenden Zeichen: „ / “ / ” / ‚ / ‘ / ’&lt;br /&gt;
&lt;br /&gt;
Beim Erstellen eines Textes im TinyMCE werden aber nur die folgenden Zeichen verwendet: ' / &amp;quot;&lt;br /&gt;
&lt;br /&gt;
Will man Word-eigenen Anführungszeichen nun nicht haben ändert man in der Konfigurationsdatei die Zeile mit&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
entities : &amp;quot;160,nbsp,60,lt,62,gt,173,shy&amp;quot;,&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
in&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
entities : &amp;quot;160,nbsp,60,lt,62,gt,173,shy,8216,quot,8217,quot,8218,quot,8220,quot,8221,quot,8222,quot&amp;quot;,&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Nun werden die speziellen Anführungszeichen automatisch beim Einfügen eines kopierten Textes durch &amp;quot; ersetzt.&lt;br /&gt;
{{Hinweis|Nach 'shy' geht es los mit den zusätzlichen Zeichen. Die ersten 3 Ersetzungen sind für einfache Anführungszeichen, die letzten 3 für die doppelten (ggf. entsprechendes entfernen, wenn man was nicht will).}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Quellenangaben==&lt;br /&gt;
[http://blog.netprofit.de/contao-anpassen-3-wenig-bekannte-tipps.html blog.netprofit.de]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://dev.contao.org/projects/typolight/wiki/TutorialsCssImEditorVerwenden Vorhandene Stylesheets in TinyMCE nutzbar machen]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.contao.org/blog-leser/items/wie-man-die-basiccss-fuer-den-rich-text-editor-einsetzt.html Wie man die basic.css für den Richt-Text-Editor einsetzt]&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/TinyMCE</id>
		<title>TinyMCE</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/TinyMCE"/>
				<updated>2012-10-18T11:19:10Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Quellenangaben */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{AppliesTo&lt;br /&gt;
|Version=2.9.1&lt;br /&gt;
}}&lt;br /&gt;
[[Category:Admin HOWTOS]]&lt;br /&gt;
{{stub}}&lt;br /&gt;
=TinyMCE in Contao=&lt;br /&gt;
==Unterschiede TYPOlight vs Contao==&lt;br /&gt;
Während in TYPOlight&lt;br /&gt;
#automatisch die basic.css für TinyMCE eingebunden wird&lt;br /&gt;
#in der basic.css definierte Klassen im Editor übers Format-DropDownMenü ausgewählt werden können&lt;br /&gt;
#Regeln aus der basic.css auch im Editor-Fenster greifen&lt;br /&gt;
&lt;br /&gt;
wird die '''basic.css in Contao nicht mehr standardmäßig eingebunden'''.&lt;br /&gt;
&lt;br /&gt;
Stattdessen gibt es seit Contao die Datei tl_files/tinymce.css.&lt;br /&gt;
#hier definierte Klassen können im Editor übers Format-DropDownMenü ausgewählt werden&lt;br /&gt;
#Regeln aus der tl_files/tinymce.css greifen auch im Editor-Fenster&lt;br /&gt;
#tl_files/tinymce.css wird default im Frontend eingebunden&lt;br /&gt;
{{Hinweis|Im Layout kann eingestellt werden, dass tl_files/tinymce.css nicht ins Frontend eingebunden werden soll.}}&lt;br /&gt;
&lt;br /&gt;
==TinyMCE-Dateien in Contao==&lt;br /&gt;
#tl_files/tinymce.css&lt;br /&gt;
#system/themes/tinymce.css&lt;br /&gt;
#system/config/tinyMCE.php&lt;br /&gt;
&lt;br /&gt;
'''tl_files/tinymce.css''' - Frontend und Formatierung im Texteditor&lt;br /&gt;
*Diese Datei wird per default sowohl im Frontend, als auch im Texteditor im Backend eingebunden.&lt;br /&gt;
*Die hier definierten Regeln können im Frontend durch Regeln aus den Stylesheets der Themes überschrieben werden.&lt;br /&gt;
*In den Layouteinstellungen kann die Einbindung dieses Stylesheets verhindert werden (die Datei wird im Frontend ignoriert).&lt;br /&gt;
*Die definierten Regeln greifen im Editor-Fenster, angesprochene Elemente werden hier also entsprechend formatiert dargestellt.&lt;br /&gt;
*Die definierten Klassen werden im Texteditor übers Format-DropDownMenü zur Auswahl angeboten.&lt;br /&gt;
&lt;br /&gt;
'''system/themes/tinymce.css''' - Formatierung im Texteditor&lt;br /&gt;
*Diese Datei wird per default über tinyMCE.php in den Texteditor eingebunden.&lt;br /&gt;
*Ihre Regeln gelten also ebenfalls für die Darstellung im Texteditor.&lt;br /&gt;
&lt;br /&gt;
'''system/config/tinyMCE.php''' - Einstellungen des TinyMCE&lt;br /&gt;
*Änderungen sind nicht updatesicher, da diese Datei bei einem Update überschrieben wird.&lt;br /&gt;
&lt;br /&gt;
Für eine '''updatesichere''' Modifizierung der Einstellungen verfährt man wie folgt:&lt;br /&gt;
#tinyMCE.php duplizieren und umbenennen in zum Beispiel '''tinyMCE_custom.php'''&lt;br /&gt;
#Die eigene Datei tinyMCE_custom.php über system/config/dcaconfig.php in Contao einbinden&lt;br /&gt;
#Eintrag in der system/config/dcaconfig.php&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
// Die eigene RTE-Konfiguration verwenden für Text-Elemente&lt;br /&gt;
$GLOBALS['TL_DCA']['tl_content']['fields']['text']['eval']['rte'] = 'tinyMCE_custom';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Näheres dazu weiter unten auf dieser Seite [[TinyMCE#Updatesicheres_Anpassen_der_system.2Fconfig.2FtinyMCE.php|Updatesicheres Anpassen der system/config/tinyMCE.php]]&lt;br /&gt;
&lt;br /&gt;
*Cache leeren und evtl. Abmelden und wieder Anmelden bzw. sogar Browser-Neustart, oder '''Shift + Mausklick auf 'Seite neu laden''''&lt;br /&gt;
[http://www.contao-community.de/showthread.php?10392-TinyMCE-einzelne-Felder-ausblenden Siehe auch MacKP im Forum zu diesem Thema]&lt;br /&gt;
&lt;br /&gt;
=Mit dem TinyMCE arbeiten=&lt;br /&gt;
==Bereitstellung von CSS-Klassen im Editor==&lt;br /&gt;
Um im TinyMCE Elemente mit vorbereiteten Klassen auszuzeichnen, ohne in den Quellcode gehen zu müssen, kann man die Datei tl_files/tinymce.css bearbeiten. &lt;br /&gt;
&lt;br /&gt;
Klassen, die hier definiert werden, können direkt im TinyMCE übers Format-DropDownMenü ausgewählt werden.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Tl_files_tinymce-css.png‎|Die CSS-Datei tl_files/tinymce.css|center|frame|Anpassen der tinymce.css Datei]]&lt;br /&gt;
&lt;br /&gt;
{{Hinweis|ID-Selektoren wie z.B. '''#meineID, #raute ...''' werden '''nicht''' im Format-DropDownMenü angezeigt. Nur Klassen-Selektoren wie z.B. '''.meineKlasse, .warning ...'''.}}&lt;br /&gt;
&lt;br /&gt;
[[Datei:Tinymce-klassenauswahl.png||center|frame|Ansicht des TinyMce im Backend]]&lt;br /&gt;
&lt;br /&gt;
Elemente, welche man mit diesen Klassen auszeichnet, werden nun im Editor und im Frontend entsprechend formatiert dargestellt.&lt;br /&gt;
&lt;br /&gt;
Jede dieser Regeln kann mit einer Regel aus einem anderen Stylesheet der jeweiligen Seite wieder überschrieben werden ('''C'''as'''C'''ading-'''S'''tylesheet = CSS).&lt;br /&gt;
[[Datei:Tinyklassen-frontend.png|center|frame|Frontendansicht]]&lt;br /&gt;
&lt;br /&gt;
Weiterhin kann die tl_files/tinymce.css in jedem Seitenlayout auch ignoriert (nicht eingebunden) werden.&lt;br /&gt;
[[Datei:Tinymce-css-ignorieren.png|center|frame|Einstellungsmöglichkeit im Seitenlayout]]&lt;br /&gt;
&lt;br /&gt;
{{Achtung|Wenn man in einem Layout eingestellt hat, dass die tl_files/tinymce.css ignoriert wird, dann stehen die definierten Klassen zwar weiterhin im Editor zur Verfügung (Format-DropDownMenü) und werden auch entsprechend formatiert dargestellt, aber die tl_files/tinymce.css wird dann nicht mehr im Frontend eingebunden.}}&lt;br /&gt;
&lt;br /&gt;
==Spezieller Selektor nur für den Editor-Inhalt==&lt;br /&gt;
Der Editor-Inhalt ist eine eigene HTML-Seite und wird in einem IFRAME dargestellt. Das BODY-Element dieser Seite besitzt die ID ''''tinymce'''' sowie die Klasse ''''mceContentBody''''. Mit den Selektoren '''#tinymce''' sowie '''.mceContentBody''' kann somit der Inhalt des Editors individuell gestaltet werden. Das wird z.B. dafür benötigt, um den Hintergrund zu formatieren, wenn man die Ansicht im Editor der Ansicht im Frontend angleichen möchte. Die Inhalte im Frontend befinden sich ja innerhalb des HTML-Frameworks, welches im Editor-Inhalt so nicht vorhanden ist.&lt;br /&gt;
&lt;br /&gt;
Quelle: [http://wiki.moxiecode.com/index.php/TinyMCE:Configuration/content_css#TinyMCE_specific_rules TinyMCE:Configuration/content css#TinyMCE specific rules - Moxiecode Documentation Wiki]&lt;br /&gt;
&lt;br /&gt;
=TinyMCE anpassen=&lt;br /&gt;
&lt;br /&gt;
==Updatesicheres Anpassen der system/config/tinyMCE.php==&lt;br /&gt;
&lt;br /&gt;
{{Hinweis|Direkte Änderungen in der tinyMCE.php sind nicht updatesicher.}}&lt;br /&gt;
&lt;br /&gt;
Um updatesicher Anpassungen vornehmen zu können, kann man folgenden Weg gehen:&lt;br /&gt;
#system/config/tinyMCE.php wird dupliziert und in tinyCustom.php umbenannt&lt;br /&gt;
#system/config/tinyCustom.php kann nun editiert werden.&lt;br /&gt;
&lt;br /&gt;
Damit die tinyCustom.php (anstatt der tinyMCE.php) dann auch benutzt wird, kann '''updatesicher''' folgender Eintrag in der '''system/config/dcaconfig.php''' vorgenommen werden:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
// Die eigene RTE-Konfiguration verwenden für Text-Elemente&lt;br /&gt;
$GLOBALS['TL_DCA']['tl_content']['fields']['text']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nun wird für den Texteditor im Backend nicht mehr die Original-Einstellungsdatei eingebunden, sondern die neu angelegte Datei tinyCustom.php&lt;br /&gt;
&lt;br /&gt;
Obiger Eintrag gilt nur für den Editor im Inhaltselement vom Typ Text. Sollen die Veränderungen auch in anderen Modulen wirksam werden, müssen folgende Anweisungen hinzugefügt werdeen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
// Die eigene RTE-Konfiguration verwenden für&lt;br /&gt;
  //Artikel-Teaser&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_article']['fields']['teaser']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // Events-Details&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_calendar_events']['fields']['details']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // Kommentare&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_comments']['fields']['comment']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // Text-Elemente&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_content']['fields']['text']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // FAQs&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_faq']['fields']['answer']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // Formulare&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_form_field']['fields']['text']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // News&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_news']['fields']['text']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Meistens wird ein abgespeckter, modifizierter TinyMCE-Editor nur für Redakteure (Nicht-Admins) angeboten. Dazu muss man obigen Code noch ein wenig erweitern:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
// Nur für Non-Admins.&lt;br /&gt;
$this-&amp;gt;import('BackendUser', 'User');&lt;br /&gt;
&lt;br /&gt;
if(!$this-&amp;gt;User-&amp;gt;isAdmin)&lt;br /&gt;
{&lt;br /&gt;
// Die eigene RTE-Konfiguration verwenden für&lt;br /&gt;
  //Artikel-Teaser&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_article']['fields']['teaser']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // Events-Details&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_calendar_events']['fields']['details']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // Kommentare&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_comments']['fields']['comment']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // Text-Elemente&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_content']['fields']['text']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // FAQs&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_faq']['fields']['answer']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // Formulare&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_form_field']['fields']['text']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
  // News&lt;br /&gt;
  $GLOBALS['TL_DCA']['tl_news']['fields']['text']['eval']['rte'] = 'tinyCustom';&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TinyMCE - Contao - basic.css==&lt;br /&gt;
{{Hinweis|In früheren Versionen (TYPOlight) wurde automatisch die basic.css (sofern diese vorhanden war) eingebunden. Dadurch gab es die in der basic.css definierten Klassen im Editor zur Auswahl und die Regeln wurde auch im Editor angewendet.}}&lt;br /&gt;
&lt;br /&gt;
Nina hat hier auch einen schönen Beitrag über TYPOlight geschrieben - inklusive Beispiel basic.css als Reset-Stylesheet.&lt;br /&gt;
[http://www.contao.org/blog-leser/items/wie-man-die-basiccss-fuer-den-rich-text-editor-einsetzt.html Wie man die basic.css für den Rich Text Editor einsetzt]&lt;br /&gt;
&lt;br /&gt;
Wenn weiterhin die basic.css für den TinyMCE benutzt werden soll, verfährt man wie folgt.&lt;br /&gt;
&lt;br /&gt;
Einbinden der basic.css in den Texteditor über die Konfigurations-Datei tinyCustom.php:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
content_css : &amp;quot;&amp;lt;?php echo TL_PATH; ?&amp;gt;/system/themes/tinymce.css,&amp;lt;?php echo TL_PATH;?&amp;gt;/basic.css,&amp;lt;?php echo TL_PATH .'/'. $this-&amp;gt;uploadPath; ?&amp;gt;/tinymce.css&amp;quot;,&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nun greifen die Regeln aus der basic.css auch im Texteditor (und im Frontend, sofern die basic.css ins Frontend eingebunden ist).&lt;br /&gt;
&lt;br /&gt;
{{Hinweis|Hierbei ist zu bedenken, dass es bei Contao nun nicht mehr eine basic.css gibt, die auf jeder Seite eingebunden werden kann, da nur in einem Theme eine basic.css erstellt werden kann.}}&lt;br /&gt;
&lt;br /&gt;
Oder man kopiert die Regeln aus der basic.css in das Stylesheet tl_files/tinymce.css.&lt;br /&gt;
Sofern dieses Stylesheet vom Layout nicht ignoriert wird, wird es ja sowohl vom Frontend als auch vom TinyMCE benutzt.&lt;br /&gt;
&lt;br /&gt;
Allerdings kann dieses Stylesheet nicht über den Stylesheetgenerator von Contao bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
Aber gibt es da nicht auch eine Erweiterung?&lt;br /&gt;
&lt;br /&gt;
==TinyMCE PopUp's anpassen (Tabs &amp;quot;löschen&amp;quot;)==&lt;br /&gt;
Wenn man bestimmte Felder (oder sonstiges) bei den PopUp's (Beispiel: Tabelleneigenschaften) ausblenden möchte, muss man in der TinyMCE-Konfigurationsdatei folgenden Eintrag einbauen:&lt;br /&gt;
{{Hinweis|Der Pfad ist frei wählbar. Wichtig ist, dass man ihn, respektive die Datei, &amp;quot;von außen&amp;quot; erreichen kann. Daher eignet sich &amp;quot;tl_files&amp;quot; am ehesten. Der Dateiname ist auch frei wählbar.}}&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
tinyMCE.init({&lt;br /&gt;
        ...&lt;br /&gt;
        popup_css_add : &amp;quot;&amp;lt;?php echo TL_PATH; ?&amp;gt;/tl_files/tinyMCE/tinyMCE_popup.css&amp;quot;,&lt;br /&gt;
        ...&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nun kann man in der betreffenden CSS-Datei die Einstellungen vornehmen. Ausblenden via &amp;quot;display:none;&amp;quot;. Auch Hintergrundfarben, Schriftarten (etc) kann man bestimmen. Einfach alles, was CSS unterstützt. Die CSS-Klassen/ID's kann man ganz einfach via Firebug oder sonstigen Entwickler-Plugins in den Browsern auslesen.&lt;br /&gt;
&lt;br /&gt;
Um das Tab &amp;quot;Erweitert&amp;quot; bei den Tabelleneigenschaften auszublenden, ist z.B. folgender Eintrag zuständig:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;css&amp;quot;&amp;gt;&lt;br /&gt;
#advanced_tab { display:none; }&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TinyMCE konfigurieren==&lt;br /&gt;
Die tinyMCE.php (bzw. wie im Beispiel die tinyCustom.php) bietet ebenfalls interessante Möglichkeiten um das Erscheinungsbild des Editors anzupassen.&lt;br /&gt;
Hier können z.B. Buttons deaktiviert werden, um nicht benötigte Funktionen zu entfernen.&amp;lt;br /&amp;gt;&lt;br /&gt;
Voraussetzung ist eine zuvor erstellte tinyCustom.php, wie im Abschnitt [[#Updatesicheres_Anpassen_der_system/config/tinyMCE.php|Updatesicheres Anpassen der system/config/tinyMCE.php]] beschrieben.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Contao Standard TinyMCE''' &lt;br /&gt;
&lt;br /&gt;
[[Datei:Tinymce-standard.png|center|frame|Standardausgabe von tinyMCE.php]]&lt;br /&gt;
&lt;br /&gt;
'''Quellcodeauszug aus der tinyMCE.php'''&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
theme_advanced_buttons1 : &amp;quot;newdocument,save,separator,spellchecker,separator,anchor,separator,typolinks,unlink,separator,image,typobox,separator,sub,sup,separator,abbr,acronym,separator,styleprops,attribs,separator,search,replace,separator,undo,redo,separator,removeformat,cleanup,separator,code&amp;quot;,&lt;br /&gt;
theme_advanced_buttons2 : &amp;quot;formatselect,fontsizeselect,styleselect,separator,bold,italic,underline,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,bullist,numlist,indent,outdent,separator,blockquote,separator,forecolor,backcolor&amp;quot;,&lt;br /&gt;
theme_advanced_buttons3 : &amp;quot;tablecontrols,separator,template,separator,charmap,emotions,separator,help&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Über /system/config/tinyCustom.php angepasster TinyMCE'''&lt;br /&gt;
&lt;br /&gt;
[[Datei:Tinymce-angepasst.png|center|frame|Angepasste tinyCustom.php]]&lt;br /&gt;
&lt;br /&gt;
'''Quellcodeauszug aus der tinyCustom.php'''&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
theme_advanced_buttons1 : &amp;quot;code,removeformat,separator,typolinks,unlink,separator,image,typobox,separator,sup,separator,formatselect,styleselect,separator,bold,italic,underline,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,bullist,separator,forecolor&amp;quot;,&lt;br /&gt;
theme_advanced_buttons2 : &amp;quot;&amp;quot;,&lt;br /&gt;
theme_advanced_buttons3 : &amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alle Konfigurationsmöglichkeiten findet man auf der Entwickler-Seite:&lt;br /&gt;
[http://wiki.moxiecode.com/index.php/TinyMCE:Configuration TinyMCE:Configuration - Moxiecode Documentation Wiki]&lt;br /&gt;
&lt;br /&gt;
==TinyMCE Anführungszeichen automatisch ersetzen==&lt;br /&gt;
Wenn man Texte vorwiegend in Word verfasst, oder diese zur Verfügung gestellt bekommt, kopiert man meist den Text in Inhaltselemente. Dabei werden die Word-eigenen Formatierung und Zeichen übernommen. Das sind die folgenden Zeichen: „ / “ / ” / ‚ / ‘ / ’&lt;br /&gt;
&lt;br /&gt;
Beim Erstellen eines Textes im TinyMCE werden aber nur die folgenden Zeichen verwendet: ' / &amp;quot;&lt;br /&gt;
&lt;br /&gt;
Will man Word-eigenen Anführungszeichen nun nicht haben ändert man in der Konfigurationsdatei die Zeile mit&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
entities : &amp;quot;160,nbsp,60,lt,62,gt,173,shy&amp;quot;,&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
in&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
entities : &amp;quot;160,nbsp,60,lt,62,gt,173,shy,8216,quot,8217,quot,8218,quot,8220,quot,8221,quot,8222,quot&amp;quot;,&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Nun werden die speziellen Anführungszeichen automatisch beim Einfügen eines kopierten Textes durch &amp;quot; ersetzt.&lt;br /&gt;
{{Hinweis|Nach 'shy' geht es los mit den zusätzlichen Zeichen. Die ersten 3 Ersetzungen sind für einfache Anführungszeichen, die letzten 3 für die doppelten (ggf. entsprechendes entfernen, wenn man was nicht will).}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Quellenangaben==&lt;br /&gt;
[http://blog.netprofit.de/contao-anpassen-3-wenig-bekannte-tipps.html blog.netprofit.de]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://dev.contao.org/projects/typolight/wiki/TutorialsCssImEditorVerwenden Vorhandene Stylesheets in TinyMCE nutzbar machen]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.contao.org/blog-leser/items/wie-man-die-basiccss-fuer-den-rich-text-editor-einsetzt.html Wie man die basic.css für den Richt-Text-Editor einsetzt]&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/InKuerzeVerfuegbar</id>
		<title>InKuerzeVerfuegbar</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/InKuerzeVerfuegbar"/>
				<updated>2012-09-01T19:24:29Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Cliff Parnitzky */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
Um zu vermeiden, dass parallele Entwicklung unnötige Ressourcen benötigt, können Entwickler hier Erweiterung eintragen, die &amp;quot;in Kürze verfügbar&amp;quot; sein sollen.&lt;br /&gt;
&lt;br /&gt;
== ETES GmbH ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Jan Theofel, Marc Schneider, Sebastian Leitz&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:contao@etes.de E-Mail] [http://www.etes.de/ Webseite]&lt;br /&gt;
&lt;br /&gt;
* (Neues) Trackback-Modul für News (andere Features als das bestehende)&lt;br /&gt;
* (Neues) Gravatar-Modul (Gravatare auch für Kommentare etc.)&lt;br /&gt;
* Wordpress-Import (basiert auf den oberen beiden)&lt;br /&gt;
* htaccess-Erweiterung zur Konfiguration der zentralen .htaccess mit der Möglichkeit, dass Module dort per Hook eigene Definitionen einfügen können&lt;br /&gt;
* Erweiterungen für unsere Jobbörse (Onlinebewerbung/Bewertung von Bewerbern/Anbindung an Paymentsysteme)&lt;br /&gt;
&lt;br /&gt;
== certo web &amp;amp; design GmbH ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Yanick Witschi (aka Toflar)&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:yanick.witschi@certo-net.ch E-Mail] [http://www.certo-net.ch Webseite]&lt;br /&gt;
&lt;br /&gt;
* Votebox, Prinzip der Votebox von Dropbox&lt;br /&gt;
&lt;br /&gt;
== InfinitySoft - Innovative Softwarelösungen ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Tristan Lins (aka tril)&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:tristan.lins@infinitysoft.de E-Mail] [http://www.infinitysoft.de Webseite]&lt;br /&gt;
&lt;br /&gt;
* .htaccess Editor [https://github.com/InfinitySoft/contao-htaccess github] [http://www.contao.org/erweiterungsliste/view/htaccess.20000008.de.html ER]&lt;br /&gt;
Editor zum bequemen Einrichten der .htaccess Datei aus dem Backend heraus.&lt;br /&gt;
* Open ER2 Client [https://github.com/InfinitySoft/contao-open-er2-client github]&lt;br /&gt;
Client Library um Extensions innerhalb einer Contao Installation zu verwalten. Dies ist '''nur''' eine Library ohne grafische Oberfläche, die dazu genutzt werden kann einen neuen ER Client für das aktuelle Extension Repository zu entwickeln.&lt;br /&gt;
&lt;br /&gt;
== BugBuster ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Glen Langer&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [http://www.contao-community.de/ Forum] | [http://www.contao.Glen-Langer.de/ Webseite]&lt;br /&gt;
&lt;br /&gt;
* Idee: moopeel - diese nette Ecke auf Mootoolsbasis (no Flash!)&lt;br /&gt;
* Idee: Insert-Tag Checker - Prüft ob die Kette nicht irgendwo unterbrochen ist, weil wieder mal jemand das &amp;quot;return false;&amp;quot; vergessen hat&lt;br /&gt;
&lt;br /&gt;
== MEN AT WORK ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Andreas Isaak, David Maack&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:cms@men-at-work.de E-Mail]&lt;br /&gt;
&lt;br /&gt;
* recursiveDownload: Rekursive Downloads basierend auf dem Benutzerverzeichnis&lt;br /&gt;
* recursiveGallery: Rekursive Galerie basierend auf dem Benutzerverzeichnis&lt;br /&gt;
* [http://www.contao-forge.org/projects/language4translation/issues language4translation]: Exportierte Sprachtexte im Frontend übersetzen und später wieder via language2file importieren&lt;br /&gt;
* dashboard: Erweiterung der Dashboard Extension von Andreas Schempp&lt;br /&gt;
* [http://www.contao-forge.org/projects/backendfavourites backendFavourites] Favouriten/Sprungmarker für das Backend definieren&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/menatwork Übersicht all unserer Entwicklungen]&lt;br /&gt;
&lt;br /&gt;
== Andreas Schempp ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Andreas Schempp&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:andreas@schempp.ch andreas@schempp.ch]&lt;br /&gt;
&lt;br /&gt;
* ajaxform: Formular per Ajax senden und Antwort per Ajax laden&lt;br /&gt;
* aliascompiler: Seitenalias aus Prefix und Postfix zusammenfügen (z.B. damit der Anwender nur Postfix bearbeiten kann)&lt;br /&gt;
* articlelanguage: Artikel in einer zweiten Sprache zur Verfügung stellen&lt;br /&gt;
* autocompletetextfield: Feld das Vorschläge für Eingabe (z.B. Tags) macht&lt;br /&gt;
* barcode: Generierung von QRcode und MS Tag Bildern&lt;br /&gt;
* blog: Umfangreiche Blog-Funktionen (ProofOfConcept)&lt;br /&gt;
* documentsearch: Dokumente (PDF, DOC, PPT, XLS) in die Contao-Suche aufnehmen (erfordert Server-Binaries)&lt;br /&gt;
* e2photogallery: Contao Extension für die [http://www.e2interactive.com/e2_photo_gallery/ e2 Photo Gallery]&lt;br /&gt;
* exams: Ein- oder mehrseitige Prüfungen mit Punkte-System und Resultat-Auswertung&lt;br /&gt;
* fancyavatar: Avatar mittels Ajax hochladen und zuschneiden&lt;br /&gt;
* folderpage: Ordner-Seiten zur Gruppierung der Seitenstruktur&lt;br /&gt;
* htmlpurifier: Integration des [http://htmlpurifier.org/ HTML Purifier] in Contao&lt;br /&gt;
* importoption: Options-Daten für Formularfelder (Select, Radio, Checkbox) aus CSV importieren&lt;br /&gt;
* joomlaboard_import: JoomlaBoard in Contao Helpdesk Erweiterung migrieren&lt;br /&gt;
* member_album: Fotoalbum für Mitglieder anlegen&lt;br /&gt;
* memberfiles: Zeigt im Backend die Dateien aus dem Benutzerverzeichnis zum Download an&lt;br /&gt;
* mobile_stylesheets: Stylesheet-Targeting für iPhone, iPad und Co&lt;br /&gt;
* news_loader: Lädt beim Scrollen der Seite automatisch die nächsten News nach&lt;br /&gt;
* newsalert: Automatische Newsletter aus News-Archiven&lt;br /&gt;
* newscategories: Kategorisierung und Auflistung von News-Beiträgen (über Archive hinweg)&lt;br /&gt;
* newsletter-article: Newsletter aus Artikel generieren&lt;br /&gt;
* openid-consumer: Anmelden bei Contao mittels OpenID (sehr altes Modul...)&lt;br /&gt;
* pagepdf: PDF aus Seite generieren, oder Seiten im Backend direkt als PDF ausgeben (via kostenpflichtigem [http://html2pdf.seven49.net/ HTML2PDF]&lt;br /&gt;
* previewdownload: Download-Datei mit Vorschau. Kann automatisch aus PDF ein Bild generieren, wenn imagemagick verfügbar ist.&lt;br /&gt;
* qtplayer: Quicktime-Video und -Audio Dateien einbinden&lt;br /&gt;
* rootsearch: Suche über mehrere Root-Seiten&lt;br /&gt;
* shibboleth: Anmeldung an Contao mittels [http://de.wikipedia.org/wiki/Shibboleth_(Internet) Shibboleth]&lt;br /&gt;
* singlegallery: Gibt das erste Galeriebild aus, erlaubt die Navigation in der lightbox/mediabox zu den restlichen Bildern&lt;br /&gt;
* siximages: Galerie-Modul von [http://www.soleil-royal.ch/lage.html Soleil Royal]&lt;br /&gt;
* zz_compressor: Automatische Komprimierung und Zusammeführung ALLER lokalen CSS- und JS-Dateien auf der Seite&lt;br /&gt;
&lt;br /&gt;
== hofemich ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Michael Hofer&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [http://www.contao-community.de/ Forum]&lt;br /&gt;
&lt;br /&gt;
* isotope_request: Ermöglicht die Verknüpfung mit einem Formular, für Produkt-Anfragen&lt;br /&gt;
&lt;br /&gt;
== Cliff Parnitzky ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Cliff Parnitzky&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:contao@cliff-parnitzky.de contao@cliff-parnitzky.de]&lt;br /&gt;
&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/BirthdayMailer.html BirthdayMailer]: fertig&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/EfgMemberSelectMailer.html EfgMemberSelectMailer]: fertig&lt;br /&gt;
* [http://www.contao.org/de/extension-list/view/CheckedEmail.html CheckedEmail]: fertig&lt;br /&gt;
* ConditionalInserttags: Inserttags für einfache Bedingungen (if, ifelse)&lt;br /&gt;
* MemberNumber: Mitgliedernummer (BE) automatisch hochzählen, ggf. mit Präfixauswahl&lt;br /&gt;
* ExtendedListing: Erweitert das Listing Modul um die Möglichkeit, Tabellen miteinander zu verknüpfen (SQL JOIN)&lt;br /&gt;
&lt;br /&gt;
== IMS Internet Marketing Solutions Ltd. ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Dominik Zogg&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:dz@erfolgreiche-internetseiten.ch E-Mail]&lt;br /&gt;
&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/calendarextended.de.html calendarextended]: Erweiterung des Standardkalenders, von einer Kontaktperson bis hin zu einer Registrierung ist alles dabei&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/gist.de.html gist]: Erweiterung welche aus einem gist Inserttag den jeweiligen Javascript Code lädt&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Formulardaten_an_eine_PDF-Datei_%C3%BCbergeben</id>
		<title>Formulardaten an eine PDF-Datei übergeben</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Formulardaten_an_eine_PDF-Datei_%C3%BCbergeben"/>
				<updated>2012-03-28T07:58:41Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Vorgehen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Dev HOWTOS]]&lt;br /&gt;
[[Category:Dev Snippets]]&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=ab 2.9&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Einleitung==&lt;br /&gt;
&lt;br /&gt;
Basierend auf dieser Anforderung aus dem Forum: [https://www.contao-community.de/showthread.php?19958-Formulardaten-an-PDF-Datei-%FCbergeben Formulardaten an PDF-Datei übergeben ] gibt es hier eine Anleitung wie Eingaben in einem Fomrular in ein PDF Dokument übertragen werden können.&lt;br /&gt;
&lt;br /&gt;
==Voraussetzung==&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen dass die Erweiterung [http://www.contao.org/erweiterungsliste/view/inputvar.de.html [inputvar]] installiert ist.&lt;br /&gt;
&lt;br /&gt;
==Verwendung im Frontend==&lt;br /&gt;
&lt;br /&gt;
Der User geht nun auf eine Seite mit einem Formular, trägt dort alles ein, klickt auf Absenden und gelangt dann auf eine Ergebnisseite. Dort werden die Eingaben visualisiert und sind als PDF exportierbar (mittels Syndication: Artikel als PDF drucken).&lt;br /&gt;
&lt;br /&gt;
==Vorgehen==&lt;br /&gt;
&lt;br /&gt;
* 2 Seiten anlegen: Seite 1 für das Formular, Seite 2 für die Ergebnisseite&lt;br /&gt;
* Formular mit den gewünschten Feldern in Formulargenerator anlegen (Übertragungsmethode: Post, Weiterleitungsseite: Seite 2)&lt;br /&gt;
* Formular auf Seite 1 einbinden&lt;br /&gt;
* In Seite 2 einen Aktikel anlegen und unter '''Syndikation''' den Haken bei '''Artikel als PDF''' setzen&lt;br /&gt;
* Im Artikel ein Inhaltselement definieren und dort mittels folgendem Inserttag auf die übertragenen Formularwerte zugreifen um sie auszugeben (''feld_name'' entsprechend ersetzen)&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
 {{post::feld_name}}&lt;br /&gt;
&amp;lt;/source&amp;gt;{{Hinweis|Wenn im Formular die Übertragungsmethode '''GET''' gewählt ist muss mittels &amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;{{get::feld_name}}&amp;lt;/source&amp;gt; auf die Feldwerte zugegriffen werden.}}{{Hinweis|Statt der Erweiterung [inputvar] kann auch [[EFG | [efg]]] genutzt werden. Der Inserttag für die Ausgabe lautet dann: &amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;{{form::feld_name}}&amp;lt;/source&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
==Styling des PDF==&lt;br /&gt;
&lt;br /&gt;
Mit Hilf der Extension [http://www.contao.org/erweiterungsliste/view/pdf-template.html [pdf-template]] kann man das PDF so stylen wie man es gern hätte (z.B. Logo, Seitenfuß, Adressblock, etc.).{{Achtung|Es sind nicht alle CSS Definition möglich. Weitere Infos dazu gibt es unter: [[PDF_Ausgabe | PDF Ausgabe]]}}&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/InKuerzeVerfuegbar</id>
		<title>InKuerzeVerfuegbar</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/InKuerzeVerfuegbar"/>
				<updated>2012-03-21T11:25:52Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Cliff Parnitzky */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
Um zu vermeiden, dass parallele Entwicklung unnötige Ressourcen benötigt, können Entwickler hier Erweiterung eintragen, die &amp;quot;in Kürze verfügbar&amp;quot; sein sollen.&lt;br /&gt;
&lt;br /&gt;
== ETES GmbH ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Jan Theofel, Marc Schneider, Sebastian Leitz&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:contao@etes.de E-Mail] [http://www.etes.de/ Webseite]&lt;br /&gt;
&lt;br /&gt;
* (Neues) Trackback-Modul für News (andere Features als das bestehende)&lt;br /&gt;
* (Neues) Gravatar-Modul (Gravatare auch für Kommentare etc.)&lt;br /&gt;
* Wordpress-Import (basiert auf den oberen beiden)&lt;br /&gt;
* htaccess-Erweiterung zur Konfiguration der zentralen .htaccess mit der Möglichkeit, dass Module dort per Hook eigene Definitionen einfügen können&lt;br /&gt;
* Erweiterungen für unsere Jobbörse (Onlinebewerbung/Bewertung von Bewerbern/Anbindung an Paymentsysteme)&lt;br /&gt;
&lt;br /&gt;
== certo web &amp;amp; design GmbH ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Yanick Witschi (aka Toflar)&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:yanick.witschi@certo-net.ch E-Mail] [http://www.certo-net.ch Webseite]&lt;br /&gt;
&lt;br /&gt;
* Votebox, Prinzip der Votebox von Dropbox&lt;br /&gt;
&lt;br /&gt;
== InfinitySoft - Innovative Softwarelösungen ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Tristan Lins (aka tril)&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:tristan.lins@infinitysoft.de E-Mail] [http://www.infinitysoft.de Webseite]&lt;br /&gt;
&lt;br /&gt;
* .htaccess Editor [https://github.com/InfinitySoft/contao-htaccess github] [http://www.contao.org/erweiterungsliste/view/htaccess.20000008.de.html ER]&lt;br /&gt;
Editor zum bequemen Einrichten der .htaccess Datei aus dem Backend heraus.&lt;br /&gt;
* Open ER2 Client [https://github.com/InfinitySoft/contao-open-er2-client github]&lt;br /&gt;
Client Library um Extensions innerhalb einer Contao Installation zu verwalten. Dies ist '''nur''' eine Library ohne grafische Oberfläche, die dazu genutzt werden kann einen neuen ER Client für das aktuelle Extension Repository zu entwickeln.&lt;br /&gt;
&lt;br /&gt;
== BugBuster ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Glen Langer&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [http://www.contao-community.de/ Forum] | [http://www.contao.Glen-Langer.de/ Webseite]&lt;br /&gt;
&lt;br /&gt;
* Idee: moopeel - diese nette Ecke auf Mootoolsbasis (no Flash!)&lt;br /&gt;
* Idee: BotDetection Add-on: Suchmaschinen Statistik&lt;br /&gt;
&lt;br /&gt;
== MEN AT WORK ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Andreas Isaak, David Maack&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:cms@men-at-work.de E-Mail]&lt;br /&gt;
&lt;br /&gt;
* recursiveDownload: Rekursive Downloads basierend auf dem Benutzerverzeichnis&lt;br /&gt;
* recursiveGallery: Rekursive Galerie basierend auf dem Benutzerverzeichnis&lt;br /&gt;
* [http://www.contao-forge.org/projects/language4translation/issues language4translation]: Exportierte Sprachtexte im Frontend übersetzen und später wieder via language2file importieren&lt;br /&gt;
* dashboard: Erweiterung der Dashboard Extension von Andreas Schempp&lt;br /&gt;
* [http://www.contao-forge.org/projects/backendfavourites backendFavourites] Favouriten/Sprungmarker für das Backend definieren&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/menatwork Übersicht all unserer Entwicklungen]&lt;br /&gt;
&lt;br /&gt;
== Andreas Schempp ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Andreas Schempp&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:andreas@schempp.ch andreas@schempp.ch]&lt;br /&gt;
&lt;br /&gt;
* ajaxform: Formular per Ajax senden und Antwort per Ajax laden&lt;br /&gt;
* aliascompiler: Seitenalias aus Prefix und Postfix zusammenfügen (z.B. damit der Anwender nur Postfix bearbeiten kann)&lt;br /&gt;
* articlelanguage: Artikel in einer zweiten Sprache zur Verfügung stellen&lt;br /&gt;
* autocompletetextfield: Feld das Vorschläge für Eingabe (z.B. Tags) macht&lt;br /&gt;
* barcode: Generierung von QRcode und MS Tag Bildern&lt;br /&gt;
* blog: Umfangreiche Blog-Funktionen (ProofOfConcept)&lt;br /&gt;
* documentsearch: Dokumente (PDF, DOC, PPT, XLS) in die Contao-Suche aufnehmen (erfordert Server-Binaries)&lt;br /&gt;
* e2photogallery: Contao Extension für die [http://www.e2interactive.com/e2_photo_gallery/ e2 Photo Gallery]&lt;br /&gt;
* exams: Ein- oder mehrseitige Prüfungen mit Punkte-System und Resultat-Auswertung&lt;br /&gt;
* fancyavatar: Avatar mittels Ajax hochladen und zuschneiden&lt;br /&gt;
* folderpage: Ordner-Seiten zur Gruppierung der Seitenstruktur&lt;br /&gt;
* htmlpurifier: Integration des [http://htmlpurifier.org/ HTML Purifier] in Contao&lt;br /&gt;
* importoption: Options-Daten für Formularfelder (Select, Radio, Checkbox) aus CSV importieren&lt;br /&gt;
* joomlaboard_import: JoomlaBoard in Contao Helpdesk Erweiterung migrieren&lt;br /&gt;
* member_album: Fotoalbum für Mitglieder anlegen&lt;br /&gt;
* memberfiles: Zeigt im Backend die Dateien aus dem Benutzerverzeichnis zum Download an&lt;br /&gt;
* mobile_stylesheets: Stylesheet-Targeting für iPhone, iPad und Co&lt;br /&gt;
* news_loader: Lädt beim Scrollen der Seite automatisch die nächsten News nach&lt;br /&gt;
* newsalert: Automatische Newsletter aus News-Archiven&lt;br /&gt;
* newscategories: Kategorisierung und Auflistung von News-Beiträgen (über Archive hinweg)&lt;br /&gt;
* newsletter-article: Newsletter aus Artikel generieren&lt;br /&gt;
* openid-consumer: Anmelden bei Contao mittels OpenID (sehr altes Modul...)&lt;br /&gt;
* pagepdf: PDF aus Seite generieren, oder Seiten im Backend direkt als PDF ausgeben (via kostenpflichtigem [http://html2pdf.seven49.net/ HTML2PDF]&lt;br /&gt;
* previewdownload: Download-Datei mit Vorschau. Kann automatisch aus PDF ein Bild generieren, wenn imagemagick verfügbar ist.&lt;br /&gt;
* qtplayer: Quicktime-Video und -Audio Dateien einbinden&lt;br /&gt;
* rootsearch: Suche über mehrere Root-Seiten&lt;br /&gt;
* shibboleth: Anmeldung an Contao mittels [http://de.wikipedia.org/wiki/Shibboleth_(Internet) Shibboleth]&lt;br /&gt;
* singlegallery: Gibt das erste Galeriebild aus, erlaubt die Navigation in der lightbox/mediabox zu den restlichen Bildern&lt;br /&gt;
* siximages: Galerie-Modul von [http://www.soleil-royal.ch/lage.html Soleil Royal]&lt;br /&gt;
* z_modulealias: Alias-Modul welches andere Module automatisch entsprechend der aktiven Seite einbindet (praktisch für mehrsprachige Seiten)&lt;br /&gt;
* zz_compressor: Automatische Komprimierung und Zusammeführung ALLER lokalen CSS- und JS-Dateien auf der Seite&lt;br /&gt;
&lt;br /&gt;
== Küstenschmiede - Ideen, Software &amp;amp; Design ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Jürgen Witte, Matthias Eilers&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:info@kuestenschmiede.de E-Mail] [http://www.kuestenschmiede.info Webseite]&lt;br /&gt;
&lt;br /&gt;
* cfs_forum: Diskussionsforum mit themebarem jQuery UI und jQuery Mobile Frontend&lt;br /&gt;
&lt;br /&gt;
== hofemich ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Michael Hofer&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [http://www.contao-community.de/ Forum]&lt;br /&gt;
&lt;br /&gt;
* isotope_request: Ermöglicht die Verknüpfung mit einem Formular, für Produkt-Anfragen&lt;br /&gt;
&lt;br /&gt;
== Cliff Parnitzky ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Cliff Parnitzky&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:contao@cliff-parnitzky.de contao@cliff-parnitzky.de]&lt;br /&gt;
&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/BirthdayMailer.html BirthdayMailer]: fertig&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/EfgMemberSelectMailer.html EfgMemberSelectMailer]: fertig&lt;br /&gt;
* [http://www.contao.org/de/extension-list/view/CheckedEmail.html CheckedEmail]: fertig&lt;br /&gt;
* ConditionalInserttags: Inserttags für einfache Bedingungen&lt;br /&gt;
* MemberNumber: Mitgliedernummer automatisch hochzählen, ggf. mit Präfixauswahl&lt;br /&gt;
* EfgMemberSelectFieldConnector: Überträgt Werte vom selektierten Mitglied (EfgMemberSelect) auf andere Felder des Formulars ... Verbindet Mitgliederfelder mit Formularfelder&lt;br /&gt;
* ExtendedListing: Erweitert das Listing Modul um die Möglichkeit, Tabellen miteinander zu verknüpfen (SQL JOIN)&lt;br /&gt;
&lt;br /&gt;
== IMS Internet Marketing Solutions Ltd. ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Dominik Zogg&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:dz@erfolgreiche-internetseiten.ch E-Mail]&lt;br /&gt;
&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/calendarextended.de.html calendarextended]: Erweiterung des Standardkalenders, von einer Kontaktperson bis hin zu einer Registrierung ist alles dabei&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/gist.de.html gist]: Erweiterung welche aus einem gist Inserttag den jeweiligen Javascript Code lädt&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Formulardaten_an_ein_anderes_Formular_%C3%BCbergeben</id>
		<title>Formulardaten an ein anderes Formular übergeben</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Formulardaten_an_ein_anderes_Formular_%C3%BCbergeben"/>
				<updated>2012-03-20T11:09:57Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Vorgehen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Dev HOWTOS]]&lt;br /&gt;
[[Category:Dev Snippets]]&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=ab 2.9&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Einleitung==&lt;br /&gt;
&lt;br /&gt;
Basierend auf dieser Anforderung aus dem Forum: [https://www.contao-community.de/showthread.php?28734-Formulardaten-an-Formular-%FCbergeben Formulardaten an Formular übergeben] gibt es hier eine Anleitung wie bestimmte Daten, die mit einem Formular erfasst wurden, in eine anderes Formular zur Weiterverarbeitung übertragen werden können.&lt;br /&gt;
&lt;br /&gt;
==Voraussetzung==&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen dass die Erweiterungen [[EFG | [efg]]] und [http://www.contao.org/erweiterungsliste/view/inputvar.de.html [inputvar]] installiert ist.&lt;br /&gt;
&lt;br /&gt;
==Vorgehen==&lt;br /&gt;
&lt;br /&gt;
* Formular 1 und Formular 2 anlegen&lt;br /&gt;
* Seiten für die Formulare anlegen und diese dort einbinden&lt;br /&gt;
* Template ''&amp;quot;list_fd_table_default&amp;quot;'' kopieren, umbenennen (''&amp;quot;list_&amp;quot;'' muss erhalten bleiben) und so modifizieren dass es pro Zeile einen Link zur Seite mit Formular 2 hat ... in der URL alle notwendigen Parameter unterbringen (nach Block ''&amp;lt;?php foreach ($row as $col): ?&amp;gt;'' von ''list_fd_table_default'' als weitere Spalte):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;td class=&amp;quot;last&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;a href=&amp;quot;{{link_url::&amp;lt;ID_SEITE_2&amp;gt;}}?&amp;lt;FELD_FORM_2&amp;gt;=&amp;lt;?php echo $row[&amp;lt;SPALTE&amp;gt;]['raw']; ?&amp;gt;&amp;quot;&amp;gt;Link: &amp;lt;?php echo $row[&amp;lt;SPALTE&amp;gt;]['raw']; ?&amp;gt;&amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
{{Hinweis|&lt;br /&gt;
* &amp;lt;ID_SEITE_2&amp;gt; : Id der Seite mit Formular 2&lt;br /&gt;
* &amp;lt;FELD_FORM_2&amp;gt; : Name des Feldes in Formular 2&lt;br /&gt;
* &amp;lt;SPALTE&amp;gt; : Spaltennummer in diese Tabelle ab 0 gezählt&lt;br /&gt;
}}&lt;br /&gt;
* Ein Modul vom Typ '''Auflistung Formular-Daten''' zum Formular 1 mit eben erstelltem Listentemplate anlegen &lt;br /&gt;
* Für alle Felder in Formular 2 die vorbelegt werden sollen einen '''Standardwert''' setzen nach folgendem Muster:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
 {{get::name}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Formulardaten_an_ein_anderes_Formular_%C3%BCbergeben</id>
		<title>Formulardaten an ein anderes Formular übergeben</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Formulardaten_an_ein_anderes_Formular_%C3%BCbergeben"/>
				<updated>2012-03-16T11:58:03Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Voraussetzung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Dev HOWTOS]]&lt;br /&gt;
[[Category:Dev Snippets]]&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=ab 2.9&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Einleitung==&lt;br /&gt;
&lt;br /&gt;
Basierend auf dieser Anforderung aus dem Forum: [https://www.contao-community.de/showthread.php?28734-Formulardaten-an-Formular-%FCbergeben Formulardaten an Formular übergeben] gibt es hier eine Anleitung wie bestimmte Daten, die mit einem Formular erfasst wurden, in eine anderes Formular zur Weiterverarbeitung übertragen werden können.&lt;br /&gt;
&lt;br /&gt;
==Voraussetzung==&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen dass die Erweiterungen [[EFG | [efg]]] und [http://www.contao.org/erweiterungsliste/view/inputvar.de.html [inputvar]] installiert ist.&lt;br /&gt;
&lt;br /&gt;
==Vorgehen==&lt;br /&gt;
&lt;br /&gt;
* Formular 1 und Formular 2 anlegen&lt;br /&gt;
* Seiten für die Formulare anlegen und diese dort einbinden&lt;br /&gt;
* Template ''&amp;quot;list_fd_table_default&amp;quot;'' kopieren, umbenennen (''&amp;quot;list_&amp;quot;'' muss erhalten bleiben) und so modifizieren dass es pro Zeile einen Link zur Seite mit Formular 2 hat ... in der URL alle notwendigen Parameter unterbringen (nach Block ''&amp;lt;?php foreach ($row as $col): ?&amp;gt;'' von ''list_fd_table_default'' als weitere Spalte):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;td class=&amp;quot;last&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;a href=&amp;quot;{{link_url::&amp;lt;ID_SEITE_2&amp;gt;}}?name=&amp;lt;?php echo $row['name']['raw']; ?&amp;gt;&amp;quot;&amp;gt;Link: &amp;lt;?php echo $row['name']['raw']; ?&amp;gt;&amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
* Ein Modul vom Typ '''Auflistung Formular-Daten''' zum Formular 1 mit eben erstelltem Listentemplate anlegen &lt;br /&gt;
* Für alle Felder in Formular 2 die vorbelegt werden sollen einen '''Standardwert''' setzen nach folgendem Muster:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
 {{get::name}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Formulardaten_an_ein_anderes_Formular_%C3%BCbergeben</id>
		<title>Formulardaten an ein anderes Formular übergeben</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Formulardaten_an_ein_anderes_Formular_%C3%BCbergeben"/>
				<updated>2012-03-16T11:57:10Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Vorgehen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Dev HOWTOS]]&lt;br /&gt;
[[Category:Dev Snippets]]&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=ab 2.9&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Einleitung==&lt;br /&gt;
&lt;br /&gt;
Basierend auf dieser Anforderung aus dem Forum: [https://www.contao-community.de/showthread.php?28734-Formulardaten-an-Formular-%FCbergeben Formulardaten an Formular übergeben] gibt es hier eine Anleitung wie bestimmte Daten, die mit einem Formular erfasst wurden, in eine anderes Formular zur Weiterverarbeitung übertragen werden können.&lt;br /&gt;
&lt;br /&gt;
==Voraussetzung==&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen dass die Erweiterung [http://www.contao.org/erweiterungsliste/view/inputvar.de.html [inputvar]] installiert ist.&lt;br /&gt;
&lt;br /&gt;
==Vorgehen==&lt;br /&gt;
&lt;br /&gt;
* Formular 1 und Formular 2 anlegen&lt;br /&gt;
* Seiten für die Formulare anlegen und diese dort einbinden&lt;br /&gt;
* Template ''&amp;quot;list_fd_table_default&amp;quot;'' kopieren, umbenennen (''&amp;quot;list_&amp;quot;'' muss erhalten bleiben) und so modifizieren dass es pro Zeile einen Link zur Seite mit Formular 2 hat ... in der URL alle notwendigen Parameter unterbringen (nach Block ''&amp;lt;?php foreach ($row as $col): ?&amp;gt;'' von ''list_fd_table_default'' als weitere Spalte):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;td class=&amp;quot;last&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;a href=&amp;quot;{{link_url::&amp;lt;ID_SEITE_2&amp;gt;}}?name=&amp;lt;?php echo $row['name']['raw']; ?&amp;gt;&amp;quot;&amp;gt;Link: &amp;lt;?php echo $row['name']['raw']; ?&amp;gt;&amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
* Ein Modul vom Typ '''Auflistung Formular-Daten''' zum Formular 1 mit eben erstelltem Listentemplate anlegen &lt;br /&gt;
* Für alle Felder in Formular 2 die vorbelegt werden sollen einen '''Standardwert''' setzen nach folgendem Muster:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
 {{get::name}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Formulardaten_an_ein_PDF-Datei_%C3%BCbergeben</id>
		<title>Formulardaten an ein PDF-Datei übergeben</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Formulardaten_an_ein_PDF-Datei_%C3%BCbergeben"/>
				<updated>2012-03-15T21:31:20Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: Änderung 5118 von Cliff.parnitzky (Diskussion) wurde rückgängig gemacht.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#WEITERLEITUNG [[Formulardaten an eine PDF-Datei übergeben]]&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Formulardaten_an_ein_PDF-Datei_%C3%BCbergeben</id>
		<title>Formulardaten an ein PDF-Datei übergeben</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Formulardaten_an_ein_PDF-Datei_%C3%BCbergeben"/>
				<updated>2012-03-15T21:29:46Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: Die Seite wurde geleert.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Formulardaten_an_eine_PDF-Datei_%C3%BCbergeben</id>
		<title>Formulardaten an eine PDF-Datei übergeben</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Formulardaten_an_eine_PDF-Datei_%C3%BCbergeben"/>
				<updated>2012-03-15T21:29:17Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: hat „Formulardaten an ein PDF-Datei übergeben“ nach „Formulardaten an eine PDF-Datei übergeben“ verschoben&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Dev HOWTOS]]&lt;br /&gt;
[[Category:Dev Snippets]]&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=ab 2.9&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Einleitung==&lt;br /&gt;
&lt;br /&gt;
Basierend auf dieser Anforderung aus dem Forum: [https://www.contao-community.de/showthread.php?19958-Formulardaten-an-PDF-Datei-%FCbergeben Formulardaten an PDF-Datei übergeben ] gibt es hier eine Anleitung wie Eingaben in einem Fomrular in ein PDF Dokument übertragen werden können.&lt;br /&gt;
&lt;br /&gt;
==Voraussetzung==&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen dass die Erweiterung [http://www.contao.org/erweiterungsliste/view/inputvar.de.html [inputvar]] installiert ist.&lt;br /&gt;
&lt;br /&gt;
==Verwendung im Frontend==&lt;br /&gt;
&lt;br /&gt;
Der User geht nun auf eine Seite mit einem Formular, trägt dort alles ein, klickt auf Absenden und gelangt dann auf eine Ergebnisseite. Dort werden die Eingaben visualisiert und sind als PDF exportierbar (mittels Syndication: Artikel als PDF drucken).&lt;br /&gt;
&lt;br /&gt;
==Vorgehen==&lt;br /&gt;
&lt;br /&gt;
* 2 Seiten anlegen: Seite 1 für das Formular, Seite 2 für die Ergebnisseite&lt;br /&gt;
* Formular mit den gewünschten Feldern in Formulargenerator anlegen (Übertragungsmethode: Post, Weiterleitungsseite: Seite 2)&lt;br /&gt;
* Formular auf Seite 1 einbinden&lt;br /&gt;
* In Seite 2 einen Aktikel anlegen und unter '''Syndikation''' den Haken bei '''Artikel als PDF''' setzen&lt;br /&gt;
* Im Artikel ein Inhaltselement definieren und dort mittels folgendem Muster auf die übertragenen Formularwerte zugreifen um sie auszugeben&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
 {{post::feld_name}}&lt;br /&gt;
&amp;lt;/source&amp;gt;{{Hinweis|Wenn im Formular die Übertragungsmethode get gewählt ist muss mittels &amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;{{get::feld_name}}&amp;lt;/source&amp;gt; auf die Feldwerte zugegriffen werden.}}&lt;br /&gt;
&lt;br /&gt;
==Styling des PDF==&lt;br /&gt;
&lt;br /&gt;
Mit Hilf der Extension [http://www.contao.org/erweiterungsliste/view/pdf-template.html [pdf-template]] kann man das PDF so stylen wie man es gern hätte (z.B. Logo, Seitenfuß, Adressblock, etc.).{{Achtung|Es sind nicht alle CSS Definition möglich. Weitere Infos dazu gibt es unter: [[PDF_Ausgabe | PDF Ausgabe]]}}&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Formulardaten_an_ein_PDF-Datei_%C3%BCbergeben</id>
		<title>Formulardaten an ein PDF-Datei übergeben</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Formulardaten_an_ein_PDF-Datei_%C3%BCbergeben"/>
				<updated>2012-03-15T21:29:17Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: hat „Formulardaten an ein PDF-Datei übergeben“ nach „Formulardaten an eine PDF-Datei übergeben“ verschoben&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#WEITERLEITUNG [[Formulardaten an eine PDF-Datei übergeben]]&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Formulardaten_an_eine_PDF-Datei_%C3%BCbergeben</id>
		<title>Formulardaten an eine PDF-Datei übergeben</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Formulardaten_an_eine_PDF-Datei_%C3%BCbergeben"/>
				<updated>2012-03-15T16:20:00Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: Die Seite wurde neu angelegt: „Category:Admin HOWTOS Category:Dev HOWTOS Category:Dev Snippets {{AppliesTo |Version=ab 2.9 }}  ==Einleitung==  Basierend auf dieser Anforderung aus d…“&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Dev HOWTOS]]&lt;br /&gt;
[[Category:Dev Snippets]]&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=ab 2.9&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Einleitung==&lt;br /&gt;
&lt;br /&gt;
Basierend auf dieser Anforderung aus dem Forum: [https://www.contao-community.de/showthread.php?19958-Formulardaten-an-PDF-Datei-%FCbergeben Formulardaten an PDF-Datei übergeben ] gibt es hier eine Anleitung wie Eingaben in einem Fomrular in ein PDF Dokument übertragen werden können.&lt;br /&gt;
&lt;br /&gt;
==Voraussetzung==&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen dass die Erweiterung [http://www.contao.org/erweiterungsliste/view/inputvar.de.html [inputvar]] installiert ist.&lt;br /&gt;
&lt;br /&gt;
==Verwendung im Frontend==&lt;br /&gt;
&lt;br /&gt;
Der User geht nun auf eine Seite mit einem Formular, trägt dort alles ein, klickt auf Absenden und gelangt dann auf eine Ergebnisseite. Dort werden die Eingaben visualisiert und sind als PDF exportierbar (mittels Syndication: Artikel als PDF drucken).&lt;br /&gt;
&lt;br /&gt;
==Vorgehen==&lt;br /&gt;
&lt;br /&gt;
* 2 Seiten anlegen: Seite 1 für das Formular, Seite 2 für die Ergebnisseite&lt;br /&gt;
* Formular mit den gewünschten Feldern in Formulargenerator anlegen (Übertragungsmethode: Post, Weiterleitungsseite: Seite 2)&lt;br /&gt;
* Formular auf Seite 1 einbinden&lt;br /&gt;
* In Seite 2 einen Aktikel anlegen und unter '''Syndikation''' den Haken bei '''Artikel als PDF''' setzen&lt;br /&gt;
* Im Artikel ein Inhaltselement definieren und dort mittels folgendem Muster auf die übertragenen Formularwerte zugreifen um sie auszugeben&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
 {{post::feld_name}}&lt;br /&gt;
&amp;lt;/source&amp;gt;{{Hinweis|Wenn im Formular die Übertragungsmethode get gewählt ist muss mittels &amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;{{get::feld_name}}&amp;lt;/source&amp;gt; auf die Feldwerte zugegriffen werden.}}&lt;br /&gt;
&lt;br /&gt;
==Styling des PDF==&lt;br /&gt;
&lt;br /&gt;
Mit Hilf der Extension [http://www.contao.org/erweiterungsliste/view/pdf-template.html [pdf-template]] kann man das PDF so stylen wie man es gern hätte (z.B. Logo, Seitenfuß, Adressblock, etc.).{{Achtung|Es sind nicht alle CSS Definition möglich. Weitere Infos dazu gibt es unter: [[PDF_Ausgabe | PDF Ausgabe]]}}&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Formulardaten_an_ein_anderes_Formular_%C3%BCbergeben</id>
		<title>Formulardaten an ein anderes Formular übergeben</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Formulardaten_an_ein_anderes_Formular_%C3%BCbergeben"/>
				<updated>2012-03-15T15:47:49Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Dev HOWTOS]]&lt;br /&gt;
[[Category:Dev Snippets]]&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=ab 2.9&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Einleitung==&lt;br /&gt;
&lt;br /&gt;
Basierend auf dieser Anforderung aus dem Forum: [https://www.contao-community.de/showthread.php?28734-Formulardaten-an-Formular-%FCbergeben Formulardaten an Formular übergeben] gibt es hier eine Anleitung wie bestimmte Daten, die mit einem Formular erfasst wurden, in eine anderes Formular zur Weiterverarbeitung übertragen werden können.&lt;br /&gt;
&lt;br /&gt;
==Voraussetzung==&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen dass die Erweiterung [http://www.contao.org/erweiterungsliste/view/inputvar.de.html [inputvar]] installiert ist.&lt;br /&gt;
&lt;br /&gt;
==Vorgehen==&lt;br /&gt;
&lt;br /&gt;
* Formular 1 und Formular 2 anlegen&lt;br /&gt;
* Seiten für die Formulare anlegen und diese dort einbinden&lt;br /&gt;
* Template ''&amp;quot;list_fd_table_default&amp;quot;'' kopieren, umbenennen (''&amp;quot;list_&amp;quot;'' muss erhalten bleiben) und so modifizieren dass es pro Zeile einen Link zur Seite mit Formular 2 hat ... in der URL alle notwendigen Parameter unterbringen (z.B. ....?name=Herbert)&lt;br /&gt;
* Ein Modul vom Typ '''Auflistung Formular-Daten''' zum Formular 1 mit eben erstelltem Listentemplate anlegen &lt;br /&gt;
* Für alle Felder in Formular 2 die vorbelegt werden sollen einen '''Standardwert''' setzen nach folgendem Muster:&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
 {{get::name}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Formulardaten_an_ein_anderes_Formular_%C3%BCbergeben</id>
		<title>Formulardaten an ein anderes Formular übergeben</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Formulardaten_an_ein_anderes_Formular_%C3%BCbergeben"/>
				<updated>2012-03-15T15:47:28Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: Die Seite wurde neu angelegt: „{{stub}}  Category:Admin HOWTOS Category:Dev HOWTOS Category:Dev Snippets {{AppliesTo |Version=ab 2.9 }}  ==Einleitung==  Basierend auf dieser Anforde…“&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Dev HOWTOS]]&lt;br /&gt;
[[Category:Dev Snippets]]&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=ab 2.9&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Einleitung==&lt;br /&gt;
&lt;br /&gt;
Basierend auf dieser Anforderung aus dem Forum: [https://www.contao-community.de/showthread.php?28734-Formulardaten-an-Formular-%FCbergeben Formulardaten an Formular übergeben] gibt es hier eine Anleitung wie bestimmte Daten, die mit einem Formular erfasst wurden, in eine anderes Formular zur Weiterverarbeitung übertragen werden können.&lt;br /&gt;
&lt;br /&gt;
==Voraussetzung==&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen dass die Erweiterung [http://www.contao.org/erweiterungsliste/view/inputvar.de.html [inputvar]] installiert ist.&lt;br /&gt;
&lt;br /&gt;
==Vorgehen==&lt;br /&gt;
&lt;br /&gt;
* Formular 1 und Formular 2 anlegen&lt;br /&gt;
* Seiten für die Formulare anlegen und diese dort einbinden&lt;br /&gt;
* Template ''&amp;quot;list_fd_table_default&amp;quot;'' kopieren, umbenennen (''&amp;quot;list_&amp;quot;'' muss erhalten bleiben) und so modifizieren dass es pro Zeile einen Link zur Seite mit Formular 2 hat ... in der URL alle notwendigen Parameter unterbringen (z.B. ....?name=Herbert)&lt;br /&gt;
* Ein Modul vom Typ '''Auflistung Formular-Daten''' zum Formular 1 mit eben erstelltem Listentemplate anlegen &lt;br /&gt;
* Für alle Felder in Formular 2 die vorbelegt werden sollen einen '''Standardwert''' setzen nach folgendem Muster:&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
 {{get::name}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/InKuerzeVerfuegbar</id>
		<title>InKuerzeVerfuegbar</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/InKuerzeVerfuegbar"/>
				<updated>2012-03-09T15:13:25Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Cliff Parnitzky */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
Um zu vermeiden, dass parallele Entwicklung unnötige Ressourcen benötigt, können Entwickler hier Erweiterung eintragen, die &amp;quot;in Kürze verfügbar&amp;quot; sein sollen.&lt;br /&gt;
&lt;br /&gt;
== ETES GmbH ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Jan Theofel, Marc Schneider, Sebastian Leitz&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:contao@etes.de E-Mail] [http://www.etes.de/ Webseite]&lt;br /&gt;
&lt;br /&gt;
* (Neues) Trackback-Modul für News (andere Features als das bestehende)&lt;br /&gt;
* (Neues) Gravatar-Modul (Gravatare auch für Kommentare etc.)&lt;br /&gt;
* Wordpress-Import (basiert auf den oberen beiden)&lt;br /&gt;
* htaccess-Erweiterung zur Konfiguration der zentralen .htaccess mit der Möglichkeit, dass Module dort per Hook eigene Definitionen einfügen können&lt;br /&gt;
* Erweiterungen für unsere Jobbörse (Onlinebewerbung/Bewertung von Bewerbern/Anbindung an Paymentsysteme)&lt;br /&gt;
&lt;br /&gt;
== certo web &amp;amp; design GmbH ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Yanick Witschi (aka Toflar)&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:yanick.witschi@certo-net.ch E-Mail] [http://www.certo-net.ch Webseite]&lt;br /&gt;
&lt;br /&gt;
* Votebox, Prinzip der Votebox von Dropbox&lt;br /&gt;
&lt;br /&gt;
== InfinitySoft - Innovative Softwarelösungen ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Tristan Lins (aka tril)&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:tristan.lins@infinitysoft.de E-Mail] [http://www.infinitysoft.de Webseite]&lt;br /&gt;
&lt;br /&gt;
* .htaccess Editor [https://github.com/InfinitySoft/contao-htaccess github] [http://www.contao.org/erweiterungsliste/view/htaccess.20000008.de.html ER]&lt;br /&gt;
Editor zum bequemen Einrichten der .htaccess Datei aus dem Backend heraus.&lt;br /&gt;
* Open ER2 Client [https://github.com/InfinitySoft/contao-open-er2-client github]&lt;br /&gt;
Client Library um Extensions innerhalb einer Contao Installation zu verwalten. Dies ist '''nur''' eine Library ohne grafische Oberfläche, die dazu genutzt werden kann einen neuen ER Client für das aktuelle Extension Repository zu entwickeln.&lt;br /&gt;
&lt;br /&gt;
== BugBuster ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Glen Langer&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [http://www.contao-community.de/ Forum] | [http://www.contao.Glen-Langer.de/ Webseite]&lt;br /&gt;
&lt;br /&gt;
* Idee: moopeel - diese nette Ecke auf Mootoolsbasis (no Flash!)&lt;br /&gt;
* Idee: BotDetection Add-on: Suchmaschinen Statistik&lt;br /&gt;
&lt;br /&gt;
== MEN AT WORK ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Andreas Isaak, David Maack&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:cms@men-at-work.de E-Mail]&lt;br /&gt;
&lt;br /&gt;
* recursiveDownload: Rekursive Downloads basierend auf dem Benutzerverzeichnis&lt;br /&gt;
* recursiveGallery: Rekursive Galerie basierend auf dem Benutzerverzeichnis&lt;br /&gt;
* [http://www.contao-forge.org/projects/language4translation/issues language4translation]: Exportierte Sprachtexte im Frontend übersetzen und später wieder via language2file importieren&lt;br /&gt;
* dashboard: Erweiterung der Dashboard Extension von Andreas Schempp&lt;br /&gt;
* [http://www.contao-forge.org/projects/backendfavourites backendFavourites] Favouriten/Sprungmarker für das Backend definieren&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/menatwork Übersicht all unserer Entwicklungen]&lt;br /&gt;
&lt;br /&gt;
== Andreas Schempp ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Andreas Schempp&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:andreas@schempp.ch andreas@schempp.ch]&lt;br /&gt;
&lt;br /&gt;
* ajaxform: Formular per Ajax senden und Antwort per Ajax laden&lt;br /&gt;
* aliascompiler: Seitenalias aus Prefix und Postfix zusammenfügen (z.B. damit der Anwender nur Postfix bearbeiten kann)&lt;br /&gt;
* articlelanguage: Artikel in einer zweiten Sprache zur Verfügung stellen&lt;br /&gt;
* autocompletetextfield: Feld das Vorschläge für Eingabe (z.B. Tags) macht&lt;br /&gt;
* barcode: Generierung von QRcode und MS Tag Bildern&lt;br /&gt;
* blog: Umfangreiche Blog-Funktionen (ProofOfConcept)&lt;br /&gt;
* documentsearch: Dokumente (PDF, DOC, PPT, XLS) in die Contao-Suche aufnehmen (erfordert Server-Binaries)&lt;br /&gt;
* e2photogallery: Contao Extension für die [http://www.e2interactive.com/e2_photo_gallery/ e2 Photo Gallery]&lt;br /&gt;
* exams: Ein- oder mehrseitige Prüfungen mit Punkte-System und Resultat-Auswertung&lt;br /&gt;
* fancyavatar: Avatar mittels Ajax hochladen und zuschneiden&lt;br /&gt;
* folderpage: Ordner-Seiten zur Gruppierung der Seitenstruktur&lt;br /&gt;
* htmlpurifier: Integration des [http://htmlpurifier.org/ HTML Purifier] in Contao&lt;br /&gt;
* importoption: Options-Daten für Formularfelder (Select, Radio, Checkbox) aus CSV importieren&lt;br /&gt;
* joomlaboard_import: JoomlaBoard in Contao Helpdesk Erweiterung migrieren&lt;br /&gt;
* member_album: Fotoalbum für Mitglieder anlegen&lt;br /&gt;
* memberfiles: Zeigt im Backend die Dateien aus dem Benutzerverzeichnis zum Download an&lt;br /&gt;
* mobile_stylesheets: Stylesheet-Targeting für iPhone, iPad und Co&lt;br /&gt;
* news_loader: Lädt beim Scrollen der Seite automatisch die nächsten News nach&lt;br /&gt;
* newsalert: Automatische Newsletter aus News-Archiven&lt;br /&gt;
* newscategories: Kategorisierung und Auflistung von News-Beiträgen (über Archive hinweg)&lt;br /&gt;
* newsletter-article: Newsletter aus Artikel generieren&lt;br /&gt;
* openid-consumer: Anmelden bei Contao mittels OpenID (sehr altes Modul...)&lt;br /&gt;
* pagepdf: PDF aus Seite generieren, oder Seiten im Backend direkt als PDF ausgeben (via kostenpflichtigem [http://html2pdf.seven49.net/ HTML2PDF]&lt;br /&gt;
* previewdownload: Download-Datei mit Vorschau. Kann automatisch aus PDF ein Bild generieren, wenn imagemagick verfügbar ist.&lt;br /&gt;
* qtplayer: Quicktime-Video und -Audio Dateien einbinden&lt;br /&gt;
* rootsearch: Suche über mehrere Root-Seiten&lt;br /&gt;
* shibboleth: Anmeldung an Contao mittels [http://de.wikipedia.org/wiki/Shibboleth_(Internet) Shibboleth]&lt;br /&gt;
* singlegallery: Gibt das erste Galeriebild aus, erlaubt die Navigation in der lightbox/mediabox zu den restlichen Bildern&lt;br /&gt;
* siximages: Galerie-Modul von [http://www.soleil-royal.ch/lage.html Soleil Royal]&lt;br /&gt;
* z_modulealias: Alias-Modul welches andere Module automatisch entsprechend der aktiven Seite einbindet (praktisch für mehrsprachige Seiten)&lt;br /&gt;
* zz_compressor: Automatische Komprimierung und Zusammeführung ALLER lokalen CSS- und JS-Dateien auf der Seite&lt;br /&gt;
&lt;br /&gt;
== Küstenschmiede - Ideen, Software &amp;amp; Design ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Jürgen Witte, Matthias Eilers&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:info@kuestenschmiede.de E-Mail] [http://www.kuestenschmiede.info Webseite]&lt;br /&gt;
&lt;br /&gt;
* cfs_forum: Diskussionsforum mit themebarem jQuery UI und jQuery Mobile Frontend&lt;br /&gt;
&lt;br /&gt;
== hofemich ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Michael Hofer&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [http://www.contao-community.de/ Forum]&lt;br /&gt;
&lt;br /&gt;
* isotope_request: Ermöglicht die Verknüpfung mit einem Formular, für Produkt-Anfragen&lt;br /&gt;
&lt;br /&gt;
== Cliff Parnitzky ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Cliff Parnitzky&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:contao@cliff-parnitzky.de contao@cliff-parnitzky.de]&lt;br /&gt;
&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/BirthdayMailer.html BirthdayMailer]: fertig&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/EfgMemberSelectMailer.html EfgMemberSelectMailer]: fertig&lt;br /&gt;
* CheckedEmail: Widget für den Formulargenerator zum Prüfen einer E-Mail-Adresse (wie Passwortfeld ... mit Bestätigung)&lt;br /&gt;
* ConditionalInserttags: Inserttags für einfache Bedingungen&lt;br /&gt;
* MemberNumber: Mitgliedernummer automatisch hochzählen, ggf. mit Präfixauswahl&lt;br /&gt;
* EfgMemberSelectFieldConnector: Überträgt Werte vom selektierten Mitglied (EfgMemberSelect) auf andere Felder des Formulars ... Verbindet Mitgliederfelder mit Formularfelder&lt;br /&gt;
* ExtendedListing: Erweitert das Listing Modul um die Möglichkeit, Tabellen miteinander zu verknüpfen (SQL JOIN)&lt;br /&gt;
&lt;br /&gt;
== IMS Internet Marketing Solutions Ltd. ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Dominik Zogg&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:dz@erfolgreiche-internetseiten.ch E-Mail]&lt;br /&gt;
&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/calendarextended.de.html calendarextended]: Erweiterung des Standardkalenders, von einer Kontaktperson bis hin zu einer Registrierung ist alles dabei&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/gist.de.html gist]: Erweiterung welche aus einem gist Inserttag den jeweiligen Javascript Code lädt&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Inhaltselement_%22Aufz%C3%A4hlung%22_mit_%22Textarea%22_statt_%22Textfeld%22_f%C3%BCr_die_Listeneintr%C3%A4ge</id>
		<title>Inhaltselement &quot;Aufzählung&quot; mit &quot;Textarea&quot; statt &quot;Textfeld&quot; für die Listeneinträge</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Inhaltselement_%22Aufz%C3%A4hlung%22_mit_%22Textarea%22_statt_%22Textfeld%22_f%C3%BCr_die_Listeneintr%C3%A4ge"/>
				<updated>2012-03-09T10:46:18Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: Die Seite wurde neu angelegt: „Category:Admin HOWTOS Category:Dev HOWTOS Category:Dev Snippets {{AppliesTo |Version=ab 2.9 }}  ==Einleitung==  Basierend auf dieser Anforderung aus d…“&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Dev HOWTOS]]&lt;br /&gt;
[[Category:Dev Snippets]]&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=ab 2.9&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Einleitung==&lt;br /&gt;
&lt;br /&gt;
Basierend auf dieser Anforderung aus dem Forum: [https://www.contao-community.de/showthread.php?28549-quot-TextAreas-quot-im-Backend-f%FCr-Inhaltselement-quot-Aufz%E4hlung-quot &amp;quot;TextAreas&amp;quot; im Backend für Inhaltselement &amp;quot;Aufzählung&amp;quot;] gibt es hier eine Anleitung wie Felder für die Listeneinträge angepasst werden können.&lt;br /&gt;
&lt;br /&gt;
==Voraussetzung==&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen dass die Erweiterung [http://www.contao.org/erweiterungsliste/view/MultiColumnWizard.html [MultiColumnWizard]] installiert ist. Details dazu findet man im Wiki unter [[MultiColumnWizard]].&lt;br /&gt;
&lt;br /&gt;
==Anpassungen==&lt;br /&gt;
&lt;br /&gt;
Zur Änderung der DCA Definition folgenden Eintrag in ''system/config/dcaconfig.php'':&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
# Change inputtype of CE listing from text to textarea&lt;br /&gt;
$GLOBALS['TL_DCA']['tl_content']['fields']['listitems']['inputType'] = 'multiColumnWizard';&lt;br /&gt;
$GLOBALS['TL_DCA']['tl_content']['fields']['listitems']['eval']['style'] = 'width: 100%;';&lt;br /&gt;
$GLOBALS['TL_DCA']['tl_content']['fields']['listitems']['eval']['mandatory'] = true;&lt;br /&gt;
$GLOBALS['TL_DCA']['tl_content']['fields']['listitems']['eval']['columnFields'] = array&lt;br /&gt;
          (&lt;br /&gt;
             'item' =&amp;gt; array&lt;br /&gt;
             (&lt;br /&gt;
              'label' =&amp;gt; &amp;amp;$GLOBALS['TL_LANG']['tl_content']['listitems'],&lt;br /&gt;
              'exclude' =&amp;gt; true,&lt;br /&gt;
              'inputType' =&amp;gt; 'textarea',&lt;br /&gt;
              'eval' =&amp;gt; array('mandatory' =&amp;gt; true, 'preserveTags' =&amp;gt; true, 'style' =&amp;gt; 'width: 100%; height: 50px;')&lt;br /&gt;
             )&lt;br /&gt;
          );&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
{{Anmerkung|&lt;br /&gt;
Mittels dieser Definition wird das Kindwidget '''item''' bereitgestellt, um die Listeneinträge aufzunehmen.&lt;br /&gt;
&lt;br /&gt;
Das Attribut '''preserveTags''' im Eval-Array des Kindwidgets wird benötigt, um HTML im Listeneintrag verwenden zu können.&lt;br /&gt;
&lt;br /&gt;
Die Höhe des Textarea kann mittels '''height''' im Eval-Array des Kindwidgets geändert werden.}}&lt;br /&gt;
&lt;br /&gt;
Anpassung des Templates ''ce_list'' für korrekte FE Ausgaben in '''Zeile 10''':&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;lt;?php if ($item['class']): ?&amp;gt; class=&amp;quot;&amp;lt;?php echo $item['class']; ?&amp;gt;&amp;quot;&amp;lt;?php endif; ?&amp;gt;&amp;gt;&amp;lt;?php echo $item['content']['item']; ?&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
{{Achtung|Das Template nicht direkt ändern sondern immer updatesicher durch kopieren in den Ordern ''templates''.}}{{Hinweis|Statt ''echo $item['content']'' muss ''echo $item['content']['item']'' verwendet werden.}}{{Anmerkung|Ab Contao 2.10.x müssen sind ggf. beide Templates (ce_list.html5 und ce_list.xhtml) zu anzupassen.}}&lt;br /&gt;
&lt;br /&gt;
==Beispiel==&lt;br /&gt;
&lt;br /&gt;
Definition einer Auflistung im Backend:&lt;br /&gt;
&lt;br /&gt;
[[Datei:textarea_listing_backend.jpg|Screenshot der Definition im Backend]]&lt;br /&gt;
&lt;br /&gt;
Ausgabe der Liste im Frontend:&lt;br /&gt;
&lt;br /&gt;
[[Datei:textarea_listing_frontend.jpg|Screenshot der Ausgabe im Frontend]]&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Datei:Textarea_listing_backend.jpg</id>
		<title>Datei:Textarea listing backend.jpg</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Datei:Textarea_listing_backend.jpg"/>
				<updated>2012-03-09T10:42:20Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: Screenshot der Definition im Backend&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot der Definition im Backend&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Datei:Textarea_listing_frontend.jpg</id>
		<title>Datei:Textarea listing frontend.jpg</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Datei:Textarea_listing_frontend.jpg"/>
				<updated>2012-03-09T10:41:28Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: Screenshot der Ausgabe im Frontend&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot der Ausgabe im Frontend&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Hook_%27addCustomRegexp%27_f%C3%BCr_Formulare_freischalten</id>
		<title>Hook 'addCustomRegexp' für Formulare freischalten</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Hook_%27addCustomRegexp%27_f%C3%BCr_Formulare_freischalten"/>
				<updated>2012-03-07T12:25:44Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Dev HOWTOS]]&lt;br /&gt;
[[Category:Dev Snippets]]&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=ab 2.9&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Einleitung==&lt;br /&gt;
&lt;br /&gt;
Bei der Implementation des ''addCustomRegexp''-Hook kann es notwendig sein, diesen im Formulargenerator in der Liste des Feldes &amp;quot;Eingabeprüfung&amp;quot; zur Verfügung zu stellen, um diesen zur Validierung beim Absenden des Formulars zu nutzen.&lt;br /&gt;
&lt;br /&gt;
Diese Anleitung stellt kurz dar, wie diese Freischaltung der Implementation ausgeführt werden kann.&lt;br /&gt;
&lt;br /&gt;
==Voraussetzung==&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen dass bereits eine eigene Implementation des ''addCustomRegexp''-Hook als Extension im System existiert.&lt;br /&gt;
&lt;br /&gt;
Für diese Anleitung wird als Name für den Regulären Ausdruck '''myRegExp''' angenommen. Diese kann beliebig geändert werden.&lt;br /&gt;
&lt;br /&gt;
==Code für Formulargenerator ==&lt;br /&gt;
&lt;br /&gt;
Zur Freischaltung Eintrag in ''system/config/dcaconfig.php'':&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_DCA']['tl_form_field']['fields']['rgxp']['options'][] = 'myRegExp';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
{{Hinweis|Dieser Eintrag fügt den Regulären Ausdruck der Liste des Feldes &amp;quot;Eingabeprüfung&amp;quot; in der Formular Definition hinzu}}{{Anmerkung|Dies kann ggf. auch innerhalb der Extension in ''dca/tl_form_field.php'' eingefügt werden.}}&lt;br /&gt;
&lt;br /&gt;
Zur Übersetzung Eintrag in ''system/config/langconfig.php'':&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_form_field']['myRegExp'] = array('My Regular Expression', 'Accepts somthing special.');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
{{Anmerkung|Dies kann ggf. auch innerhalb der Extension in ''languages/de/tl_form_field.php'' eingefügt werden.}}{{Anmerkung|Für mehrsprachige Übersetzung in ''system/config/dcaconfig.php'' kann wie folgt vorgegangen werden: [http://www.contao.org/de/custom-configurations.html#translations Bezeichnungen und Übersetzungen anpassen]}}{{Achtung|Bei Verwendung einer eigenen Extension muss der Name so gewählt sein, dass er [[klein geschrieben]] und [[alphabetisch nach]] ''backend'' kommen würde. Sonst wird diese Konfiguration zu früh geladen und von der eigentlichen DCA Definition überschrieben.}}&lt;br /&gt;
&lt;br /&gt;
==Code für Elementgenerator ==&lt;br /&gt;
&lt;br /&gt;
Bei Verwendung der Extension [http://www.contao.org/de/extension-list/view/dma_elementgenerator.de.html [dma_elementgenerator]] kann man den eigenen Regulären Ausdruck auch dort verwenden.&lt;br /&gt;
&lt;br /&gt;
Zur Freischaltung Eintrag in ''system/config/dcaconfig.php'':&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_DCA']['tl_dma_eg_fields']['fields']['eval_rgxp']['options'][] = 'myRegExp';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
{{Hinweis|Dieser Eintrag fügt den Regulären Ausdruck der Liste des Feldes &amp;quot;Eingabeprüfung&amp;quot; in der Element Definition hinzu}}{{Anmerkung|Dies kann ggf. auch innerhalb der Extension in ''dca/tl_dma_eg_fields.php'' eingefügt werden.}}&lt;br /&gt;
&lt;br /&gt;
Zur Übersetzung Eintrag in ''system/config/langconfig.php'':&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_dma_eg_fields']['eval_rgxp_select']['myRegExp'] = array('My Regular Expression', 'Accepts somthing special.');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
{{Anmerkung|Dies kann ggf. auch innerhalb der Extension in ''languages/de/tl_dma_eg_fields.php'' eingefügt werden.}}{{Anmerkung|Für mehrsprachige Übersetzung in ''system/config/dcaconfig.php'' kann wie folgt vorgegangen werden: [http://www.contao.org/de/custom-configurations.html#translations Bezeichnungen und Übersetzungen anpassen]}}{{Achtung|Bei Verwendung einer eigenen Extension muss der Name so gewählt sein, dass er [[klein geschrieben]] und [[alphabetisch nach]] ''dma_elementgenerator'' kommen würde. Sonst wird diese Konfiguration zu früh geladen und von der eigentlichen DCA Definition überschrieben.}}&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Hook_%27addCustomRegexp%27_f%C3%BCr_Formulare_freischalten</id>
		<title>Hook 'addCustomRegexp' für Formulare freischalten</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Hook_%27addCustomRegexp%27_f%C3%BCr_Formulare_freischalten"/>
				<updated>2012-03-07T11:31:26Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Dev HOWTOS]]&lt;br /&gt;
[[Category:Dev Snippets]]&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=ab 2.9&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Einleitung==&lt;br /&gt;
&lt;br /&gt;
Bei der Implementation des ''addCustomRegexp''-Hook kann es notwendig sein, diesen im Formulargenerator in der Liste des Feldes &amp;quot;Eingabeprüfung&amp;quot; zur Verfügung zu stellen, um diesen zur Validierung beim Absenden des Formulars zu nutzen.&lt;br /&gt;
&lt;br /&gt;
Diese Anleitung stellt kurz dar, wie diese Freischaltung der Implementation ausgeführt werden kann.&lt;br /&gt;
&lt;br /&gt;
==Voraussetzung==&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen dass bereits eine eigene Implementation des ''addCustomRegexp''-Hook als Extension im System existiert.&lt;br /&gt;
&lt;br /&gt;
Für diese Anleitung wird als Name für den Regulären Ausdruck '''myRegExp''' angenommen. Diese kann beliebig geändert werden.&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&lt;br /&gt;
Zur Freischaltung Eintrag in ''system/config/dcaconfig.php'':&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_DCA']['tl_form_field']['fields']['rgxp']['options'][] = 'myRegExp';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
{{Hinweis|Dieser Eintrag fügt den Regulären Ausdruck der Liste des Feldes &amp;quot;Eingabeprüfung&amp;quot; in der Formular Definition hinzu}}{{Anmerkung|Dies kann ggf. auch innerhalb der Extension in ''dca/tl_form_field.php'' eingefügt werden.}}&lt;br /&gt;
&lt;br /&gt;
Zur Übersetzung Eintrag in ''system/config/langconfig.php'':&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_form_field']['myRegExp'] = array('My Regular Expression', 'Accepts somthing special.');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
{{Anmerkung|Dies kann ggf. auch innerhalb der Extension in ''languages/de/tl_form_field.php'' eingefügt werden.}}{{Anmerkung|Für mehrsprachige Übersetzung in ''system/config/dcaconfig.php'' kann wie folgt vorgegangen werden: [http://www.contao.org/de/custom-configurations.html#translations Bezeichnungen und Übersetzungen anpassen]}}&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Hook_%27addCustomRegexp%27_f%C3%BCr_Formulare_freischalten</id>
		<title>Hook 'addCustomRegexp' für Formulare freischalten</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Hook_%27addCustomRegexp%27_f%C3%BCr_Formulare_freischalten"/>
				<updated>2012-03-07T11:28:34Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Code */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Dev HOWTOS]]&lt;br /&gt;
[[Category:Dev Snippets]]&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=ab 2.9&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Einleitung==&lt;br /&gt;
&lt;br /&gt;
Bei der Implementation des ''addCustomRegexp''-Hook kann es notwendig sein, diesen im Formulargenerator in der Liste des Feldes &amp;quot;Eingabeprüfung&amp;quot; zur Verfügung zu stellen, um diesen zur Validierung beim Absenden des Formulars zu nutzen.&lt;br /&gt;
&lt;br /&gt;
Diese Anleitung stellt kurz dar, wie diese Freischaltung der Implementation ausgeführt werden kann.&lt;br /&gt;
&lt;br /&gt;
==Voraussetzung==&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen dass bereits eine eigene Implementation des ''addCustomRegexp''-Hook als Extension im System existiert.&lt;br /&gt;
&lt;br /&gt;
Für diese Anleitung wird als Name für den Regulären Ausdruck '''myRegExp''' angenommen. Diese kann beliebig geändert werden.&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&lt;br /&gt;
Zur Freischaltung Eintrag in ''system/config/dcaconfig.php'':&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_DCA']['tl_form_field']['fields']['rgxp']['options'][] = 'myRegExp';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
{{Hinweis|Dieser Eintrag fügt den Regulären Ausdruck der Liste des Feldes &amp;quot;Eingabeprüfung&amp;quot; in der Formular Definition hinzu}}{{Anmerkung|Dies kann ggf. auch innerhalb der Extension in ''dca/tl_form_field.php'' eingefügt werden.}}&lt;br /&gt;
&lt;br /&gt;
Zur Übersetzung Eintrag in ''system/config/langconfig.php'':&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_form_field']['myRegExp'] = array('My Regular Expression', 'Accepts somthing special.');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
{{Anmerkung|Dies kann ggf. auch innerhalb der Extension in ''languages/de/tl_form_field.php'' eingefügt werden.}}{{Anmerkung|Für mehrsprachige Übersetzung kann wie folgt vorgegangen werden: [www.contao.org/de/custom-configurations.html#translations]}}&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Hook_%27addCustomRegexp%27_f%C3%BCr_Formulare_freischalten</id>
		<title>Hook 'addCustomRegexp' für Formulare freischalten</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Hook_%27addCustomRegexp%27_f%C3%BCr_Formulare_freischalten"/>
				<updated>2012-03-07T11:26:59Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: Die Seite wurde neu angelegt: „{{stub}}  Category:Admin HOWTOS Category:Dev HOWTOS Category:Dev Snippets {{AppliesTo |Version=ab 2.9 }}  ==Einleitung==  Bei der Implementation des '…“&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:Dev HOWTOS]]&lt;br /&gt;
[[Category:Dev Snippets]]&lt;br /&gt;
{{AppliesTo&lt;br /&gt;
|Version=ab 2.9&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Einleitung==&lt;br /&gt;
&lt;br /&gt;
Bei der Implementation des ''addCustomRegexp''-Hook kann es notwendig sein, diesen im Formulargenerator in der Liste des Feldes &amp;quot;Eingabeprüfung&amp;quot; zur Verfügung zu stellen, um diesen zur Validierung beim Absenden des Formulars zu nutzen.&lt;br /&gt;
&lt;br /&gt;
Diese Anleitung stellt kurz dar, wie diese Freischaltung der Implementation ausgeführt werden kann.&lt;br /&gt;
&lt;br /&gt;
==Voraussetzung==&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen dass bereits eine eigene Implementation des ''addCustomRegexp''-Hook als Extension im System existiert.&lt;br /&gt;
&lt;br /&gt;
Für diese Anleitung wird als Name für den Regulären Ausdruck '''myRegExp''' angenommen. Diese kann beliebig geändert werden.&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&lt;br /&gt;
Zur Freischaltung Eintrag in ''system/config/dcaconfig.php'':&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_DCA']['tl_form_field']['fields']['rgxp']['options'][] = 'myRegExp';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
{{Hinweis|Dieser Eintrag fügt den Regulären Ausdruck der Liste des Feldes &amp;quot;Eingabeprüfung&amp;quot; in der Formular Definition hinzu}}{{Anmerkung|Dies kann ggf. auch innerhalb der Extension in ''dc/tl_form_field.php'' eingefügt werden.}}&lt;br /&gt;
&lt;br /&gt;
Zur Übersetzung Eintrag in ''system/config/langconfig.php'':&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_LANG']['tl_form_field']['myRegExp'] = array('My Regular Expression', 'Accepts somthing special.');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
{{Anmerkung|Für mehrsprachige Übersetzung kann wie folgt vorgegangen werden: www.contao.org/de/custom-configurations.html#translations}}&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/InKuerzeVerfuegbar</id>
		<title>InKuerzeVerfuegbar</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/InKuerzeVerfuegbar"/>
				<updated>2012-03-07T10:27:28Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Cliff Parnitzky */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
Um zu vermeiden, dass parallele Entwicklung unnötige Ressourcen benötigt, können Entwickler hier Erweiterung eintragen, die &amp;quot;in Kürze verfügbar&amp;quot; sein sollen.&lt;br /&gt;
&lt;br /&gt;
== ETES GmbH ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Jan Theofel, Marc Schneider, Sebastian Leitz&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:contao@etes.de E-Mail] [http://www.etes.de/ Webseite]&lt;br /&gt;
&lt;br /&gt;
* (Neues) Trackback-Modul für News (andere Features als das bestehende)&lt;br /&gt;
* (Neues) Gravatar-Modul (Gravatare auch für Kommentare etc.)&lt;br /&gt;
* Wordpress-Import (basiert auf den oberen beiden)&lt;br /&gt;
* htaccess-Erweiterung zur Konfiguration der zentralen .htaccess mit der Möglichkeit, dass Module dort per Hook eigene Definitionen einfügen können&lt;br /&gt;
* Erweiterungen für unsere Jobbörse (Onlinebewerbung/Bewertung von Bewerbern/Anbindung an Paymentsysteme)&lt;br /&gt;
&lt;br /&gt;
== certo web &amp;amp; design GmbH ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Yanick Witschi (aka Toflar)&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:yanick.witschi@certo-net.ch E-Mail] [http://www.certo-net.ch Webseite]&lt;br /&gt;
&lt;br /&gt;
* Votebox, Prinzip der Votebox von Dropbox&lt;br /&gt;
&lt;br /&gt;
== InfinitySoft - Innovative Softwarelösungen ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Tristan Lins (aka tril)&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:tristan.lins@infinitysoft.de E-Mail] [http://www.infinitysoft.de Webseite]&lt;br /&gt;
&lt;br /&gt;
* .htaccess Editor [https://github.com/InfinitySoft/contao-htaccess github] [http://www.contao.org/erweiterungsliste/view/htaccess.20000008.de.html ER]&lt;br /&gt;
Editor zum bequemen Einrichten der .htaccess Datei aus dem Backend heraus.&lt;br /&gt;
* Open ER2 Client [https://github.com/InfinitySoft/contao-open-er2-client github]&lt;br /&gt;
Client Library um Extensions innerhalb einer Contao Installation zu verwalten. Dies ist '''nur''' eine Library ohne grafische Oberfläche, die dazu genutzt werden kann einen neuen ER Client für das aktuelle Extension Repository zu entwickeln.&lt;br /&gt;
&lt;br /&gt;
== BugBuster ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Glen Langer&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [http://www.contao-community.de/ Forum] | [http://www.contao.Glen-Langer.de/ Webseite]&lt;br /&gt;
&lt;br /&gt;
* Idee: moopeel - diese nette Ecke auf Mootoolsbasis (no Flash!)&lt;br /&gt;
* Idee: BotDetection Add-on: Suchmaschinen Statistik&lt;br /&gt;
&lt;br /&gt;
== MEN AT WORK ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Andreas Isaak, David Maack&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:cms@men-at-work.de E-Mail]&lt;br /&gt;
&lt;br /&gt;
* recursiveDownload: Rekursive Downloads basierend auf dem Benutzerverzeichnis&lt;br /&gt;
* recursiveGallery: Rekursive Galerie basierend auf dem Benutzerverzeichnis&lt;br /&gt;
* [http://www.contao-forge.org/projects/language4translation/issues language4translation]: Exportierte Sprachtexte im Frontend übersetzen und später wieder via language2file importieren&lt;br /&gt;
* dashboard: Erweiterung der Dashboard Extension von Andreas Schempp&lt;br /&gt;
* [http://www.contao-forge.org/projects/backendfavourites backendFavourites] Favouriten/Sprungmarker für das Backend definieren&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/menatwork Übersicht all unserer Entwicklungen]&lt;br /&gt;
&lt;br /&gt;
== Andreas Schempp ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Andreas Schempp&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:andreas@schempp.ch andreas@schempp.ch]&lt;br /&gt;
&lt;br /&gt;
* ajaxform: Formular per Ajax senden und Antwort per Ajax laden&lt;br /&gt;
* aliascompiler: Seitenalias aus Prefix und Postfix zusammenfügen (z.B. damit der Anwender nur Postfix bearbeiten kann)&lt;br /&gt;
* articlelanguage: Artikel in einer zweiten Sprache zur Verfügung stellen&lt;br /&gt;
* autocompletetextfield: Feld das Vorschläge für Eingabe (z.B. Tags) macht&lt;br /&gt;
* barcode: Generierung von QRcode und MS Tag Bildern&lt;br /&gt;
* blog: Umfangreiche Blog-Funktionen (ProofOfConcept)&lt;br /&gt;
* documentsearch: Dokumente (PDF, DOC, PPT, XLS) in die Contao-Suche aufnehmen (erfordert Server-Binaries)&lt;br /&gt;
* e2photogallery: Contao Extension für die [http://www.e2interactive.com/e2_photo_gallery/ e2 Photo Gallery]&lt;br /&gt;
* exams: Ein- oder mehrseitige Prüfungen mit Punkte-System und Resultat-Auswertung&lt;br /&gt;
* fancyavatar: Avatar mittels Ajax hochladen und zuschneiden&lt;br /&gt;
* folderpage: Ordner-Seiten zur Gruppierung der Seitenstruktur&lt;br /&gt;
* htmlpurifier: Integration des [http://htmlpurifier.org/ HTML Purifier] in Contao&lt;br /&gt;
* importoption: Options-Daten für Formularfelder (Select, Radio, Checkbox) aus CSV importieren&lt;br /&gt;
* joomlaboard_import: JoomlaBoard in Contao Helpdesk Erweiterung migrieren&lt;br /&gt;
* member_album: Fotoalbum für Mitglieder anlegen&lt;br /&gt;
* memberfiles: Zeigt im Backend die Dateien aus dem Benutzerverzeichnis zum Download an&lt;br /&gt;
* mobile_stylesheets: Stylesheet-Targeting für iPhone, iPad und Co&lt;br /&gt;
* news_loader: Lädt beim Scrollen der Seite automatisch die nächsten News nach&lt;br /&gt;
* newsalert: Automatische Newsletter aus News-Archiven&lt;br /&gt;
* newscategories: Kategorisierung und Auflistung von News-Beiträgen (über Archive hinweg)&lt;br /&gt;
* newsletter-article: Newsletter aus Artikel generieren&lt;br /&gt;
* openid-consumer: Anmelden bei Contao mittels OpenID (sehr altes Modul...)&lt;br /&gt;
* pagepdf: PDF aus Seite generieren, oder Seiten im Backend direkt als PDF ausgeben (via kostenpflichtigem [http://html2pdf.seven49.net/ HTML2PDF]&lt;br /&gt;
* previewdownload: Download-Datei mit Vorschau. Kann automatisch aus PDF ein Bild generieren, wenn imagemagick verfügbar ist.&lt;br /&gt;
* qtplayer: Quicktime-Video und -Audio Dateien einbinden&lt;br /&gt;
* rootsearch: Suche über mehrere Root-Seiten&lt;br /&gt;
* shibboleth: Anmeldung an Contao mittels [http://de.wikipedia.org/wiki/Shibboleth_(Internet) Shibboleth]&lt;br /&gt;
* singlegallery: Gibt das erste Galeriebild aus, erlaubt die Navigation in der lightbox/mediabox zu den restlichen Bildern&lt;br /&gt;
* siximages: Galerie-Modul von [http://www.soleil-royal.ch/lage.html Soleil Royal]&lt;br /&gt;
* z_modulealias: Alias-Modul welches andere Module automatisch entsprechend der aktiven Seite einbindet (praktisch für mehrsprachige Seiten)&lt;br /&gt;
* zz_compressor: Automatische Komprimierung und Zusammeführung ALLER lokalen CSS- und JS-Dateien auf der Seite&lt;br /&gt;
&lt;br /&gt;
== Küstenschmiede - Ideen, Software &amp;amp; Design ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Jürgen Witte, Matthias Eilers&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:info@kuestenschmiede.de E-Mail] [http://www.kuestenschmiede.info Webseite]&lt;br /&gt;
&lt;br /&gt;
* cfs_forum: Diskussionsforum mit themebarem jQuery UI und jQuery Mobile Frontend&lt;br /&gt;
&lt;br /&gt;
== hofemich ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Michael Hofer&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [http://www.contao-community.de/ Forum]&lt;br /&gt;
&lt;br /&gt;
* isotope_request: Ermöglicht die Verknüpfung mit einem Formular, für Produkt-Anfragen&lt;br /&gt;
&lt;br /&gt;
== Cliff Parnitzky ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Cliff Parnitzky&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:contao@cliff-parnitzky.de contao@cliff-parnitzky.de]&lt;br /&gt;
&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/BirthdayMailer.html BirthdayMailer]: fertig&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/EfgMemberSelectMailer.html EfgMemberSelectMailer]: fertig&lt;br /&gt;
* ExtendedListing: Erweitert das Listing Modul um die Möglichkeit, Tabellen miteinander zu verknüpfen (SQL JOIN)&lt;br /&gt;
&lt;br /&gt;
== IMS Internet Marketing Solutions Ltd. ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Dominik Zogg&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:dz@erfolgreiche-internetseiten.ch E-Mail]&lt;br /&gt;
&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/calendarextended.de.html calendarextended]: Erweiterung des Standardkalenders, von einer Kontaktperson bis hin zu einer Registrierung ist alles dabei&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/gist.de.html gist]: Erweiterung welche aus einem gist Inserttag den jeweiligen Javascript Code lädt&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/InKuerzeVerfuegbar</id>
		<title>InKuerzeVerfuegbar</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/InKuerzeVerfuegbar"/>
				<updated>2012-01-10T13:02:45Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Cliff Parnitzky */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
Um zu vermeiden, dass parallele Entwicklung unnötige Ressourcen benötigt, können Entwickler hier Erweiterung eintragen, die &amp;quot;in Kürze verfügbar&amp;quot; sein sollen.&lt;br /&gt;
&lt;br /&gt;
== ETES GmbH ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Jan Theofel, Marc Schneider, Sebastian Leitz&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:contao@etes.de E-Mail] [http://www.etes.de/ Webseite]&lt;br /&gt;
&lt;br /&gt;
* (Neues) Trackback-Modul für News (andere Features als das bestehende)&lt;br /&gt;
* (Neues) Gravatar-Modul (Gravatare auch für Kommentare etc.)&lt;br /&gt;
* Wordpress-Import (basiert auf den oberen beiden)&lt;br /&gt;
* htaccess-Erweiterung zur Konfiguration der zentralen .htaccess mit der Möglichkeit, dass Module dort per Hook eigene Definitionen einfügen können&lt;br /&gt;
* Erweiterungen für unsere Jobbörse (Onlinebewerbung/Bewertung von Bewerbern/Anbindung an Paymentsysteme)&lt;br /&gt;
&lt;br /&gt;
== certo web &amp;amp; design GmbH ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Yanick Witschi (aka Toflar)&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:yanick.witschi@certo-net.ch E-Mail] [http://www.certo-net.ch Webseite]&lt;br /&gt;
&lt;br /&gt;
* Votebox, Prinzip der Votebox von Dropbox&lt;br /&gt;
&lt;br /&gt;
== InfinitySoft - Innovative Softwarelösungen ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Tristan Lins (aka tril)&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:tristan.lins@infinitysoft.de E-Mail] [http://www.infinitysoft.de Webseite]&lt;br /&gt;
&lt;br /&gt;
* .htaccess Editor [https://github.com/InfinitySoft/contao-htaccess github] [http://www.contao.org/erweiterungsliste/view/htaccess.20000008.de.html ER]&lt;br /&gt;
Editor zum bequemen Einrichten der .htaccess Datei aus dem Backend heraus.&lt;br /&gt;
* Open ER2 Client [https://github.com/InfinitySoft/contao-open-er2-client github]&lt;br /&gt;
Client Library um Extensions innerhalb einer Contao Installation zu verwalten. Dies ist '''nur''' eine Library ohne grafische Oberfläche, die dazu genutzt werden kann einen neuen ER Client für das aktuelle Extension Repository zu entwickeln.&lt;br /&gt;
&lt;br /&gt;
== BugBuster ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Glen Langer&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [http://www.contao-community.de/ Forum] | [http://www.contao.Glen-Langer.de/ Webseite]&lt;br /&gt;
&lt;br /&gt;
* Idee: moopeel - diese nette Ecke auf Mootoolsbasis (no Flash!)&lt;br /&gt;
* Idee: BotDetection Add-on: Suchmaschinen Statistik&lt;br /&gt;
&lt;br /&gt;
== MEN AT WORK ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Andreas Isaak, David Maack&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:cms@men-at-work.de E-Mail]&lt;br /&gt;
&lt;br /&gt;
* recursiveDownload: Rekursive Downloads basierend auf dem Benutzerverzeichnis&lt;br /&gt;
* recursiveGallery: Rekursive Galerie basierend auf dem Benutzerverzeichnis&lt;br /&gt;
* [http://www.contao-forge.org/projects/language4translation/issues language4translation]: Exportierte Sprachtexte im Frontend übersetzen und später wieder via language2file importieren&lt;br /&gt;
* dashboard: Erweiterung der Dashboard Extension von Andreas Schempp&lt;br /&gt;
* [http://www.contao-forge.org/projects/backendfavourites backendFavourites] Favouriten/Sprungmarker für das Backend definieren&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/menatwork Übersicht all unserer Entwicklungen]&lt;br /&gt;
&lt;br /&gt;
== Andreas Schempp ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Andreas Schempp&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:andreas@schempp.ch andreas@schempp.ch]&lt;br /&gt;
&lt;br /&gt;
* ajaxform: Formular per Ajax senden und Antwort per Ajax laden&lt;br /&gt;
* aliascompiler: Seitenalias aus Prefix und Postfix zusammenfügen (z.B. damit der Anwender nur Postfix bearbeiten kann)&lt;br /&gt;
* articlelanguage: Artikel in einer zweiten Sprache zur Verfügung stellen&lt;br /&gt;
* autocompletetextfield: Feld das Vorschläge für Eingabe (z.B. Tags) macht&lt;br /&gt;
* barcode: Generierung von QRcode und MS Tag Bildern&lt;br /&gt;
* blog: Umfangreiche Blog-Funktionen (ProofOfConcept)&lt;br /&gt;
* documentsearch: Dokumente (PDF, DOC, PPT, XLS) in die Contao-Suche aufnehmen (erfordert Server-Binaries)&lt;br /&gt;
* e2photogallery: Contao Extension für die [http://www.e2interactive.com/e2_photo_gallery/ e2 Photo Gallery]&lt;br /&gt;
* exams: Ein- oder mehrseitige Prüfungen mit Punkte-System und Resultat-Auswertung&lt;br /&gt;
* fancyavatar: Avatar mittels Ajax hochladen und zuschneiden&lt;br /&gt;
* folderpage: Ordner-Seiten zur Gruppierung der Seitenstruktur&lt;br /&gt;
* htmlpurifier: Integration des [http://htmlpurifier.org/ HTML Purifier] in Contao&lt;br /&gt;
* importoption: Options-Daten für Formularfelder (Select, Radio, Checkbox) aus CSV importieren&lt;br /&gt;
* joomlaboard_import: JoomlaBoard in Contao Helpdesk Erweiterung migrieren&lt;br /&gt;
* member_album: Fotoalbum für Mitglieder anlegen&lt;br /&gt;
* memberfiles: Zeigt im Backend die Dateien aus dem Benutzerverzeichnis zum Download an&lt;br /&gt;
* mobile_stylesheets: Stylesheet-Targeting für iPhone, iPad und Co&lt;br /&gt;
* news_loader: Lädt beim Scrollen der Seite automatisch die nächsten News nach&lt;br /&gt;
* newsalert: Automatische Newsletter aus News-Archiven&lt;br /&gt;
* newscategories: Kategorisierung und Auflistung von News-Beiträgen (über Archive hinweg)&lt;br /&gt;
* newsletter-article: Newsletter aus Artikel generieren&lt;br /&gt;
* openid-consumer: Anmelden bei Contao mittels OpenID (sehr altes Modul...)&lt;br /&gt;
* pagepdf: PDF aus Seite generieren, oder Seiten im Backend direkt als PDF ausgeben (via kostenpflichtigem [http://html2pdf.seven49.net/ HTML2PDF]&lt;br /&gt;
* previewdownload: Download-Datei mit Vorschau. Kann automatisch aus PDF ein Bild generieren, wenn imagemagick verfügbar ist.&lt;br /&gt;
* qtplayer: Quicktime-Video und -Audio Dateien einbinden&lt;br /&gt;
* rootsearch: Suche über mehrere Root-Seiten&lt;br /&gt;
* shibboleth: Anmeldung an Contao mittels [http://de.wikipedia.org/wiki/Shibboleth_(Internet) Shibboleth]&lt;br /&gt;
* singlegallery: Gibt das erste Galeriebild aus, erlaubt die Navigation in der lightbox/mediabox zu den restlichen Bildern&lt;br /&gt;
* siximages: Galerie-Modul von [http://www.soleil-royal.ch/lage.html Soleil Royal]&lt;br /&gt;
* z_modulealias: Alias-Modul welches andere Module automatisch entsprechend der aktiven Seite einbindet (praktisch für mehrsprachige Seiten)&lt;br /&gt;
* zz_compressor: Automatische Komprimierung und Zusammeführung ALLER lokalen CSS- und JS-Dateien auf der Seite&lt;br /&gt;
&lt;br /&gt;
== Küstenschmiede - Ideen, Software &amp;amp; Design ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Jürgen Witte, Matthias Eilers&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:info@kuestenschmiede.de E-Mail] [http://www.kuestenschmiede.info Webseite]&lt;br /&gt;
&lt;br /&gt;
* cfs_forum: Diskussionsforum mit themebarem jQuery UI und jQuery Mobile Frontend&lt;br /&gt;
&lt;br /&gt;
== hofemich ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Michael Hofer&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [http://www.contao-community.de/ Forum]&lt;br /&gt;
&lt;br /&gt;
* isotope_request: Ermöglicht die Verknüpfung mit einem Formular, für Produkt-Anfragen&lt;br /&gt;
&lt;br /&gt;
== Cliff Parnitzky ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Cliff Parnitzky&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:contao@cliff-parnitzky.de contao@cliff-parnitzky.de]&lt;br /&gt;
&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/BirthdayMailer.html BirthdayMailer]: fertig als Beta Release&lt;br /&gt;
* ExtendedListing: Erweitert das Listing Modul um die Möglichkeit, Tabellen miteinander zu verknüpfen (SQL JOIN)&lt;br /&gt;
* EfgMemberSelectMailer: Konfiguration von Emails an Mitglieder die in EFG Formularen mittels [http://www.contao.org/de/extension-list/view/EfgMemberSelect.html EfgMemberSelect] ausgewählt wurden&lt;br /&gt;
&lt;br /&gt;
== IMS Internet Marketing Solutions Ltd. ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Dominik Zogg&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:dz@erfolgreiche-internetseiten.ch E-Mail]&lt;br /&gt;
&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/calendarextended.de.html calendarextended]: Erweiterung des Standardkalenders, von einer Kontaktperson bis hin zu einer Registrierung ist alles dabei&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/gist.de.html gist]: Erweiterung welche aus einem gist Inserttag den jeweiligen Javascript Code lädt&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/InKuerzeVerfuegbar</id>
		<title>InKuerzeVerfuegbar</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/InKuerzeVerfuegbar"/>
				<updated>2011-11-11T11:56:22Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Cliff Parnitzky */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
Um zu vermeiden, dass parallele Entwicklung unnötige Ressourcen benötigt, können Entwickler hier Erweiterung eintragen, die &amp;quot;in Kürze verfügbar&amp;quot; sein sollen.&lt;br /&gt;
&lt;br /&gt;
== ETES GmbH ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Jan Theofel, Marc Schneider, Sebastian Leitz&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:contao@etes.de E-Mail] [http://www.etes.de/ Webseite]&lt;br /&gt;
&lt;br /&gt;
* (Neues) Trackback-Modul für News (andere Features als das bestehende)&lt;br /&gt;
* (Neues) Gravatar-Modul (Gravatare auch für Kommentare etc.)&lt;br /&gt;
* Wordpress-Import (basiert auf den oberen beiden)&lt;br /&gt;
* htaccess-Erweiterung zur Konfiguration der zentralen .htaccess mit der Möglichkeit, dass Module dort per Hook eigene Definitionen einfügen können&lt;br /&gt;
* Erweiterungen für unsere Jobbörse (Onlinebewerbung/Bewertung von Bewerbern/Anbindung an Paymentsysteme)&lt;br /&gt;
&lt;br /&gt;
== certo web &amp;amp; design GmbH ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Yanick Witschi (aka Toflar)&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:yanick.witschi@certo-net.ch E-Mail] [http://www.certo-net.ch Webseite]&lt;br /&gt;
&lt;br /&gt;
* Votebox, Prinzip der Votebox von Dropbox&lt;br /&gt;
&lt;br /&gt;
== InfinitySoft - Innovative Softwarelösungen ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Tristan Lins (aka tril)&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:tristan.lins@infinitysoft.de E-Mail] [http://www.infinitysoft.de Webseite]&lt;br /&gt;
&lt;br /&gt;
zur Zeit nur Projektpflege oder kleine Erweiterungen. Große Projekte sind zur Zeit nicht in Entwicklung.&lt;br /&gt;
&lt;br /&gt;
== BugBuster ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Glen Langer&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [http://www.contao-community.de/ Forum] | [http://www.contao.Glen-Langer.de/ Webseite]&lt;br /&gt;
&lt;br /&gt;
* [http://de.contaowiki.org/Replace_Language Replace Language] - mittlerweile fertig.&lt;br /&gt;
* Idee: moopeel - diese nette Ecke auf Mootoolsbasis (no Flash!)&lt;br /&gt;
* Idee: BotDetection Add-on: Suchmaschinen Statistik&lt;br /&gt;
* Idee: Mitglieder Gruppe erweitern, automatisch Enddatum setzen bei den Mitgliedern, Zeitraum wählbar für Gruppe&lt;br /&gt;
&lt;br /&gt;
== MEN AT WORK ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Andreas Isaak, David Maack&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:cms@men-at-work.de E-Mail]&lt;br /&gt;
&lt;br /&gt;
* recursiveDownload: Rekursive Downloads basierend auf dem Benutzerverzeichnis&lt;br /&gt;
* recursiveGallery: Rekursive Galerie basierend auf dem Benutzerverzeichnis&lt;br /&gt;
* [http://www.contao-forge.org/projects/language2file/issues language2file]: Wrapper für den Export von Sprachtexten&lt;br /&gt;
* [http://www.contao-forge.org/projects/language3csv/issues language3csv]: Sprachtexte als CSV-Datei exportieren&lt;br /&gt;
* [http://www.contao-forge.org/projects/language3xml/issues language3xml]: Sprachtexte als XML-Datei exportieren&lt;br /&gt;
* [http://www.contao-forge.org/projects/language4translation/issues language4translation]: Exportierte Sprachtexte im Frontend übersetzen und später wieder via language2file importieren&lt;br /&gt;
* dashboard: Erweiterung der Dashboard Extension von Andreas Schempp&lt;br /&gt;
* [http://www.contao-forge.org/projects/backendfavourites backendFavourites] Favouriten/Sprungmarker für das Backend definieren&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/menatwork Übersicht all unserer Entwicklungen]&lt;br /&gt;
&lt;br /&gt;
== Andreas Schempp ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Andreas Schempp&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:andreas@schempp.ch andreas@schempp.ch]&lt;br /&gt;
&lt;br /&gt;
* ajaxform: Formular per Ajax senden und Antwort per Ajax laden&lt;br /&gt;
* aliascompiler: Seitenalias aus Prefix und Postfix zusammenfügen (z.B. damit der Anwender nur Postfix bearbeiten kann)&lt;br /&gt;
* articlelanguage: Artikel in einer zweiten Sprache zur Verfügung stellen&lt;br /&gt;
* autocompletetextfield: Feld das Vorschläge für Eingabe (z.B. Tags) macht&lt;br /&gt;
* barcode: Generierung von QRcode und MS Tag Bildern&lt;br /&gt;
* blog: Umfangreiche Blog-Funktionen (ProofOfConcept)&lt;br /&gt;
* documentsearch: Dokumente (PDF, DOC, PPT, XLS) in die Contao-Suche aufnehmen (erfordert Server-Binaries)&lt;br /&gt;
* e2photogallery: Contao Extension für die [http://www.e2interactive.com/e2_photo_gallery/ e2 Photo Gallery]&lt;br /&gt;
* exams: Ein- oder mehrseitige Prüfungen mit Punkte-System und Resultat-Auswertung&lt;br /&gt;
* fancyavatar: Avatar mittels Ajax hochladen und zuschneiden&lt;br /&gt;
* folderpage: Ordner-Seiten zur Gruppierung der Seitenstruktur&lt;br /&gt;
* htmlpurifier: Integration des [http://htmlpurifier.org/ HTML Purifier] in Contao&lt;br /&gt;
* importoption: Options-Daten für Formularfelder (Select, Radio, Checkbox) aus CSV importieren&lt;br /&gt;
* joomlaboard_import: JoomlaBoard in Contao Helpdesk Erweiterung migrieren&lt;br /&gt;
* member_album: Fotoalbum für Mitglieder anlegen&lt;br /&gt;
* memberfiles: Zeigt im Backend die Dateien aus dem Benutzerverzeichnis zum Download an&lt;br /&gt;
* mobile_stylesheets: Stylesheet-Targeting für iPhone, iPad und Co&lt;br /&gt;
* news_loader: Lädt beim Scrollen der Seite automatisch die nächsten News nach&lt;br /&gt;
* newsalert: Automatische Newsletter aus News-Archiven&lt;br /&gt;
* newscategories: Kategorisierung und Auflistung von News-Beiträgen (über Archive hinweg)&lt;br /&gt;
* newsletter-article: Newsletter aus Artikel generieren&lt;br /&gt;
* openid-consumer: Anmelden bei Contao mittels OpenID (sehr altes Modul...)&lt;br /&gt;
* pagepdf: PDF aus Seite generieren, oder Seiten im Backend direkt als PDF ausgeben (via kostenpflichtigem [http://html2pdf.seven49.net/ HTML2PDF]&lt;br /&gt;
* previewdownload: Download-Datei mit Vorschau. Kann automatisch aus PDF ein Bild generieren, wenn imagemagick verfügbar ist.&lt;br /&gt;
* qtplayer: Quicktime-Video und -Audio Dateien einbinden&lt;br /&gt;
* rootsearch: Suche über mehrere Root-Seiten&lt;br /&gt;
* shibboleth: Anmeldung an Contao mittels [http://de.wikipedia.org/wiki/Shibboleth_(Internet) Shibboleth]&lt;br /&gt;
* singlegallery: Gibt das erste Galeriebild aus, erlaubt die Navigation in der lightbox/mediabox zu den restlichen Bildern&lt;br /&gt;
* siximages: Galerie-Modul von [http://www.soleil-royal.ch/lage.html Soleil Royal]&lt;br /&gt;
* z_modulealias: Alias-Modul welches andere Module automatisch entsprechend der aktiven Seite einbindet (praktisch für mehrsprachige Seiten)&lt;br /&gt;
* zz_compressor: Automatische Komprimierung und Zusammeführung ALLER lokalen CSS- und JS-Dateien auf der Seite&lt;br /&gt;
&lt;br /&gt;
== Küstenschmiede - Ideen, Software &amp;amp; Design ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Jürgen Witte, Matthias Eilers&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:info@kuestenschmiede.de E-Mail] [http://www.kuestenschmiede.info Webseite]&lt;br /&gt;
&lt;br /&gt;
* cfs_maps: OpenLayers-Integration zur Anzeige von OpenStreetMap und Bing-Maps (u.a.) als Inhaltselement und Frontend-Modul - fertig seit 07/2011 ab Contao 2.10 RC1&lt;br /&gt;
&lt;br /&gt;
== hofemich ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Michael Hofer&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [http://www.contao-community.de/ Forum]&lt;br /&gt;
&lt;br /&gt;
* isotope_request: Ermöglicht die Verknüpfung mit einem Formular, für Produkt-Anfragen&lt;br /&gt;
&lt;br /&gt;
== Cliff Parnitzky ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Cliff Parnitzky&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:contao@cliff-parnitzky.de contao@cliff-parnitzky.de]&lt;br /&gt;
&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/BirthdayMailer.html BirthdayMailer]: fertig als Beta Release&lt;br /&gt;
* ExtendedListing: Erweitert das Listing Modul um die Möglichkeit, Tabellen miteinander zu verknüpfen (SQL JOIN)&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/InKuerzeVerfuegbar</id>
		<title>InKuerzeVerfuegbar</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/InKuerzeVerfuegbar"/>
				<updated>2011-11-11T11:53:02Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: /* Cliff Parnitzky */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
Um zu vermeiden, dass parallele Entwicklung unnötige Ressourcen benötigt, können Entwickler hier Erweiterung eintragen, die &amp;quot;in Kürze verfügbar&amp;quot; sein sollen.&lt;br /&gt;
&lt;br /&gt;
== ETES GmbH ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Jan Theofel, Marc Schneider, Sebastian Leitz&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:contao@etes.de E-Mail] [http://www.etes.de/ Webseite]&lt;br /&gt;
&lt;br /&gt;
* (Neues) Trackback-Modul für News (andere Features als das bestehende)&lt;br /&gt;
* (Neues) Gravatar-Modul (Gravatare auch für Kommentare etc.)&lt;br /&gt;
* Wordpress-Import (basiert auf den oberen beiden)&lt;br /&gt;
* htaccess-Erweiterung zur Konfiguration der zentralen .htaccess mit der Möglichkeit, dass Module dort per Hook eigene Definitionen einfügen können&lt;br /&gt;
* Erweiterungen für unsere Jobbörse (Onlinebewerbung/Bewertung von Bewerbern/Anbindung an Paymentsysteme)&lt;br /&gt;
&lt;br /&gt;
== certo web &amp;amp; design GmbH ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Yanick Witschi (aka Toflar)&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:yanick.witschi@certo-net.ch E-Mail] [http://www.certo-net.ch Webseite]&lt;br /&gt;
&lt;br /&gt;
* Votebox, Prinzip der Votebox von Dropbox&lt;br /&gt;
&lt;br /&gt;
== InfinitySoft - Innovative Softwarelösungen ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Tristan Lins (aka tril)&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:tristan.lins@infinitysoft.de E-Mail] [http://www.infinitysoft.de Webseite]&lt;br /&gt;
&lt;br /&gt;
zur Zeit nur Projektpflege oder kleine Erweiterungen. Große Projekte sind zur Zeit nicht in Entwicklung.&lt;br /&gt;
&lt;br /&gt;
== BugBuster ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Glen Langer&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [http://www.contao-community.de/ Forum] | [http://www.contao.Glen-Langer.de/ Webseite]&lt;br /&gt;
&lt;br /&gt;
* [http://de.contaowiki.org/Replace_Language Replace Language] - mittlerweile fertig.&lt;br /&gt;
* Idee: moopeel - diese nette Ecke auf Mootoolsbasis (no Flash!)&lt;br /&gt;
* Idee: BotDetection Add-on: Suchmaschinen Statistik&lt;br /&gt;
* Idee: Mitglieder Gruppe erweitern, automatisch Enddatum setzen bei den Mitgliedern, Zeitraum wählbar für Gruppe&lt;br /&gt;
&lt;br /&gt;
== MEN AT WORK ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Andreas Isaak, David Maack&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:cms@men-at-work.de E-Mail]&lt;br /&gt;
&lt;br /&gt;
* recursiveDownload: Rekursive Downloads basierend auf dem Benutzerverzeichnis&lt;br /&gt;
* recursiveGallery: Rekursive Galerie basierend auf dem Benutzerverzeichnis&lt;br /&gt;
* [http://www.contao-forge.org/projects/language2file/issues language2file]: Wrapper für den Export von Sprachtexten&lt;br /&gt;
* [http://www.contao-forge.org/projects/language3csv/issues language3csv]: Sprachtexte als CSV-Datei exportieren&lt;br /&gt;
* [http://www.contao-forge.org/projects/language3xml/issues language3xml]: Sprachtexte als XML-Datei exportieren&lt;br /&gt;
* [http://www.contao-forge.org/projects/language4translation/issues language4translation]: Exportierte Sprachtexte im Frontend übersetzen und später wieder via language2file importieren&lt;br /&gt;
* dashboard: Erweiterung der Dashboard Extension von Andreas Schempp&lt;br /&gt;
* [http://www.contao-forge.org/projects/backendfavourites backendFavourites] Favouriten/Sprungmarker für das Backend definieren&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/menatwork Übersicht all unserer Entwicklungen]&lt;br /&gt;
&lt;br /&gt;
== Andreas Schempp ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Andreas Schempp&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:andreas@schempp.ch andreas@schempp.ch]&lt;br /&gt;
&lt;br /&gt;
* ajaxform: Formular per Ajax senden und Antwort per Ajax laden&lt;br /&gt;
* aliascompiler: Seitenalias aus Prefix und Postfix zusammenfügen (z.B. damit der Anwender nur Postfix bearbeiten kann)&lt;br /&gt;
* articlelanguage: Artikel in einer zweiten Sprache zur Verfügung stellen&lt;br /&gt;
* autocompletetextfield: Feld das Vorschläge für Eingabe (z.B. Tags) macht&lt;br /&gt;
* barcode: Generierung von QRcode und MS Tag Bildern&lt;br /&gt;
* blog: Umfangreiche Blog-Funktionen (ProofOfConcept)&lt;br /&gt;
* documentsearch: Dokumente (PDF, DOC, PPT, XLS) in die Contao-Suche aufnehmen (erfordert Server-Binaries)&lt;br /&gt;
* e2photogallery: Contao Extension für die [http://www.e2interactive.com/e2_photo_gallery/ e2 Photo Gallery]&lt;br /&gt;
* exams: Ein- oder mehrseitige Prüfungen mit Punkte-System und Resultat-Auswertung&lt;br /&gt;
* fancyavatar: Avatar mittels Ajax hochladen und zuschneiden&lt;br /&gt;
* folderpage: Ordner-Seiten zur Gruppierung der Seitenstruktur&lt;br /&gt;
* htmlpurifier: Integration des [http://htmlpurifier.org/ HTML Purifier] in Contao&lt;br /&gt;
* importoption: Options-Daten für Formularfelder (Select, Radio, Checkbox) aus CSV importieren&lt;br /&gt;
* joomlaboard_import: JoomlaBoard in Contao Helpdesk Erweiterung migrieren&lt;br /&gt;
* member_album: Fotoalbum für Mitglieder anlegen&lt;br /&gt;
* memberfiles: Zeigt im Backend die Dateien aus dem Benutzerverzeichnis zum Download an&lt;br /&gt;
* mobile_stylesheets: Stylesheet-Targeting für iPhone, iPad und Co&lt;br /&gt;
* news_loader: Lädt beim Scrollen der Seite automatisch die nächsten News nach&lt;br /&gt;
* newsalert: Automatische Newsletter aus News-Archiven&lt;br /&gt;
* newscategories: Kategorisierung und Auflistung von News-Beiträgen (über Archive hinweg)&lt;br /&gt;
* newsletter-article: Newsletter aus Artikel generieren&lt;br /&gt;
* openid-consumer: Anmelden bei Contao mittels OpenID (sehr altes Modul...)&lt;br /&gt;
* pagepdf: PDF aus Seite generieren, oder Seiten im Backend direkt als PDF ausgeben (via kostenpflichtigem [http://html2pdf.seven49.net/ HTML2PDF]&lt;br /&gt;
* previewdownload: Download-Datei mit Vorschau. Kann automatisch aus PDF ein Bild generieren, wenn imagemagick verfügbar ist.&lt;br /&gt;
* qtplayer: Quicktime-Video und -Audio Dateien einbinden&lt;br /&gt;
* rootsearch: Suche über mehrere Root-Seiten&lt;br /&gt;
* shibboleth: Anmeldung an Contao mittels [http://de.wikipedia.org/wiki/Shibboleth_(Internet) Shibboleth]&lt;br /&gt;
* singlegallery: Gibt das erste Galeriebild aus, erlaubt die Navigation in der lightbox/mediabox zu den restlichen Bildern&lt;br /&gt;
* siximages: Galerie-Modul von [http://www.soleil-royal.ch/lage.html Soleil Royal]&lt;br /&gt;
* z_modulealias: Alias-Modul welches andere Module automatisch entsprechend der aktiven Seite einbindet (praktisch für mehrsprachige Seiten)&lt;br /&gt;
* zz_compressor: Automatische Komprimierung und Zusammeführung ALLER lokalen CSS- und JS-Dateien auf der Seite&lt;br /&gt;
&lt;br /&gt;
== Küstenschmiede - Ideen, Software &amp;amp; Design ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Jürgen Witte, Matthias Eilers&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:info@kuestenschmiede.de E-Mail] [http://www.kuestenschmiede.info Webseite]&lt;br /&gt;
&lt;br /&gt;
* cfs_maps: OpenLayers-Integration zur Anzeige von OpenStreetMap und Bing-Maps (u.a.) als Inhaltselement und Frontend-Modul - fertig seit 07/2011 ab Contao 2.10 RC1&lt;br /&gt;
&lt;br /&gt;
== hofemich ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Michael Hofer&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [http://www.contao-community.de/ Forum]&lt;br /&gt;
&lt;br /&gt;
* isotope_request: Ermöglicht die Verknüpfung mit einem Formular, für Produkt-Anfragen&lt;br /&gt;
&lt;br /&gt;
== Cliff Parnitzky ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Cliff Parnitzky&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:contao@cliff-parnitzky.de contao@cliff-parnitzky.de]&lt;br /&gt;
&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/BirthdayMailer.html BirthdayMailer]: Versendet eine Geburtstagsmail an Mitglieder, die am aktuellen Tag Geburtstag haben.&lt;br /&gt;
* ExtendedListing: Erweitert das Listing Modul um die Möglichkeit, Tabellen miteinander zu verknüpfen (SQL JOIN)&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/InKuerzeVerfuegbar</id>
		<title>InKuerzeVerfuegbar</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/InKuerzeVerfuegbar"/>
				<updated>2011-08-15T11:09:48Z</updated>
		
		<summary type="html">&lt;p&gt;Cliff.parnitzky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
Um zu vermeiden, dass parallele Entwicklung unnötige Ressourcen benötigt, können Entwickler hier Erweiterung eintragen, die &amp;quot;in Kürze verfügbar&amp;quot; sein sollen.&lt;br /&gt;
&lt;br /&gt;
== ETES GmbH ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Jan Theofel, Marc Schneider, Sebastian Leitz&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:contao@etes.de E-Mail] [http://www.etes.de/ Webseite]&lt;br /&gt;
&lt;br /&gt;
* (Neues) Trackback-Modul für News (andere Features als das bestehende)&lt;br /&gt;
* (Neues) Gravatar-Modul (Gravatare auch für Kommentare etc.)&lt;br /&gt;
* Wordpress-Import (basiert auf den oberen beiden)&lt;br /&gt;
* htaccess-Erweiterung zur Konfiguration der zentralen .htaccess mit der Möglichkeit, dass Module dort per Hook eigene Definitionen einfügen können&lt;br /&gt;
* Erweiterungen für unsere Jobbörse (Onlinebewerbung/Bewertung von Bewerbern/Anbindung an Paymentsysteme)&lt;br /&gt;
&lt;br /&gt;
== certo web &amp;amp; design GmbH ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Yanick Witschi (aka Toflar)&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:yanick.witschi@certo-net.ch E-Mail] [http://www.certo-net.ch Webseite]&lt;br /&gt;
&lt;br /&gt;
* Ein Modul um Newsletterabonnenten bei Anmeldung und Abmeldung mit rapidmail.de zu synchronisieren (zu 95% fertig - wird LGPL)&lt;br /&gt;
* Nochmal rapidmail.de: Ein Modul, das auch das Bearbeiten von Empfängern aus dem Backend erlaubt. Auch Mailings können direkt aus dem BE von Contao verschickt werden. (ca. 40%, Entwicklung eingestellt, da Sponsor fehlt)&lt;br /&gt;
* Komplettes Workflow-Management. Global in Contao, für jede DC_Table. Mit Versionierung und deren Freigabe, Benachrichtigungen per Mail etc., etc. (Stand: Konzepte und viel Testing-Code, aber sehr aufwändig. Arbeite ich einfach dran, wenn ich Zeit und Lust habe wovon ersteres meistens halt fehlt)&lt;br /&gt;
* easyExclude: Eine Extension mit der man ganz simple im Edit-Mode der DC_Table direkt Felder für bestimmte Usergruppen ein- oder ausblenden kann (Ajax), da das in den Einstellungen doch ein bisschen mühsam ist&lt;br /&gt;
&lt;br /&gt;
== InfinitySoft - Innovative Softwarelösungen ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Tristan Lins (aka tril)&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:tristan.lins@infinitysoft.de E-Mail] [http://www.infinitysoft.de Webseite]&lt;br /&gt;
&lt;br /&gt;
* [http://www.contao-community.de/showthread.php?12811-Avisota-Umfangreiches-Newslettersystem Avisota], neues umfangreiches Newslettersystem für Contao.&lt;br /&gt;
* [http://dev.infinitysoft.de/projects/merger2 Merger²] Ein Modul mit dem man mehrere Module &amp;quot;zusammen fassen&amp;quot; kann. Außerdem erlaubt das Modul Vererbung von Artikeln. (Hier muss vor allem in Bezug auf den Theme-Mechanismus von 2.9 nachbessern)&lt;br /&gt;
&lt;br /&gt;
== BugBuster ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Glen Langer&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [http://www.contao-community.de/ Forum] | [http://www.contao.Glen-Langer.de/ Webseite]&lt;br /&gt;
&lt;br /&gt;
* [http://de.contaowiki.org/Replace_Language Replace Language] - mittlerweile fertig.&lt;br /&gt;
* Idee: moopeel - diese nette Ecke auf Mootoolsbasis (no Flash!)&lt;br /&gt;
* Idee: BotDetection Add-on: Suchmaschinen Statistik&lt;br /&gt;
* Idee: Mitglieder Gruppe erweitern, automatisch Enddatum setzen bei den Mitgliedern, Zeitraum wählbar für Gruppe&lt;br /&gt;
&lt;br /&gt;
== MEN AT WORK ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Andreas Isaak, David Maack&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:cms@men-at-work.de E-Mail]&lt;br /&gt;
&lt;br /&gt;
* recursiveDownload: Rekursive Downloads basierend auf dem Benutzerverzeichnis&lt;br /&gt;
* recursiveGallery: Rekursive Galerie basierend auf dem Benutzerverzeichnis&lt;br /&gt;
* [http://www.contao-forge.org/projects/synccto/issues syncCto]: Sychronisation vieler Contao-Installationen&lt;br /&gt;
* [http://www.contao-forge.org/projects/language2xml/issues language2xml]: Sprachtexte als XML exportieren und wieder importieren&lt;br /&gt;
* [http://www.contao-forge.org/projects/language4translation/issues language4translation]: Exportierte Sprachtexte im Frontend übersetzen und später wieder via language2xml importieren&lt;br /&gt;
* dashboard: Erweiterung der Dashboard Extension von Andreas Schempp&lt;br /&gt;
* [http://www.contao-forge.org/projects/copyright/issues copyright]: Copyright Hinweise ohne Änderungen am Template in den Header schreiben und in den Themes pflegen.&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/MultiColumnWizard.html MultiColumnWizard] Mit dem MultiColumnWizard können alle DCA-Feldtypen gemischt und gemeinsam in einer Konfiguration verwendet werden.&lt;br /&gt;
&lt;br /&gt;
== Andreas Schempp ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Andreas Schempp&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:andreas@schempp.ch andreas@schempp.ch]&lt;br /&gt;
&lt;br /&gt;
* ajaxform: Formular per Ajax senden und Antwort per Ajax laden&lt;br /&gt;
* aliascompiler: Seitenalias aus Prefix und Postfix zusammenfügen (z.B. damit der Anwender nur Postfix bearbeiten kann)&lt;br /&gt;
* articlelanguage: Artikel in einer zweiten Sprache zur Verfügung stellen&lt;br /&gt;
* autocompletetextfield: Feld das Vorschläge für Eingabe (z.B. Tags) macht&lt;br /&gt;
* barcode: Generierung von QRcode und MS Tag Bildern&lt;br /&gt;
* blog: Umfangreiche Blog-Funktionen (ProofOfConcept)&lt;br /&gt;
* documentsearch: Dokumente (PDF, DOC, PPT, XLS) in die Contao-Suche aufnehmen (erfordert Server-Binaries)&lt;br /&gt;
* e2photogallery: Contao Extension für die [http://www.e2interactive.com/e2_photo_gallery/ e2 Photo Gallery]&lt;br /&gt;
* exams: Ein- oder mehrseitige Prüfungen mit Punkte-System und Resultat-Auswertung&lt;br /&gt;
* fancyavatar: Avatar mittels Ajax hochladen und zuschneiden&lt;br /&gt;
* folderpage: Ordner-Seiten zur Gruppierung der Seitenstruktur&lt;br /&gt;
* htmlpurifier: Integration des [http://htmlpurifier.org/ HTML Purifier] in Contao&lt;br /&gt;
* importoption: Options-Daten für Formularfelder (Select, Radio, Checkbox) aus CSV importieren&lt;br /&gt;
* joomlaboard_import: JoomlaBoard in Contao Helpdesk Erweiterung migrieren&lt;br /&gt;
* member_album: Fotoalbum für Mitglieder anlegen&lt;br /&gt;
* memberfiles: Zeigt im Backend die Dateien aus dem Benutzerverzeichnis zum Download an&lt;br /&gt;
* mobile_stylesheets: Stylesheet-Targeting für iPhone, iPad und Co&lt;br /&gt;
* news_loader: Lädt beim Scrollen der Seite automatisch die nächsten News nach&lt;br /&gt;
* newsalert: Automatische Newsletter aus News-Archiven&lt;br /&gt;
* newscategories: Kategorisierung und Auflistung von News-Beiträgen (über Archive hinweg)&lt;br /&gt;
* newsletter-article: Newsletter aus Artikel generieren&lt;br /&gt;
* openid-consumer: Anmelden bei Contao mittels OpenID (sehr altes Modul...)&lt;br /&gt;
* pagepdf: PDF aus Seite generieren, oder Seiten im Backend direkt als PDF ausgeben (via kostenpflichtigem [http://html2pdf.seven49.net/ HTML2PDF]&lt;br /&gt;
* previewdownload: Download-Datei mit Vorschau. Kann automatisch aus PDF ein Bild generieren, wenn imagemagick verfügbar ist.&lt;br /&gt;
* qtplayer: Quicktime-Video und -Audio Dateien einbinden&lt;br /&gt;
* rootsearch: Suche über mehrere Root-Seiten&lt;br /&gt;
* shibboleth: Anmeldung an Contao mittels [http://de.wikipedia.org/wiki/Shibboleth_(Internet) Shibboleth]&lt;br /&gt;
* singlegallery: Gibt das erste Galeriebild aus, erlaubt die Navigation in der lightbox/mediabox zu den restlichen Bildern&lt;br /&gt;
* siximages: Galerie-Modul von [http://www.soleil-royal.ch/lage.html Soleil Royal]&lt;br /&gt;
* z_modulealias: Alias-Modul welches andere Module automatisch entsprechend der aktiven Seite einbindet (praktisch für mehrsprachige Seiten)&lt;br /&gt;
* zz_compressor: Automatische Komprimierung und Zusammeführung ALLER lokalen CSS- und JS-Dateien auf der Seite&lt;br /&gt;
&lt;br /&gt;
== Küstenschmiede - Ideen, Software &amp;amp; Design ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Jürgen Witte, Matthias Eilers&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:info@kuestenschmiede.de E-Mail] [http://www.kuestenschmiede.info Webseite]&lt;br /&gt;
&lt;br /&gt;
* cfs_maps: OpenLayers-Integration zur Anzeige von OpenStreetMap und Bing-Maps (u.a.) als Inhaltselement und Frontend-Modul - fertig seit 07/2011 ab Contao 2.10 RC1&lt;br /&gt;
&lt;br /&gt;
== hofemich ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Michael Hofer&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [http://www.contao-community.de/ Forum]&lt;br /&gt;
&lt;br /&gt;
* isotope_request: Ermöglicht die Verknüpfung mit einem Formular, für Produkt-Anfragen&lt;br /&gt;
&lt;br /&gt;
== Cliff Parnitzky ==&lt;br /&gt;
&lt;br /&gt;
Entwickler: Cliff Parnitzky&lt;br /&gt;
&lt;br /&gt;
Entwicklerkontakt: [mailto:contao@cliff-parnitzky.de contao@cliff-parnitzky.de]&lt;br /&gt;
&lt;br /&gt;
* BirthdayMailer: Schickt eine Geburtstagsmail an die Mitglieder konfigurierter Mitgliedergruppen, die am aktuellen Tag Geburtstag haben.&lt;br /&gt;
* ExtendedListing: Erweitert das Listing Modul um die Möglichkeit, Tabellen miteinander zu verknüpfen (SQL JOIN)&lt;/div&gt;</summary>
		<author><name>Cliff.parnitzky</name></author>	</entry>

	</feed>