Explorar o código

[DOCUMENTATION] German:

- sync up to r18322

git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@18323 44c647ce-9c0f-0410-b52a-842ac1e357ba
thomas %!s(int64=16) %!d(string=hai) anos
pai
achega
20a8123261

+ 36 - 1
documentation/manual/de/module_specs/Zend_Feed_Reader.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 17618 -->
+<!-- EN-Revision: 18318 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.feed.reader">
     <title>Zend_Feed_Reader</title>
@@ -374,6 +374,14 @@ $feed = Zend_Feed_Reader::import(
             <acronym>RDF</acronym> oder Atom Feed <acronym>URI</acronym> prüfen kann.
         </para>
 
+        <para>
+            Das zurückgegebene Objekt ist ein <classname>ArrayObject</classname> welches
+            <classname>Zend_Feed_Reader_FeedSet</classname> heisst, damit es in ein Array gecastet
+            werden kann, oder damit man es iterieren kann um auf alle erkannten Links zuzugreifen.
+            Trotzdem kann man, als einfache Abkürzung, den ersten RSS, RDF oder Atom Link holen
+            indem dessen öffentliche Eigenschaft wie im beiliegenden Beispiel verwendet wird.
+        </para>
+
         <programlisting language="php"><![CDATA[
 $links = Zend_Feed_Reader::findFeedLinks('http://www.planet-php.net');
 
@@ -392,6 +400,33 @@ if(isset($links->atom)) {
             Basierend auf diesen Links kann man dann, von welchen Quellen man auch immer will,
             importieren indem die übliche Vorgehensweise verwendet wird.
         </para>
+
+        <para>
+            Diese schnelle Methode gibt nur einen Link für jeden Feed Typ zurück, aber Webseiten
+            können viele Links von jedem Typ enthalten. Möglicherweise ist es eine News Site mit
+            einem RSS Feed für jede News Kategorie. Man kann durch alle Links iterieren indem
+            der ArrayObject Iterator verwendet wird.
+        </para>
+
+                <programlisting language="php"><![CDATA[
+$links = Zend_Feed_Reader::findFeedLinks('http://www.planet-php.net');
+
+foreach ($links as $link) {
+    echo $link['href'], "\n";
+}
+]]></programlisting>
+
+        <para>
+            Die möglichen Schlüssel sind <emphasis>href</emphasis>, <emphasis>rel</emphasis> der
+            immer 'alternate' ist, <emphasis>type</emphasis> welcher
+            <code>application/rss+xml</code>, <code>application/rdf+xml</code> oder
+            <code>application/atom+xml</code> ist, und <emphasis>feed</emphasis>.
+            <emphasis>feed</emphasis>. ist nur vorhanden wenn man <classname>ArrayObject</classname>
+            erhält (es also nicht in ein Array castet) und dessen Verwendung führt zu einem
+            Versuch den Feed in eine <classname>Zend_Feed_Reader_FeedAbstract</classname> Instanz
+            zu laden. Das ist ein Versuch des Lazy Loadings - Feeds werden trotzdem geladen sobald
+            man versucht auf Sie zuzugreifen indem diese Methode verwendet wird.
+        </para>
   </sect2>
 
   <sect2 id="zend.feed.reader.retrieve-info">

+ 649 - 0
documentation/manual/de/module_specs/Zend_Filter-Compress.xml

@@ -0,0 +1,649 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- EN-Revision: 18311 -->
+<!-- Reviewed: no -->
+<sect2 id="zend.filter.set.compress">
+    <title>Compress und Decompress</title>
+    <para>
+        Diese zwei Filter sind in der Lage Strings, Dateien und Verzeichnisse zu komprimieren und zu
+        dekomprimieren. Sie verwenden Adapter und unterstützen die folgenden Kompressions Formate:
+    </para>
+
+    <itemizedlist>
+        <listitem>
+            <para>
+                <emphasis>Bz2</emphasis>
+            </para>
+        </listitem>
+
+        <listitem>
+            <para>
+                <emphasis>Gz</emphasis>
+            </para>
+        </listitem>
+
+        <listitem>
+            <para>
+                <emphasis>Lzf</emphasis>
+            </para>
+        </listitem>
+
+        <listitem>
+            <para>
+                <emphasis>Rar</emphasis>
+            </para>
+        </listitem>
+
+        <listitem>
+            <para>
+                <emphasis>Tar</emphasis>
+            </para>
+        </listitem>
+
+        <listitem>
+            <para>
+                <emphasis>Zip</emphasis>
+            </para>
+        </listitem>
+    </itemizedlist>
+
+    <para>
+        Jedes Kompressions Format hat unterschiedliche Fähigkeiten die anbei beschrieben sind. Alle
+        Kompressions Filter können fast der selben Art und Weise verwendet werden, und unterscheiden
+        sich primär in den vorhandenen Optionen  und der Art der Kompression welche diese anbieten
+        (beide bieten Algorithmen für Strings vs. Dateien vs. Verzeichnisse an)
+    </para>
+
+    <sect3 id="zend.filter.set.compress.generic">
+        <title>Generelle Handhabung</title>
+
+        <para>
+            Um einen Kompressions Filter zu erstellen muss man das Kompressions Format auswählen
+            welches man verwenden will. Die folgende Beschreibung nimmt den <emphasis>Bz2</emphasis>
+            Adapter. Details für alle anderen Adapter werden nach dieser Sektion beschrieben.
+        </para>
+
+        <para>
+            Diese zwei Filter sind grundsätzlich identisch, da Sie das gleiche Backend verwenden.
+            <classname>Zend_Filter_Compress</classname> sollte verwendet werden wenn man Elemente
+            komprimieren will, und <classname>Zend_Filter_Decompress</classname> sollte verwendet
+            werden wenn man Elemente dekomprimieren will.
+        </para>
+
+        <para>
+            Wenn man zum Beispiel einen String komprimieren will, müssen wir
+            <classname>Zend_Filter_Compress</classname> instanziieren und den gewünschten Adapter
+            angeben.
+        </para>
+
+        <programlisting language="php"><![CDATA[
+$filter = new Zend_Filter_Compress('Bz2');
+]]></programlisting>
+
+        <para>
+            Um einen anderen Adapter zu verwenden muss dieser einfach im Constructor spezifiziert
+            werden.
+        </para>
+
+        <para>
+            Man kann auch ein Array von Optionen oder ein <classname>Zend_Config</classname> Objekt
+            anbieten. Wenn man das tut sollte mindestens der Schlüssel "adapter" angegeben werden,
+            und anschließend entweder der Schlüssel "options" oder "adapterOptions" (welches ein
+            Array von Optionen ein sollte das dem Adapter bei der Instanziierung übergeben wird).
+        </para>
+
+        <programlisting language="php"><![CDATA[
+$filter = new Zend_Filter_Compress(array(
+    'adapter' => 'Bz2',
+    'options' => array(
+        'blocksize' => 8,
+    ),
+));
+]]></programlisting>
+
+        <note>
+            <title>Standardmäßiger Kompressions Adapter</title>
+
+            <para>
+                Wenn kein Kompressions Adapter angegeben wird, dann wird der
+                <emphasis>Gz</emphasis> Adapter verwendet.
+            </para>
+        </note>
+
+        <para>
+            Fast die gleiche Verwendung ist die Dekomprimierung eines Strings. Wir müssen in diesem
+            Fall nur den Dekompressions Filter verwenden.
+        </para>
+
+        <programlisting language="php"><![CDATA[
+$filter = new Zend_Filter_Decompress('Bz2');
+]]></programlisting>
+
+        <para>
+            Um einen komprimierten String zu erhalten muss der originale String angegeben werden.
+            Der gefilterte Wert ist die komprimierte Version des originalen Strings.
+        </para>
+
+        <programlisting language="php"><![CDATA[
+$filter     = new Zend_Filter_Compress('Bz2');
+$compressed = $filter->filter('Uncompressed string');
+// Gibt den komprimierten String zurück
+]]></programlisting>
+
+        <para>
+            Dekomprimierung funktioniert auf die gleiche Weise.
+        </para>
+
+        <programlisting language="php"><![CDATA[
+$filter     = new Zend_Filter_Decompress('Bz2');
+$compressed = $filter->filter('Compressed string');
+// Gibt den dekomprimierten String zurück
+]]></programlisting>
+
+        <note>
+            <title>Hinweis zur Komprimierung von Strings</title>
+
+            <para>
+                Nicht alle Adapter unterstützen die Kompression von Strings. Kompressions Formate
+                wie <emphasis>Rar</emphasis> können nur Dateien und Verzeichnisse verarbeiten. Für
+                Details muss man in die Sektion für den Adapter gesehen werden den man verwenden
+                will.
+            </para>
+        </note>
+    </sect3>
+
+    <sect3 id="zend.filter.set.compress.archive">
+        <title>Ein Archiv erstellen</title>
+
+        <para>
+            Die Erstellung einer Archivedatei arbeitet fast auf die gleiche Weise wie die
+            Komprimierung eines Strings. Trotzdem benötigen wir in diesem Fall einen zusätzlichen
+            Parameter welcher den Namen des Archivs enthält welches wir erstellen wollen.
+        </para>
+
+        <programlisting language="php"><![CDATA[
+$filter     = new Zend_Filter_Compress(array(
+    'adapter' => 'Bz2',
+    'options' => array(
+        'archive' => 'filename.bz2',
+    ),
+));
+$compressed = $filter->filter('Uncompressed string');
+// Gibt bei Erfolg true zurück und erstellt die Archiv Datei
+]]></programlisting>
+
+        <para>
+            Im obigen Beispeil wird der unkomprimierte String komprimiert, und wird dann in die
+            angegebene Archiv Datei geschrieben.
+        </para>
+
+        <note>
+            <title>Existierende Archive werden überschrieben</title>
+
+            <para>
+                Der Inhalt einer existierenden Datei wird überschrieben wenn der angegebene
+                Dateiname des Archivs bereits existiert.
+            </para>
+        </note>
+
+        <para>
+            Wenn man eine Datei komprimieren will, dann muss man den Namen der Datei mit dessen Pfad
+            angeben.
+        </para>
+
+        <programlisting language="php"><![CDATA[
+$filter     = new Zend_Filter_Compress(array(
+    'adapter' => 'Bz2',
+    'options' => array(
+        'archive' => 'filename.bz2'
+    ),
+));
+$compressed = $filter->filter('C:\temp\compressme.txt');
+// Gibt bei Erfolg true zurück und erstellt die Archiv Datei
+]]></programlisting>
+
+        <para>
+            Man kann auch ein Verzeichnis statt einem Dateinamen spezifizieren. In diesem Fall wird
+            das gesamte Verzeichnis mit allen seinen Dateien und Unterverzeichnissen in das Archiv
+            komprimiert.
+        </para>
+
+        <programlisting language="php"><![CDATA[
+$filter     = new Zend_Filter_Compress(array(
+    'adapter' => 'Bz2',
+    'options' => array(
+        'archive' => 'filename.bz2'
+    ),
+));
+$compressed = $filter->filter('C:\temp\compressme.txt');
+// Gibt bei Erfolg true zurück und erstellt die Archiv Datei
+]]></programlisting>
+
+        <note>
+            <title>Keine großen oder Basisverzeichnisse komprimieren</title>
+
+            <para>
+                Man sollte niemals große oder Basisverzeichnisse wie eine komplette Partition
+                komprimieren. Die Komprimierung einer kompletten Partition ist ein sehr
+                Zeitintensiver Task welcher zu massiven Problemen auf dem Server führen kann,
+                wenn es nicht genug Platz gibt, oder das eigene Skript zu viel Zeit benötigt.
+            </para>
+        </note>
+    </sect3>
+
+    <sect3 id="zend.filter.set.compress.decompress">
+        <title>Ein Archiv dekomprimieren</title>
+
+        <para>
+            Die Dekomprimierung einer Archivdatei arbeitet fast wie dessen Komprimierung. Man muss
+            entweder die Eigenschaft <property>archive</property> spezifizieren, oder den Dateinamen
+            des Archivs angeben wenn man die Datei dekomprimiert.
+        </para>
+
+        <programlisting language="php"><![CDATA[
+$filter     = new Zend_Filter_Decompress('Bz2');
+$compressed = $filter->filter('filename.bz2');
+// Gibt bei Erfolg true zurück und dekomprimiert die Archiv Datei
+]]></programlisting>
+
+        <para>
+            Einige Adapter unterstützen die Dekomprimierung des Archivs in ein anderes
+            Unterverzeichnis. In diesem Fall kann der Parameter <property>target</property>
+            spezifiziert werden.
+        </para>
+
+        <programlisting language="php"><![CDATA[
+$filter     = new Zend_Filter_Decompress(array(
+    'adapter' => 'Zip',
+    'options' => array(
+        'target' => 'C:\temp',
+    )
+));
+$compressed = $filter->filter('filename.zip');
+// Gibt bei Erfolg true zurück und dekomprimiert die Archiv Datei
+// in das angegebene Zielverzeichnis
+]]></programlisting>
+
+        <note>
+            <title>Verzeichnisse in welche extrahiert werden soll müssen existieren</title>
+
+            <para>
+                Wenn man ein Archiv in ein Verzeichnis dekomprimieren will, dann muss dieses
+                Verzeichnis existieren.
+            </para>
+        </note>
+    </sect3>
+
+    <sect3 id="zend.filter.set.compress.bz2">
+        <title>Bz2 Adapter</title>
+
+        <para>
+            Der Bz2 Adapter kann folgendes komprimieren und dekomprimieren:
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>Strings</para>
+            </listitem>
+
+            <listitem>
+                <para>Dateien</para>
+            </listitem>
+
+            <listitem>
+                <para>Verzeichnisse</para>
+            </listitem>
+        </itemizedlist>
+
+        <para>
+            Dieser Adapter verwendet <acronym>PHP</acronym>'s Bz2 Erweiterung.
+        </para>
+
+        <para>
+            Um die Komprimierung anzupassen unterstützt dieser Adapter die folgenden Optionen:
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    <emphasis>Archive</emphasis>: Dieser Parameter setzt die Archivdatei welche
+                    verwendet oder erstellt werden soll.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>Blocksize</emphasis>: Dieser Parameter setzt die Blockgröße welche
+                    zu verwenden ist. Diese kann zwischen '0' und '9' liegen. Der Standardwert ist
+                    '4'.
+                </para>
+            </listitem>
+        </itemizedlist>
+
+        <para>
+            Alle Optionen können bei der Instanziierung oder durch Verwendung der betreffenden
+            Methode verwendet werden. Zum Beispiel sind die zu 'Blocksize' gehörenden Methoden
+            <methodname>getBlocksize()</methodname> und <methodname>setBlocksize()</methodname>.
+            Man kann auch die <methodname>setOptions()</methodname> Methode verwenden welche
+            alle Optionen als Array akzeptiert.
+        </para>
+    </sect3>
+
+    <sect3 id="zend.filter.set.compress.gz">
+        <title>Gz Adapter</title>
+
+        <para>
+            Der Gz Adapter kann folgendes komprimieren und dekomprimieren:
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>Strings</para>
+            </listitem>
+
+            <listitem>
+                <para>Dateien</para>
+            </listitem>
+
+            <listitem>
+                <para>Verzeichnisse</para>
+            </listitem>
+        </itemizedlist>
+
+        <para>
+            Dieser Adapter verwendet <acronym>PHP</acronym>'s Zlib Erweiterung.
+        </para>
+
+        <para>
+            Um die Komprimierung anzupassen unterstützt dieser Adapter die folgenden Optionen:
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    <emphasis>Archive</emphasis>: Dieser Parameter setzt die Archivdatei welche
+                    verwendet oder erstellt werden soll.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>Level</emphasis>: Das Level der Kompression welches verwendet werden
+                    soll. Es kann zwischen '0' und '9' liegen. Der Standardwert ist '9'.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>Mode</emphasis>: Es gibt zwei unterstützte Modi. 'compress' und
+                    'deflate'. Der Standardwert ist 'compress'.
+                </para>
+            </listitem>
+        </itemizedlist>
+
+        <para>
+            Alle Optionen können bei der Instanziierung oder durch Verwendung der betreffenden
+            Methode verwendet werden. Zum Beispiel sind die zu 'Level' gehörenden Methoden
+            <methodname>getLevel()</methodname> und <methodname>setLevel()</methodname>.
+            Man kann auch die <methodname>setOptions()</methodname> Methode verwenden welche
+            alle Optionen als Array akzeptiert.
+        </para>
+    </sect3>
+
+    <sect3 id="zend.filter.set.compress.lzf">
+        <title>Lzf Adapter</title>
+
+        <para>
+            Der Lzf Adapter kann folgendes komprimieren und dekomprimieren:
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>Strings</para>
+            </listitem>
+        </itemizedlist>
+
+        <note>
+            <title>Lzf unterstützt nur Strings</title>
+
+            <para>
+                Der Lzf Adapter kann keine Dateien oder Verzeichnisse verarbeiten.
+            </para>
+        </note>
+
+        <para>
+            Dieser Adapter verwendet <acronym>PHP</acronym>'s Lzf Erweiterung.
+        </para>
+
+        <para>
+            Es sind keine Optionen vorhanden um diesen Adapter anzupassen.
+        </para>
+    </sect3>
+
+    <sect3 id="zend.filter.set.compress.rar">
+        <title>Rar Adapter</title>
+
+        <para>
+            Der Rar Adapter kann folgendes komprimieren und dekomprimieren:
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>Dateien</para>
+            </listitem>
+
+            <listitem>
+                <para>Verzeichnisse</para>
+            </listitem>
+        </itemizedlist>
+
+        <note>
+            <title>Rar unterstützt keine Strings</title>
+
+            <para>
+                Der Rar Adapter kann keine Strings verarbeiten.
+            </para>
+        </note>
+
+        <para>
+            Dieser Adapter verwendet <acronym>PHP</acronym>'s Rar Erweiterung.
+        </para>
+
+        <note>
+            <title>Die Kompression wird von Rar nicht unterstützt</title>
+
+            <para>
+                Durch Beschränkungen des Kompressions Formats von Rar, gibt es keine frei
+                erhältliche Komprimierung. Wenn man Dateien in ein neues Rar Archiv komprimieren
+                will, muss man dem Adapter einen Callback anbieten mit dem ein Rar Kompressions
+                Programm aufgerufen wird.
+            </para>
+        </note>
+
+        <para>
+            Um die Komprimierung anzupassen unterstützt dieser Adapter die folgenden Optionen:
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    <emphasis>Archive</emphasis>: Dieser Parameter setzt die Archivdatei welche
+                    verwendet oder erstellt werden soll.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>Callback</emphasis>: Ein Callback welcher diesem Adapter Unterstützung
+                    für Komprimierung anbietet.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>Password</emphasis>: Das Passwort welches für die Dekomprimierung
+                    verwendet werden soll.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>Target</emphasis>: Das Ziel zu dem dekomprimierte Dateien geschrieben
+                    werden.
+                </para>
+            </listitem>
+        </itemizedlist>
+
+        <para>
+            Alle Optionen können bei der Instanziierung oder durch Verwendung der betreffenden
+            Methode verwendet werden. Zum Beispiel sind die zu 'Target' gehörenden Methoden
+            <methodname>getTarget()</methodname> und <methodname>setTarget()</methodname>.
+            Man kann auch die <methodname>setOptions()</methodname> Methode verwenden welche
+            alle Optionen als Array akzeptiert.
+        </para>
+    </sect3>
+
+    <sect3 id="zend.filter.set.compress.tar">
+        <title>Tar Adapter</title>
+
+        <para>
+            Der Rar Adapter kann folgendes komprimieren und dekomprimieren:
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>Dateien</para>
+            </listitem>
+
+            <listitem>
+                <para>Verzeichnisse</para>
+            </listitem>
+        </itemizedlist>
+
+        <note>
+            <title>Tar unterstützt keine Strings</title>
+
+            <para>
+                Der Tar Adapter kann keine Strings verarbeiten.
+            </para>
+        </note>
+
+        <para>
+            Dieser Adapter verwendet <acronym>PEAR</acronym>'s <classname>Archive_Tar</classname>
+            Komponente.
+        </para>
+
+        <para>
+            Um die Komprimierung anzupassen unterstützt dieser Adapter die folgenden Optionen:
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    <emphasis>Archive</emphasis>: Dieser Parameter setzt die Archivdatei welche
+                    verwendet oder erstellt werden soll.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>Mode</emphasis>: Ein Modus der für die Komprimierung verwendet werden
+                    soll. Unterstützt werden entweder 'null', was keine Komprimierung bedeutet,
+                    'Gz' was <acronym>PHP</acronym>'s Zlib Erweiterung verwendet, und 'Bz2' was
+                    <acronym>PHP</acronym>'s Bz2 Erweiterung verwendet. Der Standardwert ist 'null'.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>Target</emphasis>: Das Ziel zu dem dekomprimierte Dateien geschrieben
+                    werden.
+                </para>
+            </listitem>
+        </itemizedlist>
+
+        <para>
+            Alle Optionen können bei der Instanziierung oder durch Verwendung der betreffenden
+            Methode verwendet werden. Zum Beispiel sind die zu 'Target' gehörenden Methoden
+            <methodname>getTarget()</methodname> und <methodname>setTarget()</methodname>.
+            Man kann auch die <methodname>setOptions()</methodname> Methode verwenden welche
+            alle Optionen als Array akzeptiert.
+        </para>
+
+        <note>
+            <title>Verwendung von Verzeichnissen</title>
+
+            <para>
+                Wenn Verzeichnisse mit Tar komprimiert werden, dann wird der komplette Dateipfad
+                verwendet. Das bedeutet das erstellte Tar Dateien nicht nur das Unterverzeichnis
+                sondern den kompletten Pfad für die komprimierten Dateien enthält.
+            </para>
+        </note>
+    </sect3>
+
+    <sect3 id="zend.filter.set.compress.zip">
+        <title>Zip Adapter</title>
+
+        <para>
+            Der Rar Adapter kann folgendes komprimieren und dekomprimieren:
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>Strings</para>
+            </listitem>
+
+            <listitem>
+                <para>Dateien</para>
+            </listitem>
+
+            <listitem>
+                <para>Verzeichnisse</para>
+            </listitem>
+        </itemizedlist>
+
+        <note>
+            <title>Zip unterstützt die Dekomprimierung von Strings nicht</title>
+
+            <para>
+                Der Zip Adapter kann die Dekomprimierung von Strings nicht verarbeiten; eine
+                Dekomprimierung wird immer in eine Datei geschrieben.
+            </para>
+        </note>
+
+        <para>
+            Dieser Adapter verwendet <acronym>PHP</acronym>'s <classname>Zip</classname>
+            Erweiterung.
+        </para>
+
+        <para>
+            Um die Komprimierung anzupassen unterstützt dieser Adapter die folgenden Optionen:
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    <emphasis>Archive</emphasis>: Dieser Parameter setzt die Archivdatei welche
+                    verwendet oder erstellt werden soll.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>Target</emphasis>: Das Ziel zu dem dekomprimierte Dateien geschrieben
+                    werden.
+                </para>
+            </listitem>
+        </itemizedlist>
+
+        <para>
+            Alle Optionen können bei der Instanziierung oder durch Verwendung der betreffenden
+            Methode verwendet werden. Zum Beispiel sind die zu 'Target' gehörenden Methoden
+            <methodname>getTarget()</methodname> und <methodname>setTarget()</methodname>.
+            Man kann auch die <methodname>setOptions()</methodname> Methode verwenden welche
+            alle Optionen als Array akzeptiert.
+        </para>
+    </sect3>
+</sect2>
+<!--
+vim:se ts=4 sw=4 et:
+-->

+ 2 - 1
documentation/manual/de/module_specs/Zend_Filter-Set.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 18216 -->
+<!-- EN-Revision: 18311 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.filter.set" xmlns:xi="http://www.w3.org/2001/XInclude">
 
@@ -46,6 +46,7 @@
     </sect2>
 
     <xi:include href="Zend_Filter-Callback.xml" />
+    <xi:include href="Zend_Filter-Compress.xml" />
     <xi:include href="Zend_Filter-Decryption.xml" />
 
     <sect2 id="zend.filter.set.digits">

+ 4 - 1
documentation/manual/de/module_specs/Zend_Navigation-Containers.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 17134 -->
+<!-- EN-Revision: 18313 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.navigation.containers">
     <title>Container</title>
@@ -384,6 +384,9 @@ $container = new Zend_Navigation(array(
         <home>
             <label>Home</label>
             <order>-100</order>
+            <module>default</module>
+            <controller>index</controller>
+            <action>index</action>
         </home>
 
     </nav>

+ 95 - 83
documentation/manual/de/module_specs/Zend_Pdf-InteractiveFeatures.xml

@@ -887,35 +887,37 @@ printf("Aktionen im Baum: %d\n", $actionsCount++); // Ausgabe 'Aktionen im Baum:
     </sect2>
 
     <sect2 id="zend.pdf.pages.interactive-features.outlines">
-        <title>Document Outline (bookmarks)</title>
+        <title>Dokument Outline (Bookmarks)</title>
         <para>
-            A PDF document may optionally display a document outline on the screen, allowing
-            the user to navigate interactively from one part of the document to another.
-            The outline consists of a tree-structured hierarchy of outline items (sometimes
-            called bookmarks), which serve as a visual table of contents to display the document’s
-            structure to the user. The user can interactively open and close individual
-            items by clicking them with the mouse. When an item is open, its immediate children
-            in the hierarchy become visible on the screen; each child may in turn be
-            open or closed, selectively revealing or hiding further parts of the hierarchy.
-            When an item is closed, all of its descendants in the hierarchy are hidden. Clicking
-            the text of any visible item activates the item, causing the viewer application to
-            jump to a destination or trigger an action associated with the item.
+            Ein PDF Dokument kann optional ein Dokument Outline am Schirm anzeigen, welcher es dem
+            Benutzer erlaubt interaktiv von einem Teil des Dokuments zu einem anderen zu navigieren.
+            Der Outline besteht aus einer baum-strukturierten Hierarchie von Outline Elementen
+            (manchmal Bookmarks genannt), welche als visuelle Tabelle des Inhalts fungieren um dem
+            Benutzer die Struktur des Dokuments anzuzeigen. Der Benutzer kann individuelle Elemente
+            interaktiv öffnen und schließen indem er Sie mit der Maus anklickt. Wenn ein Element
+            geöffnet ist, werden seine unmittelbaren Kinder in der Hierarchie auf dem Schirm
+            sichtbar; jedes Kind kann seinerseits geöffnet und geschlossen werden, das weitere Teile
+            der Hierarchie selektiv anzeigt oder versteckt. Wenn ein Element geschlossen wird,
+            werden alle seine abhängigen Elemente in der Hierarchie versteckt. Das Klicken auf einen
+            Text von irgendeinem sichtbaren Element aktiviert dieses Element, was dazu führt das die
+            anzeigende Anwendung zum Ziel springt oder eine mit dem Element assoziierte Aktion
+            ausführt.
         </para>
 
         <para>
-            <classname>Zend_Pdf</classname> class provides public property
-            <varname>$outlines</varname> which is an array of
-            <classname>Zend_Pdf_Outline</classname> objects.
+            Die Klasse <classname>Zend_Pdf</classname> bietet eine öffentliche Eigenschaft
+            <varname>$outlines</varname> welche ein Array von
+            <classname>Zend_Pdf_Outline</classname> Objekten ist.
             <programlisting language="php"><![CDATA[
 $pdf = Zend_Pdf::load($path);
 
-// Remove outline item
+// Entfernt ein Outline Element
 unset($pdf->outlines[0]->childOutlines[1]);
 
-// Set Outline to be displayed in bold
+// Setzt Outline damit es Dick angezeigt wird
 $pdf->outlines[0]->childOutlines[3]->setIsBold(true);
 
-// Add outline entry
+// Fügt den Outline Eintrag hinzu
 $pdf->outlines[0]->childOutlines[5]->childOutlines[] =
     Zend_Pdf_Outline::create('Chapter 2', 'chapter_2');
 
@@ -924,116 +926,118 @@ $pdf->save($path, true);
         </para>
 
         <para>
-            Outline attributes may be retrieved or set using the following methods:
+            Outline Attribute können mit Hilfe der folgenden Methoden empfangen oder gesetzt werden:
         </para>
 
         <itemizedlist>
             <listitem>
                 <para>
-                    <methodname>string getTitle()</methodname> - get outline item title.
+                    <methodname>string getTitle()</methodname> - holt den Titel des Outline
+                    Elements.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <methodname>setTitle(string $title)</methodname> - set outline item title.
+                    <methodname>setTitle(string $title)</methodname> - setzt den Titel des Outline
+                    Elements.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <methodname>boolean isOpen()</methodname> - true if outline is open
-                    by default.
+                    <methodname>boolean isOpen()</methodname> - true wenn Outline standardmäßig
+                    geöffnet ist.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <methodname>setIsOpen(boolean $isOpen)</methodname> - set isOpen state.
+                    <methodname>setIsOpen(boolean $isOpen)</methodname> - setzt den isOpen Status.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <methodname>boolean isItalic()</methodname> - true if outline item
-                    is displayed in italic.
+                    <methodname>boolean isItalic()</methodname> - true wenn das Outline Element
+                    schräg dargestellt wird.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <methodname>setIsItalic(boolean $isItalic)</methodname> - set
-                    isItalic state.
+                    <methodname>setIsItalic(boolean $isItalic)</methodname> - setzt den isItalic
+                    Status.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <methodname>boolean isBold()</methodname> - true if outline item
-                    is displayed in bold.
+                    <methodname>boolean isBold()</methodname> - true wenn das Outline Element
+                    dick dargestellt wird.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <methodname>setIsBold(boolean $isBold)</methodname> - set
-                    isBold state.
+                    <methodname>setIsBold(boolean $isBold)</methodname> - setzt den isBold Status.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <methodname>Zend_Pdf_Color_Rgb getColor()</methodname> - get outline
-                    text color (null means black).
+                    <methodname>Zend_Pdf_Color_Rgb getColor()</methodname> - holt die Outline Text
+                    Farbe (null bedeutet schwarz).
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <methodname>setColor(Zend_Pdf_Color_Rgb $color)</methodname> - set
-                    outline text color (null means black).
+                    <methodname>setColor(Zend_Pdf_Color_Rgb $color)</methodname> - setzt die Outline
+                    Text Farbe (null bedeutet schwarz).
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <methodname>Zend_Pdf_Target getTarget()</methodname> - get outline
-                    target (action or explicit or named destination object).
+                    <methodname>Zend_Pdf_Target getTarget()</methodname> - holt das Outline Ziel
+                    (eine Aktion oder ein benanntes Zielobjekt).
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <methodname>setTarget(Zend_Pdf_Target|string $target)</methodname> - set
-                    outline target (action or destination). String may be used to identify
-                    named destination. Null means 'no target'.
+                    <methodname>setTarget(Zend_Pdf_Target|string $target)</methodname> - setzt ein
+                    Outline Ziel (Aktion oder Ziel). Ein String kann verwendet werden um ein
+                    benanntes Ziel zu identifizieren. Null bedeutet 'kein Ziel'.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <methodname>array getOptions()</methodname> - get outline attributes
-                    as an array.
+                    <methodname>array getOptions()</methodname> - holt die Outline Attribute als
+                    Array.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <methodname>setOptions(array $options)</methodname> - set outline options.
-                    The following options are recognized: 'title', 'open', 'color', 'italic',
-                    'bold', and 'target'.
+                    <methodname>setOptions(array $options)</methodname> - setzt Outline Optionen.
+                    Die folgenden Optionen werden erkannt: 'title', 'open', 'color', 'italic',
+                    'bold', und 'target'.
                 </para>
             </listitem>
         </itemizedlist>
 
         <para>
-            New outline may be created in two ways:
+            Ein neues Outline kann auf folgenden zwei Wegen erstellt werden:
         </para>
 
         <itemizedlist>
             <listitem>
                 <para>
-                    <methodname>Zend_Pdf_Outline::create(string $title[, Zend_Pdf_Target|string $target])</methodname>
+                    <methodname>Zend_Pdf_Outline::create(string $title[, Zend_Pdf_Target|string
+                        $target])</methodname>
                 </para>
             </listitem>
 
@@ -1045,15 +1049,16 @@ $pdf->save($path, true);
         </itemizedlist>
 
         <para>
-            Each outline object may have child outline items listed in
-            <varname>Zend_Pdf_Outline::$childOutlines</varname> public property.
-            It's an array of <classname>Zend_Pdf_Outline</classname> objects,
-            so outlines are organized in a tree.
+            Jedes Outline Objekt kann Kinder-Outline Elemente haben die in der öffentlichen
+            Eigenschaft <varname>Zend_Pdf_Outline::$childOutlines</varname> aufgelistet werden. Das
+            ist ein Array von <classname>Zend_Pdf_Outline</classname> Objekten. Deshalb sind
+            Outlines als Baum organisiert.
         </para>
 
         <para>
-            <classname>Zend_Pdf_Outline</classname> class implements RecursiveArray interface,
-            so child outlines may be recursively iterated using RecursiveIteratorIterator:
+            Die Klasse <classname>Zend_Pdf_Outline</classname> implementiert das RecursiveArray
+            Interface damit man durch Kinder-Outlines rekursiv iterieren kann indem
+            RecursiveIteratorIterator verwendet wird:
             <programlisting language="php"><![CDATA[
 $pdf = Zend_Pdf::load($path);
 
@@ -1064,12 +1069,14 @@ foreach ($pdf->outlines as $documentRootOutlineEntry) {
         $OutlineItemTarget = $childOutlineItem->getTarget();
         if ($OutlineItemTarget instanceof Zend_Pdf_Destination) {
             if ($pdf->resolveDestination($OutlineItemTarget) === null) {
-                // Mark Outline item with unresolvable destination using RED color
+                // Markiert ein Outline Element dessen Ziel
+                // nicht auflösbar ist mit Roter Farbe
                 $childOutlineItem->setColor(new Zend_Pdf_Color_Rgb(1, 0, 0));
             }
         } else if ($OutlineItemTarget instanceof Zend_Pdf_Action_GoTo) {
             if ($pdf->resolveDestination($OutlineItemTarget->setDestination()) === null) {
-                // Mark Outline item with unresolvable destination using RED color
+                // Markiert ein Outline Element dessen Ziel
+                // nicht auflösbar ist mit Roter Farbe
                 $childOutlineItem->setColor(new Zend_Pdf_Color_Rgb(1, 0, 0));
             }
         }
@@ -1082,74 +1089,79 @@ $pdf->save($path, true);
 
         <note>
             <para>
-                All outline items with unresolved destinations (or destinations of GoTo
-                actions) are updated while document saving by setting their targets to null.
-                So document will not be corrupted by removing pages referenced by outlines.
+                Alle Outline Elemente mit unlösbaren Zielen (oder Zielen auf GoTo Aktionen) werden
+                aktualisiert wärend das dokument gespeichert wird, indem dessen Ziele auf null
+                gesetzt werden. Damit wird das Dokument nicht durch entfernen von Seiten korrupiert
+                auf die durch Outlines referenziert wird.
             </para>
         </note>
     </sect2>
 
     <sect2 id="zend.pdf.pages.interactive-features.annotations">
-        <title>Annotations</title>
+        <title>Anhänge</title>
 
         <para>
-            An annotation associates an object such as a note, sound, or movie with a location
-            on a page of a PDF document, or provides a way to interact with the user by means
-            of the mouse and keyboard.
+            Ein Anhang assoziiert ein Objekt wie eine Notiz, einen Sound, oder einen Film mit einem
+            Ort auf einer Seite in einem PDF Dokument, oder bietet einen Weg um mit dem Benutzer zu
+            interagieren, durch Verwendung von Maus und Tastatur.
         </para>
 
         <para>
-            All annotations are represented by <classname>Zend_Pdf_Annotation</classname>
-            abstract class.
+            Alle Anhänge werden durch die abstrakte Klasse
+            <classname>Zend_Pdf_Annotation</classname> repräsentiert.
         </para>
 
         <para>
-            Annotation may be attached to a page using
-            <methodname>Zend_Pdf_Page::attachAnnotation(Zend_Pdf_Annotation $annotation)</methodname>
-            method.
+            Anhänge können einer Seite angehängt werden indem die Methode
+            <methodname>Zend_Pdf_Page::attachAnnotation(Zend_Pdf_Annotation
+                $annotation)</methodname> verwendet wird.
         </para>
 
         <para>
-            Three types of annotations may be created by user now:
+            Aktuell können drei Typen von Anhängen von Benutzern erstellt werden:
         </para>
 
         <itemizedlist>
             <listitem>
                 <para>
-                    <methodname>Zend_Pdf_Annotation_Link::create($x1, $y1, $x2, $y2, $target)</methodname>
-                    where <varname>$target</varname> is an action object or a destination or
-                    string (which may be used in place of named destination object).
+                    <methodname>Zend_Pdf_Annotation_Link::create($x1, $y1, $x2, $y2,
+                        $target)</methodname> wobei <varname>$target</varname> ein Aktionsobjekt
+                    oder ein Ziel oder ein String ist (welche für ein benanntes Zielobjekt
+                    verwendet werden kann).
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <methodname>Zend_Pdf_Annotation_Text::create($x1, $y1, $x2, $y2, $text)</methodname>
+                    <methodname>Zend_Pdf_Annotation_Text::create($x1, $y1, $x2, $y2,
+                        $text)</methodname>
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <methodname>Zend_Pdf_Annotation_FileAttachment::create($x1, $y1, $x2, $y2, $fileSpecification)</methodname>
+                    <methodname>Zend_Pdf_Annotation_FileAttachment::create($x1, $y1, $x2, $y2,
+                        $fileSpecification)</methodname>
                 </para>
             </listitem>
         </itemizedlist>
 
         <para>
-            A link annotation represents either a hypertext link to a destination elsewhere in
-            the document or an action to be performed.
+            Ein Link-Anhang repräsentiert entweder einen Hypertext Link oder ein Ziel anderswo im
+            Dokument oder eine Aktion die ausgeführt werden soll.
         </para>
 
         <para>
-            A text annotation represents a "sticky note" attached to a point in the PDF document.
+            Ein Text Anhang repräsentiert eine "schnelle Notiz" die an einem Punkt im PDF Dokument
+            angehängt ist.
         </para>
 
         <para>
-            A file attachment annotation contains a reference to a file.
+            Ein File Anhang enthält eine Referenz zu einer Datei.
         </para>
 
         <para>
-            The following methods are shared between all annotation types:
+            Die folgenden Methoden können von allen Typen von Anhängen verwendet werden:
         </para>
 
         <itemizedlist>
@@ -1195,13 +1207,13 @@ $pdf->save($path, true);
         </itemizedlist>
 
         <para>
-            Text annotation property is a text to be displayed for the annotation or, if this
-            type of annotation does not display text, an alternate description of the annotation’s
-            contents in human-readable form.
+            Die Text Anhang Eigenschaft ist ein Text der für den Anhang dargestellt wird oder, wenn
+            dieser Typ von Anhang keinen Text darstellt, eine alternative Beschreibung des
+            Inhalts des Anhangs in einer menschlich lesbaren Form.
         </para>
 
         <para>
-            Link annotation objects also provide two additional methods:
+            Link Anhangs Objekte bieten auch zwei zusätzliche Methoden:
         </para>
 
         <itemizedlist>

+ 70 - 25
documentation/manual/de/module_specs/Zend_Tool_Framework-WritingProviders.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 18033 -->
+<!-- EN-Revision: 18306 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.tool.framework.writing-providers">
     <title>Erstellen von Providern für die Verwendung mit Zend_Tool_Framework</title>
@@ -11,36 +11,81 @@
         <acronym>MVC</acronym> Anwendung ist.
     </para>
 
-    <sect2 id="zend.tool.framework.writing-providers.manifest">
-        <title>Eigene Provider mit einem Manifest bekanntmachen</title>
+    <sect2 id="zend.tool.framework.writing-providers.loading">
+        <title>Wie Zend Took eigene Provider findet</title>
 
         <para>
-            Bevor man eigene Provider schreibt muss man ein Manifest erstellen, welches Instanzen
-            der eigenen Provider zurückgibt, um es Zend Tool zu erlauben diese zu erkennen. Ein
-            Provider Manifest ist eine Implementation von
-            <interface>Zend_Tool_Framework_Manifest_ProviderManifestable</interface> und benötigt
-            die Methode <code>getProviders()</code> welche ein Array von initialisierten Providern
-            zurückgibt. Im gegensatz zu unserem ersten eigenen Provider
-            <classname>My_Component_HelloProvider</classname> erstellen wir das folgende Manifest:
+            Standardmäßig verwendet Zend Tool den IncludePathLoader um alle Provider zu finden die
+            man ausführen kann. Er iteriert rekursiv alle Verzeichnisse des Include Pfads und öffnet
+            alle Dateien die mit "Manifest.php" oder "Provider.php" enden. Alle Klassen in diesen
+            Dateien werden angeschaut ob Sie entweder
+            <classname>Zend_Tool_Framework_Provider_Interface</classname> oder
+            <classname>Zend_Tool_Framework_Manifest_ProviderManifestable</classname> implementieren.
+            Instanzen des Provider Interfaces machen die wirkliche Funtionalität aus und auf alle
+            Ihre öffentlichen Methoden kann man als Provider Aktionen zugreifen. Das Interface
+            ProviderManifestable benötigt trotzdem eine Implementation einer
+            <methodname>getProviders()</methodname> Methode welche ein Array der instanziierten
+            Provider Interface Instanzen zurückgibt.
         </para>
 
-        <programlisting language="php"><![CDATA[
-class My_Component_Manifest implements Zend_Tool_Framework_Manifest_ProviderManifestable
-{
-    public function getProviders()
-    {
-        return array(
-            new My_Component_HelloProvider()
-        );
-    }
-}
-]]>
-        </programlisting>
-
         <para>
-            Eine Provider Manifest Klasse muss immer mit dem Term "Manifest" enden, andernfalls
-            kann Sie Zend_Tool nicht automatisch erkennen wenn es den Include Pfad durchsucht.
+            Die folgenden Namensregeln zeigen wir man auf die Provider zugreifen kann die vom
+            IncludePathLoader gefunden wurden:
         </para>
+
+        <itemizedlist>
+            <listitem>
+                Der letzte Teil des Klassennamens der durch einen Unterstrich geteilt wird, wird
+                für den Provider Namen verwendet, z.B. führt "My_Provider_Hello" dazu dass auf den
+                eigenen Provider mit dem Namen "hello" zugegriffen werden kann.
+            </listitem>
+
+            <listitem>
+                Wenn der eigene Provider eine <methodname>getCode()</methodname> Methode hat, wird
+                diese statt der vorhergehenden Methode verwendet um den Namen zu erkennen.
+            </listitem>
+
+            <listitem>
+                Wenn der eigene Provider "Provider" als Präfix hat, er z.B.
+                <classname>My_HelloProvider</classname> genannt wird, dann wird dieser vom Namen
+                entfernt sodass der Provider "hello" genannt wird.
+            </listitem>
+        </itemizedlist>
+
+        <note>
+            <para>
+                Der IncludePathLoader folgt Symlinks nicht, was bedeutet das man Provider
+                Funktionalitäten nicht im eigenen Include Pfad verlinken kann, da diese physikalisch
+                im Include Pfad vorhanden sein müssen.
+            </para>
+        </note>
+
+        <example id="zend.tool.framework.writing-providers.loading.example">
+            <title>Eigene Provider mit einem Manifest bekanntmachen</title>
+
+            <para>
+                Man kann eigene Provider bei Zend Tool bekannt machen indem man ein Manifest mit
+                einem speziellen Dateinamen anbietet der mit "Manifest.php" endet. Ein Provider
+                Manifest ist eine Implementation von
+                <interface>Zend_Tool_Framework_Manifest_ProviderManifestable</interface> und
+                benötigt die Methode <code>getProviders()</code> welche ein Array von instanziierten
+                Providern zurückgibt. Anders als unser erster eigener Provider erstellt
+                <classname>My_Component_HelloProvider</classname> das folgende Manifest:
+            </para>
+
+            <programlisting language="php"><![CDATA[
+    class My_Component_Manifest implements Zend_Tool_Framework_Manifest_ProviderManifestable
+    {
+        public function getProviders()
+        {
+            return array(
+                new My_Component_HelloProvider()
+            );
+        }
+    }
+    ]]>
+            </programlisting>
+        </example>
     </sect2>
 
     <sect2 id="zend.tool.framework.writing-providers.basic">