diff --git a/apps/user/views.py b/apps/user/views.py index 9f647065..3cc75cc3 100644 --- a/apps/user/views.py +++ b/apps/user/views.py @@ -25,6 +25,7 @@ from apps.course.models import Course from apps.notification.utils import send_email from apps.school.models import SchoolSchedule from apps.payment.models import AuthorBalance, CoursePayment, SchoolPayment +from apps.user.models import SubscriptionCategory from .forms import AuthorRequesForm, UserEditForm, WithdrawalForm from .models import AuthorRequest @@ -93,6 +94,18 @@ class NotificationEditView(TemplateView): def get(self, request, pk=None): return super().get(request) + def post(self, request, pk=None): + categories = request.POST.getlist('category', []) + request.user.email_subscription.categories.set( + SubscriptionCategory.objects.filter(id__in=categories) + ) + return redirect('user-edit-notifications', request.user.id) + + def get_context_data(self, **kwargs): + context = super().get_context_data(**kwargs) + context['subscription_categories'] = SubscriptionCategory.objects.all() + return context + @method_decorator(login_required, name='dispatch') class PaymentHistoryView(FormView):