txukunketa
This commit is contained in:
parent
c6a4c118ab
commit
d9e3661071
166
app.py
166
app.py
@ -31,10 +31,10 @@ from ldap3.core.exceptions import LDAPBindError, LDAPConstraintViolationResult,
|
||||
import logging
|
||||
from os import getenv, environ, path
|
||||
import re
|
||||
import sqlite3
|
||||
from data import flist, slist
|
||||
from libs import flist, slist
|
||||
from libs.localization import *
|
||||
from libs.helper import *
|
||||
import random
|
||||
import gettext
|
||||
|
||||
BASE_DIR = path.dirname(__file__)
|
||||
LOG = logging.getLogger(__name__)
|
||||
@ -134,6 +134,9 @@ def post_signup():
|
||||
form = request.forms.getunicode
|
||||
isFake = False
|
||||
|
||||
manage_codes = Tools()
|
||||
db = 'data/invite-codes.db'
|
||||
|
||||
def username_validation(e):
|
||||
regex = r'^\w+$'
|
||||
return(bool(re.fullmatch(regex, e)))
|
||||
@ -142,23 +145,6 @@ def post_signup():
|
||||
regex = r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b'
|
||||
return(bool(re.fullmatch(regex, e)))
|
||||
|
||||
def code_is_valid(code):
|
||||
con = sqlite3.connect('data/invite-codes.db')
|
||||
cur = con.cursor()
|
||||
|
||||
codes=[]
|
||||
for row in cur.execute('SELECT * FROM codes WHERE valid = 1'):
|
||||
codes.append(row[0])
|
||||
|
||||
return(bool(code in codes))
|
||||
|
||||
def mark_code_as_used(code):
|
||||
con = sqlite3.connect('data/invite-codes.db')
|
||||
cur = con.cursor()
|
||||
|
||||
cur.execute('''UPDATE codes SET valid=? WHERE code==?''',(0, code))
|
||||
con.commit()
|
||||
|
||||
def auto_complete(arg):
|
||||
if arg == 'firstname':
|
||||
result = random.choice(flist.firstname)
|
||||
@ -169,7 +155,7 @@ def post_signup():
|
||||
def error(msg):
|
||||
return signup_tpl(alerts=[('error', msg, 'fadeOut')], str=i18n.str)
|
||||
|
||||
if not code_is_valid(form('invite_code')):
|
||||
if not manage_codes.code_is_valid(form('invite_code'), db):
|
||||
return(error(i18n.msg[4]))
|
||||
|
||||
if len(form('username')) < 3:
|
||||
@ -206,7 +192,7 @@ def post_signup():
|
||||
return error(str(e))
|
||||
|
||||
try:
|
||||
mark_code_as_used(form('invite_code'))
|
||||
manage_codes.mark_code_as_used(form('invite_code'), db)
|
||||
except Error as e:
|
||||
LOG.warning("There was a problem verifying the invitation code, please try again later.", e)
|
||||
return error(str(e))
|
||||
@ -230,10 +216,10 @@ def post_edit_fullname():
|
||||
return edit_fullname_tpl(alerts=[('error', msg, 'fadeOut')], data=newSession().get(), str=i18n.str)
|
||||
|
||||
if len(form('firstname')) < 3:
|
||||
return error(i18n.msg[10])
|
||||
return error(i18n.msg[11])
|
||||
|
||||
if len(form('surname')) < 3:
|
||||
return error(i18n.msg[11])
|
||||
return error(i18n.msg[12])
|
||||
|
||||
try:
|
||||
edit_fullname(username, old_firstname, old_surname, form('firstname').lower(), form('surname').lower())
|
||||
@ -241,7 +227,7 @@ def post_edit_fullname():
|
||||
LOG.warning("Unsuccessful attempt to edit fullname for %s: %s" % (username, e))
|
||||
return error(str(e))
|
||||
|
||||
return user_tpl(alerts=[('success', i18n.msg[12], 'fadeOut' )], data=newSession().get(), str=i18n.str)
|
||||
return user_tpl(alerts=[('success', i18n.msg[13], 'fadeOut' )], data=newSession().get(), str=i18n.str)
|
||||
|
||||
@post('/edit_email')
|
||||
def post_edit_email():
|
||||
@ -261,7 +247,7 @@ def post_edit_email():
|
||||
return edit_email_tpl(alerts=[('error', msg, 'fadeOut')], data=newSession().get(), str=i18n.str)
|
||||
|
||||
if not email_is_valid(form('email')):
|
||||
return(error(i18n.msg[13]))
|
||||
return(error(i18n.msg[14]))
|
||||
|
||||
try:
|
||||
edit_email(username, old_email, form('email').lower())
|
||||
@ -269,7 +255,7 @@ def post_edit_email():
|
||||
LOG.warning("Unsuccessful attempt to change email addres for %s: %s" % (username, e))
|
||||
return error(str(e))
|
||||
|
||||
return user_tpl(alerts=[('success', i18n.msg[14], 'fadeOut' )], data=newSession().get(), str=i18n.str)
|
||||
return user_tpl(alerts=[('success', i18n.msg[16], 'fadeOut' )], data=newSession().get(), str=i18n.str)
|
||||
|
||||
@post('/change_pwd')
|
||||
def post_change_pwd():
|
||||
@ -289,7 +275,7 @@ def post_change_pwd():
|
||||
return error(i18n.msg[8])
|
||||
|
||||
if form('old-password') == form('confirm-password'):
|
||||
return error(i18n.msg[15])
|
||||
return error(i18n.msg[17])
|
||||
|
||||
try:
|
||||
change_passwords(username, form('old-password'), form('new-password'))
|
||||
@ -300,7 +286,7 @@ def post_change_pwd():
|
||||
|
||||
LOG.info("Password successfully changed for: %s" % username)
|
||||
|
||||
return index_tpl(alerts=[('success', i18n.msg[16], 'fadeOut')], username=username, str=i18n.str)
|
||||
return index_tpl(alerts=[('success', i18n.msg[18], 'fadeOut')], username=username, str=i18n.str)
|
||||
|
||||
@post('/delete')
|
||||
def post_delete():
|
||||
@ -314,14 +300,14 @@ def post_delete():
|
||||
if(form('username').lower() == username):
|
||||
del_user(username)
|
||||
else:
|
||||
return(error(i18n.msg[17]))
|
||||
return(error(i18n.msg[19]))
|
||||
except Error as e:
|
||||
LOG.warning("Unsuccessful attempt to delete the account: %s" % e)
|
||||
return error(str(e))
|
||||
|
||||
LOG.info("Account successfully deleted")
|
||||
|
||||
return index_tpl(alerts=[('success', i18n.msg[18], 'fadeOut')], str=i18n.str)
|
||||
return index_tpl(alerts=[('success', i18n.msg[20], 'fadeOut')], str=i18n.str)
|
||||
|
||||
@route('/static/<filename>', name='static')
|
||||
def serve_static(filename):
|
||||
@ -380,15 +366,15 @@ def login_user(conf, *args):
|
||||
login_user_ldap(conf, *args)
|
||||
|
||||
except (LDAPBindError, LDAPInvalidCredentialsResult, LDAPUserNameIsMandatoryError):
|
||||
raise Error(i18n.msg[19])
|
||||
raise Error(i18n.msg[21])
|
||||
|
||||
except LDAPSocketOpenError as e:
|
||||
LOG.error('{}: {!s}'.format(e.__class__.__name__, e))
|
||||
raise Error(i18n.msg[20])
|
||||
raise Error(i18n.msg[22])
|
||||
|
||||
except LDAPExceptionError as e:
|
||||
LOG.error('{}: {!s}'.format(e.__class__.__name__, e))
|
||||
raise Error(i18n.msg[21])
|
||||
raise Error(i18n.msg[23])
|
||||
|
||||
def login_user_ldap(conf, username, password):
|
||||
#set current LDAP
|
||||
@ -428,15 +414,15 @@ def logout_user(conf, *args):
|
||||
logout_user_ldap(conf, *args)
|
||||
|
||||
except (LDAPBindError, LDAPInvalidCredentialsResult, LDAPUserNameIsMandatoryError):
|
||||
raise Error(i18n.msg[19])
|
||||
raise Error(i18n.msg[21])
|
||||
|
||||
except LDAPSocketOpenError as e:
|
||||
LOG.error('{}: {!s}'.format(e.__class__.__name__, e))
|
||||
raise Error(i18n.msg[20])
|
||||
raise Error(i18n.msg[22])
|
||||
|
||||
except LDAPExceptionError as e:
|
||||
LOG.error('{}: {!s}'.format(e.__class__.__name__, e))
|
||||
raise Error(i18n.msg[21])
|
||||
raise Error(i18n.msg[23])
|
||||
|
||||
def logout_user_ldap(conf, username):
|
||||
#set current LDAP
|
||||
@ -475,15 +461,15 @@ def new_user_account(conf, *args):
|
||||
register(conf, *args)
|
||||
|
||||
except (LDAPBindError, LDAPInvalidCredentialsResult, LDAPUserNameIsMandatoryError):
|
||||
raise Error(i18n.msg[19])
|
||||
raise Error(i18n.msg[21])
|
||||
|
||||
except LDAPSocketOpenError as e:
|
||||
LOG.error('{}: {!s}'.format(e.__class__.__name__, e))
|
||||
raise Error(i18n.msg[20])
|
||||
raise Error(i18n.msg[22])
|
||||
|
||||
except LDAPExceptionError as e:
|
||||
LOG.error('{}: {!s}'.format(e.__class__.__name__, e))
|
||||
raise Error(i18n.msg[21])
|
||||
raise Error(i18n.msg[23])
|
||||
|
||||
def register(conf, username, firstname, surname, password, email, isFake):
|
||||
|
||||
@ -503,10 +489,10 @@ def register(conf, username, firstname, surname, password, email, isFake):
|
||||
|
||||
try:
|
||||
if (find_user_dn(conf,c,username) is not None):
|
||||
raise Error(i18n.msg[22])
|
||||
raise Error(i18n.msg[24])
|
||||
|
||||
if (find_email(conf,c,email)):
|
||||
raise Error(i18n.msg[23])
|
||||
raise Error(i18n.msg[25])
|
||||
|
||||
except Error as e:
|
||||
raise e
|
||||
@ -549,7 +535,7 @@ def new_fullname(conf, *args):
|
||||
update_fullname(conf, *args)
|
||||
|
||||
except (LDAPBindError, LDAPInvalidCredentialsResult, LDAPUserNameIsMandatoryError):
|
||||
raise Error(i18n.msg[24])
|
||||
raise Error(i18n.msg[26])
|
||||
|
||||
except LDAPConstraintViolationResult as e:
|
||||
# Extract useful part of the error message (for Samba 4 / AD).
|
||||
@ -558,11 +544,11 @@ def new_fullname(conf, *args):
|
||||
|
||||
except LDAPSocketOpenError as e:
|
||||
LOG.error('{}: {!s}'.format(e.__class__.__name__, e))
|
||||
raise Error(i18n.msg[20])
|
||||
raise Error(i18n.msg[22])
|
||||
|
||||
except LDAPExceptionError as e:
|
||||
LOG.error('{}: {!s}'.format(e.__class__.__name__, e))
|
||||
raise Error(i18n.msg[21])
|
||||
raise Error(i18n.msg[23])
|
||||
|
||||
def update_fullname(conf, username, firstname, surname):
|
||||
#set current LDAP
|
||||
@ -581,7 +567,7 @@ def update_fullname(conf, username, firstname, surname):
|
||||
fakeFullName = user_dn[3:-len(base)].split(" ")
|
||||
|
||||
if(user_dn == new_user_dn):
|
||||
raise Error('Izen-abizenak ez dira aldatu.')
|
||||
raise Error(i18n.msg[10])
|
||||
|
||||
c.modify(new_user_dn, {'fakeCn': [(MODIFY_REPLACE, 'false' )]})
|
||||
newSession().set(get_user_data(new_user_dn, c))
|
||||
@ -612,7 +598,7 @@ def new_email_address(conf, *args):
|
||||
update_email_address(conf, *args)
|
||||
|
||||
except (LDAPBindError, LDAPInvalidCredentialsResult, LDAPUserNameIsMandatoryError):
|
||||
raise Error(i18n.msg[24])
|
||||
raise Error(i18n.msg[26])
|
||||
|
||||
except LDAPConstraintViolationResult as e:
|
||||
# Extract useful part of the error message (for Samba 4 / AD).
|
||||
@ -621,16 +607,16 @@ def new_email_address(conf, *args):
|
||||
|
||||
except LDAPSocketOpenError as e:
|
||||
LOG.error('{}: {!s}'.format(e.__class__.__name__, e))
|
||||
raise Error(i18n.msg[20])
|
||||
raise Error(i18n.msg[22])
|
||||
|
||||
except LDAPExceptionError as e:
|
||||
LOG.error('{}: {!s}'.format(e.__class__.__name__, e))
|
||||
raise Error(i18n.msg[21])
|
||||
raise Error(i18n.msg[23])
|
||||
|
||||
|
||||
def update_email_address(conf, username, old_email, new_email):
|
||||
if(old_email == new_email):
|
||||
raise Error('Email helbidea ez da aldatu.')
|
||||
raise Error(i18n.msg[15])
|
||||
|
||||
#set current LDAP
|
||||
superUser = SuperUsers(conf)
|
||||
@ -670,7 +656,7 @@ def change_password(conf, *args):
|
||||
change_password_ldap(conf, *args)
|
||||
|
||||
except (LDAPBindError, LDAPInvalidCredentialsResult, LDAPUserNameIsMandatoryError):
|
||||
raise Error(i18n.msg[24])
|
||||
raise Error(i18n.msg[26])
|
||||
|
||||
except LDAPConstraintViolationResult as e:
|
||||
# Extract useful part of the error message (for Samba 4 / AD).
|
||||
@ -679,11 +665,11 @@ def change_password(conf, *args):
|
||||
|
||||
except LDAPSocketOpenError as e:
|
||||
LOG.error('{}: {!s}'.format(e.__class__.__name__, e))
|
||||
raise Error(i18n.msg[20])
|
||||
raise Error(i18n.msg[22])
|
||||
|
||||
except LDAPExceptionError as e:
|
||||
LOG.error('{}: {!s}'.format(e.__class__.__name__, e))
|
||||
raise Error(i18n.msg[21])
|
||||
raise Error(i18n.msg[23])
|
||||
|
||||
|
||||
def change_password_ldap(conf, username, old_pass, new_pass):
|
||||
@ -729,11 +715,11 @@ def del_account(conf, *args):
|
||||
|
||||
except LDAPSocketOpenError as e:
|
||||
LOG.error('{}: {!s}'.format(e.__class__.__name__, e))
|
||||
raise Error(i18n.msg[20])
|
||||
raise Error(i18n.msg[22])
|
||||
|
||||
except LDAPExceptionError as e:
|
||||
LOG.error('{}: {!s}'.format(e.__class__.__name__, e))
|
||||
raise Error(i18n.msg[21])
|
||||
raise Error(i18n.msg[23])
|
||||
|
||||
def delete(conf, username):
|
||||
#set current LDAP
|
||||
@ -831,8 +817,9 @@ def newSession():
|
||||
self.data = bottle.request.environ.get('beaker.session')
|
||||
self.lang = self.get_lang()
|
||||
#localization
|
||||
self.lang = self.get_lang()
|
||||
global i18n
|
||||
i18n = LocalizeTo(self.lang)
|
||||
i18n = LocalizeTo(self.lang, CONF)
|
||||
|
||||
def get_lang(self):
|
||||
if 'HTTP_ACCEPT_LANGUAGE' in bottle.request.environ:
|
||||
@ -845,7 +832,7 @@ def newSession():
|
||||
if 'username' in self.data:
|
||||
return(self.data)
|
||||
else:
|
||||
raise Error(i18n.msg[25])
|
||||
raise Error(i18n.msg[27])
|
||||
|
||||
def set(self, data):
|
||||
self.active = data[0]
|
||||
@ -871,71 +858,6 @@ def newSession():
|
||||
s=Session()
|
||||
return s
|
||||
|
||||
class LocalizeTo(object):
|
||||
"""docstring for Session"""
|
||||
def __init__(self, lang):
|
||||
super(LocalizeTo, self).__init__()
|
||||
translate = gettext.translation('base', localedir=CONF['locale']['dir'], languages=[lang])
|
||||
translate.install()
|
||||
_ = translate.gettext
|
||||
|
||||
#generic strings
|
||||
str_00 = _("User")
|
||||
str_01 = _("Username")
|
||||
str_02 = _("Firstname")
|
||||
str_03 = _("Surname")
|
||||
str_04 = _("Password")
|
||||
str_05 = _("Old password")
|
||||
str_06 = _("New password")
|
||||
str_07 = _("Confirm password")
|
||||
str_08 = _("Email")
|
||||
str_09 = _("edit")
|
||||
str_10 = _("Login")
|
||||
str_11 = _("Logout")
|
||||
str_12 = _("Delete")
|
||||
str_13 = _("Sign Up")
|
||||
str_14 = _("Back")
|
||||
str_15 = _("Update")
|
||||
str_16 = _("Or Sign In")
|
||||
str_17 = _("Or Sign Up")
|
||||
str_18 = _("Invite code")
|
||||
str_19 = _("Edit your fullname")
|
||||
str_20 = _("Edit your email")
|
||||
str_21 = _("Change your password")
|
||||
str_22 = _("Delete your account")
|
||||
str_23 = _("Welcome")
|
||||
|
||||
#messages
|
||||
msg_00 = _("The session was closed.")
|
||||
msg_01 = _("Username must be at least 3 characters long!")
|
||||
msg_02 = _("Please enter your password!")
|
||||
msg_03 = _("Welcome")
|
||||
msg_04 = _("The code is invalid or has expired.")
|
||||
msg_05 = _("A bit short, don't you think?!")
|
||||
msg_06 = _("Not allowed characters for the username field.")
|
||||
msg_07 = _("Passwords do not match!")
|
||||
msg_08 = _("Password must be at least 8 characters long!")
|
||||
msg_09 = _("Congratulations, your account has been created!")
|
||||
msg_10 = _("Your firstname is a bit short, don't you think?")
|
||||
msg_11 = _("Your surname is a bit short, don't you think?")
|
||||
msg_12 = _("Your first and last name have been successfully updated.")
|
||||
msg_13 = _("Invalid email address. Please try again.")
|
||||
msg_14 = _("Your email has been successfully updated.")
|
||||
msg_15 = _("The password entered is the same as the current password.")
|
||||
msg_16 = _("Password has been changed!")
|
||||
msg_17 = _("Please, type your username for account deletion.")
|
||||
msg_18 = _("Account successfully deleted!")
|
||||
msg_19 = _("Username or password is incorrect!")
|
||||
msg_20 = _("Unable to connect to the remote server.")
|
||||
msg_21 = _("Encountered an unexpected error while communicating with the remote server.")
|
||||
msg_22 = _("User already exists.")
|
||||
msg_23 = _("Email already exists.")
|
||||
msg_24 = _("Forgot your password? Please try again.")
|
||||
msg_25 = _("The session has expired.")
|
||||
|
||||
self.str = {'usr':str_00, 'usrn':str_01, 'fn':str_02, 'sn':str_03, 'pwd':str_04, 'old-pwd':str_05, 'new-pwd':str_06, 'conf-pwd':str_07, 'email':str_08, 'edit':str_09, 'login':str_10, 'log-out':str_11, 'del':str_12, 'sign-up':str_13, 'back':str_14, 'update':str_15, 'or-sign-in':str_16, 'or-sign-up':str_17, 'inv-code':str_18, 'edit-fn':str_19, 'edit-email':str_20, 'ch-pwd':str_21, 'del-account':str_22, 'welcome':str_23}
|
||||
self.msg = (msg_00, msg_01, msg_02, msg_03, msg_04, msg_05, msg_06, msg_07, msg_08, msg_09, msg_10, msg_11, msg_12, msg_13, msg_14, msg_15, msg_16, msg_17, msg_18, msg_19, msg_20, msg_21, msg_22, msg_23, msg_24, msg_25)
|
||||
|
||||
if environ.get('DEBUG'):
|
||||
bottle.debug(True)
|
||||
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
libs/__pycache__/helper.cpython-39.pyc
Normal file
BIN
libs/__pycache__/helper.cpython-39.pyc
Normal file
Binary file not shown.
BIN
libs/__pycache__/localization.cpython-39.pyc
Normal file
BIN
libs/__pycache__/localization.cpython-39.pyc
Normal file
Binary file not shown.
Binary file not shown.
25
libs/helper.py
Normal file
25
libs/helper.py
Normal file
@ -0,0 +1,25 @@
|
||||
#!/usr/bin/python3
|
||||
|
||||
import sqlite3
|
||||
|
||||
class Tools():
|
||||
|
||||
def __init__(self):
|
||||
self.username = ''
|
||||
|
||||
#check code
|
||||
def code_is_valid(self, code, db):
|
||||
con = sqlite3.connect(db)
|
||||
cur = con.cursor()
|
||||
|
||||
codes=[]
|
||||
for row in cur.execute('SELECT * FROM codes WHERE valid = 1'):
|
||||
codes.append(row[0])
|
||||
return(bool(code in codes))
|
||||
|
||||
def mark_code_as_used(self, code, db):
|
||||
con = sqlite3.connect(db)
|
||||
cur = con.cursor()
|
||||
|
||||
cur.execute('''UPDATE codes SET valid=? WHERE code==?''',(0, code))
|
||||
con.commit()
|
68
libs/localization.py
Normal file
68
libs/localization.py
Normal file
@ -0,0 +1,68 @@
|
||||
import gettext
|
||||
|
||||
class LocalizeTo(object):
|
||||
"""docstring for Session"""
|
||||
def __init__(self, lang, conf):
|
||||
super(LocalizeTo, self).__init__()
|
||||
translate = gettext.translation('base', localedir=conf['locale']['dir'], languages=[lang])
|
||||
translate.install()
|
||||
_ = translate.gettext
|
||||
|
||||
#generic strings
|
||||
str_00 = _("User")
|
||||
str_01 = _("Username")
|
||||
str_02 = _("Firstname")
|
||||
str_03 = _("Surname")
|
||||
str_04 = _("Password")
|
||||
str_05 = _("Old password")
|
||||
str_06 = _("New password")
|
||||
str_07 = _("Confirm password")
|
||||
str_08 = _("Email")
|
||||
str_09 = _("edit")
|
||||
str_10 = _("Login")
|
||||
str_11 = _("Logout")
|
||||
str_12 = _("Delete")
|
||||
str_13 = _("Sign Up")
|
||||
str_14 = _("Back")
|
||||
str_15 = _("Update")
|
||||
str_16 = _("Or Sign In")
|
||||
str_17 = _("Or Sign Up")
|
||||
str_18 = _("Invite code")
|
||||
str_19 = _("Edit your fullname")
|
||||
str_20 = _("Edit your email")
|
||||
str_21 = _("Change your password")
|
||||
str_22 = _("Delete your account")
|
||||
str_23 = _("Welcome")
|
||||
|
||||
#messages
|
||||
msg_00 = _("The session was closed.")
|
||||
msg_01 = _("Username must be at least 3 characters long!")
|
||||
msg_02 = _("Please enter your password!")
|
||||
msg_03 = _("Welcome")
|
||||
msg_04 = _("The code is invalid or has expired.")
|
||||
msg_05 = _("A bit short, don't you think?!")
|
||||
msg_06 = _("Not allowed characters for the username field.")
|
||||
msg_07 = _("Passwords do not match!")
|
||||
msg_08 = _("Password must be at least 8 characters long!")
|
||||
msg_09 = _("Congratulations, your account has been created!")
|
||||
msg_10 = _("Your first and last name have not been changed.")
|
||||
msg_11 = _("Your firstname is a bit short, don't you think?")
|
||||
msg_12 = _("Your surname is a bit short, don't you think?")
|
||||
msg_13 = _("Your first and last name have been successfully updated.")
|
||||
msg_14 = _("Invalid email address. Please try again.")
|
||||
msg_15 = _("Email address has not been changed.")
|
||||
msg_16 = _("Your email has been successfully updated.")
|
||||
msg_17 = _("The password entered is the same as the current password.")
|
||||
msg_18 = _("Password has been changed!")
|
||||
msg_19 = _("Please, type your username for account deletion.")
|
||||
msg_20 = _("Account successfully deleted!")
|
||||
msg_21 = _("Username or password is incorrect!")
|
||||
msg_22 = _("Unable to connect to the remote server.")
|
||||
msg_23 = _("Encountered an unexpected error while communicating with the remote server.")
|
||||
msg_24 = _("User already exists.")
|
||||
msg_25 = _("Email already exists.")
|
||||
msg_26 = _("Forgot your password? Please try again.")
|
||||
msg_27 = _("The session has expired.")
|
||||
|
||||
self.str = {'usr':str_00, 'usrn':str_01, 'fn':str_02, 'sn':str_03, 'pwd':str_04, 'old-pwd':str_05, 'new-pwd':str_06, 'conf-pwd':str_07, 'email':str_08, 'edit':str_09, 'login':str_10, 'log-out':str_11, 'del':str_12, 'sign-up':str_13, 'back':str_14, 'update':str_15, 'or-sign-in':str_16, 'or-sign-up':str_17, 'inv-code':str_18, 'edit-fn':str_19, 'edit-email':str_20, 'ch-pwd':str_21, 'del-account':str_22, 'welcome':str_23}
|
||||
self.msg = (msg_00, msg_01, msg_02, msg_03, msg_04, msg_05, msg_06, msg_07, msg_08, msg_09, msg_10, msg_11, msg_12, msg_13, msg_14, msg_15, msg_16, msg_17, msg_18, msg_19, msg_20, msg_21, msg_22, msg_23, msg_24, msg_25, msg_26, msg_27)
|
106
locales/base.pot
106
locales/base.pot
@ -17,199 +17,207 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: app.py:880
|
||||
#: libs/localization.py:12
|
||||
msgid "User"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:881
|
||||
#: libs/localization.py:13
|
||||
msgid "Username"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:882
|
||||
#: libs/localization.py:14
|
||||
msgid "Firstname"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:883
|
||||
#: libs/localization.py:15
|
||||
msgid "Surname"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:884
|
||||
#: libs/localization.py:16
|
||||
msgid "Password"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:885
|
||||
#: libs/localization.py:17
|
||||
msgid "Old password"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:886
|
||||
#: libs/localization.py:18
|
||||
msgid "New password"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:887
|
||||
#: libs/localization.py:19
|
||||
msgid "Confirm password"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:888
|
||||
#: libs/localization.py:20
|
||||
msgid "Email"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:889
|
||||
#: libs/localization.py:21
|
||||
msgid "edit"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:890
|
||||
#: libs/localization.py:22
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:891
|
||||
#: libs/localization.py:23
|
||||
msgid "Logout"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:892
|
||||
#: libs/localization.py:24
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:893
|
||||
#: libs/localization.py:25
|
||||
msgid "Sign Up"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:894
|
||||
#: libs/localization.py:26
|
||||
msgid "Back"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:895
|
||||
#: libs/localization.py:27
|
||||
msgid "Update"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:896
|
||||
#: libs/localization.py:28
|
||||
msgid "Or Sign In"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:897
|
||||
#: libs/localization.py:29
|
||||
msgid "Or Sign Up"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:898
|
||||
#: libs/localization.py:30
|
||||
msgid "Invite code"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:899
|
||||
#: libs/localization.py:31
|
||||
msgid "Edit your fullname"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:900
|
||||
#: libs/localization.py:32
|
||||
msgid "Edit your email"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:901
|
||||
#: libs/localization.py:33
|
||||
msgid "Change your password"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:902
|
||||
#: libs/localization.py:34
|
||||
msgid "Delete your account"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:903 app.py:909
|
||||
#: libs/localization.py:35 libs/localization.py:41
|
||||
msgid "Welcome"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:906
|
||||
#: libs/localization.py:38
|
||||
msgid "The session was closed."
|
||||
msgstr ""
|
||||
|
||||
#: app.py:907
|
||||
#: libs/localization.py:39
|
||||
msgid "Username must be at least 3 characters long!"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:908
|
||||
#: libs/localization.py:40
|
||||
msgid "Please enter your password!"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:910
|
||||
#: libs/localization.py:42
|
||||
msgid "The code is invalid or has expired."
|
||||
msgstr ""
|
||||
|
||||
#: app.py:911
|
||||
#: libs/localization.py:43
|
||||
msgid "A bit short, don't you think?!"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:912
|
||||
#: libs/localization.py:44
|
||||
msgid "Not allowed characters for the username field."
|
||||
msgstr ""
|
||||
|
||||
#: app.py:913
|
||||
#: libs/localization.py:45
|
||||
msgid "Passwords do not match!"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:914
|
||||
#: libs/localization.py:46
|
||||
msgid "Password must be at least 8 characters long!"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:915
|
||||
#: libs/localization.py:47
|
||||
msgid "Congratulations, your account has been created!"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:916
|
||||
#: libs/localization.py:48
|
||||
msgid "Your first and last name have not been changed."
|
||||
msgstr ""
|
||||
|
||||
#: libs/localization.py:49
|
||||
msgid "Your firstname is a bit short, don't you think?"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:917
|
||||
#: libs/localization.py:50
|
||||
msgid "Your surname is a bit short, don't you think?"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:918
|
||||
#: libs/localization.py:51
|
||||
msgid "Your first and last name have been successfully updated."
|
||||
msgstr ""
|
||||
|
||||
#: app.py:919
|
||||
#: libs/localization.py:52
|
||||
msgid "Invalid email address. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: app.py:920
|
||||
#: libs/localization.py:53
|
||||
msgid "Email address has not been changed."
|
||||
msgstr ""
|
||||
|
||||
#: libs/localization.py:54
|
||||
msgid "Your email has been successfully updated."
|
||||
msgstr ""
|
||||
|
||||
#: app.py:921
|
||||
#: libs/localization.py:55
|
||||
msgid "The password entered is the same as the current password."
|
||||
msgstr ""
|
||||
|
||||
#: app.py:922
|
||||
#: libs/localization.py:56
|
||||
msgid "Password has been changed!"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:923
|
||||
#: libs/localization.py:57
|
||||
msgid "Please, type your username for account deletion."
|
||||
msgstr ""
|
||||
|
||||
#: app.py:924
|
||||
#: libs/localization.py:58
|
||||
msgid "Account successfully deleted!"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:925
|
||||
#: libs/localization.py:59
|
||||
msgid "Username or password is incorrect!"
|
||||
msgstr ""
|
||||
|
||||
#: app.py:926
|
||||
#: libs/localization.py:60
|
||||
msgid "Unable to connect to the remote server."
|
||||
msgstr ""
|
||||
|
||||
#: app.py:927
|
||||
#: libs/localization.py:61
|
||||
msgid ""
|
||||
"Encountered an unexpected error while communicating with the remote server."
|
||||
msgstr ""
|
||||
|
||||
#: app.py:928
|
||||
#: libs/localization.py:62
|
||||
msgid "User already exists."
|
||||
msgstr ""
|
||||
|
||||
#: app.py:929
|
||||
#: libs/localization.py:63
|
||||
msgid "Email already exists."
|
||||
msgstr ""
|
||||
|
||||
#: app.py:930
|
||||
#: libs/localization.py:64
|
||||
msgid "Forgot your password? Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: app.py:931
|
||||
#: libs/localization.py:65
|
||||
msgid "The session has expired."
|
||||
msgstr ""
|
Binary file not shown.
@ -3,213 +3,220 @@
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <aitzol@lainoa.eus>, 2022.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 0.0.1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-04-07 17:23+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"PO-Revision-Date: 2022-04-16 17:11+0200\n"
|
||||
"Last-Translator: Aitzol Berasategi <aitzol@lainoa.eus>\n"
|
||||
"Language-Team: LANGUAGE <EU@eu.org>\n"
|
||||
"Language: \n"
|
||||
"Language: en\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 2.3\n"
|
||||
|
||||
#: app.py:880
|
||||
#: libs/localization.py:12
|
||||
msgid "User"
|
||||
msgstr "User"
|
||||
|
||||
#: app.py:881
|
||||
#: libs/localization.py:13
|
||||
msgid "Username"
|
||||
msgstr "Username"
|
||||
|
||||
#: app.py:882
|
||||
#: libs/localization.py:14
|
||||
msgid "Firstname"
|
||||
msgstr "Firstname"
|
||||
|
||||
#: app.py:883
|
||||
#: libs/localization.py:15
|
||||
msgid "Surname"
|
||||
msgstr "Surname"
|
||||
|
||||
#: app.py:884
|
||||
#: libs/localization.py:16
|
||||
msgid "Password"
|
||||
msgstr "Password"
|
||||
|
||||
#: app.py:885
|
||||
#: libs/localization.py:17
|
||||
msgid "Old password"
|
||||
msgstr "Old password"
|
||||
|
||||
#: app.py:886
|
||||
#: libs/localization.py:18
|
||||
msgid "New password"
|
||||
msgstr "New password"
|
||||
|
||||
#: app.py:887
|
||||
#: libs/localization.py:19
|
||||
msgid "Confirm password"
|
||||
msgstr "Confirm password"
|
||||
|
||||
#: app.py:888
|
||||
#: libs/localization.py:20
|
||||
msgid "Email"
|
||||
msgstr "Email"
|
||||
|
||||
#: app.py:889
|
||||
#: libs/localization.py:21
|
||||
msgid "edit"
|
||||
msgstr "edit"
|
||||
|
||||
#: app.py:890
|
||||
#: libs/localization.py:22
|
||||
msgid "Login"
|
||||
msgstr "Login"
|
||||
|
||||
#: app.py:891
|
||||
#: libs/localization.py:23
|
||||
msgid "Logout"
|
||||
msgstr "Logout"
|
||||
|
||||
#: app.py:892
|
||||
#: libs/localization.py:24
|
||||
msgid "Delete"
|
||||
msgstr "Delete"
|
||||
|
||||
#: app.py:893
|
||||
#: libs/localization.py:25
|
||||
msgid "Sign Up"
|
||||
msgstr "Sign Up"
|
||||
|
||||
#: app.py:894
|
||||
#: libs/localization.py:26
|
||||
msgid "Back"
|
||||
msgstr "Back"
|
||||
|
||||
#: app.py:895
|
||||
#: libs/localization.py:27
|
||||
msgid "Update"
|
||||
msgstr "Update"
|
||||
|
||||
#: app.py:896
|
||||
#: libs/localization.py:28
|
||||
msgid "Or Sign In"
|
||||
msgstr "Or Sign In"
|
||||
|
||||
#: app.py:897
|
||||
#: libs/localization.py:29
|
||||
msgid "Or Sign Up"
|
||||
msgstr "Or Sign Up"
|
||||
|
||||
#: app.py:898
|
||||
#: libs/localization.py:30
|
||||
msgid "Invite code"
|
||||
msgstr "Invite code"
|
||||
|
||||
#: app.py:899
|
||||
#: libs/localization.py:31
|
||||
msgid "Edit your fullname"
|
||||
msgstr "Edit your fullname"
|
||||
|
||||
#: app.py:900
|
||||
#: libs/localization.py:32
|
||||
msgid "Edit your email"
|
||||
msgstr "Edit your email"
|
||||
|
||||
#: app.py:901
|
||||
#: libs/localization.py:33
|
||||
msgid "Change your password"
|
||||
msgstr "Change your password"
|
||||
|
||||
#: app.py:902
|
||||
#: libs/localization.py:34
|
||||
msgid "Delete your account"
|
||||
msgstr "Delete your account"
|
||||
|
||||
#: app.py:903 app.py:909
|
||||
#: libs/localization.py:35 libs/localization.py:41
|
||||
msgid "Welcome"
|
||||
msgstr "Welcome"
|
||||
|
||||
#: app.py:906
|
||||
#: libs/localization.py:38
|
||||
msgid "The session was closed."
|
||||
msgstr "The session was closed."
|
||||
|
||||
#: app.py:907
|
||||
#: libs/localization.py:39
|
||||
msgid "Username must be at least 3 characters long!"
|
||||
msgstr "Username must be at least 3 characters long!"
|
||||
|
||||
#: app.py:908
|
||||
#: libs/localization.py:40
|
||||
msgid "Please enter your password!"
|
||||
msgstr "Please enter your password!"
|
||||
|
||||
#: app.py:910
|
||||
#: libs/localization.py:42
|
||||
msgid "The code is invalid or has expired."
|
||||
msgstr "The code is invalid or has expired."
|
||||
|
||||
#: app.py:911
|
||||
#: libs/localization.py:43
|
||||
msgid "A bit short, don't you think?!"
|
||||
msgstr "A bit short, don't you think?!"
|
||||
|
||||
#: app.py:912
|
||||
#: libs/localization.py:44
|
||||
msgid "Not allowed characters for the username field."
|
||||
msgstr "Not allowed characters for the username field."
|
||||
|
||||
#: app.py:913
|
||||
#: libs/localization.py:45
|
||||
msgid "Passwords do not match!"
|
||||
msgstr "Passwords do not match!"
|
||||
|
||||
#: app.py:914
|
||||
#: libs/localization.py:46
|
||||
msgid "Password must be at least 8 characters long!"
|
||||
msgstr "Password must be at least 8 characters long!"
|
||||
|
||||
#: app.py:915
|
||||
#: libs/localization.py:47
|
||||
msgid "Congratulations, your account has been created!"
|
||||
msgstr "Congratulations, your account has been created!"
|
||||
|
||||
#: app.py:916
|
||||
#: libs/localization.py:48
|
||||
msgid "Your first and last name have not been changed."
|
||||
msgstr "Your first and last name have not been changed."
|
||||
|
||||
#: libs/localization.py:49
|
||||
msgid "Your firstname is a bit short, don't you think?"
|
||||
msgstr "Your firstname is a bit short, don't you think?"
|
||||
|
||||
#: app.py:917
|
||||
#: libs/localization.py:50
|
||||
msgid "Your surname is a bit short, don't you think?"
|
||||
msgstr "Your surname is a bit short, don't you think?"
|
||||
|
||||
#: app.py:918
|
||||
#: libs/localization.py:51
|
||||
msgid "Your first and last name have been successfully updated."
|
||||
msgstr "Your first and last name have been successfully updated."
|
||||
|
||||
#: app.py:919
|
||||
#: libs/localization.py:52
|
||||
msgid "Invalid email address. Please try again."
|
||||
msgstr "Invalid email address. Please try again."
|
||||
|
||||
#: app.py:920
|
||||
#: libs/localization.py:53
|
||||
msgid "Email address has not been changed."
|
||||
msgstr "Email address has not been changed."
|
||||
|
||||
#: libs/localization.py:54
|
||||
msgid "Your email has been successfully updated."
|
||||
msgstr "Your email has been successfully updated."
|
||||
|
||||
#: app.py:921
|
||||
#: libs/localization.py:55
|
||||
msgid "The password entered is the same as the current password."
|
||||
msgstr "The password entered is the same as the current password."
|
||||
|
||||
#: app.py:922
|
||||
#: libs/localization.py:56
|
||||
msgid "Password has been changed!"
|
||||
msgstr "Password has been changed!"
|
||||
|
||||
#: app.py:923
|
||||
#: libs/localization.py:57
|
||||
msgid "Please, type your username for account deletion."
|
||||
msgstr "Please, type your username for account deletion."
|
||||
|
||||
#: app.py:924
|
||||
#: libs/localization.py:58
|
||||
msgid "Account successfully deleted!"
|
||||
msgstr "Account successfully deleted!"
|
||||
|
||||
#: app.py:925
|
||||
#: libs/localization.py:59
|
||||
msgid "Username or password is incorrect!"
|
||||
msgstr "Username or password is incorrect!"
|
||||
|
||||
#: app.py:926
|
||||
#: libs/localization.py:60
|
||||
msgid "Unable to connect to the remote server."
|
||||
msgstr "Unable to connect to the remote server."
|
||||
|
||||
#: app.py:927
|
||||
msgid ""
|
||||
"Encountered an unexpected error while communicating with the remote server."
|
||||
#: libs/localization.py:61
|
||||
msgid "Encountered an unexpected error while communicating with the remote server."
|
||||
msgstr "Encountered an unexpected error while communicating with the remote server."
|
||||
|
||||
#: app.py:928
|
||||
#: libs/localization.py:62
|
||||
msgid "User already exists."
|
||||
msgstr "User already exists."
|
||||
|
||||
#: app.py:929
|
||||
#: libs/localization.py:63
|
||||
msgid "Email already exists."
|
||||
msgstr "Email already exists."
|
||||
|
||||
#: app.py:930
|
||||
#: libs/localization.py:64
|
||||
msgid "Forgot your password? Please try again."
|
||||
msgstr "Forgot your password? Please try again."
|
||||
|
||||
#: app.py:931
|
||||
#: libs/localization.py:65
|
||||
msgid "The session has expired."
|
||||
msgstr "The session has expired."
|
||||
msgstr "The session has expired."
|
Binary file not shown.
@ -3,213 +3,220 @@
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <aitzol@lainoa.eus>, 2022.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 0.0.1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-04-07 17:23+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"PO-Revision-Date: 2022-04-16 17:13+0200\n"
|
||||
"Last-Translator: Aitzol Berasategi <aitzol@lainoa.eus>\n"
|
||||
"Language-Team: LANGUAGE <EU@eu.org>\n"
|
||||
"Language: \n"
|
||||
"Language: eu\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 2.3\n"
|
||||
|
||||
#: app.py:880
|
||||
#: libs/localization.py:12
|
||||
msgid "User"
|
||||
msgstr "Erabiltzailea"
|
||||
|
||||
#: app.py:881
|
||||
#: libs/localization.py:13
|
||||
msgid "Username"
|
||||
msgstr "Erabiltzaile izena"
|
||||
msgstr "Erabiltzailea"
|
||||
|
||||
#: app.py:882
|
||||
#: libs/localization.py:14
|
||||
msgid "Firstname"
|
||||
msgstr "Izena"
|
||||
|
||||
#: app.py:883
|
||||
#: libs/localization.py:15
|
||||
msgid "Surname"
|
||||
msgstr "Abizena"
|
||||
|
||||
#: app.py:884
|
||||
#: libs/localization.py:16
|
||||
msgid "Password"
|
||||
msgstr "Pasahitza"
|
||||
|
||||
#: app.py:885
|
||||
#: libs/localization.py:17
|
||||
msgid "Old password"
|
||||
msgstr "Pasahitz zaharra"
|
||||
|
||||
#: app.py:886
|
||||
#: libs/localization.py:18
|
||||
msgid "New password"
|
||||
msgstr "Pasahitz berria"
|
||||
|
||||
#: app.py:887
|
||||
#: libs/localization.py:19
|
||||
msgid "Confirm password"
|
||||
msgstr "Pasahitza berretsi"
|
||||
|
||||
#: app.py:888
|
||||
#: libs/localization.py:20
|
||||
msgid "Email"
|
||||
msgstr "Emaila"
|
||||
|
||||
#: app.py:889
|
||||
#: libs/localization.py:21
|
||||
msgid "edit"
|
||||
msgstr "editatu"
|
||||
|
||||
#: app.py:890
|
||||
#: libs/localization.py:22
|
||||
msgid "Login"
|
||||
msgstr "Saioa hasi"
|
||||
|
||||
#: app.py:891
|
||||
#: libs/localization.py:23
|
||||
msgid "Logout"
|
||||
msgstr "Saioa itxi"
|
||||
|
||||
#: app.py:892
|
||||
#: libs/localization.py:24
|
||||
msgid "Delete"
|
||||
msgstr "Ezabatu"
|
||||
|
||||
#: app.py:893
|
||||
#: libs/localization.py:25
|
||||
msgid "Sign Up"
|
||||
msgstr "Kontua sortu"
|
||||
|
||||
#: app.py:894
|
||||
#: libs/localization.py:26
|
||||
msgid "Back"
|
||||
msgstr "Itzuli"
|
||||
|
||||
#: app.py:895
|
||||
#: libs/localization.py:27
|
||||
msgid "Update"
|
||||
msgstr "Eguneratu"
|
||||
|
||||
#: app.py:896
|
||||
#: libs/localization.py:28
|
||||
msgid "Or Sign In"
|
||||
msgstr "Edo Saioa hasi"
|
||||
|
||||
#: app.py:897
|
||||
#: libs/localization.py:29
|
||||
msgid "Or Sign Up"
|
||||
msgstr "Edo Kontua sortu"
|
||||
|
||||
#: app.py:898
|
||||
#: libs/localization.py:30
|
||||
msgid "Invite code"
|
||||
msgstr "Gonbidapen kodea"
|
||||
|
||||
#: app.py:899
|
||||
#: libs/localization.py:31
|
||||
msgid "Edit your fullname"
|
||||
msgstr "Izen-abizenak editatu"
|
||||
|
||||
#: app.py:900
|
||||
#: libs/localization.py:32
|
||||
msgid "Edit your email"
|
||||
msgstr "Email helbidea editatu"
|
||||
|
||||
#: app.py:901
|
||||
#: libs/localization.py:33
|
||||
msgid "Change your password"
|
||||
msgstr "Pasahitza eguneratu"
|
||||
|
||||
#: app.py:902
|
||||
#: libs/localization.py:34
|
||||
msgid "Delete your account"
|
||||
msgstr "Kontua ezabatu"
|
||||
|
||||
#: app.py:903 app.py:909
|
||||
#: libs/localization.py:35 libs/localization.py:41
|
||||
msgid "Welcome"
|
||||
msgstr "Ongi etorri"
|
||||
|
||||
#: app.py:906
|
||||
#: libs/localization.py:38
|
||||
msgid "The session was closed."
|
||||
msgstr "Saioa itxi da."
|
||||
|
||||
#: app.py:907
|
||||
#: libs/localization.py:39
|
||||
msgid "Username must be at least 3 characters long!"
|
||||
msgstr "Erabiltzaile izenak gutxienez 3 karaktere izan behar ditu!"
|
||||
|
||||
#: app.py:908
|
||||
#: libs/localization.py:40
|
||||
msgid "Please enter your password!"
|
||||
msgstr "Sartu zure pasahitza, mesedez!"
|
||||
|
||||
#: app.py:910
|
||||
#: libs/localization.py:42
|
||||
msgid "The code is invalid or has expired."
|
||||
msgstr "Kodea baliogabea da edo iraungi egin da."
|
||||
|
||||
#: app.py:911
|
||||
#: libs/localization.py:43
|
||||
msgid "A bit short, don't you think?!"
|
||||
msgstr "Labur-xamarra, ez duzu uste?"
|
||||
msgstr "Labur-xamarra, ez duzu uste?!"
|
||||
|
||||
#: app.py:912
|
||||
#: libs/localization.py:44
|
||||
msgid "Not allowed characters for the username field."
|
||||
msgstr "Erabiltzaile izenerako onartzen ez diren karaktereak."
|
||||
|
||||
#: app.py:913
|
||||
#: libs/localization.py:45
|
||||
msgid "Passwords do not match!"
|
||||
msgstr "Pasahitzak ez datoz bat!"
|
||||
|
||||
#: app.py:914
|
||||
#: libs/localization.py:46
|
||||
msgid "Password must be at least 8 characters long!"
|
||||
msgstr "Pasahitzak gutxienez 8 karaktereko luzera izan behar du!"
|
||||
|
||||
#: app.py:915
|
||||
#: libs/localization.py:47
|
||||
msgid "Congratulations, your account has been created!"
|
||||
msgstr "Zorionak, zure kontua sortu da!"
|
||||
|
||||
#: app.py:916
|
||||
#: libs/localization.py:48
|
||||
msgid "Your first and last name have not been changed."
|
||||
msgstr "Zure izen-abizenak ez dira aldatu."
|
||||
|
||||
#: libs/localization.py:49
|
||||
msgid "Your firstname is a bit short, don't you think?"
|
||||
msgstr "Zure izena labur-xamarra da, ez duzu uste?"
|
||||
|
||||
#: app.py:917
|
||||
#: libs/localization.py:50
|
||||
msgid "Your surname is a bit short, don't you think?"
|
||||
msgstr "Zure abizena labur-xamarra da, ez duzu uste?"
|
||||
|
||||
#: app.py:918
|
||||
#: libs/localization.py:51
|
||||
msgid "Your first and last name have been successfully updated."
|
||||
msgstr "Zure izen-abizenak ongi eguneratu dira."
|
||||
|
||||
#: app.py:919
|
||||
#: libs/localization.py:52
|
||||
msgid "Invalid email address. Please try again."
|
||||
msgstr "Baliogabeko email helbidea. Saia zaitez berriz, mesedez. "
|
||||
msgstr "Baliogabeko email helbidea. Saia zaitez berriz, mesedez."
|
||||
|
||||
#: app.py:920
|
||||
#: libs/localization.py:53
|
||||
msgid "Email address has not been changed."
|
||||
msgstr "Email helbidea ez da aldatu."
|
||||
|
||||
#: libs/localization.py:54
|
||||
msgid "Your email has been successfully updated."
|
||||
msgstr "Zure emaila ongi eguneratu da."
|
||||
|
||||
#: app.py:921
|
||||
#: libs/localization.py:55
|
||||
msgid "The password entered is the same as the current password."
|
||||
msgstr "Sartutako pasahitza egungo pasahitzaren berdina da."
|
||||
|
||||
#: app.py:922
|
||||
#: libs/localization.py:56
|
||||
msgid "Password has been changed!"
|
||||
msgstr "Pasahitza eguneratua izan da!"
|
||||
|
||||
#: app.py:923
|
||||
#: libs/localization.py:57
|
||||
msgid "Please, type your username for account deletion."
|
||||
msgstr "Kontua ezabatzeko idatzi zure erabiltzaile izena, mesedez."
|
||||
|
||||
#: app.py:924
|
||||
#: libs/localization.py:58
|
||||
msgid "Account successfully deleted!"
|
||||
msgstr "Kontua ongi ezabatu da!"
|
||||
|
||||
#: app.py:925
|
||||
#: libs/localization.py:59
|
||||
msgid "Username or password is incorrect!"
|
||||
msgstr "Erabiltzaile izena edo pasahitza okerrak dira!"
|
||||
|
||||
#: app.py:926
|
||||
#: libs/localization.py:60
|
||||
msgid "Unable to connect to the remote server."
|
||||
msgstr "Ezinezkoa urruneko zerbitzara konektatzea."
|
||||
|
||||
#: app.py:927
|
||||
msgid ""
|
||||
"Encountered an unexpected error while communicating with the remote server."
|
||||
#: libs/localization.py:61
|
||||
msgid "Encountered an unexpected error while communicating with the remote server."
|
||||
msgstr "Ezusteko errore bat gertatu da urruneko zerbitzariarekin komunikatzean."
|
||||
|
||||
#: app.py:928
|
||||
#: libs/localization.py:62
|
||||
msgid "User already exists."
|
||||
msgstr "Erabiltzaile hori existitzen da."
|
||||
|
||||
#: app.py:929
|
||||
msgid "Email already exists"
|
||||
#: libs/localization.py:63
|
||||
msgid "Email already exists."
|
||||
msgstr "Email hori existitzen da."
|
||||
|
||||
#: app.py:930
|
||||
#: libs/localization.py:64
|
||||
msgid "Forgot your password? Please try again."
|
||||
msgstr "Zure pasahitza ahaztu duzu? Saia zeitez berriz, mesedez."
|
||||
|
||||
#: app.py:931
|
||||
#: libs/localization.py:65
|
||||
msgid "The session has expired."
|
||||
msgstr "Saioa iraungi egin da."
|
||||
msgstr "Saioa iraungi egin da."
|
Loading…
Reference in New Issue
Block a user