|
|
|
|
@ -18,7 +18,7 @@ from .mixins import LastAccessMixin |
|
|
|
|
from .models import Project, ProjectFile, Portfolio, PortfolioPhoto, Candidate, Answer, AnswerFile, AnswerMessage, Realty, Order |
|
|
|
|
from archilance.mixins import BaseMixin |
|
|
|
|
from users.models import User, Team |
|
|
|
|
from work_sell.models import Picture |
|
|
|
|
from work_sell.models import Picture, WorkSell, WorkSellPhoto |
|
|
|
|
|
|
|
|
|
from .forms import ( |
|
|
|
|
ContractorPortfolioTrashForm, |
|
|
|
|
@ -577,8 +577,23 @@ def contractor_portfolio_create(request): |
|
|
|
|
form = PortfolioForm(data=request.POST) |
|
|
|
|
# import code; code.interact(local=dict(globals(), **locals())) |
|
|
|
|
if form.is_valid(): |
|
|
|
|
duplicate = form.cleaned_data.get('duplicate') |
|
|
|
|
instance = form.save(commit=False) |
|
|
|
|
instance.user = request.user |
|
|
|
|
instance.save() |
|
|
|
|
if duplicate: |
|
|
|
|
work_sell = WorkSell() |
|
|
|
|
work_sell.name = instance.name |
|
|
|
|
work_sell.budget = instance.budget |
|
|
|
|
work_sell.building_classification = instance.building_classification |
|
|
|
|
work_sell.construction_type = instance.construction_type |
|
|
|
|
work_sell.currency = instance.currency |
|
|
|
|
work_sell.description = instance.description |
|
|
|
|
work_sell.term = instance.term |
|
|
|
|
work_sell.term_type = instance.term_type |
|
|
|
|
work_sell.contractor = instance.user |
|
|
|
|
work_sell.save() |
|
|
|
|
|
|
|
|
|
images_ids = request.POST.get('images-ids').split(';')[:-1] |
|
|
|
|
for pk in images_ids: |
|
|
|
|
picture = Picture.objects.get(pk=pk) |
|
|
|
|
@ -588,6 +603,11 @@ def contractor_portfolio_create(request): |
|
|
|
|
p_photo.img = temp_file |
|
|
|
|
p_photo.portfolio = instance |
|
|
|
|
p_photo.save() |
|
|
|
|
if duplicate: |
|
|
|
|
w_photo = WorkSellPhoto() |
|
|
|
|
w_photo.img = temp_file |
|
|
|
|
w_photo.worksell = work_sell |
|
|
|
|
w_photo.save() |
|
|
|
|
data = {'status': 'ok'} |
|
|
|
|
else: |
|
|
|
|
data = {'status': 'no', 'form_errors': form.errors} |
|
|
|
|
@ -602,7 +622,7 @@ class ContractorPortfolioUpdateView(UpdateView): |
|
|
|
|
template_name = 'contractor_portfolio_edit.html' |
|
|
|
|
|
|
|
|
|
def get_success_url(self): |
|
|
|
|
return reverse('proje') |
|
|
|
|
return reverse('users:contractor-profile',kwargs={'pk':self.object.user_id}) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class PortfolioDelete(DeleteView): |
|
|
|
|
|