remotes/origin/PR-39
ArturBaybulatov 10 years ago
parent d90a7d1e90
commit 9623133127
  1. 8
      README.md
  2. 14
      users/templates/contractor_office.html
  3. 118
      users/templates/contractor_profile.html

@ -91,4 +91,12 @@ python manage.py generate_reviews
</div> </div>
``` ```
```
<div
data-tooltip
data-placement="{% tooltip_placement pk=123 %}"
title="{% tooltip pk=123 %}">
</div>
```
---------------------------------------- ----------------------------------------

@ -163,13 +163,13 @@
<script type="text/template" class="-portfolio-item-templ"> <script type="text/template" class="-portfolio-item-templ">
<div class="col-lg-4"> <div class="col-lg-4">
<div class="insetCol box-sizing disTab"> <div class="insetCol box-sizing disTab">
<div class="imgGal" style="background:rgba(0, 0, 0, 0) url('<%= portfolio.photos[0].img %>') no-repeat scroll center center / cover"> <div class="imgGal" style="background:rgba(0, 0, 0, 0) url('<%- portfolio.photos[0].img %>') no-repeat scroll center center / cover">
<a class="open-modal-image" href="<%= portfolio.photos[0].img %>"><div class="imgFigure"></div></a> <a class="open-modal-image" href="<%- portfolio.photos[0].img %>"><div class="imgFigure"></div></a>
</div> </div>
</div> </div>
<div class="insetCol2 box-sizing disTab text-center"> <div class="insetCol2 box-sizing disTab text-center">
<a href="<%= portfAbsUrl %>"><%= trunc({length: 50}, portfolio.name) %></a> <a href="<%- portfAbsUrl %>"><%- trunc({length: 50}, portfolio.name) %></a>
</div> </div>
</div> </div>
</script> </script>
@ -187,18 +187,18 @@
<script type="text/template" class="-work-sell-item-templ"> <script type="text/template" class="-work-sell-item-templ">
<div class="col-lg-4"> <div class="col-lg-4">
<div class="insetCol box-sizing disTab"> <div class="insetCol box-sizing disTab">
<div class="imgGal" style="background:rgba(0, 0, 0, 0) url('<%= workSell.photos[0].img %>') no-repeat scroll center center / cover ;"> <div class="imgGal" style="background:rgba(0, 0, 0, 0) url('<%- workSell.photos[0].img %>') no-repeat scroll center center / cover ;">
<a class="open-modal-image" href="<%= workSell.photos[0].img %>"><div class="imgFigure"></div></a> <a class="open-modal-image" href="<%- workSell.photos[0].img %>"><div class="imgFigure"></div></a>
</div> </div>
<div class="cenaImg box-sizing"> <div class="cenaImg box-sizing">
<div class="cenaImgInset"> <div class="cenaImgInset">
<%= workSell.budget %> <i class="fa fa-rub"></i> <%- workSell.budget %> <i class="fa fa-rub"></i>
</div> </div>
</div> </div>
</div> </div>
<div class="insetCol2 box-sizing disTab"> <div class="insetCol2 box-sizing disTab">
<a href="<%= workSellAbsUrl %>"><%= trunc({length: 50}, workSell.name) %></a> <a href="<%- workSellAbsUrl %>"><%- trunc({length: 50}, workSell.name) %></a>
</div> </div>
</div> </div>
</script> </script>

@ -208,32 +208,30 @@
<script type="text/template" class="-portfolio-item-templ"> <script type="text/template" class="-portfolio-item-templ">
<div class="col-lg-4"> <div class="col-lg-4">
<div class="insetCol box-sizing disTab"> <div class="insetCol box-sizing disTab">
<div class="imgGal" style="background:rgba(0, 0, 0, 0) url('<%= portfolio.photos[0].img %>') no-repeat scroll center center / cover"> <div class="imgGal" style="background:rgba(0, 0, 0, 0) url('<%- portfolio.photos[0].img %>') no-repeat scroll center center / cover">
<a class="open-modal-image" href="<%= portfolio.photos[0].img %>"><div class="imgFigure"></div></a> <a class="open-modal-image" href="<%- portfolio.photos[0].img %>"><div class="imgFigure"></div></a>
</div> </div>
</div> </div>
<div class="insetCol2 box-sizing disTab"> <div class="insetCol2 box-sizing disTab">
<a href="<%= portfAbsUrl %>"><%= trunc({length: 50}, portfolio.name) %></a> <a href="<%- portfAbsUrl %>"><%- trunc({length: 50}, portfolio.name) %></a>
{% if False %} <% if (authedContractorId === contractorId) { %>
{% if request.user.pk == contractor.pk %} <div class="buttonsImg" disTab>
<div class="buttonsImg" disTab> <a href="<%- portfEditUrl %>">
<a href="{% url 'projects:contractor-portfolio-edit' p.pk %}"> <div class="insetBI insetBI1">
<div class="insetBI insetBI1"> <i class="fa fa-pencil"></i>
<i class="fa fa-pencil"></i>
</div>
</a>
<div class="insetBI insetBI2">
<form action="{% url 'projects:contractor-portfolio-trash' pk=p.pk %}" method="POST" novalidate>
{% csrf_token %}
<input type="hidden" name="next" value="{{ request.path }}">
<a href="#" onclick="$(this).closest('form').submit(); return false"><i class="fa fa-times"></i></a>
</form>
</div> </div>
</a>
<div class="insetBI insetBI2">
<form action="<%- portfTrashUrl %>" method="POST" novalidate>
{% csrf_token %}
<input type="hidden" name="next" value="{{ request.path }}">
<a href="#" onclick="$(this).closest('form').submit(); return false"><i class="fa fa-times"></i></a>
</form>
</div> </div>
{% endif %} </div>
{% endif %} <% } %>
</div> </div>
</div> </div>
</script> </script>
@ -310,43 +308,43 @@
{% endfor %} {% endfor %}
{% endif %} {% endif %}
;
<script type="text/template" class="-work-sell-item-templ"> <script type="text/template" class="-work-sell-item-templ">
<div class="col-lg-4"> <div class="col-lg-4">
<div class="insetCol box-sizing disTab"> <div class="insetCol box-sizing disTab">
{# <a href="{% url 'work_sell:detail' ws.pk %}">#} {# <a href="{% url 'work_sell:detail' ws.pk %}">#}
<a href="#"> <a href="#">
<div class="imgGal" style="background:rgba(0, 0, 0, 0) url('<%= workSell.photos[0].img %>') no-repeat scroll center center / cover"> <div class="imgGal" style="background:rgba(0, 0, 0, 0) url('<%- workSell.photos[0].img %>') no-repeat scroll center center / cover">
<a class="open-modal-image" href="<%= workSell.photos[0].img %>"><div class="imgFigure"></div></a> <a class="open-modal-image" href="<%- workSell.photos[0].img %>"><div class="imgFigure"></div></a>
</div> </div>
</a> </a>
<div class="cenaImg box-sizing"> <div class="cenaImg box-sizing">
<div class="cenaImgInset"> <div class="cenaImgInset">
<%= workSell.budget %> <i class="fa fa-rub"></i> <%- workSell.budget %> <i class="fa fa-rub"></i>
</div> </div>
</div> </div>
</div> </div>
<div class="insetCol2 box-sizing disTab"> <div class="insetCol2 box-sizing disTab">
<a href="<%= workSellAbsUrl %>"><%= trunc({length: 50}, workSell.name) %></a> <a href="<%- workSellAbsUrl %>"><%- trunc({length: 50}, workSell.name) %></a>
{% if False and request.user.pk == contractor.pk %} <% if (authedContractorId === contractorId) { %>
<div class="buttonsImg" disTab> <div class="buttonsImg" disTab>
<div class="insetBI insetBI1"> <div class="insetBI insetBI1">
<a href="{% url 'work_sell:edit' ws.pk %}"> <a href="<%- workSellEditUrl %>">
<i class="fa fa-pencil"></i> <i class="fa fa-pencil"></i>
</a> </a>
</div> </div>
<div class="insetBI insetBI2"> <div class="insetBI insetBI2">
<form action="{% url 'work_sell:contractor-worksell-trash' pk=ws.pk %}" method="POST" novalidate> <form action="<%- workSellTrashUrl %>" method="POST" novalidate>
{% csrf_token %} {% csrf_token %}
<input type="hidden" name="next" value="{{ request.path }}"> <input type="hidden" name="next" value="{{ request.path }}">
<a href="#" onclick="$(this).closest('form').submit(); return false"><i class="fa fa-times"></i></a> <a href="#" onclick="$(this).closest('form').submit(); return false"><i class="fa fa-times"></i></a>
</form> </form>
</div> </div>
</div> </div>
{% endif %} <% } %>
</div> </div>
</div> </div>
</script> </script>
@ -567,32 +565,28 @@
var $portfoliosContainer = $('.-portfolios-container').first() var $portfoliosContainer = $('.-portfolios-container').first()
var portfolioItemTempl = _.template($portfoliosContainer.find('.-portfolio-item-templ').first().html()) var portfolioItemTempl = _.template($portfoliosContainer.find('.-portfolio-item-templ').first().html())
var $morePortfBtn = $('.-more-portfolios-btn').first() var $morePortfBtn = $('.-more-portfolios-btn').first()
var portfAbsUrl = '/projects/portfolio/' var portfAbsUrl = '/projects/portfolio/%id%/' // "%id%" will be replaced
var portfEditUrl = '/projects/portfolio/%id%/edit/'
var portfTrashUrl = '/projects/portfolio/%id%/trash/'
var $workSellsContainer = $('.-work-sells-container').first() var $workSellsContainer = $('.-work-sells-container').first()
var workSellItemTempl = _.template($workSellsContainer.find('.-work-sell-item-templ').first().html()) var workSellItemTempl = _.template($workSellsContainer.find('.-work-sell-item-templ').first().html())
var $moreWorkSellsfBtn = $('.-more-work-sells-btn').first() var $moreWorkSellsfBtn = $('.-more-work-sells-btn').first()
var workSellAbsUrl = '/work_sell/' var workSellAbsUrl = '/work_sell/%id%/'
var workSellEditUrl = '/work_sell/%id%/edit/'
var workSellTrashUrl = '/work_sell/%id%/trash/'
var teamId = {{ contractor.team.pk }} var contractorId = {{ contractor.pk }}
var contractorIds var authedContractorId{% if request.user.is_authenticated %} = {{ request.user.pk }}{% endif %}
var portfUrl = new URI('/api/portfolios/') var portfUrl = new URI('/api/portfolios/')
var workSellUrl = new URI('/api/work-sells/') var workSellUrl = new URI('/api/work-sells/')
var pageSize = 3 var pageSize = 3
$.get('/api/teams/' + teamId + '/').then(function(res) {
contractorIds = _.map(function(contractor) {
return contractor.id
}, res.contractors)
})
.then(loadMorePortfolios)
.then(loadMoreWorkSells)
function loadMorePortfolios() { function loadMorePortfolios() {
var query = portfUrl.query(true) var query = portfUrl.query(true)
portfUrl.setQuery('user__id__in', _.join(',', contractorIds)) portfUrl.setQuery('user__id', contractorId)
portfUrl.setQuery('page_size', pageSize) portfUrl.setQuery('page_size', pageSize)
portfUrl.setQuery('page', query.page ? Number(query.page) + 1 : 2) portfUrl.setQuery('page', query.page ? Number(query.page) + 1 : 2)
@ -601,7 +595,11 @@
_.each(function(portfolio) { _.each(function(portfolio) {
$portfoliosContainer.append(portfolioItemTempl({ $portfoliosContainer.append(portfolioItemTempl({
portfolio: portfolio, portfolio: portfolio,
portfAbsUrl: portfAbsUrl + portfolio.id + '/', portfAbsUrl: _.replace('%id%', portfolio.id, portfAbsUrl),
portfEditUrl: _.replace('%id%', portfolio.id, portfEditUrl),
portfTrashUrl: _.replace('%id%', portfolio.id, portfTrashUrl),
contractorId: contractorId,
authedContractorId: authedContractorId,
trunc: _.truncate, trunc: _.truncate,
})) }))
}, res.results) }, res.results)
@ -618,27 +616,39 @@
function loadMoreWorkSells() { function loadMoreWorkSells() {
var query = workSellUrl.query(true) var query = workSellUrl.query(true)
workSellUrl.setQuery('contractor__in', _.join(',', contractorIds)) workSellUrl.setQuery('contractor__id', contractorId)
workSellUrl.setQuery('page_size', pageSize) workSellUrl.setQuery('page_size', pageSize)
workSellUrl.setQuery('page', query.page ? Number(query.page) + 1 : 2) workSellUrl.setQuery('page', query.page ? Number(query.page) + 1 : 2)
$.get(workSellUrl.href()).then(function(res) { $.get(workSellUrl.href())
_.each(function(ws) { .then(function(res) {
$workSellsContainer.append(workSellItemTempl({ _.each(function(ws) {
workSell: ws, $workSellsContainer.append(workSellItemTempl({
workSellAbsUrl: workSellAbsUrl + ws.id + '/', workSell: ws,
trunc: _.truncate, workSellAbsUrl: _.replace('%id%', ws.id, workSellAbsUrl),
})) workSellEditUrl: _.replace('%id%', ws.id, workSellEditUrl),
}, res.results) workSellTrashUrl: _.replace('%id%', ws.id, workSellTrashUrl),
contractorId: contractorId,
authedContractorId: authedContractorId,
trunc: _.truncate,
}))
}, res.results)
if (!res.next)
$moreWorkSellsfBtn.css('display', 'none')
})
if (!res.next) .then(function() {
$moreWorkSellsfBtn.css('display', 'none') $('.open-modal-image').magnificPopup({type: 'image'})
}) })
} }
window.loadMorePortfolios = loadMorePortfolios window.loadMorePortfolios = loadMorePortfolios
window.loadMoreWorkSells = loadMoreWorkSells window.loadMoreWorkSells = loadMoreWorkSells
loadMorePortfolios()
loadMoreWorkSells()
//----------------------------------------------------------------- //-----------------------------------------------------------------

Loading…
Cancel
Save