Stamping upgrade script for TPAC metarecord / formats repairs and usability additions
authorMike Rylander <mrylander@gmail.com>
Mon, 10 Mar 2014 16:31:51 +0000 (12:31 -0400)
committerMike Rylander <mrylander@gmail.com>
Mon, 10 Mar 2014 16:31:51 +0000 (12:31 -0400)
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Open-ILS/src/sql/Pg/002.schema.config.sql
Open-ILS/src/sql/Pg/upgrade/0871.data.tpac-format-selector.sql [new file with mode: 0644]
Open-ILS/src/sql/Pg/upgrade/XXXX.data.tpac-format-selector.sql [deleted file]

index 7dc8705..dfcbbcd 100644 (file)
@@ -91,7 +91,7 @@ CREATE TRIGGER no_overlapping_deps
     BEFORE INSERT OR UPDATE ON config.db_patch_dependencies
     FOR EACH ROW EXECUTE PROCEDURE evergreen.array_overlap_check ('deprecates');
 
-INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0870', :eg_version); -- miker/bshum
+INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0871', :eg_version); -- berick/miker
 
 CREATE TABLE config.bib_source (
        id              SERIAL  PRIMARY KEY,
diff --git a/Open-ILS/src/sql/Pg/upgrade/0871.data.tpac-format-selector.sql b/Open-ILS/src/sql/Pg/upgrade/0871.data.tpac-format-selector.sql
new file mode 100644 (file)
index 0000000..0e706e3
--- /dev/null
@@ -0,0 +1,127 @@
+
+BEGIN;
+
+SELECT evergreen.upgrade_deps_block_check('0871', :eg_version);
+
+INSERT INTO config.record_attr_definition 
+    (name, label, multi, filter, composite) VALUES (
+        'search_format', 
+        oils_i18n_gettext('search_format', 'Search Formats', 'crad', 'label'),
+        TRUE, TRUE, TRUE
+    );
+
+INSERT INTO config.coded_value_map
+    (id, ctype, code, value, search_label) VALUES 
+(610, 'search_format', 'book', 
+    oils_i18n_gettext(610, 'All Books', 'ccvm', 'value'),
+    oils_i18n_gettext(610, 'All Books', 'ccvm', 'search_label')),
+(611, 'search_format', 'braille', 
+    oils_i18n_gettext(611, 'Braille', 'ccvm', 'value'),
+    oils_i18n_gettext(611, 'Braille', 'ccvm', 'search_label')),
+(612, 'search_format', 'software', 
+    oils_i18n_gettext(612, 'Software and video games', 'ccvm', 'value'),
+    oils_i18n_gettext(612, 'Software and video games', 'ccvm', 'search_label')),
+(613, 'search_format', 'dvd', 
+    oils_i18n_gettext(613, 'DVD', 'ccvm', 'value'),
+    oils_i18n_gettext(613, 'DVD', 'ccvm', 'search_label')),
+(614, 'search_format', 'ebook', 
+    oils_i18n_gettext(614, 'E-book', 'ccvm', 'value'),
+    oils_i18n_gettext(614, 'E-book', 'ccvm', 'search_label')),
+(615, 'search_format', 'eaudio', 
+    oils_i18n_gettext(615, 'E-audio', 'ccvm', 'value'),
+    oils_i18n_gettext(615, 'E-audio', 'ccvm', 'search_label')),
+(616, 'search_format', 'kit', 
+    oils_i18n_gettext(616, 'Kit', 'ccvm', 'value'),
+    oils_i18n_gettext(616, 'Kit', 'ccvm', 'search_label')),
+(617, 'search_format', 'map', 
+    oils_i18n_gettext(617, 'Map', 'ccvm', 'value'),
+    oils_i18n_gettext(617, 'Map', 'ccvm', 'search_label')),
+(618, 'search_format', 'microform', 
+    oils_i18n_gettext(618, 'Microform', 'ccvm', 'value'),
+    oils_i18n_gettext(618, 'Microform', 'ccvm', 'search_label')),
+(619, 'search_format', 'score', 
+    oils_i18n_gettext(619, 'Music Score', 'ccvm', 'value'),
+    oils_i18n_gettext(619, 'Music Score', 'ccvm', 'search_label')),
+(620, 'search_format', 'picture', 
+    oils_i18n_gettext(620, 'Picture', 'ccvm', 'value'),
+    oils_i18n_gettext(620, 'Picture', 'ccvm', 'search_label')),
+(621, 'search_format', 'equip', 
+    oils_i18n_gettext(621, 'Equipment, games, toys', 'ccvm', 'value'),
+    oils_i18n_gettext(621, 'Equipment, games, toys', 'ccvm', 'search_label')),
+(622, 'search_format', 'serial', 
+    oils_i18n_gettext(622, 'Serials and magazines', 'ccvm', 'value'),
+    oils_i18n_gettext(622, 'Serials and magazines', 'ccvm', 'search_label')),
+(623, 'search_format', 'vhs', 
+    oils_i18n_gettext(623, 'VHS', 'ccvm', 'value'),
+    oils_i18n_gettext(623, 'VHS', 'ccvm', 'search_label')),
+(624, 'search_format', 'evideo', 
+    oils_i18n_gettext(624, 'E-video', 'ccvm', 'value'),
+    oils_i18n_gettext(624, 'E-video', 'ccvm', 'search_label')),
+(625, 'search_format', 'cdaudiobook', 
+    oils_i18n_gettext(625, 'CD Audiobook', 'ccvm', 'value'),
+    oils_i18n_gettext(625, 'CD Audiobook', 'ccvm', 'search_label')),
+(626, 'search_format', 'cdmusic', 
+    oils_i18n_gettext(626, 'CD Music recording', 'ccvm', 'value'),
+    oils_i18n_gettext(626, 'CD Music recording', 'ccvm', 'search_label')),
+(627, 'search_format', 'casaudiobook', 
+    oils_i18n_gettext(627, 'Cassette audiobook', 'ccvm', 'value'),
+    oils_i18n_gettext(627, 'Cassette audiobook', 'ccvm', 'search_label')),
+(628, 'search_format', 'casmusic',
+    oils_i18n_gettext(628, 'Audiocassette music recording', 'ccvm', 'value'),
+    oils_i18n_gettext(628, 'Audiocassette music recording', 'ccvm', 'search_label')),
+(629, 'search_format', 'phonospoken', 
+    oils_i18n_gettext(629, 'Phonograph spoken recording', 'ccvm', 'value'),
+    oils_i18n_gettext(629, 'Phonograph spoken recording', 'ccvm', 'search_label')),
+(630, 'search_format', 'phonomusic', 
+    oils_i18n_gettext(630, 'Phonograph music recording', 'ccvm', 'value'),
+    oils_i18n_gettext(630, 'Phonograph music recording', 'ccvm', 'search_label')),
+(631, 'search_format', 'lpbook', 
+    oils_i18n_gettext(631, 'Large Print Book', 'ccvm', 'value'),
+    oils_i18n_gettext(631, 'Large Print Book', 'ccvm', 'search_label')),
+(632, 'search_format', 'music', 
+    oils_i18n_gettext(632, 'All Music', 'ccvm', 'label'),
+    oils_i18n_gettext(632, 'All Music', 'ccvm', 'search_label')),
+(633, 'search_format', 'blu-ray', 
+    oils_i18n_gettext(633, 'Blu-ray', 'ccvm', 'value'),
+    oils_i18n_gettext(633, 'Blu-ray', 'ccvm', 'search_label'));
+
+
+
+-- copy the composite definition from icon_format into 
+-- search_format for a baseline data set
+DO $$
+    DECLARE format config.coded_value_map%ROWTYPE;
+BEGIN
+    FOR format IN SELECT * 
+        FROM config.coded_value_map WHERE ctype = 'icon_format'
+    LOOP
+        INSERT INTO config.composite_attr_entry_definition 
+            (coded_value, definition) VALUES
+            (
+                -- get the ID from the new ccvm above
+                (SELECT id FROM config.coded_value_map 
+                    WHERE code = format.code AND ctype = 'search_format'),
+
+                -- def of the matching icon_format attr
+                (SELECT definition FROM config.composite_attr_entry_definition 
+                    WHERE coded_value = format.id)
+            );
+    END LOOP; 
+END $$;
+
+-- modify the 'book' definition so that it includes large print
+UPDATE config.composite_attr_entry_definition 
+    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"}]}'
+    WHERE coded_value = 610;
+
+-- modify 'music' to include all recorded music, regardless of format
+UPDATE config.composite_attr_entry_definition 
+    SET definition = '{"_attr":"item_type","_val":"j"}'
+    WHERE coded_value = 632;
+
+UPDATE config.global_flag 
+    SET value = 'search_format' 
+    WHERE name = 'opac.format_selector.attr';
+
+COMMIT;
+
diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.data.tpac-format-selector.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.data.tpac-format-selector.sql
deleted file mode 100644 (file)
index a0d30be..0000000
+++ /dev/null
@@ -1,125 +0,0 @@
-
-BEGIN;
-
-INSERT INTO config.record_attr_definition 
-    (name, label, multi, filter, composite) VALUES (
-        'search_format', 
-        oils_i18n_gettext('search_format', 'Search Formats', 'crad', 'label'),
-        TRUE, TRUE, TRUE
-    );
-
-INSERT INTO config.coded_value_map
-    (id, ctype, code, value, search_label) VALUES 
-(610, 'search_format', 'book', 
-    oils_i18n_gettext(610, 'All Books', 'ccvm', 'value'),
-    oils_i18n_gettext(610, 'All Books', 'ccvm', 'search_label')),
-(611, 'search_format', 'braille', 
-    oils_i18n_gettext(611, 'Braille', 'ccvm', 'value'),
-    oils_i18n_gettext(611, 'Braille', 'ccvm', 'search_label')),
-(612, 'search_format', 'software', 
-    oils_i18n_gettext(612, 'Software and video games', 'ccvm', 'value'),
-    oils_i18n_gettext(612, 'Software and video games', 'ccvm', 'search_label')),
-(613, 'search_format', 'dvd', 
-    oils_i18n_gettext(613, 'DVD', 'ccvm', 'value'),
-    oils_i18n_gettext(613, 'DVD', 'ccvm', 'search_label')),
-(614, 'search_format', 'ebook', 
-    oils_i18n_gettext(614, 'E-book', 'ccvm', 'value'),
-    oils_i18n_gettext(614, 'E-book', 'ccvm', 'search_label')),
-(615, 'search_format', 'eaudio', 
-    oils_i18n_gettext(615, 'E-audio', 'ccvm', 'value'),
-    oils_i18n_gettext(615, 'E-audio', 'ccvm', 'search_label')),
-(616, 'search_format', 'kit', 
-    oils_i18n_gettext(616, 'Kit', 'ccvm', 'value'),
-    oils_i18n_gettext(616, 'Kit', 'ccvm', 'search_label')),
-(617, 'search_format', 'map', 
-    oils_i18n_gettext(617, 'Map', 'ccvm', 'value'),
-    oils_i18n_gettext(617, 'Map', 'ccvm', 'search_label')),
-(618, 'search_format', 'microform', 
-    oils_i18n_gettext(618, 'Microform', 'ccvm', 'value'),
-    oils_i18n_gettext(618, 'Microform', 'ccvm', 'search_label')),
-(619, 'search_format', 'score', 
-    oils_i18n_gettext(619, 'Music Score', 'ccvm', 'value'),
-    oils_i18n_gettext(619, 'Music Score', 'ccvm', 'search_label')),
-(620, 'search_format', 'picture', 
-    oils_i18n_gettext(620, 'Picture', 'ccvm', 'value'),
-    oils_i18n_gettext(620, 'Picture', 'ccvm', 'search_label')),
-(621, 'search_format', 'equip', 
-    oils_i18n_gettext(621, 'Equipment, games, toys', 'ccvm', 'value'),
-    oils_i18n_gettext(621, 'Equipment, games, toys', 'ccvm', 'search_label')),
-(622, 'search_format', 'serial', 
-    oils_i18n_gettext(622, 'Serials and magazines', 'ccvm', 'value'),
-    oils_i18n_gettext(622, 'Serials and magazines', 'ccvm', 'search_label')),
-(623, 'search_format', 'vhs', 
-    oils_i18n_gettext(623, 'VHS', 'ccvm', 'value'),
-    oils_i18n_gettext(623, 'VHS', 'ccvm', 'search_label')),
-(624, 'search_format', 'evideo', 
-    oils_i18n_gettext(624, 'E-video', 'ccvm', 'value'),
-    oils_i18n_gettext(624, 'E-video', 'ccvm', 'search_label')),
-(625, 'search_format', 'cdaudiobook', 
-    oils_i18n_gettext(625, 'CD Audiobook', 'ccvm', 'value'),
-    oils_i18n_gettext(625, 'CD Audiobook', 'ccvm', 'search_label')),
-(626, 'search_format', 'cdmusic', 
-    oils_i18n_gettext(626, 'CD Music recording', 'ccvm', 'value'),
-    oils_i18n_gettext(626, 'CD Music recording', 'ccvm', 'search_label')),
-(627, 'search_format', 'casaudiobook', 
-    oils_i18n_gettext(627, 'Cassette audiobook', 'ccvm', 'value'),
-    oils_i18n_gettext(627, 'Cassette audiobook', 'ccvm', 'search_label')),
-(628, 'search_format', 'casmusic',
-    oils_i18n_gettext(628, 'Audiocassette music recording', 'ccvm', 'value'),
-    oils_i18n_gettext(628, 'Audiocassette music recording', 'ccvm', 'search_label')),
-(629, 'search_format', 'phonospoken', 
-    oils_i18n_gettext(629, 'Phonograph spoken recording', 'ccvm', 'value'),
-    oils_i18n_gettext(629, 'Phonograph spoken recording', 'ccvm', 'search_label')),
-(630, 'search_format', 'phonomusic', 
-    oils_i18n_gettext(630, 'Phonograph music recording', 'ccvm', 'value'),
-    oils_i18n_gettext(630, 'Phonograph music recording', 'ccvm', 'search_label')),
-(631, 'search_format', 'lpbook', 
-    oils_i18n_gettext(631, 'Large Print Book', 'ccvm', 'value'),
-    oils_i18n_gettext(631, 'Large Print Book', 'ccvm', 'search_label')),
-(632, 'search_format', 'music', 
-    oils_i18n_gettext(632, 'All Music', 'ccvm', 'label'),
-    oils_i18n_gettext(632, 'All Music', 'ccvm', 'search_label')),
-(633, 'search_format', 'blu-ray', 
-    oils_i18n_gettext(633, 'Blu-ray', 'ccvm', 'value'),
-    oils_i18n_gettext(633, 'Blu-ray', 'ccvm', 'search_label'));
-
-
-
--- copy the composite definition from icon_format into 
--- search_format for a baseline data set
-DO $$
-    DECLARE format config.coded_value_map%ROWTYPE;
-BEGIN
-    FOR format IN SELECT * 
-        FROM config.coded_value_map WHERE ctype = 'icon_format'
-    LOOP
-        INSERT INTO config.composite_attr_entry_definition 
-            (coded_value, definition) VALUES
-            (
-                -- get the ID from the new ccvm above
-                (SELECT id FROM config.coded_value_map 
-                    WHERE code = format.code AND ctype = 'search_format'),
-
-                -- def of the matching icon_format attr
-                (SELECT definition FROM config.composite_attr_entry_definition 
-                    WHERE coded_value = format.id)
-            );
-    END LOOP; 
-END $$;
-
--- modify the 'book' definition so that it includes large print
-UPDATE config.composite_attr_entry_definition 
-    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"}]}'
-    WHERE coded_value = 610;
-
--- modify 'music' to include all recorded music, regardless of format
-UPDATE config.composite_attr_entry_definition 
-    SET definition = '{"_attr":"item_type","_val":"j"}'
-    WHERE coded_value = 632;
-
-UPDATE config.global_flag 
-    SET value = 'search_format' 
-    WHERE name = 'opac.format_selector.attr';
-
-COMMIT;
-