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

(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/sco/sco-main.tt (-1 / +1 lines)
Lines 204-210 Link Here
204
                </div> <!-- / .span12/12 -->
204
                </div> <!-- / .span12/12 -->
205
                [% IF ( display_patron_image ) %]
205
                [% IF ( display_patron_image ) %]
206
                    <div class="span2">
206
                    <div class="span2">
207
                        <img src="/cgi-bin/koha/sco/sco-patron-image.pl?borrowernumber=[% borrowernumber %]" alt="" />
207
                        <img src="/cgi-bin/koha/sco/sco-patron-image.pl?borrowernumber=[% borrowernumber %]&ck=[% ck %]" alt="" />
208
                    </div>
208
                    </div>
209
                [% END %]
209
                [% END %]
210
            </div> <!-- / .row-fluid -->
210
            </div> <!-- / .row-fluid -->
(-)a/opac/sco/sco-main.pl (+5 lines)
Lines 47-52 use C4::Items; Link Here
47
use Koha::DateUtils qw( dt_from_string );
47
use Koha::DateUtils qw( dt_from_string );
48
use Koha::Acquisition::Currencies;
48
use Koha::Acquisition::Currencies;
49
use Koha::Patron::Images;
49
use Koha::Patron::Images;
50
use Koha::Patrons;
50
use Koha::Patron::Messages;
51
use Koha::Patron::Messages;
51
52
52
my $query = new CGI;
53
my $query = new CGI;
Lines 299-307 if ($borrower->{cardnumber}) { Link Here
299
    );
300
    );
300
    if (C4::Context->preference('ShowPatronImageInWebBasedSelfCheck')) {
301
    if (C4::Context->preference('ShowPatronImageInWebBasedSelfCheck')) {
301
        my $patron_image = Koha::Patron::Images->find($borrower->{borrowernumber});
302
        my $patron_image = Koha::Patron::Images->find($borrower->{borrowernumber});
303
        my $patron = Koha::Patrons->find($borrower->{borrowernumber});
304
        my $hash = md5_base64($patron->cardnumber());
305
302
        $template->param(
306
        $template->param(
303
            display_patron_image => 1,
307
            display_patron_image => 1,
304
            cardnumber           => $borrower->{cardnumber},
308
            cardnumber           => $borrower->{cardnumber},
309
            ck                   => md5_base64($patron->cardnumber()),
305
        ) if $patron_image;
310
        ) if $patron_image;
306
    }
311
    }
307
} else {
312
} else {
(-)a/opac/sco/sco-patron-image.pl (-1 / +10 lines)
Lines 22-27 use warnings; Link Here
22
use C4::Service;
22
use C4::Service;
23
use C4::Members;
23
use C4::Members;
24
use Koha::Patron::Images;
24
use Koha::Patron::Images;
25
use Koha::Patrons;
26
use Digest::MD5 qw(md5_base64);
25
27
26
my ($query, $response) = C4::Service->init(circulate => 'self_checkout');
28
my ($query, $response) = C4::Service->init(circulate => 'self_checkout');
27
29
Lines 35-42 unless (C4::Context->preference('ShowPatronImageInWebBasedSelfCheck')) { Link Here
35
}
37
}
36
38
37
my ($borrowernumber) = C4::Service->require_params('borrowernumber');
39
my ($borrowernumber) = C4::Service->require_params('borrowernumber');
40
my ($check) = C4::Service->require_params('ck');
38
41
39
my $patron_image = Koha::Patron::Images->find($borrowernumber);
42
my $patron_image = Koha::Patron::Images->find($borrowernumber);
43
my $patron = Koha::Patrons->find($borrowernumber);
44
my $hash = md5_base64($patron->cardnumber());
45
46
unless ($check && ($check eq $hash) ){
47
    print $query->header(status => '403 Forbidden - not allowed to display this patron image');
48
    exit;
49
}
40
50
41
if ($patron_image) {
51
if ($patron_image) {
42
    print $query->header(
52
    print $query->header(
43
- 

Return to bug 7550