|
|
|
|
@ -163,6 +163,56 @@ class ProjectAnswerCreateMessageView(BaseMixin, View): |
|
|
|
|
return redirect(redirect_to) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class ContractorRejectProjectAnswerView(BaseMixin, View): |
|
|
|
|
# form_class = ContractorRejectProjectAnswerForm |
|
|
|
|
|
|
|
|
|
def dispatch(self, request, *args, **kwargs): |
|
|
|
|
if request.user.is_authenticated() and request.user.is_contractor(): |
|
|
|
|
return super().dispatch(request, *args, **kwargs) |
|
|
|
|
else: |
|
|
|
|
return HttpResponseForbidden('403 Forbidden') |
|
|
|
|
|
|
|
|
|
def post(self, request, *args, **kwargs): |
|
|
|
|
# form = self.form_class(request.POST, request=request) |
|
|
|
|
# |
|
|
|
|
# if form.is_valid(): |
|
|
|
|
# message = form.save(commit=False) |
|
|
|
|
# |
|
|
|
|
# if request.user.is_contractor(): |
|
|
|
|
# answer = get_object_or_404(request.user.contractor_answers, pk=kwargs.get('pk')) |
|
|
|
|
# message.answer = answer |
|
|
|
|
# message.is_sender_customer = False |
|
|
|
|
# message.contractor_or_team = request.user |
|
|
|
|
# elif request.user.is_customer(): |
|
|
|
|
# answer = get_object_or_404(Answer, pk=kwargs.get('pk')) # TODO: Perform additional checks |
|
|
|
|
# message.answer = answer |
|
|
|
|
# message.is_sender_customer = True |
|
|
|
|
# |
|
|
|
|
# message.save() |
|
|
|
|
# form.save_m2m() |
|
|
|
|
# |
|
|
|
|
# messages.info(request, 'Сообщение успешно размещено') |
|
|
|
|
# else: |
|
|
|
|
# if form.errors: |
|
|
|
|
# messages.info(request, ( |
|
|
|
|
# '<p>Произошла ошибка (form)</p>' |
|
|
|
|
# '<pre>{form}</pre>' |
|
|
|
|
# ).format(form=pformat(form.errors))) |
|
|
|
|
|
|
|
|
|
# contractor = request.user |
|
|
|
|
# |
|
|
|
|
# projects = contractor.projects |
|
|
|
|
# |
|
|
|
|
# contractor.contractor_answers.filter(project=project).first() |
|
|
|
|
# |
|
|
|
|
# project = get_object_or_404(request.user.contractor_answers, pk=kwargs.get('pk')) |
|
|
|
|
|
|
|
|
|
messages.info(request, 'OKOK') |
|
|
|
|
|
|
|
|
|
redirect_to = request.POST.get('next') |
|
|
|
|
return redirect(redirect_to) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class ProjectFilterView(BaseMixin, View): |
|
|
|
|
template_name = 'project_filter.html' |
|
|
|
|
form_class = ProjectFilterForm |
|
|
|
|
|