fields: add anonymise option to text fields (#75708)
gitea/wcs/pipeline/head Build queued... Details

This commit is contained in:
Frédéric Péters 2023-03-28 11:12:28 +02:00 committed by Gitea
parent ae8b75f5bc
commit e5fcbde037
2 changed files with 28 additions and 1 deletions

View File

@ -127,6 +127,27 @@ def test_text(pub):
assert 'rows="12"' in str(form.render())
def test_text_anonymise(pub):
formdef = FormDef()
formdef.name = 'title'
formdef.fields = [fields.TextField(id='0', label='comment', type='text', varname='comment')]
formdef.store()
formdata = formdef.data_class()()
formdata.just_created()
formdata.data = {'0': 'bar'}
formdata.anonymise()
assert not formdata.data.get('0')
formdef.fields[0].anonymise = False
formdef.store()
formdata = formdef.data_class()()
formdata.just_created()
formdata.data = {'0': 'bar'}
formdata.anonymise()
assert formdata.data.get('0') == 'bar'
def test_email():
assert (
fields.EmailField().get_view_value('foo@localhost')

View File

@ -1455,7 +1455,13 @@ class TextField(WidgetField):
)
def get_admin_attributes(self):
return WidgetField.get_admin_attributes(self) + ['cols', 'rows', 'display_mode', 'maxlength']
return WidgetField.get_admin_attributes(self) + [
'cols',
'rows',
'display_mode',
'maxlength',
'anonymise',
]
def convert_value_from_str(self, value):
return value