X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=members%2Fmember.pl;h=99e8340d611906f8672e50e2b23a1b05f5e652fe;hb=b642e687d2ccca954945d1044df1089af49956c8;hp=409fe66adb3d150b85bf3786921cb6a8ba5fb7c5;hpb=2951d20c699b504447a9bb9bcbf044f56a9a3138;p=koha_fer diff --git a/members/member.pl b/members/member.pl index 409fe66adb..99e8340d61 100755 --- a/members/member.pl +++ b/members/member.pl @@ -26,42 +26,56 @@ use strict; use C4::Auth; use C4::Output; -use C4::Interface::CGI::Output; use CGI; -use C4::Search; -use HTML::Template; +use C4::Members; -my $input = new CGI; +my $input = new CGI; +my $quicksearch = $input->param('quicksearch'); +my ($template, $loggedinuser, $cookie); +if($quicksearch){ + ($template, $loggedinuser, $cookie) + = get_template_and_user({template_name => "members/member-quicksearch-results.tmpl", + query => $input, + type => "intranet", + authnotrequired => 0, + flagsrequired => {borrowers => 1}, + debug => 1, + }); +} else { + ($template, $loggedinuser, $cookie) + = get_template_and_user({template_name => "members/member.tmpl", + query => $input, + type => "intranet", + authnotrequired => 0, + flagsrequired => {borrowers => 1}, + debug => 1, + }); +} my $theme = $input->param('theme') || "default"; - # only used if allowthemeoverride is set + # only used if allowthemeoverride is set #my %tmpldata = pathtotemplate ( template => 'member.tmpl', theme => $theme, language => 'fi' ); - # FIXME - Error-checking + # FIXME - Error-checking #my $template = HTML::Template->new( filename => $tmpldata{'path'}, -# die_on_bad_params => 0, -# loop_context_vars => 1 ); -my ($template, $loggedinuser, $cookie) - = get_template_and_user({template_name => "members/member.tmpl", - query => $input, - type => "intranet", - authnotrequired => 0, - flagsrequired => {borrowers => 1}, - debug => 1, - }); +# die_on_bad_params => 0, +# loop_context_vars => 1 ); -my $member=$input->param('member'); -my $env; +my $member=$input->param('member'); +my $orderby=$input->param('orderby'); +$orderby = "surname,firstname" unless $orderby; +$member =~ s/,//g; #remove any commas from search string +$member =~ s/\*/%/g; my ($count,$results); if(length($member) == 1) { - ($count,$results)=BornameSearch($env,$member,"simple"); + ($count,$results)=SearchMember($member,$orderby,"simple"); } else { - ($count,$results)=BornameSearch($env,$member,"advanced"); + ($count,$results)=SearchMember($member,$orderby,"advanced"); } @@ -69,26 +83,41 @@ my @resultsdata; my $background = 0; for (my $i=0; $i < $count; $i++){ #find out stats - my ($od,$issue,$fines)=borrdata2($env,$results->[$i]{'borrowernumber'}); + my ($od,$issue,$fines)=GetMemberIssuesAndFines($results->[$i]{'borrowernumber'}); my %row = ( - background => $background, - borrowernumber => $results->[$i]{'borrowernumber'}, - cardnumber => $results->[$i]{'cardnumber'}, - surname => $results->[$i]{'surname'}, - firstname => $results->[$i]{'firstname'}, - categorycode => $results->[$i]{'categorycode'}, - streetaddress => $results->[$i]{'streetaddress'}, - city => $results->[$i]{'city'}, - odissue => "$od/$issue", - fines => $fines, - borrowernotes => $results->[$i]{'borrowernotes'}); + background => $background, + count => $i+1, + borrowernumber => $results->[$i]{'borrowernumber'}, + cardnumber => $results->[$i]{'cardnumber'}, + surname => $results->[$i]{'surname'}, + firstname => $results->[$i]{'firstname'}, + categorycode => $results->[$i]{'categorycode'}, + category_type => $results->[$i]{'category_type'}, + category_description => $results->[$i]{'description'}, + streetaddress => $results->[$i]{'streetaddress'}, + city => $results->[$i]{'city'}, + branchcode => $results->[$i]{'branchcode'}, + overdues => $od, + issues => $issue, + odissue => "$od/$issue", + fines => sprintf("%.2f",$fines), + borrowernotes => $results->[$i]{'borrowernotes'}, + sort1 => $results->[$i]{'sort1'}, + sort2 => $results->[$i]{'sort2'}, + ); if ( $background ) { $background = 0; } else {$background = 1; } push(@resultsdata, \%row); } $template->param( - member => $member, - resultsloop => \@resultsdata ); + searching => "1", + member => $member, + numresults => $count, + resultsloop => \@resultsdata, + intranetcolorstylesheet => C4::Context->preference("intranetcolorstylesheet"), + intranetstylesheet => C4::Context->preference("intranetstylesheet"), + IntranetNav => C4::Context->preference("IntranetNav"), + ); output_html_with_http_headers $input, $cookie, $template->output;