From 489aebbb4a80de3dea31cf87abe056acde4a23bc Mon Sep 17 00:00:00 2001
From: Piotr Gawron <piotr.gawron@uni.lu>
Date: Sat, 4 Mar 2017 15:59:38 +0100
Subject: [PATCH] when listing visits of subject add-visit button is added

---
 smash/web/templates/subjects/visitdetails.html |  2 ++
 smash/web/urls.py                              |  1 +
 smash/web/views.py                             | 11 ++++++++---
 3 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/smash/web/templates/subjects/visitdetails.html b/smash/web/templates/subjects/visitdetails.html
index 48e83c48..02933fd2 100644
--- a/smash/web/templates/subjects/visitdetails.html
+++ b/smash/web/templates/subjects/visitdetails.html
@@ -24,6 +24,7 @@
 <div class="box box-info">
   <div class="box-header with-border">
     <a href="{% url 'web.views.visits' %}" class="btn btn-block btn-default" onclick="history.back()">Back</a>
+    <a href="{% url 'web.views.visit_add' id %}" type = "button" class="btn btn-block btn-default">Add visit</a>
   </div>
 
   <div class="box-body">
@@ -113,6 +114,7 @@
 
       {% endfor %}
     </form>
+
   </div><!-- /.box-body -->
 
 </div>
diff --git a/smash/web/urls.py b/smash/web/urls.py
index 1f5142ff..dd2a30e7 100644
--- a/smash/web/urls.py
+++ b/smash/web/urls.py
@@ -31,6 +31,7 @@ urlpatterns = [
     url(r'visits/approaching$', views.approaching_visits_without_appointments, name='web.views.approaching_visits_without_appointments'),
     url(r'visits/details/(?P<id>\d+)$', views.visit_details, name='web.views.visit_details'),
     url(r'visits/add$', views.visit_add, name='web.views.visit_add'),
+    url(r'visits/add/(?P<subject_id>\d+)$', views.visit_add, name='web.views.visit_add'),
     url(r'visit/mark/(?P<id>\d+)/(?P<as_what>[A-z]+)$', views.visit_mark, name='web.views.visit_mark'),
 
     url(r'subjects$', views.subjects, name='web.views.subjects'),
diff --git a/smash/web/views.py b/smash/web/views.py
index 4d08e634..a8d50376 100644
--- a/smash/web/views.py
+++ b/smash/web/views.py
@@ -235,14 +235,19 @@ def visit_mark(request, id, as_what):
 
 
 
-def visit_add(request):
+def visit_add(request, subject_id = -1):
 	if request.method == 'POST':
 		form = VisitAddForm(request.POST, request.FILES)
 		if form.is_valid():
 			form.save()
 			return redirect(visits)
 	else:
-		form = VisitAddForm()
+		subjects = Subject.objects.filter(id=subject_id)
+		subject = None
+		if len(subjects)>0:
+			subject = subjects[0]
+		form = VisitAddForm(initial={'subject':subject})
+
 
 	return wrap_response(request, 'visits/add.html', {'form': form})
 
@@ -334,7 +339,7 @@ def subject_visit_details(request, id):
 
 	#print len(endlist)
 	#print endlist[0]
-	return wrap_response(request, 'subjects/visitdetails.html', {'display': endlist})
+	return wrap_response(request, 'subjects/visitdetails.html', {'display': endlist, "id":id})
 
 def doctors(request):
 	doctors_list = Worker.objects.order_by('-last_name')
-- 
GitLab