degal/helpers.py
author Tero Marttila <terom@fixme.fi>
Thu, 11 Jun 2009 22:50:21 +0300
changeset 96 d9cf1e272e90
parent 44 533b7e8b5d3b
permissions -rw-r--r--
fix LazyProperty to not inherit from property, so as to act as a non-data descriptor, which can then be overriden by per-instance __dict__ values
import urllib
from formatbytes import formatbytes
from datetime import datetime

"""
    Helper functions for use in templates
"""

def iter_is_first (seq) :
    flag = True
    
    for item in seq :
        yield item, flag
        flag = False
        
def url_for_page (page) :
    assert page >= 0

    if page > 0 :
        return  'index_%d.html' % page
    else :
        return 'index.html'

def tag_for_img (page, img) :
    return """<a href="%s"><img src="%s" /></a>""" % (page, img)

def format_filesize (size) :
    return formatbytes(size, forcekb=False, largestonly=True, kiloname='KiB', meganame='MiB', bytename='B', nospace=False)

def format_timestamp (ts) :
    return datetime.fromtimestamp(ts).strftime("%Y-%m-%d %H:%M:%S")

def format_imgsize (size) :
    return "%dx%d" % size