Bugzilla – Attachment 3466 Details for
Bug 5547
A "hidelostitems" option for the staff client
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Signed-off patch
0001-SIGNED-OFF-Bug-5547-Hide-Lost-Items-dev.patch (text/plain), 22.88 KB, created by
Owen Leonard
on 2011-03-28 14:21:46 UTC
(
hide
)
Description:
Signed-off patch
Filename:
MIME Type:
Creator:
Owen Leonard
Created:
2011-03-28 14:21:46 UTC
Size:
22.88 KB
patch
obsolete
>From b3185f3417b426b84f1de82e7c209f88608f196b Mon Sep 17 00:00:00 2001 >From: Ian Walls <ian.walls@bywatersolutions.com> >Date: Wed, 9 Mar 2011 08:58:18 -0500 >Subject: [PATCH] [SIGNED-OFF] Bug 5547: Hide Lost Items dev >Content-Type: text/plain; charset="utf-8" > >Adds a Hide Lost Items option to the staff client, as detailed in the enhancement request >at http://wiki.koha-community.org/wiki/Hidelostitems_option_for_the_staff_client_RFC > >Minor edits: Whitespace > >Signed-off-by: Owen Leonard <oleonard@myacpl.org> >--- > C4/Members.pm | 21 +++++++++++++++++ > C4/Search.pm | 4 ++- > admin/categorie.pl | 15 +++++++----- > catalogue/detail.pl | 16 ++++++++++-- > catalogue/moredetail.pl | 24 +++++++++++++++---- > installer/data/mysql/kohastructure.sql | 1 + > installer/data/mysql/updatedatabase.pl | 7 +++++ > .../prog/en/modules/admin/categorie.tmpl | 12 ++++++++++ > .../prog/en/modules/catalogue/detail.tmpl | 7 +++++- > .../prog/en/modules/catalogue/moredetail.tmpl | 3 +- > .../prog/en/modules/reserve/request.tmpl | 8 +++++- > reserve/request.pl | 9 ++++++- > 12 files changed, 108 insertions(+), 19 deletions(-) > >diff --git a/C4/Members.pm b/C4/Members.pm >index 2b733ed..b885d38 100644 >--- a/C4/Members.pm >+++ b/C4/Members.pm >@@ -69,6 +69,8 @@ BEGIN { > &PutPatronImage > &RmPatronImage > >+ &GetHideLostItemsPreference >+ > &IsMemberBlocked > &GetMemberAccountRecords > &GetBorNotifyAcctRecord >@@ -1806,6 +1808,25 @@ sub RmPatronImage { > return $dberror; > } > >+=head2 GetHideLostItemsPreference >+ >+ $hidelostitemspref = &GetHideLostItemsPreference($borrowernumber); >+ >+Returns the HideLostItems preference for the patron category of the supplied borrowernumber >+C<&$hidelostitemspref>return value of function, 0 or 1 >+ >+=cut >+ >+sub GetHideLostItemsPreference { >+ my ($borrowernumber) = @_; >+ my $dbh = C4::Context->dbh; >+ my $query = "SELECT hidelostitems FROM borrowers,categories WHERE borrowers.categorycode = categories.categorycode AND borrowernumber = ?"; >+ my $sth = $dbh->prepare($query); >+ $sth->execute($borrowernumber); >+ my $hidelostitems = $sth->fetchrow; >+ return $hidelostitems; >+} >+ > =head2 GetRoadTypeDetails (OUEST-PROVENCE) > > ($roadtype) = &GetRoadTypeDetails($roadtypeid); >diff --git a/C4/Search.pm b/C4/Search.pm >index 52939bd..2ee570d 100644 >--- a/C4/Search.pm >+++ b/C4/Search.pm >@@ -25,6 +25,7 @@ use Lingua::Stem; > use C4::Search::PazPar2; > use XML::Simple; > use C4::Dates qw(format_date); >+use C4::Members qw(GetHideLostItemsPreference); > use C4::XSLT; > use C4::Branch; > use C4::Reserves; # CheckReserves >@@ -1569,7 +1570,8 @@ sub searchResults { > > my $prefix = $item->{$hbranch} . '--' . $item->{location} . $item->{itype} . $item->{itemcallnumber}; > # For each grouping of items (onloan, available, unavailable), we build a key to store relevant info about that item >- if ( $item->{onloan} ) { >+ my $userenv = C4::Context->userenv; >+ if ( $item->{onloan} && !(C4::Members::GetHideLostItemsPreference($userenv->{'number'}) && $item->{itemlost}) ) { > $onloan_count++; > my $key = $prefix . $item->{onloan} . $item->{barcode}; > $onloan_items->{$key}->{due_date} = format_date($item->{onloan}); >diff --git a/admin/categorie.pl b/admin/categorie.pl >index 4a5d683..d0211fd 100755 >--- a/admin/categorie.pl >+++ b/admin/categorie.pl >@@ -92,7 +92,7 @@ if ($op eq 'add_form') { > my $data; > if ($categorycode) { > my $dbh = C4::Context->dbh; >- my $sth=$dbh->prepare("select categorycode,description,enrolmentperiod,enrolmentperioddate,upperagelimit,dateofbirthrequired,enrolmentfee,issuelimit,reservefee,overduenoticerequired,category_type from categories where categorycode=?"); >+ my $sth=$dbh->prepare("select categorycode,description,enrolmentperiod,enrolmentperioddate,upperagelimit,dateofbirthrequired,enrolmentfee,issuelimit,reservefee,hidelostitems,overduenoticerequired,category_type from categories where categorycode=?"); > $sth->execute($categorycode); > $data=$sth->fetchrow_hashref; > $sth->finish; >@@ -109,6 +109,7 @@ if ($op eq 'add_form') { > overduenoticerequired => $data->{'overduenoticerequired'}, > issuelimit => $data->{'issuelimit'}, > reservefee => sprintf("%.2f",$data->{'reservefee'}), >+ hidelostitems => $data->{'hidelostitems'}, > category_type => $data->{'category_type'}, > DHTMLcalendar_dateformat => C4::Dates->DHTMLcalendar(), > "type_".$data->{'category_type'} => 1, >@@ -128,12 +129,12 @@ if ($op eq 'add_form') { > } > > if ($is_a_modif) { >- my $sth=$dbh->prepare("UPDATE categories SET description=?,enrolmentperiod=?, enrolmentperioddate=?,upperagelimit=?,dateofbirthrequired=?,enrolmentfee=?,reservefee=?,overduenoticerequired=?,category_type=? WHERE categorycode=?"); >- $sth->execute(map { $input->param($_) } ('description','enrolmentperiod','enrolmentperioddate','upperagelimit','dateofbirthrequired','enrolmentfee','reservefee','overduenoticerequired','category_type','categorycode')); >+ my $sth=$dbh->prepare("UPDATE categories SET description=?,enrolmentperiod=?, enrolmentperioddate=?,upperagelimit=?,dateofbirthrequired=?,enrolmentfee=?,reservefee=?,hidelostitems=?,overduenoticerequired=?,category_type=? WHERE categorycode=?"); >+ $sth->execute(map { $input->param($_) } ('description','enrolmentperiod','enrolmentperioddate','upperagelimit','dateofbirthrequired','enrolmentfee','reservefee','hidelostitems','overduenoticerequired','category_type','categorycode')); > $sth->finish; > } else { >- my $sth=$dbh->prepare("INSERT INTO categories (categorycode,description,enrolmentperiod,enrolmentperioddate,upperagelimit,dateofbirthrequired,enrolmentfee,reservefee,overduenoticerequired,category_type) values (?,?,?,?,?,?,?,?,?,?)"); >- $sth->execute(map { $input->param($_) } ('categorycode','description','enrolmentperiod','enrolmentperioddate','upperagelimit','dateofbirthrequired','enrolmentfee','reservefee','overduenoticerequired','category_type')); >+ my $sth=$dbh->prepare("INSERT INTO categories (categorycode,description,enrolmentperiod,enrolmentperioddate,upperagelimit,dateofbirthrequired,enrolmentfee,reservefee,hidelostitems,overduenoticerequired,category_type) values (?,?,?,?,?,?,?,?,?,?)"); >+ $sth->execute(map { $input->param($_) } ('categorycode','description','enrolmentperiod','enrolmentperioddate','upperagelimit','dateofbirthrequired','enrolmentfee','reservefee','hidelostitems','overduenoticerequired','category_type')); > $sth->finish; > } > if (C4::Context->preference('EnhancedMessagingPreferences')) { >@@ -156,7 +157,7 @@ if ($op eq 'add_form') { > $sth->finish; > $template->param(total => $total->{'total'}); > >- my $sth2=$dbh->prepare("select categorycode,description,enrolmentperiod,enrolmentperioddate,upperagelimit,dateofbirthrequired,enrolmentfee,issuelimit,reservefee,overduenoticerequired,category_type from categories where categorycode=?"); >+ my $sth2=$dbh->prepare("select categorycode,description,enrolmentperiod,enrolmentperioddate,upperagelimit,dateofbirthrequired,enrolmentfee,issuelimit,reservefee,hidelostitems,overduenoticerequired,category_type from categories where categorycode=?"); > $sth2->execute($categorycode); > my $data=$sth2->fetchrow_hashref; > $sth2->finish; >@@ -173,6 +174,7 @@ if ($op eq 'add_form') { > overduenoticerequired => $data->{'overduenoticerequired'}, > issuelimit => $data->{'issuelimit'}, > reservefee => sprintf("%.2f",$data->{'reservefee'}), >+ hidelostitems => $data->{'hidelostitems'}, > category_type => $data->{'category_type'}, > ); > # END $OP eq DELETE_CONFIRM >@@ -205,6 +207,7 @@ if ($op eq 'add_form') { > overduenoticerequired => $results->[$i]{'overduenoticerequired'}, > issuelimit => $results->[$i]{'issuelimit'}, > reservefee => sprintf("%.2f",$results->[$i]{'reservefee'}), >+ hidelostitems => $results->[$i]{'hidelostitems'}, > category_type => $results->[$i]{'category_type'}, > "type_".$results->[$i]{'category_type'} => 1); > if (C4::Context->preference('EnhancedMessagingPreferences')) { >diff --git a/catalogue/detail.pl b/catalogue/detail.pl >index 3d42326..5542163 100755 >--- a/catalogue/detail.pl >+++ b/catalogue/detail.pl >@@ -64,6 +64,8 @@ if($query->cookie("holdfor")){ > my $biblionumber = $query->param('biblionumber'); > my $fw = GetFrameworkCode($biblionumber); > >+my $showallitems = $query->param('showallitems'); >+ > ## get notes and subjects from MARC record > my $marcflavour = C4::Context->preference("marcflavour"); > my $record = GetMarcBiblio($biblionumber); >@@ -109,8 +111,12 @@ my $branches = GetBranches(); > my $itemtypes = GetItemTypes(); > my $dbh = C4::Context->dbh; > >-# change back when ive fixed request.pl >-my @items = &GetItemsInfo( $biblionumber, 'intra' ); >+# 'intra' param included, even though it's not respected in GetItemsInfo currently >+my @all_items= GetItemsInfo($biblionumber, 'intra'); >+my @items; >+for my $itm (@all_items) { >+ push @items, $itm unless ( $itm->{itemlost} && GetHideLostItemsPreference($borrowernumber) && !$showallitems); >+} > my $dat = &GetBiblioData($biblionumber); > > # get count of holds >@@ -141,7 +147,11 @@ foreach my $subscription (@subscriptions) { > if ( defined $dat->{'itemtype'} ) { > $dat->{imageurl} = getitemtypeimagelocation( 'intranet', $itemtypes->{ $dat->{itemtype} }{imageurl} ); > } >-$dat->{'count'} = scalar @items; >+ >+$dat->{'count'} = scalar @all_items; >+$dat->{'showncount'} = scalar @items; >+$dat->{'hiddencount'} = scalar @all_items - scalar @items; >+ > my $shelflocations = GetKohaAuthorisedValues('items.location', $fw); > my $collections = GetKohaAuthorisedValues('items.ccode' , $fw); > my (@itemloop, %itemfields); >diff --git a/catalogue/moredetail.pl b/catalogue/moredetail.pl >index c3d7a95..cb51344 100755 >--- a/catalogue/moredetail.pl >+++ b/catalogue/moredetail.pl >@@ -33,6 +33,7 @@ use C4::Dates qw/format_date/; > use C4::Circulation; # to use itemissues > use C4::Members; # to use GetMember > use C4::Search; # enabled_staff_search_views >+use C4::Members qw/GetHideLostItemsPreference/; > > my $query=new CGI; > >@@ -65,8 +66,10 @@ my $biblionumber=$query->param('biblionumber'); > my $title=$query->param('title'); > my $bi=$query->param('bi'); > $bi = $biblionumber unless $bi; >+my $itemnumber = $query->param('itemnumber'); > my $data=GetBiblioData($biblionumber); > my $dewey = $data->{'dewey'}; >+my $showallitems = $query->param('showallitems'); > > #coping with subscriptions > my $subscriptionsnumber = CountSubscriptionFromBiblionumber($biblionumber); >@@ -84,16 +87,27 @@ my $subscriptionsnumber = CountSubscriptionFromBiblionumber($biblionumber); > > my @results; > my $fw = GetFrameworkCode($biblionumber); >-my @items= GetItemsInfo($biblionumber); >-my $count=@items; >-$data->{'count'}=$count; >+my @all_items= GetItemsInfo($biblionumber); >+my @items; >+for my $itm (@all_items) { >+ push @items, $itm unless ( $itm->{itemlost} && >+ GetHideLostItemsPreference($loggedinuser) && >+ !$showallitems && >+ ($itemnumber != $itm->{itemnumber})); >+} >+ >+my $totalcount=@all_items; >+my $showncount=@items; >+my $hiddencount = $totalcount - $showncount; >+$data->{'count'}=$totalcount; >+$data->{'showncount'}=$showncount; >+$data->{'hiddencount'}=$hiddencount; # can be zero > > my $ccodes= GetKohaAuthorisedValues('items.ccode',$fw); > my $itemtypes = GetItemTypes; > > $data->{'itemtypename'} = $itemtypes->{$data->{'itemtype'}}->{'description'}; > $results[0]=$data; >-my $itemnumber; > ($itemnumber) and @items = (grep {$_->{'itemnumber'} == $itemnumber} @items); > foreach my $item (@items){ > $item->{itemlostloop}= GetAuthorisedValues(GetAuthValCode('items.itemlost',$fw),$item->{itemlost}) if GetAuthValCode('items.itemlost',$fw); >@@ -143,7 +157,7 @@ $template->param(loggedinuser => $loggedinuser); > $template->param(biblionumber => $biblionumber); > $template->param(biblioitemnumber => $bi); > $template->param(itemnumber => $itemnumber); >-$template->param(ONLY_ONE => 1) if ( $itemnumber && $count != @items ); >+$template->param(ONLY_ONE => 1) if ( $itemnumber && $showncount != @items ); > $template->param(z3950_search_params => C4::Search::z3950_search_args(GetBiblioData($biblionumber))); > > output_html_with_http_headers $query, $cookie, $template->output; >diff --git a/installer/data/mysql/kohastructure.sql b/installer/data/mysql/kohastructure.sql >index a62e07c..b9e4df6 100644 >--- a/installer/data/mysql/kohastructure.sql >+++ b/installer/data/mysql/kohastructure.sql >@@ -420,6 +420,7 @@ CREATE TABLE `categories` ( > `overduenoticerequired` tinyint(1) default NULL, > `issuelimit` smallint(6) default NULL, > `reservefee` decimal(28,6) default NULL, >+ `hidelostitems` tinyint(1) NOT NULL default '0' > `category_type` varchar(1) NOT NULL default 'A', > PRIMARY KEY (`categorycode`), > UNIQUE KEY `categorycode` (`categorycode`) >diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl >index 66e9828..7b78aba 100755 >--- a/installer/data/mysql/updatedatabase.pl >+++ b/installer/data/mysql/updatedatabase.pl >@@ -4090,6 +4090,13 @@ if (C4::Context->preference("Version") < TransformToNum($DBversion)) { > SetVersion ($DBversion); > } > >+$DBversion = '3.03.00.XXX'; >+if (C4::Context->preference("Version") < TransformToNum($DBversion)) { >+ $dbh->do("ALTER TABLE `categories` ADD `hidelostitems` tinyint(1) NOT NULL default '0' AFTER `reservefee`"); >+ print "Upgrade to $DBversion done (Add hidelostitems preference to borrower categories)\n"; >+ SetVersion ($DBversion); >+} >+ > =head1 FUNCTIONS > > =head2 DropAllForeignKeys($table) >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/categorie.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/categorie.tmpl >index ba9e468..52e8657 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/categorie.tmpl >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/categorie.tmpl >@@ -151,6 +151,15 @@ > <option value="1">Yes</option> > <!-- /TMPL_IF --> > </select></li> >+ <li><label for="hidelostitems">Lost items in staff client</label> <select name="hidelostitems" id="hidelostitems"> >+ <!-- TMPL_IF NAME="hidelostitems" --> >+ <option value="0">Shown</option> >+ <option value="1" selected="selected">Hidden by default</option> >+ <!-- TMPL_ELSE --> >+ <option value="0" selected="selected">Shown</option> >+ <option value="1">Hidden by default</option> >+ <!-- /TMPL_IF --> >+ </select></li> > <li><label for="reservefee">Hold fee: </label><input type="text" name="reservefee" id="reservefee" size="6" value="<!-- TMPL_VAR NAME="reservefee" -->" /></li> > <li><label for="category_type">Category type: </label> <select name="category_type" id="category_type"> > <!-- TMPL_IF NAME="type_n" --><option value="" selected="selected">Select a Category type</option><!-- TMPL_ELSE --><option value="">Select a Category type</option><!-- /TMPL_IF --> >@@ -208,6 +217,7 @@ Confirm Deletion of Category <!-- TMPL_VAR NAME="categorycode" escape="html" --> > <tr><th scope="row">Upperage limit: </th><td><!-- TMPL_VAR NAME="upperagelimit" --> years</td></tr> > <tr><th scope="row">Enrollment fee: </th><td><!-- TMPL_VAR NAME="enrolmentfee" --></td></tr> > <tr><th scope="row">Receives overdue notices: </th><td><!-- TMPL_IF NAME="overduenoticerequired" -->Yes<!-- TMPL_ELSE -->No<!-- /TMPL_IF --></td></tr> >+ <tr><th scope="row">Lost items in staff client</th><td><!-- TMPL_IF NAME="hidelostitems" -->Hidden by default<!-- TMPL_ELSE -->Shown<!-- /TMPL_IF --></td></tr> > <tr><th scope="row">Hold fee: </th><td><!-- TMPL_VAR NAME="reservefee" --></td></tr> > </table> > <fieldset class="action"><!-- TMPL_IF NAME="totalgtzero" --> >@@ -282,6 +292,7 @@ Confirm Deletion of Category <!-- TMPL_VAR NAME="categorycode" escape="html" --> > <th scope="col">Upper age limit</th> > <th scope="col">Enrollment fee</th> > <th scope="col">Overdue</th> >+ <th scope="col">Lost Items</th> > <th scope="col">Hold fee</th> > <!-- TMPL_IF NAME="EnhancedMessagingPreferences" --> > <th scope="col">Messaging</th> >@@ -318,6 +329,7 @@ Confirm Deletion of Category <!-- TMPL_VAR NAME="categorycode" escape="html" --> > <td><!-- TMPL_VAR NAME="upperagelimit" --> years</td> > <td><!-- TMPL_VAR NAME="enrolmentfee" --></td> > <td><!-- TMPL_IF NAME="overduenoticerequired" -->Yes<!-- TMPL_ELSE -->No<!-- /TMPL_IF --></td> >+ <td><!-- TMPL_IF NAME="hidelostitems" -->Hidden<!-- TMPL_ELSE -->Shown<!-- /TMPL_IF --></td> > <td><!-- TMPL_VAR NAME="reservefee" --></td> > <!-- TMPL_IF NAME="EnhancedMessagingPreferences" --> > <td> >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tmpl >index e3b0a8f..a939b42 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tmpl >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tmpl >@@ -217,6 +217,7 @@ function verify_images() { > > <div id="holdings"> > <!-- TMPL_IF name="count" --> >+ <!-- TMPL_IF name="showncount" --> > <table> > <tr> > <!-- TMPL_IF NAME="item_level_itypes" --><th>Item type</th><!-- /TMPL_IF --> >@@ -364,6 +365,10 @@ function verify_images() { > </tr> > <!-- /TMPL_LOOP --> > </table> >+ <!-- /TMPL_IF --> >+ <!-- TMPL_IF NAME="hiddencount" --> >+ <p><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->&showallitems=1">Show all items (<!-- TMPL_VAR NAME="hiddencount" --> hidden)</a> >+ <!-- /TMPL_IF --> > <!-- TMPL_IF NAME="debug_display" --> > <br /><br /> > <table> >@@ -371,7 +376,7 @@ function verify_images() { > <tr><td>itemdata_copynumber</td><td><!-- TMPL_VAR NAME="itemdata_copynumber" --></td></tr> > <tr><td>serial</td><td><!-- TMPL_VAR NAME="serial" --></td></tr> > </table> >- <!-- /TMPL_IF --> >+ <!-- /TMPL_IF --> > <!-- TMPL_ELSE --> > <p>No physical items for this record</p> > <!-- /TMPL_IF --> >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/moredetail.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/moredetail.tmpl >index e67a864..271fa14 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/moredetail.tmpl >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/moredetail.tmpl >@@ -32,7 +32,8 @@ > <!-- TMPL_IF NAME="volumeddesc" --><li><span class="label">Volume:</span> <!-- TMPL_VAR NAME="volumeddesc" --></li><!-- /TMPL_IF --> > <li><span class="label">Physical Details:</span> <!-- TMPL_VAR NAME="pages" --> <!-- TMPL_VAR NAME="illus" --> <!-- TMPL_VAR NAME="size" --> </li> > <!-- TMPL_IF NAME="bnotes" --><li><span class="label">Notes:</span> <!-- TMPL_VAR NAME="bnotes" --></li><!-- /TMPL_IF --> >- <li><span class="label">No. of Items:</span> <!-- TMPL_VAR NAME="count" --> </li> >+ <li><span class="label">No. of Items:</span> <!-- TMPL_VAR NAME="count" --> <!-- TMPL_IF NAME="hiddencount" -->total (<!-- TMPL_VAR NAME="showncount" --> shown / <!-- TMPL_VAR NAME="hiddencount" --> hidden) >+<a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->&showallitems=1">Show all items</a><!-- /TMPL_IF --></li> > </ol> > <!-- /TMPL_LOOP --> > <br clear="all" /> >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/reserve/request.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/reserve/request.tmpl >index 53ff7b7..1001d8e 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/reserve/request.tmpl >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/reserve/request.tmpl >@@ -391,6 +391,7 @@ function checkMultiHold() { > <th>Information</th> > </tr> > <!-- TMPL_LOOP Name="itemloop" --> >+ <!-- TMPL_UNLESS NAME="hide"--> > <tr class="<!-- TMPL_VAR NAME="backgroundcolor" -->"> > <td> > <!-- TMPL_IF NAME="available" --> >@@ -458,9 +459,14 @@ function checkMultiHold() { > <!-- /TMPL_IF --> > </td> > </tr> >+ <!-- /TMPL_UNLESS --> <!--UNLESS item hide--> > <!-- /TMPL_LOOP --> <!-- itemloop --> > </table> >- >+ <!-- TMPL_IF NAME=hiddencount --> >+ <form> >+ <p class="hiddencount"><a href="request.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber"-->&cardnumber=<!-- TMPL_VAR NAME="cardnumber" -->&showallitems=1">Show all items (<!--TMPL_VAR NAME="hiddencount" --> hidden)</a></p> >+ </form> >+ <!-- /TMPL_IF --> <!-- hiddencount --> > <!-- /TMPL_LOOP --> <!-- bibitemloop --> > > <!-- TMPL_ELSE --><!-- UNLESS multi_hold --> >diff --git a/reserve/request.pl b/reserve/request.pl >index 7e51364..a047f4d 100755 >--- a/reserve/request.pl >+++ b/reserve/request.pl >@@ -57,6 +57,7 @@ my ( $template, $borrowernumber, $cookie ) = get_template_and_user( > > my $multihold = $input->param('multi_hold'); > $template->param(multi_hold => $multihold); >+my $showallitems = $input->param('showallitems'); > > # get Branches and Itemtypes > my $branches = GetBranches(); >@@ -319,6 +320,7 @@ foreach my $biblionumber (@biblionumbers) { > my $biblioitem = $biblioiteminfos_of->{$biblioitemnumber}; > my $num_available = 0; > my $num_override = 0; >+ my $hiddencount = 0; > > $biblioitem->{description} = > $itemtypes->{ $biblioitem->{itemtype} }{description}; >@@ -376,7 +378,7 @@ foreach my $biblionumber (@biblionumbers) { > $item->{notforloanvalue} = > $notforloan_label_of->{ $item->{notforloan} }; > } >- >+ > # Management of lost or long overdue items > if ( $item->{itemlost} ) { > >@@ -386,6 +388,10 @@ foreach my $biblionumber (@biblionumbers) { > : $item->{itemlost} == 2 ? "(long overdue)" > : ""; > $item->{backgroundcolor} = 'other'; >+ if (GetHideLostItemsPreference($borrowernumber) && !$showallitems) { >+ $item->{hide} = 1; >+ $hiddencount++; >+ } > } > > # Check the transit status >@@ -458,6 +464,7 @@ foreach my $biblionumber (@biblionumbers) { > $biblioloopiter{warn} = 1; > $biblioloopiter{none_avail} = 1; > } >+ $template->param( hiddencount => $hiddencount); > > push @bibitemloop, $biblioitem; > } >-- >1.7.3 >
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 5547
: 3466 |
3734
|
3739