add OpenAthens to stock PINES database
authorChris Sharp <csharp@georgialibraries.org>
Wed, 17 Feb 2021 15:13:30 +0000 (10:13 -0500)
committerChris Sharp <csharp@georgialibraries.org>
Wed, 17 Feb 2021 15:13:30 +0000 (10:13 -0500)
Open-ILS/src/sql/Pg/450.schema.openathens.sql [new file with mode: 0644]
Open-ILS/src/sql/Pg/sql_file_manifest

diff --git a/Open-ILS/src/sql/Pg/450.schema.openathens.sql b/Open-ILS/src/sql/Pg/450.schema.openathens.sql
new file mode 100644 (file)
index 0000000..b3f02ff
--- /dev/null
@@ -0,0 +1,53 @@
+BEGIN;
+
+CREATE TABLE config.openathens_uid_field (
+    id      SERIAL  PRIMARY KEY,
+    name    TEXT    NOT NULL
+);
+
+SELECT SETVAL('config.openathens_uid_field_id_seq'::TEXT, 100);
+
+CREATE TABLE config.openathens_name_field (
+    id      SERIAL  PRIMARY KEY,
+    name    TEXT    NOT NULL
+);
+
+SELECT SETVAL('config.openathens_name_field_id_seq'::TEXT, 100);
+
+CREATE TABLE config.openathens_identity (
+    id                          SERIAL  PRIMARY KEY,
+    active                      BOOL    NOT NULL DEFAULT true,
+    org_unit                    INT     NOT NULL REFERENCES actor.org_unit (id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
+    api_key                     TEXT    NOT NULL,
+    connection_id               TEXT    NOT NULL,
+    connection_uri              TEXT    NOT NULL,
+    auto_signon_enabled         BOOL    NOT NULL DEFAULT true,
+    auto_signout_enabled        BOOL    NOT NULL DEFAULT false,
+    unique_identifier           INT     NOT NULL REFERENCES config.openathens_uid_field (id) DEFAULT 1,
+    display_name                INT     NOT NULL REFERENCES config.openathens_name_field (id) DEFAULT 1,
+    release_prefix              BOOL    NOT NULL DEFAULT false,
+    release_first_given_name    BOOL    NOT NULL DEFAULT false,
+    release_second_given_name   BOOL    NOT NULL DEFAULT false,
+    release_family_name         BOOL    NOT NULL DEFAULT false,
+    release_suffix              BOOL    NOT NULL DEFAULT false,
+    release_email               BOOL    NOT NULL DEFAULT false,
+    release_home_ou             BOOL    NOT NULL DEFAULT false
+);
+
+
+INSERT INTO config.openathens_uid_field
+    (id, name)
+VALUES
+    (1,'id'),
+    (2,'usrname')
+;
+
+INSERT INTO config.openathens_name_field
+    (id, name)
+VALUES
+    (1,'id'),
+    (2,'usrname'),
+    (3,'fullname')
+;
+
+COMMIT;
index e4f9152..a8f1d16 100644 (file)
@@ -46,6 +46,7 @@ FTS_CONFIG_FILE
 
 300.schema.staged_search.sql
 400.schema.action_trigger.sql
+450.schema.openathens.sql
 
 500.view.cross-schema.sql