from django.views.generic.base import TemplateView from django.contrib import messages from django.shortcuts import redirect from uncloud_pay.selectors import get_balance_for_user from .forms import UserDeleteForm class UncloudIndex(TemplateView): template_name = "uncloud/index.html" def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) if self.request.user.is_authenticated: context['balance'] = get_balance_for_user(self.request.user) context['delete_form'] = UserDeleteForm(instance=self.request.user) return context def post(self, request, *args, **kwargs): UserDeleteForm(request.POST, instance=request.user) user = request.user user.delete() messages.info(request, 'Your account has been deleted.') return redirect('uncloudindex')