got more working... Jobs open, jobs save, what_work() and what_time() work now.
This commit is contained in:
parent
d0ebd37c79
commit
70d297054c
2 changed files with 89 additions and 42 deletions
113
indenture.py
113
indenture.py
|
@ -116,10 +116,10 @@ class Job:
|
||||||
runs a query to populate with the information of an existing job
|
runs a query to populate with the information of an existing job
|
||||||
in the database
|
in the database
|
||||||
"""
|
"""
|
||||||
print uuid
|
data = self._query('SELECT uuid,command,arguments,due,originator,completed FROM jobs WHERE uuid = "' + uuid + '" LIMIT 1;', returns="one")
|
||||||
print "Opening"
|
|
||||||
data = self._query('SELECT * FROM jobs WHERE uuid = "' + uuid + '" LIMIT 1;', returns="one")
|
|
||||||
print data
|
print data
|
||||||
|
if data:
|
||||||
|
(self.uuid, self.command, self.arguments, self.due, self.originator, self.completed) = data
|
||||||
|
|
||||||
|
|
||||||
def save(self):
|
def save(self):
|
||||||
|
@ -168,7 +168,7 @@ class Job:
|
||||||
""" what_time()
|
""" what_time()
|
||||||
returns a prettified version of the due date.
|
returns a prettified version of the due date.
|
||||||
"""
|
"""
|
||||||
return pretty(self.due)
|
return pretty_date(self.due)
|
||||||
|
|
||||||
|
|
||||||
def what_work(self):
|
def what_work(self):
|
||||||
|
@ -181,41 +181,74 @@ class Job:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def pretty_date(time=False):
|
||||||
def pretty(time):
|
"""
|
||||||
'''Returns a pretty formatted date.
|
Get a datetime object or a int() Epoch timestamp and return a
|
||||||
Inputs:
|
pretty string like 'an hour ago', 'Yesterday', '3 months ago',
|
||||||
time is a datetime object or an int timestamp
|
'just now', etc
|
||||||
asdays is True if you only want to measure days, not seconds
|
"""
|
||||||
short is True if you want "1d ago", "2d ago", etc. False if you want
|
from datetime import datetime
|
||||||
'''
|
now = datetime.now()
|
||||||
|
if type(time) is int:
|
||||||
|
d = datetime.fromtimestamp(time)
|
||||||
|
elif type(time) is float:
|
||||||
|
d = datetime.fromtimestamp(time)
|
||||||
|
elif not time:
|
||||||
|
diff = now - now
|
||||||
|
|
||||||
import datetime
|
if now > d:
|
||||||
|
diff = now - d
|
||||||
now = datetime.datetime.now()
|
elif d > now:
|
||||||
if type(time) is float: time = datetime.datetime.fromtimestamp(time)
|
diff = d - now
|
||||||
elif not time: time = now
|
|
||||||
|
|
||||||
if time > now: past, diff = False, time - now
|
|
||||||
else: past, diff = True, now - time
|
|
||||||
seconds = diff.seconds
|
|
||||||
days = diff.days
|
|
||||||
|
|
||||||
if days == 0 and not asdays:
|
|
||||||
if seconds < 10: return 'now'
|
|
||||||
elif seconds < 60: return _df(seconds, 1, ' seconds', past)
|
|
||||||
elif seconds < 120: return past and 'a minute ago' or 'in a minute'
|
|
||||||
elif seconds < 3600: return _df(seconds, 60, ' minutes', past)
|
|
||||||
elif seconds < 7200: return past and 'an hour ago' or'in an hour'
|
|
||||||
else: return _df(seconds, 3600, ' hours', past)
|
|
||||||
else:
|
else:
|
||||||
if days == 0: return 'today'
|
diff = now - now
|
||||||
elif days == 1: return past and 'yesterday' or'tomorrow'
|
|
||||||
elif days == 2: return past and 'day before' or 'day after'
|
second_diff = diff.seconds
|
||||||
elif days < 7: return _df(days, 1, ' days', past)
|
day_diff = diff.days
|
||||||
elif days < 14: return past and 'last week' or 'next week'
|
|
||||||
elif days < 31: return _df(days, 7, ' weeks', past)
|
if now > d:
|
||||||
elif days < 61: return past and 'last month' or 'next month'
|
if day_diff == 0:
|
||||||
elif days < 365: return _df(days, 30, ' months', past)
|
if second_diff < 10:
|
||||||
elif days < 730: return past and 'last year' or 'next year'
|
return "just now"
|
||||||
else: return _df(days, 365, ' years', past)
|
if second_diff < 60:
|
||||||
|
return str(second_diff) + " seconds ago"
|
||||||
|
if second_diff < 120:
|
||||||
|
return "a minute ago"
|
||||||
|
if second_diff < 3600:
|
||||||
|
return str( second_diff / 60 ) + " minutes ago"
|
||||||
|
if second_diff < 7200:
|
||||||
|
return "an hour ago"
|
||||||
|
if second_diff < 86400:
|
||||||
|
return str( second_diff / 3600 ) + " hours ago"
|
||||||
|
if day_diff == 1:
|
||||||
|
return "Yesterday"
|
||||||
|
if day_diff < 7:
|
||||||
|
return str(day_diff) + " days ago"
|
||||||
|
if day_diff < 31:
|
||||||
|
return str(day_diff/7) + " weeks ago"
|
||||||
|
if day_diff < 365:
|
||||||
|
return str(day_diff/30) + " months ago"
|
||||||
|
return str(day_diff/365) + " years ago"
|
||||||
|
elif d > now:
|
||||||
|
if day_diff == 0:
|
||||||
|
if second_diff < 10:
|
||||||
|
return "just now"
|
||||||
|
if second_diff < 60:
|
||||||
|
return str(second_diff) + " seconds from now"
|
||||||
|
if second_diff < 120:
|
||||||
|
return "a minute from now"
|
||||||
|
if second_diff < 3600:
|
||||||
|
return str( second_diff / 60 ) + " minutes from now"
|
||||||
|
if second_diff < 7200:
|
||||||
|
return "an hour from now"
|
||||||
|
if second_diff < 86400:
|
||||||
|
return str( second_diff / 3600 ) + " hours from now"
|
||||||
|
if day_diff == 1:
|
||||||
|
return "Tomorrow"
|
||||||
|
if day_diff < 7:
|
||||||
|
return str(day_diff) + " days from now"
|
||||||
|
if day_diff < 31:
|
||||||
|
return str(day_diff/7) + " weeks from now"
|
||||||
|
if day_diff < 365:
|
||||||
|
return str(day_diff/30) + " months from now"
|
||||||
|
return str(day_diff/365) + " years from now"
|
||||||
|
|
18
test.py
18
test.py
|
@ -17,7 +17,21 @@ print 'Open job'
|
||||||
j.open(uuid="amd1")
|
j.open(uuid="amd1")
|
||||||
|
|
||||||
print 'what_work()'
|
print 'what_work()'
|
||||||
j.what_work()
|
print j.what_work()
|
||||||
|
|
||||||
print 'what_time()'
|
print 'what_time()'
|
||||||
j.what_time()
|
print j.what_time()
|
||||||
|
|
||||||
|
print "add 3600 seconds"
|
||||||
|
j.due = j.due + 3600
|
||||||
|
|
||||||
|
print j.what_time()
|
||||||
|
|
||||||
|
print "saving"
|
||||||
|
j.save()
|
||||||
|
|
||||||
|
print "re-open"
|
||||||
|
j.open(uuid="amd1")
|
||||||
|
|
||||||
|
print "what_time()"
|
||||||
|
print j.what_time()
|
||||||
|
|
Loading…
Reference in a new issue