View | Details | Raw Unified | Return to bug 19532
Collapse All | Expand All

(-)a/C4/Auth.pm (+1 lines)
Lines 329-334 sub get_template_and_user { Link Here
329
            $template->param( CAN_user_ill              => 1 );
329
            $template->param( CAN_user_ill              => 1 );
330
            $template->param( CAN_user_stockrotation    => 1 );
330
            $template->param( CAN_user_stockrotation    => 1 );
331
            $template->param( CAN_user_problem_reports   => 1 );
331
            $template->param( CAN_user_problem_reports   => 1 );
332
            $template->param( CAN_user_recalls          => 1 );
332
333
333
            foreach my $module ( keys %$all_perms ) {
334
            foreach my $module ( keys %$all_perms ) {
334
                foreach my $subperm ( keys %{ $all_perms->{$module} } ) {
335
                foreach my $subperm ( keys %{ $all_perms->{$module} } ) {
(-)a/C4/InstallAuth.pm (+1 lines)
Lines 143-148 sub get_template_and_user { Link Here
143
            $template->param( CAN_user_serials          => 1 );
143
            $template->param( CAN_user_serials          => 1 );
144
            $template->param( CAN_user_reports          => 1 );
144
            $template->param( CAN_user_reports          => 1 );
145
            $template->param( CAN_user_problem_reports   => 1 );
145
            $template->param( CAN_user_problem_reports   => 1 );
146
            $template->param( CAN_user_recalls          => 1 );
146
        }
147
        }
147
148
148
        my $minPasswordLength = C4::Context->preference('minPasswordLength');
149
        my $minPasswordLength = C4::Context->preference('minPasswordLength');
(-)a/Koha/CirculationRules.pm (+18 lines)
Lines 163-168 our $RULE_KINDS = { Link Here
163
    note => { # This is not really a rule. Maybe we will want to separate this later.
163
    note => { # This is not really a rule. Maybe we will want to separate this later.
164
        scope => [ 'branchcode', 'categorycode', 'itemtype' ],
164
        scope => [ 'branchcode', 'categorycode', 'itemtype' ],
165
    },
165
    },
166
    recalls_allowed => {
167
        scope => [ 'branchcode', 'categorycode', 'itemtype' ],
168
    },
169
    recalls_per_record => {
170
        scope => [ 'branchcode', 'categorycode', 'itemtype' ],
171
    },
172
    on_shelf_recalls => {
173
        scope => [ 'branchcode', 'categorycode', 'itemtype' ],
174
    },
175
    recall_due_date_interval => {
176
        scope => [ 'branchcode', 'categorycode', 'itemtype' ],
177
    },
178
    recall_overdue_fine => {
179
        scope => [ 'branchcode', 'categorycode', 'itemtype' ],
180
    },
181
    recall_shelf_time => {
182
        scope => [ 'branchcode', 'categorycode', 'itemtype' ],
183
    },
166
    # Not included (deprecated?):
184
    # Not included (deprecated?):
167
    #   * accountsent
185
    #   * accountsent
168
    #   * reservecharge
186
    #   * reservecharge
(-)a/Makefile.PL (+1 lines)
Lines 357-362 my $target_map = { Link Here
357
  './patron_lists'              => 'INTRANET_CGI_DIR',
357
  './patron_lists'              => 'INTRANET_CGI_DIR',
358
  './plugins'                   => 'INTRANET_CGI_DIR',
358
  './plugins'                   => 'INTRANET_CGI_DIR',
359
  './pos'                       => 'INTRANET_CGI_DIR',
359
  './pos'                       => 'INTRANET_CGI_DIR',
360
  './recalls'                   => 'INTRANET_CGI_DIR',
360
  './reports'                   => 'INTRANET_CGI_DIR',
361
  './reports'                   => 'INTRANET_CGI_DIR',
361
  './reserve'                   => 'INTRANET_CGI_DIR',
362
  './reserve'                   => 'INTRANET_CGI_DIR',
362
  './reviews'                   => 'INTRANET_CGI_DIR',
363
  './reviews'                   => 'INTRANET_CGI_DIR',
(-)a/admin/smart-rules.pl (+18 lines)
Lines 111-116 if ($op eq 'delete') { Link Here
111
                cap_fine_to_replacement_price    => undef,
111
                cap_fine_to_replacement_price    => undef,
112
                article_requests                 => undef,
112
                article_requests                 => undef,
113
                note                             => undef,
113
                note                             => undef,
114
                recalls_allowed                  => undef,
115
                recalls_per_record               => undef,
116
                on_shelf_recalls                 => undef,
117
                recall_due_date_interval         => undef,
118
                recall_overdue_fine              => undef,
119
                recall_shelf_time                => undef,
114
            }
120
            }
115
        }
121
        }
116
    );
122
    );
Lines 287-292 elsif ($op eq 'add') { Link Here
287
    my $overduefinescap = $input->param('overduefinescap') || '';
293
    my $overduefinescap = $input->param('overduefinescap') || '';
288
    my $cap_fine_to_replacement_price = ($input->param('cap_fine_to_replacement_price') || '') eq 'on';
294
    my $cap_fine_to_replacement_price = ($input->param('cap_fine_to_replacement_price') || '') eq 'on';
289
    my $note = $input->param('note');
295
    my $note = $input->param('note');
296
    my $recalls_allowed = $input->param('recalls_allowed');
297
    my $recalls_per_record = $input->param('recalls_per_record');
298
    my $on_shelf_recalls = $input->param('on_shelf_recalls');
299
    my $recall_due_date_interval = $input->param('recall_due_date_interval');
300
    my $recall_overdue_fine = $input->param('recall_overdue_fine');
301
    my $recall_shelf_time = $input->param('recall_shelf_time');
290
    $debug and warn "Adding $br, $bor, $itemtype, $fine, $maxissueqty, $maxonsiteissueqty, $cap_fine_to_replacement_price";
302
    $debug and warn "Adding $br, $bor, $itemtype, $fine, $maxissueqty, $maxonsiteissueqty, $cap_fine_to_replacement_price";
291
303
292
    my $rules = {
304
    my $rules = {
Lines 320-325 elsif ($op eq 'add') { Link Here
320
        cap_fine_to_replacement_price => $cap_fine_to_replacement_price,
332
        cap_fine_to_replacement_price => $cap_fine_to_replacement_price,
321
        article_requests              => $article_requests,
333
        article_requests              => $article_requests,
322
        note                          => $note,
334
        note                          => $note,
335
        recalls_allowed               => $recalls_allowed,
336
        recalls_per_record            => $recalls_per_record,
337
        on_shelf_recalls              => $on_shelf_recalls,
338
        recall_due_date_interval      => $recall_due_date_interval,
339
        recall_overdue_fine           => $recall_overdue_fine,
340
        recall_shelf_time             => $recall_shelf_time,
323
    };
341
    };
324
342
325
    Koha::CirculationRules->set_rules(
343
    Koha::CirculationRules->set_rules(
(-)a/installer/data/mysql/atomicupdate/bug_19532-add_recalls_enum_branchtransfers.perl (+6 lines)
Line 0 Link Here
1
$DBversion = 'XXX';
2
if( CheckVersion( $DBversion ) ) {
3
    $dbh->do(q{ ALTER TABLE branchtransfers MODIFY COLUMN reason ENUM('Manual', 'StockrotationAdvance', 'StockrotationRepatriation', 'ReturnToHome', 'ReturnToHolding', 'RotatingCollection', 'Reserve', 'LostReserve', 'CancelReserve', 'Recall', 'CancelRecall') });
4
5
    NewVersion( $DBversion, 19532, "Add Recall and CancelReserve ENUM options to branchtransfers.reason" );
6
}
(-)a/installer/data/mysql/atomicupdate/bug_19532-add_recalls_flags.perl (+7 lines)
Line 0 Link Here
1
$DBversion = 'XXX';
2
if( CheckVersion( $DBversion ) ) {
3
    $dbh->do(q{ INSERT IGNORE INTO userflags (bit, flag, flagdesc, defaulton) VALUES (27, 'recalls', 'Recalls', 0) });
4
    $dbh->do(q{ INSERT IGNORE INTO permissions (module_bit, code, description) VALUES (27, 'manage_recalls', 'Manage recalls for patrons') });
5
6
    NewVersion( $DBversion, 19532, "Add recalls user flag and manage_recalls user permission" );
7
}
(-)a/installer/data/mysql/atomicupdate/bug_19532-add_recalls_notices.perl (+36 lines)
Line 0 Link Here
1
$DBversion = 'XXX';
2
if( CheckVersion( $DBversion ) ) {
3
    $dbh->do(q{
4
        INSERT IGNORE INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title`, `content`, `message_transport_type`) VALUES
5
        ('circulation','RETURN_RECALLED_ITEM','','Notification to return a recalled item','0','Notification to return a recalled item','Date: <<today>>
6
7
<<borrowers.firstname>> <<borrowers.surname>>,
8
9
A recall has been placed on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>). The due date has been updated, and is now <<issues.date_due>>. Please return the item before the due date.
10
11
Thank you!','email'),
12
        ('circulation','PICKUP_RECALLED_ITEM','','Recalled item awaiting pickup','0','Recalled item awaiting pickup','Date: <<today>>
13
14
<<borrowers.firstname>> <<borrowers.surname>>,
15
16
A recall that you requested on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>) is now ready for you to pick up at <<recalls.branchcode>>. Please pick up your item by <<recalls.expirationdate>>.
17
18
Thank you!','email'),
19
        ('circulation','RECALL_REQUESTER_DET','','Details of patron who recalled item',0,'Details of patron who recalled item','Date: <<today>>
20
21
Recall for pickup at <<branches.branchname>>
22
<<borrowers.surname>>, <<borrowers.firstname>> (<<borrowers.cardnumber>>)
23
<<borrowers.phone>>
24
<<borrowers.streetnumber>> <<borrowers.address>>, <<borrowers.address2>>, <<borrowers.city>> <<borrowers.zipcode>>
25
<<borrowers.email>>
26
27
ITEM RECALLED
28
<<biblio.title>> by <<biblio.author>>
29
Barcode: <<items.barcode>>
30
Callnumber: <<items.itemcallnumber>>
31
Waiting since: <<recalls.waitingdate>>
32
Notes: <<recalls.recallnotes>>', 'print')
33
    });
34
35
    NewVersion( $DBversion, 19532, "Add recalls notices: RETURN_RECALLED_ITEM, PICKUP_RECALLED_ITEM, RECALL_REQUESTER_DET" );
36
}
(-)a/installer/data/mysql/atomicupdate/bug_19532-add_recalls_sysprefs.perl (+11 lines)
Line 0 Link Here
1
$DBversion = 'XXX';
2
if( CheckVersion( $DBversion ) ) {
3
    $dbh->do(q{
4
        INSERT IGNORE INTO systempreferences (variable,value,options,explanation,type) VALUES
5
        ('RecallsLog','1',NULL,'If ON, log create/cancel/expire/fulfill actions on recalls','YesNo'),
6
        ('RecallsMaxPickUpDelay','7',NULL,'Define the maximum time a recall can be awaiting pickup','Integer'),
7
        ('UseRecalls','0',NULL,'Enable or disable recalls','YesNo')
8
    });
9
10
    NewVersion( $DBversion, 19532, "Add RecallsLog, RecallsMaxPickUpDelay and UseRecalls system preferences");
11
}
(-)a/installer/data/mysql/atomicupdate/bug_19532-add_recalls_table.perl (+34 lines)
Line 0 Link Here
1
$DBversion = 'XXX';
2
if( CheckVersion( $DBversion ) ) {
3
    $dbh->do(q{ DROP TABLE IF EXISTS recalls });
4
    $dbh->do(q{
5
        CREATE TABLE recalls (
6
            recall_id int(11) NOT NULL auto_increment,
7
            borrowernumber int(11) NOT NULL DEFAULT 0,
8
            recalldate datetime DEFAULT NULL,
9
            biblionumber int(11) NOT NULL DEFAULT 0,
10
            branchcode varchar(10) DEFAULT NULL,
11
            cancellationdate datetime DEFAULT NULL,
12
            recallnotes mediumtext,
13
            priority smallint(6) DEFAULT NULL,
14
            status varchar(1) DEFAULT NULL,
15
            timestamp timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
16
            itemnumber int(11) DEFAULT NULL,
17
            waitingdate datetime DEFAULT NULL,
18
            expirationdate datetime DEFAULT NULL,
19
            old TINYINT(1) DEFAULT NULL,
20
            item_level_recall TINYINT(1) NOT NULL DEFAULT 0,
21
            PRIMARY KEY (recall_id),
22
            KEY borrowernumber (borrowernumber),
23
            KEY biblionumber (biblionumber),
24
            KEY itemnumber (itemnumber),
25
            KEY branchcode (branchcode),
26
            CONSTRAINT recalls_ibfk_1 FOREIGN KEY (borrowernumber) REFERENCES borrowers (borrowernumber) ON DELETE CASCADE ON UPDATE CASCADE,
27
            CONSTRAINT recalls_ibfk_2 FOREIGN KEY (biblionumber) REFERENCES biblio (biblionumber) ON DELETE CASCADE ON UPDATE CASCADE,
28
            CONSTRAINT recalls_ibfk_3 FOREIGN KEY (itemnumber) REFERENCES items (itemnumber) ON DELETE CASCADE ON UPDATE CASCADE,
29
            CONSTRAINT recalls_ibfk_4 FOREIGN KEY (branchcode) REFERENCES branches (branchcode) ON DELETE CASCADE ON UPDATE CASCADE
30
        ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
31
    });
32
33
    NewVersion( $DBversion, 19532, "Add recalls table" );
34
}
(-)a/installer/data/mysql/de-DE/mandatory/sample_notices.sql (-1 / +29 lines)
Lines 205-211 INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title` Link Here
205
('circulation', 'AR_PENDING', '', 'Artikelbestellung - Offen', 0, 'Artikelbestellung ist eingegangen', 'Liebe/r <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nIhre Artikelbestellung aus <<biblio.title>> (<<items.barcode>>) ist bei uns eingegangen.\r\n\r\nBestellter Artikel:\r\nTitel: <<article_requests.title>>\r\nVerfasser: <<article_requests.author>>\r\nJahrgang/Band: <<article_requests.volume>>\r\nHeft: <<article_requests.issue>>\r\nJahr/Datum: <<article_requests.date>>\r\nSeiten: <<article_requests.pages>>\r\nKapitel: <<article_requests.chapters>>\r\nHinweise: <<article_requests.patron_notes>>\r\n\r\n\r\nVielen Dank!', 'email'),
205
('circulation', 'AR_PENDING', '', 'Artikelbestellung - Offen', 0, 'Artikelbestellung ist eingegangen', 'Liebe/r <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nIhre Artikelbestellung aus <<biblio.title>> (<<items.barcode>>) ist bei uns eingegangen.\r\n\r\nBestellter Artikel:\r\nTitel: <<article_requests.title>>\r\nVerfasser: <<article_requests.author>>\r\nJahrgang/Band: <<article_requests.volume>>\r\nHeft: <<article_requests.issue>>\r\nJahr/Datum: <<article_requests.date>>\r\nSeiten: <<article_requests.pages>>\r\nKapitel: <<article_requests.chapters>>\r\nHinweise: <<article_requests.patron_notes>>\r\n\r\n\r\nVielen Dank!', 'email'),
206
('circulation', 'AR_SLIP', '', 'Artikelbestellung - Quittung', 0, 'Artikelbestellung', 'Artikelbestellung:\r\n\r\n<<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nTitel: <<biblio.title>>\r\nBarcode: <<items.barcode>>\r\n\r\nBestellter Artikel:\r\nTitle: <<article_requests.title>>\r\nVerfasser: <<article_requests.author>>\r\nJahrgang/Band: <<article_requests.volume>>\r\nHeft: <<article_requests.issue>>\r\nJahr/Datum: <<article_requests.date>>\r\nSeiten: <<article_requests.pages>>\r\nKapitel: <<article_requests.chapters>>\r\nHinweise: <<article_requests.patron_notes>>\r\n', 'print'),
206
('circulation', 'AR_SLIP', '', 'Artikelbestellung - Quittung', 0, 'Artikelbestellung', 'Artikelbestellung:\r\n\r\n<<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nTitel: <<biblio.title>>\r\nBarcode: <<items.barcode>>\r\n\r\nBestellter Artikel:\r\nTitle: <<article_requests.title>>\r\nVerfasser: <<article_requests.author>>\r\nJahrgang/Band: <<article_requests.volume>>\r\nHeft: <<article_requests.issue>>\r\nJahr/Datum: <<article_requests.date>>\r\nSeiten: <<article_requests.pages>>\r\nKapitel: <<article_requests.chapters>>\r\nHinweise: <<article_requests.patron_notes>>\r\n', 'print'),
207
('circulation', 'AR_PROCESSING', '', 'Artikelbestellung - In Bearbeitung', 0, 'Artikelbestellung in Bearbeitung', 'Liebe/r <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nIhre Artikelbestellung aus <<biblio.title>> (<<items.barcode>>) wird zur Zeit bearbeitet.\r\n\r\nBestellter Artikel:\r\nTitel: <<article_requests.title>>\r\nVerfasser: <<article_requests.author>>\r\nBand/Jahrgang: <<article_requests.volume>>\r\nHeft: <<article_requests.issue>>\r\nJahr/Datum: <<article_requests.date>>\r\nSeiten: <<article_requests.pages>>\r\nKapitel: <<article_requests.chapters>>\r\nHinweise: <<article_requests.patron_notes>>\r\n\r\nVielen Dank!', 'email'),
207
('circulation', 'AR_PROCESSING', '', 'Artikelbestellung - In Bearbeitung', 0, 'Artikelbestellung in Bearbeitung', 'Liebe/r <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nIhre Artikelbestellung aus <<biblio.title>> (<<items.barcode>>) wird zur Zeit bearbeitet.\r\n\r\nBestellter Artikel:\r\nTitel: <<article_requests.title>>\r\nVerfasser: <<article_requests.author>>\r\nBand/Jahrgang: <<article_requests.volume>>\r\nHeft: <<article_requests.issue>>\r\nJahr/Datum: <<article_requests.date>>\r\nSeiten: <<article_requests.pages>>\r\nKapitel: <<article_requests.chapters>>\r\nHinweise: <<article_requests.patron_notes>>\r\n\r\nVielen Dank!', 'email'),
208
('circulation', 'CHECKOUT_NOTE', '', 'Ausleihnotiz zu einem Exemplar', '0', 'Ausleihnotiz', '<<borrowers.firstname>> <<borrowers.surname>> hat eine Notiz zu folgendem Exemplar angegeben: <<biblio.title>> - <<biblio.author>> (<<biblio.biblionumber>>).','email');
208
('circulation', 'CHECKOUT_NOTE', '', 'Ausleihnotiz zu einem Exemplar', '0', 'Ausleihnotiz', '<<borrowers.firstname>> <<borrowers.surname>> hat eine Notiz zu folgendem Exemplar angegeben: <<biblio.title>> - <<biblio.author>> (<<biblio.biblionumber>>).','email'),
209
('circulation','RETURN_RECALLED_ITEM','','Notification to return a recalled item','0','Notification to return a recalled item','Date: <<today>>
210
211
<<borrowers.firstname>> <<borrowers.surname>>,
212
213
A recall has been placed on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>). The due date has been updated, and is now <<issues.date_due>>. Please return the item before the due date.
214
215
Thank you!','email'),
216
('circulation','PICKUP_RECALLED_ITEM','','Recalled item awaiting pickup','0','Recalled item awaiting pickup','Date: <<today>>
217
218
<<borrowers.firstname>> <<borrowers.surname>>,
219
220
A recall that you requested on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>) is now ready for you to pick up at <<recalls.branchcode>>. Please pick up your item by <<recalls.expirationdate>>.
221
222
Thank you!','email'),
223
('circulation','RECALL_REQUESTER_DET','','Details of patron who recalled item',0,'Date: <<today>>
224
225
Recall for pickup at <<branches.branchname>>
226
<<borrowers.surname>>, <<borrowers.firstname>> (<<borrowers.cardnumber>>)
227
<<borrowers.phone>>
228
<<borrowers.streetnumber>> <<borrowers.address>>, <<borrowers.address2>>, <<borrowers.city>> <<borrowers.zipcode>>
229
<<borrowers.email>>
230
231
ITEM RECALLED
232
<<biblio.title>> by <<biblio.author>>
233
Barcode: <<items.barcode>>
234
Callnumber: <<items.itemcallnumber>>
235
Waiting since: <<recalls.waitingdate>>
236
Notes: <<recalls.recallnotes>>', 'print');
209
237
210
INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title`, `content`, `message_transport_type`, `lang`) VALUES
238
INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title`, `content`, `message_transport_type`, `lang`) VALUES
211
('circulation', 'ACCOUNT_PAYMENT', '', 'Zahlung', 0, 'Zahlungsquittung für Bibliothekskonto', '[%- USE Price -%]\r\nEine Zahlung in Höhe von [% credit.amount * -1 | $Price %] wurde auf Ihr Konto verbucht.\r\n\r\nDiese Zahlung wurde mit den folgenden Gebührenposten verrechnet:\r\n[%- FOREACH o IN offsets %]\r\nBeschreibung: [% o.debit.description %]\r\nGezahlter Betrag: [% o.amount * -1 | $Price %]\r\nOffener Betrag: [% o.debit.amountoutstanding | $Price %]\r\n[% END %]', 'email', 'default'),
239
('circulation', 'ACCOUNT_PAYMENT', '', 'Zahlung', 0, 'Zahlungsquittung für Bibliothekskonto', '[%- USE Price -%]\r\nEine Zahlung in Höhe von [% credit.amount * -1 | $Price %] wurde auf Ihr Konto verbucht.\r\n\r\nDiese Zahlung wurde mit den folgenden Gebührenposten verrechnet:\r\n[%- FOREACH o IN offsets %]\r\nBeschreibung: [% o.debit.description %]\r\nGezahlter Betrag: [% o.amount * -1 | $Price %]\r\nOffener Betrag: [% o.debit.amountoutstanding | $Price %]\r\n[% END %]', 'email', 'default'),
(-)a/installer/data/mysql/en/mandatory/sample_notices.yml (+58 lines)
Lines 1221-1223 tables: Link Here
1221
              - "[%- USE AuthorisedValues -%]"
1221
              - "[%- USE AuthorisedValues -%]"
1222
              - "Dear [% borrower.firstname %] [% borrower.surname %],"
1222
              - "Dear [% borrower.firstname %] [% borrower.surname %],"
1223
              - "Your hold for [% biblio.title %] was canceled for the following reason: [% AuthorisedValues.GetByCode( 'HOLD_CANCELLATION', hold.cancellation_reason ) %]"
1223
              - "Your hold for [% biblio.title %] was canceled for the following reason: [% AuthorisedValues.GetByCode( 'HOLD_CANCELLATION', hold.cancellation_reason ) %]"
1224
1225
        - module: circulation
1226
          code: RETURN_RECALLED_ITEM
1227
          branchcode: ""
1228
          name: "Notification to return a recalled item"
1229
          is_html: 0
1230
          title: "Notification to return a recalled item"
1231
          message_transport_type: email
1232
          lang: default
1233
          content:
1234
            - "Date: <<today>>"
1235
            - ""
1236
            - "<<borrowers.firstname>> <<borrowers.surname>>,"
1237
            - ""
1238
            - "A recall has been placed on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>). The due date has been updated, and is now <<issues.date_due>>. Please return the item before the due date."
1239
            - ""
1240
            - "Thank you!"
1241
1242
        - module: circulation
1243
          code: PICKUP_RECALLED_ITEM
1244
          branchcode: ""
1245
          name: "Recalled item awaiting pickup"
1246
          is_html: 0
1247
          title: "Recalled item awaiting pickup"
1248
          message_transport_type: email
1249
          lang: default
1250
          content:
1251
            - "Date: <<today>>"
1252
            - ""
1253
            - "<<borrowers.firstname>> <<borrowers.surname>>,"
1254
            - ""
1255
            - "A recall that you requested on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>) is now ready for you to pick up at <<recalls.branchcode>>. Please pick up your item by <<recalls.expirationdate>>."
1256
            - ""
1257
            - "Thank you!"
1258
1259
        - module: circulation
1260
          code: RECALL_REQUESTER_DET
1261
          branchcode: ""
1262
          name: "Details of patron who recalled item"
1263
          is_html: 0
1264
          title: "Details of patron who recalled item"
1265
          message_transport_type: print
1266
          lang: default
1267
          content:
1268
            - "Date: <<today>>"
1269
            - ""
1270
            - "Recall for pickup at <<branches.branchname>>"
1271
            - "<<borrowers.surname>>, <<borrowers.firstname>> (<<borrowers.cardnumber>>)"
1272
            - "<<borrowers.phone>>"
1273
            - "<<borrowers.streetnumber>> <<borrowers.address>>, <<borrowers.address2>>, <<borrowers.city>> <<borrowers.zipcode>>"
1274
            - "<<borrowers.email>>"
1275
            - ""
1276
            - "ITEM RECALLED"
1277
            - "<<biblio.title>> by <<biblio.author>>"
1278
            - "Barcode: <<items.barcode>>"
1279
            - "Callnumber: <<items.itemcallnumber>>"
1280
            - "Waiting since: <<recalls.waitingdate>>"
1281
            - "Notes: <<recalls.recallnotes>>"
(-)a/installer/data/mysql/fr-CA/obligatoire/sample_notices.sql (-1 / +29 lines)
Lines 84-90 INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title` Link Here
84
('circulation', 'AR_PENDING', '', 'Demande d\'article - en attente', 0, 'Demande d\'article reçue', 'Bonjour <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nNous avons bien reçu votre demande d\'article de <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle demandé :\r\nTitre : <<article_requests.title>>\r\nAuteur : <<article_requests.author>>\r\nVolume : <<article_requests.volume>>\r\nNuméro : <<article_requests.issue>>\r\nDate : <<article_requests.date>>\r\nPages : <<article_requests.pages>>\r\nChapitres : <<article_requests.chapters>>\r\nNotes : <<article_requests.patron_notes>>\r\n\r\n\r\nMerci.', 'email'),
84
('circulation', 'AR_PENDING', '', 'Demande d\'article - en attente', 0, 'Demande d\'article reçue', 'Bonjour <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nNous avons bien reçu votre demande d\'article de <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle demandé :\r\nTitre : <<article_requests.title>>\r\nAuteur : <<article_requests.author>>\r\nVolume : <<article_requests.volume>>\r\nNuméro : <<article_requests.issue>>\r\nDate : <<article_requests.date>>\r\nPages : <<article_requests.pages>>\r\nChapitres : <<article_requests.chapters>>\r\nNotes : <<article_requests.patron_notes>>\r\n\r\n\r\nMerci.', 'email'),
85
('circulation', 'AR_SLIP', '', 'Demande d\'article - ticket', 0, 'Demande d\'article', 'Demande d\'article :\r\n\r\n<<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nTitre : <<biblio.title>>\r\nCode-barres : <<items.barcode>>\r\n\r\nArticle demandé :\r\nTitre : <<article_requests.title>>\r\nAuteur : <<article_requests.author>>\r\nVolume : <<article_requests.volume>>\r\nNuméro : <<article_requests.issue>>\r\nDate : <<article_requests.date>>\r\nPages : <<article_requests.pages>>\r\nChapitres : <<article_requests.chapters>>\r\nNotes : <<article_requests.patron_notes>>\r\n', 'print'),
85
('circulation', 'AR_SLIP', '', 'Demande d\'article - ticket', 0, 'Demande d\'article', 'Demande d\'article :\r\n\r\n<<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nTitre : <<biblio.title>>\r\nCode-barres : <<items.barcode>>\r\n\r\nArticle demandé :\r\nTitre : <<article_requests.title>>\r\nAuteur : <<article_requests.author>>\r\nVolume : <<article_requests.volume>>\r\nNuméro : <<article_requests.issue>>\r\nDate : <<article_requests.date>>\r\nPages : <<article_requests.pages>>\r\nChapitres : <<article_requests.chapters>>\r\nNotes : <<article_requests.patron_notes>>\r\n', 'print'),
86
('circulation', 'AR_PROCESSING', '', 'Demande d\'article - en traitement', 0, 'Demande d\'article en traitement', 'Bonjour <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nNous traitons votre demande d\'article de <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle demandé :\r\nTitre : <<article_requests.title>>\r\nAuteur : <<article_requests.author>>\r\nVolume : <<article_requests.volume>>\r\nNuméro : <<article_requests.issue>>\r\nDate : <<article_requests.date>>\r\nPages : <<article_requests.pages>>\r\nChapitres : <<article_requests.chapters>>\r\nNotes : <<article_requests.patron_notes>>\r\n\r\nMerci.', 'email'),
86
('circulation', 'AR_PROCESSING', '', 'Demande d\'article - en traitement', 0, 'Demande d\'article en traitement', 'Bonjour <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nNous traitons votre demande d\'article de <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle demandé :\r\nTitre : <<article_requests.title>>\r\nAuteur : <<article_requests.author>>\r\nVolume : <<article_requests.volume>>\r\nNuméro : <<article_requests.issue>>\r\nDate : <<article_requests.date>>\r\nPages : <<article_requests.pages>>\r\nChapitres : <<article_requests.chapters>>\r\nNotes : <<article_requests.patron_notes>>\r\n\r\nMerci.', 'email'),
87
('circulation', 'CHECKOUT_NOTE', '', 'Notes d\'un utilisateur sur les documents en prêt', '0', 'Notes sur les documents en prêts', '<<borrowers.firstname>> <<borrowers.surname>> a ajouté une note sur un exemplaire de <<biblio.title>> - <<biblio.author>> (<<biblio.biblionumber>>).','email');
87
('circulation', 'CHECKOUT_NOTE', '', 'Notes d\'un utilisateur sur les documents en prêt', '0', 'Notes sur les documents en prêts', '<<borrowers.firstname>> <<borrowers.surname>> a ajouté une note sur un exemplaire de <<biblio.title>> - <<biblio.author>> (<<biblio.biblionumber>>).','email'),
88
('circulation','RETURN_RECALLED_ITEM','','Notification to return a recalled item','0','Notification to return a recalled item','Date: <<today>>
89
90
<<borrowers.firstname>> <<borrowers.surname>>,
91
92
A recall has been placed on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>). The due date has been updated, and is now <<issues.date_due>>. Please return the item before the due date.
93
94
Thank you!','email'),
95
('circulation','PICKUP_RECALLED_ITEM','','Recalled item awaiting pickup','0','Recalled item awaiting pickup','Date: <<today>>
96
97
<<borrowers.firstname>> <<borrowers.surname>>,
98
99
A recall that you requested on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>) is now ready for you to pick up at <<recalls.branchcode>>. Please pick up your item by <<recalls.expirationdate>>.
100
101
Thank you!','email'),
102
('circulation','RECALL_REQUESTER_DET','','Details of patron who recalled item',0,'Date: <<today>>
103
104
Recall for pickup at <<branches.branchname>>
105
<<borrowers.surname>>, <<borrowers.firstname>> (<<borrowers.cardnumber>>)
106
<<borrowers.phone>>
107
<<borrowers.streetnumber>> <<borrowers.address>>, <<borrowers.address2>>, <<borrowers.city>> <<borrowers.zipcode>>
108
<<borrowers.email>>
109
110
ITEM RECALLED
111
<<biblio.title>> by <<biblio.author>>
112
Barcode: <<items.barcode>>
113
Callnumber: <<items.itemcallnumber>>
114
Waiting since: <<recalls.waitingdate>>
115
Notes: <<recalls.recallnotes>>', 'print');
88
116
89
INSERT INTO `letter` (module, code, branchcode, name, is_html, title, content, message_transport_type)
117
INSERT INTO `letter` (module, code, branchcode, name, is_html, title, content, message_transport_type)
90
VALUES ('members','PASSWORD_RESET','','Récupération de mot de passe en ligne',1,'Récupération de mot de passe','<html>\r\n<p>Ce courriel vous a été envoyé suite à une demande de récupération de mot de passe pour le compte de <strong><<user>></strong>.\r\n</p>\r\n<p>\r\nVous pouvez créer un nouveau mot de passe en cliquant le lien suivant :\r\n<br/><a href=\"<<passwordreseturl>>\"><<passwordreseturl>></a>\r\n</p>\r\n<p>Ce lien sera valide pour 2 jours après la réception de ce courriel. Si vous ne changez pas votre mot de passe d\'ici deux jours, vous devrez faire une nouvelle demande de récuération de mot de passe..</p>\r\n<p>Merci.</p>\r\n</html>\r\n','email'),
118
VALUES ('members','PASSWORD_RESET','','Récupération de mot de passe en ligne',1,'Récupération de mot de passe','<html>\r\n<p>Ce courriel vous a été envoyé suite à une demande de récupération de mot de passe pour le compte de <strong><<user>></strong>.\r\n</p>\r\n<p>\r\nVous pouvez créer un nouveau mot de passe en cliquant le lien suivant :\r\n<br/><a href=\"<<passwordreseturl>>\"><<passwordreseturl>></a>\r\n</p>\r\n<p>Ce lien sera valide pour 2 jours après la réception de ce courriel. Si vous ne changez pas votre mot de passe d\'ici deux jours, vous devrez faire une nouvelle demande de récuération de mot de passe..</p>\r\n<p>Merci.</p>\r\n</html>\r\n','email'),
(-)a/installer/data/mysql/fr-FR/1-Obligatoire/sample_notices.sql (-1 / +29 lines)
Lines 199-205 INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title` Link Here
199
('circulation', 'AR_PENDING', '', 'Article request - pending', 0, 'Article request received', 'Dear <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nWe have received your request for an article from <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n\r\n\r\nThank you!', 'email'),
199
('circulation', 'AR_PENDING', '', 'Article request - pending', 0, 'Article request received', 'Dear <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nWe have received your request for an article from <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n\r\n\r\nThank you!', 'email'),
200
('circulation', 'AR_SLIP', '', 'Article request - print slip', 0, 'Article request', 'Article request:\r\n\r\n<<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nTitle: <<biblio.title>>\r\nBarcode: <<items.barcode>>\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n', 'print'),
200
('circulation', 'AR_SLIP', '', 'Article request - print slip', 0, 'Article request', 'Article request:\r\n\r\n<<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nTitle: <<biblio.title>>\r\nBarcode: <<items.barcode>>\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n', 'print'),
201
('circulation', 'AR_PROCESSING', '', 'Article request - processing', 0, 'Article request processing', 'Dear <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nWe are now processing your request for an article from <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n\r\nThank you!', 'email'),
201
('circulation', 'AR_PROCESSING', '', 'Article request - processing', 0, 'Article request processing', 'Dear <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nWe are now processing your request for an article from <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n\r\nThank you!', 'email'),
202
('circulation', 'CHECKOUT_NOTE', '', 'Checkout note on item set by patron', '0', 'Checkout note', '<<borrowers.firstname>> <<borrowers.surname>> has added a note to the item <<biblio.title>> - <<biblio.author>> (<<biblio.biblionumber>>).','email');
202
('circulation', 'CHECKOUT_NOTE', '', 'Checkout note on item set by patron', '0', 'Checkout note', '<<borrowers.firstname>> <<borrowers.surname>> has added a note to the item <<biblio.title>> - <<biblio.author>> (<<biblio.biblionumber>>).','email'),
203
('circulation','RETURN_RECALLED_ITEM','','Notification to return a recalled item','0','Notification to return a recalled item','Date: <<today>>
204
205
<<borrowers.firstname>> <<borrowers.surname>>,
206
207
A recall has been placed on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>). The due date has been updated, and is now <<issues.date_due>>. Please return the item before the due date.
208
209
Thank you!','email'),
210
('circulation','PICKUP_RECALLED_ITEM','','Recalled item awaiting pickup','0','Recalled item awaiting pickup','Date: <<today>>
211
212
<<borrowers.firstname>> <<borrowers.surname>>,
213
214
A recall that you requested on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>) is now ready for you to pick up at <<recalls.branchcode>>. Please pick up your item by <<recalls.expirationdate>>.
215
216
Thank you!','email'),
217
('circulation','RECALL_REQUESTER_DET','','Details of patron who recalled item',0,'Date: <<today>>
218
219
Recall for pickup at <<branches.branchname>>
220
<<borrowers.surname>>, <<borrowers.firstname>> (<<borrowers.cardnumber>>)
221
<<borrowers.phone>>
222
<<borrowers.streetnumber>> <<borrowers.address>>, <<borrowers.address2>>, <<borrowers.city>> <<borrowers.zipcode>>
223
<<borrowers.email>>
224
225
ITEM RECALLED
226
<<biblio.title>> by <<biblio.author>>
227
Barcode: <<items.barcode>>
228
Callnumber: <<items.itemcallnumber>>
229
Waiting since: <<recalls.waitingdate>>
230
Notes: <<recalls.recallnotes>>', 'print');
203
231
204
INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title`, `content`, `message_transport_type`, `lang`) VALUES
232
INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title`, `content`, `message_transport_type`, `lang`) VALUES
205
('circulation', 'ACCOUNT_PAYMENT', '', 'Account payment', 0, 'Account payment', '[%- USE Price -%]\r\nA payment of [% credit.amount * -1 | $Price %] has been applied to your account.\r\n\r\nThis payment affected the following fees:\r\n[%- FOREACH o IN offsets %]\r\nDescription: [% o.debit.description %]\r\nAmount paid: [% o.amount * -1 | $Price %]\r\nAmount remaining: [% o.debit.amountoutstanding | $Price %]\r\n[% END %]', 'email', 'default'),
233
('circulation', 'ACCOUNT_PAYMENT', '', 'Account payment', 0, 'Account payment', '[%- USE Price -%]\r\nA payment of [% credit.amount * -1 | $Price %] has been applied to your account.\r\n\r\nThis payment affected the following fees:\r\n[%- FOREACH o IN offsets %]\r\nDescription: [% o.debit.description %]\r\nAmount paid: [% o.amount * -1 | $Price %]\r\nAmount remaining: [% o.debit.amountoutstanding | $Price %]\r\n[% END %]', 'email', 'default'),
(-)a/installer/data/mysql/it-IT/necessari/notices.sql (-1 / +29 lines)
Lines 201-207 INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title` Link Here
201
('circulation', 'AR_PENDING', '', 'Richiesta articolo - ricevuta', 0, 'Ricevuto la richiesta di un articolo', 'Salve <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nAbbiamo ricevuto la tua richiesta di un articolo di <<biblio.title>> (<<items.barcode>>).\r\n\r\nL\'articolo richiesto:\r\nTitolo: <<article_requests.title>>\r\nAutore: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nFascicolo: <<article_requests.issue>>\r\nData: <<article_requests.date>>\r\nPagine: <<article_requests.pages>>\r\nChapitoli: <<article_requests.chapters>>\r\nNote: <<article_requests.patron_notes>>\r\n\r\nGrazie!', 'email'),
201
('circulation', 'AR_PENDING', '', 'Richiesta articolo - ricevuta', 0, 'Ricevuto la richiesta di un articolo', 'Salve <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nAbbiamo ricevuto la tua richiesta di un articolo di <<biblio.title>> (<<items.barcode>>).\r\n\r\nL\'articolo richiesto:\r\nTitolo: <<article_requests.title>>\r\nAutore: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nFascicolo: <<article_requests.issue>>\r\nData: <<article_requests.date>>\r\nPagine: <<article_requests.pages>>\r\nChapitoli: <<article_requests.chapters>>\r\nNote: <<article_requests.patron_notes>>\r\n\r\nGrazie!', 'email'),
202
('circulation', 'AR_SLIP', '', 'Richiesta articolo - ricevuta a stampa', 0, 'Richiesta articolo', 'Richiesta articolo\r\n\r\n<<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nTitolo: <<biblio.title>>\r\nBarcode: <<items.barcode>>\r\n\r\nArticolo rechiesto:\r\nTitle: <<article_requests.title>>\r\nAutore: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nFascicolo: <<article_requests.issue>>\r\nData: <<article_requests.date>>\r\nPagine: <<article_requests.pages>>\r\nChapitoli: <<article_requests.chapters>>\r\nNote: <<article_requests.patron_notes>>\r\n', 'print'),
202
('circulation', 'AR_SLIP', '', 'Richiesta articolo - ricevuta a stampa', 0, 'Richiesta articolo', 'Richiesta articolo\r\n\r\n<<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nTitolo: <<biblio.title>>\r\nBarcode: <<items.barcode>>\r\n\r\nArticolo rechiesto:\r\nTitle: <<article_requests.title>>\r\nAutore: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nFascicolo: <<article_requests.issue>>\r\nData: <<article_requests.date>>\r\nPagine: <<article_requests.pages>>\r\nChapitoli: <<article_requests.chapters>>\r\nNote: <<article_requests.patron_notes>>\r\n', 'print'),
203
('circulation', 'AR_PROCESSING', '', 'Richiesta articolo - in lavorazione', 0, 'La richiesta di un articolo è in lavorazione', 'Salve <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nStiamo ora lavorando la tua richiesta di un articolo da <<biblio.title>> (<<items.barcode>>).\r\n\r\nL\'articolo richiesto:\r\nTitolo: <<article_requests.title>>\r\nAutore: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nFascicolo: <<article_requests.issue>>\r\nData: <<article_requests.date>>\r\nPagine: <<article_requests.pages>>\r\nChapitoli: <<article_requests.chapters>>\r\nNote: <<article_requests.patron_notes>>\r\n\r\nGrazie!', 'email'),
203
('circulation', 'AR_PROCESSING', '', 'Richiesta articolo - in lavorazione', 0, 'La richiesta di un articolo è in lavorazione', 'Salve <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nStiamo ora lavorando la tua richiesta di un articolo da <<biblio.title>> (<<items.barcode>>).\r\n\r\nL\'articolo richiesto:\r\nTitolo: <<article_requests.title>>\r\nAutore: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nFascicolo: <<article_requests.issue>>\r\nData: <<article_requests.date>>\r\nPagine: <<article_requests.pages>>\r\nChapitoli: <<article_requests.chapters>>\r\nNote: <<article_requests.patron_notes>>\r\n\r\nGrazie!', 'email'),
204
('circulation', 'CHECKOUT_NOTE', '', 'Checkout note on item set by patron', '0', 'Checkout note', '<<borrowers.firstname>> <<borrowers.surname>> has added a note to the item <<biblio.title>> - <<biblio.author>> (<<biblio.biblionumber>>).','email');
204
('circulation', 'CHECKOUT_NOTE', '', 'Checkout note on item set by patron', '0', 'Checkout note', '<<borrowers.firstname>> <<borrowers.surname>> has added a note to the item <<biblio.title>> - <<biblio.author>> (<<biblio.biblionumber>>).','email'),
205
('circulation','RETURN_RECALLED_ITEM','','Notification to return a recalled item','0','Notification to return a recalled item','Date: <<today>>
206
207
<<borrowers.firstname>> <<borrowers.surname>>,
208
209
A recall has been placed on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>). The due date has been updated, and is now <<issues.date_due>>. Please return the item before the due date.
210
211
Thank you!','email'),
212
('circulation','PICKUP_RECALLED_ITEM','','Recalled item awaiting pickup','0','Recalled item awaiting pickup','Date: <<today>>
213
214
<<borrowers.firstname>> <<borrowers.surname>>,
215
216
A recall that you requested on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>) is now ready for you to pick up at <<recalls.branchcode>>. Please pick up your item by <<recalls.expirationdate>>.
217
218
Thank you!','email'),
219
('circulation','RECALL_REQUESTER_DET','','Details of patron who recalled item',0,'Date: <<today>>
220
221
Recall for pickup at <<branches.branchname>>
222
<<borrowers.surname>>, <<borrowers.firstname>> (<<borrowers.cardnumber>>)
223
<<borrowers.phone>>
224
<<borrowers.streetnumber>> <<borrowers.address>>, <<borrowers.address2>>, <<borrowers.city>> <<borrowers.zipcode>>
225
<<borrowers.email>>
226
227
ITEM RECALLED
228
<<biblio.title>> by <<biblio.author>>
229
Barcode: <<items.barcode>>
230
Callnumber: <<items.itemcallnumber>>
231
Waiting since: <<recalls.waitingdate>>
232
Notes: <<recalls.recallnotes>>', 'print');
205
233
206
INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title`, `content`, `message_transport_type`, `lang`) VALUES
234
INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title`, `content`, `message_transport_type`, `lang`) VALUES
207
('circulation', 'ACCOUNT_PAYMENT', '', 'Account payment', 0, 'Account payment', '[%- USE Price -%]\r\nA payment of [% credit.amount * -1 | $Price %] has been applied to your account.\r\n\r\nThis payment affected the following fees:\r\n[%- FOREACH o IN offsets %]\r\nDescription: [% o.debit.description %]\r\nAmount paid: [% o.amount * -1 | $Price %]\r\nAmount remaining: [% o.debit.amountoutstanding | $Price %]\r\n[% END %]', 'email', 'default'),
235
('circulation', 'ACCOUNT_PAYMENT', '', 'Account payment', 0, 'Account payment', '[%- USE Price -%]\r\nA payment of [% credit.amount * -1 | $Price %] has been applied to your account.\r\n\r\nThis payment affected the following fees:\r\n[%- FOREACH o IN offsets %]\r\nDescription: [% o.debit.description %]\r\nAmount paid: [% o.amount * -1 | $Price %]\r\nAmount remaining: [% o.debit.amountoutstanding | $Price %]\r\n[% END %]', 'email', 'default'),
(-)a/installer/data/mysql/kohastructure.sql (-1 / +33 lines)
Lines 936-942 CREATE TABLE `branchtransfers` ( -- information for items that are in transit be Link Here
936
  `datearrived` datetime default NULL, -- the date the transfer arrived at its destination
936
  `datearrived` datetime default NULL, -- the date the transfer arrived at its destination
937
  `tobranch` varchar(10) NOT NULL default '', -- the branch the transfer was going to
937
  `tobranch` varchar(10) NOT NULL default '', -- the branch the transfer was going to
938
  `comments` LONGTEXT, -- any comments related to the transfer
938
  `comments` LONGTEXT, -- any comments related to the transfer
939
  `reason` ENUM('Manual', 'StockrotationAdvance', 'StockrotationRepatriation', 'ReturnToHome', 'ReturnToHolding', 'RotatingCollection', 'Reserve', 'LostReserve', 'CancelReserve'), -- what triggered the transfer
939
  `reason` ENUM('Manual', 'StockrotationAdvance', 'StockrotationRepatriation', 'ReturnToHome', 'ReturnToHolding', 'RotatingCollection', 'Reserve', 'LostReserve', 'CancelReserve','Recall','CancelRecall'), -- what triggered the transfer
940
  PRIMARY KEY (`branchtransfer_id`),
940
  PRIMARY KEY (`branchtransfer_id`),
941
  KEY `frombranch` (`frombranch`),
941
  KEY `frombranch` (`frombranch`),
942
  KEY `tobranch` (`tobranch`),
942
  KEY `tobranch` (`tobranch`),
Lines 1751-1756 CREATE TABLE `patronimage` ( -- information related to patron images Link Here
1751
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
1751
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
1752
1752
1753
--
1753
--
1754
-- Table structure for table `recalls`
1755
--
1756
1757
DROP TABLE IF EXISTS recalls;
1758
CREATE TABLE recalls ( -- information related to recalls in Koha
1759
    recall_id int(11) NOT NULL auto_increment, -- primary key
1760
    borrowernumber int(11) NOT NULL DEFAULT 0, -- foreign key from the borrowers table defining which patron requested a recall
1761
    recalldate datetime DEFAULT NULL, -- the date the recall request was placed
1762
    biblionumber int(11) NOT NULL DEFAULT 0, -- foreign key from the biblio table defining which bib record this request is for
1763
    branchcode varchar(10) DEFAULT NULL, -- foreign key from the branches table defining which branch the patron wishes to pick up their recall from
1764
    cancellationdate datetime DEFAULT NULL, -- the date this recall was cancelled
1765
    recallnotes mediumtext, -- notes related to this recall
1766
    priority smallint(6) DEFAULT NULL, -- where in the queue the patron sits
1767
    status varchar(1) DEFAULT NULL, -- a one letter code defining the status of the recall. R=requested, O=overdue, W=awaiting pickup, T=in transit, E=expired, C=cancelled, F=finished/completed
1768
    timestamp timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, -- the date and time this recall was last updated
1769
    itemnumber int(11) DEFAULT NULL, -- foreign key from the items table defining the specific item the recall request was placed on
1770
    waitingdate datetime DEFAULT NULL, -- the date the item was marked as waiting for the patron at the library
1771
    expirationdate datetime DEFAULT NULL, -- the date the recall expires
1772
    old TINYINT(1) DEFAULT NULL, -- flag if the recall is old and no longer active, i.e. expired, cancelled or completed
1773
    item_level_recall TINYINT(1) NOT NULL DEFAULT 0, -- flag if item-level recall
1774
     PRIMARY KEY (recall_id),
1775
     KEY borrowernumber (borrowernumber),
1776
     KEY biblionumber (biblionumber),
1777
     KEY itemnumber (itemnumber),
1778
     KEY branchcode (branchcode),
1779
     CONSTRAINT recalls_ibfk_1 FOREIGN KEY (borrowernumber) REFERENCES borrowers (borrowernumber) ON DELETE CASCADE ON UPDATE CASCADE,
1780
     CONSTRAINT recalls_ibfk_2 FOREIGN KEY (biblionumber) REFERENCES biblio (biblionumber) ON DELETE CASCADE ON UPDATE CASCADE,
1781
     CONSTRAINT recalls_ibfk_3 FOREIGN KEY (itemnumber) REFERENCES items (itemnumber) ON DELETE CASCADE ON UPDATE CASCADE,
1782
     CONSTRAINT recalls_ibfk_4 FOREIGN KEY (branchcode) REFERENCES branches (branchcode) ON DELETE CASCADE ON UPDATE CASCADE
1783
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
1784
1785
--
1754
-- Table structure for table `reserves`
1786
-- Table structure for table `reserves`
1755
--
1787
--
1756
1788
(-)a/installer/data/mysql/mandatory/sysprefs.sql (+3 lines)
Lines 535-540 INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` Link Here
535
('QueryWeightFields','1',NULL,'If ON, enables field weighting','YesNo'),
535
('QueryWeightFields','1',NULL,'If ON, enables field weighting','YesNo'),
536
('QuoteOfTheDay','','intranet,opac','Enable or disable display of Quote of the Day on the OPAC and staff interface home page','multiple'),
536
('QuoteOfTheDay','','intranet,opac','Enable or disable display of Quote of the Day on the OPAC and staff interface home page','multiple'),
537
('RandomizeHoldsQueueWeight','0',NULL,'if ON, the holds queue in circulation will be randomized, either based on all location codes, or by the location codes specified in StaticHoldsQueueWeight','YesNo'),
537
('RandomizeHoldsQueueWeight','0',NULL,'if ON, the holds queue in circulation will be randomized, either based on all location codes, or by the location codes specified in StaticHoldsQueueWeight','YesNo'),
538
('RecallsLog','1',NULL,'If ON, log create/cancel/expire/fulfill actions on recalls','YesNo'),
539
('RecallsMaxPickUpDelay','7',NULL,'Define the maximum time a recall can be awaiting pickup','Integer'),
538
('RecordLocalUseOnReturn','0',NULL,'If ON, statistically record returns of unissued items as local use, instead of return','YesNo'),
540
('RecordLocalUseOnReturn','0',NULL,'If ON, statistically record returns of unissued items as local use, instead of return','YesNo'),
539
('RefundLostOnReturnControl','CheckinLibrary','CheckinLibrary|ItemHomeBranch|ItemHoldingBranch','If a lost item is returned, choose which branch to pick rules for refunding.','Choice'),
541
('RefundLostOnReturnControl','CheckinLibrary','CheckinLibrary|ItemHomeBranch|ItemHoldingBranch','If a lost item is returned, choose which branch to pick rules for refunding.','Choice'),
540
('RenewAccruingItemWhenPaid','0','','If enabled, when the fines on an item accruing is paid off, attempt to renew that item. If the syspref "RenewalPeriodBase" is set to "due date", renewed items may still be overdue','YesNo'),
542
('RenewAccruingItemWhenPaid','0','','If enabled, when the fines on an item accruing is paid off, attempt to renew that item. If the syspref "RenewalPeriodBase" is set to "due date", renewed items may still be overdue','YesNo'),
Lines 701-706 INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` Link Here
701
('useDischarge','','','Allows librarians to discharge borrowers and borrowers to request a discharge','YesNo'),
703
('useDischarge','','','Allows librarians to discharge borrowers and borrowers to request a discharge','YesNo'),
702
('UseEmailReceipts','0','','Send email receipts for payments and write-offs','YesNo'),
704
('UseEmailReceipts','0','','Send email receipts for payments and write-offs','YesNo'),
703
('UseICU','0','1','Tell Koha if ICU indexing is in use for Zebra or not.','YesNo'),
705
('UseICU','0','1','Tell Koha if ICU indexing is in use for Zebra or not.','YesNo'),
706
('UseRecalls','0',NULL,'Enable or disable recalls','YesNo'),
704
('UseTransportCostMatrix','0','','Use Transport Cost Matrix when filling holds','YesNo'),
707
('UseTransportCostMatrix','0','','Use Transport Cost Matrix when filling holds','YesNo'),
705
('UseWYSIWYGinSystemPreferences','0','','Show WYSIWYG editor when editing certain HTML system preferences.','YesNo'),
708
('UseWYSIWYGinSystemPreferences','0','','Show WYSIWYG editor when editing certain HTML system preferences.','YesNo'),
706
('viewISBD','1','','Allow display of ISBD view of bibiographic records','YesNo'),
709
('viewISBD','1','','Allow display of ISBD view of bibiographic records','YesNo'),
(-)a/installer/data/mysql/mandatory/userflags.sql (-1 / +2 lines)
Lines 23-27 INSERT INTO userflags (bit, flag, flagdesc, defaulton) VALUES Link Here
23
(23,'self_check','Self check modules',0),
23
(23,'self_check','Self check modules',0),
24
(24, 'stockrotation', 'Manage stockrotation operations', 0),
24
(24, 'stockrotation', 'Manage stockrotation operations', 0),
25
(25, 'cash_management', 'Cash management', 0),
25
(25, 'cash_management', 'Cash management', 0),
26
(26, 'problem_reports', 'Manage problem reports', 0)
26
(26, 'problem_reports', 'Manage problem reports', 0),
27
(27, 'recalls', 'Recalls', 0)
27
;
28
;
(-)a/installer/data/mysql/mandatory/userpermissions.sql (-1 / +2 lines)
Lines 135-139 INSERT INTO permissions (module_bit, code, description) VALUES Link Here
135
   (25, 'anonymous_refund', 'Perform refund actions from cash registers'),
135
   (25, 'anonymous_refund', 'Perform refund actions from cash registers'),
136
   (25, 'cashup', 'Perform cash register cashup action'),
136
   (25, 'cashup', 'Perform cash register cashup action'),
137
   (25, 'takepayment', 'Access the point of sale page and take payments'),
137
   (25, 'takepayment', 'Access the point of sale page and take payments'),
138
   (26, 'manage_problem_reports', 'Manage OPAC problem reports')
138
   (26, 'manage_problem_reports', 'Manage OPAC problem reports'),
139
   (27, 'manage_recalls', 'Manage recalls for patrons')
139
;
140
;
(-)a/installer/data/mysql/nb-NO/1-Obligatorisk/sample_notices.sql (-1 / +29 lines)
Lines 217-223 INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title` Link Here
217
('circulation', 'AR_PENDING', '', 'Article request - pending', 0, 'Article request received', 'Dear <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nWe have received your request for an article from <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n\r\n\r\nThank you!', 'email'),
217
('circulation', 'AR_PENDING', '', 'Article request - pending', 0, 'Article request received', 'Dear <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nWe have received your request for an article from <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n\r\n\r\nThank you!', 'email'),
218
('circulation', 'AR_SLIP', '', 'Article request - print slip', 0, 'Article request', 'Article request:\r\n\r\n<<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nTitle: <<biblio.title>>\r\nBarcode: <<items.barcode>>\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n', 'print'),
218
('circulation', 'AR_SLIP', '', 'Article request - print slip', 0, 'Article request', 'Article request:\r\n\r\n<<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nTitle: <<biblio.title>>\r\nBarcode: <<items.barcode>>\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n', 'print'),
219
('circulation', 'AR_PROCESSING', '', 'Article request - processing', 0, 'Article request processing', 'Dear <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nWe are now processing your request for an article from <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n\r\nThank you!', 'email'),
219
('circulation', 'AR_PROCESSING', '', 'Article request - processing', 0, 'Article request processing', 'Dear <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nWe are now processing your request for an article from <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n\r\nThank you!', 'email'),
220
('circulation', 'CHECKOUT_NOTE', '', 'Checkout note on item set by patron', '0', 'Checkout note', '<<borrowers.firstname>> <<borrowers.surname>> has added a note to the item <<biblio.title>> - <<biblio.author>> (<<biblio.biblionumber>>).','email');
220
('circulation', 'CHECKOUT_NOTE', '', 'Checkout note on item set by patron', '0', 'Checkout note', '<<borrowers.firstname>> <<borrowers.surname>> has added a note to the item <<biblio.title>> - <<biblio.author>> (<<biblio.biblionumber>>).','email'),
221
('circulation','RETURN_RECALLED_ITEM','','Notification to return a recalled item','0','Notification to return a recalled item','Date: <<today>>
222
223
<<borrowers.firstname>> <<borrowers.surname>>,
224
225
A recall has been placed on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>). The due date has been updated, and is now <<issues.date_due>>. Please return the item before the due date.
226
227
Thank you!','email'),
228
('circulation','PICKUP_RECALLED_ITEM','','Recalled item awaiting pickup','0','Recalled item awaiting pickup','Date: <<today>>
229
230
<<borrowers.firstname>> <<borrowers.surname>>,
231
232
A recall that you requested on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>) is now ready for you to pick up at <<recalls.branchcode>>. Please pick up your item by <<recalls.expirationdate>>.
233
234
Thank you!','email'),
235
('circulation','RECALL_REQUESTER_DET','','Details of patron who recalled item',0,'Date: <<today>>
236
237
Recall for pickup at <<branches.branchname>>
238
<<borrowers.surname>>, <<borrowers.firstname>> (<<borrowers.cardnumber>>)
239
<<borrowers.phone>>
240
<<borrowers.streetnumber>> <<borrowers.address>>, <<borrowers.address2>>, <<borrowers.city>> <<borrowers.zipcode>>
241
<<borrowers.email>>
242
243
ITEM RECALLED
244
<<biblio.title>> by <<biblio.author>>
245
Barcode: <<items.barcode>>
246
Callnumber: <<items.itemcallnumber>>
247
Waiting since: <<recalls.waitingdate>>
248
Notes: <<recalls.recallnotes>>', 'print');
221
249
222
INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title`, `content`, `message_transport_type`, `lang`) VALUES
250
INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title`, `content`, `message_transport_type`, `lang`) VALUES
223
('circulation', 'ACCOUNT_PAYMENT', '', 'Account payment', 0, 'Account payment', '[%- USE Price -%]\r\nA payment of [% credit.amount * -1 | $Price %] has been applied to your account.\r\n\r\nThis payment affected the following fees:\r\n[%- FOREACH o IN offsets %]\r\nDescription: [% o.debit.description %]\r\nAmount paid: [% o.amount * -1 | $Price %]\r\nAmount remaining: [% o.debit.amountoutstanding | $Price %]\r\n[% END %]', 'email', 'default'),
251
('circulation', 'ACCOUNT_PAYMENT', '', 'Account payment', 0, 'Account payment', '[%- USE Price -%]\r\nA payment of [% credit.amount * -1 | $Price %] has been applied to your account.\r\n\r\nThis payment affected the following fees:\r\n[%- FOREACH o IN offsets %]\r\nDescription: [% o.debit.description %]\r\nAmount paid: [% o.amount * -1 | $Price %]\r\nAmount remaining: [% o.debit.amountoutstanding | $Price %]\r\n[% END %]', 'email', 'default'),
(-)a/installer/data/mysql/pl-PL/mandatory/sample_notices.sql (-1 / +29 lines)
Lines 196-202 INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title` Link Here
196
('circulation', 'AR_PENDING', '', 'Article request - pending', 0, 'Article request received', 'Dear <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nWe have received your request for an article from <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n\r\n\r\nThank you!', 'email'),
196
('circulation', 'AR_PENDING', '', 'Article request - pending', 0, 'Article request received', 'Dear <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nWe have received your request for an article from <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n\r\n\r\nThank you!', 'email'),
197
('circulation', 'AR_SLIP', '', 'Article request - print slip', 0, 'Article request', 'Article request:\r\n\r\n<<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nTitle: <<biblio.title>>\r\nBarcode: <<items.barcode>>\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n', 'print'),
197
('circulation', 'AR_SLIP', '', 'Article request - print slip', 0, 'Article request', 'Article request:\r\n\r\n<<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nTitle: <<biblio.title>>\r\nBarcode: <<items.barcode>>\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n', 'print'),
198
('circulation', 'AR_PROCESSING', '', 'Article request - processing', 0, 'Article request processing', 'Dear <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nWe are now processing your request for an article from <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n\r\nThank you!', 'email'),
198
('circulation', 'AR_PROCESSING', '', 'Article request - processing', 0, 'Article request processing', 'Dear <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nWe are now processing your request for an article from <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n\r\nThank you!', 'email'),
199
('circulation', 'CHECKOUT_NOTE', '', 'Checkout note on item set by patron', '0', 'Checkout note', '<<borrowers.firstname>> <<borrowers.surname>> has added a note to the item <<biblio.title>> - <<biblio.author>> (<<biblio.biblionumber>>).','email');
199
('circulation', 'CHECKOUT_NOTE', '', 'Checkout note on item set by patron', '0', 'Checkout note', '<<borrowers.firstname>> <<borrowers.surname>> has added a note to the item <<biblio.title>> - <<biblio.author>> (<<biblio.biblionumber>>).','email'),
200
('circulation','RETURN_RECALLED_ITEM','','Notification to return a recalled item','0','Notification to return a recalled item','Date: <<today>>
201
202
<<borrowers.firstname>> <<borrowers.surname>>,
203
204
A recall has been placed on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>). The due date has been updated, and is now <<issues.date_due>>. Please return the item before the due date.
205
206
Thank you!','email'),
207
('circulation','PICKUP_RECALLED_ITEM','','Recalled item awaiting pickup','0','Recalled item awaiting pickup','Date: <<today>>
208
209
<<borrowers.firstname>> <<borrowers.surname>>,
210
211
A recall that you requested on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>) is now ready for you to pick up at <<recalls.branchcode>>. Please pick up your item by <<recalls.expirationdate>>.
212
213
Thank you!','email'),
214
('circulation','RECALL_REQUESTER_DET','','Details of patron who recalled item',0,'Date: <<today>>
215
216
Recall for pickup at <<branches.branchname>>
217
<<borrowers.surname>>, <<borrowers.firstname>> (<<borrowers.cardnumber>>)
218
<<borrowers.phone>>
219
<<borrowers.streetnumber>> <<borrowers.address>>, <<borrowers.address2>>, <<borrowers.city>> <<borrowers.zipcode>>
220
<<borrowers.email>>
221
222
ITEM RECALLED
223
<<biblio.title>> by <<biblio.author>>
224
Barcode: <<items.barcode>>
225
Callnumber: <<items.itemcallnumber>>
226
Waiting since: <<recalls.waitingdate>>
227
Notes: <<recalls.recallnotes>>', 'print');
200
228
201
INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title`, `content`, `message_transport_type`, `lang`) VALUES
229
INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title`, `content`, `message_transport_type`, `lang`) VALUES
202
('circulation', 'ACCOUNT_PAYMENT', '', 'Account payment', 0, 'Account payment', '[%- USE Price -%]\r\nA payment of [% credit.amount * -1 | $Price %] has been applied to your account.\r\n\r\nThis payment affected the following fees:\r\n[%- FOREACH o IN offsets %]\r\nDescription: [% o.debit.description %]\r\nAmount paid: [% o.amount * -1 | $Price %]\r\nAmount remaining: [% o.debit.amountoutstanding | $Price %]\r\n[% END %]', 'email', 'default'),
230
('circulation', 'ACCOUNT_PAYMENT', '', 'Account payment', 0, 'Account payment', '[%- USE Price -%]\r\nA payment of [% credit.amount * -1 | $Price %] has been applied to your account.\r\n\r\nThis payment affected the following fees:\r\n[%- FOREACH o IN offsets %]\r\nDescription: [% o.debit.description %]\r\nAmount paid: [% o.amount * -1 | $Price %]\r\nAmount remaining: [% o.debit.amountoutstanding | $Price %]\r\n[% END %]', 'email', 'default'),
(-)a/installer/data/mysql/ru-RU/mandatory/sample_notices.sql (-1 / +29 lines)
Lines 198-204 INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title` Link Here
198
('circulation', 'AR_PENDING', '', 'Article request - pending', 0, 'Article request received', 'Dear <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nWe have received your request for an article from <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n\r\n\r\nThank you!', 'email'),
198
('circulation', 'AR_PENDING', '', 'Article request - pending', 0, 'Article request received', 'Dear <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\nWe have received your request for an article from <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n\r\n\r\nThank you!', 'email'),
199
('circulation', 'AR_SLIP', '', 'Article request - print slip', 0, 'Article request', 'Article request:\r\n\r\n<<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nTitle: <<biblio.title>>\r\nBarcode: <<items.barcode>>\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n', 'print'),
199
('circulation', 'AR_SLIP', '', 'Article request - print slip', 0, 'Article request', 'Article request:\r\n\r\n<<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nTitle: <<biblio.title>>\r\nBarcode: <<items.barcode>>\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n', 'print'),
200
('circulation', 'AR_PROCESSING', '', 'Article request - processing', 0, 'Article request processing', 'Dear <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nWe are now processing your request for an article from <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n\r\nThank you!', 'email'),
200
('circulation', 'AR_PROCESSING', '', 'Article request - processing', 0, 'Article request processing', 'Dear <<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>),\r\n\r\nWe are now processing your request for an article from <<biblio.title>> (<<items.barcode>>).\r\n\r\nArticle requested:\r\nTitle: <<article_requests.title>>\r\nAuthor: <<article_requests.author>>\r\nVolume: <<article_requests.volume>>\r\nIssue: <<article_requests.issue>>\r\nDate: <<article_requests.date>>\r\nPages: <<article_requests.pages>>\r\nChapters: <<article_requests.chapters>>\r\nNotes: <<article_requests.patron_notes>>\r\n\r\nThank you!', 'email'),
201
('circulation', 'CHECKOUT_NOTE', '', 'Checkout note on item set by patron', '0', 'Checkout note', '<<borrowers.firstname>> <<borrowers.surname>> has added a note to the item <<biblio.title>> - <<biblio.author>> (<<biblio.biblionumber>>).','email');
201
('circulation', 'CHECKOUT_NOTE', '', 'Checkout note on item set by patron', '0', 'Checkout note', '<<borrowers.firstname>> <<borrowers.surname>> has added a note to the item <<biblio.title>> - <<biblio.author>> (<<biblio.biblionumber>>).','email'),
202
('circulation','RETURN_RECALLED_ITEM','','Notification to return a recalled item','0','Notification to return a recalled item','Date: <<today>>
203
204
<<borrowers.firstname>> <<borrowers.surname>>,
205
206
A recall has been placed on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>). The due date has been updated, and is now <<issues.date_due>>. Please return the item before the due date.
207
208
Thank you!','email'),
209
('circulation','PICKUP_RECALLED_ITEM','','Recalled item awaiting pickup','0','Recalled item awaiting pickup','Date: <<today>>
210
211
<<borrowers.firstname>> <<borrowers.surname>>,
212
213
A recall that you requested on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>) is now ready for you to pick up at <<recalls.branchcode>>. Please pick up your item by <<recalls.expirationdate>>.
214
215
Thank you!','email'),
216
('circulation','RECALL_REQUESTER_DET','','Details of patron who recalled item',0,'Date: <<today>>
217
218
Recall for pickup at <<branches.branchname>>
219
<<borrowers.surname>>, <<borrowers.firstname>> (<<borrowers.cardnumber>>)
220
<<borrowers.phone>>
221
<<borrowers.streetnumber>> <<borrowers.address>>, <<borrowers.address2>>, <<borrowers.city>> <<borrowers.zipcode>>
222
<<borrowers.email>>
223
224
ITEM RECALLED
225
<<biblio.title>> by <<biblio.author>>
226
Barcode: <<items.barcode>>
227
Callnumber: <<items.itemcallnumber>>
228
Waiting since: <<recalls.waitingdate>>
229
Notes: <<recalls.recallnotes>>', 'print');
202
230
203
INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title`, `content`, `message_transport_type`, `lang`) VALUES
231
INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title`, `content`, `message_transport_type`, `lang`) VALUES
204
('circulation', 'ACCOUNT_PAYMENT', '', 'Account payment', 0, 'Account payment', '[%- USE Price -%]\r\nA payment of [% credit.amount * -1 | $Price %] has been applied to your account.\r\n\r\nThis payment affected the following fees:\r\n[%- FOREACH o IN offsets %]\r\nDescription: [% o.debit.description %]\r\nAmount paid: [% o.amount * -1 | $Price %]\r\nAmount remaining: [% o.debit.amountoutstanding | $Price %]\r\n[% END %]', 'email', 'default'),
232
('circulation', 'ACCOUNT_PAYMENT', '', 'Account payment', 0, 'Account payment', '[%- USE Price -%]\r\nA payment of [% credit.amount * -1 | $Price %] has been applied to your account.\r\n\r\nThis payment affected the following fees:\r\n[%- FOREACH o IN offsets %]\r\nDescription: [% o.debit.description %]\r\nAmount paid: [% o.amount * -1 | $Price %]\r\nAmount remaining: [% o.debit.amountoutstanding | $Price %]\r\n[% END %]', 'email', 'default'),
(-)a/installer/data/mysql/uk-UA/mandatory/sample_notices.sql (-1 / +33 lines)
Lines 289-295 INSERT INTO `letter` (module, code, branchcode, name, is_html, title, content, m Link Here
289
 ('circulation', 'AR_PROCESSING', '', 'запит статті - обробка', 0, 'Обробка запиту статті', '<<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\n Ми зараз обробляємо Ваш запит на статтю зі „<<biblio.title>>“ (<<items.barcode>>).\r\n\r\n Запитувана стаття:\r\n Заголовок: <<article_requests.title>>\r\n Автор: <<article_requests.author>>\r\n Том: <<article_requests.volume>>\r\n Випуск: <<article_requests.issue>>\r\n Дата: <<article_requests.date>>\r\n Сторінки: <<article_requests.pages>>\r\n Розділи: <<article_requests.chapters>>\r\n Примітки: <<article_requests.patron_notes>>\r\n\r\n Спасибі!',
289
 ('circulation', 'AR_PROCESSING', '', 'запит статті - обробка', 0, 'Обробка запиту статті', '<<borrowers.firstname>> <<borrowers.surname>> (<<borrowers.cardnumber>>)\r\n\r\n Ми зараз обробляємо Ваш запит на статтю зі „<<biblio.title>>“ (<<items.barcode>>).\r\n\r\n Запитувана стаття:\r\n Заголовок: <<article_requests.title>>\r\n Автор: <<article_requests.author>>\r\n Том: <<article_requests.volume>>\r\n Випуск: <<article_requests.issue>>\r\n Дата: <<article_requests.date>>\r\n Сторінки: <<article_requests.pages>>\r\n Розділи: <<article_requests.chapters>>\r\n Примітки: <<article_requests.patron_notes>>\r\n\r\n Спасибі!',
290
 'email'),
290
 'email'),
291
291
292
('circulation', 'CHECKOUT_NOTE', '', 'Checkout note on item set by patron', '0', 'Checkout note', '<<borrowers.firstname>> <<borrowers.surname>> has added a note to the item <<biblio.title>> - <<biblio.author>> (<<biblio.biblionumber>>).','email');
292
('circulation', 'CHECKOUT_NOTE', '', 'Checkout note on item set by patron', '0', 'Checkout note', '<<borrowers.firstname>> <<borrowers.surname>> has added a note to the item <<biblio.title>> - <<biblio.author>> (<<biblio.biblionumber>>).','email'),
293
294
('circulation','RETURN_RECALLED_ITEM','','Notification to return a recalled item','0','Notification to return a recalled item','Date: <<today>>
295
296
<<borrowers.firstname>> <<borrowers.surname>>,
297
298
A recall has been placed on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>). The due date has been updated, and is now <<issues.date_due>>. Please return the item before the due date.
299
300
Thank you!','email'),
301
302
('circulation','PICKUP_RECALLED_ITEM','','Recalled item awaiting pickup','0','Recalled item awaiting pickup','Date: <<today>>
303
304
<<borrowers.firstname>> <<borrowers.surname>>,
305
306
A recall that you requested on the following item: <<biblio.title>> / <<biblio.author>> (<<items.barcode>>) is now ready for you to pick up at <<recalls.branchcode>>. Please pick up your item by <<recalls.expirationdate>>.
307
308
Thank you!','email'),
309
310
('circulation','RECALL_REQUESTER_DET','','Details of patron who recalled item',0,'Date: <<today>>
311
312
Recall for pickup at <<branches.branchname>>
313
<<borrowers.surname>>, <<borrowers.firstname>> (<<borrowers.cardnumber>>)
314
<<borrowers.phone>>
315
<<borrowers.streetnumber>> <<borrowers.address>>, <<borrowers.address2>>, <<borrowers.city>> <<borrowers.zipcode>>
316
<<borrowers.email>>
317
318
ITEM RECALLED
319
<<biblio.title>> by <<biblio.author>>
320
Barcode: <<items.barcode>>
321
Callnumber: <<items.itemcallnumber>>
322
Waiting since: <<recalls.waitingdate>>
323
Notes: <<recalls.recallnotes>>', 'print')
324
;
293
325
294
INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title`, `content`, `message_transport_type`, `lang`) VALUES
326
INSERT INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title`, `content`, `message_transport_type`, `lang`) VALUES
295
('circulation', 'ACCOUNT_PAYMENT', '', 'Account payment', 0, 'Account payment', '[%- USE Price -%]\r\nA payment of [% credit.amount * -1 | $Price %] has been applied to your account.\r\n\r\nThis payment affected the following fees:\r\n[%- FOREACH o IN offsets %]\r\nDescription: [% o.debit.description %]\r\nAmount paid: [% o.amount * -1 | $Price %]\r\nAmount remaining: [% o.debit.amountoutstanding | $Price %]\r\n[% END %]', 'email', 'default'),
327
('circulation', 'ACCOUNT_PAYMENT', '', 'Account payment', 0, 'Account payment', '[%- USE Price -%]\r\nA payment of [% credit.amount * -1 | $Price %] has been applied to your account.\r\n\r\nThis payment affected the following fees:\r\n[%- FOREACH o IN offsets %]\r\nDescription: [% o.debit.description %]\r\nAmount paid: [% o.amount * -1 | $Price %]\r\nAmount remaining: [% o.debit.amountoutstanding | $Price %]\r\n[% END %]', 'email', 'default'),
(-)a/installer/onboarding.pl (+6 lines)
Lines 287-292 if ( $step == 5 ) { Link Here
287
                rentaldiscount                   => 0,
287
                rentaldiscount                   => 0,
288
                reservesallowed                  => $reservesallowed,
288
                reservesallowed                  => $reservesallowed,
289
                suspension_chargeperiod          => undef,
289
                suspension_chargeperiod          => undef,
290
                recalls_allowed                  => undef,
291
                recalls_per_record               => undef,
292
                on_shelf_recalls                 => undef,
293
                recall_due_date_interval         => undef,
294
                recall_overdue_fine              => undef,
295
                recall_shelf_time                => undef,
290
              }
296
              }
291
        };
297
        };
292
298
(-)a/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc (+9 lines)
Lines 75-80 Link Here
75
    [%- CASE 'problem_reports' -%]
75
    [%- CASE 'problem_reports' -%]
76
        <span class="main_permission problem_reports_permission">OPAC problem reports management</span>
76
        <span class="main_permission problem_reports_permission">OPAC problem reports management</span>
77
        <span class="permissioncode">([% name | html %])</span>
77
        <span class="permissioncode">([% name | html %])</span>
78
    [%- CASE 'recalls' -%]
79
        <span class="main_permission recalls_permission">Recalls</span>
80
        <span class="permissioncode">([% name | html %])</span>
78
    [%- END -%]
81
    [%- END -%]
79
[%- END -%]
82
[%- END -%]
80
83
Lines 773-777 Link Here
773
            Manage OPAC problem reports
776
            Manage OPAC problem reports
774
        </span>
777
        </span>
775
        <span class="permissioncode">([% name | html %])</span>
778
        <span class="permissioncode">([% name | html %])</span>
779
  [%# recalls %]
780
    [%- CASE 'manage_recalls' -%]
781
        <span class="sub_permission place_recalls_subpermission">
782
            Manage recalls for patrons
783
        </span>
784
        <span class="permissioncode">([% name | html %])</span>
776
  [%- END -%]
785
  [%- END -%]
777
[%- END -%]
786
[%- END -%]
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref (+12 lines)
Lines 1202-1204 Circulation: Link Here
1202
            - pref: ClaimReturnedWarningThreshold
1202
            - pref: ClaimReturnedWarningThreshold
1203
              class: integer
1203
              class: integer
1204
            - items.
1204
            - items.
1205
    Recalls:
1206
        -
1207
            - Mark a recall as problematic if it has been waiting to be picked up for
1208
            - pref: RecallsMaxPickUpDelay
1209
            - class: integer
1210
            - days.
1211
        -
1212
            - pref: UseRecalls
1213
              choices:
1214
                  yes: Use
1215
                  no: "Don't use"
1216
            - recalls. Make sure you configure <a href="/cgi-bin/koha/admin/smart-rules.pl">circulation and fines rules</a> for recalls once enabled.
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/logs.pref (+6 lines)
Lines 90-95 Logging: Link Here
90
                  on: Log
90
                  on: Log
91
                  off: "Don't log"
91
                  off: "Don't log"
92
            - " successful authentications."
92
            - " successful authentications."
93
        -
94
            - pref: RecallsLog
95
              choices:
96
                  on: Log
97
                  off: "Don't log"
98
            - any actions on recalls (create, cancel, expire, fulfill).
93
99
94
    Debugging:
100
    Debugging:
95
        -
101
        -
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt (-2 / +50 lines)
Lines 124-129 Link Here
124
                <th>OPAC item level holds</th>
124
                <th>OPAC item level holds</th>
125
                <th>Article requests</th>
125
                <th>Article requests</th>
126
                <th>Rental discount (%)</th>
126
                <th>Rental discount (%)</th>
127
                [% IF Koha.Preference('UseRecalls') %]
128
                    <th>Recalls allowed (total)</th>
129
                    <th>Recalls per record (count)</th>
130
                    <th>On shelf recalls allowed</th>
131
                    <th>Recall due date interval (day)</th>
132
                    <th>Recall overdue fine amount</th>
133
                    <th>Recall pickup period (day)</th>
134
                [% END %]
127
                <th>Actions</th>
135
                <th>Actions</th>
128
            </tr>
136
            </tr>
129
            </thead>
137
            </thead>
Lines 163-170 Link Here
163
                        [% SET opacitemholds = all_rules.$c.$i.opacitemholds %]
171
                        [% SET opacitemholds = all_rules.$c.$i.opacitemholds %]
164
                        [% SET article_requests = all_rules.$c.$i.article_requests %]
172
                        [% SET article_requests = all_rules.$c.$i.article_requests %]
165
                        [% SET rentaldiscount = all_rules.$c.$i.rentaldiscount %]
173
                        [% SET rentaldiscount = all_rules.$c.$i.rentaldiscount %]
174
                        [% SET recalls_allowed = all_rules.$c.$i.recalls_allowed %]
175
                        [% SET recalls_per_record = all_rules.$c.$i.recalls_per_record %]
176
                        [% SET on_shelf_recalls = all_rules.$c.$i.on_shelf_recalls %]
177
                        [% SET recall_due_date_interval = all_rules.$c.$i.recall_due_date_interval %]
178
                        [% SET recall_overdue_fine = all_rules.$c.$i.recall_overdue_fine %]
179
                        [% SET recall_shelf_time = all_rules.$c.$i.recall_shelf_time %]
166
180
167
                        [% SET show_rule = note || maxissueqty || maxonsiteissueqty || issuelength || daysmode || lengthunit || hardduedate || hardduedatecompare || fine || chargeperiod || chargeperiod_charge_at || firstremind || overduefinescap || cap_fine_to_replacement_price || finedays || maxsuspensiondays || suspension_chargeperiod || renewalsallowed || renewalperiod || norenewalbefore || auto_renew || no_auto_renewal_after || no_auto_renewal_after_hard_limit || reservesallowed || holds_per_day || holds_per_record || onshelfholds || opacitemholds || article_requests || rentaldiscount %]
181
                        [% SET show_rule = note || maxissueqty || maxonsiteissueqty || issuelength || daysmode || lengthunit || hardduedate || hardduedatecompare || fine || chargeperiod || chargeperiod_charge_at || firstremind || overduefinescap || cap_fine_to_replacement_price || finedays || maxsuspensiondays || suspension_chargeperiod || renewalsallowed || renewalperiod || norenewalbefore || auto_renew || no_auto_renewal_after || no_auto_renewal_after_hard_limit || reservesallowed || holds_per_day || holds_per_record || onshelfholds || opacitemholds || article_requests || rentaldiscount || recalls_allowed || recalls_per_record || on_shelf_recalls || recall_due_date_interval || recall_overdue_fine || recall_shelf_time %]
168
                        [% IF show_rule %]
182
                        [% IF show_rule %]
169
                            [% SET row_count = row_count + 1 %]
183
                            [% SET row_count = row_count + 1 %]
170
                            <tr row_countd="row_[% row_count | html %]">
184
                            <tr row_countd="row_[% row_count | html %]">
Lines 320-325 Link Here
320
                                        [% END %]
334
                                        [% END %]
321
                                    </td>
335
                                    </td>
322
                                    <td>[% rentaldiscount | html %]</td>
336
                                    <td>[% rentaldiscount | html %]</td>
337
                                    [% IF Koha.Preference('UseRecalls') %]
338
                                        <td>[% recalls_allowed | html %]</td>
339
                                        <td>[% recalls_per_record | html %]</td>
340
                                        <td>
341
                                            [% IF on_shelf_recalls == 'all' %]
342
                                                <span>If all unavailable</span>
343
                                            [% ELSE %]
344
                                                <span>If any unavailable</span>
345
                                            [% END %]
346
                                        </td>
347
                                        <td>[% recall_due_date_interval | html %]</td>
348
                                        <td>[% recall_overdue_fine FILTER format("%.2f") %]</td>
349
                                        <td>[% recall_shelf_time | html %]</td>
350
                                    [% END %]
323
                                    <td class="actions">
351
                                    <td class="actions">
324
                                      <a href="#" class="editrule btn btn-default btn-xs"><i class="fa fa-pencil"></i> Edit</a>
352
                                      <a href="#" class="editrule btn btn-default btn-xs"><i class="fa fa-pencil"></i> Edit</a>
325
                                      <a class="btn btn-default btn-xs delete" href="/cgi-bin/koha/admin/smart-rules.pl?op=delete&amp;itemtype=[% i || '*' | uri %]&amp;categorycode=[% c || '*' | uri %]&amp;branch=[% current_branch | uri %]"><i class="fa fa-trash"></i> Delete</a>
353
                                      <a class="btn btn-default btn-xs delete" href="/cgi-bin/koha/admin/smart-rules.pl?op=delete&amp;itemtype=[% i || '*' | uri %]&amp;categorycode=[% c || '*' | uri %]&amp;branch=[% current_branch | uri %]"><i class="fa fa-trash"></i> Delete</a>
Lines 445-450 Link Here
445
                        </select>
473
                        </select>
446
                    </td>
474
                    </td>
447
                    <td><input type="text" name="rentaldiscount" id="rentaldiscount" size="2" /></td>
475
                    <td><input type="text" name="rentaldiscount" id="rentaldiscount" size="2" /></td>
476
                    [% IF Koha.Preference('UseRecalls') %]
477
                        <td><input type="text" name="recalls_allowed" id="recalls_allowed" size="3"></td>
478
                        <td><input type="text" name="recalls_per_record" id="recalls_per_record" size="3"></td>
479
                        <td>
480
                            <select name="on_shelf_recalls" id="on_shelf_recalls">
481
                                <option value="any">If any unavailable</option>
482
                                <option value="all">If all unavailable</option>
483
                            </select>
484
                        </td>
485
                        <td><input type="text" name="recall_due_date_interval" id="recall_due_date_interval" size="3"></td>
486
                        <td><input type="text" name="recall_overdue_fine" id="recall_overdue_fine" size="6"></td>
487
                        <td><input type="text" name="recall_shelf_time" id="recall_shelf_time" size="3"></td>
488
                    [% END %]
448
                    <td class="actions">
489
                    <td class="actions">
449
                        <input type="hidden" name="branch" value="[% current_branch | html %]"/>
490
                        <input type="hidden" name="branch" value="[% current_branch | html %]"/>
450
                        <button type="submit" class="btn btn-default btn-xs"><i class="fa fa-save"></i> Save</button>
491
                        <button type="submit" class="btn btn-default btn-xs"><i class="fa fa-save"></i> Save</button>
Lines 487-492 Link Here
487
                      <th>OPAC item level holds</th>
528
                      <th>OPAC item level holds</th>
488
                      <th>Article requests</th>
529
                      <th>Article requests</th>
489
                      <th>Rental discount (%)</th>
530
                      <th>Rental discount (%)</th>
531
                      [% IF Koha.Preference('UseRecalls') %]
532
                        <th>Recalls allowed (total)</th>
533
                        <th>Recalls per record (count)</th>
534
                        <th>On shelf recalls allowed</th>
535
                        <th>Recall due date interval (day)</th>
536
                        <th>Recall overdue fine amount</th>
537
                        <th>Recall pickup period (day)</th>
538
                      [% END %]
490
                      <th>&nbsp;</th>
539
                      <th>&nbsp;</th>
491
                    </tr>
540
                    </tr>
492
                  </tfoot>
541
                  </tfoot>
493
- 

Return to bug 19532