Merge pull request #6072 from appwrite/1.4.x

1.4 Fixes
This commit is contained in:
Jake Barnby 2023-08-31 00:31:59 -04:00 committed by GitHub
commit aced75fd05
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
93 changed files with 356 additions and 211 deletions

2
.gitmodules vendored
View file

@ -1,4 +1,4 @@
[submodule "app/console"] [submodule "app/console"]
path = app/console path = app/console
url = https://github.com/appwrite/console url = https://github.com/appwrite/console
branch = 3.0.1 branch = 3.0.2

View file

@ -1,3 +1,19 @@
# Version 1.4.1
## Features
- Add upgrade task [#6068](https://github.com/appwrite/appwrite/pull/6068)
## Fixes
- Fix VCS/migration/assistant scopes [#6071](https://github.com/appwrite/appwrite/pull/6071)
- Add missing parameters required for custom email templates [#6077](https://github.com/appwrite/appwrite/pull/6077)
- Fix `Call to a member function label() on null` error when using a custom domain [#6079](https://github.com/appwrite/appwrite/pull/6079)
## Changes
- Update console to 3.0.2 [#6071](https://github.com/appwrite/appwrite/pull/6071)
# Version 1.4.0 # Version 1.4.0
## Features ## Features

View file

@ -167,6 +167,7 @@ RUN chmod +x /usr/local/bin/doctor && \
chmod +x /usr/local/bin/maintenance && \ chmod +x /usr/local/bin/maintenance && \
chmod +x /usr/local/bin/usage && \ chmod +x /usr/local/bin/usage && \
chmod +x /usr/local/bin/install && \ chmod +x /usr/local/bin/install && \
chmod +x /usr/local/bin/upgrade && \
chmod +x /usr/local/bin/migrate && \ chmod +x /usr/local/bin/migrate && \
chmod +x /usr/local/bin/realtime && \ chmod +x /usr/local/bin/realtime && \
chmod +x /usr/local/bin/schedule && \ chmod +x /usr/local/bin/schedule && \

View file

@ -66,7 +66,7 @@ docker run -it --rm \
--volume /var/run/docker.sock:/var/run/docker.sock \ --volume /var/run/docker.sock:/var/run/docker.sock \
--volume "$(pwd)"/appwrite:/usr/src/code/appwrite:rw \ --volume "$(pwd)"/appwrite:/usr/src/code/appwrite:rw \
--entrypoint="install" \ --entrypoint="install" \
appwrite/appwrite:1.4.0 appwrite/appwrite:1.4.1
``` ```
### Windows ### Windows
@ -78,7 +78,7 @@ docker run -it --rm ^
--volume //var/run/docker.sock:/var/run/docker.sock ^ --volume //var/run/docker.sock:/var/run/docker.sock ^
--volume "%cd%"/appwrite:/usr/src/code/appwrite:rw ^ --volume "%cd%"/appwrite:/usr/src/code/appwrite:rw ^
--entrypoint="install" ^ --entrypoint="install" ^
appwrite/appwrite:1.4.0 appwrite/appwrite:1.4.1
``` ```
#### PowerShell #### PowerShell
@ -88,7 +88,7 @@ docker run -it --rm `
--volume /var/run/docker.sock:/var/run/docker.sock ` --volume /var/run/docker.sock:/var/run/docker.sock `
--volume ${pwd}/appwrite:/usr/src/code/appwrite:rw ` --volume ${pwd}/appwrite:/usr/src/code/appwrite:rw `
--entrypoint="install" ` --entrypoint="install" `
appwrite/appwrite:1.4.0 appwrite/appwrite:1.4.1
``` ```
运行后,可以在浏览器上访问 http://localhost 找到 Appwrite 控制台。在非 Linux 的本机主机上完成安装后,服务器可能需要几分钟才能启动。 运行后,可以在浏览器上访问 http://localhost 找到 Appwrite 控制台。在非 Linux 的本机主机上完成安装后,服务器可能需要几分钟才能启动。

View file

@ -75,7 +75,7 @@ docker run -it --rm \
--volume /var/run/docker.sock:/var/run/docker.sock \ --volume /var/run/docker.sock:/var/run/docker.sock \
--volume "$(pwd)"/appwrite:/usr/src/code/appwrite:rw \ --volume "$(pwd)"/appwrite:/usr/src/code/appwrite:rw \
--entrypoint="install" \ --entrypoint="install" \
appwrite/appwrite:1.4.0 appwrite/appwrite:1.4.1
``` ```
### Windows ### Windows
@ -87,7 +87,7 @@ docker run -it --rm ^
--volume //var/run/docker.sock:/var/run/docker.sock ^ --volume //var/run/docker.sock:/var/run/docker.sock ^
--volume "%cd%"/appwrite:/usr/src/code/appwrite:rw ^ --volume "%cd%"/appwrite:/usr/src/code/appwrite:rw ^
--entrypoint="install" ^ --entrypoint="install" ^
appwrite/appwrite:1.4.0 appwrite/appwrite:1.4.1
``` ```
#### PowerShell #### PowerShell
@ -97,7 +97,7 @@ docker run -it --rm `
--volume /var/run/docker.sock:/var/run/docker.sock ` --volume /var/run/docker.sock:/var/run/docker.sock `
--volume ${pwd}/appwrite:/usr/src/code/appwrite:rw ` --volume ${pwd}/appwrite:/usr/src/code/appwrite:rw `
--entrypoint="install" ` --entrypoint="install" `
appwrite/appwrite:1.4.0 appwrite/appwrite:1.4.1
``` ```
Once the Docker installation is complete, go to http://localhost to access the Appwrite console from your browser. Please note that on non-Linux native hosts, the server might take a few minutes to start after completing the installation. Once the Docker installation is complete, go to http://localhost to access the Appwrite console from your browser. Please note that on non-Linux native hosts, the server might take a few minutes to start after completing the installation.

View file

@ -51,7 +51,7 @@
<body style="direction: {{direction}}"> <body style="direction: {{direction}}">
<div style="max-width:650px; word-wrap: break-wrod; overflow-wrap: break-word; <div style="max-width:650px; word-wrap: break-word; overflow-wrap: break-word;
word-break: break-all; margin:0 auto;"> word-break: break-all; margin:0 auto;">
<table style="margin-top: 32px"> <table style="margin-top: 32px">
<tr> <tr>

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s span", "emails.sender": "%s span",
"emails.verification.subject": "Rekening Bevestiging", "emails.verification.subject": "Rekening Bevestiging",
"emails.verification.hello": "Goeie dag {{name}}", "emails.verification.hello": "Goeie dag {{user}}",
"emails.verification.body": "Volg hierdie skakel om u e-pos adres te bevestig.", "emails.verification.body": "Volg hierdie skakel om u e-pos adres te bevestig.",
"emails.verification.footer": "Ignoreer gerus hierdie boodskap as u nie die versoek gestuur het om u adres te bevestig nie.", "emails.verification.footer": "Ignoreer gerus hierdie boodskap as u nie die versoek gestuur het om u adres te bevestig nie.",
"emails.verification.thanks": "Baie dankie", "emails.verification.thanks": "Baie dankie",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Baie dankie", "emails.magicSession.thanks": "Baie dankie",
"emails.magicSession.signature": "Die {{project}} span", "emails.magicSession.signature": "Die {{project}} span",
"emails.recovery.subject": "Herstel Wagwoord", "emails.recovery.subject": "Herstel Wagwoord",
"emails.recovery.hello": "Goeie dag {{name}}", "emails.recovery.hello": "Goeie dag {{user}}",
"emails.recovery.body": "Volg hierdie skakel om u {{project}} wagwoord te herstel.", "emails.recovery.body": "Volg hierdie skakel om u {{project}} wagwoord te herstel.",
"emails.recovery.footer": "Ignoreer gerus hierdie boodskap as u nie die versoek gestuur het om u wagwoord te herstel nie.", "emails.recovery.footer": "Ignoreer gerus hierdie boodskap as u nie die versoek gestuur het om u wagwoord te herstel nie.",
"emails.recovery.thanks": "Baie dankie", "emails.recovery.thanks": "Baie dankie",

View file

@ -4,7 +4,7 @@
"settings.direction": "rtl", "settings.direction": "rtl",
"emails.sender": "فريق %s", "emails.sender": "فريق %s",
"emails.verification.subject": "تأكيد الحساب", "emails.verification.subject": "تأكيد الحساب",
"emails.verification.hello": "مرحبا {{name}}", "emails.verification.hello": "مرحبا {{user}}",
"emails.verification.body": "برجاء اتباع الرابط التالي لتأكيد بريدك الإلكتروني", "emails.verification.body": "برجاء اتباع الرابط التالي لتأكيد بريدك الإلكتروني",
"emails.verification.footer": "لو لم تطلب تأكيد هذا البريد الإلكتروني، يمكنك تجاهل هذه الرسالة", "emails.verification.footer": "لو لم تطلب تأكيد هذا البريد الإلكتروني، يمكنك تجاهل هذه الرسالة",
"emails.verification.thanks": "شكرا", "emails.verification.thanks": "شكرا",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "شكرا", "emails.magicSession.thanks": "شكرا",
"emails.magicSession.signature": "فريق {{project}}", "emails.magicSession.signature": "فريق {{project}}",
"emails.recovery.subject": "تغيير كلمة السر", "emails.recovery.subject": "تغيير كلمة السر",
"emails.recovery.hello": "أهلا {{name}}", "emails.recovery.hello": "أهلا {{user}}",
"emails.recovery.body": "برجاء اتباع الراط التالي لتغيير كلمة السر الخاصة بـ{{project}}", "emails.recovery.body": "برجاء اتباع الراط التالي لتغيير كلمة السر الخاصة بـ{{project}}",
"emails.recovery.footer": "لولم تطلب تغيير كلمة السر، يمكنك تجاهل هذه الرسالة", "emails.recovery.footer": "لولم تطلب تغيير كلمة السر، يمكنك تجاهل هذه الرسالة",
"emails.recovery.thanks": "شكرا", "emails.recovery.thanks": "شكرا",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s দল", "emails.sender": "%s দল",
"emails.verification.subject": "একাউণ্ট প্ৰমাণীকৰণ", "emails.verification.subject": "একাউণ্ট প্ৰমাণীকৰণ",
"emails.verification.hello": "নমস্কাৰ {{name}}", "emails.verification.hello": "নমস্কাৰ {{user}}",
"emails.verification.body": "আপোনাৰ ইমেইল ঠিকনা প্ৰমাণিত কৰিবলৈ এই লিংকটো অনুসৰণ কৰক।", "emails.verification.body": "আপোনাৰ ইমেইল ঠিকনা প্ৰমাণিত কৰিবলৈ এই লিংকটো অনুসৰণ কৰক।",
"emails.verification.footer": "যদি আপুনি এই ঠিকনাটো সত্যাপিত কৰিবলৈ কোৱা নাই, আপুনি এই বাৰ্তাটো উপেক্ষা কৰিব পাৰে।", "emails.verification.footer": "যদি আপুনি এই ঠিকনাটো সত্যাপিত কৰিবলৈ কোৱা নাই, আপুনি এই বাৰ্তাটো উপেক্ষা কৰিব পাৰে।",
"emails.verification.thanks": "ধন্যবাদ", "emails.verification.thanks": "ধন্যবাদ",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "ধন্যবাদ", "emails.magicSession.thanks": "ধন্যবাদ",
"emails.magicSession.signature": "{{project}} দল", "emails.magicSession.signature": "{{project}} দল",
"emails.recovery.subject": "পাছৱাৰ্ড ৰিছেট", "emails.recovery.subject": "পাছৱাৰ্ড ৰিছেট",
"emails.recovery.hello": "ধন্যবাদ {{name}}", "emails.recovery.hello": "ধন্যবাদ {{user}}",
"emails.recovery.body": "আপোনাৰ {{project}} পাছৱৰ্ড ৰিছেট কৰিবলৈ এই লিংকটো অনুসৰণ কৰক।.", "emails.recovery.body": "আপোনাৰ {{project}} পাছৱৰ্ড ৰিছেট কৰিবলৈ এই লিংকটো অনুসৰণ কৰক।.",
"emails.recovery.footer": "যদি আপুনি আপোনাৰ পাছৱৰ্ড ৰিছেট কৰিবলৈ কোৱা নাছিল, আপুনি এই বাৰ্তাটো উপেক্ষা কৰিব পাৰে।", "emails.recovery.footer": "যদি আপুনি আপোনাৰ পাছৱৰ্ড ৰিছেট কৰিবলৈ কোৱা নাছিল, আপুনি এই বাৰ্তাটো উপেক্ষা কৰিব পাৰে।",
"emails.recovery.thanks": "ধন্যবাদ", "emails.recovery.thanks": "ধন্যবাদ",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s Komandası", "emails.sender": "%s Komandası",
"emails.verification.subject": "Hesab Doğrulama", "emails.verification.subject": "Hesab Doğrulama",
"emails.verification.hello": "Salam {{name}}", "emails.verification.hello": "Salam {{user}}",
"emails.verification.body": "E-poçt ünvanınızı təsdiq etmək üçün bu linki izləyin.", "emails.verification.body": "E-poçt ünvanınızı təsdiq etmək üçün bu linki izləyin.",
"emails.verification.footer": "Bu ünvanı doğrulamağı xahiş etməmisinizsə, bu mesajı gözardı edə bilərsiniz.", "emails.verification.footer": "Bu ünvanı doğrulamağı xahiş etməmisinizsə, bu mesajı gözardı edə bilərsiniz.",
"emails.verification.thanks": "Təşəkkürlər", "emails.verification.thanks": "Təşəkkürlər",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Təşəkkürlər", "emails.magicSession.thanks": "Təşəkkürlər",
"emails.magicSession.signature": "{{project}} komandası", "emails.magicSession.signature": "{{project}} komandası",
"emails.recovery.subject": "Şifrə Sıfırlanması", "emails.recovery.subject": "Şifrə Sıfırlanması",
"emails.recovery.hello": "Salam {{name}}", "emails.recovery.hello": "Salam {{user}}",
"emails.recovery.body": "{{project}} şifrənizi sıfırlamaq üçün bu linki izləyin.", "emails.recovery.body": "{{project}} şifrənizi sıfırlamaq üçün bu linki izləyin.",
"emails.recovery.footer": "Şifrənizi sıfırlamağı xahiş etməmisinizsə, bu mesajı gözardı edə bilərsiniz.", "emails.recovery.footer": "Şifrənizi sıfırlamağı xahiş etməmisinizsə, bu mesajı gözardı edə bilərsiniz.",
"emails.recovery.thanks": "Təşəkkürlər", "emails.recovery.thanks": "Təşəkkürlər",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "Каманда %s", "emails.sender": "Каманда %s",
"emails.verification.subject": "Верыфікацыя акаўнта", "emails.verification.subject": "Верыфікацыя акаўнта",
"emails.verification.hello": "Прывітанне {{name}}", "emails.verification.hello": "Прывітанне {{user}}",
"emails.verification.body": "Перайдзіце па гэтай спасылцы, каб пацвердзіць свой адрас электроннай пошты", "emails.verification.body": "Перайдзіце па гэтай спасылцы, каб пацвердзіць свой адрас электроннай пошты",
"emails.verification.footer": "Калі вы не запытвалі пацвярджэнне гэтага адрасу, праігнаруйце гэтае паведамленне.", "emails.verification.footer": "Калі вы не запытвалі пацвярджэнне гэтага адрасу, праігнаруйце гэтае паведамленне.",
"emails.verification.thanks": "Дзякуем", "emails.verification.thanks": "Дзякуем",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Дзякуем", "emails.magicSession.thanks": "Дзякуем",
"emails.magicSession.signature": "каманда {{project}}", "emails.magicSession.signature": "каманда {{project}}",
"emails.recovery.subject": "Скід пароля", "emails.recovery.subject": "Скід пароля",
"emails.recovery.hello": "Прывітанне, {{name}}", "emails.recovery.hello": "Прывітанне, {{user}}",
"emails.recovery.body": "Перайдзіце па гэтай спасылцы, каб скінуць пароль для праекта {{project}}.", "emails.recovery.body": "Перайдзіце па гэтай спасылцы, каб скінуць пароль для праекта {{project}}.",
"emails.recovery.footer": "Калі вы не прасілі скінуць пароль, вы можаце праігнараваць гэта паведамленне.", "emails.recovery.footer": "Калі вы не прасілі скінуць пароль, вы можаце праігнараваць гэта паведамленне.",
"emails.recovery.thanks": "Дзякуем", "emails.recovery.thanks": "Дзякуем",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s टीम", "emails.sender": "%s टीम",
"emails.verification.subject": "खाता प्रमाणिकरण", "emails.verification.subject": "खाता प्रमाणिकरण",
"emails.verification.hello": "नमस्ते {{name}}", "emails.verification.hello": "नमस्ते {{user}}",
"emails.verification.body": "ईमेल प्रमाणिकरण करे क लेल दिहल गइल लिंक फॉलो करें|", "emails.verification.body": "ईमेल प्रमाणिकरण करे क लेल दिहल गइल लिंक फॉलो करें|",
"emails.verification.footer": "अगर ई पता को सत्यापित करे के लिए ना कहाले, तो आप ई संदेश क अनदेखा कर सकत अछि।", "emails.verification.footer": "अगर ई पता को सत्यापित करे के लिए ना कहाले, तो आप ई संदेश क अनदेखा कर सकत अछि।",
"emails.verification.thanks": "धन्यवाद", "emails.verification.thanks": "धन्यवाद",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "धन्यवाद", "emails.magicSession.thanks": "धन्यवाद",
"emails.magicSession.signature": "{{project}} टीम", "emails.magicSession.signature": "{{project}} टीम",
"emails.recovery.subject": "पासवर्ड बदल क लेल|", "emails.recovery.subject": "पासवर्ड बदल क लेल|",
"emails.recovery.hello": "प्रणाम {{name}}", "emails.recovery.hello": "प्रणाम {{user}}",
"emails.recovery.body": "पासवर्ड बदल क लेल दिहल गइल लिंक फॉलो करें|", "emails.recovery.body": "पासवर्ड बदल क लेल दिहल गइल लिंक फॉलो करें|",
"emails.recovery.footer": "अगर पासवर्ड बदल क लेल ना कहाले, तो आप ई संदेश क अनदेखा कर सकत अछि।", "emails.recovery.footer": "अगर पासवर्ड बदल क लेल ना कहाले, तो आप ई संदेश क अनदेखा कर सकत अछि।",
"emails.recovery.thanks": "धन्यवाद", "emails.recovery.thanks": "धन्यवाद",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s টীম", "emails.sender": "%s টীম",
"emails.verification.subject": "বিষয়", "emails.verification.subject": "বিষয়",
"emails.verification.hello": "নমস্কার {{name}}", "emails.verification.hello": "নমস্কার {{user}}",
"emails.verification.body": "এই লিঙ্কের মাধ্যমে ইমেইল যাচাই করুন।", "emails.verification.body": "এই লিঙ্কের মাধ্যমে ইমেইল যাচাই করুন।",
"emails.verification.footer": "আপনি যদি এই ঠিকানা যাচাই করতে না বলেন, তাহলে আপনি এই বার্তাটি উপেক্ষা করতে পারেন।", "emails.verification.footer": "আপনি যদি এই ঠিকানা যাচাই করতে না বলেন, তাহলে আপনি এই বার্তাটি উপেক্ষা করতে পারেন।",
"emails.verification.thanks": "ধন্যবাদ", "emails.verification.thanks": "ধন্যবাদ",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "ধন্যবাদ", "emails.magicSession.thanks": "ধন্যবাদ",
"emails.magicSession.signature": "{{project}} টীম", "emails.magicSession.signature": "{{project}} টীম",
"emails.recovery.subject": "পাসওয়ার্ড রিসেট", "emails.recovery.subject": "পাসওয়ার্ড রিসেট",
"emails.recovery.hello": "নমস্কার {{name}}", "emails.recovery.hello": "নমস্কার {{user}}",
"emails.recovery.body": "এই লিঙ্কের মাধ্যমে আপনার {{project}} পাসওয়ার্ড পুনরায় সেট করুন।", "emails.recovery.body": "এই লিঙ্কের মাধ্যমে আপনার {{project}} পাসওয়ার্ড পুনরায় সেট করুন।",
"emails.recovery.footer": "আপনি যদি আপনার পাসওয়ার্ড পুনরায় সেট করতে না বলেন, তাহলে আপনি এই বার্তাটি উপেক্ষা করতে পারেন।", "emails.recovery.footer": "আপনি যদি আপনার পাসওয়ার্ড পুনরায় সেট করতে না বলেন, তাহলে আপনি এই বার্তাটি উপেক্ষা করতে পারেন।",
"emails.recovery.thanks": "ধন্যবাদ", "emails.recovery.thanks": "ধন্যবাদ",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s Equip", "emails.sender": "%s Equip",
"emails.verification.subject": "Verificació del compte", "emails.verification.subject": "Verificació del compte",
"emails.verification.hello": "Hola {{name}}", "emails.verification.hello": "Hola {{user}}",
"emails.verification.body": "Accedeix a aquest enllaç per tal de verificar la teva adreça electrònica.", "emails.verification.body": "Accedeix a aquest enllaç per tal de verificar la teva adreça electrònica.",
"emails.verification.footer": "Si no has sol·licitat la verificació d'aquesta adreça electrònica, pots ignorar aquest missatge.", "emails.verification.footer": "Si no has sol·licitat la verificació d'aquesta adreça electrònica, pots ignorar aquest missatge.",
"emails.verification.thanks": "Gràcies", "emails.verification.thanks": "Gràcies",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Gràcies", "emails.magicSession.thanks": "Gràcies",
"emails.magicSession.signature": "Equip {{project}}", "emails.magicSession.signature": "Equip {{project}}",
"emails.recovery.subject": "Reinicialitzar contrasenya", "emails.recovery.subject": "Reinicialitzar contrasenya",
"emails.recovery.hello": "Hola {{name}}", "emails.recovery.hello": "Hola {{user}}",
"emails.recovery.body": "Accedeix a aquest enllaç per a reinicialitzar la teva contrasenya de {{project}}.", "emails.recovery.body": "Accedeix a aquest enllaç per a reinicialitzar la teva contrasenya de {{project}}.",
"emails.recovery.footer": "Si no has sol·licitat reinicialitzar la teva contrasenya, pots ignorar aquest missatge.", "emails.recovery.footer": "Si no has sol·licitat reinicialitzar la teva contrasenya, pots ignorar aquest missatge.",
"emails.recovery.thanks": "Gràcies", "emails.recovery.thanks": "Gràcies",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s Team", "emails.sender": "%s Team",
"emails.verification.subject": "Konto Verifikation", "emails.verification.subject": "Konto Verifikation",
"emails.verification.hello": "Hej {{name}}", "emails.verification.hello": "Hej {{user}}",
"emails.verification.body": "Følg dette link, for at verificere din email adresse.", "emails.verification.body": "Følg dette link, for at verificere din email adresse.",
"emails.verification.footer": "Hvis du ikke har bedt om at verificere denne adresse, ignorer venligst denne besked.", "emails.verification.footer": "Hvis du ikke har bedt om at verificere denne adresse, ignorer venligst denne besked.",
"emails.verification.thanks": "Tak", "emails.verification.thanks": "Tak",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Tak", "emails.magicSession.thanks": "Tak",
"emails.magicSession.signature": "{{project}} team", "emails.magicSession.signature": "{{project}} team",
"emails.recovery.subject": "Nulstil Password", "emails.recovery.subject": "Nulstil Password",
"emails.recovery.hello": "Hej {{name}}", "emails.recovery.hello": "Hej {{user}}",
"emails.recovery.body": "Følg dette link for at nulstille koden til {{project}}.", "emails.recovery.body": "Følg dette link for at nulstille koden til {{project}}.",
"emails.recovery.footer": "Hvis du ikke har bedt om at nulstille dit password, ignorer venligst denne besked.", "emails.recovery.footer": "Hvis du ikke har bedt om at nulstille dit password, ignorer venligst denne besked.",
"emails.recovery.thanks": "Tak", "emails.recovery.thanks": "Tak",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s Team", "emails.sender": "%s Team",
"emails.verification.subject": "Kontoverifizierung", "emails.verification.subject": "Kontoverifizierung",
"emails.verification.hello": "Hey {{name}}", "emails.verification.hello": "Hey {{user}}",
"emails.verification.body": "Folge diesem Link, um deine E-Mail-Adresse zu bestätigen.", "emails.verification.body": "Folge diesem Link, um deine E-Mail-Adresse zu bestätigen.",
"emails.verification.footer": "Solltest du keine Verifizierung dieser E-Mail-Adresse angefordert haben, kannst du diese Nachricht ignorieren.", "emails.verification.footer": "Solltest du keine Verifizierung dieser E-Mail-Adresse angefordert haben, kannst du diese Nachricht ignorieren.",
"emails.verification.thanks": "Danke", "emails.verification.thanks": "Danke",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Danke", "emails.magicSession.thanks": "Danke",
"emails.magicSession.signature": "{{project}}-Team", "emails.magicSession.signature": "{{project}}-Team",
"emails.recovery.subject": "Kennwort zurücksetzen", "emails.recovery.subject": "Kennwort zurücksetzen",
"emails.recovery.hello": "Hallo {{name}}", "emails.recovery.hello": "Hallo {{user}}",
"emails.recovery.body": "Folge diesem Link, um dein {{project}}-Kennwort zurückzusetzen.", "emails.recovery.body": "Folge diesem Link, um dein {{project}}-Kennwort zurückzusetzen.",
"emails.recovery.footer": "Solltest du keine Kennwort-Zurücksetzung angefordert haben, kannst du diese Nachricht ignorieren.", "emails.recovery.footer": "Solltest du keine Kennwort-Zurücksetzung angefordert haben, kannst du diese Nachricht ignorieren.",
"emails.recovery.thanks": "Danke", "emails.recovery.thanks": "Danke",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "Ομάδα %s", "emails.sender": "Ομάδα %s",
"emails.verification.subject": "Επαλήθευση Λογαριασμού", "emails.verification.subject": "Επαλήθευση Λογαριασμού",
"emails.verification.hello": "Γεια σου {{name}}", "emails.verification.hello": "Γεια σου {{user}}",
"emails.verification.body": "Ακολουθήστε αυτό το link για να επαληθεύσετε τη δ/νση του email σας", "emails.verification.body": "Ακολουθήστε αυτό το link για να επαληθεύσετε τη δ/νση του email σας",
"emails.verification.footer": "Εάν δεν ζητήσατε επαλήθευση αυτής της δ/νσης email, μπορείτε να αγνοήσετε αυτό το μήνυμα", "emails.verification.footer": "Εάν δεν ζητήσατε επαλήθευση αυτής της δ/νσης email, μπορείτε να αγνοήσετε αυτό το μήνυμα",
"emails.verification.thanks": "Ευχαριστούμε", "emails.verification.thanks": "Ευχαριστούμε",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Ευχαριστούμε", "emails.magicSession.thanks": "Ευχαριστούμε",
"emails.magicSession.signature": "Η ομάδα του {{project}}", "emails.magicSession.signature": "Η ομάδα του {{project}}",
"emails.recovery.subject": "Αλλαγή κωδικού πρόσβασης", "emails.recovery.subject": "Αλλαγή κωδικού πρόσβασης",
"emails.recovery.hello": "Γεια σου {{name}}", "emails.recovery.hello": "Γεια σου {{user}}",
"emails.recovery.body": "Ακολουθήστε αυτό το link για να αλλάξετε τον {{project}} κωδικό σας", "emails.recovery.body": "Ακολουθήστε αυτό το link για να αλλάξετε τον {{project}} κωδικό σας",
"emails.recovery.footer": "Εάν δεν ζητήσατε αλλαγή του κωδικού σας πρόσβασης, μπορείτε να αγνοήσετε αυτό το μήνυμα", "emails.recovery.footer": "Εάν δεν ζητήσατε αλλαγή του κωδικού σας πρόσβασης, μπορείτε να αγνοήσετε αυτό το μήνυμα",
"emails.recovery.thanks": "Ευχαριστούμε", "emails.recovery.thanks": "Ευχαριστούμε",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s Team", "emails.sender": "%s Team",
"emails.verification.subject": "Account Verification", "emails.verification.subject": "Account Verification",
"emails.verification.hello": "Hey {{name}}", "emails.verification.hello": "Hey {{user}}",
"emails.verification.body": "Follow this link to verify your email address.", "emails.verification.body": "Follow this link to verify your email address.",
"emails.verification.footer": "If you didnt ask to verify this address, you can ignore this message.", "emails.verification.footer": "If you didnt ask to verify this address, you can ignore this message.",
"emails.verification.thanks": "Thanks", "emails.verification.thanks": "Thanks",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Thanks", "emails.magicSession.thanks": "Thanks",
"emails.magicSession.signature": "{{project}} team", "emails.magicSession.signature": "{{project}} team",
"emails.recovery.subject": "Password Reset", "emails.recovery.subject": "Password Reset",
"emails.recovery.hello": "Hello {{name}}", "emails.recovery.hello": "Hello {{user}}",
"emails.recovery.body": "Follow this link to reset your {{project}} password.", "emails.recovery.body": "Follow this link to reset your {{project}} password.",
"emails.recovery.footer": "If you didnt ask to reset your password, you can ignore this message.", "emails.recovery.footer": "If you didnt ask to reset your password, you can ignore this message.",
"emails.recovery.thanks": "Thanks", "emails.recovery.thanks": "Thanks",

View file

@ -3,7 +3,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "Teamo %s", "emails.sender": "Teamo %s",
"emails.verification.subject": "Konta Konfirmo", "emails.verification.subject": "Konta Konfirmo",
"emails.verification.hello": "Saluton {{name}}", "emails.verification.hello": "Saluton {{user}}",
"emails.verification.body": "Alklaku ĉi tiun ligon por kontroli vian retpoŝtan adreson.", "emails.verification.body": "Alklaku ĉi tiun ligon por kontroli vian retpoŝtan adreson.",
"emails.verification.footer": "Se vi ne petis ĉi tiun konfirmon de ĉi tiu retpoŝto, vi povas ignori ĉi tiun mesaĝon.", "emails.verification.footer": "Se vi ne petis ĉi tiun konfirmon de ĉi tiu retpoŝto, vi povas ignori ĉi tiun mesaĝon.",
"emails.verification.thanks": "Dankegon.", "emails.verification.thanks": "Dankegon.",
@ -15,7 +15,7 @@
"emails.magicSession.thanks": "Dankegon", "emails.magicSession.thanks": "Dankegon",
"emails.magicSession.signature": "Teamo {{project}}", "emails.magicSession.signature": "Teamo {{project}}",
"emails.recovery.subject": "Parsvorta Restarigo", "emails.recovery.subject": "Parsvorta Restarigo",
"emails.recovery.hello": "Saluton {{name}}", "emails.recovery.hello": "Saluton {{user}}",
"emails.recovery.body": "Alklaku ĉi tiun ligon por reagordi vian pasvorton. {{project}}", "emails.recovery.body": "Alklaku ĉi tiun ligon por reagordi vian pasvorton. {{project}}",
"emails.recovery.footer": "Se vi ne petis reagordi vian pasvorton, vi povas ignori ĉi tiun mesaĝon.", "emails.recovery.footer": "Se vi ne petis reagordi vian pasvorton, vi povas ignori ĉi tiun mesaĝon.",
"emails.recovery.thanks": "Dankegon", "emails.recovery.thanks": "Dankegon",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "Equipo %s", "emails.sender": "Equipo %s",
"emails.verification.subject": "Verificación de cuenta", "emails.verification.subject": "Verificación de cuenta",
"emails.verification.hello": "Hola {{name}}", "emails.verification.hello": "Hola {{user}}",
"emails.verification.body": "Haz clic en este enlace para verificar tu correo.", "emails.verification.body": "Haz clic en este enlace para verificar tu correo.",
"emails.verification.footer": "Si no has solicitado verificar este correo, puedes ignorar este mensaje.", "emails.verification.footer": "Si no has solicitado verificar este correo, puedes ignorar este mensaje.",
"emails.verification.thanks": "Gracias", "emails.verification.thanks": "Gracias",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Gracias", "emails.magicSession.thanks": "Gracias",
"emails.magicSession.signature": "Equipo de {{project}}", "emails.magicSession.signature": "Equipo de {{project}}",
"emails.recovery.subject": "Restablecer contraseña", "emails.recovery.subject": "Restablecer contraseña",
"emails.recovery.hello": "Hola {{name}}", "emails.recovery.hello": "Hola {{user}}",
"emails.recovery.body": "Haz clic en este enlace para restablecer la contraseña de {{project}}.", "emails.recovery.body": "Haz clic en este enlace para restablecer la contraseña de {{project}}.",
"emails.recovery.footer": "Si no has solicitado restablecer la contraseña, puedes ignorar este mensaje.", "emails.recovery.footer": "Si no has solicitado restablecer la contraseña, puedes ignorar este mensaje.",
"emails.recovery.thanks": "Gracias", "emails.recovery.thanks": "Gracias",

View file

@ -4,29 +4,29 @@
"settings.direction": "rtl", "settings.direction": "rtl",
"emails.sender": "تیم %s", "emails.sender": "تیم %s",
"emails.verification.subject": "تأیید حساب", "emails.verification.subject": "تأیید حساب",
"emails.verification.hello": "سلام {{name}}", "emails.verification.hello": "سلام {{user}}",
"emails.verification.body": "برای تأیید ایمیل‌تان پیوند زیر را دنبال کنید.", "emails.verification.body": "برای تأیید ایمیل‌تان پیوند زیر را دنبال کنید.",
"emails.verification.footer": "اگر شما درخواست تأیید حساب نداده‌اید، می‌توانید این پیام را نادیده بگیرید.", "emails.verification.footer": "اگر شما درخواست تأیید حساب نداده‌اید، می‌توانید این پیام را نادیده بگیرید.",
"emails.verification.thanks": "سپاس فراوان", "emails.verification.thanks": "سپاس فراوان",
"emails.verification.signature": "تیم {{name}}", "emails.verification.signature": "تیم {{user}}",
"emails.magicSession.subject": "ورود به حساب کاربری", "emails.magicSession.subject": "ورود به حساب کاربری",
"emails.magicSession.hello": "سلام،", "emails.magicSession.hello": "سلام،",
"emails.magicSession.body": "برای ورود به حساب‌تان پیوند زیر را دنبال کنید.", "emails.magicSession.body": "برای ورود به حساب‌تان پیوند زیر را دنبال کنید.",
"emails.magicSession.footer": "اگر شما درخواست ورود به حساب کاربری با استفاده از این ایمیل را نداد‌ه‌اید، می‌توانید این پیام را نادیده بگیرید.", "emails.magicSession.footer": "اگر شما درخواست ورود به حساب کاربری با استفاده از این ایمیل را نداد‌ه‌اید، می‌توانید این پیام را نادیده بگیرید.",
"emails.magicSession.thanks": "سپاس فراوان", "emails.magicSession.thanks": "سپاس فراوان",
"emails.magicSession.signature": "تیم {{name}}", "emails.magicSession.signature": "تیم {{user}}",
"emails.recovery.subject": "بازیابی گذرواژه", "emails.recovery.subject": "بازیابی گذرواژه",
"emails.recovery.hello": "سلام {{name}}", "emails.recovery.hello": "سلام {{user}}",
"emails.recovery.body": "برای بازیابی گذرواژه‌تان پیوند زیر را دنبال کنید.", "emails.recovery.body": "برای بازیابی گذرواژه‌تان پیوند زیر را دنبال کنید.",
"emails.recovery.footer": "اگر شما درخواست بازیابی گذرواژه نداده‌اید، می‌توانید این پیام را نادیده بگیرید.", "emails.recovery.footer": "اگر شما درخواست بازیابی گذرواژه نداده‌اید، می‌توانید این پیام را نادیده بگیرید.",
"emails.recovery.thanks": "سپاس فراوان", "emails.recovery.thanks": "سپاس فراوان",
"emails.recovery.signature": "تیم {{name}}", "emails.recovery.signature": "تیم {{user}}",
"emails.invitation.subject": "دعوت به تیم %s در %s", "emails.invitation.subject": "دعوت به تیم %s در %s",
"emails.invitation.hello": "سلام", "emails.invitation.hello": "سلام",
"emails.invitation.body": "این ایمیل برای شما فرستاده شده‌است زیرا {{owner}} می‌خواهد شما را به تیم {{team}} در پروژه‌ی {{project}} بیفزاید.", "emails.invitation.body": "این ایمیل برای شما فرستاده شده‌است زیرا {{owner}} می‌خواهد شما را به تیم {{team}} در پروژه‌ی {{project}} بیفزاید.",
"emails.invitation.footer": "اگر علاقه ندارید، می‌توانید این پیام را نادیده بگیرید.", "emails.invitation.footer": "اگر علاقه ندارید، می‌توانید این پیام را نادیده بگیرید.",
"emails.invitation.thanks": "سپاس فراوان", "emails.invitation.thanks": "سپاس فراوان",
"emails.invitation.signature": "تیم {{name}}", "emails.invitation.signature": "تیم {{user}}",
"locale.country.unknown": "ناشناخته", "locale.country.unknown": "ناشناخته",
"countries.af": "افغانستان", "countries.af": "افغانستان",
"countries.ao": "آنگولا", "countries.ao": "آنگولا",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "Équipe %s", "emails.sender": "Équipe %s",
"emails.verification.subject": "Vérification du compte", "emails.verification.subject": "Vérification du compte",
"emails.verification.hello": "Bonjour {{name}}", "emails.verification.hello": "Bonjour {{user}}",
"emails.verification.body": "Suivez ce lien pour vérifier votre adresse e-mail.", "emails.verification.body": "Suivez ce lien pour vérifier votre adresse e-mail.",
"emails.verification.footer": "Si vous n'avez pas demandé à vérifier cette adresse, vous pouvez ignorer ce message.", "emails.verification.footer": "Si vous n'avez pas demandé à vérifier cette adresse, vous pouvez ignorer ce message.",
"emails.verification.thanks": "Merci", "emails.verification.thanks": "Merci",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Merci", "emails.magicSession.thanks": "Merci",
"emails.magicSession.signature": "L'équipe {{project}}", "emails.magicSession.signature": "L'équipe {{project}}",
"emails.recovery.subject": "Réinitialisation du mot de passe", "emails.recovery.subject": "Réinitialisation du mot de passe",
"emails.recovery.hello": "Bonjour {{name}}", "emails.recovery.hello": "Bonjour {{user}}",
"emails.recovery.body": "Suivez ce lien pour réinitialiser votre mot de passe pour {{project}}.", "emails.recovery.body": "Suivez ce lien pour réinitialiser votre mot de passe pour {{project}}.",
"emails.recovery.footer": "Si vous n'avez pas demandé à réinitialiser votre mot de passe, vous pouvez ignorer ce message.", "emails.recovery.footer": "Si vous n'avez pas demandé à réinitialiser votre mot de passe, vous pouvez ignorer ce message.",
"emails.recovery.thanks": "Merci", "emails.recovery.thanks": "Merci",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s Foireann", "emails.sender": "%s Foireann",
"emails.verification.subject": "Fíoraithe cuntais", "emails.verification.subject": "Fíoraithe cuntais",
"emails.verification.hello": "Haigh {{name}}", "emails.verification.hello": "Haigh {{user}}",
"emails.verification.body": "Lean an nasc seo chun do ríomhphost a fhíorú.", "emails.verification.body": "Lean an nasc seo chun do ríomhphost a fhíorú.",
"emails.verification.footer": "Mura ndearna tú iarratas an seoladh seo a fhíoru, déan neamhaird den teachtaireacht seo.", "emails.verification.footer": "Mura ndearna tú iarratas an seoladh seo a fhíoru, déan neamhaird den teachtaireacht seo.",
"emails.verification.thanks": "Go raibh maith agat", "emails.verification.thanks": "Go raibh maith agat",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Go raibh maith agat", "emails.magicSession.thanks": "Go raibh maith agat",
"emails.magicSession.signature": "{{project}} foireann", "emails.magicSession.signature": "{{project}} foireann",
"emails.recovery.subject": "Athshocrú pasfhocail", "emails.recovery.subject": "Athshocrú pasfhocail",
"emails.recovery.hello": "Haigh {{name}}", "emails.recovery.hello": "Haigh {{user}}",
"emails.recovery.body": "Lean an nasc seo chun do pasfhocal {{project}} a athshocrú.", "emails.recovery.body": "Lean an nasc seo chun do pasfhocal {{project}} a athshocrú.",
"emails.recovery.footer": "Mura ndearna tú iarratas do pasfhocal a athshocrú, déan neamhaird den teachtaireacht seo.", "emails.recovery.footer": "Mura ndearna tú iarratas do pasfhocal a athshocrú, déan neamhaird den teachtaireacht seo.",
"emails.recovery.thanks": "Go raibh maith agat", "emails.recovery.thanks": "Go raibh maith agat",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s ટીમ", "emails.sender": "%s ટીમ",
"emails.verification.subject": "ખાતાની ચકાસણી", "emails.verification.subject": "ખાતાની ચકાસણી",
"emails.verification.hello": "નમસ્કાર {{name}}", "emails.verification.hello": "નમસ્કાર {{user}}",
"emails.verification.body": "તમારું ઇમેઇલ સરનામું ચકાસવા માટે આ લિંકને અનુસરો.", "emails.verification.body": "તમારું ઇમેઇલ સરનામું ચકાસવા માટે આ લિંકને અનુસરો.",
"emails.verification.footer": "જો તમે આ સરનામાંની ચકાસણી કરવાનું ન કહ્યું હોય, તો તમે આ સંદેશને અવગણી શકો છો.", "emails.verification.footer": "જો તમે આ સરનામાંની ચકાસણી કરવાનું ન કહ્યું હોય, તો તમે આ સંદેશને અવગણી શકો છો.",
"emails.verification.thanks": "આભાર", "emails.verification.thanks": "આભાર",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "આભાર", "emails.magicSession.thanks": "આભાર",
"emails.magicSession.signature": "{{project}} ટીમ", "emails.magicSession.signature": "{{project}} ટીમ",
"emails.recovery.subject": "પાસવર્ડ ફરીથી સેટ કરો", "emails.recovery.subject": "પાસવર્ડ ફરીથી સેટ કરો",
"emails.recovery.hello": "નમસ્કાર {{name}}", "emails.recovery.hello": "નમસ્કાર {{user}}",
"emails.recovery.body": "તમારો {{project}} પાસવર્ડ ફરીથી સેટ કરવા માટે આ લિંકને અનુસરો.", "emails.recovery.body": "તમારો {{project}} પાસવર્ડ ફરીથી સેટ કરવા માટે આ લિંકને અનુસરો.",
"emails.recovery.footer": "જો તમે તમારો પાસવર્ડ ફરીથી સેટ કરવાનું ન કહ્યું હોય, તો તમે આ સંદેશને અવગણી શકો છો.", "emails.recovery.footer": "જો તમે તમારો પાસવર્ડ ફરીથી સેટ કરવાનું ન કહ્યું હોય, તો તમે આ સંદેશને અવગણી શકો છો.",
"emails.recovery.thanks": "આભાર", "emails.recovery.thanks": "આભાર",

View file

@ -4,7 +4,7 @@
"settings.direction": "rtl", "settings.direction": "rtl",
"emails.sender": "צוות %s", "emails.sender": "צוות %s",
"emails.verification.subject": "אימות חשבון", "emails.verification.subject": "אימות חשבון",
"emails.verification.hello": "שלום {{name}}", "emails.verification.hello": "שלום {{user}}",
"emails.verification.body": "לחץ על קישור זה כדי לאמת את כתובת הדוא\"ל שלך.", "emails.verification.body": "לחץ על קישור זה כדי לאמת את כתובת הדוא\"ל שלך.",
"emails.verification.footer": "אם לא ביקשת לאמת כתובת זו, תוכל להתעלם מהודעה זו.", "emails.verification.footer": "אם לא ביקשת לאמת כתובת זו, תוכל להתעלם מהודעה זו.",
"emails.verification.thanks": "תודה", "emails.verification.thanks": "תודה",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "תודה", "emails.magicSession.thanks": "תודה",
"emails.magicSession.signature": "צוות {{project}}", "emails.magicSession.signature": "צוות {{project}}",
"emails.recovery.subject": "איפוס סיסמא", "emails.recovery.subject": "איפוס סיסמא",
"emails.recovery.hello": "שלום {{name}}", "emails.recovery.hello": "שלום {{user}}",
"emails.recovery.body": "עקוב אחר קישור זה כדי לאפס את סיסמתך ב-{{project}}.", "emails.recovery.body": "עקוב אחר קישור זה כדי לאפס את סיסמתך ב-{{project}}.",
"emails.recovery.footer": "אם לא ביקשת לאפס את הסיסמה, תוכל להתעלם מהודעה זו.", "emails.recovery.footer": "אם לא ביקשת לאפס את הסיסמה, תוכל להתעלם מהודעה זו.",
"emails.recovery.thanks": "תודה", "emails.recovery.thanks": "תודה",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s टीम", "emails.sender": "%s टीम",
"emails.verification.subject": "अकाउंट वेरिफिकेशन ", "emails.verification.subject": "अकाउंट वेरिफिकेशन ",
"emails.verification.hello": "नमस्ते {{name}}", "emails.verification.hello": "नमस्ते {{user}}",
"emails.verification.body": "इस लिंक के माध्यम से अपने ईमेल को सत्यापित कीजिये।", "emails.verification.body": "इस लिंक के माध्यम से अपने ईमेल को सत्यापित कीजिये।",
"emails.verification.footer": "यदि आप इस पते को सत्यापित नहीं करना चाहते हैं, तो आप इस संदेश को नज़रअंदाज़ कर सकते हैं।", "emails.verification.footer": "यदि आप इस पते को सत्यापित नहीं करना चाहते हैं, तो आप इस संदेश को नज़रअंदाज़ कर सकते हैं।",
"emails.verification.thanks": "धन्यवाद", "emails.verification.thanks": "धन्यवाद",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "धन्यवाद", "emails.magicSession.thanks": "धन्यवाद",
"emails.magicSession.signature": "{{project}} टीम", "emails.magicSession.signature": "{{project}} टीम",
"emails.recovery.subject": "पासवर्ड रीसेट", "emails.recovery.subject": "पासवर्ड रीसेट",
"emails.recovery.hello": "नमस्ते {{name}}", "emails.recovery.hello": "नमस्ते {{user}}",
"emails.recovery.body": "इस लिंक के माध्यम से अपना {{project}} पासवर्ड रीसेट करें।", "emails.recovery.body": "इस लिंक के माध्यम से अपना {{project}} पासवर्ड रीसेट करें।",
"emails.recovery.footer": "यदि आप अपना पासवर्ड रीसेट नहीं करना चाहते हैं, तो आप इस संदेश को नज़रअंदाज़ कर सकते हैं।", "emails.recovery.footer": "यदि आप अपना पासवर्ड रीसेट नहीं करना चाहते हैं, तो आप इस संदेश को नज़रअंदाज़ कर सकते हैं।",
"emails.recovery.thanks": "धन्यवाद", "emails.recovery.thanks": "धन्यवाद",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s Tim", "emails.sender": "%s Tim",
"emails.verification.subject": "Verifikacija računa", "emails.verification.subject": "Verifikacija računa",
"emails.verification.hello": "Pozdrav {{name}}", "emails.verification.hello": "Pozdrav {{user}}",
"emails.verification.body": "Slijedite ovu poveznicu da biste potvrdili svoju adresu e-pošte.", "emails.verification.body": "Slijedite ovu poveznicu da biste potvrdili svoju adresu e-pošte.",
"emails.verification.footer": "Ukoliko niste zatražili potvrdu ove adrese, možete zanemariti ovu poruku.", "emails.verification.footer": "Ukoliko niste zatražili potvrdu ove adrese, možete zanemariti ovu poruku.",
"emails.verification.thanks": "Hvala", "emails.verification.thanks": "Hvala",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Hvala", "emails.magicSession.thanks": "Hvala",
"emails.magicSession.signature": "{{project}} tim", "emails.magicSession.signature": "{{project}} tim",
"emails.recovery.subject": "Ponovno postavljanje lozinke", "emails.recovery.subject": "Ponovno postavljanje lozinke",
"emails.recovery.hello": "Pozdrav {{name}}", "emails.recovery.hello": "Pozdrav {{user}}",
"emails.recovery.body": "Slijedite ovu poveznicu za ponovno postavljanje {{project}} lozinke.", "emails.recovery.body": "Slijedite ovu poveznicu za ponovno postavljanje {{project}} lozinke.",
"emails.recovery.footer": "Ako niste zatražili ponovno postavljanje Vaše lozinke, možete zanemariti ovu poruku.", "emails.recovery.footer": "Ako niste zatražili ponovno postavljanje Vaše lozinke, možete zanemariti ovu poruku.",
"emails.recovery.thanks": "Hvala", "emails.recovery.thanks": "Hvala",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s Csapat", "emails.sender": "%s Csapat",
"emails.verification.subject": "Fiók Megerősítése", "emails.verification.subject": "Fiók Megerősítése",
"emails.verification.hello": "Szia {{name}}", "emails.verification.hello": "Szia {{user}}",
"emails.verification.body": "Kattints a linkre, hogy megerősítsd az email címedet.", "emails.verification.body": "Kattints a linkre, hogy megerősítsd az email címedet.",
"emails.verification.footer": "Ha nem te kérted a címed megerősítését, akkor nyugodtan hagyd figyelmen kívül ezt az üzenetet.", "emails.verification.footer": "Ha nem te kérted a címed megerősítését, akkor nyugodtan hagyd figyelmen kívül ezt az üzenetet.",
"emails.verification.thanks": "Köszönettel", "emails.verification.thanks": "Köszönettel",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Köszönettel", "emails.magicSession.thanks": "Köszönettel",
"emails.magicSession.signature": "a {{project}} csapat", "emails.magicSession.signature": "a {{project}} csapat",
"emails.recovery.subject": "Jelszó Visszaállítása", "emails.recovery.subject": "Jelszó Visszaállítása",
"emails.recovery.hello": "Hahó, {{name}}", "emails.recovery.hello": "Hahó, {{user}}",
"emails.recovery.body": "Kattints a linkre a {{project}} jelszavad visszaállításához.", "emails.recovery.body": "Kattints a linkre a {{project}} jelszavad visszaállításához.",
"emails.recovery.footer": "Ha nem te kezdeményezted a jelszavad visszaállítását, akkor nyugodtan hagyd figyelmen kívül ezt az üzenetet.", "emails.recovery.footer": "Ha nem te kezdeményezted a jelszavad visszaállítását, akkor nyugodtan hagyd figyelmen kívül ezt az üzenetet.",
"emails.recovery.thanks": "Köszönettel", "emails.recovery.thanks": "Köszönettel",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "Tim %s", "emails.sender": "Tim %s",
"emails.verification.subject": "Verifikasi Akun", "emails.verification.subject": "Verifikasi Akun",
"emails.verification.hello": "Hai {{name}}", "emails.verification.hello": "Hai {{user}}",
"emails.verification.body": "Ikuti tautan ini untuk memverifikasi alamat email Anda.", "emails.verification.body": "Ikuti tautan ini untuk memverifikasi alamat email Anda.",
"emails.verification.footer": "Jika Anda tidak meminta untuk memverifikasi alamat email ini, Anda dapat mengabaikan pesan ini.", "emails.verification.footer": "Jika Anda tidak meminta untuk memverifikasi alamat email ini, Anda dapat mengabaikan pesan ini.",
"emails.verification.thanks": "Terima kasih", "emails.verification.thanks": "Terima kasih",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Terima kasih", "emails.magicSession.thanks": "Terima kasih",
"emails.magicSession.signature": "Tim {{project}}", "emails.magicSession.signature": "Tim {{project}}",
"emails.recovery.subject": "Atur Ulang Kata Sandi", "emails.recovery.subject": "Atur Ulang Kata Sandi",
"emails.recovery.hello": "Halo {{name}}", "emails.recovery.hello": "Halo {{user}}",
"emails.recovery.body": "Ikuti tautan ini untuk menyetel ulang kata sandi {{project}} Anda.", "emails.recovery.body": "Ikuti tautan ini untuk menyetel ulang kata sandi {{project}} Anda.",
"emails.recovery.footer": "Jika Anda tidak meminta untuk menyetel ulang kata sandi, Anda dapat mengabaikan pesan ini.", "emails.recovery.footer": "Jika Anda tidak meminta untuk menyetel ulang kata sandi, Anda dapat mengabaikan pesan ini.",
"emails.recovery.thanks": "Terima kasih", "emails.recovery.thanks": "Terima kasih",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "Team %s", "emails.sender": "Team %s",
"emails.verification.subject": "Verifica account", "emails.verification.subject": "Verifica account",
"emails.verification.hello": "Ciao {{name}}", "emails.verification.hello": "Ciao {{user}}",
"emails.verification.body": "Clicca questo link per verificare il tuo indirizzo email.", "emails.verification.body": "Clicca questo link per verificare il tuo indirizzo email.",
"emails.verification.footer": "Se non hai richiesto la verifica dellindirizzo email, puoi ignorare questo messaggio.", "emails.verification.footer": "Se non hai richiesto la verifica dellindirizzo email, puoi ignorare questo messaggio.",
"emails.verification.thanks": "Grazie", "emails.verification.thanks": "Grazie",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Grazie", "emails.magicSession.thanks": "Grazie",
"emails.magicSession.signature": "Il team {{project}}", "emails.magicSession.signature": "Il team {{project}}",
"emails.recovery.subject": "Reimpostazione password", "emails.recovery.subject": "Reimpostazione password",
"emails.recovery.hello": "Ciao {{name}}", "emails.recovery.hello": "Ciao {{user}}",
"emails.recovery.body": "Clicca questo link per reimpostare la tua password di {{project}}.", "emails.recovery.body": "Clicca questo link per reimpostare la tua password di {{project}}.",
"emails.recovery.footer": "Se non hai richiesto la reimpostazione della password, puoi ignorare questo messaggio.", "emails.recovery.footer": "Se non hai richiesto la reimpostazione della password, puoi ignorare questo messaggio.",
"emails.recovery.thanks": "Grazie", "emails.recovery.thanks": "Grazie",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s チーム", "emails.sender": "%s チーム",
"emails.verification.subject": "アカウント認証", "emails.verification.subject": "アカウント認証",
"emails.verification.hello": "こんにちは{{name}}さん", "emails.verification.hello": "こんにちは{{user}}さん",
"emails.verification.body": "メールアドレスを有効化するためには下記リンクをクリックして下さい。", "emails.verification.body": "メールアドレスを有効化するためには下記リンクをクリックして下さい。",
"emails.verification.footer": "このメールに心当たりが無い場合は破棄をお願いいたします。", "emails.verification.footer": "このメールに心当たりが無い場合は破棄をお願いいたします。",
"emails.verification.thanks": "ご利用いただきありがとうございます。", "emails.verification.thanks": "ご利用いただきありがとうございます。",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "ご利用いただきありがとうございます。", "emails.magicSession.thanks": "ご利用いただきありがとうございます。",
"emails.magicSession.signature": "{{project}}チーム", "emails.magicSession.signature": "{{project}}チーム",
"emails.recovery.subject": "パスワードリセット", "emails.recovery.subject": "パスワードリセット",
"emails.recovery.hello": "こんにちは{{name}}さん", "emails.recovery.hello": "こんにちは{{user}}さん",
"emails.recovery.body": "パスワードをリセットするためには下記リンクをクリックしてください。", "emails.recovery.body": "パスワードをリセットするためには下記リンクをクリックしてください。",
"emails.recovery.footer": "このメールに心当たりが無い場合は破棄をお願いいたします。", "emails.recovery.footer": "このメールに心当たりが無い場合は破棄をお願いいたします。",
"emails.recovery.thanks": "ご利用いただきありがとうございます。", "emails.recovery.thanks": "ご利用いただきありがとうございます。",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "Tim %s", "emails.sender": "Tim %s",
"emails.verification.subject": "Verifikasi Akun", "emails.verification.subject": "Verifikasi Akun",
"emails.verification.hello": "Hai {{name}}", "emails.verification.hello": "Hai {{user}}",
"emails.verification.body": "Klik link iki kanggo verifikasi alamat email sampeyan.", "emails.verification.body": "Klik link iki kanggo verifikasi alamat email sampeyan.",
"emails.verification.footer": "Yen sampeyan ora njaluk verifikasi alamat iki, sampeyan iso nglirwakake pesen iki.", "emails.verification.footer": "Yen sampeyan ora njaluk verifikasi alamat iki, sampeyan iso nglirwakake pesen iki.",
"emails.verification.thanks": "Matur nuwun", "emails.verification.thanks": "Matur nuwun",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Matur nuwun", "emails.magicSession.thanks": "Matur nuwun",
"emails.magicSession.signature": "Tim {{project}}", "emails.magicSession.signature": "Tim {{project}}",
"emails.recovery.subject": "Setel ulang sandi", "emails.recovery.subject": "Setel ulang sandi",
"emails.recovery.hello": "Halo {{name}}", "emails.recovery.hello": "Halo {{user}}",
"emails.recovery.body": "Klik link iki kanggo setel ulang sandi {{project}}.", "emails.recovery.body": "Klik link iki kanggo setel ulang sandi {{project}}.",
"emails.recovery.footer": "Yen sampeyan ora njaluk setel ulang sandi, sampeyan iso nglirwakake pesen iki.", "emails.recovery.footer": "Yen sampeyan ora njaluk setel ulang sandi, sampeyan iso nglirwakake pesen iki.",
"emails.recovery.thanks": "Matur nuwun", "emails.recovery.thanks": "Matur nuwun",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s ತಂಡ", "emails.sender": "%s ತಂಡ",
"emails.verification.subject": "ಖಾತೆ ಪರಿಶೀಲನೆ", "emails.verification.subject": "ಖಾತೆ ಪರಿಶೀಲನೆ",
"emails.verification.hello": "ನಮಸ್ಕಾರ {{name}}", "emails.verification.hello": "ನಮಸ್ಕಾರ {{user}}",
"emails.verification.body": "ನಿಮ್ಮ ಇಮೇಲ್ ವಿಳಾಸ ಪರಿಶೀಲನೆಗೆ ಈ ಲಿಂಕನ್ನು ಅನುಸರಿಸಿ", "emails.verification.body": "ನಿಮ್ಮ ಇಮೇಲ್ ವಿಳಾಸ ಪರಿಶೀಲನೆಗೆ ಈ ಲಿಂಕನ್ನು ಅನುಸರಿಸಿ",
"emails.verification.footer": "ನೀವು ಇಮೇಲ್ ವಿಳಾಸ ಪರಿಶೀಲನೆಗೆ ಕೇಳದಿದ್ದರೆ, ಈ ಸಂದೇಶವನ್ನು ನಿರ್ಲಕ್ಷಿಸಿ", "emails.verification.footer": "ನೀವು ಇಮೇಲ್ ವಿಳಾಸ ಪರಿಶೀಲನೆಗೆ ಕೇಳದಿದ್ದರೆ, ಈ ಸಂದೇಶವನ್ನು ನಿರ್ಲಕ್ಷಿಸಿ",
"emails.verification.thanks": "ಧನ್ಯವಾದಗಳು", "emails.verification.thanks": "ಧನ್ಯವಾದಗಳು",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "ಧನ್ಯವಾದಗಳು", "emails.magicSession.thanks": "ಧನ್ಯವಾದಗಳು",
"emails.magicSession.signature": "{{project}} ತಂಡ", "emails.magicSession.signature": "{{project}} ತಂಡ",
"emails.recovery.subject": "ಗುಪ್ತಪದ ಮರುಹೊಂದಿಸಿ", "emails.recovery.subject": "ಗುಪ್ತಪದ ಮರುಹೊಂದಿಸಿ",
"emails.recovery.hello": "ನಮಸ್ಕಾರ {{name}}", "emails.recovery.hello": "ನಮಸ್ಕಾರ {{user}}",
"emails.recovery.body": "ನಿಮ್ಮ {{project}} ಗುಪ್ತಪದವನ್ನು ಮರುಹೊಂದಿಸಲು ಈ ಲಿಂಕನ್ನು ಅನುಸರಿಸಿ", "emails.recovery.body": "ನಿಮ್ಮ {{project}} ಗುಪ್ತಪದವನ್ನು ಮರುಹೊಂದಿಸಲು ಈ ಲಿಂಕನ್ನು ಅನುಸರಿಸಿ",
"emails.recovery.footer": "ನೀವು ಗುಪ್ತಪದವನ್ನು ಮರುಹೊಂದಿಸಲು ಕೇಳದಿದ್ದರೆ, ಈ ಸಂದೇಶವನ್ನು ನಿರ್ಲಕ್ಷಿಸಿ", "emails.recovery.footer": "ನೀವು ಗುಪ್ತಪದವನ್ನು ಮರುಹೊಂದಿಸಲು ಕೇಳದಿದ್ದರೆ, ಈ ಸಂದೇಶವನ್ನು ನಿರ್ಲಕ್ಷಿಸಿ",
"emails.recovery.thanks": "ಧನ್ಯವಾದಗಳು", "emails.recovery.thanks": "ಧನ್ಯವಾದಗಳು",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s 팀", "emails.sender": "%s 팀",
"emails.verification.subject": "계정 인증", "emails.verification.subject": "계정 인증",
"emails.verification.hello": "안녕하세요 {{name}}님", "emails.verification.hello": "안녕하세요 {{user}}님",
"emails.verification.body": "이메일 인증을 위해 링크를 클릭하여주세요.", "emails.verification.body": "이메일 인증을 위해 링크를 클릭하여주세요.",
"emails.verification.footer": "이메일 인증을 부탁하지 않으셨다면 이 메시지를 무시하여주세요.", "emails.verification.footer": "이메일 인증을 부탁하지 않으셨다면 이 메시지를 무시하여주세요.",
"emails.verification.thanks": "감사합니다", "emails.verification.thanks": "감사합니다",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "감사합니다", "emails.magicSession.thanks": "감사합니다",
"emails.magicSession.signature": "{{project}} 팀", "emails.magicSession.signature": "{{project}} 팀",
"emails.recovery.subject": "비밀번호 재설정", "emails.recovery.subject": "비밀번호 재설정",
"emails.recovery.hello": "안녕하세요 {{name}}님", "emails.recovery.hello": "안녕하세요 {{user}}님",
"emails.recovery.body": "{{project}}의 비밀번호 재설정을 위해 링크를 클릭하여주세요.", "emails.recovery.body": "{{project}}의 비밀번호 재설정을 위해 링크를 클릭하여주세요.",
"emails.recovery.footer": "비밀번호 재설정 신청을 하지 않으셨다면 이 메세지를 무시하여주세요.", "emails.recovery.footer": "비밀번호 재설정 신청을 하지 않으셨다면 이 메세지를 무시하여주세요.",
"emails.recovery.thanks": "감사합니다", "emails.recovery.thanks": "감사합니다",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr*", "settings.direction": "ltr*",
"emails.sender": "%s team", "emails.sender": "%s team",
"emails.verification.subject": "Ratio comprobatio", "emails.verification.subject": "Ratio comprobatio",
"emails.verification.hello": "Salve ibi {{name}}", "emails.verification.hello": "Salve ibi {{user}}",
"emails.verification.body": "Sequere hanc nexum ut quin inscriptionem tuum.", "emails.verification.body": "Sequere hanc nexum ut quin inscriptionem tuum.",
"emails.verification.footer": "Si verificationem huius inscriptionis non postulasti, nuntium hunc ignorare potes.", "emails.verification.footer": "Si verificationem huius inscriptionis non postulasti, nuntium hunc ignorare potes.",
"emails.verification.thanks": "Gratias", "emails.verification.thanks": "Gratias",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Gratias", "emails.magicSession.thanks": "Gratias",
"emails.magicSession.signature": "{{project}} team", "emails.magicSession.signature": "{{project}} team",
"emails.recovery.subject": "Recuperet password", "emails.recovery.subject": "Recuperet password",
"emails.recovery.hello": "Salve ibi {{name}}", "emails.recovery.hello": "Salve ibi {{user}}",
"emails.recovery.body": "Sequere hanc conjunctionem ut recipias project password {{project}}", "emails.recovery.body": "Sequere hanc conjunctionem ut recipias project password {{project}}",
"emails.recovery.footer": "Si tesseram tuam recuperare non petis, nuntium hunc ignorare potes", "emails.recovery.footer": "Si tesseram tuam recuperare non petis, nuntium hunc ignorare potes",
"emails.recovery.thanks": "Gratias", "emails.recovery.thanks": "Gratias",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s Team", "emails.sender": "%s Team",
"emails.verification.subject": "Kont Verifikatioun", "emails.verification.subject": "Kont Verifikatioun",
"emails.verification.hello": "Hey {{name}}", "emails.verification.hello": "Hey {{user}}",
"emails.verification.body": "Follegt dëse Link fir Är E -Mail Adress z'iwwerpréiwen.", "emails.verification.body": "Follegt dëse Link fir Är E -Mail Adress z'iwwerpréiwen.",
"emails.verification.footer": "Wann Dir net gefrot hutt dës Adress z'iwwerpréiwen, kënnt Dir dëse Message ignoréieren.", "emails.verification.footer": "Wann Dir net gefrot hutt dës Adress z'iwwerpréiwen, kënnt Dir dëse Message ignoréieren.",
"emails.verification.thanks": "Merci", "emails.verification.thanks": "Merci",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Merci", "emails.magicSession.thanks": "Merci",
"emails.magicSession.signature": "{{project}} équipe", "emails.magicSession.signature": "{{project}} équipe",
"emails.recovery.subject": "Password Reset", "emails.recovery.subject": "Password Reset",
"emails.recovery.hello": "Hello {{name}}", "emails.recovery.hello": "Hello {{user}}",
"emails.recovery.body": "Follegt dëse Link fir Äert {{project}} Passwuert zréckzesetzen.", "emails.recovery.body": "Follegt dëse Link fir Äert {{project}} Passwuert zréckzesetzen.",
"emails.recovery.footer": "Wann Dir net gefrot hutt Äert Passwuert zréckzesetzen, kënnt Dir dëse Message ignoréieren.", "emails.recovery.footer": "Wann Dir net gefrot hutt Äert Passwuert zréckzesetzen, kënnt Dir dëse Message ignoréieren.",
"emails.recovery.thanks": "Merci", "emails.recovery.thanks": "Merci",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s komanda", "emails.sender": "%s komanda",
"emails.verification.subject": "Paskyros Patvirtinimas", "emails.verification.subject": "Paskyros Patvirtinimas",
"emails.verification.hello": "Labas {{name}}", "emails.verification.hello": "Labas {{user}}",
"emails.verification.body": "Spauskite šią nuorodą, kad patvirtintumėte savo el. paštą.", "emails.verification.body": "Spauskite šią nuorodą, kad patvirtintumėte savo el. paštą.",
"emails.verification.footer": "Jei neprašėte patvirtinti šio el. pašto, galite ignoruoti šį pranešimą.", "emails.verification.footer": "Jei neprašėte patvirtinti šio el. pašto, galite ignoruoti šį pranešimą.",
"emails.verification.thanks": "Ačiū", "emails.verification.thanks": "Ačiū",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Ačiū", "emails.magicSession.thanks": "Ačiū",
"emails.magicSession.signature": "{{project}} komanda", "emails.magicSession.signature": "{{project}} komanda",
"emails.recovery.subject": "Slaptažodžio Atkūrimas", "emails.recovery.subject": "Slaptažodžio Atkūrimas",
"emails.recovery.hello": "Labas {{name}}", "emails.recovery.hello": "Labas {{user}}",
"emails.recovery.body": "Spauskite šią nuorodą, kad atkurtumėte projekto {{project}} slaptažodį.", "emails.recovery.body": "Spauskite šią nuorodą, kad atkurtumėte projekto {{project}} slaptažodį.",
"emails.recovery.footer": "Jei neprašėte atkurti savo slaptažodzio, galite ignoruoti šį pranešimą.", "emails.recovery.footer": "Jei neprašėte atkurti savo slaptažodzio, galite ignoruoti šį pranešimą.",
"emails.recovery.thanks": "Ačiū", "emails.recovery.thanks": "Ačiū",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s komanda", "emails.sender": "%s komanda",
"emails.verification.subject": "Konta verifikācija", "emails.verification.subject": "Konta verifikācija",
"emails.verification.hello": "Sveicināti, {{name}}", "emails.verification.hello": "Sveicināti, {{user}}",
"emails.verification.body": "Sekojiet saitei, lai apstiprinātu savu e-pasta adresi.", "emails.verification.body": "Sekojiet saitei, lai apstiprinātu savu e-pasta adresi.",
"emails.verification.footer": "Ja Jūs nepieprasījāt šīs adreses apstiprinājumu, lūdzu, ignorējiet šo ziņu.", "emails.verification.footer": "Ja Jūs nepieprasījāt šīs adreses apstiprinājumu, lūdzu, ignorējiet šo ziņu.",
"emails.verification.thanks": "Paldies", "emails.verification.thanks": "Paldies",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Paldies", "emails.magicSession.thanks": "Paldies",
"emails.magicSession.signature": "{{project}} komanda", "emails.magicSession.signature": "{{project}} komanda",
"emails.recovery.subject": "Paroles atjaunināšana", "emails.recovery.subject": "Paroles atjaunināšana",
"emails.recovery.hello": "Labdien, {{name}}", "emails.recovery.hello": "Labdien, {{user}}",
"emails.recovery.body": "Sekojiet saitei, lai atjauninātu {{project}} paroli.", "emails.recovery.body": "Sekojiet saitei, lai atjauninātu {{project}} paroli.",
"emails.recovery.footer": "Ja Jūs nepieprasījāt paroles atjaunināšanu, lūdzu, ignorējiet šo ziņu.", "emails.recovery.footer": "Ja Jūs nepieprasījāt paroles atjaunināšanu, lūdzu, ignorējiet šo ziņu.",
"emails.recovery.thanks": "Paldies", "emails.recovery.thanks": "Paldies",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s ടീം", "emails.sender": "%s ടീം",
"emails.verification.subject": "അക്കൗണ്ട് സ്ഥിരീകരണം", "emails.verification.subject": "അക്കൗണ്ട് സ്ഥിരീകരണം",
"emails.verification.hello": "നമസ്കാരം {{name}}", "emails.verification.hello": "നമസ്കാരം {{user}}",
"emails.verification.body": "നിങ്ങളുടെ ഇമെയിൽ വിലാസം സ്ഥിരീകരിക്കുന്നതിനായി ഈ ലിങ്ക് പിന്തുടരുക.", "emails.verification.body": "നിങ്ങളുടെ ഇമെയിൽ വിലാസം സ്ഥിരീകരിക്കുന്നതിനായി ഈ ലിങ്ക് പിന്തുടരുക.",
"emails.verification.footer": "ഈ വിലാസം സ്ഥിരീകരിക്കാന്‍ നിങ്ങൾ ആവശ്യപ്പെട്ടില്ലെങ്കിൽ, നിങ്ങൾക്ക് ഈ സന്ദേശം അവഗണിക്കാവുന്നതാണ്.", "emails.verification.footer": "ഈ വിലാസം സ്ഥിരീകരിക്കാന്‍ നിങ്ങൾ ആവശ്യപ്പെട്ടില്ലെങ്കിൽ, നിങ്ങൾക്ക് ഈ സന്ദേശം അവഗണിക്കാവുന്നതാണ്.",
"emails.verification.thanks": "നന്ദി", "emails.verification.thanks": "നന്ദി",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "നന്ദി", "emails.magicSession.thanks": "നന്ദി",
"emails.magicSession.signature": "{{project}} ടീം", "emails.magicSession.signature": "{{project}} ടീം",
"emails.recovery.subject": "രഹസ്യവാക്ക് പുനക്രമീകരണം", "emails.recovery.subject": "രഹസ്യവാക്ക് പുനക്രമീകരണം",
"emails.recovery.hello": "നമസ്കാരം {{name}}", "emails.recovery.hello": "നമസ്കാരം {{user}}",
"emails.recovery.body": "നിങ്ങളുടെ {{Project}} രഹസ്യവാക്ക് പുനക്രമീകരിക്കുന്നതിന് ഈ ലിങ്ക് പിന്തുടരുക.", "emails.recovery.body": "നിങ്ങളുടെ {{Project}} രഹസ്യവാക്ക് പുനക്രമീകരിക്കുന്നതിന് ഈ ലിങ്ക് പിന്തുടരുക.",
"emails.recovery.footer": "നിങ്ങളുടെ രഹസ്യവാക്ക് പുനക്രമീകരിക്കാന്‍ നിങ്ങൾ ആവശ്യപ്പെട്ടില്ലെങ്കിൽ, ഈ സന്ദേശം അവഗണിക്കാവുന്നതാണ്.", "emails.recovery.footer": "നിങ്ങളുടെ രഹസ്യവാക്ക് പുനക്രമീകരിക്കാന്‍ നിങ്ങൾ ആവശ്യപ്പെട്ടില്ലെങ്കിൽ, ഈ സന്ദേശം അവഗണിക്കാവുന്നതാണ്.",
"emails.recovery.thanks": "നന്ദി", "emails.recovery.thanks": "നന്ദി",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s टीम", "emails.sender": "%s टीम",
"emails.verification.subject": "खाते सत्यापन", "emails.verification.subject": "खाते सत्यापन",
"emails.verification.hello": "नमस्कार {{name}}", "emails.verification.hello": "नमस्कार {{user}}",
"emails.verification.body": "आपला ईमेल पत्ता सत्यापित करण्यासाठी या दुव्याचे अनुसरण करा.", "emails.verification.body": "आपला ईमेल पत्ता सत्यापित करण्यासाठी या दुव्याचे अनुसरण करा.",
"emails.verification.footer": "आपण या पत्त्याची पडताळणी करण्यास सांगितले नसल्यास, आपण या संदेशाकडे दुर्लक्ष करू शकता.", "emails.verification.footer": "आपण या पत्त्याची पडताळणी करण्यास सांगितले नसल्यास, आपण या संदेशाकडे दुर्लक्ष करू शकता.",
"emails.verification.thanks": "धन्यवाद", "emails.verification.thanks": "धन्यवाद",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "धन्यवाद", "emails.magicSession.thanks": "धन्यवाद",
"emails.magicSession.signature": "{{project}} संघ", "emails.magicSession.signature": "{{project}} संघ",
"emails.recovery.subject": "पासवर्ड रीसेट", "emails.recovery.subject": "पासवर्ड रीसेट",
"emails.recovery.hello": "नमस्कार {{name}}", "emails.recovery.hello": "नमस्कार {{user}}",
"emails.recovery.body": "आपला {{project}}चे पासवर्ड रीसेट करण्यासाठी या लिंकचे अनुसरण करा", "emails.recovery.body": "आपला {{project}}चे पासवर्ड रीसेट करण्यासाठी या लिंकचे अनुसरण करा",
"emails.recovery.footer": "आपण आपला पासवर्ड रीसेट करण्यास सांगितले नसल्यास, आपण या संदेशाकडे दुर्लक्ष करू शकता.", "emails.recovery.footer": "आपण आपला पासवर्ड रीसेट करण्यास सांगितले नसल्यास, आपण या संदेशाकडे दुर्लक्ष करू शकता.",
"emails.recovery.thanks": "धन्यवाद", "emails.recovery.thanks": "धन्यवाद",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s Team", "emails.sender": "%s Team",
"emails.verification.subject": "Pengesahan Akaun", "emails.verification.subject": "Pengesahan Akaun",
"emails.verification.hello": "Hey {{name}}", "emails.verification.hello": "Hey {{user}}",
"emails.verification.body": "Tekan pautan ini untuk mengesahkan alamat email anda.", "emails.verification.body": "Tekan pautan ini untuk mengesahkan alamat email anda.",
"emails.verification.footer": "Sekiranya anda tidak membuat permintaan untuk mengesahkan email ini, sila abaikan mesej ini.", "emails.verification.footer": "Sekiranya anda tidak membuat permintaan untuk mengesahkan email ini, sila abaikan mesej ini.",
"emails.verification.thanks": "Terima kasih", "emails.verification.thanks": "Terima kasih",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Terima kasih", "emails.magicSession.thanks": "Terima kasih",
"emails.magicSession.signature": "{{project}} team", "emails.magicSession.signature": "{{project}} team",
"emails.recovery.subject": "Menetap semula Kata Laluan", "emails.recovery.subject": "Menetap semula Kata Laluan",
"emails.recovery.hello": "Hello {{name}}", "emails.recovery.hello": "Hello {{user}}",
"emails.recovery.body": "Tekan pautan ini untuk menetapkan semula kata laluan {{project}}.", "emails.recovery.body": "Tekan pautan ini untuk menetapkan semula kata laluan {{project}}.",
"emails.recovery.footer": "Sekiranya anda tidak membuat permintaan menetap semula kata laluan, sila abaikan mesej ini.", "emails.recovery.footer": "Sekiranya anda tidak membuat permintaan menetap semula kata laluan, sila abaikan mesej ini.",
"emails.recovery.thanks": "Terima kasih", "emails.recovery.thanks": "Terima kasih",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s Team", "emails.sender": "%s Team",
"emails.verification.subject": "Kontobekreftelse", "emails.verification.subject": "Kontobekreftelse",
"emails.verification.hello": "Hei {{name}}", "emails.verification.hello": "Hei {{user}}",
"emails.verification.body": "Følg denne lenken for å bekrefte din e-postadresse.", "emails.verification.body": "Følg denne lenken for å bekrefte din e-postadresse.",
"emails.verification.footer": "Dersom du ikke ba om å bekrefte e-postadressen, kan du se bort fra denne meldingen.", "emails.verification.footer": "Dersom du ikke ba om å bekrefte e-postadressen, kan du se bort fra denne meldingen.",
"emails.verification.thanks": "Takk", "emails.verification.thanks": "Takk",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Takk", "emails.magicSession.thanks": "Takk",
"emails.magicSession.signature": "{{project}} team", "emails.magicSession.signature": "{{project}} team",
"emails.recovery.subject": "Nullstille passord", "emails.recovery.subject": "Nullstille passord",
"emails.recovery.hello": "Hei {{name}}", "emails.recovery.hello": "Hei {{user}}",
"emails.recovery.body": "Følg denne lenken for å nullstille ditt {{project}} passord.", "emails.recovery.body": "Følg denne lenken for å nullstille ditt {{project}} passord.",
"emails.recovery.footer": "Dersom du ikke ba om å nullstille passordet ditt, kan du se bort fra denne meldingen.", "emails.recovery.footer": "Dersom du ikke ba om å nullstille passordet ditt, kan du se bort fra denne meldingen.",
"emails.recovery.thanks": "Takk", "emails.recovery.thanks": "Takk",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s समूह", "emails.sender": "%s समूह",
"emails.verification.subject": "खाता प्रमाणिकरण", "emails.verification.subject": "खाता प्रमाणिकरण",
"emails.verification.hello": "नमस्ते {{name}}", "emails.verification.hello": "नमस्ते {{user}}",
"emails.verification.body": "इमेल ठेगाना प्रमाणित गर्नको लागी यो लिंकमा जानुहोस।", "emails.verification.body": "इमेल ठेगाना प्रमाणित गर्नको लागी यो लिंकमा जानुहोस।",
"emails.verification.footer": "यदि तपाइँले आफ्नो खाता प्रमाणित गर्न सोध्नु भएको छैन भने तपाइँले यो सन्देश लाई बेवास्ता गर्न सक्नुहुन्छ।", "emails.verification.footer": "यदि तपाइँले आफ्नो खाता प्रमाणित गर्न सोध्नु भएको छैन भने तपाइँले यो सन्देश लाई बेवास्ता गर्न सक्नुहुन्छ।",
"emails.verification.thanks": "धन्यवाद", "emails.verification.thanks": "धन्यवाद",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "धन्यवाद", "emails.magicSession.thanks": "धन्यवाद",
"emails.magicSession.signature": "{{project}} समूह", "emails.magicSession.signature": "{{project}} समूह",
"emails.recovery.subject": "पासवर्ड रिसेट", "emails.recovery.subject": "पासवर्ड रिसेट",
"emails.recovery.hello": "नमस्ते {{name}}", "emails.recovery.hello": "नमस्ते {{user}}",
"emails.recovery.body": "{{project}}को पासवर्ड रिसेट गर्नको लागी यो लिंकमा जानुहोस।", "emails.recovery.body": "{{project}}को पासवर्ड रिसेट गर्नको लागी यो लिंकमा जानुहोस।",
"emails.recovery.footer": "यदि तपाइँले आफ्नो पासवर्ड रिसेट गर्न सोध्नु भएको छैन भने तपाइँले यो सन्देश लाई बेवास्ता गर्न सक्नुहुन्छ।", "emails.recovery.footer": "यदि तपाइँले आफ्नो पासवर्ड रिसेट गर्न सोध्नु भएको छैन भने तपाइँले यो सन्देश लाई बेवास्ता गर्न सक्नुहुन्छ।",
"emails.recovery.thanks": "धन्यवाद", "emails.recovery.thanks": "धन्यवाद",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s Team", "emails.sender": "%s Team",
"emails.verification.subject": "Account Verificatie", "emails.verification.subject": "Account Verificatie",
"emails.verification.hello": "Hoi {{name}}", "emails.verification.hello": "Hoi {{user}}",
"emails.verification.body": "Volg deze link om uw e-mail te verifieren", "emails.verification.body": "Volg deze link om uw e-mail te verifieren",
"emails.verification.footer": "Als u geen aanvraag voor verificatie heeft gemaakt, kan u deze mail negeren", "emails.verification.footer": "Als u geen aanvraag voor verificatie heeft gemaakt, kan u deze mail negeren",
"emails.verification.thanks": "Bedankt", "emails.verification.thanks": "Bedankt",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Bedankt", "emails.magicSession.thanks": "Bedankt",
"emails.magicSession.signature": "{{project}} team", "emails.magicSession.signature": "{{project}} team",
"emails.recovery.subject": "Wachtwoord Herinstellen", "emails.recovery.subject": "Wachtwoord Herinstellen",
"emails.recovery.hello": "Hallo {{name}}", "emails.recovery.hello": "Hallo {{user}}",
"emails.recovery.body": "Volg deze link om het wachtwoord van uw project {{project}} te wijzigen", "emails.recovery.body": "Volg deze link om het wachtwoord van uw project {{project}} te wijzigen",
"emails.recovery.footer": "Als u geen aanvraag heeft gemaakt om uw wachtwoord te wijzigen, kan u deze mail negeren", "emails.recovery.footer": "Als u geen aanvraag heeft gemaakt om uw wachtwoord te wijzigen, kan u deze mail negeren",
"emails.recovery.thanks": "Bedankt", "emails.recovery.thanks": "Bedankt",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s Team", "emails.sender": "%s Team",
"emails.verification.subject": "Kontostadfesting", "emails.verification.subject": "Kontostadfesting",
"emails.verification.hello": "Hallo {{name}}", "emails.verification.hello": "Hallo {{user}}",
"emails.verification.body": "Følg denne lenkja for å bekrefta din e-postadresse.", "emails.verification.body": "Følg denne lenkja for å bekrefta din e-postadresse.",
"emails.verification.footer": "Om du ikkje bad om å bekrefta e-postadressa, kan du ignorera denne meldinga.", "emails.verification.footer": "Om du ikkje bad om å bekrefta e-postadressa, kan du ignorera denne meldinga.",
"emails.verification.thanks": "Takk", "emails.verification.thanks": "Takk",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Takk", "emails.magicSession.thanks": "Takk",
"emails.magicSession.signature": "{{project}} team", "emails.magicSession.signature": "{{project}} team",
"emails.recovery.subject": "Nullstilla passord", "emails.recovery.subject": "Nullstilla passord",
"emails.recovery.hello": "Hallo {{name}}", "emails.recovery.hello": "Hallo {{user}}",
"emails.recovery.body": "Følg denne lenkja for å nullstilla ditt {{project}} passord.", "emails.recovery.body": "Følg denne lenkja for å nullstilla ditt {{project}} passord.",
"emails.recovery.footer": "Om du ikkje ba om å nullstilla passordet ditt, kan du ignorera denne meldinga.", "emails.recovery.footer": "Om du ikkje ba om å nullstilla passordet ditt, kan du ignorera denne meldinga.",
"emails.recovery.thanks": "Takk", "emails.recovery.thanks": "Takk",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s ଦଳ", "emails.sender": "%s ଦଳ",
"emails.verification.subject": "ଖାତା ଯାଞ୍ଚ", "emails.verification.subject": "ଖାତା ଯାଞ୍ଚ",
"emails.verification.hello": "ନମସ୍କାର {{name}}", "emails.verification.hello": "ନମସ୍କାର {{user}}",
"emails.verification.body": "ଆପଣଙ୍କର ଇମେଲ୍ ଠିକଣା ଯାଞ୍ଚ କରିବାକୁ ଏହି ଲିଙ୍କ୍ ଅନୁସରଣ କରନ୍ତୁ |", "emails.verification.body": "ଆପଣଙ୍କର ଇମେଲ୍ ଠିକଣା ଯାଞ୍ଚ କରିବାକୁ ଏହି ଲିଙ୍କ୍ ଅନୁସରଣ କରନ୍ତୁ |",
"emails.verification.footer": "ଯଦି ଆପଣ ଏହି ଠିକଣା ଯାଞ୍ଚ କରିବାକୁ କହି ନାହାଁନ୍ତି, ତେବେ ଆପଣ ଏହି ସନ୍ଦେଶକୁ ଉପେକ୍ଷା କରିପାରିବେ |", "emails.verification.footer": "ଯଦି ଆପଣ ଏହି ଠିକଣା ଯାଞ୍ଚ କରିବାକୁ କହି ନାହାଁନ୍ତି, ତେବେ ଆପଣ ଏହି ସନ୍ଦେଶକୁ ଉପେକ୍ଷା କରିପାରିବେ |",
"emails.verification.thanks": "ଧନ୍ୟବାଦ", "emails.verification.thanks": "ଧନ୍ୟବାଦ",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "ଧନ୍ୟବାଦ", "emails.magicSession.thanks": "ଧନ୍ୟବାଦ",
"emails.magicSession.signature": "{{project}} ଦଳ", "emails.magicSession.signature": "{{project}} ଦଳ",
"emails.recovery.subject": "ପାସୱାର୍ଡ ପୁନଃ ସେଟ୍ କରନ୍ତୁ |", "emails.recovery.subject": "ପାସୱାର୍ଡ ପୁନଃ ସେଟ୍ କରନ୍ତୁ |",
"emails.recovery.hello": "ନମସ୍କାର {{name}}", "emails.recovery.hello": "ନମସ୍କାର {{user}}",
"emails.recovery.body": "ଆପଣଙ୍କର {{project}} ପାସୱାର୍ଡ ପୁନଃ ସେଟ୍ କରିବାକୁ ଏହି ଲିଙ୍କକୁ ଅନୁସରଣ କରନ୍ତୁ |", "emails.recovery.body": "ଆପଣଙ୍କର {{project}} ପାସୱାର୍ଡ ପୁନଃ ସେଟ୍ କରିବାକୁ ଏହି ଲିଙ୍କକୁ ଅନୁସରଣ କରନ୍ତୁ |",
"emails.recovery.footer": "ଯଦି ଆପଣ ଆପଣଙ୍କର ପାସୱାର୍ଡ ପୁନଃ ସେଟ୍ କରିବାକୁ କହି ନାହାଁନ୍ତି, ତେବେ ଆପଣ ଏହି ସନ୍ଦେଶକୁ ଉପେକ୍ଷା କରିପାରିବେ |", "emails.recovery.footer": "ଯଦି ଆପଣ ଆପଣଙ୍କର ପାସୱାର୍ଡ ପୁନଃ ସେଟ୍ କରିବାକୁ କହି ନାହାଁନ୍ତି, ତେବେ ଆପଣ ଏହି ସନ୍ଦେଶକୁ ଉପେକ୍ଷା କରିପାରିବେ |",
"emails.recovery.thanks": "ଧନ୍ୟବାଦ", "emails.recovery.thanks": "ଧନ୍ୟବାଦ",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "Zespół %s", "emails.sender": "Zespół %s",
"emails.verification.subject": "Weryfikacja konta", "emails.verification.subject": "Weryfikacja konta",
"emails.verification.hello": "Cześć {{name}}", "emails.verification.hello": "Cześć {{user}}",
"emails.verification.body": "Przejdź do tego linku, aby zweryfikować swój adres e-mail.", "emails.verification.body": "Przejdź do tego linku, aby zweryfikować swój adres e-mail.",
"emails.verification.footer": "Jeśli to nie Ty prosiłeś o zweryfikowanie tego adresu, zignoruj tę wiadomość.", "emails.verification.footer": "Jeśli to nie Ty prosiłeś o zweryfikowanie tego adresu, zignoruj tę wiadomość.",
"emails.verification.thanks": "Dziękujemy", "emails.verification.thanks": "Dziękujemy",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Dziękujemy", "emails.magicSession.thanks": "Dziękujemy",
"emails.magicSession.signature": "Zespół {{project}}", "emails.magicSession.signature": "Zespół {{project}}",
"emails.recovery.subject": "Resetowanie hasła", "emails.recovery.subject": "Resetowanie hasła",
"emails.recovery.hello": "Cześć {{name}}", "emails.recovery.hello": "Cześć {{user}}",
"emails.recovery.body": "Przejdź do tego linku, aby zresetować hasło dla {{project}}.", "emails.recovery.body": "Przejdź do tego linku, aby zresetować hasło dla {{project}}.",
"emails.recovery.footer": "Jeśli to nie Ty prosiłeś o zresetowanie swojego hasła, zignoruj tę wiadomość.", "emails.recovery.footer": "Jeśli to nie Ty prosiłeś o zresetowanie swojego hasła, zignoruj tę wiadomość.",
"emails.recovery.thanks": "Dziękujemy", "emails.recovery.thanks": "Dziękujemy",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "Time %s", "emails.sender": "Time %s",
"emails.verification.subject": "Verificação da Conta", "emails.verification.subject": "Verificação da Conta",
"emails.verification.hello": "Olá {{name}}", "emails.verification.hello": "Olá {{user}}",
"emails.verification.body": "Clique neste link para verificar o seu endereço de e-mail.", "emails.verification.body": "Clique neste link para verificar o seu endereço de e-mail.",
"emails.verification.footer": "Se você não solicitou a verificação deste e-mail, ignore essa mensagem.", "emails.verification.footer": "Se você não solicitou a verificação deste e-mail, ignore essa mensagem.",
"emails.verification.thanks": "Muito obrigado", "emails.verification.thanks": "Muito obrigado",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Muito obrigado", "emails.magicSession.thanks": "Muito obrigado",
"emails.magicSession.signature": "Time {{project}}", "emails.magicSession.signature": "Time {{project}}",
"emails.recovery.subject": "Redefinição de senha", "emails.recovery.subject": "Redefinição de senha",
"emails.recovery.hello": "Olá {{name}}", "emails.recovery.hello": "Olá {{user}}",
"emails.recovery.body": "Clique neste link para redefinir sua senha do {{project}}.", "emails.recovery.body": "Clique neste link para redefinir sua senha do {{project}}.",
"emails.recovery.footer": "Se você não solicitou a redefinição da sua senha, você pode ignorar essa mensagem.", "emails.recovery.footer": "Se você não solicitou a redefinição da sua senha, você pode ignorar essa mensagem.",
"emails.recovery.thanks": "Muito obrigado", "emails.recovery.thanks": "Muito obrigado",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "Equipa %s", "emails.sender": "Equipa %s",
"emails.verification.subject": "Verificação de contas", "emails.verification.subject": "Verificação de contas",
"emails.verification.hello": "Hey {{name}}", "emails.verification.hello": "Hey {{user}}",
"emails.verification.body": "Siga esta ligação para verificar o seu endereço de correio electrónico.", "emails.verification.body": "Siga esta ligação para verificar o seu endereço de correio electrónico.",
"emails.verification.footer": "Se não pediu para verificar este endereço, pode ignorar esta mensagem.", "emails.verification.footer": "Se não pediu para verificar este endereço, pode ignorar esta mensagem.",
"emails.verification.thanks": "Obrigado", "emails.verification.thanks": "Obrigado",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Obrigado", "emails.magicSession.thanks": "Obrigado",
"emails.magicSession.signature": "Equipa {{project}}", "emails.magicSession.signature": "Equipa {{project}}",
"emails.recovery.subject": "Redefinição de senha", "emails.recovery.subject": "Redefinição de senha",
"emails.recovery.hello": "Olá {{name}}", "emails.recovery.hello": "Olá {{user}}",
"emails.recovery.body": "Utilize este link para redefinir a palavra-passe do seu projecto {{project}}", "emails.recovery.body": "Utilize este link para redefinir a palavra-passe do seu projecto {{project}}",
"emails.recovery.footer": "Se não pediu para redefinir a sua palavra-passe, pode ignorar esta mensagem.", "emails.recovery.footer": "Se não pediu para redefinir a sua palavra-passe, pode ignorar esta mensagem.",
"emails.recovery.thanks": "Obrigado", "emails.recovery.thanks": "Obrigado",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s Echipa", "emails.sender": "%s Echipa",
"emails.verification.subject": "Verificare cont", "emails.verification.subject": "Verificare cont",
"emails.verification.hello": "Bună ziua, {{name}}", "emails.verification.hello": "Bună ziua, {{user}}",
"emails.verification.body": "Click pe acest link pentru a valida adresa de email.", "emails.verification.body": "Click pe acest link pentru a valida adresa de email.",
"emails.verification.footer": "Dacă nu ai cerut validarea adresei de email, poți ignora acest mesaj.", "emails.verification.footer": "Dacă nu ai cerut validarea adresei de email, poți ignora acest mesaj.",
"emails.verification.thanks": "Mulțumim", "emails.verification.thanks": "Mulțumim",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Mulțumim", "emails.magicSession.thanks": "Mulțumim",
"emails.magicSession.signature": "Echipa {{project}}", "emails.magicSession.signature": "Echipa {{project}}",
"emails.recovery.subject": "Resetare parolă", "emails.recovery.subject": "Resetare parolă",
"emails.recovery.hello": "Bună ziua, {{name}}", "emails.recovery.hello": "Bună ziua, {{user}}",
"emails.recovery.body": "Click aici pentru a reseta parola pentru {{project}}", "emails.recovery.body": "Click aici pentru a reseta parola pentru {{project}}",
"emails.recovery.footer": "Dacă nu ai cerut să îți schimbi parola, ignoră acest mesaj.", "emails.recovery.footer": "Dacă nu ai cerut să îți schimbi parola, ignoră acest mesaj.",
"emails.recovery.thanks": "Mulțumim", "emails.recovery.thanks": "Mulțumim",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "Команда %s", "emails.sender": "Команда %s",
"emails.verification.subject": "Верификация аккаунта", "emails.verification.subject": "Верификация аккаунта",
"emails.verification.hello": "Здравствуйте, {{name}}", "emails.verification.hello": "Здравствуйте, {{user}}",
"emails.verification.body": "Перейдите по ссылке, чтобы подтвердить свой адрес электронной почты.", "emails.verification.body": "Перейдите по ссылке, чтобы подтвердить свой адрес электронной почты.",
"emails.verification.footer": "Если вы не запрашивали подтверждение этого адреса, проигнорируйте это сообщение.", "emails.verification.footer": "Если вы не запрашивали подтверждение этого адреса, проигнорируйте это сообщение.",
"emails.verification.thanks": "Спасибо", "emails.verification.thanks": "Спасибо",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Спасибо", "emails.magicSession.thanks": "Спасибо",
"emails.magicSession.signature": "команда {{project}}", "emails.magicSession.signature": "команда {{project}}",
"emails.recovery.subject": "Сброс пароля", "emails.recovery.subject": "Сброс пароля",
"emails.recovery.hello": "Здравствуйте, {{name}}", "emails.recovery.hello": "Здравствуйте, {{user}}",
"emails.recovery.body": "Перейдите по этой ссылке для того чтобы сбросить свой пароль для проекта {{project}}", "emails.recovery.body": "Перейдите по этой ссылке для того чтобы сбросить свой пароль для проекта {{project}}",
"emails.recovery.footer": "Если вы не запрашивали сброс пароля, проигнорируйте это сообщение.", "emails.recovery.footer": "Если вы не запрашивали сброс пароля, проигнорируйте это сообщение.",
"emails.recovery.thanks": "Спасибо", "emails.recovery.thanks": "Спасибо",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s गणः", "emails.sender": "%s गणः",
"emails.verification.subject": "पञ्जिकानिर्णायनम्‌", "emails.verification.subject": "पञ्जिकानिर्णायनम्‌",
"emails.verification.hello": "अयि {{name}}", "emails.verification.hello": "अयि {{user}}",
"emails.verification.body": "ई-पत्रनिर्णायनार्थमिदं संयोगसूत्रमनुसरतु।", "emails.verification.body": "ई-पत्रनिर्णायनार्थमिदं संयोगसूत्रमनुसरतु।",
"emails.verification.footer": "यदि अस्य संकेतस्य निर्णायनं नेष्यते तर्हि वात्र्तामिमामुपेक्षताम्‌।", "emails.verification.footer": "यदि अस्य संकेतस्य निर्णायनं नेष्यते तर्हि वात्र्तामिमामुपेक्षताम्‌।",
"emails.verification.thanks": "धन्यवादः", "emails.verification.thanks": "धन्यवादः",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "धन्यवादः", "emails.magicSession.thanks": "धन्यवादः",
"emails.magicSession.signature": "{{project}} गणः", "emails.magicSession.signature": "{{project}} गणः",
"emails.recovery.subject": "कूटशब्दपुनयाेजनम्‌", "emails.recovery.subject": "कूटशब्दपुनयाेजनम्‌",
"emails.recovery.hello": "अयि भो {{name}}", "emails.recovery.hello": "अयि भो {{user}}",
"emails.recovery.body": "{{project}} कूटशब्दपुनयाेजनाय संयोगमेनमनुसरतु।", "emails.recovery.body": "{{project}} कूटशब्दपुनयाेजनाय संयोगमेनमनुसरतु।",
"emails.recovery.footer": "यदि कूटशब्दस्य पुनयाेजनं नेष्यते तर्हि वात्र्तामिमामुपेक्षताम्‌।", "emails.recovery.footer": "यदि कूटशब्दस्य पुनयाेजनं नेष्यते तर्हि वात्र्तामिमामुपेक्षताम्‌।",
"emails.recovery.thanks": "धन्यवादः", "emails.recovery.thanks": "धन्यवादः",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s ٽيم", "emails.sender": "%s ٽيم",
"emails.verification.subject": " اڪائونٽ جي تصديق", "emails.verification.subject": " اڪائونٽ جي تصديق",
"emails.verification.hello": "سلام {{name}}", "emails.verification.hello": "سلام {{user}}",
"emails.verification.body": "پنھنجي اي ميل ايڊريس جي تصديق ڪرڻ لاءِ ھن لنڪ تي عمل ڪريو.", "emails.verification.body": "پنھنجي اي ميل ايڊريس جي تصديق ڪرڻ لاءِ ھن لنڪ تي عمل ڪريو.",
"emails.verification.footer": "جيڪڏھن توھان نه پ askيا ھئا ھن ايڊريس جي تصديق ڪرڻ لاءِ ، توھان نظر انداز ڪري سگھوٿا ھن پيغام کي.", "emails.verification.footer": "جيڪڏھن توھان نه پ askيا ھئا ھن ايڊريس جي تصديق ڪرڻ لاءِ ، توھان نظر انداز ڪري سگھوٿا ھن پيغام کي.",
"emails.verification.thanks": "مهرباني", "emails.verification.thanks": "مهرباني",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "مهرباني", "emails.magicSession.thanks": "مهرباني",
"emails.magicSession.signature": "{{project}} ٽيم", "emails.magicSession.signature": "{{project}} ٽيم",
"emails.recovery.subject": "پاسورڊ ري سيٽ", "emails.recovery.subject": "پاسورڊ ري سيٽ",
"emails.recovery.hello": "هيلو {{name}}", "emails.recovery.hello": "هيلو {{user}}",
"emails.recovery.body": "ھن لنڪ تي عمل ڪريو پنھنجو {{project}} پاسورڊ ري سيٽ ڪرڻ لاءِ.", "emails.recovery.body": "ھن لنڪ تي عمل ڪريو پنھنجو {{project}} پاسورڊ ري سيٽ ڪرڻ لاءِ.",
"emails.recovery.footer": "جيڪڏھن توھان نه پ پيو ھو پنھنجي پاسورڊ کي ري سيٽ ڪرڻ لاءِ ، توھان نظر انداز ڪري سگھوٿا ھن پيغام کي.", "emails.recovery.footer": "جيڪڏھن توھان نه پ پيو ھو پنھنجي پاسورڊ کي ري سيٽ ڪرڻ لاءِ ، توھان نظر انداز ڪري سگھوٿا ھن پيغام کي.",
"emails.recovery.thanks": "مهرباني", "emails.recovery.thanks": "مهرباني",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s කණ්ඩායම", "emails.sender": "%s කණ්ඩායම",
"emails.verification.subject": "ගිණුම් සත්‍යාපනය", "emails.verification.subject": "ගිණුම් සත්‍යාපනය",
"emails.verification.hello": "හේයි {{name}}", "emails.verification.hello": "හේයි {{user}}",
"emails.verification.body": "ඔබගේ විද්‍යුත් තැපැල් ලිපිනය සත්‍යාපනය කිරීමට මෙම සම්බන්ධකය අනුගමනය කරන්න.", "emails.verification.body": "ඔබගේ විද්‍යුත් තැපැල් ලිපිනය සත්‍යාපනය කිරීමට මෙම සම්බන්ධකය අනුගමනය කරන්න.",
"emails.verification.footer": "මෙම ලිපිනය සත්‍යාපනය කරන ලෙස ඔබ ඉල්ලුවේ නැත්නම්, ඔබට මෙම පණිවිඩය නොසලකා හැරිය හැක.", "emails.verification.footer": "මෙම ලිපිනය සත්‍යාපනය කරන ලෙස ඔබ ඉල්ලුවේ නැත්නම්, ඔබට මෙම පණිවිඩය නොසලකා හැරිය හැක.",
"emails.verification.thanks": "ස්තුතියි", "emails.verification.thanks": "ස්තුතියි",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "ස්තුතියි", "emails.magicSession.thanks": "ස්තුතියි",
"emails.magicSession.signature": "{{project}} කණ්ඩායම", "emails.magicSession.signature": "{{project}} කණ්ඩායම",
"emails.recovery.subject": "මුරපද යළි පිහිටුවීම", "emails.recovery.subject": "මුරපද යළි පිහිටුවීම",
"emails.recovery.hello": "ආයුබෝවන් {{name}}", "emails.recovery.hello": "ආයුබෝවන් {{user}}",
"emails.recovery.body": "ඔබගේ {{project}} මුරපදය නැවත සැකසීමට මෙම සම්බන්ධකය අනුගමනය කරන්න.", "emails.recovery.body": "ඔබගේ {{project}} මුරපදය නැවත සැකසීමට මෙම සම්බන්ධකය අනුගමනය කරන්න.",
"emails.recovery.footer": "ඔබගේ මුරපදය නැවත සකසන ලෙස ඔබ ඉල්ලුවේ නැත්නම්, ඔබට මෙම පණිවිඩය නොසලකා හැරිය හැක.", "emails.recovery.footer": "ඔබගේ මුරපදය නැවත සකසන ලෙස ඔබ ඉල්ලුවේ නැත්නම්, ඔබට මෙම පණිවිඩය නොසලකා හැරිය හැක.",
"emails.recovery.thanks": "ස්තුතියි", "emails.recovery.thanks": "ස්තුතියි",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s Tím", "emails.sender": "%s Tím",
"emails.verification.subject": "Overenie účtu", "emails.verification.subject": "Overenie účtu",
"emails.verification.hello": "Ahoj {{name}}", "emails.verification.hello": "Ahoj {{user}}",
"emails.verification.body": "Použi tento link pre overenie svojej emailovej adresy.", "emails.verification.body": "Použi tento link pre overenie svojej emailovej adresy.",
"emails.verification.footer": "Ak si nepožiadal o overenie tejto adresy, môžeš túto správu ignorovať.", "emails.verification.footer": "Ak si nepožiadal o overenie tejto adresy, môžeš túto správu ignorovať.",
"emails.verification.thanks": "Ďakujeme.", "emails.verification.thanks": "Ďakujeme.",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Ďakujeme", "emails.magicSession.thanks": "Ďakujeme",
"emails.magicSession.signature": "{{project}} tím", "emails.magicSession.signature": "{{project}} tím",
"emails.recovery.subject": "Obnovenie hesla", "emails.recovery.subject": "Obnovenie hesla",
"emails.recovery.hello": "Ahoj {{name}}", "emails.recovery.hello": "Ahoj {{user}}",
"emails.recovery.body": "Použi tento link pre obnovenie svojho {{project}} hesla.", "emails.recovery.body": "Použi tento link pre obnovenie svojho {{project}} hesla.",
"emails.recovery.footer": "Ak si nepožiadal o obnovu svojho hesla, túto správu môžeš ignorovať.", "emails.recovery.footer": "Ak si nepožiadal o obnovu svojho hesla, túto správu môžeš ignorovať.",
"emails.recovery.thanks": "Ďakujeme", "emails.recovery.thanks": "Ďakujeme",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "Chikwata che%s", "emails.sender": "Chikwata che%s",
"emails.verification.subject": "Kuratidzi kuti ndiwe muridzi weakaundi", "emails.verification.subject": "Kuratidzi kuti ndiwe muridzi weakaundi",
"emails.verification.hello": "Hesi {{name}}", "emails.verification.hello": "Hesi {{user}}",
"emails.verification.body": "Tevedza chinongedzo ichi kuti uratidze kuti kero iyi ndeyako.", "emails.verification.body": "Tevedza chinongedzo ichi kuti uratidze kuti kero iyi ndeyako.",
"emails.verification.footer": "Kana usina kukumbira kuti uratidze kuti kero iyi ndeyako, unogona kufuratira meseji iyi.", "emails.verification.footer": "Kana usina kukumbira kuti uratidze kuti kero iyi ndeyako, unogona kufuratira meseji iyi.",
"emails.verification.thanks": "Ndatenda", "emails.verification.thanks": "Ndatenda",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Ndatenda", "emails.magicSession.thanks": "Ndatenda",
"emails.magicSession.signature": "Chikwata che{{project}}", "emails.magicSession.signature": "Chikwata che{{project}}",
"emails.recovery.subject": "Kuchinja pasiwedhi", "emails.recovery.subject": "Kuchinja pasiwedhi",
"emails.recovery.hello": "Mhoro {{name}}", "emails.recovery.hello": "Mhoro {{user}}",
"emails.recovery.body": "Baya chinongedzo ichi kuti uchinje pasiwedhi yako ye{{project}}.", "emails.recovery.body": "Baya chinongedzo ichi kuti uchinje pasiwedhi yako ye{{project}}.",
"emails.recovery.footer": "Kana usina kukumbira kuchinja pasiwedhi yako, unogona kufuratira meseji iyi.", "emails.recovery.footer": "Kana usina kukumbira kuchinja pasiwedhi yako, unogona kufuratira meseji iyi.",
"emails.recovery.thanks": "Ndatenda", "emails.recovery.thanks": "Ndatenda",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s-teamet", "emails.sender": "%s-teamet",
"emails.verification.subject": "Verifiera konto", "emails.verification.subject": "Verifiera konto",
"emails.verification.hello": "Hej {{name}}", "emails.verification.hello": "Hej {{user}}",
"emails.verification.body": "Klicka på denna länk för att verifiera din email", "emails.verification.body": "Klicka på denna länk för att verifiera din email",
"emails.verification.footer": "Om du inte bad om att verifiera den här e-postadressen kan du ignorera detta mail.", "emails.verification.footer": "Om du inte bad om att verifiera den här e-postadressen kan du ignorera detta mail.",
"emails.verification.thanks": "Tack", "emails.verification.thanks": "Tack",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Tack", "emails.magicSession.thanks": "Tack",
"emails.magicSession.signature": "{{project}} teamet", "emails.magicSession.signature": "{{project}} teamet",
"emails.recovery.subject": "Återställ lösenord", "emails.recovery.subject": "Återställ lösenord",
"emails.recovery.hello": "Hej {{name}}", "emails.recovery.hello": "Hej {{user}}",
"emails.recovery.body": "Klicka på denna länk för att återställa lösenordet på {{project}}", "emails.recovery.body": "Klicka på denna länk för att återställa lösenordet på {{project}}",
"emails.recovery.footer": "Om du inte bad om att återställa ditt lösenord kan du ignorera detta mail.", "emails.recovery.footer": "Om du inte bad om att återställa ditt lösenord kan du ignorera detta mail.",
"emails.recovery.thanks": "Tack", "emails.recovery.thanks": "Tack",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s குழு", "emails.sender": "%s குழு",
"emails.verification.subject": "கணக்கு சரிபார்ப்பு", "emails.verification.subject": "கணக்கு சரிபார்ப்பு",
"emails.verification.hello": "ஏய் {{name}}", "emails.verification.hello": "ஏய் {{user}}",
"emails.verification.body": "உங்கள் மின்னஞ்சல் முகவரியைச் சரிபார்க்க இந்த இணைப்பைப் பின்தொடரவும்.", "emails.verification.body": "உங்கள் மின்னஞ்சல் முகவரியைச் சரிபார்க்க இந்த இணைப்பைப் பின்தொடரவும்.",
"emails.verification.footer": "இந்த முகவரியைச் சரிபார்க்கும்படி உங்களிடம் கேட்கப்படவில்லை என்றால், இந்தச் செய்தியை நீங்கள் புறக்கணிக்கலாம்.", "emails.verification.footer": "இந்த முகவரியைச் சரிபார்க்கும்படி உங்களிடம் கேட்கப்படவில்லை என்றால், இந்தச் செய்தியை நீங்கள் புறக்கணிக்கலாம்.",
"emails.verification.thanks": "நன்றி", "emails.verification.thanks": "நன்றி",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "நன்றி", "emails.magicSession.thanks": "நன்றி",
"emails.magicSession.signature": "{{project}} குழு", "emails.magicSession.signature": "{{project}} குழு",
"emails.recovery.subject": "கடவுச்சொல் மீட்டமைப்பு", "emails.recovery.subject": "கடவுச்சொல் மீட்டமைப்பு",
"emails.recovery.hello": "வணக்கம் {{name}}", "emails.recovery.hello": "வணக்கம் {{user}}",
"emails.recovery.body": "மீட்டமைக்க இந்த இணைப்பைப் பின்தொடரவும் {{project}} கடவுச்சொல்.", "emails.recovery.body": "மீட்டமைக்க இந்த இணைப்பைப் பின்தொடரவும் {{project}} கடவுச்சொல்.",
"emails.recovery.footer": "உங்கள் கடவுச்சொல்லை மீட்டமைக்கும்படி உங்களிடம் கேட்கப்படவில்லை என்றால், இந்தச் செய்தியை நீங்கள் புறக்கணிக்கலாம்.", "emails.recovery.footer": "உங்கள் கடவுச்சொல்லை மீட்டமைக்கும்படி உங்களிடம் கேட்கப்படவில்லை என்றால், இந்தச் செய்தியை நீங்கள் புறக்கணிக்கலாம்.",
"emails.recovery.thanks": "நன்றி", "emails.recovery.thanks": "நன்றி",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s జట్టు", "emails.sender": "%s జట్టు",
"emails.verification.subject": "ఖాతా ధృవీకరణ", "emails.verification.subject": "ఖాతా ధృవీకరణ",
"emails.verification.hello": "నమస్కారము {{name}}", "emails.verification.hello": "నమస్కారము {{user}}",
"emails.verification.body": "ఈ లింక్ ద్వారా ఇమెయిల్ ని ధృవీకరించండి", "emails.verification.body": "ఈ లింక్ ద్వారా ఇమెయిల్ ని ధృవీకరించండి",
"emails.verification.footer": "మీరు ఈ చిరునామాను ధృవీకరించమని అడగనట్లయితే, మీరు ఈ సందేశాన్ని విస్మరించవచ్చు", "emails.verification.footer": "మీరు ఈ చిరునామాను ధృవీకరించమని అడగనట్లయితే, మీరు ఈ సందేశాన్ని విస్మరించవచ్చు",
"emails.verification.thanks": "ధన్యవాదాలు", "emails.verification.thanks": "ధన్యవాదాలు",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "ధన్యవాదాలు", "emails.magicSession.thanks": "ధన్యవాదాలు",
"emails.magicSession.signature": "{{project}} జట్", "emails.magicSession.signature": "{{project}} జట్",
"emails.recovery.subject": "పాస్వర్డ్ రీసెట్", "emails.recovery.subject": "పాస్వర్డ్ రీసెట్",
"emails.recovery.hello": "నమస్కారమ {{name}}", "emails.recovery.hello": "నమస్కారమ {{user}}",
"emails.recovery.body": "మీ {{project}} పాస్వర్డ్ ని రీసెట్ చేయడానికి ఈ లింక్ ని అనుసరించండి", "emails.recovery.body": "మీ {{project}} పాస్వర్డ్ ని రీసెట్ చేయడానికి ఈ లింక్ ని అనుసరించండి",
"emails.recovery.footer": "మీరు మీ పాస్వర్డ్ ని రీసెట్ చేయమని అడగనట్లయితే, మీరు ఈ సందేశాన్ని విస్మరించవచ్చు", "emails.recovery.footer": "మీరు మీ పాస్వర్డ్ ని రీసెట్ చేయమని అడగనట్లయితే, మీరు ఈ సందేశాన్ని విస్మరించవచ్చు",
"emails.recovery.thanks": "ధన్యవాదాల", "emails.recovery.thanks": "ధన్యవాదాల",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "ทีม %s", "emails.sender": "ทีม %s",
"emails.verification.subject": "การยืนยันบัญชีผู้ใช้", "emails.verification.subject": "การยืนยันบัญชีผู้ใช้",
"emails.verification.hello": "เรียนคุณ {{name}}", "emails.verification.hello": "เรียนคุณ {{user}}",
"emails.verification.body": "กดเข้าไปที่ลิงก์นี้เพื่อยืนยันอีเมลของท่าน", "emails.verification.body": "กดเข้าไปที่ลิงก์นี้เพื่อยืนยันอีเมลของท่าน",
"emails.verification.footer": "หากท่านไม่ได้ต้องการที่จะยืนยันอีเมลนี้ ท่านสามารถเพิกเฉยข้อความนี้ได้", "emails.verification.footer": "หากท่านไม่ได้ต้องการที่จะยืนยันอีเมลนี้ ท่านสามารถเพิกเฉยข้อความนี้ได้",
"emails.verification.thanks": "ขอบคุณ", "emails.verification.thanks": "ขอบคุณ",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "ขอบคุณ", "emails.magicSession.thanks": "ขอบคุณ",
"emails.magicSession.signature": "ทีม {{project}}", "emails.magicSession.signature": "ทีม {{project}}",
"emails.recovery.subject": "รีเซ็ตรหัสผ่าน", "emails.recovery.subject": "รีเซ็ตรหัสผ่าน",
"emails.recovery.hello": "เรียนคุณ {{name}}", "emails.recovery.hello": "เรียนคุณ {{user}}",
"emails.recovery.body": "กดเข้าไปที่ลิงก์นี้เพื่อรีเซ็ตรหัสผ่านสำหรับโปรเจกต์ {{project}} ของท่าน", "emails.recovery.body": "กดเข้าไปที่ลิงก์นี้เพื่อรีเซ็ตรหัสผ่านสำหรับโปรเจกต์ {{project}} ของท่าน",
"emails.recovery.footer": "หากท่านไม่ได้ต้องการที่จะรีเซ็ตรหัสผ่านของท่าน ท่านสามารถเพิกเฉยข้อความนี้ได้", "emails.recovery.footer": "หากท่านไม่ได้ต้องการที่จะรีเซ็ตรหัสผ่านของท่าน ท่านสามารถเพิกเฉยข้อความนี้ได้",
"emails.recovery.thanks": "ขอบคุณ", "emails.recovery.thanks": "ขอบคุณ",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "Pangkat ng %s", "emails.sender": "Pangkat ng %s",
"emails.verification.subject": "Pagpapatunay ng account", "emails.verification.subject": "Pagpapatunay ng account",
"emails.verification.hello": "Kamusta {{name}}", "emails.verification.hello": "Kamusta {{user}}",
"emails.verification.body": "Sundin ang link na ito upang ma-verify ang iyong email address.", "emails.verification.body": "Sundin ang link na ito upang ma-verify ang iyong email address.",
"emails.verification.footer": "Kung hindi mo hiningi na i-verify ang address na ito, maaari mong balewalain ang mensahe na ito.", "emails.verification.footer": "Kung hindi mo hiningi na i-verify ang address na ito, maaari mong balewalain ang mensahe na ito.",
"emails.verification.thanks": "Salamat", "emails.verification.thanks": "Salamat",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Salamat", "emails.magicSession.thanks": "Salamat",
"emails.magicSession.signature": "Pangkat ng {{project}}", "emails.magicSession.signature": "Pangkat ng {{project}}",
"emails.recovery.subject": "I-reset ang password", "emails.recovery.subject": "I-reset ang password",
"emails.recovery.hello": "Kamusta {{name}}", "emails.recovery.hello": "Kamusta {{user}}",
"emails.recovery.body": "Sundin ang link na ito upang i-reset ang password ng iyong {{project}}.", "emails.recovery.body": "Sundin ang link na ito upang i-reset ang password ng iyong {{project}}.",
"emails.recovery.footer": "Kung hindi mo hiningi na i-reset ang iyong password, maaari mong balewalain ang mensahe na ito.", "emails.recovery.footer": "Kung hindi mo hiningi na i-reset ang iyong password, maaari mong balewalain ang mensahe na ito.",
"emails.recovery.thanks": "Salamat", "emails.recovery.thanks": "Salamat",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "Команда %s", "emails.sender": "Команда %s",
"emails.verification.subject": "Верифікація акаунта", "emails.verification.subject": "Верифікація акаунта",
"emails.verification.hello": "Вітаємо, {{name}}", "emails.verification.hello": "Вітаємо, {{user}}",
"emails.verification.body": "Перейдіть за цим посиланням, щоб підтвердити свою електронну адресу.", "emails.verification.body": "Перейдіть за цим посиланням, щоб підтвердити свою електронну адресу.",
"emails.verification.footer": "Якщо ви не запитували підтвердження цієї адреси, ви можете ігнорувати це повідомлення.", "emails.verification.footer": "Якщо ви не запитували підтвердження цієї адреси, ви можете ігнорувати це повідомлення.",
"emails.verification.thanks": "Дякуємо", "emails.verification.thanks": "Дякуємо",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Дякуємо", "emails.magicSession.thanks": "Дякуємо",
"emails.magicSession.signature": "команда {{project}}", "emails.magicSession.signature": "команда {{project}}",
"emails.recovery.subject": "Скидання пароля", "emails.recovery.subject": "Скидання пароля",
"emails.recovery.hello": "Вітаємо, {{name}}", "emails.recovery.hello": "Вітаємо, {{user}}",
"emails.recovery.body": "Перейдіть за цим посиланням для того щоб скинути свій пароль для проекту {{project}}", "emails.recovery.body": "Перейдіть за цим посиланням для того щоб скинути свій пароль для проекту {{project}}",
"emails.recovery.footer": "Якщо ви не запитували скидання паролю, проігноруйте це повідомлення.", "emails.recovery.footer": "Якщо ви не запитували скидання паролю, проігноруйте це повідомлення.",
"emails.recovery.thanks": "Дякуємо", "emails.recovery.thanks": "Дякуємо",

View file

@ -4,7 +4,7 @@
"settings.direction": "rtl", "settings.direction": "rtl",
"emails.sender": "%s ٹیم", "emails.sender": "%s ٹیم",
"emails.verification.subject": "اکاؤنٹ کی تصدیق", "emails.verification.subject": "اکاؤنٹ کی تصدیق",
"emails.verification.hello": "خوش آمدید {{name}}", "emails.verification.hello": "خوش آمدید {{user}}",
"emails.verification.body": "براہ کرم اپنے ای میل کی تصدیق کے لیے درج ذیل لنک پر عمل کریں۔", "emails.verification.body": "براہ کرم اپنے ای میل کی تصدیق کے لیے درج ذیل لنک پر عمل کریں۔",
"emails.verification.footer": "اگر آپ نے اس پتے کی تصدیق کے لیے نہیں کہا تو آپ اس پیغام کو نظر انداز کر سکتے ہیں۔", "emails.verification.footer": "اگر آپ نے اس پتے کی تصدیق کے لیے نہیں کہا تو آپ اس پیغام کو نظر انداز کر سکتے ہیں۔",
"emails.verification.thanks": "شکریہ", "emails.verification.thanks": "شکریہ",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "شکریہ", "emails.magicSession.thanks": "شکریہ",
"emails.magicSession.signature": "ٹیم۔ {{project}}", "emails.magicSession.signature": "ٹیم۔ {{project}}",
"emails.recovery.subject": "پاس ورڈ ری سیٹ۔", "emails.recovery.subject": "پاس ورڈ ری سیٹ۔",
"emails.recovery.hello": "ہیلو {{name}}", "emails.recovery.hello": "ہیلو {{user}}",
"emails.recovery.body": "{{project}} کا پاس ورڈ تبدیل کرنے کے لیے درج ذیل لنک پر عمل کریں", "emails.recovery.body": "{{project}} کا پاس ورڈ تبدیل کرنے کے لیے درج ذیل لنک پر عمل کریں",
"emails.recovery.footer": "اگر آپ نے اپنا پاس ورڈ دوبارہ ترتیب دینے کے لیے نہیں کہا تو آپ اس پیغام کو نظر انداز کر سکتے ہیں۔", "emails.recovery.footer": "اگر آپ نے اپنا پاس ورڈ دوبارہ ترتیب دینے کے لیے نہیں کہا تو آپ اس پیغام کو نظر انداز کر سکتے ہیں۔",
"emails.recovery.thanks": "شکریہ", "emails.recovery.thanks": "شکریہ",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "Nhóm %s", "emails.sender": "Nhóm %s",
"emails.verification.subject": "Xác minh tài khoản", "emails.verification.subject": "Xác minh tài khoản",
"emails.verification.hello": "Chào {{name}}", "emails.verification.hello": "Chào {{user}}",
"emails.verification.body": "Nhấn vào đường dẫn sau để xác minh địa chỉ email của bạn.", "emails.verification.body": "Nhấn vào đường dẫn sau để xác minh địa chỉ email của bạn.",
"emails.verification.footer": "Nếu bạn không yêu cầu xác minh tài khoản, bạn có thể bỏ qua email này.", "emails.verification.footer": "Nếu bạn không yêu cầu xác minh tài khoản, bạn có thể bỏ qua email này.",
"emails.verification.thanks": "Cảm ơn", "emails.verification.thanks": "Cảm ơn",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "Cảm ơn", "emails.magicSession.thanks": "Cảm ơn",
"emails.magicSession.signature": "Nhóm {{project}}", "emails.magicSession.signature": "Nhóm {{project}}",
"emails.recovery.subject": "Thiết lập lại mật khẩu", "emails.recovery.subject": "Thiết lập lại mật khẩu",
"emails.recovery.hello": "Chào {{name}}", "emails.recovery.hello": "Chào {{user}}",
"emails.recovery.body": "Nhấn vào đường dẫn sau để thiết lập lại mật khẩu {{project}} của bạn.", "emails.recovery.body": "Nhấn vào đường dẫn sau để thiết lập lại mật khẩu {{project}} của bạn.",
"emails.recovery.footer": "Nếu bạn không yêu cầu thiết lập lại mật khẩu, bạn có thể bỏ qua email này.", "emails.recovery.footer": "Nếu bạn không yêu cầu thiết lập lại mật khẩu, bạn có thể bỏ qua email này.",
"emails.recovery.thanks": "Cảm ơn", "emails.recovery.thanks": "Cảm ơn",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s 小组", "emails.sender": "%s 小组",
"emails.verification.subject": "帐户验证", "emails.verification.subject": "帐户验证",
"emails.verification.hello": "你好 {{name}}", "emails.verification.hello": "你好 {{user}}",
"emails.verification.body": "点此链接验证您的电子邮件地址。", "emails.verification.body": "点此链接验证您的电子邮件地址。",
"emails.verification.footer": "如果您没有要求验证此地址,则可忽略此消息。", "emails.verification.footer": "如果您没有要求验证此地址,则可忽略此消息。",
"emails.verification.thanks": "谢谢", "emails.verification.thanks": "谢谢",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "谢谢", "emails.magicSession.thanks": "谢谢",
"emails.magicSession.signature": "{{project}} 团队", "emails.magicSession.signature": "{{project}} 团队",
"emails.recovery.subject": "重设密码", "emails.recovery.subject": "重设密码",
"emails.recovery.hello": "你好 {{name}}", "emails.recovery.hello": "你好 {{user}}",
"emails.recovery.body": "点此链接重置您的 {{project}} 密码。", "emails.recovery.body": "点此链接重置您的 {{project}} 密码。",
"emails.recovery.footer": "如果您没有要求重置密码,则可以忽略此消息。", "emails.recovery.footer": "如果您没有要求重置密码,则可以忽略此消息。",
"emails.recovery.thanks": "谢谢", "emails.recovery.thanks": "谢谢",

View file

@ -4,7 +4,7 @@
"settings.direction": "ltr", "settings.direction": "ltr",
"emails.sender": "%s 小組", "emails.sender": "%s 小組",
"emails.verification.subject": "帳戶驗證", "emails.verification.subject": "帳戶驗證",
"emails.verification.hello": "嗨 {{name}}", "emails.verification.hello": "嗨 {{user}}",
"emails.verification.body": "按照此連結驗證您的電子郵件地址。", "emails.verification.body": "按照此連結驗證您的電子郵件地址。",
"emails.verification.footer": "如果您沒有要求驗證此地址,則可以忽略此消息。", "emails.verification.footer": "如果您沒有要求驗證此地址,則可以忽略此消息。",
"emails.verification.thanks": "謝謝", "emails.verification.thanks": "謝謝",
@ -16,7 +16,7 @@
"emails.magicSession.thanks": "謝謝", "emails.magicSession.thanks": "謝謝",
"emails.magicSession.signature": "{{project}} 團隊", "emails.magicSession.signature": "{{project}} 團隊",
"emails.recovery.subject": "重設密碼", "emails.recovery.subject": "重設密碼",
"emails.recovery.hello": "您好 {{name}}", "emails.recovery.hello": "您好 {{user}}",
"emails.recovery.body": "按照此連結重置您的 {{project}} 密碼。", "emails.recovery.body": "按照此連結重置您的 {{project}} 密碼。",
"emails.recovery.footer": "如果您沒有要求重置密碼,則可以忽略此消息。", "emails.recovery.footer": "如果您沒有要求重置密碼,則可以忽略此消息。",
"emails.recovery.thanks": "謝謝", "emails.recovery.thanks": "謝謝",

View file

@ -357,7 +357,7 @@ return [
[ [
'key' => 'dotnet', 'key' => 'dotnet',
'name' => '.NET', 'name' => '.NET',
'version' => '0.4.2', 'version' => '0.5.0',
'url' => 'https://github.com/appwrite/sdk-for-dotnet', 'url' => 'https://github.com/appwrite/sdk-for-dotnet',
'package' => 'https://www.nuget.org/packages/Appwrite', 'package' => 'https://www.nuget.org/packages/Appwrite',
'enabled' => true, 'enabled' => true,

View file

@ -57,6 +57,9 @@ $admins = [
'rules.write', 'rules.write',
'migrations.read', 'migrations.read',
'migrations.write', 'migrations.write',
'vcs.read',
'vcs.write',
'assistant.read',
]; ];
return [ return [

View file

@ -87,5 +87,14 @@ return [ // List of publicly visible scopes
], ],
'migrations.write' => [ 'migrations.write' => [
'description' => 'Access to create, update, and delete your project\'s migrations.', 'description' => 'Access to create, update, and delete your project\'s migrations.',
] ],
'vcs.read' => [
'description' => 'Access to read your project\'s VCS repositories',
],
'vcs.write' => [
'description' => 'Access to create, update, and delete your project\'s VCS repositories',
],
'assistant.read' => [
'description' => 'Access to read the Assistant service',
],
]; ];

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -1 +1 @@
Subproject commit bfd14ef923e57938639e95e5ab32e68d49e24407 Subproject commit 88b6d59051992ed86183ee83d77bf678d1cb73bf

View file

@ -1048,17 +1048,19 @@ App::post('/v1/account/sessions/magic-url')
$emailVariables = [ $emailVariables = [
'subject' => $subject, 'subject' => $subject,
'hello' => $locale->getText("emails.magicSession.hello"), 'hello' => $locale->getText("emails.magicSession.hello"),
'name' => '',
'body' => $body, 'body' => $body,
'redirect' => $url,
'footer' => $locale->getText("emails.magicSession.footer"), 'footer' => $locale->getText("emails.magicSession.footer"),
'thanks' => $locale->getText("emails.magicSession.thanks"), 'thanks' => $locale->getText("emails.magicSession.thanks"),
'signature' => $locale->getText("emails.magicSession.signature"), 'signature' => $locale->getText("emails.magicSession.signature"),
'project' => $project->getAttribute('name'),
'direction' => $locale->getText('settings.direction'), 'direction' => $locale->getText('settings.direction'),
'bg-body' => '#f7f7f7', 'bg-body' => '#f7f7f7',
'bg-content' => '#ffffff', 'bg-content' => '#ffffff',
'text-content' => '#000000', 'text-content' => '#000000',
/* {{user}} ,{{team}}, {{project}} and {{redirect}} are required in the templates */
'user' => '',
'team' => '',
'project' => $project->getAttribute('name'),
'redirect' => $url
]; ];
$mails $mails
@ -2501,17 +2503,19 @@ App::post('/v1/account/recovery')
$emailVariables = [ $emailVariables = [
'subject' => $subject, 'subject' => $subject,
'hello' => $locale->getText("emails.recovery.hello"), 'hello' => $locale->getText("emails.recovery.hello"),
'name' => $profile->getAttribute('name'),
'body' => $body, 'body' => $body,
'redirect' => $url,
'footer' => $locale->getText("emails.recovery.footer"), 'footer' => $locale->getText("emails.recovery.footer"),
'thanks' => $locale->getText("emails.recovery.thanks"), 'thanks' => $locale->getText("emails.recovery.thanks"),
'signature' => $locale->getText("emails.recovery.signature"), 'signature' => $locale->getText("emails.recovery.signature"),
'project' => $projectName,
'direction' => $locale->getText('settings.direction'), 'direction' => $locale->getText('settings.direction'),
'bg-body' => '#f7f7f7', 'bg-body' => '#f7f7f7',
'bg-content' => '#ffffff', 'bg-content' => '#ffffff',
'text-content' => '#000000', 'text-content' => '#000000',
/* {{user}} ,{{team}}, {{project}} and {{redirect}} are required in the templates */
'user' => $profile->getAttribute('name'),
'team' => '',
'project' => $projectName,
'redirect' => $url
]; ];
@ -2751,17 +2755,19 @@ App::post('/v1/account/verification')
$emailVariables = [ $emailVariables = [
'subject' => $subject, 'subject' => $subject,
'hello' => $locale->getText("emails.verification.hello"), 'hello' => $locale->getText("emails.verification.hello"),
'name' => $user->getAttribute('name'),
'body' => $body, 'body' => $body,
'redirect' => $url,
'footer' => $locale->getText("emails.verification.footer"), 'footer' => $locale->getText("emails.verification.footer"),
'thanks' => $locale->getText("emails.verification.thanks"), 'thanks' => $locale->getText("emails.verification.thanks"),
'signature' => $locale->getText("emails.verification.signature"), 'signature' => $locale->getText("emails.verification.signature"),
'project' => $projectName,
'direction' => $locale->getText('settings.direction'), 'direction' => $locale->getText('settings.direction'),
'bg-body' => '#f7f7f7', 'bg-body' => '#f7f7f7',
'bg-content' => '#ffffff', 'bg-content' => '#ffffff',
'text-content' => '#000000', 'text-content' => '#000000',
/* {{user}} ,{{team}}, {{project}} and {{redirect}} are required in the templates */
'user' => $user->getAttribute('name'),
'team' => '',
'project' => $projectName,
'redirect' => $url
]; ];
$mails $mails

View file

@ -58,6 +58,7 @@ App::get('/v1/console/variables')
App::post('/v1/console/assistant') App::post('/v1/console/assistant')
->desc('Ask Query') ->desc('Ask Query')
->groups(['api', 'assistant']) ->groups(['api', 'assistant'])
->label('scope', 'assistant.read')
->label('sdk.auth', [APP_AUTH_TYPE_ADMIN]) ->label('sdk.auth', [APP_AUTH_TYPE_ADMIN])
->label('sdk.namespace', 'assistant') ->label('sdk.namespace', 'assistant')
->label('sdk.method', 'chat') ->label('sdk.method', 'chat')

View file

@ -580,7 +580,7 @@ App::get('/v1/migrations/firebase/report/oauth')
App::get('/v1/migrations/firebase/connect') App::get('/v1/migrations/firebase/connect')
->desc('Authorize with firebase') ->desc('Authorize with firebase')
->groups(['api', 'migrations']) ->groups(['api', 'migrations'])
->label('origin', '*') ->label('scope', 'migrations.write')
->label('sdk.auth', [APP_AUTH_TYPE_ADMIN]) ->label('sdk.auth', [APP_AUTH_TYPE_ADMIN])
->label('sdk.namespace', 'migrations') ->label('sdk.namespace', 'migrations')
->label('sdk.method', 'createFirebaseAuth') ->label('sdk.method', 'createFirebaseAuth')
@ -622,6 +622,7 @@ App::get('/v1/migrations/firebase/connect')
App::get('/v1/migrations/firebase/redirect') App::get('/v1/migrations/firebase/redirect')
->desc('Capture and receive data on Firebase authorization') ->desc('Capture and receive data on Firebase authorization')
->groups(['api', 'migrations']) ->groups(['api', 'migrations'])
->label('scope', 'public')
->label('error', __DIR__ . '/../../views/general/error.phtml') ->label('error', __DIR__ . '/../../views/general/error.phtml')
->param('code', '', new Text(2048), 'OAuth2 code. This is a temporary code that the will be later exchanged for an access token.', true) ->param('code', '', new Text(2048), 'OAuth2 code. This is a temporary code that the will be later exchanged for an access token.', true)
->inject('user') ->inject('user')
@ -733,6 +734,7 @@ App::get('/v1/migrations/firebase/redirect')
App::get('/v1/migrations/firebase/projects') App::get('/v1/migrations/firebase/projects')
->desc('List Firebase Projects') ->desc('List Firebase Projects')
->groups(['api', 'migrations']) ->groups(['api', 'migrations'])
->label('scope', 'migrations.read')
->label('sdk.auth', [APP_AUTH_TYPE_ADMIN]) ->label('sdk.auth', [APP_AUTH_TYPE_ADMIN])
->label('sdk.namespace', 'migrations') ->label('sdk.namespace', 'migrations')
->label('sdk.method', 'listFirebaseProjects') ->label('sdk.method', 'listFirebaseProjects')
@ -821,6 +823,7 @@ App::get('/v1/migrations/firebase/projects')
App::get('/v1/migrations/firebase/deauthorize') App::get('/v1/migrations/firebase/deauthorize')
->desc('Revoke Appwrite\'s authorization to access Firebase Projects') ->desc('Revoke Appwrite\'s authorization to access Firebase Projects')
->groups(['api', 'migrations']) ->groups(['api', 'migrations'])
->label('scope', 'migrations.write')
->label('sdk.auth', [APP_AUTH_TYPE_ADMIN]) ->label('sdk.auth', [APP_AUTH_TYPE_ADMIN])
->label('sdk.namespace', 'migrations') ->label('sdk.namespace', 'migrations')
->label('sdk.method', 'deleteFirebaseAuth') ->label('sdk.method', 'deleteFirebaseAuth')

View file

@ -1670,7 +1670,7 @@ App::get('/v1/projects/:projectId/templates/email/:type/:locale')
$message = Template::fromFile(__DIR__ . '/../../config/locale/templates/email-inner-base.tpl'); $message = Template::fromFile(__DIR__ . '/../../config/locale/templates/email-inner-base.tpl');
$message $message
->setParam('{{hello}}', $localeObj->getText("emails.{$type}.hello")) ->setParam('{{hello}}', $localeObj->getText("emails.{$type}.hello"))
->setParam('{{name}}', '') ->setParam('{{user}}', '')
->setParam('{{footer}}', $localeObj->getText("emails.{$type}.footer")) ->setParam('{{footer}}', $localeObj->getText("emails.{$type}.footer"))
->setParam('{{body}}', $localeObj->getText('emails.' . $type . '.body')) ->setParam('{{body}}', $localeObj->getText('emails.' . $type . '.body'))
->setParam('{{thanks}}', $localeObj->getText("emails.{$type}.thanks")) ->setParam('{{thanks}}', $localeObj->getText("emails.{$type}.thanks"))

View file

@ -599,20 +599,21 @@ App::post('/v1/teams/:teamId/memberships')
$emailVariables = [ $emailVariables = [
'owner' => $user->getAttribute('name'), 'owner' => $user->getAttribute('name'),
'team' => $team->getAttribute('name'),
'subject' => $subject, 'subject' => $subject,
'hello' => $locale->getText("emails.invitation.hello"), 'hello' => $locale->getText("emails.invitation.hello"),
'name' => $user->getAttribute('name'),
'body' => $body, 'body' => $body,
'redirect' => $url,
'footer' => $locale->getText("emails.invitation.footer"), 'footer' => $locale->getText("emails.invitation.footer"),
'thanks' => $locale->getText("emails.invitation.thanks"), 'thanks' => $locale->getText("emails.invitation.thanks"),
'signature' => $locale->getText("emails.invitation.signature"), 'signature' => $locale->getText("emails.invitation.signature"),
'project' => $projectName,
'direction' => $locale->getText('settings.direction'), 'direction' => $locale->getText('settings.direction'),
'bg-body' => '#f7f7f7', 'bg-body' => '#f7f7f7',
'bg-content' => '#ffffff', 'bg-content' => '#ffffff',
'text-content' => '#000000', 'text-content' => '#000000',
/* {{user}} ,{{team}}, {{project}} and {{redirect}} are required in the templates */
'user' => $user->getAttribute('name'),
'team' => $team->getAttribute('name'),
'project' => $projectName,
'redirect' => $url
]; ];
$mails $mails

View file

@ -226,8 +226,7 @@ $createGitDeployments = function (GitHub $github, string $providerInstallationId
App::get('/v1/vcs/github/authorize') App::get('/v1/vcs/github/authorize')
->desc('Install GitHub App') ->desc('Install GitHub App')
->groups(['api', 'vcs']) ->groups(['api', 'vcs'])
->label('origin', '*') ->label('scope', 'vcs.read')
->label('sdk.auth', [])
->label('sdk.namespace', 'vcs') ->label('sdk.namespace', 'vcs')
->label('sdk.auth', [APP_AUTH_TYPE_ADMIN]) ->label('sdk.auth', [APP_AUTH_TYPE_ADMIN])
->label('sdk.method', 'createGitHubInstallation') ->label('sdk.method', 'createGitHubInstallation')
@ -238,12 +237,12 @@ App::get('/v1/vcs/github/authorize')
->label('sdk.hide', true) ->label('sdk.hide', true)
->param('success', '', fn ($clients) => new Host($clients), 'URL to redirect back to console after a successful installation attempt.', true, ['clients']) ->param('success', '', fn ($clients) => new Host($clients), 'URL to redirect back to console after a successful installation attempt.', true, ['clients'])
->param('failure', '', fn ($clients) => new Host($clients), 'URL to redirect back to console after a failed installation attempt.', true, ['clients']) ->param('failure', '', fn ($clients) => new Host($clients), 'URL to redirect back to console after a failed installation attempt.', true, ['clients'])
->param('projectId', '', new UID(), 'Project ID')
->inject('request') ->inject('request')
->inject('response') ->inject('response')
->action(function (string $success, string $failure, string $projectId, Request $request, Response $response) { ->inject('project')
->action(function (string $success, string $failure, Request $request, Response $response, Document $project) {
$state = \json_encode([ $state = \json_encode([
'projectId' => $projectId, 'projectId' => $project->getId(),
'success' => $success, 'success' => $success,
'failure' => $failure, 'failure' => $failure,
]); ]);
@ -263,6 +262,7 @@ App::get('/v1/vcs/github/authorize')
App::get('/v1/vcs/github/callback') App::get('/v1/vcs/github/callback')
->desc('Capture installation and authorization from GitHub App') ->desc('Capture installation and authorization from GitHub App')
->groups(['api', 'vcs']) ->groups(['api', 'vcs'])
->label('scope', 'public')
->label('error', __DIR__ . '/../../views/general/error.phtml') ->label('error', __DIR__ . '/../../views/general/error.phtml')
->param('installation_id', '', new Text(256, 0), 'GitHub installation ID', true) ->param('installation_id', '', new Text(256, 0), 'GitHub installation ID', true)
->param('setup_action', '', new Text(256, 0), 'GitHub setup actuon type', true) ->param('setup_action', '', new Text(256, 0), 'GitHub setup actuon type', true)
@ -422,6 +422,7 @@ App::get('/v1/vcs/github/callback')
App::post('/v1/vcs/github/installations/:installationId/providerRepositories/:providerRepositoryId/detection') App::post('/v1/vcs/github/installations/:installationId/providerRepositories/:providerRepositoryId/detection')
->desc('Detect runtime settings from source code') ->desc('Detect runtime settings from source code')
->groups(['api', 'vcs']) ->groups(['api', 'vcs'])
->label('scope', 'vcs.write')
->label('sdk.namespace', 'vcs') ->label('sdk.namespace', 'vcs')
->label('sdk.auth', [APP_AUTH_TYPE_ADMIN]) ->label('sdk.auth', [APP_AUTH_TYPE_ADMIN])
->label('sdk.method', 'createRepositoryDetection') ->label('sdk.method', 'createRepositoryDetection')
@ -488,6 +489,7 @@ App::post('/v1/vcs/github/installations/:installationId/providerRepositories/:pr
App::get('/v1/vcs/github/installations/:installationId/providerRepositories') App::get('/v1/vcs/github/installations/:installationId/providerRepositories')
->desc('List Repositories') ->desc('List Repositories')
->groups(['api', 'vcs']) ->groups(['api', 'vcs'])
->label('scope', 'vcs.read')
->label('sdk.namespace', 'vcs') ->label('sdk.namespace', 'vcs')
->label('sdk.auth', [APP_AUTH_TYPE_ADMIN]) ->label('sdk.auth', [APP_AUTH_TYPE_ADMIN])
->label('sdk.method', 'listRepositories') ->label('sdk.method', 'listRepositories')
@ -580,6 +582,7 @@ App::get('/v1/vcs/github/installations/:installationId/providerRepositories')
App::post('/v1/vcs/github/installations/:installationId/providerRepositories') App::post('/v1/vcs/github/installations/:installationId/providerRepositories')
->desc('Create repository') ->desc('Create repository')
->groups(['api', 'vcs']) ->groups(['api', 'vcs'])
->label('scope', 'vcs.write')
->label('sdk.namespace', 'vcs') ->label('sdk.namespace', 'vcs')
->label('sdk.auth', [APP_AUTH_TYPE_ADMIN]) ->label('sdk.auth', [APP_AUTH_TYPE_ADMIN])
->label('sdk.method', 'createRepository') ->label('sdk.method', 'createRepository')
@ -680,6 +683,7 @@ App::post('/v1/vcs/github/installations/:installationId/providerRepositories')
App::get('/v1/vcs/github/installations/:installationId/providerRepositories/:providerRepositoryId') App::get('/v1/vcs/github/installations/:installationId/providerRepositories/:providerRepositoryId')
->desc('Get repository') ->desc('Get repository')
->groups(['api', 'vcs']) ->groups(['api', 'vcs'])
->label('scope', 'vcs.read')
->label('sdk.namespace', 'vcs') ->label('sdk.namespace', 'vcs')
->label('sdk.auth', [APP_AUTH_TYPE_ADMIN]) ->label('sdk.auth', [APP_AUTH_TYPE_ADMIN])
->label('sdk.method', 'getRepository') ->label('sdk.method', 'getRepository')
@ -725,6 +729,7 @@ App::get('/v1/vcs/github/installations/:installationId/providerRepositories/:pro
App::get('/v1/vcs/github/installations/:installationId/providerRepositories/:providerRepositoryId/branches') App::get('/v1/vcs/github/installations/:installationId/providerRepositories/:providerRepositoryId/branches')
->desc('List Repository Branches') ->desc('List Repository Branches')
->groups(['api', 'vcs']) ->groups(['api', 'vcs'])
->label('scope', 'vcs.read')
->label('sdk.namespace', 'vcs') ->label('sdk.namespace', 'vcs')
->label('sdk.auth', [APP_AUTH_TYPE_ADMIN]) ->label('sdk.auth', [APP_AUTH_TYPE_ADMIN])
->label('sdk.method', 'listRepositoryBranches') ->label('sdk.method', 'listRepositoryBranches')
@ -770,6 +775,7 @@ App::get('/v1/vcs/github/installations/:installationId/providerRepositories/:pro
App::post('/v1/vcs/github/events') App::post('/v1/vcs/github/events')
->desc('Create Event') ->desc('Create Event')
->groups(['api', 'vcs']) ->groups(['api', 'vcs'])
->label('scope', 'public')
->inject('gitHub') ->inject('gitHub')
->inject('request') ->inject('request')
->inject('response') ->inject('response')
@ -905,8 +911,9 @@ App::post('/v1/vcs/github/events')
); );
App::get('/v1/vcs/installations') App::get('/v1/vcs/installations')
->groups(['api', 'vcs'])
->desc('List installations') ->desc('List installations')
->groups(['api', 'vcs'])
->label('scope', 'vcs.read')
->label('sdk.namespace', 'vcs') ->label('sdk.namespace', 'vcs')
->label('sdk.auth', [APP_AUTH_TYPE_ADMIN]) ->label('sdk.auth', [APP_AUTH_TYPE_ADMIN])
->label('sdk.method', 'listInstallations') ->label('sdk.method', 'listInstallations')
@ -956,8 +963,9 @@ App::get('/v1/vcs/installations')
}); });
App::get('/v1/vcs/installations/:installationId') App::get('/v1/vcs/installations/:installationId')
->groups(['api', 'vcs'])
->desc('Get installation') ->desc('Get installation')
->groups(['api', 'vcs'])
->label('scope', 'vcs.read')
->label('sdk.namespace', 'vcs') ->label('sdk.namespace', 'vcs')
->label('sdk.auth', [APP_AUTH_TYPE_ADMIN]) ->label('sdk.auth', [APP_AUTH_TYPE_ADMIN])
->label('sdk.method', 'getInstallation') ->label('sdk.method', 'getInstallation')
@ -984,8 +992,9 @@ App::get('/v1/vcs/installations/:installationId')
}); });
App::delete('/v1/vcs/installations/:installationId') App::delete('/v1/vcs/installations/:installationId')
->groups(['api', 'vcs'])
->desc('Delete Installation') ->desc('Delete Installation')
->groups(['api', 'vcs'])
->label('scope', 'vcs.write')
->label('sdk.namespace', 'vcs') ->label('sdk.namespace', 'vcs')
->label('sdk.auth', [APP_AUTH_TYPE_ADMIN]) ->label('sdk.auth', [APP_AUTH_TYPE_ADMIN])
->label('sdk.method', 'deleteInstallation') ->label('sdk.method', 'deleteInstallation')
@ -1018,6 +1027,7 @@ App::delete('/v1/vcs/installations/:installationId')
App::patch('/v1/vcs/github/installations/:installationId/repositories/:repositoryId') App::patch('/v1/vcs/github/installations/:installationId/repositories/:repositoryId')
->desc('Authorize external deployment') ->desc('Authorize external deployment')
->groups(['api', 'vcs']) ->groups(['api', 'vcs'])
->label('scope', 'vcs.write')
->label('sdk.namespace', 'vcs') ->label('sdk.namespace', 'vcs')
->label('sdk.auth', [APP_AUTH_TYPE_ADMIN]) ->label('sdk.auth', [APP_AUTH_TYPE_ADMIN])
->label('sdk.method', 'updateExternalDeployments') ->label('sdk.method', 'updateExternalDeployments')

View file

@ -47,7 +47,7 @@ Config::setParam('cookieSamesite', Response::COOKIE_SAMESITE_NONE);
function router(App $utopia, Database $dbForConsole, SwooleRequest $swooleRequest, Request $request, Response $response) function router(App $utopia, Database $dbForConsole, SwooleRequest $swooleRequest, Request $request, Response $response)
{ {
$utopia->getRoute()->label('error', __DIR__ . '/../views/general/error.phtml'); $utopia->getRoute()?->label('error', __DIR__ . '/../views/general/error.phtml');
$host = $request->getHostname() ?? ''; $host = $request->getHostname() ?? '';

View file

@ -198,6 +198,34 @@ App::delete('/v1/mock/tests/bar')
->action(function ($required, $default, $z) { ->action(function ($required, $default, $z) {
}); });
App::get('/v1/mock/tests/general/headers')
->desc('Get headers')
->groups(['mock'])
->label('scope', 'public')
->label('sdk.auth', [APP_AUTH_TYPE_SESSION, APP_AUTH_TYPE_KEY, APP_AUTH_TYPE_JWT])
->label('sdk.namespace', 'general')
->label('sdk.method', 'headers')
->label('sdk.description', 'Return headers from the request')
->label('sdk.response.code', Response::STATUS_CODE_OK)
->label('sdk.response.model', Response::MODEL_MOCK)
->label('sdk.mock', true)
->inject('request')
->inject('response')
->action(function (Request $request, Response $response) {
$res = [
'x-sdk-name' => $request->getHeader('x-sdk-name'),
'x-sdk-platform' => $request->getHeader('x-sdk-platform'),
'x-sdk-language' => $request->getHeader('x-sdk-language'),
'x-sdk-version' => $request->getHeader('x-sdk-version'),
];
$res = array_map(function ($key, $value) {
return $key . ': ' . $value;
}, array_keys($res), $res);
$res = implode("; ", $res);
$response->dynamic(new Document(['result' => $res]), Response::MODEL_MOCK);
});
App::get('/v1/mock/tests/general/download') App::get('/v1/mock/tests/general/download')
->desc('Download File') ->desc('Download File')
->groups(['mock']) ->groups(['mock'])

View file

@ -108,8 +108,8 @@ const APP_LIMIT_LIST_DEFAULT = 25; // Default maximum number of items to return
const APP_KEY_ACCCESS = 24 * 60 * 60; // 24 hours const APP_KEY_ACCCESS = 24 * 60 * 60; // 24 hours
const APP_USER_ACCCESS = 24 * 60 * 60; // 24 hours const APP_USER_ACCCESS = 24 * 60 * 60; // 24 hours
const APP_CACHE_UPDATE = 24 * 60 * 60; // 24 hours const APP_CACHE_UPDATE = 24 * 60 * 60; // 24 hours
const APP_CACHE_BUSTER = 507; const APP_CACHE_BUSTER = 508;
const APP_VERSION_STABLE = '1.4.0'; const APP_VERSION_STABLE = '1.4.1';
const APP_DATABASE_ATTRIBUTE_EMAIL = 'email'; const APP_DATABASE_ATTRIBUTE_EMAIL = 'email';
const APP_DATABASE_ATTRIBUTE_ENUM = 'enum'; const APP_DATABASE_ATTRIBUTE_ENUM = 'enum';
const APP_DATABASE_ATTRIBUTE_IP = 'ip'; const APP_DATABASE_ATTRIBUTE_IP = 'ip';

View file

@ -650,7 +650,7 @@ services:
- MYSQL_DATABASE=${_APP_DB_SCHEMA} - MYSQL_DATABASE=${_APP_DB_SCHEMA}
- MYSQL_USER=${_APP_DB_USER} - MYSQL_USER=${_APP_DB_USER}
- MYSQL_PASSWORD=${_APP_DB_PASS} - MYSQL_PASSWORD=${_APP_DB_PASS}
command: 'mysqld --innodb-flush-method=fsync --max_connections=${_APP_CONNECTIONS_MAX}' command: 'mysqld --innodb-flush-method=fsync'
redis: redis:
image: redis:7.0.4-alpine image: redis:7.0.4-alpine

View file

@ -35,9 +35,9 @@ class MailsV1 extends Worker
$recipient = $this->args['recipient']; $recipient = $this->args['recipient'];
$subject = $this->args['subject']; $subject = $this->args['subject'];
$name = $this->args['name'];
$body = $this->args['body']; $body = $this->args['body'];
$variables = $this->args['variables']; $variables = $this->args['variables'];
$name = $this->args['name'];
$body = Template::fromFile(__DIR__ . '/../config/locale/templates/email-base.tpl'); $body = Template::fromFile(__DIR__ . '/../config/locale/templates/email-base.tpl');

3
bin/upgrade Executable file
View file

@ -0,0 +1,3 @@
#!/bin/sh
php /usr/src/code/app/cli.php upgrade $@

View file

@ -57,6 +57,7 @@
"utopia-php/locale": "0.4.*", "utopia-php/locale": "0.4.*",
"utopia-php/logger": "0.3.*", "utopia-php/logger": "0.3.*",
"utopia-php/messaging": "0.1.*", "utopia-php/messaging": "0.1.*",
"utopia-php/migration": "0.3.*",
"utopia-php/orchestration": "0.9.*", "utopia-php/orchestration": "0.9.*",
"utopia-php/platform": "0.4.*", "utopia-php/platform": "0.4.*",
"utopia-php/pools": "0.4.*", "utopia-php/pools": "0.4.*",
@ -76,8 +77,7 @@
"adhocore/jwt": "1.1.2", "adhocore/jwt": "1.1.2",
"webonyx/graphql-php": "14.11.*", "webonyx/graphql-php": "14.11.*",
"slickdeals/statsd": "3.1.0", "slickdeals/statsd": "3.1.0",
"league/csv": "9.7.1", "league/csv": "9.7.1"
"utopia-php/migration": "^0.3.0"
}, },
"repositories": [ "repositories": [
{ {

14
composer.lock generated
View file

@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically" "This file is @generated automatically"
], ],
"content-hash": "f3c47c80cc59e23da8f54b3a47d5803b", "content-hash": "bc47430e5cb3430f354b4eee6fd8c9c7",
"packages": [ "packages": [
{ {
"name": "adhocore/jwt", "name": "adhocore/jwt",
@ -2633,16 +2633,16 @@
}, },
{ {
"name": "utopia-php/migration", "name": "utopia-php/migration",
"version": "0.3.1", "version": "0.3.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/utopia-php/migration.git", "url": "https://github.com/utopia-php/migration.git",
"reference": "af4233f4ff6a37982dad294033199ce29cafc00c" "reference": "49a28adfbb781f0c08f1eaf459a8fbb8ab9fcc70"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/utopia-php/migration/zipball/af4233f4ff6a37982dad294033199ce29cafc00c", "url": "https://api.github.com/repos/utopia-php/migration/zipball/49a28adfbb781f0c08f1eaf459a8fbb8ab9fcc70",
"reference": "af4233f4ff6a37982dad294033199ce29cafc00c", "reference": "49a28adfbb781f0c08f1eaf459a8fbb8ab9fcc70",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -2685,9 +2685,9 @@
], ],
"support": { "support": {
"issues": "https://github.com/utopia-php/migration/issues", "issues": "https://github.com/utopia-php/migration/issues",
"source": "https://github.com/utopia-php/migration/tree/0.3.1" "source": "https://github.com/utopia-php/migration/tree/0.3.2"
}, },
"time": "2023-08-17T14:18:09+00:00" "time": "2023-08-31T04:11:35+00:00"
}, },
{ {
"name": "utopia-php/mongo", "name": "utopia-php/mongo",

View file

@ -65,6 +65,7 @@ abstract class Migration
'1.3.7' => 'V18', '1.3.7' => 'V18',
'1.3.8' => 'V18', '1.3.8' => 'V18',
'1.4.0' => 'V19', '1.4.0' => 'V19',
'1.4.1' => 'V19',
]; ];
/** /**

View file

@ -10,6 +10,7 @@ use Utopia\Database\Database;
use Utopia\Database\DateTime; use Utopia\Database\DateTime;
use Utopia\Database\Document; use Utopia\Database\Document;
use Utopia\Database\Exception; use Utopia\Database\Exception;
use Utopia\Database\Query;
class V19 extends Migration class V19 extends Migration
{ {
@ -33,6 +34,11 @@ class V19 extends Migration
Console::info('Migrating Collections'); Console::info('Migrating Collections');
$this->migrateCollections(); $this->migrateCollections();
if ($this->project->getId() == 'console') {
Console::info('Migrating Domains');
$this->migrateDomains();
}
Console::info('Migrating Buckets'); Console::info('Migrating Buckets');
$this->migrateBuckets(); $this->migrateBuckets();
@ -43,6 +49,33 @@ class V19 extends Migration
$this->cleanCollections(); $this->cleanCollections();
} }
protected function migrateDomains(): void
{
foreach ($this->documentsIterator('domains') as $domain) {
$status = 'created';
if ($domain->getAttribute('verification', false)) {
$status = 'verified';
}
$ruleDocument = new Document([
'projectId' => $domain->getAttribute('projectId'),
'projectInternalId' => $domain->getAttribute('projectInternalId'),
'domain' => $domain->getAttribute('domain'),
'resourceType' => 'api',
'resourceInternalId' => '',
'resourceId' => '',
'status' => $status,
'certificateId' => $domain->getAttribute('certificateId'),
]);
try {
$this->consoleDB->createDocument('rules', $ruleDocument);
} catch (\Throwable $th) {
Console::warning("Error migrating domain {$domain->getAttribute('domain')}: {$th->getMessage()}");
}
}
}
/** /**
* Migrating all Bucket tables. * Migrating all Bucket tables.
* *
@ -611,30 +644,6 @@ class V19 extends Migration
$document->setAttribute('smtp', []); $document->setAttribute('smtp', []);
$document->setAttribute('templates', []); $document->setAttribute('templates', []);
break;
case 'rules':
$status = 'created';
if ($document->getAttribute('verification', false)) {
$status = 'verified';
}
$ruleDocument = new Document([
'projectId' => $this->project->getId(),
'projectInternalId' => $this->project->getInternalId(),
'domain' => $document->getAttribute('domain'),
'resourceType' => 'api',
'resourceInternalId' => '',
'resourceId' => '',
'status' => $status,
'certificateId' => $document->getAttribute('certificateId'),
]);
try {
$this->consoleDB->createDocument('rules', $ruleDocument);
} catch (\Throwable $th) {
Console::warning("Error migrating domain {$document->getAttribute('domain')}: {$th->getMessage()}");
}
break; break;
default: default:
break; break;

View file

@ -22,6 +22,7 @@ use Appwrite\Platform\Tasks\VolumeSync;
use Appwrite\Platform\Tasks\CalcUsersStats; use Appwrite\Platform\Tasks\CalcUsersStats;
use Appwrite\Platform\Tasks\CalcTierStats; use Appwrite\Platform\Tasks\CalcTierStats;
use Appwrite\Platform\Tasks\PatchDeleteProjectCollections; use Appwrite\Platform\Tasks\PatchDeleteProjectCollections;
use Appwrite\Platform\Tasks\Upgrade;
class Tasks extends Service class Tasks extends Service
{ {
@ -36,6 +37,7 @@ class Tasks extends Service
->addAction(Hamster::getName(), new Hamster()) ->addAction(Hamster::getName(), new Hamster())
->addAction(Doctor::getName(), new Doctor()) ->addAction(Doctor::getName(), new Doctor())
->addAction(Install::getName(), new Install()) ->addAction(Install::getName(), new Install())
->addAction(Upgrade::getName(), new Upgrade())
->addAction(Maintenance::getName(), new Maintenance()) ->addAction(Maintenance::getName(), new Maintenance())
->addAction(PatchCreateMissingSchedules::getName(), new PatchCreateMissingSchedules()) ->addAction(PatchCreateMissingSchedules::getName(), new PatchCreateMissingSchedules())
->addAction(ClearCardCache::getName(), new ClearCardCache()) ->addAction(ClearCardCache::getName(), new ClearCardCache())

View file

@ -16,6 +16,8 @@ use Utopia\Platform\Action;
class Install extends Action class Install extends Action
{ {
protected string $path = '/usr/src/code/appwrite';
public static function getName(): string public static function getName(): string
{ {
return 'install'; return 'install';
@ -36,7 +38,6 @@ class Install extends Action
public function action(string $httpPort, string $httpsPort, string $organization, string $image, string $interactive): void public function action(string $httpPort, string $httpsPort, string $organization, string $image, string $interactive): void
{ {
$config = Config::getParam('variables'); $config = Config::getParam('variables');
$path = '/usr/src/code/appwrite';
$defaultHTTPPort = '80'; $defaultHTTPPort = '80';
$defaultHTTPSPort = '443'; $defaultHTTPSPort = '443';
$vars = []; $vars = [];
@ -56,19 +57,28 @@ class Install extends Action
Console::success('Starting Appwrite installation...'); Console::success('Starting Appwrite installation...');
// Create directory with write permissions // Create directory with write permissions
if (!\file_exists(\dirname($path))) { if (!\file_exists(\dirname($this->path))) {
if (!@\mkdir(\dirname($path), 0755, true)) { if (!@\mkdir(\dirname($this->path), 0755, true)) {
Console::error('Can\'t create directory ' . \dirname($path)); Console::error('Can\'t create directory ' . \dirname($this->path));
Console::exit(1); Console::exit(1);
} }
} }
$data = @file_get_contents($path . '/docker-compose.yml'); $data = @file_get_contents($this->path . '/docker-compose.yml');
if ($data !== false) { if ($data !== false) {
if ($interactive == 'Y' && Console::isInteractive()) {
$answer = Console::confirm('Previous installation found, do you want to overwrite it (a backup will be created before overwriting)? (Y/n)');
if ($answer !== 'Y') {
Console::info('No action taken.');
return;
}
}
$time = \time(); $time = \time();
Console::info('Compose file found, creating backup: docker-compose.yml.' . $time . '.backup'); Console::info('Compose file found, creating backup: docker-compose.yml.' . $time . '.backup');
file_put_contents($path . '/docker-compose.yml.' . $time . '.backup', $data); file_put_contents($this->path . '/docker-compose.yml.' . $time . '.backup', $data);
$compose = new Compose($data); $compose = new Compose($data);
$appwrite = $compose->getService('appwrite'); $appwrite = $compose->getService('appwrite');
$oldVersion = ($appwrite) ? $appwrite->getImageVersion() : null; $oldVersion = ($appwrite) ? $appwrite->getImageVersion() : null;
@ -102,11 +112,11 @@ class Install extends Action
} }
} }
$data = @file_get_contents($path . '/.env'); $data = @file_get_contents($this->path . '/.env');
if ($data !== false) { // Fetch all env vars from previous .env file if ($data !== false) { // Fetch all env vars from previous .env file
Console::info('Env file found, creating backup: .env.' . $time . '.backup'); Console::info('Env file found, creating backup: .env.' . $time . '.backup');
file_put_contents($path . '/.env.' . $time . '.backup', $data); file_put_contents($this->path . '/.env.' . $time . '.backup', $data);
$env = new Env($data); $env = new Env($data);
foreach ($env->list() as $key => $value) { foreach ($env->list() as $key => $value) {
@ -196,14 +206,14 @@ class Install extends Action
$templateForEnv->setParam('vars', $input); $templateForEnv->setParam('vars', $input);
if (!file_put_contents($path . '/docker-compose.yml', $templateForCompose->render(false))) { if (!file_put_contents($this->path . '/docker-compose.yml', $templateForCompose->render(false))) {
$message = 'Failed to save Docker Compose file'; $message = 'Failed to save Docker Compose file';
$this->sendEvent($analytics, $message); $this->sendEvent($analytics, $message);
Console::error($message); Console::error($message);
Console::exit(1); Console::exit(1);
} }
if (!file_put_contents($path . '/.env', $templateForEnv->render(false))) { if (!file_put_contents($this->path . '/.env', $templateForEnv->render(false))) {
$message = 'Failed to save environment variables file'; $message = 'Failed to save environment variables file';
$this->sendEvent($analytics, $message); $this->sendEvent($analytics, $message);
Console::error($message); Console::error($message);
@ -222,7 +232,7 @@ class Install extends Action
Console::log("Running \"docker compose up -d --remove-orphans --renew-anon-volumes\""); Console::log("Running \"docker compose up -d --remove-orphans --renew-anon-volumes\"");
$exit = Console::execute("${env} docker compose --project-directory ${path} up -d --remove-orphans --renew-anon-volumes", '', $stdout, $stderr); $exit = Console::execute("$env docker compose --project-directory $this->path up -d --remove-orphans --renew-anon-volumes", '', $stdout, $stderr);
if ($exit !== 0) { if ($exit !== 0) {
$message = 'Failed to install Appwrite dockers'; $message = 'Failed to install Appwrite dockers';

View file

@ -0,0 +1,42 @@
<?php
namespace Appwrite\Platform\Tasks;
use Utopia\CLI\Console;
use Utopia\Validator\Text;
class Upgrade extends Install
{
public static function getName(): string
{
return 'upgrade';
}
public function __construct()
{
$this
->desc('Upgrade Appwrite')
->param('httpPort', '', new Text(4), 'Server HTTP port', true)
->param('httpsPort', '', new Text(4), 'Server HTTPS port', true)
->param('organization', 'appwrite', new Text(0), 'Docker Registry organization', true)
->param('image', 'appwrite', new Text(0), 'Main appwrite docker image', true)
->param('interactive', 'Y', new Text(1), 'Run an interactive session', true)
->callback(fn ($httpPort, $httpsPort, $organization, $image, $interactive) => $this->action($httpPort, $httpsPort, $organization, $image, $interactive));
}
public function action(string $httpPort, string $httpsPort, string $organization, string $image, string $interactive): void
{
// Check for previous installation
$data = @file_get_contents($this->path . '/docker-compose.yml');
if (empty($data)) {
Console::error('Appwrite installation not found.');
Console::log('The command was not run in the parent folder of your appwrite installation.');
Console::log('Please navigate to the parent directory of the Appwrite installation and try again.');
Console::log(' parent_directory <= you run the command in this directory');
Console::log(' └── appwrite');
Console::log(' └── docker-compose.yml');
Console::exit(1);
}
parent::action($httpPort, $httpsPort, $organization, $image, $interactive);
}
}