import repository from arizona
[raven.git] / apps / errorlog / html.py
1 def BR():
2     return "<br>"
3
4 def TD(x, colspan=0, align=None):
5     tmp= "<td"
6     if (colspan>0):
7        tmp = tmp + " colspan=" + str(colspan)
8     if (align!=None):
9        tmp = tmp + " align=" + str(align)
10     tmp = tmp + ">" + str(x) + "</td>"
11     return tmp
12
13 def TH(x, colspan=0, align=None):
14     tmp= "<th"
15     if (colspan>0):
16        tmp = tmp + " colspan=" + str(colspan)
17     if (align!=None):
18        tmp = tmp + " align=" + str(align)
19     tmp = tmp + ">" + str(x) + "</th>"
20     return tmp
21
22 def TR(x):
23     return "<tr>" + str(x) + "</tr>\n"
24
25 def TABLE(x, border=None):
26     tmp = "<table"
27     if border:
28        tmp = tmp + " border=" + str(border)
29     tmp = tmp + ">" + str(x) + "</table>"
30     return tmp
31
32 def OPTION(value, selected, y):
33     x = '<option value="' + str(value) + '"'
34     if selected:
35        x+= ' selected'
36
37     x += '>' + str(y) + '</option>'
38
39     return x
40
41 def SELECT(name, y):
42     x = '<select name="' + str(name) + '"'
43     x += '>' + str(y) + '</select>'
44
45     return x
46
47 def INPUT(name, type="text", size=30, value=None):
48     x = '<input type="' + str(type) + '" name="' + str(name) + '"'
49     if size:
50        x+= ' size="' + str(size) + '"'
51     if value:
52        x+=' value="' + str(value) + '"'
53
54     x += '>'
55
56     return x
57
58 def INPUTFILE(name, value=None):
59     return INPUT(name, "file", None, value)
60
61 def LINK(link, name):
62     return '<a href="' + link + '">' + str(name) + '</a>'
63
64 def B(x):
65     return '<b>' + x + '</b>'
66
67 def CHECKBOX(name, value, checked=False):
68     x = '<input type="checkbox" name="' + str(name) + '" value="' + str(value) + '"'
69     if checked:
70         x += " checked"
71     x += '>'
72     return x
73
74 def RADIO(name, value, checked=False):
75     x = '<input type="radio" name="' + str(name) + '" value="' + str(value) + '"'
76     if checked:
77         x += " checked"
78     x += '>'
79     return x
80
81 def BUTTON(name, value):
82     return '<input type="submit" name="' + str(name) + '" value="' + str(value) + '">'
83
84 def QUERY(dict):
85     sep = "?"
86     x = ""
87     for key in dict.keys():
88         if dict[key] != None:
89             x = x + sep + key + '=' + dict[key]
90             sep = "&"
91     return x
92
93 def FORM(action, method, body, enctype=None):
94     x = '<FORM action="' + str(action) + '" method="' + str(method) + '"'
95     if enctype:
96        x+= ' enctype="' + str(enctype) + '"'
97
98     x += '>' + str(body) + '</FORM>'
99
100     return x
101
102 def TIMEZONE_DROPDOWN(name, value=None):
103    options = """
104       <option value="-12.0">(GMT -12:00) Eniwetok, Kwajalein</option>\r
105       <option value="-11.0">(GMT -11:00) Midway Island, Samoa</option>\r
106       <option value="-10.0">(GMT -10:00) Hawaii</option>\r
107       <option value="-9.0">(GMT -9:00) Alaska</option>\r
108       <option value="-8.0">(GMT -8:00) Pacific Time (US &amp; Canada)</option>\r
109       <option value="-7.0">(GMT -7:00) Mountain Time (US &amp; Canada)</option>\r
110       <option value="-6.0">(GMT -6:00) Central Time (US &amp; Canada), Mexico City</option>\r
111       <option value="-5.0">(GMT -5:00) Eastern Time (US &amp; Canada), Bogota, Lima</option>\r
112       <option value="-4.0">(GMT -4:00) Atlantic Time (Canada), Caracas, La Paz</option>\r
113       <option value="-3.5">(GMT -3:30) Newfoundland</option>\r
114       <option value="-3.0">(GMT -3:00) Brazil, Buenos Aires, Georgetown</option>\r
115       <option value="-2.0">(GMT -2:00) Mid-Atlantic</option>\r
116       <option value="-1.0">(GMT -1:00 hour) Azores, Cape Verde Islands</option>\r
117       <option value="0.0">(GMT) Western Europe Time, London, Lisbon, Casablanca</option>\r
118       <option value="1.0">(GMT +1:00 hour) Brussels, Copenhagen, Madrid, Paris</option>\r
119       <option value="2.0">(GMT +2:00) Kaliningrad, South Africa</option>\r
120       <option value="3.0">(GMT +3:00) Baghdad, Riyadh, Moscow, St. Petersburg</option>\r
121       <option value="3.5">(GMT +3:30) Tehran</option>\r
122       <option value="4.0">(GMT +4:00) Abu Dhabi, Muscat, Baku, Tbilisi</option>\r
123       <option value="4.5">(GMT +4:30) Kabul</option>\r
124       <option value="5.0">(GMT +5:00) Ekaterinburg, Islamabad, Karachi, Tashkent</option>\r
125       <option value="5.5">(GMT +5:30) Bombay, Calcutta, Madras, New Delhi</option>\r
126       <option value="5.75">(GMT +5:45) Kathmandu</option>\r
127       <option value="6.0">(GMT +6:00) Almaty, Dhaka, Colombo</option>\r
128       <option value="7.0">(GMT +7:00) Bangkok, Hanoi, Jakarta</option>\r
129       <option value="8.0">(GMT +8:00) Beijing, Perth, Singapore, Hong Kong</option>\r
130       <option value="9.0">(GMT +9:00) Tokyo, Seoul, Osaka, Sapporo, Yakutsk</option>\r
131       <option value="9.5">(GMT +9:30) Adelaide, Darwin</option>\r
132       <option value="10.0">(GMT +10:00) Eastern Australia, Guam, Vladivostok</option>\r
133       <option value="11.0">(GMT +11:00) Magadan, Solomon Islands, New Caledonia</option>\r
134       <option value="12.0">(GMT +12:00) Auckland, Wellington, Fiji, Kamchatka</option>\r
135    """\r
136 \r
137    if value != None:\r
138        value = str(value);\r
139        if (value.find(".") == -1):\r
140            value = value + ".0";\r
141        options = options.replace('value="' + value + '"', 'value="' + value + '" selected');\r
142 \r
143    return '<select name="' + name + '" id="' + name +'">' + options + '</select>';\r
144