2 -- SELECT evergreen.upgrade_deps_block_check('xxxx', :eg_version);
4 ALTER TABLE config.rule_circ_duration
5 ADD column max_auto_renewals INTEGER;
7 ALTER TABLE action.circulation
8 ADD column auto_renewal BOOLEAN;
10 ALTER TABLE action.circulation
11 ADD column auto_renewal_remaining INTEGER;
13 INSERT INTO action_trigger.validator values('CircIsAutoRenewable', 'Checks whether the circulation is able to be autorenewed.');
14 INSERT INTO action_trigger.reactor values('Circ::AutoRenew', 'Auto-Renews a circulation.');
15 INSERT INTO action_trigger.hook(key, core_type, description) values('autorenewal', 'circ', 'Item was auto-renewed to patron.');
17 -- AutoRenewer A/T Def:
18 INSERT INTO action_trigger.event_definition(active, owner, name, hook, validator, reactor, delay, max_delay, delay_field, group_field)
19 values (true, 1, 'Autorenew', 'checkout.due', 'NOOP_True', 'Circ::AutoRenew', '-23 hours'::interval,'-1 minute'::interval, 'due_date', 'usr');
21 -- AutoRenewal outcome Email notifier A/T Def:
22 INSERT INTO action_trigger.event_definition(active, owner, name, hook, validator, reactor, group_field, template)
23 values (true, 1, 'AutorenewNotify', 'autorenewal', 'NOOP_True', 'SendEmail', 'usr',
26 [%- user = target.0.usr -%]
27 To: [%- params.recipient_email || user.email %]
28 From: [%- params.sender_email || default_sender %]
29 Date: [%- date.format(date.now, '%a, %d %b %Y %T -0000', gmt => 1) %]
30 Subject: Items Out Auto-Renewal Notification Auto-Submitted: auto-generated
32 Dear [% user.family_name %], [% user.first_given_name %] (UserID: [%- user.id +%])
33 Your library would like to let you know about your currently borrowed item(s):
35 [% FOR circ IN target %]
36 [%- SET idx = loop.count - 1; SET udata = user_data.$idx -%]
37 Item# [%+ loop.count -%] (circ_id: [%- circ.id -%])
38 [%- SET cid = circ.target_copy || udata.copy -%]
39 [%- SET copy_details = helpers.get_copy_bib_basics(cid) +%]
40 Title: [% copy_details.title %]
41 Author: [% copy_details.author %]
42 Due Date: [% date.format(helpers.format_date(circ.due_date), '%Y-%m-%d') %]
43 Status: [%- IF udata.is_renewed %] Loan Renewed. Now Due: [%- date.format(helpers.format_date(udata.new_due_date), '%Y-%m-%d') %]
44 [% ELSE %] Not Renewed. Reason: [% udata.reason %] [% END %]
49 INSERT INTO action_trigger.environment (event_def, path ) VALUES
50 ( currval('action_trigger.event_definition_id_seq'), 'usr' ),
51 ( currval('action_trigger.event_definition_id_seq'), 'circ_lib' );