Commit a1c2f5c6 authored by Antoine Millet's avatar Antoine Millet
Browse files

Added an helper to convert any value into a tag value

parent 2c1f7273
Loading
Loading
Loading
Loading
+26 −0
Original line number Diff line number Diff line
""" Some helpers for the TQL database.
"""

import time
from datetime import datetime, timedelta


def taggify(value):
    """ Transform any value into a tag value.
    """
    if isinstance(value, bool):
        value = 'yes' if value else 'no'
    elif isinstance(value, datetime):
        value = str(int(time.mktime(value.timetuple())))
    elif isinstance(value, timedelta):
        value = str(value.seconds + value.days * 86400)
    elif isinstance(value, (set, list, tuple)):
        value = ' '.join((str(x) for x in value))
    elif isinstance(value, dict):
        value = ' '.join((':'.join((str(k), str(v))) for k, v in value.iteritems()))
    elif value is None:
        pass
    else:
        value = str(value)

    return value
 No newline at end of file