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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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

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