annotate roundup/templates/extended/dbinit.py @ 905:502a5ae11cc5

Very close now. The cgi and mailgw now use the new security API. The two templates have been migrated to that setup. Lots of unit tests. Still some issue in the web form for editing Roles assigned to users.
author Richard Jones <richard@users.sourceforge.net>
date Fri, 26 Jul 2002 08:27:00 +0000
parents 2dd862af72ee
children 23c9d4f86380
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
213
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 188
diff changeset
1 #
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 188
diff changeset
2 # 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: 188
diff changeset
3 # 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: 188
diff changeset
4 # 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: 188
diff changeset
5 # disclaimer are retained in their original form.
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 188
diff changeset
6 #
214
18134bffab37 stupid typo
Richard Jones <richard@users.sourceforge.net>
parents: 213
diff changeset
7 # 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: 188
diff changeset
8 # 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: 188
diff changeset
9 # 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: 188
diff changeset
10 # POSSIBILITY OF SUCH DAMAGE.
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 188
diff changeset
11 #
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 188
diff changeset
12 # 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: 188
diff changeset
13 # 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: 188
diff changeset
14 # 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: 188
diff changeset
15 # 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: 188
diff changeset
16 # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 188
diff changeset
17 #
905
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
18 # $Id: dbinit.py,v 1.24 2002-07-26 08:27:00 richard Exp $
44
c1f3e058c58d Moved the database backends off into backends.
Richard Jones <richard@users.sourceforge.net>
parents: 43
diff changeset
19
c1f3e058c58d Moved the database backends off into backends.
Richard Jones <richard@users.sourceforge.net>
parents: 43
diff changeset
20 import os
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
21
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
22 import instance_config
858
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 825
diff changeset
23 from select_db import Database, Class, FileClass, IssueClass
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
24
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
25 def open(name=None):
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
26 ''' as from the roundupdb method openDB
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
27 '''
270
a4241ddd22d7 Added the Password property type.
Richard Jones <richard@users.sourceforge.net>
parents: 214
diff changeset
28 from roundup.hyperdb import String, Password, Date, Link, Multilink
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
29
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
30 # open the database
524
dce4c75bef5a changed all config accesses...
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
31 db = Database(instance_config, name)
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
32
748
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
33 #
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
34 # Now initialise the schema. Must do this each time the database is
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
35 # opened.
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
36 #
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
37
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
38 # Class automatically gets these properties:
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
39 # creation = Date()
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
40 # activity = Date()
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
41 # creator = Link('user')
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
42 pri = Class(db, "priority",
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
43 name=String(), order=String())
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
44 pri.setkey("name")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
45
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
46 stat = Class(db, "status",
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
47 name=String(), order=String())
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
48 stat.setkey("name")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
49
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
50 keywords = Class(db, "keyword",
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
51 name=String())
270
a4241ddd22d7 Added the Password property type.
Richard Jones <richard@users.sourceforge.net>
parents: 214
diff changeset
52 keywords.setkey("name")
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
53
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
54 user = Class(db, "user",
270
a4241ddd22d7 Added the Password property type.
Richard Jones <richard@users.sourceforge.net>
parents: 214
diff changeset
55 username=String(), password=Password(),
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
56 address=String(), realname=String(),
617
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 524
diff changeset
57 phone=String(), organisation=String(),
905
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
58 alternate_addresses=String(),
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
59 queries=Multilink('query'), roles=String())
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
60 user.setkey("username")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
61
748
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
62 # FileClass automatically gets these properties:
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
63 # content = String() [saved to disk in <instance home>/db/files/]
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
64 # (it also gets the Class properties creation, activity and creator)
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
65 msg = FileClass(db, "msg",
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
66 author=Link("user"), recipients=Multilink("user"),
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
67 date=Date(), summary=String(),
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
68 files=Multilink("file"),
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
69 messageid=String(), inreplyto=String())
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
70
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
71 file = FileClass(db, "file",
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
72 name=String(), type=String())
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
73
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
74 # bugs and support calls etc
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
75 rate = Class(db, "rate",
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
76 name=String(), order=String())
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
77 rate.setkey("name")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
78
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
79 source = Class(db, "source",
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
80 name=String(), order=String())
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
81 source.setkey("name")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
82
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
83 platform = Class(db, "platform",
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
84 name=String(), order=String())
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
85 platform.setkey("name")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
86
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
87 product = Class(db, "product",
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
88 name=String(), order=String())
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
89 product.setkey("name")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
90
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
91 timelog = Class(db, "timelog",
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
92 date=Date(), time=String(),
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
93 performedby=Link("user"), description=String())
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
94
748
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
95 # IssueClass automatically gets these properties:
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
96 # title = String()
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
97 # messages = Multilink("msg")
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
98 # files = Multilink("file")
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
99 # nosy = Multilink("user")
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
100 # superseder = Multilink("issue")
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
101 # (it also gets the Class properties creation, activity and creator)
144
b0c4ac63c6ed Big changes:
Richard Jones <richard@users.sourceforge.net>
parents: 127
diff changeset
102 support = IssueClass(db, "support",
b0c4ac63c6ed Big changes:
Richard Jones <richard@users.sourceforge.net>
parents: 127
diff changeset
103 assignedto=Link("user"), status=Link("status"),
b0c4ac63c6ed Big changes:
Richard Jones <richard@users.sourceforge.net>
parents: 127
diff changeset
104 rate=Link("rate"), source=Link("source"),
b0c4ac63c6ed Big changes:
Richard Jones <richard@users.sourceforge.net>
parents: 127
diff changeset
105 product=Link("product"), platform=Multilink("platform"),
b0c4ac63c6ed Big changes:
Richard Jones <richard@users.sourceforge.net>
parents: 127
diff changeset
106 version=String(), timelog=Multilink("timelog"),
b0c4ac63c6ed Big changes:
Richard Jones <richard@users.sourceforge.net>
parents: 127
diff changeset
107 customername=String())
b0c4ac63c6ed Big changes:
Richard Jones <richard@users.sourceforge.net>
parents: 127
diff changeset
108
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
109 issue = IssueClass(db, "issue",
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
110 assignedto=Link("user"), priority=Link("priority"),
144
b0c4ac63c6ed Big changes:
Richard Jones <richard@users.sourceforge.net>
parents: 127
diff changeset
111 status=Link("status"), product=Link("product"),
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
112 platform=Multilink("platform"), version=String(),
394
f43af1e97fdd Added a target version field to the extended issue schema
Richard Jones <richard@users.sourceforge.net>
parents: 337
diff changeset
113 targetversion=String(), supportcall=Multilink("support"))
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
114
905
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
115 #
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
116 # SECURITY SETTINGS
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
117 #
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
118 # new permissions for this schema
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
119 for cl in 'issue', 'support', 'file', 'msg':
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
120 db.security.addPermission(name="Edit", klass=cl,
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
121 description="User is allowed to edit "+cl)
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
122 db.security.addPermission(name="View", klass=cl,
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
123 description="User is allowed to access "+cl)
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
124
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
125 # Assign the appropriate permissions to the anonymous user's Anonymous
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
126 # Role. Choices here are:
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
127 # - Allow anonymous users to register through the web
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
128 p = db.security.getPermission('Web Registration')
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
129 db.security.addPermissionToRole('Anonymous', p)
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
130 # - Allow anonymous (new) users to register through the email gateway
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
131 p = db.security.getPermission('Email Registration')
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
132 db.security.addPermissionToRole('Anonymous', p)
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
133 # - Allow anonymous users access to the "issue" class of data
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
134 # Note: this also grants access to related information like files,
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
135 # messages, statuses etc that are linked to issues
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
136 #p = db.security.getPermission('View', 'issue')
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
137 #db.security.addPermissionToRole('Anonymous', p)
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
138 # - Allow anonymous users access to edit the "issue" class of data
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
139 # Note: this also grants access to create related information like
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
140 # files and messages etc that are linked to issues
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
141 #p = db.security.getPermission('Edit', 'issue')
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
142 #db.security.addPermissionToRole('Anonymous', p)
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
143
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
144 # Assign the access and edit permissions for issue, file and message
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
145 # to regular users now
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
146 for cl in 'issue', 'support', 'file', 'msg':
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
147 p = db.security.getPermission('View', cl)
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
148 db.security.addPermissionToRole('User', p)
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
149 p = db.security.getPermission('Edit', cl)
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
150 db.security.addPermissionToRole('User', p)
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
151
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
152 import detectors
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
153 detectors.init(db)
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
154
825
0779ea9f1f18 More indexer work:
Richard Jones <richard@users.sourceforge.net>
parents: 748
diff changeset
155 # schema is set up - run any post-initialisation
0779ea9f1f18 More indexer work:
Richard Jones <richard@users.sourceforge.net>
parents: 748
diff changeset
156 db.post_init()
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
157 return db
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
158
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
159 def init(adminpw):
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
160 ''' as from the roundupdb method initDB
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
161
748
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
162 Open the new database, and add new nodes - used for initialisation. You
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
163 can edit this before running the "roundup-admin initialise" command to
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
164 change the initial database entries.
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
165 '''
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
166 dbdir = os.path.join(instance_config.DATABASE, 'files')
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
167 if not os.path.isdir(dbdir):
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
168 os.makedirs(dbdir)
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
169
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
170 db = open("admin")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
171 db.clear()
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
172
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
173 pri = db.getclass('priority')
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
174 pri.create(name="fatal-bug", order="1")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
175 pri.create(name="bug", order="2")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
176 pri.create(name="usability", order="3")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
177 pri.create(name="feature", order="4")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
178
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
179 stat = db.getclass('status')
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
180 stat.create(name="unread", order="1")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
181 stat.create(name="deferred", order="2")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
182 stat.create(name="chatting", order="3")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
183 stat.create(name="need-eg", order="4")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
184 stat.create(name="in-progress", order="5")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
185 stat.create(name="testing", order="6")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
186 stat.create(name="done-cbb", order="7")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
187 stat.create(name="resolved", order="8")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
188
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
189 rate = db.getclass("rate")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
190 rate.create(name='basic', order="1")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
191 rate.create(name='premium', order="2")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
192 rate.create(name='internal', order="3")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
193
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
194 source = db.getclass("source")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
195 source.create(name='phone', order="1")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
196 source.create(name='e-mail', order="2")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
197 source.create(name='internal', order="3")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
198 source.create(name='internal-qa', order="4")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
199
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
200 platform = db.getclass("platform")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
201 platform.create(name='linux', order="1")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
202 platform.create(name='windows', order="2")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
203 platform.create(name='mac', order="3")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
204
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
205 product = db.getclass("product")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
206 product.create(name='Bizar Shop', order="1")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
207 product.create(name='Bizar Shop Developer', order="2")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
208 product.create(name='Bizar Shop Manual', order="3")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
209 product.create(name='Bizar Shop Developer Manual', order="4")
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
210
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
211 user = db.getclass('user')
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
212 user.create(username="admin", password=adminpw,
905
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
213 address=instance_config.ADMIN_EMAIL, roles="Admin")
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
214 user.create(username="anonymous", roles='Anonymous')
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
215
430
350685601f37 Database transactions.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
216 db.commit()
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
217
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
218 #
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
219 # $Log: not supported by cvs2svn $
905
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
220 # Revision 1.23 2002/07/14 02:05:54 richard
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
221 # . all storage-specific code (ie. backend) is now implemented by the backends
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
222 #
858
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 825
diff changeset
223 # Revision 1.22 2002/07/09 03:02:53 richard
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 825
diff changeset
224 # More indexer work:
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 825
diff changeset
225 # - all String properties may now be indexed too. Currently there's a bit of
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 825
diff changeset
226 # "issue" specific code in the actual searching which needs to be
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 825
diff changeset
227 # addressed. In a nutshell:
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 825
diff changeset
228 # + pass 'indexme="yes"' as a String() property initialisation arg, eg:
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 825
diff changeset
229 # file = FileClass(db, "file", name=String(), type=String(),
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 825
diff changeset
230 # comment=String(indexme="yes"))
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 825
diff changeset
231 # + the comment will then be indexed and be searchable, with the results
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 825
diff changeset
232 # related back to the issue that the file is linked to
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 825
diff changeset
233 # - as a result of this work, the FileClass has a default MIME type that may
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 825
diff changeset
234 # be overridden in a subclass, or by the use of a "type" property as is
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 825
diff changeset
235 # done in the default templates.
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 825
diff changeset
236 # - the regeneration of the indexes (if necessary) is done once the schema is
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 825
diff changeset
237 # set up in the dbinit.
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 825
diff changeset
238 #
825
0779ea9f1f18 More indexer work:
Richard Jones <richard@users.sourceforge.net>
parents: 748
diff changeset
239 # Revision 1.21 2002/05/24 04:03:23 richard
0779ea9f1f18 More indexer work:
Richard Jones <richard@users.sourceforge.net>
parents: 748
diff changeset
240 # Added commentage to the dbinit files to help people with their
0779ea9f1f18 More indexer work:
Richard Jones <richard@users.sourceforge.net>
parents: 748
diff changeset
241 # customisation.
0779ea9f1f18 More indexer work:
Richard Jones <richard@users.sourceforge.net>
parents: 748
diff changeset
242 #
748
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
243 # Revision 1.20 2002/02/15 07:08:44 richard
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
244 # . Alternate email addresses are now available for users. See the MIGRATION
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
245 # file for info on how to activate the feature.
2e70123bbf5a Added commentage to the dbinit files to help people with their customisation.
Richard Jones <richard@users.sourceforge.net>
parents: 617
diff changeset
246 #
617
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 524
diff changeset
247 # Revision 1.19 2002/01/14 02:20:15 richard
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 524
diff changeset
248 # . changed all config accesses so they access either the instance or the
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 524
diff changeset
249 # config attriubute on the db. This means that all config is obtained from
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 524
diff changeset
250 # instance_config instead of the mish-mash of classes. This will make
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 524
diff changeset
251 # switching to a ConfigParser setup easier too, I hope.
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 524
diff changeset
252 #
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 524
diff changeset
253 # At a minimum, this makes migration a _little_ easier (a lot easier in the
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 524
diff changeset
254 # 0.5.0 switch, I hope!)
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 524
diff changeset
255 #
524
dce4c75bef5a changed all config accesses...
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
256 # Revision 1.18 2002/01/02 02:31:38 richard
dce4c75bef5a changed all config accesses...
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
257 # Sorry for the huge checkin message - I was only intending to implement #496356
dce4c75bef5a changed all config accesses...
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
258 # but I found a number of places where things had been broken by transactions:
dce4c75bef5a changed all config accesses...
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
259 # . modified ROUNDUPDBSENDMAILDEBUG to be SENDMAILDEBUG and hold a filename
dce4c75bef5a changed all config accesses...
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
260 # for _all_ roundup-generated smtp messages to be sent to.
dce4c75bef5a changed all config accesses...
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
261 # . the transaction cache had broken the roundupdb.Class set() reactors
dce4c75bef5a changed all config accesses...
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
262 # . newly-created author users in the mailgw weren't being committed to the db
dce4c75bef5a changed all config accesses...
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
263 #
dce4c75bef5a changed all config accesses...
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
264 # Stuff that made it into CHANGES.txt (ie. the stuff I was actually working
dce4c75bef5a changed all config accesses...
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
265 # on when I found that stuff :):
dce4c75bef5a changed all config accesses...
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
266 # . #496356 ] Use threading in messages
dce4c75bef5a changed all config accesses...
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
267 # . detectors were being registered multiple times
dce4c75bef5a changed all config accesses...
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
268 # . added tests for mailgw
dce4c75bef5a changed all config accesses...
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
269 # . much better attaching of erroneous messages in the mail gateway
dce4c75bef5a changed all config accesses...
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
270 #
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
271 # Revision 1.17 2001/12/02 05:06:16 richard
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
272 # . We now use weakrefs in the Classes to keep the database reference, so
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
273 # the close() method on the database is no longer needed.
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
274 # I bumped the minimum python requirement up to 2.1 accordingly.
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
275 # . #487480 ] roundup-server
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
276 # . #487476 ] INSTALL.txt
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
277 #
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
278 # I also cleaned up the change message / post-edit stuff in the cgi client.
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
279 # There's now a clearly marked "TODO: append the change note" where I believe
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
280 # the change note should be added there. The "changes" list will obviously
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
281 # have to be modified to be a dict of the changes, or somesuch.
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
282 #
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
283 # More testing needed.
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents: 431
diff changeset
284 #
431
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 430
diff changeset
285 # Revision 1.16 2001/12/01 07:17:50 richard
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 430
diff changeset
286 # . We now have basic transaction support! Information is only written to
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 430
diff changeset
287 # the database when the commit() method is called. Only the anydbm
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 430
diff changeset
288 # backend is modified in this way - neither of the bsddb backends have been.
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 430
diff changeset
289 # The mail, admin and cgi interfaces all use commit (except the admin tool
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 430
diff changeset
290 # doesn't have a commit command, so interactive users can't commit...)
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 430
diff changeset
291 # . Fixed login/registration forwarding the user to the right page (or not,
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 430
diff changeset
292 # on a failure)
a28a80b714f9 Eliminate database close method by using weakrefs.
Richard Jones <richard@users.sourceforge.net>
parents: 430
diff changeset
293 #
430
350685601f37 Database transactions.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
294 # Revision 1.15 2001/11/26 22:55:56 richard
350685601f37 Database transactions.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
295 # Feature:
350685601f37 Database transactions.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
296 # . Added INSTANCE_NAME to configuration - used in web and email to identify
350685601f37 Database transactions.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
297 # the instance.
350685601f37 Database transactions.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
298 # . Added EMAIL_SIGNATURE_POSITION to indicate where to place the roundup
350685601f37 Database transactions.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
299 # signature info in e-mails.
350685601f37 Database transactions.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
300 # . Some more flexibility in the mail gateway and more error handling.
350685601f37 Database transactions.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
301 # . Login now takes you to the page you back to the were denied access to.
350685601f37 Database transactions.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
302 #
350685601f37 Database transactions.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
303 # Fixed:
350685601f37 Database transactions.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
304 # . Lots of bugs, thanks Roché and others on the devel mailing list!
350685601f37 Database transactions.
Richard Jones <richard@users.sourceforge.net>
parents: 411
diff changeset
305 #
411
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 394
diff changeset
306 # Revision 1.14 2001/11/21 02:34:18 richard
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 394
diff changeset
307 # Added a target version field to the extended issue schema
a6088556e9ba Features and fixes.
Richard Jones <richard@users.sourceforge.net>
parents: 394
diff changeset
308 #
394
f43af1e97fdd Added a target version field to the extended issue schema
Richard Jones <richard@users.sourceforge.net>
parents: 337
diff changeset
309 # Revision 1.13 2001/10/30 00:54:45 richard
f43af1e97fdd Added a target version field to the extended issue schema
Richard Jones <richard@users.sourceforge.net>
parents: 337
diff changeset
310 # Features:
f43af1e97fdd Added a target version field to the extended issue schema
Richard Jones <richard@users.sourceforge.net>
parents: 337
diff changeset
311 # . #467129 ] Lossage when username=e-mail-address
f43af1e97fdd Added a target version field to the extended issue schema
Richard Jones <richard@users.sourceforge.net>
parents: 337
diff changeset
312 # . #473123 ] Change message generation for author
f43af1e97fdd Added a target version field to the extended issue schema
Richard Jones <richard@users.sourceforge.net>
parents: 337
diff changeset
313 # . MailGW now moves 'resolved' to 'chatting' on receiving e-mail for an issue.
f43af1e97fdd Added a target version field to the extended issue schema
Richard Jones <richard@users.sourceforge.net>
parents: 337
diff changeset
314 #
337
8cd545738d8e Features:
Richard Jones <richard@users.sourceforge.net>
parents: 270
diff changeset
315 # Revision 1.12 2001/10/09 07:25:59 richard
8cd545738d8e Features:
Richard Jones <richard@users.sourceforge.net>
parents: 270
diff changeset
316 # Added the Password property type. See "pydoc roundup.password" for
8cd545738d8e Features:
Richard Jones <richard@users.sourceforge.net>
parents: 270
diff changeset
317 # implementation details. Have updated some of the documentation too.
8cd545738d8e Features:
Richard Jones <richard@users.sourceforge.net>
parents: 270
diff changeset
318 #
270
a4241ddd22d7 Added the Password property type.
Richard Jones <richard@users.sourceforge.net>
parents: 214
diff changeset
319 # Revision 1.11 2001/08/07 00:24:43 richard
a4241ddd22d7 Added the Password property type.
Richard Jones <richard@users.sourceforge.net>
parents: 214
diff changeset
320 # stupid typo
a4241ddd22d7 Added the Password property type.
Richard Jones <richard@users.sourceforge.net>
parents: 214
diff changeset
321 #
214
18134bffab37 stupid typo
Richard Jones <richard@users.sourceforge.net>
parents: 213
diff changeset
322 # Revision 1.10 2001/08/07 00:15:51 richard
18134bffab37 stupid typo
Richard Jones <richard@users.sourceforge.net>
parents: 213
diff changeset
323 # 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
324 # Bizar Software.
18134bffab37 stupid typo
Richard Jones <richard@users.sourceforge.net>
parents: 213
diff changeset
325 #
213
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 188
diff changeset
326 # Revision 1.9 2001/08/02 06:38:17 richard
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 188
diff changeset
327 # Roundupdb now appends "mailing list" information to its messages which
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 188
diff changeset
328 # include the e-mail address and web interface address. Templates may
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 188
diff changeset
329 # override this in their db classes to include specific information (support
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 188
diff changeset
330 # instructions, etc).
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 188
diff changeset
331 #
188
1536be43d2fa Roundupdb now appends "mailing list" information to its messages...
Richard Jones <richard@users.sourceforge.net>
parents: 144
diff changeset
332 # Revision 1.8 2001/07/30 01:26:59 richard
1536be43d2fa Roundupdb now appends "mailing list" information to its messages...
Richard Jones <richard@users.sourceforge.net>
parents: 144
diff changeset
333 # Big changes:
1536be43d2fa Roundupdb now appends "mailing list" information to its messages...
Richard Jones <richard@users.sourceforge.net>
parents: 144
diff changeset
334 # . split off the support priority into its own class
1536be43d2fa Roundupdb now appends "mailing list" information to its messages...
Richard Jones <richard@users.sourceforge.net>
parents: 144
diff changeset
335 # . added "new support, new user" to the page head
1536be43d2fa Roundupdb now appends "mailing list" information to its messages...
Richard Jones <richard@users.sourceforge.net>
parents: 144
diff changeset
336 # . fixed the display options for the heading links
1536be43d2fa Roundupdb now appends "mailing list" information to its messages...
Richard Jones <richard@users.sourceforge.net>
parents: 144
diff changeset
337 #
144
b0c4ac63c6ed Big changes:
Richard Jones <richard@users.sourceforge.net>
parents: 127
diff changeset
338 # Revision 1.7 2001/07/29 07:01:39 richard
b0c4ac63c6ed Big changes:
Richard Jones <richard@users.sourceforge.net>
parents: 127
diff changeset
339 # Added vim command to all source so that we don't get no steenkin' tabs :)
b0c4ac63c6ed Big changes:
Richard Jones <richard@users.sourceforge.net>
parents: 127
diff changeset
340 #
127
0791d13baea7 Added vim command to all source so that we don't get no steenkin' tabs :)
Richard Jones <richard@users.sourceforge.net>
parents: 71
diff changeset
341 # Revision 1.6 2001/07/25 01:23:07 richard
0791d13baea7 Added vim command to all source so that we don't get no steenkin' tabs :)
Richard Jones <richard@users.sourceforge.net>
parents: 71
diff changeset
342 # Added the Roundup spec to the new documentation directory.
0791d13baea7 Added vim command to all source so that we don't get no steenkin' tabs :)
Richard Jones <richard@users.sourceforge.net>
parents: 71
diff changeset
343 #
71
5147b4c51fd5 Added the Roundup spec to the new documentation directory.
Richard Jones <richard@users.sourceforge.net>
parents: 56
diff changeset
344 # Revision 1.5 2001/07/23 23:20:35 richard
5147b4c51fd5 Added the Roundup spec to the new documentation directory.
Richard Jones <richard@users.sourceforge.net>
parents: 56
diff changeset
345 # forgot to remove the interfaces from the dbinit module ;)
5147b4c51fd5 Added the Roundup spec to the new documentation directory.
Richard Jones <richard@users.sourceforge.net>
parents: 56
diff changeset
346 #
56
03940dfa669e forgot to remove the interfaces from the dbinit module ;)
Richard Jones <richard@users.sourceforge.net>
parents: 51
diff changeset
347 # Revision 1.4 2001/07/23 08:45:28 richard
03940dfa669e forgot to remove the interfaces from the dbinit module ;)
Richard Jones <richard@users.sourceforge.net>
parents: 51
diff changeset
348 # ok, so now "./roundup-admin init" will ask questions in an attempt to get a
03940dfa669e forgot to remove the interfaces from the dbinit module ;)
Richard Jones <richard@users.sourceforge.net>
parents: 51
diff changeset
349 # workable instance_home set up :)
03940dfa669e forgot to remove the interfaces from the dbinit module ;)
Richard Jones <richard@users.sourceforge.net>
parents: 51
diff changeset
350 # _and_ anydbm has had its first test :)
03940dfa669e forgot to remove the interfaces from the dbinit module ;)
Richard Jones <richard@users.sourceforge.net>
parents: 51
diff changeset
351 #
51
3a7e5515c1bd ok, so now "./roundup-admin init" will ask questions...
Richard Jones <richard@users.sourceforge.net>
parents: 44
diff changeset
352 # Revision 1.3 2001/07/23 07:14:41 richard
3a7e5515c1bd ok, so now "./roundup-admin init" will ask questions...
Richard Jones <richard@users.sourceforge.net>
parents: 44
diff changeset
353 # Moved the database backends off into backends.
3a7e5515c1bd ok, so now "./roundup-admin init" will ask questions...
Richard Jones <richard@users.sourceforge.net>
parents: 44
diff changeset
354 #
44
c1f3e058c58d Moved the database backends off into backends.
Richard Jones <richard@users.sourceforge.net>
parents: 43
diff changeset
355 # Revision 1.2 2001/07/23 06:25:50 richard
c1f3e058c58d Moved the database backends off into backends.
Richard Jones <richard@users.sourceforge.net>
parents: 43
diff changeset
356 # relfected the move to roundup/backends
c1f3e058c58d Moved the database backends off into backends.
Richard Jones <richard@users.sourceforge.net>
parents: 43
diff changeset
357 #
43
4b9ecc926ad7 relfected the move to roundup/backends
Richard Jones <richard@users.sourceforge.net>
parents: 36
diff changeset
358 # Revision 1.1 2001/07/23 04:33:21 anthonybaxter
4b9ecc926ad7 relfected the move to roundup/backends
Richard Jones <richard@users.sourceforge.net>
parents: 36
diff changeset
359 # split __init__.py into 2. dbinit and instance_config.
4b9ecc926ad7 relfected the move to roundup/backends
Richard Jones <richard@users.sourceforge.net>
parents: 36
diff changeset
360 #
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
361 # Revision 1.1 2001/07/23 03:50:46 anthonybaxter
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
362 # moved templates to proper location
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
363 #
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
364 # Revision 1.2 2001/07/22 12:09:32 richard
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
365 # Final commit of Grande Splite
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
366 #
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
367 #
127
0791d13baea7 Added vim command to all source so that we don't get no steenkin' tabs :)
Richard Jones <richard@users.sourceforge.net>
parents: 71
diff changeset
368 # vim: set filetype=python ts=4 sw=4 et si
36
41e49de57a85 split __init__.py into 2. dbinit and instance_config.
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
369

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