Browse Source

[DOCUMENTATION] German:

- manual fixes

git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@15497 44c647ce-9c0f-0410-b52a-842ac1e357ba
thomas 16 years ago
parent
commit
659875d837

+ 60 - 55
documentation/manual/de/module_specs/Zend_Controller-Basics.xml

@@ -5,11 +5,11 @@
     <title>Zend_Controller Grundlagen</title>
 
     <para>
-        Das <classname>Zend_Controller</classname> System wurde leichtgewichtig, modular und erweiterbar
-        aufgebaut. Das Design ist einfach, um den Benutzern viel Flexibilität und Freiheiten zu
-        ermöglichen. Dennoch bietet es ausreichend Struktur, damit Systeme, die auf den
-        <classname>Zend_Controller</classname> aufbauen, gemeinsame Konventionen befolgen und einen
-        ähnlichen Code Aufbau verwenden.
+        Das <classname>Zend_Controller</classname> System wurde leichtgewichtig, modular und
+        erweiterbar aufgebaut. Das Design ist einfach, um den Benutzern viel Flexibilität und
+        Freiheiten zu ermöglichen. Dennoch bietet es ausreichend Struktur, damit Systeme, die auf
+        den <classname>Zend_Controller</classname> aufbauen, gemeinsame Konventionen befolgen und
+        einen ähnlichen Code Aufbau verwenden.
     </para>
 
     <para>
@@ -43,8 +43,8 @@
 
             <listitem>
                 <para>
-                    <classname>Zend_Controller_Request_Abstract</classname> (oft als das <code>Request
-                    Objekt</code> bezeichnet) repräsentiert die Umgebung
+                    <classname>Zend_Controller_Request_Abstract</classname> (oft als das
+                    <code>Request Objekt</code> bezeichnet) repräsentiert die Umgebung
                     der Anfrage und stellt Methoden für das Setzen und Abfragen der Namen für
                     Controller und Aktion sowie jeder Anfrageparameter bereit. Zusätzlich
                     behält es die Übersicht darüber, ob die enthaltene Aktion von
@@ -56,16 +56,17 @@
                 </para>
 
                 <para>
-                    Standardmäßig wird <classname>Zend_Controller_Request_Http</classname> verwendet,
-                    welches den Zugriff auf die komplette HTTP Anfrageumgebung ermöglicht.
+                    Standardmäßig wird <classname>Zend_Controller_Request_Http</classname>
+                    verwendet, welches den Zugriff auf die komplette HTTP Anfrageumgebung
+                    ermöglicht.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <classname>Zend_Controller_Router_Interface</classname> wird verwendet, um Router zu
-                    definieren. Routing ist der Prozess, bei dem die Anfrageumgebung untersucht
-                    wird, um zu ermitteln, welcher Controller und welche Aktion dieses
+                    <classname>Zend_Controller_Router_Interface</classname> wird verwendet, um
+                    Router zu definieren. Routing ist der Prozess, bei dem die Anfrageumgebung
+                    untersucht wird, um zu ermitteln, welcher Controller und welche Aktion dieses
                     Controllers diese Anfrage verarbeiten soll. Dieser Controller, diese Aktion
                     und optionale Parameter werden dann im Request Object gesetzt, das vom
                     <classname>Zend_Controller_Dispatcher_Standard</classname> verarbeitet wird. Das
@@ -74,20 +75,20 @@
                 </para>
 
                 <para>
-                    Der Standardrouter <classname>Zend_Controller_Router_Rewrite</classname> nimmt den
-                    URI Endpunkt entgegen, der in <classname>Zend_Controller_Request_Http</classname>
-                    angegeben ist, und zerlegt ihn in einen Controller, eine Aktion und die
-                    Parameter basierend auf den Pfadinformationen der URL. Zum Beispiel würde
-                    die URL <code>http://localhost/foo/bar/key/value</code> übersetzt, um den
+                    Der Standardrouter <classname>Zend_Controller_Router_Rewrite</classname> nimmt
+                    den URI Endpunkt entgegen, der in
+                    <classname>Zend_Controller_Request_Http</classname> angegeben ist, und zerlegt
+                    ihn in einen Controller, eine Aktion und die Parameter basierend auf den
+                    Pfadinformationen der URL. Zum Beispiel würde die URL
+                    <code>http://localhost/foo/bar/key/value</code> übersetzt, um den
                     <code>foo</code> Controller und die <code>bar</code> Aktion zu verwenden und
                     einen Parameter <code>key</code> mit dem Wert <code>value</code> anzugeben.
                 </para>
 
                 <para>
-                    <classname>Zend_Controller_Router_Rewrite</classname> kann auch für beliebige Pfade
-                    verwendet werden; man beachte <link
-                        linkend="zend.controller.router">die
-                    Rewrite Router Dokumentation</link> für weitere Informationen.
+                    <classname>Zend_Controller_Router_Rewrite</classname> kann auch für beliebige
+                    Pfade verwendet werden; man beachte <link linkend="zend.controller.router">die
+                        Rewrite Router Dokumentation</link> für weitere Informationen.
                 </para>
             </listitem>
 
@@ -113,22 +114,24 @@
                 </para>
 
                 <para>
-                    Der Standarddispatcher ist <classname>Zend_Controller_Dispatcher_Standard</classname>.
-                    Er definiert Controller als MixedCasedKlassen, die auf das Wort Controller
-                    enden, und Aktionsmethoden als camelCasedMethoden, die auf das Wort Action
-                    enden: <code>SomeFooController::barAction</code>. In diesem Fall wird auf
-                    den Controller über <code>somefoo</code> und auf die Aktion über
-                    <code>bar</code> zugegriffen.
+                    Der Standarddispatcher ist
+                    <classname>Zend_Controller_Dispatcher_Standard</classname>. Er definiert
+                    Controller als MixedCasedKlassen, die auf das Wort Controller enden, und
+                    Aktionsmethoden als camelCasedMethoden, die auf das Wort Action enden:
+                    <code>SomeFooController::barAction</code>. In diesem Fall wird auf den
+                    Controller über <code>somefoo</code> und auf die Aktion über <code>bar</code>
+                    zugegriffen.
                 </para>
 
                 <note>
                     <title>Konventionen von Namens-Schreibweisen</title>
 
                     <para>
-                        Da Menschen grundsätzlich inkonsistent sind im Behandeln und der Gründlichkeit beim
-                        Tippen von Links, normalisiert Zend Framework die Pfad Informationen zur
-                        Kleinschreibung. Das beeinflut natürlich wie Kontroller und Aktionen benannt werden
-                        ... oder wie auf diese in Links referiert werden kann.
+                        Da Menschen grundsätzlich inkonsistent sind im Behandeln und der
+                        Gründlichkeit beim Tippen von Links, normalisiert Zend Framework die Pfad
+                        Informationen zur Kleinschreibung. Das beeinflut natürlich wie Kontroller
+                        und Aktionen benannt werden ... oder wie auf diese in Links referiert werden
+                        kann.
                     </para>
 
                     <para>
@@ -140,9 +143,10 @@
                     </para>
 
                     <para>
-                        Als Beispiel, wenn man zur Aktion in <code>FooBarController::bazBatAction()</code>
-                        kommen will, muß zu Ihr mit der URL as <code>/foo-bar/baz-bat</code> oder
-                        <code>/foo.bar/baz.bat</code> referiert werden.
+                        Als Beispiel, wenn man zur Aktion in
+                        <code>FooBarController::bazBatAction()</code> kommen will, muß zu Ihr mit
+                        der URL as <code>/foo-bar/baz-bat</code> oder <code>/foo.bar/baz.bat</code>
+                        referiert werden.
                     </para>
                 </note>
             </listitem>
@@ -151,42 +155,43 @@
                 <para>
                     <classname>Zend_Controller_Action</classname> ist die elementare Controller
                     Komponente. Jeder Controller ist eine einzelne Klasse, welche die
-                    <classname>Zend_Controller_Action</classname> Klasse erweitert und Methoden für die
-                    Aktionen enthält.
+                    <classname>Zend_Controller_Action</classname> Klasse erweitert und Methoden für
+                    die Aktionen enthält.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <classname>Zend_Controller_Response_Abstract</classname> definiert eine grundlegende
-                    Response Klasse, um Antworten der Aktion aus den Controllern zu sammeln und
-                    zurück zu geben. Es sammelt sowohl Header als auch Inhalte.
+                    <classname>Zend_Controller_Response_Abstract</classname> definiert eine
+                    grundlegende Response Klasse, um Antworten der Aktion aus den Controllern zu
+                    sammeln und zurück zu geben. Es sammelt sowohl Header als auch Inhalte.
                 </para>
 
                 <para>
-                    Die Standard Response Klasse ist <classname>Zend_Controller_Response_Http</classname>,
-                    welches in einer HTTP Umgebung verwendet werden kann.
+                    Die Standard Response Klasse ist
+                    <classname>Zend_Controller_Response_Http</classname>, welches in einer HTTP
+                    Umgebung verwendet werden kann.
                 </para>
             </listitem>
         </itemizedlist>
 
     <para>
-        Der Ablauf vom <classname>Zend_Controller</classname> ist relativ einfach. Eine Anfrage wird vom
-        <classname>Zend_Controller_Front</classname> empfangen, der wiederum
-        <classname>Zend_Controller_Router_Rewrite</classname> aufruft, um zu ermitteln, welcher Controller
-        (und welche Aktion in dem Controller) ausgeführt werden soll.
-        <classname>Zend_Controller_Router_Rewrite</classname> zerteilt die URI um den Namen des Controllers
-        und der Aktion für den Request zu setzen. <classname>Zend_Controller_Front</classname> durchläuft
-        dann eine Dispatcher Schleife. Er ruft <classname>Zend_Controller_Dispatcher_Standard</classname>
-        auf und übergibt den Request, um den Controller und die Aktion auszuführen, die im Request
-        spezifiziert wurden (oder verwendet die  Standardwerte). Wenn der Controller fertig ist,
-        wird die Kontrolle wieder an <classname>Zend_Controller_Front</classname> übergeben. Wenn der
-        Controller durch das Zurücksetzen des Dispatch Status des Requests angezeigt hat, dass
-        ein weiterer Controller ausgeführt werden soll, wird der Durchlauf fortgesetzt und ein
-        weiterer Dispatcher Prozess wird durchlaufen. Andernfalls endet der Prozess.
+        Der Ablauf vom <classname>Zend_Controller</classname> ist relativ einfach. Eine Anfrage wird
+        vom <classname>Zend_Controller_Front</classname> empfangen, der wiederum
+        <classname>Zend_Controller_Router_Rewrite</classname> aufruft, um zu ermitteln, welcher
+        Controller (und welche Aktion in dem Controller) ausgeführt werden soll.
+        <classname>Zend_Controller_Router_Rewrite</classname> zerteilt die URI um den Namen des
+        Controllers und der Aktion für den Request zu setzen.
+        <classname>Zend_Controller_Front</classname> durchläuft dann eine Dispatcher Schleife. Er
+        ruft <classname>Zend_Controller_Dispatcher_Standard</classname> auf und übergibt den
+        Request, um den Controller und die Aktion auszuführen, die im Request spezifiziert wurden
+        (oder verwendet die  Standardwerte). Wenn der Controller fertig ist, wird die Kontrolle
+        wieder an <classname>Zend_Controller_Front</classname> übergeben. Wenn der Controller durch
+        das Zurücksetzen des Dispatch Status des Requests angezeigt hat, dass ein weiterer
+        Controller ausgeführt werden soll, wird der Durchlauf fortgesetzt und ein weiterer
+        Dispatcher Prozess wird durchlaufen. Andernfalls endet der Prozess.
     </para>
 </sect1>
-
 <!--
 vim:se ts=4 sw=4 et:
 -->

+ 26 - 24
documentation/manual/de/module_specs/Zend_Controller-Dispatcher.xml

@@ -9,16 +9,16 @@
 
         <para>
             Dispatching ist der Prozess, das Request Objekt
-            <classname>Zend_Controller_Request_Abstract</classname> zu übernehmen, die dort enthaltenen
-            Modul, Controller und Aktion Namen sowie die optionalen Parameter zu extrahieren und
-            dann den Controller zu instanzieren und die Aktion dieses Controllers aufzurufen.
-            Wenn kein Modul, kein Controller oder keine Aktion gefunden wurde, werden dafür
-            Standardwerte verwendet. <classname>Zend_Controller_Dispatcher_Standard</classname> legt
-            <code>index</code> für jede der Controller und Action Standardwerte fest und
-            <code>default</code> für den Standardwert des Moduls, erlaubt dem Entwickler aber auch,
-            diese durch Verwendung der <code>setDefaultController()</code>,
-            <code>setDefaultAction()</code> und <code>setDefaultModule()</code> Methoden zu
-            verändern.
+            <classname>Zend_Controller_Request_Abstract</classname> zu übernehmen, die dort
+            enthaltenen Modul, Controller und Aktion Namen sowie die optionalen Parameter zu
+            extrahieren und dann den Controller zu instanzieren und die Aktion dieses Controllers
+            aufzurufen. Wenn kein Modul, kein Controller oder keine Aktion gefunden wurde, werden
+            dafür Standardwerte verwendet.
+            <classname>Zend_Controller_Dispatcher_Standard</classname> legt <code>index</code> für
+            jede der Controller und Action Standardwerte fest und <code>default</code> für den
+            Standardwert des Moduls, erlaubt dem Entwickler aber auch, diese durch Verwendung der
+            <code>setDefaultController()</code>, <code>setDefaultAction()</code> und
+            <code>setDefaultModule()</code> Methoden zu verändern.
         </para>
 
         <note>
@@ -96,21 +96,22 @@ public function bazAction()
         <title>Erben vom Dispatcher</title>
 
         <para>
-            <classname>Zend_Controller_Front</classname> ruft zuerst den Router auf, um die erste Aktion
-            für den Request zu ermitteln. Danach startet es die Dispatch Schleife, welche
+            <classname>Zend_Controller_Front</classname> ruft zuerst den Router auf, um die erste
+            Aktion für den Request zu ermitteln. Danach startet es die Dispatch Schleife, welche
             den Dispatcher aufruft, um die Aktion zu verarbeiten.
         </para>
 
         <para>
-            Der Dispatcher benötigt eine Vielzahl von Daten um seine Arbeit zu erledigen - er muß wissen wie die
-            Namen von Controller und Aktionen formatiert werden sollen, wo nach Dateien der Controller Klassen
-            gesucht wird, ob ein übergebener Modulname gültig ist oder nicht, und eine API um festzustellen ob eine
-            gegebene Anfrage, basierend auf den anderen vorhandenen Informationen, bearbeitbar ist.
+            Der Dispatcher benötigt eine Vielzahl von Daten um seine Arbeit zu erledigen - er muß
+            wissen wie die Namen von Controller und Aktionen formatiert werden sollen, wo nach
+            Dateien der Controller Klassen gesucht wird, ob ein übergebener Modulname gültig ist
+            oder nicht, und eine API um festzustellen ob eine gegebene Anfrage, basierend auf den
+            anderen vorhandenen Informationen, bearbeitbar ist.
         </para>
 
         <para>
-            <classname>Zend_Controller_Dispatcher_Interface</classname> definiert die folgenden Methoden die für jede
-            Dispatcher Implementierung benötigt werden:
+            <classname>Zend_Controller_Dispatcher_Interface</classname> definiert die folgenden
+            Methoden die für jede Dispatcher Implementierung benötigt werden:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -268,16 +269,17 @@ interface Zend_Controller_Dispatcher_Interface
 
         <para>
             In den meisten Fällen sollte trotzdem einfach die abstrakte Klasse
-            <classname>Zend_Controller_Dispatcher_Abstract</classname> erweitert werden, und welcher jede davon schon
-            definiert wurde, oder <classname>Zend_Controller_Dispatcher_Standard</classname> um Funktionalitäten des
+            <classname>Zend_Controller_Dispatcher_Abstract</classname> erweitert werden, und welcher
+            jede davon schon definiert wurde, oder
+            <classname>Zend_Controller_Dispatcher_Standard</classname> um Funktionalitäten des
             Standard Dispatchers zu modifizieren.
         </para>
 
         <para>
-            Mögliche Gründe um den Dispatcher zu erweitern beinhaltet den Wunsch eine anderes Klassen oder
-            Methoden Namensschema in den eigenen Aktion Controllern zu verwenden, oder den Wunsch ein anderes
-            Verarbeitungs Paradigma wie das Verarbeiten zu Aktionsdateien unter den Controller Verzeichnissen
-            (statt auf Klassen Methoden zu verarbeiten).
+            Mögliche Gründe um den Dispatcher zu erweitern beinhaltet den Wunsch eine anderes
+            Klassen oder Methoden Namensschema in den eigenen Aktion Controllern zu verwenden, oder
+            den Wunsch ein anderes Verarbeitungs Paradigma wie das Verarbeiten zu Aktionsdateien
+            unter den Controller Verzeichnissen (statt auf Klassen Methoden zu verarbeiten).
         </para>
     </sect2>
 </sect1>

+ 92 - 79
documentation/manual/de/module_specs/Zend_Controller-Exceptions.xml

@@ -8,17 +8,18 @@
         <title>Einführung</title>
 
         <para>
-            Die MVC Komponenten im Zend Framework verwenden einen Front Controller, was bedeutet das alle
-            Anfragen zu einer bestimmten Site über einen einzelnen Eintrittspunkt laufen. Als Ergebnis treten
-            alle Ausnahmen eventuell am Front Controllerauf, was es Entwicklern erlaubt diese an einem
-            einzelnen Ort zu behandeln.
+            Die MVC Komponenten im Zend Framework verwenden einen Front Controller, was bedeutet das
+            alle Anfragen zu einer bestimmten Site über einen einzelnen Eintrittspunkt laufen. Als
+            Ergebnis treten alle Ausnahmen eventuell am Front Controllerauf, was es Entwicklern
+            erlaubt diese an einem einzelnen Ort zu behandeln.
         </para>
 
         <para>
-            Trotzdem enthalten Ausnahmemeldungen und Backtrace Informationen oft sensitive Systeminformationen,
-            wie SQL Anweisungen, Dateiorte, und andere. Um zu helfen die eigene Site zu schützen, werden
-            standardmäßig alle Ausnahmen von <classname>Zend_Controller_Front</classname> gefangen und im Antwortobjekt
-            registriert; zusätzlich zeigt das Antwortobjekt die Ausnahmemeldungen standardmäßig nicht an.
+            Trotzdem enthalten Ausnahmemeldungen und Backtrace Informationen oft sensitive
+            Systeminformationen, wie SQL Anweisungen, Dateiorte, und andere. Um zu helfen die eigene
+            Site zu schützen, werden standardmäßig alle Ausnahmen von
+            <classname>Zend_Controller_Front</classname> gefangen und im Antwortobjekt registriert;
+            zusätzlich zeigt das Antwortobjekt die Ausnahmemeldungen standardmäßig nicht an.
         </para>
     </sect2>
 
@@ -26,16 +27,17 @@
         <title>Behandeln von Ausnahmen</title>
 
         <para>
-            Verschiedene Mechanismen sind bereits in die MVC Komponenten eingebaut um die Behandlung von
-            Ausnahmen zu erlauben.
+            Verschiedene Mechanismen sind bereits in die MVC Komponenten eingebaut um die Behandlung
+            von Ausnahmen zu erlauben.
         </para>
 
         <itemizedlist>
             <listitem>
                 <para>
                     Standardmäßig ist das
-                    <link linkend="zend.controller.plugins.standard.errorhandler">Error Handler Plugin</link>
-                    registriert und aktiv. Dieses Plugin wurde erstellt um folgendes zu behandeln:
+                    <link linkend="zend.controller.plugins.standard.errorhandler">Error Handler
+                        Plugin</link> registriert und aktiv. Dieses Plugin wurde erstellt um
+                    folgendes zu behandeln:
                 </para>
 
                 <itemizedlist>
@@ -53,8 +55,8 @@
 
                 <para>
                     Es arbeitet als <code>postDispatch()</code> Plugin und prüft ob eine Dispatcher,
-                    Actioncontroller oder andere Ausnahme aufgetreten ist. Wenn das so ist, leitet es an den
-                    Error Handler Controller weiter.
+                    Actioncontroller oder andere Ausnahme aufgetreten ist. Wenn das so ist, leitet
+                    es an den Error Handler Controller weiter.
                 </para>
 
                 <para>
@@ -67,9 +69,10 @@
                 <para><classname>Zend_Controller_Front::throwExceptions()</classname></para>
 
                 <para>
-                    Durch die Übergabe eines boolschen True Wertes an diese Methode, kann dem Front Controller
-                    mitgeteilt werden das, statt der Ansammlung der Ausnahmen im Antwortobjekt oder der Verwendung
-                    des Error Handler Plugin's, man diese Ausnahmen selbst behandeln will. Als Beispiel:
+                    Durch die Übergabe eines boolschen True Wertes an diese Methode, kann dem Front
+                    Controller mitgeteilt werden das, statt der Ansammlung der Ausnahmen im
+                    Antwortobjekt oder der Verwendung des Error Handler Plugin's, man diese
+                    Ausnahmen selbst behandeln will. Als Beispiel:
                 </para>
 
                 <programlisting role="php"><![CDATA[
@@ -82,20 +85,23 @@ try {
 ]]></programlisting>
 
                 <para>
-                    Diese Methode ist möglicherweise der einfachste Weg um eigene Ausnahmebehandlungen
-                    hinzuzufügen die den vollen Umfang der möglichen Ausnahmen der Front Controller Anwendung
-                    behandeln.
+                    Diese Methode ist möglicherweise der einfachste Weg um eigene
+                    Ausnahmebehandlungen hinzuzufügen die den vollen Umfang der möglichen Ausnahmen
+                    der Front Controller Anwendung behandeln.
                 </para>
             </listitem>
 
             <listitem>
-                <para><classname>Zend_Controller_Response_Abstract::renderExceptions()</classname></para>
+                <para>
+                    <classname>Zend_Controller_Response_Abstract::renderExceptions()</classname>
+                </para>
 
                 <para>
-                    Durch die Übergabe eines boolschen True Wertes an diese Methode kann dem Antwortobjekt
-                    mitgeteilt werden das es Ausnahmenachrichten und Backtrace darstellen soll, wenn es
-                    selbst dargestellt wird. In diesem Szenario wird jede Ausnahme die an der Anwendung
-                    auftritt angezeigt. Das wird nur in nicht-produktiven Umgebungen vorgeschlagen.
+                    Durch die Übergabe eines boolschen True Wertes an diese Methode kann dem
+                    Antwortobjekt mitgeteilt werden das es Ausnahmenachrichten und Backtrace
+                    darstellen soll, wenn es selbst dargestellt wird. In diesem Szenario wird jede
+                    Ausnahme die an der Anwendung auftritt angezeigt. Das wird nur in
+                    nicht-produktiven Umgebungen vorgeschlagen.
                 </para>
             </listitem>
 
@@ -108,11 +114,11 @@ try {
                 <para>
                     Durch die Übergabe eines boolschen True zu
                     <classname>Zend_Controller_Front::returnResponse()</classname>, wird
-                    <classname>Zend_Controller_Front::dispatch()</classname> die Antwort nicht darstellen, aber diese
-                    stattdessen zurückgeben. Sobald man die antwort hat, kann diese getestet werden um zu
-                    sehen ob irgendwelche Ausnahmen gefangen wurden indem die <code>isException()</code>
-                    Methode verwendet, und die Ausnahme über die <code>getException()</code> Methode
-                    empfangen wird. Als Beispiel:
+                    <classname>Zend_Controller_Front::dispatch()</classname> die Antwort nicht
+                    darstellen, aber diese stattdessen zurückgeben. Sobald man die antwort hat, kann
+                    diese getestet werden um zu sehen ob irgendwelche Ausnahmen gefangen wurden
+                    indem die <code>isException()</code> Methode verwendet, und die Ausnahme über
+                    die <code>getException()</code> Methode empfangen wird. Als Beispiel:
                 </para>
 
                 <programlisting role="php"><![CDATA[
@@ -129,9 +135,10 @@ if ($response->isException()) {
 
                 <para>
                     Der primäre Vorteil die diese Methode über
-                    <classname>Zend_Controller_Front::throwExceptions()</classname> bietet ist, das Sie es erlaubt
-                    die Antwort wahlweise darzustellen nachdem die Ausnahme behandelt wurde. Das fängt jede
-                    Ausnahme in der Kontrollerkette, im Gegensatz zum Error Handler Plugin.
+                    <classname>Zend_Controller_Front::throwExceptions()</classname> bietet ist, das
+                    Sie es erlaubt die Antwort wahlweise darzustellen nachdem die Ausnahme behandelt
+                    wurde. Das fängt jede Ausnahme in der Kontrollerkette, im Gegensatz zum Error
+                    Handler Plugin.
                 </para>
             </listitem>
         </itemizedlist>
@@ -143,8 +150,8 @@ if ($response->isException()) {
         <para>
             Die verschiedenen MVC Komponenten -- Anfragen, Router, Dispatcher, Actioncontroller, und
             Antwortobjekte -- können alle gelegentlich Ausnahmen werfen. Einige Ausnahmen können
-            wahlweise überschrieben werden und andere werden Verwendet um dem Entwickler anzuzeigen das
-            die eigene Struktur der Anwendung überdacht werden sollte.
+            wahlweise überschrieben werden und andere werden Verwendet um dem Entwickler anzuzeigen
+            das die eigene Struktur der Anwendung überdacht werden sollte.
         </para>
 
         <para>Einige Beispiele:</para>
@@ -152,9 +159,9 @@ if ($response->isException()) {
         <itemizedlist>
             <listitem>
                 <para>
-                    <classname>Zend_Controller_Dispatcher::dispatch()</classname> wird standardmäßig eine Ausnahme werfen
-                    wenn ein ungültiger Controller angefragt wird. Es gibt zwei empfohlene Wege um damit
-                    umzugehen.
+                    <classname>Zend_Controller_Dispatcher::dispatch()</classname> wird standardmäßig
+                    eine Ausnahme werfen wenn ein ungültiger Controller angefragt wird. Es gibt zwei
+                    empfohlene Wege um damit umzugehen.
                 </para>
 
                 <itemizedlist>
@@ -175,11 +182,12 @@ $dispatcher->setParam('useDefaultControllerAlways', true);
 ]]></programlisting>
 
                         <para>
-                            Wenn dieses Flag gesetzt ist, wird der Dispatcher den Standardcontroller und die
-                            Standardaktion verwenden statt eine Ausnahme zu werfen. Der Nachteil dieser Methode
-                            ist das jegliche Schreibfehler die ein Benutzer macht wenn er auf die Site
-                            zugreift, trotzdem aufgelöst werden und die Homepage angezeigt wird, was bei der
-                            Optimierung von Suchmaschienen verherenden Schaden anrichten kann.
+                            Wenn dieses Flag gesetzt ist, wird der Dispatcher den Standardcontroller
+                            und die Standardaktion verwenden statt eine Ausnahme zu werfen. Der
+                            Nachteil dieser Methode ist das jegliche Schreibfehler die ein Benutzer
+                            macht wenn er auf die Site zugreift, trotzdem aufgelöst werden und die
+                            Homepage angezeigt wird, was bei der Optimierung von Suchmaschienen
+                            verherenden Schaden anrichten kann.
                         </para>
                     </listitem>
 
@@ -188,9 +196,10 @@ $dispatcher->setParam('useDefaultControllerAlways', true);
                             Die Ausnahme die von <code>dispatch()</code> geworfen wird, ist eine
                             <classname>Zend_Controller_Dispatcher_Exception</classname> die den Text
                             'Invalid controller specified' enthält. Eine der Methoden die in
-                            <link linkend="zend.controller.exceptions.handling">der vorhergehenden Sektion</link>
-                            beschrieben wurden können verwendet werden um die Ausnahme zu fangen und dann zu
-                            einer generellen Fehlerseite oder der Homepage umzuleiten.
+                            <link linkend="zend.controller.exceptions.handling">der vorhergehenden
+                                Sektion</link> beschrieben wurden können verwendet werden um die
+                            Ausnahme zu fangen und dann zu einer generellen Fehlerseite oder der
+                            Homepage umzuleiten.
                         </para>
                     </listitem>
                 </itemizedlist>
@@ -199,16 +208,18 @@ $dispatcher->setParam('useDefaultControllerAlways', true);
             <listitem>
                 <para>
                     <classname>Zend_Controller_Action::__call()</classname> wird eine
-                    <classname>Zend_Controller_Action_Exception</classname> geworfen wenn eine nicht existierende Aktion
-                    einer Methode nicht dargestellt werden kann. Normalerweise wird es gewünscht sein in Fällen
-                    wie diesen eine Standardaktion im Controller zu verwenden. Wege um das zu tun beinhalten:
+                    <classname>Zend_Controller_Action_Exception</classname> geworfen wenn eine nicht
+                    existierende Aktion einer Methode nicht dargestellt werden kann. Normalerweise
+                    wird es gewünscht sein in Fällen wie diesen eine Standardaktion im Controller zu
+                    verwenden. Wege um das zu tun beinhalten:
                 </para>
 
                 <itemizedlist>
                     <listitem>
                         <para>
-                            Eine Subklasse von <classname>Zend_Controller_Action</classname> erstellen und die
-                            <code>__call()</code> Methode überschreiben. Als Beispiel:
+                            Eine Subklasse von <classname>Zend_Controller_Action</classname>
+                            erstellen und die <code>__call()</code> Methode überschreiben. Als
+                            Beispiel:
                         </para>
 
                         <programlisting role="php"><![CDATA[
@@ -227,16 +238,16 @@ class My_Controller_Action extends Zend_Controller_Action
 }
 ]]></programlisting>
                         <para>
-                            Das obige Beispiel fängt jede nicht definierte Aktionsmethode ab die aufgerufen wird
-                            und leitet Sie zur Standardaktion im Controller um.
+                            Das obige Beispiel fängt jede nicht definierte Aktionsmethode ab die
+                            aufgerufen wird und leitet Sie zur Standardaktion im Controller um.
                         </para>
                     </listitem>
 
                     <listitem>
                         <para>
-                            Eine Subklasse von <classname>Zend_Controller_Dispatcher</classname> erstellen und die
-                            <code>getAction()</code> Methode überschreiben um zu prüfen ob die Aktion
-                            existiert. Als Beispiel:
+                            Eine Subklasse von <classname>Zend_Controller_Dispatcher</classname>
+                            erstellen und die <code>getAction()</code> Methode überschreiben um zu
+                            prüfen ob die Aktion existiert. Als Beispiel:
                         </para>
 
                         <programlisting role="php"><![CDATA[
@@ -265,40 +276,42 @@ class My_Controller_Dispatcher extends Zend_Controller_Dispatcher
 ]]></programlisting>
 
                         <para>
-                            Der obige Code prüft ob die angefragte Aktion in der Controllerklasse existiert ;
-                            wenn nicht wird die Aktion auf die Standardaktion resetiert.
+                            Der obige Code prüft ob die angefragte Aktion in der Controllerklasse
+                            existiert ; wenn nicht wird die Aktion auf die Standardaktion resetiert.
                         </para>
 
                         <para>
-                            Diese Methode ist nützlich, weil Sie die Aktion transparent ändert bevor diese
-                            letztendlich dargestellt wird. Trotzdem bedeutet es auch, das Schreibfehler in der
-                            URL trotzdem richtig dargestellt werden, was für die Optimierung von Suchmaschinen
-                            nicht gut ist.
+                            Diese Methode ist nützlich, weil Sie die Aktion transparent ändert bevor
+                            diese letztendlich dargestellt wird. Trotzdem bedeutet es auch, das
+                            Schreibfehler in der URL trotzdem richtig dargestellt werden, was für
+                            die Optimierung von Suchmaschinen nicht gut ist.
                         </para>
                     </listitem>
 
                     <listitem>
                         <para>
-                            Verwenden von <classname>Zend_Controller_Action::preDispatch()</classname> oder
-                            <classname>Zend_Controller_Plugin_Abstract::preDispatch()</classname> um eine ungültige
-                            Aktion zu identifizieren.
+                            Verwenden von
+                            <classname>Zend_Controller_Action::preDispatch()</classname> oder
+                            <classname>Zend_Controller_Plugin_Abstract::preDispatch()</classname> um
+                            eine ungültige Aktion zu identifizieren.
                         </para>
 
                         <para>
-                            Durch das Erstellen einer Subklasse von <classname>Zend_Controller_Action</classname> und
-                            dem modifizieren von <code>preDispatch()</code>, können alle eigenen Kontroller
-                            geändert werden damit Sie an andere Aktionen weiterleiten oder umleiten bevor
-                            die Aktion letztendlich dargestellt wird. Der Code hierfür schaut ähnlich wie der
-                            Code für das Überschreiben von <code>__call()</code> aus, der oben schon angezeigt
-                            wurde.
+                            Durch das Erstellen einer Subklasse von
+                            <classname>Zend_Controller_Action</classname> und dem modifizieren von
+                            <code>preDispatch()</code>, können alle eigenen Kontroller geändert
+                            werden damit Sie an andere Aktionen weiterleiten oder umleiten bevor die
+                            Aktion letztendlich dargestellt wird. Der Code hierfür schaut ähnlich
+                            wie der Code für das Überschreiben von <code>__call()</code> aus, der
+                            oben schon angezeigt wurde.
                         </para>
 
                         <para>
-                            Alternativ kann diese Information in einem globalen Plugin geprüft werden. Das
-                            hat den Vorteil das es unabhängig von Actioncontroller ist; wenn die eigene
-                            Anwendung aus einer Reihe von Actioncontrollern besteht, und nicht alle von der
-                            gleichen Klasse abgeleitet sind, kann diese Methode Kontinuität in der
-                            Handhabung der verschiedenen Klassen bringen.
+                            Alternativ kann diese Information in einem globalen Plugin geprüft
+                            werden. Das hat den Vorteil das es unabhängig von Actioncontroller ist;
+                            wenn die eigene Anwendung aus einer Reihe von Actioncontrollern besteht,
+                            und nicht alle von der gleichen Klasse abgeleitet sind, kann diese
+                            Methode Kontinuität in der Handhabung der verschiedenen Klassen bringen.
                         </para>
 
                         <para>
@@ -334,9 +347,9 @@ class My_Controller_PreDispatchPlugin extends Zend_Controller_Plugin_Abstract
 ]]></programlisting>
 
                         <para>
-                            In diesem Beispiel wird geprüft ob die angefragte Aktion im Controller vorhanden ist.
-                            Wenn dem nicht so ist, wird auf die Standardaktion im Controller umgeleitet und
-                            die Ausführung des Sktipts sofort beendet.
+                            In diesem Beispiel wird geprüft ob die angefragte Aktion im Controller
+                            vorhanden ist. Wenn dem nicht so ist, wird auf die Standardaktion im
+                            Controller umgeleitet und die Ausführung des Sktipts sofort beendet.
                         </para>
                     </listitem>
                 </itemizedlist>

+ 57 - 48
documentation/manual/de/module_specs/Zend_Controller-Modular.xml

@@ -7,9 +7,9 @@
     <sect2 id="zend.controller.modular.introduction">
         <title>Einführung</title>
         <para>
-            Eine konventionelle modulare Verzeichnisstruktur erlaubt es verschiedene MVC Anwendungen in
-            selbst-enthaltene Einheiten zu teilen, und diese mit verschiedenen Front Kontrollern wiederzuverwenden.
-            Um so eine Verzeichnisstruktur zu zeigen:
+            Eine konventionelle modulare Verzeichnisstruktur erlaubt es verschiedene MVC Anwendungen
+            in selbst-enthaltene Einheiten zu teilen, und diese mit verschiedenen Front Kontrollern
+            wiederzuverwenden. Um so eine Verzeichnisstruktur zu zeigen:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -50,26 +50,28 @@ application/
 ]]></programlisting>
 
         <para>
-            In diesem Paradigma arbeitet der Modulname als Prefix für den Kontroller den er enthält. Das obige
-            Beispiel enthält drei Modul Kontroller, 'Blog_IndexController', 'News_IndexController', und
-            'News_ListController'. Zwei gloale Kontroller, 'IndexController' und 'FooController' werden auch
-            definiert; keiner von diesen ist in einem Namensraum. Diese Verzeichnisstruktur wird für die
-            Beispiele in diesem Kapitel verwendet.
+            In diesem Paradigma arbeitet der Modulname als Prefix für den Kontroller den er enthält.
+            Das obige Beispiel enthält drei Modul Kontroller, 'Blog_IndexController',
+            'News_IndexController', und 'News_ListController'. Zwei gloale Kontroller,
+            'IndexController' und 'FooController' werden auch definiert; keiner von diesen ist in
+            einem Namensraum. Diese Verzeichnisstruktur wird für die Beispiele in diesem Kapitel
+            verwendet.
         </para>
 
         <note>
             <title>Keine Verwendung von Namensräumen im Standard Modul</title>
             <para>
-                Es ist zu beachten das Kontroller, im Standardmodul, keinen Prefix für den Namensraum benötigen.
-                Deshalb benötigt der Kontroller, im obigen Beispiel, den Prefix 'Default_' nicht -- sie werden
-                einfach dispatched gemäß dem Namen des Basis Kontrollers: 'IndexController' und 'FooController'.
-                Ein Prefix für den Namensraum wird trotzdem in allen anderen Modulen verwendet.
+                Es ist zu beachten das Kontroller, im Standardmodul, keinen Prefix für den
+                Namensraum benötigen. Deshalb benötigt der Kontroller, im obigen Beispiel, den
+                Prefix 'Default_' nicht -- sie werden einfach dispatched gemäß dem Namen des Basis
+                Kontrollers: 'IndexController' und 'FooController'. Ein Prefix für den Namensraum
+                wird trotzdem in allen anderen Modulen verwendet.
             </para>
         </note>
 
         <para>
-            Also, wie kann solch ein Verzeichnislayout mit den MVC Komponenten des Zend Frameworks implementiert
-            werden?
+            Also, wie kann solch ein Verzeichnislayout mit den MVC Komponenten des Zend Frameworks
+            implementiert werden?
         </para>
     </sect2>
 
@@ -77,19 +79,20 @@ application/
         <title>Verzeichnisse für Modul Kontroller spezifizieren</title>
 
         <para>
-            Der erste Schritt um Module zu verwenden ist es, die Art der Spezifizierung der Kontroller Verzeichnis
-            Liste im Front Kontroller, zu Ändern. In der grundsätzlichen MVC Serie, kann entweder ein Array oder
-            ein String an <code>setControllerDirectory()</code>, oder ein Pfad an
-            <code>addControllerDirectory()</code> übergeben werden. Wenn Module verwendet werden, müssen die
-            Aufrufe dieser Methoden leicht geändert werden.
+            Der erste Schritt um Module zu verwenden ist es, die Art der Spezifizierung der
+            Kontroller Verzeichnis Liste im Front Kontroller, zu Ändern. In der grundsätzlichen MVC
+            Serie, kann entweder ein Array oder ein String an <code>setControllerDirectory()</code>,
+            oder ein Pfad an <code>addControllerDirectory()</code> übergeben werden. Wenn Module
+            verwendet werden, müssen die Aufrufe dieser Methoden leicht geändert werden.
         </para>
 
         <para>
-            Mit <code>setControllerDirectory()</code>, muß ein assoziatives Array übergeben und Schlüssel/Werte
-            Paare von Modul Namen/Verzeichnis Pfaden übergeben werden. Der spezielle Schlüssel <code>default</code>
-            wird für globale Kontroller verwenden (diejenigen die keinen Modul Namensraum benötigen). Alle
-            Einträge sollten einen String Schlüssel enthalten der zu einem einzelnen Pfad zeigt, und der
-            <code>default</code> Schlüssel muß vorhanden sein. Als Beispiel:
+            Mit <code>setControllerDirectory()</code>, muß ein assoziatives Array übergeben und
+            Schlüssel/Werte Paare von Modul Namen/Verzeichnis Pfaden übergeben werden. Der spezielle
+            Schlüssel <code>default</code> wird für globale Kontroller verwenden (diejenigen die
+            keinen Modul Namensraum benötigen). Alle Einträge sollten einen String Schlüssel
+            enthalten der zu einem einzelnen Pfad zeigt, und der <code>default</code> Schlüssel muß
+            vorhanden sein. Als Beispiel:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -100,9 +103,10 @@ $front->setControllerDirectory(array(
 ]]></programlisting>
 
         <para>
-            <code>addControllerDirectory()</code> nimmt ein optionales zweites Argument. Wenn Module verwendet
-            werden, kann der Modulname als zweites Argument übergeben werden; wenn nicht spezifiziert, wird der
-            Pfad zum <code>default</code> Namensraum hinzugefügt. Als Beispiel:
+            <code>addControllerDirectory()</code> nimmt ein optionales zweites Argument. Wenn Module
+            verwendet werden, kann der Modulname als zweites Argument übergeben werden; wenn nicht
+            spezifiziert, wird der Pfad zum <code>default</code> Namensraum hinzugefügt. Als
+            Beispiel:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -111,9 +115,10 @@ $front->addControllerDirectory('/path/to/application/news/controllers',
 ]]></programlisting>
 
         <para>
-            Und das beste zum Schluß. Der einfachste Weg um Modul Verzeichnisse zu spezifizieren ist es en masse
-            zu machen, mit allen Modulen in einem gemeinsamen Verzeichnis und die gleiche Struktur verwendend.
-            Das kann mit <code>addModuleDirectory()</code> getan werden:
+            Und das beste zum Schluß. Der einfachste Weg um Modul Verzeichnisse zu spezifizieren ist
+            es en masse zu machen, mit allen Modulen in einem gemeinsamen Verzeichnis und die
+            gleiche Struktur verwendend. Das kann mit <code>addModuleDirectory()</code> getan
+            werden:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -132,13 +137,14 @@ $front->addModuleDirectory('/path/to/application/modules');
 ]]></programlisting>
 
         <para>
-            Das obige Beispiel definiert die <code>default</code>, <code>foo</code>, und <code>bar</code> Module,
-            die alle zum Unterverzeichnis <code>controllers</code> zeigen und zu Ihrem betreffenden Modul.
+            Das obige Beispiel definiert die <code>default</code>, <code>foo</code>, und
+            <code>bar</code> Module, die alle zum Unterverzeichnis <code>controllers</code> zeigen
+            und zu Ihrem betreffenden Modul.
         </para>
 
         <para>
-            Das Unterverzeichnis für den Kontroller kann angepasst werden um diesen in eigenen Modulen mit
-            <code>setModuleControllerDirectoryName()</code> verwenden:
+            Das Unterverzeichnis für den Kontroller kann angepasst werden um diesen in eigenen
+            Modulen mit <code>setModuleControllerDirectoryName()</code> verwenden:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -158,8 +164,9 @@ $front->addModuleDirectory('/path/to/application/modules');
 ]]></programlisting>
 
         <note><para>
-            Man kann angeben das kein Kontroller Unterverzeichnis für die eigenen Module verwendet wird, indem
-            ein leerer Wert an <code>setModuleControllerDirectoryName()</code> übergeben wird.
+            Man kann angeben das kein Kontroller Unterverzeichnis für die eigenen Module verwendet
+            wird, indem ein leerer Wert an <code>setModuleControllerDirectoryName()</code> übergeben
+            wird.
         </para></note>
     </sect2>
 
@@ -167,9 +174,9 @@ $front->addModuleDirectory('/path/to/application/modules');
         <title>Zu Modulen routen</title>
 
         <para>
-            Die Standardroute in <classname>Zend_Controller_Router_Rewrite</classname> ist ein Objekt vom Typ
-            <classname>Zend_Controller_Router_Route_Module</classname>. Diese Route erwartet eines der folgenden
-            Routing Schemas:
+            Die Standardroute in <classname>Zend_Controller_Router_Rewrite</classname> ist ein
+            Objekt vom Typ <classname>Zend_Controller_Router_Route_Module</classname>. Diese Route
+            erwartet eines der folgenden Routing Schemas:
         </para>
 
         <itemizedlist>
@@ -178,10 +185,11 @@ $front->addModuleDirectory('/path/to/application/modules');
         </itemizedlist>
 
         <para>
-            In anderen Worten, wird jeder Kontroller und jede Aktion durch sich selbst entsprechen oder mit einem
-            vorangestellten Modul. Diese Regeln für die Entsprechung spezifizieren, das ein Modul nur dann
-            entspricht, wenn ein Schlüssel mit dem gleichen Namen im Kontroller Verzeichnis Array existiert, das dem
-            Front Kontroller und Dispatcher übergeben wird.
+            In anderen Worten, wird jeder Kontroller und jede Aktion durch sich selbst entsprechen
+            oder mit einem vorangestellten Modul. Diese Regeln für die Entsprechung spezifizieren,
+            das ein Modul nur dann entspricht, wenn ein Schlüssel mit dem gleichen Namen im
+            Kontroller Verzeichnis Array existiert, das dem Front Kontroller und Dispatcher
+            übergeben wird.
         </para>
     </sect2>
 
@@ -189,11 +197,12 @@ $front->addModuleDirectory('/path/to/application/modules');
         <title>Modul oder globaler Standard Kontroller</title>
 
         <para>
-            Im Standardrouter wird der Standardkontroller verwendet (<code>IndexController</code>, solange nicht
-            anders angefragt), wenn kein Kontroller in der URL spezifiziert wurde. Bei modularen Kontrollern wird
-            der Dispatcher zuerst für diesen Standardkontroller im Modulpfad nachsehen, wenn ein Modul aber kein
-            Kontroller spezifiziert wurde, und fällt dann auf den Standardcontroller zurück, der im 'default'
-            globalen Namensraum gefunden wird.
+            Im Standardrouter wird der Standardkontroller verwendet (<code>IndexController</code>,
+            solange nicht anders angefragt), wenn kein Kontroller in der URL spezifiziert wurde. Bei
+            modularen Kontrollern wird der Dispatcher zuerst für diesen Standardkontroller im
+            Modulpfad nachsehen, wenn ein Modul aber kein Kontroller spezifiziert wurde, und fällt
+            dann auf den Standardcontroller zurück, der im 'default' globalen Namensraum gefunden
+            wird.
         </para>
 
         <para>

+ 25 - 23
documentation/manual/de/module_specs/Zend_Controller-Plugins.xml

@@ -17,8 +17,8 @@
 
         <para>
             Die Ereignismethoden sind in der abstrakten Klasse
-            <classname>Zend_Controller_Plugin_Abstract</classname> definiert, von dem User Plugin Klassen
-            angeleitet werden müssen:
+            <classname>Zend_Controller_Plugin_Abstract</classname> definiert, von dem User Plugin
+            Klassen angeleitet werden müssen:
         </para>
 
         <itemizedlist>
@@ -53,8 +53,8 @@
                     aufgerufen, bevor eine Aktion verarbeitet wird. Dieser Callback erlaubt ein
                     Proxy oder Filter Verhalten. Durch Verändern des Requests und Zurücksetzen
                     des Verarbeitungsstatus (mittels
-                    <classname>Zend_Controller_Request_Abstract::setDispatched(false)</classname>) kann
-                    die aktuelle Aktion abgebrochen oder ersetzt werden.
+                    <classname>Zend_Controller_Request_Abstract::setDispatched(false)</classname>)
+                    kann die aktuelle Aktion abgebrochen oder ersetzt werden.
                 </para>
             </listitem>
 
@@ -65,8 +65,8 @@
                     aufgerufen, nachdem eine Aktion verarbeitet wurde. Dieser Callback erlaubt ein
                     Proxy oder Filter Verhalten. Durch Verändern des Requests und Zurücksetzen
                     des Verarbeitungsstatus (mittels
-                    <classname>Zend_Controller_Request_Abstract::setDispatched(false)</classname>) kann
-                    eine neue Aktion für die Verarbeitung angegeben werden.
+                    <classname>Zend_Controller_Request_Abstract::setDispatched(false)</classname>)
+                    kann eine neue Aktion für die Verarbeitung angegeben werden.
                 </para>
             </listitem>
 
@@ -95,16 +95,16 @@ class MyPlugin extends Zend_Controller_Plugin_Abstract
 ]]></programlisting>
 
         <para>
-            Keine der Methoden von <classname>Zend_Controller_Plugin_Abstract</classname> ist abstrakt, so
-            dass Plugin Klassen nicht gezwungen werden, irgend einen der vorhandenen
+            Keine der Methoden von <classname>Zend_Controller_Plugin_Abstract</classname> ist
+            abstrakt, so dass Plugin Klassen nicht gezwungen werden, irgend einen der vorhandenen
             Ereignismethoden zu implemetieren, die oben gelistet wurden. Schreiber von Plugins
             brauchen nur die Methoden zu implementieren, die sie für ihre speziellen Bedürfnisse
             benötigen.
         </para>
 
         <para>
-            <classname>Zend_Controller_Plugin_Abstract</classname> stellt den Controller Plugins außerdem die
-            Request und Response Objekte über die <code>getRequest()</code> und
+            <classname>Zend_Controller_Plugin_Abstract</classname> stellt den Controller Plugins
+            außerdem die Request und Response Objekte über die <code>getRequest()</code> und
             <code>getResponse()</code> Methoden zur Verfügung.
         </para>
     </sect2>
@@ -167,8 +167,9 @@ $front->dispatch();
 ]]></programlisting>
 
         <para>
-            Angenommen das keine der Aktionen igendeine Ausgabe produzieren, und nur eine Aktion aufgerufen wurde,
-            dann erzeugt die Funktionalität des obigen Plugins trotzdem die folgende Ausgabe:
+            Angenommen das keine der Aktionen igendeine Ausgabe produzieren, und nur eine Aktion
+            aufgerufen wurde, dann erzeugt die Funktionalität des obigen Plugins trotzdem die
+            folgende Ausgabe:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -182,9 +183,9 @@ $front->dispatch();
 
         <note>
             <para>
-                Plugins können jederzeit wärend der Ausführung des Frontkontrollers registriert werden. Wenn
-                trotzdem ein Event ausgeführt wurde für das das Plugin eine registrierte Eventmethode enthält,
-                wird diese Methode nicht getriggert.
+                Plugins können jederzeit wärend der Ausführung des Frontkontrollers registriert
+                werden. Wenn trotzdem ein Event ausgeführt wurde für das das Plugin eine
+                registrierte Eventmethode enthält, wird diese Methode nicht getriggert.
             </para>
         </note>
     </sect2>
@@ -193,15 +194,15 @@ $front->dispatch();
         <title>Empfangen und Manipulieren von Plugins</title>
 
         <para>
-            Fallweise kann es notwendig sein ein Plugin zu entfernen oder empfangen. Die folgenden Methoden des
-            Frontkontrollers erlauben dies:
+            Fallweise kann es notwendig sein ein Plugin zu entfernen oder empfangen. Die folgenden
+            Methoden des Frontkontrollers erlauben dies:
         </para>
 
         <itemizedlist>
             <listitem><para>
-                    <code>getPlugin($class)</code> erlaubt es ein Plugin durch den Klassennamen zu empfangen. Wenn
-                    kein Plugin entspricht, wird false zurückgegeben. Wenn mehr als ein Plugin dieser Klasse
-                    registriert ist, wird ein Array zurückgegeben.
+                    <code>getPlugin($class)</code> erlaubt es ein Plugin durch den Klassennamen zu
+                    empfangen. Wenn kein Plugin entspricht, wird false zurückgegeben. Wenn mehr als
+                    ein Plugin dieser Klasse registriert ist, wird ein Array zurückgegeben.
             </para></listitem>
 
             <listitem><para>
@@ -209,9 +210,10 @@ $front->dispatch();
             </para></listitem>
 
             <listitem><para>
-                    <code>unregisterPlugin($plugin)</code> erlaubt die Entfernung eines Plugins vom Stack. Es kann
-                    ein Plugin Objekt oder der Klassenname des Plugins, das entfernt werden soll, übergeben werden.
-                    Wenn der Klassenname übergeben wird, wird jedes Plugin dieser Klasse entfernt.
+                    <code>unregisterPlugin($plugin)</code> erlaubt die Entfernung eines Plugins vom
+                    Stack. Es kann ein Plugin Objekt oder der Klassenname des Plugins, das entfernt
+                    werden soll, übergeben werden. Wenn der Klassenname übergeben wird, wird jedes
+                    Plugin dieser Klasse entfernt.
             </para></listitem>
         </itemizedlist>
     </sect2>

+ 77 - 66
documentation/manual/de/module_specs/Zend_Controller-Router-Route.xml

@@ -5,16 +5,17 @@
     <title>Zend_Controller_Router_Route</title>
 
     <para>
-        <classname>Zend_Controller_Router_Route</classname> ist die standardmäßige Framework Route. Sie kombiniert einfache
-        Verwendung mit einer flexiblen Routendefinition. Jede Route besteht primär aus URL Übereinstimmungen
-        (von statischen und dynamischen Teilen (Variablen)) und kann mit Standardwerten initialisiert werden
-        wie auch mit variablen Notwendigkeiten.
+        <classname>Zend_Controller_Router_Route</classname> ist die standardmäßige Framework Route.
+        Sie kombiniert einfache Verwendung mit einer flexiblen Routendefinition. Jede Route besteht
+        primär aus URL Übereinstimmungen (von statischen und dynamischen Teilen (Variablen)) und
+        kann mit Standardwerten initialisiert werden wie auch mit variablen Notwendigkeiten.
     </para>
 
     <para>
-        Angenommen unsere fiktive Anwendung benötigt eine informelle Seite über den Seitenauthor. Es soll möglich
-        sein mit dem Browser auf <code>http://domain.com/author/martel</code> zu verweisen um die Informationen über
-        diesen "martel" Typ zu sehen. Und die Route für so eine Funktionalität würde so aussehen:
+        Angenommen unsere fiktive Anwendung benötigt eine informelle Seite über den Seitenauthor. Es
+        soll möglich sein mit dem Browser auf <code>http://domain.com/author/martel</code> zu
+        verweisen um die Informationen über diesen "martel" Typ zu sehen. Und die Route für so eine
+        Funktionalität würde so aussehen:
     </para>
 
     <programlisting role="php"><![CDATA[
@@ -30,29 +31,32 @@ $router->addRoute('user', $route);
 ]]></programlisting>
 
     <para>
-        Der ersten Parameter im Konstruktor von <code>http://domain.com/author/martel</code> ist eine
-        Routendefinition die einer URL entspricht. Routendefinitionen bestehen aus statischen und dynamischen
-        Teilen die durch einen Schrägstrich ('/') seperiert sind. Statische Teile sind nur einfacher Text:
-        <code>author</code>. Dynamische Teile, Variablen genannt, werden durch einen vorangestellten
-        Doppelpunkt, zum variablen Namen, markiert: <code>:username</code>.
+        Der ersten Parameter im Konstruktor von <code>http://domain.com/author/martel</code> ist
+        eine Routendefinition die einer URL entspricht. Routendefinitionen bestehen aus statischen
+        und dynamischen Teilen die durch einen Schrägstrich ('/') seperiert sind. Statische Teile
+        sind nur einfacher Text: <code>author</code>. Dynamische Teile, Variablen genannt, werden
+        durch einen vorangestellten Doppelpunkt, zum variablen Namen, markiert:
+        <code>:username</code>.
     </para>
 
     <note>
         <title>Zeichen verwenden</title>
         <para>
-            Die aktuelle Implementation erlaubt die Verwendung von allen Zeichen (außer einem Schrägstrich) als
-            variablen Identifikator, aber es wird dringend empfohlen das nur Zeichen verwendet werden die auch für
-            PHP Veriablen Identifikatoren gültig sind. Zukünftige Implementationen können dieses Verhlaten ändern,
-            was zu versteckten Bugs im eigenen Code führen würde.
+            Die aktuelle Implementation erlaubt die Verwendung von allen Zeichen (außer einem
+            Schrägstrich) als variablen Identifikator, aber es wird dringend empfohlen das nur
+            Zeichen verwendet werden die auch für PHP Veriablen Identifikatoren gültig sind.
+            Zukünftige Implementationen können dieses Verhlaten ändern, was zu versteckten Bugs im
+            eigenen Code führen würde.
         </para>
     </note>
 
     <para>
-        Diese Beispielroute wird verglichen wenn der Browser auf <code>http://domain.com/author/martel</code>
-        zeigt. In diesem Fall werden alle seine Variablen dem <classname>Zend_Controller_Request</classname> Objekt
-        injiziiert und es kann im <code>ProfileController</code> darauf zugegriffen werden. Variablen die von diesem
-        Beispiel zurückgegeben werden können als Array mit den folgenden Schlüssel- und Wertepaaren repräsentiert
-        werden:
+        Diese Beispielroute wird verglichen wenn der Browser auf
+        <code>http://domain.com/author/martel</code> zeigt. In diesem Fall werden alle seine
+        Variablen dem <classname>Zend_Controller_Request</classname> Objekt injiziiert und es kann
+        im <code>ProfileController</code> darauf zugegriffen werden. Variablen die von diesem
+        Beispiel zurückgegeben werden können als Array mit den folgenden Schlüssel- und Wertepaaren
+        repräsentiert werden:
     </para>
 
     <programlisting role="php"><![CDATA[
@@ -64,10 +68,11 @@ $values = array(
 ]]></programlisting>
 
     <para>
-        Später sollte <classname>Zend_Controller_Dispatcher_Standard</classname> die <code>userinfoAction()</code> Methode
-        der eigenen <code>ProfileController</code> Klasse aufrufen (im Standardmodul) basierend auf diesen
-        Werten. Dort ist es möglich alle Variablen durch die <classname>Zend_Controller_Action::_getParam()</classname>
-        oder <classname>Zend_Controller_Request::getParam()</classname> Methoden zuzugreifen:
+        Später sollte <classname>Zend_Controller_Dispatcher_Standard</classname> die
+        <code>userinfoAction()</code> Methode der eigenen <code>ProfileController</code> Klasse
+        aufrufen (im Standardmodul) basierend auf diesen Werten. Dort ist es möglich alle Variablen
+        durch die <classname>Zend_Controller_Action::_getParam()</classname> oder
+        <classname>Zend_Controller_Request::getParam()</classname> Methoden zuzugreifen:
     </para>
 
     <programlisting role="php"><![CDATA[
@@ -81,9 +86,10 @@ public function userinfoAction()
 ]]></programlisting>
 
     <para>
-        Eine Routendefinition kann ein weiteres spezielles Zeichen enthalten - eine Wildcard - dargestellt durch ein
-        '*' Symbol. Es wird verwendet um Parameter genauso wie im standard Modulrouter zu erhalten (var => Wertepaare
-        definiert in der URI). Die folgende Route imitiert mehr oder weniger das Verhalten des Modulrouters:
+        Eine Routendefinition kann ein weiteres spezielles Zeichen enthalten - eine Wildcard -
+        dargestellt durch ein '*' Symbol. Es wird verwendet um Parameter genauso wie im standard
+        Modulrouter zu erhalten (var => Wertepaare definiert in der URI). Die folgende Route
+        imitiert mehr oder weniger das Verhalten des Modulrouters:
     </para>
 
     <programlisting role="php"><![CDATA[
@@ -98,9 +104,10 @@ $router->addRoute('default', $route);
         <title>Variable Standards</title>
 
         <para>
-            Jede Variable im Router kann einen Standardwert haben und das ist für was der zweite Parameter des
-            Konstruktors von <classname>Zend_Controller_Router_Route</classname> verwendet wird. Dieser Parameter ist ein
-            Array mit Schlüsseln die Variablennamen repräsentieren und mit Werten als gewünschte Standards:
+            Jede Variable im Router kann einen Standardwert haben und das ist für was der zweite
+            Parameter des Konstruktors von <classname>Zend_Controller_Router_Route</classname>
+            verwendet wird. Dieser Parameter ist ein Array mit Schlüsseln die Variablennamen
+            repräsentieren und mit Werten als gewünschte Standards:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -113,17 +120,18 @@ $router->addRoute('archive', $route);
 
         <para>
             Die obige Route entspricht URLs wie <code>http://domain.com/archive/2005</code> und
-            <code>http://example.com/archive</code>. Im späteren Fall wird die Variable year einen initialen
-            Standardwert von 2006 haben.
+            <code>http://example.com/archive</code>. Im späteren Fall wird die Variable year einen
+            initialen Standardwert von 2006 haben.
         </para>
 
         <para>
-            Dieses Beispiel resultiert darin das eine year Variable in das Anfrage Objekt injiziiert wird. Da keine
-            Routinginformation vorhanden ist (es sind keine Kontroller und Aktionsparameter definiert), wird die
-            Anwendung zum Standardkontroller und der Aktionsmethode (welche beide in
-            <classname>Zend_Controller_Dispatcher_Abstract</classname> definiert sind) weitergeleitet. Um es verwendbarer
-            zu machen muß ein gültiger Kontroller und eine gültige aktion als Standard für die Route angegeben
-            werden:
+            Dieses Beispiel resultiert darin das eine year Variable in das Anfrage Objekt injiziiert
+            wird. Da keine Routinginformation vorhanden ist (es sind keine Kontroller und
+            Aktionsparameter definiert), wird die Anwendung zum Standardkontroller und der
+            Aktionsmethode (welche beide in
+            <classname>Zend_Controller_Dispatcher_Abstract</classname> definiert sind)
+            weitergeleitet. Um es verwendbarer zu machen muß ein gültiger Kontroller und eine
+            gültige aktion als Standard für die Route angegeben werden:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -149,9 +157,9 @@ $router->addRoute('archive', $route);
         <title>Variable Anforderungen</title>
 
         <para>
-            Man kann einen dritten Parameter dem <classname>Zend_Controller_Router_Route</classname> Konstruktor hinzufügen
-            wo variable Anforderungen gesetzt werden können. Diese werden als Teil eines regulären Ausdrucks
-            definiert:
+            Man kann einen dritten Parameter dem <classname>Zend_Controller_Router_Route</classname>
+            Konstruktor hinzufügen wo variable Anforderungen gesetzt werden können. Diese werden als
+            Teil eines regulären Ausdrucks definiert:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -168,10 +176,11 @@ $router->addRoute('archive', $route);
 ]]></programlisting>
 
         <para>
-            Mit einer Route die wie oben definiert ist, wird das Routing nur dann stattfinden wenn die year
-            Variable nummerische Daten enthält, z.B. <code>http://domain.com/archive/2345</code>.
-            Eine URL wie <code>http://example.com/archive/test</code> wird nicht zugeordnet und die Kontrolle wird
-            stattdessen an die nächste Route in der Kette übertragen.
+            Mit einer Route die wie oben definiert ist, wird das Routing nur dann stattfinden wenn
+            die year Variable nummerische Daten enthält, z.B.
+            <code>http://domain.com/archive/2345</code>. Eine URL wie
+            <code>http://example.com/archive/test</code> wird nicht zugeordnet und die Kontrolle
+            wird stattdessen an die nächste Route in der Kette übertragen.
         </para>
     </sect4>
 
@@ -179,9 +188,9 @@ $router->addRoute('archive', $route);
         <title>Übersetzte Segmente</title>
 
         <para>
-            Die Standardroute unterstützt übersetzte Segmente. Um dieses Feature zu verwenden muß zumindest
-            ein Übersetzer (eine Instanz von <classname>Zend_Translate</classname>) auf einem der folgenden Wege
-            definiert werden:
+            Die Standardroute unterstützt übersetzte Segmente. Um dieses Feature zu verwenden muß
+            zumindest ein Übersetzer (eine Instanz von <classname>Zend_Translate</classname>) auf
+            einem der folgenden Wege definiert werden:
         </para>
 
         <itemizedlist>
@@ -193,7 +202,8 @@ $router->addRoute('archive', $route);
             <listitem>
                 <para>
                     Über die statische Methode
-                    <classname>Zend_Controller_Router_Route::setDefaultTranslator()</classname> setzen.
+                    <classname>Zend_Controller_Router_Route::setDefaultTranslator()</classname>
+                    setzen.
                 </para>
             </listitem>
             <listitem>
@@ -204,9 +214,10 @@ $router->addRoute('archive', $route);
         </itemizedlist>
 
         <para>
-            Standardmäßig wird das Gebietsschema verwendet das in der Instanz von <classname>Zend_Translate</classname>
-            verwendet wird. Um es zu überschreiben, kann es (als Instanz von <classname>Zend_Locale</classname> oder
-            einem Gebietsschema-String) auf einem der folgenden Wege gesetzt werden:
+            Standardmäßig wird das Gebietsschema verwendet das in der Instanz von
+            <classname>Zend_Translate</classname> verwendet wird. Um es zu überschreiben, kann es
+            (als Instanz von <classname>Zend_Locale</classname> oder einem Gebietsschema-String) auf
+            einem der folgenden Wege gesetzt werden:
         </para>
 
         <itemizedlist>
@@ -235,26 +246,26 @@ $router->addRoute('archive', $route);
 
         <para>
             Übersetzte Segmente werden in zwei Teile getrennt. Ein fixes Segment dem ein einzelnes
-            <code>@</code>-Zeichen vorangestellt wird, der anhand des aktuellen Gebietsschemas übersetzt wird
-            und auf der Position des Parameters eingefügt wird. Dynamischen Segmenten wird ein
-            <code>:@</code> vorangestellt. Beim Zusammenbauen, wird der gegebene Parameter übersetzt und an der
-            Position des Parameters eingefügt. Bei der Überprüfung, wird der übersetzte Parameter von der
-            URL wieder in die Nachrichten ID umgewandelt.
+            <code>@</code>-Zeichen vorangestellt wird, der anhand des aktuellen Gebietsschemas
+            übersetzt wird und auf der Position des Parameters eingefügt wird. Dynamischen Segmenten
+            wird ein <code>:@</code> vorangestellt. Beim Zusammenbauen, wird der gegebene Parameter
+            übersetzt und an der Position des Parameters eingefügt. Bei der Überprüfung, wird der
+            übersetzte Parameter von der URL wieder in die Nachrichten ID umgewandelt.
         </para>
 
         <note>
             <title>Nachrichten IDs und eigene Sprachdateien</title>
             <para>
-                Normalerweise werden Nachrichten IDs die man in einer seiner Routen verwenden will, bereits in
-                einem View Skript oder irgendwo anders verwendet. Um die komplette Kontrolle über sichere
-                URLs zu haben, sollte man eine eigene Sprachdatei für die Nachrichten haben die in einer
-                Route verwendet werden.
+                Normalerweise werden Nachrichten IDs die man in einer seiner Routen verwenden will,
+                bereits in einem View Skript oder irgendwo anders verwendet. Um die komplette
+                Kontrolle über sichere URLs zu haben, sollte man eine eigene Sprachdatei für die
+                Nachrichten haben die in einer Route verwendet werden.
             </para>
         </note>
 
         <para>
-            Nachfolgend ist die einfachste Verwendung gezeigt um eine Standardroute für übersetzte Segmente
-            zu Verwenden:
+            Nachfolgend ist die einfachste Verwendung gezeigt um eine Standardroute für übersetzte
+            Segmente zu Verwenden:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -296,8 +307,8 @@ $route->assemble(array());
 ]]></programlisting>
 
         <para>
-            Man kann dynamische Segmente verwenden um eine Modul-Route, so wie die übersetzte Version,
-            zu erstellen:
+            Man kann dynamische Segmente verwenden um eine Modul-Route, so wie die übersetzte
+            Version, zu erstellen:
         </para>
 
         <programlisting role="php"><![CDATA[

+ 137 - 97
documentation/manual/de/module_specs/Zend_Dojo-Data.xml

@@ -93,17 +93,23 @@ $data->addItems($someMoreItems);
         </para>
 
         <itemizedlist>
-            <listitem><para>
-                Assoziative Arrays
-            </para></listitem>
-
-            <listitem><para>
-                Objekte die eine <code>toArray()</code> Methode implementieren
-            </para></listitem>
-
-            <listitem><para>
-                Jedes andere Objekt (wird über get_object_vars() serialisiert)
-            </para></listitem>
+            <listitem>
+                <para>
+                    Assoziative Arrays
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    Objekte die eine <code>toArray()</code> Methode implementieren
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    Jedes andere Objekt (wird über get_object_vars() serialisiert)
+                </para>
+            </listitem>
         </itemizedlist>
 
         <para>
@@ -113,14 +119,18 @@ $data->addItems($someMoreItems);
         </para>
 
         <itemizedlist>
-            <listitem><para>
-                Arrays
-            </para></listitem>
-
-            <listitem><para>
-                Objekte die das <code>Traversable</code> implementieren, welches die Interfaces
-                <code>Iterator</code> und <code>ArrayAccess</code> enthält.
-            </para></listitem>
+            <listitem>
+                <para>
+                    Arrays
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    Objekte die das <code>Traversable</code> implementieren, welches die Interfaces
+                    <code>Iterator</code> und <code>ArrayAccess</code> enthält.
+                </para>
+            </listitem>
         </itemizedlist>
 
         <para>
@@ -281,85 +291,115 @@ $json = (string) $data; // Casten zu einem String == casten zu JSON
             </para>
 
             <itemizedlist>
-                <listitem><para>
-                    <code>setItems($items)</code>: Setzt mehrere Elemente auf einmal, und überschreibt alle
-                    vorher im Objekt gesetzten. <code>$items</code> sollte ein Array oder ein
-                    <code>Traversable</code> Objekt sein.
-                </para></listitem>
-
-                <listitem><para>
-                    <code>setItem($item, $id = null)</code>: Setzt ein individuelles Element, indem optional ein
-                    expliziter Identifikator übergeben wird. Überschreibt das Element wenn es bereits in der
-                    Kollektion ist. Gültige Elemente enthalten assoziative Arrays, Objekte die
-                    <code>toArray()</code> implementieren, oder jedes Objekt mit öffentlichen Eigenschaften.
-                </para></listitem>
-
-                <listitem><para>
-                    <code>addItem($item, $id = null)</code>: Fügt ein individuelles Element hinzu, indem optional
-                    ein expliziter Identifikator übergeben wird. Wirft eine Ausnahme wenn das Element bereits
-                    in der Kollektion existiert. Gültige Elemente enthalten assoziative Arrays, Objekte die
-                    <code>toArray()</code> implementieren, oder jedes Objekt mit öffentlichen Eigenschaften.
-                </para></listitem>
-
-                <listitem><para>
-                    <code>addItems($items)</code>: Fügt mehrere Elemente auf einmal hinzu, indem Sie allen
-                    aktuellen Elementen angefügt werden. Wirft eine Ausnahme wenn irgendeines der neuen
-                    Elemente einen Identifikator hat der zu einem bereits in der Kollektion vorhandenen
-                    Identifikator passt. <code>$items</code> sollte ein Array oder ein
-                    <code>Traversable</code> Objekt sein.
-                </para></listitem>
-
-                <listitem><para>
-                    <code>getItems()</code>: Gibt alle Elemente als Array von Arrays zurück.
-                </para></listitem>
-
-                <listitem><para>
-                    <code>hasItem($id)</code>: Erkennt ob ein Element mit dem angegebenen Identifikator in
-                    der Kollektion existiert oder nicht.
-                </para></listitem>
-
-                <listitem><para>
-                    <code>getItem($id)</code>: Gibt ein Element mit dem angegebenen Identifikator von der
-                    Kollektion zurück; das zurückgegebene Element ist ein assoziatives Array. Wenn kein Element
-                    passt, wird ein null Wert zurückgegeben.
-                </para></listitem>
-
-                <listitem><para>
-                    <code>removeItem($id)</code>: Entfernt ein Element mit dem angegebenen Identifikator von
-                    der Kollektion.
-                </para></listitem>
-
-                <listitem><para>
-                    <code>clearItems()</code>: Entfernt alle Elemente von der Kollektion.
-                </para></listitem>
-
-                <listitem><para>
-                    <code>setIdentifier($identifier)</code>: Setzt den Namen des Feldes das den eindeutigen
-                    Identifikator repräsentiert für jedes Element in der Kollektion.
-                </para></listitem>
-
-                <listitem><para>
-                    <code>getIdentifier()</code>: Gibt den Namen des Identifikatorfeldes zurück.
-                </para></listitem>
-
-                <listitem><para>
-                    <code>setLabel($label)</code>: Setzt den Namen eines Feldes das als Anzeigelabel für ein
-                    Element verwendet wird.
-                </para></listitem>
-
-                <listitem><para>
+                <listitem>
+                    <para>
+                        <code>setItems($items)</code>: Setzt mehrere Elemente auf einmal, und überschreibt alle
+                        vorher im Objekt gesetzten. <code>$items</code> sollte ein Array oder ein
+                        <code>Traversable</code> Objekt sein.
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <code>setItem($item, $id = null)</code>: Setzt ein individuelles Element, indem optional ein
+                        expliziter Identifikator übergeben wird. Überschreibt das Element wenn es bereits in der
+                        Kollektion ist. Gültige Elemente enthalten assoziative Arrays, Objekte die
+                        <code>toArray()</code> implementieren, oder jedes Objekt mit öffentlichen Eigenschaften.
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <code>addItem($item, $id = null)</code>: Fügt ein individuelles Element hinzu, indem optional
+                        ein expliziter Identifikator übergeben wird. Wirft eine Ausnahme wenn das Element bereits
+                        in der Kollektion existiert. Gültige Elemente enthalten assoziative Arrays, Objekte die
+                        <code>toArray()</code> implementieren, oder jedes Objekt mit öffentlichen Eigenschaften.
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <code>addItems($items)</code>: Fügt mehrere Elemente auf einmal hinzu, indem Sie allen
+                        aktuellen Elementen angefügt werden. Wirft eine Ausnahme wenn irgendeines der neuen
+                        Elemente einen Identifikator hat der zu einem bereits in der Kollektion vorhandenen
+                        Identifikator passt. <code>$items</code> sollte ein Array oder ein
+                        <code>Traversable</code> Objekt sein.
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <code>getItems()</code>: Gibt alle Elemente als Array von Arrays zurück.
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <code>hasItem($id)</code>: Erkennt ob ein Element mit dem angegebenen Identifikator in
+                        der Kollektion existiert oder nicht.
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <code>getItem($id)</code>: Gibt ein Element mit dem angegebenen Identifikator von der
+                        Kollektion zurück; das zurückgegebene Element ist ein assoziatives Array. Wenn kein Element
+                        passt, wird ein null Wert zurückgegeben.
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <code>removeItem($id)</code>: Entfernt ein Element mit dem angegebenen Identifikator von
+                        der Kollektion.
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <code>clearItems()</code>: Entfernt alle Elemente von der Kollektion.
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <code>setIdentifier($identifier)</code>: Setzt den Namen des Feldes das den eindeutigen
+                        Identifikator repräsentiert für jedes Element in der Kollektion.
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <code>getIdentifier()</code>: Gibt den Namen des Identifikatorfeldes zurück.
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <code>setLabel($label)</code>: Setzt den Namen eines Feldes das als Anzeigelabel für ein
+                        Element verwendet wird.
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
                     <code>getLabel()</code>: Gibt den Namen des Labelfeldes zurück.
-                </para></listitem>
-
-                <listitem><para>
-                    <code>toArray()</code>: Castet das Objekt zu einem Array. Das Array enthält mindestens
-                    die Schlüssel 'identifier' und 'items', und den Schlüssel 'label' wenn ein Labelfeld im
-                    Objekt gesetzt wurde.
-                </para></listitem>
-
-                <listitem><para>
-                    <code>toJson()</code>: Castet das Objekt zu einer JSON Repräsentation.
-                </para></listitem>
+                </para>
+            </listitem>
+
+                <listitem>
+                    <para>
+                        <code>toArray()</code>: Castet das Objekt zu einem Array. Das Array enthält mindestens
+                        die Schlüssel 'identifier' und 'items', und den Schlüssel 'label' wenn ein Labelfeld im
+                        Objekt gesetzt wurde.
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <code>toJson()</code>: Castet das Objekt zu einer JSON Repräsentation.
+                    </para>
+                </listitem>
             </itemizedlist>
         </sect3>
     </sect2>

+ 37 - 33
documentation/manual/de/module_specs/Zend_Dojo-Form-Decorators.xml

@@ -5,41 +5,43 @@
     <title>Dijit-Spezifische Formular Dekoratore</title>
 
     <para>
-        Die meisten Formular Elemente können den DijitElement Dekorator verwenden, welche die Dijit Parameter
-        von den Elementen nimmt und Sie, und andere Metadaten, dem View Helfer übergibt der vom Element
-        spezifiziert wurde. Für die Dekoration von Formularen, Unterformularen und Anzeigegruppen gibt es
-        trotzdem ein Set von Dekoratoren die den verschiedenen Layout Dijits entsprechen.
+        Die meisten Formular Elemente können den DijitElement Dekorator verwenden, welche die Dijit
+        Parameter von den Elementen nimmt und Sie, und andere Metadaten, dem View Helfer übergibt
+        der vom Element spezifiziert wurde. Für die Dekoration von Formularen, Unterformularen und
+        Anzeigegruppen gibt es trotzdem ein Set von Dekoratoren die den verschiedenen Layout Dijits
+        entsprechen.
     </para>
 
     <para>
-        Alle Dijit Dekoratore schauen nach der <code>dijitParams</code> Eigenschaft des gegebenen Elements das
-        dekoriert werden soll, und gibt Sie als <code>$params</code> Array an den verwendeten Dijit View Helfer;
-        diese werden dann von den anderen Eigenschaften seperiert damit keine Duplikation von Informationen
-        stattfindet.
+        Alle Dijit Dekoratore schauen nach der <code>dijitParams</code> Eigenschaft des gegebenen
+        Elements das dekoriert werden soll, und gibt Sie als <code>$params</code> Array an den
+        verwendeten Dijit View Helfer; diese werden dann von den anderen Eigenschaften seperiert
+        damit keine Duplikation von Informationen stattfindet.
     </para>
 
     <sect3 id="zend.dojo.form.decorators.dijitElement">
         <title>DijitElement Dekorator</title>
 
         <para>
-            Die der <link linkend="zend.form.standardDecorators.viewHelper">ViewHelper Dekorator</link>
-            erwartet DijitElement eine <code>helper</code> Eigenschaft im Elemente welche dann verwendet
-            wird wenn der View Helfer sich um die Darstellung kümmert. Dijit Parameter werden typischerweise
-            direkt vom Element geholt, können aber auch als Optionen über den <code>dijitParams</code>
-            Schlüssel übergeben werden (der Wert des Schlüssels sollte ein assoziatives Array von Optionen
-            sein).
+            Die der <link linkend="zend.form.standardDecorators.viewHelper">ViewHelper
+                Dekorator</link> erwartet DijitElement eine <code>helper</code> Eigenschaft im
+            Elemente welche dann verwendet wird wenn der View Helfer sich um die Darstellung
+            kümmert. Dijit Parameter werden typischerweise direkt vom Element geholt, können aber
+            auch als Optionen über den <code>dijitParams</code> Schlüssel übergeben werden (der Wert
+            des Schlüssels sollte ein assoziatives Array von Optionen sein).
         </para>
 
         <para>
-            Es ist wichtig das jedes Element eine einzigartige ID hat (die wird vom der <code>getId()</code>
-            Methode des Elements geholt). Wenn doppelte im <code>dojo()</code> View Helfer erkannt werden,
-            wird der Dekorator eine Notiz auswerfen, aber dann eine eindeutige ID erstellen indem die
-            Rückgabe von <code>uniqid()</code> an den Identifikator angehängt wird.
+            Es ist wichtig das jedes Element eine einzigartige ID hat (die wird vom der
+            <code>getId()</code> Methode des Elements geholt). Wenn doppelte im <code>dojo()</code>
+            View Helfer erkannt werden, wird der Dekorator eine Notiz auswerfen, aber dann eine
+            eindeutige ID erstellen indem die Rückgabe von <code>uniqid()</code> an den
+            Identifikator angehängt wird.
         </para>
 
         <para>
-            Die Standardverwendung besteht einfach darin diesen Dekorator als ersten in der Dekoratorkette
-            assoziieren, und keine zusätzlichen Optionen zu setzen.
+            Die Standardverwendung besteht einfach darin diesen Dekorator als ersten in der
+            Dekoratorkette assoziieren, und keine zusätzlichen Optionen zu setzen.
         </para>
 
         <example id="zend.dojo.form.decorators.dijitElement.usage">
@@ -61,15 +63,16 @@ $element->setDecorators(array(
 
         <para>
             Der DijitForm Dekorator ist dem <link linkend="zend.form.standardDecorators.form">Form
-            Dekorator</link> sehr ähnlich; faktisch kann er mit diesem grundsätzlich getauscht werden, da
-            er den selben View Helfernamen verwendet ('form').
+                Dekorator</link> sehr ähnlich; faktisch kann er mit diesem grundsätzlich getauscht
+            werden, da er den selben View Helfernamen verwendet ('form').
         </para>
 
         <para>
-            Da dijit.form.Form keine dijit Parameter für die Konfiguration benötigt, besteht der grundsätzliche
-            Unterschied darin das dem Dijit Fomular Viewhelfer eine DOM ID übergeben werden muß um
-            sicherzustellen das die programtechnische Dijiterstellung funktionieren kann. Der Dekorator stellt
-            das sicher indem der Formularname als Identifikator übergeben wird.
+            Da dijit.form.Form keine dijit Parameter für die Konfiguration benötigt, besteht der
+            grundsätzliche Unterschied darin das dem Dijit Fomular Viewhelfer eine DOM ID übergeben
+            werden muß um sicherzustellen das die programtechnische Dijiterstellung funktionieren
+            kann. Der Dekorator stellt das sicher indem der Formularname als Identifikator übergeben
+            wird.
         </para>
     </sect3>
 
@@ -77,13 +80,14 @@ $element->setDecorators(array(
         <title>DijitContainer-basierende Dekoratore</title>
 
         <para>
-            Der <code>DijitContainer</code> Dekorator ist in Wirklichkeit eine abstrakte Klasse von der eine
-            Anzahl an anderen Dekoratoren erbt. Er bietet die selbe Funktionalität wie
-            <link linkend="zend.dojo.form.decorators.dijitElement">DijitElement</link> mit der zusätzlichen
-            Unterstützung des Titels. Viele Layout Dijits benötigen den Titel oder können Ihn verwenden;
-            DijitContainer verwendet die Legend Eigenschaft des Elements wenn Sie vorhanden ist, und kann auch
-            die 'legend' oder die 'titel' Dekoratoroption verwenden, wenn diese übergeben werden. Der Titel
-            wird übersetzt wenn ein Übersetzungsadapter mit einer entsprechenden Übersetzung vorhanden ist.
+            Der <code>DijitContainer</code> Dekorator ist in Wirklichkeit eine abstrakte Klasse von
+            der eine Anzahl an anderen Dekoratoren erbt. Er bietet die selbe Funktionalität wie
+            <link linkend="zend.dojo.form.decorators.dijitElement">DijitElement</link> mit der
+            zusätzlichen Unterstützung des Titels. Viele Layout Dijits benötigen den Titel oder
+            können Ihn verwenden; DijitContainer verwendet die Legend Eigenschaft des Elements wenn
+            Sie vorhanden ist, und kann auch die 'legend' oder die 'titel' Dekoratoroption
+            verwenden, wenn diese übergeben werden. Der Titel wird übersetzt wenn ein
+            Übersetzungsadapter mit einer entsprechenden Übersetzung vorhanden ist.
         </para>
 
         <para>

+ 546 - 367
documentation/manual/de/module_specs/Zend_Dojo-Form-Elements.xml

@@ -6,42 +6,57 @@
 
     <para>
         Jedes Formular-Dijit für welches ein Viewhelfer vorhanden ist hat ein korrespondierendes
-        <classname>Zend_Form</classname> Element. Alle von Ihnen bieten die folgenden Methoden für die Manipulation
-        von Dijit Parametern an:
+        <classname>Zend_Form</classname> Element. Alle von Ihnen bieten die folgenden Methoden für
+        die Manipulation von Dijit Parametern an:
     </para>
 
     <itemizedlist>
-        <listitem><para>
-                <code>setDijitParam($key, $value)</code>: Setzt einen einzelnen Dijit Parameter. Wenn der
-                Dijit Parmeter bereits existiert wird er überschrieben.
-        </para></listitem>
+        <listitem>
+            <para>
+                <code>setDijitParam($key, $value)</code>: Setzt einen einzelnen Dijit Parameter.
+                Wenn der Dijit Parmeter bereits existiert wird er überschrieben.
+            </para>
+        </listitem>
 
-        <listitem><para>
-                <code>setDijitParams(array $params)</code>: Setzt mehrere Dijit Parameter auf einmal. Jeder
-                übergebene Parameter der bereits existierenden entspricht wird überschrieben.
-        </para></listitem>
+        <listitem>
+            <para>
+                    <code>setDijitParams(array $params)</code>: Setzt mehrere Dijit Parameter auf
+                    einmal. Jeder übergebene Parameter der bereits existierenden entspricht wird
+                    überschrieben.
+            </para>
+        </listitem>
 
-        <listitem><para>
+        <listitem>
+            <para>
                 <code>hasDijitParam($key)</code>: Wenn ein angegebener Dijit Parameter definiert und vorhanden
                 ist, wird TRUE zurückgegeben, andernfalls FALSE.
-        </para></listitem>
+            </para>
+        </listitem>
 
-        <listitem><para>
+        <listitem>
+            <para>
                 <code>getDijitParam($key)</code>: Gibt den angegebenen Dijit Parameter. Wenn er nicht
                 vorhanden ist, wird ein null Wert zurückgegeben.
-        </para></listitem>
+            </para>
+        </listitem>
 
-        <listitem><para>
+        <listitem>
+            <para>
                 <code>getDijitParams()</code>: Gibt alle Dijit Parameter zurück.
-        </para></listitem>
+            </para>
+        </listitem>
 
-        <listitem><para>
+        <listitem>
+            <para>
                 <code>removeDijitParam($key)</code>: Entfernt den angegebenen Dijit Parameter.
-        </para></listitem>
+            </para>
+        </listitem>
 
-        <listitem><para>
+        <listitem>
+            <para>
                 <code>clearDijitParams()</code>: Löscht alle aktuell definierten Dijit Parameter.
-        </para></listitem>
+            </para>
+        </listitem>
     </itemizedlist>
 
     <para>
@@ -91,17 +106,21 @@ $element->addDecorator('DijitElement')
         </para>
 
         <itemizedlist>
-            <listitem><para>
-                <code>getLabel()</code> verwendet den Elementnamen als Label für den Button wenn kein
-                Name angegeben wurde. Zusätzlich übersetzt es den Namen wenn ein Übersetzungsadapter mit
-                einer passenden übersetzten Meldung vorhanden ist.
-            </para></listitem>
-
-            <listitem><para>
-                <code>isChecked()</code> ermittelt ob der übermittelte Wert zum Label passt; wenn das der
-                Fall ist wird true zurückgegeben. Das ist für die Erkennung, welcher Button verwendet wurde
-                als das Formular übermittelt wurde, nützlich.
-            </para></listitem>
+            <listitem>
+                <para>
+                    <code>getLabel()</code> verwendet den Elementnamen als Label für den Button wenn kein
+                    Name angegeben wurde. Zusätzlich übersetzt es den Namen wenn ein Übersetzungsadapter mit
+                    einer passenden übersetzten Meldung vorhanden ist.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>isChecked()</code> ermittelt ob der übermittelte Wert zum Label passt; wenn das der
+                    Fall ist wird true zurückgegeben. Das ist für die Erkennung, welcher Button verwendet wurde
+                    als das Formular übermittelt wurde, nützlich.
+                </para>
+            </listitem>
         </itemizedlist>
 
         <para>
@@ -134,33 +153,45 @@ $form->addElement(
         </para>
 
         <itemizedlist>
-            <listitem><para>
-                <code>setCheckedValue($value)</code>: Setzt den Wert der verwendet werden soll wenn das
-                Element angehakt ist.
-            </para></listitem>
-
-            <listitem><para>
-                <code>getCheckedValue()</code>: Gibt den Wert des Elements zurück der verwendet wird wenn
-                das Element angehakt ist.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setUncheckedValue($value)</code>: Setzt den Wert des Elements der verwendet wird wenn
-                das Element nicht angehakt ist.
-            </para></listitem>
-
-            <listitem><para>
-                <code>getUncheckedValue()</code>: Gibt den Wert des Elements zurück der verwendet wird wenn
-                das Element nicht angehakt ist.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setChecked($flag)</code>: Markiert das Element als angehakt oder nicht angehakt.
-            </para></listitem>
-
-            <listitem><para>
-                <code>isChecked()</code>: Ermittelt ob das Element aktuell angehakt ist.
-            </para></listitem>
+            <listitem>
+                <para>
+                    <code>setCheckedValue($value)</code>: Setzt den Wert der verwendet werden soll wenn das
+                    Element angehakt ist.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>getCheckedValue()</code>: Gibt den Wert des Elements zurück der verwendet wird wenn
+                    das Element angehakt ist.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setUncheckedValue($value)</code>: Setzt den Wert des Elements der verwendet wird wenn
+                    das Element nicht angehakt ist.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>getUncheckedValue()</code>: Gibt den Wert des Elements zurück der verwendet wird wenn
+                    das Element nicht angehakt ist.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setChecked($flag)</code>: Markiert das Element als angehakt oder nicht angehakt.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>isChecked()</code>: Ermittelt ob das Element aktuell angehakt ist.
+                </para>
+            </listitem>
         </itemizedlist>
 
         <example id="zend.dojo.form.elements.checkBox.example">
@@ -210,50 +241,68 @@ $form->addElement(
         </para>
 
         <itemizedlist>
-            <listitem><para>
-                <code>getStoreInfo()</code>: Gibt alle aktuell gesetzten Informationen des Datenspeichers
-                zurück. Gibt ein leeres Array zurück wenn aktuell keine Daten gesetzt sind.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setStoreId($identifier)</code>: Setzt die Identifikatorvariable des Speichers
-                (normalerweise wird darauf durch das Attribut 'jsId' in Dojo referiert). Das sollte
-                ein gültiger Name für eine Javascriptvariable sein.
-            </para></listitem>
-
-            <listitem><para>
-                <code>getStoreId()</code>: Gibt den Namen der Identifikatorvariable des Speichers zurück.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setStoreType($dojoType)</code>: Setzt die Datenspeicherklasse die verwendet werden
-                soll; z.B., "dojo.data.ItemFileReadStore".
-            </para></listitem>
-
-            <listitem><para>
-                <code>getStoreType()</code>: Gibt die Dojo Datenspeicherklasse zurück die verwendet werden soll.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setStoreParams(array $params)</code>: Setzt jeden verwendeten Parameter um das
-                Datenspeicherobjekt zu konfigurieren. Als Beispiel würde der
-                dojo.data.ItemFileReadStore Datenspeicher einen 'url' Parameter erwarten der auf einen Ort
-                zeigt der das dojo.data Objekt zurückgibt.
-            </para></listitem>
-
-            <listitem><para>
-                <code>getStoreParams()</code>: Gibt alle aktuell gesetzten Datenspeicher Parameter zurück;
-                wenn keiner gesetzt ist, wird ein leeres Array zurückgegeben.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setAutocomplete($flag)</code>: Zeigt ob das selektierte Element verwendet wird oder nicht
-                wenn der Benutzer das Element verlässt.
-            </para></listitem>
-
-            <listitem><para>
-                <code>getAutocomplete()</code>: Gibt den Wert des autocomplete Flags zurück.
-            </para></listitem>
+            <listitem>
+                <para>
+                    <code>getStoreInfo()</code>: Gibt alle aktuell gesetzten Informationen des Datenspeichers
+                    zurück. Gibt ein leeres Array zurück wenn aktuell keine Daten gesetzt sind.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setStoreId($identifier)</code>: Setzt die Identifikatorvariable des Speichers
+                    (normalerweise wird darauf durch das Attribut 'jsId' in Dojo referiert). Das sollte
+                    ein gültiger Name für eine Javascriptvariable sein.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>getStoreId()</code>: Gibt den Namen der Identifikatorvariable des Speichers zurück.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setStoreType($dojoType)</code>: Setzt die Datenspeicherklasse die verwendet werden
+                    soll; z.B., "dojo.data.ItemFileReadStore".
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>getStoreType()</code>: Gibt die Dojo Datenspeicherklasse zurück die verwendet werden soll.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setStoreParams(array $params)</code>: Setzt jeden verwendeten Parameter um das
+                    Datenspeicherobjekt zu konfigurieren. Als Beispiel würde der
+                    dojo.data.ItemFileReadStore Datenspeicher einen 'url' Parameter erwarten der auf einen Ort
+                    zeigt der das dojo.data Objekt zurückgibt.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>getStoreParams()</code>: Gibt alle aktuell gesetzten Datenspeicher Parameter zurück;
+                    wenn keiner gesetzt ist, wird ein leeres Array zurückgegeben.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setAutocomplete($flag)</code>: Zeigt ob das selektierte Element verwendet wird oder nicht
+                    wenn der Benutzer das Element verlässt.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>getAutocomplete()</code>: Gibt den Wert des autocomplete Flags zurück.
+                </para>
+            </listitem>
         </itemizedlist>
 
         <para>
@@ -334,34 +383,46 @@ $form->addElement(
         </para>
 
         <itemizedlist>
-            <listitem><para>
-                <code>setCurrency($currency)</code>: Setzt den Typ der Währung die verwendet werden sol;
-                sollte der <ulink url="http://en.wikipedia.org/wiki/ISO_4217">ISO-4217</ulink> Spezifikation
-                folgen.
-            </para></listitem>
-
-            <listitem><para>
-                <code>getCurrency()</code>: Gibt den aktuellen Währungstyp zurück.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setSymbol($symbol)</code>: Setzt das 3-buchstabige
-                <ulink url="http://en.wikipedia.org/wiki/ISO_4217">ISO-4217</ulink> Symbol der Währung
-                das verwendet werden soll.
-            </para></listitem>
-
-            <listitem><para>
-                <code>getSymbol()</code>: Gibt das aktuelle Währungssymbol zurück.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setFractional($flag)</code>: Setzt ob für die Währung Kommazahlen oder ganze Zahlen
-                verwendet werden dürfen.
-            </para></listitem>
-
-            <listitem><para>
-                <code>getFractional()</code>: Gibt den Status des Kommazahlen Flags zurück.
-            </para></listitem>
+            <listitem>
+                <para>
+                    <code>setCurrency($currency)</code>: Setzt den Typ der Währung die verwendet werden sol;
+                    sollte der <ulink url="http://en.wikipedia.org/wiki/ISO_4217">ISO-4217</ulink> Spezifikation
+                    folgen.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>getCurrency()</code>: Gibt den aktuellen Währungstyp zurück.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setSymbol($symbol)</code>: Setzt das 3-buchstabige
+                    <ulink url="http://en.wikipedia.org/wiki/ISO_4217">ISO-4217</ulink> Symbol der Währung
+                    das verwendet werden soll.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>getSymbol()</code>: Gibt das aktuelle Währungssymbol zurück.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setFractional($flag)</code>: Setzt ob für die Währung Kommazahlen oder ganze Zahlen
+                    verwendet werden dürfen.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>getFractional()</code>: Gibt den Status des Kommazahlen Flags zurück.
+                </para>
+            </listitem>
         </itemizedlist>
 
         <example id="zend.dojo.form.elements.currencyTextBox.example">
@@ -401,38 +462,50 @@ $form->addElement(
         </para>
 
         <itemizedlist>
-            <listitem><para>
-                <code>setAmPm($flag)</code> and <code>getAmPm()</code>: Ob in der Zeit AM/PM Strings
-                verwendet werden sollen oder nicht.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setStrict($flag)</code> und <code>getStrict()</code>: Ob Reguläre Ausdrücke strikt
-                passen müssen oder nicht. Wenn es false ist, was der Standardwert ist, wird es nicht über
-                Leerzeichen und einige Abkürzungen lamentieren.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setLocale($locale)</code> und <code>getLocale()</code>: Setzt und gibt die Locale zurück
-                die mit diesem speziellen Element verwendet werden soll.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setDatePattern($pattern)</code> und <code>getDatePattern()</code>: Bietet und gibt den
-                <ulink url="http://www.unicode.org/reports/tr35/#Date_Format_Patterns">Unicode Pattern des
-                Datumsformats</ulink> für die Formatierung des Datums zurück.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setFormatLength($formatLength)</code> und <code>getFormatLength()</code>: Bietet und
-                gibt den Formatlänge Typ der verwendet werden soll zurück; sollte "long", "short", "medium"
-                oder "full" sein.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setSelector($selector)</code> und <code>getSelector()</code>: Bietet und gibt den Stil
-                des Selektors zurück; sollte entweder "date" oder "time" sein.
-            </para></listitem>
+            <listitem>
+                <para>
+                    <code>setAmPm($flag)</code> and <code>getAmPm()</code>: Ob in der Zeit AM/PM Strings
+                    verwendet werden sollen oder nicht.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setStrict($flag)</code> und <code>getStrict()</code>: Ob Reguläre Ausdrücke strikt
+                    passen müssen oder nicht. Wenn es false ist, was der Standardwert ist, wird es nicht über
+                    Leerzeichen und einige Abkürzungen lamentieren.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setLocale($locale)</code> und <code>getLocale()</code>: Setzt und gibt die Locale zurück
+                    die mit diesem speziellen Element verwendet werden soll.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setDatePattern($pattern)</code> und <code>getDatePattern()</code>: Bietet und gibt den
+                    <ulink url="http://www.unicode.org/reports/tr35/#Date_Format_Patterns">Unicode Pattern des
+                    Datumsformats</ulink> für die Formatierung des Datums zurück.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setFormatLength($formatLength)</code> und <code>getFormatLength()</code>: Bietet und
+                    gibt den Formatlänge Typ der verwendet werden soll zurück; sollte "long", "short", "medium"
+                    oder "full" sein.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setSelector($selector)</code> und <code>getSelector()</code>: Bietet und gibt den Stil
+                    des Selektors zurück; sollte entweder "date" oder "time" sein.
+                </para>
+            </listitem>
         </itemizedlist>
 
         <example id="zend.dojo.form.elements.dateTextBox.example">
@@ -478,13 +551,23 @@ $form->addElement(
                 </para>
 
                 <itemizedlist>
-                    <listitem><para><code>addCaptureEvent($event)</code></para></listitem>
-                    <listitem><para><code>addCaptureEvents(array $events)</code></para></listitem>
-                    <listitem><para><code>setCaptureEvents(array $events)</code></para></listitem>
+                    <listitem>
+                        <para><code>addCaptureEvent($event)</code></para>
+                    </listitem>
+                    <listitem>
+                        <para><code>addCaptureEvents(array $events)</code></para>
+                    </listitem>
+                    <listitem>
+                        <para><code>setCaptureEvents(array $events)</code></para>
+                    </listitem>
                     <listitem><para><code>getCaptureEvents()</code></para></listitem>
-                    <listitem><para><code>hasCaptureEvent($event)</code></para></listitem>
+                    <listitem>
+                        <para><code>hasCaptureEvent($event)</code></para>
+                    </listitem>
                     <listitem><para><code>removeCaptureEvent($event)</code></para></listitem>
-                    <listitem><para><code>clearCaptureEvents()</code></para></listitem>
+                    <listitem>
+                        <para><code>clearCaptureEvents()</code></para>
+                    </listitem>
                 </itemizedlist>
             </listitem>
 
@@ -496,13 +579,21 @@ $form->addElement(
                 </para>
 
                 <itemizedlist>
-                    <listitem><para><code>addEvent($event)</code></para></listitem>
+                    <listitem>
+                        <para><code>addEvent($event)</code></para>
+                    </listitem>
                     <listitem><para><code>addEvents(array $events)</code></para></listitem>
-                    <listitem><para><code>setEvents(array $events)</code></para></listitem>
+                    <listitem>
+                        <para><code>setEvents(array $events)</code></para>
+                    </listitem>
                     <listitem><para><code>getEvents()</code></para></listitem>
-                    <listitem><para><code>hasEvent($event)</code></para></listitem>
+                    <listitem>
+                        <para><code>hasEvent($event)</code></para>
+                    </listitem>
                     <listitem><para><code>removeEvent($event)</code></para></listitem>
-                    <listitem><para><code>clearEvents()</code></para></listitem>
+                    <listitem>
+                        <para><code>clearEvents()</code></para>
+                    </listitem>
                 </itemizedlist>
             </listitem>
 
@@ -514,13 +605,21 @@ $form->addElement(
                 </para>
 
                 <itemizedlist>
-                    <listitem><para><code>addPlugin($plugin)</code></para></listitem>
+                    <listitem>
+                        <para><code>addPlugin($plugin)</code></para>
+                    </listitem>
                     <listitem><para><code>addPlugins(array $plugins)</code></para></listitem>
-                    <listitem><para><code>setPlugins(array $plugins)</code></para></listitem>
+                    <listitem>
+                        <para><code>setPlugins(array $plugins)</code></para>
+                    </listitem>
                     <listitem><para><code>getPlugins()</code></para></listitem>
-                    <listitem><para><code>hasPlugin($plugin)</code></para></listitem>
+                    <listitem>
+                        <para><code>hasPlugin($plugin)</code></para>
+                    </listitem>
                     <listitem><para><code>removePlugin($plugin)</code></para></listitem>
-                    <listitem><para><code>clearPlugins()</code></para></listitem>
+                    <listitem>
+                        <para><code>clearPlugins()</code></para>
+                    </listitem>
                 </itemizedlist>
             </listitem>
 
@@ -577,13 +676,21 @@ $form->addElement(
                 </para>
 
                 <itemizedlist>
-                    <listitem><para><code>addStyleSheet($styleSheet)</code></para></listitem>
+                    <listitem>
+                        <para><code>addStyleSheet($styleSheet)</code></para>
+                    </listitem>
                     <listitem><para><code>addStyleSheets(array $styleSheets)</code></para></listitem>
-                    <listitem><para><code>setStyleSheets(array $styleSheets)</code></para></listitem>
+                    <listitem>
+                        <para><code>setStyleSheets(array $styleSheets)</code></para>
+                    </listitem>
                     <listitem><para><code>getStyleSheets()</code></para></listitem>
-                    <listitem><para><code>hasStyleSheet($styleSheet)</code></para></listitem>
+                    <listitem>
+                        <para><code>hasStyleSheet($styleSheet)</code></para>
+                    </listitem>
                     <listitem><para><code>removeStyleSheet($styleSheet)</code></para></listitem>
-                    <listitem><para><code>clearStyleSheets()</code></para></listitem>
+                    <listitem>
+                        <para><code>clearStyleSheets()</code></para>
+                    </listitem>
                 </itemizedlist>
             </listitem>
         </itemizedlist>
@@ -743,49 +850,65 @@ $form->addElement(
         </para>
 
         <itemizedlist>
-            <listitem><para>
-                <code>setDefaultTimeout($timeout)</code> und <code>getDefaultTimeout()</code>: Setzt und gibt
-                den Standardtimeout, in Millisekunden, zurück der zwischen dem gedrückt halten des Buttons
-                und der Änderung des Wertes ist.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setTimeoutChangeRate($rate)</code> und <code>getTimeoutChangeRate()</code>: Setzt und
-                gibe die Rate, in Millisekunden, zurück mit der Änderungen durchgeführt werden wenn ein
-                Button gedrückt gehalten wird.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setLargeDelta($delta)</code> und <code>getLargeDelta()</code>: Setzt und gibt die
-                Menge zurück mit welcher der nummerische Wert geändert werden soll wenn ein Button
-                gedrückt gehalten wird.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setSmallDelta($delta)</code> und <code>getSmallDelta()</code>: Setzt und gibt das
-                Delta zurück mit dem die Nummer geändert werden soll wenn ein Button einmal gedrückt wird.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setIntermediateChanges($flag)</code> und <code>getIntermediateChanges()</code>:
-                Setzt un gibt das Flag zurück das anzeigt ob jede Änderung des Werte angezeigt werden soll
-                wenn der Button gedrückt gehalten wird, oder nicht.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setRangeMessage($message)</code> und <code>getRangeMessage()</code>: Setzt und gibt
-                die Nachricht zurück die den Bereich der möglichen Werte anzeigt.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setMin($value)</code> und <code>getMin()</code>: Setzt und gibt den mindesten möglichen
-                Wert zurück.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setMax($value)</code> und <code>getMax()</code>: Setzt und gibt den maximalen möglichen
-                Wert zurück.
-            </para></listitem>
+            <listitem>
+                <para>
+                    <code>setDefaultTimeout($timeout)</code> und <code>getDefaultTimeout()</code>: Setzt und gibt
+                    den Standardtimeout, in Millisekunden, zurück der zwischen dem gedrückt halten des Buttons
+                    und der Änderung des Wertes ist.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setTimeoutChangeRate($rate)</code> und <code>getTimeoutChangeRate()</code>: Setzt und
+                    gibe die Rate, in Millisekunden, zurück mit der Änderungen durchgeführt werden wenn ein
+                    Button gedrückt gehalten wird.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setLargeDelta($delta)</code> und <code>getLargeDelta()</code>: Setzt und gibt die
+                    Menge zurück mit welcher der nummerische Wert geändert werden soll wenn ein Button
+                    gedrückt gehalten wird.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setSmallDelta($delta)</code> und <code>getSmallDelta()</code>: Setzt und gibt das
+                    Delta zurück mit dem die Nummer geändert werden soll wenn ein Button einmal gedrückt wird.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setIntermediateChanges($flag)</code> und <code>getIntermediateChanges()</code>:
+                    Setzt un gibt das Flag zurück das anzeigt ob jede Änderung des Werte angezeigt werden soll
+                    wenn der Button gedrückt gehalten wird, oder nicht.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setRangeMessage($message)</code> und <code>getRangeMessage()</code>: Setzt und gibt
+                    die Nachricht zurück die den Bereich der möglichen Werte anzeigt.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setMin($value)</code> und <code>getMin()</code>: Setzt und gibt den mindesten möglichen
+                    Wert zurück.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setMax($value)</code> und <code>getMax()</code>: Setzt und gibt den maximalen möglichen
+                    Wert zurück.
+                </para>
+            </listitem>
         </itemizedlist>
 
         <example id="zend.dojo.form.elements.numberSpinner.example">
@@ -830,32 +953,42 @@ $form->addElement(
         </para>
 
         <itemizedlist>
-            <listitem><para>
-                <code>setLocale($locale)</code> und <code>getLocale()</code>: Spezifiziert und gibt ein
-                spezifisches oder alternatives Gebietsschema zurück das mit diesem Dijit verwendet werden soll.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setPattern($pattern)</code> und <code>getPattern()</code>: Setzt und gibt ein
-                <ulink url="http://www.unicode.org/reports/tr35/#Number_Format_Patterns">Nummern Patternformat</ulink>
-                zurück das verwendet wird um eine Nummer zu formatieren.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setType($type)</code> und <code>getType()</code>: Setzt und gibt eine nummerischen
-                Formattyp zurück der verwendet wird (sollte 'decimal', 'percent' oder 'currency' sein).
-            </para></listitem>
-
-            <listitem><para>
-                <code>setPlaces($places)</code> und <code>getPlaces()</code>: Setzt und gibt die Anzahl der
-                Dezimalstellen die unterstützt werden sollen zurück.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setStrict($flag)</code> und <code>getStrict()</code>: Setzt und gibt den Wert des
-                Strictflags zurück, welches anzeigt wieviel Ungenauigkeit in Bezug auf Leerzeichen und
-                nicht-nummerische Zeichen erlaubt ist.
-            </para></listitem>
+            <listitem>
+                <para>
+                    <code>setLocale($locale)</code> und <code>getLocale()</code>: Spezifiziert und gibt ein
+                    spezifisches oder alternatives Gebietsschema zurück das mit diesem Dijit verwendet werden soll.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setPattern($pattern)</code> und <code>getPattern()</code>: Setzt und gibt ein
+                    <ulink url="http://www.unicode.org/reports/tr35/#Number_Format_Patterns">Nummern Patternformat</ulink>
+                    zurück das verwendet wird um eine Nummer zu formatieren.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setType($type)</code> und <code>getType()</code>: Setzt und gibt eine nummerischen
+                    Formattyp zurück der verwendet wird (sollte 'decimal', 'percent' oder 'currency' sein).
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setPlaces($places)</code> und <code>getPlaces()</code>: Setzt und gibt die Anzahl der
+                    Dezimalstellen die unterstützt werden sollen zurück.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setStrict($flag)</code> und <code>getStrict()</code>: Setzt und gibt den Wert des
+                    Strictflags zurück, welches anzeigt wieviel Ungenauigkeit in Bezug auf Leerzeichen und
+                    nicht-nummerische Zeichen erlaubt ist.
+                </para>
+            </listitem>
         </itemizedlist>
 
         <example id="zend.dojo.form.elements.numberTextBox.example">
@@ -996,42 +1129,56 @@ $form->addElement(
         </para>
 
         <itemizedlist>
-            <listitem><para>
-                <code>setClickSelect($flag)</code> und <code>getClickSelect()</code>: Setzt und gibt das
-                Flag zurück das anzeigt ob das Klicken auf den Slider den Wert ändert oder nicht.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setIntermediateChanges($flag)</code> und <code>getIntermediateChanges()</code>:
-                Setzt und gibt das Flag zurück das anzeigt ob das Dijit eine Benachrichtigung bei jedem
-                Slider-Event schickt oder nicht.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setShowButtons($flag)</code> und <code>getShowButtons()</code>: Setzt und gibt das
-                Flag zurück das anzeigt ob Buttons an den Enden angezeigt werden oder nicht; wenn ja, dann
-                kann der Benutzer diese anklicken und damit den Wert des Sliders ändern.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setDiscreteValues($value)</code> und <code>getDiscreteValues()</code>: Setzt und gibt
-                die Anzahl an diskreten Werte zurück die vom Slider repräsentiert werden.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setMaximum($value)</code> und <code>getMaximum()</code>: Setzt den maximalen Wert des
-                Sliders.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setMinimum($value)</code> und <code>getMinimum()</code>: Setzt den minimalen Wert des
-                Sliders.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setPageIncrement($value)</code> und <code>getPageIncrement()</code>: Setzt den Wert um den
-                sich der Slider auf Tastaturereignisse ändert.
-            </para></listitem>
+            <listitem>
+                <para>
+                    <code>setClickSelect($flag)</code> und <code>getClickSelect()</code>: Setzt und gibt das
+                    Flag zurück das anzeigt ob das Klicken auf den Slider den Wert ändert oder nicht.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setIntermediateChanges($flag)</code> und <code>getIntermediateChanges()</code>:
+                    Setzt und gibt das Flag zurück das anzeigt ob das Dijit eine Benachrichtigung bei jedem
+                    Slider-Event schickt oder nicht.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setShowButtons($flag)</code> und <code>getShowButtons()</code>: Setzt und gibt das
+                    Flag zurück das anzeigt ob Buttons an den Enden angezeigt werden oder nicht; wenn ja, dann
+                    kann der Benutzer diese anklicken und damit den Wert des Sliders ändern.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setDiscreteValues($value)</code> und <code>getDiscreteValues()</code>: Setzt und gibt
+                    die Anzahl an diskreten Werte zurück die vom Slider repräsentiert werden.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setMaximum($value)</code> und <code>getMaximum()</code>: Setzt den maximalen Wert des
+                    Sliders.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setMinimum($value)</code> und <code>getMinimum()</code>: Setzt den minimalen Wert des
+                    Sliders.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setPageIncrement($value)</code> und <code>getPageIncrement()</code>: Setzt den Wert um den
+                    sich der Slider auf Tastaturereignisse ändert.
+                </para>
+            </listitem>
         </itemizedlist>
 
         <para>
@@ -1076,30 +1223,40 @@ $form->addElement(
         </para>
 
         <itemizedlist>
-            <listitem><para>
-                <code>setLowercase($flag)</code> und <code>getLowercase()</code>: Setzt und gibt das
-                Tag zurück das anzeigt ob die Eingabe auf Kleinschreibung (lowercase) geändert wird oder nicht.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setPropercase($flag)</code> und <code>getPropercase()</code>: Setzt und gibt das
-                Tag zurück das anzeigt ob die Eingabe auf Proper Case geändert wird oder nicht.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setUppercase($flag)</code> und <code>getUppercase()</code>: Setzt und retourniert
-                das Flag das anzeigt ob die Eingabe auf Großschreibung (UPPERCASE) geändert wird oder nicht.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setTrim($flag)</code> und <code>getTrim()</code>: Setzt und retourniert das Flag das
-                anzeigt ob führende Leerzeichen entfernt werden oder nicht.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setMaxLength($length)</code> und <code>getMaxLength()</code>: Setzt und retourniert die
-                maximale Länge der Eingabe.
-            </para></listitem>
+            <listitem>
+                <para>
+                    <code>setLowercase($flag)</code> und <code>getLowercase()</code>: Setzt und gibt das
+                    Tag zurück das anzeigt ob die Eingabe auf Kleinschreibung (lowercase) geändert wird oder nicht.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setPropercase($flag)</code> und <code>getPropercase()</code>: Setzt und gibt das
+                    Tag zurück das anzeigt ob die Eingabe auf Proper Case geändert wird oder nicht.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setUppercase($flag)</code> und <code>getUppercase()</code>: Setzt und retourniert
+                    das Flag das anzeigt ob die Eingabe auf Großschreibung (UPPERCASE) geändert wird oder nicht.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setTrim($flag)</code> und <code>getTrim()</code>: Setzt und retourniert das Flag das
+                    anzeigt ob führende Leerzeichen entfernt werden oder nicht.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setMaxLength($length)</code> und <code>getMaxLength()</code>: Setzt und retourniert die
+                    maximale Länge der Eingabe.
+                </para>
+            </listitem>
         </itemizedlist>
 
         <example id="zend.dojo.form.elements.textBox.example">
@@ -1166,28 +1323,36 @@ $form->addElement(
         </para>
 
         <itemizedlist>
-            <listitem><para>
-                <code>setTimePattern($pattern)</code> und <code>getTimePattern()</code>: Setzt und
-                retourniert den <ulink url="http://www.unicode.org/reports/tr35/#Date_Format_Patterns">Unicode
-                Zeitformat Pattern</ulink> für die Formatierung der Zeit.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setClickableIncrement($format)</code> und <code>getClickableIncrement()</code>:
-                Setzt den <ulink url="http://en.wikipedia.org/wiki/ISO_8601">ISO-8601</ulink> String der
-                die Anzahl repräsentiert mit dem jedes anklickbare Element der Zeitauswahl inkrementiert wird.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setVisibleIncrement($format)</code> und <code>getVisibleIncrement()</code>: Definiert das
-                der Inkrement in der Zeitauswahl sichtbar ist; muß dem ISO-8601 Format entsprechen.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setVisibleRange($format)</code> und <code>getVisibleRange()</code>: Setzt und retorniert
-                den Zeitbereich der in der Zeitauswahl zu jedem Zeitpunkt sichtbar ist; muß dem ISO-8601
-                Format entsprechen.
-            </para></listitem>
+            <listitem>
+                <para>
+                    <code>setTimePattern($pattern)</code> und <code>getTimePattern()</code>: Setzt und
+                    retourniert den <ulink url="http://www.unicode.org/reports/tr35/#Date_Format_Patterns">Unicode
+                    Zeitformat Pattern</ulink> für die Formatierung der Zeit.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setClickableIncrement($format)</code> und <code>getClickableIncrement()</code>:
+                    Setzt den <ulink url="http://en.wikipedia.org/wiki/ISO_8601">ISO-8601</ulink> String der
+                    die Anzahl repräsentiert mit dem jedes anklickbare Element der Zeitauswahl inkrementiert wird.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setVisibleIncrement($format)</code> und <code>getVisibleIncrement()</code>: Definiert das
+                    der Inkrement in der Zeitauswahl sichtbar ist; muß dem ISO-8601 Format entsprechen.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setVisibleRange($format)</code> und <code>getVisibleRange()</code>: Setzt und retorniert
+                    den Zeitbereich der in der Zeitauswahl zu jedem Zeitpunkt sichtbar ist; muß dem ISO-8601
+                    Format entsprechen.
+                </para>
+            </listitem>
         </itemizedlist>
 
         <example id="zend.dojo.form.elements.timeTextBox.example">
@@ -1225,43 +1390,57 @@ $form->addElement(
         </para>
 
         <itemizedlist>
-            <listitem><para>
-                <code>setInvalidMessage($message)</code> und <code>getInvalidMessage()</code>: Setzt und
-                retourniert die Tooltipnachricht die angezeigt werden soll wenn der Wert nicht gültig ist.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setPromptMessage($message)</code> und <code>getPromptMessage()</code>: Setzt und
-                retourniert die Tooltipnachricht die angezeigt werden soll wenn das Element verwendet wird.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setRegExp($regexp)</code> und <code>getRegExp()</code>: Setzt und retourniert den
-                regulären Ausdruck der für die Prüfung des Elements verwendet wird. Der reguläre Ausdruck
-                benötigt keine Begrenzungen (anders als PHP's Funktionsfamilie preg*).
-            </para></listitem>
-
-            <listitem><para>
-                <code>setConstraint($key, $value)</code> und <code>getConstraint($key)</code>: Setzt und
-                retourniert zusätzliche Abhängigkeiten die für die Prüfung des Elements verwendet werden;
-                wird primär mit Unterklassen verwendet. Abhängigkeiten werden im 'constraints' Schlüssel der
-                Dijit Parameter abgespeichert.
-            </para></listitem>
-
-            <listitem><para>
-                <code>setConstraints(array $constraints)</code> und <code>getConstraints()</code>: Setzt und
-                retourniert individuelle Abhängigkeiten die bei der Prüfung eines Elements verwendet werden;
-                wird primär mit Unterklassen verwendet.
-            </para></listitem>
-
-            <listitem><para>
-                <code>hasConstraint($key)</code>: Testet ob eine angegebene Abhängigkeit existiert.
-            </para></listitem>
-
-            <listitem><para>
-                <code>removeConstraint($key)</code> und <code>clearConstraints()</code>: Entfernt eine
-                einzelne oder alle Abhängigkeiten des Elements.
-            </para></listitem>
+            <listitem>
+                <para>
+                    <code>setInvalidMessage($message)</code> und <code>getInvalidMessage()</code>: Setzt und
+                    retourniert die Tooltipnachricht die angezeigt werden soll wenn der Wert nicht gültig ist.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setPromptMessage($message)</code> und <code>getPromptMessage()</code>: Setzt und
+                    retourniert die Tooltipnachricht die angezeigt werden soll wenn das Element verwendet wird.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setRegExp($regexp)</code> und <code>getRegExp()</code>: Setzt und retourniert den
+                    regulären Ausdruck der für die Prüfung des Elements verwendet wird. Der reguläre Ausdruck
+                    benötigt keine Begrenzungen (anders als PHP's Funktionsfamilie preg*).
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setConstraint($key, $value)</code> und <code>getConstraint($key)</code>: Setzt und
+                    retourniert zusätzliche Abhängigkeiten die für die Prüfung des Elements verwendet werden;
+                    wird primär mit Unterklassen verwendet. Abhängigkeiten werden im 'constraints' Schlüssel der
+                    Dijit Parameter abgespeichert.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>setConstraints(array $constraints)</code> und <code>getConstraints()</code>: Setzt und
+                    retourniert individuelle Abhängigkeiten die bei der Prüfung eines Elements verwendet werden;
+                    wird primär mit Unterklassen verwendet.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>hasConstraint($key)</code>: Testet ob eine angegebene Abhängigkeit existiert.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <code>removeConstraint($key)</code> und <code>clearConstraints()</code>: Entfernt eine
+                    einzelne oder alle Abhängigkeiten des Elements.
+                </para>
+            </listitem>
         </itemizedlist>
 
         <example id="zend.dojo.form.elements.validationTextBox.example">

+ 10 - 8
documentation/manual/de/module_specs/Zend_Dojo-Form-Examples.xml

@@ -8,10 +8,11 @@
         <title>Zend_Dojo_Form verwenden</title>
 
         <para>
-            Der einfachste Weg um Dojo mit <classname>Zend_Form</classname> zu verwenden besteht darin
-            <classname>Zend_Dojo_Form</classname> zu verwenden, entweder durch direkte Verwendung oder indem Sie erweitert
-            wird. Dieses Beispiel zeigt die Erweiterung von <classname>Zend_Dojo_Form</classname> und die Verwendung aller Dijit
-            Elemente. Es erstellt vier Unterformulare, und dekoriert das Formular damit ein TabContainer
+            Der einfachste Weg um Dojo mit <classname>Zend_Form</classname> zu verwenden besteht
+            darin <classname>Zend_Dojo_Form</classname> zu verwenden, entweder durch direkte
+            Verwendung oder indem Sie erweitert wird. Dieses Beispiel zeigt die Erweiterung von
+            <classname>Zend_Dojo_Form</classname> und die Verwendung aller Dijit Elemente. Es
+            erstellt vier Unterformulare, und dekoriert das Formular damit ein TabContainer
             verwendet wird, welcher jedes Unterformular in seinem eigenen Tab zeigt.
         </para>
 
@@ -360,7 +361,8 @@ class My_Form_Test extends Zend_Dojo_Form
         </para>
 
         <para>
-            Dieses erste Beispiel zeigt die eine bestehende Instanz eines Formulars dekoriert werden kann:
+            Dieses erste Beispiel zeigt die eine bestehende Instanz eines Formulars dekoriert werden
+            kann:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -402,9 +404,9 @@ class My_Custom_Form extends Zend_Form
 ]]></programlisting>
 
         <para>
-            Natürlich kann auch das getan werden... man könnte und sollte einfach die Klasse so verändern das
-            Sie <classname>Zend_Dojo_Form</classname> ableitet, was eine eins-zu-eins Ersetzung von <classname>Zend_Form</classname> ist, die bereits
-            Dojo versteht...
+            Natürlich kann auch das getan werden... man könnte und sollte einfach die Klasse so
+            verändern das Sie <classname>Zend_Dojo_Form</classname> ableitet, was eine eins-zu-eins
+            Ersetzung von <classname>Zend_Form</classname> ist, die bereits Dojo versteht...
         </para>
     </example>
 </sect2>

+ 330 - 159
documentation/manual/de/module_specs/Zend_Dojo-View-Dojo.xml

@@ -5,42 +5,53 @@
     <title>dojo() View Helfer</title>
 
     <para>
-        Der <code>dojo()</code> View Helfer ist dazu gedacht das konfigurieren der Dojo Umgebung zu vereinfachen,
-        was die folgenden Notwendigkeiten beinhaltet:
+        Der <code>dojo()</code> View Helfer ist dazu gedacht das konfigurieren der Dojo Umgebung zu
+        vereinfachen, was die folgenden Notwendigkeiten beinhaltet:
     </para>
 
     <itemizedlist>
-        <listitem><para>Spezifizieren eines CDN oder lokalen Pfades zu einer Dojo Installation.</para></listitem>
-        <listitem><para>Spezifizieren von Pfaden zu eigenen Dojo Modulen.</para></listitem>
-        <listitem><para>Spezifizieren von dojo.require Statements.</para></listitem>
-        <listitem><para>Spezifizieren von Dijit Stylesheet Themen zur Verwendung.</para></listitem>
-        <listitem><para>Spezifizieren von dojo.addOnLoad() Events.</para></listitem>
+        <listitem>
+            <para>Spezifizieren eines CDN oder lokalen Pfades zu einer Dojo Installation.</para>
+        </listitem>
+        <listitem>
+            <para>Spezifizieren von Pfaden zu eigenen Dojo Modulen.</para>
+        </listitem>
+        <listitem>
+            <para>Spezifizieren von dojo.require Statements.</para>
+        </listitem>
+        <listitem>
+            <para>Spezifizieren von Dijit Stylesheet Themen zur Verwendung.</para>
+        </listitem>
+        <listitem>
+            <para>Spezifizieren von dojo.addOnLoad() Events.</para>
+        </listitem>
     </itemizedlist>
 
     <para>
-        Die <code>dojo()</code> View Helfer Implementation ist ein Beispiel einer Platzhalter Implementation.
-        Das Datenset in Ihm ist persistent zwischen den View Objekten, und kann direkt im eigenen
-        Layout Skript ausgegeben werden.
+        Die <code>dojo()</code> View Helfer Implementation ist ein Beispiel einer Platzhalter
+        Implementation. Das Datenset in Ihm ist persistent zwischen den View Objekten, und kann
+        direkt im eigenen Layout Skript ausgegeben werden.
     </para>
 
     <example id="zend.dojo.view.dojo.usage">
         <title>Beispiel für die Verwendung des dojo() View Helfers</title>
 
         <para>
-            Für dieses Beispiel nehmen wir an das der Entwickler Dojo von einem lokalen Pfad aus verwenden
-            wird, verschiedene Dijits benötigt, und das Tundra Dijit Thema anpasst.
+            Für dieses Beispiel nehmen wir an das der Entwickler Dojo von einem lokalen Pfad aus
+            verwenden wird, verschiedene Dijits benötigt, und das Tundra Dijit Thema anpasst.
         </para>
 
         <para>
-            Auf vielen Seiten, kann der Entwickler Dojo nicht einmal verwenden. Deshalb werden wir uns zuerst
-            auf ein View Skript fokusieren indem Dojo benötigt wird, und dann auf das Layout Skript, indem wir
-            einiges der Dojo Umgebung einstellen und anschließend darstellen werden.
+            Auf vielen Seiten, kann der Entwickler Dojo nicht einmal verwenden. Deshalb werden wir
+            uns zuerst auf ein View Skript fokusieren indem Dojo benötigt wird, und dann auf das
+            Layout Skript, indem wir einiges der Dojo Umgebung einstellen und anschließend
+            darstellen werden.
         </para>
 
         <para>
-            Zuerst müssen wir unserem View Objekt mitteilen das es die Dojo View Helferpfade verwenden soll.
-            Das kann in der eigenen Bootstrap Datei getan werden oder in einem Plugin das früh abläuft;
-            einfach das View Objekt nehmen und das folgende ausführen:
+            Zuerst müssen wir unserem View Objekt mitteilen das es die Dojo View Helferpfade
+            verwenden soll. Das kann in der eigenen Bootstrap Datei getan werden oder in einem
+            Plugin das früh abläuft; einfach das View Objekt nehmen und das folgende ausführen:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -48,9 +59,10 @@ $view->addHelperPath('Zend/Dojo/View/Helper/', 'Zend_Dojo_View_Helper');
 ]]></programlisting>
 
         <para>
-            Als nächstes das View Skript. In diesem Fall werden die spezifizieren das ein FilterSelect
-            verwendet werden soll -- welcher einen eigenen Speicher basierend auf QueryReadStore verwenden
-            wird, und den wir 'PairedStore' nennen und in unserem 'custom' Modul speichern.
+            Als nächstes das View Skript. In diesem Fall werden die spezifizieren das ein
+            FilterSelect verwendet werden soll -- welcher einen eigenen Speicher basierend auf
+            QueryReadStore verwenden wird, und den wir 'PairedStore' nennen und in unserem 'custom'
+            Modul speichern.
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -72,8 +84,8 @@ $this->dojo()->enable()
 ]]></programlisting>
 
         <para>
-            In unserem Layout Skript, prüfen wir anschließend ob Dojo aktiviert ist, und wenn das der Fall ist,
-            erledigen wir einige generelle Konfigurationen und fügen Sie hinzu:
+            In unserem Layout Skript, prüfen wir anschließend ob Dojo aktiviert ist, und wenn das
+            der Fall ist, erledigen wir einige generelle Konfigurationen und fügen Sie hinzu:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -100,8 +112,8 @@ $this->dojo()->enable()
 ]]></programlisting>
 
         <para>
-            An diesem Punkt muß man nur sicherstellen das die Dateien am richtigen Ort vorhanden sind und
-            das man die Aktion des Endpunktes für das FilteringSelect erstellt hat!
+            An diesem Punkt muß man nur sicherstellen das die Dateien am richtigen Ort vorhanden
+            sind und das man die Aktion des Endpunktes für das FilteringSelect erstellt hat!
         </para>
     </example>
 
@@ -111,40 +123,43 @@ $this->dojo()->enable()
         <para>
             Dojo erlaubt sowohl die <emphasis>deklarative</emphasis> als auch die
             <emphasis>programmtechnische</emphasis> Verwendung von vielen Ihrer Features.
-            <emphasis>Deklarative</emphasis> Verwendung verwendet Standard HTML Elemente mit nicht-standard
-            Attributen die geparst werden wenn die Seite geladen wird. Wärend das eine mächtige und einfach
-            verwendbare Syntax ist, kann Sie für viele Entwickler Probleme bei der Überprüfung einer Seite
-            verursachen.
+            <emphasis>Deklarative</emphasis> Verwendung verwendet Standard HTML Elemente mit
+            nicht-standard Attributen die geparst werden wenn die Seite geladen wird. Wärend das
+            eine mächtige und einfach verwendbare Syntax ist, kann Sie für viele Entwickler Probleme
+            bei der Überprüfung einer Seite verursachen.
         </para>
 
         <para>
-            <emphasis>Programmtechnische</emphasis> Verwendung erlaubt dem Entwickler existierende Elemente
-            zu dekorieren indem Sie anhand von ID oder CSS Selektoren geholt werden und dem entsprechenden
-            Objektkonstruktoren in Dojo übergeben werden. Weil keine nicht-standard HTML Attribute verwendet
-            werden, bleiben Seiten hiermit gültig.
+            <emphasis>Programmtechnische</emphasis> Verwendung erlaubt dem Entwickler existierende
+            Elemente zu dekorieren indem Sie anhand von ID oder CSS Selektoren geholt werden und dem
+            entsprechenden Objektkonstruktoren in Dojo übergeben werden. Weil keine nicht-standard
+            HTML Attribute verwendet werden, bleiben Seiten hiermit gültig.
         </para>
 
         <para>
-            In der Praxis, erlauben beide Fälle eine zierliche Degeneration wenn Javascript ausgeschaltet ist,
-            oder die verschiedenen Dojo Skriptresourcen nicht erreichbar sind. Um Standards und
-            Dokumentüberprüfungen zu gestatten verwendet Zend Framework standardmäßig die programmtechnische
-            Verwendung; die verschiedenen Viewhelfer erzeugen Javascript und übergeben dieses an den
-            <code>dojo()</code> Viewhelfer für die Einbeziehung wenn er dargestellt wird.
+            In der Praxis, erlauben beide Fälle eine zierliche Degeneration wenn Javascript
+            ausgeschaltet ist, oder die verschiedenen Dojo Skriptresourcen nicht erreichbar sind. Um
+            Standards und Dokumentüberprüfungen zu gestatten verwendet Zend Framework standardmäßig
+            die programmtechnische Verwendung; die verschiedenen Viewhelfer erzeugen Javascript und
+            übergeben dieses an den <code>dojo()</code> Viewhelfer für die Einbeziehung wenn er
+            dargestellt wird.
         </para>
 
         <para>
-            Entwickler die diese Technik verwenden wollen eventuell auch die Option kennenlernen mit der Sie
-            Ihre eigene programmtechnische Deklaration auf der Seite schreiben können. Ein Vorteil wäre die
-            Möglichkeit Handler für Dijit Events zu spezifizieren.
+            Entwickler die diese Technik verwenden wollen eventuell auch die Option kennenlernen mit
+            der Sie Ihre eigene programmtechnische Deklaration auf der Seite schreiben können. Ein
+            Vorteil wäre die Möglichkeit Handler für Dijit Events zu spezifizieren.
         </para>
 
         <para>
-            Um das zu erlauben, wie auch die Möglichkeit die deklarative Syntax zu verwenden, sind es eine
-            Anzahl von statischen Methoden vorhanden die dieses Verhalten global setzen.
+            Um das zu erlauben, wie auch die Möglichkeit die deklarative Syntax zu verwenden, sind
+            es eine Anzahl von statischen Methoden vorhanden die dieses Verhalten global setzen.
         </para>
 
         <example id="zend.dojo.view.dojo.declarative.usage">
-            <title>Spezifizieren der deklarativen und programmtechnischen Verwendung von Dojo</title>
+            <title>
+                Spezifizieren der deklarativen und programmtechnischen Verwendung von Dojo
+            </title>
 
             <para>
                 Um die deklarative Verwendung zu spezifizieren muß einfach die statische
@@ -156,8 +171,8 @@ Zend_Dojo_View_Helper_Dojo::setUseDeclarative();
 ]]></programlisting>
 
             <para>
-                Wenn man stattdessen die programmtechnische Verwendung verwenden will, muß die statische
-                <code>setUseProgrammatic()</code> Methode aufgerufen werden:
+                Wenn man stattdessen die programmtechnische Verwendung verwenden will, muß die
+                statische <code>setUseProgrammatic()</code> Methode aufgerufen werden:
             </para>
 
             <programlisting role="php"><![CDATA[
@@ -165,9 +180,10 @@ Zend_Dojo_View_Helper_Dojo::setUseProgrammatic();
 ]]></programlisting>
 
             <para>
-                Letztendlich, wenn man programmtechnische Regeln selbst erstellen will, sollte man die
-                programmtechnische Verwendung spezifizieren, aber den Wert '-1' übergeben; in diesem Fall
-                wird kein Javascript, für die Dekoration von verwendeten Dijits, erstellt.
+                Letztendlich, wenn man programmtechnische Regeln selbst erstellen will, sollte man
+                die programmtechnische Verwendung spezifizieren, aber den Wert '-1' übergeben; in
+                diesem Fall wird kein Javascript, für die Dekoration von verwendeten Dijits,
+                erstellt.
             </para>
 
             <programlisting role="php"><![CDATA[
@@ -180,8 +196,8 @@ Zend_Dojo_View_Helper_Dojo::setUseProgrammatic(-1);
         <title>Themen</title>
 
         <para>
-            Dojo erlaubt die Erstellung von Themen für seine Dijits (Widgets). Man kann eines auswählen indem
-            ein Modulpfad übergeben wird:
+            Dojo erlaubt die Erstellung von Themen für seine Dijits (Widgets). Man kann eines
+            auswählen indem ein Modulpfad übergeben wird:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -189,16 +205,16 @@ $view->dojo()->addStylesheetModule('dijit.themes.tundra');
 ]]></programlisting>
 
         <para>
-            Der Modulpfad wird durch die Verwendung des Zeichens '.' als Trennzeichen vom Verzeichnis erkannt
-            und der Verwendung des letzten Wertes in der Liste als den Namen der CSS Datei die im
-            Themenverzeichnis verwendet wird; im obigen Beispiel sucht Dojo das Thema in
-            'dijit/themes/tundra/tundra.css'.
+            Der Modulpfad wird durch die Verwendung des Zeichens '.' als Trennzeichen vom
+            Verzeichnis erkannt und der Verwendung des letzten Wertes in der Liste als den Namen der
+            CSS Datei die im Themenverzeichnis verwendet wird; im obigen Beispiel sucht Dojo das
+            Thema in 'dijit/themes/tundra/tundra.css'.
         </para>
 
         <para>
-            Wenn ein Thema verwendet wird ist es wichtig daran zu denken die Themenklasse, zumindest an den
-            Container der jedes Dijit das verwendet wird umgibt, zu übergeben; im üblichsten Fällen wird es
-            an den Body übergeben:
+            Wenn ein Thema verwendet wird ist es wichtig daran zu denken die Themenklasse, zumindest
+            an den Container der jedes Dijit das verwendet wird umgibt, zu übergeben; im üblichsten
+            Fällen wird es an den Body übergeben:
         </para>
 
         <programlisting role="html"><![CDATA[
@@ -211,42 +227,51 @@ $view->dojo()->addStylesheetModule('dijit.themes.tundra');
         <title>Layer verwenden (eigene Builds)</title>
 
         <para>
-            Wenn ein dojo.require Statement verwendet wird, wird Dojo standardmäßig eine Anfrage an den
-            Server zurücksenden um die richtige Javascript Datei zu holen. Wenn man viele Dijits verwendet,
-            resultiert das in vielen Anfragen an den Server -- was nicht optimal ist.
+            Wenn ein dojo.require Statement verwendet wird, wird Dojo standardmäßig eine Anfrage an
+            den Server zurücksenden um die richtige Javascript Datei zu holen. Wenn man viele Dijits
+            verwendet, resultiert das in vielen Anfragen an den Server -- was nicht optimal ist.
         </para>
 
         <para>
-            Dojo's Antwort darauf ist es die Möglichkeit anzubieten <emphasis>eigene Builds</emphasis>
-            zu erstellen. Builds machen verschiedene Dinge:
+            Dojo's Antwort darauf ist es die Möglichkeit anzubieten
+            <emphasis>eigene Builds</emphasis> zu erstellen. Builds machen verschiedene Dinge:
         </para>
 
         <itemizedlist>
-            <listitem><para>
-                Benötigte Dateien in <emphasis>Layern</emphasis> gruppieren; ein Layer sammelt alle
-                benötigten Dateien in eine einzelne JS Datei. (Daher der Name dieses Kapitels)
-            </para></listitem>
-
-            <listitem><para>
-                "Interne" nicht-javascript Dateien die von Dijits verwendet werden (typischerweise
-                Templatedateien). Diese werden auch in der gleichen JS Datei gruppiert wie der Layer.
-            </para></listitem>
-
-            <listitem><para>
-                Die Datei wird an ShrinkSafe übergeben, welches Leerzeichen und Kommentare entfernt, sowie
-                Variablennamen verkleinert.
-            </para></listitem>
+            <listitem>
+                <para>
+                    Benötigte Dateien in <emphasis>Layern</emphasis> gruppieren; ein Layer sammelt
+                    alle benötigten Dateien in eine einzelne JS Datei. (Daher der Name dieses
+                    Kapitels)
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    "Interne" nicht-javascript Dateien die von Dijits verwendet werden
+                    (typischerweise Templatedateien). Diese werden auch in der gleichen JS Datei
+                    gruppiert wie der Layer.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    Die Datei wird an ShrinkSafe übergeben, welches Leerzeichen und Kommentare
+                    entfernt, sowie Variablennamen verkleinert.
+                </para>
+            </listitem>
         </itemizedlist>
 
         <para>
-            Einige Dateien können nicht in einen Layer gelegt werden, aber der Buildprozess wird ein spezielles
-            Releaseverzeichnis mit der Layerdatei und allen anderen Dateien erstellen. Das erlaubt es eine
-            verkleinerte eigene Distribution für die eigene Site oder Anwendungen zu erhalten.
+            Einige Dateien können nicht in einen Layer gelegt werden, aber der Buildprozess wird
+            ein spezielles Releaseverzeichnis mit der Layerdatei und allen anderen Dateien
+            erstellen. Das erlaubt es eine verkleinerte eigene Distribution für die eigene Site oder
+            Anwendungen zu erhalten.
         </para>
 
         <para>
-            Um einen Layer zu verwenden, hat der <code>dojo()</code> Viewhelfer eine <code>addLayer()</code>
-            Methode für das hinzufügen von Pfaden zu benötigten Layern:
+            Um einen Layer zu verwenden, hat der <code>dojo()</code> Viewhelfer eine
+            <code>addLayer()</code> Methode für das hinzufügen von Pfaden zu benötigten Layern:
         </para>
 
         <programlisting role="html"><![CDATA[
@@ -255,8 +280,8 @@ $view->dojo()->addLayer('/js/foo/foo.js');
 
         <para>
             Für weitere Informationen über die Erstellung von eigenen Build, schauen Sie bitte
-            <ulink url="http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo/package-system-and-custom-builds">
-            in die Dojo Builddokumentation</ulink>.
+            <ulink url="http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo/package-system-and-custom-builds">in
+                die Dojo Builddokumentation</ulink>.
         </para>
     </sect3>
 
@@ -264,86 +289,232 @@ $view->dojo()->addLayer('/js/foo/foo.js');
         <title>Vorhandene Methoden</title>
 
         <para>
-            Der <code>dojo()</code> Viewhelfer gibt immer eine Instanz des Dojo Platzhaltercontainers zurück.
-            Dieses Containerobjekt bietet die folgenden Methoden an:
+            Der <code>dojo()</code> Viewhelfer gibt immer eine Instanz des Dojo
+            Platzhaltercontainers zurück. Dieses Containerobjekt bietet die folgenden Methoden an:
         </para>
 
         <itemizedlist>
-            <listitem><para><code>setView(Zend_View_Interface $view)</code>: Setzt eine Viewinstanz
-                    im Container</para></listitem>
-            <listitem><para><code>enable()</code>: Die Dojo Integration explizit einschalten.</para></listitem>
-            <listitem><para><code>disable()</code>: Die Dojo Integration ausschalten.</para></listitem>
-            <listitem><para><code>isEnabled()</code>: Ermitteln ob die Dojo Integration eingeschaltet
-                    ist oder nicht.</para></listitem>
-            <listitem><para><code>requireModule($module)</code>: Ein <code>dojo.require</code>
-                    Statement konfigurieren.</para></listitem>
-            <listitem><para><code>getModules()</code>: Erkennen welche Module benötigt werden.</para></listitem>
-            <listitem><para><code>registerModulePath($module, $path)</code>:
-                    Einen Dojo Modulpfad registrieren.</para></listitem>
-            <listitem><para><code>getModulePaths()</code>: Eine Liste von registrierten Modulpfaden
-                    erhalten.</para></listitem>
-            <listitem><para><code>addLayer($path)</code>: Einen Layerpfad (eigenen Build) für die
-                    Verwendung hinzufügen.</para></listitem>
-            <listitem><para><code>getLayers()</code>: Eine Liste von allen registrierten Layerpfaden (eigene
-                    Builds) erhalten.</para></listitem>
-            <listitem><para><code>removeLayer($path)</code>: Den Layer der <code>$path</code> entspricht
-                    von der Liste der registrierten Layer (eigene Builds) entfernen.</para></listitem>
-            <listitem><para><code>setCdnBase($url)</code>: Den Basis URL für ein CDN setzen; typischerweise
+            <listitem>
+                <para>
+                    <code>setView(Zend_View_Interface $view)</code>: Setzt eine Viewinstanz
+                    im Container
+                </para>
+            </listitem>
+            <listitem>
+                <para><code>enable()</code>: Die Dojo Integration explizit einschalten.</para>
+            </listitem>
+            <listitem>
+                <para><code>disable()</code>: Die Dojo Integration ausschalten.</para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>isEnabled()</code>: Ermitteln ob die Dojo Integration eingeschaltet
+                    ist oder nicht.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>requireModule($module)</code>: Ein <code>dojo.require</code>
+                    Statement konfigurieren.
+                </para>
+            </listitem>
+            <listitem>
+                <para><code>getModules()</code>: Erkennen welche Module benötigt werden.</para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>registerModulePath($module, $path)</code>: Einen Dojo Modulpfad
+                    registrieren.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>getModulePaths()</code>: Eine Liste von registrierten Modulpfaden
+                    erhalten.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>addLayer($path)</code>: Einen Layerpfad (eigenen Build) für die
+                    Verwendung hinzufügen.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>getLayers()</code>: Eine Liste von allen registrierten Layerpfaden (eigene
+                    Builds) erhalten.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>removeLayer($path)</code>: Den Layer der <code>$path</code> entspricht
+                    von der Liste der registrierten Layer (eigene Builds) entfernen.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>setCdnBase($url)</code>: Den Basis URL für ein CDN setzen; typischerweise
                     ist das <classname>Zend_Dojo::CDN_BASE_AOL</classname> oder
-                    <classname>Zend_Dojo::CDN_BASE_GOOGLE</classname>, aber es wird der URL String vor der Versionsnummer
-                    benötigt.</para></listitem>
-            <listitem><para><code>getCdnBase()</code>: Den Basis CDN URL empfangen.</para></listitem>
-            <listitem><para><code>setCdnVersion($version = null)</code>: Setzen selche Version von Dojo vom
-                    CDN verwendet wird.</para></listitem>
-            <listitem><para><code>getCdnVersion()</code>: Die Dojo Version vom CDN erhalten die verwendet
-                    wird.</para></listitem>
-            <listitem><para><code>setCdnDojoPath($path)</code>: Setzt den relativen Pfad zur dojo.js oder
+                    <classname>Zend_Dojo::CDN_BASE_GOOGLE</classname>, aber es wird der URL String
+                    vor der Versionsnummer benötigt.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>getCdnBase()</code>: Den Basis CDN URL empfangen.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>setCdnVersion($version = null)</code>: Setzen selche Version von Dojo vom
+                    CDN verwendet wird.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>getCdnVersion()</code>: Die Dojo Version vom CDN erhalten die verwendet
+                    wird.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>setCdnDojoPath($path)</code>: Setzt den relativen Pfad zur dojo.js oder
                     dojo.xd.js Datei am CDN; typischerweise ist das entweder
-                    <classname>Zend_Dojo::CDN_DOJO_PATH_AOL</classname> oder <classname>Zend_Dojo::CDN_DOJO_PATH_GOOGLE</classname>,
-                    aber es wird der Pfadstring nach der Versionsnummer benötigt.</para></listitem>
-            <listitem><para><code>getCdnDojoPath()</code>: Das letzte Pfadsegment der CDN URL erhalten das auf
-                    die dojo.js Datei zeigt.</para></listitem>
-            <listitem><para><code>useCdn()</code>: Dem Container mitteilen das CDN verwendet werden soll;
-                    aktiviert die Integration implizit.</para></listitem>
-            <listitem><para><code>setLocalPath($path)</code>: Dem Container den Pfad zu einer lokalen Dojo
-                    Installation mitteilen (sollte ein Pfad relativ zum Server sein, und die dojo.js Datei
-                    selbst enthalten); aktiviert die Integration implizit.</para></listitem>
-            <listitem><para><code>getLocalPath()</code>: Erkennen welches lokale Pfad zu Dojo verwendet wird.</para></listitem>
-            <listitem><para><code>useLocalPath()</code>: Verwendet die Integration einen lokalen Dojopfad?</para></listitem>
-            <listitem><para><code>setDjConfig(array $config)</code>: Setzt Dojo/Dijit Konfigurationswerte
-                    (erwartet ein assoziatives Array).</para></listitem>
-            <listitem><para><code>setDjConfigOption($option, $value)</code>: Setzt einen einzelnen
-                    Dojo/Dijit Konfigurationswert.</para></listitem>
-            <listitem><para><code>getDjConfig()</code>: Retourniert alle Dojo/Dijit Konfigurationswerte.</para></listitem>
-            <listitem><para><code>getDjConfigOption($option, $default = null)</code>: Retourniert einen
-                    einzelnen Dojo/Dijit Konfigurationswert.</para></listitem>
-            <listitem><para><code>addStylesheetModule($module)</code>: Fügt ein Stylesheet hinzu basierend auf
-                    einem Modulthema.</para></listitem>
-            <listitem><para><code>getStylesheetModules()</code>: Retourniert die als Modulthema registrierten
-                    Modulthemen.</para></listitem>
-            <listitem><para><code>addStylesheet($path)</code>: Fügt einen lokalen Stylesheet zur Verwendung
-                    mit Dojo hinzu.</para></listitem>
-            <listitem><para><code>getStylesheets()</code>: Retourniert die lokalen Dojo Stylesheets.</para></listitem>
-            <listitem><para><code>addOnLoad($spec, $function = null)</code>: Fügt ein Lambda für dojo.onLoad
-                    hinzu das dieses aufruft. Wenn ein Argument übergeben wird, wird dieses entweder als
-                    Funktionsname oder als Javascriptabschluss angenommen. Wenn zwei Argumente übergeben werden,
-                    wird das erste als Name der Variablen der Objektinstanz angenommen und der zweite entweder
-                    als Methodenname in diesem Objekt oder ein Abschluß um dieses Objekt zu verwenden.</para></listitem>
-            <listitem><para><code>prependOnLoad($spec, $function = null)</code>:
-                    genau wie <code>addOnLoad()</code>, außer das vor den Anfang des onLoad Stacks
-                    angefügt wird.</para></listitem>
-            <listitem><para><code>getOnLoadActions()</code>: Gibt alle im Container registrierten
-                    dojo.onLoad Aktionen zurück. Das ist ein Array von Arrays.</para></listitem>
-            <listitem><para><code>onLoadCaptureStart($obj = null)</code>: Empfange Daten die als Lambda für
-                    dojo.onLoad() verwendet werden sollen. Wenn $obj angegeben wird, wird der bekommene JS Code
-                    als Abschluß angenommen der mit diesem Javascript Objekt verwendet werden soll.</para></listitem>
-            <listitem><para><code>onLoadCaptureEnd($obj = null)</code>: Beendet das Empfangen von Daten für
-                    die Verwendung mit dojo.onLoad().</para></listitem>
-            <listitem><para><code>javascriptCaptureStart()</code>: Empfange Javascript das im Dojo JS inkludiert
-                    werden soll (onLoad, require, und andere Anweisungen).</para></listitem>
-            <listitem><para><code>javascriptCaptureEnd()</code>: Beende das Empfangen von Javascript.</para></listitem>
-            <listitem><para><code>__toString()</code>: Castet den Container zu einem String; stellt alle HTML
-                    Stile und Skriptelemente dar.</para></listitem>
+                    <classname>Zend_Dojo::CDN_DOJO_PATH_AOL</classname> oder
+                    <classname>Zend_Dojo::CDN_DOJO_PATH_GOOGLE</classname>, aber es wird der
+                    Pfadstring nach der Versionsnummer benötigt.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>getCdnDojoPath()</code>: Das letzte Pfadsegment der CDN URL erhalten das
+                    auf die dojo.js Datei zeigt.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>useCdn()</code>: Dem Container mitteilen das CDN verwendet werden soll;
+                    aktiviert die Integration implizit.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>setLocalPath($path)</code>: Dem Container den Pfad zu einer lokalen Dojo
+                    Installation mitteilen (sollte ein Pfad relativ zum Server sein, und die dojo.js
+                    Datei selbst enthalten); aktiviert die Integration implizit.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>getLocalPath()</code>: Erkennen welches lokale Pfad zu Dojo verwendet
+                    wird.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>useLocalPath()</code>: Verwendet die Integration einen lokalen Dojopfad?
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>setDjConfig(array $config)</code>: Setzt Dojo/Dijit Konfigurationswerte
+                    (erwartet ein assoziatives Array).
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>setDjConfigOption($option, $value)</code>: Setzt einen einzelnen
+                    Dojo/Dijit Konfigurationswert.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>getDjConfig()</code>: Retourniert alle Dojo/Dijit Konfigurationswerte.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>getDjConfigOption($option, $default = null)</code>: Retourniert einen
+                    einzelnen Dojo/Dijit Konfigurationswert.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>addStylesheetModule($module)</code>: Fügt ein Stylesheet hinzu basierend
+                    auf einem Modulthema.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>getStylesheetModules()</code>: Retourniert die als Modulthema
+                    registrierten Modulthemen.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>addStylesheet($path)</code>: Fügt einen lokalen Stylesheet zur Verwendung
+                    mit Dojo hinzu.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>getStylesheets()</code>: Retourniert die lokalen Dojo Stylesheets.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>addOnLoad($spec, $function = null)</code>: Fügt ein Lambda für dojo.onLoad
+                    hinzu das dieses aufruft. Wenn ein Argument übergeben wird, wird dieses entweder
+                    als Funktionsname oder als Javascriptabschluss angenommen. Wenn zwei Argumente
+                    übergeben werden, wird das erste als Name der Variablen der Objektinstanz
+                    angenommen und der zweite entweder als Methodenname in diesem Objekt oder ein
+                    Abschluß um dieses Objekt zu verwenden.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>prependOnLoad($spec, $function = null)</code>: genau wie
+                    <code>addOnLoad()</code>, außer das vor den Anfang des onLoad Stacks angefügt
+                    wird.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>getOnLoadActions()</code>: Gibt alle im Container registrierten
+                    dojo.onLoad Aktionen zurück. Das ist ein Array von Arrays.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>onLoadCaptureStart($obj = null)</code>: Empfange Daten die als Lambda für
+                    dojo.onLoad() verwendet werden sollen. Wenn $obj angegeben wird, wird der
+                    bekommene JS Code als Abschluß angenommen der mit diesem Javascript Objekt
+                    verwendet werden soll.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>onLoadCaptureEnd($obj = null)</code>: Beendet das Empfangen von Daten für
+                    die Verwendung mit dojo.onLoad().
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>javascriptCaptureStart()</code>: Empfange Javascript das im Dojo JS
+                    inkludiert werden soll (onLoad, require, und andere Anweisungen).
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>javascriptCaptureEnd()</code>: Beende das Empfangen von Javascript.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <code>__toString()</code>: Castet den Container zu einem String; stellt alle
+                    HTML Stile und Skriptelemente dar.
+                </para>
+            </listitem>
         </itemizedlist>
     </sect3>
 </sect2>

+ 12 - 4
documentation/manual/de/module_specs/Zend_Dojo.xml

@@ -12,10 +12,18 @@
     </para>
 
     <itemizedlist>
-        <listitem><para>JSON-RPC Unterstützung</para></listitem>
-        <listitem><para>dojo.data Kompatibilität</para></listitem>
-        <listitem><para>View Helfer um beim Setup der Dojo Umgebung zu helfen</para></listitem>
-        <listitem><para>Dijit-spezifische <classname>Zend_View</classname> Helfer</para></listitem>
+        <listitem>
+            <para>JSON-RPC Unterstützung</para>
+        </listitem>
+        <listitem>
+            <para>dojo.data Kompatibilität</para>
+        </listitem>
+        <listitem>
+            <para>View Helfer um beim Setup der Dojo Umgebung zu helfen</para>
+        </listitem>
+        <listitem>
+            <para>Dijit-spezifische <classname>Zend_View</classname> Helfer</para>
+        </listitem>
         <listitem>
             <para>Dijit-spezifische <classname>Zend_Form</classname> Elemente und Dekoratore</para>
         </listitem>

+ 85 - 76
documentation/manual/de/module_specs/Zend_Dom-Query.xml

@@ -5,19 +5,19 @@
     <title>Zend_Dom_Query</title>
 
     <para>
-        <classname>Zend_Dom_Query</classname> bietet einen Mechanismus für die Abfrage von XML und (X)HTML Dokumenten
-        indem entweder XPath oder CSS Selektoren verwendet werden. Sie wurde entwickelt um bei funktionalem
-        Testen von MVC Anwendungen zu helfen, könnte aber auch für schnelle Entwicklung von Screen Scraper
-        verwendet werden.
+        <classname>Zend_Dom_Query</classname> bietet einen Mechanismus für die Abfrage von XML und
+        (X)HTML Dokumenten indem entweder XPath oder CSS Selektoren verwendet werden. Sie wurde
+        entwickelt um bei funktionalem Testen von MVC Anwendungen zu helfen, könnte aber auch für
+        schnelle Entwicklung von Screen Scraper verwendet werden.
     </para>
 
     <para>
-        Die CSS Selektor Schreibweise wird als einfachere und für Web Entwickler bekannterer Weg angeboten um
-        bei der Anfrage von Dokumenten mit XML Strukturen zu helfen. Diese Schreibweise sollte jedem der
-        Cascading Style Sheets entwickelt hat bekannt sein, oder jedem der Javascript Toolkits verwendet die
-        Funktionalität für das Auswählen von Knoten bei der Anpassung von SCC Selektoren anbieten
-        (<ulink url="http://prototypejs.org/api/utility/dollar-dollar">Prototype's
-            $$()</ulink> und
+        Die CSS Selektor Schreibweise wird als einfachere und für Web Entwickler bekannterer Weg
+        angeboten um bei der Anfrage von Dokumenten mit XML Strukturen zu helfen. Diese Schreibweise
+        sollte jedem der Cascading Style Sheets entwickelt hat bekannt sein, oder jedem der
+        Javascript Toolkits verwendet die Funktionalität für das Auswählen von Knoten bei der
+        Anpassung von SCC Selektoren anbieten (<ulink
+            url="http://prototypejs.org/api/utility/dollar-dollar">Prototype's $$()</ulink> und
         <ulink url="http://api.dojotoolkit.org/jsdoc/dojo/HEAD/dojo.query">Dojo's
             dojo.query</ulink> sind beides Inspirationen für diese Komponente).
     </para>
@@ -26,29 +26,31 @@
         <title>Theorie der Anwendung</title>
 
         <para>
-            Um <classname>Zend_Dom_Query</classname> zu verwenden muß ein <classname>Zend_Dom_Query</classname> Objekt instanziert
-            werden, optional kann ein zu parsendes Dokument (ein String) übergeben werden. Sobald man ein
-            Dokument hat, kann die <code>query()</code> oder die <code>queryXpath()</code> Methode verwendet
-            werden; jede Methode gibt ein <classname>Zend_Dom_Query_Result</classname> Objekt mit allen passenden
+            Um <classname>Zend_Dom_Query</classname> zu verwenden muß ein
+            <classname>Zend_Dom_Query</classname> Objekt instanziert werden, optional kann ein zu
+            parsendes Dokument (ein String) übergeben werden. Sobald man ein Dokument hat, kann die
+            <code>query()</code> oder die <code>queryXpath()</code> Methode verwendet werden; jede
+            Methode gibt ein <classname>Zend_Dom_Query_Result</classname> Objekt mit allen passenden
             Knoten zurück.
         </para>
 
         <para>
-            Der Grundsätzliche Unterschied zwischen <classname>Zend_Dom_Query</classname> und der Verwendung von
-            DOMDocument + DOMXPath ist die Möglichkeit CSS Selektoren auszuwählen. Alle folgenden Elemente
-            können in jeder Kombination verwendet werden:
+            Der Grundsätzliche Unterschied zwischen <classname>Zend_Dom_Query</classname> und der
+            Verwendung von DOMDocument + DOMXPath ist die Möglichkeit CSS Selektoren auszuwählen.
+            Alle folgenden Elemente können in jeder Kombination verwendet werden:
         </para>
 
         <itemizedlist>
             <listitem><para>
-                <emphasis>Element Typen</emphasis>: Bietet einen Elementtypen an der zu den folgenden passt:
-                'div', 'a', 'span', 'h2', usw.
+                <emphasis>Element Typen</emphasis>: Bietet einen Elementtypen an der zu den
+                folgenden passt: 'div', 'a', 'span', 'h2', usw.
             </para></listitem>
 
             <listitem><para>
                 <emphasis>Stil Attribute</emphasis>: CSS Stil Attribute passen zu folgenden:
-                '.error', 'div.error', 'label.required', usw. Wenn ein Element mehr als einen Stil definiert
-                wird er entsprechen solange der benannte Stil irgendwo in der Stil Definition vorhanden ist.
+                '.error', 'div.error', 'label.required', usw. Wenn ein Element mehr als einen Stil
+                definiert wird er entsprechen solange der benannte Stil irgendwo in der Stil
+                Definition vorhanden ist.
             </para></listitem>
 
             <listitem><para>
@@ -58,47 +60,49 @@
 
             <listitem>
                 <para>
-                    <emphasis>Andere Attribute</emphasis>: Andere Attribute von Elementen die passen. Drei
-                    verschiedene Typen die passen werden angeboten:
+                    <emphasis>Andere Attribute</emphasis>: Andere Attribute von Elementen die
+                    passen. Drei verschiedene Typen die passen werden angeboten:
                 </para>
 
                 <itemizedlist>
                     <listitem><para>
-                        <emphasis>Exakte Entsprechung</emphasis>: Das Attribute passt exakt zum String:
-                        'div[bar="baz"]' würde zu einem Div Element mit einem "bar" Attribut passen das
-                        exakt den Wert "baz" enthält.
+                        <emphasis>Exakte Entsprechung</emphasis>: Das Attribute passt exakt zum
+                        String: 'div[bar="baz"]' würde zu einem Div Element mit einem "bar" Attribut
+                        passen das exakt den Wert "baz" enthält.
                     </para></listitem>
 
                     <listitem><para>
-                        <emphasis>Wort Entsprechung</emphasis>: Das Attribut enthält ein Wort das dem String
-                        entspricht: 'div[bar~="baz"]' würde einem Div Element mit einem "bat" Attribut
-                        entsprechen  das das Wort "baz" enthält. '&lt;div bar="foo baz"&gt;' würde passen
-                        aber '&lt;div bar="foo bazbat"&gt;' würde nicht entsprechen.
+                        <emphasis>Wort Entsprechung</emphasis>: Das Attribut enthält ein Wort das
+                        dem String entspricht: 'div[bar~="baz"]' würde einem Div Element mit einem
+                        "bat" Attribut entsprechen  das das Wort "baz" enthält. '&lt;div bar="foo
+                        baz"&gt;' würde passen aber '&lt;div bar="foo bazbat"&gt;' würde nicht
+                        entsprechen.
                     </para></listitem>
 
                     <listitem><para>
                         <emphasis>Substring Entsprechung</emphasis>: Das Atribut enthält den String:
-                        'div[bar*="baz"]' würde einem Div Element mit einem "bar" Attribut entsprechen das den
-                        String "baz" irgendwo in Ihm enthält.
+                        'div[bar*="baz"]' würde einem Div Element mit einem "bar" Attribut
+                        entsprechen das den String "baz" irgendwo in Ihm enthält.
                     </para></listitem>
                 </itemizedlist>
             </listitem>
 
             <listitem><para>
                 <emphasis>Direkt abhängig</emphasis>: Verwende '&gt;' zwischen Selektoren um direkte
-                Abhängigkeit auszudrücken. 'div > span' würde nur 'span' Elemente auswählen die direkt
-                Abhängig von 'div' sind. Kann auch mit jedem Selektor darüber verwendet werden.
+                Abhängigkeit auszudrücken. 'div > span' würde nur 'span' Elemente auswählen die
+                direkt Abhängig von 'div' sind. Kann auch mit jedem Selektor darüber verwendet
+                werden.
             </para></listitem>
 
             <listitem>
                 <para>
                     <emphasis>Abhängigkeit</emphasis>: Mehrere Selektoren zusammenschreiben um eine
                     Hirarchie zwischen Ihnen auszudrücken nach welcher gesucht werden soll.
-                    'div .foo span #one' würde ein Element mit der Id 'one' auswählen das Abhängig ist
-                    in einer beliebigen Tiefe unter einem 'span' Element, welches seinerseits in einer
-                    beliebigen Tiefe darunter abhängig ist von einer Klase von 'foo', welche in einer
-                    beliebigen Tiefe abhängig ist von einem 'div' Element. Der Link zum Wort 'One' im
-                    Beispiel anbei würde passen:
+                    'div .foo span #one' würde ein Element mit der Id 'one' auswählen das Abhängig
+                    ist in einer beliebigen Tiefe unter einem 'span' Element, welches seinerseits in
+                    einer beliebigen Tiefe darunter abhängig ist von einer Klase von 'foo', welche
+                    in einer beliebigen Tiefe abhängig ist von einem 'div' Element. Der Link zum
+                    Wort 'One' im Beispiel anbei würde passen:
                 </para>
 
                 <programlisting role="html"><![CDATA[
@@ -124,11 +128,12 @@
         </itemizedlist>
 
         <para>
-            Wenn man eine Abfrage ausgeführt hat, kann man mit dem Ergebnis Objekt arbeiten um Informationen
-            über die Knoten zu bekommen, sowie um Sie und/oder Ihren Inhalt direkt für die Extrahierung und
-            Manipulation herauszuholen. <classname>Zend_Dom_Query_Result</classname> implementiert <code>Countable</code>
-            und <code>Iterator</code> und speichert die Ergebnisse intern als DOMNodes/DOMElements. Als Beispiel
-            nehmen wir erstmal den folgenden Aufruf an der das obige HTML auswählt:
+            Wenn man eine Abfrage ausgeführt hat, kann man mit dem Ergebnis Objekt arbeiten um
+            Informationen über die Knoten zu bekommen, sowie um Sie und/oder Ihren Inhalt direkt für
+            die Extrahierung und Manipulation herauszuholen.
+            <classname>Zend_Dom_Query_Result</classname> implementiert <code>Countable</code> und
+            <code>Iterator</code> und speichert die Ergebnisse intern als DOMNodes/DOMElements. Als
+            Beispiel nehmen wir erstmal den folgenden Aufruf an der das obige HTML auswählt:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -142,9 +147,10 @@ foreach ($results as $result) {
 ]]></programlisting>
 
         <para>
-            <classname>Zend_Dom_Query</classname> erlaubt auch strenge XPath Abfragen durch Verwendung der
-            <code>queryXpath()</code> Methode; man kann eine gültige XPath Abfrage an diese Methode übergeben,
-            und Sie wird ein <classname>Zend_Dom_Query_Result</classname> Objekt zurückgeben.
+            <classname>Zend_Dom_Query</classname> erlaubt auch strenge XPath Abfragen durch
+            Verwendung der <code>queryXpath()</code> Methode; man kann eine gültige XPath Abfrage an
+            diese Methode übergeben, und Sie wird ein <classname>Zend_Dom_Query_Result</classname>
+            Objekt zurückgeben.
         </para>
     </sect2>
 
@@ -152,7 +158,8 @@ foreach ($results as $result) {
         <title>Vorhandene Methoden</title>
 
         <para>
-            Die <classname>Zend_Dom_Query</classname> Familie an Klassen enthält die folgenden Methoden.
+            Die <classname>Zend_Dom_Query</classname> Familie an Klassen enthält die folgenden
+            Methoden.
         </para>
 
         <sect3 id="zend.dom.query.methods.zenddomquery">
@@ -164,45 +171,45 @@ foreach ($results as $result) {
 
             <itemizedlist>
                 <listitem><para>
-                    <code>setDocumentXml($document)</code>: Spezifiziert einen XML String der Abgefragt
-                    werden soll.
+                    <code>setDocumentXml($document)</code>: Spezifiziert einen XML String der
+                    Abgefragt werden soll.
                 </para></listitem>
 
                 <listitem><para>
-                    <code>setDocumentXhtml($document)</code>: Spezifiziert einen XHTML String der Abgefragt
-                    werden soll.
+                    <code>setDocumentXhtml($document)</code>: Spezifiziert einen XHTML String der
+                    Abgefragt werden soll.
                 </para></listitem>
 
                 <listitem><para>
-                    <code>setDocumentHtml($document)</code>: Spezifiziert einen HTML String der Abgefragt
-                    werden soll.
+                    <code>setDocumentHtml($document)</code>: Spezifiziert einen HTML String der
+                    Abgefragt werden soll.
                 </para></listitem>
 
                 <listitem><para>
-                    <code>setDocument($document)</code>: Spezifiziert einen String der abgefragt werden soll;
-                    <classname>Zend_Dom_Query</classname> wird anschließend versuchen den Typ des Dokument automatisch
-                    herauszufinden.
+                    <code>setDocument($document)</code>: Spezifiziert einen String der abgefragt
+                    werden soll; <classname>Zend_Dom_Query</classname> wird anschließend versuchen
+                    den Typ des Dokument automatisch herauszufinden.
                 </para></listitem>
 
                 <listitem><para>
-                    <code>getDocument()</code>: Empfängt den String des Original Dokuments das an das Objekt
-                    übergeben wurde.
+                    <code>getDocument()</code>: Empfängt den String des Original Dokuments das an
+                    das Objekt übergeben wurde.
                 </para></listitem>
 
                 <listitem><para>
-                    <code>getDocumentType()</code>: Empfängt den Typ des Dokuments das dem Objekt übergeben
-                    wurde; das wird eine der Klassenkonstanten <code>DOC_XML</code>, <code>DOC_XHTML</code>,
-                    oder <code>DOC_HTML</code> sein.
+                    <code>getDocumentType()</code>: Empfängt den Typ des Dokuments das dem Objekt
+                    übergeben wurde; das wird eine der Klassenkonstanten <code>DOC_XML</code>,
+                    <code>DOC_XHTML</code>, oder <code>DOC_HTML</code> sein.
                 </para></listitem>
 
                 <listitem><para>
-                    <code>query($query)</code>: Abfrage des Dokuments bei Verwendung der CSS Selektor
-                    Schreibweise.
+                    <code>query($query)</code>: Abfrage des Dokuments bei Verwendung der CSS
+                    Selektor Schreibweise.
                 </para></listitem>
 
                 <listitem><para>
-                    <code>queryXpath($xPathQuery)</code>: Abfrage des Dokuments bei Verwendung der XPath
-                    Schreibweise.
+                    <code>queryXpath($xPathQuery)</code>: Abfrage des Dokuments bei Verwendung der
+                    XPath Schreibweise.
                 </para></listitem>
             </itemizedlist>
         </sect3>
@@ -211,26 +218,28 @@ foreach ($results as $result) {
             <title>Zend_Dom_Query_Result</title>
 
             <para>
-                Wie vorher erwähnt, implementiert <classname>Zend_Dom_Query_Result</classname> beide, <code>Iterator</code>
-                und <code>Countable</code>, und kann deswegen in einer <code>foreach</code> Schleife
-                verwendet werden wie auch mit der <code>count()</code> Funktion. Zusätzlich bietet es die
-                folgenden Methoden an:
+                Wie vorher erwähnt, implementiert <classname>Zend_Dom_Query_Result</classname>
+                beide, <code>Iterator</code> und <code>Countable</code>, und kann deswegen in einer
+                <code>foreach</code> Schleife verwendet werden wie auch mit der <code>count()</code>
+                Funktion. Zusätzlich bietet es die folgenden Methoden an:
             </para>
 
             <itemizedlist>
                 <listitem><para>
-                    <code>getCssQuery()</code>: Gibt die CSS Selektor Abfrage zurück die für die Erstellung
-                    des Ergebnisses verwendet wurde (wenn vorhanden).
+                    <code>getCssQuery()</code>: Gibt die CSS Selektor Abfrage zurück die für die
+                    Erstellung des Ergebnisses verwendet wurde (wenn vorhanden).
                 </para></listitem>
 
                 <listitem><para>
-                    <code>getXpathQuery()</code>: Gibt die XPath Abfrage zurück die für die Erstellung des
-                    Ergebnisses verwendet wurde. Intern konvertiert <classname>Zend_Dom_Query</classname> CSS
-                    Selektor Abfragen zu XPath, so das dieser Wert immer angeboten wird.
+                    <code>getXpathQuery()</code>: Gibt die XPath Abfrage zurück die für die
+                    Erstellung des Ergebnisses verwendet wurde. Intern konvertiert
+                    <classname>Zend_Dom_Query</classname> CSS Selektor Abfragen zu XPath, so das
+                    dieser Wert immer angeboten wird.
                 </para></listitem>
 
                 <listitem><para>
-                    <code>getDocument()</code>: Empfängt das DOMDocument auf das die Abfrage ausgeführt wurde.
+                    <code>getDocument()</code>: Empfängt das DOMDocument auf das die Abfrage
+                    ausgeführt wurde.
                 </para></listitem>
             </itemizedlist>
         </sect3>

+ 76 - 70
documentation/manual/de/module_specs/Zend_Form-QuickStart.xml

@@ -13,8 +13,8 @@
         <title>Ein Form Objekt erstellen</title>
 
         <para>
-            Die Erstellung eines Formular Objektes ist sehr einfach: nur <classname>Zend_Form</classname>
-            instanzieren:
+            Die Erstellung eines Formular Objektes ist sehr einfach: nur
+            <classname>Zend_Form</classname> instanzieren:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -22,15 +22,15 @@ $form = new Zend_Form;
 ]]></programlisting>
 
         <para>
-            Für fortgeschrittene Anwendungsfälle, kann man eine <classname>Zend_Form</classname> Unterklasse
-            erstellen, aber für einfache Formulare, kann ein Formular programmtechnisch mit einem
-            <classname>Zend_Form</classname> erstellt werden.
+            Für fortgeschrittene Anwendungsfälle, kann man eine <classname>Zend_Form</classname>
+            Unterklasse erstellen, aber für einfache Formulare, kann ein Formular programmtechnisch
+            mit einem <classname>Zend_Form</classname> erstellt werden.
         </para>
 
         <para>
-            Wenn man bei einem Formular Aktion und Methode spezifizieren will (immer eine gute Idee),
-            kann das mit den <code>setAction()</code> und <code>setMethod()</code> Methoden gemacht
-            werden:
+            Wenn man bei einem Formular Aktion und Methode spezifizieren will (immer eine gute
+            Idee), kann das mit den <code>setAction()</code> und <code>setMethod()</code> Methoden
+            gemacht werden:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -39,14 +39,15 @@ $form->setAction('/resource/process')
 ]]></programlisting>
 
         <para>
-            Der obige Code setzt die Formular Aktion zu der partiellen URL "/resource/process" und die
-            Formular Methode zu HTTP POST. Das wird während der endgültigen Darstellung berücksichtigt.
+            Der obige Code setzt die Formular Aktion zu der partiellen URL "/resource/process" und
+            die Formular Methode zu HTTP POST. Das wird während der endgültigen Darstellung
+            berücksichtigt.
         </para>
 
         <para>
             Man kann zusätzliche HTML Attribute für das <code>&lt;form&gt;</code> Tag setzen, indem
-            die <code>setAttrib()</code> oder <code>setAttribs()</code> Methoden verwendet werden. Zum
-            Beispiel wenn man die ID setzen will, setzt man das "id" Attribut:
+            die <code>setAttrib()</code> oder <code>setAttribs()</code> Methoden verwendet werden.
+            Zum Beispiel wenn man die ID setzen will, setzt man das "id" Attribut:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -58,9 +59,9 @@ $form->setAttrib('id', 'login');
         <title>Elemente einer Form hinzufügen</title>
 
         <para>
-            Ein Formular ist nichts ohne seine Elemente. <classname>Zend_Form</classname> kommt mit einigen
-            Standardelementen die XHTML über <classname>Zend_View</classname> Helfer darstellen. Das sind
-            die folgenden:
+            Ein Formular ist nichts ohne seine Elemente. <classname>Zend_Form</classname> kommt mit
+            einigen Standardelementen die XHTML über <classname>Zend_View</classname> Helfer
+            darstellen. Das sind die folgenden:
         </para>
 
         <itemizedlist>
@@ -112,8 +113,8 @@ $form->setAttrib('id', 'login');
         <para>
             Es gibt zwei Optionen für das Hinzufügen von Elementen zu einem Formular: Man kann ein
             konkretes Element instanzieren und dieses dem Objekt übergeben, oder man kann den Typ
-            des Elements übergeben und <classname>Zend_Form</classname> ein Objekt des richtigen Typs für
-            einen instanzieren lassen.
+            des Elements übergeben und <classname>Zend_Form</classname> ein Objekt des richtigen
+            Typs für einen instanzieren lassen.
         </para>
 
         <para>
@@ -132,15 +133,15 @@ $form->addElement('text', 'username');
             Standardmäßig haben diese Elemente keine Prüfer oder Filter. Das bedeutet, dass man
             eigene Elemente mit minimalen Prüfern und potentiellen Filtern konfigurieren muss. Man
             kann das entweder (a) vor der Übergabe des Elements an das Formular machen, (b) über
-            Konfigurationsoptionen die bei der Erstellung des Elements über <classname>Zend_Form</classname>
-            angegeben werden, oder (c), durch beziehen des Elements vom Formular Objekt und dessen
-            Konfiguration im nachhinein.
+            Konfigurationsoptionen die bei der Erstellung des Elements über
+            <classname>Zend_Form</classname> angegeben werden, oder (c), durch beziehen des Elements
+            vom Formular Objekt und dessen Konfiguration im nachhinein.
         </para>
 
         <para>
             Betrachten wir zuerst die Erstellung eines Prüfers für eine konkrete Instanz eines
-            Elements. Es können entweder <classname>Zend_Validate_*</classname> Instanzen übergeben werden,
-            oder der Name des Prüfers, der verwendet werden soll:
+            Elements. Es können entweder <classname>Zend_Validate_*</classname> Instanzen übergeben
+            werden, oder der Name des Prüfers, der verwendet werden soll:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -216,10 +217,10 @@ $username->addValidators(array('alnum',
         <para>
             So einfach das ist, ist das für jedes einzelne Elemet in einer Form sehr aufwendig.
             Versuchen wir es also mit Option (b) von oben. Wenn wir ein neues Element erstellen
-            wird <classname>Zend_Form::addElement()</classname> als Factory verwendet, und wir können
-            optional Konfigurationsoptionen übergeben. Diese können Prüfer und Filter enthalten
-            die angepasst werden können. Um alles von oben implizit durchzuführen, versuchen
-            wir folgendes:
+            wird <classname>Zend_Form::addElement()</classname> als Factory verwendet, und wir
+            können optional Konfigurationsoptionen übergeben. Diese können Prüfer und Filter
+            enthalten die angepasst werden können. Um alles von oben implizit durchzuführen,
+            versuchen wir folgendes:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -235,9 +236,9 @@ $form->addElement('text', 'username', array(
 
         <note><para>
             Wenn man sieht, dass man Elemente die die gleichen Optionen in vielen Plätzen verwenden,
-            konfiguriert, kann es gewünscht sein, eine eigene <classname>Zend_Form_Element</classname>
-            Unterklasse zu erstellen und diese stattdessen anzupassen; das spart viel Tipparbeit im
-            weiteren Verlauf.
+            konfiguriert, kann es gewünscht sein, eine eigene
+            <classname>Zend_Form_Element</classname> Unterklasse zu erstellen und diese stattdessen
+            anzupassen; das spart viel Tipparbeit im weiteren Verlauf.
         </para></note>
     </sect2>
 
@@ -246,9 +247,9 @@ $form->addElement('text', 'username', array(
 
         <para>
             Die Darstellung eines Formulars ist einfach. Die meisten Elemente verwenden einen
-            <classname>Zend_View</classname> Helfer, um sich selbst darzustellen und benötigen deshalb ein
-            View Objekt, um dargestellt zu werden. Dafür gibt es zwei unterschiedliche Varianten:
-            Die <code>render()</code> Methode des Formulare verwenden, oder ein einfaches
+            <classname>Zend_View</classname> Helfer, um sich selbst darzustellen und benötigen
+            deshalb ein View Objekt, um dargestellt zu werden. Dafür gibt es zwei unterschiedliche
+            Varianten: Die <code>render()</code> Methode des Formulare verwenden, oder ein einfaches
             <code>echo</code>.
         </para>
 
@@ -261,10 +262,11 @@ echo $form;
 ]]></programlisting>
 
         <para>
-            Standardmäßig versuchen <classname>Zend_Form</classname> und <classname>Zend_Form_Element</classname> ein
-            im <code>ViewRenderer</code> initialisiertes View Objekt zu verwenden, was bedeutet,
-            dass die View nicht manuell gesetzt werden muss, wenn das MVC des Zend Frameworks
-            verwendet wird. Die Darstellung eines Formulars in einem View Skript ist sehr einfach:
+            Standardmäßig versuchen <classname>Zend_Form</classname> und
+            <classname>Zend_Form_Element</classname> ein im <code>ViewRenderer</code>
+            initialisiertes View Objekt zu verwenden, was bedeutet, dass die View nicht manuell
+            gesetzt werden muss, wenn das MVC des Zend Frameworks verwendet wird. Die Darstellung
+            eines Formulars in einem View Skript ist sehr einfach:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -272,12 +274,12 @@ echo $form;
 ]]></programlisting>
 
         <para>
-            Unter der Hand verwendet <classname>Zend_Form</classname> "Dekoratoren" um die Darstellung
-            durchzuführen. Diese Dekoratoren können Inhalte ersetzen, anfügen oder voranstellen,
-            und haben eine volle Introspektive des Elements das Ihnen übergeben wurde. Als Ergebnis
-            können mehrere Dekoratoren kombiniert werden, um eigene Effekte zu ermöglichen.
-            Standardmüßig kombiniert <classname>Zend_Form_Element</classname> View Dekoratoren um seine
-            Ausgaben zu erstellen; das Setup sieht ähnlich diesem aus:
+            Unter der Hand verwendet <classname>Zend_Form</classname> "Dekoratoren" um die
+            Darstellung durchzuführen. Diese Dekoratoren können Inhalte ersetzen, anfügen oder
+            voranstellen, und haben eine volle Introspektive des Elements das Ihnen übergeben wurde.
+            Als Ergebnis können mehrere Dekoratoren kombiniert werden, um eigene Effekte zu
+            ermöglichen. Standardmüßig kombiniert <classname>Zend_Form_Element</classname> View
+            Dekoratoren um seine Ausgaben zu erstellen; das Setup sieht ähnlich diesem aus:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -317,14 +319,15 @@ $element->addDecorators(array(
         <para>
             Die Dekoratoren die von einem Element verwendet werden, können geändert werden, um eine
             andere Ausgabe zu erzeugen; seihe dazu das
-            <link linkend="zend.form.decorators">Kapitel über Dekoratoren</link> für mehr Informationen.
+            <link linkend="zend.form.decorators">Kapitel über Dekoratoren</link> für mehr
+            Informationen.
         </para>
 
         <para>
             Das Formular selbst, geht alle Elemente durch, und fügt diese in eine HTML
-            <code>&lt;form&gt;</code> ein. Die Aktion und Methode, die bei der Erstellung des Formulars
-            angegeben wurden, werden dem <code>&lt;form&gt;</code> Tag angegeben, wie wenn sie
-            Attribute wären, die über <code>setAttribs()</code> und ähnliche gesetzt werden.
+            <code>&lt;form&gt;</code> ein. Die Aktion und Methode, die bei der Erstellung des
+            Formulars angegeben wurden, werden dem <code>&lt;form&gt;</code> Tag angegeben, wie wenn
+            sie Attribute wären, die über <code>setAttribs()</code> und ähnliche gesetzt werden.
         </para>
 
         <para>
@@ -372,9 +375,9 @@ if ($form->isValid($_POST)) {
 
         <para>
             Mit AJAX Anfragen kann man manchmal davon abweichen einzelne Elemente oder Gruppen von
-            Elementen zu prüfen. <code>isValidPartial()</code> prüft einen Teil des Formulars. Anders,
-            als <code>isValid()</code>, werden, wenn ein spezieller Schlüssel nicht vorhanden ist,
-            Prüfungen für dieses spezielle Element nicht durchgeführt:
+            Elementen zu prüfen. <code>isValidPartial()</code> prüft einen Teil des Formulars.
+            Anders, als <code>isValid()</code>, werden, wenn ein spezieller Schlüssel nicht
+            vorhanden ist, Prüfungen für dieses spezielle Element nicht durchgeführt:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -388,7 +391,8 @@ if ($form->isValidPartial($_POST)) {
         <para>
             Eine zusätzliche Methode, <code>processAjax()</code>, kann auch dafür verwendet werden,
             um Teilformen zu prüfen. Anders als <code>isValidPartial()</code>, gibt sie eine
-            JSON-formatierten Zeichenkette zurück, die bei einem Fehler, die Fehlermeldungen enthält.
+            JSON-formatierten Zeichenkette zurück, die bei einem Fehler, die Fehlermeldungen
+            enthält.
         </para>
 
         <para>
@@ -430,12 +434,12 @@ if (!$form->isValid($_POST)) {
 ]]></programlisting>
 
         <para>
-            Wenn die Fehler inspiziert werden sollen, gibt es zwei Methoden. <code>getErrors()</code>
-            gibt ein assoziatives Array von Elementnamen/Codes zurück (wobei Codes ein Array von
-            Fehlercodes ist). <code>getMessages()</code> gibt ein assoziatives Array von
-            Elementnamen/Nachrichten zurück (wobei Nachrichten ein assoziatives Array von
-            Fehlercodes/Fehlernachrichten Paaren ist). Wenn ein gegebenes Element keinen Fehler hat,
-            wird es dem Array nicht angefügt.
+            Wenn die Fehler inspiziert werden sollen, gibt es zwei Methoden.
+            <code>getErrors()</code> gibt ein assoziatives Array von Elementnamen/Codes zurück
+            (wobei Codes ein Array von Fehlercodes ist). <code>getMessages()</code> gibt ein
+            assoziatives Array von Elementnamen/Nachrichten zurück (wobei Nachrichten ein
+            assoziatives Array von Fehlercodes/Fehlernachrichten Paaren ist). Wenn ein gegebenes
+            Element keinen Fehler hat, wird es dem Array nicht angefügt.
         </para>
     </sect2>
 
@@ -455,14 +459,14 @@ if (!$form->isValid($_POST)) {
         <para>
             Für unsere Zwecke nehmen wir an, dass ein gültiger Benutzername nur alphanumerische
             Zeichen enthalten soll und mit einem Buchstaben beginnt, eine Mindestlänge von 6 und
-            eine Maximallänge von 20 Zeichen hat; er wird zu Kleinschreibung normalisiert. Passwörter
-            müssen mindestens 6 Zeichen lang sein. Der submit Wert wird einfach ignoriert wenn
-            wir fertig sind, er kann also ungeprüft bleiben.
+            eine Maximallänge von 20 Zeichen hat; er wird zu Kleinschreibung normalisiert.
+            Passwörter müssen mindestens 6 Zeichen lang sein. Der submit Wert wird einfach ignoriert
+            wenn wir fertig sind, er kann also ungeprüft bleiben.
         </para>
 
         <para>
-            Wir verwenden die Stärke von <classname>Zend_Form</classname>'s Konfigurationsoptionen um die
-            Form zu erstellen:
+            Wir verwenden die Stärke von <classname>Zend_Form</classname>'s Konfigurationsoptionen
+            um die Form zu erstellen:
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -548,13 +552,15 @@ class UserController extends Zend_Controller_Action
         <title>Ein Zend_Config Objekt verwenden</title>
 
         <para>
-            Alle <classname>Zend_Form</classname>'s sind konfigurierbar, indem <classname>Zend_Config</classname>
-            verwendet wird; es kann entweder ein <classname>Zend_Config</classname> Objekt an den Kontruktor
-            oder über <code>setConfig()</code> übergeben werden. Sehen wir uns an, wie das obige
-            Formular erstellt werden kann, wenn wir eine INI Datei verwenden. Zuerst folgen wir den
-            Notwendigkeiten und platzieren die Konfigurationen in Sektionen, die den Ort des Releases
-            reflektieren, und fokusieren auf die 'development' Sektion. Als nächstes wird eine Sektion
-            für den gegebenen Controller ('user') definiert und ein Schlüssel für das Formular ('login'):
+            Alle <classname>Zend_Form</classname>'s sind konfigurierbar, indem
+            <classname>Zend_Config</classname> verwendet wird; es kann entweder ein
+            <classname>Zend_Config</classname> Objekt an den Kontruktor oder über
+            <code>setConfig()</code> übergeben werden. Sehen wir uns an, wie das obige Formular
+            erstellt werden kann, wenn wir eine INI Datei verwenden. Zuerst folgen wir den
+            Notwendigkeiten und platzieren die Konfigurationen in Sektionen, die den Ort des
+            Releases reflektieren, und fokusieren auf die 'development' Sektion. Als nächstes wird
+            eine Sektion für den gegebenen Controller ('user') definiert und ein Schlüssel für das
+            Formular ('login'):
         </para>
 
         <programlisting role="ini"><![CDATA[
@@ -603,8 +609,8 @@ $form   = new Zend_Form($config->user->login);
 
         <para>
             Hoffentlich ist, mit dieser kleinen Anleitung der Weg klar, um die Leistung und
-            Flexibilität von <classname>Zend_Form</classname> einzusetzen. Für detailiertere Informationen
-            lesen Sie weiter!
+            Flexibilität von <classname>Zend_Form</classname> einzusetzen. Für detailiertere
+            Informationen lesen Sie weiter!
         </para>
     </sect2>
 </sect1>

+ 48 - 38
documentation/manual/de/module_specs/Zend_Gdata_AuthSub.xml

@@ -5,34 +5,38 @@
     <title>Authentifizierung mit AuthSub</title>
 
     <para>
-        Der AuthSub Mechanismum erlaubt es Web Anwendungen zu schreiben die einen authentifizierten Zugang zu
-        Google Data Services benötigen, ohne das Code geschrieben werden muß der Benutzerzugangsdaten behandelt.
+        Der AuthSub Mechanismum erlaubt es Web Anwendungen zu schreiben die einen authentifizierten
+        Zugang zu Google Data Services benötigen, ohne das Code geschrieben werden muß der
+        Benutzerzugangsdaten behandelt.
     </para>
 
     <para>
-        Siehe <ulink url="http://code.google.com/apis/accounts/AuthForWebApps.html">http://code.google.com/apis/accounts/AuthForWebApps.html</ulink>
+        Siehe <ulink
+            url="http://code.google.com/apis/accounts/AuthForWebApps.html">http://code.google.com/apis/accounts/AuthForWebApps.html</ulink>
         für weitere Informationen über Google Data AuthSub Authentifizierung.
     </para>
 
     <para>
-        Die Google Dokumentation sagt das der ClientLogin Mechanismum ausreichend für "installierte Anwendungen" ist,
-        und der AuthSub Mechanismum für "Web Anwendungen". Der Unterschied ist das AuthSub Interaktion vom Benutzer
-        benötigt, und ein Browser Interface das auf Umleitungsanfragen reagieren kann. Die ClientLogin Lösung
-        verwendet PHP Code um die Benutzerzugangsdaten anzubieten; der Benutzer wird nicht benötigt um seine
-        Zugangsdaten einzugeben.
+        Die Google Dokumentation sagt das der ClientLogin Mechanismum ausreichend für "installierte
+        Anwendungen" ist, und der AuthSub Mechanismum für "Web Anwendungen". Der Unterschied ist das
+        AuthSub Interaktion vom Benutzer benötigt, und ein Browser Interface das auf
+        Umleitungsanfragen reagieren kann. Die ClientLogin Lösung verwendet PHP Code um die
+        Benutzerzugangsdaten anzubieten; der Benutzer wird nicht benötigt um seine Zugangsdaten
+        einzugeben.
     </para>
 
     <para>
-        Die Zugangsdaten die über den AuthSub Mechanismum bereitgestellt werden, werden vom Benutzer über
-        die Web Anwendung eingegeben. Deswegen müssen es Zugangsdaten sein die dem Benutzer bekannt sind.
+        Die Zugangsdaten die über den AuthSub Mechanismum bereitgestellt werden, werden vom Benutzer
+        über die Web Anwendung eingegeben. Deswegen müssen es Zugangsdaten sein die dem Benutzer
+        bekannt sind.
     </para>
 
     <note>
         <title>Registrierte Anwendungen</title>
         <para>
-            <classname>Zend_Gdata</classname> unterstützt aktuell die Verwendung von sicheren Tokens nicht, weil die AuthSub
-            Authentifizierung die Übergabe von Digitalen Zertifikaten, um ein sicheres Token zu erhalten,
-            nicht unterstützt.
+            <classname>Zend_Gdata</classname> unterstützt aktuell die Verwendung von sicheren Tokens
+            nicht, weil die AuthSub Authentifizierung die Übergabe von Digitalen Zertifikaten, um
+            ein sicheres Token zu erhalten, nicht unterstützt.
         </para>
     </note>
 
@@ -40,30 +44,35 @@
         <title>Einen AuthSub authentifizierten Http Clienten erstellen</title>
 
         <para>
-            Die PHP Anwendung sollte einen Hyperlink zur Google URL bieten die die Authentifizierung durchführt.
-            Die statische Funktion <classname>Zend_Gdata_AuthSub::getAuthSubTokenUri()</classname> liefert die richtige
-            URL. Die Argumente dieser Funktion inkludieren die URL zur eigenen PHP Anwendung so das Google
-            den Browser des Benutzers um zur eigenen Anwendung zurück umleiten kann, nachdem die
-            Benutzerdaten verifiziert wurden.
+            Die PHP Anwendung sollte einen Hyperlink zur Google URL bieten die die Authentifizierung
+            durchführt. Die statische Funktion
+            <classname>Zend_Gdata_AuthSub::getAuthSubTokenUri()</classname> liefert die richtige
+            URL. Die Argumente dieser Funktion inkludieren die URL zur eigenen PHP Anwendung so das
+            Google den Browser des Benutzers um zur eigenen Anwendung zurück umleiten kann, nachdem
+            die Benutzerdaten verifiziert wurden.
         </para>
 
         <para>
-            Nachdem Google's Authentifizierungs Server den Browser des Benutzers zur aktuellen Anwendung umgeleitet
-            haben, wird eine GET Anfrageparameter gesetzt der <code>token</code> heißt. Der Wert dieses Parameters
-            ist ein einmal-verwendbarer Token der für authentifizierten Zugriff verwendet werden kann. Dieser
-            Token kan in einen mehrfach-verwendbaren Token konvertiert und in der eigenen Session gespeichert werden.
+            Nachdem Google's Authentifizierungs Server den Browser des Benutzers zur aktuellen
+            Anwendung umgeleitet haben, wird eine GET Anfrageparameter gesetzt der
+            <code>token</code> heißt. Der Wert dieses Parameters ist ein einmal-verwendbarer Token
+            der für authentifizierten Zugriff verwendet werden kann. Dieser Token kan in einen
+            mehrfach-verwendbaren Token konvertiert und in der eigenen Session gespeichert werden.
         </para>
 
         <para>
-            Um den Token dann zu verwenden muß <classname>Zend_Gdata_AuthSub::getHttpClient()</classname> aufgerufen werden.
-            Diese Funktion gibe eine Instanz von Zend_Http_Client zurück, mit gültigen Headern gesetzt, sodas eine
-            nachfolgende Anfrage der Anwendung, die diesen Http Clienten verwenden, auch authentifiziert sind.
+            Um den Token dann zu verwenden muß
+            <classname>Zend_Gdata_AuthSub::getHttpClient()</classname> aufgerufen werden. Diese
+            Funktion gibt eine Instanz von Zend_Http_Client zurück, mit gültigen Headern gesetzt,
+            sodas eine nachfolgende Anfrage der Anwendung, die diesen Http Clienten verwenden, auch
+            authentifiziert sind.
         </para>
 
         <para>
-            Nachfolgend ist ein Beispiel von PHP Code für eine Web Anwendung um eine Authentifizierung zu erlangen
-            damit der Google Calender Service verwendet werden kann, und der ein <classname>Zend_Gdata</classname> Client Objekt erstellt
-            das diesen authentifizierten Http Client verwendet.
+            Nachfolgend ist ein Beispiel von PHP Code für eine Web Anwendung um eine
+            Authentifizierung zu erlangen damit der Google Calender Service verwendet werden kann,
+            und der ein <classname>Zend_Gdata</classname> Client Objekt erstellt das diesen
+            authentifizierten Http Client verwendet.
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -100,9 +109,9 @@ $cal = new Zend_Gdata_Calendar($client);
         <title>Beenden der AuthSub Authentifizierung</title>
 
         <para>
-            Um den authentifizierten Status eines gegebenen Status zu beenden, kann die statische Funktion
-            <classname>Zend_Gdata_AuthSub::AuthSubRevokeToken()</classname> verwendet werden. Andernfalls bleibt der Token
-            noch für einige Zeit gültig.
+            Um den authentifizierten Status eines gegebenen Status zu beenden, kann die statische
+            Funktion <classname>Zend_Gdata_AuthSub::AuthSubRevokeToken()</classname> verwendet
+            werden. Andernfalls bleibt der Token noch für einige Zeit gültig.
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -123,15 +132,16 @@ if (isset($_GET['logout'])) {
     <note>
         <title>Sicherheitshinweise</title>
         <para>
-            Das vermeiden der <code>$php_self</code> Variable im obigen Beispiel ist eine generelle Sicherheits
-            Richtlinie, die nicht nur für <classname>Zend_Gdata</classname> gilt. Inhalt der zu Http Headern ausgegeben wird sollte immer
-            gefiltert werden.
+            Das vermeiden der <code>$php_self</code> Variable im obigen Beispiel ist eine generelle
+            Sicherheits Richtlinie, die nicht nur für <classname>Zend_Gdata</classname> gilt. Inhalt
+            der zu Http Headern ausgegeben wird sollte immer gefiltert werden.
         </para>
         <para>
-            Betreffend der Beendigung des authentifizierten Tokens wird empfohlen das das gemacht wird, sobald
-            der Benutzer mit seiner Google Data Session fertig ist. Die Möglichkeit das jemand das Token
-            herausfindet und für seine eigenen miesen Zwecke verwendet ist sehr klein, aber trotzdem ist es eine
-            gute Praxis einen authentifizierten Zugriff auf jegliche Services zu beenden.
+            Betreffend der Beendigung des authentifizierten Tokens wird empfohlen das das gemacht
+            wird, sobald der Benutzer mit seiner Google Data Session fertig ist. Die Möglichkeit das
+            jemand das Token herausfindet und für seine eigenen miesen Zwecke verwendet ist sehr
+            klein, aber trotzdem ist es eine gute Praxis einen authentifizierten Zugriff auf
+            jegliche Services zu beenden.
         </para>
     </note>
 

+ 54 - 48
documentation/manual/de/module_specs/Zend_Gdata_Books.xml

@@ -23,9 +23,9 @@
 
     <para>
         Für weitere Informationen über die Buchsuche Daten API referieren Sie bitte zum
-        offiziellen
-        <ulink url="http://code.google.com/apis/books/gdata/developers_guide_php.html">PHP Developer's Guide</ulink>
-        auf code.google.com.
+        offiziellen <ulink
+            url="http://code.google.com/apis/books/gdata/developers_guide_php.html">PHP Developer's
+            Guide</ulink> auf code.google.com.
     </para>
 
     <sect2 id="zend.gdata.books.authentication">
@@ -40,9 +40,9 @@
             Client authentifiziert werden bevor man private Feeds anfragt. Er kann sich
             authentifizieren indem einer von zwei Möglichkeiten verwendet wird:
             AuthSub Proxy Authentifizierung oder ClientLogin Benutzername/Passwort
-            Authentifizierung. Bitte referieren Sie zum
-            <ulink url="http://code.google.com/apis/books/gdata/developers_guide_php.html#Authentication">Authentifizierungs Kapitel im PHP Developer Guide</ulink>
-            für weitere Details.
+            Authentifizierung. Bitte referieren Sie zum <ulink
+                url="http://code.google.com/apis/books/gdata/developers_guide_php.html#Authentication">Authentifizierungs
+                Kapitel im PHP Developer Guide</ulink> für weitere Details.
         </para>
 
     </sect2>
@@ -118,11 +118,11 @@ http://www.google.com/books/feeds/volumes?q=keyword&amp;min-viewability=partial
             Um nach einer exakten Phrase zu suchen muß die Phrase in Hochkomma eingeschlossen
             werden. Um zum Beispiel nach einem Buch zu suchen das der Phrase "spy plane"
             entspricht, muß der <code>q</code> Parameter auf <code>%22spy+plane%22</code>
-            gesetzt werden. Man kann jede der
-            <ulink url="http://books.google.com/advanced_book_search">zusätzlichen Suchoperatoren</ulink>
-            verwenden die von der Buchsuche unterstützt werden. Zum Beispiel gibt
-            <code>jane+austen+-inauthor:austen</code> Entsprechungen zurück die Jane Austen
-            erwähnen (aber nicht von Ihr geschrieben wurden).
+            gesetzt werden. Man kann jede der <ulink
+                url="http://books.google.com/advanced_book_search">zusätzlichen
+                Suchoperatoren</ulink> verwenden die von der Buchsuche unterstützt werden. Zum
+            Beispiel gibt <code>jane+austen+-inauthor:austen</code> Entsprechungen zurück die Jane
+            Austen erwähnen (aber nicht von Ihr geschrieben wurden).
         </para>
 
         <para>
@@ -151,11 +151,11 @@ http://www.google.com/books/feeds/volumes?q=keyword&amp;min-viewability=partial
         </para>
 
         <para>
-            <code>setMinViewability:</code> Erlaubt es Ergebnisse entsprechend dem
-            <ulink url="http://code.google.com/apis/books/docs/dynamic-links.html#terminology">Status der Sichtbarkeit</ulink>
-            der Bücher zu filtern. Dieser Parameter akzeptiert einen von drei Werten:
-            <code>'none'</code> (der Standardwert, der alle passenden Bücher zurückgibt
-            Unabhängigkeit von der Sichtbarkeit), <code>'partial_view'</code> (was nur
+            <code>setMinViewability:</code> Erlaubt es Ergebnisse entsprechend dem <ulink
+                url="http://code.google.com/apis/books/docs/dynamic-links.html#terminology">Status
+                der Sichtbarkeit</ulink> der Bücher zu filtern. Dieser Parameter akzeptiert einen
+            von drei Werten: <code>'none'</code> (der Standardwert, der alle passenden Bücher
+            zurückgibt Unabhängigkeit von der Sichtbarkeit), <code>'partial_view'</code> (was nur
             Bücher zurückgibt die der Benutzer komplett oder teilweise sehen kann), oder
             <code>'full_view'</code> (was nur Bücher zurückgibt die der Benutzer in Ihrer
             Komplettheit sehen kann).
@@ -166,10 +166,10 @@ http://www.google.com/books/feeds/volumes?q=keyword&amp;min-viewability=partial
             <title>Partner Co-Branded Suche</title>
 
             <para>
-                Die Google Buchsuche bietet eine
-                <ulink url="http://books.google.com/support/partner/bin/answer.py?hl=en&amp;answer=65113">Co-Branded Suche</ulink>
-                an, die Inhaltspartner erlaubt Volltextsuchen Ihrer Bücher von deren
-                Webseite anzubieten.
+                Die Google Buchsuche bietet eine <ulink
+                    url="http://books.google.com/support/partner/bin/answer.py?hl=en&amp;answer=65113">Co-Branded
+                    Suche</ulink> an, die Inhaltspartner erlaubt Volltextsuchen Ihrer Bücher von
+                deren Webseite anzubieten.
             </para>
 
             <para>
@@ -227,9 +227,10 @@ $query =
             </para>
 
             <para>
-                Um eine Bewertung hinzuzufügen, muß ein <code>Rating</code> an <code>VolumeEntry</code>
-                hinzugefügt werden und an den Anmerkungsfeed gesendet werden. Im unten gezeigten
-                Beispiel starten wir von einem leeren <code>VolumeEntry</code> Objekt.
+                Um eine Bewertung hinzuzufügen, muß ein <code>Rating</code> an
+                <code>VolumeEntry</code> hinzugefügt werden und an den Anmerkungsfeed gesendet
+                werden. Im unten gezeigten Beispiel starten wir von einem leeren
+                <code>VolumeEntry</code> Objekt.
             </para>
 
             <programlisting role="php"><![CDATA[
@@ -248,8 +249,9 @@ $books->insertVolume($entry, Zend_Gdata_Books::MY_ANNOTATION_FEED_URI);
             <para>
                 Zusätzlich zu Bewertungen, können authentifizierte Benutzer Reviews übermitteln
                 oder Ihre eigenen Reviews bearbeiten. Für Informationen darüber wie vorher
-                übermittelte Reviews angefragt werden können, siehe
-                <ulink url="#zend.gdata.books.retrieving_annotations">Empfangen von Anmerkungen</ulink>.
+                übermittelte Reviews angefragt werden können, siehe <ulink
+                    url="#zend.gdata.books.retrieving_annotations">Empfangen von
+                    Anmerkungen</ulink>.
             </para>
 
             <sect4 id="zend.gdata.books.adding_review">
@@ -279,8 +281,9 @@ $books->insertVolume($entry, $annotationUrl);
                 <title>Eine Review bearbeiten</title>
 
                 <para>
-                    Um eine bestehende Review zu aktualisieren muß man zuerst die Review die bearbeitet
-                    werden soll empfangen, diese modifizieren, und dann an den Anmerkungsfeed übertragen.
+                    Um eine bestehende Review zu aktualisieren muß man zuerst die Review die
+                    bearbeitet werden soll empfangen, diese modifizieren, und dann an den
+                    Anmerkungsfeed übertragen.
                 </para>
 
                 <programlisting role="php"><![CDATA[
@@ -301,10 +304,10 @@ $books->updateVolume($entry, $entryUrl);
             <title>Labels</title>
 
             <para>
-                Die Buchsuche Daten API kann verwendet werden um Volumes mit Label über Schlüsselwörtern
-                zu versehen. Ein Benutzer kann diese übertragen, empfangen und verändern. Siehe
-                <ulink url="#zend.gdata.books.retrieving_annotations">Anmerkungen empfangen</ulink>
-                dafür wie vorher übertragene Label gelesen werden können.
+                Die Buchsuche Daten API kann verwendet werden um Volumes mit Label über
+                Schlüsselwörtern zu versehen. Ein Benutzer kann diese übertragen, empfangen und
+                verändern. Siehe <ulink url="#zend.gdata.books.retrieving_annotations">Anmerkungen
+                    empfangen</ulink> dafür wie vorher übertragene Label gelesen werden können.
             </para>
 
             <sect4 id="zend.gdata.books.submitting_labels">
@@ -407,8 +410,8 @@ $books->deleteVolume($entry);
             <title>Bücher auf der Benutzerbibliothek erhalten</title>
 
             <para>
-                Die folgenden Kapitel beschreiben wie eine Liste von Büchern von der Bibliothek eines
-                Benutzers, mit oder ohne Abfrageparameter, empfangen werden können.
+                Die folgenden Kapitel beschreiben wie eine Liste von Büchern von der Bibliothek
+                eines Benutzers, mit oder ohne Abfrageparameter, empfangen werden können.
             </para>
 
             <para>
@@ -431,9 +434,10 @@ $feed = $books->getUserLibraryFeed();
 
                 <para>
                     Es ist zu beachten das es sein kann das der Feed nicht alle Bücher des Benutzers
-                    enthält, weil es ein Standardlimit der Anzahl der zurückgegebenen Ergebnisse gibt.
-                    Für weitere Information siehe den <code>max-results</code> Abfrageparameter in
-                    <ulink url="#zend.gdata.books.searching_for_books">Suchen nach Büchern</ulink>.
+                    enthält, weil es ein Standardlimit der Anzahl der zurückgegebenen Ergebnisse
+                    gibt. Für weitere Information siehe den <code>max-results</code>
+                    Abfrageparameter in <ulink url="#zend.gdata.books.searching_for_books">Suchen
+                        nach Büchern</ulink>.
                 </para>
 
             </sect4>
@@ -444,10 +448,10 @@ $feed = $books->getUserLibraryFeed();
 
                 <para>
                     Genauso wie man
-                    <ulink url="#zend.gdata.books.searching_for_books">über alle Bücher suchen kann</ulink>,
-                    kann man auch eine Volltextsuche über die Bücher in einer Benutzerbibliothek
-                    durchführen. Um das zu tun müssen einfach die betreffenden Parameter am
-                    <code>VolumeQuery</code> Objekt gesetzt werden.
+                    <ulink url="#zend.gdata.books.searching_for_books">über alle Bücher suchen
+                        kann</ulink>, kann man auch eine Volltextsuche über die Bücher in einer
+                    Benutzerbibliothek durchführen. Um das zu tun müssen einfach die betreffenden
+                    Parameter am <code>VolumeQuery</code> Objekt gesetzt werden.
                 </para>
 
                 <para>
@@ -466,8 +470,8 @@ $feed = $books->getVolumeFeed($query);
                 <para>
                     Für eine Liste von unterstützten Abfrageparametern können Sie in das Kapitel
                     <ulink url="#zend.gdata.books.query_pParameters">Abfrageparameter</ulink> sehen.
-                    Zusätzlich kann nach Büchern gesucht werden die
-                    <ulink url="#zend.gdata.books.labels">von einem Benutzer gelabelt wurden</ulink>:
+                    Zusätzlich kann nach Büchern gesucht werden die <ulink
+                        url="#zend.gdata.books.labels">von einem Benutzer gelabelt wurden</ulink>:
                 </para>
 
                 <programlisting role="php"><![CDATA[
@@ -492,7 +496,8 @@ $feed = $books->getVolumeFeed($query);
                 Benutzerbibliothek hinzuzufügen oder es aus Ihr zu entfernen. Bewertungen,
                 Reviews und Label sind über alle Sammlungen eines Benutzers gültig, und
                 können deswegen bearbeitet werden indem der Anmerkungsfeed verwendet wird (siehe
-                <ulink url="#zend.gdata.books.community_features">Verwendung üblicher Features</ulink>).
+                <ulink url="#zend.gdata.books.community_features">Verwendung üblicher
+                    Features</ulink>).
             </para>
 
             <sect4 id="zend.gdata.books.library_book_add">
@@ -505,12 +510,13 @@ $feed = $books->getVolumeFeed($query);
                 </para>
 
                 <para>
-                    Man kann entweder einen Eintrag von Null auf erstellen wenn man die Volume ID weiß,
-                    oder einen Eintrag einfügen wenn von irgendeinem Feed gelesen wird.
+                    Man kann entweder einen Eintrag von Null auf erstellen wenn man die Volume ID
+                    weiß, oder einen Eintrag einfügen wenn von irgendeinem Feed gelesen wird.
                 </para>
 
                 <para>
-                    Das folgende Beispiel erstellt einen neuen Eintrag und fügt Ihn der Bibliothek hinzu:
+                    Das folgende Beispiel erstellt einen neuen Eintrag und fügt Ihn der Bibliothek
+                    hinzu:
                 </para>
 
                 <programlisting role="php"><![CDATA[
@@ -523,8 +529,8 @@ $books->insertVolume(
 ]]></programlisting>
 
                 <para>
-                    Das folgende Beispiel fügt ein bestehendes <code>VolumeEntry</code> Objekt in der
-                    Bibliothek hinzu:
+                    Das folgende Beispiel fügt ein bestehendes <code>VolumeEntry</code> Objekt in
+                    der Bibliothek hinzu:
                 </para>
 
                 <programlisting role="php"><![CDATA[

+ 249 - 209
documentation/manual/de/module_specs/Zend_Gdata_Calendar.xml

@@ -4,8 +4,8 @@
 <sect1 id="zend.gdata.calendar">
     <title>Google Kalender verwenden</title>
     <para>
-        Die <classname>Zend_Gdata_Calendar</classname> Klasse kann verwendet werden um Events im Online Google Kalender
-        Service zu sehen, erstellen, updaten und löschen.
+        Die <classname>Zend_Gdata_Calendar</classname> Klasse kann verwendet werden um Events im
+        Online Google Kalender Service zu sehen, erstellen, updaten und löschen.
     </para>
     <para>
         Siehe
@@ -15,81 +15,88 @@
     <sect2 id="zend.gdata.calendar.connecting">
         <title>Zum Kalender Service verbinden</title>
         <para>
-            Die Google Kalender API basiert, wie alle GData APIs, auf dem Atom Publishing Protocol (APP), einem
-            XML basierenden Format für gemanagte Web-basierte Ressourcen. Verkehr zwischen einem Client und den
-            Google Kalender Servern läuft über HTTP und erlaubt sowohl authentifizierte als auch unauthentifizierte
-            Verbindungen.
+            Die Google Kalender API basiert, wie alle GData APIs, auf dem Atom Publishing Protocol
+            (APP), einem XML basierenden Format für gemanagte Web-basierte Ressourcen. Verkehr
+            zwischen einem Client und den Google Kalender Servern läuft über HTTP und erlaubt sowohl
+            authentifizierte als auch unauthentifizierte Verbindungen.
         </para>
         <para>
-            Bevor irgendeine Transaktion stattfinden kann, muß diese Verbindung erstellt werden. Die Erstellung
-            einer Verbindung zu den Kalender Server beinhaltet zwei Schritte: Erstellung eines HTTP Clients und
-            das binden einer <classname>Zend_Gdata_Calendar</classname> Instanz an diesen Client.
+            Bevor irgendeine Transaktion stattfinden kann, muß diese Verbindung erstellt werden. Die
+            Erstellung einer Verbindung zu den Kalender Server beinhaltet zwei Schritte: Erstellung
+            eines HTTP Clients und das binden einer <classname>Zend_Gdata_Calendar</classname>
+            Instanz an diesen Client.
         </para>
         <sect3 id="zend.gdata.calendar.connecting.authentication">
             <title>Authentifizierung</title>
             <para>
-                Die Google Kalender API erlaubt den Zugriff auf beide, öffentliche und private, Kalender Feeds.
-                Öfentliche Foods benötigen keine Authentifizierung, aber sie können nur gelesen werden und bieten
-                reduzierte Funktionalitäten. Private Feeds bieten die kompletteste Funktionalität benötigen aber
-                eine authentifizierte Verbindung zu den Kalender Servern. Es gibt drei Authentifizierungs
-                Schemas die von Google Kalender unterstützt werden:
+                Die Google Kalender API erlaubt den Zugriff auf beide, öffentliche und private,
+                Kalender Feeds. Öfentliche Foods benötigen keine Authentifizierung, aber sie können
+                nur gelesen werden und bieten reduzierte Funktionalitäten. Private Feeds bieten die
+                kompletteste Funktionalität benötigen aber eine authentifizierte Verbindung zu den
+                Kalender Servern. Es gibt drei Authentifizierungs Schemas die von Google Kalender
+                unterstützt werden:
             </para>
             <itemizedlist>
                 <listitem>
                     <para>
-                        <firstterm>ClientAuth</firstterm> bietet direkte Benutzername/Passwort Authentifizierung
-                        zu den Kalender Servern. Da dieses Schema erfordert das Benutzer die Anwendung mit Ihrem
-                        Passwort versorgen, ist diese Authentifizierung nur zu empfehlen wenn andere
-                        Authentifizierungs Schemas nicht anwendbar sind.
+                        <firstterm>ClientAuth</firstterm> bietet direkte Benutzername/Passwort
+                        Authentifizierung zu den Kalender Servern. Da dieses Schema erfordert das
+                        Benutzer die Anwendung mit Ihrem Passwort versorgen, ist diese
+                        Authentifizierung nur zu empfehlen wenn andere Authentifizierungs Schemas
+                        nicht anwendbar sind.
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        <firstterm>AuthSub</firstterm> erlaubt die Authentifizierung zu den Kalender Servern über
-                        einen Google Proxy Server. Das bietet den gleichen Level von Bequemlichkeit wie
-                        ClientAuth aber ohne die Sicherheits Risiken, was es zu einer idealen Wahl für Web
-                        basierende Anwendungen macht.
+                        <firstterm>AuthSub</firstterm> erlaubt die Authentifizierung zu den Kalender
+                        Servern über einen Google Proxy Server. Das bietet den gleichen Level von
+                        Bequemlichkeit wie ClientAuth aber ohne die Sicherheits Risiken, was es zu
+                        einer idealen Wahl für Web basierende Anwendungen macht.
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        <firstterm>MagicCookie</firstterm> erlaubt die Authentifizierung basieren auf einer
-                        semi-zufälligen URL von immerhalb des Google Kalender Interfaces. Das ist das einfachste
-                        Authentifizierungs Schema das implmentiert werden kann, erzwingt aber das Benutzer
-                        ihre Sicherheits URL manuell empfangen, bevor sie sich authentifizieren können, und ist
-                        limitiert auf nur-lesenden Zugriff.
+                        <firstterm>MagicCookie</firstterm> erlaubt die Authentifizierung basieren
+                        auf einer semi-zufälligen URL von immerhalb des Google Kalender Interfaces.
+                        Das ist das einfachste Authentifizierungs Schema das implmentiert werden
+                        kann, erzwingt aber das Benutzer ihre Sicherheits URL manuell empfangen,
+                        bevor sie sich authentifizieren können, und ist limitiert auf nur-lesenden
+                        Zugriff.
                     </para>
                 </listitem>
             </itemizedlist>
             <para>
-                Die <classname>Zend_Gdata</classname> Bibliothek bietet Unterstützung für alle drei Authentifizierungs
-                Schemas. Der Rest dieses Kapitels nimmt an das die vorhandenen Authentifizierungs Schemas
-                geläufig sind und wie eine korrekte Authentifizierte Verbindung erstellt wird. Für weitere Details
-                kann in die <link linkend="zend.gdata.introduction.authentication">Authentifizierungs Sektion</link>
-                dieses Handbuches, oder in die
-                <ulink url="http://code.google.com/apis/gdata/auth.html">Authentifizierungs Übersicht im Google Data API Entwickler Guide</ulink>.
-                gesehen werden.
+                Die <classname>Zend_Gdata</classname> Bibliothek bietet Unterstützung für alle drei
+                Authentifizierungs Schemas. Der Rest dieses Kapitels nimmt an das die vorhandenen
+                Authentifizierungs Schemas geläufig sind und wie eine korrekte Authentifizierte
+                Verbindung erstellt wird. Für weitere Details kann in die <link
+                    linkend="zend.gdata.introduction.authentication">Authentifizierungs
+                    Sektion</link> dieses Handbuches, oder in die <ulink
+                    url="http://code.google.com/apis/gdata/auth.html">Authentifizierungs Übersicht
+                    im Google Data API Entwickler Guide</ulink> gesehen werden.
             </para>
         </sect3>
         <sect3 id="zend.gdata.calendar.connecting.service">
             <title>Eine Service Instanz erstellen</title>
             <para>
                 Um mit dem Google Kalender zu interagieren, bietet diese Bibliothek die
-                <classname>Zend_Gdata_Calendar</classname> Service Klasse. Diese Klasse bietet ein übliches Interface zu den
-                Google Data und Atom Publishing Protocol Modellen und assistiert in der Behandlung der Anfragen
-                zum und von den Kalender Servern.
+                <classname>Zend_Gdata_Calendar</classname> Service Klasse. Diese Klasse bietet ein
+                übliches Interface zu den Google Data und Atom Publishing Protocol Modellen und
+                assistiert in der Behandlung der Anfragen zum und von den Kalender Servern.
             </para>
             <para>
-                Sobald ein Authentifizierung Schema ausgewählt wurde, besteht der nächste Schritt darin eine
-                Instanz von <classname>Zend_Gdata_Calendar</classname> zu erstellen. Der Klassen Konstruktor nimmt eine
-                Instanz von <classname>Zend_Http_Client</classname> als einzelnes Argument. Das bietet ein Interface für
-                AuthSub und ClientAuth Authentifizierungen, da beide von Ihnen die Erstellung eines speziellen
-                authentifizierten  HTTP Clients benötigen. Wenn keine Argumente angegeben werden, wird
-                automatisch eine unauthentifizierte Instanz von <classname>Zend_Http_Client</classname> erstellt.
+                Sobald ein Authentifizierung Schema ausgewählt wurde, besteht der nächste Schritt
+                darin eine Instanz von <classname>Zend_Gdata_Calendar</classname> zu erstellen. Der
+                Klassen Konstruktor nimmt eine Instanz von <classname>Zend_Http_Client</classname>
+                als einzelnes Argument. Das bietet ein Interface für AuthSub und ClientAuth
+                Authentifizierungen, da beide von Ihnen die Erstellung eines speziellen
+                authentifizierten  HTTP Clients benötigen. Wenn keine Argumente angegeben werden,
+                wird automatisch eine unauthentifizierte Instanz von
+                <classname>Zend_Http_Client</classname> erstellt.
             </para>
             <para>
-                Das folgende Beispiel zeigt wie man eine Kalender Service Klasse erstellt und dabei die
-                ClientAuth Authentifizierung verwendet:
+                Das folgende Beispiel zeigt wie man eine Kalender Service Klasse erstellt und dabei
+                die ClientAuth Authentifizierung verwendet:
             </para>
             <programlisting role="php"><![CDATA[
 // Parameter für die ClientAuth Authentifizierung
@@ -104,8 +111,8 @@ $client = Zend_Gdata_ClientLogin::getHttpClient($user, $pass, $service);
 $service = new Zend_Gdata_Calendar($client);
 ]]></programlisting>
             <para>
-                Ein Kalender Service der AuthSub verwendet, kann ähnlich erstellt werden, durch eine etwas längere
-                Schreibweise:
+                Ein Kalender Service der AuthSub verwendet, kann ähnlich erstellt werden, durch eine
+                etwas längere Schreibweise:
             </para>
             <programlisting role="php"><![CDATA[
 /*
@@ -196,8 +203,9 @@ session_start();
 $service = new Zend_Gdata_Calendar(getAuthSubHttpClient());
 ]]></programlisting>
             <para>
-                Schlußendlich, kann ein nicht authentifizierter Server erstellt werden um Ihn entweder mit
-                öffentlichen Feeds oder MagicCookie Authentifizierung zu verwenden:</para>
+                Schlußendlich, kann ein nicht authentifizierter Server erstellt werden um Ihn
+                entweder mit öffentlichen Feeds oder MagicCookie Authentifizierung zu verwenden:
+            </para>
             <programlisting role="php"><![CDATA[
 // Erstellt eine Instanz des Kalender Services wobei ein nicht
 // authentifizierter HTTP Client verwendet wird
@@ -205,26 +213,28 @@ $service = new Zend_Gdata_Calendar(getAuthSubHttpClient());
 $service = new Zend_Gdata_Calendar();
 ]]></programlisting>
             <para>
-                Es ist zu beachten das die MagicCookie Authentifizierung nicht mit der HTTP Verbindung
-                unterstützt wird, sonder stattdessen wärend der gewählten Sichtbarkeit spezifiziert wird,
-                wärend Anfragen abgeschickt werden. Siehe die folgende Sektion über das empfangen von Events
-                für ein Beispiel.
+                Es ist zu beachten das die MagicCookie Authentifizierung nicht mit der HTTP
+                Verbindung unterstützt wird, sonder stattdessen wärend der gewählten Sichtbarkeit
+                spezifiziert wird, wärend Anfragen abgeschickt werden. Siehe die folgende Sektion
+                über das Empfangen von Events für ein Beispiel.
             </para>
         </sect3>
     </sect2>
     <sect2 id="zend.gdata.calendar_retrieval">
         <title>Eine Kalender Liste empfangen</title>
         <para>
-            Der Kalender Service unterstützt den Empfang einer Liste von Kalendern für den authentifizierten
-            Benutzer. Das ist die gleiche Liste von Kalendern welche im Google Kalender UI angezeigt werden,
-            ausser das jene die als "<code>hidden</code>" markiert sind, auch vorhanden sind.
+            Der Kalender Service unterstützt den Empfang einer Liste von Kalendern für den
+            authentifizierten Benutzer. Das ist die gleiche Liste von Kalendern welche im Google
+            Kalender UI angezeigt werden, ausser das jene die als "<code>hidden</code>" markiert
+            sind, auch vorhanden sind.
         </para>
         <para>
-            Die Kalender Liste ist immer privat und es muß über eine authentifizierte Verbindung darauf
-            zugegriffen werden. Es ist nicht möglich eine Kalender Liste eines anderen Benutzers zu erhalten und
-            es kann nicht darauf zugegriffen werden wenn die MagicCookie Authentifizierung verwendet wird.
-            Der Versuch auf eine Kalender Liste zuzugreifen ohne das die notwendigen Zugriffsrechte vorhanden
-            sind, wird fehlschlagen und in einem 401 (Authentifizierung benötigt) Statuc Code resultieren.
+            Die Kalender Liste ist immer privat und es muß über eine authentifizierte Verbindung
+            darauf zugegriffen werden. Es ist nicht möglich eine Kalender Liste eines anderen
+            Benutzers zu erhalten und es kann nicht darauf zugegriffen werden wenn die MagicCookie
+            Authentifizierung verwendet wird. Der Versuch auf eine Kalender Liste zuzugreifen ohne
+            das die notwendigen Zugriffsrechte vorhanden sind, wird fehlschlagen und in einem 401
+            (Authentifizierung benötigt) Statuc Code resultieren.
         </para>
         <programlisting role="php"><![CDATA[
 $service = Zend_Gdata_Calendar::AUTH_SERVICE_NAME;
@@ -239,10 +249,10 @@ try {
 ]]></programlisting>
         <para>
             Der Aufruf von <code>getCalendarListFeed()</code> erstellt eine neue Instanz von
-            <classname>Zend_Gdata_Calendar_ListFeed</classname> die jeden vorhandenen Kalender als Instanz von
-            <classname>Zend_Gdata_Calendar_ListEntry</classname> enthält. Nachdem der Feed empfangen wurde, können der
-            Iterator und der Accessor die innerhalb des Feeds enthalten sind, verwendet werden um die enthaltenen
-            Kalender zu inspizieren.
+            <classname>Zend_Gdata_Calendar_ListFeed</classname> die jeden vorhandenen Kalender als
+            Instanz von <classname>Zend_Gdata_Calendar_ListEntry</classname> enthält. Nachdem der
+            Feed empfangen wurde, können der Iterator und der Accessor die innerhalb des Feeds
+            enthalten sind, verwendet werden um die enthaltenen Kalender zu inspizieren.
         </para>
         <programlisting role="php"><![CDATA[
 echo "<h1>Kalender Feed Liste</h1>";
@@ -258,47 +268,51 @@ echo "</ul>";
         <title>Events erhalten</title>
         <para>
             Wie die Liste der Kalender können auch die Events empfangen werden durch Verwendung der
-            <classname>Zend_Gdata_Calendar</classname> Service Klasse. Die zurückgegebene Event Liste ist vom Typ
-            <classname>Zend_Gdata_Calendar_EventFeed</classname> und enthält jedes Event als Instanz von
-            <classname>Zend_Gdata_Calendar_EventEntry</classname>. Wie vorher, erlauben die in der Instanz des Event Feeds
-            enthaltenen Accessoren und der Iterator das individuelle Events inspiziert werden können.
+            <classname>Zend_Gdata_Calendar</classname> Service Klasse. Die zurückgegebene Event
+            Liste ist vom Typ <classname>Zend_Gdata_Calendar_EventFeed</classname> und enthält jedes
+            Event als Instanz von <classname>Zend_Gdata_Calendar_EventEntry</classname>. Wie vorher,
+            erlauben die in der Instanz des Event Feeds enthaltenen Accessoren und der Iterator das
+            individuelle Events inspiziert werden können.
         </para>
         <sect3 id="zend.gdata.event_retrieval.queries">
             <title>Abfragen</title>
             <para>
-                Wenn Events mit der Kalender API empfangen werden, werden speziell erstellte Abfrage URLs verwendet
-                um zu beschreiben welche Events zurückgegeben werden sollten. Die
-                <classname>Zend_Gdata_Calendar_EventQuery</classname> Klasse vereinfacht diese Aufgabe durch
-                automatische Erstellung einer Abfrage URL basierend auf den gegebenen Parametern. Eine komplette
-                Liste dieser Parameter ist in der
-                <ulink url="http://code.google.com/apis/gdata/reference.html#Queries">Abfrage Sektion des
-                Google Data API Protokoll Referenz</ulink> enthalten. Trotzdem gibt es drei Parameter die es
-                Wert sind speziell genannt zu werden:
+                Wenn Events mit der Kalender API empfangen werden, werden speziell erstellte Abfrage
+                URLs verwendet um zu beschreiben welche Events zurückgegeben werden sollten. Die
+                <classname>Zend_Gdata_Calendar_EventQuery</classname> Klasse vereinfacht diese
+                Aufgabe durch automatische Erstellung einer Abfrage URL basierend auf den gegebenen
+                Parametern. Eine komplette Liste dieser Parameter ist in der <ulink
+                    url="http://code.google.com/apis/gdata/reference.html#Queries">Abfrage Sektion
+                    des Google Data API Protokoll Referenz</ulink> enthalten. Trotzdem gibt es drei
+                Parameter die es Wert sind speziell genannt zu werden:
             </para>
             <itemizedlist>
                 <listitem>
                     <para>
-                        <firstterm>User</firstterm> wird verwendet um den Benutzer zu spezifizieren dessen
-                        Kalender gesucht wird, und wird als EMail Adresse spezifiziert. Wenn kein Benutzer
-                        angegeben wurde, wird stattdessen "default" verwendet um den aktuellen authentifizierten
-                        Benutzer anzuzeigen  (wenn er authentifiziert wurde).
+                        <firstterm>User</firstterm> wird verwendet um den Benutzer zu spezifizieren
+                        dessen Kalender gesucht wird, und wird als EMail Adresse spezifiziert. Wenn
+                        kein Benutzer angegeben wurde, wird stattdessen "default" verwendet um den
+                        aktuellen authentifizierten Benutzer anzuzeigen  (wenn er authentifiziert
+                        wurde).
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        <firstterm>Visibility</firstterm> spezifiziert ob der öffentliche oder private Kalender
-                        eines Benutzers gesucht werden soll. Wenn eine nicht authentifizierte Session verwendet
-                        wird und kein MagicCookie vorhanden ist, ist nur der öffentliche Feed vorhanden.
+                        <firstterm>Visibility</firstterm> spezifiziert ob der öffentliche oder
+                        private Kalender eines Benutzers gesucht werden soll. Wenn eine nicht
+                        authentifizierte Session verwendet wird und kein MagicCookie vorhanden ist,
+                        ist nur der öffentliche Feed vorhanden.
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        <firstterm>Projection</firstterm> spezifiziert wieviele Daten vom Server zurückgegeben
-                        werden sollen, und in welchem Format. In den meisten Fällen wird man die komplette
-                        ("full") Projektion verwenden wollen. Auch die normale ("basic") Projektion ist vorhanden,
-                        welche die meisten Meta-Daten in jedem Inhaltsfeld der Events als menschlich lesbaren
-                        Text plaziert, und die kombinierte ("composite") Projketion welche den kompletten
-                        text für jedes Kommentar entlang jedes Events inkludiert. Die kombinierte ("composite")
+                        <firstterm>Projection</firstterm> spezifiziert wieviele Daten vom Server
+                        zurückgegeben werden sollen, und in welchem Format. In den meisten Fällen
+                        wird man die komplette ("full") Projektion verwenden wollen. Auch die
+                        normale ("basic") Projektion ist vorhanden, welche die meisten Meta-Daten in
+                        jedem Inhaltsfeld der Events als menschlich lesbaren Text plaziert, und die
+                        kombinierte ("composite") Projketion welche den kompletten text für jedes
+                        Kommentar entlang jedes Events inkludiert. Die kombinierte ("composite")
                         Ansicht ist oft viel größer als die komplette ("full") Ansicht.
                     </para>
                 </listitem>
@@ -307,13 +321,15 @@ echo "</ul>";
         <sect3 id="zend.gdata.event_retrieval.start_time">
             <title>Events in der Reihenfolge Ihres Startzeitpunktes erhalten</title>
             <para>
-                Das folgende Beispiel zeigt die Verwendung der <classname>Zend_Gdata_Query</classname> Klasse und spezifiziert
-                den privat sichtbaren Feed, welcher eine vorhandene authentifizierte Verbindung zu den Kalender
-                Servern benötigt. Wenn ein MagicCookie für die Authentifizierung verwendet wird, sollte die
-                Sichtbarkeit zuerst auf "<code>private-magicCookieValue</code>" gesetzt werden, sobei
-                magicCookieValue der zufälliger String ist, der erhalten wird, wenn man die private XML Adresse
-                im Google Kalender UI betrachtet. Events werden chronologisch anhand des Startzeitpunktes angefragt
-                und nur Events die in der Zukunft stattfinden werden zurückgegeben.
+                Das folgende Beispiel zeigt die Verwendung der
+                <classname>Zend_Gdata_Query</classname> Klasse und spezifiziert den privat
+                sichtbaren Feed, welcher eine vorhandene authentifizierte Verbindung zu den Kalender
+                Servern benötigt. Wenn ein MagicCookie für die Authentifizierung verwendet wird,
+                sollte die Sichtbarkeit zuerst auf "<code>private-magicCookieValue</code>" gesetzt
+                werden, sobei magicCookieValue der zufälliger String ist, der erhalten wird, wenn
+                man die private XML Adresse im Google Kalender UI betrachtet. Events werden
+                chronologisch anhand des Startzeitpunktes angefragt und nur Events die in der
+                Zukunft stattfinden werden zurückgegeben.
             </para>
             <programlisting role="php"><![CDATA[
 $query = $service->newEventQuery();
@@ -340,36 +356,41 @@ foreach ($eventFeed as $event) {
 echo "</ul>";
 ]]></programlisting>
             <para>
-                Zusätzliche Eigenschaften wie ID, Autor, Wann, Event Status, Sichtbarkeit, Web Inhalt, und Inhalt,
-                sowie andere sind innerhalb von <classname>Zend_Gdata_Calendar_EventEntry</classname> vorhanden. Siehe die
-                <ulink url="http://framework.zend.com/apidoc/core/">Zend Framework API Dokumentation</ulink> und
-                die <ulink url="http://code.google.com/apis/gdata/reference.html">Lalender Protokol Referenz</ulink>
-                für eine komplette Liste.
+                Zusätzliche Eigenschaften wie ID, Autor, Wann, Event Status, Sichtbarkeit, Web
+                Inhalt, und Inhalt, sowie andere sind innerhalb von
+                <classname>Zend_Gdata_Calendar_EventEntry</classname> vorhanden. Siehe die <ulink
+                    url="http://framework.zend.com/apidoc/core/">Zend Framework API
+                    Dokumentation</ulink> und die <ulink
+                    url="http://code.google.com/apis/gdata/reference.html">Lalender Protokol
+                    Referenz</ulink> für eine komplette Liste.
             </para>
         </sect3>
         <sect3 id="zend.gdata.event_retrieval.date_range">
             <title>Events in einem speziellen Datumsbereich empfangen</title>
             <para>
-                Um alle Events in einem gewünschten Bereich auszugeben, zum Beispiel vom 1. Dezember 2006 bis zum
-                15. Dezember 2006, müssen die folgenden zwei Zeilen im vorhergehenden Beispiel hinzugefügt werden.
-                Es ist zu beachten das "<code>$query->setFutureevents('true')</code>" entfernt werden muß, da
-                <code>futureevents</code> die Werte von <code>startMin</code> und <code>startMax</code>
-                überschreibt.
+                Um alle Events in einem gewünschten Bereich auszugeben, zum Beispiel vom 1. Dezember
+                2006 bis zum 15. Dezember 2006, müssen die folgenden zwei Zeilen im vorhergehenden
+                Beispiel hinzugefügt werden. Es ist zu beachten das
+                "<code>$query->setFutureevents('true')</code>" entfernt werden muß, da
+                <code>futureevents</code> die Werte von <code>startMin</code> und
+                <code>startMax</code> überschreibt.
             </para>
             <programlisting role="php"><![CDATA[
 $query->setStartMin('2006-12-01');
 $query->setStartMax('2006-12-16');
 ]]></programlisting>
             <para>
-                Es ist zu beachten das <code>startMin</code> inklusive ist, wobei <code>startMax</code> exklusive
-                ist. Als Ergebnis, werden nur die Events bis 2006-12-15 23:59:59 zurückgegeben.
+                Es ist zu beachten das <code>startMin</code> inklusive ist, wobei
+                <code>startMax</code> exklusive ist. Als Ergebnis, werden nur die Events bis
+                2006-12-15 23:59:59 zurückgegeben.
             </para>
         </sect3>
         <sect3 id="zend.gdata.event_retrieval.fulltext">
             <title>Events durch eine Volltext Abfrage erhalten</title>
             <para>
-                Um alle Events auszugeben welche ein spezielles Wort, zum Beispiel "Hundefutter" enthalten,
-                muß die  <code>setQuery()</code> Methode verwendet werden wenn die Abfrage erstellt wird.
+                Um alle Events auszugeben welche ein spezielles Wort, zum Beispiel "Hundefutter"
+                enthalten, muß die  <code>setQuery()</code> Methode verwendet werden wenn die
+                Abfrage erstellt wird.
             </para>
             <programlisting role="php"><![CDATA[
 $query->setQuery("Hundefutter");
@@ -378,9 +399,9 @@ $query->setQuery("Hundefutter");
         <sect3 id="zend.gdata.event_retrieval.individual">
             <title>Individuelle Events erhalten</title>
             <para>
-                Individuelle Events können empfangen werden indem deren Event ID als Teil der Abfrage spezifiziert
-                wird. Statt <code>getCalendarEventFeed()</code> auszurufen, sollte
-                <code>getCalendarEventEntry()</code> aufgerufen werden.
+                Individuelle Events können empfangen werden indem deren Event ID als Teil der
+                Abfrage spezifiziert wird. Statt <code>getCalendarEventFeed()</code> auszurufen,
+                sollte <code>getCalendarEventEntry()</code> aufgerufen werden.
             </para>
             <programlisting role="php"><![CDATA[
 $query = $service->newEventQuery();
@@ -397,9 +418,9 @@ try {
 ]]></programlisting>
             <para>
                 In einer ähnlichen Weise kann Sie, wenn die Event URL bekannt ist, direkt an
-                <code>getCalendarEntry()</code> übergeben werden um ein spezielles Event zu erhalten. In diesem
-                Fall wird kein Abfrage Objekt benötigt da die Event URL alle notwendigen Informationen enthält um
-                das Event zu erhalten.
+                <code>getCalendarEntry()</code> übergeben werden um ein spezielles Event zu
+                erhalten. In diesem Fall wird kein Abfrage Objekt benötigt da die Event URL alle
+                notwendigen Informationen enthält um das Event zu erhalten.
             </para>
             <programlisting role="php"><![CDATA[
 $eventURL = "http://www.google.com/calendar/feeds/default/private"
@@ -418,45 +439,49 @@ try {
         <sect3 id="zend.gdata.calendar.creating_events.single">
             <title>Ein einmal vorkommendes Event erstellen</title>
             <para>
-                Events werden einem Kalender hinzugefügt indem eine Instanz von  <classname>Zend_Gdata_EventEntry</classname>
-                erstellt wird, und diese mit den richtigen Daten bekanntgegeben wird. Die Kalender Service Instanz
-                (<classname>Zend_Gdata_Calendar</classname>) wird dann verwendet um das Event transparent in XML zu
-                konvertieren und diese an den Kalender Server zu senden.
+                Events werden einem Kalender hinzugefügt indem eine Instanz von
+                <classname>Zend_Gdata_EventEntry</classname> erstellt wird, und diese mit den
+                richtigen Daten bekanntgegeben wird. Die Kalender Service Instanz
+                (<classname>Zend_Gdata_Calendar</classname>) wird dann verwendet um das Event
+                transparent in XML zu konvertieren und diese an den Kalender Server zu senden.
             </para>
             <para>Mindestens die folgenden Attribute sollten gesetzt werden:</para>
             <itemizedlist>
                 <listitem>
                     <para>
-                        <firstterm>Title</firstterm> enthält die Kopfzeile die über jedem Event innerhalb der
-                        Google Kalender UI angezeigt wird.
+                        <firstterm>Title</firstterm> enthält die Kopfzeile die über jedem Event
+                        innerhalb der Google Kalender UI angezeigt wird.
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        <firstterm>When</firstterm> zeigt die Dauer des Events und, optional, jede Erinnerung die
-                        mit Ihm assoziiert ist. Siehe in die nächste Sektion für mehr Informationen über dieses
-                        Attribut.
+                        <firstterm>When</firstterm> zeigt die Dauer des Events und, optional, jede
+                        Erinnerung die mit Ihm assoziiert ist. Siehe in die nächste Sektion für mehr
+                        Informationen über dieses Attribut.
                     </para>
                 </listitem>
             </itemizedlist>
-            <para>Andere nützliche Attribute die optional gesetzt werden können sind unter anderem:</para>
+            <para>
+                Andere nützliche Attribute die optional gesetzt werden können sind unter anderem:
+            </para>
             <itemizedlist>
                 <listitem>
                     <para>
-                        <firstterm>Author</firstterm> liefert Informationen über den Benutzer der das Event
-                        erstellt hat.
+                        <firstterm>Author</firstterm> liefert Informationen über den Benutzer der
+                        das Event erstellt hat.
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        <firstterm>Content</firstterm> liefert zusätzliche Information über das Event und wird
-                        angezeigt wenn die Event Details innerhalb des Google Kalenders angefragt werden.
+                        <firstterm>Content</firstterm> liefert zusätzliche Information über das
+                        Event und wird angezeigt wenn die Event Details innerhalb des Google
+                        Kalenders angefragt werden.
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        <firstterm>EventStatus</firstterm> zeigt an ob ein Event bestätigt, in Wartestellung
-                        oder abgebrochen wurde.
+                        <firstterm>EventStatus</firstterm> zeigt an ob ein Event bestätigt, in
+                        Wartestellung oder abgebrochen wurde.
                     </para>
                 </listitem>
                 <listitem>
@@ -466,14 +491,14 @@ try {
                 </listitem>
                 <listitem>
                     <para>
-                        <firstterm>Transparency</firstterm> zeigt ob das Event Zeit auf der Frei/Belegt Liste
-                        des Benutzers benötigt.
+                        <firstterm>Transparency</firstterm> zeigt ob das Event Zeit auf der
+                        Frei/Belegt Liste des Benutzers benötigt.
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        <firstterm>WebContent</firstterm> erlaubt es externe Inhalte zu verlinken und innerhalb
-                        eines Events anzubieten.
+                        <firstterm>WebContent</firstterm> erlaubt es externe Inhalte zu verlinken
+                        und innerhalb eines Events anzubieten.
                     </para>
                 </listitem>
                 <listitem>
@@ -483,23 +508,26 @@ try {
                 </listitem>
                 <listitem>
                     <para>
-                        <firstterm>Visibility</firstterm> erlaubt es das Event vor der öffentlichen Event Liste
-                        zu verstecken.
+                        <firstterm>Visibility</firstterm> erlaubt es das Event vor der öffentlichen
+                        Event Liste zu verstecken.
                     </para>
                 </listitem>
             </itemizedlist>
             <para>
-                Für eine komplette Liste an Event Attributen, kann in die
-                <ulink url="http://framework.zend.com/apidoc/core/">Zend Framework API Documentation</ulink> und die
-                <ulink url="http://code.google.com/apis/gdata/reference.html">Kalender Protokol Referenz</ulink>
-                gesehen werden. Attribute die mehrfache Werte enthalten können, wo wie "where", sind als Arrays
-                implementiert und müssen korrekt erstellt werden. Es ist zu beachten das alle diese Attribute
-                Objekte als Parameter benötigen. Der Versuch diese stattdessen als Strings oder Primitivvariablen
-                bekanntzugeben wird in einem Fehler wärend der Konvertierung in XML führen.
+                Für eine komplette Liste an Event Attributen, kann in die <ulink
+                    url="http://framework.zend.com/apidoc/core/">Zend Framework API
+                    Documentation</ulink> und die <ulink
+                    url="http://code.google.com/apis/gdata/reference.html">Kalender Protokol
+                    Referenz</ulink> gesehen werden. Attribute die mehrfache Werte enthalten können,
+                wo wie "where", sind als Arrays implementiert und müssen korrekt erstellt werden. Es
+                ist zu beachten das alle diese Attribute Objekte als Parameter benötigen. Der
+                Versuch diese stattdessen als Strings oder Primitivvariablen bekanntzugeben wird in
+                einem Fehler wärend der Konvertierung in XML führen.
             </para>
             <para>
-                Sobald das Event bekanntgegeben wurde, kann es zum Kalender Server hochgeladen werden durch
-                seine Übergabe als Argument zur <code>insertEvent()</code> Funktion des Kalender Services.
+                Sobald das Event bekanntgegeben wurde, kann es zum Kalender Server hochgeladen
+                werden durch seine Übergabe als Argument zur <code>insertEvent()</code> Funktion des
+                Kalender Services.
             </para>
             <programlisting role="php"><![CDATA[
 // Erstellt einen neuen Eintrag und verwendet die magische Factory
@@ -533,17 +561,20 @@ $newEvent = $service->insertEvent($event);
         <sect3 id="zend.gdata.calendar.creating_events.schedulers_reminders">
             <title>Event Planungen und Erinnerungen</title>
             <para>
-                Die Startzeit und Dauer eines Events werden durch die Werte seiner <code>when</code> Eigenschaften,
-                <code>startTime</code>, <code>endTime</code>, und <code>valueString</code> ermittelt.
-                <code>startTime</code> und <code>endTime</code> kontrollieren die Dauer des Events, wärend die
-                <code>valueString</code> Eigenschaft aktuell nicht verwendet wird.
+                Die Startzeit und Dauer eines Events werden durch die Werte seiner <code>when</code>
+                Eigenschaften, <code>startTime</code>, <code>endTime</code>, und
+                <code>valueString</code> ermittelt. <code>startTime</code> und <code>endTime</code>
+                kontrollieren die Dauer des Events, wärend die <code>valueString</code> Eigenschaft
+                aktuell nicht verwendet wird.
             </para>
             <para>
-                Jeden Tag wiederkehrende Events können geplant werden indem nur das Datum spezifiziert und
-                die Zeit ausgelassen wird wenn <code>startTime</code> und <code>endTime</code> gesetzt werden.
-                Genauso können Events die keine Dauer haben spezifiziert werden indem <code>endTime</code>
-                unterdrückt wird. In allen Fällen sollten Datums und Zeitwerte im
-                <ulink url="http://www.ietf.org/rfc/rfc3339.txt">RFC3339</ulink> Format angegeben werden.
+                Jeden Tag wiederkehrende Events können geplant werden indem nur das Datum
+                spezifiziert und die Zeit ausgelassen wird wenn <code>startTime</code> und
+                <code>endTime</code> gesetzt werden. Genauso können Events die keine Dauer haben
+                spezifiziert werden indem <code>endTime</code> unterdrückt wird. In allen Fällen
+                sollten Datums und Zeitwerte im <ulink
+                    url="http://www.ietf.org/rfc/rfc3339.txt">RFC3339</ulink> Format angegeben
+                werden.
             </para>
             <programlisting role="php"><![CDATA[
 // Plane ein Event das am 05. Dezember 2007 um 14h PST stattfindet
@@ -556,19 +587,20 @@ $when->endTime="2007-12-05T15:00:00:00-08:00";
 $event->when = array($when);
 ]]></programlisting>
             <para>
-                Das <code>when</code> Attribut kontrolliert auch wann Erinnerungen an einen Benutzer gesendet
-                werden. Erinnerungen werden in einem Array gespeichert und jedes Event kann abgefragt werden
-                um die Erinnerungen herauszufinden die mit Ihm verbunden sind.
+                Das <code>when</code> Attribut kontrolliert auch wann Erinnerungen an einen Benutzer
+                gesendet werden. Erinnerungen werden in einem Array gespeichert und jedes Event kann
+                abgefragt werden um die Erinnerungen herauszufinden die mit Ihm verbunden sind.
             </para>
             <para>
-                Damit ein <code>reminder</code> gültig ist, muß er zwei Attribute gesetzt haben: <code>method</code>
-                und eine Zeit. <code>Method</code> akzeptiert einen der folgenden Strings: "alert", "email" oder
-                "sms". Die Zeit sollte als Integer eingegeben werden und kann mit den Eigenschaften
-                <code>minutes</code>, <code>hours</code>, <code>days</code> oder <code>absoluteTime</code>
-                gesetzt werden. Trotzdem darf eine gültige Anfrage nur eines dieser Attribute gesetzt haben.
-                Wenn eine gemischte Zeit gewünscht wird, muß der Wert in die am besten passende und vorhandene
-                Einheit konvertiert werden. Zum Beispiel, 1 Stunde und 30 Minuten sollten als 90 Minuten angegeben
-                werden.
+                Damit ein <code>reminder</code> gültig ist, muß er zwei Attribute gesetzt haben:
+                <code>method</code> und eine Zeit. <code>Method</code> akzeptiert einen der
+                folgenden Strings: "alert", "email" oder "sms". Die Zeit sollte als Integer
+                eingegeben werden und kann mit den Eigenschaften <code>minutes</code>,
+                <code>hours</code>, <code>days</code> oder <code>absoluteTime</code> gesetzt werden.
+                Trotzdem darf eine gültige Anfrage nur eines dieser Attribute gesetzt haben. Wenn
+                eine gemischte Zeit gewünscht wird, muß der Wert in die am besten passende und
+                vorhandene Einheit konvertiert werden. Zum Beispiel, 1 Stunde und 30 Minuten sollten
+                als 90 Minuten angegeben werden.
             </para>
             <programlisting role="php"><![CDATA[
 // Erstellt ein Erinnerungs Objekt. Es sollte eine Email an den Benutzer
@@ -585,24 +617,27 @@ $when->reminders = array($reminder);
         <sect3 id="zend.gdata.calendar.creating_events.recurring">
             <title>Wiederkehrende Events erstellen</title>
             <para>
-                Wiederkehrende Events werden auf dem gleichen Weg erstellt wie einmal stattfindende Events,
-                ausser das ein Wiederholungs "recurrence" Attribut statt dem "where" Attribut angegeben werden
-                muß. Das Wiederholungs Attribut sollte einen String enthalten der das Wiederholungs Pattern des
-                Events beschreibt und das mit Eigenschaften definiert werden kann die im iCalender Standard
-                (<ulink url="http://www.ietf.org/rfc/rfc2445.txt">RFC 2445</ulink>) beschrieben sind.
+                Wiederkehrende Events werden auf dem gleichen Weg erstellt wie einmal stattfindende
+                Events, ausser das ein Wiederholungs "recurrence" Attribut statt dem "where"
+                Attribut angegeben werden muß. Das Wiederholungs Attribut sollte einen String
+                enthalten der das Wiederholungs Pattern des Events beschreibt und das mit
+                Eigenschaften definiert werden kann die im iCalender Standard (<ulink
+                    url="http://www.ietf.org/rfc/rfc2445.txt">RFC 2445</ulink>) beschrieben sind.
             </para>
             <para>
                 Ausnahmen im Wiederholungs Pattern werden normalerweise durch ein ausgeprägtes
-                <code>recurrenceException</code> Attribut spezifiziert. Trotzdem bietet der iCalender Standard
-                ein zweites Format für die Definition von Wiederholungen, und die Möglichkeit das jedes von Ihnen
-                verwendet werden kann und für jedes davon muß das gehandhabt werden.
+                <code>recurrenceException</code> Attribut spezifiziert. Trotzdem bietet der
+                iCalender Standard ein zweites Format für die Definition von Wiederholungen, und die
+                Möglichkeit das jedes von Ihnen verwendet werden kann und für jedes davon muß das
+                gehandhabt werden.
             </para>
             <para>
-                Durch die Komplexität des analysierens des Wiederholungs Patterns, sind weitere Informationen
-                hierüber ausserhalb des Umfangs dieses Dokuments. Trotzdem können weitere Informationen im
-                <ulink url="http://code.google.com/apis/gdata/elements.html#gdRecurrence">Kapitel über normale
-                Elemente des Google Data API Entwickler Leitfadens</ulink> gefunden werden, sowie in der
-                RFC 2445.
+                Durch die Komplexität des analysierens des Wiederholungs Patterns, sind weitere
+                Informationen hierüber ausserhalb des Umfangs dieses Dokuments. Trotzdem können
+                weitere Informationen im <ulink
+                    url="http://code.google.com/apis/gdata/elements.html#gdRecurrence">Kapitel über
+                    normale Elemente des Google Data API Entwickler Leitfadens</ulink> gefunden
+                werden, sowie in der RFC 2445.
             </para>
             <programlisting role="php"><![CDATA[
 // Erstelle einen neuen Eintrag und verwendet die magische
@@ -636,11 +671,12 @@ $newEvent = $service->insertEvent($event);
         <sect3 id="zend.gdata.calendar.creating_events.quickadd">
             <title>QuickAdd verwenden</title>
             <para>
-                QuickAdd ist ein Feature das es erlaubt Events zu erstellen indem ein frei definierter Texteintrag
-                verwendet wird. Zum Beispie lwürde der String "Abendessen bei Joe's Dinner am Dienstag" ein
-                Event erstellen mit dem Titel "Abendessen", dem Ort "Joe's Dinner", und dem Datum "Dienstag".
-                Um die Vorteile von QuickAdd zu verwenden, muß eine neue <code>QuickAdd</code> Eigenschaft erstellt,
-                auf "true" gesetzt und der frei definierbare Text als <code>content</code> Eigenschaft
+                QuickAdd ist ein Feature das es erlaubt Events zu erstellen indem ein frei
+                definierter Texteintrag verwendet wird. Zum Beispie lwürde der String "Abendessen
+                bei Joe's Dinner am Dienstag" ein Event erstellen mit dem Titel "Abendessen", dem
+                Ort "Joe's Dinner", und dem Datum "Dienstag". Um die Vorteile von QuickAdd zu
+                verwenden, muß eine neue <code>QuickAdd</code> Eigenschaft erstellt, auf "true"
+                gesetzt und der frei definierbare Text als <code>content</code> Eigenschaft
                 gespeichert werden.
             </para>
             <programlisting role="php"><![CDATA[
@@ -662,16 +698,18 @@ $newEvent = $service->insertEvent($event);
     <sect2 id="zend.gdata.calendar.modifying_events">
         <title>Events bearbeiten</title>
         <para>
-            Sobald eine Instanz eines Events erstellt wurde, können die Attribute des Events lokal auf dem selben
-            Weg wie bei der Erstellung des Events geänder werden. Sobald alle Änderungen komplett sind, schickt
-            der Aufruf der <code>save()</code> Methode des Events die Änderungen an den Kalender Server und gibt
-            eine Kopie des Events zurück wie es auf dem Server erstellt wurde.
+            Sobald eine Instanz eines Events erstellt wurde, können die Attribute des Events lokal
+            auf dem selben Weg wie bei der Erstellung des Events geänder werden. Sobald alle
+            Änderungen komplett sind, schickt der Aufruf der <code>save()</code> Methode des Events
+            die Änderungen an den Kalender Server und gibt eine Kopie des Events zurück wie es auf
+            dem Server erstellt wurde.
         </para>
         <para>
-            Im Fall das ein anderer Benutzer das Event modifiziert hat seitdem die lokale Kopie empfangen wurde,
-            wird die <code>save()</code> Methode fehlschlagen und einen 409 (Konflikt) Status Code zurück geben.
-            Um das zu beheben muß eine neue Kopie des Events vom Server empfangen werden bevor ein erneuter
-            Versuch stattfindet die Änderungen wieder zu speichern.
+            Im Fall das ein anderer Benutzer das Event modifiziert hat seitdem die lokale Kopie
+            empfangen wurde, wird die <code>save()</code> Methode fehlschlagen und einen 409
+            (Konflikt) Status Code zurück geben. Um das zu beheben muß eine neue Kopie des Events
+            vom Server empfangen werden bevor ein erneuter Versuch stattfindet die Änderungen wieder
+            zu speichern.
         </para>
         <programlisting role="php"><![CDATA[
 // Das erste Event auf der Liste der Events eines Benutzers erhalten
@@ -691,15 +729,16 @@ try {
     <sect2 id="zend.gdata.calendar.deleting_events">
         <title>Events löschen</title>
         <para>
-            Kalender Events können entweder durch den Aufruf der <code>delete()</code> Methode des Kalender
-            Services, und des Angebens der Bearbeitungs URL des Events durchgeführt werden, oder durch
-            Aufruf der eigenen <code>delete()</code> Methode des Events.
+            Kalender Events können entweder durch den Aufruf der <code>delete()</code> Methode des
+            Kalender Services, und des Angebens der Bearbeitungs URL des Events durchgeführt werden,
+            oder durch Aufruf der eigenen <code>delete()</code> Methode des Events.
         </para>
         <para>
-            In jedem Fall, wird das gelöschte Event trotzdem noch am Privaten Event Feed des Benutzers
-            aufscheinen wenn ein <code>updateMin</code> Abfrage Parameter angegeben wurde. Gelöschte Events
-            können von normalen Events unterschieden werden weil Sie Ihre eigene <code>eventStatus</code>
-            Eigenschaft auf "http://schemas.google.com/g/2005#event.canceled" gesetzt haben.
+            In jedem Fall, wird das gelöschte Event trotzdem noch am Privaten Event Feed des
+            Benutzers aufscheinen wenn ein <code>updateMin</code> Abfrage Parameter angegeben wurde.
+            Gelöschte Events können von normalen Events unterschieden werden weil Sie Ihre eigene
+            <code>eventStatus</code> Eigenschaft auf
+            "http://schemas.google.com/g/2005#event.canceled" gesetzt haben.
         </para>
         <programlisting role="php"><![CDATA[
 // Option 1: Events können direkt gelöscht werden
@@ -715,16 +754,17 @@ $service->delete($event->getEditLink()->href);
     <sect2 id="zend.gdata.calendar.comments">
         <title>Auf Event Kommentare zugreifen</title>
         <para>
-            Den die komplette Event Ansicht verwendet wird, werden Kommentare nicht direkt innerhalb eines Events
-            gespeichert. Stattdessen enthält jedes Event eine URL zum dazugehörigen Kommentar Feed welcher
-            manuell angefragt werden muß.
+            Den die komplette Event Ansicht verwendet wird, werden Kommentare nicht direkt innerhalb
+            eines Events gespeichert. Stattdessen enthält jedes Event eine URL zum dazugehörigen
+            Kommentar Feed welcher manuell angefragt werden muß.
         </para>
         <para>
-            Das Arbeiten mit Kommentaren ist fundamental ähnlich zum Arbeiten mit Events, mit dem einzigen
-            signifikanten Unterschied das eine andere Feed und Event Klasse verwendet werden sollte, und das
-            die zusätzlichen Meta-Daten für Events wie zum Beispiel "where" und "when" für Kommentare nicht
-            existieren. Speziell wird der Author des Kommentars in der <code>author</code> Eigenschaft und der
-            Kommentar Text in der <code>content</code> Eigenschaft gespeichert.
+            Das Arbeiten mit Kommentaren ist fundamental ähnlich zum Arbeiten mit Events, mit dem
+            einzigen signifikanten Unterschied das eine andere Feed und Event Klasse verwendet
+            werden sollte, und das die zusätzlichen Meta-Daten für Events wie zum Beispiel "where"
+            und "when" für Kommentare nicht existieren. Speziell wird der Author des Kommentars in
+            der <code>author</code> Eigenschaft und der Kommentar Text in der <code>content</code>
+            Eigenschaft gespeichert.
         </para>
         <programlisting role="php"><![CDATA[
 // Die normale URL vom ersten Event der Feed Liste des Benutzers extrahieren

+ 44 - 35
documentation/manual/de/module_specs/Zend_Gdata_ClientLogin.xml

@@ -5,73 +5,82 @@
     <title>Authentifizieren mit ClientLogin</title>
 
     <para>
-        Der ClientLogin Mechanismus erlaubt es PHP Anwendungen zu schreiben die Authentifizierungs-zugriff
-        zu Google Services benötigen, durch die Spezifikation von Benutzer Zugangsdaten im Http Client.
+        Der ClientLogin Mechanismus erlaubt es PHP Anwendungen zu schreiben die
+        Authentifizierungs-zugriff zu Google Services benötigen, durch die Spezifikation von
+        Benutzer Zugangsdaten im Http Client.
     </para>
 
     <para>
         Siehe
-        <ulink url="http://code.google.com/apis/accounts/AuthForInstalledApps.html"> http://code.google.com/apis/accounts/AuthForInstalledApps.html</ulink>
+        <ulink url="http://code.google.com/apis/accounts/AuthForInstalledApps.html">http://code.google.com/apis/accounts/AuthForInstalledApps.html</ulink>
         für weitere Informationen über die Google Data ClientLogin Authentifizierung.
     </para>
 
     <para>
-        Die Google Dokumentation sagt das der ClientLogin Mechanismus genau richtig für "installierte Anwendungen"
-        ist und der AuthSub Mechanismus für "Web Anwendungen". Der Unterschied ist, das AuthSub Interaktion vom
-        Benutzer benötigt, und ein Browser Interface das auf Weiterleitungs Anfragen reagieren kann. Die ClientLogin
-        Lösung verwendet PHP Code um die Benutzer Zugangsdaten zu liefern; der Benutzer wird nicht benötigt um seine
-        Zugangsdaten interaktiv einzugeben.
+        Die Google Dokumentation sagt das der ClientLogin Mechanismus genau richtig für
+        "installierte Anwendungen" ist und der AuthSub Mechanismus für "Web Anwendungen". Der
+        Unterschied ist, das AuthSub Interaktion vom Benutzer benötigt, und ein Browser Interface
+        das auf Weiterleitungs Anfragen reagieren kann. Die ClientLogin Lösung verwendet PHP Code um
+        die Benutzer Zugangsdaten zu liefern; der Benutzer wird nicht benötigt um seine Zugangsdaten
+        interaktiv einzugeben.
     </para>
 
     <para>
-        Die Account Zugangsdaten die über den ClientLogin Mechanismum geliefert werden müssen gültige Zugangsdaten
-        für Google Services sein, aber es müssen nicht die des Benutzers sein, der die PHP Anwendung verwendet.
+        Die Account Zugangsdaten die über den ClientLogin Mechanismum geliefert werden müssen
+        gültige Zugangsdaten für Google Services sein, aber es müssen nicht die des Benutzers sein,
+        der die PHP Anwendung verwendet.
     </para>
 
     <sect2 id="zend.gdata.clientlogin.login">
         <title>Erstellen eines ClientLogin autentifizierten Http Clienten</title>
 
         <para>
-            Der Prozess der Erstellung eines autentifizierten Http Clients durch Verwendung des ClientLogin
-            Mechanismus besteht darin die statische Funktion <classname>Zend_Gdata_ClientLogin::getHttpClient()</classname>
-            aufzurufen und die Google Account Zugangsdaten als reinen Text zu übergeben. Der Rückgabewert dieser
-            Funktion ist ein Objekt der Klasse <classname>Zend_Http_Client</classname>.
+            Der Prozess der Erstellung eines autentifizierten Http Clients durch Verwendung des
+            ClientLogin Mechanismus besteht darin die statische Funktion
+            <classname>Zend_Gdata_ClientLogin::getHttpClient()</classname> aufzurufen und die Google
+            Account Zugangsdaten als reinen Text zu übergeben. Der Rückgabewert dieser Funktion ist
+            ein Objekt der Klasse <classname>Zend_Http_Client</classname>.
         </para>
 
         <para>
-            Der optionale dritte Parameter ist der Name des Google Data Services. Zum Beispiel kann dieser 'cl'
-            sein für Google Calendar. Der Standardwert ist "xapi", welcher von den Google Data Servern als
-            generischer Service Name erkannt wird.
+            Der optionale dritte Parameter ist der Name des Google Data Services. Zum Beispiel kann
+            dieser 'cl' sein für Google Calendar. Der Standardwert ist "xapi", welcher von den
+            Google Data Servern als generischer Service Name erkannt wird.
         </para>
 
         <para>
-            Der optionale vierte Parameter ist eine Instanz von <classname>Zend_Http_Client</classname>. Das erlaubt das Setzen von Optionen
-            an den Client, wie z.B. Proxy Server Einstellungen. Wenn für diesen Parameter <code>null</code> übergeben
-            wird, wird ein generisches <classname>Zend_Http_Client</classname> Objekt erstellt.
+            Der optionale vierte Parameter ist eine Instanz von
+            <classname>Zend_Http_Client</classname>. Das erlaubt das Setzen von Optionen an den
+            Client, wie z.B. Proxy Server Einstellungen. Wenn für diesen Parameter <code>null</code>
+            übergeben wird, wird ein generisches <classname>Zend_Http_Client</classname> Objekt
+            erstellt.
         </para>
 
         <para>
-            Der optionale fünfte Parameter ist ein kurzer String den Google Data Server verwenden um die Client
-            Anwendung für logging Zwecke zu identifizieren. Standardmäßig ist dieser String "Zend-ZendFramework";
+            Der optionale fünfte Parameter ist ein kurzer String den Google Data Server verwenden um
+            die Client Anwendung für logging Zwecke zu identifizieren. Standardmäßig ist dieser
+            String "Zend-ZendFramework";
         </para>
 
         <para>
-            Der optionale sechste Parameter ist eine String ID für eine <trademark>CAPTCHA</trademark> Challenge
-            die vom Server angefordert wird. Er wird nur benötigt wenn eingeloggt werden soll nachdem eine
-            <trademark>CAPTCHA</trademark> Challenge von einem vorhergehenden Login Versuch empfangen wurde.
+            Der optionale sechste Parameter ist eine String ID für eine
+            <trademark>CAPTCHA</trademark> Challenge die vom Server angefordert wird. Er wird nur
+            benötigt wenn eingeloggt werden soll nachdem eine <trademark>CAPTCHA</trademark>
+            Challenge von einem vorhergehenden Login Versuch empfangen wurde.
         </para>
 
         <para>
             Der optionale siebente Parameter ist die Antwort des Benutzer's zu einer
-            <trademark>CAPTCHA</trademark> Challenge die von dem Server angefordert wurde. Er wird nur benötigt
-            wenn eingeloggt werden soll nachdem eine <trademark>CAPTCHA</trademark> Challenge von einem
-            vorhergehenden Login Versuch empfangen wurde.
+            <trademark>CAPTCHA</trademark> Challenge die von dem Server angefordert wurde. Er wird
+            nur benötigt wenn eingeloggt werden soll nachdem eine <trademark>CAPTCHA</trademark>
+            Challenge von einem vorhergehenden Login Versuch empfangen wurde.
         </para>
 
         <para>
-            Anbei ist ein Beispiel in PHP Code für eine Web Anwendung die Authentifizierung benötigt um das
-            Google Calendar Service zu verwenden und ein <classname>Zend_Gdata</classname> Client Objekt zu erstellen das diesen
-            authentifizierten <classname>Zend_Http_Client</classname> verwendet.
+            Anbei ist ein Beispiel in PHP Code für eine Web Anwendung die Authentifizierung benötigt
+            um das Google Calendar Service zu verwenden und ein <classname>Zend_Gdata</classname>
+            Client Objekt zu erstellen das diesen authentifizierten
+            <classname>Zend_Http_Client</classname> verwendet.
         </para>
 
         <programlisting role="php"><![CDATA[
@@ -96,10 +105,10 @@ $cal = new Zend_Gdata_Calendar($client);
         <title>Den über ClientLogin authentifizierten Http Client beenden</title>
 
         <para>
-            Es gibt keine Methode um ClientLogin Authentifizierungen zu verwerfen da es eine AuthSub token-basierte
-            Lösung gibt. Die Zugangsdaten die in der ClientLogin Authentifizierung verwendet werden sind der
-            Login und das Passwort zu einem Google Account, und deshalb können diese wiederholend in der Zukunft
-            verwendet werden.
+            Es gibt keine Methode um ClientLogin Authentifizierungen zu verwerfen da es eine AuthSub
+            token-basierte Lösung gibt. Die Zugangsdaten die in der ClientLogin Authentifizierung
+            verwendet werden sind der Login und das Passwort zu einem Google Account, und deshalb
+            können diese wiederholend in der Zukunft verwendet werden.
         </para>
 
     </sect2>