From 0c7fafa824308bfe5a142040a93e95edf5b9867c Mon Sep 17 00:00:00 2001
From: Piotr Gawron <piotr.gawron@uni.lu>
Date: Thu, 9 Mar 2017 16:19:11 +0100
Subject: [PATCH] export to csv fixed (new line doesn't break csv)

---
 smash/web/models.py | 2 +-
 smash/web/views.py  | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/smash/web/models.py b/smash/web/models.py
index 3c853973..5b274604 100644
--- a/smash/web/models.py
+++ b/smash/web/models.py
@@ -587,7 +587,7 @@ class Appointment(models.Model):
 
     def title(self):
         if self.visit.subject.screening_number=="---":
-            return self.comment.replace("\n", ";")
+            return self.comment.replace("\n", ";").replace("\r", ";")
         else:
             title = self.visit.subject.first_name + " " + self.visit.subject.last_name + " type: "
             for type in self.appointment_types.all():
diff --git a/smash/web/views.py b/smash/web/views.py
index 70e15841..0466b85a 100644
--- a/smash/web/views.py
+++ b/smash/web/views.py
@@ -663,7 +663,7 @@ def write_subjects_to_csv(writer):
 		row = []
 		for field in subject_fields:
 			row.append(getattr(subject,field.name))
-		writer.writerow([unicode(s).encode("utf-8") for s in row])
+		writer.writerow([unicode(s).replace("\n", ";").replace("\r", ";").encode("utf-8") for s in row])
 
 def write_appointments_to_csv(writer):
 	appointments_fields = []
@@ -695,7 +695,7 @@ def write_appointments_to_csv(writer):
 		for type in appointment.appointment_types.all():
 			type_string+=type.code+","
 		row.append(type_string)
-		writer.writerow([unicode(s).encode("utf-8") for s in row])
+		writer.writerow([unicode(s).replace("\n", ";").replace("\r", ";").encode("utf-8") for s in row])
 
 def export(request):
 	return wrap_response(request, 'export/index.html',{})
-- 
GitLab