Adds a syspref (borrowerhistorylink) that allows you to choose where
links to borrowers on the item circulation page go, choosing between the
circ page for them, or their details page. Default is the current
behaviour (go the the circ page.)
---
 catalogue/moredetail.pl                            |   12 +++++++++---
 installer/data/mysql/de-DE/mandatory/sysprefs.sql  |    1 +
 installer/data/mysql/en/mandatory/sysprefs.sql     |    1 +
 .../1-Obligatoire/unimarc_standard_systemprefs.sql |    1 +
 installer/data/mysql/it-IT/necessari/sysprefs.sql  |    1 +
 installer/data/mysql/pl-PL/mandatory/sysprefs.sql  |    1 +
 ...m_preferences_full_optimal_for_install_only.sql |    1 +
 ...m_preferences_full_optimal_for_install_only.sql |    1 +
 installer/data/mysql/updatedatabase.pl             |    8 ++++++++
 .../en/modules/admin/preferences/circulation.pref  |    6 ++++++
 .../prog/en/modules/catalogue/moredetail.tt        |    6 +++---
 11 files changed, 33 insertions(+), 6 deletions(-)

diff --git a/catalogue/moredetail.pl b/catalogue/moredetail.pl
index d848188..cb8dfed 100755
--- a/catalogue/moredetail.pl
+++ b/catalogue/moredetail.pl
@@ -146,10 +146,16 @@ foreach my $item (@items){
         $item->{'issue'}= 0;
     }
 }
-$template->param(count => $data->{'count'},
-       subscriptionsnumber => $subscriptionsnumber,
+my $borrower_link
+    = ( C4::Context->preference("BorrowingHistoryLink") eq 'details' )
+    ? 'members/moremember.pl'
+    : 'circ/circulation.pl';
+$template->param(
+    count               => $data->{'count'},
+    subscriptionsnumber => $subscriptionsnumber,
     subscriptiontitle   => $data->{title},
-       C4::Search::enabled_staff_search_views,
+    borrowerlink        => $borrower_link,
+    C4::Search::enabled_staff_search_views,
 );
 $template->param(BIBITEM_DATA => \@results);
 $template->param(ITEM_DATA => \@items);
diff --git a/installer/data/mysql/de-DE/mandatory/sysprefs.sql 
b/installer/data/mysql/de-DE/mandatory/sysprefs.sql
index ec0e85c..d7f2f7f 100755
--- a/installer/data/mysql/de-DE/mandatory/sysprefs.sql
+++ b/installer/data/mysql/de-DE/mandatory/sysprefs.sql
@@ -168,6 +168,7 @@ INSERT INTO `systempreferences` 
(variable,value,explanation,options,type) VALUES
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('CircControl',"ItemHomeLibrary",'Specify the agency that controls the 
circulation and fines 
policy',"PickupLibrary|PatronLibrary|ItemHomeLibrary",'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('finesCalendar',"noFinesWhenClosed",'Specify whether to use the Calendar 
in calculating duedates and fines',"ignoreCalendar|noFinesWhenClosed",'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('previousIssuesDefaultSortOrder',"asc",'Specify the sort order of 
Previous Issues on the circulation page',"asc|desc",'Choice');
+INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('BorrowingHistoryLink','circhist','When showing borrower history for an 
item on the catalogue page, link to borrower','detail|circhist','Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('todaysIssuesDefaultSortOrder',"desc",'Specify the sort order of Todays 
Issues on the circulation page',"asc|desc",'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('OPACBaseURL',NULL,'Specify the Base URL of the OPAC, e.g., 
opac.mylibrary.com, the http:// will be added automatically by 
Koha.',NULL,'Free');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('language','en','Set the default language in the staff 
client.',NULL,'Languages');
diff --git a/installer/data/mysql/en/mandatory/sysprefs.sql 
b/installer/data/mysql/en/mandatory/sysprefs.sql
index f313a39..269b024 100755
--- a/installer/data/mysql/en/mandatory/sysprefs.sql
+++ b/installer/data/mysql/en/mandatory/sysprefs.sql
@@ -169,6 +169,7 @@ INSERT INTO `systempreferences` 
(variable,value,explanation,options,type) VALUES
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('CircControl',"ItemHomeLibrary",'Specify the agency that controls the 
circulation and fines 
policy',"PickupLibrary|PatronLibrary|ItemHomeLibrary",'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('finesCalendar',"noFinesWhenClosed",'Specify whether to use the Calendar 
in calculating duedates and fines',"ignoreCalendar|noFinesWhenClosed",'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('previousIssuesDefaultSortOrder',"asc",'Specify the sort order of 
Previous Issues on the circulation page',"asc|desc",'Choice');
+INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('BorrowingHistoryLink','circhist','When showing borrower history for an 
item on the catalogue page, link to borrower','detail|circhist','Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('todaysIssuesDefaultSortOrder',"desc",'Specify the sort order of Todays 
Issues on the circulation page',"asc|desc",'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('OPACBaseURL',NULL,'Specify the Base URL of the OPAC, e.g., 
opac.mylibrary.com, the http:// will be added automatically by 
Koha.',NULL,'Free');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('language','en','Set the default language in the staff 
client.',NULL,'Languages');
diff --git 
a/installer/data/mysql/fr-FR/1-Obligatoire/unimarc_standard_systemprefs.sql 
b/installer/data/mysql/fr-FR/1-Obligatoire/unimarc_standard_systemprefs.sql
index 52a95d3..e2a3721 100755
--- a/installer/data/mysql/fr-FR/1-Obligatoire/unimarc_standard_systemprefs.sql
+++ b/installer/data/mysql/fr-FR/1-Obligatoire/unimarc_standard_systemprefs.sql
@@ -182,6 +182,7 @@ INSERT INTO `systempreferences` 
(variable,value,explanation,options,type) VALUES
 
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('finesCalendar',"noFinesWhenClosed",'Spécifie l''utilisation  du 
calendrier pour le calcul des dates de retours et les 
amendes',"ignoreCalendar|noFinesWhenClosed",'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('previousIssuesDefaultSortOrder',"asc",'Ordre d''affichage des prêts en 
cours sur la page de circulation hors prêts du jour',"asc|desc",'Choice');
+INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('BorrowingHistoryLink','circhist','When showing borrower history for an 
item on the catalogue page, link to borrower','detail|circhist','Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('todaysIssuesDefaultSortOrder',"desc",'Ordre d''affichage des prêts en 
cours (prêts du jour)',"asc|desc",'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('OPACItemHolds','1','Si activé, les adhérents peuvent placer des 
réservations sur un exemplaire spécifique. Sinon, il ne peuvent que réserver le 
prochain disponible.','','YesNo');
 INSERT INTO `systempreferences` (variable, value,options,type, explanation) 
VALUES 
('AddPatronLists','categorycode','categorycode|category_type','Choice','Slectionner
 categorycode ou category_type permet d''afficher la liste des catégories ou 
des types de catégories à l''ajout d''un lecteur');
diff --git a/installer/data/mysql/it-IT/necessari/sysprefs.sql 
b/installer/data/mysql/it-IT/necessari/sysprefs.sql
index e49a22f..a4f14ff 100755
--- a/installer/data/mysql/it-IT/necessari/sysprefs.sql
+++ b/installer/data/mysql/it-IT/necessari/sysprefs.sql
@@ -152,6 +152,7 @@ insert into `systempreferences` (`variable`, `value`, 
`options`, `explanation`,
 insert into `systempreferences` (`variable`, `value`, `options`, 
`explanation`, `type`) values('patronimages','jpg','','Per impostare il formato 
immagine per le foto degli utenti','free');
 insert into `systempreferences` (`variable`, `value`, `options`, 
`explanation`, `type`) values('PatronsPerPage','20','20','Numero di utenti 
visualizzati di default per pagina','Integer');
 insert into `systempreferences` (`variable`, `value`, `options`, 
`explanation`, `type`) 
values('previousIssuesDefaultSortOrder','asc','asc|desc','Specifica l’ordine 
dei prestiti precedenti nella pagina di circolazione','Choice');
+INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('BorrowingHistoryLink','circhist','When showing borrower history for an 
item on the catalogue page, link to borrower','detail|circhist','Choice');
 insert into `systempreferences` (`variable`, `value`, `options`, 
`explanation`, `type`) values('printcirculationslips','1','','Se ON, abilita la 
stampa delle ricevute del prestito','YesNo');
 insert into `systempreferences` (`variable`, `value`, `options`, 
`explanation`, `type`) values('QueryAutoTruncate','1','','Se ON, è abilitato il 
troncamento delle query di default','YesNo');
 insert into `systempreferences` (`variable`, `value`, `options`, 
`explanation`, `type`) values('QueryFuzzy','0','','Se ON, abilita le opzioni di 
ricerca fuzzy','YesNo');
diff --git a/installer/data/mysql/pl-PL/mandatory/sysprefs.sql 
b/installer/data/mysql/pl-PL/mandatory/sysprefs.sql
index 0a96d52..a5d1c08 100755
--- a/installer/data/mysql/pl-PL/mandatory/sysprefs.sql
+++ b/installer/data/mysql/pl-PL/mandatory/sysprefs.sql
@@ -167,6 +167,7 @@ INSERT INTO `systempreferences` 
(variable,value,explanation,options,type) VALUES
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('CircControl',"ItemHomeLibrary",'Specify the agency that controls the 
circulation and fines 
policy',"PickupLibrary|PatronLibrary|ItemHomeLibrary",'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('finesCalendar',"noFinesWhenClosed",'Specify whether to use the Calendar 
in calculating duedates and fines',"ignoreCalendar|noFinesWhenClosed",'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('previousIssuesDefaultSortOrder',"asc",'Specify the sort order of 
Previous Issues on the circulation page',"asc|desc",'Choice');
+INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('BorrowingHistoryLink','circhist','When showing borrower history for an 
item on the catalogue page, link to borrower','detail|circhist','Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('todaysIssuesDefaultSortOrder',"desc",'Specify the sort order of Todays 
Issues on the circulation page',"asc|desc",'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('OPACBaseURL',NULL,'Specify the Base URL of the OPAC, e.g., 
opac.mylibrary.com, the http:// will be added automatically by 
Koha.',NULL,'Free');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('language','en','Set the default language in the staff 
client.',NULL,'Languages');
diff --git 
a/installer/data/mysql/ru-RU/mandatory/system_preferences_full_optimal_for_install_only.sql
 
b/installer/data/mysql/ru-RU/mandatory/system_preferences_full_optimal_for_install_only.sql
index 72dfdf4..203ea7a 100755
--- 
a/installer/data/mysql/ru-RU/mandatory/system_preferences_full_optimal_for_install_only.sql
+++ 
b/installer/data/mysql/ru-RU/mandatory/system_preferences_full_optimal_for_install_only.sql
@@ -195,6 +195,7 @@ INSERT INTO `systempreferences` 
(variable,value,explanation,options,type) VALUES
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('CircControl',"ItemHomeLibrary",'Specify the agency that controls the 
circulation and fines 
policy',"PickupLibrary|PatronLibrary|ItemHomeLibrary",'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('finesCalendar',"noFinesWhenClosed",'Specify whether to use the Calendar 
in calculating duedates and fines',"ignoreCalendar|noFinesWhenClosed",'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('previousIssuesDefaultSortOrder',"asc",'Specify the sort order of 
Previous Issues on the circulation page',"asc|desc",'Choice');
+INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('BorrowingHistoryLink','circhist','When showing borrower history for an 
item on the catalogue page, link to borrower','detail|circhist','Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('todaysIssuesDefaultSortOrder',"desc",'Specify the sort order of Todays 
Issues on the circulation page',"asc|desc",'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('OPACBaseURL',NULL,'Specify the Base URL of the OPAC, e.g., 
opac.mylibrary.com, the http:// will be added automatically by 
Koha.',NULL,'Free');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('language','ru-RU,uk-UA,en,fr-FR,de-DE','Set the default language in the 
staff client.',NULL,'Languages');
diff --git 
a/installer/data/mysql/uk-UA/mandatory/system_preferences_full_optimal_for_install_only.sql
 
b/installer/data/mysql/uk-UA/mandatory/system_preferences_full_optimal_for_install_only.sql
index 78360a7..6fe9812 100755
--- 
a/installer/data/mysql/uk-UA/mandatory/system_preferences_full_optimal_for_install_only.sql
+++ 
b/installer/data/mysql/uk-UA/mandatory/system_preferences_full_optimal_for_install_only.sql
@@ -194,6 +194,7 @@ INSERT INTO `systempreferences` 
(variable,value,explanation,options,type) VALUES
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('CircControl',"ItemHomeLibrary",'Specify the agency that controls the 
circulation and fines 
policy',"PickupLibrary|PatronLibrary|ItemHomeLibrary",'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('finesCalendar',"noFinesWhenClosed",'Specify whether to use the Calendar 
in calculating duedates and fines',"ignoreCalendar|noFinesWhenClosed",'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('previousIssuesDefaultSortOrder',"asc",'Specify the sort order of 
Previous Issues on the circulation page',"asc|desc",'Choice');
+INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('BorrowingHistoryLink','circhist','When showing borrower history for an 
item on the catalogue page, link to borrower','detail|circhist','Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('todaysIssuesDefaultSortOrder',"desc",'Specify the sort order of Todays 
Issues on the circulation page',"asc|desc",'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('OPACBaseURL',NULL,'Specify the Base URL of the OPAC, e.g., 
opac.mylibrary.com, the http:// will be added automatically by 
Koha.',NULL,'Free');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('language','uk-UA,ru-RU,en,fr-FR,de-DE','Set the default language in the 
staff client.',NULL,'Languages');
diff --git a/installer/data/mysql/updatedatabase.pl 
b/installer/data/mysql/updatedatabase.pl
index 59e43bf..93e0876 100755
--- a/installer/data/mysql/updatedatabase.pl
+++ b/installer/data/mysql/updatedatabase.pl
@@ -4415,6 +4415,14 @@ if (C4::Context->preference("Version") < 
TransformToNum($DBversion)) {
     print "Create an index on reserves to speed up holds awaiting pickup 
report bug 5866\n";
     SetVersion($DBversion);
 }
+
+$DBversion = "xxx";
+if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
+    $dbh->do("INSERT INTO `systempreferences` 
(variable,value,explanation,options,type) 
VALUES('BorrowingHistoryLink','circhist','When showing borrower history for an 
item on the catalogue page, link to borrower','detail|circhist','Choice')");
+    print "Add the system preference 'BorrowingHistoryLink' (bug 6905)\n";
+    SetVersion($DBversion);
+}
+
 =head1 FUNCTIONS
 
 =head2 DropAllForeignKeys($table)
diff --git 
a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref 
b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref
index dc821a8..d2590fd 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref
@@ -24,6 +24,12 @@ Circulation:
                   desc: latest to earliest
             - due date.
         -
+            - When showing borrower history for an item on the catalogue page, 
link to borrower
+            - pref: BorrowingHistoryLink
+              choices:
+                  details: details
+                  circhist: circulation history
+        -
             - "Sort today's checkouts on the circulation page from"
             - pref: todaysIssuesDefaultSortOrder
               type: choice
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/moredetail.tt 
b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/moredetail.tt
index 86c8a3f..ae73330 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/moredetail.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/moredetail.tt
@@ -169,9 +169,9 @@
 
                 <li><span class="label">Last seen:</span> [% 
ITEM_DAT.datelastseen %]&nbsp;</li>
                 <li><span class="label">Last borrowed:</span> [% 
ITEM_DAT.datelastborrowed %]&nbsp;</li>
-                [% IF ( ITEM_DAT.card0 ) %]<li><span class="label">Last 
Borrower:</span> <a href="/cgi-bin/koha/circ/circulation.pl?borrowernumber=[% 
ITEM_DAT.borrower0 %]">[% ITEM_DAT.card0 %]</a>&nbsp;</li>[% END %]
-                [% IF ( ITEM_DAT.card1 ) %]<li><span class="label">Previous 
Borrower:</span> <a href="/cgi-bin/koha/circ/circulation.pl?borrowernumber=[% 
ITEM_DAT.borrower1 %]">[% ITEM_DAT.card1 %]</a>&nbsp;</li>[% END %]
-               [% IF ( ITEM_DAT.card2 ) %]<li><span class="label">Previous 
Borrower:</span> <a href="/cgi-bin/koha/circ/circulation.pl?borrowernumber=[% 
ITEM_DAT.borrower2 %]">[% ITEM_DAT.card2 %]</a>&nbsp;</li>[% END %]
+                [% IF ( ITEM_DAT.card0 ) %]<li><span class="label">Last 
Borrower:</span> <a href="/cgi-bin/koha/[% borrowerlink %]?borrowernumber=[% 
ITEM_DAT.borrower0 %]">[% ITEM_DAT.card0 %]</a>&nbsp;</li>[% END %]
+                [% IF ( ITEM_DAT.card1 ) %]<li><span class="label">Previous 
Borrower:</span> <a href="/cgi-bin/koha/[% borrowerlink %]?borrowernumber=[% 
ITEM_DAT.borrower1 %]">[% ITEM_DAT.card1 %]</a>&nbsp;</li>[% END %]
+               [% IF ( ITEM_DAT.card2 ) %]<li><span class="label">Previous 
Borrower:</span> <a href="/cgi-bin/koha/[% borrowerlink %]?borrowernumber=[% 
ITEM_DAT.borrower2 %]">[% ITEM_DAT.card2 %]</a>&nbsp;</li>[% END %]
                 <li><span class="label">Paid for?:</span> [% ITEM_DAT.paidfor 
%]&nbsp;</li>
             <li><span class="label">Serial enumeration:</span> [% 
ITEM_DAT.enumchron %]&nbsp;</li>
             <li><span class="label">Public Note:</span>
-- 
1.7.4.1

_______________________________________________
Koha-patches mailing list
[email protected]
http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-patches
website : http://www.koha-community.org/
git : http://git.koha-community.org/
bugs : http://bugs.koha-community.org/

Reply via email to