Bug 10636 - patronimage should have borrowernumber as PK, not cardnumber
[koha-ffzg.git] / opac / sco / sco-patron-image.pl
index 8e94fde..de8d8d6 100755 (executable)
@@ -13,9 +13,9 @@
 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
 # A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
 #
-# You should have received a copy of the GNU General Public License along with
-# Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
-# Suite 330, Boston, MA  02111-1307 USA
+# You should have received a copy of the GNU General Public License along
+# with Koha; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 
 use strict;
 use warnings;
@@ -23,9 +23,19 @@ use C4::Service;
 use C4::Members;
 
 my ($query, $response) = C4::Service->init(circulate => 'circulate_remaining_permissions');
-my ($cardnumber) = C4::Service->require_params('cardnumber');
 
-my ($imagedata, $dberror) = GetPatronImage($cardnumber);
+unless (C4::Context->preference('WebBasedSelfCheck')) {
+    print $query->header(status => '403 Forbidden - web-based self-check not enabled');
+    exit;
+}
+unless (C4::Context->preference('ShowPatronImageInWebBasedSelfCheck')) {
+    print $query->header(status => '403 Forbidden - displaying patron images in self-check not enabled');
+    exit;
+}
+
+my ($borrowernumber) = C4::Service->require_params('borrowernumber');
+
+my ($imagedata, $dberror) = GetPatronImage($borrowernumber);
 
 if ($dberror) {
     print $query->header(status => '500 internal error');
@@ -33,7 +43,6 @@ if ($dberror) {
 
 if ($imagedata) {
     print $query->header(-type => $imagedata->{'mimetype'}, 
-                         -'Cache-Control' => 'no-store', 
                          -Content_Length => length ($imagedata->{'imagefile'})), 
           $imagedata->{'imagefile'};
 } else {