(bug #3284) fix superlibrarian check
[koha.git] / members / deletemem.pl
index fe0cbee..eea47b0 100755 (executable)
@@ -22,6 +22,7 @@
 # Suite 330, Boston, MA  02111-1307 USA
 
 use strict;
+# use warnings; # FIXME
 
 use CGI;
 use C4::Context;
@@ -49,21 +50,22 @@ my ($bor)=GetMemberDetails($member,'');
 my $flags=$bor->{flags};
 my $userenv = C4::Context->userenv;
 if ($bor->{category_type} eq "S") {
-    unless(C4::Auth::haspermission(undef,$userenv->{'id'},{'staffaccess'=>1})) {
+    unless(C4::Auth::haspermission($userenv->{'id'},{'staffaccess'=>1})) {
         print $input->redirect("/cgi-bin/koha/members/moremember.pl?borrowernumber=$member&error=CANT_DELETE_STAFF");
         exit 1;
     }
 }
 
 if (C4::Context->preference("IndependantBranches")) {
-    unless ($userenv->{flags} == 1){
-        unless ($userenv->{'branch'} eq $bor->{'branchcode'}){
-#           warn "user ".$userenv->{'branch'} ."borrower :". $bor->{'branchcode'};
+    my $userenv = C4::Context->userenv;
+    if (($userenv->{flags} % 2 != 1) && $bor->{'branchcode'}){
+        unless ($userenv->{branch} eq $bor->{'branchcode'}){
             print $input->redirect("/cgi-bin/koha/members/moremember.pl?borrowernumber=$member&error=CANT_DELETE_OTHERLIBRARY");
-            exit 1;
+            exit;
         }
     }
 }
+
 my $dbh = C4::Context->dbh;
 my $sth=$dbh->prepare("Select * from borrowers where guarantorid=?");
 $sth->execute($member);