]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/src/sql/Pg/upgrade/XXXX.schema.course-materials-module.sql
lp1849212: Archive Courses
[Evergreen.git] / Open-ILS / src / sql / Pg / upgrade / XXXX.schema.course-materials-module.sql
1 BEGIN;
2
3 SELECT evergreen.upgrade_deps_block_check('XXXX', :eg_version);
4
5 CREATE TABLE asset.course_module_course (
6     id              SERIAL PRIMARY KEY,
7     name            TEXT NOT NULL,
8     course_number   TEXT NOT NULL,
9     section_number  TEXT,
10     owning_lib      INT REFERENCES actor.org_unit (id),
11     is_archived        BOOLEAN NOT NULL DEFAULT false;
12 );
13
14 CREATE TABLE asset.course_module_course_users (
15     id              SERIAL PRIMARY KEY,
16     course          INT NOT NULL REFERENCES asset.course_module_course (id),
17     usr             INT NOT NULL REFERENCES actor.usr (id),
18     usr_role        TEXT
19 );
20
21 CREATE TABLE asset.course_module_course_materials (
22     id              SERIAL PRIMARY KEY,
23     course          INT NOT NULL REFERENCES asset.course_module_course (id),
24     item            INT NOT NULL REFERENCES asset.copy (id),
25     relationship    TEXT,
26     original_location        INT REFERENCES asset.copy_location,
27     original_status          INT REFERENCES config.copy_status,
28     original_circ_modifier   TEXT REFERENCES config.circ_modifier,
29     original_callnumber      INT REFERENCES asset.call_number
30 );
31
32 CREATE TABLE asset.course_module_non_cat_course_materials (
33     id              SERIAL PRIMARY KEY,
34     course          INT NOT NULL REFERENCES asset.course_module_course (id),
35     item            TEXT NOT NULL,
36     url             TEXT,
37     relationship    TEXT
38 );
39
40 INSERT INTO permission.perm_list(id, code, description)
41     VALUES (
42         624,
43         'MANAGE_RESERVES',
44         oils_i18n_gettext(
45             624,
46             'Allows user to manage Courses, Course Materials, and associate Users with Courses.',
47             'ppl',
48             'description'
49         )
50     );
51
52 INSERT INTO permission.grp_perm_map(perm, grp, depth) VALUES (624, 9, 0), (624, 11, 0), (624, 12, 0), (624, 13, 0);
53
54 INSERT INTO config.org_unit_setting_type 
55     (grp, name, datatype, label, description)
56 VALUES (
57     'circ',
58     'circ.course_materials_opt_in', 'bool',
59     oils_i18n_gettext(
60         'circ.course_materials_opt_in',
61         'Opt Org Unit into the Course Materials Module',
62         'coust',
63         'label'
64     ),
65     oils_i18n_gettext(
66         'circ.course_materials_opt_in',
67         'If enabled, the Org Unit will utilize Course Material functionality.'
68         'coust',
69         'description'
70     )
71 );
72
73 COMMIT;