|
Lines 308-459
Link Here
|
| 308 |
<div class="container-fluid"> |
308 |
<div class="container-fluid"> |
| 309 |
<div class="row"> |
309 |
<div class="row"> |
| 310 |
<div class="col order-first order-md-first order-lg-2"> |
310 |
<div class="col order-first order-md-first order-lg-2"> |
| 311 |
<ul class="nav nav-tabs" role="tablist"> |
311 |
[% WRAPPER tabs %] |
| 312 |
<li class="nav-item" role="presentation"> |
312 |
[% WRAPPER tabs_nav %] |
| 313 |
<a class="nav-link active" href="#checkouts-tab" id="checkouts" aria-controls="home" aria-selected="true" data-bs-toggle="tab">Checkouts ([% issues_count | html %])</a> |
313 |
[% WRAPPER tab_item tabname= "checkouts" bt_active= 1 %] |
| 314 |
</li> |
314 |
<span>Checkouts ([% issues_count | html %])</span> |
| 315 |
<li class="nav-item" role="presentation"> |
315 |
[% END %] |
| 316 |
<a class="nav-link" href="#holds-tab" id="holds" aria-controls="home" aria-selected="false" data-bs-toggle="tab"> |
316 |
[% WRAPPER tab_item tabname= "holds" %] |
| 317 |
[% IF waiting_holds_count %] |
317 |
[% IF waiting_holds_count %] |
| 318 |
<i class="fa fa-exclamation-circle" aria-hidden="true"></i> |
318 |
<i class="fa fa-exclamation-circle" aria-hidden="true"></i> |
| 319 |
[% END %] |
319 |
[% END %] |
| 320 |
Holds ([% HOLDS.count | html %]) |
320 |
<span>Holds</span> ([% HOLDS.count | html %]) |
| 321 |
</a> |
321 |
[% END %] |
| 322 |
</li> |
322 |
[% WRAPPER tab_item tabname= "account" %] |
| 323 |
<li class="nav-item" role="presentation"> |
323 |
<span>Charges ([% total | $Price %])</span> |
| 324 |
<a class="nav-link" href="#account-tab" id="account" aria-controls="home" aria-selected="false" data-bs-toggle="tab">Charges ([% total | $Price %])</a> |
324 |
[% END %] |
| 325 |
</li> |
325 |
[% END # /WRAPPER tabs_nav %] |
| 326 |
</ul> |
326 |
|
| 327 |
<div class="tab-content"> |
327 |
[% WRAPPER tab_panels %] |
| 328 |
<div id="checkouts-tab" class="tab-pane show active" aria-labelledby="checkouts"> |
328 |
[% WRAPPER tab_panel tabname="checkouts" bt_active= 1 %] |
| 329 |
<div id="borrowerdetails"> |
329 |
<div id="checkouts-tab" class="tab-pane show active" aria-labelledby="checkouts"> |
| 330 |
[% IF ( new_issue ) %] |
330 |
<div id="borrowerdetails"> |
| 331 |
<div class="lastchecked"> |
331 |
[% IF ( new_issue ) %] |
| 332 |
<p> |
332 |
<div class="lastchecked"> |
| 333 |
<strong>Checked out: </strong> |
333 |
<p> |
| 334 |
[% new_issue.item.biblio.title | html %] ([% new_issue.item.barcode | html %]). |
334 |
<strong>Checked out: </strong> |
| 335 |
|
335 |
[% new_issue.item.biblio.title | html %] ([% new_issue.item.barcode | html %]). |
| 336 |
[% IF new_issue.item.is_bundle %] |
336 |
|
| 337 |
[% SET bundle_items_count = new_issue.item.bundle_items.count %] |
337 |
[% IF new_issue.item.is_bundle %] |
| 338 |
[% tnx('Bundle of {count} item', 'Bundle of {count} items', bundle_items_count, { count = bundle_items_count }) | html %]. |
338 |
[% SET bundle_items_count = new_issue.item.bundle_items.count %] |
| 339 |
[% END %] |
339 |
[% tnx('Bundle of {count} item', 'Bundle of {count} items', bundle_items_count, { count = bundle_items_count }) | html %]. |
|
|
340 |
[% END %] |
| 340 |
|
341 |
|
| 341 |
Due on [% new_issue.date_due | $KohaDates as_due_date => 1 %] |
342 |
Due on [% new_issue.date_due | $KohaDates as_due_date => 1 %] |
| 342 |
</p> |
343 |
</p> |
| 343 |
</div> |
344 |
</div> |
| 344 |
[% END %] |
345 |
[% END %] |
| 345 |
[% IF ( issues_count ) %] |
346 |
[% IF ( issues_count ) %] |
| 346 |
[% IF ( Koha.Preference('SCOLoadCheckoutsByDefault') || load_checkouts ) %] |
347 |
[% IF ( Koha.Preference('SCOLoadCheckoutsByDefault') || load_checkouts ) %] |
| 347 |
<table id="loanTable" class="table table-bordered table-striped"> |
348 |
<table id="loanTable" class="table table-bordered table-striped"> |
| 348 |
<caption>Checkouts for [% borrowername | html %] <span class="count">([% issues_count | html %] total)</span></caption> |
349 |
<caption>Checkouts for [% borrowername | html %] <span class="count">([% issues_count | html %] total)</span></caption> |
| 349 |
<!-- ISSUES TABLE ROWS --> |
350 |
<!-- ISSUES TABLE ROWS --> |
| 350 |
<thead> |
351 |
<thead> |
| 351 |
<tr> |
352 |
<tr> |
| 352 |
<th class="noshow">Checked out on</th> |
353 |
<th class="noshow">Checked out on</th> |
| 353 |
<th class="all anti-the">Title</th> |
354 |
<th class="all anti-the">Title</th> |
| 354 |
<th>Call number</th> |
355 |
<th>Call number</th> |
| 355 |
<th class="psort">Due</th> |
356 |
<th class="psort">Due</th> |
| 356 |
<th class="all nosort">Renew</th> |
357 |
<th class="all nosort">Renew</th> |
| 357 |
[% UNLESS ( nofines ) %] |
358 |
[% UNLESS ( nofines ) %] |
| 358 |
<th>Fines</th> |
359 |
<th>Fines</th> |
| 359 |
[% END %] |
|
|
| 360 |
<th></th> |
| 361 |
</tr> |
| 362 |
</thead> |
| 363 |
<tbody> |
| 364 |
[% FOREACH ISSUE IN ISSUES %] |
| 365 |
<tr> |
| 366 |
<td>[% ISSUE.issuedate | html %]</td> |
| 367 |
<td> |
| 368 |
[% UNLESS ( noitemlinks ) %] |
| 369 |
<a href="/cgi-bin/koha/opac-detail.pl?bib=[% ISSUE. biblionumber | uri %]">[% ISSUE.title | html %]</a> |
| 370 |
[% ELSE %] |
| 371 |
<strong>[% ISSUE.title | html %]</strong> |
| 372 |
[% END %] |
| 373 |
[% IF ( newissues.match(ISSUE.barcode)) %] |
| 374 |
<span class="badge text-bg-info">NEW</span> |
| 375 |
[% END %] |
360 |
[% END %] |
| 376 |
<span class="item-details">[% ISSUE.author | html %]</span> |
361 |
<th></th> |
| 377 |
([% ISSUE.barcode | html %]) |
362 |
</tr> |
| 378 |
</td> |
363 |
</thead> |
| 379 |
<td>[% ISSUE.itemcallnumber | html %]</td> |
364 |
<tbody> |
| 380 |
[% IF ( ISSUE.overdue ) %] |
365 |
[% FOREACH ISSUE IN ISSUES %] |
| 381 |
<td class="overdue" data-order="[% ISSUE.date_due | html %]"> |
366 |
<tr> |
| 382 |
[% ISSUE.date_due | $KohaDates as_due_date => 1 %] |
367 |
<td>[% ISSUE.issuedate | html %]</td> |
| 383 |
</td> |
368 |
<td> |
| 384 |
[% ELSE %] |
369 |
[% UNLESS ( noitemlinks ) %] |
| 385 |
<td data-order="[% ISSUE.date_due | html %]"> |
370 |
<a href="/cgi-bin/koha/opac-detail.pl?bib=[% ISSUE. biblionumber | uri %]">[% ISSUE.title | html %]</a> |
| 386 |
[% ISSUE.date_due | $KohaDates as_due_date => 1 %] |
|
|
| 387 |
</td> |
| 388 |
[% END %] |
| 389 |
<td> |
| 390 |
<form action="/cgi-bin/koha/sco/sco-main.pl" method="post"> |
| 391 |
[% INCLUDE 'csrf-token.inc' %] |
| 392 |
<legend class="sr-only">Issue renews</legend> |
| 393 |
<input type="hidden" name="patronid" value="[% patronid | html %]" /> |
| 394 |
<input type="hidden" name="load_checkouts" value="[% load_checkouts | html %]" /> |
| 395 |
<input type="hidden" name="barcode" value="[% ISSUE.barcode | html %]" /> |
| 396 |
<input type="hidden" name="newissues" value="[% newissues | html %]" /> |
| 397 |
[% IF ISSUE.can_be_renewed %] |
| 398 |
<input type="hidden" name="op" value="cud-renew" /> |
| 399 |
<input type="hidden" name="confirmed" value="1" /> |
| 400 |
[% UNLESS ( ISSUE.renew ) %] |
| 401 |
<input type="submit" value="Renew item" name="confirm " class="btn btn-primary btn-sm renew" /> |
| 402 |
[% ELSE %] |
371 |
[% ELSE %] |
| 403 |
<input type="submit" value="Renew item" class="btn btn-primary btn-sm renew" /> |
372 |
<strong>[% ISSUE.title | html %]</strong> |
| 404 |
[% END %] |
373 |
[% END %] |
| 405 |
[% ELSE %] |
374 |
[% IF ( newissues.match(ISSUE.barcode)) %] |
| 406 |
[% IF ISSUE.renew_error == 'onsite_checkout' %] |
375 |
<span class="badge text-bg-info">NEW</span> |
| 407 |
<span>This is a on-site checkout, it cannot be renewed.</span> |
|
|
| 408 |
[% ELSIF ISSUE.renew_error == 'too_unseen' %] |
| 409 |
<span>You have renewed this item the maximum number of consecutive times without it being seen by the library.</span> |
| 410 |
[% ELSIF ISSUE.renew_error == 'too_soon' %] |
| 411 |
<span>This item cannot yet be renewed.</span> |
| 412 |
[% ELSE %] |
| 413 |
<span>No renewals allowed</span> |
| 414 |
[% END %] |
| 415 |
[% IF Koha.Preference('SCOAllowCheckin') %] |
| 416 |
<div> |
| 417 |
<input type="submit" value="Check in item" name="confirm" class="btn btn-info btn-sm return" /> |
| 418 |
<input type="hidden" name="op" value="cud-returnbook" /> |
| 419 |
<input type="hidden" name="confirmed" value="" /> |
| 420 |
</div> |
| 421 |
[% END %] |
376 |
[% END %] |
|
|
377 |
<span class="item-details">[% ISSUE.author | html %]</span> |
| 378 |
([% ISSUE.barcode | html %]) |
| 379 |
</td> |
| 380 |
<td>[% ISSUE.itemcallnumber | html %]</td> |
| 381 |
[% IF ( ISSUE.overdue ) %] |
| 382 |
<td class="overdue" data-order="[% ISSUE.date_due | html %]"> |
| 383 |
[% ISSUE.date_due | $KohaDates as_due_date => 1 %] |
| 384 |
</td> |
| 385 |
[% ELSE %] |
| 386 |
<td data-order="[% ISSUE.date_due | html %]"> |
| 387 |
[% ISSUE.date_due | $KohaDates as_due_date => 1 %] |
| 388 |
</td> |
| 422 |
[% END %] |
389 |
[% END %] |
| 423 |
[% IF ISSUE.auto_renew %] |
390 |
<td> |
| 424 |
<br><span>This item is scheduled for automatic renewal</span> |
391 |
<form action="/cgi-bin/koha/sco/sco-main.pl" method="post"> |
|
|
392 |
[% INCLUDE 'csrf-token.inc' %] |
| 393 |
<legend class="sr-only">Issue renews</legend> |
| 394 |
<input type="hidden" name="patronid" value="[% patronid | html %]" /> |
| 395 |
<input type="hidden" name="load_checkouts" value="[% load_checkouts | html %]" /> |
| 396 |
<input type="hidden" name="barcode" value="[% ISSUE.barcode | html %]" /> |
| 397 |
<input type="hidden" name="newissues" value="[% newissues | html %]" /> |
| 398 |
[% IF ISSUE.can_be_renewed %] |
| 399 |
<input type="hidden" name="op" value="cud-renew" /> |
| 400 |
<input type="hidden" name="confirmed" value="1" /> |
| 401 |
[% UNLESS ( ISSUE.renew ) %] |
| 402 |
<input type="submit" value="Renew item" name="confirm " class="btn btn-primary btn-sm renew" /> |
| 403 |
[% ELSE %] |
| 404 |
<input type="submit" value="Renew item" class="btn btn-primary btn-sm renew" /> |
| 405 |
[% END %] |
| 406 |
[% ELSE %] |
| 407 |
[% IF ISSUE.renew_error == 'onsite_checkout' %] |
| 408 |
<span>This is a on-site checkout, it cannot be renewed.</span> |
| 409 |
[% ELSIF ISSUE.renew_error == 'too_unseen' %] |
| 410 |
<span>You have renewed this item the maximum number of consecutive times without it being seen by the library.</span> |
| 411 |
[% ELSIF ISSUE.renew_error == 'too_soon' %] |
| 412 |
<span>This item cannot yet be renewed.</span> |
| 413 |
[% ELSE %] |
| 414 |
<span>No renewals allowed</span> |
| 415 |
[% END %] |
| 416 |
[% IF Koha.Preference('SCOAllowCheckin') %] |
| 417 |
<div> |
| 418 |
<input type="submit" value="Check in item" name="confirm" class="btn btn-info btn-sm return" /> |
| 419 |
<input type="hidden" name="op" value="cud-returnbook" /> |
| 420 |
<input type="hidden" name="confirmed" value="" /> |
| 421 |
</div> |
| 422 |
[% END %] |
| 423 |
[% END %] |
| 424 |
[% IF ISSUE.auto_renew %] |
| 425 |
<br><span>This item is scheduled for automatic renewal</span> |
| 426 |
[% END %] |
| 427 |
</form> |
| 428 |
</td> |
| 429 |
[% UNLESS ( nofines ) %] |
| 430 |
<td> |
| 431 |
[% IF ( ISSUE.charges ) %]Yes[% ELSE %]No[% END %] |
| 432 |
</td> |
| 425 |
[% END %] |
433 |
[% END %] |
| 426 |
</form> |
434 |
<td></td> |
| 427 |
</td> |
435 |
</tr> |
| 428 |
[% UNLESS ( nofines ) %] |
436 |
[% END # / FOREACH ISSUE %] |
| 429 |
<td> |
437 |
</tbody> |
| 430 |
[% IF ( ISSUE.charges ) %]Yes[% ELSE %]No[% END %] |
438 |
</table> |
| 431 |
</td> |
439 |
[% ELSE %] |
| 432 |
[% END %] |
440 |
<a class="btn btn-secondary" href="?load_checkouts=1#scan_form"><i class="fa fa-book" aria-hidden="true"></i> Show your checkouts</a> |
| 433 |
<td></td> |
441 |
[% END # / IF ( Koha.preference('SCOLoadCheckoutsByDefault') || load_checkouts ) %] |
| 434 |
</tr> |
442 |
[% ELSE %] |
| 435 |
[% END # / FOREACH ISSUE %] |
443 |
<h3>You currently have nothing checked out.</h3> |
| 436 |
</tbody> |
444 |
[% END # / IF issues_count %] |
| 437 |
</table> |
445 |
</div> <!-- / #borrowerdetails --> |
| 438 |
[% ELSE %] |
446 |
</div> |
| 439 |
<a class="btn btn-secondary" href="?load_checkouts=1#scan_form"><i class="fa fa-book" aria-hidden="true"></i> Show your checkouts</a> |
447 |
[% END # /tab_panel %] |
| 440 |
[% END # / IF ( Koha.preference('SCOLoadCheckoutsByDefault') || load_checkouts ) %] |
448 |
[% WRAPPER tab_panel tabname="holds" %] |
|
|
449 |
[% IF HOLDS.count > 0 %] |
| 450 |
[% PROCESS 'holds-table.inc' HOLDS = HOLDS, SuspendHoldsOpac = SuspendHoldsOpac, showpriority = showpriority, AutoResumeSuspendedHolds = AutoResumeSuspendedHolds, onlyinfo = 'true' %] |
| 441 |
[% ELSE %] |
451 |
[% ELSE %] |
| 442 |
<h3>You currently have nothing checked out.</h3> |
452 |
<h3>You currently have no pending holds.</h3> |
| 443 |
[% END # / IF issues_count %] |
453 |
[% END %] |
| 444 |
</div> <!-- / #borrowerdetails --> |
454 |
[% END # /tab_panel %] |
| 445 |
</div> |
455 |
[% WRAPPER tab_panel tabname="account" %] |
| 446 |
<div id="holds-tab" class="tab-pane" role="tabpanel" aria-labelledby="holds"> |
456 |
[% PROCESS 'account-table.inc' %] |
| 447 |
[% IF HOLDS.count > 0 %] |
457 |
[% END # /tab_panel %] |
| 448 |
[% PROCESS 'holds-table.inc' HOLDS = HOLDS, SuspendHoldsOpac = SuspendHoldsOpac, showpriority = showpriority, AutoResumeSuspendedHolds = AutoResumeSuspendedHolds, onlyinfo = 'true' %] |
458 |
[% END # /WRAPPER tab_panels %] |
| 449 |
[% ELSE %] |
459 |
[% END # /WRAPPER tabs %] |
| 450 |
<h3>You currently have no pending holds.</h3> |
460 |
|
| 451 |
[% END %] |
461 |
|
| 452 |
</div> |
|
|
| 453 |
<div id="account-tab" class="tab-pane" role="tabpanel" aria-labelledby="account"> |
| 454 |
[% PROCESS 'account-table.inc' %] |
| 455 |
</div> |
| 456 |
</div> |
| 457 |
[% ELSE # IF validuser %] |
462 |
[% ELSE # IF validuser %] |
| 458 |
<div class="sco_entry" > |
463 |
<div class="sco_entry" > |
| 459 |
<form id="mainform" action="/cgi-bin/koha/sco/sco-main.pl" name="mainform" method="post"> |
464 |
<form id="mainform" action="/cgi-bin/koha/sco/sco-main.pl" name="mainform" method="post"> |
| 460 |
- |
|
|