Mark email addresses and phone numbers invalid collab/senator/invalidate_email_and_phone
authorLebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Tue, 27 Dec 2011 23:02:38 +0000 (18:02 -0500)
committerLebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Wed, 28 Dec 2011 15:03:18 +0000 (10:03 -0500)
commit6c1a9160b47bfdf303fc347902fb8e11ca6985ec
tree068a3c9fdc55473d60007abe370d5f95dee39116
parentf49146ec6b6c0e54056a911a0f21e2d5c80a38b5
Mark email addresses and phone numbers invalid

This closely follows an idea from Jeff Godin.  For staff to indicate an
email address or phone number "invalid," for whatever definition of
"invalid" has meaning at the institution (as in invalid addresses
today), there is now a UI control in the patron editor.

This UI control invokes a middle layer method that will clear the email
(or phone) field from actor.usr, and [both optionally, per OU setting] 1)
create a corresponding standing penalty against the user, for staff to
notice next time they bring up said patron in the staff client, and 2)
create a patron note.  Related penalties (but not notes) will be cleared
whenever that patron's email address or phone number is updated again.

The middle layer method is a wrapper around a method that may take
other parameters (like an email address instead of a patron ID) to
potentially support future uses such as invalidating email addresses
automatically in batch.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
15 files changed:
Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm
Open-ILS/src/perlmods/lib/OpenILS/Utils/BadContact.pm [new file with mode: 0644]
Open-ILS/src/sql/Pg/002.schema.config.sql
Open-ILS/src/sql/Pg/950.data.seed-values.sql
Open-ILS/src/sql/Pg/upgrade/XXXX.data.mark-email-and-phone-invalid.sql [new file with mode: 0644]
Open-ILS/src/templates/actor/user/register.tt2
Open-ILS/web/js/dojo/openils/Util.js
Open-ILS/web/js/dojo/openils/actor/nls/register.js
Open-ILS/web/js/ui/default/actor/user/register.js
Open-ILS/web/opac/locale/en-US/lang.dtd
Open-ILS/xul/staff_client/server/patron/display_horiz_overlay.xul
Open-ILS/xul/staff_client/server/patron/display_overlay.xul
Open-ILS/xul/staff_client/server/patron/standing_penalties.js
Open-ILS/xul/staff_client/server/patron/util.js
Open-ILS/xul/staff_client/server/skin/patron_display.css