diff options
Diffstat (limited to 'lib/python/Tools')
| -rw-r--r-- | lib/python/Tools/.cvsignore | 1 | ||||
| -rw-r--r-- | lib/python/Tools/FuzzyDate.py | 39 | ||||
| -rw-r--r-- | lib/python/Tools/XMLTools.py | 17 | ||||
| -rw-r--r-- | lib/python/Tools/__init__.py | 1 |
4 files changed, 58 insertions, 0 deletions
diff --git a/lib/python/Tools/.cvsignore b/lib/python/Tools/.cvsignore new file mode 100644 index 00000000..0d20b648 --- /dev/null +++ b/lib/python/Tools/.cvsignore @@ -0,0 +1 @@ +*.pyc diff --git a/lib/python/Tools/FuzzyDate.py b/lib/python/Tools/FuzzyDate.py new file mode 100644 index 00000000..c5055baf --- /dev/null +++ b/lib/python/Tools/FuzzyDate.py @@ -0,0 +1,39 @@ +import time + +def FuzzyTime(t): + d = time.localtime(t) + nt = time.time() + n = time.localtime() + + if d[:3] == n[:3]: + # same day + date = "Today" + elif ((t - nt) < 7*86400) and (nt < t): + # same week + date = ("Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun")[d[6]] + elif d[0] == n[0]: + # same year + date = "%d.%d." % (d[2], d[1]) + else: + date = "%d.%d.%d" % (d[2], d[1], d[0]) + + timeres = "%d:%02d" % (d[3], d[4]) + + return (date, timeres) + +if __name__ == "__main__": + print "now: %s %s" % FuzzyDate(time.time()) + print "1 day: %s %s" % FuzzyDate(time.time() + 86400) + print "2 days: %s %s" % FuzzyDate(time.time() + 86400 *2) + print "2 days: %s %s" % FuzzyDate(time.time() + 86400 *3) + print "2 days: %s %s" % FuzzyDate(time.time() + 86400 *4) + print "2 days: %s %s" % FuzzyDate(time.time() + 86400 *5) + print "2 days: %s %s" % FuzzyDate(time.time() + 86400 *6) + print "2 days: %s %s" % FuzzyDate(time.time() + 86400 *7) + print "2 days: %s %s" % FuzzyDate(time.time() + 86400 *8) + print "2 days: %s %s" % FuzzyDate(time.time() + 86400 *9) + print "2 days: %s %s" % FuzzyDate(time.time() + 86400 *10) + print "2 days: %s %s" % FuzzyDate(time.time() + 86400 *11) + print "2 days: %s %s" % FuzzyDate(time.time() + 86400 *12) + print "2 days: %s %s" % FuzzyDate(time.time() + 86400 *13) + print "2 days: %s %s" % FuzzyDate(time.time() + 86400 *14) diff --git a/lib/python/Tools/XMLTools.py b/lib/python/Tools/XMLTools.py new file mode 100644 index 00000000..aaab4677 --- /dev/null +++ b/lib/python/Tools/XMLTools.py @@ -0,0 +1,17 @@ +import xml.dom.minidom + +def elementsWithTag(el, tag): + + """filters all elements of childNode with the specified function + example: nodes = elementsWithTag(childNodes, lambda x: x == "bla")""" + + # fiiixme! (works but isn't nice) + if isinstance(tag, str): + s = tag + tag = lambda x: x == s + + for x in el: + if x.nodeType != xml.dom.minidom.Element.nodeType: + continue + if tag(x.tagName): + yield x diff --git a/lib/python/Tools/__init__.py b/lib/python/Tools/__init__.py new file mode 100644 index 00000000..4ff7ce3c --- /dev/null +++ b/lib/python/Tools/__init__.py @@ -0,0 +1 @@ +all = ["FuzzyDate.py", "XMLTools.py"] |
