def edit_calendar(request, pk=None, view="week"): from servo.models.calendar import CalendarForm calendar = Calendar(user=request.user) if pk: calendar = get_object_or_404(Calendar, pk=pk) if not calendar.user == request.user: messages.error(request, _('You can only edit your own calendar')) return redirect(calendars) if request.method == "POST": form = CalendarForm(request.POST, instance=calendar) if form.is_valid(): calendar = form.save() messages.success(request, _("Calendar saved")) return redirect(view_calendar, calendar.pk, 'week') form = CalendarForm(instance=calendar) data = {'title': calendar.title} data['form'] = form data['action'] = request.path return render(request, "accounts/calendar_form.html", data)