From: Chris Sharp Date: Thu, 2 Feb 2017 18:07:44 +0000 (-0500) Subject: LP#1661346 - Add User Setting Type View reporter source X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=92e3f4615465ce56cbe9ba9f1963a412f1c1aed2;p=evergreen%2Fpines.git LP#1661346 - Add User Setting Type View reporter source With our newly-implemented action_trigger.event_definitions running, it is now desirable to have easier access to the SMS settings selected by users. This is best accomplished with a new view that will be linked from the actor.usr object. Signed-off-by: Chris Sharp --- diff --git a/Open-ILS/examples/fm_IDL.xml b/Open-ILS/examples/fm_IDL.xml index 84d4597945..c8415388f7 100644 --- a/Open-ILS/examples/fm_IDL.xml +++ b/Open-ILS/examples/fm_IDL.xml @@ -3311,6 +3311,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + @@ -3400,6 +3401,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + @@ -10905,6 +10907,19 @@ SELECT usr, + + + + + + + + + + + + + diff --git a/Open-ILS/src/sql/Pg/reporter-schema.sql b/Open-ILS/src/sql/Pg/reporter-schema.sql index dce360389a..0477fca727 100644 --- a/Open-ILS/src/sql/Pg/reporter-schema.sql +++ b/Open-ILS/src/sql/Pg/reporter-schema.sql @@ -378,5 +378,31 @@ CREATE OR REPLACE VIEW reporter.currently_running AS JOIN actor.card c ON c.id = u.card WHERE s.start_time IS NOT NULL AND s.complete_time IS NULL; +CREATE OR REPLACE VIEW reporter.user_setting_type_view AS + SELECT usr.id as usr_id, + (SELECT value + FROM actor.usr_setting + WHERE name = 'opac.default_phone' + AND usr = usr.id) AS default_phone, + (SELECT name + FROM config.sms_carrier + WHERE id::text IN ( + SELECT value + FROM actor.usr_setting + WHERE name = 'opac.default_sms_carrier' + AND usr = usr.id)) AS default_sms_carrier, + (SELECT value + FROM actor.usr_setting + WHERE name = 'opac.default_sms_notify' + AND usr = usr.id) AS default_sms_notify, + (SELECT shortname + FROM actor.org_unit + WHERE id::text IN ( + SELECT value + FROM actor.usr_setting + WHERE name = 'opac.default_pickup_location' + AND usr = usr.id)) AS default_pickup_location + FROM actor.usr usr; + COMMIT; diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.usr_setting_type_view.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.usr_setting_type_view.sql new file mode 100644 index 0000000000..c84662b054 --- /dev/null +++ b/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.usr_setting_type_view.sql @@ -0,0 +1,29 @@ +BEGIN; + +CREATE OR REPLACE VIEW reporter.user_setting_type_view AS +SELECT usr.id as usr_id, + (SELECT value + FROM actor.usr_setting + WHERE name = 'opac.default_phone' + AND usr = usr.id) AS default_phone, + (SELECT name + FROM config.sms_carrier + WHERE id::text IN ( + SELECT value + FROM actor.usr_setting + WHERE name = 'opac.default_sms_carrier' + AND usr = usr.id)) AS default_sms_carrier, + (SELECT value + FROM actor.usr_setting + WHERE name = 'opac.default_sms_notify' + AND usr = usr.id) AS default_sms_notify, + (SELECT shortname + FROM actor.org_unit + WHERE id::text IN ( + SELECT value + FROM actor.usr_setting + WHERE name = 'opac.default_pickup_location' + AND usr = usr.id)) AS default_pickup_location +FROM actor.usr usr; + +COMMIT;