Fixed bugs

This commit is contained in:
Antonio de la Rosa 2016-04-14 03:15:24 +02:00
parent 4bebd7a6c4
commit 2717829de4
6 changed files with 49 additions and 8 deletions

View file

@ -66,9 +66,10 @@ class HiddenForm(BaseForm):
class SelectForm(BaseForm):
def __init__(self, name, value):
def __init__(self, name, value, elements=OrderedDict(), default_value=""):
super(SelectForm, self).__init__(name, value)
self.arr_select=OrderedDict()
self.arr_select=elements
self.default_value=default_value
def form(self):

View file

@ -0,0 +1,26 @@
#!/usr/bin/python3
from paramecio.cromosoma.corefields import CharField
from paramecio.cromosoma import coreforms
from paramecio.citoplasma.i18n import I18n
class LangField(CharField):
def __init__(self, name, size=255, required=False):
super(CharField, self).__init__(name, size, required)
select_lang={}
for lang in I18n.dict_i18n:
select_lang[lang]=lang
self.change_form(coreforms.SelectForm, [select_lang, I18n.default_lang])
def check(self, value):
if value not in I18n.dict_i18n:
value=I18n.default_lang
return value

View file

@ -831,6 +831,10 @@ class WebModel:
for error in k_error:
error_txt+=error+"\n"
for type_error in self.errors.values():
for error in type_error:
error_txt+=error+"\n"
return error_txt
@staticmethod

View file

@ -13,7 +13,7 @@ def admin(t):
user_admin.fields['privileges'].name_form=SelectForm
user_admin.create_forms(['username', 'password', 'email', 'privileges'])
user_admin.create_forms(['username', 'password', 'email', 'privileges', 'lang'])
user_admin.forms['privileges'].arr_select={0: I18n.lang('admin', 'without_privileges', 'Without privileges'), 1: I18n.lang('admin', 'selected_privileges', 'Selected privileges'), 2: I18n.lang('admin', 'administrator', 'Administrator')}
@ -27,8 +27,12 @@ def admin(t):
admin.list.search_fields=['username']
admin.arr_fields_edit=['username', 'password', 'repeat_password', 'email', 'privileges']
admin.arr_fields_edit=['username', 'password', 'repeat_password', 'email', 'privileges', 'lang']
#admin.list.limit_pages=5
return admin.show()
form_admin=admin.show()
print(user_admin.show_errors())
return form_admin

View file

@ -6,6 +6,7 @@ from paramecio.cromosoma.usermodel import UserModel
from paramecio.cromosoma import corefields
from paramecio.cromosoma.extrafields.emailfield import EmailField
from paramecio.cromosoma.extrafields.passwordfield import PasswordField
from paramecio.cromosoma.extrafields.langfield import LangField
class PrivilegesField(corefields.IntegerField):
@ -22,7 +23,10 @@ class PrivilegesField(corefields.IntegerField):
class UserAdmin(UserModel):
def create_fields(self):
#def create_fields(self):
def __init__(self):
super().__init__()
# I can change other fields here, how the name.
@ -44,6 +48,8 @@ class UserAdmin(UserModel):
self.register(PrivilegesField('privileges'))
self.register(LangField('lang', 20))
"""
user_admin=WebModel('user_admin')