]> git.evergreen-ils.org Git - working/Evergreen.git/blob - Open-ILS/src/sql/Pg/upgrade/XXXX.data.tpac-format-selector.sql
LP#1284864 correct TPAC metarecord list pagination
[working/Evergreen.git] / Open-ILS / src / sql / Pg / upgrade / XXXX.data.tpac-format-selector.sql
1
2 BEGIN;
3
4 INSERT INTO config.record_attr_definition 
5     (name, label, multi, filter, composite) VALUES (
6         'search_format', 
7         oils_i18n_gettext('search_format', 'Search Formats', 'crad', 'label'),
8         TRUE, TRUE, TRUE
9     );
10
11 INSERT INTO config.coded_value_map
12     (id, ctype, code, value, search_label) VALUES 
13 (610, 'search_format', 'book', 
14     oils_i18n_gettext(610, 'All Books', 'ccvm', 'value'),
15     oils_i18n_gettext(610, 'All Books', 'ccvm', 'search_label')),
16 (611, 'search_format', 'braille', 
17     oils_i18n_gettext(611, 'Braille', 'ccvm', 'value'),
18     oils_i18n_gettext(611, 'Braille', 'ccvm', 'search_label')),
19 (612, 'search_format', 'software', 
20     oils_i18n_gettext(612, 'Software and video games', 'ccvm', 'value'),
21     oils_i18n_gettext(612, 'Software and video games', 'ccvm', 'search_label')),
22 (613, 'search_format', 'dvd', 
23     oils_i18n_gettext(613, 'DVD', 'ccvm', 'value'),
24     oils_i18n_gettext(613, 'DVD', 'ccvm', 'search_label')),
25 (614, 'search_format', 'ebook', 
26     oils_i18n_gettext(614, 'E-book', 'ccvm', 'value'),
27     oils_i18n_gettext(614, 'E-book', 'ccvm', 'search_label')),
28 (615, 'search_format', 'eaudio', 
29     oils_i18n_gettext(615, 'E-audio', 'ccvm', 'value'),
30     oils_i18n_gettext(615, 'E-audio', 'ccvm', 'search_label')),
31 (616, 'search_format', 'kit', 
32     oils_i18n_gettext(616, 'Kit', 'ccvm', 'value'),
33     oils_i18n_gettext(616, 'Kit', 'ccvm', 'search_label')),
34 (617, 'search_format', 'map', 
35     oils_i18n_gettext(617, 'Map', 'ccvm', 'value'),
36     oils_i18n_gettext(617, 'Map', 'ccvm', 'search_label')),
37 (618, 'search_format', 'microform', 
38     oils_i18n_gettext(618, 'Microform', 'ccvm', 'value'),
39     oils_i18n_gettext(618, 'Microform', 'ccvm', 'search_label')),
40 (619, 'search_format', 'score', 
41     oils_i18n_gettext(619, 'Music Score', 'ccvm', 'value'),
42     oils_i18n_gettext(619, 'Music Score', 'ccvm', 'search_label')),
43 (620, 'search_format', 'picture', 
44     oils_i18n_gettext(620, 'Picture', 'ccvm', 'value'),
45     oils_i18n_gettext(620, 'Picture', 'ccvm', 'search_label')),
46 (621, 'search_format', 'equip', 
47     oils_i18n_gettext(621, 'Equipment, games, toys', 'ccvm', 'value'),
48     oils_i18n_gettext(621, 'Equipment, games, toys', 'ccvm', 'search_label')),
49 (622, 'search_format', 'serial', 
50     oils_i18n_gettext(622, 'Serials and magazines', 'ccvm', 'value'),
51     oils_i18n_gettext(622, 'Serials and magazines', 'ccvm', 'search_label')),
52 (623, 'search_format', 'vhs', 
53     oils_i18n_gettext(623, 'VHS', 'ccvm', 'value'),
54     oils_i18n_gettext(623, 'VHS', 'ccvm', 'search_label')),
55 (624, 'search_format', 'evideo', 
56     oils_i18n_gettext(624, 'E-video', 'ccvm', 'value'),
57     oils_i18n_gettext(624, 'E-video', 'ccvm', 'search_label')),
58 (625, 'search_format', 'cdaudiobook', 
59     oils_i18n_gettext(625, 'CD Audiobook', 'ccvm', 'value'),
60     oils_i18n_gettext(625, 'CD Audiobook', 'ccvm', 'search_label')),
61 (626, 'search_format', 'cdmusic', 
62     oils_i18n_gettext(626, 'CD Music recording', 'ccvm', 'value'),
63     oils_i18n_gettext(626, 'CD Music recording', 'ccvm', 'search_label')),
64 (627, 'search_format', 'casaudiobook', 
65     oils_i18n_gettext(627, 'Cassette audiobook', 'ccvm', 'value'),
66     oils_i18n_gettext(627, 'Cassette audiobook', 'ccvm', 'search_label')),
67 (628, 'search_format', 'casmusic',
68     oils_i18n_gettext(628, 'Audiocassette music recording', 'ccvm', 'value'),
69     oils_i18n_gettext(628, 'Audiocassette music recording', 'ccvm', 'search_label')),
70 (629, 'search_format', 'phonospoken', 
71     oils_i18n_gettext(629, 'Phonograph spoken recording', 'ccvm', 'value'),
72     oils_i18n_gettext(629, 'Phonograph spoken recording', 'ccvm', 'search_label')),
73 (630, 'search_format', 'phonomusic', 
74     oils_i18n_gettext(630, 'Phonograph music recording', 'ccvm', 'value'),
75     oils_i18n_gettext(630, 'Phonograph music recording', 'ccvm', 'search_label')),
76 (631, 'search_format', 'lpbook', 
77     oils_i18n_gettext(631, 'Large Print Book', 'ccvm', 'value'),
78     oils_i18n_gettext(631, 'Large Print Book', 'ccvm', 'search_label')),
79 (632, 'search_format', 'music', 
80     oils_i18n_gettext(632, 'All Music', 'ccvm', 'label'),
81     oils_i18n_gettext(632, 'All Music', 'ccvm', 'search_label')),
82 (633, 'search_format', 'blu-ray', 
83     oils_i18n_gettext(633, 'Blu-ray', 'ccvm', 'value'),
84     oils_i18n_gettext(633, 'Blu-ray', 'ccvm', 'search_label'));
85
86
87
88 -- copy the composite definition from icon_format into 
89 -- search_format for a baseline data set
90 DO $$
91     DECLARE format config.coded_value_map%ROWTYPE;
92 BEGIN
93     FOR format IN SELECT * 
94         FROM config.coded_value_map WHERE ctype = 'icon_format'
95     LOOP
96         INSERT INTO config.composite_attr_entry_definition 
97             (coded_value, definition) VALUES
98             (
99                 -- get the ID from the new ccvm above
100                 (SELECT id FROM config.coded_value_map 
101                     WHERE code = format.code AND ctype = 'search_format'),
102
103                 -- def of the matching icon_format attr
104                 (SELECT definition FROM config.composite_attr_entry_definition 
105                     WHERE coded_value = format.id)
106             );
107     END LOOP; 
108 END $$;
109
110 -- modify the 'book' definition so that it includes large print
111 UPDATE config.composite_attr_entry_definition 
112     SET definition = '{"0":[{"_attr":"item_type","_val":"a"},{"_attr":"item_type","_val":"t"}],"1":{"_not":[{"_attr":"item_form","_val":"a"},{"_attr":"item_form","_val":"b"},{"_attr":"item_form","_val":"c"},{"_attr":"item_form","_val":"f"},{"_attr":"item_form","_val":"o"},{"_attr":"item_form","_val":"q"},{"_attr":"item_form","_val":"r"},{"_attr":"item_form","_val":"s"}]},"2":[{"_attr":"bib_level","_val":"a"},{"_attr":"bib_level","_val":"c"},{"_attr":"bib_level","_val":"d"},{"_attr":"bib_level","_val":"m"}]}'
113     WHERE coded_value = 610;
114
115 -- modify 'music' to include all recorded music, regardless of format
116 UPDATE config.composite_attr_entry_definition 
117     SET definition = '{"_attr":"item_type","_val":"j"}'
118     WHERE coded_value = 632;
119
120 UPDATE config.global_flag 
121     SET value = 'search_format' 
122     WHERE name = 'opac.format_selector.attr';
123
124 COMMIT;
125