On Wed, 06 Aug 2008 13:00:48 -0400, Dan Scott <[EMAIL PROTECTED]> wrote:

Hi Bill:

2008/8/6 Bill Erickson <[EMAIL PROTECTED]>:


[snip]


Some general comments:
It's not explicit, but I suspect this could be used/abused for items
like laptops that might have a four hour circulation period, so that
you could send an email 30 mins in advance to remind the user that
it's due real soon now.

That should be feasible. I'm thinking we need a command-line param to the notifier which tells it to generate notices for circs that have a notify_interval of >= 1 day. That way, CRON can be set up to run the notifier every hour, but once a day it will set the switch to generate notices for >= 1 day notify_interval items. In other words, if I'm supposed to get a notice today about an item due tomorrow, I won't get a notice every hour.



For the pre-overdues, it would be nice to take advantage of the
system's knowledge of the circ rule in play to offer a link to a
renewal page (if applicable for each item) and specify the fines that
will be accrued.

I like that.


I'm also hoping that this will group items together in some way,
rather than generating one email per item.

The current behavior for overdues and planned behavior for this next batch of code is to generate one email per type of notice. E.g. 1 email for all items 7 days overdue, 1 email for all items 14 days overdue, etc. This allows for separate templates for each type. Is this grouped enough or do you think putting all notices into a single email is crucial?



Specific comment on the configuration syntax:
At first glance, I didn't find the circ_duration_range syntax
particularly intuitive. "5 days, 13 days" looked like an OR set of
items, and "14 days" on its own looked like, well, just 14 days, not
14 days or more. At the risk of making the XML even more verbose, but
perhaps more intuitive, I would propose something more like the
following:

<!-- rather than "5 days, 13 days" notation -->
<circ_duration_range>
  <from>5 days</from>
  <to>13 days</to>
</circ_duration_range>

<!-- for items with a circ duration of exactly 28 days, set <from> == <to> -->
<circ_duration_range>
  <from>28 days</from>
  <to>28 days</to>
</circ_duration_range>

<!-- if <to> element is missing, then the range extends to the end of time -->
<circ_duration_range>
  <from>14 days</from>
</circ_duration_range>

<!-- if <from> element is missing, then the range extends from the
start (0 mins) to <to> -->
<circ_duration_range>
  <to>5 days</to>
</circ_duration_range>

<!-- and if circ_duration_range holds neither <from> nor <to>, then it
encompasses all circ_duration ranges -->
<circ_duration_range></circ_duration_range>



That works for me.

Thanks, Dan!

-b

--
Bill Erickson
| VP, Software Development & Integration
| Equinox Software, Inc. / The Evergreen Experts
| phone: 877-OPEN-ILS (673-6457)
| email: [EMAIL PROTECTED]
| web: http://esilibrary.com

Reply via email to