#ARC-15 Fixes bugs

remotes/origin/PR-39
Mukhtar 10 years ago
parent b28524cef4
commit df95e951d0
  1. 13
      projects/templates/comparison.html
  2. 13
      projects/templates/project_detail.html
  3. 2
      projects/urls.py
  4. 13
      projects/views.py
  5. 130
      users/templates/portfolio_create_form.html

@ -68,15 +68,18 @@
<td>
<div class="tableButtons disTab">
<div class="btnTab btnTab1"></div>
<a href="/test">
<div class="btnTab btnTab2"></div>
<a href="{% url 'chat:chat-user' %}">
<div class="btnTab btnTab1"></div>
</a>
<a href="/delete">
<div class="btnTab btnTab3"></div>
<a href="{% url 'chat:chat-user' %}?user_id={{ cand.answer.author.pk }}">
<div class="btnTab btnTab2"></div>
</a>
<form method="POST" action="{% url 'projects:delete-candidate' cand.pk %}">
{% csrf_token %}<input class="btnTab btnTab3" type="submit" value="">
</form>
<div class="btnTab btnTab4"></div>
</div>
</td>

@ -468,22 +468,15 @@
<div class="col-lg-12 compareBlock">
<div class="col-lg-2 col-lg-offset-5">
<p>Сравнить кандидатов</p>
<p><a href="{% url 'projects:comparison' project.pk %}">Сравнить кандидатов</a></p>
</div>
</div>
<div class="col-lg-12 exNew">
<p>Новые исполнители</p>
</div>
{% for answer in project.answers.all %}
<div class="candidateBlock disTab">

@ -19,6 +19,7 @@ from .views import (
ProjectDetailWithAnswerView,
ProjectFilterView,
sort_candidates,
CandidateDeleteView,
)
app_name = 'projects'
@ -42,6 +43,7 @@ urlpatterns = [
urls.url(r'^portfolio/(?P<pk>\d+)/edit/$', ContractorPortfolioUpdateView.as_view(), name='contractor-portfolio-edit'),
urls.url(r'^candidate/add/(?P<answer_id>(\d+))/(?P<project_id>(\d+))/$', add_candidate, name='add-candidate'),
urls.url(r'^candidate/delete/(?P<pk>(\d+))/$', CandidateDeleteView.as_view(), name='delete-candidate'),
urls.url(r'^candidate/comparison/sort/$', sort_candidates, name='comparison-sort'),
urls.url(r'^candidate/comparison/(?P<pk>\d+)/$', ProjectComparisonView.as_view(), name='comparison'),

@ -595,10 +595,21 @@ class ProjectComparisonView(DetailView):
def add_candidate(request, answer_id, project_id):
answer = Answer.objects.get(pk=answer_id)
project = Project.objects.get(pk=project_id)
candidate = Candidate.objects.create(answer=answer, project=project)
count_answers = Candidate.objects.filter(project=project).count()
count_answers += 1
candidate = Candidate.objects.create(answer=answer, project=project, position=count_answers)
return HttpResponseRedirect(reverse('projects:detail', args=[project_id]))
class CandidateDeleteView(DeleteView):
model = Candidate
def get_success_url(self):
return reverse('projects:comparison', kwargs={'pk': self.object.project_id})
def get(self, *args, **kwargs):
return self.post(*args, **kwargs)
def sort_candidates(request):
if request.is_ajax():
items = request.POST.getlist('items[]')

@ -3,115 +3,125 @@
<form method="post" id="portfolio-add-form">{% csrf_token %}
<div class="textAreaBlock2 text-nn box-sizing disTab">
<p>Название<span style="color: red; margin-left:8px; font-size: 12px;" class="error-{{ portfolio_form.name.html_name }}">{{ portfolio_form.name.errors.as_text }}</span></p>
<p>Название<span style="color: red; margin-left:8px; font-size: 12px;"
class="error-{{ portfolio_form.name.html_name }}">{{ portfolio_form.name.errors.as_text }}</span>
</p>
<input type="text" class="box-sizing" name="{{ portfolio_form.name.html_name }}"
value="{{ portfolio_form.name.value }}">
</div>
<div class="textAreaBlock2 text-nn box-sizing disTab">
<p>Описание<span style="color: red; margin-left:8px; font-size: 12px;" class="error-{{ portfolio_form.description.html_name }}">{{ portfolio_form.description.errors.as_text }}</span></p>
<textarea name="{{ portfolio_form.description.html_name }}" id="text-new">{{ portfolio_form.description.value }}</textarea>
<p>Описание<span style="color: red; margin-left:8px; font-size: 12px;"
class="error-{{ portfolio_form.description.html_name }}">{{ portfolio_form.description.errors.as_text }}</span>
</p>
<textarea name="{{ portfolio_form.description.html_name }}"
id="text-new">{{ portfolio_form.description.value }}</textarea>
</div>
<div class="textAreaBlock2 text-nn box-sizing disTab">
<p>Специализации</p>
</div>
</div>
<div class="col-lg-3">
<input type='hidden' class="-spec-select -spec-select-level-1" style="width: 100%">
</div>
<div class="col-lg-3">
<input type='hidden' class="-spec-select -spec-select-level-1" style="width: 100%">
</div>
<div class="col-lg-3">
<input type='hidden' class="-spec-select -spec-select-level-2" style="width: 100%">
</div>
<div class="col-lg-3">
<input type='hidden' class="-spec-select -spec-select-level-2" style="width: 100%">
</div>
<div class="col-lg-3">
<input type='hidden' class="-spec-select -spec-select-level-3" style="width: 100%">
</div>
<div class="col-lg-3">
<input type='hidden' class="-spec-select -spec-select-level-3" style="width: 100%">
</div>
<div class="col-lg-3">
<input type='hidden' class="-spec-select -spec-select-level-4" style="width: 100%">
</div>
<div class="textAreaBlock2 text-nn box-sizing disTab">
<input type="hidden" id="chosenSpecId" name="{{ portfolio_form.specialization.html_name }}"
<div class="col-lg-3">
<input type='hidden' class="-spec-select -spec-select-level-4" style="width: 100%">
</div>
<div class="textAreaBlock2 text-nn box-sizing disTab">
<input type="hidden" id="chosenSpecId" name="{{ portfolio_form.specialization.html_name }}"
value="{{ portfolio_form.specialization.value }}">
</div>
</div>
<div class="textAreaBlock2 polsF1 text-nn box-sizing disTab">
<p>Бюджет{{ portfolio_form.budget.errors.as_text }}</p>
<p>Бюджет{{ portfolio_form.budget.errors.as_text }}</p>
<div class="row">
<div class="col-lg-6">
<input type="text" class="box-sizing" name="{{ portfolio_form.budget.html_name }}" value="{{ portfolio_form.budget.value }}">
<input type="text" class="box-sizing" name="{{ portfolio_form.budget.html_name }}"
value="{{ portfolio_form.budget.value }}">
</div>
<div class="col-lg-3">
{{ portfolio_form.currency}}
{{ portfolio_form.currency }}
</div>
</div>
</div>
</div>
<div class="textAreaBlock2 polsF1 text-nn box-sizing disTab">
<p>Срок выполнения{{ portfolio_form.budget.errors.as_text }}</p>
<p>Срок выполнения{{ portfolio_form.budget.errors.as_text }}</p>
<div class="row">
<div class="col-lg-6">
<input type="text" class="box-sizing" name="{{ portfolio_form.budget.html_name }}" value="{{ portfolio_form.budget.value }}">
<input type="text" class="box-sizing" name="{{ portfolio_form.budget.html_name }}"
value="{{ portfolio_form.budget.value }}">
</div>
<div class="col-lg-3">
{{ portfolio_form.term_type }}
</div>
</div>
</div>
<div class="textAreaBlock2 text-nn box-sizing disTab"></div>
<div class="textAreaBlock2 polsF1text-nn box-sizing disTab"></div>
<div class="textAreaBlock2 polsF1 text-nn box-sizing disTab" id="modal_type_build">
<p>Вид строительства</p>
<div class="row">
<div class="col-lg-3">
<p>Вид строительства</p>
{{ portfolio_form.construction_type}}
<div class="col-lg-6">
{{ portfolio_form.construction_type }}
</div>
<div class="col-lg-3">
<p>Классификация здания</p>
{{ portfolio_form.building_classification}}
</div>
</div>
<div class="textAreaBlock2 polsF1 text-nn box-sizing disTab">
<p>Классификация здания</p>
<div class="row">
<div class="col-lg-6">
{{ portfolio_form.building_classification }}
</div>
</div>
</div>
<div class="polsF1 polsF2 disTab">
<p>Классификация здания</p>
{{ portfolio_form.building_classification}}
</div>
<div class="extAreaBlock2 polsF1 text-nn box-sizing disTab">
<p></p>
<div class="row">
<div class="col-lg-6 make-new">
<div class="polsF1 polsF2 disTab">
<input type="hidden" name="{{ portfolio_form.user.html_name }}" value="{{ request.user.pk }}" />
<input type="hidden" name="images-ids" id="upload-files-pk" />
{{ portfolio_form.duplicate }} Дублировать проект в готовые работы
</div>
<label>{{ portfolio_form.duplicate }}<span></span></label>
<p>Дублировать проект в готовые работы</p>
</div>
<div class="polsF1 polsF2 disTab">
<input type="hidden" name="" id="upload-files-pk" value="" />
<input type="hidden" name="{{ portfolio_form.user.html_name }}" value="{{ request.user.pk }}"/>
<input type="hidden" name="images-ids" id="upload-files-pk"/>
</div>
</div>
<!-- The fileinput-button span is used to style the file input field as button -->
<div class="textAreaBlock2 polsF1 text-nn box-sizing disTab" style="margin-bottom: 12px;">
<!-- The fileinput-button span is used to style the file input field as button -->
<div class="textAreaBlock2 polsF1 text-nn box-sizing disTab" style="margin-bottom: 12px;">
<span class="btn btn-success fileinput-button add_file_to_port">
<span>Выберите файлы</span>
<input id="fileupload" type="file" name="file" multiple value="">
</span>
</div>
<br>
<br>
<!-- The global progress bar -->
<div id="progress-portfolio" class="progress">
<div class="progress-bar progress-bar-success"></div>
</div>
<!-- The container for the uploaded files -->
<div id="files" class="files"></div>
<br>
<div class="searchF1 polsF1 polsFF links-filter">
<input class="btn-submit-link" type="submit" value="Разместить портфолио">
</div>
<br>
<br>
<!-- The global progress bar -->
<div id="progress-portfolio" class="progress">
<div class="progress-bar progress-bar-success"></div>
</div>
<!-- The container for the uploaded files -->
<div id="files" class="files"></div>
<br>
<!-- The global progress bar -->
<div class="textAreaBlock2 polsF1 text-nn box-sizing disTab">
<div id="progress-portfolio" class="progress">
@ -123,9 +133,9 @@
<div id="files" class="files"></div>
</div>
<div class="textAreaBlock2 polsF1 text-nn box-sizing disTab">
<input class="btn-submit-link add_file_to_port" type="submit" value="Разместить портфолио">
<input class="btn-submit-link add_file_to_port" type="submit" value="Разместить портфолио">
</div>
<!-- </div> -->
<!-- </div> -->
</form>
</div>

Loading…
Cancel
Save