annotate cgi-bin/roundup.cgi @ 928:23c9d4f86380

Added the web access and email access permissions.. ...so people can restrict access to users who register through the email interface (for example). Also added "security" command to the roundup-admin interface to display the Role/Permission config for an instance.
author Richard Jones <richard@users.sourceforge.net>
date Thu, 01 Aug 2002 00:56:22 +0000
parents 18d4051bdae7
children b2c537f51fc5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
24
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1 #!/usr/bin/env python
213
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
2 #
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
3 # Copyright (c) 2001 Bizar Software Pty Ltd (http://www.bizarsoftware.com.au/)
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
4 # This module is free software, and you may redistribute it and/or modify
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
5 # under the same terms as Python, so long as this copyright message and
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
6 # disclaimer are retained in their original form.
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
7 #
214
18134bffab37 stupid typo
Richard Jones <richard@users.sourceforge.net>
parents: 213
diff changeset
8 # IN NO EVENT SHALL BIZAR SOFTWARE PTY LTD BE LIABLE TO ANY PARTY FOR
213
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
9 # DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
10 # OUT OF THE USE OF THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
11 # POSSIBILITY OF SUCH DAMAGE.
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
12 #
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
13 # BIZAR SOFTWARE PTY LTD SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
14 # BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
15 # FOR A PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS"
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
16 # BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
17 # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
18 #
486
Richard Jones <richard@users.sourceforge.net>
parents: 485
diff changeset
19 # $Id: roundup.cgi,v 1.24 2002-01-05 02:21:22 richard Exp $
24
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
20
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
21 # python version check
449
141aacfdb34f Centralised the python version check code, bumped version to 2.1.1
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
22 from roundup import version_check
485
fad315a10185 i18n'ification
Richard Jones <richard@users.sourceforge.net>
parents: 449
diff changeset
23 from roundup.i18n import _
486
Richard Jones <richard@users.sourceforge.net>
parents: 485
diff changeset
24 import sys
24
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
25
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
26 #
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
27 ## Configuration
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
28 #
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
29
358
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
30 # Configuration can also be provided through the OS environment (or via
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
31 # the Apache "SetEnv" configuration directive). If the variables
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
32 # documented below are set, they _override_ any configuation defaults
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
33 # given in this file.
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
34
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
35 # ROUNDUP_INSTANCE_HOMES is a list of instances, in the form
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
36 # "NAME=DIR<sep>NAME2=DIR2<sep>...", where <sep> is the directory path
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
37 # separator (";" on Windows, ":" on Unix).
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
38
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
39 # ROUNDUP_LOG is the name of the logfile; if it's empty or does not exist,
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
40 # logging is turned off (unless you changed the default below).
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
41
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
42 # ROUNDUP_DEBUG is a debug level, currently only 0 (OFF) and 1 (ON) are
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
43 # used in the code. Higher numbers means more debugging output.
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
44
24
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
45 # This indicates where the Roundup instance lives
38
d720846159fa renamed ROUNDUPS to ROUNDUP_INSTANCE_HOMES
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents: 37
diff changeset
46 ROUNDUP_INSTANCE_HOMES = {
258
96fa4c11d3b0 Fixes to the top-level index
Richard Jones <richard@users.sourceforge.net>
parents: 252
diff changeset
47 'demo': '/var/roundup/instances/demo',
24
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
48 }
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
49
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
50 # Where to log debugging information to. Use an instance of DevNull if you
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
51 # don't want to log anywhere.
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
52 class DevNull:
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
53 def write(self, info):
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
54 pass
486
Richard Jones <richard@users.sourceforge.net>
parents: 485
diff changeset
55 def close(self):
358
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
56 pass
258
96fa4c11d3b0 Fixes to the top-level index
Richard Jones <richard@users.sourceforge.net>
parents: 252
diff changeset
57 #LOG = open('/var/log/roundup.cgi.log', 'a')
96fa4c11d3b0 Fixes to the top-level index
Richard Jones <richard@users.sourceforge.net>
parents: 252
diff changeset
58 LOG = DevNull()
24
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
59
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
60 #
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
61 ## end configuration
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
62 #
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
63
358
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
64
24
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
65 #
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
66 # Set up the error handler
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
67 #
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
68 try:
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
69 import traceback, StringIO, cgi
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
70 from roundup import cgitb
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
71 except:
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
72 print "Content-Type: text/html\n"
485
fad315a10185 i18n'ification
Richard Jones <richard@users.sourceforge.net>
parents: 449
diff changeset
73 print _("Failed to import cgitb.<pre>")
24
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
74 s = StringIO.StringIO()
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
75 traceback.print_exc(None, s)
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
76 print cgi.escape(s.getvalue()), "</pre>"
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
77
358
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
78
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
79 #
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
80 # Check environment for config items
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
81 #
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
82 def checkconfig():
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
83 import os, string
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
84 global ROUNDUP_INSTANCE_HOMES, LOG
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
85
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
86 homes = os.environ.get('ROUNDUP_INSTANCE_HOMES', '')
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
87 if homes:
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
88 ROUNDUP_INSTANCE_HOMES = {}
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
89 for home in string.split(homes, os.pathsep):
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
90 try:
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
91 name, dir = string.split(home, '=', 1)
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
92 except ValueError:
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
93 # ignore invalid definitions
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
94 continue
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
95 if name and dir:
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
96 ROUNDUP_INSTANCE_HOMES[name] = dir
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
97
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
98 logname = os.environ.get('ROUNDUP_LOG', '')
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
99 if logname:
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
100 LOG = open(logname, 'a')
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
101
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
102 # ROUNDUP_DEBUG is checked directly in "roundup.cgi_client"
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
103
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
104
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
105 #
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
106 # Provide interface to CGI HTTP response handling
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
107 #
343
ab16997d9cda Started work on supporting a pop3-fetching server
Richard Jones <richard@users.sourceforge.net>
parents: 336
diff changeset
108 class RequestWrapper:
ab16997d9cda Started work on supporting a pop3-fetching server
Richard Jones <richard@users.sourceforge.net>
parents: 336
diff changeset
109 '''Used to make the CGI server look like a BaseHTTPRequestHandler
ab16997d9cda Started work on supporting a pop3-fetching server
Richard Jones <richard@users.sourceforge.net>
parents: 336
diff changeset
110 '''
ab16997d9cda Started work on supporting a pop3-fetching server
Richard Jones <richard@users.sourceforge.net>
parents: 336
diff changeset
111 def __init__(self, wfile):
ab16997d9cda Started work on supporting a pop3-fetching server
Richard Jones <richard@users.sourceforge.net>
parents: 336
diff changeset
112 self.wfile = wfile
358
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
113 def write(self, data):
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
114 self.wfile.write(data)
343
ab16997d9cda Started work on supporting a pop3-fetching server
Richard Jones <richard@users.sourceforge.net>
parents: 336
diff changeset
115 def send_response(self, code):
358
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
116 self.write('Status: %s\r\n'%code)
343
ab16997d9cda Started work on supporting a pop3-fetching server
Richard Jones <richard@users.sourceforge.net>
parents: 336
diff changeset
117 def send_header(self, keyword, value):
358
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
118 self.write("%s: %s\r\n" % (keyword, value))
356
3aee8a37afeb Fixed HTTP headers for top-level index in CGI script
Richard Jones <richard@users.sourceforge.net>
parents: 343
diff changeset
119 def end_headers(self):
358
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
120 self.write("\r\n")
343
ab16997d9cda Started work on supporting a pop3-fetching server
Richard Jones <richard@users.sourceforge.net>
parents: 336
diff changeset
121
358
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
122 #
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
123 # Main CGI handler
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
124 #
264
a671e5917b33 Many features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 258
diff changeset
125 def main(out, err):
a671e5917b33 Many features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 258
diff changeset
126 import os, string
a671e5917b33 Many features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 258
diff changeset
127 import roundup.instance
331
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
128 path = string.split(os.environ.get('PATH_INFO', '/'), '/')
264
a671e5917b33 Many features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 258
diff changeset
129 instance = path[1]
a671e5917b33 Many features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 258
diff changeset
130 os.environ['INSTANCE_NAME'] = instance
a671e5917b33 Many features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 258
diff changeset
131 os.environ['PATH_INFO'] = string.join(path[2:], '/')
343
ab16997d9cda Started work on supporting a pop3-fetching server
Richard Jones <richard@users.sourceforge.net>
parents: 336
diff changeset
132 request = RequestWrapper(out)
264
a671e5917b33 Many features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 258
diff changeset
133 if ROUNDUP_INSTANCE_HOMES.has_key(instance):
411
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
134 # redirect if we need a trailing '/'
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
135 if len(path) == 2:
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
136 request.send_response(301)
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
137 absolute_url = 'http://%s%s/'%(os.environ['HTTP_HOST'],
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
138 os.environ['REQUEST_URI'])
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
139 request.send_header('Location', absolute_url)
343
ab16997d9cda Started work on supporting a pop3-fetching server
Richard Jones <richard@users.sourceforge.net>
parents: 336
diff changeset
140 request.end_headers()
411
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
141 out.write('Moved Permanently')
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
142 else:
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
143 instance_home = ROUNDUP_INSTANCE_HOMES[instance]
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
144 instance = roundup.instance.open(instance_home)
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
145 from roundup import cgi_client
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
146 client = instance.Client(instance, request, os.environ)
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
147 try:
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
148 client.main()
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
149 except cgi_client.Unauthorised:
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
150 request.send_response(403)
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
151 request.send_header('Content-Type', 'text/html')
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
152 request.end_headers()
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
153 out.write('Unauthorised')
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
154 except cgi_client.NotFound:
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
155 request.send_response(404)
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
156 request.send_header('Content-Type', 'text/html')
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
157 request.end_headers()
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
158 out.write('Not found: %s'%client.path)
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
159
264
a671e5917b33 Many features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 258
diff changeset
160 else:
a671e5917b33 Many features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 258
diff changeset
161 import urllib
343
ab16997d9cda Started work on supporting a pop3-fetching server
Richard Jones <richard@users.sourceforge.net>
parents: 336
diff changeset
162 request.send_response(200)
ab16997d9cda Started work on supporting a pop3-fetching server
Richard Jones <richard@users.sourceforge.net>
parents: 336
diff changeset
163 request.send_header('Content-Type', 'text/html')
356
3aee8a37afeb Fixed HTTP headers for top-level index in CGI script
Richard Jones <richard@users.sourceforge.net>
parents: 343
diff changeset
164 request.end_headers()
403
82a5757d01eb quick fix for file uploads on windows in roundup.cgi
Richard Jones <richard@users.sourceforge.net>
parents: 358
diff changeset
165 w = request.write
485
fad315a10185 i18n'ification
Richard Jones <richard@users.sourceforge.net>
parents: 449
diff changeset
166 w(_('<html><head><title>Roundup instances index</title></head>\n'))
fad315a10185 i18n'ification
Richard Jones <richard@users.sourceforge.net>
parents: 449
diff changeset
167 w(_('<body><h1>Roundup instances index</h1><ol>\n'))
358
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
168 homes = ROUNDUP_INSTANCE_HOMES.keys()
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
169 homes.sort()
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
170 for instance in homes:
485
fad315a10185 i18n'ification
Richard Jones <richard@users.sourceforge.net>
parents: 449
diff changeset
171 w(_('<li><a href="%(instance_url)s/index">%(instance_name)s</a>\n')%{
fad315a10185 i18n'ification
Richard Jones <richard@users.sourceforge.net>
parents: 449
diff changeset
172 'instance_url': os.environ['SCRIPT_NAME']+'/'+urllib.quote(instance),
fad315a10185 i18n'ification
Richard Jones <richard@users.sourceforge.net>
parents: 449
diff changeset
173 'instance_name': cgi.escape(instance)})
fad315a10185 i18n'ification
Richard Jones <richard@users.sourceforge.net>
parents: 449
diff changeset
174 w(_('</ol></body></html>'))
252
76c6994aa4e8 CGI interfaces now spit up a top-level index of all instances they can serve.
Richard Jones <richard@users.sourceforge.net>
parents: 214
diff changeset
175
24
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
176 #
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
177 # Now do the actual CGI handling
358
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
178 #
24
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
179 out, err = sys.stdout, sys.stderr
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
180 try:
403
82a5757d01eb quick fix for file uploads on windows in roundup.cgi
Richard Jones <richard@users.sourceforge.net>
parents: 358
diff changeset
181 # force input/output to binary (important for file up/downloads)
82a5757d01eb quick fix for file uploads on windows in roundup.cgi
Richard Jones <richard@users.sourceforge.net>
parents: 358
diff changeset
182 if sys.platform == "win32":
82a5757d01eb quick fix for file uploads on windows in roundup.cgi
Richard Jones <richard@users.sourceforge.net>
parents: 358
diff changeset
183 import os, msvcrt
82a5757d01eb quick fix for file uploads on windows in roundup.cgi
Richard Jones <richard@users.sourceforge.net>
parents: 358
diff changeset
184 msvcrt.setmode(sys.stdin.fileno(), os.O_BINARY)
82a5757d01eb quick fix for file uploads on windows in roundup.cgi
Richard Jones <richard@users.sourceforge.net>
parents: 358
diff changeset
185 msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY)
358
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
186 checkconfig()
24
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
187 sys.stdout = sys.stderr = LOG
264
a671e5917b33 Many features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 258
diff changeset
188 main(out, err)
331
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
189 except SystemExit:
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
190 pass
24
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
191 except:
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
192 sys.stdout, sys.stderr = out, err
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
193 out.write('Content-Type: text/html\n\n')
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
194 cgitb.handler()
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
195 sys.stdout.flush()
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
196 sys.stdout, sys.stderr = out, err
358
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
197 LOG.close()
24
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
198
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
199 #
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
200 # $Log: not supported by cvs2svn $
486
Richard Jones <richard@users.sourceforge.net>
parents: 485
diff changeset
201 # Revision 1.23 2002/01/05 02:19:03 richard
Richard Jones <richard@users.sourceforge.net>
parents: 485
diff changeset
202 # i18n'ification
Richard Jones <richard@users.sourceforge.net>
parents: 485
diff changeset
203 #
485
fad315a10185 i18n'ification
Richard Jones <richard@users.sourceforge.net>
parents: 449
diff changeset
204 # Revision 1.22 2001/12/13 00:20:01 richard
fad315a10185 i18n'ification
Richard Jones <richard@users.sourceforge.net>
parents: 449
diff changeset
205 # . Centralised the python version check code, bumped version to 2.1.1 (really
fad315a10185 i18n'ification
Richard Jones <richard@users.sourceforge.net>
parents: 449
diff changeset
206 # needs to be 2.1.2, but that isn't released yet :)
fad315a10185 i18n'ification
Richard Jones <richard@users.sourceforge.net>
parents: 449
diff changeset
207 #
449
141aacfdb34f Centralised the python version check code, bumped version to 2.1.1
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
208 # Revision 1.21 2001/12/02 05:06:16 richard
141aacfdb34f Centralised the python version check code, bumped version to 2.1.1
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
209 # . We now use weakrefs in the Classes to keep the database reference, so
141aacfdb34f Centralised the python version check code, bumped version to 2.1.1
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
210 # the close() method on the database is no longer needed.
141aacfdb34f Centralised the python version check code, bumped version to 2.1.1
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
211 # I bumped the minimum python requirement up to 2.1 accordingly.
141aacfdb34f Centralised the python version check code, bumped version to 2.1.1
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
212 # . #487480 ] roundup-server
141aacfdb34f Centralised the python version check code, bumped version to 2.1.1
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
213 # . #487476 ] INSTALL.txt
141aacfdb34f Centralised the python version check code, bumped version to 2.1.1
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
214 #
141aacfdb34f Centralised the python version check code, bumped version to 2.1.1
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
215 # I also cleaned up the change message / post-edit stuff in the cgi client.
141aacfdb34f Centralised the python version check code, bumped version to 2.1.1
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
216 # There's now a clearly marked "TODO: append the change note" where I believe
141aacfdb34f Centralised the python version check code, bumped version to 2.1.1
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
217 # the change note should be added there. The "changes" list will obviously
141aacfdb34f Centralised the python version check code, bumped version to 2.1.1
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
218 # have to be modified to be a dict of the changes, or somesuch.
141aacfdb34f Centralised the python version check code, bumped version to 2.1.1
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
219 #
141aacfdb34f Centralised the python version check code, bumped version to 2.1.1
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
220 # More testing needed.
141aacfdb34f Centralised the python version check code, bumped version to 2.1.1
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
221 #
431
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
222 # Revision 1.20 2001/11/26 22:55:56 richard
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
223 # Feature:
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
224 # . Added INSTANCE_NAME to configuration - used in web and email to identify
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
225 # the instance.
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
226 # . Added EMAIL_SIGNATURE_POSITION to indicate where to place the roundup
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
227 # signature info in e-mails.
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
228 # . Some more flexibility in the mail gateway and more error handling.
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
229 # . Login now takes you to the page you back to the were denied access to.
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
230 #
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
231 # Fixed:
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
232 # . Lots of bugs, thanks Roché and others on the devel mailing list!
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
233 #
411
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
234 # Revision 1.19 2001/11/22 00:25:10 richard
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
235 # quick fix for file uploads on windows in roundup.cgi
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 403
diff changeset
236 #
403
82a5757d01eb quick fix for file uploads on windows in roundup.cgi
Richard Jones <richard@users.sourceforge.net>
parents: 358
diff changeset
237 # Revision 1.18 2001/11/06 22:10:11 jhermann
82a5757d01eb quick fix for file uploads on windows in roundup.cgi
Richard Jones <richard@users.sourceforge.net>
parents: 358
diff changeset
238 # Added env config; fixed request wrapper & index list; sort list by key
82a5757d01eb quick fix for file uploads on windows in roundup.cgi
Richard Jones <richard@users.sourceforge.net>
parents: 358
diff changeset
239 #
358
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
240 # Revision 1.17 2001/11/06 21:51:19 richard
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
241 # Fixed HTTP headers for top-level index in CGI script
3cc910586bde Added env config; fixed request wrapper & index list; sort list by key
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 356
diff changeset
242 #
356
3aee8a37afeb Fixed HTTP headers for top-level index in CGI script
Richard Jones <richard@users.sourceforge.net>
parents: 343
diff changeset
243 # Revision 1.16 2001/11/01 22:04:37 richard
3aee8a37afeb Fixed HTTP headers for top-level index in CGI script
Richard Jones <richard@users.sourceforge.net>
parents: 343
diff changeset
244 # Started work on supporting a pop3-fetching server
3aee8a37afeb Fixed HTTP headers for top-level index in CGI script
Richard Jones <richard@users.sourceforge.net>
parents: 343
diff changeset
245 # Fixed bugs:
3aee8a37afeb Fixed HTTP headers for top-level index in CGI script
Richard Jones <richard@users.sourceforge.net>
parents: 343
diff changeset
246 # . bug #477104 ] HTML tag error in roundup-server
3aee8a37afeb Fixed HTTP headers for top-level index in CGI script
Richard Jones <richard@users.sourceforge.net>
parents: 343
diff changeset
247 # . bug #477107 ] HTTP header problem
3aee8a37afeb Fixed HTTP headers for top-level index in CGI script
Richard Jones <richard@users.sourceforge.net>
parents: 343
diff changeset
248 #
343
ab16997d9cda Started work on supporting a pop3-fetching server
Richard Jones <richard@users.sourceforge.net>
parents: 336
diff changeset
249 # Revision 1.15 2001/10/29 23:55:44 richard
ab16997d9cda Started work on supporting a pop3-fetching server
Richard Jones <richard@users.sourceforge.net>
parents: 336
diff changeset
250 # Fix to CGI top-level index (thanks Juergen Hermann)
ab16997d9cda Started work on supporting a pop3-fetching server
Richard Jones <richard@users.sourceforge.net>
parents: 336
diff changeset
251 #
336
b3c103e536ed Fix to CGI top-level index (thanks Juergen Hermann)
Richard Jones <richard@users.sourceforge.net>
parents: 331
diff changeset
252 # Revision 1.14 2001/10/27 00:22:35 richard
b3c103e536ed Fix to CGI top-level index (thanks Juergen Hermann)
Richard Jones <richard@users.sourceforge.net>
parents: 331
diff changeset
253 # Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
b3c103e536ed Fix to CGI top-level index (thanks Juergen Hermann)
Richard Jones <richard@users.sourceforge.net>
parents: 331
diff changeset
254 #
331
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
255 # Revision 1.13 2001/10/05 02:23:24 richard
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
256 # . roundup-admin create now prompts for property info if none is supplied
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
257 # on the command-line.
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
258 # . hyperdb Class getprops() method may now return only the mutable
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
259 # properties.
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
260 # . Login now uses cookies, which makes it a whole lot more flexible. We can
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
261 # now support anonymous user access (read-only, unless there's an
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
262 # "anonymous" user, in which case write access is permitted). Login
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
263 # handling has been moved into cgi_client.Client.main()
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
264 # . The "extended" schema is now the default in roundup init.
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
265 # . The schemas have had their page headings modified to cope with the new
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
266 # login handling. Existing installations should copy the interfaces.py
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
267 # file from the roundup lib directory to their instance home.
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
268 # . Incorrectly had a Bizar Software copyright on the cgitb.py module from
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
269 # Ping - has been removed.
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
270 # . Fixed a whole bunch of places in the CGI interface where we should have
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
271 # been returning Not Found instead of throwing an exception.
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
272 # . Fixed a deviation from the spec: trying to modify the 'id' property of
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
273 # an item now throws an exception.
bff3a9e9548f Fixed some URL issues in roundup.cgi, again thanks Juergen Hermann.
Richard Jones <richard@users.sourceforge.net>
parents: 264
diff changeset
274 #
264
a671e5917b33 Many features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 258
diff changeset
275 # Revision 1.12 2001/10/01 05:55:41 richard
a671e5917b33 Many features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 258
diff changeset
276 # Fixes to the top-level index
a671e5917b33 Many features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 258
diff changeset
277 #
258
96fa4c11d3b0 Fixes to the top-level index
Richard Jones <richard@users.sourceforge.net>
parents: 252
diff changeset
278 # Revision 1.11 2001/09/29 13:27:00 richard
96fa4c11d3b0 Fixes to the top-level index
Richard Jones <richard@users.sourceforge.net>
parents: 252
diff changeset
279 # CGI interfaces now spit up a top-level index of all the instances they can
96fa4c11d3b0 Fixes to the top-level index
Richard Jones <richard@users.sourceforge.net>
parents: 252
diff changeset
280 # serve.
96fa4c11d3b0 Fixes to the top-level index
Richard Jones <richard@users.sourceforge.net>
parents: 252
diff changeset
281 #
252
76c6994aa4e8 CGI interfaces now spit up a top-level index of all instances they can serve.
Richard Jones <richard@users.sourceforge.net>
parents: 214
diff changeset
282 # Revision 1.10 2001/08/07 00:24:42 richard
76c6994aa4e8 CGI interfaces now spit up a top-level index of all instances they can serve.
Richard Jones <richard@users.sourceforge.net>
parents: 214
diff changeset
283 # stupid typo
76c6994aa4e8 CGI interfaces now spit up a top-level index of all instances they can serve.
Richard Jones <richard@users.sourceforge.net>
parents: 214
diff changeset
284 #
214
18134bffab37 stupid typo
Richard Jones <richard@users.sourceforge.net>
parents: 213
diff changeset
285 # Revision 1.9 2001/08/07 00:15:51 richard
18134bffab37 stupid typo
Richard Jones <richard@users.sourceforge.net>
parents: 213
diff changeset
286 # Added the copyright/license notice to (nearly) all files at request of
18134bffab37 stupid typo
Richard Jones <richard@users.sourceforge.net>
parents: 213
diff changeset
287 # Bizar Software.
18134bffab37 stupid typo
Richard Jones <richard@users.sourceforge.net>
parents: 213
diff changeset
288 #
213
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
289 # Revision 1.8 2001/08/05 07:43:52 richard
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
290 # Instances are now opened by a special function that generates a unique
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
291 # module name for the instances on import time.
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 204
diff changeset
292 #
204
c1461733cbf9 Instances are now opened by a special function...
Richard Jones <richard@users.sourceforge.net>
parents: 193
diff changeset
293 # Revision 1.7 2001/08/03 01:28:33 richard
c1461733cbf9 Instances are now opened by a special function...
Richard Jones <richard@users.sourceforge.net>
parents: 193
diff changeset
294 # Used the much nicer load_package, pointed out by Steve Majewski.
c1461733cbf9 Instances are now opened by a special function...
Richard Jones <richard@users.sourceforge.net>
parents: 193
diff changeset
295 #
193
241a0323aacb Used the much nicer load_package, pointed out by Steve Majewski.
Richard Jones <richard@users.sourceforge.net>
parents: 190
diff changeset
296 # Revision 1.6 2001/08/03 00:59:34 richard
241a0323aacb Used the much nicer load_package, pointed out by Steve Majewski.
Richard Jones <richard@users.sourceforge.net>
parents: 190
diff changeset
297 # Instance import now imports the instance using imp.load_module so that
241a0323aacb Used the much nicer load_package, pointed out by Steve Majewski.
Richard Jones <richard@users.sourceforge.net>
parents: 190
diff changeset
298 # we can have instance homes of "roundup" or other existing python package
241a0323aacb Used the much nicer load_package, pointed out by Steve Majewski.
Richard Jones <richard@users.sourceforge.net>
parents: 190
diff changeset
299 # names.
241a0323aacb Used the much nicer load_package, pointed out by Steve Majewski.
Richard Jones <richard@users.sourceforge.net>
parents: 190
diff changeset
300 #
190
996eaf90c01e Instance import now imports the instance using imp.load_module...
Richard Jones <richard@users.sourceforge.net>
parents: 127
diff changeset
301 # Revision 1.5 2001/07/29 07:01:39 richard
996eaf90c01e Instance import now imports the instance using imp.load_module...
Richard Jones <richard@users.sourceforge.net>
parents: 127
diff changeset
302 # Added vim command to all source so that we don't get no steenkin' tabs :)
996eaf90c01e Instance import now imports the instance using imp.load_module...
Richard Jones <richard@users.sourceforge.net>
parents: 127
diff changeset
303 #
127
0791d13baea7 Added vim command to all source so that we don't get no steenkin' tabs :)
Richard Jones <richard@users.sourceforge.net>
parents: 38
diff changeset
304 # Revision 1.4 2001/07/23 04:47:27 anthonybaxter
0791d13baea7 Added vim command to all source so that we don't get no steenkin' tabs :)
Richard Jones <richard@users.sourceforge.net>
parents: 38
diff changeset
305 # renamed ROUNDUPS to ROUNDUP_INSTANCE_HOMES
0791d13baea7 Added vim command to all source so that we don't get no steenkin' tabs :)
Richard Jones <richard@users.sourceforge.net>
parents: 38
diff changeset
306 # sys.exit(0) if python version wrong.
0791d13baea7 Added vim command to all source so that we don't get no steenkin' tabs :)
Richard Jones <richard@users.sourceforge.net>
parents: 38
diff changeset
307 #
38
d720846159fa renamed ROUNDUPS to ROUNDUP_INSTANCE_HOMES
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents: 37
diff changeset
308 # Revision 1.3 2001/07/23 04:33:30 richard
d720846159fa renamed ROUNDUPS to ROUNDUP_INSTANCE_HOMES
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents: 37
diff changeset
309 # brought the CGI instance config dict in line with roundup-server
d720846159fa renamed ROUNDUPS to ROUNDUP_INSTANCE_HOMES
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents: 37
diff changeset
310 #
37
d69245888846 brought the CGI instance config dict in line with roundup-server
Richard Jones <richard@users.sourceforge.net>
parents: 35
diff changeset
311 # Revision 1.2 2001/07/23 04:31:40 richard
d69245888846 brought the CGI instance config dict in line with roundup-server
Richard Jones <richard@users.sourceforge.net>
parents: 35
diff changeset
312 # Fixed the roundup CGI script for updates to cgi_client.py
d69245888846 brought the CGI instance config dict in line with roundup-server
Richard Jones <richard@users.sourceforge.net>
parents: 35
diff changeset
313 #
35
16f733c676fc Fixed the roundup CGI script for updates to cgi_client.py
Richard Jones <richard@users.sourceforge.net>
parents: 24
diff changeset
314 # Revision 1.1 2001/07/22 11:47:07 richard
16f733c676fc Fixed the roundup CGI script for updates to cgi_client.py
Richard Jones <richard@users.sourceforge.net>
parents: 24
diff changeset
315 # More Grande Splite
24
9d37058ffa8c More Grande Splite
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
316 #
35
16f733c676fc Fixed the roundup CGI script for updates to cgi_client.py
Richard Jones <richard@users.sourceforge.net>
parents: 24
diff changeset
317 #
127
0791d13baea7 Added vim command to all source so that we don't get no steenkin' tabs :)
Richard Jones <richard@users.sourceforge.net>
parents: 38
diff changeset
318 # vim: set filetype=python ts=4 sw=4 et si

Roundup Issue Tracker: http://roundup-tracker.org/