Artikel

< Sieve mit Webmin unter Debian Squeeze
11.12.2011 22:46 Alter: 73 days
Kategorie: TYPO3, notop

Ein eigenes TER

Für Entwickler ist es interessant ein eigenes TER aufzubauen. Gerade wenn man Extensions entwickelt, die nicht für die breite Öffentlichkeit interessant sind


Seitenstruktur

Vorab sei gesagt, dass die Extension "ter" Probleme mit der aktuellen Version 4.5 von TYPO3 hat. Ich habe daher eine 4.3 Version verwendet. Ich hoffe aber auf ein baldiges Update der Extension.

Ein eigene

  • - ter
  • - Extensionkeys
  • - FE-User

Wichtig, die Seite "ter" muss auch den Alias "ter" bekommen. Somit wird sie über "?id=ter" ansprechbar. Die Seiten "Extensionkeys" und "FE-User" werden als Sysordner angelegt. In letztere Seite werden eine FE-Benutzergruppe und für jeden Entwickler ein FE-User angelegt. Die Gruppe könnte "TER Admin" oder so ähnlich heißen. Jeder FE-User sollte Mitglied der Gruppe sein. Es wird noch ein BE-User namens_cli_ter benötigt, ohne Rechte und mit Random-Passwort.

Nun ist es Zeit die Extension "ter" zu installieren. Als Extensionparameter muss der absolute Pfad eingetragen werden, in dem die Extensions letztlich landen. Zum Beispiel:

/var/www/domain.de/html/fileadmin/ter/

Die Seite "ter" bekommt nun ein neues TS-Template. Tragt im Setup folgendes ein:

config {
   disableCharsetHeader = 1
   disableAllHeaderCode = 1
   disablePrefixComment = 1
   debug = 0
}

plugin.tx_ter_pi1 {
   pid = 2 # UID der Seite "ter"
   repositoryDir = /var/www/domain.de/html/fileadmin/ter/
   adminFrontendUsergroupUid = 1 # UID der FE-Usergroup "TER Admin"
   reviewersFrontendUsergroupUid = 
   mirrorsFrontendUsergroupUid = 
}

page = PAGE
page.typeNum = 0
page.10 =< plugin.tx_ter_pi1

Bei repositoryDir verwendet Ihr den selben Pfad wie in der Extension Konfiguration ein.

Im Webroot Verzeichnis wird das neue Verzeichnis "wsdl" angelegt. Kopiert nun die Datei typo3conf/ext/ter/tx_ter_wsdl.php in dieses Verzeichnis. Wenn Ihr die .htaccess Datei einsetzt, um RealURL o.ä. einzusetzen, müsste Ihr das "wsdl" Verzeichnis ausnehmen.

RewriteRule ^(typo3/|wsdl/|t3lib/|fileadmin/|typo3conf/|typo3temp/|uploads/|favicon\.ico) - [L]

In der Datei typo3conf/ext/ter/class.tx_ter_api.php ändert Ihr die Zeile in den hier angegebenen Wert. Sonst könnte es beim Upload eng werden.

protected $extensionMaxUploadSize = 61457280;

Eine Änderung betrifft die Datei tca.php im Extensionverzeichnis:

'types' => Array (  
    '1' => Array('showitem' => 'hidden;;;;1-1-1, title,extensionkey,description,ownerusername,maxstoressize')
)

Ausserdem verweisen die Labels auf die locallang_tca.php, dort sind die Übersetzungen aber nicht eingetragen. Holt das nach, oder überschreibt die Label in der tca.php. In der Datei ext_labels solltet Ihr noch die Zeile "label" ändern, da ist ein Underscore zuviel.

Damit neue Extensions verfügbar gemacht werden, sollte ein Cron-Job laufen. Vielleicht jede Minute mit dem Befehl:

Zu guter Letzt wird die Datei fileadmin/ter/mirrors.xml angelegt und mit folgendem Inhalt befüllt:

<?xml version="1.0" encoding="utf-8"?>
<mirrors> 
  <mirror> 
      <title>Mein TER</title> 
      <host>domain.de</host> 
      <path>/fileadmin/ter/</path> 
      <country>DEU</country> 
      <sponsor> 
        <name>My cool Company</name> 
        <link>http://domain.de/</link> 
        <logo>http://domain.de/fileadmin/logo.gif</logo> 
      </sponsor> 
  </mirror>
</mirrors>

Jetzt kann das TER genutzt werden. In neueren TYPO3 Installationen kann im Extension Manager ein neues Repository angegeben werden. Ansonsten kann man auch die localconf.php bemühen:

$TYPO3_CONF_VARS['EXT'][em_wsdlURL]=http://domain.de/wsdl/tx_ter_wsdl.php
$TYPO3_CONF_VARS['EXT'][em_mirrorListURL]=http://domain.de/fileadmin/ter/mirrors.xml

Bitte beachten, bevor eine neue Extension ins TER geladen werden kann, muss im Backend im SysOrdner Extensionkeys erst ein neuer Datensatz "Extensionkeys" angelegt werden, der den Extensionkey der neuen Extension enthält.