summaryrefslogtreecommitdiff
path: root/cgi-bin/link.py
diff options
context:
space:
mode:
Diffstat (limited to 'cgi-bin/link.py')
-rw-r--r--cgi-bin/link.py74
1 files changed, 74 insertions, 0 deletions
diff --git a/cgi-bin/link.py b/cgi-bin/link.py
new file mode 100644
index 0000000..cfc1f0a
--- /dev/null
+++ b/cgi-bin/link.py
@@ -0,0 +1,74 @@
+# -*- coding: utf8 -*-
+import os.path, datetime, config
+
+class Link:
+ def __init__(self, filename=""):
+ if os.path.exists(os.path.realpath(config.datadir)):
+ self.datadir=config.datadir
+ self.src_datadir="../"+config.datadir
+ self.exists=""
+ else:
+ print ("Error: directory "+os.path.realpath(config.datadir)+" does not exist. Check config.py")
+ exit()
+ if not filename or filename == "latest":
+ self.img=os.path.split(os.path.realpath(self.datadir+"latest.jpeg"))[1]
+ else:
+ self.img=filename+".jpeg"
+
+ def src(self, target):
+ if self.detect(self.src_datadir+target):
+ src=os.path.split(target)
+ return os.path.relpath(self.src_datadir + src[1])
+ else:
+ return os.path.relpath(self.src_datadir + "notfound.jpeg")
+
+ def imglink(self, target, order):
+ if self.detect(target):
+ return "<a href=\""+self.href(target)+"\"><img src=\""+self.src(target)+"\" class=\""+order+"\"/></a>"
+ else:
+ return "<img src=\""+self.src(target)+"\" class=\""+order+"\"/>"
+
+ def href(self, target):
+ ##print os.path.realpath(root+target)
+ #if target == self.img:
+ #target = os.path.split(target)[1]
+ #return "?f="+target[:12]
+ #else:
+ return "?f=" + target[:12]
+
+ def detect(self, filename):
+ if os.path.exists(os.path.realpath(self.datadir+filename)):
+ #print os.path.realpath(filename)
+ return True
+ else:
+ #print os.path.realpath(filename)
+ return False
+
+ def link(self, target, link):
+ #print target
+ if self.detect(target):
+ return "<a href=\""+self.href(target)+"\">"+link+"</a>"
+ else:
+ return "<span>"+link+"</span>"
+
+ def delta(self, delta):
+ date=os.path.split(self.img)
+ date=os.path.splitext(date[1])
+ date=date[0]
+ curdate=datetime.datetime.strptime(date, "%Y%m%d%H%M")
+ pm = delta[:0]
+ if delta.endswith('m'):
+ num = 10
+ else:
+ num = 1
+ if delta.startswith('-'):
+ num = num * -1
+ if delta.endswith('w'):
+ targetdate=curdate-datetime.timedelta(weeks=num)
+ if delta.endswith('d'):
+ targetdate=curdate-datetime.timedelta(days=num)
+ if delta.endswith('h'):
+ targetdate=curdate-datetime.timedelta(hours=num)
+ if delta.endswith('m'):
+ targetdate=curdate-datetime.timedelta(minutes=num)
+ return datetime.datetime.strftime(targetdate, "%Y%m%d%H%M")+".jpeg"