&check_routing &updateClaim &removeMissingIssue
&CountIssues
HasItems
+ &GetSubscriptionsFromBorrower
);
}
return 0;
}
+=head2 GetSubscriptionsFromBorrower
+
+($count,@routinglist) = GetSubscriptionsFromBorrower($borrowernumber)
+
+this gets the info from subscriptionroutinglist for each $subscriptionid
+
+return :
+a count of the serial subscription routing lists to which a patron belongs,
+with the titles of those serial subscriptions as an array. Each element of the array
+contains a hash_ref with subscriptionID and title of subscription.
+
+=cut
+
+sub GetSubscriptionsFromBorrower {
+ my ($borrowernumber) = @_;
+ my $dbh = C4::Context->dbh;
+ my $sth = $dbh->prepare(
+ "SELECT subscription.subscriptionid, biblio.title
+ FROM subscription
+ JOIN biblio ON biblio.biblionumber = subscription.biblionumber
+ JOIN subscriptionroutinglist USING (subscriptionid)
+ WHERE subscriptionroutinglist.borrowernumber = ? ORDER BY title ASC
+ "
+ );
+ $sth->execute($borrowernumber);
+ my @routinglist;
+ my $count = 0;
+ while ( my $line = $sth->fetchrow_hashref ) {
+ $count++;
+ push( @routinglist, $line );
+ }
+ return ( $count, @routinglist );
+}
+
=head2 GetNextDate
$resultdate = GetNextDate($planneddate,$subscription)
--- /dev/null
+[% INCLUDE 'doc-head-open.inc' %]
+<title>Subscription Routing Lists for [% INCLUDE 'patron-title.inc' %]</title>
+[% INCLUDE 'doc-head-close.inc' %]
+</head>
+<body>
+[% INCLUDE 'header.inc' %]
+[% INCLUDE 'patron-search.inc' %]
+
+<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> › <a href="/cgi-bin/koha/members/members-home.pl">Patrons</a> › Subscription Routing Lists for [% INCLUDE 'patron-title.inc' %]</div>
+
+<div id="doc3" class="yui-t2">
+ <div id="bd">
+ <div id="yui-main">
+ <div class="yui-b">
+[% INCLUDE 'circ-toolbar.inc' %]
+
+<!-- Search Bar -->
+<p class="tip">Search Subscriptions:</p>
+<form action="/cgi-bin/koha/serials/serials-home.pl" method="get">[% IF ( routing ) %]<input type="hidden" name="routing" value="[% routing %]" />[% END %]<input type="hidden" name="searched" value="1" /> <label for="ISSN_filter">ISSN:</label> <input type="text" size="10" maxlength="11" name="ISSN_filter" id="ISSN_filter" value="[% ISSN_filter %]" /> <label for="title_filter">Title:</label> <input type="text" size="20" maxlength="40" name="title_filter" id="title_filter" value="[% title_filter %]" /><input type="submit" value="Search" class="submit" />
+</form>
+<!-- Search Bar End -->
+
+<h1>
+[% IF ( countSubscrip ) %]
+[% countSubscrip %] Subscription Routing List(s)
+[% ELSE %]
+0 Subscription Routing Lists
+[% END %]
+</h1>
+
+<div id="subscriptions">
+[% IF ( subscripLoop ) %]
+<table id="subscriptiont">
+ <thead>
+ <tr>
+ <th>Subscription Title</th>
+ <th>Routing List</th>
+ </tr>
+ </thead>
+ <tbody>
+[% FOREACH subscripLoop IN subscripLoop %]
+<tr>
+ <td>
+ <a href="/cgi-bin/koha/serials/subscription-detail.pl?subscriptionid=[% subscripLoop.subscriptionid %]"><strong>
+ [% subscripLoop.title %]
+ </strong>
+ </a>
+ </td>
+ <td>
+ <a href="/cgi-bin/koha/serials/routing.pl?subscriptionid=[% subscripLoop.subscriptionid %]"><strong>
+ Edit Routing List
+ </strong>
+ </a>
+ <input type="hidden" name="biblionumber" value="[% biblionumber %]" />
+ <input type="hidden" name="borrowernumber" value="[% borrowernumber %]" />
+ </td>
+ </tr>
+ [% END %]
+ </tbody>
+ </table>
+ </form>
+ [% ELSE %]
+ <p>Patron does not belong to any subscription routing lists.</p>
+ <input type="hidden" name="biblionumber" value="[% biblionumber %]" />
+ <input type="hidden" name="borrowernumber" value="[% borrowernumber %]" />
+ [% END %]
+
+</div>
+
+
+
+
+</div>
+</div>
+
+<div class="yui-b">
+[% INCLUDE 'circ-menu.inc' %]
+</div>
+</div>
+[% INCLUDE 'intranet-bottom.inc' %]
--- /dev/null
+#!/usr/bin/perl
+
+# Copyright 2012 Prosentient Systems
+#
+# This file is part of Koha.
+#
+# Koha is free software; you can redistribute it and/or modify it under the
+# terms of the GNU General Public License as published by the Free Software
+# Foundation; either version 2 of the License, or (at your option) any later
+# version.
+#
+# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+# A PARTICULAR PURPOSE. See the GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with Koha; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+use strict;
+#use warnings; FIXME - Bug 2505
+use CGI;
+use C4::Output;
+use C4::Auth qw/:DEFAULT get_session/;
+use C4::Branch; # GetBranches
+use C4::Members;
+use C4::Context;
+use C4::Serials;
+use CGI::Session;
+
+my $query = new CGI;
+
+my $sessionID = $query->cookie("CGISESSID") ;
+my $session = get_session($sessionID);
+
+# branch are now defined by the userenv
+# but first we have to check if someone has tried to change them
+
+my $branch = $query->param('branch');
+if ($branch){
+ # update our session so the userenv is updated
+ $session->param('branch', $branch);
+ $session->param('branchname', GetBranchName($branch));
+}
+
+my ( $template, $loggedinuser, $cookie ) = get_template_and_user (
+ {
+ template_name => 'members/routing-lists.tt',
+ query => $query,
+ type => "intranet",
+ authnotrequired => 0,
+ flagsrequired => { circulate => 'circulate_remaining_permissions' },
+ }
+);
+
+my $branches = GetBranches();
+
+my $findborrower = $query->param('findborrower');
+$findborrower =~ s|,| |g;
+
+my $borrowernumber = $query->param('borrowernumber');
+
+$branch = C4::Context->userenv->{'branch'};
+
+# get the borrower information.....
+my $borrower;
+if ($borrowernumber) {
+ $borrower = GetMemberDetails( $borrowernumber, 0 );
+}
+
+
+##################################################################################
+# BUILD HTML
+# I'm trying to show the title of subscriptions where the borrowernumber is attached via a routing list
+
+if ($borrowernumber) {
+# new op dev
+ my $count;
+ my @borrowerSubscriptions;
+ ($count, @borrowerSubscriptions) = GetSubscriptionsFromBorrower($borrowernumber );
+ my @subscripLoop;
+
+ foreach my $num_res (@borrowerSubscriptions) {
+ my %getSubscrip;
+ $getSubscrip{subscriptionid} = $num_res->{'subscriptionid'};
+ $getSubscrip{title} = $num_res->{'title'};
+ $getSubscrip{borrowernumber} = $num_res->{'borrowernumber'};
+ push( @subscripLoop, \%getSubscrip );
+ }
+
+ $template->param(
+ countSubscrip => scalar @subscripLoop,
+ subscripLoop => \@subscripLoop,
+ routinglistview => 1
+ );
+
+ $template->param( adultborrower => 1 ) if ( $borrower->{'category_type'} eq 'A' );
+}
+
+##################################################################################
+
+
+# Computes full borrower address
+my (undef, $roadttype_hashref) = &GetRoadTypes();
+my $address = $borrower->{'streetnumber'}.' '.$roadttype_hashref->{$borrower->{'streettype'}}.' '.$borrower->{'address'};
+
+$template->param(
+
+ findborrower => $findborrower,
+ borrower => $borrower,
+ borrowernumber => $borrowernumber,
+ branch => $branch,
+ branchname => GetBranchName($borrower->{'branchcode'}),
+ firstname => $borrower->{'firstname'},
+ surname => $borrower->{'surname'},
+ categorycode => $borrower->{'categorycode'},
+ categoryname => $borrower->{description},
+ address => $address,
+ address2 => $borrower->{'address2'},
+ email => $borrower->{'email'},
+ emailpro => $borrower->{'emailpro'},
+ borrowernotes => $borrower->{'borrowernotes'},
+ city => $borrower->{'city'},
+ zipcode => $borrower->{'zipcode'},
+ country => $borrower->{'country'},
+ phone => $borrower->{'phone'} || $borrower->{'mobile'},
+ cardnumber => $borrower->{'cardnumber'},
+);
+
+my ($picture, $dberror) = GetPatronImage($borrower->{'cardnumber'});
+$template->param( picture => 1 ) if $picture;
+
+output_html_with_http_headers $query, $cookie, $template->output;