Kaynağa Gözat

Bugfix on counter pages with no seum

Denis Merigoux 9 yıl önce
ebeveyn
işleme
29c07e22b8
2 değiştirilmiş dosya ile 40 ekleme ve 36 silme
  1. 2 2
      counter/templates/createUserDone.html
  2. 38 34
      counter/views.py

+ 2 - 2
counter/templates/createUserDone.html

@@ -11,9 +11,9 @@
11 11
                 <h2 class="panel-title">Victoire !</h2>
12 12
             </div>
13 13
             <div class=" panel-body">
14
-                <p>Tu as créé ton compteur !</p>
14
+                <p>Tu as créé ton compteur ! Ton login est <b>{{login}}</b>.</p>
15 15
                 <div class="text-center">
16
-                    <a href="{% url 'home' %}" type="submit" class="btn btn-default btn-success">Retour à l'accueil</a>
16
+                    <a href="{% url 'login' %}" type="submit" class="btn btn-default btn-success">Connecte-toi pour accéder au site !</a>
17 17
                 </div>
18 18
             </div>
19 19
         </div>

+ 38 - 34
counter/views.py

@@ -297,7 +297,6 @@ def counter(request, id_counter):
297 297
 
298 298
     counter = Counter.objects.get(pk=id_counter)
299 299
     resets = Reset.objects.filter(counter=counter).order_by('-timestamp')
300
-    firstReset = copy.copy(resets[len(resets) - 1])
301 300
     timezero = timedelta(0)
302 301
     # Display
303 302
     if (resets.count() == 0):
@@ -306,6 +305,7 @@ def counter(request, id_counter):
306 305
         counter.lastReset.noSeum = True
307 306
         seumFrequency = 'inconnu'
308 307
     else:
308
+        firstReset = copy.copy(resets[len(resets) - 1])
309 309
         counter.lastReset = resets[0]
310 310
         counter.lastReset.noSeum = False
311 311
         if (counter.lastReset.who is None or
@@ -334,38 +334,42 @@ def counter(request, id_counter):
334 334
             format="dd/MM/Y HH:mm")
335 335
     # Timeline graph
336 336
     # Data pre-processing
337
-    resets_graph = resets
338
-    for reset in resets_graph:
339
-        reset.timestamp = {
340
-            'v': reset.timestamp.timestamp(),
341
-            'f': "Il y a " + format_timedelta(
342
-                datetime.now() - reset.timestamp.replace(tzinfo=None),
343
-                locale='fr', threshold=1)
344
-        }
345
-        if reset.selfSeum:
346
-            reset.Seum = {'v': 0, 'f': reset.reason}
347
-        else:
348
-            reset.Seum = {'v': 0, 'f': 'De ' + reset.who.trigramme + ' : ' +
349
-                          reset.reason}
350
-    # Drawing the graph
351
-    data = ModelDataSource(resets, fields=['timestamp', 'Seum'])
352
-    chart = gchart.LineChart(data, options={
353
-        'lineWidth': 0,
354
-        'pointSize': 10,
355
-        'title': '',
356
-        'vAxis': {'ticks': []},
357
-        'hAxis': {'ticks': [{
358
-            'v': firstReset.timestamp.timestamp(),
359
-            'f': 'Il y a ' + format_timedelta(
360
-                datetime.now() - firstReset.timestamp.replace(tzinfo=None),
361
-                locale='fr', threshold=1)
362
-        }, {
363
-            'v': datetime.now().timestamp(),
364
-            'f': 'Présent'}
365
-        ]},
366
-        'legend': 'none',
367
-        'height': 90
368
-    })
337
+    if not counter.lastReset.noSeum:
338
+        resets_graph = resets
339
+        for reset in resets_graph:
340
+            reset.timestamp = {
341
+                'v': reset.timestamp.timestamp(),
342
+                'f': "Il y a " + format_timedelta(
343
+                    datetime.now() - reset.timestamp.replace(tzinfo=None),
344
+                    locale='fr', threshold=1)
345
+            }
346
+            if reset.selfSeum:
347
+                reset.Seum = {'v': 0, 'f': reset.reason}
348
+            else:
349
+                reset.Seum = {'v': 0, 'f': 'De ' + reset.who.trigramme + ' : ' +
350
+                              reset.reason}
351
+        # Drawing the graph
352
+        data = ModelDataSource(
353
+            resets, fields=['timestamp', 'Seum'])
354
+        chart = gchart.LineChart(data, options={
355
+            'lineWidth': 0,
356
+            'pointSize': 10,
357
+            'title': '',
358
+            'vAxis': {'ticks': []},
359
+            'hAxis': {'ticks': [{
360
+                'v': firstReset.timestamp.timestamp(),
361
+                'f': 'Il y a ' + format_timedelta(
362
+                    datetime.now() - firstReset.timestamp.replace(tzinfo=None),
363
+                    locale='fr', threshold=1)
364
+            }, {
365
+                'v': datetime.now().timestamp(),
366
+                'f': 'Présent'}
367
+            ]},
368
+            'legend': 'none',
369
+            'height': 90
370
+        })
371
+    else:
372
+        chart = None
369 373
 
370 374
     return render(request, 'counterTemplate.html', {
371 375
         'counter': counter,
@@ -409,7 +413,7 @@ def createUser(request):
409 413
             counter.user = user
410 414
             counter.email_notifications = False
411 415
             counter.save()
412
-            return render(request, 'createUserDone.html', {})
416
+            return render(request, 'createUserDone.html', {'login': username})
413 417
     else:
414 418
         return render(request, 'createUser.html', {'error': None})
415 419