Updated installation, language files are automatically installed
This commit is contained in:
parent
54b4f78a75
commit
f0571e8004
8 changed files with 211 additions and 592 deletions
Binary file not shown.
BIN
system/plugins/installation-language.zip
Normal file
BIN
system/plugins/installation-language.zip
Normal file
Binary file not shown.
Binary file not shown.
|
@ -1,156 +0,0 @@
|
|||
# Datenstrom Yellow language
|
||||
|
||||
Language: de
|
||||
LanguageDescription: Deutsch
|
||||
LanguageTranslator: David Fehrmann
|
||||
LanguageVersion: 0.7.13
|
||||
|
||||
BlogBy: von
|
||||
BlogTag: Tags:
|
||||
BlogMore: Lies mehr…
|
||||
ContactName: Name:
|
||||
ContactEmail: E-Mail:
|
||||
ContactMessage: Nachricht:
|
||||
ContactConsent: Ich stimme zu, dass diese Webseite meine Nachricht speichert.
|
||||
ContactButton: Nachricht absenden
|
||||
ContactStatusNone: Sag Hallo! Dein Feedback ist sehr willkommen.
|
||||
ContactStatusIncomplete: Bitte alle Felder ausfüllen.
|
||||
ContactStatusInvalid: Bitte eine gültige E-Mail angeben.
|
||||
ContactStatusDone: Nachricht wurde versandt. Vielen Dank!
|
||||
ContactStatusError: Nachricht konnte nicht versandt werden, versuche es später erneut!
|
||||
DatePast: heute, gestern, vor @x Tagen, vor 1 Monat, vor @x Monaten, vor 1 Jahr, vor @x Jahren
|
||||
DateFuture: bald, morgen, in @x Tagen, in 1 Monat, in @x Monaten, in 1 Jahr, in @x Jahren
|
||||
DateMonths: Januar, Februar, März, April, Mai, Juni, Juli, August, September, Oktober, November, Dezember
|
||||
DateWeekdays: Montag, Dienstag, Mittwoch, Donnerstag, Freitag, Samstag, Sonntag
|
||||
DateWeekstart: Montag
|
||||
DateFormatShort: F Y
|
||||
DateFormatMedium: d.m.Y
|
||||
DateFormatLong: d.m.Y H:i
|
||||
EditInstallationTitle: Hallo
|
||||
EditInstallationFeature: Was willst du machen?
|
||||
EditInstallationHomePage: Deine Webseite funktioniert!\n\n[edit - Du kannst diese Seite bearbeiten] oder einen Texteditor benutzen.
|
||||
EditInstallationAboutPage: Diese Webseite ist erstellt mit [Datenstrom Yellow](https://datenstrom.se/de/yellow/). [edit - Anmelden].
|
||||
EditLoginTitle: Willkommen
|
||||
EditLoginEmail: E-Mail:
|
||||
EditLoginPassword: Kennwort:
|
||||
EditLoginForgot: Kennwort vergessen?
|
||||
EditLoginSignup: Benutzerkonto erstellen?
|
||||
EditLoginButton: Anmelden
|
||||
EditSignupTitle: Benutzerkonto erstellen
|
||||
EditSignupName: Name:
|
||||
EditSignupEmail: E-Mail:
|
||||
EditSignupPassword: Kennwort:
|
||||
EditSignupConsent: Ich stimme zu, dass diese Webseite meine persönlichen Daten speichert.
|
||||
EditSignupButton: Erstellen
|
||||
EditSignupStatusNone: Hier kannst du ein neues Benutzerkonto erstellen.
|
||||
EditSignupStatusIncomplete: Bitte alle Felder ausfüllen.
|
||||
EditSignupStatusInvalid: Bitte eine gültige E-Mail angeben.
|
||||
EditSignupStatusWeak: Bitte ein anderes Kennwort angeben.
|
||||
EditSignupStatusNext: Benutzerkonto wird erstellt, bitte überprüfe deine E-Mails.
|
||||
EditForgotTitle: Kennwort vergessen
|
||||
EditForgotEmail: E-Mail:
|
||||
EditForgotStatusNone: Kein Problem, du kannst ein neues Kennwort erstellen.
|
||||
EditForgotStatusInvalid: Bitte eine gültige E-Mail angeben.
|
||||
EditForgotStatusNext: Benutzerkonto wird wiederhergestellt, bitte überprüfe deine E-Mails.
|
||||
EditRecoverTitle: Kennwort vergessen
|
||||
EditRecoverPassword: Kennwort:
|
||||
EditRecoverStatusPassword: Bitte ein neues Kennwort angeben.
|
||||
EditRecoverStatusWeak: Bitte ein anderes Kennwort angeben.
|
||||
EditSettingsTitle: Einstellungen
|
||||
EditSettingsQuit: Du kannst dein Benutzerkonto jederzeit löschen.
|
||||
EditSettingsMore: Mehr…
|
||||
EditSettingsStatusInvalid: Bitte eine gültige E-Mail angeben.
|
||||
EditSettingsStatusTaken: Bitte eine andere E-Mail angeben.
|
||||
EditSettingsStatusWeak: Bitte ein anderes Kennwort angeben.
|
||||
EditSettingsStatusNext: Benutzerkonto wird geändert, bitte überprüfe deine E-Mails.
|
||||
EditQuitTitle: Benutzerkonto löschen
|
||||
EditQuitStatusNone: Bitte gib deinen Namen zur Bestätigung ein.
|
||||
EditQuitStatusMismatch: Bitte gib einen anderen Namen ein.
|
||||
EditQuitStatusNext: Benutzerkonto wird gelöscht, bitte überprüfe deine E-Mails.
|
||||
EditConfirmSubject: Benutzerkonto bestätigen
|
||||
EditConfirmMessage: Hallo @usershort,\n\nbitte bestätige dein Benutzerkonto. Klicke auf den folgenden Link.
|
||||
EditConfirmStatusDone: Benutzerkonto wurde bestätigt und wartet auf Genehmigung. Vielen Dank!
|
||||
EditApproveSubject: Benutzerkonto genehmigen
|
||||
EditApproveMessage: Hallo @usershort,\n\nbitte genehmige ein neues Benutzerkonto für @useraccount. Klicke auf den folgenden Link.
|
||||
EditApproveStatusDone: Benutzerkonto wurde genehmigt. Vielen Dank!
|
||||
EditReactivateSubject: Benutzerkonto reaktivieren
|
||||
EditReactivateMessage: Hallo @usershort,\n\nbitte reaktiviere dein Benutzerkonto. Es gab zu viele fehlgeschlagene Anmeldeversuche. Klicke auf den folgenden Link.
|
||||
EditReactivateStatusDone: Benutzerkonto wurde reaktiviert. Vielen Dank!
|
||||
EditRecoverSubject: Benutzerkonto wiederherstellen
|
||||
EditRecoverMessage: Hallo @usershort,\n\nbitte bestätige, dass du dein Kennwort vergessen hast. Klicke auf den folgenden Link.
|
||||
EditRecoverStatusDone: Benutzerkonto wurde wiederhergestellt. Vielen Dank!
|
||||
EditVerifySubject: Benutzerkonto bestätigen
|
||||
EditVerifyMessage: Hallo @usershort,\n\nbitte bestätige eine neue E-Mail für dein Benutzerkonto. Klicke auf den folgenden Link.
|
||||
EditVerifyStatusDone: Benutzerkonto wurde bestätigt. Vielen Dank!
|
||||
EditChangeSubject: Benutzerkonto ändern
|
||||
EditChangeMessage: Hallo @usershort,\n\nbitte bestätige, dass du dein Benutzerkonto ändern möchtest. Klicke auf den folgenden Link.
|
||||
EditChangeStatusDone: Benutzerkonto wurde geändert. Vielen Dank!
|
||||
EditRemoveSubject: Benutzerkonto löschen
|
||||
EditRemoveMessage: Hallo @usershort,\n\nbitte bestätige, dass du dein Benutzerkonto löschen möchtest. Klicke auf den folgenden Link.
|
||||
EditRemoveStatusDone: Benutzerkonto wurde gelöscht. Vielen Dank!
|
||||
EditWelcomeSubject: Willkommen
|
||||
EditWelcomeMessage: Hallo @usershort,\n\ndein Benutzerkonto wurde erstellt. Viel Spass beim Bearbeiten der Webseite.
|
||||
EditGoodbyeSubject: Auf Wiedersehen
|
||||
EditGoodbyeMessage: Hallo @usershort,\n\ndein Benutzerkonto wurde gelöscht. Mach's gut.
|
||||
EditVersionTitle: Über diese Webseite
|
||||
EditVersionStatusNone: Datenstrom Yellow ist für Menschen die Webseiten machen.
|
||||
EditVersionStatusCheck: Nach Aktualisierung suchen…
|
||||
EditVersionStatusDone: Deine Webseite ist auf dem neusten Stand.
|
||||
EditVersionStatusWarning: Aktualisierung verfügbar, bitte aktualisiere deine Webseite.
|
||||
EditVersionStatusUpdates: Aktualisierung verfügbar, jetzt aktualisieren.
|
||||
EditVersionUpdateForce: Aktualisierung erzwingen
|
||||
EditVersionUpdateModified: @software wurde modifiziert
|
||||
EditUploadProgress: [Datei hochladen…]
|
||||
EditOkButton: Ok
|
||||
EditCancelButton: Abbruch
|
||||
EditCreateButton: Erzeugen
|
||||
EditEditButton: Speichern
|
||||
EditDeleteButton: Löschen
|
||||
EditEdit: Seite bearbeiten
|
||||
EditCreate: +
|
||||
EditDelete: -
|
||||
EditToolbarPreview: Vorschau
|
||||
EditToolbarFormat: Format
|
||||
EditToolbarHeading: Überschrift
|
||||
EditToolbarH1: Überschrift 1
|
||||
EditToolbarH2: Überschrift 2
|
||||
EditToolbarH3: Überschrift 3
|
||||
EditToolbarParagraph: Normaler Text
|
||||
EditToolbarPre: Quellcode
|
||||
EditToolbarQuote: Zitat
|
||||
EditToolbarBold: Fettschrift
|
||||
EditToolbarItalic: Kursiv
|
||||
EditToolbarStrikethrough: Durchgestrichen
|
||||
EditToolbarCode: Code
|
||||
EditToolbarList: Liste
|
||||
EditToolbarUl: • Unsortierte Liste
|
||||
EditToolbarOl: 1. Sortierte Liste
|
||||
EditToolbarTl: ✓ Aufgabenliste
|
||||
EditToolbarLink: Link
|
||||
EditToolbarFile: Datei
|
||||
EditToolbarEmojiawesome: Emoji
|
||||
EditToolbarFontawesome: Symbol
|
||||
EditToolbarDraft: Entwurf
|
||||
EditToolbarUndo: Rückgängig
|
||||
EditToolbarRedo: Wiederholen
|
||||
EditToolbarMarkdown: Markdown
|
||||
EditToolbarHelp: Hilfe
|
||||
EditUserHelp: Hilfe
|
||||
EditUserLogout: Abmelden
|
||||
PagePrevious: ← Zurück: @title
|
||||
PageNext: Weiter: @title →
|
||||
PaginationPrevious: ← Zurück
|
||||
PaginationNext: Weiter →
|
||||
SearchResultsNone: Bitte einen Suchbegriff eingeben.
|
||||
SearchResultsEmpty: Keine Treffer für diese Suchanfrage.
|
||||
SearchSpecialChanges: Letzte Änderungen
|
||||
SearchButton: Suchen
|
||||
TimeFormatShort: H:i
|
||||
TimeFormatMedium: H:i:s
|
||||
TimeFormatLong: H:i:s T
|
||||
WikiTag: Tags:
|
||||
WikiSpecialPages: Alle Seiten
|
||||
WikiSpecialChanges: Letzte Änderungen
|
||||
YellowUrl: https://datenstrom.se/de/yellow/
|
||||
YellowHelpUrl: https://developers.datenstrom.se/de/help/
|
||||
YellowMarkdownUrl: https://developers.datenstrom.se/de/help/markdown-cheat-sheet
|
|
@ -1,156 +0,0 @@
|
|||
# Datenstrom Yellow language
|
||||
|
||||
Language: en
|
||||
LanguageDescription: English
|
||||
LanguageTranslator: Mark Seuffert
|
||||
LanguageVersion: 0.7.13
|
||||
|
||||
BlogBy: by
|
||||
BlogTag: Tags:
|
||||
BlogMore: Read more…
|
||||
ContactName: Name:
|
||||
ContactEmail: Email:
|
||||
ContactMessage: Message:
|
||||
ContactConsent: I consent that this website stores my message.
|
||||
ContactButton: Send message
|
||||
ContactStatusNone: Say hello. Your feedback is very welcome.
|
||||
ContactStatusIncomplete: Please fill out all fields.
|
||||
ContactStatusInvalid: Please enter a valid email.
|
||||
ContactStatusDone: You have sent an email. Thank you!
|
||||
ContactStatusError: Email could not be sent, please try again later!
|
||||
DatePast: today, yesterday, @x days ago, 1 month ago, @x months ago, 1 year ago, @x years ago
|
||||
DateFuture: soon, tomorrow, in @x days, in 1 month, in @x months, in 1 year, in @x years
|
||||
DateMonths: January, February, March, April, May, June, July, August, September, October, November, December
|
||||
DateWeekdays: Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday
|
||||
DateWeekstart: Monday
|
||||
DateFormatShort: F Y
|
||||
DateFormatMedium: Y-m-d
|
||||
DateFormatLong: Y-m-d H:i
|
||||
EditInstallationTitle: Hello
|
||||
EditInstallationFeature: What do you want to make?
|
||||
EditInstallationHomePage: Your website works!\n\n[edit - You can edit this page] or use your text editor.
|
||||
EditInstallationAboutPage: This website is made with [Datenstrom Yellow](https://datenstrom.se/yellow/). [edit - Log in].
|
||||
EditLoginTitle: Welcome
|
||||
EditLoginEmail: Email:
|
||||
EditLoginPassword: Password:
|
||||
EditLoginForgot: Forgot your password?
|
||||
EditLoginSignup: Create user account?
|
||||
EditLoginButton: Log in
|
||||
EditSignupTitle: Create user account
|
||||
EditSignupName: Name:
|
||||
EditSignupEmail: Email:
|
||||
EditSignupPassword: Password:
|
||||
EditSignupConsent: I consent that this website stores my personal data.
|
||||
EditSignupButton: Create
|
||||
EditSignupStatusNone: Here you can create a new user account.
|
||||
EditSignupStatusIncomplete: Please fill out all fields.
|
||||
EditSignupStatusInvalid: Please enter a valid email.
|
||||
EditSignupStatusWeak: Please enter a different password.
|
||||
EditSignupStatusNext: User account will be created, please check your emails.
|
||||
EditForgotTitle: Forgot your password
|
||||
EditForgotEmail: Email:
|
||||
EditForgotStatusNone: No problem, you can create a new password.
|
||||
EditForgotStatusInvalid: Please enter a valid email.
|
||||
EditForgotStatusNext: User account will be recovered, please check your emails.
|
||||
EditRecoverTitle: Forgot your password
|
||||
EditRecoverPassword: Password:
|
||||
EditRecoverStatusPassword: Please enter a new password.
|
||||
EditRecoverStatusWeak: Please enter a different password.
|
||||
EditSettingsTitle: Settings
|
||||
EditSettingsQuit: You can delete your user account anytime.
|
||||
EditSettingsMore: More…
|
||||
EditSettingsStatusInvalid: Please enter a valid email.
|
||||
EditSettingsStatusTaken: Please enter a different email.
|
||||
EditSettingsStatusWeak: Please enter a different password.
|
||||
EditSettingsStatusNext: User account will be changed, please check your emails.
|
||||
EditQuitTitle: Delete user account
|
||||
EditQuitStatusNone: Please enter your name to confirm.
|
||||
EditQuitStatusMismatch: Please enter a different name.
|
||||
EditQuitStatusNext: User account will be deleted, please check your emails.
|
||||
EditConfirmSubject: Confirm user account
|
||||
EditConfirmMessage: Hi @usershort,\n\nplease confirm your user account. Click the following link.
|
||||
EditConfirmStatusDone: User account confirmed and waiting for approval. Thank you!
|
||||
EditApproveSubject: Approve user account
|
||||
EditApproveMessage: Hi @usershort,\n\nplease approve a new user account for @useraccount. Click the following link.
|
||||
EditApproveStatusDone: User account approved. Thank you!
|
||||
EditReactivateSubject: Reactivate user account
|
||||
EditReactivateMessage: Hi @usershort,\n\nplease reactivate your user account. There were too many failed login attempts. Click the following link.
|
||||
EditReactivateStatusDone: User account reactivated. Thank you!
|
||||
EditRecoverSubject: Recover user account
|
||||
EditRecoverMessage: Hi @usershort,\n\nplease confirm that you forgot your password. Click the following link.
|
||||
EditRecoverStatusDone: User account recovered. Thank you!
|
||||
EditVerifySubject: Confirm user account
|
||||
EditVerifyMessage: Hi @usershort,\n\nplease confirm a new email for your user account. Click the following link.
|
||||
EditVerifyStatusDone: User account confirmed. Thank you!
|
||||
EditChangeSubject: Change user account
|
||||
EditChangeMessage: Hi @usershort,\n\nplease confirm that you want to change your user account. Click the following link.
|
||||
EditChangeStatusDone: User account changed. Thank you!
|
||||
EditRemoveSubject: Delete user account
|
||||
EditRemoveMessage: Hi @usershort,\n\nplease confirm that you want to delete your user account. Click the following link.
|
||||
EditRemoveStatusDone: User account deleted. Thank you!
|
||||
EditWelcomeSubject: Welcome
|
||||
EditWelcomeMessage: Hi @usershort,\n\nyour user account has been created. Have fun editing the website.
|
||||
EditGoodbyeSubject: Goodbye
|
||||
EditGoodbyeMessage: Hi @usershort,\n\nyour user account has been deleted. Take care.
|
||||
EditVersionTitle: About this website
|
||||
EditVersionStatusNone: Datenstrom Yellow is for people who make websites.
|
||||
EditVersionStatusCheck: Checking for updates…
|
||||
EditVersionStatusDone: Your website is up to date.
|
||||
EditVersionStatusWarning: Updates available, please update your website.
|
||||
EditVersionStatusUpdates: Updates available, update now.
|
||||
EditVersionUpdateForce: Force update
|
||||
EditVersionUpdateModified: @software has been modified
|
||||
EditUploadProgress: [Uploading file…]
|
||||
EditOkButton: Ok
|
||||
EditCancelButton: Cancel
|
||||
EditCreateButton: Create
|
||||
EditEditButton: Save
|
||||
EditDeleteButton: Delete
|
||||
EditEdit: Edit page
|
||||
EditCreate: +
|
||||
EditDelete: -
|
||||
EditToolbarPreview: Preview
|
||||
EditToolbarFormat: Format
|
||||
EditToolbarHeading: Heading
|
||||
EditToolbarH1: Heading 1
|
||||
EditToolbarH2: Heading 2
|
||||
EditToolbarH3: Heading 3
|
||||
EditToolbarParagraph: Normal text
|
||||
EditToolbarPre: Source code
|
||||
EditToolbarQuote: Quote
|
||||
EditToolbarBold: Bold
|
||||
EditToolbarItalic: Italic
|
||||
EditToolbarStrikethrough: Strikethrough
|
||||
EditToolbarCode: Code
|
||||
EditToolbarList: List
|
||||
EditToolbarUl: • Unordered list
|
||||
EditToolbarOl: 1. Ordered list
|
||||
EditToolbarTl: ✓ Task list
|
||||
EditToolbarLink: Link
|
||||
EditToolbarFile: File
|
||||
EditToolbarEmojiawesome: Emoji
|
||||
EditToolbarFontawesome: Icon
|
||||
EditToolbarDraft: Draft
|
||||
EditToolbarUndo: Undo
|
||||
EditToolbarRedo: Redo
|
||||
EditToolbarMarkdown: Markdown
|
||||
EditToolbarHelp: Help
|
||||
EditUserHelp: Help
|
||||
EditUserLogout: Logout
|
||||
PagePrevious: ← Previous: @title
|
||||
PageNext: Next: @title →
|
||||
PaginationPrevious: ← Previous
|
||||
PaginationNext: Next →
|
||||
SearchResultsNone: Enter a search term.
|
||||
SearchResultsEmpty: No results found.
|
||||
SearchSpecialChanges: Recent changes
|
||||
SearchButton: Search
|
||||
TimeFormatShort: H:i
|
||||
TimeFormatMedium: H:i:s
|
||||
TimeFormatLong: H:i:s T
|
||||
WikiTag: Tags:
|
||||
WikiSpecialPages: All pages
|
||||
WikiSpecialChanges: Recent changes
|
||||
YellowUrl: https://datenstrom.se/yellow/
|
||||
YellowHelpUrl: https://developers.datenstrom.se/help/
|
||||
YellowMarkdownUrl: https://developers.datenstrom.se/help/markdown-cheat-sheet
|
|
@ -1,156 +0,0 @@
|
|||
# Datenstrom Yellow language
|
||||
|
||||
Language: fr
|
||||
LanguageDescription: Français
|
||||
LanguageTranslator: Juh Nibreh
|
||||
LanguageVersion: 0.7.13
|
||||
|
||||
BlogBy: par
|
||||
BlogTag: Tags:
|
||||
BlogMore: Lire la suite…
|
||||
ContactName: Nom:
|
||||
ContactEmail: Email:
|
||||
ContactMessage: Message:
|
||||
ContactConsent: Je consens que ce site stocke mon message.
|
||||
ContactButton: Envoyer le message
|
||||
ContactStatusNone: Dites bonjour! Vos commentaires sont les bienvenus.
|
||||
ContactStatusIncomplete: S'il vous plaît, veuillez remplir tous les champs.
|
||||
ContactStatusInvalid: S'il vous plaît, veuillez entrer une adresse email valide.
|
||||
ContactStatusDone: Votre message a bien été envoyé. Merci!
|
||||
ContactStatusError: Votre message n'a pas pu être envoyé, réessayez plus tard s'il vous plaît!
|
||||
DatePast: aujourd'hui, hier, il y a @x jours, il ya 1 mois, il y a @x mois, il y a 1 an, il y a @x ans
|
||||
DateFuture: bientôt, demain, dans @x jours, en 1 mois, dans @x mois, en 1 an, dans @x ans
|
||||
DateMonths: janvier, février, mars, avril, mai, juin, juillet, août, septembre, octobre, novembre, décembre
|
||||
DateWeekdays: lundi, mardi, mercredi, jeudi, vendredi, samedi, dimanche
|
||||
DateWeekstart: lundi
|
||||
DateFormatShort: F Y
|
||||
DateFormatMedium: d/m/Y
|
||||
DateFormatLong: d/m/Y H:i
|
||||
EditInstallationTitle: Bonjour
|
||||
EditInstallationFeature: Que voulez-vous faire?
|
||||
EditInstallationHomePage: Votre site web fonctionne!\n\n[edit - Vous pouvez modifier cette page] ou utiliser un éditeur de texte.
|
||||
EditInstallationAboutPage: Ce site web est fait avec [Datenstrom Yellow](https://datenstrom.se/fr/yellow/). [edit - Se connecter].
|
||||
EditLoginTitle: Bienvenue
|
||||
EditLoginEmail: Email:
|
||||
EditLoginPassword: Mot de passe:
|
||||
EditLoginForgot: Mot de passe oublié?
|
||||
EditLoginSignup: Créer un compte utilisateur?
|
||||
EditLoginButton: Se connecter
|
||||
EditSignupTitle: Créer un compte utilisateur
|
||||
EditSignupName: Nom:
|
||||
EditSignupEmail: Email:
|
||||
EditSignupPassword: Mot de passe:
|
||||
EditSignupConsent: Je consens que ce site web stocke mes données personnelles.
|
||||
EditSignupButton: Créer
|
||||
EditSignupStatusNone: Ici, vous pouvez créer un nouveau compte utilisateur.
|
||||
EditSignupStatusIncomplete: Veuillez remplir tous les champs.
|
||||
EditSignupStatusInvalid: S'il vous plaît, veuillez entrer une adresse email valide.
|
||||
EditSignupStatusWeak: S'il vous plaît, choisissez un mot de passe différent.
|
||||
EditSignupStatusNext: Votre compte a été créé, vérifiez vos emails.
|
||||
EditForgotTitle: Mot de passe oublié
|
||||
EditForgotEmail: Email:
|
||||
EditForgotStatusNone: Pas de problème, vous pouvez créer un nouveau mot de passe.
|
||||
EditForgotStatusInvalid: S'il vous plaît, veuillez entrer une adresse email valide.
|
||||
EditForgotStatusNext: Votre compte est à nouveau disponible, vérifiez vos emails.
|
||||
EditRecoverTitle: Mot de passe oublié
|
||||
EditRecoverPassword: Mot de passe:
|
||||
EditRecoverStatusPassword: S'il vous plaît, choisissez un nouveau mot de passe.
|
||||
EditRecoverStatusWeak: S'il vous plaît, choisissez un mot de passe différent.
|
||||
EditSettingsTitle: Paramètres
|
||||
EditSettingsQuit: Vous pouvez supprimer votre compte d'utilisateur.
|
||||
EditSettingsMore: Plus…
|
||||
EditSettingsStatusInvalid: S'il vous plaît, veuillez entrer une adresse email valide.
|
||||
EditSettingsStatusTaken: S'il vous plaît, veuillez entrer une adresse email différent.
|
||||
EditSettingsStatusWeak: S'il vous plaît, choisissez un mot de passe différent.
|
||||
EditSettingsStatusNext: Votre compte a été changé, vérifiez vos emails.
|
||||
EditQuitTitle: Supprimer le compte d'utilisateur
|
||||
EditQuitStatusNone: S'il vous plaît entrez votre nom pour confirmer.
|
||||
EditQuitStatusMismatch: S'il vous plaît entrer un nom différent.
|
||||
EditQuitStatusNext: Votre compte sera supprimé, vérifier vos emails.
|
||||
EditConfirmSubject: Confirmation d'un compte utilisateur
|
||||
EditConfirmMessage: Bonjour @usershort,\n\nveuillez confirmer votre compte utilisateur. Cliquez sur le lien suivant.
|
||||
EditConfirmStatusDone: Votre compte utilisateur est confirmé et en attente d'approbation. Merci!
|
||||
EditApproveSubject: Approuver un nouvel utilisateur
|
||||
EditApproveMessage: Bonjour @usershort,\n\nveuillez approuver la création d'un nouveau compte utilisateur pour @useraccount. Cliquez sur le lien suivant.
|
||||
EditApproveStatusDone: Compte utilisateur approuvé. Merci!
|
||||
EditReactivateSubject: Réactivation d'un compte utilisateur
|
||||
EditReactivateMessage: Bonjour @usershort,\n\nveuillez réactivér votre compte utilisateur. Il y a eu trop de tentatives de connexion échouées. Cliquez sur le lien suivant.
|
||||
EditReactivateStatusDone: Compte d'utilisateur réactivé. Merci!
|
||||
EditRecoverSubject: Restauration d'un compte utilisateur
|
||||
EditRecoverMessage: Bonjour @usershort,\n\nveuillez confirmer que vous avez oublié votre mot de passe. Cliquez sur le lien suivant.
|
||||
EditRecoverStatusDone: Compte utilisateur restauré. Merci!
|
||||
EditVerifySubject: Confirmation d'un compte utilisateur
|
||||
EditVerifyMessage: Bonjour @usershort,\n\nveuillez confirmer une nouvelle adresse email pour votre compte utilisateur. Cliquez sur le lien suivant.
|
||||
EditVerifyStatusDone: Votre compte utilisateur est confirmé. Merci!
|
||||
EditChangeSubject: Changement d'un compte utilisateur
|
||||
EditChangeMessage: Bonjour @usershort,\n\nveuillez confirmer que vous souhaitez modifier votre compte utilisateur. Cliquez sur le lien suivant.
|
||||
EditChangeStatusDone: Compte utilisateur changé. Merci!
|
||||
EditRemoveSubject: Supprimer le compte d'utilisateur
|
||||
EditRemoveMessage: Bonjour @usershort,\n\nveuillez confirmer que vous souhaitez supprimer votre compte d'utilisateur. Cliquez sur le lien suivant.
|
||||
EditRemoveStatusDone: Compte d'utilisateur supprimé. Merci!
|
||||
EditWelcomeSubject: Bienvenue
|
||||
EditWelcomeMessage: Bonjour @usershort,\n\nvotre compte utilisateur a bien été créé. Amusez-vous bien en éditant le site web.
|
||||
EditGoodbyeSubject: Au revoir
|
||||
EditGoodbyeMessage: Bonjour @usershort,\n\nvotre compte utilisateur a bien été supprimé. Prends soin.
|
||||
EditVersionTitle: A propos de ce site
|
||||
EditVersionStatusNone: Datenstrom Yellow est fait pour les gens qui font des sites web.
|
||||
EditVersionStatusCheck: Vérification des mises à jour…
|
||||
EditVersionStatusDone: Votre site web est à jour.
|
||||
EditVersionStatusWarning: Mises à jour disponibles, veuillez mettre à jour votre site web.
|
||||
EditVersionStatusUpdates: Mises à jour disponibles, mettre à jour maintenant.
|
||||
EditVersionUpdateForce: Forcer mise à jour
|
||||
EditVersionUpdateModified: @software a été modifié
|
||||
EditUploadProgress: [Téléchargement du fichier…]
|
||||
EditOkButton: Ok
|
||||
EditCancelButton: Annuler
|
||||
EditCreateButton: Créer
|
||||
EditEditButton: Sauvegarder
|
||||
EditDeleteButton: Supprimer
|
||||
EditEdit: Éditer page
|
||||
EditCreate: +
|
||||
EditDelete: -
|
||||
EditToolbarPreview: Aperçu
|
||||
EditToolbarFormat: Format
|
||||
EditToolbarHeading: Titre
|
||||
EditToolbarH1: Titre 1
|
||||
EditToolbarH2: Titre 2
|
||||
EditToolbarH3: Titre 3
|
||||
EditToolbarParagraph: Texte normal
|
||||
EditToolbarPre: Code source
|
||||
EditToolbarQuote: Citation
|
||||
EditToolbarBold: Gras
|
||||
EditToolbarItalic: Italique
|
||||
EditToolbarStrikethrough: Barré
|
||||
EditToolbarCode: Code
|
||||
EditToolbarList: Liste
|
||||
EditToolbarUl: • Liste non ordonnée
|
||||
EditToolbarOl: 1. Liste commandée
|
||||
EditToolbarTl: ✓ Liste des tâches
|
||||
EditToolbarLink: Lien
|
||||
EditToolbarFile: Fichier
|
||||
EditToolbarEmojiawesome: Emoji
|
||||
EditToolbarFontawesome: Icone
|
||||
EditToolbarDraft: Brouillon
|
||||
EditToolbarUndo: Annuler
|
||||
EditToolbarRedo: Refaire
|
||||
EditToolbarMarkdown: Markdown
|
||||
EditToolbarHelp: Aide
|
||||
EditUserHelp: Aide
|
||||
EditUserLogout: Déconnexion
|
||||
PagePrevious: ← Précédent: @title
|
||||
PageNext: Suivant: @title →
|
||||
PaginationPrevious: ← Précédent
|
||||
PaginationNext: Suivant →
|
||||
SearchResultsNone: Entrez un mot dans le champ de recherche.
|
||||
SearchResultsEmpty: Pas de résultats.
|
||||
SearchSpecialChanges: Changements récents
|
||||
SearchButton: Rechercher
|
||||
TimeFormatShort: H:i
|
||||
TimeFormatMedium: H:i:s
|
||||
TimeFormatLong: H:i:s T
|
||||
WikiTag: Tags:
|
||||
WikiSpecialPages: Toutes les pages
|
||||
WikiSpecialChanges: Changements récents
|
||||
YellowUrl: https://datenstrom.se/fr/yellow/
|
||||
YellowHelpUrl: https://developers.datenstrom.se/fr/help/
|
||||
YellowMarkdownUrl: https://developers.datenstrom.se/fr/help/markdown-cheat-sheet
|
|
@ -1,10 +0,0 @@
|
|||
<?php
|
||||
// Language plugin, https://github.com/datenstrom/yellow-plugins/tree/master/language
|
||||
// Copyright (c) 2013-2018 Datenstrom, https://datenstrom.se
|
||||
// This file may be used and distributed under the terms of the public license.
|
||||
|
||||
class YellowLanguage {
|
||||
const VERSION = "0.7.13";
|
||||
}
|
||||
|
||||
$yellow->plugins->register("language", "YellowLanguage", YellowLanguage::VERSION);
|
|
@ -4,7 +4,7 @@
|
|||
// This file may be used and distributed under the terms of the public license.
|
||||
|
||||
class YellowUpdate {
|
||||
const VERSION = "0.7.19";
|
||||
const VERSION = "0.7.20";
|
||||
public $yellow; //access to API
|
||||
public $updates; //number of updates
|
||||
|
||||
|
@ -44,24 +44,21 @@ class YellowUpdate {
|
|||
|
||||
// Handle request
|
||||
public function onRequest($scheme, $address, $base, $location, $fileName) {
|
||||
$statusCode = 0;
|
||||
if ($this->yellow->config->get("installationMode")) {
|
||||
$statusCode = $this->processRequestInstallationMode($scheme, $address, $base, $location, $fileName);
|
||||
} else {
|
||||
$statusCode = $this->processRequestInstallationPending($scheme, $address, $base, $location, $fileName);
|
||||
}
|
||||
return $statusCode;
|
||||
return $this->processRequest($scheme, $address, $base, $location, $fileName);
|
||||
}
|
||||
|
||||
// Handle command
|
||||
public function onCommand($args) {
|
||||
list($command) = $args;
|
||||
switch ($command) {
|
||||
case "clean": $statusCode = $this->cleanCommand($args); break;
|
||||
case "install": $statusCode = $this->installCommand($args); break;
|
||||
case "uninstall": $statusCode = $this->uninstallCommand($args); break;
|
||||
case "update": $statusCode = $this->updateCommand($args); break;
|
||||
default: $statusCode = $this->processCommandInstallationPending($args); break;
|
||||
$statusCode = $this->processCommand();
|
||||
if ($statusCode==0) {
|
||||
list($command) = $args;
|
||||
switch ($command) {
|
||||
case "clean": $statusCode = $this->processCommandClean($args); break;
|
||||
case "install": $statusCode = $this->processCommandInstall($args); break;
|
||||
case "uninstall": $statusCode = $this->processCommandUninstall($args); break;
|
||||
case "update": $statusCode = $this->processCommandUpdate($args); break;
|
||||
default: $statusCode = 0; break;
|
||||
}
|
||||
}
|
||||
return $statusCode;
|
||||
}
|
||||
|
@ -74,8 +71,8 @@ class YellowUpdate {
|
|||
return $help;
|
||||
}
|
||||
|
||||
// Clean downloads
|
||||
public function cleanCommand($args) {
|
||||
// Process command to clean downloads
|
||||
public function processCommandClean($args) {
|
||||
$statusCode = 0;
|
||||
list($command, $path) = $args;
|
||||
if ($path=="all") {
|
||||
|
@ -89,8 +86,8 @@ class YellowUpdate {
|
|||
return $statusCode;
|
||||
}
|
||||
|
||||
// Install feature
|
||||
public function installCommand($args) {
|
||||
// Process command to install website features
|
||||
public function processCommandInstall($args) {
|
||||
list($command, $features) = $this->getCommandFeatures($args);
|
||||
if (!empty($features)) {
|
||||
$this->updates = 0;
|
||||
|
@ -106,8 +103,8 @@ class YellowUpdate {
|
|||
return $statusCode;
|
||||
}
|
||||
|
||||
// Uninstall feature
|
||||
public function uninstallCommand($args) {
|
||||
// Process command to uninstall website features
|
||||
public function processCommandUninstall($args) {
|
||||
list($command, $features) = $this->getCommandFeatures($args);
|
||||
if (!empty($features)) {
|
||||
$this->updates = 0;
|
||||
|
@ -122,8 +119,8 @@ class YellowUpdate {
|
|||
return $statusCode;
|
||||
}
|
||||
|
||||
// Update website
|
||||
public function updateCommand($args) {
|
||||
// Process command to update website
|
||||
public function processCommandUpdate($args) {
|
||||
list($command, $features, $force) = $this->getCommandFeatures($args);
|
||||
list($statusCode, $data) = $this->getUpdateInformation($features, $force);
|
||||
if ($statusCode!=200 || !empty($data)) {
|
||||
|
@ -307,7 +304,7 @@ class YellowUpdate {
|
|||
preg_match("/^\s*(.*?)\s*:\s*(.*?)\s*$/", $line, $matches);
|
||||
if (!empty($matches[1]) && !empty($matches[2])) {
|
||||
list($dummy, $entry) = explode("/", $matches[1], 2);
|
||||
list($fileName, $flags) = explode(",", $matches[2], 2);
|
||||
list($fileName) = explode(",", $matches[2], 2);
|
||||
if ($dummy[0]!="Y") $fileName = $matches[1]; //TODO: remove later, converts old file format
|
||||
if (is_file($fileName)) {
|
||||
$lastPublished = filemtime($fileName);
|
||||
|
@ -440,35 +437,96 @@ class YellowUpdate {
|
|||
return $statusCode;
|
||||
}
|
||||
|
||||
// Update installation features
|
||||
public function updateInstallationFeatures($feature) {
|
||||
// Update installation language, install best languages
|
||||
public function updateInstallationLanguage() {
|
||||
$statusCode = 200;
|
||||
$path = $this->yellow->config->get("pluginDir")."installation-language.zip";
|
||||
if (is_file($path)) {
|
||||
$zip = new ZipArchive();
|
||||
if ($zip->open($path)===true) {
|
||||
if (defined("DEBUG") && DEBUG>=2) echo "YellowUpdate::updateInstallationLanguage file:$path<br/>\n";
|
||||
$languages = $this->getInstallationLanguages("en, de, fr");
|
||||
if (preg_match("#^(.*\/).*?$#", $zip->getNameIndex(0), $matches)) $pathBase = $matches[1];
|
||||
$fileData = $zip->getFromName($pathBase.$this->yellow->config->get("updateInformationFile"));
|
||||
foreach ($this->yellow->toolbox->getTextLines($fileData) as $line) {
|
||||
preg_match("/^\s*(.*?)\s*:\s*(.*?)\s*$/", $line, $matches);
|
||||
if (!empty($matches[1]) && !empty($matches[2]) && strposu($matches[1], "/")) {
|
||||
list($dummy, $entry) = explode("/", $matches[1], 2);
|
||||
if (preg_match("/^language-(.*)\.txt$/", $entry, $tokens) && !is_null($languages[$tokens[1]])) {
|
||||
$languages[$tokens[1]] = $entry;
|
||||
}
|
||||
}
|
||||
}
|
||||
$languages = array_slice(array_filter($languages, "strlen"), 0, 3);
|
||||
foreach ($this->yellow->toolbox->getTextLines($fileData) as $line) {
|
||||
preg_match("/^\s*(.*?)\s*:\s*(.*?)\s*$/", $line, $matches);
|
||||
if (lcfirst($matches[1])=="plugin" || lcfirst($matches[1])=="theme") $software = $matches[2];
|
||||
if (lcfirst($matches[1])=="published") $modified = strtotime($matches[2]);
|
||||
if (!empty($matches[1]) && !empty($matches[2]) && strposu($matches[1], "/")) {
|
||||
list($dummy, $entry) = explode("/", $matches[1], 2);
|
||||
list($fileName) = explode(",", $matches[2], 2);
|
||||
$fileData = $zip->getFromName($pathBase.$entry);
|
||||
if (preg_match("/^language.php$/", $entry)) {
|
||||
$statusCode = $this->updateSoftwareFile($fileName, $fileData, $modified, 0, 0, "create,update", false, $software);
|
||||
}
|
||||
if (preg_match("/^language-(.*)\.txt$/", $entry, $tokens) && !is_null($languages[$tokens[1]])) {
|
||||
$statusCode = $this->updateSoftwareFile($fileName, $fileData, $modified, 0, 0, "create,update", false, $software);
|
||||
}
|
||||
}
|
||||
}
|
||||
$zip->close();
|
||||
if ($statusCode==200) {
|
||||
$this->yellow->text->load($this->yellow->config->get("pluginDir").$this->yellow->config->get("languageFile"), "");
|
||||
}
|
||||
if ($statusCode==200 && !$this->yellow->toolbox->deleteFile($path)) {
|
||||
$statusCode = 500;
|
||||
$this->yellow->page->error($statusCode, "Can't delete file '$path'!");
|
||||
}
|
||||
} else {
|
||||
$statusCode = 500;
|
||||
$this->yellow->page->error(500, "Can't open file '$path'!");
|
||||
}
|
||||
}
|
||||
return $statusCode;
|
||||
}
|
||||
|
||||
// Update installation feature, install requested feature
|
||||
public function updateInstallationFeature($feature) {
|
||||
$statusCode = 200;
|
||||
$path = $this->yellow->config->get("pluginDir");
|
||||
$regex = "/^.*\.installation$/";
|
||||
foreach ($this->yellow->toolbox->getDirectoryEntries($path, $regex, true, false) as $entry) {
|
||||
if (preg_match("/^(.*?)-(.*?)\./", basename($entry), $matches)) {
|
||||
if (strtoloweru($matches[2])==strtoloweru($feature)) {
|
||||
foreach ($this->yellow->toolbox->getDirectoryEntries($path, "/^.*\.zip$/", true, false) as $entry) {
|
||||
if (preg_match("/^installation-(.*?)\./", basename($entry), $matches)) {
|
||||
if (strtoloweru($matches[1])==strtoloweru($feature)) {
|
||||
$statusCode = max($statusCode, $this->updateSoftwareArchive($entry));
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($statusCode==200) {
|
||||
foreach ($this->yellow->toolbox->getDirectoryEntries($path, $regex, true, false) as $entry) {
|
||||
$this->yellow->toolbox->deleteFile($entry);
|
||||
foreach ($this->yellow->toolbox->getDirectoryEntries($path, "/^.*\.zip$/", true, false) as $entry) {
|
||||
if (preg_match("/^installation-(.*?)\./", basename($entry), $matches)) {
|
||||
if (!$this->yellow->toolbox->deleteFile($entry)) {
|
||||
$statusCode = 500;
|
||||
$this->yellow->page->error($statusCode, "Can't delete file '$entry'!");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return $statusCode;
|
||||
}
|
||||
|
||||
// Update installation page
|
||||
// Update installation page, convert into requested language
|
||||
public function updateInstallationPage($fileName, $name, $language) {
|
||||
$statusCode = 200;
|
||||
if ($language!="en") {
|
||||
$fileData = strreplaceu("\r\n", "\n", $this->yellow->toolbox->readFile($fileName));
|
||||
$titleOld = "Title: ".$this->yellow->text->getText("editInstallation{$name}Title", "en");
|
||||
$titleNew = "Title: ".$this->yellow->text->getText("editInstallation{$name}Title", $language);
|
||||
$rawDataOld = strreplaceu("\\n", "\n", $this->yellow->text->getText("editInstallation{$name}Page", "en"));
|
||||
$rawDataNew = strreplaceu("\\n", "\n", $this->yellow->text->getText("editInstallation{$name}Page", $language));
|
||||
if (!$this->yellow->toolbox->createFile($fileName, strreplaceu($rawDataOld, $rawDataNew, $fileData))) {
|
||||
$fileData = strreplaceu("\r\n", "\n", $this->yellow->toolbox->readFile($fileName));
|
||||
$fileData = strreplaceu($titleOld, $titleNew, $fileData);
|
||||
$fileData = strreplaceu($rawDataOld, $rawDataNew, $fileData);
|
||||
if (!$this->yellow->toolbox->createFile($fileName, $fileData)) {
|
||||
$statusCode = 500;
|
||||
$this->yellow->page->error($statusCode, "Can't write file '$fileName'!");
|
||||
}
|
||||
|
@ -486,6 +544,7 @@ class YellowUpdate {
|
|||
}
|
||||
++$this->updates;
|
||||
}
|
||||
if ($statusCode==200) $statusCode = $this->updateSoftwareNotification("YellowUpdate");
|
||||
return $statusCode;
|
||||
}
|
||||
|
||||
|
@ -504,87 +563,111 @@ class YellowUpdate {
|
|||
}
|
||||
return $statusCode;
|
||||
}
|
||||
|
||||
// Process command
|
||||
public function processCommand() {
|
||||
$statusCode = 0;
|
||||
if ($this->yellow->config->get("installationMode")) {
|
||||
$statusCode = $this->processCommandInstallationMode();
|
||||
} elseif ($this->isSoftwarePending()) {
|
||||
$statusCode = $this->processCommandInstallationPending();
|
||||
}
|
||||
return $statusCode;
|
||||
}
|
||||
|
||||
// Process command to install website
|
||||
public function processCommandInstallationMode() {
|
||||
$statusCode = $this->updateInstallationLanguage();
|
||||
if ($statusCode==200) $statusCode = $this->updateInstallationFeature("none");
|
||||
if ($statusCode!=200) echo "ERROR updating files: ".$this->yellow->page->get("pageError")."\n";
|
||||
echo "Yellow has ".($statusCode!=200 ? "not " : "")."been installed: Please run command again\n";
|
||||
return $statusCode;
|
||||
}
|
||||
|
||||
// Process command to install pending software
|
||||
public function processCommandInstallationPending($args) {
|
||||
public function processCommandInstallationPending() {
|
||||
$statusCode = $this->updateSoftware();
|
||||
if ($statusCode!=200) echo "ERROR updating files: ".$this->yellow->page->get("pageError")."\n";
|
||||
echo "Yellow has ".($statusCode!=200 ? "not " : "")."been updated: Please run command again\n";
|
||||
return $statusCode;
|
||||
}
|
||||
|
||||
// Process request
|
||||
public function processRequest($scheme, $address, $base, $location, $fileName) {
|
||||
$statusCode = 0;
|
||||
if ($this->isSoftwarePending()) {
|
||||
$statusCode = $this->updateSoftware();
|
||||
if ($statusCode!=200) echo "ERROR updating files: ".$this->yellow->page->get("pageError")."\n";
|
||||
echo "Yellow has ".($statusCode!=200 ? "not " : "")."been updated: Please run command again\n";
|
||||
if ($this->yellow->lookup->isContentFile($fileName) && !$this->yellow->isCommandLine()) {
|
||||
if ($this->yellow->config->get("installationMode")) {
|
||||
$statusCode = $this->processRequestInstallationMode($scheme, $address, $base, $location, $fileName);
|
||||
} elseif ($this->isSoftwarePending()) {
|
||||
$statusCode = $this->processRequestInstallationPending($scheme, $address, $base, $location, $fileName);
|
||||
}
|
||||
}
|
||||
return $statusCode;
|
||||
}
|
||||
|
||||
// Process request to install website
|
||||
public function processRequestInstallationMode($scheme, $address, $base, $location, $fileName) {
|
||||
$statusCode = 0;
|
||||
$name = trim(preg_replace("/[^\pL\d\-\. ]/u", "-", $_REQUEST["name"]));
|
||||
$email = trim($_REQUEST["email"]);
|
||||
$password = trim($_REQUEST["password"]);
|
||||
$language = trim($_REQUEST["language"]);
|
||||
$feature = trim($_REQUEST["feature"]);
|
||||
$status = trim($_REQUEST["status"]);
|
||||
$this->yellow->pages->pages["root/"] = array();
|
||||
$this->yellow->page = new YellowPage($this->yellow);
|
||||
$statusCode = $this->updateInstallationLanguage();
|
||||
$this->yellow->page->setRequestInformation($scheme, $address, $base, $location, $fileName);
|
||||
$this->yellow->page->parseData($this->getRawDataInstallation(), false, $statusCode, $this->yellow->page->get("pageError"));
|
||||
if ($status=="install") {
|
||||
$serverVersion = $this->yellow->toolbox->getServerVersion(true);
|
||||
$status = $this->checkServerRewrite($scheme, $address, $base, $location, $fileName) ? "ok" : "error";
|
||||
if ($status=="error") $this->yellow->page->error(500, "Rewrite module not working on $serverVersion web server!");
|
||||
}
|
||||
if ($status=="ok") {
|
||||
if (!empty($email) && !empty($password) && $this->yellow->plugins->isExisting("edit")) {
|
||||
$fileNameUser = $this->yellow->config->get("configDir").$this->yellow->config->get("editUserFile");
|
||||
$status = $this->yellow->plugins->get("edit")->users->save($fileNameUser, $email, $password, $name, $language) ? "ok" : "error";
|
||||
if ($status=="error") $this->yellow->page->error(500, "Can't write file '$fileNameUser'!");
|
||||
}
|
||||
}
|
||||
if ($status=="ok") {
|
||||
if (!empty($feature)) {
|
||||
$status = $this->updateInstallationFeature($feature)==200 ? "ok" : "error";
|
||||
if ($status=="error") $this->yellow->page->error(500, "Can't install feature '$feature'!");
|
||||
}
|
||||
}
|
||||
if ($status=="ok") {
|
||||
$fileNameHome = $this->yellow->lookup->findFileFromLocation("/");
|
||||
$status = $this->updateInstallationPage($fileNameHome, "Home", $language)==200 ? "ok" : "error";
|
||||
if ($status=="error") $this->yellow->page->error(500, "Can't write file '$fileNameHome'!");
|
||||
}
|
||||
if ($status=="ok") {
|
||||
$fileNameAbout = $this->yellow->lookup->findFileFromLocation("/about/");
|
||||
$status = $this->updateInstallationPage($fileNameAbout, "About", $language)==200 ? "ok" : "error";
|
||||
if ($status=="error") $this->yellow->page->error(500, "Can't write file '$fileNameAbout'!");
|
||||
}
|
||||
if ($status=="ok") {
|
||||
if ($this->yellow->config->get("sitename")=="Yellow") $_REQUEST["sitename"] = $name;
|
||||
$fileNameConfig = $this->yellow->config->get("configDir").$this->yellow->config->get("configFile");
|
||||
$status = $this->yellow->config->save($fileNameConfig, $this->getConfigData()) ? "done" : "error";
|
||||
if ($status=="error") $this->yellow->page->error(500, "Can't write file '$fileNameConfig'!");
|
||||
}
|
||||
if ($status=="done") {
|
||||
$location = $this->yellow->lookup->normaliseUrl($scheme, $address, $base, $location);
|
||||
$statusCode = $this->yellow->sendStatus(303, $location);
|
||||
} else {
|
||||
$statusCode = $this->yellow->sendPage();
|
||||
}
|
||||
return $statusCode;
|
||||
}
|
||||
|
||||
// Process request to install pending software
|
||||
public function processRequestInstallationPending($scheme, $address, $base, $location, $fileName) {
|
||||
$statusCode = 0;
|
||||
if ($this->yellow->lookup->isContentFile($fileName) && !$this->yellow->isCommandLine() && $this->isSoftwarePending()) {
|
||||
$statusCode = $this->updateSoftware();
|
||||
if ($statusCode==200) {
|
||||
$location = $this->yellow->lookup->normaliseUrl($scheme, $address, $base, $location);
|
||||
$statusCode = $this->yellow->sendStatus(303, $location);
|
||||
}
|
||||
}
|
||||
return $statusCode;
|
||||
}
|
||||
|
||||
// Process request to install website
|
||||
public function processRequestInstallationMode($scheme, $address, $base, $location, $fileName) {
|
||||
$statusCode = 0;
|
||||
if ($this->yellow->lookup->isContentFile($fileName) && !$this->yellow->isCommandLine()) {
|
||||
$this->yellow->pages->pages["root/"] = array();
|
||||
$this->yellow->page = new YellowPage($this->yellow);
|
||||
$this->yellow->page->setRequestInformation($scheme, $address, $base, $location, $fileName);
|
||||
$this->yellow->page->parseData($this->getRawDataInstallation(), false, 404);
|
||||
$this->yellow->page->parserSafeMode = false;
|
||||
$this->yellow->page->parseContent();
|
||||
$name = trim(preg_replace("/[^\pL\d\-\. ]/u", "-", $_REQUEST["name"]));
|
||||
$email = trim($_REQUEST["email"]);
|
||||
$password = trim($_REQUEST["password"]);
|
||||
$language = trim($_REQUEST["language"]);
|
||||
$feature = trim($_REQUEST["feature"]);
|
||||
$status = trim($_REQUEST["status"]);
|
||||
if ($status=="install") {
|
||||
$serverVersion = $this->yellow->toolbox->getServerVersion(true);
|
||||
$status = $this->checkServerRewrite($scheme, $address, $base, $location, $fileName) ? "ok" : "error";
|
||||
if ($status=="error") $this->yellow->page->error(500, "Rewrite module not working on $serverVersion web server!");
|
||||
}
|
||||
if ($status=="ok") {
|
||||
if (!empty($email) && !empty($password) && $this->yellow->plugins->isExisting("edit")) {
|
||||
$fileNameUser = $this->yellow->config->get("configDir").$this->yellow->config->get("editUserFile");
|
||||
$status = $this->yellow->plugins->get("edit")->users->save($fileNameUser, $email, $password, $name, $language) ? "ok" : "error";
|
||||
if ($status=="error") $this->yellow->page->error(500, "Can't write file '$fileNameUser'!");
|
||||
}
|
||||
}
|
||||
if ($status=="ok") {
|
||||
if (!empty($feature)) {
|
||||
$status = $this->updateInstallationFeatures($feature)==200 ? "ok" : "error";
|
||||
if ($status=="error") $this->yellow->page->error(500, "Can't install feature '$feature'!");
|
||||
}
|
||||
}
|
||||
if ($status=="ok") {
|
||||
$fileNameHome = $this->yellow->lookup->findFileFromLocation("/");
|
||||
$status = $this->updateInstallationPage($fileNameHome, "Home", $language)==200 ? "ok" : "error";
|
||||
if ($status=="error") $this->yellow->page->error(500, "Can't write file '$fileNameHome'!");
|
||||
}
|
||||
if ($status=="ok") {
|
||||
$fileNameAbout = $this->yellow->lookup->findFileFromLocation("/about/");
|
||||
$status = $this->updateInstallationPage($fileNameAbout, "About", $language)==200 ? "ok" : "error";
|
||||
if ($status=="error") $this->yellow->page->error(500, "Can't write file '$fileNameAbout'!");
|
||||
}
|
||||
if ($status=="ok") {
|
||||
if ($this->yellow->config->get("sitename")=="Yellow") $_REQUEST["sitename"] = $name;
|
||||
$fileNameConfig = $this->yellow->config->get("configDir").$this->yellow->config->get("configFile");
|
||||
$status = $this->yellow->config->save($fileNameConfig, $this->getConfigData()) ? "done" : "error";
|
||||
if ($status=="error") $this->yellow->page->error(500, "Can't write file '$fileNameConfig'!");
|
||||
}
|
||||
if ($status=="done") {
|
||||
$location = $this->yellow->lookup->normaliseUrl($scheme, $address, $base, $location);
|
||||
$statusCode = $this->yellow->sendStatus(303, $location);
|
||||
} else {
|
||||
$statusCode = $this->yellow->sendPage();
|
||||
}
|
||||
$statusCode = $this->updateSoftware();
|
||||
if ($statusCode==200) {
|
||||
$location = $this->yellow->lookup->normaliseUrl($scheme, $address, $base, $location);
|
||||
$statusCode = $this->yellow->sendStatus(303, $location);
|
||||
}
|
||||
return $statusCode;
|
||||
}
|
||||
|
@ -651,14 +734,28 @@ class YellowUpdate {
|
|||
$data["installationMode"] = "0";
|
||||
return $data;
|
||||
}
|
||||
|
||||
|
||||
// Return installation languages
|
||||
public function getInstallationLanguages($languagesDefault) {
|
||||
$data = array();
|
||||
if (isset($_SERVER["HTTP_ACCEPT_LANGUAGE"])) {
|
||||
foreach (preg_split("/\s*,\s*/", $_SERVER["HTTP_ACCEPT_LANGUAGE"]) as $string) {
|
||||
list($language) = explode(";", $string);
|
||||
if (!empty($language)) $data[$language] = "";
|
||||
}
|
||||
}
|
||||
foreach (preg_split("/\s*,\s*/", $languagesDefault) as $language) {
|
||||
if (!empty($language)) $data[$language] = "";
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
|
||||
// Return installation features
|
||||
public function getInstallationFeatures() {
|
||||
$data = array("website");
|
||||
$path = $this->yellow->config->get("pluginDir");
|
||||
$regex = "/^.*\.installation$/";
|
||||
foreach ($this->yellow->toolbox->getDirectoryEntries($path, $regex, true, false, false) as $entry) {
|
||||
if (preg_match("/^(.*?)-(.*?)\./", $entry, $matches)) array_push($data, $matches[2]);
|
||||
foreach ($this->yellow->toolbox->getDirectoryEntries($path, "/^.*\.zip$/", true, false, false) as $entry) {
|
||||
if (preg_match("/^installation-(.*?)\./", $entry, $matches) && $matches[1]!="language") array_push($data, $matches[1]);
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
|
@ -701,7 +798,7 @@ class YellowUpdate {
|
|||
preg_match("/^\s*(.*?)\s*:\s*(.*?)\s*$/", $line, $matches);
|
||||
if (!empty($matches[1]) && !empty($matches[2])) {
|
||||
list($software) = explode("/", $matches[1]);
|
||||
list($fileName, $flags) = explode(",", $matches[2], 2);
|
||||
list($fileName) = explode(",", $matches[2], 2);
|
||||
if (!is_null($data[$software])) $data[$software] .= ",";
|
||||
$data[$software] .= $fileName;
|
||||
}
|
||||
|
@ -784,9 +881,9 @@ class YellowUpdate {
|
|||
// Check if software pending
|
||||
public function isSoftwarePending() {
|
||||
$path = $this->yellow->config->get("pluginDir");
|
||||
$foundPlugins = count($this->yellow->toolbox->getDirectoryEntries($path, "/^.*\.zip$/", true, false))>0;
|
||||
$foundPlugins = count($this->yellow->toolbox->getDirectoryEntries($path, "/^.*\.zip$/", false, false))>0;
|
||||
$path = $this->yellow->config->get("themeDir");
|
||||
$foundThemes = count($this->yellow->toolbox->getDirectoryEntries($path, "/^.*\.zip$/", true, false))>0;
|
||||
$foundThemes = count($this->yellow->toolbox->getDirectoryEntries($path, "/^.*\.zip$/", false, false))>0;
|
||||
return $foundPlugins || $foundThemes;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue