diff --git a/paramecio2/libraries/db/usermodel.py b/paramecio2/libraries/db/usermodel.py index 1708951..f172f8b 100644 --- a/paramecio2/libraries/db/usermodel.py +++ b/paramecio2/libraries/db/usermodel.py @@ -3,7 +3,7 @@ from paramecio2.libraries.db.webmodel import WebModel from paramecio2.libraries.db.coreforms import PasswordForm from paramecio2.libraries.i18n import I18n -from flask import request +from flask import request, session class UserModel(WebModel): """Model used with basic things for users login and signup @@ -46,7 +46,7 @@ class UserModel(WebModel): repeat_password.required=1 - repeat_password.label=I18n.lang('common', 'repeat_password', 'Repeat Password') + repeat_password.label=_('Repeat Password') repeat_password.field=self.fields[self.password_field] @@ -99,7 +99,7 @@ class UserModel(WebModel): if dict_values['repeat_password']!=dict_values[self.password_field]: self.fields[self.password_field].error=True - self.fields[self.password_field].txt_error=I18n.lang('common', 'error_passwords_no_match', 'Error: passwords doesn\'t match') + self.fields[self.password_field].txt_error=_('Error: passwords doesn\'t match') error+=1 diff --git a/paramecio2/modules/admin/admin/ausers.py b/paramecio2/modules/admin/admin/ausers.py index ac42887..cca37df 100644 --- a/paramecio2/modules/admin/admin/ausers.py +++ b/paramecio2/modules/admin/admin/ausers.py @@ -1,5 +1,5 @@ from settings import config -from flask import g, url_for +from flask import g, url_for, session from paramecio2.modules.admin.models.admin import UserAdmin from paramecio2.libraries.generate_admin_class import GenerateAdminClass from paramecio2.libraries.i18n import I18n, PGetText @@ -56,6 +56,8 @@ def ausers(): admin.arr_fields_edit=['username', 'password', 'repeat_password', 'email', 'lang', 'dark_theme', 'double_auth', 'disabled', 'last_login'] + admin.post_update=update_lang + form_admin=admin.show() if type(form_admin).__name__=='str': @@ -65,3 +67,11 @@ def ausers(): return form_admin + +def update_lang(admin, item_id): + + arr_row=admin.model.select_a_row(item_id) + + session['lang']=arr_row.get('lang', I18n.get_default_lang()) + + return True diff --git a/paramecio2/modules/admin/settings/config_admin.py b/paramecio2/modules/admin/settings/config_admin.py index 6262003..32e60cf 100644 --- a/paramecio2/modules/admin/settings/config_admin.py +++ b/paramecio2/modules/admin/settings/config_admin.py @@ -1,14 +1,22 @@ from paramecio2.libraries.config_admin import config_admin -#from paramecio2.libraries.i18n import I18n, PGetText +from paramecio2.libraries.i18n import I18n, PGetText #modules_admin=[[I18n.lang('admin', 'users_admin', 'User\'s Admin'), 'paramecio.modules.admin.admin.ausers', 'ausers']] -#pgettext=PGetText(__file__+'/../') -#_=pgettext.gettext +pgettext=PGetText(__file__+'/../') +_=pgettext.gettext -config_admin.append([_('Users')]) +def users_text(): + + return _('Users') -config_admin.append([_('Users edit'), 'paramecio2.modules.admin.admin.ausers', 'admin_app.ausers', 'fa-user']) +def users_edit(): + + return _('Users edit') + +config_admin.append([users_text]) + +config_admin.append([users_edit, 'paramecio2.modules.admin.admin.ausers', 'admin_app.ausers', 'fa-user']) #config_admin.append([I18n.lang('admin', 'modules', 'Modules')]) diff --git a/paramecio2/modules/admin/templates/dashboard.phtml b/paramecio2/modules/admin/templates/dashboard.phtml index 64aedbd..477761d 100644 --- a/paramecio2/modules/admin/templates/dashboard.phtml +++ b/paramecio2/modules/admin/templates/dashboard.phtml @@ -75,6 +75,7 @@ ${load_js()|n} <% class_selected='' + link_text='' %> @@ -89,13 +90,18 @@ ${load_js()|n} if len(admin)>3: icon_module=admin[3] + if type(admin[0]).__name__=='function': + link_text=admin[0]() + else: + link_text=admin[0] + %> -
  •  ${admin[0]}
  • +
  •  ${link_text}
  • % elif len(admin)==1: -
  • ${admin[0]}
  • +
  • ${link_text}
  • % endif