summaryrefslogtreecommitdiff
path: root/cgi-bin/link.py
blob: 74ba61cb691e0310ae205e9258027d10f7025eb2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
# -*- 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 timestamp(self, date):
            if self.detect(date):
                date=datetime.datetime.strftime(datetime.datetime.strptime(date[:12], "%Y%m%d%H%M"), "%Y-%m-%d %H:%M")
                return date
            else:
                return ""

	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")                                                                                                                                                                                                 
		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"