# -*- coding: utf-8 -*- from django.shortcuts import render, redirect from django.views.generic import CreateView, TemplateView from django.urls import reverse_lazy from django.contrib import messages from .forms import TenantRegistrationForm from .models import TenantRegistration class TenantRegistrationView(CreateView): """ Публичная форма регистрации нового тенанта """ model = TenantRegistration form_class = TenantRegistrationForm template_name = 'tenants/registration_form.html' success_url = reverse_lazy('tenants:registration_success') def form_valid(self, form): """ Обработка успешной отправки формы """ response = super().form_valid(form) # Добавляем сообщение об успехе messages.success( self.request, f"Спасибо за регистрацию! Ваша заявка на магазин '{self.object.shop_name}' " f"отправлена на проверку. Мы свяжемся с вами по email {self.object.owner_email} " f"в ближайшее время." ) return response def form_invalid(self, form): """ Обработка ошибок валидации """ messages.error( self.request, "Пожалуйста, исправьте ошибки в форме." ) return super().form_invalid(form) class RegistrationSuccessView(TemplateView): """ Страница благодарности после успешной регистрации """ template_name = 'tenants/registration_success.html' def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) # Получаем последнюю заявку текущего пользователя (если есть) # Здесь можно добавить фильтрацию по сессии или email context['show_details'] = False return context