[followup](bug #4062) marc21 item support
[koha.git] / admin / aqbookfund.pl
index d5673c8..604ae08 100755 (executable)
@@ -1,6 +1,6 @@
 #!/usr/bin/perl
 
-#written 20/02/2002 by paul.poulain@free.fr
+# written 20/02/2002 by paul.poulain@free.fr
 
 # Copyright 2000-2002 Katipo Communications
 #
@@ -43,14 +43,13 @@ C<op> can be equal to:
        - builds the add/modify form
 * add_validate, then
        - the user has just send datas, so we create/modify the record
-* delete_form, then
-       - we show the record having primkey=$primkey and ask for deletion validation form
 * delete_confirm, then
     - we delete the record having primkey=$primkey
 
 =cut
 
 use strict;
+# use warnings; FIXME
 use CGI;
 use List::Util qw/min/;
 use C4::Branch; # GetBranches
@@ -62,38 +61,30 @@ use C4::Output;
 use C4::Dates;
 use C4::Debug;
 
-# use Smart::Comments;
-
-my $dbh = C4::Context->dbh;
-my $input = new CGI;
-my $script_name="/cgi-bin/koha/admin/aqbookfund.pl";
-my $bookfundid=$input->param('bookfundid');
-my $branchcodeid=$input->param('branchcode')|'';
-my $pagesize = 10;
-my $op = $input->param('op') || '';
-
-my ($template, $borrowernumber, $cookie)
-    = get_template_and_user(
-        {template_name => "admin/aqbookfund.tmpl",
-         query => $input,
-         type => "intranet",
-         authnotrequired => 0,
-         flagsrequired => {parameters => 1},
-         debug => 1,
-        }
-    );
+my $input        = new CGI;
+my $script_name  = "/cgi-bin/koha/admin/aqbookfund.pl";
+my $bookfundid   = $input->param('bookfundid');
+my $branchcodeid = $input->param('branchcode') || '';
+my $op           = $input->param('op')         || '';
+my $pagesize     = 10;
+
+$bookfundid = uc $bookfundid if $bookfundid;
+
+my ($template, $borrowernumber, $cookie) = get_template_and_user(
+    {   template_name   => "admin/aqbookfund.tmpl",
+        query           => $input,
+        type            => "intranet",
+        authnotrequired => 0,
+        flagsrequired   => { parameters => 1 },
+        debug           => 1,
+    }
+);
 
-if ($op) {
-    $template->param(
-        script_name => $script_name,
-        $op => 1,
-    ); # we show only the TMPL_VAR names $op
-}
-else {
-    $template->param(script_name => $script_name,
-               else              => 1); # we show only the TMPL_VAR names $op
-}
-$template->param(action => $script_name);
+$template->param(
+    action        => $script_name,
+    script_name   => $script_name,
+    ($op||'else') => 1,
+);
 
 my $branches = GetBranches;
 
@@ -102,73 +93,55 @@ my $branches = GetBranches;
 if ($op eq 'add_form') {
        #---- if primkey exists, it's a modify action, so read values to modify...
        my $dataaqbookfund;
-       my $header;
-       if ($bookfundid) {
-       $dataaqbookfund = GetBookFund($bookfundid,$branchcodeid);
-       }
        if ($bookfundid) {
-           $header = "Modify book fund";
+        $dataaqbookfund = GetBookFund($bookfundid, $branchcodeid);
            $template->param('header-is-modify-p' => 1);
-           $template->param('current_branch' =>  $branchcodeid);
+           $template->param('current_branch' => $branchcodeid);
        } else {
-           $header = "Add book fund";
            $template->param('header-is-add-p' => 1);
        }
-       $template->param('use-header-flags-p' => 1);
-       $template->param(header => $header); # NOTE deprecated
-       my $add_or_modify=0;
-       if ($bookfundid) {
-           $add_or_modify=1;
-       }
-       $template->param(add_or_modify => $add_or_modify);
-       $template->param(bookfundid =>$bookfundid);
-       $template->param(bookfundname =>$dataaqbookfund->{'bookfundname'});
-
-        my @branchloop;
-        foreach my $branchcode (sort keys %{$branches}) {
-            my $row = {
-                branchcode => $branchcode,
-                branchname => $branches->{$branchcode}->{branchname},
-            };
-
-            if (defined $bookfundid
-                and defined $dataaqbookfund->{branchcode}
-                and $dataaqbookfund->{branchcode} eq $branchcode) {
-                $row->{selected} = 1;
-            }
-
-            push @branchloop, $row;
-        }
+       $template->param(
+        'use-header-flags-p' => 1,
+        add_or_modify => $bookfundid ? 1 : 0,
+        bookfundid    => $bookfundid,
+        bookfundname  => $dataaqbookfund->{'bookfundname'}
+    );
+
+    my @branchloop;
+    foreach my $branchcode (sort keys %{$branches}) {
+        push @branchloop, {
+            branchcode => $branchcode,
+            branchname => $branches->{$branchcode}->{branchname},
+            selected   => (defined $bookfundid and defined $dataaqbookfund->{branchcode}
+                            and $dataaqbookfund->{branchcode} eq $branchcode) ? 1 : 0,
+        };
+    }
 
-        $template->param(branches => \@branchloop);
+    $template->param(branches => \@branchloop);
 
 } # END $OP eq ADD_FORM
 
 #-----############# ADD_VALIDATE ##################################
 # called by add_form, used to insert/modify data in DB
 elsif ($op eq 'add_validate') {
-### add
-       my $bookfundid = uc $input->param('bookfundid');
-        my $bookfundname = $input->param('bookfundname');
-        my $branchcode = $input->param('branchcode') || undef;
-
+    my $bookfundname = $input->param('bookfundname');
+    my $branchcode   = $input->param('branchcode') || undef;
     my $number = Countbookfund($bookfundid,$branchcodeid);
     if ($number == 0 ) {
-
         NewBookFund(
             $bookfundid,
             $input->param('bookfundname'),
             $input->param('branchcode')||''
         );
     }
-    $input->redirect('aqbookfund.pl');
+    print $input->redirect('aqbookfund.pl');    # FIXME: unnecessary redirect
+    exit;
 # END $OP eq ADD_VALIDATE
 }
 
 #-----############# MOD_VALIDATE ##################################
 # called by add_form, used to insert/modify data in DB
 elsif ($op eq 'mod_validate') {
-       my $bookfundid  = uc $input->param('bookfundid');
        my $bookfundname   = $input->param('bookfundname');
        my $branchcode     = $input->param('branchcode'    ) || undef;
        my $current_branch = $input->param('current_branch') || undef;
@@ -176,34 +149,27 @@ elsif ($op eq 'mod_validate') {
 
        my $number = Countbookfund($bookfundid,$branchcodeid);
     if ($number < 2)  {
-         $debug and warn "name :$bookfundname branch:$branchcode";
+        $debug and warn "name :$bookfundname branch:$branchcode";
         ModBookFund($bookfundname,$bookfundid,$current_branch, $branchcode);
     }
-   $input->redirect('aqbookfund.pl');
+   print $input->redirect('aqbookfund.pl'); # FIXME: unnecessary redirect
+   exit;
 }
 
 #-----############# DELETE_CONFIRM ##################################
 # called by default form, used to confirm deletion of data in DB
 elsif ($op eq 'delete_confirm') {
     my $data = GetBookFund($bookfundid,$branchcodeid);
-       $template->param(bookfundid => $bookfundid);
+       $template->param(bookfundid   => $bookfundid);
        $template->param(bookfundname => $data->{'bookfundname'});
-       $template->param(branchcode => $data->{'branchcode'});
-} # END $OP eq DELETE_CONFIRM
-
-#-----############# DELETE_CONFIRMED ##################################
+       $template->param(branchcode   => $data->{'branchcode'});
+}
 # called by delete_confirm, used to effectively confirm deletion of data in DB
 elsif ($op eq 'delete_confirmed') {
-    DelBookFund(uc($input->param('bookfundid')),$branchcodeid);
-
-}# END $OP eq DELETE_CONFIRMED
-
-#-----############# DEFAULT ##################################
+    DelBookFund($bookfundid, $branchcodeid);
+}
 else { # DEFAULT
-    my ($query, $sth);
-
-    $template->param(scriptname => $script_name);
-
+    my ($sth);
     # filters
     my @branchloop;
     foreach my $branchcode (sort keys %{$branches}) {
@@ -225,12 +191,12 @@ else { # DEFAULT
         if (defined $input->param('filter_bookfundid') and $input->param('filter_bookfundid') eq $row->{bookfundid}){
             $row->{selected} = 1;
         }
-         push @bookfundids_loop, $row;
-     }
+        push @bookfundids_loop, $row;
+    }
 
     $template->param(
-        filter_bookfundids => \@bookfundids_loop,
-        filter_branches => \@branchloop,
+        filter_bookfundids  => \@bookfundids_loop,
+        filter_branches     => \@branchloop,
         filter_bookfundname => $input->param('filter_bookfundname') || undef,
     );
 
@@ -268,18 +234,12 @@ else { # DEFAULT
         scalar(@results) - 1,
     );
 
-    my $toggle = 0;
     foreach my $result (@results[$first .. $last]) {
-        push(
-            @loop,
-            {
-                %{$result},
-                toggle => $toggle++%2,
-                branchname =>
-                    $branches->{ $result->{branchcode} }->{branchname},
-                has_budgets => defined $nb_budgets_of{ $result->{bookfundid} },
-            }
-        );
+        push @loop, {
+            %{$result},
+            branchname  => $branches->{ $result->{branchcode} }->{branchname},
+            has_budgets => defined $nb_budgets_of{ $result->{bookfundid} },
+        };
     }
 
     $template->param(
@@ -290,6 +250,7 @@ else { # DEFAULT
                         $page,
                         'page'
             )
-        );
-} #---- END $OP eq DEFAULT
+    );
+}
+
 output_html_with_http_headers $input, $cookie, $template->output;