File: Zend_Navigation-Pages-Common.xml

package info (click to toggle)
zendframework 1.12.9%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: jessie-kfreebsd
  • size: 133,584 kB
  • sloc: xml: 1,311,829; php: 570,173; sh: 170; makefile: 125; sql: 121
file content (263 lines) | stat: -rw-r--r-- 11,519 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
<?xml version="1.0" encoding="UTF-8"?>
<!-- EN-Revision: 24249 -->
<!-- Reviewed: no -->
<sect2 id="zend.navigation.pages.common">
    <title>Übliche Seiten Features</title>

    <para>
        Alle Seiten Klassen müssen <classname>Zend_Navigation_Page</classname> erweitern, und
        teilen deshalb ein übliches Set von Features und Eigenschaften. Am ehesten zu beachten
        ist, das Sie die Optionen in der anbei zu sehenden Tabelle und den gleichen
        Initialisierungs Prozess teilen.
    </para>

    <para>
        Options Schlüssel werden zu <code>set</code> Methoden gemappt. Das bedeutet das die Option
        <code>order</code> auf die Methode <methodname>setOrder()</methodname> gemappt wird, und
        <code>reset_params</code> auf die Methode <methodname>setResetParams()</methodname>. Wenn es
        keine Setter Methode für die Option gibt, wird diese als eigene Eigenschaft der Seite
        gesetzt.
    </para>

    <para>
        Lesen Sie mehr über das erweitern von <classname>Zend_Navigation_Page</classname> in
        <link linkend="zend.navigation.pages.custom">Erstellung eigener Seiten Typen</link>.
    </para>

    <table id="zend.navigation.pages.common.options">
        <title>Übliche Seiten Optionen</title>

        <tgroup cols="4">
            <thead>
                <row>
                    <entry>Schlüssel</entry>
                    <entry>Typ</entry>
                    <entry>Standardwert</entry>
                    <entry>Beschreibung</entry>
                </row>
            </thead>

            <tbody>
                <row>
                    <entry><code>label</code></entry>
                    <entry><type>String</type></entry>
                    <entry><constant>NULL</constant></entry>
                    <entry>Ein Seitenlabel, wie 'Home' oder 'Blog'.</entry>
                </row>

                <row>
                    <entry><code>id</code></entry>
                    <entry><type>String</type> | <code>int</code></entry>
                    <entry><constant>NULL</constant></entry>

                    <entry>
                        Ein Id Tag/Attribut das verwendet werden kann wenn die Seite dargestellt
                        wird, typischerweise in einem Anker Element.
                    </entry>
                </row>

                <row>
                    <entry><code>class</code></entry>
                    <entry><type>String</type></entry>
                    <entry><constant>NULL</constant></entry>

                    <entry>
                        Eine <acronym>CSS</acronym> Klasse die verwendet werden kann wenn die Seite
                        dargestellt wird, typischerweise ein Anker Element.
                    </entry>
                </row>

                <row>
                    <entry><code>title</code></entry>
                    <entry><type>String</type></entry>
                    <entry><constant>NULL</constant></entry>

                    <entry>
                        Eine kurze Seitenbeschreibung, typischerweise für die Verwendung als
                        <code>title</code> Attribut in einem Anker.
                    </entry>
                </row>

                <row>
                    <entry><code>target</code></entry>
                    <entry><type>String</type></entry>
                    <entry><constant>NULL</constant></entry>

                    <entry>
                        Spezifiziert ein Ziel das für die Seite verwendet werden kann,
                        typischerweise ein Anker Element.
                    </entry>
                </row>

                <row>
                    <entry><code>rel</code></entry>
                    <entry><type>Array</type></entry>
                    <entry><methodname>array()</methodname></entry>

                    <entry>
                        Spezifiziert die Weiterleitungs-Relation für die Seite. Jedes Element im
                        Array ist ein Schlüssel-Wert Paar, wobei der Schlüssel den Relation/Link
                        Typ bestimmt, und der Wert ist ein Pointer zu der verlinkten Seite. Ein
                        Beispiel eines Schlüssel-Wert Paares ist
                        <code>'alternate' => 'format/plain.html'</code>. Um die volle Flexibilität
                        zu erlauben, gibt es keine Einschränkungen an den Relationswerten. Der Wert
                        muß kein String sein. Lesen Sie über <code>rel</code> und <code>rev</code>
                        im <link linkend="zend.view.helpers.initial.navigation.links">Kapitel der
                        Link Helfer</link>.
                    </entry>
                </row>

                <row>
                    <entry><code>rev</code></entry>
                    <entry><type>Array</type></entry>
                    <entry><methodname>array()</methodname></entry>

                    <entry>
                        Spezifiziert die Rückwärts Relation für die Seite. Arbeitet genauso wie
                        <code>rel</code>.
                    </entry>
                </row>

                <row>
                    <entry><code>order</code></entry>

                    <entry>
                        <type>String</type> | <code>int</code> | <constant>NULL</constant>
                    </entry>

                    <entry><constant>NULL</constant></entry>

                    <entry>
                        Arbeitet die order für Elemente in
                        Works like order for elements in
                        <link linkend="zend.form.quickstart.render">
                        <classname>Zend_Form</classname></link>. Wenn spezifiziert, dann wird die
                        Seite in einer speziellen Reihenfolge durchlaufen, was bedeutet das man
                        eine Seite dazu zwingen kann das eine Seite vor anderen durchlaufen wird
                        indem das <code>order</code> Attribut auf eine kleinere Nummer gesetzt
                        wird, z.B. -100. Wenn ein <type>String</type> angegeben wird, muß dieser
                        in einen gültigen <code>int</code> aufgelöst werden können. Wenn
                        <constant>NULL</constant> angegeben wird, wird er zurückgesetzt, was
                        bedeutet dass die Reihenfolge verwendet wird mit der die Seite im
                        Container hinzugefügt wurde.
                    </entry>
                </row>

                <row>
                    <entry><code>resource</code></entry>

                    <entry>
                        <type>String</type> | <classname>Zend_Acl_Resource_Interface</classname> |
                        <constant>NULL</constant>
                    </entry>

                    <entry><constant>NULL</constant></entry>

                    <entry>
                        <acronym>ACL</acronym> Ressource die mit der Seite verknüpft werden soll.
                        Lesen Sie mehr im <link
                            linkend="zend.view.helpers.initial.navigation.acl">Kapitel
                            <acronym>ACL</acronym> Integration in View Helfern</link>.
                    </entry>
                </row>

                <row>
                    <entry><code>privilege</code></entry>
                    <entry><type>String</type> | <constant>NULL</constant></entry>
                    <entry><constant>NULL</constant></entry>

                    <entry>
                        <acronym>ACL</acronym> Privileg das mit der Seite assoziiert werden soll.
                        Lesen Sie mehr im <link
                            linkend="zend.view.helpers.initial.navigation.acl">Kapitel über
                            <acronym>ACL</acronym> Integration in View Helfern</link>.
                    </entry>
                </row>

                <row>
                    <entry><code>active</code></entry>
                    <entry><code>bool</code></entry>
                    <entry><constant>FALSE</constant></entry>

                    <entry>
                        Ob die Seite für die aktuelle Anfrage als aktiv betrachtet werden soll.
                        Wenn active <constant>FALSE</constant> ist oder nicht angegeben wird, werden
                        <acronym>MVC</acronym> Seiten Ihr Eigenschaften gegen das Anfrage Objekt
                        prüfen wenn <code>$page->isActive()</code> aufgerufen wird.
                    </entry>
                </row>

                <row>
                    <entry><code>visible</code></entry>
                    <entry><code>bool</code></entry>
                    <entry><constant>TRUE</constant></entry>

                    <entry>
                        Ob die Seite für den Benutzer sichtbar sein soll, oder nur ein Teil einer
                        Struktur ist. Unsichtbare Seiten werden von View Helfern übersprungen.
                    </entry>
                </row>

                <row>
                    <entry><code>pages</code></entry>

                    <entry>
                        <type>Array</type> | <classname>Zend_Config</classname> |
                        <constant>NULL</constant>
                    </entry>

                    <entry><constant>NULL</constant></entry>

                    <entry>
                        Kind Seiten der Seite. Das sollte ein <type>Array</type> oder
                        <classname>Zend_Config</classname> Objekt sein das entweder Seiten Optionen
                        enthält die in die <methodname>factory()</methodname> Methode übergeben
                        werden können, oder die aktuelle <classname>Zend_Navigation_Page</classname>
                        Instanz, oder einen Mix von beiden.
                    </entry>
                </row>
            </tbody>
        </tgroup>
    </table>

    <note>
        <title>Eigene Eigenschaften</title>

        <para>
            Alle Seiten unterstützen das Setzen und Empfangen von eigenen Eigenschaften durch
            Verwendung der magischen Methoden <methodname>__set($name, $value)</methodname>,
            <methodname>__get($name)</methodname>, <methodname>__isset($name)</methodname> und
            <methodname>__unset($name)</methodname>. Eigene Eigenschaften können jeden Wert haben,
            und sind im Array enthalten das von <code>$page->toArray()</code> zurückgegeben wird,
            was bedeutet das Seiten erfolgreich serialisiert/de-serialisiert werden können, selbst
            wenn die Seiten Eigenschaften enthalten die nicht nativ in der Seitenklasse sind.
        </para>

        <para>
            Sowohl native als auch eigene Eigenschaften können gesetzt werden indem
            <code>$page->set($name, $value)</code> verwendet und empfangen indem
            <code>$page->get($name)</code> verwendet wird, oder durch die Verwendung der
            magischen Methoden.
        </para>
    </note>

    <example id="zend.navigation.pages.common.example.customprops">
        <title>Eigene Seiten Eigenschaften</title>

        <para>
            Dieses Beispiel zeigt wie eigene Eigenschaften verwendet werden können.
        </para>

        <programlisting language="php"><![CDATA[
$page = new Zend_Navigation_Page_Mvc();
$page->foo = 'bar';
$page->meaning = 42;

echo $page->foo;

if ($page->meaning != 42) {
    // Eine Aktion sollte durchgeführt werden
}
]]></programlisting>
    </example>
</sect2>