Merge branch 'dev' into bullseye

This commit is contained in:
Alexandre Aubin 2021-11-15 03:14:11 +01:00
commit 0141723db0
15 changed files with 248 additions and 61 deletions

35
debian/changelog vendored
View file

@ -4,6 +4,41 @@ ssowat (11.0.0~alpha) unstable; urgency=low
-- Alexandre Aubin <alex.aubin@mailoo.org> Fri, 05 Feb 2021 00:02:38 +0100 -- Alexandre Aubin <alex.aubin@mailoo.org> Fri, 05 Feb 2021 00:02:38 +0100
ssowat (4.3.2) stable; urgency=low
- Bump version for stable release
-- Alexandre Aubin <alex.aubin@mailoo.org> Fri, 05 Nov 2021 02:39:22 +0100
ssowat (4.3.1.1) testing; urgency=low
- [i18n] Translations updated for Basque, Russian, Slovenian, Spanish
Thanks to all contributors <3 ! (Jurij Podgoršek, Page Asgardius, punkrockgirl, Semen Turchikhin)
-- Alexandre Aubin <alex.aubin@mailoo.org> Wed, 03 Nov 2021 18:46:10 +0100
ssowat (4.3.1) testing; urgency=low
- [i18n] Translations updated for Indonesian
Thanks to all contributors <3 ! (liimee)
-- Alexandre Aubin <alex.aubin@mailoo.org> Wed, 29 Sep 2021 22:39:28 +0200
ssowat (4.3.0) testing; urgency=low
- [enh] Improve logging when failing to authenticate ssowat cookies (b28788d)
- [fix] python -> python3 in password check (07378df)
- [enh] Add new theme "Clouds" ([#139](https://github.com/YunoHost/ssowat/pull/139))
- [fix] ynh_portal.css: fix font urls ([#193](https://github.com/YunoHost/ssowat/pull/193))
- [fix] Prevent attacker from crafting redirections to external domains ([#193](https://github.com/YunoHost/ssowat/pull/193))
- [i18n] Translations updated for Indonesian, Persian, Portuguese, Ukrainian
Thanks to all contributors <3 ! (Cyril Romain, Éric Gaspar, Geoff Montel, liimee, ljf, Parviz Homayun, Tymofii-Lytvynenko)
-- Alexandre Aubin <alex.aubin@mailoo.org> Sun, 19 Sep 2021 21:16:49 +0200
ssowat (4.2.4) stable; urgency=low ssowat (4.2.4) stable; urgency=low
- [fix] Misc issues regarding dash filename, mime types, ynh_userinfo.json ([#189](https://github.com/yunohost/ssowat/pull/189)) - [fix] Misc issues regarding dash filename, mime types, ynh_userinfo.json ([#189](https://github.com/yunohost/ssowat/pull/189))

View file

@ -1019,14 +1019,6 @@ function login()
-- Forward the `r` URI argument if it exists to redirect -- Forward the `r` URI argument if it exists to redirect
-- the user properly after a successful login. -- the user properly after a successful login.
if uri_args.r then if uri_args.r then
-- If `uri_args.r` contains line break, someone is probably trying to
-- pass some additional headers
if string.match(uri_args.r, "(.*)\n") then
flash("fail", t("redirection_error_invalid_url"))
logger.debug("Redirection url is invalid")
return redirect(conf.portal_url)
end
return redirect(conf.portal_url.."?r="..uri_args.r) return redirect(conf.portal_url.."?r="..uri_args.r)
else else
return redirect(conf.portal_url) return redirect(conf.portal_url)
@ -1065,6 +1057,25 @@ end
-- Set cookie and redirect (needed to properly set cookie) -- Set cookie and redirect (needed to properly set cookie)
function redirect(url) function redirect(url)
logger.debug("Redirecting to "..url) logger.debug("Redirecting to "..url)
-- For security reason we don't allow to redirect onto unknown domain
-- And if `uri_args.r` contains line break, someone is probably trying to
-- pass some additional headers
-- This should cover the following cases:
-- https://malicious.domain.tld/foo/bar
-- http://malicious.domain.tld/foo/bar
-- https://malicious.domain.tld:1234/foo
-- malicious.domain.tld/foo/bar
-- (/foo/bar, in which case no need to make sure it's prefixed with https://)
if not string.starts(url, "/") and not string.starts(url, "http://") and not string.starts(url, "https://") then
url = "https://"..url
end
local domain = url:match("^https?://([%w%.]*)/?")
if string.match(url, "(.*)\n") or (domain ~= nil and not is_in_table(conf["domains"], domain)) then
logger.debug("Unauthorized redirection to "..url)
flash("fail", t("redirection_error_invalid_url"))
url = conf.portal_url
end
return ngx.redirect(url) return ngx.redirect(url)
end end

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

View file

@ -0,0 +1,17 @@
/*
===============================================================================
This file may contain extra CSS rules loaded on all apps page (*if* the app
nginx's conf does include the appropriate snippet) for the small YunoHost
button in bottom-right corner + portal overlay.
The yunohost button corresponds to : #ynh-overlay-switch
The yunohost portal overlay / iframe corresponds to : #ynh-overlay
BE CAREFUL that you should *not* add too-general rules that apply to
non-yunohost elements (for instance all 'a' or 'p' elements...) as it will
likely break app's rendering
===============================================================================
*/
#ynh-overlay-switch {
background-image: url("./cloud.png");
}

View file

@ -0,0 +1,78 @@
/*
===============================================================================
This file contain extra CSS rules to customize the YunoHost user portal and
can be used to customize app tiles, buttons, etc...
===============================================================================
*/
/* Make page texts white */
.user-container h2,
.user-container small,
.user-container .user-mail,
.user-container .user-mail,
.content .footer a,
a.app-tile,
#ynh-logout {
color: white !important;
}
body {
color: white !important;
text-shadow: 3px 4px 4px rgba(0,0,0,.4), -1px -1px 6px rgba(0,0,0,0.2);
}
.ynh-user-portal {
background-image: url('https://source.unsplash.com/random/featured/?nature') !important;
background-repeat: no-repeat;
background-size: cover;
width: 100%;
height: 100%;
}
/* Apps colors */
.app-tile {
background-color: rgba(255, 255, 255, 0.5) !important;
}
.app-tile:hover:after,
.app-tile:focus:after,
.app-tile:hover:before,
.app-tile:focus:before {
background: rgba(255, 255, 255, 0.5) !important;
}
/* Use a custom logo image */
#ynh-logo {
z-index: 10;
background-image: url("./cloud.png");
}
/* Round the form */
.login-form label:before {
border-top-left-radius: 5em ;
border-bottom-left-radius: 5em ;
}
.login-form * {
border-radius: 5em;
}
/* Make form black */
.login-form label::before {
background: #000;
color: #FFF;
}
.login-form .form-group * {
background: #000;
color: #FFF;
}
.icon {
background: #000;
}
.messages {
border-radius: .5em;
}

View file

@ -1,5 +1,5 @@
{ {
"add_forward": "Añadir un reenvío de correo electrónico", "add_forward": "Añadir una dirección de reenvío de correo electrónico",
"add_mail": "Añadir un alias de correo electrónico", "add_mail": "Añadir un alias de correo electrónico",
"cancel": "Cancelar", "cancel": "Cancelar",
"change_password": "Cambiar contraseña", "change_password": "Cambiar contraseña",
@ -15,13 +15,13 @@
"information_updated": "Información actualizada", "information_updated": "Información actualizada",
"invalid_domain": "Dominio no válido en", "invalid_domain": "Dominio no válido en",
"invalid_mail": "La dirección de correo electrónico no es válida", "invalid_mail": "La dirección de correo electrónico no es válida",
"invalid_mailforward": "La dirección de reenvío no es válida", "invalid_mailforward": "La dirección de reenvío de correo electrónico no es válida",
"logged_out": "Sesión cerrada", "logged_out": "Sesión cerrada",
"login": "Iniciar sesión", "login": "Iniciar sesión",
"logout": "Cerrar sesión", "logout": "Cerrar sesión",
"mail_addresses": "Direcciones de correo electrónico", "mail_addresses": "Direcciones de correo electrónico",
"mail_already_used": "Dirección de correo electrónico ya está en uso", "mail_already_used": "Dirección de correo electrónico ya está en uso",
"mail_forward": "Reenviar correo electrónico", "mail_forward": "Direcciones de reenvío de correo electrónico",
"missing_required_fields": "Faltan campos obligatorios", "missing_required_fields": "Faltan campos obligatorios",
"new_forward": "nuevoreenvio@midominioexterior.org", "new_forward": "nuevoreenvio@midominioexterior.org",
"new_mail": "nuevomail@midominio.org", "new_mail": "nuevomail@midominio.org",

View file

@ -1,33 +1,33 @@
{ {
"footerlink_administration": "Administrazioa", "footerlink_administration": "Administrazioa",
"footerlink_support": "Laguntzarako", "footerlink_support": "Laguntza",
"footerlink_documentation": "dokumentazioa", "footerlink_documentation": "Dokumentazioa",
"footerlink_edit": "Birzuzenketa errorea: kudeatu gabeko domeinua", "footerlink_edit": "Editatu profila",
"redirection_error_unmanaged_domain": "Birzuzenketa errorea: kudeatu gabeko domeinua", "redirection_error_unmanaged_domain": "Birzuzenketa errorea: kudeatu gabeko domeinua",
"redirection_error_invalid_url": "Birzuzenketa errorea: URL baliogabea", "redirection_error_invalid_url": "Birbideraketa errorea: URL okerra",
"please_login_from_portal": "Mesedez, sartu atarian", "please_login_from_portal": "Mesedez, hasi saioa atarian",
"please_login": "Mesedez, hasi saioa edukira sartzeko", "please_login": "Mesedez, hasi saioa edukira sartzeko",
"logged_out": "Saioa amaitu", "logged_out": "Saioa itxita",
"wrong_username_password": "Erabiltzaile-izena edo pasahitza okerra", "wrong_username_password": "Erabiltzaile-izen edo pasahitz okerra",
"missing_required_fields": "Bete beharrezko eremuak", "missing_required_fields": "Bete beharreko eremuak",
"user_saving_fail": "Ezin izan da erabiltzailearen informazio berria gorde", "user_saving_fail": "Ezinezkoa izan da erabiltzailearen informazio berria gordetzea",
"information_updated": "Informazioa eguneratu da", "information_updated": "Informazioa eguneratu da",
"mail_already_used": "Dagoeneko erabiltzen ari zaren helbide elektronikoa", "mail_already_used": "Helbide elektroniko hori erabiltzen ari zara dagoeneko",
"invalid_mailforward": "Posta elektronikoz birbidaltzeko helbide baliogabea", "invalid_mailforward": "Birbidalketarako helbide okerra",
"invalid_domain": "Helbide elektronikoa baliogabea", "invalid_domain": "Domeinu okerra",
"invalid_mail": "Helbide elektronikoa baliogabea", "invalid_mail": "Helbide elektronikoa ez da zuzena",
"wrong_current_password": "Uneko pasahitza okerra da", "wrong_current_password": "Oraingo pasahitza okerra da",
"good_practices_about_user_password": "Aukeratu erabiltzaile baten pasahitza gutxienez 8 karaktereekin - nahiz eta praktika ona izan luzeagoak erabiltzea (hau da, pasahitz bat) eta / edo hainbat karaktere erabiltzea (maiuskulak, minuskulak, digituak eta karaktere bereziak).", "good_practices_about_user_password": "Aukeratu gutxienez zortzi karaktere dituen erabiltzaile-pasahitz bat — baina gomendioa pasahitz luzeagoak erabiltzea da (adibidez, esaldi bat) edota karaktere desberdinak erabiltzea (larriak, txikiak, zenbakiak eta karaktere bereziak).",
"password_too_simple_4": "Pasahitzak gutxienez 12 karaktere luze izan behar ditu eta zenbakiak, goikoak, behekoak eta karaktere bereziak ditu", "password_too_simple_4": "Pasahitzak gutxienez 12 karaktere izan behar ditu eta zenbakiak, hizki larriak, hizki txikiak eta karaktere bereziak izan behar ditu",
"password_too_simple_3": "Pasahitzak gutxienez 8 karaktere luze izan behar ditu eta digitu, goiko, beheko eta karaktere bereziak ditu", "password_too_simple_3": "Pasahitzak gutxienez zortzi karaktere izan behar ditu eta zenbakiak, hizki larriak, hizki txikiak eta karaktere bereziak izan behar ditu",
"password_too_simple_2": "Pasahitzak gutxienez 8 karaktere luze behar ditu eta digituak, goiko eta beheko karaktereak ditu", "password_too_simple_2": "Pasahitzak gutxienez zortzi karaktere izan behar ditu eta zenbakiak, hizki larriak eta hizki txikiak izan behar ditu",
"password_too_simple_1": "Pasahitzak gutxienez 8 karaktere izan behar ditu", "password_too_simple_1": "Pasahitzak gutxienez zortzi karaktere izan behar ditu",
"password_listed": "Pasahitz hau munduko pasahitz erabilienen artean dago. Mesedez, aukeratu zerbait bereziagoa.", "password_listed": "Pasahitz hau munduko pasahitz erabilienen artean dago. Mesedez, aukeratu bereziagoa den zerbait.",
"password_not_match": "Pasahitzak ez datoz bat", "password_not_match": "Pasahitzak ez datoz bat",
"password_changed_error": "Ezin izan da pasahitza aldatu", "password_changed_error": "Ezin izan da pasahitza aldatu",
"password_changed": "Pasahitza aldatu da", "password_changed": "Pasahitza aldatu da",
"logout": "Saioa amaitu", "logout": "Itxi saioa",
"login": "Saioa hasi", "login": "Hasi saioa",
"confirm": "Berretsi", "confirm": "Berretsi",
"new_password": "Pasahitz berria", "new_password": "Pasahitz berria",
"current_password": "Oraingo pasahitza", "current_password": "Oraingo pasahitza",
@ -35,15 +35,15 @@
"change_password": "Aldatu pasahitza", "change_password": "Aldatu pasahitza",
"cancel": "Utzi", "cancel": "Utzi",
"ok": "Ados", "ok": "Ados",
"add_forward": "Gehitu helbide elektronikoa birbidaltzeko helbidea", "add_forward": "Gehitu helbide elektronikoa birbidaltzeko e-maila",
"add_mail": "Gehitu e-posta alias bat", "add_mail": "Gehitu e-mail ezizen bat",
"new_forward": "aurreraberria@nireatzerrikodomeinua.org", "new_forward": "birbidalketaberria@nirekanpokodomeinua.eus",
"new_mail": "postaberria@mydomeinua.org", "new_mail": "postaberria@niredomeinua.eus",
"mail_forward": "Posta elektronikoa birbidaltzeko helbidea", "mail_forward": "Birbidalketarako posta elektronikoa",
"mail_addresses": "Helbide elektronikoak", "mail_addresses": "Helbide elektronikoak",
"fullname": "Izen osoa", "fullname": "Izen osoa",
"password": "Pasahitza", "password": "Pasahitza",
"username": "Erabiltzaile izena", "username": "Erabiltzaile-izena",
"information": "Zure informazioa", "information": "Zure informazioa",
"portal": "YunoHost ataria" "portal": "YunoHost ataria"
} }

View file

@ -20,18 +20,18 @@
"invalid_domain": "دامنه نامعتبر در", "invalid_domain": "دامنه نامعتبر در",
"invalid_mail": "آدرس ایمیل نامعتبر است", "invalid_mail": "آدرس ایمیل نامعتبر است",
"wrong_current_password": "رمز فعلی اشتباه است", "wrong_current_password": "رمز فعلی اشتباه است",
"good_practices_about_user_password": "گذرواژه کاربر را حداقل با 8 کاراکتر انتخاب کنید - هرچند استفاده از کلمات طولانی تر تمرین خوبی است (مانند عبارت عبور) و/یا استفاده از انواع مختلف کاراکترها (بزرگ ، کوچک ، رقم و کاراکتر های خاص).", "good_practices_about_user_password": "گذرواژه کاربر متشکل ازانواع مختلف کاراکترها (بزرگ ، کوچک ، رقم و کاراکتر های خاص)را حداقل با 8 کاراکتر انتخاب کنید - هرچند استفاده از کلمات طولانی تر تمرین خوبی است (مانند عبارت عبور).",
"password_too_simple_4": "گذرواژه باید دارای حداقل 12 کاراکتر طول و شامل اعداد و حروف کوچک و بزرگ و کاراکترهای خاص باشد", "password_too_simple_4": "رمز عبور باید شامل اعداد ، حروف کوچک و بزرگ و کاراکترهای خاص باشد، و حداقل 12 کاراکتر طول داشته باشد",
"password_too_simple_3": "گذرواژه باید دارای حداقل 8 کاراکتر طول و شامل اعداد و حروف کوچک و بزرگ و کاراکترهای خاص باشد", "password_too_simple_3": "رمز عبور باید شامل اعداد ، حروف کوچک و بزرگ و کاراکترهای خاص باشد، و حداقل 8 کاراکتر طول داشته باشد",
"password_too_simple_2": "گذرواژه باید دارای حداقل 8 کاراکتر طول و شامل اعداد و حروف کوچک و بزرگ باشد", "password_too_simple_2": "رمز عبور باید شامل اعداد و حروف کوچک و بزرگ، و حداقل 8 کاراکتر طول داشته باشد",
"password_too_simple_1": "رمز عبور باید حداقل 8 کاراکتر باشد", "password_too_simple_1": "رمز عبور باید حداقل 8 کاراکتر باشد",
"password_listed": "این رمز عبور جزو پر استفاده ترین رمزهای عبور جهان بشمار میرود. لطفاً گذرواژه منحصر به فردتری انتخاب کنید.", "password_listed": "لطفاً گذرواژه کمی منحصر به فردتری انتخاب کنید. این رمز عبور جزو پر استفاده ترین رمزهای عبور جهان بشمار میرود.",
"password_not_match": "گذرواژه ها مطابقت ندارند", "password_not_match": "گذرواژه ها مطابقت ندارند",
"password_changed_error": "رمز عبور تغییر نکرد", "password_changed_error": "رمز عبور تغییر نکرد",
"password_changed": "رمز عبور تغییر کرد", "password_changed": "رمز عبور تغییر کرد",
"logout": "خروج", "logout": "خروج",
"login": ارد شدن", "login": رود به سیستم",
"confirm": "تایید", "confirm": "تائید کردن",
"new_password": "رمز عبور جدید", "new_password": "رمز عبور جدید",
"current_password": "رمز عبور فعلی", "current_password": "رمز عبور فعلی",
"edit": "ویرایش", "edit": "ویرایش",

42
portal/locales/id.json Normal file
View file

@ -0,0 +1,42 @@
{
"cancel": "Batal",
"portal": "Portal YunoHost",
"information": "Info Anda",
"username": "Nama pengguna",
"password": "Kata sandi",
"fullname": "Nama lengkap",
"mail_addresses": "Alamat surel",
"mail_forward": "Alamat surel terusan",
"new_mail": "surelbaru@domainku.org",
"new_forward": "terusanbaru@domainlainku.org",
"add_mail": "Buat surel alias",
"add_forward": "Buat alamat surel terusan",
"ok": "Oke",
"change_password": "Ubah kata sandi",
"edit": "Sunting",
"current_password": "Kata sandi saat ini",
"new_password": "Kata sandi baru",
"confirm": "Konfirmasi",
"login": "Masuk",
"logout": "Keluar",
"password_changed": "Kata sandi diubah",
"password_changed_error": "Tidak dapat mengubah kata sandi",
"password_not_match": "Kata sandi tidak sama",
"password_listed": "Kata sandi ini merupakan salah satu kata sandi yang paling sering digunakan di dunia. Coba pilih sesuatu yang lebih unik.",
"password_too_simple_1": "Kata sandi harus memiliki sekurang-kurangnya 8 karakter",
"wrong_current_password": "Kata sandi saat ini salah",
"invalid_mail": "Alamat surel tidak valid",
"mail_already_used": "Alamat surel sudah digunakan",
"information_updated": "Info diperbarui",
"user_saving_fail": "Tidak dapat menyimpan info baru pengguna",
"wrong_username_password": "Nama pengguna atau kata sandi salah",
"logged_out": "Berhasil keluar",
"please_login": "Masuk untuk mengakses konten ini",
"please_login_from_portal": "Harap masuk dari portal",
"redirection_error_invalid_url": "Kesalahan pengalihan: URL tidak valid",
"redirection_error_unmanaged_domain": "Kesalahan pengalihan: Domain tak dikelola",
"footerlink_edit": "Sunting profil saya",
"footerlink_documentation": "Dokumentasi",
"footerlink_support": "Dukungan",
"footerlink_administration": "Administrasi"
}

1
portal/locales/mk.json Normal file
View file

@ -0,0 +1 @@
{}

View file

@ -40,7 +40,7 @@
"wrong_username_password": "Nome de utilizador e senha errados", "wrong_username_password": "Nome de utilizador e senha errados",
"redirection_error_invalid_url": "Erro de redirecionamento: URL inválido", "redirection_error_invalid_url": "Erro de redirecionamento: URL inválido",
"redirection_error_unmanaged_domain": "Erro de redirecionamento: Dominio não gerenciado", "redirection_error_unmanaged_domain": "Erro de redirecionamento: Dominio não gerenciado",
"good_practices_about_user_password": "Escolha uma senha de usuário com pelo menos 8 caracteres - embora seja uma boa prática usar palavras mais longas (ou seja, uma senha) e / ou usar vários tipos de caracteres (maiúsculas, minúsculas, dígitos e caracteres especiais).", "good_practices_about_user_password": "Escolha uma senha de usuário com pelo menos 8 caracteres - embora seja uma boa prática usar palavras mais longas (ou seja, uma senha) e/ou usar vários tipos de caracteres (maiúsculas, minúsculas, dígitos e caracteres especiais).",
"password_too_simple_4": "A senha precisa ter pelo menos 12 caracteres e conter dígitos, caracteres superior, inferior e caracteres especiais", "password_too_simple_4": "A senha precisa ter pelo menos 12 caracteres e conter dígitos, caracteres superior, inferior e caracteres especiais",
"password_too_simple_3": "A senha precisa ter pelo menos 8 caracteres e conter dígitos, caracteres superior, inferior e caracteres especiais", "password_too_simple_3": "A senha precisa ter pelo menos 8 caracteres e conter dígitos, caracteres superior, inferior e caracteres especiais",
"password_too_simple_2": "A senha precisa ter pelo menos 8 caracteres e conter dígitos, caracteres superior e inferior", "password_too_simple_2": "A senha precisa ter pelo menos 8 caracteres e conter dígitos, caracteres superior e inferior",

View file

@ -1,5 +1,5 @@
{ {
"portal": "YunoHost Портал", "portal": "Портал YunoHost",
"information": "Ваша информация", "information": "Ваша информация",
"username": "Имя пользователя", "username": "Имя пользователя",
"password": "Пароль", "password": "Пароль",
@ -14,7 +14,7 @@
"confirm": "Подтвердить", "confirm": "Подтвердить",
"login": "Авторизоваться", "login": "Авторизоваться",
"logout": "Выйти", "logout": "Выйти",
"password_changed": "пароль изменен", "password_changed": "Пароль изменён",
"password_changed_error": "Не удалось сменить пароль", "password_changed_error": "Не удалось сменить пароль",
"invalid_mail": "Неверный адрес электронной почты", "invalid_mail": "Неверный адрес электронной почты",
"invalid_mailforward": "Неверный адрес пересылки электронной почты", "invalid_mailforward": "Неверный адрес пересылки электронной почты",
@ -39,11 +39,11 @@
"footerlink_edit": "Редактировать профиль", "footerlink_edit": "Редактировать профиль",
"footerlink_documentation": "Документация", "footerlink_documentation": "Документация",
"footerlink_support": "Поддержка", "footerlink_support": "Поддержка",
"footerlink_administration": "Администрация", "footerlink_administration": "Администрирование",
"good_practices_about_user_password": "Выберите пароль пользователя длиной не менее 8 символов, хотя рекомендуется использовать более длинные (например, парольную фразу) и / или использовать символы различного типа (прописные, строчные, цифры и специальные символы).", "good_practices_about_user_password": "Выберите пароль пользователя длиной не менее 8 символов, хотя рекомендуется использовать более длинные (например, парольную фразу) и / или использовать символы различного типа (прописные, строчные буквы, цифры и специальные символы).",
"password_too_simple_4": "Пароль должен содержать не менее 12 символов и содержать цифры, верхние, нижние и специальные символы", "password_too_simple_4": "Пароль должен содержать не менее 12 символов и включать цифры, заглавные и строчные буквы и специальные символы",
"password_too_simple_3": "Пароль должен содержать не менее 8 символов и содержать цифры, верхние, нижние и специальные символы", "password_too_simple_3": "Пароль должен содержать не менее 8 символов и содержать цифры, заглавные и строчные буквы и специальные символы",
"password_too_simple_2": "Пароль должен содержать не менее 8 символов и содержать цифры, верхние и нижние символы", "password_too_simple_2": "Пароль должен содержать не менее 8 символов и включать цифры, заглавные и строчные буквы",
"password_too_simple_1": "Пароль должен быть не менее 8 символов", "password_too_simple_1": "Пароль должен быть не менее 8 символов",
"password_listed": "Этот пароль является одним из наиболее часто используемых паролей в мире. Пожалуйста, выберите что-то более уникальное." "password_listed": "Этот пароль является одним из наиболее часто используемых паролей в мире. Пожалуйста, выберите что-то более уникальное."
} }

3
portal/locales/sl.json Normal file
View file

@ -0,0 +1,3 @@
{
"cancel": "Prekliči"
}

View file

@ -22,7 +22,7 @@
"password_too_simple_4": "Пароль повинен бути щонайменше 12 символів довжиною і містити числа, верхній, нижній регістри та спеціальні символи", "password_too_simple_4": "Пароль повинен бути щонайменше 12 символів довжиною і містити числа, верхній, нижній регістри та спеціальні символи",
"password_too_simple_3": "Пароль повинен бути щонайменше 8 символів довжиною і містити числа, верхній, нижній регістри та спеціальні символи", "password_too_simple_3": "Пароль повинен бути щонайменше 8 символів довжиною і містити числа, верхній, нижній регістри та спеціальні символи",
"password_too_simple_2": "Пароль повинен бути щонайменше 8 символів довжиною і містити числа, верхній та нижній регістри", "password_too_simple_2": "Пароль повинен бути щонайменше 8 символів довжиною і містити числа, верхній та нижній регістри",
"password_too_simple_1": "Пароль повинен бути щонайменше 8 символів", "password_too_simple_1": "Пароль має складатися не менше ніж з 8 символів",
"password_listed": "Цей пароль є одним з найбільш використовуваних паролів у світі. Будь ласка, виберіть щось трохи більш неповторюване.", "password_listed": "Цей пароль є одним з найбільш використовуваних паролів у світі. Будь ласка, виберіть щось трохи більш неповторюване.",
"password_not_match": "Паролі не збігаються", "password_not_match": "Паролі не збігаються",
"password_changed_error": "Не вдалося змінити пароль", "password_changed_error": "Не вдалося змінити пароль",
@ -43,7 +43,7 @@
"fullname": "Повне ім'я", "fullname": "Повне ім'я",
"username": "Ім'я користувача", "username": "Ім'я користувача",
"information": "Ваші відомості", "information": "Ваші відомості",
"portal": "Портал Yunohost", "portal": "Портал YunoHost",
"password": "Пароль", "password": "Пароль",
"ok": "Гаразд" "ok": "Гаразд"
} }