<field reporter:label="Release suffix" name="release_suffix" reporter:datatype="bool"/>
<field reporter:label="Release email" name="release_email" reporter:datatype="bool"/>
<field reporter:label="Release home library" name="release_home_ou" reporter:datatype="bool"/>
+ <field reporter:label="Release barcode" name="release_barcode" reporter:datatype="bool"/>
</fields>
<links>
<link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
idlClass="{{idlClass}}"
[preloadLinkedValues]="true"
[fieldOptions]="{owning_lib_filter:{customTemplate:{template:orgTemplate}}}"
- fieldOrder="id,org_unit,active,api_key,connection_id,connection_uri,auto_signon_enabled,auto_signout_enabled,unique_identifier,display_name,release_prefix,release_first_given_name,release_second_given_name,release_family_name,release_suffix,release_email,release_home_ou"
+ fieldOrder="id,org_unit,active,api_key,connection_id,connection_uri,auto_signon_enabled,auto_signout_enabled,unique_identifier,display_name,release_prefix,release_first_given_name,release_second_given_name,release_family_name,release_suffix,release_email,release_home_ou,release_barcode"
></eg-fm-record-editor>
use constant OA_ATTR_SUFFIX => 'suffix';
use constant OA_ATTR_EMAIL => 'email';
use constant OA_ATTR_HOME_OU => 'home_ou';
+use constant OA_ATTR_BARCODE => 'barcode';
use constant OA_SIGNOUT_URL => 'https://login.openathens.net/signout';
use constant OA_SESSION_REQUEST_TYPE =>
'application/vnd.eduserv.iam.auth.localAccountSessionRequest+json';
my @oa_config_fields = qw/active api_key connection_id connection_uri
auto_signon_enabled auto_signout_enabled release_prefix
release_first_given_name release_second_given_name release_family_name
- release_suffix release_email release_home_ou/;
+ release_suffix release_email release_home_ou release_barcode/;
# -----------------------------------------------------------------------------
}
}
+ if ($U->is_true($openathens_config->{release_barcode})) {
+ $request_obj->{attributes}->{&OA_ATTR_BARCODE} = $ctx->{active_card};
+ }
+
if ($return_url) {
$request_obj->{returnUrl} = $return_url;
} elsif ($return_data) {
owner INT NOT NULL -- REFERENCES actor.org_unit (id)
);
+-- Add OpenAthens Integration
CREATE TABLE config.openathens_uid_field (
id SERIAL PRIMARY KEY,
name TEXT NOT NULL
);
+INSERT INTO config.openathens_uid_field
+ (id, name)
+VALUES
+ (1,'id'),
+ (2,'usrname')
+;
+
SELECT SETVAL('config.openathens_uid_field_id_seq'::TEXT, 100);
CREATE TABLE config.openathens_name_field (
name TEXT NOT NULL
);
+INSERT INTO config.openathens_name_field
+ (id, name)
+VALUES
+ (1,'id'),
+ (2,'usrname'),
+ (3,'fullname')
+;
+
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,
+ 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,
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
+ release_home_ou BOOL NOT NULL DEFAULT false,
+ release_barcode BOOL NOT NULL DEFAULT false
);
COMMIT;
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
+ release_home_ou BOOL NOT NULL DEFAULT false,
+ release_barcode BOOL NOT NULL DEFAULT false
);
COMMIT;
|home_ou
|the _shortcode_ of the patron's home library (e.g. 'BR1' in the Concerto
sample data set)
+
+|Release barcode
+|barcode
+|the patron's barcode
|===
Network access