aboutsummaryrefslogtreecommitdiff
path: root/rpki/gui/app/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'rpki/gui/app/views.py')
-rw-r--r--rpki/gui/app/views.py25
1 files changed, 4 insertions, 21 deletions
diff --git a/rpki/gui/app/views.py b/rpki/gui/app/views.py
index 86ec30d7..a9c038f5 100644
--- a/rpki/gui/app/views.py
+++ b/rpki/gui/app/views.py
@@ -596,7 +596,7 @@ def roa_create(request):
conf = get_conf(request.user, request.session['handle'])
if request.method == 'POST':
- form = forms.ROARequest(request.POST, request.FILES, conf=conf)
+ form = forms.ROARequestFormFactory(conf)(request.POST, request.FILES)
if form.is_valid():
asn = form.cleaned_data.get('asn')
rng = form._as_resource_range() # FIXME calling "private" method
@@ -620,26 +620,11 @@ def roa_create(request):
for s in ('asn', 'prefix'):
if s in request.GET:
d[s] = request.GET[s]
- form = forms.ROARequest(initial=d)
+ form = forms.ROARequestFormFactory(conf)(initial=d)
return render(request, 'app/roarequest_form.html', {'form': form})
-class ROARequestFormSet(BaseFormSet):
- """There is no way to pass arbitrary keyword arguments to the form
- constructor, so we have to override BaseFormSet to allow it.
-
- """
- def __init__(self, *args, **kwargs):
- self.conf = kwargs.pop('conf')
- super(ROARequestFormSet, self).__init__(*args, **kwargs)
-
- def _construct_forms(self):
- self.forms = []
- for i in xrange(self.total_form_count()):
- self.forms.append(self._construct_form(i, conf=self.conf))
-
-
def split_with_default(s):
xs = s.split(',')
if len(xs) == 1:
@@ -681,11 +666,9 @@ def roa_create_multi(request):
v = []
rng.chop_into_prefixes(v)
init.extend([{'asn': asn, 'prefix': str(p)} for p in v])
- formset = formset_factory(forms.ROARequest, formset=ROARequestFormSet,
- can_delete=True)(initial=init, conf=conf)
+ formset = formset_factory(forms.ROARequestFormFactory(conf), can_delete=True)(initial=init)
elif request.method == 'POST':
- formset = formset_factory(forms.ROARequest, formset=ROARequestFormSet,
- extra=0, can_delete=True)(request.POST, request.FILES, conf=conf)
+ formset = formset_factory(forms.ROARequestFormFactory(conf), extra=0, can_delete=True)(request.POST, request.FILES)
if formset.is_valid():
routes = []
v = []