1 #
2 # Copyright (c) 2001 Bizar Software Pty Ltd (http://www.bizarsoftware.com.au/)
3 # This module is free software, and you may redistribute it and/or modify
4 # under the same terms as Python, so long as this copyright message and
5 # disclaimer are retained in their original form.
6 #
7 # IN NO EVENT SHALL BIZAR SOFTWARE PTY LTD BE LIABLE TO ANY PARTY FOR
8 # DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING
9 # OUT OF THE USE OF THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE
10 # POSSIBILITY OF SUCH DAMAGE.
11 #
12 # BIZAR SOFTWARE PTY LTD SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
13 # BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
14 # FOR A PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS"
15 # BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
16 # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
17 #
18 # $Id: instance_config.py,v 1.18 2002-05-25 07:16:25 rochecompaan Exp $
20 MAIL_DOMAIN=MAILHOST=HTTP_HOST=None
21 HTTP_PORT=0
23 try:
24 from localconfig import *
25 except ImportError:
26 localconfig = None
28 import os
30 # roundup home is this package's directory
31 INSTANCE_HOME=os.path.split(__file__)[0]
33 # The SMTP mail host that roundup will use to send mail
34 if not MAILHOST:
35 MAILHOST = 'localhost'
37 # The domain name used for email addresses.
38 if not MAIL_DOMAIN:
39 MAIL_DOMAIN = 'your.tracker.email.domain.example'
41 # the next two are only used for the standalone HTTP server.
42 if not HTTP_HOST:
43 HTTP_HOST = ''
44 if not HTTP_PORT:
45 HTTP_PORT = 9080
47 # This is the directory that the database is going to be stored in
48 DATABASE = os.path.join(INSTANCE_HOME, 'db')
50 # This is the directory that the HTML templates reside in
51 TEMPLATES = os.path.join(INSTANCE_HOME, 'html')
53 # A descriptive name for your roundup instance
54 INSTANCE_NAME = 'Roundup issue tracker'
56 # The email address that mail to roundup should go to
57 ISSUE_TRACKER_EMAIL = 'issue_tracker@%s'%MAIL_DOMAIN
59 # The web address that the instance is viewable at
60 ISSUE_TRACKER_WEB = 'http://your.tracker.url.example/'
62 # The email address that roundup will complain to if it runs into trouble
63 ADMIN_EMAIL = 'roundup-admin@%s'%MAIL_DOMAIN
65 # Somewhere for roundup to log stuff internally sent to stdout or stderr
66 LOG = os.path.join(INSTANCE_HOME, 'roundup.log')
68 # Where to place the web filtering HTML on the index page
69 FILTER_POSITION = 'bottom' # one of 'top', 'bottom', 'top and bottom'
71 # Deny or allow anonymous access to the web interface
72 ANONYMOUS_ACCESS = 'deny' # either 'deny' or 'allow'
74 # Deny or allow anonymous users to register through the web interface
75 ANONYMOUS_REGISTER = 'deny' # either 'deny' or 'allow'
77 # Deny or allow anonymous users to register through the mail interface
78 ANONYMOUS_REGISTER_MAIL = 'deny' # either 'deny' or 'allow'
80 # Send nosy messages to the author of the message
81 MESSAGES_TO_AUTHOR = 'no' # either 'yes' or 'no'
83 # Does the author of a message get placed on the nosy list automatically?
84 # If 'new' is used, then the author will only be added when a message
85 # creates a new issue. If 'yes', then the author will be added on followups
86 # too. If 'no', they're never added to the nosy.
87 ADD_AUTHOR_TO_NOSY = 'new' # one of 'yes', 'no', 'new'
89 # Do the recipients (To:, Cc:) of a message get placed on the nosy list?
90 # If 'new' is used, then the recipients will only be added when a message
91 # creates a new issue. If 'yes', then the recipients will be added on followups
92 # too. If 'no', they're never added to the nosy.
93 ADD_RECIPIENTS_TO_NOSY = 'new' # either 'yes', 'no', 'new'
95 # Where to place the email signature
96 EMAIL_SIGNATURE_POSITION = 'bottom' # one of 'top', 'bottom', 'none'
98 # Keep email citations
99 EMAIL_KEEP_QUOTED_TEXT = 'no' # either 'yes' or 'no'
101 # Preserve the email body as is
102 EMAIL_LEAVE_BODY_UNCHANGED = 'no' # either 'yes' or 'no'
104 # Default class to use in the mailgw if one isn't supplied in email
105 # subjects. To disable, comment out the variable below or leave it blank.
106 # Examples:
107 MAIL_DEFAULT_CLASS = 'issue' # use "issue" class by default
108 #MAIL_DEFAULT_CLASS = '' # disable (or just comment the var out)
110 # Define what index links are available in the header, and what their
111 # labels are. Each key is used to look up one of the index specifications
112 # below - so 'DEFAULT' will use 'DEFAULT_INDEX'.
113 # Where the FILTERSPEC has 'assignedto' with a value of None, it will be
114 # replaced by the id of the logged-in user.
115 HEADER_INDEX_LINKS = ['DEFAULT', 'UNASSIGNED', 'USER']
117 # list the classes that users are able to add nodes to
118 HEADER_ADD_LINKS = ['issue']
120 # list the classes that users can search
121 HEADER_SEARCH_LINKS = ['issue']
123 # list search filters per class
124 SEARCH_FILTERS = ['ISSUE_FILTER', 'SUPPORT_FILTER']
126 # Now the DEFAULT display specification. TODO: describe format
127 DEFAULT_INDEX = {
128 'LABEL': 'All Issues',
129 'CLASS': 'issue',
130 'SORT': ['-activity'],
131 'GROUP': ['priority'],
132 'FILTER': ['status'],
133 'COLUMNS': ['id','activity','title','creator','assignedto'],
134 'FILTERSPEC': {
135 'status': ['-1', '1', '2', '3', '4', '5', '6', '7'],
136 },
137 }
139 # The "unsassigned issues" index
140 UNASSIGNED_INDEX = {
141 'LABEL': 'Unassigned Issues',
142 'CLASS': 'issue',
143 'SORT': ['-activity'],
144 'GROUP': ['priority'],
145 'FILTER': ['status', 'assignedto'],
146 'COLUMNS': ['id','activity','title','creator','status'],
147 'FILTERSPEC': {
148 'status': ['-1', '1', '2', '3', '4', '5', '6', '7'],
149 'assignedto': ['-1'],
150 },
151 }
153 # The "my issues" index -- note that the user's id will replace the
154 # 'CURRENT USER' value of the "assignedto" filterspec
155 USER_INDEX = {
156 'LABEL': 'My Issues',
157 'CLASS': 'issue',
158 'SORT': ['-activity'],
159 'GROUP': ['priority'],
160 'FILTER': ['status', 'assignedto'],
161 'COLUMNS': ['id','activity','title','creator','status'],
162 'FILTERSPEC': {
163 'status': ['-1', '1', '2', '3', '4', '5', '6', '7'],
164 'assignedto': 'CURRENT USER',
165 },
166 }
168 ISSUE_FILTER = {
169 'CLASS': 'issue',
170 'FILTER': ['status', 'priority', 'assignedto', 'creator']
171 }
173 SUPPORT_FILTER = {
174 'CLASS': 'issue',
175 'FILTER': ['status', 'priority', 'assignedto', 'creator']
176 }
179 #
180 # $Log: not supported by cvs2svn $
181 # Revision 1.17 2002/05/22 00:32:33 richard
182 # . changed the default message list in issues to display the message body
183 # . made backends.__init__ be more specific about which ImportErrors it really
184 # wants to ignore
185 # . fixed the example addresses in the templates to use correct example domains
186 # . cleaned out the template stylesheets, removing a bunch of junk that really
187 # wasn't necessary (font specs, styles never used) and added a style for
188 # message content
189 #
190 # Revision 1.16 2002/05/21 06:05:54 richard
191 # . #551483 ] assignedto in Client.make_index_link
192 #
193 # Revision 1.15 2002/05/02 07:56:34 richard
194 # . added option to automatically add the authors and recipients of messages
195 # to the nosy lists with the options ADD_AUTHOR_TO_NOSY (default 'new') and
196 # ADD_RECIPIENTS_TO_NOSY (default 'new'). These settings emulate the current
197 # behaviour. Setting them to 'yes' will add the author/recipients to the nosy
198 # on messages that create issues and followup messages.
199 # . added missing documentation for a few of the config option values
200 #
201 # Revision 1.14 2002/04/23 15:46:49 rochecompaan
202 # . stripping of the email message body can now be controlled through
203 # the config variables EMAIL_KEEP_QUOTED_TEST and
204 # EMAIL_LEAVE_BODY_UNCHANGED.
205 #
206 # Revision 1.13.2.2 2002/05/02 11:49:19 rochecompaan
207 # Allow customization of the search filters that should be displayed
208 # on the search page.
209 #
210 # Revision 1.13.2.1 2002/04/20 13:23:33 rochecompaan
211 # We now have a separate search page for nodes. Search links for
212 # different classes can be customized in instance_config similar to
213 # index links.
214 #
215 # Revision 1.13 2002/03/14 23:59:24 richard
216 # . #517734 ] web header customisation is obscure
217 #
218 # Revision 1.12 2002/02/15 00:13:38 richard
219 # . #503204 ] mailgw needs a default class
220 # - partially done - the setting of additional properties can wait for a
221 # better configuration system.
222 #
223 # Revision 1.11 2002/02/14 23:46:02 richard
224 # . #516883 ] mail interface + ANONYMOUS_REGISTER
225 #
226 # Revision 1.10 2001/11/26 22:55:56 richard
227 # Feature:
228 # . Added INSTANCE_NAME to configuration - used in web and email to identify
229 # the instance.
230 # . Added EMAIL_SIGNATURE_POSITION to indicate where to place the roundup
231 # signature info in e-mails.
232 # . Some more flexibility in the mail gateway and more error handling.
233 # . Login now takes you to the page you back to the were denied access to.
234 #
235 # Fixed:
236 # . Lots of bugs, thanks Roché and others on the devel mailing list!
237 #
238 # Revision 1.9 2001/10/30 00:54:45 richard
239 # Features:
240 # . #467129 ] Lossage when username=e-mail-address
241 # . #473123 ] Change message generation for author
242 # . MailGW now moves 'resolved' to 'chatting' on receiving e-mail for an issue.
243 #
244 # Revision 1.8 2001/10/23 01:00:18 richard
245 # Re-enabled login and registration access after lopping them off via
246 # disabling access for anonymous users.
247 # Major re-org of the htmltemplate code, cleaning it up significantly. Fixed
248 # a couple of bugs while I was there. Probably introduced a couple, but
249 # things seem to work OK at the moment.
250 #
251 # Revision 1.7 2001/10/22 03:25:01 richard
252 # Added configuration for:
253 # . anonymous user access and registration (deny/allow)
254 # . filter "widget" location on index page (top, bottom, both)
255 # Updated some documentation.
256 #
257 # Revision 1.6 2001/10/01 06:10:42 richard
258 # stop people setting up roundup with our addresses as default - need to
259 # handle this better in the init
260 #
261 # Revision 1.5 2001/08/07 00:24:43 richard
262 # stupid typo
263 #
264 # Revision 1.4 2001/08/07 00:15:51 richard
265 # Added the copyright/license notice to (nearly) all files at request of
266 # Bizar Software.
267 #
268 # Revision 1.3 2001/08/02 06:38:17 richard
269 # Roundupdb now appends "mailing list" information to its messages which
270 # include the e-mail address and web interface address. Templates may
271 # override this in their db classes to include specific information (support
272 # instructions, etc).
273 #
274 # Revision 1.2 2001/07/29 07:01:39 richard
275 # Added vim command to all source so that we don't get no steenkin' tabs :)
276 #
277 # Revision 1.1 2001/07/23 23:28:43 richard
278 # Adding the classic template
279 #
280 # Revision 1.1 2001/07/23 04:33:21 anthonybaxter
281 # split __init__.py into 2. dbinit and instance_config.
282 #
283 #
284 # vim: set filetype=python ts=4 sw=4 et si