View | Details | Raw Unified | Return to bug 13926
Collapse All | Expand All

(-)a/circ/circulation.pl (-39 / +22 lines)
Lines 34-39 use C4::Dates qw/format_date/; Link Here
34
use C4::Branch; # GetBranches
34
use C4::Branch; # GetBranches
35
use C4::Koha;   # GetPrinter
35
use C4::Koha;   # GetPrinter
36
use C4::Circulation;
36
use C4::Circulation;
37
use C4::Utils::DataTables::Members;
37
use C4::Members;
38
use C4::Members;
38
use C4::Biblio;
39
use C4::Biblio;
39
use C4::Search;
40
use C4::Search;
Lines 202-230 if ( $print eq 'yes' && $borrowernumber ne '' ) { Link Here
202
# STEP 2 : FIND BORROWER
203
# STEP 2 : FIND BORROWER
203
# if there is a list of find borrowers....
204
# if there is a list of find borrowers....
204
#
205
#
205
my $borrowerslist;
206
my $message;
206
my $message;
207
if ($findborrower) {
207
if ($findborrower) {
208
    my $borrowers = Search($findborrower, 'cardnumber') || [];
208
    my $borrower = C4::Members::GetMember( cardnumber => $findborrower );
209
    if (C4::Context->preference("AddPatronLists")) {
209
    if ( $borrower ) {
210
        if (C4::Context->preference("AddPatronLists")=~/code/){
210
        $borrowernumber = $borrower->{borrowernumber};
211
            my $categories = GetBorrowercategoryList;
211
    } else {
212
            $categories->[0]->{'first'} = 1;
212
        my $dt_params = { iDisplayLength => -1 };
213
            $template->param(categories=>$categories);
213
        my $results = C4::Utils::DataTables::Members::search(
214
            {
215
                searchmember => $findborrower,
216
                dt_params => $dt_params,
217
            }
218
        );
219
        my $borrowers = $results->{patrons};
220
        if ( scalar @$borrowers == 1 ) {
221
            $borrowernumber = $borrowers->[0]->{borrowernumber};
222
            $query->param( 'borrowernumber', $borrowernumber );
223
            $query->param( 'barcode',           '' );
224
        } elsif ( @$borrowers ) {
225
            $template->param( borrowers => $borrowers );
226
        } else {
227
            $query->param( 'findborrower', '' );
228
            $message = "'$findborrower'";
214
        }
229
        }
215
    }
230
    }
216
    if ( @$borrowers == 0 ) {
217
        $query->param( 'findborrower', '' );
218
        $message = "'$findborrower'";
219
    }
220
    elsif ( @$borrowers == 1 ) {
221
        $borrowernumber = $borrowers->[0]->{'borrowernumber'};
222
        $query->param( 'borrowernumber', $borrowernumber );
223
        $query->param( 'barcode',           '' );
224
    }
225
    else {
226
        $borrowerslist = $borrowers;
227
    }
228
}
231
}
229
232
230
# get the borrower information.....
233
# get the borrower information.....
Lines 420-444 if ($borrowernumber) { Link Here
420
      if ( $borrower->{'category_type'} eq 'A' );
423
      if ( $borrower->{'category_type'} eq 'A' );
421
}
424
}
422
425
423
my @values;
424
my %labels;
425
my $selectborrower;
426
if ($borrowerslist) {
427
    foreach (
428
        sort {(lc $a->{'surname'} cmp lc $b->{'surname'} || lc $a->{'firstname'} cmp lc $b->{'firstname'})
429
        } @$borrowerslist
430
      )
431
    {
432
        push @values, $_->{'borrowernumber'};
433
        $labels{ $_->{'borrowernumber'} } =
434
"$_->{'surname'}, $_->{'firstname'} ... ($_->{'cardnumber'} - $_->{'categorycode'} - $_->{'branchcode'}) ...  $_->{'address'} ";
435
    }
436
    $selectborrower = {
437
        values => \@values,
438
        labels => \%labels,
439
    };
440
}
441
442
#title
426
#title
443
my $flags = $borrower->{'flags'};
427
my $flags = $borrower->{'flags'};
444
foreach my $flag ( sort keys %$flags ) {
428
foreach my $flag ( sort keys %$flags ) {
Lines 589-595 $template->param( Link Here
589
    stickyduedate     => $stickyduedate,
573
    stickyduedate     => $stickyduedate,
590
    duedatespec       => $duedatespec,
574
    duedatespec       => $duedatespec,
591
    message           => $message,
575
    message           => $message,
592
    selectborrower    => $selectborrower,
593
    totaldue          => sprintf('%.2f', $total),
576
    totaldue          => sprintf('%.2f', $total),
594
    inprocess         => $inprocess,
577
    inprocess         => $inprocess,
595
    is_child          => ($borrowernumber && $borrower->{'category_type'} eq 'C'),
578
    is_child          => ($borrowernumber && $borrower->{'category_type'} eq 'C'),
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt (-15 / +46 lines)
Lines 44-50 var relatives_borrowernumbers = new Array(); Link Here
44
var MSG_ADD_MESSAGE = _("Add a new message");
44
var MSG_ADD_MESSAGE = _("Add a new message");
45
var MSG_EXPORT_SELECT_CHECKOUTS = _("You must select checkout(s) to export");
45
var MSG_EXPORT_SELECT_CHECKOUTS = _("You must select checkout(s) to export");
46
[% IF ( borrowernumber ) %]if($.cookie("holdfor") != [% borrowernumber %]){ $.cookie("holdfor",null, { path: "/", expires: 0 }); }[% ELSE %]$.cookie("holdfor",null, { path: "/", expires: 0 });[% END %]
46
[% IF ( borrowernumber ) %]if($.cookie("holdfor") != [% borrowernumber %]){ $.cookie("holdfor",null, { path: "/", expires: 0 }); }[% ELSE %]$.cookie("holdfor",null, { path: "/", expires: 0 });[% END %]
47
[% UNLESS ( borrowernumber ) %][% UNLESS ( selectborrower ) %]window.onload=function(){ $('#findborrower').focus(); };[% END %][% END %]
47
[% UNLESS ( borrowernumber ) %][% UNLESS ( borrowers ) %]window.onload=function(){ $('#findborrower').focus(); };[% END %][% END %]
48
48
49
// On-site checkout
49
// On-site checkout
50
function toggle_onsite_checkout(){
50
function toggle_onsite_checkout(){
Lines 83-88 $(document).ready(function() { Link Here
83
    $("#onsite_checkout").click(function(){
83
    $("#onsite_checkout").click(function(){
84
        toggle_onsite_checkout();
84
        toggle_onsite_checkout();
85
    });
85
    });
86
87
    var table = $("#table_borrowers").dataTable($.extend(true, {}, dataTablesDefaults, {
88
        "aoColumnDefs": [
89
            { "aTargets": [ 0 ], "bSortable": false, "bSearchable": false },
90
        ],
91
        "aaSorting": [ 2, "asc" ],
92
        "sDom": "t",
93
        "iDisplayLength": -1
94
    }));
95
    $(table).find('tbody tr').filter(':has(:radio:checked)').end().click(function(event) {
96
        $('#table_borrowers tbody tr').removeClass('selected');
97
        $(this).addClass('selected');
98
        if (event.target.type !== 'radio') {
99
            $(':radio', this).attr('checked', 'true')
100
        }
101
    });
102
86
});
103
});
87
104
88
//]]>
105
//]]>
Lines 100-106 $(document).ready(function() { Link Here
100
    <strong>Checkouts</strong>
117
    <strong>Checkouts</strong>
101
[% END %]
118
[% END %]
102
</div>
119
</div>
103
[% IF ( selectborrower ) %]
120
[% IF ( $borrowers ) %]
104
<div id="doc" class="yui-t7">
121
<div id="doc" class="yui-t7">
105
122
106
   <div id="bd">
123
   <div id="bd">
Lines 500-518 No patron matched <span class="ex">[% message %]</span> Link Here
500
    <input type="hidden" name="duedatespec" value="[% duedatespec %]" />
517
    <input type="hidden" name="duedatespec" value="[% duedatespec %]" />
501
    <input type="hidden" name="stickyduedate" value="[% stickyduedate %]" />
518
    <input type="hidden" name="stickyduedate" value="[% stickyduedate %]" />
502
519
503
<ol>    <li>
520
    <table id="table_borrowers">
504
    <label for="borrowernumber">Select a patron: </label>
521
        <thead>
505
    <select name="borrowernumber" id="borrowernumber" size="7" class="focus" ondblclick="document.forms['mainform'].submit()">
522
            <tr>
506
        [% FOREACH borrower IN selectborrower.values %]
523
                <th></th>
507
        <option value="[% borrower %]">[% selectborrower.labels.$borrower %]</option>
524
                <th>Name</th>
508
        [% END %]
525
                <th>Cardnumber</th>
509
    </select>
526
                <th>Category</th>
510
    </li>
527
                <th>Library</th>
511
</ol>
528
                <th>Address</th>
512
<p><input type="submit" value="Select" /></p>
529
            </tr>
530
        </thead>
531
        <tbody>
532
            [% FOREACH borrower IN borrowers %]
533
            <tr>
534
                <td><input type="radio" name="borrowernumber" value="[% borrower.borrowernumber %]" /></td>
535
                <td>[% borrower.surname %], [% borrower.firstname %]</td>
536
                <td>[% borrower.cardnumber %]</td>
537
                <td>[% borrower.categorycode %]</td>
538
                <td>[% borrower.branchcode %]</td>
539
                <td>[% borrower.address %]</td>
540
            </tr>
541
            [% END %]
542
        </tbody>
543
    </table>
544
    <fieldset class="action"><input type="submit" value="Select" /></fieldset>
513
</fieldset>
545
</fieldset>
514
</form>
546
</form>
515
[% ELSE %] <!-- selectborrower -->
547
[% ELSE %]
516
548
517
<!-- BARCODE ENTRY -->
549
<!-- BARCODE ENTRY -->
518
550
Lines 878-884 No patron matched <span class="ex">[% message %]</span> Link Here
878
910
879
</div>
911
</div>
880
</div>
912
</div>
881
[% UNLESS ( selectborrower ) %][% IF ( borrowernumber ) %]<div class="yui-b">
913
[% UNLESS ( borrowers ) %][% IF ( borrowernumber ) %]<div class="yui-b">
882
[% INCLUDE 'circ-menu.inc' %]
914
[% INCLUDE 'circ-menu.inc' %]
883
</div>[% END %][% END %]
915
</div>[% END %][% END %]
884
</div>
916
</div>
885
- 

Return to bug 13926