From: Galen Charlton Date: Fri, 3 Sep 2021 15:12:10 +0000 (-0400) Subject: staff portal: turn entry type list into a table X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=670de53e5233ef9dc6219742e08cde68759f50ef;p=working%2FEvergreen.git staff portal: turn entry type list into a table Allows i18n of type label and field adding as a combobox in fm-editor Signed-off-by: Galen Charlton --- diff --git a/Open-ILS/examples/fm_IDL.xml b/Open-ILS/examples/fm_IDL.xml index b4980858a2..bb295d0ecc 100644 --- a/Open-ILS/examples/fm_IDL.xml +++ b/Open-ILS/examples/fm_IDL.xml @@ -13566,12 +13566,24 @@ SELECT usr, + + + + + + + + + + + + - + @@ -13579,6 +13591,7 @@ SELECT usr, + diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.portal_page_table.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.portal_page_table.sql index 585eae1edf..80ac803323 100644 --- a/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.portal_page_table.sql +++ b/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.portal_page_table.sql @@ -1,12 +1,24 @@ BEGIN; -CREATE TYPE config.ui_staff_portal_page_entry_type AS ENUM ('link', 'menuitem', 'text', 'header', 'catalogsearch'); +CREATE TABLE config.ui_staff_portal_page_entry_type( + code TEXT PRIMARY KEY, + label TEXT NOT NULL +); + +INSERT INTO config.ui_staff_portal_page_entry_type (code, label) +VALUES + ('link', oils_i18n_gettext('link', 'Link', 'cusppet', 'label')), + ('menuitem', oils_i18n_gettext('menuitem', 'Menu Item', 'cusppet', 'label')), + ('text', oils_i18n_gettext('text', 'Text and/or HTML', 'cusppet', 'label')), + ('header', oils_i18n_gettext('header', 'Header', 'cusppet', 'label')), + ('catalogsearch', oils_i18n_gettext('catalogsearch', 'Catalog Search Box', 'cusppet', 'label')); + CREATE TABLE config.ui_staff_portal_page_entry ( - id SERIAL PRIMARY Key, + id SERIAL PRIMARY KEY, page_col INTEGER NOT NULL, col_pos INTEGER NOT NULL, - entry_type config.ui_staff_portal_page_entry_type NOT NULL, + entry_type TEXT NOT NULL, label TEXT, image_url TEXT, target_url TEXT, @@ -14,6 +26,8 @@ CREATE TABLE config.ui_staff_portal_page_entry ( owner INT NOT NULL -- REFERENCES actor.org_unit (id) ); +ALTER TABLE config.ui_staff_portal_page_entry ADD CONSTRAINT cusppe_entry_type_fkey + FOREIGN KEY (entry_type) REFERENCES config.ui_staff_portal_page_entry_type(code) ON UPDATE CASCADE ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED; ALTER TABLE config.ui_staff_portal_page_entry ADD CONSTRAINT cusppe_owner_fkey FOREIGN KEY (owner) REFERENCES actor.org_unit(id) ON UPDATE CASCADE ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED;