35 lines
1.1 KiB
Python

from django.forms import BaseModelForm
from django.shortcuts import render, redirect
from django.contrib.auth import login
from django.views.generic import CreateView
from django.http import HttpResponse
from server.apps.accounts.forms import CustomUserCreationForm
from django.core.validators import validate_email
from .tasks import mail_send
# Create your views here.
def dashboard(request):
return render(request, "users/dashboard.html", {})
class RegisterUser(CreateView):
form_class = CustomUserCreationForm
template_name = 'users/register.html'
def form_valid(self, form: BaseModelForm) -> HttpResponse:
user = form.save()
user.backend = 'django.contrib.auth.backends.ModelBackend'
validate_email(form.instance.email)
email = form.instance.email
username = f'{form.instance.first_name} {form.instance.last_name}'
subject = 'Welcome to book bot administration'
mail_send(to_email=email, subject=subject, username=username)
login(self.request, user)
return redirect('admin:index')