From 2ac314d0cbde6f23a5992448e2223cf0c4c2311f Mon Sep 17 00:00:00 2001 From: Dmitry Date: Thu, 19 Jan 2017 22:39:18 +0000 Subject: [PATCH] =?UTF-8?q?=D0=BB=D0=BE=D0=BA=D0=B0=D0=BB=D0=B8=D0=B7?= =?UTF-8?q?=D0=BE=D0=B2=D0=B0=D0=BB=20timedelta=20=D0=BD=D0=B0=20=D1=80?= =?UTF-8?q?=D1=83=D1=81=D1=81=D0=BA=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mydefs.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/mydefs.py b/mydefs.py index bb9598f..6e3111e 100644 --- a/mydefs.py +++ b/mydefs.py @@ -1,4 +1,5 @@ # -*- coding: utf-8 -*- +from datetime import timedelta from json import dumps import socket import struct @@ -149,3 +150,27 @@ def only_admins(fn): def ping(hostname): response = os.system("`which ping` -c 1 " + hostname) return True if response == 0 else False + + +# Русифицированный вывод timedelta +class RuTimedelta(timedelta): + + def __init__(self, *args, **kwargs): + super(RuTimedelta, self).__init__(*args, **kwargs) + + def __unicode__(self): + hours, remainder = divmod(self.seconds, 3600) + minutes, seconds = divmod(remainder, 60) + text_date = "%d:%d:%d" % ( + hours, + minutes, + seconds + ) + if self.days > 1: + ru_days = u'дней' + if 5 > self.days > 1: + ru_days = u'дня' + elif self.days == 1: + ru_days = u'день' + text_date = u'%d %s %s' % (self.days, ru_days, text_date) + return text_date