Merge branch 'unstable' into testing

This commit is contained in:
opi 2016-04-30 13:58:19 +02:00
commit b9c6fb976a
13 changed files with 305 additions and 219 deletions

View file

@ -204,14 +204,14 @@ function is_protected()
end
for _, url in ipairs(conf["protected_urls"]) do
if hlp.string.starts(ngx.var.host..ngx.var.uri, url)
or hlp.string.starts(ngx.var.uri, url) then
if hlp.string.starts(ngx.var.host..ngx.var.uri..hlp.uri_args_string(), url)
or hlp.string.starts(ngx.var.uri..hlp.uri_args_string(), url) then
return true
end
end
for _, regex in ipairs(conf["protected_regex"]) do
if string.match(ngx.var.host..ngx.var.uri, regex)
or string.match(ngx.var.uri, regex) then
if string.match(ngx.var.host..ngx.var.uri..hlp.uri_args_string(), regex)
or string.match(ngx.var.uri..hlp.uri_args_string(), regex) then
return true
end
end

View file

@ -1,16 +1,16 @@
{
"portal_scheme": "https",
"portal_domain": "mydomain.com",
"portal_domain": "example.com",
"portal_path": "/ssowat/",
"domains": [
"mydomain.com",
"myotherdomain.com"
"example.com",
"example.org"
],
"skipped_urls": [
"mydomain.com/megusta",
"myotherdomain.com/somuchwin"
"example.com/megusta",
"example.org/somuchwin"
],
"unprotected_urls": ["mydomain.com/yunoprotect"],
"unprotected_urls": ["example.com/yunoprotect"],
"additional_headers": {
"Auth-User": "uid",
"Remote-User": "uid",
@ -19,12 +19,12 @@
},
"users": {
"myuser": {
"mydomain.com/myapp": "My App",
"mydomain.com/myapp2": "My second App"
"example.com/myapp": "My App",
"example.com/myapp2": "My second App"
},
"myuser2": {
"myotherdomain.com/myapp": "My other domain App",
"mydomain.com/myapp2": "My second App"
"example.org/myapp": "My other domain App",
"example.com/myapp2": "My second App"
}
}
}

View file

@ -6,7 +6,7 @@
module('config', package.seeall)
function get_config ()
function get_config()
-- Load the configuration file
local conf_file = assert(io.open(conf_path, "r"), "Configuration file is missing")

View file

@ -21,7 +21,7 @@ end
-- Lua has no sugar :D
function is_in_table (t, v)
function is_in_table(t, v)
for key, value in ipairs(t) do
if value == v then return key end
end
@ -37,19 +37,19 @@ end
-- Test whether a string starts with another
function string.starts (String, Start)
function string.starts(String, Start)
return string.sub(String, 1, string.len(Start)) == Start
end
-- Test whether a string ends with another
function string.ends (String, End)
function string.ends(String, End)
return End=='' or string.sub(String, -string.len(End)) == End
end
-- Find a string by its translate key in the right language
function t (key)
function t(key)
if conf.lang and i18n[conf.lang] then
return i18n[conf.lang][key] or ""
else
@ -60,7 +60,7 @@ end
-- Store a message in the flash shared table in order to display it at the
-- next response
function flash (wat, message)
function flash(wat, message)
if wat == "fail"
or wat == "win"
or wat == "info"
@ -71,7 +71,7 @@ end
-- Convert a table of arguments to an URI string
function uri_args_string (args)
function uri_args_string(args)
if not args then
args = ngx.req.get_uri_args()
end
@ -84,7 +84,7 @@ end
-- Set the Cross-Domain-Authentication key for a specific user
function set_cda_key ()
function set_cda_key()
local cda_key = random_string()
cache:set(cda_key, authUser, 10)
return cda_key
@ -102,7 +102,7 @@ end
-- It enables the SSO to quickly retrieve the username and the session
-- expiration time, and to prove their authenticity to avoid session hijacking.
--
function set_auth_cookie (user, domain)
function set_auth_cookie(user, domain)
local maxAge = conf["session_max_timeout"]
local expire = ngx.req.start_time() + maxAge
local session_key = cache:get("session_"..user)
@ -128,7 +128,7 @@ end
-- Expires the 3 session cookies
function delete_cookie ()
function delete_cookie()
conf = config.get_config()
expired_time = "Thu, Jan 01 1970 00:00:00 UTC;"
@ -146,7 +146,7 @@ end
-- Expires the redirection cookie
function delete_redirect_cookie ()
function delete_redirect_cookie()
expired_time = "Thu, Jan 01 1970 00:00:00 UTC;"
local cookie_str = "; Path="..conf["portal_path"]..
"; Max-Age="..expired_time
@ -159,7 +159,7 @@ end
-- Check if the session cookies are set, and rehash server + client information
-- to match the session hash.
--
function is_logged_in ()
function is_logged_in()
local expireTime = ngx.var.cookie_SSOwAuthExpire
local user = ngx.var.cookie_SSOwAuthUser
local authHash = ngx.var.cookie_SSOwAuthHash
@ -193,7 +193,7 @@ end
-- Check whether a user is allowed to access a URL using the `users` directive
-- of the configuration file
function has_access (user, url)
function has_access(user, url)
user = user or authUser
url = url or ngx.var.host..ngx.var.uri
@ -225,7 +225,7 @@ end
-- Authenticate a user against the LDAP database using a username or an email
-- address.
-- Reminder: conf["ldap_identifier"] is "uid" by default
function authenticate (user, password)
function authenticate(user, password)
conf = config.get_config()
-- Try to find the username from an email address by openning an anonymous
@ -277,7 +277,7 @@ end
-- Set the authentication headers in order to pass credentials to the
-- application underneath.
function set_headers (user)
function set_headers(user)
-- We definetly don't want to pass credential on a non-encrypted
-- connection.
@ -298,7 +298,11 @@ function set_headers (user)
-- If the user information is not in cache, open an LDAP connection and
-- fetch it.
if not cache:get(user.."-"..conf["ldap_identifier"]) then
ldap = lualdap.open_simple(conf["ldap_host"])
ldap = lualdap.open_simple(
conf["ldap_host"],
conf["ldap_identifier"].."=".. user ..","..conf["ldap_group"],
cache:get(user.."-password")
)
ngx.log(ngx.NOTICE, "Reloading LDAP values for: "..user)
for dn, attribs in ldap:search {
base = conf["ldap_identifier"].."=".. user ..","..conf["ldap_group"],
@ -520,7 +524,7 @@ end
-- Compute the user modification POST request
-- It has to update cached information and edit the LDAP user entry
-- according to the changes detected.
function edit_user ()
function edit_user()
conf = config.get_config()
-- We need these calls since we are in a POST request
@ -768,7 +772,7 @@ end
-- Compute the user login POST request
-- It authenticates the user against the LDAP base then redirects to the portal
function login ()
function login()
-- We need these calls since we are in a POST request
ngx.req.read_body()
@ -814,14 +818,14 @@ end
-- Set cookie and redirect (needed to properly set cookie)
function redirect (url)
function redirect(url)
ngx.log(ngx.NOTICE, "Redirect to: "..url)
return ngx.redirect(url)
end
-- Set cookie and go on with the response (needed to properly set cookie)
function pass ()
function pass()
delete_redirect_cookie()
-- When we are in the SSOwat portal, we need a default `content-type`

View file

@ -28,7 +28,7 @@ flashs = {}
i18n = {}
-- Efficient function to get a random string
function random_string ()
function random_string()
math.randomseed( tonumber(tostring(socket.gettime()*10000):reverse()) )
str = tostring(math.random()):sub(3)
socket.sleep(1e-400)

View file

@ -1,41 +1,41 @@
{
"portal": "YunoHost Portal",
"information": "Deine Informationen",
"username": "Benutzername",
"password": "Passwort",
"fullname": "Vollständiger Name",
"mail_addresses": "E-Mail Adressen",
"mail_forward": "E-Mail Weiterleitung",
"new_mail": "neuemail@meinedomain.org",
"new_forward": "neueweiterleitung@anderedomain.org",
"add_mail": "E-Mail alias hinzufügen",
"add_forward": "E-Mail Weiterleitung hinzufügen",
"ok": "OK",
"cancel": "Abbrechen",
"change_password": "Passwort ändern",
"edit": "Bearbeiten",
"current_password": "Derzeitiges Passwort",
"new_password": "Neues Passwort",
"confirm": "Bestätigen",
"login": "Anmelden",
"logout": "Abmelden",
"password_changed": "Passwort erfolgreich geändert",
"password_changed_error": "Beim ändern des Passworts ist ein Fehler aufgetreten",
"password_not_match": "Die neuen Passwörter stimmen nicht überein",
"wrong_current_password": "Derzeitiges Passwort ist falsch",
"invalid_mail": "Ungültige E-Mail Adresse",
"invalid_domain": "Ungültige Domain in",
"invalid_mailforward": "Ungültige E-Mail Weiterleitungsadresse",
"mail_already_used": "E-Mail Adresse wird bereits verwendet:",
"information_updated": "Informationen wurden aktualisiert",
"user_saving_fail": "Beim ändern der Benutzerinformationen ist ein Fehler aufgetreten",
"missing_required_fields": "Benötigte Felder fehlen",
"wrong_username_password": "Falscher Benutzername oder Passwort",
"logged_out": "Abgemeldet",
"please_login": "Bitte logge dich ein, um auf diesen Inhalt zu zugreifen",
"please_login_from_portal": "Bitte logge dich im Portal ein",
"footerlink_edit": "Mein Profil editieren",
"footerlink_documentation": "Dokumentation",
"footerlink_support": "Support",
"footerlink_administration": "Administration"
}
"add_forward": "E-Mail Weiterleitung hinzufügen",
"add_mail": "E-Mail Alias hinzufügen",
"cancel": "Abbrechen",
"change_password": "Passwort ändern",
"confirm": "Bestätigen",
"current_password": "Aktuelles Passwort",
"edit": "Bearbeiten",
"footerlink_administration": "Verwaltung",
"footerlink_documentation": "Dokumentation",
"footerlink_edit": "Mein Profil bearbeiten",
"footerlink_support": "Support",
"fullname": "Vollständiger Name",
"information": "Deine Informationen",
"information_updated": "Informationen wurden aktualisiert",
"invalid_domain": "Ungültige Domain angegeben",
"invalid_mail": "Ungültige E-Mail Adresse",
"invalid_mailforward": "Ungültige E-Mail Weiterleitung",
"logged_out": "Ausgeloggt",
"login": "Anmelden",
"logout": "Abmelden",
"mail_addresses": "E-Mail Adressen",
"mail_already_used": "Diese E-Mail Adresse wird bereits verwendet:",
"mail_forward": "E-Mail Weiterleitung",
"missing_required_fields": "Benötigte Felder fehlen",
"new_forward": "neueweiterleitung@anderedomain.org",
"new_mail": "neuemail@meinedomain.org",
"new_password": "Neues Passwort",
"ok": "OK",
"password": "Passwort",
"password_changed": "Passwort erfolgreich geändert",
"password_changed_error": "Beim Ändern des Passworts ist ein Fehler aufgetreten",
"password_not_match": "Die neuen Passwörter stimmen nicht überein",
"please_login": "Bitte logge dich ein, um auf diesen Inhalt zu zugreifen",
"please_login_from_portal": "Bitte logge dich am Portal ein",
"portal": "YunoHost Portal",
"user_saving_fail": "Ein Fehler trat beim Speichern der Änderungen auf",
"username": "Benutzername",
"wrong_current_password": "Aktuelles Passwort ist falsch",
"wrong_username_password": "Falscher Benutzername oder Passwort"
}

View file

@ -1,41 +1,41 @@
{
"portal": "Portal YunoHost",
"information": "Su información ",
"username": "Nombre de usuario",
"password": "Contraseña",
"fullname": "Nombre completo",
"mail_addresses": "Direcciones de correo electrónico",
"mail_forward": "Adelante correo electrónico",
"new_mail": "nuevomail@midominio.org",
"new_forward": "nuevoadelante@miextranjerodominio.org",
"add_mail": "Añadir un alias de correo electrónico ",
"add_forward": "Añadir un adelante de correo electrónico ",
"ok": "OK",
"add_mail": "Añadir un alias de correo electrónico ",
"cancel": "Cancelar",
"change_password": "Cambiar la contraseña",
"edit": "Editar",
"current_password": "Contraseña actual",
"new_password": "Nueva contraseña",
"confirm": "Confirmar",
"current_password": "Contraseña actual",
"edit": "Editar",
"footerlink_administration": "Administración",
"footerlink_documentation": "Documentación",
"footerlink_edit": "Cambiar mi perfil",
"footerlink_support": "Apoyo",
"fullname": "Nombre completo",
"information": "Su información ",
"information_updated": "Información actualizada ",
"invalid_domain": "Dominio no válido en la",
"invalid_mail": "Dirección de correo electrónico no es válido",
"invalid_mailforward": "Adelante dirección de correo electrónico no es válido",
"logged_out": "Sesión cerrada",
"login": "Login",
"logout": "Logout",
"mail_addresses": "Direcciones de correo electrónico",
"mail_already_used": "Mail ya utilizado:",
"mail_forward": "Adelante correo electrónico",
"missing_required_fields": "Los campos necesarios están desaparecidos",
"new_forward": "nuevoadelante@miextranjerodominio.org",
"new_mail": "nuevomail@midominio.org",
"new_password": "Nueva contraseña",
"ok": "OK",
"password": "Contraseña",
"password_changed": "Contraseña se ha cambiado satisfactoriamente",
"password_changed_error": "Se produjo un error en el cambio de contraseña ",
"password_not_match": "Las nuevas contraseñas no coinciden",
"wrong_current_password": "La contraseña actual es incorrecto",
"invalid_mail": "Dirección de correo electrónico no es válido",
"invalid_domain": "Dominio no válido en la",
"invalid_mailforward": "Adelante dirección de correo electrónico no es válido",
"mail_already_used": "Mail ya utilizado:",
"information_updated": "Información actualizada ",
"user_saving_fail": "Se produjo un error en el ahorro de la modificación del usuario ",
"missing_required_fields": "Los campos necesarios están desaparecidos",
"wrong_username_password": "Nombre de usuario o contraseña incorrectos",
"logged_out": "Sesión cerrada",
"please_login": "Por favor, inicie sesión para acceder a este contenido",
"please_login_from_portal": "Por favor, iniciar sesión desde el portal",
"footerlink_edit": "Cambiar mi perfil",
"footerlink_documentation": "Documentación",
"footerlink_support": "Apoyo",
"footerlink_administration": "Administración"
}
"portal": "Portal YunoHost",
"user_saving_fail": "Se produjo un error en el ahorro de la modificación del usuario ",
"username": "Nombre de usuario",
"wrong_current_password": "La contraseña actual es incorrecto",
"wrong_username_password": "Nombre de usuario o contraseña incorrectos"
}

View file

@ -1,41 +1,41 @@
{
"portal": "Portail YunoHost",
"information": "Vos informations",
"username": "Nom d'utilisateur",
"password": "Mot de passe",
"fullname": "Nom complet",
"mail_addresses": "Adresses email",
"mail_forward": "Adresses de transfert",
"new_mail": "nouvelle_adresse@domaine.org",
"new_forward": "nouveau_transfert@domainedistant.org",
"add_mail": "Ajouter une adresse email",
"add_forward": "Ajouter une adresse de transfert",
"ok": "Valider",
"add_mail": "Ajouter une adresse email",
"cancel": "Annuler",
"change_password": "Changer de mot de passe",
"edit": "Éditer",
"current_password": "Mot de passe actuel",
"new_password": "Nouveau mot de passe",
"confirm": "Confirmation",
"current_password": "Mot de passe actuel",
"edit": "Éditer",
"footerlink_administration": "Administration",
"footerlink_documentation": "Documentation",
"footerlink_edit": "Éditer mon profil",
"footerlink_support": "Support",
"fullname": "Nom complet",
"information": "Vos informations",
"information_updated": "Informations mises à jour",
"invalid_domain": "Nom de domaine invalide dans",
"invalid_mail": "Adresse email invalide",
"invalid_mailforward": "Adresse email de transfert invalide",
"logged_out": "Déconnecté",
"login": "Connexion",
"logout": "Déconnexion",
"mail_addresses": "Adresses email",
"mail_already_used": "Adresse déjà utilisée :",
"mail_forward": "Adresses de transfert",
"missing_required_fields": "Champs requis manquants",
"new_forward": "nouveau_transfert@domainedistant.org",
"new_mail": "nouvelle_adresse@domaine.org",
"new_password": "Nouveau mot de passe",
"ok": "Valider",
"password": "Mot de passe",
"password_changed": "Mot de passe modifié",
"password_changed_error": "Une erreur s'est produite lors du changement de mot de passe",
"password_not_match": "Les nouveaux mots de passe ne correspondent pas",
"wrong_current_password": "Le mot de passe actuel est incorrect",
"invalid_mail": "Adresse email invalide",
"invalid_domain": "Nom de domaine invalide dans",
"invalid_mailforward": "Adresse email de transfert invalide",
"mail_already_used": "Adresse déjà utilisée :",
"information_updated": "Informations mises à jour",
"user_saving_fail": "Une erreur s'est produite lors de la modification des informations",
"missing_required_fields": "Champs requis manquants",
"wrong_username_password": "Nom d'utilisateur ou mot de passe incorrect",
"logged_out": "Déconnecté",
"please_login": "Veuillez vous identifier pour accéder à cette page",
"please_login_from_portal": "Veuillez vous identifiez depuis le portail",
"footerlink_edit": "Éditer mon profil",
"footerlink_documentation": "Documentation",
"footerlink_support": "Support",
"footerlink_administration": "Administration"
"portal": "Portail YunoHost",
"user_saving_fail": "Une erreur s'est produite lors de la modification des informations",
"username": "Nom d'utilisateur",
"wrong_current_password": "Le mot de passe actuel est incorrect",
"wrong_username_password": "Nom d'utilisateur ou mot de passe incorrect"
}

41
portal/locales/it.json Normal file
View file

@ -0,0 +1,41 @@
{
"add_forward": "Aggiungi un inoltro email",
"add_mail": "Aggiungi un alias email",
"cancel": "Annulla",
"change_password": "Cambia password",
"confirm": "Conferma",
"current_password": "Password attuale",
"edit": "Modifica",
"footerlink_administration": "Amministrazione",
"footerlink_documentation": "Documentazione",
"footerlink_edit": "Modifica il mio profilo",
"footerlink_support": "Supporto",
"fullname": "Nome completo",
"information": "Le tue informazioni",
"information_updated": "Informazioni aggiornate",
"invalid_domain": "Dominio non valido",
"invalid_mail": "Indirizzo email non valido",
"invalid_mailforward": "Indirizzo di inoltro email non valido",
"logged_out": "Uscita effettuata",
"login": "Accedi",
"logout": "Esci",
"mail_addresses": "Indirizzo email",
"mail_already_used": "Indirizzo email già utilizzato:",
"mail_forward": "Email di inoltro",
"missing_required_fields": "Campi obbligatori non compilati",
"new_forward": "nuovoinoltro@miodominiodifferente.org",
"new_mail": "nuovaemail@miodominio.org",
"new_password": "Nuova password",
"ok": "OK",
"password": "Password",
"password_changed": "Password cambiata con successo",
"password_changed_error": "Si è verificato un errore durante il cambio password",
"password_not_match": "Le nuove password non corrispondono",
"please_login": "Per favore, accedi per visualizzare il contenuto",
"please_login_from_portal": "Per favore, accedi dal portale",
"portal": "Portale YunoHost",
"user_saving_fail": "Si è verificato un errore durante il salvataggio delle modifiche dell'utente",
"username": "Nome utente",
"wrong_current_password": "La password attuale è sbagliata",
"wrong_username_password": "Nome utente o password sbagliati"
}

41
portal/locales/nl.json Normal file
View file

@ -0,0 +1,41 @@
{
"add_forward": "Voeg een email forward toe",
"add_mail": "Voeg een emailalias toe",
"cancel": "Annuleren",
"change_password": "Verander wachtwoord",
"confirm": "Bevestigen",
"current_password": "Huidig wachtwoord",
"edit": "Bewerken",
"footerlink_administration": "Administratie",
"footerlink_documentation": "Documentatie",
"footerlink_edit": "Bewerk mijn profiel",
"footerlink_support": "Ondersteuning",
"fullname": "Volledige naam",
"information": "Uw informatie",
"information_updated": "Informatie bijgewerkt",
"invalid_domain": "Ongeldig domein",
"invalid_mail": "Ongeldig emailadres",
"invalid_mailforward": "Ongeldig email-forward adres ",
"logged_out": "Uitgelogd ",
"login": "Inloggen",
"logout": "Uitloggen",
"mail_addresses": "Emailadressen",
"mail_already_used": "Emailadres al gebruikt:",
"mail_forward": "Email forward",
"missing_required_fields": "Verplichte velden zijn niet ingevuld",
"new_forward": "nieuwe_forward@mijndomein.org",
"new_mail": "nieuwe_email@mijndomein.org",
"new_password": "Nieuw wachtwoord",
"ok": "Ok",
"password": "Wachtwoord",
"password_changed": "Wachtwoord successvol verandert",
"password_changed_error": "Er is een fout opgetreden bij het veranderen van het wachtwoord",
"password_not_match": "Nieuwe wachtwoorden zijn niet gelijk",
"please_login": "Log in om toegang te krijgen tot deze inhoud",
"please_login_from_portal": "Log in vanaf het portaal",
"portal": "YunoHost Portaal",
"user_saving_fail": "Er is een fout opgetreden bij het opslaan van wijzigingen aan gebruiker",
"username": "Gebruikersnaam",
"wrong_current_password": "Huidig wachtwoord is verkeerd",
"wrong_username_password": "Verkeerde gebruikersnaam of wachtwoord"
}

View file

@ -1,29 +1,29 @@
{
"portal": "YunoHost Portal",
"information": "Your information",
"username": "Nazwa użytkownika",
"password": "Hasło",
"fullname": "Imię i nazwisko",
"mail_addresses": "Adresy E-mail",
"new_mail": "nowymail@domena.org",
"new_forward": "newforward@myforeigndomain.org",
"add_mail": "Dodaj dodatkowy email",
"ok": "Akceptuj",
"cancel": "Anuluj",
"change_password": "Zmień hasło",
"edit": "Edytuj",
"current_password": "Aktualne hasło",
"new_password": "Nowe hasło",
"confirm": "Potwierdź",
"current_password": "Aktualne hasło",
"edit": "Edytuj",
"footerlink_administration": "Panel administracyjny",
"footerlink_documentation": "Dokumentacja",
"footerlink_edit": "Edytuj mój profil",
"footerlink_support": "Pomoc techniczna",
"fullname": "Imię i nazwisko",
"information": "Your information",
"logged_out": "Wylogowany",
"login": "Zaloguj",
"logout": "Wyloguj",
"password_changed": "Hasło zmienione",
"mail_addresses": "Adresy E-mail",
"mail_already_used": "Ten adres e-mail aktualnie w użyciu:",
"wrong_username_password": "Zła nazwa użytkownika lub hasło",
"logged_out": "Wylogowany",
"new_forward": "newforward@myforeigndomain.org",
"new_mail": "nowymail@domena.org",
"new_password": "Nowe hasło",
"ok": "Akceptuj",
"password": "Hasło",
"password_changed": "Hasło zmienione",
"please_login": "Proszę się zalogować by uzyskać dostęp do tej strony",
"footerlink_edit": "Edytuj mój profil",
"footerlink_documentation": "Dokumentacja",
"footerlink_support": "Pomoc techniczna",
"footerlink_administration": "Panel administracyjny"
"portal": "YunoHost Portal",
"username": "Nazwa użytkownika",
"wrong_username_password": "Zła nazwa użytkownika lub hasło"
}

View file

@ -1,41 +1,41 @@
{
"portal": "Portal YunoHost",
"information": "Informação pessoal",
"username": "Nome de utilizador",
"password": "Senha",
"fullname": "Nome completo",
"mail_addresses": "Correio eletrónico",
"mail_forward": "Reencaminhar mensagem",
"new_mail": "novomail@meudominio.org",
"new_forward": "novoreenvio@dominioexterno.org",
"add_mail": "Adicionar nova etiqueta a mensagens",
"add_forward": "Adicionar reencaminhamento de mensagem",
"ok": "Confirmar",
"cancel": "Cancelar",
"change_password": "Alterar senha",
"edit": "Editar",
"current_password": "Senha atual",
"new_password": "Nova senha",
"confirm": "Confirmar",
"login": "Iniciar sessão",
"logout": "Terminar sessão",
"password_changed": "Senha alterada com êxito",
"password_changed_error": "Ocorreu um erro durante a alteração da senha",
"password_not_match": "As senhas novas não coincidem",
"wrong_current_password": "Senha atual está errada",
"invalid_mail": "Endereço de correio inválido",
"invalid_domain": "Domínio inválido em",
"invalid_mailforward": "Endereço de correio para reencaminhamento inválido",
"mail_already_used": "O endereço de correio já está utilizado.",
"information_updated": "Informação atualizada",
"user_saving_fail": "Ocorreu um erro ao guardar as modificações do utilizador.",
"missing_required_fields": "Campos obrigatórios em falta",
"wrong_username_password": "Nome de utilizador e senha errados",
"logged_out": "Ligação terminada",
"please_login": "Por favor inicie sessão para aceder a este conteúdo",
"please_login_from_portal": "Por favor inicie sessão no portal",
"footerlink_edit": "Editar o meu perfil",
"footerlink_documentation": "Documentação",
"footerlink_support": "Suporte",
"footerlink_administration": "Administração"
"add_forward": "Adicionar reencaminhamento de mensagem",
"add_mail": "Adicionar nova etiqueta a mensagens",
"cancel": "Cancelar",
"change_password": "Alterar senha",
"confirm": "Confirmar",
"current_password": "Senha atual",
"edit": "Editar",
"footerlink_administration": "Administração",
"footerlink_documentation": "Documentação",
"footerlink_edit": "Editar o meu perfil",
"footerlink_support": "Suporte",
"fullname": "Nome completo",
"information": "Informação pessoal",
"information_updated": "Informação atualizada",
"invalid_domain": "Domínio inválido em",
"invalid_mail": "Endereço de correio inválido",
"invalid_mailforward": "Endereço de correio para reencaminhamento inválido",
"logged_out": "Sessão terminada",
"login": "Iniciar sessão",
"logout": "Terminar sessão",
"mail_addresses": "Correio eletrónico",
"mail_already_used": "O endereço de correio já está utilizado.",
"mail_forward": "Reencaminhar mensagem",
"missing_required_fields": "Campos obrigatórios em falta",
"new_forward": "novoreenvio@dominioexterno.org",
"new_mail": "novomail@meudominio.org",
"new_password": "Nova senha",
"ok": "Confirmar",
"password": "Senha",
"password_changed": "Senha alterada com êxito",
"password_changed_error": "Ocorreu um erro durante a alteração da senha",
"password_not_match": "As senhas novas não coincidem",
"please_login": "Por favor inicie sessão para aceder a este conteúdo",
"please_login_from_portal": "Por favor inicie sessão no portal",
"portal": "Portal YunoHost",
"user_saving_fail": "Ocorreu um erro ao guardar as modificações do utilizador.",
"username": "Nome de utilizador",
"wrong_current_password": "Senha atual está errada",
"wrong_username_password": "Nome de utilizador e senha errados"
}

View file

@ -1,41 +1,41 @@
{
"portal": "YunoHost Portalı",
"information": "Bilgileriniz",
"username": "Kullanıcı adı",
"password": "Parola",
"fullname": "İsim",
"mail_addresses": "E-posta adresleri",
"mail_forward": "E-posta yönlendirme",
"new_mail": "newmail@mydomain.org",
"new_forward": "newforward@myforeigndomain.org",
"add_mail": "E-posta alias'ı ekle",
"add_forward": "E-posta yönlendirmesi ekle",
"ok": "Tamam",
"add_mail": "E-posta alias'ı ekle",
"cancel": "İptal",
"change_password": "Parolayı değiştir",
"edit": "Düzenle",
"current_password": "Mevcut parola",
"new_password": "Yeni parola",
"confirm": "Onayla",
"current_password": "Mevcut parola",
"edit": "Düzenle",
"footerlink_administration": "Yönetim",
"footerlink_documentation": "Belgelendirme",
"footerlink_edit": "Profilimi düzenle",
"footerlink_support": "Destek",
"fullname": "İsim",
"information": "Bilgileriniz",
"information_updated": "Bilgileriniz güncellendi",
"invalid_domain": "Geçersiz domain",
"invalid_mail": "Geçersiz e-posta adresi",
"invalid_mailforward": "Geçersiz e-posta yönlendirme adresi",
"logged_out": ıkış yapıldı",
"login": "Giriş yap",
"logout": ıkış yap",
"mail_addresses": "E-posta adresleri",
"mail_already_used": "Mail adresi zaten kullanılıyor",
"mail_forward": "E-posta yönlendirme",
"missing_required_fields": "Gerekli alanlar eksik",
"new_forward": "newforward@myforeigndomain.org",
"new_mail": "newmail@mydomain.org",
"new_password": "Yeni parola",
"ok": "Tamam",
"password": "Parola",
"password_changed": "Parola başarıyla değiştirildi",
"password_changed_error": "Parola değiştirirken hata oluştu",
"password_not_match": "Parolalar uyuşmuyor",
"wrong_current_password": "Mevcut parola yanlış",
"invalid_mail": "Geçersiz e-posta adresi",
"invalid_domain": "Geçersiz domain",
"invalid_mailforward": "Geçersiz e-posta yönlendirme adresi",
"mail_already_used": "Mail adresi zaten kullanılıyor",
"information_updated": "Bilgileriniz güncellendi",
"user_saving_fail": "Değişiklikler kaydedilirken hata oluştu",
"missing_required_fields": "Gerekli alanlar eksik",
"wrong_username_password": "Yanlış kullanıcı adı veya parola",
"logged_out": ıkış yapıldı",
"please_login": "Bu içeriğe erişmek için lütfen giriş yapınız",
"please_login_from_portal": "Lütfen portaldan giriş yapınız",
"footerlink_edit": "Profilimi düzenle",
"footerlink_documentation": "Belgelendirme",
"footerlink_support": "Destek",
"footerlink_administration": "Yönetim"
}
"portal": "YunoHost Portalı",
"user_saving_fail": "Değişiklikler kaydedilirken hata oluştu",
"username": "Kullanıcı adı",
"wrong_current_password": "Mevcut parola yanlış",
"wrong_username_password": "Yanlış kullanıcı adı veya parola"
}