</permacrud>
</class>
+ <class id="cusppet" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::ui_staff_portal_page_entry_type" oils_persist:tablename="config.ui_staff_portal_page_entry_type" reporter:label="Portal Page Entry Type">
+ <fields oils_persist:primary="code">
+ <field name="code" reporter:label="Entry Type Code" reporter:datatype="text" reporter:selector="label" oils_obj:required="true"/>
+ <field name="label" reporter:label="Entry Type Label" reporter:datatype="text" oils_obj:required="true"/>
+ </fields>
+ <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
+ <actions>
+ <retrieve/>
+ </actions>
+ </permacrud>
+ </class>
+
+ <class id="cusppe" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::ui_staff_portal_page_entry" oils_persist:tablename="config.ui_staff_portal_page_entry" reporter:label="Portal Page Entry">
+ <fields oils_persist:primary="id" oils_persist:sequence="config.ui_staff_portal_page_entry_id_seq">
+ <field name="id" reporter:label="ID" reporter:datatype="id" reporter:selector="label"/>
+ <field name="page_col" reporter:label="Page Column" reporter:datatype="int" oils_obj:required="true"/>
+ <field name="col_pos" reporter:label="Column Position" reporter:datatype="int" oils_obj:required="true"/>
+ <field name="entry_type" reporter:label="Entry Type" reporter:datatype="link" oils_obj:required="true"/>
+ <field name="label" reporter:label="Entry Label" reporter:datatype="text"/>
+ <field name="image_url" reporter:label="Entry Image URL" reporter:datatype="text"/>
+ <field name="target_url" reporter:label="Entry Target URL" reporter:datatype="text"/>
+ <field name="entry_text" reporter:label="Entry Text" reporter:datatype="text"/>
+ <field name="owner" reporter:label="Owner" reporter:datatype="link" oils_obj:required="true"/>
+ </fields>
+ <links>
+ <link field="entry_type" reltype="has_a" key="code" map="" class="cusppet"/>
+ <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
+ </links>
+ <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
+ <actions>
+ <create permission="ADMIN_STAFF_PORTAL_PAGE" context_field="owner"/>
+ <retrieve permission="STAFF_LOGIN" context_field="owner"/>
+ <update permission="ADMIN_STAFF_PORTAL_PAGE" context_field="owner"/>
+ <delete permission="ADMIN_STAFF_PORTAL_PAGE" context_field="owner"/>
+ </actions>
+ </permacrud>
+ </class>
+
<!-- ********************************************************************************************************************* -->
</IDL>
api_key TEXT
);
+CREATE TABLE config.ui_staff_portal_page_entry_type (
+ code TEXT PRIMARY KEY,
+ label TEXT NOT NULL
+);
+
+CREATE TABLE config.ui_staff_portal_page_entry (
+ id SERIAL PRIMARY KEY,
+ page_col INTEGER NOT NULL,
+ col_pos INTEGER NOT NULL,
+ entry_type TEXT NOT NULL, -- REFERENCES config.ui_staff_portal_page_entry_type(code)
+ label TEXT,
+ image_url TEXT,
+ target_url TEXT,
+ entry_text TEXT,
+ owner INT NOT NULL -- REFERENCES actor.org_unit (id)
+);
+
COMMIT;
ALTER TABLE config.geolocation_service ADD CONSTRAINT cgs_owner_fkey
FOREIGN KEY (owner) REFERENCES actor.org_unit(id) DEFERRABLE INITIALLY DEFERRED;
+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;
+
COMMIT;
( 634, 'UPDATE_RECORD_NOTE', oils_i18n_gettext(634,
'Allow the user to update a record note', 'ppl', 'description')),
( 635, 'DELETE_RECORD_NOTE', oils_i18n_gettext(635,
- 'Allow the user to delete a record note', 'ppl', 'description'))
+ 'Allow the user to delete a record note', 'ppl', 'description')),
+ ( 636, 'ADMIN_STAFF_PORTAL_PAGE', oils_i18n_gettext( 636,
+ 'Update the staff client portal page', 'ppl', 'description' ))
;
-
SELECT SETVAL('permission.perm_list_id_seq'::TEXT, 1000);
INSERT INTO permission.grp_tree (id, name, parent, description, perm_interval, usergroup, application_perm) VALUES
'Grid Config: eg.grid.cat.bucket.batch_hold.list',
'cwst', 'label'
)
-);
\ No newline at end of file
+);
+
+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'));
+
+INSERT INTO config.ui_staff_portal_page_entry
+ (id, page_col, col_pos, entry_type, label, image_url, target_url, owner)
+VALUES
+ ( 1, 1, 0, 'header', oils_i18n_gettext( 1, 'Circulation and Patrons', 'cusppe', 'label'), NULL, NULL, 1)
+, ( 2, 1, 1, 'menuitem', oils_i18n_gettext( 2, 'Check Out Items', 'cusppe', 'label'), '/images/portal/forward.png', '/eg/staff/circ/patron/bcsearch', 1)
+, ( 3, 1, 2, 'menuitem', oils_i18n_gettext( 3, 'Check In Items', 'cusppe', 'label'), '/images/portal/back.png', '/eg/staff/circ/checkin/index', 1)
+, ( 4, 1, 3, 'menuitem', oils_i18n_gettext( 4, 'Search For Patron By Name', 'cusppe', 'label'), '/images/portal/retreivepatron.png', '/eg/staff/circ/patron/search', 1)
+, ( 5, 2, 0, 'header', oils_i18n_gettext( 5, 'Item Search and Cataloging', 'cusppe', 'label'), NULL, NULL, 1)
+, ( 6, 2, 1, 'catalogsearch', oils_i18n_gettext( 6, 'Search Catalog', 'cusppe', 'label'), NULL, NULL, 1)
+, ( 7, 2, 2, 'menuitem', oils_i18n_gettext( 7, 'Record Buckets', 'cusppe', 'label'), '/images/portal/bucket.png', '/eg/staff/cat/bucket/record/', 1)
+, ( 8, 2, 3, 'menuitem', oils_i18n_gettext( 8, 'Item Buckets', 'cusppe', 'label'), '/images/portal/bucket.png', '/eg/staff/cat/bucket/copy/', 1)
+, ( 9, 3, 0, 'header', oils_i18n_gettext( 9, 'Administration', 'cusppe', 'label'), NULL, NULL, 1)
+, (10, 3, 1, 'link', oils_i18n_gettext(10, 'Evergreen Documentation', 'cusppe', 'label'), '/images/portal/helpdesk.png', 'https://docs.evergreen-ils.org', 1)
+, (11, 3, 2, 'menuitem', oils_i18n_gettext(11, 'Workstation Administration', 'cusppe', 'label'), '/images/portal/helpdesk.png', '/eg/staff/admin/workstation/index', 1)
+, (12, 3, 3, 'menuitem', oils_i18n_gettext(12, 'Reports', 'cusppe', 'label'), '/images/portal/reports.png', '/eg/staff/reporter/legacy/main', 1)
+;
+
+SELECT setval('config.ui_staff_portal_page_entry_id_seq', 100);
+
+
+INSERT INTO config.workstation_setting_type (name, grp, datatype, label)
+VALUES (
+ 'eg.grid.admin.config.ui_staff_portal_page_entry', 'gui', 'object',
+ oils_i18n_gettext(
+ 'eg.grid.admin.config.ui_staff_portal_page_entry',
+ 'Grid Config: admin.config.ui_staff_portal_page_entry',
+ 'cwst', 'label'
+ )
+);
+
--- /dev/null
+BEGIN;
+
+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,
+ page_col INTEGER NOT NULL,
+ col_pos INTEGER NOT NULL,
+ entry_type TEXT NOT NULL, -- REFERENCES config.ui_staff_portal_page_entry_type(code)
+ label TEXT,
+ image_url TEXT,
+ target_url TEXT,
+ entry_text TEXT,
+ 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;
+
+COMMIT;
--- /dev/null
+BEGIN;
+
+INSERT INTO config.ui_staff_portal_page_entry
+ (id, page_col, col_pos, entry_type, label, image_url, target_url, owner)
+VALUES
+ ( 1, 1, 0, 'header', oils_i18n_gettext( 1, 'Circulation and Patrons', 'cusppe', 'label'), NULL, NULL, 1)
+, ( 2, 1, 1, 'menuitem', oils_i18n_gettext( 2, 'Check Out Items', 'cusppe', 'label'), '/images/portal/forward.png', '/eg/staff/circ/patron/bcsearch', 1)
+, ( 3, 1, 2, 'menuitem', oils_i18n_gettext( 3, 'Check In Items', 'cusppe', 'label'), '/images/portal/back.png', '/eg/staff/circ/checkin/index', 1)
+, ( 4, 1, 3, 'menuitem', oils_i18n_gettext( 4, 'Search For Patron By Name', 'cusppe', 'label'), '/images/portal/retreivepatron.png', '/eg/staff/circ/patron/search', 1)
+, ( 5, 2, 0, 'header', oils_i18n_gettext( 5, 'Item Search and Cataloging', 'cusppe', 'label'), NULL, NULL, 1)
+, ( 6, 2, 1, 'catalogsearch', oils_i18n_gettext( 6, 'Search Catalog', 'cusppe', 'label'), NULL, NULL, 1)
+, ( 7, 2, 2, 'menuitem', oils_i18n_gettext( 7, 'Record Buckets', 'cusppe', 'label'), '/images/portal/bucket.png', '/eg/staff/cat/bucket/record/', 1)
+, ( 8, 2, 3, 'menuitem', oils_i18n_gettext( 8, 'Item Buckets', 'cusppe', 'label'), '/images/portal/bucket.png', '/eg/staff/cat/bucket/copy/', 1)
+, ( 9, 3, 0, 'header', oils_i18n_gettext( 9, 'Administration', 'cusppe', 'label'), NULL, NULL, 1)
+, (10, 3, 1, 'link', oils_i18n_gettext(10, 'Evergreen Documentation', 'cusppe', 'label'), '/images/portal/helpdesk.png', 'https://docs.evergreen-ils.org', 1)
+, (11, 3, 2, 'menuitem', oils_i18n_gettext(11, 'Workstation Administration', 'cusppe', 'label'), '/images/portal/helpdesk.png', '/eg/staff/admin/workstation/index', 1)
+, (12, 3, 3, 'menuitem', oils_i18n_gettext(12, 'Reports', 'cusppe', 'label'), '/images/portal/reports.png', '/eg/staff/reporter/legacy/main', 1)
+;
+
+SELECT setval('config.ui_staff_portal_page_entry_id_seq', 100);
+
+
+INSERT INTO config.workstation_setting_type (name, grp, datatype, label)
+VALUES (
+ 'eg.grid.admin.config.ui_staff_portal_page_entry', 'gui', 'object',
+ oils_i18n_gettext(
+ 'eg.grid.admin.config.ui_staff_portal_page_entry',
+ 'Grid Config: admin.config.ui_staff_portal_page_entry',
+ 'cwst', 'label'
+ )
+);
+
+COMMIT;
+
--- /dev/null
+BEGIN;
+
+INSERT INTO permission.perm_list ( id, code, description ) VALUES
+( 636, 'ADMIN_STAFF_PORTAL_PAGE', oils_i18n_gettext( 636,
+ 'Update the staff client portal page', 'ppl', 'description' ))
+;
+
+COMMIT;