· 10 years ago · Mar 14, 2016, 02:30 PM
1from django.shortcuts import render
2from django.http import HttpResponse
3from django.shortcuts import render_to_response,redirect, get_object_or_404, render
4from django.template import RequestContext
5from .forms import *
6from django.contrib.auth.models import User
7from .models import *
8from django.contrib import messages
9from django.contrib.auth import logout
10from django.contrib.auth import authenticate
11from django.contrib.auth import login as auth_login
12import json
13from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
14from django.contrib.auth.decorators import login_required
15from django.core.serializers.json import DjangoJSONEncoder
16from django.core import serializers
17from django.http import HttpResponseRedirect
18# from django_messages.models import Message
19from django.utils import timezone
20# from django_messages.utils import format_quote
21from models import Message
22from utils import format_quote
23from django.utils.translation import ugettext as _
24import sys
25from django.conf import settings
26import stripe
27from django.core.mail import EmailMultiAlternatives
28
29secretKey=settings.STRIPE_SECRET_KEY
30
31stripe.api_key = secretKey
32
33sys.setrecursionlimit(50000)
34
35dashboard_type = ""
36
37
38def index(request):
39 ''' Home Page'''
40 home="index_page"
41 role_user=Userroles.objects.filter(user_id=request.user.id)
42 print ""
43 conformation_researcher=""
44 conformation_lab=""
45
46 for role in role_user:
47 usr_type=role.role_id
48 if usr_type==1:
49 conformation_researcher="researcher"
50 elif usr_type==2:
51 conformation_lab="conformation_lab"
52 else:
53 pass
54
55 return render_to_response('new_index.html',{'conformation_researcher':conformation_researcher,'conformation_lab':conformation_lab,
56 "home":home},context_instance=RequestContext(request))
57
58def signup_researcher(request):
59 '''Buyer Registration'''
60 singup_view = "this is researcher signup"
61 if request.method == 'POST':
62 form = Registrationform(request.POST)
63 if form.is_valid():
64 first_name1 = request.POST.get("first_name")
65 first_name =first_name1.capitalize()
66 last_name1 = request.POST.get("last_name")
67 last_name=last_name1.capitalize()
68 pwd =request.POST.get("password")
69 mail = request.POST.get("email")
70 user_type = request.POST.get("check_user")
71 phone_num=request.POST.get("phone_number")
72 name = first_name+last_name
73 company=request.POST.get("companey")
74 email_check=User.objects.filter(email=mail)
75 if email_check:
76 error_message="Email address already exists"
77 return render_to_response('signup_researcher.html',
78 {'form': form,'error_message':error_message,},
79 context_instance=RequestContext(request))
80 else:
81 user = User.objects.create_user(name, mail, pwd)
82 user_id = User.objects.filter(username=name)
83 for usr in user_id:
84 Userroles(user_id= usr.id,role_id=1,roll_name=user_type).save()
85 Users(user_id=usr.id,role_id=1,
86 fname=first_name,lname=last_name,
87 email=mail,phone=phone_num,name_org=company,username=name,is_active=1).save()
88 Profilepic(user_id=user.id).save()
89 return render_to_response('signup_success.html',
90 context_instance=RequestContext(request))
91 else:
92 form = Registrationform()
93 return render_to_response('signup_researcher.html',
94 {'form': form,'view_name':singup_view},
95 context_instance=RequestContext(request))
96
97def signup_lab(request):
98 '''Provider Registration'''
99 error_message=""
100 type_org = ""
101 action=1
102 if request.method == 'POST':
103 form = Lab_registrationform(request.POST)
104 if form.is_valid():
105 first_name1 = request.POST.get("first_name")
106 first_name=first_name1.capitalize()
107 last_name1 = request.POST.get("last_name")
108 last_name=last_name1.capitalize()
109 pwd =request.POST.get("password")
110 mail = request.POST.get("email")
111 user_type = request.POST.get("check_user")
112 phone_num=request.POST.get("phone_number")
113 title = request.POST.get("title")
114 orgname=request.POST.get("orgname")
115 type_org=request.POST.get("company")
116 facility=request.POST.get("facility")
117 servicedec=request.POST.get("service_cap")
118 name = first_name+''+last_name
119 email_check=User.objects.filter(email=mail)
120 if email_check:
121 error_message="Email address already exists"
122 return render_to_response('signup_lab.html',
123 {'form': form,'error_message':error_message,},
124 context_instance=RequestContext(request))
125 else:
126 user = User.objects.create_user(name, mail, pwd)
127 user_id = User.objects.filter(email=mail)
128
129 for usr in user_id:
130 Userroles(user_id= usr.id,role_id=2,roll_name=user_type).save()
131 Users(user_id=usr.id,role_id=2, fname=first_name,lname=last_name,email=mail,phone=phone_num,name_org=orgname).save()
132 Lab(user_id =usr.id,title=title,orgname=orgname,typeorg=type_org,core_facility=facility,desc=servicedec).save()
133 deactivte_user = User.objects.filter(email=mail).update(is_active=0)
134 success_message = "Thank you for your request. A provider listing specialist will contact you shortly."
135 return render_to_response('new_index.html',{'success_message':success_message},
136 context_instance=RequestContext(request))
137 else:
138 form = Lab_registrationform()
139 return render_to_response('signup_lab.html',{'form': form,'error_message':error_message,
140 },
141 context_instance=RequestContext(request))
142
143def login(request):
144 '''Login'''
145 login_view="This is login view"
146 error_message=""
147 user = ""
148 print "login"
149 if request.method == 'POST':
150 print "pst method"
151 form = Loginform(request.POST)
152 email = request.POST.get('email')
153 password = request.POST['password']
154 user = authenticate(email=email, password=password)
155 if form.is_valid():
156 print "valid"
157 if user:
158 if user.is_active:
159 print "active"
160 auth_login(request, user)
161
162
163 users = User.objects.filter(email=email)
164 uid=None
165 for user in users:
166 uid=user.id
167 check_lab=None
168 check_labs= Userroles.objects.filter(user_id=uid)
169 for i in check_labs:
170 check_lab=i.roll_name
171 print "roll_name"
172 print check_lab
173
174 if user.is_superuser:
175 print "admin"
176 return redirect("/")
177 elif check_lab=="researcher":
178 print "buyer logged in"
179 return redirect("/buyer/")
180 else:
181 print "provider logged in"
182 return redirect("/provider/")
183 # print "&&&&&&&&&&"
184 # print user
185 # except Exception:
186 # return redirect("/")
187 # pass
188 # try :
189 # uid = User.objects.get(email=email).id
190 # check_lab= Userroles.objects.get(user_id=uid).roll_name
191 # print "roll_name"
192 # print check_lab
193 # if check_lab=="researcher":
194 # return redirect("/buyer/")
195 # else:
196 # return redirect("/provider/")
197 # except Exception:
198 # return redirect("/")
199 # pass
200 else:
201 error_message ="Sorry your account not activated"
202 else:
203 error_message ="Email and Password did not match."
204 else:
205 form = Loginform()
206 return render(request, 'login.html', {'form':form,
207 'login_view':login_view,'error_message':error_message},context_instance=RequestContext(request))
208
209def logout_page(request):
210 ''' Logout '''
211 logout(request)
212 return redirect('/')
213
214@login_required
215def editprofile(request):
216 '''Edit Lab Profile'''
217
218 dashboard_type = "provider"
219 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
220 role_users=Userroles.objects.filter(user_id=request.user.id)
221 role_user=None
222 for user in role_users:
223 role_user=user.role_id
224 if dashboard_type == "provider" and role_user == 2:
225 conformation_lab="conformation_lab"
226 usr_data=Users.objects.filter(user_id=request.user.id)
227 error_message=""
228 name1 = ""
229 name2=""
230 email =""
231 phone_num =""
232 how_bio=""
233 name_org=""
234 roleid = None
235 for usr in usr_data:
236 name1 = usr.fname
237 name2=usr.lname
238 email=usr.email
239 phone_num=usr.phone
240 how_bio = usr.how_bio
241 name_org =usr.name_org
242 roleid = usr.role_id
243 if request.method == 'POST':
244 form = Editprofileform(request.POST)
245 if form.is_valid():
246 first_name = request.POST.get("first_name")
247 last_name = request.POST.get("last_name")
248 mail = request.POST.get("email")
249 user_type = request.POST.get("check_user")
250 phone_num=request.POST.get("phone_number")
251 how_bio=request.POST.get("how_bio")
252 name_org=request.POST.get("name_org")
253 name = first_name+last_name
254 Users.objects.filter(user_id =request.user.id).update(fname=first_name,
255 lname=last_name,email=mail,how_bio=how_bio,
256 name_org=name_org,phone=phone_num)
257
258 User.objects.filter(id=request.user.id).update(email=mail,username=name)
259 return redirect("/login/")
260 else:
261 form = Editprofileform()
262 print name1,name2,email,phone_num
263 return render_to_response('edit_profile.html',{'form':form,'name1':name1,
264 'conformation_lab':conformation_lab, 'name2':name2,'email':email,'phone_num':phone_num},
265 context_instance=RequestContext(request))
266 else :
267 return redirect("/logout/")
268
269@login_required
270def lab_listing(request):
271 ''' Lab Listing Page'''
272 dashboard_type = "provider"
273 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
274 role_users=Userroles.objects.filter(user_id=request.user.id)
275 role_user=None
276 for user in role_users:
277 role_user=user.role_id
278 if dashboard_type == "provider" and role_user == 2:
279 conformation_lab="conformation_lab"
280 uid = request.user.id
281 if request.method == 'POST':
282 form = Lablistingform(request.POST)
283 if form.is_valid():
284 title = request.POST.get('Title')
285 caption= request.POST.get('Caption')
286 desc=request.POST.get('Desc')
287 country = request.POST.get('country')
288 lab_store =Lab(user_id =uid,title=title,caption=caption,desc=desc,country=country).save()
289 return redirect("/lab-services/")
290 else:
291 form = Lablistingform()
292 return render_to_response('lab_listing.html',{'form': form,"conformation_lab":conformation_lab,
293 },
294 context_instance=RequestContext(request))
295 else :
296 return redirect("/logout/")
297
298@login_required
299def lab_services(request):
300 ''' Lab Services View '''
301
302 dashboard_type = "provider"
303 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
304 role_users=Userroles.objects.filter(user_id=request.user.id)
305 role_user=None
306 for user in role_users:
307 role_user=user.role_id
308 if dashboard_type == "provider" and role_user == 2:
309 conformation_lab="conformation_lab"
310 # form = AddLabservicesform()
311 print "Adding lab services view"
312 if request.method == 'POST':
313 print "if post block"
314 form = AddLabservicesform(request.POST)
315 if form.is_valid():
316 title = request.POST.get('service_title')
317 descrption = request.POST.get('service_desc')
318 price = request.POST.get('service_price')
319 currency = request.POST.get('service_currency')
320 unit = request.POST.get('service_unit')
321 url=request.POST.get('service_url')
322 lab_id=None
323 labuser = Lab.objects.filter(user_id=request.user.id)
324 for lab in labuser:
325 lab_id=lab.id
326 LabServices(lab_id=lab_id,title =title,
327 desc=descrption,price=price,url=url,currency=currency,unit=unit).save()
328 messages.success(request,(u"Your Lab Service added successfully"))
329 return redirect("/provider/profile")
330 else:
331 print "else block"
332 form = AddLabservicesform()
333 return render_to_response('lab/lab-profile.html',{'form': form,'conformation_lab':conformation_lab},
334 context_instance=RequestContext(request))
335 '''Lab Services'''
336 print "lab services"
337 lab_id=None
338 labuser=Lab.objects.filter(user_id=request.user.id)
339 for lab in labuser:
340 lab_id=lab.id
341 lab_profle_info = Lab.objects.filter(user_id=request.user.id)
342 lab_service_info = LabServices.objects.filter(lab_id=lab_id)
343
344 return render_to_response('',
345 {'services':lab_service_info,},
346 context_instance=RequestContext(request))
347
348
349 else :
350 return redirect("/logout/")
351
352@login_required
353def lab_reviews(request):
354 ''' Lab Reviews View '''
355
356 dashboard_type = "provider"
357 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
358 role_users=Userroles.objects.filter(user_id=request.user.id)
359 role_user=None
360 for user in role_users:
361 role_user=user.role_id
362 if dashboard_type == "provider" and role_user == 2:
363 conformation_lab="conformation_lab"
364 if request.method == 'POST':
365 form = Labreviewsform(request.POST)
366 if form.is_valid():
367 descrption = request.POST.get('Desc')
368 lab_id=None
369 labuser = Lab.objects.filter(user_id=request.user.id)
370 for lab in labuser:
371 lab_id=lab.id
372 # labuser = Lab.objects.get(user_id=request.user.id).id
373 LabReviews(lab_id =lab_id, desc=descrption).save()
374 return HttpResponse("lab reviews store in DB")
375 else:
376 form = Labreviewsform()
377 return render_to_response('reviews.html',{'form': form,'conformation_lab':conformation_lab,},
378 context_instance=RequestContext(request))
379
380 else :
381 return redirect("/logout/")
382
383@login_required
384def lab_endorse(request):
385 ''' Lab Endorse View '''
386
387 dashboard_type = "provider"
388 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
389 role_users=Userroles.objects.filter(user_id=request.user.id)
390 role_user=None
391 for user in role_users:
392 role_user=user.role_id
393 if dashboard_type == "provider" and role_user == 2:
394 conformation_lab="conformation_lab"
395 if request.method == 'POST':
396 form = Labendorseform(request.POST)
397 if form.is_valid():
398 desc = request.POST.get('Desc')
399 # labuser = Lab.objects.get(user_id=request.user.id).id
400 lab_id=None
401 labuser = Lab.objects.filter(user_id=request.user.id)
402 for lab in labuser:
403 lab_id=lab.id
404 LabEndorse(lab_id =lab_id, desc=desc).save()
405 return HttpResponse("lab endorse store in DB")
406 else:
407 form = Labendorseform()
408 return render_to_response('endorse.html',{'form': form,'conformation_lab':conformation_lab,},
409 context_instance=RequestContext(request))
410 else :
411 return redirect("/logout/")
412
413@login_required
414def show_your_lab(request):
415 ''' Displaying Lab Details '''
416
417 dashboard_type = "provider"
418 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
419 role_users=Userroles.objects.filter(user_id=request.user.id)
420 role_user=None
421 for user in role_users:
422 role_user=user.role_id
423 if dashboard_type == "provider" and role_user == 2:
424 conformation_lab="conformation_lab"
425 labid = None
426 labs = Lab.objects.filter(user_id=request.user.id)
427 for lab in labs:
428 labid=lab.id
429 country =""
430 descrption = ""
431 title =""
432 caption = ""
433 service_title = ""
434 service_desc=""
435 service_price=None
436 lab_user = Lab.objects.filter(user_id=request.user.id)
437 for lab in lab_user:
438 title=lab.title
439 descrption = lab.desc
440 caption = lab.caption
441 country = lab.country
442 lab_service = LabServices.objects.filter(lab_id = labid)
443 lab_review = LabReviews.objects.filter(lab_id = labid)
444 lab_endorse = LabEndorse.objects.filter(lab_id = labid)
445 lab_profile = {'title':title,'descrption':descrption,'caption':caption,
446 'country':country,'lab_service':lab_service,'lab_review':lab_review,'lab_endorse':lab_endorse,
447 'conformation_lab':conformation_lab}
448
449 return render_to_response('lab-details.html',lab_profile,
450 context_instance=RequestContext(request))
451 else :
452 return redirect("/logout/")
453
454def list_your_lab(request):
455 ''' List you lab View '''
456 conformation_lab="conformation_lab"
457 return render_to_response('list-your-lab.html',{'conformation_lab':conformation_lab,},
458 context_instance=RequestContext(request))
459
460def signup_select(request):
461 ''' Registration based on this selection '''
462
463 return render_to_response('signup.html',
464 context_instance=RequestContext(request))
465
466def autocomplete_searrch(request):
467 ''' Auto Complete '''
468
469 #demo = ['Audi', 'BMW', 'Bugatti', 'Ferrari', 'Ford', 'Lamborghini', 'Mercedes Benz', 'Porsche', 'Rolls-Royce', 'Volkswagen']
470 demo = ['test', 'test1', 'raghu', 'swamy', 'swamy123', '', 'Mercedes Benz', 'Porsche', 'Rolls-Royce', 'Volkswagen']
471 return render_to_response('auto.html',{'demo':demo},
472 context_instance=RequestContext(request))
473
474@login_required
475def lab_profile_page(request):
476 ''' Lab Profile View '''
477
478 dashboard_type = "provider"
479 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
480 role_users=Userroles.objects.filter(user_id=request.user.id)
481 role_user=None
482 for user in role_users:
483 role_user=user.role_id
484 if dashboard_type == "provider" and role_user == 2:
485 conformation_lab="conformation_lab"
486 # lab_id=Lab.objects.get(user_id=request.user.id).id
487 lab_id=None
488 labuser = Lab.objects.filter(user_id=request.user.id)
489 for lab in labuser:
490 lab_id=lab.id
491 lab_profle_info = Lab.objects.filter(user_id=request.user.id)
492 lab_service_info =LabServices.objects.filter(lab_id=lab_id)
493 paginator = Paginator(lab_service_info,3)
494 page = request.GET.get('page')
495 try:
496 contacts = paginator.page(page)
497 except PageNotAnInteger:
498 # If page is not an integer, deliver first page.
499 contacts = paginator.page(1)
500 except EmptyPage:
501 # If page is out of range (e.g. 9999), deliver last page of results.
502 contacts = paginator.page(paginator.num_pages)
503
504 lab_title = ""
505 lab_name = ""
506 lab_description=""
507 orgtype=""
508 ser_title=""
509 ser_price=None
510 ser_desc=""
511 ser_url=""
512 pic=""
513 caption=""
514
515 for lab_info in lab_profle_info:
516 lab_title=lab_info.title
517 lab_name=lab_info.orgname
518 lab_description=lab_info.desc
519 orgtype=lab_info.typeorg
520 city=lab_info.city
521 state=lab_info.state
522 country=lab_info.country
523 pic=lab_info.model_pic
524 caption=lab_info.caption
525
526 for service in lab_service_info:
527 ser_title=service.title
528 ser_price=service.price
529 ser_desc=service.desc
530 ser_url=service.url
531
532 return render_to_response('lab-profile-new.html',
533 {
534 'lab_title':lab_title,
535 'lab_name':lab_name,
536 'lab_description':lab_description,
537 'orgtype':orgtype,
538 'city':city,
539 'state':state,
540 'country':country,
541 'pic':pic,
542 "caption":caption,
543 'ser_title':ser_title,
544 'ser_price':ser_price,
545 'ser_desc':ser_desc,
546 'ser_url':ser_url,
547 'lab_service_info':contacts,
548 'contacts':contacts,
549 'conformation_lab':conformation_lab,
550 },
551 context_instance=RequestContext(request))
552 else :
553 return redirect("/logout/")
554
555@login_required
556def researcher_profile_page(request):
557 ''' Buyer Profile View '''
558
559 dashboard_type = "buyer"
560 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
561 role_users=Userroles.objects.filter(user_id=request.user.id)
562 role_user=None
563 print role_users
564 for user in role_users:
565 role_user=user.role_id
566 print "buyer_profile"
567 print role_user
568
569 if dashboard_type == "buyer" and role_user == 1:
570 conformation_researcher="researcher"
571 current_loggedin_user=request.user.id
572 logged_user=request.user.id
573 userinfo=Users.objects.filter(user_id=logged_user)
574 fname=""
575 lname=""
576 username=fname+lname
577 company= ""
578 logo=""
579 for usr in userinfo:
580 fname=usr.fname
581 lname=usr.lname
582 username=fname+lname
583 company=usr.name_org
584 image_logo=Profilepic.objects.filter(user_id=request.user.id)
585 for img in image_logo:
586 logo=img.model_pic
587
588 return render_to_response('researcher/new_researcher_dashboard.html',{'username':username,
589 'company':company,
590 'conformation_researcher':conformation_researcher,
591 'logo':logo},
592 context_instance=RequestContext(request))
593 else:
594 return redirect("/logout/")
595
596@login_required
597def edit_lab_profile(request):
598 ''' Edit Lab Profile View '''
599
600
601 dashboard_type = "provider"
602 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
603 role_users=Userroles.objects.filter(user_id=request.user.id)
604 role_user=None
605 for user in role_users:
606 role_user=user.role_id
607 if dashboard_type == "provider" and role_user == 2:
608 conformation_lab="conformation_lab"
609 current_loggedin_user=request.user.id
610 if request.method == 'POST':
611 form = EditLabform(request.POST,request.FILES)
612 if form.is_valid():
613 title = request.POST.get("title")
614 orgname = request.POST.get("orgname")
615 service_cap = request.POST.get("desc")
616 city=request.POST.get("city")
617 state=request.POST.get("state")
618 country=request.POST.get("country")
619 logo = form.cleaned_data['model_pic']
620
621 if logo:
622 Lab.objects.filter(user_id=request.user.id).delete()
623 Lab(user_id=request.user.id,title=title,
624 orgname=orgname,desc=service_cap,city=city,
625 state=state,country=country,model_pic=logo).save()
626 else:
627 Lab.objects.filter(user_id=request.user.id).update(title=title,
628 orgname=orgname,desc=service_cap,city=city,
629 state=state,country=country)
630 return redirect("/provider/profile/")
631 else:
632 form = EditLabform()
633
634 return render_to_response('edit_lab_profile.html',{'form':form,'conformation_lab':conformation_lab},
635 context_instance=RequestContext(request))
636 else:
637 return redirect("/logout/")
638
639def addservices(request,id):
640 return lab_profile_page(request)
641
642@login_required
643def edit_lab_services(request,lab_service_id):
644 ''' Edit Lab Services View '''
645
646
647 print "edit provider service"
648 print lab_service_id
649 print "88888888888888888888"
650 l_service=""
651 print "-----------------------"
652 print request.GET
653
654 service_id=""
655 service_title=""
656 service_desc=""
657 service_price=""
658 service_currency=""
659 service_url=""
660 service_unit=""
661
662
663 # for key,value in request.GET.items():
664 # print key
665 # print value
666 print "---------------------"
667 dashboard_type = "provider"
668 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
669 role_users=Userroles.objects.filter(user_id=request.user.id)
670 role_user=None
671 for user in role_users:
672 role_user=user.role_id
673 if dashboard_type == "provider" and role_user == 2:
674
675 l_service = LabServices.objects.get(id=lab_service_id)
676 print "==================="
677 print l_service.title
678 print l_service.id
679 print l_service.desc
680 print l_service.price
681
682 print type(l_service)
683
684 service_id=l_service.id
685 service_title=l_service.title
686 service_desc=l_service.desc
687 service_price=l_service.price
688 service_currency=l_service.currency
689 service_unit=l_service.unit
690 service_url=l_service.url
691
692 data = {"service_title":"l_service.title"}
693 form = AddLabservicesform(initial=data)
694 # print l_service.title
695 conformation_lab="conformation_lab"
696 if request.method == 'POST':
697 form = AddLabservicesform(request.POST)
698 if form.is_valid():
699 service_id = request.POST.get('service_id')
700 title = request.POST.get('service_title')
701 descrption = request.POST.get('service_desc')
702 price = request.POST.get('service_price')
703 currency = request.POST.get('service_currency')
704 unit = request.POST.get('service_unit')
705 url=request.POST.get('service_url')
706 # labuser = Lab.objects.get(user_id=request.user.id).id
707 labuser=None
708 labusers = Lab.objects.filter(user_id=request.user.id)
709 for lab in labusers:
710 labuser=lab.id
711 # LabServices.objects.filter(id=service_id).update(title=title,
712 # desc=descrption,price=price,url=url,currency=currency,unit=unit)
713 LabServices.objects.filter(id=lab_service_id).update(title=title,
714 desc=descrption,price=price,url=url,currency=currency,unit=unit)
715 messages.success(request,(u"Your Lab Service updated successfully"))
716 return redirect("/provider/profile/")
717 else:
718 print "else block"
719
720 print "not in loop"
721 print form
722 return render_to_response('lab/lab-profile.html',
723 {'form': form,'conformation_lab':conformation_lab,
724 'service_id':service_id,
725 'service_title':service_title,
726 'service_desc':service_desc,
727 'service_price':service_price,
728 'service_currency':service_currency,},
729 context_instance=RequestContext(request))
730
731 else:
732 return redirect("/logout/")
733
734@login_required
735def edit_provider_service(request,lab_service_id):
736
737 print "edit provider service"
738 print lab_service_id
739 print "---------"
740
741
742 dashboard_type = "provider"
743 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
744 role_users=Userroles.objects.filter(user_id=request.user.id)
745 role_user=None
746 for user in role_users:
747 role_user=user.role_id
748 if dashboard_type == "provider" and role_user == 2:
749
750 l_service = LabServices.objects.get(id=lab_service_id)
751
752 service_id=l_service.id
753 service_title=l_service.title
754 service_desc=l_service.desc
755 service_price=l_service.price
756 service_currency=l_service.currency
757 service_unit=l_service.unit
758 service_url=l_service.url
759
760 currency = ['US-dollor','UK-Pound','UAE-Dirham']
761 unit = ['Unit-I','Unit-II','Unit-III']
762
763 conformation_lab="conformation_lab"
764 if request.method == 'POST':
765 form = AddLabservicesform(request.POST)
766 if form.is_valid():
767 service_id = request.POST.get('service_id')
768 title = request.POST.get('service_title')
769 descrption = request.POST.get('service_desc')
770 price = request.POST.get('service_price')
771 currency = request.POST.get('service_currency')
772 unit = request.POST.get('service_unit')
773 url=request.POST.get('service_url')
774 # labuser = Lab.objects.get(user_id=request.user.id).id
775 labuser=None
776 labusers = Lab.objects.filter(user_id=request.user.id)
777 for lab in labusers:
778 labuser=lab.id
779 # LabServices.objects.filter(id=service_id).update(title=title,
780 # desc=descrption,price=price,url=url,currency=currency,unit=unit)
781 LabServices.objects.filter(id=lab_service_id).update(title=title,
782 desc=descrption,price=price,url=url,currency=currency,unit=unit)
783 messages.success(request,(u"Your Lab Service updated successfully"))
784 return redirect("/provider/profile/")
785 else:
786 print "else block"
787 form = AddLabservicesform()
788
789 return render_to_response("lab/provider-service-edit.html",
790 {'form':form,
791 'service_id':service_id,
792 'service_title':service_title,
793 'service_desc':service_desc,
794 'service_price':service_price,
795 'service_unit':service_unit,
796 'service_currency':service_currency,
797 'service_url':service_url,
798 'currency':currency,'unit':unit,},
799 context_instance=RequestContext(request))
800
801 else:
802 return redirect("/logout/")
803
804
805
806@login_required
807def del_lab_service(request,lab_service_id):
808 print " deleting lab service"
809 dashboard_type = "provider"
810 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
811 role_users=Userroles.objects.filter(user_id=request.user.id)
812 role_user=None
813 for user in role_users:
814 role_user=user.role_id
815 if dashboard_type == "provider" and role_user == 2:
816 print "before delete labservice"
817
818 result = LabServices.objects.filter(id=lab_service_id).delete()
819
820 print "After delete labservice"
821 messages.success(request,(u"Your Lab Service deleted successfully"))
822 return redirect("/provider/profile/")
823
824 else:
825 return redirect("/logout/")
826
827
828def upload_labphotos(request):
829 conformation_lab="conformation_lab"
830 if request.method == 'POST':
831 form = LabphotosForm(request.POST,request.FILES)
832 if form.is_valid():
833 form.save()
834 return HttpResponse("image succesfully uploaded")
835 #return redirect("/lab-profile-page/")
836 else:
837 form = LabphotosForm()
838 return render_to_response('labphotos.html',{'form': form,'conformation_lab':conformation_lab},
839 context_instance=RequestContext(request))
840
841def upload_pic(request):
842 if request.method == 'POST':
843 form = ImageUploadForm(request.POST, request.FILES)
844 if form.is_valid():
845 m = ExampleModel.objects.get(pk=course_id)
846 m.model_pic = form.cleaned_data['image']
847 m.save()
848 return HttpResponse('image upload success')
849 else:
850 form = ImageUploadForm()
851 return render_to_response('labphotos.html',{'form': form,},
852 context_instance=RequestContext(request))
853
854@login_required
855def edit_researcher_profile(request):
856 ''' Edit Researcher Profile View '''
857
858 dashboard_type = "buyer"
859 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
860 role_users=Userroles.objects.filter(user_id=request.user.id)
861 role_user=None
862 for user in role_users:
863 role_user=user.role_id
864 if dashboard_type == "buyer" and role_user == 1:
865 conformation_researcher="researcher"
866 researchr_info=Users.objects.filter(user_id=request.user.id)
867 email=""
868 fname=""
869 lname=""
870 org_name=""
871 phone=""
872 logo=""
873 user_desc=""
874 model_pic=""
875 username=fname+lname
876 researcher_logo=""
877 res_logo =Profilepic.objects.filter(
878 user_id=request.user.id)
879 for res in res_logo:
880 researcher_logo=res.model_pic
881 for res in researchr_info:
882 email=res.email
883 fname=res.fname
884 lname=res.lname
885 org_name=res.name_org
886 phone=res.phone
887 description =Researcher_more_info.objects.filter(user_id=request.user.id)
888 for desc in description:
889 user_desc=desc.desc
890
891 """ Employment View Start """
892 education_info=Researcher_emplyment.objects.filter(
893 user_id=request.user.id).order_by('id').reverse()
894
895 education_info3=Researcher_education.objects.filter(user_id=request.user.id).order_by('id').reverse()
896 publications_data =Researcher_publications.objects.filter(
897 user_id=request.user.id).order_by('id').reverse()
898
899 paginator = Paginator(education_info,3)
900 paginator1 = Paginator(education_info3,3)
901 paginator2 = Paginator(publications_data,3)
902 page = request.GET.get('page')
903 try:
904 contacts = paginator.page(page)
905 contacts1 = paginator1.page(page)
906 contacts2 = paginator2.page(page)
907 except PageNotAnInteger:
908 # If page is not an integer, deliver first page.
909 contacts = paginator.page(1)
910 contacts1 = paginator1.page(1)
911 contacts2 = paginator2.page(1)
912 except EmptyPage:
913 # If page is out of range (e.g. 9999), deliver last page of results.
914 contacts = paginator.page(paginator.num_pages)
915 contacts1 = paginator1.page(paginator1.num_pages)
916 contacts2 = paginator2.page(paginator2.num_pages)
917
918 """ Employment View End """
919 form1 = EditPasswordForm()
920 form2 = ResearcherEmploymentForm()
921 form3 = ResearcherEducationForm()
922 form4 = PublicationsForm()
923 if request.method == 'POST':
924 form = EditResearcherForm(request.POST,request.FILES)
925 if form.is_valid():
926 desc = request.POST.get('Desc')
927 mail_id=request.POST.get('email')
928 name1=request.POST.get('first_name')
929 name2=request.POST.get('last_name')
930 orgname=request.POST.get('companey')
931 mobile=request.POST.get('phone_number')
932 publication=request.POST.get('publications')
933 model_pic = form.cleaned_data['image']
934 fullname=name1+name2
935 User.objects.filter(id=request.user.id).update(email=mail_id,
936 username=fullname)
937 Users.objects.filter(user_id=request.user.id).update(
938 email=mail_id,
939 fname=name1,
940 lname=name2,
941 name_org=orgname,
942 phone=mobile,
943 username=fullname
944 )
945 if model_pic:
946 Profilepic.objects.filter(user_id=request.user.id).delete()
947 Profilepic(user_id=request.user.id,model_pic=model_pic).save()
948 logo=Profilepic.objects.get(user_id=request.user.id).model_pic
949
950 messages.success(request, (u"Your profile updated succesfully"))
951 return redirect("/buyer/edit/basics/")
952 else:
953 form = EditResearcherForm()
954
955 return render_to_response('researcher/edit-researcher-basic.html',{'form':form,
956 'form1':form1,
957 'form2':form2,
958 'form3':form3,
959 'form4':form4,
960 'email':email,
961 'fname':fname,
962 'lname':lname,
963 'org_name':org_name,
964 'phone':phone,
965 'conformation_researcher':conformation_researcher,
966 'user_desc':user_desc,
967 'researcher_logo':researcher_logo,
968 'education_info':education_info,
969 'education_info3':education_info3,
970 'contacts':contacts,
971 'contacts1':contacts1,
972 'contacts2':contacts2,
973 },
974 context_instance=RequestContext(request))
975 else:
976 return redirect("/logout/")
977
978@login_required
979def edit_researcher_password(request):
980 ''' Edit Researcher Password View '''
981
982 dashboard_type = "buyer"
983 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
984 role_users=Userroles.objects.filter(user_id=request.user.id)
985 role_user=None
986 for user in role_users:
987 role_user=user.role_id
988 if dashboard_type == "buyer" and role_user == 1:
989 conformation_researcher="researcher"
990 error_msg=""
991 email=User.objects.get(id=request.user.id).email
992 form1 = EditPasswordForm()
993 form2 = ResearcherEmploymentForm()
994 form3 = ResearcherEducationForm()
995 form4 = PublicationsForm()
996 if request.method == 'POST':
997 form1 = EditPasswordForm(request.POST)
998 if form1.is_valid():
999 password1 = request.POST.get('password1')
1000 password2 = request.POST.get('password2')
1001 if password1==password2:
1002 user = User.objects.get(id=request.user.id)
1003 user.set_password(password1)
1004 user.save()
1005 messages.success(request, (u"Your Password Changed Succesfully"))
1006 user = authenticate(email=email, password=password1)
1007 if user.is_active:
1008 auth_login(request, user)
1009 return redirect("/buyer/edit/basics/")
1010 else:
1011 return redirect("/login/")
1012 else:
1013 error_msg="Confirm new password doesn't match"
1014 else:
1015 form1 = EditPasswordForm()
1016 return render_to_response('researcher/edit-res-password.html',{'form1':form1,
1017 'form2':form2,
1018 'form3':form3,
1019 'form4':form4,
1020 'error_msg':error_msg,
1021 'conformation_researcher':conformation_researcher},
1022 context_instance=RequestContext(request))
1023 else:
1024 return redirect("/logout/")
1025
1026
1027@login_required
1028def researcher_education(request):
1029 ''' Edit Researcher Education View '''
1030
1031 dashboard_type = "buyer"
1032 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
1033 role_users=Userroles.objects.filter(user_id=request.user.id)
1034 role_user=None
1035 for user in role_users:
1036 role_user=user.role_id
1037 if dashboard_type == "buyer" and role_user == 1:
1038 conformation_researcher="researcher"
1039 form1 = EditPasswordForm()
1040 form2 = ResearcherEmploymentForm()
1041 form3 = ResearcherEducationForm()
1042 form4 = PublicationsForm()
1043 education_info=Researcher_emplyment.objects.filter(
1044 user_id=request.user.id).order_by('id').reverse()
1045 education_info3=Researcher_education.objects.filter(user_id=request.user.id).order_by('id').reverse()
1046
1047 paginator = Paginator(education_info,3)
1048 paginator1 = Paginator(education_info3,3)
1049 page = request.GET.get('page')
1050 try:
1051 contacts = paginator.page(page)
1052 contacts1 = paginator1.page(page)
1053 except PageNotAnInteger:
1054 # If page is not an integer, deliver first page.
1055 contacts = paginator.page(1)
1056 contacts1 = paginator1.page(1)
1057 except EmptyPage:
1058 # If page is out of range (e.g. 9999), deliver last page of results.
1059 contacts = paginator.page(paginator.num_pages)
1060 contacts1 = paginator1.page(paginator1.num_pages)
1061 return render_to_response('researcher/new_res_education.html',{'education_info3':education_info3,
1062 'contacts1':contacts1,'conformation_researcher':conformation_researcher,
1063 'education_info':education_info, 'contacts':contacts,
1064 'form1':form1, 'form2':form2, 'form3':form3,'form4':form4,
1065 },
1066 context_instance=RequestContext(request))
1067 else:
1068 return redirect("/logout/")
1069
1070@login_required
1071def add_degree(request):
1072 ''' Add degree for Researcher Profile View '''
1073
1074 dashboard_type = "buyer"
1075 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
1076 role_users=Userroles.objects.filter(user_id=request.user.id)
1077 role_user=None
1078 for user in role_users:
1079 role_user=user.role_id
1080 if dashboard_type == "buyer" and role_user == 1:
1081 conformation_researcher="researcher"
1082 error_msg=""
1083 researchr_info=Users.objects.filter(user_id=request.user.id)
1084 email=""
1085 fname=""
1086 lname=""
1087 org_name=""
1088 phone=""
1089 logo=""
1090 user_desc=""
1091 model_pic=""
1092 username=fname+lname
1093 researcher_logo=""
1094 res_logo =Profilepic.objects.filter(
1095 user_id=request.user.id)
1096 for res in res_logo:
1097 researcher_logo=res.model_pic
1098 for res in researchr_info:
1099 email=res.email
1100 fname=res.fname
1101 lname=res.lname
1102 org_name=res.name_org
1103 phone=res.phone
1104 description =Researcher_more_info.objects.filter(user_id=request.user.id)
1105 for desc in description:
1106 user_desc=desc.desc
1107 education_info=Researcher_emplyment.objects.filter(
1108 user_id=request.user.id).order_by('id').reverse()
1109 education_info3=Researcher_education.objects.filter(user_id=request.user.id).order_by('id').reverse()
1110 publications_data =Researcher_publications.objects.filter(
1111 user_id=request.user.id).order_by('id').reverse()
1112
1113 paginator = Paginator(education_info,3)
1114 paginator1 = Paginator(education_info3,3)
1115 paginator2 = Paginator(publications_data,3)
1116 page = request.GET.get('page')
1117 try:
1118 contacts = paginator.page(page)
1119 contacts1 = paginator1.page(page)
1120 contacts2 = paginator2.page(page)
1121 except PageNotAnInteger:
1122 # If page is not an integer, deliver first page.
1123 contacts = paginator.page(1)
1124 contacts1 = paginator1.page(1)
1125 contacts2 = paginator2.page(1)
1126 except EmptyPage:
1127 # If page is out of range (e.g. 9999), deliver last page of results.
1128 contacts = paginator.page(paginator.num_pages)
1129 contacts1 = paginator1.page(paginator1.num_pages)
1130 contacts2 = paginator2.page(paginator2.num_pages)
1131
1132 form1 = EditPasswordForm()
1133 form2 = ResearcherEmploymentForm()
1134 form3 = ResearcherEducationForm()
1135 form4 = PublicationsForm()
1136
1137 ''' Edit Basics Form '''
1138
1139 if request.method == 'POST':
1140 form = EditResearcherForm(request.POST,request.FILES)
1141 if form.is_valid():
1142 desc = request.POST.get('Desc')
1143 mail_id=request.POST.get('email')
1144 name1=request.POST.get('first_name')
1145 name2=request.POST.get('last_name')
1146 orgname=request.POST.get('companey')
1147 mobile=request.POST.get('phone_number')
1148 publication=request.POST.get('publications')
1149
1150 model_pic = form.cleaned_data['image']
1151 fullname=name1+name2
1152 User.objects.filter(id=request.user.id).update(email=mail_id,
1153 username=fullname)
1154 Users.objects.filter(user_id=request.user.id).update(
1155 email=mail_id,
1156 fname=name1,
1157 lname=name2,
1158 name_org=orgname,
1159 phone=mobile,
1160 username=fullname
1161 )
1162
1163 if model_pic:
1164 Profilepic.objects.filter(user_id=request.user.id).delete()
1165 Profilepic(user_id=request.user.id,model_pic=model_pic).save()
1166 logo=Profilepic.objects.get(user_id=request.user.id).model_pic
1167
1168 messages.success(request, (u"Your profile updated succesfully"))
1169 return redirect("/buyer/edit/basics/")
1170
1171
1172 ''' Edit education form '''
1173
1174 if request.method == 'POST':
1175 form3 = ResearcherEducationForm(request.POST)
1176 study_end=""
1177 study_checked=""
1178 if form3.is_valid():
1179 institute = request.POST.get('institute')
1180 degree = request.POST.get('degree')
1181 field_study = request.POST.get('field_study')
1182 notes = request.POST.get('notes')
1183 study_start=request.POST.get('study_start')
1184 study_end=request.POST.get('study_end')
1185 study_checked=request.POST.get('study_checked')
1186 if study_end and not(study_start):
1187 error_msg="Please select date started field"
1188
1189 else:
1190 if study_checked:
1191 Researcher_education(user_id=request.user.id,institute=institute,
1192 degree=degree,field_study=field_study,notes=notes,
1193 study_start=study_start,study_stop=study_end,
1194 study_continue="continuing"
1195 ).save()
1196 messages.success(request, (u"Education record was successfully created."))
1197 return redirect("/buyer/edit/education")
1198
1199 else:
1200 if study_start and study_end:
1201 Researcher_education(user_id=request.user.id,institute=institute,
1202 degree=degree,field_study=field_study,notes=notes,
1203 study_start=study_start,study_stop=study_end,
1204 ).save()
1205 messages.success(request, (u"Education record was successfully created."))
1206 return redirect("/buyer/edit/education")
1207
1208 else:
1209 error_msg="Please select date ended field"
1210
1211 else:
1212 form3 = ResearcherEducationForm()
1213
1214 return render_to_response('researcher/add-res-education.html',{'form3':form3,
1215 'form1':form1,
1216 'form2':form2,
1217 'form4':form4,
1218 'email':email,
1219 'fname':fname,
1220 'lname':lname,
1221 'org_name':org_name,
1222 'phone':phone,
1223 'user_desc':user_desc,
1224 'researcher_logo':researcher_logo,
1225 'education_info':education_info,
1226 'education_info3':education_info3,
1227 'contacts':contacts,
1228 'contacts1':contacts1,
1229 'contacts2':contacts2,
1230 'conformation_researcher':conformation_researcher,'error_msg':error_msg
1231 },
1232 context_instance=RequestContext(request))
1233 else:
1234 return redirect("/logout/")
1235
1236
1237@login_required
1238def edit_add_degree(request,degree_id):
1239 ''' Edit Researcher Degree View '''
1240
1241 dashboard_type = "buyer"
1242 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
1243 role_users=Userroles.objects.filter(user_id=request.user.id)
1244 role_user=None
1245 for user in role_users:
1246 role_user=user.role_id
1247 if dashboard_type == "buyer" and role_user == 1:
1248 conformation_researcher="researcher"
1249 error_msg=""
1250
1251 form1 = EditPasswordForm()
1252 form2 = ResearcherEmploymentForm()
1253 form3 = ResearcherEducationForm()
1254 form4 = PublicationsForm()
1255
1256
1257 education_info=Researcher_emplyment.objects.filter(
1258 user_id=request.user.id).order_by('id').reverse()
1259
1260 education_info3=Researcher_education.objects.filter(id=degree_id)
1261
1262 paginator = Paginator(education_info,3)
1263 paginator1 = Paginator(education_info3,3)
1264 page = request.GET.get('page')
1265 try:
1266 contacts = paginator.page(page)
1267 contacts1 = paginator1.page(page)
1268 except PageNotAnInteger:
1269 # If page is not an integer, deliver first page.
1270 contacts = paginator.page(1)
1271 contacts1 = paginator1.page(1)
1272 except EmptyPage:
1273 # If page is out of range (e.g. 9999), deliver last page of results.
1274 contacts = paginator.page(paginator.num_pages)
1275 contacts1 = paginator1.page(paginator1.num_pages)
1276 if request.method == 'POST':
1277 form3 = ResearcherEducationForm(request.POST)
1278 study_end=""
1279 study_checked=""
1280 study_start=""
1281 if form3.is_valid():
1282 institute = request.POST.get('institute')
1283 degree = request.POST.get('degree')
1284 field_study = request.POST.get('field_study')
1285 notes = request.POST.get('notes')
1286 study_start=request.POST.get('study_start')
1287 study_end=request.POST.get('study_end')
1288 study_checked=request.POST.get('study_checked')
1289
1290 if study_end and not(study_start):
1291 error_msg="Please select date started field"
1292 else:
1293 if study_checked:
1294 Researcher_education.objects.filter(user_id=request.user.id,id =degree_id
1295 ).update(institute=institute,
1296 degree=degree,field_study=field_study,notes=notes,
1297 study_start=study_start,study_stop=study_end,
1298 )
1299
1300 messages.success(request, (u"Education record was successfully created."))
1301 return redirect("/buyer/edit/education")
1302
1303 else:
1304 if study_start and study_end:
1305
1306 Researcher_education.objects.filter(user_id=request.user.id,id =degree_id
1307 ).update(institute=institute,
1308 degree=degree,field_study=field_study,notes=notes,
1309 study_start=study_start,study_stop=study_end,
1310 )
1311
1312 messages.success(request, (u"Education record was successfully updated."))
1313 return redirect("/buyer/edit/education")
1314
1315 else:
1316 error_msg="Please select date ended field"
1317
1318 else:
1319 form3 = ResearcherEducationForm()
1320 return render_to_response('researcher/edit-addeducation.html',{'form2':form2,
1321 'form1':form1, 'form3':form3, 'form4':form4,
1322 'conformation_researcher':conformation_researcher,
1323 'education_info3':education_info3,
1324 'contacts1':contacts1,
1325 'education_info':education_info,
1326 'contacts':contacts,
1327 'error_msg':error_msg},
1328 context_instance=RequestContext(request))
1329 else:
1330 return redirect("/logout/")
1331
1332@login_required
1333def delete_degree(request,degree_id):
1334 ''' Delete Degree of researcher View '''
1335
1336 dashboard_type = "buyer"
1337 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
1338 role_users=Userroles.objects.filter(user_id=request.user.id)
1339 role_user=None
1340 for user in role_users:
1341 role_user=user.role_id
1342 if dashboard_type == "buyer" and role_user == 1:
1343 conformation_researcher="researcher"
1344 success_msg ="Your Record deleted successfully"
1345 conformation_researcher="researcher"
1346 delete_education=Researcher_education.objects.filter(id=degree_id).delete()
1347 messages.success(request, (u"Education record was successfully deleted."))
1348 return redirect("/buyer/edit/education",msg=success_msg)
1349 else:
1350 return redirect("/logout/")
1351
1352
1353
1354@login_required
1355def publications(request):
1356 ''' Researcher Publications View '''
1357
1358 dashboard_type = "buyer"
1359 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
1360 role_users=Userroles.objects.filter(user_id=request.user.id)
1361 role_user=None
1362 for user in role_users:
1363 role_user=user.role_id
1364 if dashboard_type == "buyer" and role_user == 1:
1365 conformation_researcher="researcher"
1366 email=""
1367 fname=""
1368 lname=""
1369 org_name=""
1370 phone=""
1371 logo=""
1372 user_desc=""
1373 model_pic=""
1374 username=fname+lname
1375 researcher_logo=""
1376
1377 researchr_info=Users.objects.filter(user_id=request.user.id)
1378 res_logo =Profilepic.objects.filter(
1379 user_id=request.user.id)
1380 for res in res_logo:
1381 researcher_logo=res.model_pic
1382 for res in researchr_info:
1383 email=res.email
1384 fname=res.fname
1385 lname=res.lname
1386 org_name=res.name_org
1387 phone=res.phone
1388 description =Researcher_more_info.objects.filter(user_id=request.user.id)
1389 for desc in description:
1390 user_desc=desc.desc
1391
1392 if request.method == 'POST':
1393 form = EditResearcherForm(request.POST,request.FILES)
1394 if form.is_valid():
1395 desc = request.POST.get('Desc')
1396 mail_id=request.POST.get('email')
1397 name1=request.POST.get('first_name')
1398 name2=request.POST.get('last_name')
1399 orgname=request.POST.get('companey')
1400 mobile=request.POST.get('phone_number')
1401 publication=request.POST.get('publications')
1402 model_pic = form.cleaned_data['image']
1403 fullname=name1+name2
1404 User.objects.filter(id=request.user.id).update(email=mail_id,
1405 username=fullname)
1406 Users.objects.filter(user_id=request.user.id).update(
1407 email=mail_id,
1408 fname=name1,
1409 lname=name2,
1410 name_org=orgname,
1411 phone=mobile,
1412 username=fullname
1413 )
1414
1415 if model_pic:
1416 Profilepic.objects.filter(user_id=request.user.id).delete()
1417 Profilepic(user_id=request.user.id,model_pic=model_pic).save()
1418 logo=Profilepic.objects.get(user_id=request.user.id).model_pic
1419
1420 messages.success(request, (u"Your profile updated succesfully"))
1421 return redirect("/buyer/edit/basics/")
1422
1423 form1 = EditPasswordForm()
1424 form2 = ResearcherEmploymentForm()
1425 form3 = ResearcherEducationForm()
1426 form4 = PublicationsForm()
1427
1428 education_info=Researcher_emplyment.objects.filter(
1429 user_id=request.user.id).order_by('id').reverse()
1430 education_info3=Researcher_education.objects.filter(user_id=request.user.id).order_by('id').reverse()
1431 publications_data =Researcher_publications.objects.filter(
1432 user_id=request.user.id).order_by('id').reverse()
1433
1434 paginator = Paginator(education_info,3)
1435 paginator1 = Paginator(education_info3,3)
1436 paginator2 = Paginator(publications_data,3)
1437 page = request.GET.get('page')
1438 try:
1439 contacts = paginator.page(page)
1440 contacts1 = paginator1.page(page)
1441 contacts2 = paginator2.page(page)
1442
1443 except PageNotAnInteger:
1444 # If page is not an integer, deliver first page.
1445 contacts = paginator.page(1)
1446 contacts1 = paginator1.page(1)
1447 contacts2 = paginator2.page(1)
1448
1449 except EmptyPage:
1450 # If page is out of range (e.g. 9999), deliver last page of results.
1451 contacts = paginator.page(paginator.num_pages)
1452 contacts1 = paginator1.page(paginator1.num_pages)
1453 contacts2 = paginator2.page(paginator2.num_pages)
1454
1455 return render_to_response('researcher/new_res_publications.html',
1456 {';form4':form4,
1457 'form1':form1,'form2':form2,'form3':form3,
1458 'email':email,
1459 'fname':fname,
1460 'lname':lname,
1461 'org_name':org_name,
1462 'phone':phone,
1463 'user_desc':user_desc,
1464 'researcher_logo':researcher_logo,
1465 'contacts':contacts,
1466 'contacts1':contacts1,
1467 'contacts2':contacts2,
1468 'education_info':education_info,
1469 'education_info3':education_info3,
1470 'conformation_researcher':conformation_researcher},
1471 context_instance=RequestContext(request))
1472 else:
1473 return redirect("/logout/")
1474
1475
1476@login_required
1477def add_publications(request):
1478 ''' Researcher Adding publications View '''
1479
1480 dashboard_type = "buyer"
1481 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
1482 role_users=Userroles.objects.filter(user_id=request.user.id)
1483 role_user=None
1484 for user in role_users:
1485 role_user=user.role_id
1486 if dashboard_type == "buyer" and role_user == 1:
1487 conformation_researcher="researcher"
1488 result=""
1489 contacts_r=""
1490 error_msg=""
1491 form1 = EditPasswordForm()
1492 form2 = ResearcherEmploymentForm()
1493 form3 = ResearcherEducationForm()
1494 form4 = PublicationsForm()
1495
1496 education_info=Researcher_emplyment.objects.filter(
1497 user_id=request.user.id).order_by('id').reverse()
1498 education_info3=Researcher_education.objects.filter(user_id=request.user.id).order_by('id').reverse()
1499 publications_data =Researcher_publications.objects.filter(
1500 user_id=request.user.id).order_by('id').reverse()
1501
1502 paginator = Paginator(education_info,3)
1503 paginator1 = Paginator(education_info3,3)
1504 paginator2 = Paginator(publications_data,3)
1505 page = request.GET.get('page')
1506 try:
1507 contacts = paginator.page(page)
1508 contacts1 = paginator1.page(page)
1509 contacts2 = paginator2.page(page)
1510
1511 except PageNotAnInteger:
1512 # If page is not an integer, deliver first page.
1513 contacts = paginator.page(1)
1514 contacts1 = paginator1.page(1)
1515 contacts2 = paginator2.page(1)
1516
1517 except EmptyPage:
1518 # If page is out of range (e.g. 9999), deliver last page of results.
1519 contacts = paginator.page(paginator.num_pages)
1520 contacts1 = paginator1.page(paginator1.num_pages)
1521 contacts2 = paginator2.page(paginator2.num_pages)
1522
1523 email=""
1524 fname=""
1525 lname=""
1526 org_name=""
1527 phone=""
1528 logo=""
1529 user_desc=""
1530 model_pic=""
1531 username=fname+lname
1532 researcher_logo=""
1533
1534 researchr_info=Users.objects.filter(user_id=request.user.id)
1535 res_logo =Profilepic.objects.filter(
1536 user_id=request.user.id)
1537 for res in res_logo:
1538 researcher_logo=res.model_pic
1539 for res in researchr_info:
1540 email=res.email
1541 fname=res.fname
1542 lname=res.lname
1543 org_name=res.name_org
1544 phone=res.phone
1545 description =Researcher_more_info.objects.filter(user_id=request.user.id)
1546 for desc in description:
1547 user_desc=desc.desc
1548
1549 if request.method == 'POST':
1550 form = EditResearcherForm(request.POST,request.FILES)
1551 if form.is_valid():
1552 desc = request.POST.get('Desc')
1553 mail_id=request.POST.get('email')
1554 name1=request.POST.get('first_name')
1555 name2=request.POST.get('last_name')
1556 orgname=request.POST.get('companey')
1557 mobile=request.POST.get('phone_number')
1558 publication=request.POST.get('publications')
1559 model_pic = form.cleaned_data['image']
1560 fullname=name1+name2
1561 User.objects.filter(id=request.user.id).update(email=mail_id,
1562 username=fullname)
1563 Users.objects.filter(user_id=request.user.id).update(
1564 email=mail_id,
1565 fname=name1,
1566 lname=name2,
1567 name_org=orgname,
1568 phone=mobile,
1569 username=fullname
1570 )
1571 if model_pic:
1572 Profilepic.objects.filter(user_id=request.user.id).delete()
1573 Profilepic(user_id=request.user.id,model_pic=model_pic).save()
1574 logo=Profilepic.objects.get(user_id=request.user.id).model_pic
1575
1576 messages.success(request, (u"Your profile updated succesfully"))
1577 return redirect("/buyer/edit/basics/")
1578
1579 if request.method == 'POST':
1580 form4 = PublicationsForm(request.POST)
1581 if form4.is_valid():
1582 publications = request.POST.get('publications')
1583 result = Publications.objects.filter(title__contains=publications)
1584 if result:
1585 paginator = Paginator(result,3)
1586 page = request.GET.get('page')
1587 try:
1588 contacts_r = paginator.page(page)
1589 except PageNotAnInteger:
1590 contacts_r = paginator.page(1)
1591 except EmptyPage:
1592 contacts_r = paginator.page(paginator.num_pages)
1593 else:
1594 error_msg="Sorry no records available"
1595
1596 return render_to_response('researcher/add-publications.html',{'form4':form4,
1597 'form1':form1, 'form2':form2, 'form3':form3,
1598 'email':email,'fname':fname,'lname':lname,'org_name':org_name,
1599 'phone':phone, 'user_desc':user_desc,'researcher_logo':researcher_logo,
1600 'contacts':contacts,'contacts1':contacts1,'contacts2':contacts2,
1601 'education_info':education_info,'education_info3':education_info3,
1602 'conformation_researcher':conformation_researcher,
1603 'contacts_r':contacts_r,'error_msg':error_msg},
1604 context_instance=RequestContext(request))
1605 else:
1606 form4 = PublicationsForm()
1607 return render_to_response('researcher/add-publications.html',{'form4':form4,
1608 'form1':form1,
1609 'form2':form2,
1610 'form3':form3,
1611 'result':result,
1612 'email':email,
1613 'fname':fname,
1614 'lname':lname,
1615 'org_name':org_name,
1616 'phone':phone,
1617 'user_desc':user_desc,
1618 'researcher_logo':researcher_logo,
1619 'contacts':contacts,'contacts1':contacts1,'contacts2':contacts2,
1620 'education_info':education_info,'education_info3':education_info3,
1621 'contacts_r':contacts_r,'conformation_researcher':conformation_researcher},
1622 context_instance=RequestContext(request))
1623 else:
1624 return redirect("/logout/")
1625
1626
1627@login_required
1628def store_publications(request,degree_id):
1629
1630 dashboard_type = "buyer"
1631 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
1632 role_users=Userroles.objects.filter(user_id=request.user.id)
1633 role_user=None
1634 for user in role_users:
1635 role_user=user.role_id
1636 if dashboard_type == "buyer" and role_user == 1:
1637 conformation_researcher="researcher"
1638 publications = Publications.objects.filter(id=degree_id)
1639 for pub in publications:
1640 title=pub.title
1641 name=pub.scientist_name
1642 usedfor=pub.used_for
1643 Researcher_publications(user_id=request.user.id,title=title,
1644 scientist_name=name,used_for=usedfor).save()
1645 return redirect("/buyer/edit/publications/")
1646 else:
1647 return redirect("/logout/")
1648
1649@login_required
1650def researcher_employment(request):
1651 ''' Researcher Employment View '''
1652
1653 dashboard_type = "buyer"
1654 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
1655 role_users=Userroles.objects.filter(user_id=request.user.id)
1656 role_user=None
1657 for user in role_users:
1658 role_user=user.role_id
1659 if dashboard_type == "buyer" and role_user == 1:
1660 conformation_researcher="researcher"
1661 form1 = EditPasswordForm()
1662 form2 = ResearcherEmploymentForm()
1663 form3 = ResearcherEducationForm()
1664 form4 = PublicationsForm()
1665 education_info=Researcher_emplyment.objects.filter(
1666 user_id=request.user.id).order_by('id').reverse()
1667 paginator = Paginator(education_info,3)
1668 page = request.GET.get('page')
1669 try:
1670 contacts = paginator.page(page)
1671 except PageNotAnInteger:
1672 # If page is not an integer, deliver first page.
1673 contacts = paginator.page(1)
1674 except EmptyPage:
1675 # If page is out of range (e.g. 9999), deliver last page of results.
1676 contacts = paginator.page(paginator.num_pages)
1677
1678 return render_to_response('researcher/new_res_employment.html',{'education_info':education_info,
1679 'contacts':contacts,'conformation_researcher':conformation_researcher,
1680 'form1':form1,'form2':form2,'form3':form3,'form4':form4,
1681 },
1682 context_instance=RequestContext(request))
1683 else:
1684 return redirect("/logout/")
1685
1686
1687@login_required
1688def researcher_add_employment(request):
1689 ''' Researcher adding employment View '''
1690
1691 dashboard_type = "buyer"
1692 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
1693 role_users=Userroles.objects.filter(user_id=request.user.id)
1694 role_user=None
1695 for user in role_users:
1696 role_user=user.role_id
1697 if dashboard_type == "buyer" and role_user == 1:
1698 conformation_researcher="researcher"
1699 study_checked=""
1700 error_msg=""
1701 researchr_info=Users.objects.filter(user_id=request.user.id)
1702 email=""
1703 fname=""
1704 lname=""
1705 org_name=""
1706 phone=""
1707 logo=""
1708 user_desc=""
1709 model_pic=""
1710 username=fname+lname
1711 researcher_logo=""
1712 res_logo =Profilepic.objects.filter(
1713 user_id=request.user.id)
1714 for res in res_logo:
1715 researcher_logo=res.model_pic
1716 for res in researchr_info:
1717 email=res.email
1718 fname=res.fname
1719 lname=res.lname
1720 org_name=res.name_org
1721 phone=res.phone
1722 description =Researcher_more_info.objects.filter(user_id=request.user.id)
1723 for desc in description:
1724 user_desc=desc.desc
1725
1726 education_info=Researcher_emplyment.objects.filter(
1727 user_id=request.user.id).order_by('id').reverse()
1728 form1 = EditPasswordForm()
1729 form2 = ResearcherEmploymentForm()
1730 form3 = ResearcherEducationForm()
1731 form4 = PublicationsForm()
1732
1733 education_info3=Researcher_education.objects.filter(user_id=request.user.id).order_by('id').reverse()
1734
1735 publications_data =Researcher_publications.objects.filter(
1736 user_id=request.user.id).order_by('id').reverse()
1737
1738 paginator = Paginator(education_info,3)
1739 paginator1 = Paginator(education_info3,3)
1740 paginator2 = Paginator(publications_data,3)
1741 page = request.GET.get('page')
1742 try:
1743 contacts = paginator.page(page)
1744 contacts1 = paginator1.page(page)
1745 contacts2 = paginator2.page(page)
1746 except PageNotAnInteger:
1747 # If page is not an integer, deliver first page.
1748 contacts = paginator.page(1)
1749 contacts1 = paginator1.page(1)
1750 contacts2 = paginator2.page(1)
1751 except EmptyPage:
1752 # If page is out of range (e.g. 9999), deliver last page of results.
1753 contacts = paginator.page(paginator.num_pages)
1754 contacts1 = paginator1.page(paginator1.num_pages)
1755 contacts2 = paginator2.page(paginator2.num_pages)
1756
1757
1758 ''' Edit Basics Form '''
1759
1760 if request.method == 'POST':
1761 form = EditResearcherForm(request.POST,request.FILES)
1762 if form.is_valid():
1763 desc = request.POST.get('Desc')
1764 mail_id=request.POST.get('email')
1765 name1=request.POST.get('first_name')
1766 name2=request.POST.get('last_name')
1767 orgname=request.POST.get('companey')
1768 mobile=request.POST.get('phone_number')
1769 publication=request.POST.get('publications')
1770
1771 model_pic = form.cleaned_data['image']
1772 fullname=name1+name2
1773 User.objects.filter(id=request.user.id).update(email=mail_id,
1774 username=fullname)
1775 Users.objects.filter(user_id=request.user.id).update(
1776 email=mail_id,
1777 fname=name1,
1778 lname=name2,
1779 name_org=orgname,
1780 phone=mobile,
1781 username=fullname
1782 )
1783
1784 if model_pic:
1785 Profilepic.objects.filter(user_id=request.user.id).delete()
1786 Profilepic(user_id=request.user.id,model_pic=model_pic).save()
1787 logo=Profilepic.objects.get(user_id=request.user.id).model_pic
1788
1789 messages.success(request, (u"Your profile updated succesfully"))
1790 return redirect("/buyer/edit/basics/")
1791
1792 if request.method == 'POST':
1793 form2 =ResearcherEmploymentForm(request.POST)
1794 study_end=""
1795 study_checked=""
1796 if form2.is_valid():
1797 employer = request.POST.get('employer')
1798 title = request.POST.get('title')
1799 notes = request.POST.get('notes')
1800 study_start=request.POST.get('study_start')
1801 study_end=request.POST.get('study_end')
1802 study_checked=request.POST.get('study_checked')
1803
1804 if study_end and not(study_start):
1805 error_msg="Please select year started field"
1806
1807 else:
1808 if study_checked:
1809 Researcher_emplyment(user_id=request.user.id,employer=employer,
1810 title=title,
1811 notes=notes,study_start=study_start,study_stop=study_end,
1812 study_continue=study_checked).save()
1813
1814 messages.success(request, (u"Employment record was successfully created."))
1815 return redirect("/buyer/edit/employment/")
1816
1817
1818 else:
1819 if study_start and study_end:
1820 study_checked="no value"
1821 Researcher_emplyment(user_id=request.user.id,employer=employer,
1822 title=title,
1823 notes=notes,study_start=study_start,study_stop=study_end,
1824 study_continue="continuing").save()
1825
1826 messages.success(request, (u"Employment record was successfully created."))
1827 return redirect("/buyer/edit/employment/")
1828
1829 else:
1830 error_msg="Please select year ended field"
1831
1832 else:
1833 form2 = ResearcherEmploymentForm()
1834 return render_to_response('researcher/add-res-employment.html',{'form2':form2,
1835 'form1':form1,
1836 'form3':form3,
1837 'form4':form4,
1838 'email':email,
1839 'fname':fname,
1840 'lname':lname,
1841 'org_name':org_name,
1842 'phone':phone,
1843 'user_desc':user_desc,
1844 'researcher_logo':researcher_logo,
1845 'education_info':education_info,
1846 'conformation_researcher':conformation_researcher,
1847 'education_info3':education_info3,
1848 'contacts1':contacts1,
1849 'contacts':contacts,
1850 'contacts2':contacts2,
1851 'error_msg':error_msg
1852 },
1853 context_instance=RequestContext(request))
1854
1855 else:
1856 return redirect("/logout/")
1857
1858@login_required
1859def edit_add_employment(request,emp_id):
1860
1861 dashboard_type = "buyer"
1862 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
1863 role_users=Userroles.objects.filter(user_id=request.user.id)
1864 role_user=None
1865 for user in role_users:
1866 role_user=user.role_id
1867 if dashboard_type == "buyer" and role_user == 1:
1868 conformation_researcher="researcher"
1869 error_msg=""
1870 form1 = EditPasswordForm()
1871 form2 = ResearcherEmploymentForm()
1872 form3 = ResearcherEducationForm()
1873 form4 = PublicationsForm()
1874 education_info=Researcher_emplyment.objects.filter(id=emp_id)
1875 education_info3=Researcher_education.objects.filter(user_id=request.user.id).order_by('id').reverse()
1876
1877 paginator1 = Paginator(education_info3,3)
1878 page = request.GET.get('page')
1879 try:
1880 # contacts = paginator.page(page)
1881 contacts1 = paginator1.page(page)
1882 except PageNotAnInteger:
1883 # If page is not an integer, deliver first page.
1884 # contacts = paginator.page(1)
1885 contacts1 = paginator1.page(1)
1886 except EmptyPage:
1887 # If page is out of range (e.g. 9999), deliver last page of results.
1888 # contacts = paginator.page(paginator.num_pages)
1889 contacts1 = paginator1.page(paginator1.num_pages)
1890
1891 if request.method == 'POST':
1892 form2 = ResearcherEmploymentForm(request.POST)
1893 study_end=""
1894 study_checked=""
1895 if form2.is_valid():
1896 employer = request.POST.get('employer')
1897 title = request.POST.get('title')
1898 notes = request.POST.get('notes')
1899 study_start=request.POST.get('study_start')
1900 study_end=request.POST.get('study_end')
1901 study_checked=request.POST.get('study_checked')
1902 month_start=request.POST.get('month_start')
1903 month_end=request.POST.get('month_end')
1904 if study_end and not(study_start):
1905 error_msg="Please select year started field"
1906
1907 else:
1908 if study_checked:
1909 Researcher_emplyment.objects.filter(user_id=request.user.id,
1910 id =emp_id).update(employer=employer,title=title,notes=notes,
1911 study_start=study_start,study_stop=study_end,
1912 study_continue="continuing",month_start=month_start,
1913 month_stop=month_end
1914 )
1915 messages.success(request, (u"Employment record was successfully updated."))
1916 return redirect("/buyer/edit/employment")
1917
1918 else:
1919 if study_start and study_end:
1920 study_checked="no value"
1921 Researcher_emplyment.objects.filter(user_id=request.user.id,
1922 id =emp_id).update(employer=employer,
1923 title=title,
1924 notes=notes,study_start=study_start,study_stop=study_end,
1925 study_continue="no-value",month_start=month_start,
1926 month_stop=month_end
1927 )
1928 messages.success(request, (u"Employment record was successfully updated."))
1929 return redirect("/buyer/edit/employment")
1930 else:
1931 error_msg="Please select year ended field"
1932 else:
1933 form2 = ResearcherEmploymentForm()
1934 return render_to_response('researcher/edit-add-employnment.html',{'form2':form2,
1935 'form1':form1, 'form3':form3, 'form4':form4,
1936 'conformation_researcher':conformation_researcher,
1937 'education_info':education_info,
1938 'education_info3':education_info3,
1939 'contacts1':contacts1,
1940 'error_msg':error_msg},
1941 context_instance=RequestContext(request))
1942 else:
1943 return redirect("/logout/")
1944
1945@login_required
1946def delete_employment(request,emp_id):
1947
1948 dashboard_type = "buyer"
1949 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
1950 role_users=Userroles.objects.filter(user_id=request.user.id)
1951 role_user=None
1952 for user in role_users:
1953 role_user=user.role_id
1954 if dashboard_type == "buyer" and role_user == 1:
1955 conformation_researcher="researcher"
1956 success_msg ="Your Record deleted successfully"
1957 conformation_researcher="researcher"
1958 delete_education=Researcher_emplyment.objects.filter(id=emp_id).delete()
1959 messages.success(request, (u"Employment record was successfully deleted."))
1960 return redirect("/buyer/edit/employment/",msg=success_msg)
1961 else:
1962 return redirect("/logout/")
1963
1964@login_required
1965def delete_publications(request,emp_id):
1966
1967 dashboard_type = "buyer"
1968 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
1969 role_users=Userroles.objects.filter(user_id=request.user.id)
1970 role_user=None
1971 for user in role_users:
1972 role_user=user.role_id
1973 if dashboard_type == "buyer" and role_user == 1:
1974 conformation_researcher="researcher"
1975 delete_education=Researcher_publications.objects.filter(id=emp_id).delete()
1976 messages.success(request, (u"Publication record was successfully deleted."))
1977 return redirect("/buyer/edit/publications/")
1978 else:
1979 return redirect("/logout/")
1980
1981@login_required
1982def upload_profile_pic(request):
1983
1984 dashboard_type = "buyer"
1985 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
1986 role_users=Userroles.objects.filter(user_id=request.user.id)
1987 role_user=None
1988 for user in role_users:
1989 role_user=user.role_id
1990 if dashboard_type == "buyer" and role_user == 1:
1991 conformation_researcher="researcher"
1992 researchr_info=Users.objects.filter(user_id=request.user.id)
1993 email=""
1994 fname=""
1995 lname=""
1996 org_name=""
1997 phone=""
1998 username=fname+lname
1999 for res in researchr_info:
2000 email=res.email
2001 fname=res.fname
2002 lname=res.lname
2003 org_name=res.name_org
2004 phone=res.phone
2005
2006 if request.method == 'POST':
2007 form = ImageUploadForm(request.POST, request.FILES)
2008 if form.is_valid():
2009 desc = request.POST.get('Desc')
2010 mail_id=request.POST.get('email')
2011 name1=request.POST.get('first_name')
2012 name2=request.POST.get('last_name')
2013 orgname=request.POST.get('companey')
2014 mobile=request.POST.get('phone_number')
2015 publication=request.POST.get('publications')
2016 model_pic = form.cleaned_data['image']
2017 fullname=name1+name2
2018 User.objects.filter(id=request.user.id).update(email=mail_id,
2019 username=fullname)
2020 Users.objects.filter(user_id=request.user.id).update(
2021 email=mail_id,
2022 fname=name1,
2023 lname=name2,
2024 name_org=orgname,
2025 phone=mobile,
2026 username=fullname
2027 )
2028 Researcher_more_info.objects.filter(user_id=request.user.id).update(model_pic=model_pic)
2029 Profilepic(model_pic=model_pic).save()
2030 messages.success(request, (u"Your profile updated succesfully"))
2031 return redirect("/buyer/")
2032 else:
2033 form = ImageUploadForm()
2034
2035 return render_to_response('researcher/edit-researcher-basic.html',
2036 {'form':form,
2037 'email':email,
2038 'fname':fname,
2039 'lname':lname,
2040 'org_name':org_name,
2041 'phone':phone,
2042 'conformation_researcher':conformation_researcher,},
2043 context_instance=RequestContext(request))
2044
2045 else:
2046 return redirect("/logout/")
2047
2048
2049
2050def search_publications(request,degree_id):
2051 return render_to_response('researcher/publication-search-results.html',
2052 context_instance=RequestContext(request))
2053
2054
2055def image_upload(request):
2056 if request.method == 'POST':
2057
2058 form = UploadImage(request.POST,request.FILES)
2059 if form.is_valid():
2060 form.save()
2061 else:
2062 pass
2063 else:
2064 form=UploadImage()
2065 return render(request,'upload.html',{"form":form})
2066
2067def lab_list_all(request):
2068 return render(request,'store_front.html',{})
2069
2070from django.http import JsonResponse
2071def searching_labs(request):
2072 lab_result=[]
2073 lab_count=[]
2074 lab_value=Lab.objects.all()
2075 for lab in lab_value:
2076 lab_result.append(lab.title)
2077 return HttpResponse(lab_result)
2078
2079def search_result(request):
2080 ''' Search Results View '''
2081
2082 form=SearchingForm()
2083 expfilter=[]
2084 cityfilter=[]
2085 lab_name_filter=[]
2086 item = []
2087 title_search=[]
2088 caption_search=[]
2089 desc_search=[]
2090 search_results_list=[]
2091 lab_final_list=[]
2092 labservices_list=[]
2093 labservices_list_1=[]
2094 experiment_filter=LabServices.objects.all()
2095 for exp in experiment_filter:
2096 expfilter.append(exp.title)
2097
2098 labfilter=Lab.objects.all().distinct()
2099 for lab in labfilter:
2100 cityfilter.append(lab.country)
2101 lab_name_filter.append(lab.title)
2102 cityset= set(cityfilter)
2103 city_filter_list=list(cityset)
2104 conformation_researcher=""
2105 conformation_lab=""
2106 roll_name = Userroles.objects.filter(user_id=request.user.id)
2107 name = ""
2108 for roll in roll_name:
2109 name = roll.roll_name
2110 if name == "lab":
2111 conformation_lab="conformation_lab"
2112 elif name == "researcher":
2113 conformation_researcher="researcher"
2114 else:
2115 pass
2116 if request.method == 'POST':
2117 form = SearchingForm(request.POST)
2118 search_word = request.POST.get("search_word")
2119 request.session['text1'] =search_word
2120 lab_search_title=Lab.objects.filter(title__icontains=search_word)
2121 for tid in lab_search_title:
2122 search_results_list.append(tid.id)
2123 lab_search_caption=Lab.objects.filter(caption__icontains=search_word)
2124
2125 for cid in lab_search_caption:
2126 search_results_list.append(cid.id)
2127 lab_search_country=Lab.objects.filter(country__icontains=search_word)
2128 for dscid in lab_search_country:
2129 search_results_list.append(dscid.id)
2130 resultset=set(search_results_list)
2131 search_lab_resultset=list(set(search_results_list))
2132 request.session["total_searchlabs_id"]=search_lab_resultset
2133
2134 lab_country_lsit=list(set(search_results_list))
2135
2136 lab_countries_list=[]
2137
2138 countries=Lab.objects.filter(id__in=lab_country_lsit)
2139 country_list=[]
2140 for con in countries:
2141 country_list.append(con.country)
2142
2143 country_set=list(set(country_list))
2144 country_set_1=filter(None, country_set)
2145
2146 lab_final_list=[]
2147 for res in resultset:
2148 lab_list=[]
2149 lab_result=Lab.objects.filter(id=res)
2150 for l in lab_result:
2151 lab_list.append(l.title)
2152 lab_list.append(l.desc)
2153 lab_list.append(l.id)
2154 lab_final_list.append(lab_list)
2155
2156 lab_services_title=LabServices.objects.filter(title__icontains=search_word)
2157 labservices_list=[]
2158 for lab in lab_services_title:
2159 service_list=[]
2160 service_list.append(lab.title)
2161 service_list.append(lab.desc)
2162 labservices_list.append(service_list)
2163
2164 return render(request,'new_search.html',{'form':form,'lab_final_list':lab_final_list,
2165 'labservices_list':labservices_list,
2166 "conformation_researcher":conformation_researcher,
2167 "conformation_lab":conformation_lab,
2168 'expfilter':expfilter,
2169 'city_filter_list':city_filter_list,
2170 'lab_name_filter':lab_name_filter,
2171 'country_set_1':country_set_1})
2172 else:
2173 form=SearchingForm()
2174
2175 return render(request,'new_search.html',{'form':form,'lab_final_list':lab_final_list,
2176 'labservices_list':labservices_list,
2177 "conformation_researcher":conformation_researcher,
2178 "conformation_lab":conformation_lab,
2179 'expfilter':expfilter,
2180 'city_filter_list':city_filter_list,
2181 'lab_name_filter':lab_name_filter,
2182 })
2183
2184
2185def search_keywords(request):
2186 keywords_list=[]
2187
2188 keywords=Lab.objects.all()
2189 service_result=""
2190 lab_result=""
2191 for key in keywords:
2192 title=key.title
2193 caption=key.caption
2194 city=key.city
2195 keyword=title+','+caption+','+city
2196 Labkeywords(lab_keywords=keyword).save()
2197
2198 return HttpResponse("jgdhsgd")
2199
2200def dynamic_searching(request):
2201 records_list=[]
2202 records=Lab.objects.all()
2203 lab_services=LabServices.objects.all()
2204 for re in records:
2205 title=re.title
2206 addition=title+'*'
2207 records_list.append(addition)
2208 for lab in lab_services:
2209 title=lab.title
2210 addition=title+'*'
2211 records_list.append(addition)
2212 # print "$$$$$$$$$$$$$$$$"
2213 # print records_list
2214 # print "$$$$$$$$$$$$"
2215 return HttpResponse(records_list)
2216
2217
2218def demo_publications(request):
2219 title="The victorivirus Helminthosporium victoriae virus 190S is the primary cause of disease/hypovirulence in its natural host and a heterologous host."
2220 scientist_name="Havens WM"
2221 used_for="heterologous host"
2222
2223 for x in range(1,5):
2224 Publications(title=title,scientist_name=scientist_name,used_for=used_for).save()
2225 return HttpResponse("hiiiii")
2226
2227def dashboard(request):
2228 return render_to_response('new_researcher_dashboard.html',{},)
2229
2230
2231def search_filters(request):
2232 ''' Search Filters View '''
2233
2234 search_word=request.session.get('text1')
2235 search_results_list=[]
2236 search_results_list_checked=[]
2237 lab_final_list=[]
2238 all_filter_labs=[]
2239 all_filter_services=[]
2240 if request.GET:
2241 checkd_value_list=[]
2242 list_filter_labs = request.GET
2243 myDict = dict(list_filter_labs.iterlists())
2244
2245 for key,value in myDict.items():
2246 checkd_value_list=value
2247
2248 all_services=""
2249 all_lab=""
2250 all_ser_results_list=[]
2251 all_lab_results_list=[]
2252
2253 lab_search_title=Lab.objects.filter(title__icontains=search_word)
2254 for tid in lab_search_title:
2255 search_results_list.append(tid.id)
2256
2257 lab_search_title_filter=Lab.objects.filter(title__in=checkd_value_list)
2258 for tid in lab_search_title_filter:
2259 search_results_list_checked.append(tid.id)
2260
2261 lab_search_caption=Lab.objects.filter(caption__icontains=search_word)
2262 for cid in lab_search_caption:
2263 search_results_list.append(cid.id)
2264
2265 lab_search_caption_filter=Lab.objects.filter(caption__in=checkd_value_list)
2266 for cid in lab_search_caption_filter:
2267 search_results_list_checked.append(cid.id)
2268
2269 lab_search_country=Lab.objects.filter(country__icontains=search_word)
2270 for dscid in lab_search_country:
2271 search_results_list.append(dscid.id)
2272
2273 lab_search_country_filter=Lab.objects.filter(country__in=checkd_value_list)
2274 for dscid in lab_search_country_filter:
2275 search_results_list_checked.append(dscid.id)
2276
2277 resultset=list(set(search_results_list).intersection(search_results_list_checked))
2278
2279 for res in resultset:
2280 lab_list=[]
2281 lab_result=Lab.objects.filter(id=res)
2282 for l in lab_result:
2283 lab_list.append(l.title)
2284 lab_list.append(l.desc)
2285 lab_list.append(l.id)
2286 lab_final_list.append(lab_list)
2287
2288 labservices_list=[]
2289 service_list_checked=[]
2290 service_list_search=[]
2291 lab_services_title_filter=LabServices.objects.filter(title__in=checkd_value_list)
2292 for lab in lab_services_title_filter:
2293 service_list_checked.append(lab.id)
2294
2295 lab_services_title=LabServices.objects.filter(title__icontains=search_word)
2296 for lab in lab_services_title:
2297 service_list_search.append(lab.id)
2298
2299 service_final_list=[]
2300 all_filter_res=[]
2301 resultset_service=list(set(service_list_search).intersection(service_list_checked))
2302
2303 for res in resultset_service:
2304 lab_service_list=[]
2305 lab_result=LabServices.objects.filter(id=res)
2306 for l in lab_result:
2307 lab_service_list.append(l.title)
2308 lab_service_list.append(l.desc)
2309 service_final_list.append(lab_service_list)
2310
2311 for chk in checkd_value_list:
2312 if chk=="all-services":
2313 all_services=LabServices.objects.all()
2314 for all_ser in all_services:
2315 all_ser_results_list.append(all_ser.id)
2316
2317 elif chk=="all-labs":
2318 all_lab=Lab.objects.all()
2319 for lab in all_lab:
2320 all_lab_results_list.append(lab.id)
2321
2322 elif chk=="all-country":
2323 print 'all-country'
2324 else:
2325 pass
2326
2327 resultset_all_lab_filter=list(set(search_results_list).intersection(all_lab_results_list))
2328
2329 for res in resultset_all_lab_filter:
2330 lab_list=[]
2331 lab_result=Lab.objects.filter(id=res)
2332 for l in lab_result:
2333 lab_list.append(l.title)
2334 lab_list.append(l.desc)
2335 lab_list.append(l.id)
2336 all_filter_labs.append(lab_list)
2337
2338 resultset_all_service_filter=list(set(service_list_search).intersection(all_ser_results_list))
2339 for res in resultset_all_service_filter:
2340 lab_service_list=[]
2341 lab_result=LabServices.objects.filter(id=res)
2342 for l in lab_result:
2343 lab_service_list.append(l.title)
2344 lab_service_list.append(l.desc)
2345 all_filter_services.append(lab_service_list)
2346
2347 data="hai"
2348 else:
2349 lab_search_title=Lab.objects.filter(title__icontains=search_word)
2350 for tid in lab_search_title:
2351 search_results_list.append(tid.id)
2352 lab_search_caption=Lab.objects.filter(caption__icontains=search_word)
2353
2354 for cid in lab_search_caption:
2355 search_results_list.append(cid.id)
2356 lab_search_country=Lab.objects.filter(country__icontains=search_word)
2357 for dscid in lab_search_country:
2358 search_results_list.append(dscid.id)
2359 resultset=set(search_results_list)
2360
2361 service_final_list=[]
2362 for res in resultset:
2363 lab_list=[]
2364 lab_result=Lab.objects.filter(id=res)
2365 for l in lab_result:
2366 lab_list.append(l.title)
2367 lab_list.append(l.desc)
2368 lab_list.append(l.id)
2369 lab_final_list.append(lab_list)
2370 lab_services_title=LabServices.objects.filter(title__icontains=search_word)
2371 labservices_list=[]
2372 for lab in lab_services_title:
2373 service_list=[]
2374 service_list.append(lab.title)
2375 service_list.append(lab.desc)
2376 service_final_list.append(service_list)
2377 return render(request,'search_filters.html',
2378 {'service_final_list':service_final_list,
2379 'lab_final_list':lab_final_list,
2380 'all_filter_labs':all_filter_labs,
2381 'all_filter_services':all_filter_services,
2382 })
2383
2384
2385def store_front(request,store_id):
2386 conformation_lab="conformation_lab"
2387 lab_profle_info = Lab.objects.filter(id=store_id)
2388 lab_service_info =LabServices.objects.filter(lab_id=store_id)
2389 paginator = Paginator(lab_service_info,3)
2390 page = request.GET.get('page')
2391 try:
2392 contacts = paginator.page(page)
2393 except PageNotAnInteger:
2394 # If page is not an integer, deliver first page.
2395 contacts = paginator.page(1)
2396 except EmptyPage:
2397 # If page is out of range (e.g. 9999), deliver last page of results.
2398 contacts = paginator.page(paginator.num_pages)
2399
2400 lab_title = ""
2401 lab_name = ""
2402 lab_description=""
2403 orgtype=""
2404 ser_title=""
2405 ser_price=None
2406 ser_desc=""
2407 ser_url=""
2408 pic=""
2409 caption=""
2410
2411 for lab_info in lab_profle_info:
2412 lab_title=lab_info.title
2413 lab_name=lab_info.orgname
2414 lab_description=lab_info.desc
2415 orgtype=lab_info.typeorg
2416 city=lab_info.city
2417 state=lab_info.state
2418 country=lab_info.country
2419 pic=lab_info.model_pic
2420 caption=lab_info.caption
2421
2422 for service in lab_service_info:
2423 ser_title=service.title
2424 ser_price=service.price
2425 ser_desc=service.desc
2426 ser_url=service.url
2427
2428 return render_to_response('store_front.html',
2429 {
2430 'lab_title':lab_title,
2431 'lab_name':lab_name,
2432 'lab_description':lab_description,
2433 'orgtype':orgtype,
2434 'city':city,
2435 'state':state,
2436 'country':country,
2437 'pic':pic,
2438 "caption":caption,
2439 'ser_title':ser_title,
2440 'ser_price':ser_price,
2441 'ser_desc':ser_desc,
2442 'ser_url':ser_url,
2443 'lab_service_info':contacts,
2444 'contacts':contacts,
2445 'conformation_lab':conformation_lab,
2446 },
2447 context_instance=RequestContext(request))
2448
2449
2450def add_parentservices(request):
2451 parent_serivice=["Anatomical Force Microscopy",
2452 "Color Doppler Ultrasound",
2453 "Computed Tomography",
2454 "Confocal/Optical Microscopy",
2455 "Cryo Electron Microscopy",
2456 "Electron Microscopy",
2457 "Fluorescence Mediated Tomography",
2458 "In vivo Whole Tissue and Animal Imaging",
2459 "Light Sheet Fluorescence Microscopy",
2460 "Luminescence Imaging",
2461 "Microscopy",
2462 "Nano-Imaging",
2463 "Optical Birefringence Analysis",
2464 "Phase Contrast X-Ray Imaging",
2465 "Photo-Activated Localization Microscopy (PALM)",
2466 "SPECT-CT and PET-CT Imaging",
2467 "Single Molecule Localization Microscopy",
2468 "Scintigraphy",
2469 "Ultrasound Tomography",
2470 "X-Ray Microscopy and Nano-tomography (Nano-CT)",
2471 ]
2472 for i in parent_serivice:
2473 Service(pid=1,name=i).save()
2474
2475 return HttpResponse("addd-services")
2476
2477
2478def book_detail(request):
2479 book1 = ""
2480 title =""
2481 description = ""
2482 try:
2483 books = Book.objects.get(id=1)
2484 title = books.title
2485 description = books.desc
2486
2487 except Book.DoesNotExist:
2488 raise Http404
2489 return render_to_response('book1.html',
2490 {'title': title, 'description':description},
2491 context_instance=RequestContext(request))
2492
2493def sample(request):
2494 return render_to_response('sample.html')
2495
2496@login_required
2497def labdashboard(request):
2498
2499 dashboard_type = "provider"
2500 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
2501 role_users=Userroles.objects.filter(user_id=request.user.id)
2502 role_user=None
2503 print role_users
2504 for user in role_users:
2505 role_user=user.role_id
2506 print "provider_dash_board"
2507 print role_user
2508 if dashboard_type == "provider" and role_user == 2:
2509 user = request.user
2510 conformation_researcher=""
2511 conformation_lab="conformation_lab"
2512 print "what is this user role"
2513 print conformation_researcher
2514 print "88888888888888888888888888888888"
2515 print conformation_lab
2516 return render_to_response("lab/lab-dashboard.html", {'user':user,
2517 'conformation_lab':conformation_lab,
2518 'conformation_researcher':conformation_researcher,})
2519 else :
2520 return redirect("/logout/")
2521
2522
2523@login_required
2524def new_lab_profile(request):
2525 ''' Lab Profile View '''
2526
2527 dashboard_type = "provider"
2528 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
2529 role_users=Userroles.objects.filter(user_id=request.user.id)
2530 role_user=None
2531 print role_users
2532 for user in role_users:
2533 role_user=user.role_id
2534 print "provider_profile"
2535 print role_user
2536 print request.user
2537 if dashboard_type == "provider" and role_user == 2:
2538 conformation_lab="conformation_lab"
2539 labs=Lab.objects.filter(user_id=request.user.id)
2540 lab_id=None
2541 for lab in labs:
2542 lab_id=lab.id
2543 lab_profle_info = Lab.objects.filter(user_id=request.user.id)
2544 lab_service_info =LabServices.objects.filter(lab_id=lab_id)
2545 # paginator = Paginator(lab_service_info,3)
2546 # page = request.GET.get('page')
2547 # try:
2548 # contacts = paginator.page(page)
2549 # except PageNotAnInteger:
2550 # # If page is not an integer, deliver first page.
2551 # contacts = paginator.page(1)
2552 # except EmptyPage:
2553 # # If page is out of range (e.g. 9999), deliver last page of results.
2554 # contacts = paginator.page(paginator.num_pages)
2555
2556 lab_title = ""
2557 lab_name = ""
2558 lab_description=""
2559 orgtype=""
2560 ser_title=""
2561 ser_price=None
2562 ser_desc=""
2563 ser_url=""
2564 pic=""
2565 caption=""
2566
2567 for lab_info in lab_profle_info:
2568 lab_title=lab_info.title
2569 lab_name=lab_info.orgname
2570 lab_description=lab_info.desc
2571 orgtype=lab_info.typeorg
2572 city=lab_info.city
2573 state=lab_info.state
2574 country=lab_info.country
2575 pic=lab_info.model_pic
2576 caption=lab_info.caption
2577
2578 for service in lab_service_info:
2579 ser_title=service.title
2580 ser_price=service.price
2581 ser_desc=service.desc
2582 ser_url=service.url
2583
2584
2585 form = AddLabservicesform()
2586
2587 return render_to_response('lab/lab-profile.html',
2588 {
2589 'form1':form,
2590 'lab_title':lab_title,
2591 'lab_name':lab_name,
2592 'lab_description':lab_description,
2593 'orgtype':orgtype,
2594 'city':city,
2595 'state':state,
2596 'country':country,
2597 'pic':pic,
2598 "caption":caption,
2599 'ser_title':ser_title,
2600 'ser_price':ser_price,
2601 'ser_desc':ser_desc,
2602 'ser_url':ser_url,
2603 'services':lab_service_info,
2604 # 'contacts':contacts,
2605 'conformation_lab':conformation_lab,
2606 },
2607 context_instance=RequestContext(request))
2608 else :
2609 return redirect("/logout/")
2610
2611
2612# def about(request):
2613# '''About View'''
2614
2615# user = request.user
2616# role_user=Userroles.objects.filter(user_id=request.user.id)
2617# conformation_researcher=""
2618# conformation_lab=""
2619
2620# for role in role_user:
2621# usr_type=role.role_id
2622
2623# if usr_type==1:
2624# conformation_researcher="researcher"
2625# elif usr_type==2:
2626# conformation_lab="conformation_lab"
2627# else:
2628# pass
2629
2630# about="about_page"
2631# return render_to_response('new_about.html',{"about":about,"user":user,
2632# 'conformation_researcher':conformation_researcher,'conformation_lab':conformation_lab,},
2633# context_instance=RequestContext(request))
2634
2635def new_services(request):
2636 ''' Services View'''
2637
2638
2639 main_list=[]
2640 parent_id=[]
2641 main_list=[]
2642
2643 parent=Services.objects.filter(pid=0)
2644
2645 for i in parent:
2646 parent_name=[]
2647 parent_name.append(i.name)
2648 parent_name.append(i.id)
2649 child=Services.objects.filter(pid=i.id)
2650 child_name=[]
2651 for j in child:
2652 child_name.append(j.name)
2653 parent_name.append(child_name)
2654 main_list.append(parent_name)
2655
2656 return render_to_response('new_services.html',
2657 {'main_list':main_list,})
2658
2659def new_services_result(request,pid):
2660 ''' Services Result View'''
2661
2662 list_filter_labs = request.GET
2663 myDict = dict(list_filter_labs.iterlists())
2664
2665 for key,value in myDict.items():
2666 checkd_value_list=value
2667 for i in checkd_value_list:
2668 lab_name= i
2669
2670 main_list=[]
2671 parent_id=[]
2672 main_list=[]
2673 parent=Services.objects.filter(pid=pid)
2674 for i in parent:
2675 parent_name=[]
2676 parent_name.append(i.name)
2677 parent_name.append(i.id)
2678 child=Services.objects.filter(pid=i.id)
2679 child_name=[]
2680 for j in child:
2681 child_name.append(j.name)
2682 parent_name.append(child_name)
2683 main_list.append(parent_name)
2684 max_list =[main_list,lab_name]
2685 json_encode(max_list)
2686 return HttpResponse(max_list[0],max_list[1])
2687
2688def new_services_inner(request,p_id):
2689 ''' Sub Services View'''
2690
2691 services="new_services"
2692 sub_services = Services.objects.filter(id=p_id)
2693 service_id = None
2694
2695 for s in sub_services:
2696 service_id = s.id
2697 request.session["filter_services_id"]=service_id
2698 all_labs = Lab.objects.filter(service_id=s.id)
2699
2700 lab1 = []
2701 for l in all_labs:
2702 lab1.append(l)
2703
2704 lab_details = []
2705 for l in lab1:
2706 lab_name = []
2707 lab_desc = []
2708 lab_name.append(l.title)
2709 lab_name.append(l.desc)
2710 lab_details.append(lab_name)
2711 lab_details.append(lab_name)
2712
2713 countries=Lab.objects.filter(service_id=service_id)
2714 country_list=[]
2715 for con in countries:
2716 country_list.append(con.country)
2717
2718 country_set=list(set(country_list))
2719 country_set_1=filter(None, country_set)
2720
2721 return render_to_response('new_services-inner.html',
2722 {'services':services,'all_labs':all_labs,'p_id':p_id,
2723 'country_set_1':country_set_1,},
2724 context_instance=RequestContext(request))
2725
2726
2727def new_projects(request):
2728 ''' Projects View'''
2729
2730 user = request.user
2731 role_user=Userroles.objects.filter(user_id=request.user.id)
2732 conformation_researcher=""
2733 conformation_lab=""
2734 for role in role_user:
2735 usr_type=role.role_id
2736 if usr_type==1:
2737 conformation_researcher="researcher"
2738 elif usr_type==2:
2739 conformation_lab="conformation_lab"
2740 else:
2741 pass
2742 # print user
2743
2744 project="new_projects"
2745
2746 if request.method == 'POST':
2747 form = SplRequestForm(request.POST)
2748 if form.is_valid():
2749 name = request.POST.get('name')
2750 email = request.POST.get('email')
2751 university= request.POST.get('university')
2752 desc = request.POST.get('desc')
2753 phone_number=request.POST.get('phone_number')
2754 SplRequest(name=name,email =email,
2755 university=university,phone_number=phone_number,desc=desc).save()
2756 messages.success(request,(u"Request Received!Our Customer Service Team will Reach Out Servicehortly."))
2757 return redirect("/projects/")
2758 else:
2759 form = SplRequestForm()
2760
2761 result=edit_about.objects.filter(id=3)
2762 project_result=None
2763 for i in result:
2764 print i.data
2765 project_result=i.data
2766 print "&&&&&&&&&&&&&&&&"*10
2767 print project_result
2768 print "&&&&&&&&&&&&&&&&"*10
2769
2770 return render_to_response('new_projects.html',{"project_result":project_result,"project":project, "user":user,'form':form,
2771 'conformation_researcher':conformation_researcher,'conformation_lab':conformation_lab,},
2772 context_instance=RequestContext(request))
2773
2774def show_services(request,ser_name):
2775 ''' Displaying Services View'''
2776
2777
2778 user = request.user
2779 role_user=Userroles.objects.filter(user_id=request.user.id)
2780 conformation_researcher=""
2781 conformation_lab=""
2782 for role in role_user:
2783 usr_type=role.role_id
2784 if usr_type==1:
2785 conformation_researcher="researcher"
2786 elif usr_type==2:
2787 conformation_lab="conformation_lab"
2788 else:
2789 pass
2790
2791 services="new_services"
2792 expnd="expand_value"
2793
2794 '''Left side Content'''
2795
2796 main_list=[]
2797 parent_id=[]
2798 main_list=[]
2799 parent=Services.objects.filter(pid=0)
2800 for i in parent:
2801 parent_name=[]
2802 parent_name.append(i.name)
2803 parent_name.append(i.id)
2804 child=Services.objects.filter(pid=i.id)
2805 child_name=[]
2806 for j in child:
2807 child_name.append(j.name)
2808 parent_name.append(child_name)
2809 main_list.append(parent_name)
2810
2811 '''For Right Content'''
2812
2813 par_ser_list=[]
2814 services =Services.objects.filter(name=ser_name)
2815 for ser in services:
2816 parent_name=[]
2817 parent_name.append(ser.name)
2818 child_service=Services.objects.filter(pid=ser.id)
2819 child_name=[]
2820 for ser_1 in child_service:
2821 child_id=[]
2822 child_id.append(ser_1.id)
2823 child_id.append(ser_1.name)
2824 child_name.append(child_id)
2825 parent_name.append(child_name)
2826 par_ser_list.append(parent_name)
2827
2828 return render_to_response('new_services.html',
2829 {'par_ser_list':par_ser_list,
2830 'main_list':main_list,'ser_name':ser_name,
2831 "services":services,"user":user,
2832 'conformation_researcher':conformation_researcher,
2833 'conformation_lab':conformation_lab,},
2834 context_instance=RequestContext(request))
2835
2836def new_lab_messages(request):
2837
2838 # return HttpResponse("this is about messages")
2839 return render_to_response('lab/new_messages.html')
2840
2841def new_contactus(request):
2842 ''' Contact Us View'''
2843
2844 user = request.user
2845 role_user=Userroles.objects.filter(user_id=request.user.id)
2846 conformation_researcher=""
2847 conformation_lab=""
2848 for role in role_user:
2849 usr_type=role.role_id
2850 if usr_type==1:
2851 conformation_researcher="researcher"
2852 elif usr_type==2:
2853 conformation_lab="conformation_lab"
2854 else:
2855 pass
2856
2857 contact="contact"
2858 if request.method == 'POST':
2859 form = ContactUsForm(request.POST)
2860 if form.is_valid():
2861 name = request.POST.get('name')
2862 email = request.POST.get('email')
2863 subject= request.POST.get('subject')
2864 message = request.POST.get('message')
2865
2866 ContactUS(name=name,email =email,
2867 subject=subject,messages=message).save()
2868 messages.success(request,(u"Inquiry Received!Our Customer Service Team will reach out shortly."))
2869 return redirect("/support/")
2870 else:
2871 form = ContactUsForm()
2872
2873 return render_to_response('contact.html',{"contact":contact,"user":user,'form':form,
2874 'conformation_researcher':conformation_researcher,'conformation_lab':conformation_lab,},
2875 context_instance=RequestContext(request))
2876
2877def new_consulting(request):
2878 ''' Consulting View'''
2879
2880 user = request.user
2881 role_user=Userroles.objects.filter(user_id=request.user.id)
2882 conformation_researcher=""
2883 conformation_lab=""
2884 for role in role_user:
2885 usr_type=role.role_id
2886 if usr_type==1:
2887 conformation_researcher="researcher"
2888 elif usr_type==2:
2889 conformation_lab="conformation_lab"
2890 else:
2891 pass
2892
2893 consult="consulting"
2894 result=edit_about.objects.filter(id=2)
2895 consult_result=None
2896 for i in result:
2897 print i.data
2898 consult_result=i.data
2899 print "&&&&&&&&&&&&&&&&"*10
2900 print consult_result
2901 print "&&&&&&&&&&&&&&&&"*10
2902 return render_to_response('consulting.html',{"consult_result":consult_result,"consult":consult, "user":user,
2903 'conformation_researcher':conformation_researcher,'conformation_lab':conformation_lab,},
2904 context_instance=RequestContext(request))
2905
2906def send_quote(request,lab_id,serv_id):
2907 ''' Send Quote View'''
2908
2909 error_message=""
2910 service_name=""
2911 if serv_id:
2912 service_name=Services.objects.get(id=serv_id).name
2913 labname=Lab.objects.filter(id=lab_id)
2914 lab_title=""
2915 image=""
2916 city=""
2917 for lname in labname:
2918 lab_title=lname.title
2919 image=lname.model_pic
2920 city=lname.city
2921 services_list=[]
2922 services=LabServices.objects.filter(lab_id=lab_id)
2923 for ser in services:
2924 services_list.append(ser.title)
2925 conformation_researcher="researcher"
2926
2927 if request.user.id:
2928 if request.method == 'POST':
2929 form = SendQuote_loggedinForm(request.POST,request.FILES)
2930 if form.is_valid():
2931 userid=request.user.id
2932 email=request.user.email
2933 user_name=request.user.username
2934 desc = request.POST.get('Desc')
2935 mail_id=request.POST.get('email')
2936 send_file = form.cleaned_data['send_file']
2937 service=request.POST.get('service')
2938 serviceid=None
2939
2940 Quotes(researcher_id=userid,lab_id=lab_id,
2941 service_id=serv_id,desc=desc,status_id=1,
2942 researcher_name=email,service_name=service_name).save()
2943
2944 quoteid=Quotes.objects.latest('created_at').id
2945 servid=str(quoteid).zfill(4)
2946 Quotes.objects.filter(id=quoteid).update(sid=servid)
2947 Quote_files(quote_id=quoteid,filename=send_file).save()
2948 Quote_status(quote_id=quoteid,name="Pending",
2949 description="no response from buyer",status_id=1).save()
2950 return HttpResponseRedirect ('/send-quote/thanks/')
2951 else:
2952 form = SendQuote_loggedinForm()
2953 else:
2954 if request.method == 'POST':
2955 form = SendQuote_not_loginForm(request.POST,request.FILES)
2956 if form.is_valid():
2957 email_create=request.POST.get("email")
2958 password1_create=request.POST.get("password1")
2959 password2_create=request.POST.get("password2")
2960 desc = request.POST.get('Desc')
2961 mail_id=request.POST.get('email')
2962 send_file = form.cleaned_data['send_file']
2963 service=request.POST.get('service')
2964 if password1_create==password2_create:
2965 email_check=User.objects.filter(email=email_create)
2966 if email_check:
2967 error_message="Email address already exists"
2968
2969 else:
2970 user = User.objects.create_user(email_create,email_create, password1_create)
2971
2972 new_user_id=None
2973 new_user_name=""
2974 user_info=User.objects.filter(email= email_create)
2975 for usr in user_info:
2976 new_user_id=usr.id
2977 new_user_name=usr.username
2978
2979 Quotes(researcher_id=new_user_id,lab_id=lab_id,
2980 service_id=serv_id,desc=desc,status_id=1,
2981 researcher_name=new_user_name,service_name=service_name).save()
2982
2983 quoteid=Quotes.objects.latest('created_at').id
2984 servid=str(quoteid).zfill(4)
2985
2986 Quotes.objects.filter(id=quoteid).update(sid=servid)
2987 Quote_files(quote_id=quoteid,filename=send_file).save()
2988 Quote_status(quote_id=quoteid,name="Pending",
2989 description="no response from buyer",status_id=1).save()
2990 return HttpResponseRedirect ('/send-quote/thanks/')
2991 # return redirect('/provider/quotes/')
2992 else:
2993 error_message="Password and Confirm Passwords are doesn't match"
2994
2995 else:
2996 form = SendQuote_not_loginForm()
2997
2998 return render_to_response('send-quote.html',{'form':form,
2999 'services_list':services_list,
3000 'service_name':service_name,
3001 'lab_title':lab_title,
3002 'image':image,
3003 'city':city,
3004 'error_message':error_message,
3005 },
3006 context_instance=RequestContext(request))
3007
3008
3009@login_required
3010def new_lab_quotes(request):
3011 ''' Lab Quotes View'''
3012
3013 dashboard_type = "provider"
3014 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
3015 role_users=Userroles.objects.filter(user_id=request.user.id)
3016 role_user=None
3017 print role_users
3018 for user in role_users:
3019 role_user=user.role_id
3020 print "provider_quotes"
3021 print role_user
3022 if dashboard_type == "provider" and role_user == 2:
3023 user = request.user
3024 userid=request.user.id
3025 labID=None
3026 labdetails = Lab.objects.filter(user_id=userid)
3027 for lab in labdetails:
3028 labID=lab.id
3029 if labID:
3030 display_list=[]
3031 display_quotes=Quotes.objects.filter(lab_id=labID)
3032 return render_to_response('lab/lab-quotes.html',{'display_quotes':display_quotes, 'user':user,})
3033 else:
3034 return render_to_response('lab/lab-quotes.html',)
3035 else :
3036 return redirect("/logout/")
3037
3038
3039@login_required
3040def view_quote(request,id):
3041 '''Particular Quote Details View'''
3042
3043 dashboard_type = "provider"
3044 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
3045 role_users=Userroles.objects.filter(user_id=request.user.id)
3046 role_user=None
3047 for user in role_users:
3048 role_user=user.role_id
3049 if dashboard_type == "provider" and role_user == 2:
3050 message_list = Message.objects.inbox_for_provider(request.user)
3051 user = request.user
3052 userid=request.user.id
3053 labID=None
3054 labdetails = Lab.objects.filter(user_id=userid)
3055 for lab in labdetails:
3056 labID=lab.id
3057 quote_desription=""
3058 quote_id=""
3059 sid=""
3060 title=""
3061 name=""
3062 date=""
3063 status_name=""
3064 viewquote=Quotes.objects.filter(id=id)
3065 for quote in viewquote:
3066 sid=quote.sid
3067 title=quote.service_name
3068 name=quote.researcher_name
3069 date=quote.created_at
3070 quote_id=quote.id
3071 statusid=quote.status_id
3072 if statusid==1:
3073 status_name="Pending"
3074 for qid in viewquote:
3075 quote_desription=qid.desc
3076 download_file=""
3077 download=Quote_files.objects.filter(quote_id=quote_id)
3078 for down in download:
3079 download_file=down.filename
3080 download_file1=str(download_file).replace('quotes/','')
3081 display_quotes=Quotes.objects.filter(lab_id=labID)
3082 paginator = Paginator(display_quotes, 4)
3083 page = request.GET.get('page')
3084 try:
3085 contacts = paginator.page(page)
3086 except PageNotAnInteger:
3087 # If page is not an integer, deliver first page.
3088 contacts = paginator.page(1)
3089 except EmptyPage:
3090 # If page is out of range (e.g. 9999), deliver last page of results.
3091 contacts = paginator.page(paginator.num_pages)
3092
3093 return render_to_response('lab/lab-quote-desc.html',{'quote_desription':quote_desription,
3094 'title':title,
3095 'sid':sid,
3096 'date':date,
3097 'name':name,
3098 'quote_id':quote_id,
3099 'display_quotes':display_quotes,
3100 'status_name':status_name,
3101 'download_file':download_file1,
3102 'user':user,'message_list':message_list,})
3103 else :
3104 return redirect("/logout/")
3105
3106def multiquote(request,serv_id):
3107
3108 multiquote_labs_list=request.POST.getlist('multiquote')
3109 request.session["lab_list"]=multiquote_labs_list
3110
3111 if multiquote_labs_list:
3112 return redirect("/multiquote-res/%s/" %serv_id)
3113 else:
3114 messages.error(request,(u"Please Select Atleast One Lab For Multi Quote Request."))
3115 return redirect('/services/sub/%s/'%(serv_id))
3116
3117
3118def Multiquote_researcher(request,serv_id):
3119 ''' Sending Multi Quote View'''
3120
3121 multi_lab_list=request.session["lab_list"]
3122 error_message=""
3123 service_name=""
3124 if serv_id:
3125 service_name=Services.objects.get(id=serv_id).name
3126 conformation_researcher="researcher"
3127
3128 if request.user.id:
3129 if request.method == 'POST':
3130 form = SendQuote_loggedinForm(request.POST,request.FILES)
3131 if form.is_valid():
3132 userid=request.user.id
3133 email=request.user.email
3134 user_name=request.user.username
3135 desc = request.POST.get('Desc')
3136 mail_id=request.POST.get('email')
3137 send_file = form.cleaned_data['send_file']
3138 service=request.POST.get('service')
3139 serviceid=None
3140 for multi in request.session["lab_list"]:
3141 Quotes(researcher_id=userid,lab_id=multi,
3142 service_id=serv_id,desc=desc,status_id=1,
3143 researcher_name=email,service_name=service_name).save()
3144
3145 quoteid=Quotes.objects.latest('created_at').id
3146 servid=str(quoteid).zfill(4)
3147 Quotes.objects.filter(id=quoteid).update(sid=servid)
3148 Quote_files(quote_id=quoteid,filename=send_file).save()
3149 return HttpResponseRedirect ('/send-quote/thanks/')
3150 else:
3151 form = SendQuote_loggedinForm()
3152
3153 else:
3154 if request.method == 'POST':
3155 form = SendQuote_not_loginForm(request.POST,request.FILES)
3156 if form.is_valid():
3157 email_create=request.POST.get("email")
3158 password1_create=request.POST.get("password1")
3159 password2_create=request.POST.get("password2")
3160 desc = request.POST.get('Desc')
3161 mail_id=request.POST.get('email')
3162 send_file = form.cleaned_data['send_file']
3163 service=request.POST.get('service')
3164 if password1_create==password2_create:
3165 email_check=User.objects.filter(email=email_create)
3166 if email_check:
3167 error_message="Email address already exists"
3168 print error_message
3169 else:
3170 user = User.objects.create_user(email_create,email_create, password1_create)
3171 new_user_id=None
3172 new_user_name=""
3173 user_info=User.objects.filter(email= email_create)
3174 for usr in user_info:
3175 new_user_id=usr.id
3176 new_user_name=usr.username
3177
3178 for multi in multi_lab_list:
3179 Quotes(researcher_id=new_user_id,lab_id=multi,
3180 service_id=serv_id,desc=desc,status_id=1,
3181 researcher_name=new_user_name,service_name=service_name).save()
3182
3183 quoteid=Quotes.objects.latest('created_at').id
3184 servid=str(quoteid).zfill(4)
3185
3186 Quotes.objects.filter(id=quoteid).update(sid=servid)
3187 Quote_files(quote_id=quoteid,filename=send_file).save()
3188
3189 return HttpResponseRedirect ('/send-quote/thanks/')
3190 return redirect('/provider/quotes/')
3191 else:
3192 error_message="Password and Confirm Passwords are doesn't match"
3193
3194 else:
3195 form = SendQuote_not_loginForm()
3196
3197 return render_to_response('multiquote.html',{'form':form,
3198 'service_name':service_name,
3199 'serv_id':serv_id,
3200 'error_message':error_message,
3201 },
3202 context_instance=RequestContext(request))
3203
3204
3205@login_required
3206def quote_status_filter(request):
3207 ''' Quote Status View'''
3208
3209 dashboard_type = "provider"
3210 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
3211 role_users=Userroles.objects.filter(user_id=request.user.id)
3212 role_user=None
3213 for user in role_users:
3214 role_user=user.role_id
3215 if dashboard_type == "provider" and role_user == 2:
3216 filter_data=request.GET
3217 quote_status_id=None
3218 value_filter=""
3219 userid=request.user.id
3220 labID=None
3221 labdetails = Lab.objects.filter(user_id=userid)
3222 for lab in labdetails:
3223 labID=lab.id
3224 quote_filters=[]
3225
3226 for key,value in filter_data.items():
3227 value_filter=key
3228 if value_filter=="Pending":
3229 quote_status_id=1
3230 elif value_filter=="Declined":
3231 quote_status_id=2
3232 elif value_filter=="Active-Pending":
3233 quote_status_id=3
3234
3235 elif value_filter=="Active":
3236 quote_status_id=4
3237
3238 else:
3239 pass
3240
3241 if value_filter=="All":
3242 quote_filters=Quotes.objects.filter(lab_id=labID)
3243
3244 else:
3245 quote_filters=Quotes.objects.filter(status_id=quote_status_id,lab_id=labID)
3246
3247
3248 return render_to_response('lab/quote_filter_result.html',{'quote_filters':quote_filters},
3249 context_instance=RequestContext(request))
3250 else :
3251 return redirect("/logout/")
3252
3253
3254@login_required
3255def lab_send_quote(request,qut_id):
3256 dashboard_type = "provider"
3257 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
3258 role_users=Userroles.objects.filter(user_id=request.user.id)
3259 role_user=None
3260 for user in role_users:
3261 role_user=user.role_id
3262 if dashboard_type == "provider" and role_user == 2:
3263 labname=Lab.objects.filter(user_id=request.user.id)
3264 image=""
3265 name=""
3266 city=""
3267 for lname in labname:
3268 image=lname.model_pic
3269 name=lname.title
3270 city=lname.city
3271
3272 quote_info=Quotes.objects.filter(id=qut_id)
3273 if request.method == 'POST':
3274 form = LabQuoteForm(request.POST,request.FILES)
3275 if form.is_valid():
3276 ser_price = request.POST.get('service_price')
3277 ser_duration=request.POST.get('duration')
3278 ser_notes=request.POST.get('notes')
3279 send_file = form.cleaned_data['send_file']
3280 Quotes.objects.filter(id=qut_id).update(price=ser_price,duration=ser_duration,notes=ser_notes,
3281 sent_by="Lab")
3282
3283 if send_file:
3284 Quote_files(quote_id=qut_id,filename=send_file,sent_by="Lab").save()
3285 messages.success(request,(u"Thanks For Sending Quote."))
3286 return redirect('/provider-quote/%s/'%qut_id)
3287 else:
3288 form = LabQuoteForm()
3289 return render_to_response('lab/lab-quote-form.html',{'form':form,
3290 'image':image,
3291 'name':name,
3292 'city':city,
3293 'quote_info':quote_info,
3294 },
3295 context_instance=RequestContext(request))
3296 else :
3297 return redirect("/logout/")
3298
3299def send_quote_thanks(request):
3300 ''' Thank You Page '''
3301
3302 return render_to_response('thanks.html',
3303 context_instance=RequestContext(request))
3304
3305
3306def service_filters(request):
3307 ''' Services Filters View'''
3308
3309 serviceID=request.session["filter_services_id"]
3310 checkd_value_list=[]
3311 frst_filtr_rslt_lst=[]
3312 list_filter_labs = request.GET
3313 myDict = dict(list_filter_labs.iterlists())
3314 fitr_results=[]
3315
3316 for key,value in myDict.items():
3317 checkd_value_list.append(value)
3318
3319 size_checkd_value_list=len(checkd_value_list)
3320
3321 if size_checkd_value_list==1:
3322 ser_search_country=Lab.objects.filter(country__in=checkd_value_list[0],service_id=serviceID)
3323 for ser_country in ser_search_country:
3324 frst_filtr_rslt_lst.append(ser_country.id)
3325 ser_search_typeorg=Lab.objects.filter(typeorg__in=checkd_value_list[0],service_id=serviceID)
3326 for ser_org in ser_search_typeorg:
3327 frst_filtr_rslt_lst.append(ser_org.id)
3328 fitr_results=Lab.objects.filter(id__in=frst_filtr_rslt_lst)
3329
3330 elif size_checkd_value_list==2:
3331 ser_search_country=Lab.objects.filter(country__in=checkd_value_list[0],typeorg__in=checkd_value_list[1],
3332 service_id=serviceID)
3333 for ser_country in ser_search_country:
3334 frst_filtr_rslt_lst.append(ser_country.id)
3335 ser_search_typorg=Lab.objects.filter(country__in=checkd_value_list[1],typeorg__in=checkd_value_list[0],
3336 service_id=serviceID)
3337 for ser_org in ser_search_typorg:
3338 frst_filtr_rslt_lst.append(ser_org.id)
3339
3340 fitr_results=Lab.objects.filter(id__in=frst_filtr_rslt_lst)
3341 else:
3342 fitr_results=Lab.objects.filter(service_id=serviceID)
3343
3344 return render_to_response('service-filter.html',{'fitr_results':fitr_results,
3345 'serviceID':serviceID },
3346 context_instance=RequestContext(request))
3347
3348@login_required
3349def new_res_quotes(request):
3350
3351 dashboard_type = "buyer"
3352 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
3353 user = request.user
3354 print "res-quotes"
3355 print user.id
3356 print user
3357 print request.user
3358 role_users=Userroles.objects.filter(user_id=request.user.id)
3359 role_user=None
3360 for user in role_users:
3361 role_user=user.role_id
3362 print role_user
3363 if dashboard_type == "buyer" and role_user == 1:
3364 print "after if condition"
3365 print user
3366 print type(user)
3367 print user.user_id
3368 user_email=User.objects.get(id=user.user_id)
3369 print user_email
3370
3371 # for u in user:
3372 # print"$$$$"
3373 # print u
3374 conformation_researcher="researcher"
3375 # user = request.user
3376 display_res_quotes=Quotes.objects.filter(researcher_id=user.user_id,
3377 sent_by="Lab")
3378 print display_res_quotes
3379 if display_res_quotes:
3380 print "display_quotes"
3381 return render_to_response('researcher/new_res_quotes.html',
3382 {'display_quotes':display_res_quotes,"conformation_researcher":conformation_researcher,
3383 'user':user_email,})
3384 else:
3385 print "else"
3386 print user_email
3387 # return render_to_response('researcher/new_res_quotes.html',
3388 # {'display_quotes':display_res_quotes,"conformation_researcher":conformation_researcher,
3389 # 'user':user_email,})
3390 return render_to_response('researcher/new_res_quotes.html',
3391 {'display_quotes':display_res_quotes,"conformation_researcher":conformation_researcher,
3392 'user':user_email,})
3393 else :
3394 return redirect("/logout/")
3395
3396
3397@login_required
3398def res_view_quote(request,id):
3399 dashboard_type = "buyer"
3400 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
3401 role_users=Userroles.objects.filter(user_id=request.user.id)
3402 role_user=None
3403 for user in role_users:
3404 role_user=user.role_id
3405 if dashboard_type == "buyer" and role_user == 1:
3406 message_list = Message.objects.inbox_for(request.user)
3407 user = request.user
3408 userid=request.user.id
3409 labID=None
3410 labdetails = Lab.objects.filter(user_id=userid)
3411 for lab in labdetails:
3412 labID=lab.id
3413
3414 quote_desription=""
3415 quote_id=""
3416 sid=""
3417 title=""
3418 name=""
3419 date=""
3420 status_name=""
3421 price=""
3422 duration=""
3423 lab_name=""
3424 labID=None
3425 viewquote=Quotes.objects.filter(id=id)
3426
3427 for quote in viewquote:
3428 sid=quote.sid
3429 title=quote.service_name
3430 name=quote.researcher_name
3431 date=quote.created_at
3432 quote_id=quote.id
3433 statusid=quote.status_id
3434 price=quote.price
3435 duration=quote.duration
3436 labID=quote.lab_id
3437 labinfo=Lab.objects.filter(id=labID)
3438 for lab in labinfo:
3439 lab_name=lab.title
3440
3441 if statusid==1:
3442 status_name="Pending"
3443
3444 for qid in viewquote:
3445 quote_desription=qid.desc
3446
3447 download_file=""
3448 download=Quote_files.objects.filter(quote_id=quote_id)
3449
3450 for down in download:
3451 download_file=down.filename
3452 download_file1=str(download_file).replace('quotes/','')
3453 display_quotes=Quotes.objects.filter(researcher_id=request.user.id,sent_by="Lab")
3454
3455 return render_to_response('researcher/res_quote_desc_1.html',{'quote_desription':quote_desription,
3456 'title':title,
3457 'sid':sid,
3458 'date':date,
3459 'name':name,
3460 'quote_id':quote_id,
3461 'display_quotes':display_quotes,
3462 'status_name':status_name,
3463 'download_file':download_file1,
3464 'display_quotes':display_quotes,
3465 'lab_name':lab_name,
3466 'price':price,
3467 'duration':duration,
3468 'user':user,
3469 'message_list':message_list,})
3470 else :
3471 return redirect("/logout/")
3472
3473
3474def breadcroomb(request):
3475
3476 breadcrumb_value=""
3477 req_value=request.GET
3478 for key,value in req_value.items():
3479 breadcrumb_value=key
3480
3481 return render_to_response('breadcrumb.html',{'breadcrumb_value':breadcrumb_value},
3482 context_instance=RequestContext(request))
3483
3484
3485@login_required
3486def inbox(request):
3487 '''
3488 handles the index page when user is not logged in
3489 @request request object '''
3490
3491 dashboard_type = "buyer"
3492 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
3493 role_users=Userroles.objects.filter(user_id=request.user.id)
3494 role_user=None
3495 for user in role_users:
3496 role_user=user.role_id
3497 if dashboard_type == "buyer" and role_user == 1:
3498 user = request.user
3499 role_user=Userroles.objects.filter(user_id=request.user.id)
3500 conformation_researcher=""
3501 conformation_lab=""
3502 for role in role_user:
3503 usr_type=role.role_id
3504 if usr_type==1:
3505 conformation_researcher="researcher"
3506 elif usr_type==2:
3507 conformation_lab="conformation_lab"
3508 else:
3509 pass
3510
3511 #for Inbox
3512 message_list = Message.objects.inbox_for(request.user)
3513 index = Message.objects.filter(recipient=request.user).count()
3514 no_of_unread = message_list.filter(read_at=None).count()
3515
3516 #for Outbox
3517 sentmessage_list = Message.objects.outbox_for(request.user)
3518
3519 return render_to_response('messages/messages_inbox.html',
3520 {'message_list': message_list,
3521 'sentmessage_list': sentmessage_list,
3522 'index': index, 'unread_count': no_of_unread,
3523 "user":user,
3524 'conformation_researcher':conformation_researcher,
3525 'conformation_lab':conformation_lab,},
3526 context_instance=RequestContext(request))
3527 else :
3528 return redirect("/logout/")
3529
3530@login_required
3531def buyer_msg_view(request, msg_id,form_class=ComposeForm,
3532 quote_helper=format_quote,subject_template=_(u"Re: %(subject)s")):
3533
3534 dashboard_type = "buyer"
3535 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
3536 role_users=Userroles.objects.filter(user_id=request.user.id)
3537 role_user=None
3538 for user in role_users:
3539 role_user=user.role_id
3540 if dashboard_type == "buyer" and role_user == 1:
3541 user = request.user
3542 role_user=Userroles.objects.filter(user_id=request.user.id)
3543 conformation_researcher=""
3544 conformation_lab=""
3545 for role in role_user:
3546 usr_type=role.role_id
3547 if usr_type==1:
3548 conformation_researcher="researcher"
3549 elif usr_type==2:
3550 conformation_lab="conformation_lab"
3551 else:
3552 pass
3553 # user = request.user
3554 now = timezone.now()
3555 message_id=msg_id
3556 message = get_object_or_404(Message, id=message_id)
3557 if (message.sender != user) and (message.recipient != user):
3558 raise Http404
3559 if message.read_at is None and message.recipient == user:
3560 message.read_at = now
3561 message.save()
3562 # context = {'message': message, 'reply_form': None}
3563 if message.recipient == user:
3564 form = form_class(initial={
3565 'body': quote_helper(message.sender, message.body),
3566 'subject': subject_template % {'subject': message.subject},
3567 'recipient': [message.sender,]
3568 })
3569 # context['reply_form'] = form
3570
3571 return render_to_response('messages/messages_view.html',
3572 {'message' : message,"user":user,'conformation_researcher':conformation_researcher,
3573 'conformation_lab':conformation_lab,},
3574 context_instance=RequestContext(request))
3575 else :
3576 return redirect("/logout/")
3577
3578@login_required
3579def compose(request, recipient=None, form_class=ComposeForm,
3580 recipient_filter=None):
3581 ''' composing messages for contact form '''
3582
3583 dashboard_type = "buyer"
3584 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
3585 role_users=Userroles.objects.filter(user_id=request.user.id)
3586 role_user=None
3587 for user in role_users:
3588 role_user=user.role_id
3589 body = ""
3590 if dashboard_type == "buyer" and role_user == 1:
3591
3592 error_message = ""
3593 present_user = request.user
3594
3595 role_user=Userroles.objects.filter(user_id=request.user.id)
3596 conformation_researcher=""
3597 conformation_lab=""
3598
3599 for role in role_user:
3600 usr_type=role.role_id
3601
3602 if usr_type==1:
3603 conformation_researcher="researcher"
3604 elif usr_type==2:
3605 conformation_lab="conformation_lab"
3606 else:
3607 pass
3608
3609 body_data = request.GET
3610 body = ""
3611 for key, value in body_data.items():
3612 body1=str(key)
3613 request.session["body_value"]=body1
3614 body = body1
3615 body = request.session.get('body_value')
3616
3617 print "body value"
3618 print body
3619 body1 = str(body)
3620 users = Userroles.objects.filter(user_id=request.user.id)
3621 value = 0
3622 rollname = ""
3623 users_list = []
3624 for user in users:
3625 rollname = user.roll_name
3626 print rollname
3627 if rollname == "researcher":
3628 labusers = Userroles.objects.filter(roll_name="lab")
3629 list1 = []
3630 for i in labusers:
3631 user1 = User.objects.filter(id=i.user_id)
3632 list2=[]
3633 for j in user1:
3634 users_list.append(j.username)
3635
3636 recipient_list = []
3637 if request.method == "POST":
3638 form = form_class(request.POST, recipient_filter=recipient_filter)
3639 id1 = request.POST.get('recipient')
3640 print id1
3641 print type(id1)
3642
3643
3644 try :
3645 if id1 :
3646 index1 = list(id1)
3647 digit = id1.split(",")
3648 for l in digit :
3649 print l
3650 ll = int(l)
3651 print ll
3652 emails = users_list[ll]
3653 try :
3654 em_obj = User.objects.get(username=emails)
3655 except Exception:
3656 pass
3657 if em_obj:
3658 recipient_list.append(em_obj)
3659 else:
3660 pass
3661
3662 if form.is_valid():
3663 current_user = User.objects.get(id=request.user.id)
3664
3665 if recipient_list:
3666 for res in recipient_list:
3667 print "resdafdsfsad"
3668 print res
3669 form.save(sender=current_user,recpt=res,body1=body1)
3670 else:
3671 pass
3672 messages.info(request, (u"Message successfully sent."))
3673 return HttpResponseRedirect('/buyer/messages/inbox')
3674 else:
3675 error_message = "Please fill the Recipient Email"
3676 except Exception:
3677 print "except block"
3678 email = User.objects.get(email=id1)
3679 recipient_list.append(email)
3680
3681 if form.is_valid():
3682 current_user = User.objects.get(id=request.user.id)
3683 if recipient_list:
3684 for res in recipient_list:
3685 form.save(sender=current_user,recpt=res,body1=body1)
3686 else:
3687 pass
3688 messages.info(request, (u"Message successfully sent."))
3689 return HttpResponseRedirect('/buyer/messages/inbox')
3690
3691
3692 else:
3693 form = form_class()
3694 if recipient is not None:
3695 recipients = [u for u in UserProfile.objects.filter(
3696 **{'%s__in' % get_username_field(): [r.strip() for r in recipient.split('+')]})]
3697 form.fields['recipient'].initial = recipients
3698
3699 return render_to_response('messages/messages_compose.html', {'form': form,
3700 "user":present_user,
3701 'conformation_researcher':conformation_researcher,
3702 'conformation_lab':conformation_lab,
3703 'error_message':error_message,},
3704 context_instance=RequestContext(request))
3705 else :
3706 return redirect("/logout/")
3707
3708
3709@login_required
3710def reply(request, msg_id, form_class=ComposeForm, success_url=None,
3711 recipient_filter=None):
3712 ''' reply to the contact messages'''
3713
3714 dashboard_type = "buyer"
3715 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
3716 role_users=Userroles.objects.filter(user_id=request.user.id)
3717 role_user=None
3718 for user in role_users:
3719 role_user=user.role_id
3720 if dashboard_type == "buyer" and role_user == 1:
3721
3722 user = request.user
3723
3724 role_user=Userroles.objects.filter(user_id=request.user.id)
3725 conformation_researcher=""
3726 conformation_lab=""
3727
3728 for role in role_user:
3729 usr_type=role.role_id
3730
3731 if usr_type==1:
3732 conformation_researcher="researcher"
3733 elif usr_type==2:
3734 conformation_lab="conformation_lab"
3735 else:
3736 pass
3737
3738 message_id = msg_id
3739 parent = get_object_or_404(Message, id=message_id)
3740 messages = Message.objects.filter(id=message_id)
3741 reply_recipient = ""
3742 for msg in messages:
3743 print "reply messages"
3744 print msg.sender_id
3745 re = User.objects.get(id=msg.sender_id).email
3746 print re
3747 print msg.recipient
3748 reply_recipient = re
3749
3750 if parent.sender != request.user and parent.recipient != request.user:
3751 raise Http404
3752 if request.method == "POST":
3753 sender = request.user
3754 form = form_class(request.POST, recipient_filter=recipient_filter)
3755 if form.is_valid():
3756 form.save(sender=request.user, parent_msg=parent)
3757 messages.info(request, (u"Message successfully sent."))
3758
3759 if success_url is None:
3760 success_url = reverse('inbox')
3761 return HttpResponseRedirect(success_url)
3762 else:
3763 form = form_class(initial={
3764 'subject': parent.subject,
3765 'recipient': parent.sender
3766 })
3767 return render_to_response('messages/messages_reply.html', {'form': form,
3768 "user":user,
3769 'conformation_researcher':conformation_researcher,
3770 'conformation_lab':conformation_lab,
3771 'recipient':reply_recipient,},
3772 context_instance=RequestContext(request))
3773 else :
3774 return redirect("/logout/")
3775
3776
3777@login_required
3778def outbox(request):
3779 """
3780 Displays a list of sent messages by the current user.
3781 Optional arguments:
3782 ``template_name``: name of the template to use.
3783 """
3784
3785 dashboard_type = "buyer"
3786 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
3787 role_users=Userroles.objects.filter(user_id=request.user.id)
3788 role_user=None
3789 for user in role_users:
3790 role_user=user.role_id
3791 if dashboard_type == "buyer" and role_user == 1:
3792
3793 user = request.user
3794
3795 role_user=Userroles.objects.filter(user_id=request.user.id)
3796 conformation_researcher=""
3797 conformation_lab=""
3798
3799 for role in role_user:
3800 usr_type=role.role_id
3801
3802 if usr_type==1:
3803 conformation_researcher="researcher"
3804 elif usr_type==2:
3805 conformation_lab="conformation_lab"
3806 else:
3807 pass
3808 message_list = Message.objects.outbox_for(request.user)
3809
3810
3811 return render_to_response('messages/messages_outbox.html', {
3812 'message_list': message_list,
3813 "user":user,
3814 'conformation_researcher':conformation_researcher,
3815 'conformation_lab':conformation_lab,
3816 }, context_instance=RequestContext(request))
3817
3818 else :
3819 return redirect("/logout/")
3820
3821@login_required
3822def trash(request):
3823
3824 dashboard_type = "buyer"
3825 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
3826 role_users=Userroles.objects.filter(user_id=request.user.id)
3827 role_user=None
3828 for user in role_users:
3829 role_user=user.role_id
3830 if dashboard_type == "buyer" and role_user == 1:
3831 user = request.user
3832
3833 role_user=Userroles.objects.filter(user_id=request.user.id)
3834 conformation_researcher=""
3835 conformation_lab=""
3836
3837 for role in role_user:
3838 usr_type=role.role_id
3839
3840 if usr_type==1:
3841 conformation_researcher="researcher"
3842 elif usr_type==2:
3843 conformation_lab="conformation_lab"
3844 else:
3845 pass
3846 message_list=Message.objects.filter(buyer_display_status=1)
3847 return render_to_response('messages/messages_trash.html', {
3848 "user":user,
3849 'message_list':message_list,
3850 'conformation_researcher':conformation_researcher,
3851 'conformation_lab':conformation_lab,
3852 }, context_instance=RequestContext(request))
3853
3854 else :
3855 return redirect("/logout/")
3856
3857@login_required
3858def provider_inbox(request):
3859 '''
3860 handles the index page when user is not logged in
3861 @request request object '''
3862
3863 dashboard_type = "provider"
3864 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
3865 role_users=Userroles.objects.filter(user_id=request.user.id)
3866 role_user=None
3867 print role_users
3868 for user in role_users:
3869 role_user=user.role_id
3870 print "provider_profile"
3871 print role_user
3872 print request.user
3873 if dashboard_type == "provider" and role_user == 2:
3874 user = request.user
3875 print "user"
3876 print request.user
3877 role_user=Userroles.objects.filter(user_id=request.user.id)
3878 conformation_researcher=""
3879 conformation_lab=""
3880
3881 for role in role_user:
3882 usr_type=role.role_id
3883 print "provider role id"
3884
3885 print usr_type
3886 print "-----------------------------"
3887
3888 if usr_type==1:
3889 conformation_researcher="researcher"
3890 elif usr_type==2:
3891 conformation_lab="conformation_lab"
3892 else:
3893 pass
3894 #for Inbox
3895 message_list = Message.objects.inbox_for_provider(request.user)
3896 # print message_list
3897 index = Message.objects.filter(recipient=request.user).count()
3898 no_of_unread = message_list.filter(read_at=None).count()
3899
3900 #for Outbox
3901 sentmessage_list = Message.objects.outbox_for(request.user)
3902
3903 return render_to_response('messages/provider_messages_inbox.html',
3904 {'provider_message_list': message_list,
3905 'sentmessage_list': sentmessage_list,
3906 'index': index, 'unread_count': no_of_unread,
3907 "user":user,
3908 'conformation_researcher':conformation_researcher,
3909 'conformation_lab':conformation_lab,},
3910 context_instance=RequestContext(request))
3911 else :
3912 return redirect("/logout/")
3913
3914
3915
3916@login_required
3917def provider_msg_view(request, msg_id,form_class=ComposeForm,
3918 quote_helper=format_quote,subject_template=_(u"Re: %(subject)s")):
3919
3920 dashboard_type = "provider"
3921 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
3922 role_users=Userroles.objects.filter(user_id=request.user.id)
3923 role_user=None
3924 for user in role_users:
3925 role_user=user.role_id
3926 if dashboard_type == "provider" and role_user == 2:
3927 user = request.user
3928 role_user=Userroles.objects.filter(user_id=request.user.id)
3929 conformation_researcher=""
3930 conformation_lab=""
3931 for role in role_user:
3932 usr_type=role.role_id
3933 if usr_type==1:
3934 conformation_researcher="researcher"
3935 elif usr_type==2:
3936 conformation_lab="conformation_lab"
3937 else:
3938 pass
3939 # user = request.user
3940 now = timezone.now()
3941 message_id=msg_id
3942 message = get_object_or_404(Message, id=message_id)
3943 if (message.sender != user) and (message.recipient != user):
3944 raise Http404
3945 if message.read_at is None and message.recipient == user:
3946 message.read_at = now
3947 message.save()
3948 # context = {'message': message, 'reply_form': None}
3949 if message.recipient == user:
3950 form = form_class(initial={
3951 'body': quote_helper(message.sender, message.body),
3952 'subject': subject_template % {'subject': message.subject},
3953 'recipient': [message.sender,]
3954 })
3955 # context['reply_form'] = form
3956
3957 return render_to_response('messages/provider_messages_view.html',
3958 {'message' : message,"user":user,'conformation_researcher':conformation_researcher,
3959 'conformation_lab':conformation_lab,},
3960 context_instance=RequestContext(request))
3961 else :
3962 return redirect("/logout/")
3963
3964
3965
3966@login_required
3967def provider_trash(request):
3968 '''
3969 handles the index page when user is not logged in
3970 @request request object '''
3971
3972 dashboard_type = "provider"
3973 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
3974 role_users=Userroles.objects.filter(user_id=request.user.id)
3975 role_user=None
3976 for user in role_users:
3977 role_user=user.role_id
3978 if dashboard_type == "provider" and role_user == 2:
3979 user = request.user
3980
3981 role_user=Userroles.objects.filter(user_id=request.user.id)
3982 conformation_researcher=""
3983 conformation_lab=""
3984
3985 for role in role_user:
3986 usr_type=role.role_id
3987
3988 if usr_type==1:
3989 conformation_researcher="researcher"
3990 elif usr_type==2:
3991 conformation_lab="conformation_lab"
3992 else:
3993 pass
3994 #for Inbox
3995 message_list=Message.objects.filter(provider_display_status=1)
3996 # message_list = Message.objects.inbox_for(request.user)
3997 # index = Message.objects.filter(recipient=request.user).count()
3998 # no_of_unread = message_list.filter(read_at=None).count()
3999
4000 # #for Outbox
4001 # sentmessage_list = Message.objects.outbox_for(request.user)
4002
4003 return render_to_response('messages/provider_messages_trash.html',
4004 {
4005 "user":user,
4006 'message_list':message_list,
4007 'conformation_researcher':conformation_researcher,
4008 'conformation_lab':conformation_lab,},
4009 context_instance=RequestContext(request))
4010 else :
4011 return redirect("/logout/")
4012
4013@login_required
4014def provider_compose(request, recipient=None, form_class=ComposeForm,
4015 recipient_filter=None):
4016 ''' composing messages for contact form '''
4017
4018 dashboard_type = "provider"
4019 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
4020 role_users=Userroles.objects.filter(user_id=request.user.id)
4021 role_user=None
4022 for user in role_users:
4023 role_user=user.role_id
4024 if dashboard_type == "provider" and role_user == 2:
4025 error_message = ""
4026 present_user = request.user
4027
4028 role_user1=Userroles.objects.filter(user_id=request.user.id)
4029 conformation_researcher=""
4030 conformation_lab=""
4031
4032 for role in role_user1:
4033 usr_type=role.role_id
4034
4035 if usr_type==1:
4036 conformation_researcher="researcher"
4037 elif usr_type==2:
4038 conformation_lab="conformation_lab"
4039 else:
4040 pass
4041
4042 body_data = request.GET
4043 body = ""
4044 for key, value in body_data.items():
4045 body1=str(key)
4046 request.session["body_value"]=body1
4047 body = body1
4048 body = request.session.get('body_value')
4049
4050 print "body value"
4051 print body
4052 body1 = str(body)
4053 current_users = Userroles.objects.filter(user_id=request.user.id)
4054 # value = 0
4055 rollname = ""
4056 users_list = []
4057 for user1 in current_users:
4058 rollname = user1.roll_name
4059 print "((((((((("
4060 print rollname
4061 if rollname == "lab":
4062 buyers = Userroles.objects.filter(roll_name="researcher")
4063 list1 = []
4064 print "buyers"
4065 print buyers
4066 for i in buyers:
4067 print i
4068 user1 = User.objects.filter(id=i.user_id)
4069 list2=[]
4070 for j in user1:
4071 users_list.append(j.username)
4072
4073 recipient_list = []
4074 if request.method == "POST":
4075 form = form_class(request.POST, recipient_filter=recipient_filter)
4076 id1 = request.POST.get('recipient')
4077 print id1
4078 print type(id1)
4079
4080
4081 try :
4082 print "try block"
4083 if id1:
4084 print "if id1"
4085 index1 = list(id1)
4086 print index1
4087 digit = id1.split(",")
4088 print "digit"
4089 print type(digit)
4090 print digit
4091 print users_list
4092 for l in digit :
4093 print "in digit for loop"
4094 print l
4095 ll = int(l)
4096 print ll
4097 emails = users_list[ll]
4098 print "emails"
4099 print emails
4100
4101 try :
4102 em_obj = User.objects.get(username=emails)
4103 except Exception:
4104 pass
4105 if em_obj:
4106 recipient_list.append(em_obj)
4107 else:
4108 pass
4109
4110 if form.is_valid():
4111 current_user = User.objects.get(id=request.user.id)
4112
4113 if recipient_list:
4114 for res in recipient_list:
4115 print "provider"
4116 print res
4117 form.save(sender=current_user,recpt=res,body1=body1)
4118 else:
4119 pass
4120 messages.info(request, (u"Message successfully sent."))
4121 return HttpResponseRedirect('/provider/messages/inbox')
4122 else:
4123 error_message = "Please fill the Recipient Email"
4124 except Exception:
4125 print "except block"
4126 email = User.objects.get(email=id1)
4127 recipient_list.append(email)
4128
4129 if form.is_valid():
4130 current_user = User.objects.get(id=request.user.id)
4131 if recipient_list:
4132 for res in recipient_list:
4133 form.save(sender=current_user,recpt=res,body1=body1)
4134 else:
4135 pass
4136 messages.info(request, (u"Message successfully sent."))
4137 return HttpResponseRedirect('/provider/messages/inbox')
4138
4139
4140 else:
4141 form = form_class()
4142 if recipient is not None:
4143 recipients = [u for u in UserProfile.objects.filter(
4144 **{'%s__in' % get_username_field(): [r.strip() for r in recipient.split('+')]})]
4145 form.fields['recipient'].initial = recipients
4146
4147 return render_to_response('messages/provider_messages_compose.html', {'form': form,
4148 "user":present_user,
4149 'conformation_researcher':conformation_researcher,
4150 'conformation_lab':conformation_lab,
4151 'error_message':error_message,},
4152 context_instance=RequestContext(request))
4153 else :
4154 return redirect("/logout/")
4155
4156@login_required
4157def provider_reply(request, msg_id, form_class=ComposeForm, success_url=None,
4158 recipient_filter=None):
4159 ''' reply to the contact messages'''
4160
4161 dashboard_type = "provider"
4162 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
4163 role_users=Userroles.objects.filter(user_id=request.user.id)
4164 role_user=None
4165 for user in role_users:
4166 role_user=user.role_id
4167 if dashboard_type == "provider" and role_user == 2:
4168
4169 user = request.user
4170
4171 role_user=Userroles.objects.filter(user_id=request.user.id)
4172 conformation_researcher=""
4173 conformation_lab=""
4174
4175 for role in role_user:
4176 usr_type=role.role_id
4177
4178 if usr_type==1:
4179 conformation_researcher="researcher"
4180 elif usr_type==2:
4181 conformation_lab="conformation_lab"
4182 else:
4183 pass
4184
4185 message_id = msg_id
4186 parent = get_object_or_404(Message, id=message_id)
4187 messages = Message.objects.filter(id=message_id)
4188 reply_recipient = ""
4189 subject1 = ""
4190 for msg in messages:
4191 print "reply messages"
4192 print msg.sender_id
4193 print "subject"
4194 print msg.subject
4195 subject1 = msg.subject
4196 re = User.objects.get(id=msg.sender_id).email
4197 print re
4198 print msg.recipient
4199 reply_recipient = re
4200
4201 if parent.sender != request.user and parent.recipient != request.user:
4202 raise Http404
4203 if request.method == "POST":
4204 sender = request.user
4205 form = form_class(request.POST, recipient_filter=recipient_filter)
4206 if form.is_valid():
4207 form.save(sender=request.user, parent_msg=parent)
4208 messages.info(request, (u"Message successfully sent."))
4209
4210 if success_url is None:
4211 success_url = reverse('inbox')
4212 return HttpResponseRedirect(success_url)
4213 else:
4214 form = form_class(initial={
4215 'subject': parent.subject,
4216 'recipient': parent.sender
4217 })
4218 return render_to_response('messages/provider_messages_reply.html',
4219 {'form': form,
4220 "user":user,
4221 'conformation_researcher':conformation_researcher,
4222 'conformation_lab':conformation_lab,
4223 'recipient':reply_recipient,
4224 'subject':subject1,},
4225 context_instance=RequestContext(request))
4226 else :
4227 return redirect("/logout/")
4228
4229
4230@login_required
4231def provider_outbox(request):
4232 """
4233 Displays a list of sent messages by the current user.
4234 Optional arguments:
4235 ``template_name``: name of the template to use.
4236 """
4237
4238 dashboard_type = "provider"
4239 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
4240 role_users=Userroles.objects.filter(user_id=request.user.id)
4241 role_user=None
4242 for user in role_users:
4243 role_user=user.role_id
4244 if dashboard_type == "provider" and role_user == 2:
4245 user = request.user
4246 role_user=Userroles.objects.filter(user_id=request.user.id)
4247 conformation_researcher=""
4248 conformation_lab=""
4249 for role in role_user:
4250 usr_type=role.role_id
4251 if usr_type==1:
4252 conformation_researcher="researcher"
4253 elif usr_type==2:
4254 conformation_lab="conformation_lab"
4255 else:
4256 pass
4257 message_list = Message.objects.outbox_for(request.user)
4258
4259
4260 return render_to_response('messages/provider_messages_outbox.html', {
4261 'message_list': message_list,
4262 "user":user,
4263 'conformation_researcher':conformation_researcher,
4264 'conformation_lab':conformation_lab,
4265 }, context_instance=RequestContext(request))
4266 else :
4267 return redirect("/logout/")
4268
4269
4270
4271@login_required
4272def provider_trash(request):
4273 '''
4274 handles the index page when user is not logged in
4275 @request request object '''
4276
4277 dashboard_type = "provider"
4278 # role_user=Userroles.objects.get(user_id=request.user.id).role_id
4279 role_users=Userroles.objects.filter(user_id=request.user.id)
4280 role_user=None
4281 for user in role_users:
4282 role_user=user.role_id
4283 if dashboard_type == "provider" and role_user == 2:
4284 user = request.user
4285
4286 role_user=Userroles.objects.filter(user_id=request.user.id)
4287 conformation_researcher=""
4288 conformation_lab=""
4289
4290 for role in role_user:
4291 usr_type=role.role_id
4292
4293 if usr_type==1:
4294 conformation_researcher="researcher"
4295 elif usr_type==2:
4296 conformation_lab="conformation_lab"
4297 else:
4298 pass
4299 #for Inbox
4300 message_list=Message.objects.filter(provider_display_status=1)
4301 # message_list = Message.objects.inbox_for(request.user)
4302 # index = Message.objects.filter(recipient=request.user).count()
4303 # no_of_unread = message_list.filter(read_at=None).count()
4304
4305 # #for Outbox
4306 # sentmessage_list = Message.objects.outbox_for(request.user)
4307
4308 return render_to_response('messages/provider_messages_trash.html',
4309 {
4310 "user":user,
4311 'message_list':message_list,
4312 'conformation_researcher':conformation_researcher,
4313 'conformation_lab':conformation_lab,},
4314 context_instance=RequestContext(request))
4315 else :
4316 return redirect("/logout/")
4317
4318
4319
4320def allmessages(request):
4321
4322 return render_to_response("messages/messages_base.html")
4323
4324def messages_inbox(request):
4325
4326 return render_to_response("messages/messages_inbox.html")
4327
4328def messages_compose(request):
4329
4330 users = Userroles.objects.filter(user_id=request.user.id)
4331 rollname = ""
4332 users_list = []
4333 for user in users:
4334 rollname = user.roll_name
4335
4336 if rollname == "researcher":
4337 labusers = Userroles.objects.filter(roll_name="lab")
4338 list1 = []
4339 for i in labusers:
4340 user = User.objects.filter(id=i.user_id)
4341 list2=[]
4342 for j in user:
4343 email = j.email
4344 users_list.append(j.email)
4345
4346 return HttpResponse(json.dumps(users_list), content_type='application/json')
4347
4348@login_required
4349def provider_messages_compose(request):
4350 users = Userroles.objects.filter(user_id=request.user.id)
4351 rollname = ""
4352 users_list = []
4353 for user in users:
4354 rollname = user.roll_name
4355
4356 if rollname == "lab":
4357 labusers = Userroles.objects.filter(roll_name="researcher")
4358 list1 = []
4359 for i in labusers:
4360 user = User.objects.filter(id=i.user_id)
4361 list2=[]
4362 for j in user:
4363 email = j.email
4364 users_list.append(j.email)
4365
4366 return HttpResponse(json.dumps(users_list), content_type='application/json')
4367
4368
4369
4370def sort_by_value(request):
4371 sort_value=""
4372 for key,value in request.GET.items():
4373 sort_value=key
4374
4375 service_value=sort_value.split('*')
4376 services="new_services"
4377 sub_services = Services.objects.filter(id=int(service_value[1]))
4378 service_id = None
4379 for s in sub_services:
4380 service_id = s.id
4381 request.session["filter_services_id"]=service_id
4382 all_labs = Lab.objects.filter(service_id=s.id)
4383 serviceID=int(service_value[1])
4384
4385 return render_to_response('sort-results.html',
4386 {'all_labs':all_labs,
4387 'serviceID':serviceID,
4388 },
4389 context_instance=RequestContext(request))
4390
4391
4392def Quote_accept(request,qut_id):
4393
4394 # Quote_status.objects.filter(quote_id=qut_id).update(
4395 # name="Active-Pending",description="selected but waiting on payment",
4396 # status_id=3)
4397 # Quotes.objects.filter(id=qut_id).update(status_id=3)
4398
4399 #quote_info=Quotes.objects.filter(id=qut_id)
4400 quote_info=Quotes.objects.filter(id=qut_id)
4401 lab_name=""
4402 lab_country=""
4403 res_phone=""
4404 res_email=""
4405 res_name=""
4406
4407 for quote in quote_info:
4408 lab_info=Lab.objects.get(id=quote.lab_id)
4409 lab_name=lab_info.title
4410 lab_country=lab_info.country
4411 res_user_info=Users.objects.get(user_id=quote.researcher_id)
4412 res_phone=res_user_info.phone
4413 res_email=res_user_info.email
4414 res_name=res_user_info.username
4415
4416
4417 return render_to_response('researcher/purchase.html',
4418 {'quote_info':quote_info,
4419 'lab_name':lab_name,
4420 'lab_country':lab_country,
4421 'res_phone':res_phone,
4422 'res_email':res_email,
4423 'res_name':res_name,
4424 'qut_id':qut_id,
4425 },
4426
4427 context_instance=RequestContext(request))
4428
4429
4430def Quote_reject(request,qut_id):
4431 print "this is Quote Rejectance"
4432 print qut_id
4433
4434 Quote_status.objects.filter(quote_id=qut_id).update(
4435 name="DECLINED",description="Quote Rejected",
4436 status_id=2)
4437 Quotes.objects.filter(id=qut_id).update(status_id=2)
4438 messages.success(request,(u"Your Quote has been rejected "))
4439 return HttpResponse("this is quote rejectance")
4440 #return redirect('/buyer/quotes/')
4441
4442
4443def testing(request):
4444 return HttpResponse("this is form")
4445
4446def lab_serch_filters(request):
4447
4448 total_search_list=request.session["total_searchlabs_id"]
4449
4450 if request.GET:
4451 checkd_value_list=[]
4452 frst_filtr_rslt_lst=[]
4453 list_filter_labs = request.GET
4454 myDict = dict(list_filter_labs.iterlists())
4455 fitr_results=[]
4456 for key,value in myDict.items():
4457 checkd_value_list.append(value)
4458 print checkd_value_list
4459 size_checkd_value_list=len(checkd_value_list)
4460
4461 if size_checkd_value_list==1:
4462 ser_search_country=Lab.objects.filter(id__in=total_search_list,country__in=checkd_value_list[0],)
4463 for ser_country in ser_search_country:
4464 frst_filtr_rslt_lst.append(ser_country.id)
4465
4466 ser_search_typeorg=Lab.objects.filter(id__in=total_search_list,typeorg__in=checkd_value_list[0])
4467 for ser_org in ser_search_typeorg:
4468 frst_filtr_rslt_lst.append(ser_org.id)
4469
4470 elif size_checkd_value_list==2:
4471 ser_search_country=Lab.objects.filter(id__in=total_search_list,country__in=checkd_value_list[0],typeorg__in=checkd_value_list[1],
4472 )
4473 for ser_country in ser_search_country:
4474 frst_filtr_rslt_lst.append(ser_country.id)
4475
4476 ser_search_typorg=Lab.objects.filter(id__in=total_search_list,country__in=checkd_value_list[1],typeorg__in=checkd_value_list[0],
4477 )
4478 for ser_org in ser_search_typorg:
4479 frst_filtr_rslt_lst.append(ser_org.id)
4480
4481
4482 elif size_checkd_value_list==3:
4483 pass
4484
4485 lab_results_dsply=Lab.objects.filter(id__in=frst_filtr_rslt_lst)
4486 else:
4487 lab_results_dsply=Lab.objects.filter(id__in=total_search_list)
4488
4489
4490 return render_to_response('lab-serch-results.html',
4491 {'lab_results_dsply':lab_results_dsply},
4492 context_instance=RequestContext(request))
4493
4494
4495def quote_payment_form(request):
4496 return render_to_response('researcher/payment-form.html',
4497 context_instance=RequestContext(request))
4498
4499
4500
4501def trash_messages(request):
4502 trash_value_list=[]
4503 trash_values= request.GET
4504 myDict = dict(trash_values.iterlists())
4505 for key,value in myDict.items():
4506 trash_value_list=value
4507 data1 = Message.objects.filter(id__in=trash_value_list).update(buyer_display_status=1)
4508 msg_val=Message.objects.filter(id__in=trash_value_list)
4509 messages.success(request,(u"Conversation Moved To Trash"))
4510 return HttpResponse("Hiii this is trashbox")
4511
4512def trash_move_inbox(request):
4513 move_inbox_list=[]
4514 move_inbox_values= request.GET
4515 myDict = dict(move_inbox_values.iterlists())
4516 for key,value in myDict.items():
4517 move_inbox_list=value
4518 data1 = Message.objects.filter(id__in=move_inbox_list).update(buyer_display_status=None)
4519 #msg_val=Message.objects.filter(id__in=trash_value_list)
4520 messages.success(request,(u"Conversation Moved To Inbox"))
4521 return HttpResponse("Hiii this is trashbox")
4522
4523
4524def trash_delete(request):
4525 delete_list=[]
4526 delete_values= request.GET
4527 myDict = dict(delete_values.iterlists())
4528 for key,value in myDict.items():
4529 delete_list=value
4530 data1 = Message.objects.filter(id__in=delete_list).update(buyer_display_status=2)
4531 #msg_val=Message.objects.filter(id__in=trash_value_list)
4532 messages.success(request,(u"Conversation Deleted"))
4533 return HttpResponse("Hiii this is trashbox")
4534
4535
4536def move_inbox_trash_provider(request):
4537 inbox_trash_value_list=[]
4538 inbox_trash_values= request.GET
4539 myDict = dict(inbox_trash_values.iterlists())
4540 for key,value in myDict.items():
4541 inbox_trash_value_list=value
4542
4543 print '**********************'
4544 print inbox_trash_value_list
4545 print '**********************'
4546 data1 = Message.objects.filter(id__in=inbox_trash_value_list).update(provider_display_status=1)
4547 return HttpResponse("Hiii this is trashbox")
4548
4549def trash_move_inbox_provider(request):
4550 print "this is trash to inbox"
4551 prvdr_inbox_list=[]
4552 prvdr_inbox_values= request.GET
4553 myDict = dict(prvdr_inbox_values.iterlists())
4554 for key,value in myDict.items():
4555 prvdr_inbox_list=value
4556
4557 print prvdr_inbox_list
4558 data1 = Message.objects.filter(id__in=prvdr_inbox_list).update(provider_display_status=None)
4559 # #msg_val=Message.objects.filter(id__in=trash_value_list)
4560 messages.success(request,(u"Conversation Moved To Inbox"))
4561 return HttpResponse("Hiii this is trashbox")
4562
4563
4564def trash_delete_provider(request):
4565 delete_list=[]
4566 delete_values= request.GET
4567 myDict = dict(delete_values.iterlists())
4568 for key,value in myDict.items():
4569 delete_list=value
4570 print delete_list
4571 data1 = Message.objects.filter(id__in=delete_list).update(provider_display_status=2)
4572 return HttpResponse("Hiii this is trashbox")
4573
4574def sent_box_provider(request):
4575 sentbox_list=[]
4576 sentbox_values= request.GET
4577 myDict = dict(sentbox_values.iterlists())
4578 for key,value in myDict.items():
4579 sentbox_list=value
4580 print sentbox_list
4581 # data1 = Message.objects.filter(id__in=sentbox_list).update(provider_display_status=2)
4582 # #msg_val=Message.objects.filter(id__in=trash_value_list)
4583 # messages.success(request,(u"Conversation Deleted"))
4584 return HttpResponse("Hiii this is trashbox")
4585
4586def buyer_quote_accept_creditcard(request,qut_id):
4587 publishkey=settings.STRIPE_PUBLISHABLE_KEY
4588 email=request.user.email
4589 price=None
4590 Quote_info=Quotes.objects.filter(id=qut_id)
4591 for quote in Quote_info:
4592 price=quote.price
4593 print '***********************'
4594 price_quote=int(price)*100
4595
4596 if request.method == 'POST':
4597 token=request.POST['stripeToken']
4598 print token
4599 try:
4600 stripe_customer = stripe.Customer.create(
4601 card=token,
4602 description=request.user.email
4603 )
4604 charge_custmer=stripe.Charge.create(
4605 amount=price_quote, # in cents
4606 currency="usd",
4607 customer=stripe_customer.id
4608 )
4609
4610 stripe_amount=charge_custmer["amount"]/100
4611 stripe_customer=charge_custmer["customer"]
4612 stripe_charge=charge_custmer["id"]
4613
4614 Quote_payments(quote_id=qut_id,amount=stripe_amount,
4615 customer=stripe_customer,
4616 charge_id=stripe_charge).save()
4617 print '*******************'
4618 print stripe_amount
4619 print charge_custmer
4620 print '*******************'
4621 Quote_status.objects.filter(quote_id=qut_id).update(
4622 name="Active",description="Payment has been made to BioMarketX and Project starts",
4623 status_id=4)
4624 Quotes.objects.filter(id=qut_id).update(status_id=4)
4625
4626 quote_data=Quotes.objects.filter(id=qut_id)
4627 for qutdta in quote_data:
4628 #pass
4629 Orders(
4630 researcher_id=qutdta.researcher_id,
4631 researcher_name=qutdta.researcher_name,
4632 lab_id=qutdta.lab_id,
4633 service_id=qutdta.service_id,
4634 service_name=qutdta.service_name,
4635 desc=qutdta.desc,
4636 notes=qutdta.notes,
4637 price=qutdta.price,
4638 duration=qutdta.duration,
4639 memo=qutdta.memo,
4640 status_id=1,
4641 ).save()
4642
4643 orderid=Orders.objects.latest('created_at').id
4644 servid=str(orderid).zfill(4)
4645 Orders.objects.filter(id=orderid).update(sid=servid)
4646 order_status(order_id=orderid,name="Order Active",
4647 description="Quote paid",status_id=1).save()
4648 quote_files=Quote_files.objects.filter(quote_id=qut_id)
4649
4650 for qutfile in quote_files:
4651 order_files(order_id=orderid,filename=qutfile.filename).save()
4652
4653 except stripe.error.CardError, e:
4654 pass
4655
4656 messages.success(request,(u"Your Transaction Done Succesfully"))
4657 return redirect('/buyer/quotes/')
4658 else:
4659 pass
4660 return render_to_response('researcher/stripe-payments.html',
4661 {'publishkey':publishkey,'qut_id':qut_id},
4662 context_instance=RequestContext(request))
4663
4664def select_payment_type(request,qut_id):
4665 return render_to_response('researcher/payment-type.html',
4666 {'qut_id':qut_id},
4667 context_instance=RequestContext(request))
4668
4669import smtplib
4670from email.mime.multipart import MIMEMultipart
4671from email.mime.text import MIMEText
4672
4673def wiretransfer_payment(request,qut_id):
4674 email_address=request.user.email
4675 print email_address
4676 quote_id=""
4677 price=None
4678 title=""
4679 description=""
4680 quote_data=Quotes.objects.filter(id=qut_id)
4681 for quote in quote_data:
4682 quote_id=quote.sid
4683 price=quote.price
4684 title=quote.service_name
4685 description=quote.desc
4686 subject, from_email, = 'Quote Acceptance Payment Through Wire Transfer', 'from@yopmail.com',
4687 to_email=['vinod_nyros@yahoo.com',email_address]
4688 text_content = 'This is an important message.'
4689 html_content = '<p><strong>QuoteID:</strong>%s</p><p><strong>Title:</strong>%s</p><p><strong>Price:</strong>%s</p><p><strong>Description:</strong>%s</p>'%(quote_id,title,price,description)
4690 msg = EmailMultiAlternatives(subject, text_content, from_email, to_email)
4691 msg.attach_alternative(html_content, "text/html")
4692 msg.send()
4693 Quote_status.objects.filter(quote_id=qut_id).update(
4694 name="Active-Pending",description="selected but waiting on payment",
4695 status_id=3)
4696 Quotes.objects.filter(id=qut_id).update(status_id=3)
4697 quote_data=Quotes.objects.filter(id=qut_id)
4698 for qutdta in quote_data:
4699 #pass
4700 Orders(
4701 researcher_id=qutdta.researcher_id,
4702 researcher_name=qutdta.researcher_name,
4703 lab_id=qutdta.lab_id,
4704 service_id=qutdta.service_id,
4705 service_name=qutdta.service_name,
4706 desc=qutdta.desc,
4707 notes=qutdta.notes,
4708 price=qutdta.price,
4709 duration=qutdta.duration,
4710 memo=qutdta.memo,
4711 status_id=2,
4712 ).save()
4713 orderid=Orders.objects.latest('created_at').id
4714 servid=str(orderid).zfill(4)
4715 Orders.objects.filter(id=orderid).update(sid=servid)
4716 order_status(order_id=orderid,name="Order Accepted Pending",
4717 description="Quote waiting for ADMIN to approval",
4718 status_id=1).save()
4719
4720 messages.success(request,(u"Email has been sent to you.My specialist will contact you shortly"))
4721 return redirect('/buyer/quotes/')
4722
4723 #return HttpResponse("hiiiii this is wire transfer payments")
4724
4725
4726
4727def provider_orders(request):
4728 dashboard_type = "provider"
4729 role_user=Userroles.objects.get(user_id=request.user.id).role_id
4730 if dashboard_type == "provider" and role_user == 2:
4731 user = request.user
4732 userid=request.user.id
4733 labID=None
4734 labdetails = Lab.objects.filter(user_id=userid)
4735 for lab in labdetails:
4736 labID=lab.id
4737
4738 if labID:
4739 print '*******************'
4740 print labID
4741 print '*******************'
4742 display_list=[]
4743 display_orders=Orders.objects.filter(lab_id=labID)
4744
4745 return render_to_response('lab/provider-orders.html',{'display_orders':display_orders, 'user':user,})
4746 else:
4747 return render_to_response('lab/provider-orders.html',)
4748 else :
4749 return redirect("/logout/")
4750
4751
4752@login_required
4753def privider_order_desc(request,ordr_id):
4754 dashboard_type = "provider"
4755 role_user=Userroles.objects.get(user_id=request.user.id).role_id
4756 if dashboard_type == "provider" and role_user == 2:
4757 user = request.user
4758 userid=request.user.id
4759 labID=None
4760 labdetails = Lab.objects.filter(user_id=userid)
4761 for lab in labdetails:
4762 labID=lab.id
4763
4764 if labID:
4765 print '*******************'
4766 print labID
4767 print '*******************'
4768 display_list=[]
4769 display_orders=Orders.objects.filter(lab_id=labID)
4770
4771 download_file=[]
4772 download=order_files.objects.filter(order_id=ordr_id)
4773
4774 for downld in download:
4775 #download_file.append(downld.filename)
4776 download_file1=str(downld.filename).replace('quotes/','')
4777 download_file.append(download_file1)
4778 lenght_download=len(download_file)
4779 order_info=Orders.objects.filter(id=ordr_id)
4780
4781 print '********************'
4782 print download_file
4783 print download
4784
4785 print '********************'
4786
4787
4788 return render_to_response('lab/provider-order-desc.html',{'user':user,
4789 'display_orders':display_orders,
4790 'order_info':order_info,
4791 'download_file':download_file,
4792 'lenght_download':lenght_download})
4793 else :
4794 return redirect("/logout/")
4795
4796 #return HttpResponse("hii this is testing the providers orders")
4797
4798
4799def buyer_orders(request):
4800 dashboard_type = "buyer"
4801 print request.user.id
4802 role_user=Userroles.objects.get(user_id=request.user.id).role_id
4803 if dashboard_type == "buyer" and role_user == 1:
4804 conformation_researcher="researcher"
4805 user = request.user
4806 buyer_orders=Orders.objects.filter(researcher_id=request.user.id,
4807 )
4808 print '*******************'
4809 print buyer_orders
4810 print '*******************'
4811 return render_to_response('researcher/buyer-orders.html',
4812 {'buyer_orders':buyer_orders,"conformation_researcher":conformation_researcher,
4813 'user':user,})
4814
4815 else :
4816 return redirect("/logout/")
4817
4818
4819@login_required
4820def buyer_order_desc(request,ordr_id):
4821 dashboard_type = "buyer"
4822 role_user=Userroles.objects.get(user_id=request.user.id).role_id
4823 if dashboard_type == "buyer" and role_user == 1:
4824 user = request.user
4825 userid=request.user.id
4826 # labID=None
4827 # labdetails = Lab.objects.filter(user_id=userid)
4828 # for lab in labdetails:
4829 # labID=lab.id
4830
4831 labID=None
4832 lab_name=""
4833 order_info=Orders.objects.filter(id=ordr_id)
4834 for ordr in order_info:
4835 labID=ordr.lab_id
4836
4837 labinfo=Lab.objects.filter(id=labID)
4838 for lab in labinfo:
4839 lab_name=lab.title
4840 download_file=[]
4841 download=order_files.objects.filter(order_id=ordr_id)
4842
4843 for downld in download:
4844 #download_file.append(downld.filename)
4845 download_file1=str(downld.filename).replace('quotes/','')
4846 download_file.append(download_file1)
4847 lenght_download=len(download_file)
4848
4849 buyer_orders=Orders.objects.filter(researcher_id=request.user.id)
4850
4851 return render_to_response('researcher/buyer-order-desc.html',{
4852 'buyer_orders':buyer_orders,
4853 'user':user,
4854 'order_info':order_info,
4855 'lab_name':lab_name,
4856 'download_file':download_file,
4857 'lenght_download':lenght_download})
4858 else :
4859 return redirect("/logout/")
4860
4861@login_required
4862def workroom_allocation(request,ordr_id):
4863 dashboard_type = "buyer"
4864 role_user=Userroles.objects.get(user_id=request.user.id).role_id
4865 if dashboard_type == "buyer" and role_user == 1:
4866 if request.method == 'POST':
4867 form = WorkroomForm(request.POST,request.FILES)
4868 if form.is_valid():
4869 print request.POST
4870 print request.FILES
4871 print type(request.FILES)
4872 files_list=[]
4873 files_values= request.FILES
4874 myDict = dict(files_values.iterlists())
4875 for key,value in myDict.items():
4876 files_list=value
4877 desc = request.POST.get('description')
4878 send_file = form.cleaned_data['send_file']
4879 send_file1 = request.POST.getlist('send_file[]')
4880
4881 print '********************'
4882 print desc
4883 print len(files_list)
4884 print '********************'
4885 role_name=""
4886 if role_user==1:
4887 role_name="researcher"
4888 elif role_user==2:
4889 role_name=lab
4890 Workroom(description=desc,
4891 name=request.user,
4892 order_id=ordr_id,
4893 user_role=role_name,
4894 user_id=request.user.id
4895 ).save()
4896
4897 workroom_id=Workroom.objects.latest('created_at').id
4898 for files in files_list:
4899 workroom_files(workroom_id=workroom_id,order_id=ordr_id,filename=files,).save()
4900 return redirect('/buyer/workroom/%s/'%ordr_id)
4901 else:
4902 form = WorkroomForm()
4903 workroom_info=Workroom.objects.filter(order_id=ordr_id)
4904 order_info=Orders.objects.filter(id=ordr_id)
4905 workroomfile=workroom_files.objects.filter(order_id=ordr_id)
4906 print '*******************'
4907 print workroom_info
4908 print '*******************'
4909 return render(request, 'researcher/workroom_new.html', {'form':form,
4910 'workroom_info':workroom_info,'order_info':order_info,
4911 'workroomfile':workroomfile,
4912 },context_instance=RequestContext(request))
4913 else :
4914 return redirect("/logout/")
4915
4916
4917@login_required
4918def provider_workroom(request,ordr_id):
4919 dashboard_type = "provider"
4920 role_user=Userroles.objects.get(user_id=request.user.id).role_id
4921 if dashboard_type == "provider" and role_user == 2:
4922
4923 if request.method == 'POST':
4924 form = WorkroomForm(request.POST,request.FILES)
4925 if form.is_valid():
4926 print request.POST
4927 print request.FILES
4928 print type(request.FILES)
4929 files_list=[]
4930 files_values= request.FILES
4931 myDict = dict(files_values.iterlists())
4932 for key,value in myDict.items():
4933 files_list=value
4934 desc = request.POST.get('description')
4935 send_file = form.cleaned_data['send_file']
4936 send_file1 = request.POST.getlist('send_file[]')
4937
4938 print '********************'
4939 print desc
4940 print len(files_list)
4941 print '********************'
4942 role_name=""
4943 if role_user==1:
4944 role_name="researcher"
4945 elif role_user==2:
4946 role_name="lab"
4947 Workroom(description=desc,
4948 name=request.user,
4949 order_id=ordr_id,
4950 user_role=role_name,
4951 user_id=request.user.id
4952 ).save()
4953
4954 workroom_id=Workroom.objects.latest('created_at').id
4955 for files in files_list:
4956 workroom_files(workroom_id=workroom_id,order_id=ordr_id,filename=files,).save()
4957 return redirect('/provider/workroom/%s/'%ordr_id)
4958 else:
4959 form = WorkroomForm()
4960 workroom_info=Workroom.objects.filter(order_id=ordr_id)
4961 order_info=Orders.objects.filter(id=ordr_id)
4962 workroomfile=workroom_files.objects.filter(order_id=ordr_id)
4963 print '*******************'
4964 print workroom_info
4965 print '*******************'
4966 return render(request, 'lab/provider-workroom.html', {'form':form,
4967 'workroom_info':workroom_info,'order_info':order_info,
4968 'workroomfile':workroomfile,
4969
4970 },context_instance=RequestContext(request))
4971 else :
4972 return redirect("/logout/")
4973
4974
4975@login_required(login_url='/backend/login/')
4976def admin_edit_static(request):
4977 print "admin_edit_static"
4978 # print request.session['edit_name']
4979 # value=edit_about.objects.filter(id)
4980 # print "_____________________________________________________________"
4981 # print value
4982 # print "_______________________________________________________________"
4983 info=edit_about.objects.filter(id=1)
4984 information_about=None
4985 for i in info:
4986 print i.data
4987 information_about=i.data
4988 if request.method == 'POST':
4989 form = about_editForm(request.POST)
4990 # print form
4991 print request.POST
4992 if form.is_valid():
4993 about_data = request.POST.get("Description")
4994 print about_data
4995 edit_about.objects.filter(id=1).update(data=about_data)
4996 return redirect('/about/')
4997 else:
4998 print "not valied"
4999 else:
5000
5001 form = about_editForm()
5002 print "*****************"
5003 print information_about
5004 print "*********************"
5005 return render_to_response('admin/about_edit.html',
5006 {"form":form,"information_about":information_about},
5007 context_instance=RequestContext(request))
5008
5009@login_required(login_url='/backend/login/')
5010def admin_edit_staticdata_display(request):
5011 print "admin_edit_staticdata_display"
5012 info=edit_about.objects.filter(id=1)
5013 information=None
5014 for i in info:
5015 print i.data
5016 information=i.data
5017 # return HttpResponse(information)
5018 print "*********************"
5019 print information
5020 print "**************************8"
5021 return render_to_response('new_about.html',
5022 {"information":information},
5023 context_instance=RequestContext(request))
5024 # if request.method == 'POST':
5025 # form = about_editForm(request.POST)
5026 # # print form
5027 # print request.POST
5028 # if form.is_valid():
5029 # about_data = request.POST.get("Description")
5030 # print about_data
5031 # edit_about.objects.filter(id=1).update(data=about_data)
5032 # else:
5033 # print "not valied"
5034 # else:
5035
5036 # form = about_editForm()
5037
5038 # return render_to_response('admin/static_edit.html',
5039 # {"form":form},
5040 # context_instance=RequestContext(request))
5041
5042
5043
5044@login_required(login_url='/backend/login/')
5045def admin_staticdata(request):
5046 print "admin_staticdata"
5047 about_page_getdata = request.GET
5048 print "_______________________________________________________________"
5049 # print about_page_getdata
5050 print "_______________________________________________________________"
5051 myabout = dict(about_page_getdata.iterlists())
5052 about_static_value=None
5053 for key,value in myabout.items():
5054 about_static_value=value
5055 # print checkd_value_list
5056 for i in about_static_value:
5057 about= i
5058 # print i
5059 # print "_______________________________________________________________"
5060 # print about
5061 # print "_______________________________________________________________"
5062 request.session['about_edit'] =about
5063 test_about=edit_about.objects.filter(id=1)
5064 if test_about:
5065 about_data=edit_about.objects.filter(id=1).update(data=about)
5066 else:
5067 edit_about.objects.create(data=about)
5068 # for a in about_data.iteritems():
5069 # print a.data
5070 # print request.GET
5071
5072 return render_to_response('admin/static_edit.html',
5073 {"about":about},
5074 context_instance=RequestContext(request))
5075
5076
5077
5078
5079@login_required(login_url='/backend/login/')
5080def about_static(request):
5081
5082 return render_to_response('admin/about_edit.html',
5083 {},
5084 context_instance=RequestContext(request))
5085
5086
5087
5088
5089
5090def about(request):
5091 '''About View'''
5092
5093 user = request.user
5094 role_user=Userroles.objects.filter(user_id=request.user.id)
5095 conformation_researcher=""
5096 conformation_lab=""
5097
5098 for role in role_user:
5099 usr_type=role.role_id
5100
5101 if usr_type==1:
5102 conformation_researcher="researcher"
5103 elif usr_type==2:
5104 conformation_lab="conformation_lab"
5105 else:
5106 pass
5107
5108 about="about_page"
5109 info=edit_about.objects.filter(id=1)
5110 information=None
5111 for i in info:
5112 information=i.data
5113 return render_to_response('new_about.html',{"information":information,"about":about,"user":user,
5114 'conformation_researcher':conformation_researcher,'conformation_lab':conformation_lab,},
5115 context_instance=RequestContext(request))
5116
5117
5118@login_required(login_url='/backend/login/')
5119def consulting_edit(request):
5120 print "consulting_edit"
5121 consult_page_getdata =request.GET
5122 print "*********************************"
5123 # print request.GET
5124 print "*********************************"
5125 myconsult = dict(consult_page_getdata.iterlists())
5126 # print myconsult
5127 consult_static_value=None
5128 for key,value in myconsult.items():
5129 consult_static_value=value
5130 # print checkd_value_list
5131 consult=None
5132 for i in consult_static_value:
5133 consult= i
5134 print "**********************"
5135 # print consult
5136 print "*************************"
5137 request.session['consult_edit'] =consult
5138 print request.session['consult_edit']
5139
5140 return HttpResponse ("consulting_edit")
5141
5142@login_required(login_url='/backend/login/')
5143def consulting_static(request):
5144 print "consulting_static"
5145 consult_data=request.session.get('consult_edit')
5146 print "(((((((((((((((((((((("
5147 # print consult_data
5148 if request.method == 'POST':
5149 form = about_editForm(request.POST)
5150 if form.is_valid():
5151 consult_table_data = request.POST.get("Description")
5152 print consult_table_data
5153 consult_info=edit_about.objects.filter(id=2)
5154 if consult_info:
5155 edit_about.objects.filter(id=2).update(data=consult_table_data)
5156 else:
5157 edit_about.objects.create(data=consult_table_data)
5158 print "valied"
5159 return redirect("/consulting/")
5160
5161
5162
5163 else:
5164 print "not valied"
5165 else:
5166 form=about_editForm()
5167 return render_to_response('admin/consult_edit.html',{"form":form,"consult_data":consult_data},
5168 context_instance=RequestContext(request))
5169
5170
5171@login_required(login_url='/backend/login/')
5172def projects_edit(request):
5173 print "projects_edit"
5174 project_data=request.session.get('project_edit')
5175 print "(((((((((((((((((((((("
5176 # print project_data
5177 if request.method == 'POST':
5178 form = about_editForm(request.POST)
5179 if form.is_valid():
5180 project_table_data = request.POST.get("Description")
5181 print project_table_data
5182 project_info=edit_about.objects.filter(id=3)
5183 if project_info:
5184 edit_about.objects.filter(id=3).update(data=project_table_data)
5185 else:
5186 edit_about.objects.create(data=project_table_data)
5187 print "valied"
5188 return redirect("/projects/")
5189
5190
5191
5192 else:
5193 print "not valied"
5194 else:
5195 form=about_editForm()
5196 return render_to_response('admin/project_edit.html',{"form":form,"project_data":project_data},
5197 context_instance=RequestContext(request))
5198 return HttpResponse ("parent_name")
5199
5200
5201
5202
5203@login_required(login_url='/backend/login/')
5204def projects_static(request):
5205 print "projects_static"
5206 project_page_getdata =request.GET
5207 # print project_page_getdata
5208 myproject = dict(project_page_getdata.iterlists())
5209 # print myconsult
5210 project_static_value=None
5211 for key,value in myproject.items():
5212 project_static_value=value
5213 # print checkd_value_list
5214 project=None
5215 for i in project_static_value:
5216 project= i
5217 # print "**********************"
5218 # print project
5219 # print "*************************"
5220 request.session['project_edit'] =project
5221 print request.session['project_edit']
5222 return HttpResponse ("projects")