-CREATE OR REPLACE FUNCTION sitka.overdrive_MARCXML_delete_all_uri_fields( TEXT ) RETURNS TEXT AS $func$
+CREATE OR REPLACE FUNCTION sitka.overdrive_bc_delete_all_uri_fields( TEXT ) RETURNS TEXT AS $func$
use MARC::Record;
use MARC::File::XML (BinaryEncoding => 'UTF-8');
next URIFIELD if ($uri->subfield('3'));
# otherwise, delete away
- $r->delete_fields($uri);
+ $r->delete_field($uri);
}
$xml = $r->as_xml_record();
return $xml;
$func$ LANGUAGE PLPERLU;
-CREATE OR REPLACE FUNCTION sitka.overdrive_MARCXML_add_uri_field( TEXT, TEXT, TEXT, TEXT, TEXT ) RETURNS TEXT AS $func$
+CREATE OR REPLACE FUNCTION sitka.overdrive_bc_add_uri_field( TEXT, TEXT, TEXT, TEXT, TEXT ) RETURNS TEXT AS $func$
use MARC::Record;
use MARC::File::XML (BinaryEncoding => 'UTF-8');
urlprefix TEXT := 'http://downloads.bclibrary.ca/ContentDetails.htm?ID=';
urlcaption TEXT := 'Click to access online (library card required)';
BEGIN
- EXECUTE SELECT sitka.overdrive_MARCXML_delete_all_uri_fields(marc) FROM biblio.record_entry where id = rid INTO marcxml;
+ SELECT sitka.overdrive_bc_delete_all_uri_fields(marc) FROM biblio.record_entry where id = rid INTO marcxml;
-- clean out asset.call_number and asset.uri and asset.uri_call_number_map
-- from actor.org_unit_setting b join actor.org_unit a on (a.id = b.org_unit) where b.name = 'sitka.overdrive_setting' and b.value = true
-- something like that
- EXECUTE SELECT sitka.overdrive_bc_add_uri_field (rid, tcnprefix, urlprefix, urlcaption, 'BBGVL') INTO marcxml;
- EXECUTE SELECT sitka.overdrive_bc_add_uri_field (rid, tcnprefix, urlprefix, urlcaption, 'BBNCLF') INTO marcxml;
- EXECUTE SELECT sitka.overdrive_bc_add_uri_field (rid, tcnprefix, urlprefix, urlcaption, 'BCK') INTO marcxml;
- EXECUTE SELECT sitka.overdrive_bc_add_uri_field (rid, tcnprefix, urlprefix, urlcaption, 'BNCLF') INTO marcxml;
- EXECUTE SELECT sitka.overdrive_bc_add_uri_field (rid, tcnprefix, urlprefix, urlcaption, 'BNELF') INTO marcxml;
- EXECUTE SELECT sitka.overdrive_bc_add_uri_field (rid, tcnprefix, urlprefix, urlcaption, 'ISLANDLINK') INTO marcxml;
- EXECUTE SELECT sitka.overdrive_bc_add_uri_field (rid, tcnprefix, urlprefix, urlcaption, 'UNFEDERATED') INTO marcxml;
+ SELECT sitka.overdrive_bc_add_uri_field(marcxml::TEXT, tcnprefix::TEXT, urlprefix::TEXT, urlcaption::TEXT, 'BBGVL'::TEXT) INTO marcxml;
+ SELECT sitka.overdrive_bc_add_uri_field(marcxml::TEXT, tcnprefix::TEXT, urlprefix::TEXT, urlcaption::TEXT, 'BBNCLF'::TEXT) INTO marcxml;
+ SELECT sitka.overdrive_bc_add_uri_field(marcxml::TEXT, tcnprefix::TEXT, urlprefix::TEXT, urlcaption::TEXT, 'BCK'::TEXT) INTO marcxml;
+ SELECT sitka.overdrive_bc_add_uri_field(marcxml::TEXT, tcnprefix::TEXT, urlprefix::TEXT, urlcaption::TEXT, 'BNCLF'::TEXT) INTO marcxml;
+ SELECT sitka.overdrive_bc_add_uri_field(marcxml::TEXT, tcnprefix::TEXT, urlprefix::TEXT, urlcaption::TEXT, 'BNELF'::TEXT) INTO marcxml;
+ SELECT sitka.overdrive_bc_add_uri_field(marcxml::TEXT, tcnprefix::TEXT, urlprefix::TEXT, urlcaption::TEXT, 'ISLANDLINK'::TEXT) INTO marcxml;
+ SELECT sitka.overdrive_bc_add_uri_field(marcxml::TEXT, tcnprefix::TEXT, urlprefix::TEXT, urlcaption::TEXT, 'UNFEDERATED'::TEXT) INTO marcxml;
- EXECUTE UPDATE biblio.record_entry set marc = marcxml WHERE id = rid;
+ UPDATE biblio.record_entry set marc = marcxml WHERE id = rid;
return true;
END;
-$$ LANGUAGE PLPGSQL IMMUTABLE;
+$$ LANGUAGE PLPGSQL;