Bugzilla – Attachment 85782 Details for
Bug 21757
Patron detail script (moremember.pl) cleanup
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 21757: Clenup of moremember.pl and its templates
Bug-21757-Clenup-of-morememberpl-and-its-templates.patch (text/plain), 36.93 KB, created by
Josef Moravec
on 2019-02-27 14:58:19 UTC
(
hide
)
Description:
Bug 21757: Clenup of moremember.pl and its templates
Filename:
MIME Type:
Creator:
Josef Moravec
Created:
2019-02-27 14:58:19 UTC
Size:
36.93 KB
patch
obsolete
>From 7a14ea41f3b0cfd0e9fef5ebe332427095152909 Mon Sep 17 00:00:00 2001 >From: Josef Moravec <josef.moravec@gmail.com> >Date: Fri, 2 Nov 2018 17:40:45 +0000 >Subject: [PATCH] Bug 21757: Clenup of moremember.pl and its templates > >This patch: > - removes unused templates > - use objects as much as possible > - remove many template params > >Test plan: >1) Apply the patch >2) Play with patron detail page and try to broke it anyhow ;) >- messaging preferences >- enhanced attributes >- guarantors and guarantees >- fines >- messages >- checkouts >- overdues >- use different date formats, price formats and address formats >- ... there is many thinks you could try with this one page ;) >--- > .../prog/en/includes/blocked-fines.inc | 4 +- > .../en/includes/checkouts-table-footer.inc | 10 +- > .../en/modules/members/moremember-brief.tt | 90 --------- > .../en/modules/members/moremember-print.tt | 159 ---------------- > .../en/modules/members/moremember-receipt.tt | 78 -------- > .../prog/en/modules/members/moremember.tt | 37 ++-- > members/moremember.pl | 175 ++---------------- > 7 files changed, 42 insertions(+), 511 deletions(-) > delete mode 100644 koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-brief.tt > delete mode 100644 koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-print.tt > delete mode 100644 koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-receipt.tt > >diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/blocked-fines.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/blocked-fines.inc >index 80b0514720..4bba7f7ba9 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/includes/blocked-fines.inc >+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/blocked-fines.inc >@@ -7,7 +7,7 @@ > [% IF !Koha.Preference('AllowFineOverride') && NoIssuesCharge && fines > NoIssuesCharge %] > <span class="circ-hlt">Checkouts are BLOCKED because fine balance is OVER THE LIMIT.</span> > [% END %] >- <a href="/cgi-bin/koha/members/pay.pl?borrowernumber=[% borrowernumber | uri %]" class="btn btn-default btn-xs" >Make payment</a> >- <a href="/cgi-bin/koha/members/paycollect.pl?borrowernumber=[% borrowernumber | uri %]" class="btn btn-default btn-xs" >Pay all fines</a></li> >+ <a href="/cgi-bin/koha/members/pay.pl?borrowernumber=[% patron.borrowernumber | uri %]" class="btn btn-default btn-xs" >Make payment</a> >+ <a href="/cgi-bin/koha/members/paycollect.pl?borrowernumber=[% patron.borrowernumber | uri %]" class="btn btn-default btn-xs" >Pay all fines</a></li> > </li> > [% END %] >diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table-footer.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table-footer.inc >index 40d2195e43..d605ad0c63 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table-footer.inc >+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table-footer.inc >@@ -1,11 +1,11 @@ > <tfoot> > <tr> >- <td colspan="13" style="text-align: right; font-weight:bold;">Totals:</td> >- <td id="totaldue" style="text-align: right;">[% totaldue | html %]</td> >- <td id="totalfine" style="text-align: right;">[% finetotal | html %]</td> >- <td id="totalprice" style="text-align: right;">[% totalprice | html %]</td> >+ <td colspan="14" style="text-align: right; font-weight:bold;">Totals:</td> >+ <td id="totaldue" style="text-align: right;"></td> >+ <td id="totalfine" style="text-align: right;"></td> >+ <td id="totalprice" style="text-align: right;"></td> > <td colspan="3"><div class="date-select"> >- <p><label for="newduedate">Renewal due date:</label> <input type="text" size="12" id="newduedate" name="newduedate" value="[% newduedate | html %]" /> >+ <p><label for="newduedate">Renewal due date:</label> <input type="text" size="12" id="newduedate" name="newduedate" value="" /> > </p> > <p><label for="exemptfine">Forgive fines on return: <input type="checkbox" id="exemptfine" name="exemptfine" value="1" /></label></p></div> > </td> >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-brief.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-brief.tt >deleted file mode 100644 >index dab14e5ede..0000000000 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-brief.tt >+++ /dev/null >@@ -1,90 +0,0 @@ >-[% USE Koha %] >-[% USE KohaDates %] >-[% SET footerjs = 1 %] >-[% INCLUDE 'doc-head-open.inc' %] >-<title>Koha › Check duplicate patron</title> >-[% INCLUDE 'doc-head-close.inc' %] >-</head> >- >-<body id="pat_moremember-brief" class="pat"> >- <div class="container-fluid"> >- <div class="row"> >- >- <div class="col-xs-12"> >- <h3>[% UNLESS ( I ) %] >- [% title | html %] [% firstname | html %] [% END %] [% surname | html %] ([% cardnumber | html %])</h3> >- </div> >- </div> >- <div class="row"> >- <div class="col-xs-6"> >- <div id="patron-information"> >- >- [% UNLESS ( I ) %][% IF ( othernames ) %]“[% othernames | html %]”[% END %] >- <div class = "address"> >- <ul> >- [% IF Koha.Preference( 'AddressFormat' ) %] >- [% INCLUDE "member-display-address-style-${ Koha.Preference( 'AddressFormat' ) }.inc" %] >- [% ELSE %] >- [% INCLUDE 'member-display-address-style-us.inc' %] >- [% END %] >- </ul> >- </div> >- <div class="rows"> >- <ol> >- [% IF ( phone ) %]<li><span class="label">Primary phone: </span>[% phone | html %]</li>[% END %] >- [% IF ( phonepro ) %]<li><span class="label">Secondary phone: </span>[% phonepro | html %]</li>[% END %] >- [% IF ( mobile ) %]<li><span class="label">Other phone: </span>[% mobile | html %]</li>[% END %] >- [% IF ( fax ) %]<li><span class="label">Fax: </span>[% fax | html %]</li>[% END %] >- [% IF ( email ) %]<li class="email"><span class="label">Primary email:</span><a href="mailto:[% email | uri %]">[% email | html %]</a></li>[% END %] >- [% IF ( emailpro ) %]<li class="email"><span class="label">Secondary email: </span><a href="mailto:[% emailpro | uri %]">[% emailpro | html %]</a></li>[% END %] >- [% UNLESS ( I ) %] >- [% IF ( inititals ) %]<li><span class="label">Initials: </span>[% initials | html %]</li>[% END %] >- [% IF ( dateofbirth ) %]<li><span class="label">Date of birth:</span>[% dateofbirth | $KohaDates %]</li>[% END %] >- [% IF ( sex ) %]<li><span class="label">Gender:</span>[% IF ( sex == 'F' ) %]Female[% ELSIF ( sex == 'M' ) %]Male[% ELSE %][% sex | html %][% END %]</li>[% END %][% END %] >- [% END %] >- [% IF ( isguarantee ) %] >- [% IF ( guaranteeloop ) %] >- <li><span class="label">Guarantees:</span><ul>[% FOREACH guaranteeloo IN guaranteeloop %]<li><a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% guaranteeloo.borrowernumber | uri %]">[% guaranteeloo.name | html %] </a></li>[% END %]</ul></li> >- [% END %] >- [% ELSE %] >- [% IF ( guarantor.borrowernumber ) %] >- <li><span class="label">Guarantor:</span><a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% guarantor.borrowernumber | uri %]">[% guarantor.surname | html %], [% guarantor.firstname | html %]</a></li> >- [% END %] >- [% END %] >- </ol> >- </div> >- </div> >- </div> >- >- <div class="col-xs-6"> >- <div id="patron-library-details"> >- <h3>Library use</h3> >- <div class="rows"> >- <ol> >- <li><span class="label">Card number: </span>[% cardnumber | html %]</li> >- <li><span class="label">Borrowernumber: </span> [% borrowernumber | html %]</li> >- <li><span class="label">Category: </span>[% categoryname | html %] ([% categorycode | html %])</li> >- <li><span class="label">Registration date: </span>[% dateenrolled | $KohaDates %]</li> >- <li><span class="label">Expiration date: </span> >- [% IF ( was_renewed ) %] >- <strong class="reregistrinfo">[% dateexpiry | $KohaDates %]</strong> >- [% ELSE %] >- [% dateexpiry | $KohaDates %] >- [% END %] >- </li> >- <li><span class="label">Library: </span>[% branchname | html %]</li> >- >- [% IF ( sort1 ) %]<li><span class="label">Sort field 1:</span>[% lib1 | html %]</li>[% END %] >- [% IF ( sort2 ) %]<li><span class="label">Sort field 2:</span>[% lib2 | html %]</li>[% END %] >- </ol> >- </div> >- </div> >- </div> >-</div> >-<div class="row"> >- <div class="col-xs-12"> >- <fieldset class="action"><input type="button" class="close" value="Close window" /></fieldset> >- </div> >-</div> >- >-[% INCLUDE 'intranet-bottom.inc' popup_window=1 %] >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-print.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-print.tt >deleted file mode 100644 >index 10ee5574e0..0000000000 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-print.tt >+++ /dev/null >@@ -1,159 +0,0 @@ >-[% USE Koha %] >-[% USE Branches %] >-[% USE KohaDates %] >-[% USE Price %] >-[% SET footerjs = 1 %] >- >-[% PROCESS 'accounts.inc' %] >- >-[% INCLUDE 'doc-head-open.inc' %] >- <title>Summary for [% patron.firstname | html %] [% patron.surname | html %] ([% patron.cardnumber | html %])</title> >- [% INCLUDE 'doc-head-close.inc' %] >-</head> >- >-<body id="pat_moremember-print" class="pat"> >- <div id="main"> >- <h3><a href="/cgi-bin/koha/circ/circulation.pl?findborrower=[% patron.cardnumber | uri %]">Account summary: [% patron.firstname | html %] [% patron.surname | html %] ([% patron.cardnumber | html %])</a></h3> >- >- <ul> >- [% IF Koha.Preference( 'AddressFormat' ) %] >- [% INCLUDE "member-display-address-style-${ Koha.Preference( 'AddressFormat' ) }.inc" %] >- [% ELSE %] >- [% INCLUDE 'member-display-address-style-us.inc' %] >- [% END %] >- <li>[% IF ( patron.phone ) %][% patron.phone | html %][% ELSE %](no phone number on file)[% END %]</li> >- <li>[% IF ( patron.email ) %][% patron.email | html %][% ELSE %](no primary email on file)[% END %]</li> >- [% IF ( patron.emailpro ) %] >- <li>[% patron.emailpro | html %]</li> >- [% END %] >- <li>Registration date: [% patron.dateenrolled | $KohaDates %]</li> >- <li>Expiration date: [% patron.dateexpiry | $KohaDates %]</li> >- <li>Library: [% Branches.GetName( patron.branchcode ) | html %]</li> >- <li>Category: [% patron.category.description | html %]</li> >- </ul> >- >- [% IF ( issues ) %] >- <table> >- <caption>Items checked out</caption> >- <tr> >- <th>Title</th> >- <th>Author</th> >- <th>Call no</th> >- <th>Item type</th> >- <th>Date due</th> >- <th>Barcode</th> >- <th>Charge</th> >- <th>Price</th> >- <th>Status</th> >- </tr> >- >- [% FOREACH issue IN issues %] >- [% IF ( issue.overdue ) %]<tr class="overdue">[% ELSE %]<tr>[% END %] >- <td> >- [% issue.title | html %] >- <a href="/cgi-bin/koha/catalogue/detail.pl?item=[% issue.itemnumber | uri %]&biblionumber=[% issue.biblionumber | uri %]&bi=[% issue.biblioitemnumber | uri %]"></a> >- </td> >- <td>[% issue.author | html %]</td> >- <td>[% issue.itemcallnumber | html %]</td> >- <td>[% issue.itemtype_description | html %]</td> >- <td>[% issue.date_due | $KohaDates as_due_date => 1 %]</td> >- <td>[% issue.barcode | html %]</td> >- <td>[% issue.charge | $Price %]</td> >- <td>[% issue.replacementprice | $Price %]</td> >- <td>[% IF ( issue.overdue ) %]Overdue![% ELSE %] [% END %]</td> >- </tr> >- [% END %] >- >- <tr> >- <td colspan="6" style="text-align: right; font-weight:bold;">Totals:</td> >- <td>[% totaldue | $Price %]</td> >- <td>[% totalprice | $Price %]</td> >- <td colspan="3"> </td> >- </tr> >- </table> >- [% END %] >- >- [% IF ( reserves ) %] >- <table> >- <caption>Pending holds</caption> >- <tr> >- <th>Title</th> >- <th>Author</th> >- <th>Placed on</th> >- <th>Expires on</th> >- <th>Pick up location</th> >- </tr> >- >- [% FOREACH reserve IN reserves %] >- <tr> >- <td>[% reserve.title | html %]</td> >- <td>[% reserve.author | html %]</td> >- <td>[% reserve.reservedate | $KohaDates %]</td> >- <td>[% reserve.expirationdate | $KohaDates %]</td> >- <td>[% reserve.waiting_at | html %]</td> >- </tr> >- [% END %] >- </table> >- [% END %] >- [% IF accounts && totaldue != 0 %] >- <table id="table_account_fines"> >- <caption>Account fines and payments</caption> >- <thead> >- <tr> >- <th>Date</th> >- <th>Description of charges</th> >- <th>Note</th> >- <th>Amount</th> >- <th>Outstanding</th> >- </tr> >- </thead> >- >- [% FOREACH account IN accounts %] >- <tr> >- <td>[% account.date | $KohaDates %]</td> >- <td> >- [% PROCESS account_type_description account=account %] >- [%- IF account.payment_type %] >- , [% AuthorisedValues.GetByCode('PAYMENT_TYPE', account.payment_type) | html %] >- [% END %] >- [%- IF account.description %] >- , [% account.description | html %] >- [% END %] >- >- [% IF ( account.itemnumber AND account.accounttype != 'F' AND account.accounttype != 'FU' ) %] >- <a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=[% account.item.biblionumber | uri %]&itemnumber=[% account.itemnumber | uri %]">[% account.item.biblio.title | html %]</a> >- [% END %] >- </td> >- <td> >- [% account.note | html_line_break %] >- </td> >- [% IF ( account.amount < 0 ) %] >- <td class="credit" style="text-align: right;"> >- [% ELSE %] >- <td class="debit" style="text-align: right;"> >- [% END %][% account.amount | $Price %] >- </td> >- [% IF ( account.amountoutstanding < 0 ) %] >- <td class="credit" style="text-align: right;"> >- [% ELSE %] >- <td class="debit" style="text-align: right;"> >- [% END %] >- [% account.amountoutstanding | $Price %] >- </td> >- </tr> >- [% END %] >- >- <tfoot> >- <tr> >- <td colspan="4">Total due</td> >- <td colspan="2" style="text-align:right;">[% totaldue | $Price %]</td> >- </tr> >- </tfoot> >- </table> >- [% END %] >- >-[% MACRO jsinclude BLOCK %] >- [% INCLUDE 'slip-print.inc' #printThenClose %] >-[% END %] >- >-[% INCLUDE 'intranet-bottom.inc' %] >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-receipt.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-receipt.tt >deleted file mode 100644 >index c645c55af1..0000000000 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-receipt.tt >+++ /dev/null >@@ -1,78 +0,0 @@ >-[% USE raw %] >-[% USE Asset %] >-[% USE Koha %] >-[% SET footerjs = 1 %] >-[% INCLUDE 'doc-head-open.inc' %] >-<title>Print Receipt for [% cardnumber | html %]</title> >-[% INCLUDE 'doc-head-close.inc' %] >-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> >-<link rel="shortcut icon" href="[% IF ( IntranetFavicon ) %][% IntranetFavicon | html %][% ELSE %][% interface | html %]/[% theme | html %]/img/favicon.ico[% END %]" type="image/x-icon" /> >-[% Asset.css("css/print.css") | $raw %] >-</head> >- >-<body id="pat_moremember-receipt" class="pat"> >- >-<div id="receipt"> >- >-<h3>[% LibraryName | html %]</h3> >-[% IF ( branchname ) %][% branchname | html %]<br />[% END %] >-Checked out to [% firstname | html %] [% surname | html %] <br /> >-(<a href="/cgi-bin/koha/circ/circulation.pl?findborrower=[% cardnumber | uri %]">[% cardnumber | html %]</a>)<br /> >- >-[% todaysdate | html %]<br /> >- >-[% IF ( quickslip ) %] >-<h4>Checked out today</h4> >-[% FOREACH issueloo IN issueloop %] >-[% IF ( issueloo.red ) %][% ELSE %] >-[% IF ( issueloo.today ) %] >-<p><a href="/cgi-bin/koha/catalogue/detail.pl?item=[% issueloo.itemnumber | uri %]&biblionumber=[% issueloo.biblionumber | uri %]&bi=[% issueloo.biblioitemnumber | uri %]">[% issueloo.title | html %]</a><br /> >-Barcode: [% issueloo.barcode | html %]<br /> >-Date due: [% issueloo.date_due | html %]<br /></p> >- [% END %] >- [% END %] >- [% END %] >- >-[% ELSE %] >-<h4>Checked out</h4> >-[% FOREACH issueloo IN issueloop %] >-[% IF ( issueloo.red ) %][% ELSE %] >-<p><a href="/cgi-bin/koha/catalogue/detail.pl?item=[% issueloo.itemnumber | uri %]&biblionumber=[% issueloo.biblionumber | uri %]&bi=[% issueloo.biblioitemnumber | uri %]">[% issueloo.title | html %]</a><br /> >-Barcode: [% issueloo.barcode | html %]<br /> >-Date due: [% issueloo.date_due | html %]<br /></p> >- [% END %] >- [% END %] >- >-[% END %] >- >-[% IF ( quickslip ) %] >-[% ELSE %] >-[% IF ( overdues_exist ) %] >-<h4>Overdues</h4> >- [% FOREACH issueloo IN issueloop %] >- [% IF ( issueloo.red ) %] >-<p><a href="/cgi-bin/koha/catalogue/detail.pl?item=[% issueloo.itemnumber | uri %]&biblionumber=[% issueloo.biblionumber | uri %]&bi=[% issueloo.biblioitemnumber | uri %]">[% issueloo.title | html %]</a><br /> >-Barcode: [% issueloo.barcode | html %]<br /> >-Date due: [% issueloo.date_due | html %]</p> >-[% END %] >-[% END %] >-[% END %] >-[% END %] >- >-[% IF ( koha_news_count ) %] >- <hr><h4 style="text-align: center; font-style:italic;">News</h4> >- <!-- [% koha_news_count | html %] recent news item(s) --> >- [% FOREACH koha_new IN koha_news %] >- <div class="newsitem" id="news[% koha_new.idnew | html %]"><h5 style="margin-bottom: 1px; margin-top: 1px"><b>[% koha_new.title | html %]</b></h5> >- <p style="margin-bottom: 1px; margin-top: 1px">[% koha_new.content | $raw %]</p> >- <p class="newsfooter" style="font-size: 8pt; font-style:italic; margin-bottom: 1px; margin-top: 1px"> Posted on [% koha_new.newdate | html %] >- >-</p><hr /></div> >- [% END %] >-[% END %] >- >-[% MACRO jsinclude BLOCK %] >- [% INCLUDE 'slip-print.inc' #printThenClose %] >-[% END %] >- >-[% INCLUDE 'intranet-bottom.inc' %] >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt >index 45277f61ed..d663058b9e 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt >@@ -5,6 +5,7 @@ > [% USE KohaDates %] > [% USE AuthorisedValues %] > [% USE ColumnsSettings %] >+[% USE Price %] > [% SET footerjs = 1 %] > [% INCLUDE 'doc-head-open.inc' %] > <title>Koha › Patrons › >@@ -95,7 +96,7 @@ > [% END %] > <i>"[% patron_message.message | html %]"</i> > </span> >- [% IF patron_message.branchcode == branchcode OR Koha.Preference('AllowAllMessageDeletion') %] >+ [% IF patron_message.branchcode == patron.branchcode OR Koha.Preference('AllowAllMessageDeletion') %] > <a class="btn btn-link btn-sm" href="/cgi-bin/koha/circ/del_message.pl?message_id=[% patron_message.message_id | html %]&borrowernumber=[% patron_message.borrowernumber | html %]&from=moremember" onclick="return confirm(MSG_CONFIRM_DELETE_MESSAGE);"><i class="fa fa-trash"></i> Delete</a> > [% END %] > </li> >@@ -108,18 +109,18 @@ > [% IF ( flagged ) %] > <div id="circmessages" class="circmessage attention"> > <ul> >- [% IF ( userdebarred ) %] >+ [% IF ( patron.is_debarred ) %] > <li class="blocker">Patron's account is restricted > [% IF ( userdebarreddate ) %] >- until [% userdebarreddate | html %] >+ until [% userdebarreddate | $KohaDates %] > [% END %] > >- [% IF ( debarredcomment ) %] >+ [% IF ( patron.debarredcomment ) %] > with the explanation: <i> >- [% IF debarredcomment.search('OVERDUES_PROCESS') %] >- Restriction added by overdues process [% debarredcomment.remove('OVERDUES_PROCESS ') | html_line_break %] >+ [% IF patron.debarredcomment.search('OVERDUES_PROCESS') %] >+ Restriction added by overdues process [% patron.debarredcomment.remove('OVERDUES_PROCESS ') | html_line_break %] > [% ELSE %] >- [% debarredcomment | html_line_break %] >+ [% patron.debarredcomment | html_line_break %] > [% END %] > </i> > [% END %] >@@ -232,7 +233,7 @@ > [% IF ( patron.dateofbirth ) %] > <li> > <span class="label">Date of birth:</span> >- [% patron.dateofbirth | $KohaDates %] ([% age | html %] years) >+ [% patron.dateofbirth | $KohaDates %] ([% patron.get_age | html %] years) > </li> > [% END %] > [% IF ( patron.sex ) %] >@@ -345,7 +346,7 @@ > </div> [% #/ div#houseboundroles %] > [% END %] > >- [% IF ( ExtendedPatronAttributes ) %] >+ [% IF Koha.Preference('ExtendedPatronAttributes') %] > [% UNLESS ( no_patron_attribute_types ) %] > <div id="patron-extended-attributes" class="patroninfo-section"> > [% IF ( attributes_loop ) %] >@@ -393,7 +394,7 @@ > <a class="btn btn-default btn-xs" href="memberentry.pl?op=modify&borrowernumber=[% patron.borrowernumber | html %]&step=5"><i class="fa fa-pencil"></i> Edit</a> > </div> > [% INCLUDE 'messaging-preference-form.inc' %] >- [% IF ( SMSSendDriver ) %] >+ [% IF Koha.Preference('SMSSendDriver') %] > <div class="rows"> > <ol> > <li> >@@ -460,15 +461,15 @@ > </li> > <li id="patron-branchname"> > <span class="label">Library: </span> >- [% branchname | html %] >+ [% Branches.GetName( patron.branchcode ) | html %] > </li> > >- [% IF ( OPACPrivacy ) %] >+ [% IF Koha.Preference( 'OPACPrivacy') %] > <li id="patron-privacypref"> > <span class="label">Privacy Pref:</span> >- [% IF ( privacy0 ) %]Forever[% END %] >- [% IF ( privacy1 ) %]Default[% END %] >- [% IF ( privacy2 ) %]Never[% END %] >+ [% IF ( patron.privacy == 0 ) %]Forever[% END %] >+ [% IF ( patron.privacy == 1 ) %]Default[% END %] >+ [% IF ( patron.privacy == 2 ) %]Never[% END %] > </li> > [% END %] > >@@ -672,7 +673,7 @@ > </li> > [% IF relatives_issues_count %] > <li> >- <a href="#relatives-issues" id="relatives-issues-tab">Relatives' checkouts</a> >+ <a href="#relatives-issues" id="relatives-issues-tab">[% relatives_issues_count | html %] Relatives' checkouts</a> > </li> > [% END %] > <li> >@@ -732,8 +733,8 @@ > [% END %] > > <div id="finesandcharges"> >- [% IF ( totaldue_raw ) %] >- <p>Total due: [% totaldue | html %]</p> >+ [% IF ( fines ) %] >+ <p>Total due: [% fines | $Price %]</p> > [% ELSE %] > <p>No outstanding charges</p> > [% END %] >diff --git a/members/moremember.pl b/members/moremember.pl >index faaa95e613..d68e6ef146 100755 >--- a/members/moremember.pl >+++ b/members/moremember.pl >@@ -22,98 +22,48 @@ > > =head1 moremember.pl > >- script to do a borrower enquiry/bring up borrower details etc >- Displays all the details about a borrower >- written 20/12/99 by chris@katipo.co.nz >- last modified 21/1/2000 by chris@katipo.co.nz >- modified 31/1/2001 by chris@katipo.co.nz >- to not allow items on request to be renewed >- >- needs html removed and to use the C4::Output more, but its tricky >+ script to do a borrower enquiry/bring up patron details etc >+ Displays all the details about a patron > > =cut > > use Modern::Perl; > use CGI qw ( -utf8 ); >-use HTML::Entities; > use C4::Context; > use C4::Auth; > use C4::Output; >-use C4::Members; >-use C4::Members::Attributes; > use C4::Members::AttributeTypes; >-use C4::Reserves; >-use C4::Circulation; >-use C4::Koha; >-use C4::Letters; >-use C4::Biblio; > use C4::Form::MessagingPreferences; > use List::MoreUtils qw/uniq/; > use C4::Members::Attributes qw(GetBorrowerAttributes); >-use Koha::Account::Lines; >-use Koha::AuthorisedValues; >-use Koha::CsvProfiles; > use Koha::Patron::Debarments qw(GetDebarments); > use Koha::Patron::Messages; >-#use Smart::Comments; >-#use Data::Dumper; >-use DateTime; > use Koha::DateUtils; >-use Koha::Database; >+use Koha::CsvProfiles; > use Koha::Patrons; >-use Koha::Patron::Categories; > use Koha::Token; >+use Koha::Checkouts; > > use vars qw($debug); > > BEGIN { >- $debug = $ENV{DEBUG} || 0; >+ $debug = $ENV{DEBUG} || 0; > } > >-my $dbh = C4::Context->dbh; >- > my $input = CGI->new; > $debug or $debug = $input->param('debug') || 0; >-my $print = $input->param('print'); >- >-my $template_name; >-my $quickslip = 0; >- >-my $flagsrequired; >-if (defined $print and $print eq "page") { >- $template_name = "members/moremember-print.tt"; >- # circ staff who process checkouts but can't edit >- # patrons still need to be able to access print view >- $flagsrequired = { circulate => "circulate_remaining_permissions" }; >-} elsif (defined $print and $print eq "slip") { >- $template_name = "members/moremember-receipt.tt"; >- # circ staff who process checkouts but can't edit >- # patrons still need to be able to print receipts >- $flagsrequired = { circulate => "circulate_remaining_permissions" }; >-} elsif (defined $print and $print eq "qslip") { >- $template_name = "members/moremember-receipt.tt"; >- $quickslip = 1; >- $flagsrequired = { circulate => "circulate_remaining_permissions" }; >-} elsif (defined $print and $print eq "brief") { >- $template_name = "members/moremember-brief.tt"; >- $flagsrequired = { borrowers => 'edit_borrowers' }; >-} else { >- $template_name = "members/moremember.tt"; >- $flagsrequired = { borrowers => 'edit_borrowers' }; >-} > > my ( $template, $loggedinuser, $cookie ) = get_template_and_user( > { >- template_name => $template_name, >+ template_name => "members/moremember.tt", > query => $input, > type => "intranet", > authnotrequired => 0, >- flagsrequired => $flagsrequired, >+ flagsrequired => { borrowers => 'edit_borrowers' }, > debug => 1, > } > ); > my $borrowernumber = $input->param('borrowernumber'); >-$borrowernumber = HTML::Entities::encode($borrowernumber); > my $error = $input->param('error'); > $template->param( error => $error ) if ( $error ); > >@@ -121,46 +71,21 @@ my $patron = Koha::Patrons->find( $borrowernumber ); > my $logged_in_user = Koha::Patrons->find( $loggedinuser ) or die "Not logged in"; > output_and_exit_if_error( $input, $cookie, $template, { module => 'members', logged_in_user => $logged_in_user, current_patron => $patron } ); > >-my $issues = $patron->checkouts; >-my $balance = $patron->account->balance; >-$template->param( >- issuecount => $issues->count, >- fines => $balance, >-); >- > my $category_type = $patron->category->category_type; >-my $data = $patron->unblessed; >- >-$debug and printf STDERR "dates (enrolled,expiry,birthdate) raw: (%s, %s, %s)\n", map {$data->{$_}} qw(dateenrolled dateexpiry dateofbirth); >-foreach (qw(dateenrolled dateexpiry dateofbirth)) { # FIXME This should be removed >- my $userdate = $data->{$_}; >- unless ($userdate) { >- $debug and warn sprintf "Empty \$data{%12s}", $_; >- $data->{$_} = ''; >- next; >- } >- $data->{$_} = dt_from_string( $userdate ); >-} > >-for (qw(gonenoaddress lost borrowernotes)) { >- $data->{$_} and $template->param(flagged => 1) and last; >+for (qw(gonenoaddress lost borrowernotes is_debarred)) { >+ $patron->$_ and $template->param(flagged => 1) and last; > } > > if ( $patron->is_debarred ) { > $template->param( >- userdebarred => 1, # FIXME Template should use patron->is_debarred >- flagged => 1, > debarments => scalar GetDebarments({ borrowernumber => $borrowernumber }), > ); >- my $debar = $data->{'debarred'}; >- if ( $debar ne "9999-12-31" ) { >- $template->param( 'userdebarreddate' => output_pref( { dt => dt_from_string( $debar ), dateonly => 1 } ) ); >- $template->param( 'debarredcomment' => $data->{debarredcomment} ); >+ if ( $patron->debarred ne "9999-12-31" ) { >+ $template->param( 'userdebarreddate' => $patron->debarred ); > } > } > >-$data->{ "sex_".$data->{'sex'}."_p" } = 1 if defined $data->{sex}; >- > my @relatives; > if ( my $guarantor = $patron->guarantor ) { > $template->param( guarantor => $guarantor ); >@@ -180,71 +105,13 @@ if ( my $guarantor = $patron->guarantor ) { > } > > my $relatives_issues_count = >- Koha::Database->new()->schema()->resultset('Issue') >- ->count( { borrowernumber => \@relatives } ); >- >-my %bor; >-$bor{'borrowernumber'} = $borrowernumber; >- >-# Converts the branchcode to the branch name >-my $samebranch; >-if ( C4::Context->preference("IndependentBranches") ) { >- if ( C4::Context->IsSuperLibrarian() ) { >- $samebranch = 1; >- } >- else { >- my $userenv = C4::Context->userenv; >- $samebranch = ( $data->{'branchcode'} eq $userenv->{branch} ); >- } >-} >-else { >- $samebranch = 1; >-} >-my $library = Koha::Libraries->find( $data->{branchcode})->unblessed; >-@{$data}{keys %$library} = values %$library; # merge in all branch columns # FIXME This is really ugly, we should pass the library instead >- >-# If printing a page, send the account informations to the template >-if (defined $print and $print eq "page") { >- my $accts = Koha::Account::Lines->search( >- { borrowernumber => $patron->borrowernumber, amountoutstanding => { '>' => 0 } }, >- { order_by => { -desc => 'accountlines_id' } } >- ); >- $template->param( accounts => $accts ); >-} >- >-# Show OPAC privacy preference is system preference is set >-if ( C4::Context->preference('OPACPrivacy') ) { # FIXME Should be moved the the template >- $template->param( OPACPrivacy => 1); >- $template->param( "privacy".$data->{'privacy'} => 1); >-} >- >-my $today = DateTime->now( time_zone => C4::Context->tz); >-$today->truncate(to => 'day'); >-my $overdues_exist = 0; >-my $totalprice = 0; >- >-# Calculate and display patron's age >-if ( $data->{dateofbirth} ) { >- $template->param( age => Koha::Patron->new({ dateofbirth => $data->{dateofbirth} })->get_age ); >-} >- >-### ############################################################################### >-# BUILD HTML >-# show all reserves of this borrower, and the position of the reservation .... >-if ($borrowernumber) { >- $template->param( >- holds_count => Koha::Database->new()->schema()->resultset('Reserve') >- ->count( { borrowernumber => $borrowernumber } ) ); >-} >+ Koha::Checkouts->count({ borrowernumber => \@relatives }); > > # Generate CSRF token for upload and delete image buttons > $template->param( > csrf_token => Koha::Token->new->generate_csrf({ session_id => $input->cookie('CGISESSID'),}), > ); > >- >-$template->param(%$data); # FIXME This should be removed and used $patron instead, but too many things are processed above >- > if (C4::Context->preference('ExtendedPatronAttributes')) { > my $attributes = C4::Members::Attributes::GetBorrowerAttributes($borrowernumber); > my @classes = uniq( map {$_->{class}} @$attributes ); >@@ -267,7 +134,6 @@ if (C4::Context->preference('ExtendedPatronAttributes')) { > } > > $template->param( >- ExtendedPatronAttributes => 1, > attributes_loop => \@attributes_loop > ); > >@@ -280,8 +146,6 @@ if (C4::Context->preference('ExtendedPatronAttributes')) { > if (C4::Context->preference('EnhancedMessagingPreferences')) { > C4::Form::MessagingPreferences::set_form_values({ borrowernumber => $borrowernumber }, $template); > $template->param(messaging_form_inactive => 1); >- $template->param(SMSSendDriver => C4::Context->preference("SMSSendDriver")); >- $template->param(TalkingTechItivaPhone => C4::Context->preference("TalkingTechItivaPhoneNotification")); > } > > if ( C4::Context->preference("ExportCircHistory") ) { >@@ -290,7 +154,7 @@ if ( C4::Context->preference("ExportCircHistory") ) { > > my $patron_messages = Koha::Patron::Messages->search( > { >- 'me.borrowernumber' => $borrowernumber, >+ 'me.borrowernumber' => $patron->borrowernumber, > }, > { > join => 'manager', >@@ -315,23 +179,16 @@ if ( $patron->is_expired || $patron->is_going_to_expire ) { > ); > } > >-my $total = $patron->account->balance; > $template->param( > patron => $patron, >+ issuecount => $patron->checkouts->count, >+ holds_count => $patron->holds->count, >+ fines => $patron->account->balance, > translated_language => $translated_language, > detailview => 1, > was_renewed => scalar $input->param('was_renewed') ? 1 : 0, >- todaysdate => output_pref({ dt => dt_from_string, dateformat => 'iso', dateonly => 1 }), >- totalprice => sprintf("%.2f", $totalprice), >- totaldue => sprintf("%.2f", $total), >- totaldue_raw => $total, >- overdues_exist => $overdues_exist, >- StaffMember => $category_type eq 'S', > $category_type => 1, # [% IF ( I ) %] = institutional/organisation >- samebranch => $samebranch, >- quickslip => $quickslip, > housebound_role => scalar $patron->housebound_role, >- PatronsPerPage => C4::Context->preference("PatronsPerPage") || 20, > relatives_issues_count => $relatives_issues_count, > relatives_borrowernumbers => \@relatives, > ); >-- >2.17.1
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 21757
:
81916
|
85782
|
88007
|
88058
|
88060
|
88146
|
88268
|
88595
|
88596
|
88597
|
88643
|
88644
|
88645