From d243ca33603889a777d54d5caae7417041d266d1 Mon Sep 17 00:00:00 2001 From: miker Date: Mon, 19 Jan 2009 20:49:54 +0000 Subject: [PATCH] allow card-only searches git-svn-id: svn://svn.open-ils.org/ILS/trunk@11879 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- .../src/perlmods/OpenILS/Application/Storage/Publisher/actor.pm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/actor.pm b/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/actor.pm index d7b68912c6..4aa853973c 100644 --- a/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/actor.pm +++ b/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/actor.pm @@ -559,10 +559,10 @@ sub patron_search { } } elsif ($addr_where) { $select = "$a_select"; - } else { - return undef; } + return undef if (!$select && !$card); + my $order_by = join ', ', map { 'LOWER(users.'. (split / /,$_)[0] . ') ' . (split / /,$_)[1] } @$sort; my $distinct_list = join ', ', map { 'LOWER(users.'. (split / /,$_)[0] . ')' } @$sort; @@ -585,11 +585,12 @@ sub patron_search { my $descendants = "actor.org_unit_descendants($ws_ou, $ws_ou_depth)"; + $select = "JOIN ($select) AS search ON (search.id = users.id)" if ($select); $select = <<" SQL"; SELECT DISTINCT $distinct_list FROM $u_table AS users $card - JOIN ($select) AS search ON (search.id = users.id) JOIN $descendants d ON (d.id = users.home_ou) + $select $opt_in_join $clone_select WHERE users.deleted = FALSE -- 2.11.0