Commit 43d3c4e0dfb5759a79bb7ec0f4f3871a2f00ec27
1 parent
ad311ac7
Exists in
master
and in
2 other branches
Adding possibility to send image messages via app/api
Showing
1 changed file
with
33 additions
and
7 deletions
Show diff stats
api/views.py
@@ -219,6 +219,7 @@ class ChatViewset(viewsets.ModelViewSet): | @@ -219,6 +219,7 @@ class ChatViewset(viewsets.ModelViewSet): | ||
219 | 219 | ||
220 | info["data"] = {} | 220 | info["data"] = {} |
221 | info["data"]["messages"] = json_r | 221 | info["data"]["messages"] = json_r |
222 | + info["data"]["message_sent"] = {} | ||
222 | 223 | ||
223 | info["message"] = "" | 224 | info["message"] = "" |
224 | info["type"] = "" | 225 | info["type"] = "" |
@@ -234,11 +235,23 @@ class ChatViewset(viewsets.ModelViewSet): | @@ -234,11 +235,23 @@ class ChatViewset(viewsets.ModelViewSet): | ||
234 | @csrf_exempt | 235 | @csrf_exempt |
235 | @list_route(methods = ['POST'], permissions_classes = [IsAuthenticated]) | 236 | @list_route(methods = ['POST'], permissions_classes = [IsAuthenticated]) |
236 | def send_message(self, request): | 237 | def send_message(self, request): |
237 | - username = request.data['email'] | ||
238 | - user_two = request.data['user_two'] | ||
239 | - subject = request.data['subject'] | ||
240 | - msg_text = request.data['text'] | ||
241 | - create_date = request.data['create_date'] | 238 | + if 'file' in request.data: |
239 | + file = request.FILES['file'] | ||
240 | + | ||
241 | + data = json.loads(request.data['data']) | ||
242 | + | ||
243 | + username = data['email'] | ||
244 | + user_two = data['user_two'] | ||
245 | + subject = data['subject'] | ||
246 | + msg_text = data['text'] | ||
247 | + create_date = data['create_date'] | ||
248 | + else: | ||
249 | + file = None | ||
250 | + username = request.data['email'] | ||
251 | + user_two = request.data['user_two'] | ||
252 | + subject = request.data['subject'] | ||
253 | + msg_text = request.data['text'] | ||
254 | + create_date = request.data['create_date'] | ||
242 | 255 | ||
243 | info = {} | 256 | info = {} |
244 | 257 | ||
@@ -263,6 +276,10 @@ class ChatViewset(viewsets.ModelViewSet): | @@ -263,6 +276,10 @@ class ChatViewset(viewsets.ModelViewSet): | ||
263 | message.text = "<p>" + msg_text + "</p>" | 276 | message.text = "<p>" + msg_text + "</p>" |
264 | message.user = user | 277 | message.user = user |
265 | message.talk = talk | 278 | message.talk = talk |
279 | + message.subject = subject | ||
280 | + | ||
281 | + if not file is None: | ||
282 | + message.image = file | ||
266 | 283 | ||
267 | message.save() | 284 | message.save() |
268 | 285 | ||
@@ -288,6 +305,14 @@ class ChatViewset(viewsets.ModelViewSet): | @@ -288,6 +305,14 @@ class ChatViewset(viewsets.ModelViewSet): | ||
288 | 305 | ||
289 | ChatVisualizations.objects.create(viewed = False, message = message, user = user_to) | 306 | ChatVisualizations.objects.create(viewed = False, message = message, user = user_to) |
290 | 307 | ||
308 | + serializer = ChatSerializer(message) | ||
309 | + | ||
310 | + json_r = json.dumps(serializer.data) | ||
311 | + json_r = json.loads(json_r) | ||
312 | + | ||
313 | + info["data"] = {} | ||
314 | + info["data"]["message_sent"] = json_r | ||
315 | + | ||
291 | info["message"] = _("Message sent successfully!") | 316 | info["message"] = _("Message sent successfully!") |
292 | info["success"] = True | 317 | info["success"] = True |
293 | info["number"] = 1 | 318 | info["number"] = 1 |
@@ -296,13 +321,14 @@ class ChatViewset(viewsets.ModelViewSet): | @@ -296,13 +321,14 @@ class ChatViewset(viewsets.ModelViewSet): | ||
296 | info["success"] = False | 321 | info["success"] = False |
297 | info["number"] = 0 | 322 | info["number"] = 0 |
298 | else: | 323 | else: |
324 | + info["data"] = {} | ||
325 | + info["data"]["message_sent"] = {} | ||
326 | + | ||
299 | info["message"] = _("No information received!") | 327 | info["message"] = _("No information received!") |
300 | info["success"] = False | 328 | info["success"] = False |
301 | info["number"] = 0 | 329 | info["number"] = 0 |
302 | 330 | ||
303 | - info["data"] = {} | ||
304 | info["data"]["messages"] = [] | 331 | info["data"]["messages"] = [] |
305 | - | ||
306 | info["type"] = "" | 332 | info["type"] = "" |
307 | info["title"] = _("Amadeus") | 333 | info["title"] = _("Amadeus") |
308 | info['extra'] = 0 | 334 | info['extra'] = 0 |