3 # Copyright 2023 Paul Hänsch
5 # Permission to use, copy, modify, and/or distribute this software for any
6 # purpose with or without fee is hereby granted, provided that the above
7 # copyright notice and this permission notice appear in all copies.
9 # THE SOFTWARE IS PROVIDED “AS IS” AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
12 # SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15 # IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
19 'Page names containing newline character are not allowed') printf 'Seitennamen mit Zeilenumbruch sind nicht erlaubt';;
20 'Page names starting with "#" are not allowed') printf 'Seitennamen dürfen nicht mit "#" anfangen';;
21 'Formdata invalid') printf 'Formulardaten ungültig';;
22 'Page name required') printf 'Seitenname erforderlich';;
23 'Page exists already') printf 'Seite existiert schon';;
24 "You don't have permission to write to this page") printf 'Keine Berechtigung auf diese Seite zu schreiben';;
25 'Unable to lock page for editing') printf 'Kann Seite nicht zum bearbeiten sperren';;
26 'TRANSLATION NOT FOUND') printf 'Übersetzung nicht gefunden';;
27 'The presented URL schema cannot be handled') printf 'Das angegeben URL Schema kann nicht verarbeitet werden';;
28 'missing') printf 'fehlt';;
29 'outdated') printf 'veraltet';;
30 'current') printf 'aktuell';;
31 'View') printf 'Anzeigen';;
32 'Edit') printf 'Bearbeiten';;
33 'Attachments') printf 'Anhänge';;
34 'Revisions') printf 'Revisionen';;
35 'Rename') printf 'Umbenennen';;
36 'Move') printf 'Verschieben';;
37 'Delete') printf 'Löschen';;
38 'Update') printf 'Aktualisieren';;
39 'Cancel') printf 'Abbrechen';;
40 'Editor') printf 'Editor';;
41 'Syntax') printf 'Syntax';;
42 'page name') printf 'Seitenname';;
43 'Upload') printf 'Hochladen';;
44 'Move To:') printf 'Verschieben nach:';;
45 'Latest changes to the original language page') printf 'Letzte Änderungen der originalsprachlichen Seite';;
46 'GIT is not available to handle revisioning.') printf 'GIT steht nicht zur Verfügung um Revisionierung zu handhaben';;
47 '(never edited)') printf '(nie bearbeitet)';;
48 "Attachment rename") printf "Anhänge umbenennen";;
49 "Errors:") printf "Fehler:";;
50 "Files could not be renamed") printf "Dateien konnten nicht umbenannt werden";;
51 "Files were renamed") printf "Dateien wurden umbenannt";;
53 "Some files could not be renamed") printf "Einige Dateien konnten nicht umbenannt werden";;
54 "Successfully renamed:") printf "Erfolgreich umbenannt:";;
55 "A location of that name already exists.") printf "Ein Ort mit diesem Namen existiert bereits.";;
56 "A page of that name already exists at the given location.") printf "Eine Seite mit diesem namen gibt es schon am angegebenen Ort.";;
57 "The given location does not exist.") printf "Den angegebenen Ort gibt es nicht.";;
58 "Missing parameters.") printf "Fehlende Parameter.";;
59 "Pages deleted:") printf "Seiten gelöscht:";;
60 *) printf %s\\n "$*";;
66 user_register_email() { # TRANSLATION
67 "$SENDMAIL" -t -f "$MAILFROM" <<-EOF
70 Subject: Ihre Benutzeranmeldung für ${HTTP_HOST%:*}
72 Jemand hat versucht ein Benutzerkonto mit dieser Email-Adresse zu erstellen.
74 Sie können Ihr Benutzerkonto aktivieren, indem Sie auf diesen Link klicken:
76 ${SCHEMA}://${HTTP_HOST}${_BASE}${PATH_INFO}?user_confirm=${uid}+$(session_mac "$uid")
78 Der Registrierungslink wird nach $((USER_CONFIRMEXPIRE / 3600)) Stunden ungültig.
80 Falls Sie kein Konto bei ${HTTP_HOST%:*} beantragt haben, hat wahrscheinlich
81 jemand anderes versehentlich Ihre Emain-Adresse dort eingegeben. In diesem Fall
82 ignorieren Sie bitte diese Email und wir löschen Ihre Email-Adresse in den
83 nächsten Tagen aus unserer Datenbank.
85 Dies ist eine automatische Email. Eine direkte Antwort wird nicht empfangen.
87 Automat zur Kontenregistrierung.
90 user_invite_email(){ # TRANSLATION
91 "$SENDMAIL" -t -f "$MAILFROM" <<-EOF
94 Subject: Sie wurden zu ${HTTP_HOST%:*} eingeladen
96 ${USER_NAME:-Jemand} hat eine Einladung an diese Email-Adresse ausgesprochen.
100 Sie können Ihr Benutzerkonto aktivieren, indem Sie auf diesen Link klicken:
102 ${SCHEMA}://${HTTP_HOST}${_BASE}${PATH_INFO}?user_confirm=${uid}+$(session_mac "$uid")
104 Der Registrierungslink wird nach $((USER_CONFIRMEXPIRE / 3600)) Stunden ungültig.
106 Falls Sie nicht wissen worum es hier geht, hat wahrscheinlich jemand anderes
107 versehentlich Ihre Emain-Adresse dort eingegeben. In diesem Fall ignorieren
108 Sie bitte diese Email und wir löschen Ihre Email-Adresse in den nächsten
109 Tagen aus unserer Datenbank.
111 Dies ist eine automatische Email. Eine direkte Antwort wird nicht empfangen.
113 Automat zur Kontenregistrierung.
116 w_user_register_disabled(){ # TRANSLATION
118 [div #user_register .disabled
119 Die Registrierung von Benutzerkonten ist deaktiviert.
123 w_user_register_sendmail(){ # TRANSLATION
125 [form #user_register .registeremail method=POST
126 [p Wir schicken eine Aktivierungsmail an Ihre Email-Adresse.
127 Sie können mit der Registierung fortfahren, sobald Sie den
128 Aktivierungslink in dieser Email anklicken.]
129 [input type=email name=email placeholder="Email Adresse"]
130 [submit "action" "user_register" Registrieren]
134 w_user_register_direct(){ # TRANSLATION
136 [form #user_register .registername method=POST
137 [input name=uname placeholder="Benutzername wählen" tooltip="Ihr Benutzername darf jedes Zeichen, außer dem @-Zeichen enthalten. Er muss mindestens drei Zeichen lang sein und mit einem Buchstaben anfangen." pattern="^\[\\\\p{L}\]\[\\\\p{L}0-9 -~\]{2,127}$" autocomplete=off]
138 [input type=password name=pw placeholder="Passwort wählen" pattern=".{6,}"]
139 [input type=password name=pwconfirm placeholder="Passwort bestätigen" pattern=".{6,}"]
140 [submit "action" "user_register" Registrieren]
144 w_user_confirm_proceed(){ # TRANSLATION
146 [form #user_confirm method=POST
147 [input type=hidden name=uid value="${uid}"]
148 [input type=hidden name=signature value="${signature}"]
149 $([ "$EMAIL" != '\' ] && printf \
150 '[input disabled=disabled value="%s" placeholder="Email Adresse"]' "$(UNSTRING "$EMAIL" |HTML)"
152 [input name=uname placeholder="Benutzername wählen" tooltip="Ihr Benutzername darf jedes Zeichen, außer dem @-Zeichen enthalten. Er muss mindestens drei Zeichen lang sein und mit einem Buchstaben anfangen." pattern="^\[\\\\p{L}\]\[\\\\p{L}0-9 -~\]{2,127}$" autocomplete=off]
153 [input type=password name=pw placeholder="Passwort wählen" pattern=".{6,}"]
154 [input type=password name=pwconfirm placeholder="Passwort bestätigen" pattern=".{6,}"]
155 [submit "action" "user_confirm" Registrierung Abschließen]
159 w_user_confirm_expired(){ # TRANSLATION
161 [div #user_confirm .expired
162 [p Diser Aktivierungslink ist nicht mehr gültig.]
166 w_user_confirm_invalid(){ # TRANSLATION
168 [div #user_confirm .invalid
169 [p Dieser Aktivierungslink ist ungültig. Stellen Sie sicher, dass Sie den gesamten Aktivierungslink aus Ihrer Email kopiert haben und achten Sie darauf, keine Zeilenumbrüche mit zu kopieren.]
173 w_user_invite_email(){ # TRANSLATION
175 [form #user_invite method=POST
176 [input placeholder="Email-Empfänger" name=email autocomplete=off]
177 [textarea name="message" placeholder="Nachricht an Empfänger" . ]
178 [submit "action" "user_invite" Einladung Senden]
182 w_user_invite_link(){ # TRANSLATION
184 [div #user_invite .link
185 [p Ein anonymes Benutzerkonto wurde angelegt. Schicken Sie den folgenden Link an den vorgesehene Person, so dass sie ihr Benutzerkonto annehmen kann. Der Link ist für $((USER_CONFIRMEXPIRE / 3600)) Stunden gültig.]
186 [a href="$(HTML "$invlink")" . $(HTML "$invlink")]
188 [p [a href="#" . Ein weiteres Konto anlegen]]
192 w_user_invite_deny(){ # TRANSLATION
194 [div #user_invite .notallowed
195 Nur angemeldete Benutzer können einen Einladungslink an Andere versenden.
199 w_user_login_logon(){ # TRANSLATION
201 [form #user_login .login method=POST
202 [input name=uname placeholder="Benutzername oder Email-Adresse" autocomplete=off]
203 [input type=password name=pw placeholder="Passwort"]
204 [submit "action" "user_login" Anmelden]
208 w_user_login_logoff(){ # TRANSLATION
210 [form #user_login .logout method=POST
211 [p Logged in as [span . $(HTML ${USER_NAME})]]
212 [submit "action" "user_logout" Abmelden]
217 l10n_immutablepage(){ #TRANSLATION
219 <h1>Unveränderliche Seite</h1>
220 Dies ist eine Kernseite des Wikisystems. Name und Ort können nicht verändert werden.
221 Sie können jedoch den Inhalt der Seite ändern und Sie können ACLs nutzen um die Seite zu verstecken.
224 l10n_movepage(){ # TRANSLATION
226 <h1>Seite verschieben</h1>
227 <p class="pageid">$(HTML "${page}")</p>
228 <input name="newlocation" value="$(HTML "$location")" placeholder="Neuer Ort">
230 <li>Eine Seite mit dem selben Namen darf nicht schon vorhanden sein.</li>
231 <li>Sie müssen die Berechtigung haben, Seiten an diesem Ort anzulegen.</li>
232 <li>Alle Unterseiten werden unter dem neuen Pfad verfügbar gemacht.</li>
233 <li>Unterseiten werden unter ihrem aktuellen Pfad nicht mehr verfügbar sein.</li>
235 <button type=submit name=action value=move>Verschieben</button>
236 <button type=submit name=action value=cancel>Abbrechen</button>
239 l10n_renamepage(){ # TRANSLATION
241 <h1>Seite Umbenennen</h1>
242 <p class="pageid">$(HTML "${page}")</p>
243 <input name="newname" value="$(HTML "$name")" placeholder="Neuer Name">
245 <li>Eine Seite mit dem neuen Namen darf nicht schon vorhanden sein.</li>
246 <li>Sie müssen die Berechtigung haben, Seiten an diesem Ort anzulegen.</li>
247 <li>Alle Unterseiten werden unter dem neuen Pfad verfügbar gemacht.</li>
248 <li>Unterseiten werden unter ihrem aktuellen Pfad nicht mehr verfügbar sein.</li>
250 <button type=submit name=action value=rename>Umbenennen</button>
251 <button type=submit name=action value=cancel>Abbrechen</button>
254 l10n_deletepage(){ # TRANSLATION
256 <h1>Seite Löschen</h1>
257 <p class="pageid">$(HTML "${page}")</p>
258 <p>Diese Seite und all ihre Anhänge werden gelöscht.</p>
259 <input type=checkbox name=delete_subpages value=true id=delsub><label for=delsub>Unterseiten löschen</label>
262 [ "$REV_PAGES" = true ] \
263 && printf ' <li>Vergangene Revisionen der Seitentextes (einschließlich der aktuellen) bleiben verfügbar und können wiederhergestellt werden.</li>'
264 [ "$REV_PAGES" = true -a "$REV_ATTACHMENTS" = true ] \
265 && printf ' <li>Anhänge können ebenfalls wiederhergestellt werden.</li>' \
266 || printf ' <li>Anhänge werden vollständig gelöscht und können nicht wiederhergestellt werden.</li>'
268 <li class="delsub">Unterseiten sind nicht betroffen und bleiben normal verfügbar.</li>
270 <button type=submit name=action value=delete>Löschen</button>
271 <button type=submit name=action value=cancel>Abbrechen</button>