ffzg/recall_notices.pl: added --interval and --dedup
[koha.git] / acqui / add_user_search.pl
index a950464..d2481c6 100755 (executable)
@@ -24,12 +24,14 @@ use C4::Auth;
 use C4::Output;
 use C4::Members;
 
+use Koha::Patron::Categories;
+
 my $input = new CGI;
 
 my $dbh = C4::Context->dbh;
 
 my ( $template, $loggedinuser, $cookie, $staff_flags ) = get_template_and_user(
-    {   template_name   => "acqui/add_user_search.tt",
+    {   template_name   => "common/patron_search.tt",
         query           => $input,
         type            => "intranet",
         authnotrequired => 0,
@@ -49,47 +51,15 @@ my $search_patrons_with_acq_perm_only =
     ( $referer =~ m|acqui/basket.pl| )
         ? 1 : 0;
 
-if( $op eq "do_search" ) {
-    my $results = C4::Members::Search( $q, "surname");
-
-    my @users_loop;
-    my $nresults = 0;
-    foreach my $res (@$results) {
-        my $should_be_returned = 1;
-
-        if ( $search_patrons_with_acq_perm_only ) {
-            $should_be_returned = 0;
-            my $perms = haspermission( $res->{userid} );
-            my $subperms = get_user_subpermissions( $res->{userid} );
-
-            if( $perms->{superlibrarian} == 1
-             || $perms->{acquisition} == 1
-             || $subperms->{acquisition}->{'order_manage'} ) {
-                $should_be_returned = 1;
-            }
-        }
-        if ( $should_be_returned ) {
-            my %row = (
-                borrowernumber  => $res->{borrowernumber},
-                cardnumber      => $res->{cardnumber},
-                surname         => $res->{surname},
-                firstname       => $res->{firstname},
-                categorycode    => $res->{categorycode},
-                branchcode      => $res->{branchcode},
-            );
-            push( @users_loop, \%row );
-            $nresults ++;
-        }
-    }
-
-    $template->param(
-        q           => $q,
-        nresults    => $nresults,
-        users_loop  => \@users_loop,
-    );
-}
-
+my $patron_categories = Koha::Patron::Categories->search_limited;
 $template->param(
     patrons_with_acq_perm_only => $search_patrons_with_acq_perm_only,
+    view => ( $input->request_method() eq "GET" ) ? "show_form" : "show_results",
+    columns => ['cardnumber', 'name', 'branch', 'category', 'action'],
+    json_template => 'acqui/tables/members_results.tt',
+    selection_type => 'add',
+    alphabet        => ( C4::Context->preference('alphabet') || join ' ', 'A' .. 'Z' ),
+    categories      => $patron_categories,
+    aaSorting       => 1,
 );
 output_html_with_http_headers( $input, $cookie, $template->output );