util.py 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import re
  2. class bcolors:
  3. HEADER = '\033[95m'
  4. OKBLUE = '\033[94m'
  5. OKGREEN = '\033[92m'
  6. WARNING = '\033[93m'
  7. CYAN = '\033[36m'
  8. GREEN = '\033[32m'
  9. YELLOW = '\033[33m'
  10. FAIL = '\033[91m'
  11. ENDC = '\033[0m'
  12. def strip_nick(nick):
  13. nick = re.sub('[@~+]', '', nick)
  14. return nick
  15. def __prettyDate(time):
  16. now = datetime.now()
  17. if type(time) is int:
  18. diff = now - datetime.fromtimestamp(time)
  19. elif isinstance(time,datetime):
  20. diff = now - time
  21. elif not time:
  22. diff = now - now
  23. second_diff = diff.seconds
  24. day_diff = diff.days
  25. if day_diff < 0:
  26. return ''
  27. if day_diff == 0:
  28. if second_diff < 10:
  29. return "just now"
  30. if second_diff < 60:
  31. return str(second_diff) + " seconds ago"
  32. if second_diff < 120:
  33. return "a minute ago"
  34. if second_diff < 3600:
  35. return str( second_diff / 60 ) + " minutes ago"
  36. if second_diff < 7200:
  37. return "an hour ago"
  38. if second_diff < 86400:
  39. return str( second_diff / 3600 ) + " hours ago"
  40. if day_diff == 1:
  41. return "Yesterday"
  42. if day_diff < 7:
  43. return str(day_diff) + " days ago"
  44. if day_diff < 31:
  45. return str(day_diff/7) + " weeks ago"
  46. if day_diff < 365:
  47. return str(day_diff/30) + " months ago"
  48. return str(day_diff/365) + " years ago"