[chronojump-server] Checking if image is modified when updating player



commit c790423af7781e0e38e8b10e37ff807f9de14483
Author: Max Ros i Morejon <mros33 gmail com>
Date:   Mon Apr 8 12:10:41 2019 +0200

    Checking if image is modified when updating player

 .../chronojump_networks/organizations/api/views.py | 24 +++++++++++-----------
 .../chronojump_networks/organizations/models.py    |  2 +-
 .../organizations/players/players_list.html        |  9 ++++++--
 3 files changed, 20 insertions(+), 15 deletions(-)
---
diff --git a/chronojumpserver-django/chronojump_networks/organizations/api/views.py 
b/chronojumpserver-django/chronojump_networks/organizations/api/views.py
index 46c09b1..d243656 100644
--- a/chronojumpserver-django/chronojump_networks/organizations/api/views.py
+++ b/chronojumpserver-django/chronojump_networks/organizations/api/views.py
@@ -158,18 +158,18 @@ class PlayerListView(ListCreateAPIView):
         o.weight = float(data['weight'][0])
         o.rfid = str(data['rfid'][0])
         o.organization_id = int(self.kwargs['organization_id'])
-        try:
-            photo = data['image'][0]
-        except KeyError:
-            print("no photo")
-            o.image = '../static/images/player.svg'
-        else:
-            print("yes photo")
-            photo = data['image'][0]
-            new_photo = photo.name + '_' + str(int(time()))
-            o.image = 'players/' + new_photo
-            full_path = os.path.join(settings.MEDIA_ROOT, 'players', new_photo)
-            path = default_storage.save(full_path, ContentFile(photo.read()))  
+        if data['cha'][0] == "True":
+            print("modifica foto")
+            try:
+                photo = data['image'][0]
+            except KeyError:
+                o.image = '../static/images/player.svg'
+            else:
+                photo = data['image'][0]
+                new_photo = photo.name + '_' + str(int(time()))
+                o.image = 'players/' + new_photo
+                full_path = os.path.join(settings.MEDIA_ROOT, 'players', new_photo)
+                path = default_storage.save(full_path, ContentFile(photo.read()))  
         o.save()
         return JsonResponse({}, status=200, safe=False)
     
diff --git a/chronojumpserver-django/chronojump_networks/organizations/models.py 
b/chronojumpserver-django/chronojump_networks/organizations/models.py
index 88de1fd..b0af43c 100644
--- a/chronojumpserver-django/chronojump_networks/organizations/models.py
+++ b/chronojumpserver-django/chronojump_networks/organizations/models.py
@@ -219,7 +219,7 @@ class Player(ChronojumpBaseModel):
     height = models.FloatField(default=0)
     weight = models.FloatField(default=0)
     rfid = models.CharField(max_length=23, unique=True)
-    image = models.FileField(upload_to='players', null=True, blank=True, 
default='chronojump_networks/static/images/no_image.png')
+    image = models.FileField(upload_to='players', null=True, blank=True, 
default='chronojump_networks/static/images/player.svg')
     is_available = models.BooleanField(default=True)
     number = models.IntegerField(null=True,blank=True)
 
diff --git a/chronojumpserver-django/chronojump_networks/templates/organizations/players/players_list.html 
b/chronojumpserver-django/chronojump_networks/templates/organizations/players/players_list.html
index 697028f..efaf79d 100644
--- a/chronojumpserver-django/chronojump_networks/templates/organizations/players/players_list.html
+++ b/chronojumpserver-django/chronojump_networks/templates/organizations/players/players_list.html
@@ -49,7 +49,8 @@
 <script src="https://cdn.datatables.net/fixedcolumns/3.2.4/js/dataTables.fixedColumns.min.js";></script>-->
 <script>
   var csrftoken = jQuery("[name=csrfmiddlewaretoken]").val();
-
+  var image_changed = "False";
+  
   $(document).ready(function() {
     /* Datatable for players in groups */
     var table_players = $('#players').DataTable({
@@ -199,6 +200,7 @@
       enableCheckboxSelection('selectPlayerCheckbox', 'removePlayerBtn');
       
       $('.editPlayerBtn').on('click', function(){
+        image_changed = "False";
         var player = table_players.row($(this).parents('tr')).data();
 
         // Set the title for new player task
@@ -259,6 +261,7 @@
     
     $('#id_image').on('change', function() {
         //$("#imgView").attr("src", $('#id_image')[0].files[0]);
+        image_changed = "True";
     })
     
      // Get all the values in the form into json object 
@@ -281,6 +284,7 @@
         formdata.append('weight',player_weight);
         formdata.append('number',player_number);
         formdata.append('rfid',player_rfid);
+        formdata.append('cha',image_changed);
         console.log(formdata);
         return formdata;
     }
@@ -295,7 +299,8 @@
       $('#number').val(player.number);
       $('#input_rfid').val(player.rfid);
       console.log(player.image);      
-      $("#imgView").attr("src", player.image);
+      $('#imgView').attr("src", player.image);
+      $('#id_image').val(player.image.name);
     }
     
     function putPlayer(player) {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]