

def pretty_date(time=None):
    "\n    Get a datetime object or a int() Epoch timestamp and return a\n    pretty string like 'an hour ago', 'Yesterday', '3 months ago',\n    'just now', etc\n    :param time:\n    "
    from datetime import datetime
    now = datetime.now()
    if (type(time) is int):
        diff = (now - datetime.fromtimestamp(time))
    elif isinstance(time, datetime):
        diff = (now - time)
    else:
        diff = (now - now)
    second_diff = diff.seconds
    day_diff = diff.days
    if (day_diff < 0):
        return ''
    if (day_diff == 0):
        if (second_diff < 10):
            return 'just now'
        if (second_diff < 60):
            return (str(time) + ' 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')

dataset/ETHPy150Open LeightonStreet/LingoBarter/lingobarter/utils/dateformat.py pretty_date/VarMisuse@145/246 `second_diff`->`time`