Mercurial > p > roundup > code
annotate templates/classic/dbinit.py @ 2467:76ead526113d
client instances may be used as translation engines.
any backend translator may be passed as constructor
argument or via setTranslator() method. by default,
templating.translationService is used.
use this engine to translate client messages.
| author | Alexander Smishlajev <a1s@users.sourceforge.net> |
|---|---|
| date | Tue, 15 Jun 2004 09:19:49 +0000 |
| parents | ac4f295499a4 |
| children |
| rev | line source |
|---|---|
|
1591
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
1 # |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
2 # Copyright (c) 2001 Bizar Software Pty Ltd (http://www.bizarsoftware.com.au/) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
3 # This module is free software, and you may redistribute it and/or modify |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
4 # under the same terms as Python, so long as this copyright message and |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
5 # disclaimer are retained in their original form. |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
6 # |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
7 # IN NO EVENT SHALL BIZAR SOFTWARE PTY LTD BE LIABLE TO ANY PARTY FOR |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
8 # DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
9 # OUT OF THE USE OF THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
10 # POSSIBILITY OF SUCH DAMAGE. |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
11 # |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
12 # BIZAR SOFTWARE PTY LTD SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
13 # BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
14 # FOR A PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
15 # BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE, |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
16 # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
17 # |
|
2244
ac4f295499a4
fixed journal marshalling in RDBMS backends [SF#943627]
Richard Jones <richard@users.sourceforge.net>
parents:
2136
diff
changeset
|
18 # $Id: dbinit.py,v 1.8 2004-05-02 23:16:05 richard Exp $ |
|
1591
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
19 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
20 import os |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
21 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
22 import config |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
23 from select_db import Database, Class, FileClass, IssueClass |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
24 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
25 def open(name=None): |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
26 ''' as from the roundupdb method openDB |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
27 ''' |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
28 from roundup.hyperdb import String, Password, Date, Link, Multilink |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
29 from roundup.hyperdb import Interval, Boolean, Number |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
30 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
31 # open the database |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
32 db = Database(config, name) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
33 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
34 # |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
35 # Now initialise the schema. Must do this each time the database is |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
36 # opened. |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
37 # |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
38 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
39 # Class automatically gets these properties: |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
40 # creation = Date() |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
41 # activity = Date() |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
42 # creator = Link('user') |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
43 pri = Class(db, "priority", |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
44 name=String(), order=String()) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
45 pri.setkey("name") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
46 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
47 stat = Class(db, "status", |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
48 name=String(), order=String()) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
49 stat.setkey("name") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
50 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
51 keyword = Class(db, "keyword", |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
52 name=String()) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
53 keyword.setkey("name") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
54 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
55 query = Class(db, "query", |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
56 klass=String(), name=String(), |
|
2136
ee3cf6a44f29
queries on a per-user basis, and public queries [SF#891798] :)
Richard Jones <richard@users.sourceforge.net>
parents:
2078
diff
changeset
|
57 url=String(), private_for=Link('user')) |
|
1591
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
58 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
59 # add any additional database schema configuration here |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
60 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
61 # Note: roles is a comma-separated string of Role names |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
62 user = Class(db, "user", |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
63 username=String(), password=Password(), |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
64 address=String(), realname=String(), |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
65 phone=String(), organisation=String(), |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
66 alternate_addresses=String(), |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
67 queries=Multilink('query'), roles=String(), |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
68 timezone=String()) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
69 user.setkey("username") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
70 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
71 # FileClass automatically gets these properties: |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
72 # content = String() [saved to disk in <tracker home>/db/files/] |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
73 # (it also gets the Class properties creation, activity and creator) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
74 msg = FileClass(db, "msg", |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
75 author=Link("user", do_journal='no'), |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
76 recipients=Multilink("user", do_journal='no'), |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
77 date=Date(), summary=String(), |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
78 files=Multilink("file"), |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
79 messageid=String(), inreplyto=String()) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
80 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
81 file = FileClass(db, "file", |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
82 name=String(), type=String()) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
83 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
84 # IssueClass automatically gets these properties: |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
85 # title = String() |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
86 # messages = Multilink("msg") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
87 # files = Multilink("file") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
88 # nosy = Multilink("user") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
89 # superseder = Multilink("issue") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
90 # (it also gets the Class properties creation, activity and creator) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
91 issue = IssueClass(db, "issue", |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
92 assignedto=Link("user"), topic=Multilink("keyword"), |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
93 priority=Link("priority"), status=Link("status")) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
94 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
95 # |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
96 # SECURITY SETTINGS |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
97 # |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
98 # See the configuration and customisation document for information |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
99 # about security setup. |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
100 # Assign the access and edit Permissions for issue, file and message |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
101 # to regular users now |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
102 for cl in 'issue', 'file', 'msg', 'query', 'keyword': |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
103 p = db.security.getPermission('View', cl) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
104 db.security.addPermissionToRole('User', p) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
105 p = db.security.getPermission('Edit', cl) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
106 db.security.addPermissionToRole('User', p) |
|
2076
2a4309450202
security fixes and doc updates
Richard Jones <richard@users.sourceforge.net>
parents:
1978
diff
changeset
|
107 for cl in 'priority', 'status': |
|
2a4309450202
security fixes and doc updates
Richard Jones <richard@users.sourceforge.net>
parents:
1978
diff
changeset
|
108 p = db.security.getPermission('View', cl) |
|
2077
3e0961d6d44d
Added the "actor" property.
Richard Jones <richard@users.sourceforge.net>
parents:
2076
diff
changeset
|
109 db.security.addPermissionToRole('User', p) |
|
1591
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
110 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
111 # and give the regular users access to the web and email interface |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
112 p = db.security.getPermission('Web Access') |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
113 db.security.addPermissionToRole('User', p) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
114 p = db.security.getPermission('Email Access') |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
115 db.security.addPermissionToRole('User', p) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
116 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
117 # May users view other user information? Comment these lines out |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
118 # if you don't want them to |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
119 p = db.security.getPermission('View', 'user') |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
120 db.security.addPermissionToRole('User', p) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
121 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
122 # Assign the appropriate permissions to the anonymous user's Anonymous |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
123 # Role. Choices here are: |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
124 # - Allow anonymous users to register through the web |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
125 p = db.security.getPermission('Web Registration') |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
126 db.security.addPermissionToRole('Anonymous', p) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
127 # - Allow anonymous (new) users to register through the email gateway |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
128 p = db.security.getPermission('Email Registration') |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
129 db.security.addPermissionToRole('Anonymous', p) |
|
1978
eb043e7d0899
changed template to remove duplicate display table...
Richard Jones <richard@users.sourceforge.net>
parents:
1904
diff
changeset
|
130 # - Allow anonymous users access to view issues (which implies being |
|
eb043e7d0899
changed template to remove duplicate display table...
Richard Jones <richard@users.sourceforge.net>
parents:
1904
diff
changeset
|
131 # able to view all linked information too |
|
2078
8e13768d02af
permission fix for anonymous
Richard Jones <richard@users.sourceforge.net>
parents:
2077
diff
changeset
|
132 for cl in 'issue', 'file', 'msg', 'keyword', 'priority', 'status': |
|
1978
eb043e7d0899
changed template to remove duplicate display table...
Richard Jones <richard@users.sourceforge.net>
parents:
1904
diff
changeset
|
133 p = db.security.getPermission('View', cl) |
|
eb043e7d0899
changed template to remove duplicate display table...
Richard Jones <richard@users.sourceforge.net>
parents:
1904
diff
changeset
|
134 db.security.addPermissionToRole('Anonymous', p) |
|
1591
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
135 # - Allow anonymous users access to edit the "issue" class of data |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
136 # Note: this also grants access to create related information like |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
137 # files and messages etc that are linked to issues |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
138 #p = db.security.getPermission('Edit', 'issue') |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
139 #db.security.addPermissionToRole('Anonymous', p) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
140 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
141 # oh, g'wan, let anonymous access the web interface too |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
142 p = db.security.getPermission('Web Access') |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
143 db.security.addPermissionToRole('Anonymous', p) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
144 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
145 import detectors |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
146 detectors.init(db) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
147 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
148 # schema is set up - run any post-initialisation |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
149 db.post_init() |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
150 return db |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
151 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
152 def init(adminpw): |
|
2244
ac4f295499a4
fixed journal marshalling in RDBMS backends [SF#943627]
Richard Jones <richard@users.sourceforge.net>
parents:
2136
diff
changeset
|
153 '''Invoked by the "roundup-admin initialise" command to set up the |
|
ac4f295499a4
fixed journal marshalling in RDBMS backends [SF#943627]
Richard Jones <richard@users.sourceforge.net>
parents:
2136
diff
changeset
|
154 initial state of the hyperdb. |
|
1591
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
155 |
|
2244
ac4f295499a4
fixed journal marshalling in RDBMS backends [SF#943627]
Richard Jones <richard@users.sourceforge.net>
parents:
2136
diff
changeset
|
156 If you wish to change the hyperdb *after* running that command, see |
|
ac4f295499a4
fixed journal marshalling in RDBMS backends [SF#943627]
Richard Jones <richard@users.sourceforge.net>
parents:
2136
diff
changeset
|
157 the customisation doc "Database Content" section. |
|
1591
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
158 ''' |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
159 dbdir = os.path.join(config.DATABASE, 'files') |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
160 if not os.path.isdir(dbdir): |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
161 os.makedirs(dbdir) |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
162 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
163 db = open("admin") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
164 db.clear() |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
165 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
166 # |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
167 # INITIAL PRIORITY AND STATUS VALUES |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
168 # |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
169 pri = db.getclass('priority') |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
170 pri.create(name="critical", order="1") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
171 pri.create(name="urgent", order="2") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
172 pri.create(name="bug", order="3") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
173 pri.create(name="feature", order="4") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
174 pri.create(name="wish", order="5") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
175 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
176 stat = db.getclass('status') |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
177 stat.create(name="unread", order="1") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
178 stat.create(name="deferred", order="2") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
179 stat.create(name="chatting", order="3") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
180 stat.create(name="need-eg", order="4") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
181 stat.create(name="in-progress", order="5") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
182 stat.create(name="testing", order="6") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
183 stat.create(name="done-cbb", order="7") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
184 stat.create(name="resolved", order="8") |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
185 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
186 # create the two default users |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
187 user = db.getclass('user') |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
188 user.create(username="admin", password=adminpw, |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
189 address=config.ADMIN_EMAIL, roles='Admin') |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
190 user.create(username="anonymous", roles='Anonymous') |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
191 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
192 # add any additional database create steps here - but only if you |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
193 # haven't initialised the database with the admin "initialise" command |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
194 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
195 db.commit() |
|
1904
9445caec3ff5
more database closing cleanups, finally mysql has no dangling references
Richard Jones <richard@users.sourceforge.net>
parents:
1591
diff
changeset
|
196 db.close() |
|
1591
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
197 |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
198 # vim: set filetype=python ts=4 sw=4 et si |
|
21312a7564fd
moving templates around
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
199 |
|
1978
eb043e7d0899
changed template to remove duplicate display table...
Richard Jones <richard@users.sourceforge.net>
parents:
1904
diff
changeset
|
200 #SHA: 92c54c05ba9f59453dc74fa9fdbbae34f7a9c077 |
