Add customer_project_detail and contractor_project_detail templates

remotes/origin/setup
Mukhtar 10 years ago
parent e82c8ba786
commit b759a07447
  1. 4
      archilance/settings/base.py
  2. 192
      projects/templates/projects/contractor_project_detail.html
  3. 362
      projects/templates/projects/customer_project_detail.html
  4. 19
      projects/views.py
  5. 2
      reviews/migrations/0002_auto_20160531_0906.py
  6. 2
      work_sell/migrations/0001_initial.py

@ -41,8 +41,8 @@ LOCAL_APPS = [
'projects',
'specializations',
'users',
'review',
'worksell',
'reviews',
'work_sell',
]

@ -0,0 +1,192 @@
{% extends 'partials/base.html' %}
{% block content %}
{% include 'partials/header.html' %}
<div class="container mainScore">
<div class="row">
<div class="col-lg-12">
<p class="titleScore">Дизайн интерьера квартиры 200m2</p>
</div>
<div class="doneBlock new-done disTab">
<div class="triangle1"></div>
<div class="col-lg-12 new-p">
<p>35 000 <i class="fa fa-rub"></i></p>
</div>
<div class="col-lg-4">
<a href="#" class="aLinkExe"><div class="imgExecutor">
<img src="img/profile.jpg" alt="execitor-image">
</div></a>
<p class="nameExecutor">
<a href="#">Иванов Петр Иванович [ivanov_petr]</a>
</p>
<p class="navv2">На сайте 8 лет и 3 месяца</p>
</div>
<div class="col-lg-3 retts">
<ul class="rettList restList2">
<li>Рейтинг: <span> 1245</span></li>
<li>Безопасные сделки: <span> 5</span></li>
<li>
<a href="javascript:void(0)">Отзывы:
<span> + 385</span>
<small> 0</small>
<mark> - 0</mark>
</a>
</li>
</ul>
</div>
<div class="col-lg-2 new-dashed">
<div class="dashedCol4 dashedCol44 dashedColColor">
<p class="specUser">
Специализации:
</p>
<div class="insetSpec">
<span>Интерьеры</span>
</div>
<div class="insetSpec">
<span>Визуализация/3D</span>
</div>
</div>
</div>
<div class="col-lg-3 retts new-list">
<ul class="desListPro">
<li>
13.0.2016
</li>
<li>
Техническое сопровождение
</li>
</ul>
<div class="sroUser sroExecutor sroPro">
<div class="iconSRO"></div>
<p>Есть допуск СРО</p>
</div>
</div>
</div>
<div class="infoProjectBlock info-new disTab">
<div class="triangle2"></div>
<div class="col-lg-10 col-lg-offset-1">
<ul class="listProjectIn">
<li>
<span>Местоположение:</span> Россия, Москва
</li>
<li>
<span>Классификация здания:</span> Коттедж
</li>
<li>
<span>Вид строительства:</span> Новое
</li>
</ul>
</div>
<div class="col-lg-10 col-lg-offset-1">
<p class="textProIn">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. Proin sodales pulvinar tempor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam fermentum, nulla luctus pharetra vulputate, felis tellus mollis orci, sed rhoncus sapien nunc eget odio.
<br><br>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. Proin sodales pulvinar tempor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam fermentum, nulla luctus pharetra vulputate, felis tellus mollis orci, sed rhoncus sapien nunc eget odio
</p>
</div>
<div class="col-lg-10 col-lg-offset-1">
<a href="javascript:void(0)" class="new-answer">
Ответить на проект
</a>
<div class="polsF1 pols-new disTab">
<div class="col-lg-3">
<select class="selectpicker">
<option>Mustard</option>
<option>Ketchup</option>
<option>Relish</option>
</select>
</div>
</div>
</div>
</div>
<div class="candidateBlock disTab">
<div class="candidate can-new">
<div class="col-lg-4">
<a href="#" class="aLinkExe"><div class="imgExecutor">
<img src="img/profile.jpg" alt="execitor-image">
</div></a>
<p class="nameExecutor">
<a href="#">Иванов Петр Иванович [ivanov_petr]</a>
</p>
<p class="navv2">На сайте 8 лет и 3 месяца</p>
</div>
<div class="col-lg-3 retts">
<ul class="rettList restList2">
<li>Рейтинг: <span> 1245</span></li>
<li>Безопасные сделки: <span> 5</span></li>
<li>
<a href="javascript:void(0)">Отзывы:
<span> + 385</span>
<small> 0</small>
<mark> - 0</mark>
</a>
</li>
</ul>
<div class="sroUser sroExecutor">
<div class="iconSRO"></div>
<p>Есть допуск СРО</p>
</div>
</div>
<div class="col-lg-2 listCens">
<p>Цена:
<span> 35 000</span>
<i class="fa fa-rub"></i>
</p>
<p>
Срок: <span>3 недели</span>
</p>
<p>Опубликован: 22.04.2016</p>
</div>
<div class="col-lg-3 retts">
<a href="javascript:void(0)" class="candLink candLink3">
отказ
</a>
</div>
<div class="commBlock44 comm-new disTab">
<div class="comm44 disTab">
<div class="col-lg-10 col-lg-offset-1">
<p class="nameComm">
Иванов Петр Иванович
</p>
<span class="dateComm44">
13.0.2016 / 21:05
</span>
<div class="stars box-sizing">
<span class="glyphicon glyphicon-star starAct" aria-hidden="true"></span>
<span class="glyphicon glyphicon-star starAct" aria-hidden="true"></span>
<span class="glyphicon glyphicon-star starAct" aria-hidden="true"></span>
<span class="glyphicon glyphicon-star" aria-hidden="true"></span>
<span class="glyphicon glyphicon-star" aria-hidden="true"></span>
</div>
<p class="textComm44">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. Proin sodales pulvinar tempor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam fermentum, nulla luctus pharetra vulputate, felis tellus mollis orci, sed rhoncus sapien nunc eget odio.
</p>
</div>
</div>
<div class="comm44 disTab">
<div class="col-lg-10 col-lg-offset-1">
<p class="nameComm nameCommAct">
Иванов Петр Иванович
</p>
<span class="dateComm44">
13.0.2016 / 21:05
</span>
<p class="textComm44">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. Proin sodales pulvinar tempor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam fermentum, nulla luctus pharetra vulputate, felis tellus mollis orci, sed rhoncus sapien nunc eget odio.
</p>
<a href="javascript:void(0)" class="answerComm">
Ответить
</a>
</div>
</div>
</div>
</div>
</div>
<div class="col-lg-12 pagin">
{% include 'partials/pagination.html' %}
</div>
{% include 'partials/footer.html' %}
</div>
</div>
{% endblock %}

@ -0,0 +1,362 @@
{% extends 'partials/base.html' %}
{% block content %}
{% include 'partials/header.html' %}
<div class="container mainScore">
<div class="row">
<div class="col-lg-12">
<p class="titleScore">Дизайн интерьера квартиры 200m2</p>
</div>
<div class="doneBlock disTab">
<div class="triangle1"></div>
<div class="col-lg-4">
<a href="#" class="aLinkExe"><div class="imgExecutor">
<img src="img/profile.jpg" alt="execitor-image">
</div></a>
<p class="nameExecutor">
<a href="#">Иванов Петр Иванович [ivanov_petr]</a>
</p>
<p class="navv2">На сайте 8 лет и 3 месяца</p>
<ul class="rettList restList3">
<li>
<a href="javascript:void(0)">Отзывы:
<span> + 385</span>
<small> 0</small>
<mark> - 0</mark>
</a>
</li>
</ul>
</div>
<div class="col-lg-3 col-lg-offset-1">
<div class="dashedCol4 dashedCol44 dashedColColor">
<p class="specUser">
Специализации:
</p>
<div class="insetSpec">
<span>Интерьеры</span>
</div>
<div class="insetSpec">
<span>Визуализация/3D</span>
</div>
</div>
</div>
<div class="col-lg-4 retts">
<ul class="desListPro">
<li>
13.0.2016
</li>
<li>
Техническое сопровождение
</li>
</ul>
<div class="sroUser sroExecutor sroPro">
<div class="iconSRO"></div>
<p>Есть допуск СРО</p>
</div>
</div>
</div>
<div class="infoProjectBlock disTab">
<div class="triangle2"></div>
<div class="col-lg-10 col-lg-offset-1">
<ul class="listProjectIn">
<li>
<span>Местоположение:</span> Россия, Москва
</li>
<li>
<span>Классификация здания:</span> Коттедж
</li>
<li>
<span>Вид строительства:</span> Новое
</li>
</ul>
</div>
<div class="col-lg-10 col-lg-offset-1">
<p class="textProIn">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. Proin sodales pulvinar tempor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam fermentum, nulla luctus pharetra vulputate, felis tellus mollis orci, sed rhoncus sapien nunc eget odio.
<br><br>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. Proin sodales pulvinar tempor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam fermentum, nulla luctus pharetra vulputate, felis tellus mollis orci, sed rhoncus sapien nunc eget odio
</p>
</div>
<div class="col-lg-10 col-lg-offset-1">
<a href="javascript:void(0)" class="linkProIn linkProIn1">
Редактировать
</a>
<a href="javascript:void(0)" class="linkProIn linkProIn2">
снять с публикачии
</a>
</div>
</div>
<div class="exBigBlock disTab">
<div class="col-lg-12">
<p class="titleEx">Исполнители</p>
</div>
<div class="col-lg-12 exButton">
<div class="btn-group" role="group" aria-label="...">
<button type="button" class="btn btn-default">
Новые <span>+7</span>
</button>
<button type="button" class="btn btn-default">
Кандидаты <span>7</span>
</button>
<button type="button" class="btn btn-default">
Отказал <span>7</span>
</button>
</div>
</div>
</div>
<div class="col-lg-12 compareBlock">
<div class="col-lg-2 col-lg-offset-5">
<p>Сравнить кандидатов</p>
</div>
</div>
<div class="col-lg-12 exNew">
<p>Новые исполнители</p>
</div>
<div class="candidateBlock disTab">
<div class="candidate">
<div class="col-lg-4">
<a href="#" class="aLinkExe"><div class="imgExecutor">
<img src="img/profile.jpg" alt="execitor-image">
</div></a>
<p class="nameExecutor">
<a href="#">Иванов Петр Иванович [ivanov_petr]</a>
</p>
<p class="navv2">На сайте 8 лет и 3 месяца</p>
<div class="statusUser">Свободен</div>
</div>
<div class="col-lg-3 retts">
<ul class="rettList restList2">
<li>Рейтинг: <span> 1245</span></li>
<li>Безопасные сделки: <span> 5</span></li>
<li>
<a href="javascript:void(0)">Отзывы:
<span> + 385</span>
<small> 0</small>
<mark> - 0</mark>
</a>
</li>
</ul>
<div class="sroUser sroExecutor">
<div class="iconSRO"></div>
<p>Есть допуск СРО</p>
</div>
</div>
<div class="col-lg-2 listCens">
<p>Цена:
<span> 35 000</span>
<i class="fa fa-rub"></i>
</p>
<p>
Срок: <span>3 недели</span>
</p>
<p>Опубликован: 22.04.2016</p>
</div>
<div class="col-lg-3 retts">
<a href="javascript:void(0)" class="candLink candLink1">
Кандидат
</a>
<a href="javascript:void(0)" class="candLink candLink2">
предложить проект
</a>
<a href="javascript:void(0)" class="candLink candLink3">
отказ
</a>
</div>
<div class="gallMini disTab">
<div class="col-lg-3">
<div class="insetCol box-sizing disTab">
<div class="imgGal">
<div class="imgFigure"></div>
</div>
</div>
</div>
<div class="col-lg-3">
<div class="insetCol box-sizing disTab">
<div class="imgGal">
<div class="imgFigure"></div>
</div>
</div>
</div>
<div class="col-lg-3">
<div class="insetCol box-sizing disTab">
<div class="imgGal">
<div class="imgFigure"></div>
</div>
</div>
</div>
<div class="col-lg-3">
<div class="insetCol box-sizing disTab">
<div class="imgGal">
<div class="imgFigure"></div>
</div>
</div>
</div>
</div>
<div class="commBlock44 disTab">
<div class="comm44 disTab">
<div class="col-lg-10 col-lg-offset-1">
<p class="nameComm">
Иванов Петр Иванович
</p>
<span class="dateComm44">
13.0.2016 / 21:05
</span>
<div class="stars box-sizing">
<span class="glyphicon glyphicon-star starAct" aria-hidden="true"></span>
<span class="glyphicon glyphicon-star starAct" aria-hidden="true"></span>
<span class="glyphicon glyphicon-star starAct" aria-hidden="true"></span>
<span class="glyphicon glyphicon-star" aria-hidden="true"></span>
<span class="glyphicon glyphicon-star" aria-hidden="true"></span>
</div>
<p class="textComm44">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. Proin sodales pulvinar tempor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam fermentum, nulla luctus pharetra vulputate, felis tellus mollis orci, sed rhoncus sapien nunc eget odio.
</p>
</div>
</div>
<div class="comm44 disTab">
<div class="col-lg-10 col-lg-offset-1">
<p class="nameComm nameCommAct">
Иванов Петр Иванович
</p>
<span class="dateComm44">
13.0.2016 / 21:05
</span>
<p class="textComm44">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. Proin sodales pulvinar tempor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam fermentum, nulla luctus pharetra vulputate, felis tellus mollis orci, sed rhoncus sapien nunc eget odio.
</p>
<a href="javascript:void(0)" class="answerComm">
Ответить
</a>
</div>
</div>
</div>
</div>
<div class="candidate">
<div class="col-lg-4">
<a href="#" class="aLinkExe"><div class="imgExecutor">
<img src="img/profile.jpg" alt="execitor-image">
</div></a>
<p class="nameExecutor">
<a href="#">Иванов Петр Иванович [ivanov_petr]</a>
</p>
<p class="navv2">На сайте 8 лет и 3 месяца</p>
<div class="statusUser">Свободен</div>
</div>
<div class="col-lg-3 retts">
<ul class="rettList restList2">
<li>Рейтинг: <span> 1245</span></li>
<li>Безопасные сделки: <span> 5</span></li>
<li>
Отзывы:
<span> + 385</span>
<small> 0</small>
<mark> - 0</mark>
</li>
</ul>
<div class="sroUser sroExecutor">
<div class="iconSRO"></div>
<p>Есть допуск СРО</p>
</div>
</div>
<div class="col-lg-2 listCens">
<p>Цена:
<span> 35 000</span>
<i class="fa fa-rub"></i>
</p>
<p>
Срок: <span>3 недели</span>
</p>
<p>Опубликован: 22.04.2016</p>
</div>
<div class="col-lg-3 retts">
<a href="javascript:void(0)" class="candLink candLink1">
Кандидат
</a>
<a href="javascript:void(0)" class="candLink candLink2">
предложить проект
</a>
<a href="javascript:void(0)" class="candLink candLink3">
отказ
</a>
</div>
<div class="gallMini disTab">
<div class="col-lg-3">
<div class="insetCol box-sizing disTab">
<div class="imgGal">
<div class="imgFigure"></div>
</div>
</div>
</div>
<div class="col-lg-3">
<div class="insetCol box-sizing disTab">
<div class="imgGal">
<div class="imgFigure"></div>
</div>
</div>
</div>
<div class="col-lg-3">
<div class="insetCol box-sizing disTab">
<div class="imgGal">
<div class="imgFigure"></div>
</div>
</div>
</div>
<div class="col-lg-3">
<div class="insetCol box-sizing disTab">
<div class="imgGal">
<div class="imgFigure"></div>
</div>
</div>
</div>
</div>
<div class="commBlock44 disTab">
<div class="comm44 disTab">
<div class="col-lg-10 col-lg-offset-1">
<p class="nameComm">
Иванов Петр Иванович
</p>
<span class="dateComm44">
13.0.2016 / 21:05
</span>
<div class="stars box-sizing">
<span class="glyphicon glyphicon-star starAct" aria-hidden="true"></span>
<span class="glyphicon glyphicon-star starAct" aria-hidden="true"></span>
<span class="glyphicon glyphicon-star starAct" aria-hidden="true"></span>
<span class="glyphicon glyphicon-star" aria-hidden="true"></span>
<span class="glyphicon glyphicon-star" aria-hidden="true"></span>
</div>
<p class="textComm44">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. Proin sodales pulvinar tempor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam fermentum, nulla luctus pharetra vulputate, felis tellus mollis orci, sed rhoncus sapien nunc eget odio.
</p>
</div>
</div>
<div class="comm44 disTab">
<div class="col-lg-10 col-lg-offset-1">
<p class="nameComm nameCommAct">
Иванов Петр Иванович
</p>
<span class="dateComm44">
13.0.2016 / 21:05
</span>
<p class="textComm44">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. Proin sodales pulvinar tempor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam fermentum, nulla luctus pharetra vulputate, felis tellus mollis orci, sed rhoncus sapien nunc eget odio.
</p>
<a href="javascript:void(0)" class="answerComm">
Ответить
</a>
</div>
</div>
</div>
</div>
</div>
<div class="col-lg-12 pagin">
{% include 'partials/pagination.html' %}
</div>
{% include 'partials/footer.html' %}
</div>
</div>
{% endblock %}

@ -1,4 +1,4 @@
from django.shortcuts import render
from django.shortcuts import render, get_object_or_404
from django.http import HttpResponseForbidden, HttpResponseRedirect, HttpResponse
from django.core.urlresolvers import reverse
from django.contrib.auth.mixins import PermissionRequiredMixin
@ -21,23 +21,30 @@ class ProjectListView(ListView):
return context
class ProjectDetailView(LastAccessMixin, FormMixin, DetailView):
class ProjectDetailView(LastAccessMixin, FormMixin, View):
model = Project
form_class = AnswerForm
template_name = 'projects/contractor_project_detail.html'
def get_success_url(self):
return reverse('projects:detail', kwargs={'pk': self.object.pk})
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context['form'] = self.get_form()
return context
# def get_context_data(self, **kwargs):
# context = super().get_context_data(**kwargs)
# context['form'] = self.get_form()
# return context
def get_form_kwargs(self, **kwargs):
kwargs = super().get_form_kwargs(**kwargs)
kwargs.update({'project_id': self.object.pk})
return kwargs
def get(self, request, *args, **kwargs):
if request.user.is_customer():
self.template_name = 'projects/customer_project_detail.html'
project = get_object_or_404(Project, pk=kwargs.get('pk'))
return render(request,self.template_name,{'project': project})
def post(self, request, *args, **kwargs):
if not request.user.is_authenticated():
return HttpResponseForbidden()

@ -10,7 +10,7 @@ class Migration(migrations.Migration):
dependencies = [
('projects', '0012_auto_20160530_1355'),
('review', '0001_initial'),
('reviews', '0001_initial'),
]
operations = [

@ -19,7 +19,7 @@ class Migration(migrations.Migration):
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=255)),
('description', models.TextField(blank=True)),
('img', models.ImageField(upload_to='worksell/worksell')),
('img', models.ImageField(upload_to='work_sell/work_sell')),
],
),
]

Loading…
Cancel
Save