From 6628ae20aa7fc5dca8af24613df3fb83f7200262 Mon Sep 17 00:00:00 2001 From: pzed Date: Thu, 20 Aug 2009 21:05:58 +0000 Subject: [PATCH] OWAL rules should be working, but cannot test properly until permissions problem is sorted out (cf ticket 132) git-svn-id: svn://svn.open-ils.org/ILS-Contrib/conifer/trunk@630 6d9bc8c9-1ec2-4278-b937-99fde70a366f --- circ/circ_duration_OWAL.js | 82 ++++++++++++++++++++++++---------------------- 1 file changed, 42 insertions(+), 40 deletions(-) diff --git a/circ/circ_duration_OWAL.js b/circ/circ_duration_OWAL.js index f7936c4ee8..3f84940c6f 100644 --- a/circ/circ_duration_OWAL.js +++ b/circ/circ_duration_OWAL.js @@ -28,48 +28,50 @@ log_info(debugStamp + 'patronProfile is ' + patronProfile + ' - modifier ' + cop if (isValidPatron(patronProfile)) { var temp_array = patronProfile.split(" "); var profileFirst = temp_array[0]; - - switch(copy.circ_modifier) { - case 'LAW MONO': - if (patronProfile == 'Readers' && patron.home_ou.shortname != 'OWAL') { - // do nothing - } else { + + if (patronProfile == 'Readers' && patron.home_ou.shortname != 'OWAL') { + // use override value - Non-Law Readers can borrow nothing + } else if (patronProfile == 'Readers' && copy.circ_modifier == 'LAW_MONO') { + result.durationRule = 'OWAL_' + profileFirst; // Law Readers can only borrow LAW_MONO items + } else { + switch(copy.circ_modifier) { + case 'LAW MONO': result.durationRule = 'OWAL_' + profileFirst; - } - break; - case 'LAW NOCIRC': - // Faculty exception handled below - break; - case 'LAW RES1D': - result.durationRule = 'OWAL_rsv_oneday'; - result.recurringFinesRule = 'OWAL_hourly'; - break; - case 'LAW RES3D': - result.durationRule = 'OWAL_rsv_threeday'; - result.recurringFinesRule = 'OWAL_hourly'; - break; - case 'LAW RES3H': - result.durationRule = 'OWAL_rsv_threehour'; - result.recurringFinesRule = 'OWAL_hourly'; - break; - case 'LAW RES5H': - result.durationRule = 'OWAL_rsv_fivehour'; - result.recurringFinesRule = 'OWAL_hourly'; - break; - case 'LAW SERIAL': - // Faculty exception handled below - break; + break; + case 'LAW NOCIRC': + // use override value + break; + case 'LAW RES1D': + result.durationRule = 'OWAL_rsv_oneday'; + result.recurringFinesRule = 'OWAL_hourly'; + break; + case 'LAW RES3D': + result.durationRule = 'OWAL_rsv_threeday'; + result.recurringFinesRule = 'OWAL_hourly'; + break; + case 'LAW RES3H': + result.durationRule = 'OWAL_rsv_threehour'; + result.recurringFinesRule = 'OWAL_hourly'; + break; + case 'LAW RES5H': + result.durationRule = 'OWAL_rsv_fivehour'; + result.recurringFinesRule = 'OWAL_hourly'; + break; + case 'LAW SERIAL': + // Faculty exceptions handled below + break; + } } - - //exceptions for Law Faculty - if (patron.home_ou.shortname == "OWAL" && patronProfile == "Faculty") { - result.recurringFines.Rule = 'free'; - if (copy.circ_modifier == 'LAW NOCIRC') { - result.durationRule = 'OWAL_faculty_nocirc'; - } else if (copy.circ_modifier == 'LAW SERIAL') { - result.durationRule = 'OWAL_faculty_serials'; - } else if (copy.circ_modifier.slice(0, 6) == 'LAW RES') { - result.durationRule = 'OWAL_rsv_threeday'; + //exceptions for Faculty + if (patronProfile == "Faculty") { + if (copy.circ_modifier == 'LAW SERIAL') { + result.durationRule = 'OWAL_Faculty_serials'; // all Faculty can borrow serials + } + if (patron.home_ou.shortname == 'OWAL') { + result.recurringFinesRule = 'free'; // Law Faculty pay no fines + if (copy.circ_modifier.slice(0, 6) == 'LAW RES') { + result.durationRule = 'OWAL_rsv_threeday'; // Law Faculty get all reserve items for three days + } } } } -- 2.11.0