Commit cf85504a by Hamsyah

pembaruan terbaru hmzh

2 parents d0f6a355 dfa34823
...@@ -28,7 +28,7 @@ def permissions_widget(node, kw): ...@@ -28,7 +28,7 @@ def permissions_widget(node, kw):
class AddSchema(colander.Schema): class AddSchema(colander.Schema):
group_name = colander.SchemaNode( group_name = colander.SchemaNode(
colander.String(), colander.String(),
validator=colander.Length(max=128)) validator= name_validator)
description = colander.SchemaNode( description = colander.SchemaNode(
colander.String(), colander.String(),
validator=colander.Length(max=256), validator=colander.Length(max=256),
...@@ -159,13 +159,22 @@ def clean_name(s): ...@@ -159,13 +159,22 @@ def clean_name(s):
s = s.replace(' ', ' ') s = s.replace(' ', ' ')
return s return s
class Validator:
class NameValidator:
def __init__(self, group): def __init__(self, group):
self.group = group self.group = group
class NameValidator(Validator):
def __call__(self, node, value): def __call__(self, node, value):
group_name = clean_name(value) group_name = value
def group_max():
raise colander.Invalid(node, _('Maksimal 128 karakter'))
# Jika karakter melebihi 128 karakter maka, panggil fungsi
if (len(group_name) > 128):
group_max()
if self.group and self.group.group_name.lower() == group_name.lower(): if self.group and self.group.group_name.lower() == group_name.lower():
return return
...@@ -182,6 +191,7 @@ class NameValidator: ...@@ -182,6 +191,7 @@ class NameValidator:
raise colander.Invalid(node, ts) raise colander.Invalid(node, ts)
@colander.deferred @colander.deferred
def name_validator(node, kw): def name_validator(node, kw):
return NameValidator(kw['group']) return NameValidator(kw['group'])
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!