~azzar1/unity/add-show-desktop-key

« back to all changes in this revision

Viewing changes to userdb/users.sql

  • Committer: William Grant
  • Date: 2010-07-28 05:06:15 UTC
  • Revision ID: grantw@unimelb.edu.au-20100728050615-uwbxn9frla3pdw8m
Encode content_type when downloading files. cjson made us write bad code.

Show diffs side-by-side

added added

removed removed

Lines of Context:
51
51
 
52
52
CREATE TABLE semester (
53
53
    semesterid  SERIAL PRIMARY KEY NOT NULL,
54
 
    year        CHAR(4) NOT NULL CHECK (valid_url_name(year)),
55
 
    semester    CHAR(1) NOT NULL CHECK (valid_url_name(semester)),
 
54
    year        TEXT NOT NULL CHECK (valid_url_name(year)),
 
55
    url_name    TEXT NOT NULL CHECK (valid_url_name(url_name)),
 
56
    code        TEXT NOT NULL,
 
57
    display_name TEXT NOT NULL,
56
58
    state       TEXT NOT NULL CHECK (state IN ('disabled', 'past',
57
59
                                    'current', 'future')) DEFAULT 'current',
58
 
    UNIQUE (year, semester)
 
60
    UNIQUE (year, url_name),
 
61
    UNIQUE (year, code)
59
62
);
60
63
 
61
64
CREATE TABLE offering (
183
186
        OR (loginid IS NULL AND groupid IS NOT NULL))
184
187
);
185
188
 
 
189
-- We must use conditional constraints here -- NULL != NULL.
 
190
CREATE UNIQUE INDEX assessed_loginid_key ON assessed(loginid, projectid) WHERE loginid IS NOT NULL;
 
191
CREATE UNIQUE INDEX assessed_groupid_key ON assessed(groupid, projectid) WHERE groupid IS NOT NULL;
 
192
 
186
193
CREATE TABLE project_extension (
187
194
    extensionid SERIAL PRIMARY KEY,
188
195
    assessedid  INT4 REFERENCES assessed (assessedid) NOT NULL,
189
 
    deadline    TIMESTAMP NOT NULL,
 
196
    days        INT NOT NULL,
190
197
    approver    INT4 REFERENCES login (loginid) NOT NULL,
191
198
    notes       VARCHAR
192
199
);
216
223
    identifier  TEXT PRIMARY KEY CHECK (valid_url_name(identifier)),
217
224
    name        TEXT,
218
225
    description TEXT,
 
226
    description_xhtml_cache TEXT,
219
227
    partial     TEXT,
220
228
    solution    TEXT,
221
229
    include     TEXT,
228
236
    identifier  TEXT NOT NULL CHECK (valid_url_name(identifier)),
229
237
    name        TEXT NOT NULL,
230
238
    data        TEXT NOT NULL,
 
239
    data_xhtml_cache TEXT,
231
240
    assessable  BOOLEAN NOT NULL,
232
241
    published   BOOLEAN NOT NULL DEFAULT true,
233
242
    seq_no      INT4 NOT NULL,