mirror of
https://github.com/eduardogsilva/wireguard_webadmin.git
synced 2025-06-30 21:44:29 +02:00
Group management form converted to crispy forms. Page for group list improved
This commit is contained in:
parent
eefc573c61
commit
8eb0a6d852
6 changed files with 61 additions and 85 deletions
|
@ -4,6 +4,8 @@ from django.contrib.auth.models import User
|
|||
from .models import UserAcl
|
||||
from django.core.exceptions import ValidationError
|
||||
from wireguard.models import PeerGroup
|
||||
from crispy_forms.helper import FormHelper
|
||||
from crispy_forms.layout import Layout, Row, Column, Submit, HTML
|
||||
|
||||
|
||||
class UserAclForm(UserCreationForm):
|
||||
|
@ -56,8 +58,37 @@ class PeerGroupForm(forms.ModelForm):
|
|||
def __init__(self, *args, **kwargs):
|
||||
self.user_id = kwargs.pop('user_id', None)
|
||||
super().__init__(*args, **kwargs)
|
||||
self.helper = FormHelper()
|
||||
self.helper.form_method = 'post'
|
||||
|
||||
|
||||
if self.instance.pk:
|
||||
delete_html = "<a href='javascript:void(0)' class='btn btn-outline-danger' data-command='delete' onclick='openCommandDialog(this)'>Delete</a>"
|
||||
else:
|
||||
delete_html = ''
|
||||
|
||||
self.helper.layout = Layout(
|
||||
Row(
|
||||
Column('name', css_class='form-group col-md-12 mb-0'),
|
||||
css_class='form-row'
|
||||
),
|
||||
Row(
|
||||
Column('peer', css_class='form-group col-md-12 mb-0'),
|
||||
css_class='form-row'
|
||||
),
|
||||
Row(
|
||||
Column('server_instance', css_class='form-group col-md-12 mb-0'),
|
||||
css_class='form-row'
|
||||
),
|
||||
Row(
|
||||
Column(
|
||||
Submit('submit', 'Save', css_class='btn btn-success'),
|
||||
HTML(' <a class="btn btn-secondary" href="/user/peer-group/list/">Back</a> '),
|
||||
HTML(delete_html),
|
||||
css_class='col-md-12'),
|
||||
css_class='form-row'
|
||||
)
|
||||
)
|
||||
|
||||
def clean(self):
|
||||
cleaned_data = super().clean()
|
||||
name = cleaned_data.get('name')
|
||||
|
@ -68,6 +99,7 @@ class PeerGroupForm(forms.ModelForm):
|
|||
raise ValidationError("A peer group with that name already exists.")
|
||||
|
||||
return cleaned_data
|
||||
|
||||
def save(self, commit=True):
|
||||
peer_group = super().save(commit=False)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue