Mercurial > p > roundup > code
diff roundup/templates/extended/interfaces.py @ 273:45e32247aa33
Pushed the base code for the extended schema CGI interface back...
...into the code cgi_client module so that future updates will be less
painful. Also removed a debugging print statement from cgi_client.
| author | Richard Jones <richard@users.sourceforge.net> |
|---|---|
| date | Tue, 09 Oct 2001 07:38:58 +0000 |
| parents | a671e5917b33 |
| children | c0ca7f35e0c5 |
line wrap: on
line diff
--- a/roundup/templates/extended/interfaces.py Tue Oct 09 07:32:07 2001 +0000 +++ b/roundup/templates/extended/interfaces.py Tue Oct 09 07:38:58 2001 +0000 @@ -15,83 +15,16 @@ # BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE, # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. # -# $Id: interfaces.py,v 1.10 2001-10-05 02:23:24 richard Exp $ +# $Id: interfaces.py,v 1.11 2001-10-09 07:38:58 richard Exp $ -import instance_config, urlparse, os +import instance_config from roundup import cgi_client, mailgw -class Client(cgi_client.Client): - ''' derives basic mail gateway implementation from the standard module, +class Client(cgi_client.ExtendedClient): + ''' derives basic CGI implementation from the standard module, with any specific extensions ''' TEMPLATES = instance_config.TEMPLATES - showsupport = cgi_client.Client.shownode - showtimelog = cgi_client.Client.shownode - newsupport = cgi_client.Client.newnode - newtimelog = cgi_client.Client.newnode - - default_index_sort = ['-activity'] - default_index_group = ['priority'] - default_index_filter = [] - default_index_columns = ['activity','status','title','assignedto'] - default_index_filterspec = {'status': ['1', '2', '3', '4', '5', '6', '7']} - - def pagehead(self, title, message=None): - url = self.env['SCRIPT_NAME'] + '/' #self.env.get('PATH_INFO', '/') - machine = self.env['SERVER_NAME'] - port = self.env['SERVER_PORT'] - if port != '80': machine = machine + ':' + port - base = urlparse.urlunparse(('http', machine, url, None, None, None)) - if message is not None: - message = '<div class="system-msg">%s</div>'%message - else: - message = '' - style = open(os.path.join(self.TEMPLATES, 'style.css')).read() - user_name = self.user or '' - if self.user == 'admin': - admin_links = ' | <a href="list_classes">Class List</a>' - else: - admin_links = '' - if self.user not in (None, 'anonymous'): - userid = self.db.user.lookup(self.user) - user_info = ''' -<a href="issue?assignedto=%s&status=unread,deferred,chatting,need-eg,in-progress,testing,done-cbb&:sort=activity&:columns=id,activity,status,title,assignedto&:group=priority">My Issues</a> | -<a href="support?assignedto=%s&status=unread,deferred,chatting,need-eg,in-progress,testing,done-cbb&:sort=activity&:columns=id,activity,status,title,assignedto&:group=customername">My Support</a> | -<a href="user%s">My Details</a> | <a href="logout">Logout</a> -'''%(userid, userid, userid) - else: - user_info = '<a href="login">Login</a>' - if self.user is not None: - add_links = ''' -| Add -<a href="newissue">Issue</a>, -<a href="newsupport">Support</a>, -<a href="newuser">User</a> -''' - else: - add_links = '' - self.write('''<html><head> -<title>%s</title> -<style type="text/css">%s</style> -</head> -<body bgcolor=#ffffff> -%s -<table width=100%% border=0 cellspacing=0 cellpadding=2> -<tr class="location-bar"><td><big><strong>%s</strong></big></td> -<td align=right valign=bottom>%s</td></tr> -<tr class="location-bar"> -<td align=left>All -<a href="issue?status=unread,deferred,chatting,need-eg,in-progress,testing,done-cbb&:sort=activity&:columns=id,activity,status,title,assignedto&:group=priority">Issues</a>, -<a href="support?status=unread,deferred,chatting,need-eg,in-progress,testing,done-cbb&:sort=activity&:columns=id,activity,status,title,assignedto&:group=customername">Support</a> -| Unassigned -<a href="issue?assignedto=admin&status=unread,deferred,chatting,need-eg,in-progress,testing,done-cbb&:sort=activity&:columns=id,activity,status,title,assignedto&:group=priority">Issues</a>, -<a href="support?assignedto=admin&status=unread,deferred,chatting,need-eg,in-progress,testing,done-cbb&:sort=activity&:columns=id,activity,status,title,assignedto&:group=customername">Support</a> -%s -%s</td> -<td align=right>%s</td> -</table> -'''%(title, style, message, title, user_name, add_links, admin_links, - user_info)) class MailGW(mailgw.MailGW): ''' derives basic mail gateway implementation from the standard module, @@ -103,6 +36,26 @@ # # $Log: not supported by cvs2svn $ +# Revision 1.10 2001/10/05 02:23:24 richard +# . roundup-admin create now prompts for property info if none is supplied +# on the command-line. +# . hyperdb Class getprops() method may now return only the mutable +# properties. +# . Login now uses cookies, which makes it a whole lot more flexible. We can +# now support anonymous user access (read-only, unless there's an +# "anonymous" user, in which case write access is permitted). Login +# handling has been moved into cgi_client.Client.main() +# . The "extended" schema is now the default in roundup init. +# . The schemas have had their page headings modified to cope with the new +# login handling. Existing installations should copy the interfaces.py +# file from the roundup lib directory to their instance home. +# . Incorrectly had a Bizar Software copyright on the cgitb.py module from +# Ping - has been removed. +# . Fixed a whole bunch of places in the CGI interface where we should have +# been returning Not Found instead of throwing an exception. +# . Fixed a deviation from the spec: trying to modify the 'id' property of +# an item now throws an exception. +# # Revision 1.9 2001/08/07 00:24:43 richard # stupid typo #
