Browse Source

fix timedelta display in task view

devel
Dmitry Novikov 8 years ago
parent
commit
706dc41267
  1. 16
      mydefs.py
  2. 3
      taskapp/locale/ru/LC_MESSAGES/django.po
  3. 2
      taskapp/templates/taskapp/view.html
  4. 12
      taskapp/views.py

16
mydefs.py

@ -173,20 +173,20 @@ class RuTimedelta(timedelta):
) )
def __str__(self): def __str__(self):
hours, remainder = divmod(self.seconds, 3600)
minutes, seconds = divmod(remainder, 60)
text_date = "%d:%d:%d" % (
hours,
minutes,
seconds
)
#hours, remainder = divmod(self.seconds, 3600)
#minutes, seconds = divmod(remainder, 60)
#text_date = "%d:%d" % (
# hours,
# minutes
#)
if self.days > 1: if self.days > 1:
ru_days = 'дней' ru_days = 'дней'
if 5 > self.days > 1: if 5 > self.days > 1:
ru_days = 'дня' ru_days = 'дня'
elif self.days == 1: elif self.days == 1:
ru_days = 'день' ru_days = 'день'
text_date = '%d %s %s' % (self.days, ru_days, text_date)
#text_date = '%d %s %s' % (self.days, ru_days, text_date)
text_date = '%d %s' % (self.days, ru_days)
return text_date return text_date

3
taskapp/locale/ru/LC_MESSAGES/django.po

@ -384,3 +384,6 @@ msgstr "Ip конфликт"
msgid "Internet crash" msgid "Internet crash"
msgstr "Нет интернета" msgstr "Нет интернета"
msgid "Expired timeout -%(time_left)s"
msgstr "Время ожидания истекло -%(time_left)s"

2
taskapp/templates/taskapp/view.html

@ -29,7 +29,7 @@
{% trans 'A priority' %}: {{ task.get_priority_display }}<br> {% trans 'A priority' %}: {{ task.get_priority_display }}<br>
{% trans 'The task is valid until' %} {{ task.out_date|date:'d E Y' }}<br> {% trans 'The task is valid until' %} {{ task.out_date|date:'d E Y' }}<br>
{% trans 'Date of create' %} {{ task.time_of_create|date:'d E Y H:i:s' }}<br> {% trans 'Date of create' %} {{ task.time_of_create|date:'d E Y H:i:s' }}<br>
{% trans 'time left' %} {{ time_diff }}<br>
{{ time_diff }}<br>
{% trans 'Task type' %}: {{ task.get_mode_display }}<br> {% trans 'Task type' %}: {{ task.get_mode_display }}<br>
{% trans 'Condition' %}: {{ task.get_state_display }}<br> {% trans 'Condition' %}: {{ task.get_state_display }}<br>
{% trans 'Subscriber' %} {% trans 'Subscriber' %}

12
taskapp/views.py

@ -7,7 +7,7 @@ from django.shortcuts import render, redirect, get_object_or_404
from django.contrib import messages from django.contrib import messages
from abonapp.models import Abon from abonapp.models import Abon
from django.utils.translation import ugettext as _ from django.utils.translation import ugettext as _
from datetime import date
from datetime import date, datetime
from guardian.decorators import permission_required_or_403 as permission_required from guardian.decorators import permission_required_or_403 as permission_required
from chatbot.models import MessageQueue from chatbot.models import MessageQueue
@ -93,11 +93,15 @@ def task_delete(request, task_id):
@only_admins @only_admins
def view(request, task_id): def view(request, task_id):
tsk = get_object_or_404(Task, id=task_id) tsk = get_object_or_404(Task, id=task_id)
toc = date(tsk.time_of_create.year, tsk.time_of_create.month, tsk.time_of_create.day)
time_diff = tsk.out_date - toc
#toc = date(tsk.time_of_create.year, tsk.time_of_create.month, tsk.time_of_create.day)
now_date = datetime.now().date()
if tsk.out_date > now_date:
time_diff = "%s: %s" % (_('time left'), RuTimedelta(tsk.out_date - now_date))
else:
time_diff = _("Expired timeout -%(time_left)s") % {'time_left': RuTimedelta(now_date - tsk.out_date)}
return render(request, 'taskapp/view.html', { return render(request, 'taskapp/view.html', {
'task': tsk, 'task': tsk,
'time_diff': RuTimedelta(time_diff)
'time_diff': time_diff
}) })

Loading…
Cancel
Save