53 lines
1.4 KiB
Python
53 lines
1.4 KiB
Python
"""passbook Policy forms"""
|
|
|
|
from django import forms
|
|
from django.utils.translation import gettext as _
|
|
|
|
from passbook.core.models import DebugPolicy, FieldMatcherPolicy, WebhookPolicy
|
|
|
|
GENERAL_FIELDS = ['name', 'action', 'negate', 'order', ]
|
|
|
|
class FieldMatcherPolicyForm(forms.ModelForm):
|
|
"""FieldMatcherPolicy Form"""
|
|
|
|
class Meta:
|
|
|
|
model = FieldMatcherPolicy
|
|
fields = GENERAL_FIELDS + ['user_field', 'match_action', 'value', ]
|
|
widgets = {
|
|
'name': forms.TextInput(),
|
|
'value': forms.TextInput(),
|
|
}
|
|
|
|
|
|
class WebhookPolicyForm(forms.ModelForm):
|
|
"""WebhookPolicyForm Form"""
|
|
|
|
class Meta:
|
|
|
|
model = WebhookPolicy
|
|
fields = GENERAL_FIELDS + ['url', 'method', 'json_body', 'json_headers',
|
|
'result_jsonpath', 'result_json_value', ]
|
|
widgets = {
|
|
'name': forms.TextInput(),
|
|
'json_body': forms.TextInput(),
|
|
'json_headers': forms.TextInput(),
|
|
'result_jsonpath': forms.TextInput(),
|
|
'result_json_value': forms.TextInput(),
|
|
}
|
|
|
|
|
|
class DebugPolicyForm(forms.ModelForm):
|
|
"""DebugPolicyForm Form"""
|
|
|
|
class Meta:
|
|
|
|
model = DebugPolicy
|
|
fields = GENERAL_FIELDS + ['result', 'wait_min', 'wait_max']
|
|
widgets = {
|
|
'name': forms.TextInput(),
|
|
}
|
|
labels = {
|
|
'result': _('Allow user')
|
|
}
|