ipv6ula/ipv6ula/views.py

39 lines
929 B
Python
Raw Permalink Normal View History

2020-04-25 15:35:02 +00:00
from django.views.generic.list import ListView
from django.views.generic.edit import CreateView
from django.contrib.auth import views as auth_views
2020-04-25 19:09:00 +00:00
from django.contrib.auth.mixins import LoginRequiredMixin
from django.contrib.auth import logout
from django.shortcuts import redirect
2020-12-04 21:52:32 +00:00
import ipaddress
2020-04-25 16:37:48 +00:00
from django.conf import settings
2020-04-25 15:35:02 +00:00
from .models import *
from .forms import ULAForm
2020-04-25 15:35:02 +00:00
class IndexView(ListView):
2020-12-04 20:30:59 +00:00
model = ULA
paginate_by = 50
queryset = ULA.objects.order_by('prefix')
2020-04-25 16:37:48 +00:00
2020-12-04 20:42:26 +00:00
class SubmitView(LoginRequiredMixin, CreateView):
model = ULA
2020-12-04 23:21:43 +00:00
form_class = ULAForm
2020-12-04 20:42:26 +00:00
login_url = '/login/'
success_url = '/'
2020-12-04 23:21:43 +00:00
2020-12-04 20:42:26 +00:00
def form_valid(self, form):
form.instance.owner = self.request.user
return super(SubmitView, self).form_valid(form)
2020-04-25 19:09:00 +00:00
2020-12-04 20:42:26 +00:00
class LoginView(auth_views.LoginView):
template_name = 'ipv6ula/login.html'
2020-04-25 19:09:00 +00:00
2020-12-04 20:42:26 +00:00
def logout_view(request):
logout(request)
return redirect("/")