Bug 9824: Followup for removing filter

Adds allbaskets parameter to GetBasketsInfosByBookseller. (Only used in booksellers.pl now)
Normally, all 'active' baskets are shown. With allbaskets=1 all baskets :)
In the template I had to rename a loop var supplier to supplier1 to resolve
name conflict between template vars.
In the template I added the string: Cancel filter.
Note that this string is already translated:
msgid "Cancel filter"
msgstr ""
Hope this helps.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Undoing the filter works and I checked that the string gets
translated with the po files in current master.
So this is almost perfect, only we can't apply the filters
again and the link remains 'cancel' when we already did.
Sending a follow-up trying to fix this.
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
This commit is contained in:
Marcel de Rooy 2013-05-17 19:01:06 +02:00 committed by Jared Camins-Esakov
parent a0a6d6e64b
commit 529434cab8
3 changed files with 12 additions and 8 deletions

View File

@ -578,7 +578,7 @@ Returns in a arrayref of hashref all about booksellers baskets, plus:
=cut
sub GetBasketsInfosByBookseller {
my ($supplierid) = @_;
my ($supplierid, $allbaskets) = @_;
return unless $supplierid;
@ -595,10 +595,12 @@ sub GetBasketsInfosByBookseller {
) AS expected_items
FROM aqbasket
LEFT JOIN aqorders ON aqorders.basketno = aqbasket.basketno
WHERE booksellerid = ? AND ( aqorders.quantity > aqorders.quantityreceived OR quantityreceived IS NULL)
AND datecancellationprinted IS NULL
GROUP BY aqbasket.basketno
};
WHERE booksellerid = ?};
if(!$allbaskets) {
$query.=" AND (closedate IS NULL OR (aqorders.quantity > aqorders.quantityreceived AND datecancellationprinted IS NULL))";
}
$query.=" GROUP BY aqbasket.basketno";
my $sth = $dbh->prepare($query);
$sth->execute($supplierid);
return $sth->fetchall_arrayref({});

View File

@ -75,6 +75,7 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
#parameters
my $supplier = $query->param('supplier');
my $booksellerid = $query->param('booksellerid');
my $allbaskets= $query->param('allbaskets')||0;
my @suppliers;
if ($booksellerid) {
@ -106,7 +107,7 @@ my $userbranch = $userenv->{branch};
my $loop_suppliers = [];
for my $vendor (@suppliers) {
my $baskets = GetBasketsInfosByBookseller( $vendor->{id} );
my $baskets = GetBasketsInfosByBookseller( $vendor->{id}, $allbaskets );
my $loop_basket = [];

View File

@ -56,12 +56,13 @@ $(document).ready(function() {
[% UNLESS (count == 1) %]
<p>Choose a vendor in the list to jump directly to the right place.
<select id="supplierlist">
[% FOREACH supplier IN loop_suppliers %]
<option value="[% supplier.booksellerid %]">[% supplier.name %]</option>
[% FOREACH supplier1 IN loop_suppliers %]
<option value="[% supplier1.booksellerid %]">[% supplier1.name %]</option>
[% END %]
</select>
</p>
[% END %]
<p><a href="/cgi-bin/koha/acqui/booksellers.pl?supplier=[% supplier %]&booksellerid=[% booksellerid %]&allbaskets=1">Cancel filter</a></p>
<div id="acqui_order_supplierlist">
[% FOREACH supplier IN loop_suppliers %]
<div class="supplier">