-print map $_->{surname} . ", " . $_->{firstname} . "\t" .
- $_->{cardnumber} . "\t" .
- $_->{address} . "\t" .
- $_->{city} . "\t" .
- $_->{zipcode} . "\t" .
- $_->{country} .
- "\n",
- @{ Search($query, [qw(surname firstname cardnumber)], [10], [qw(surname firstname cardnumber address city zipcode country)]) };
+my $dbh = C4::Context->dbh;
+my $sql = q(
+ SELECT surname, firstname, cardnumber, address, city, zipcode, country
+ FROM borrowers
+ WHERE ( surname LIKE ?
+ OR firstname LIKE ?
+ OR cardnumber LIKE ? )
+);
+if (C4::Context->preference("IndependentBranches")){
+ if ( C4::Context->userenv
+ && (C4::Context->userenv->{flags} % 2) !=1
+ && C4::Context->userenv->{'branch'}
+ ){
+ $sql .= " AND borrowers.branchcode =" . $dbh->quote(C4::Context->userenv->{'branch'});
+ }
+}
+
+$sql .= q( ORDER BY surname, firstname LIMIT 10);
+my $sth = $dbh->prepare( $sql );
+$sth->execute("$query%", "$query%", "$query%");
+
+print "[";
+my $i = 0;
+while ( my $rec = $sth->fetchrow_hashref ) {
+ if($i > 0){ print ","; }
+ print "{\"surname\":\"" . $rec->{surname} . "\",\"" .
+ "firstname\":\"".$rec->{firstname} . "\",\"" .
+ "cardnumber\":\"".$rec->{cardnumber} . "\",\"" .
+ "address\":\"".$rec->{address} . "\",\"" .
+ "city\":\"".$rec->{city} . "\",\"" .
+ "zipcode\":\"".$rec->{zipcode} . "\",\"" .
+ "country\":\"".$rec->{country} . "\"" .
+ "}";
+ $i++;
+}
+print "]";