Fixes in datetimefield and admin app

This commit is contained in:
absurdo 2023-09-02 21:09:35 +02:00
parent de51f0356f
commit 2f3ee90e26
3 changed files with 40 additions and 13 deletions

View file

@ -26,16 +26,17 @@ class DateTimeField(PhangoField):
value=datetime.local_to_gmt(value)
elif not datetime.obtain_timestamp(value):
self.error=True
self.txt_error=self.error_default
return ''
return '0000-00-00 00:00:00'
if value==False:
self.error=True
self.txt_error=self.error_default
return ''
return '0000-00-00 00:00:00'
else:
"""

View file

@ -72,6 +72,8 @@ class GenerateAdminClass:
self.url_redirect=self.url
self.pre_update=None
self.post_update=None
self.text_home=I18n.lang('common', 'home', 'Home')
@ -131,6 +133,13 @@ class GenerateAdminClass:
insert_row=self.model.insert
pre_update_ret=False
if not self.pre_update:
pre_update_ret=True
else:
pre_update_ret=self.pre_update(self)
try:
item_id=str(int(request.args.get('id', '0')))
@ -149,21 +158,36 @@ class GenerateAdminClass:
post=dict(request.form)
if insert_row(post):
flash(I18n.lang('common', 'task_successful', 'Task successful'))
if self.post_update:
if item_id=='0':
item_id=self.model.insert_id()
self.post_update(self, item_id)
return redirect(self.url_redirect)
if pre_update_ret:
if insert_row(post):
flash(I18n.lang('common', 'task_successful', 'Task successful'))
if self.post_update:
if item_id=='0':
item_id=self.model.insert_id()
self.post_update(self, item_id)
return redirect(self.url_redirect)
else:
url_action=add_get_parameters(self.url, op_admin=2, id=item_id)
post=dict(request.form)
form=show_form(post, edit_forms, self.t, True)
return self.t.load_template(self.template_insert, admin=self, title_edit=title_edit, form=form, model=self.model, id=item_id, url_action=url_action, enctype=self.model.enctype)
else:
url_action=add_get_parameters(self.url, op_admin=2, id=item_id)
post=dict(request.form)
form=show_form(post, edit_forms, self.t, True)
return self.t.load_template(self.template_insert, admin=self, title_edit=title_edit, form=form, model=self.model, id=item_id, url_action=url_action, enctype=self.model.enctype)

View file

@ -305,7 +305,9 @@ def signup():
forms['privileges']=2
user_admin.valid_fields=['username', 'email', 'password', 'privileges']
forms['last_login']=now()
user_admin.valid_fields=['username', 'email', 'password', 'privileges', 'last_login']
user_admin.create_forms()