Cleanup: biblio_framework and marctagstructure
authorJoe Atzberger <joe.atzberger@liblime.com>
Wed, 10 Jun 2009 21:53:28 +0000 (16:53 -0500)
committerGalen Charlton <galen.charlton@liblime.com>
Fri, 12 Jun 2009 14:58:53 +0000 (09:58 -0500)
Removed unused javascript.  Enabled warnings.  Use common $dbh.
Removed sth->finish calls.  Removed toggle code.  Added row highlight where
none had been implemented.  Repaired validation error w/ mislocated input tag.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
admin/biblio_framework.pl
admin/marctagstructure.pl
koha-tmpl/intranet-tmpl/prog/en/modules/admin/biblio_framework.tmpl
koha-tmpl/intranet-tmpl/prog/en/modules/admin/marctagstructure.tmpl

index 3837ca5..328efc6 100755 (executable)
 # Suite 330, Boston, MA  02111-1307 USA
 
 use strict;
+use warnings;
 use CGI;
 use C4::Context;
 use C4::Auth;
 use C4::Output;
 
-
 sub StringSearch  {
-       my ($searchstring,$type)=@_;
        my $dbh = C4::Context->dbh;
-       $searchstring=~ s/\'/\\\'/g;
-       my @data=split(' ',$searchstring);
-       my $count=@data;
        my $sth=$dbh->prepare("Select * from biblio_framework where (frameworkcode like ?) order by frameworktext");
-       $sth->execute("$data[0]%");
-       my @results;
-       while (my $data=$sth->fetchrow_hashref){
-       push(@results,$data);
-       }
-       #  $sth->execute;
-       $sth->finish;
-       return (scalar(@results),\@results);
+       $sth->execute((shift || '') . '%');
+    return $sth->fetchall_arrayref({});
 }
 
 my $input = new CGI;
-my $searchfield=$input->param('frameworkcode');
-my $offset=$input->param('offset');
-my $script_name="/cgi-bin/koha/admin/biblio_framework.pl";
-my $frameworkcode=$input->param('frameworkcode');
-my $pagesize=20;
-my $op = $input->param('op');
-$searchfield=~ s/\,//g;
+my $script_name   = "/cgi-bin/koha/admin/biblio_framework.pl";
+my $frameworkcode = $input->param('frameworkcode') || '';
+my $offset        = $input->param('offset') || 0;
+my $op            = $input->param('op') || '';
+my $pagesize      = 20;
+
 my ($template, $borrowernumber, $cookie)
     = get_template_and_user({template_name => "admin/biblio_framework.tmpl",
                             query => $input,
@@ -62,17 +51,10 @@ my ($template, $borrowernumber, $cookie)
                             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( script_name  => $script_name);
+$template->param(($op||'else') => 1);
 
+my $dbh = C4::Context->dbh;
 ################## ADD_FORM ##################################
 # called by default. Used to create form to add or  modify a record
 if ($op eq 'add_form') {
@@ -80,91 +62,70 @@ if ($op eq 'add_form') {
        #---- if primkey exists, it's a modify action, so read values to modify...
        my $data;
        if ($frameworkcode) {
-               my $dbh = C4::Context->dbh;
                my $sth=$dbh->prepare("select * from biblio_framework where frameworkcode=?");
                $sth->execute($frameworkcode);
                $data=$sth->fetchrow_hashref;
-               $sth->finish;
        }
-       $template->param(frameworkcode => $frameworkcode,
-                                                       frameworktext => $data->{'frameworktext'},
-                                                       );
-;
+       $template->param(
+        frameworkcode => $frameworkcode,
+        frameworktext => $data->{'frameworktext'},
+    );
                                                                                                        # END $OP eq ADD_FORM
 ################## ADD_VALIDATE ##################################
 # called by add_form, used to insert/modify data in DB
 } elsif ($op eq 'add_validate') {
-       my $dbh = C4::Context->dbh;
     if ($input->param('modif')) {
         my $sth=$dbh->prepare("UPDATE biblio_framework SET frameworktext=? WHERE frameworkcode=?");
         $sth->execute($input->param('frameworktext'),$input->param('frameworkcode'));
-        $sth->finish;
     } else {
         my $sth=$dbh->prepare("INSERT into biblio_framework (frameworkcode,frameworktext) values (?,?)");
         $sth->execute($input->param('frameworkcode'),$input->param('frameworktext'));
-        $sth->finish;
     }
-       print "Content-Type: text/html\n\n<META HTTP-EQUIV=Refresh CONTENT=\"0; URL=biblio_framework.pl\"></html>";
+       print $input->redirect($script_name);   # FIXME: unnecessary redirect
        exit;
                                                                                                        # END $OP eq ADD_VALIDATE
 ################## DELETE_CONFIRM ##################################
 # called by default form, used to confirm deletion of data in DB
 } elsif ($op eq 'delete_confirm') {
-       #start the page and read in includes
-       my $dbh = C4::Context->dbh;
-
        # Check both categoryitem and biblioitems, see Bug 199
-       my $total = 0;
-       for my $table ('marc_tag_structure') {
-          my $sth=$dbh->prepare("select count(*) as total from $table where frameworkcode=?");
-          $sth->execute($frameworkcode);
-          $total += $sth->fetchrow_hashref->{total};
-          $sth->finish;
-       }
+    my $sth = $dbh->prepare("select count(*) as total from marc_tag_structure where frameworkcode=?");
+    $sth->execute($frameworkcode);
+    my $total = $sth->fetchrow_hashref->{total};
 
-       my $sth=$dbh->prepare("select * from biblio_framework where frameworkcode=?");
+       $sth = $dbh->prepare("select * from biblio_framework where frameworkcode=?");
        $sth->execute($frameworkcode);
-       my $data=$sth->fetchrow_hashref;
-       $sth->finish;
+       my $data = $sth->fetchrow_hashref;
 
-       $template->param(frameworkcode => $frameworkcode,
-                                                       frameworktext => $data->{'frameworktext'},
-                                                       total => $total);
+       $template->param(
+        frameworkcode => $frameworkcode,
+        frameworktext => $data->{'frameworktext'},
+        total => $total
+    );
                                                                                                        # END $OP eq DELETE_CONFIRM
 ################## DELETE_CONFIRMED ##################################
 # called by delete_confirm, used to effectively confirm deletion of data in DB
 } elsif ($op eq 'delete_confirmed') {
-       #start the page and read in includes
-       my $dbh = C4::Context->dbh;
-#      my $frameworkcode=uc($input->param('frameworkcode'));
-#   
-       if($frameworkcode) { 
+    if ($frameworkcode) { 
                my $sth=$dbh->prepare("delete from marc_tag_structure where frameworkcode=?");
                $sth->execute($frameworkcode);
                $sth=$dbh->prepare("delete from marc_subfield_structure where frameworkcode=?");
                $sth->execute($frameworkcode);
                $sth=$dbh->prepare("delete from biblio_framework where frameworkcode=?");
                $sth->execute($frameworkcode);
-               $sth->finish;
        }
-       print "Content-Type: text/html\n\n<META HTTP-EQUIV=Refresh CONTENT=\"0; URL=biblio_framework.pl\"></html>";
+       print $input->redirect($script_name);   # FIXME: unnecessary redirect
        exit;
                                                                                                        # END $OP eq DELETE_CONFIRMED
 ################## DEFAULT ##################################
 } else { # DEFAULT
-       my ($count,$results)=StringSearch($searchfield,'web');
-       my $toggle="white";
+       my $results = StringSearch($frameworkcode);
+    my $count = scalar(@$results);
        my @loop_data;
        for (my $i=$offset; $i < ($offset+$pagesize<$count?$offset+$pagesize:$count); $i++){
-               my %row_data;
-               if ($toggle eq 'white'){
-                       $row_data{toggle}="#ffffcc";
-               } else {
-                       $row_data{toggle}="white";
-               }
-               $row_data{frameworkcode} = $results->[$i]{'frameworkcode'};
-               $row_data{frameworktext} = $results->[$i]{'frameworktext'};
-               push(@loop_data, \%row_data);
+               push @loop_data, {
+            frameworkcode => $results->[$i]{'frameworkcode'},
+            frameworktext => $results->[$i]{'frameworktext'},
+        };
        }
        $template->param(loop => \@loop_data);
        if ($offset>0) {
@@ -176,8 +137,6 @@ if ($op eq 'add_form') {
                $template->param(next => "$script_name?offset=".$nextpage);
        }
 } #---- END $OP eq DEFAULT
+
 output_html_with_http_headers $input, $cookie, $template->output;
 
-# Local Variables:
-# tab-width: 4
-# End:
index b930271..acd8cd7 100755 (executable)
@@ -29,22 +29,19 @@ use C4::Context;
 
 # retrieve parameters
 my $input = new CGI;
-my $frameworkcode = $input->param('frameworkcode'); # set to select framework
-$frameworkcode="" unless $frameworkcode;
-my $existingframeworkcode = $input->param('existingframeworkcode'); # set when we have to create a new framework (in frameworkcode) by copying an old one (in existingframeworkcode)
-$existingframeworkcode = "" unless $existingframeworkcode;
+my $frameworkcode         = $input->param('frameworkcode')         || ''; # set to select framework
+my $existingframeworkcode = $input->param('existingframeworkcode') || '';
+my $searchfield           = $input->param('searchfield') || 0;
+# set when we have to create a new framework (in frameworkcode) by copying an old one (in existingframeworkcode)
 my $frameworkinfo = getframeworkinfo($frameworkcode);
-my $searchfield=$input->param('searchfield');
-$searchfield=0 unless $searchfield;
 $searchfield=~ s/\,//g;
-my $last_searchfield=$input->param('searchfield');
 
-my $offset=$input->param('offset') || 0;
-my $op = $input->param('op') || '';
+my $offset    = $input->param('offset') || 0;
+my $op        = $input->param('op')     || '';
 my $dspchoice = $input->param('select_display');
-my $pagesize=20;
+my $pagesize = 20;
 
-my $script_name="/cgi-bin/koha/admin/marctagstructure.pl";
+my $script_name = "/cgi-bin/koha/admin/marctagstructure.pl";
 
 my $dbh = C4::Context->dbh;
 
@@ -62,39 +59,34 @@ my ($template, $loggedinuser, $cookie)
 my $frameworks = getframeworks();
 my @frameworkloop;
 foreach my $thisframeworkcode (keys %$frameworks) {
-       my $selected = 1 if $thisframeworkcode eq $frameworkcode;
-       my %row =(value => $thisframeworkcode,
-                               selected => $selected,
-                               frameworktext => $frameworks->{$thisframeworkcode}->{'frameworktext'},
-                       );
-       push @frameworkloop, \%row;
+       push @frameworkloop, {
+        value => $thisframeworkcode,
+        selected => ($thisframeworkcode eq $frameworkcode) ? 1 : 0,
+        frameworktext => $frameworks->{$thisframeworkcode}->{'frameworktext'},
+    };
 }
 
 # check that framework is defined in marc_tag_structure
 my $sth=$dbh->prepare("select count(*) from marc_tag_structure where frameworkcode=?");
 $sth->execute($frameworkcode);
 my ($frameworkexist) = $sth->fetchrow;
-if ($frameworkexist) {
-} else {
+unless ($frameworkexist) {
        # if frameworkcode does not exists, then OP must be changed to "create framework" if we are not on the way to create it
        # (op = itemtyp_create_confirm)
        if ($op eq "framework_create_confirm") {
                duplicate_framework($frameworkcode, $existingframeworkcode);
-               $op=""; # unset $op to go back to framework list
+               $op = ""; # unset $op to go back to framework list
        } else {
                $op = "framework_create";
        }
 }
-$template->param(frameworkloop => \@frameworkloop,
-                               frameworkcode => $frameworkcode,
-                               frameworktext => $frameworkinfo->{frameworktext});
-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(
+    frameworkloop => \@frameworkloop,
+    frameworkcode => $frameworkcode,
+    frameworktext => $frameworkinfo->{frameworktext},
+    script_name   => $script_name,
+    ($op||'else') => 1,
+);
 
 
 ################## ADD_FORM ##################################
@@ -106,7 +98,6 @@ if ($op eq 'add_form') {
                $sth=$dbh->prepare("select tagfield,liblibrarian,libopac,repeatable,mandatory,authorised_value from marc_tag_structure where tagfield=? and frameworkcode=?");
                $sth->execute($searchfield,$frameworkcode);
                $data=$sth->fetchrow_hashref;
-               $sth->finish;
        }
        my $sth = $dbh->prepare("select distinct category from authorised_values");
        $sth->execute;
@@ -123,8 +114,8 @@ if ($op eq 'add_form') {
                        -default => $data->{'authorised_value'},
                        );
 
-  $template->param(searchfield => $searchfield) if ($searchfield);
        if ($searchfield) {
+        $template->param(searchfield => $searchfield);
                $template->param(action => "Modify tag");
                $template->param('heading-modify-tag-p' => 1);
        } else {
@@ -146,43 +137,43 @@ if ($op eq 'add_form') {
                                                -id => 'mandatory'),
                        authorised_value => $authorised_value,
                        frameworkcode => $frameworkcode,
-                       );
+    );  # FIXME: move checkboxes to presentation layer
                                                                                                        # END $OP eq ADD_FORM
 ################## ADD_VALIDATE ##################################
 # called by add_form, used to insert/modify data in DB
 } elsif ($op eq 'add_validate') {
-       my $tagfield       =$input->param('tagfield');
-       my $liblibrarian  = $input->param('liblibrarian');
-       my $libopac       =$input->param('libopac');
-       my $repeatable =$input->param('repeatable');
-       my $mandatory =$input->param('mandatory');
-       my $authorised_value =$input->param('authorised_value');
-    if ($input->param('modif')) {
-        $sth=$dbh->prepare("UPDATE marc_tag_structure SET liblibrarian=? ,libopac=? ,repeatable=? ,mandatory=? ,authorised_value=? WHERE frameworkcode=? AND tagfield=?");
-         unless (C4::Context->config('demo') eq 1) {
+       my $tagfield         = $input->param('tagfield');
+       my $liblibrarian     = $input->param('liblibrarian');
+       my $libopac          = $input->param('libopac');
+       my $repeatable       = $input->param('repeatable') ? 1 : 0;
+       my $mandatory        = $input->param('mandatory')  ? 1 : 0;
+       my $authorised_value = $input->param('authorised_value');
+    unless (C4::Context->config('demo') eq 1) {
+        if ($input->param('modif')) {
+            $sth = $dbh->prepare(
+            "UPDATE marc_tag_structure SET liblibrarian=? ,libopac=? ,repeatable=? ,mandatory=? ,authorised_value=? WHERE frameworkcode=? AND tagfield=?"
+            );
             $sth->execute(  $liblibrarian,
                             $libopac,
-                            $repeatable?1:0,
-                            $mandatory?1:0,
+                            $repeatable,
+                            $mandatory,
                             $authorised_value,
                             $frameworkcode,
                             $tagfield
-                                );
-        }
-        $sth->finish;
-       } else {
-        $sth=$dbh->prepare("INSERT INTO marc_tag_structure (tagfield,liblibrarian,libopac,repeatable,mandatory,authorised_value,frameworkcode) values (?,?,?,?,?,?,?)");
-        unless (C4::Context->config('demo') eq 1) {
+            );
+        } else {
+            $sth = $dbh->prepare(
+            "INSERT INTO marc_tag_structure (tagfield,liblibrarian,libopac,repeatable,mandatory,authorised_value,frameworkcode) values (?,?,?,?,?,?,?)"
+            );
             $sth->execute($tagfield,
-                                $liblibrarian,
-                                $libopac,
-                                $repeatable?1:0,
-                                $mandatory?1:0,
-                                $authorised_value,
-                                $frameworkcode
-                                );
+                          $liblibrarian,
+                          $libopac,
+                          $repeatable,
+                          $mandatory,
+                          $authorised_value,
+                          $frameworkcode
+            );
         }
-        $sth->finish;
        }
     print $input->redirect("/cgi-bin/koha/admin/marctagstructure.pl?searchfield=$tagfield&frameworkcode=$frameworkcode");
        exit;
@@ -191,24 +182,27 @@ if ($op eq 'add_form') {
 # called by default form, used to confirm deletion of data in DB
 } elsif ($op eq 'delete_confirm') {
        $sth=$dbh->prepare("select tagfield,liblibrarian,libopac,repeatable,mandatory,authorised_value from marc_tag_structure where tagfield=? and frameworkcode=?");
-       $sth->execute($searchfield,$frameworkcode);
-       my $data=$sth->fetchrow_hashref;
-       $sth->finish;
-       $template->param(liblibrarian => $data->{'liblibrarian'},
-                                                       searchfield => $searchfield,
-                                                       frameworkcode => $frameworkcode,
-                                                       );
+    $sth->execute($searchfield, $frameworkcode);
+    my $data = $sth->fetchrow_hashref;
+       $template->param(
+         liblibrarian => $data->{'liblibrarian'},
+          searchfield => $searchfield,
+        frameworkcode => $frameworkcode,
+    );
                                                                                                        # END $OP eq DELETE_CONFIRM
 ################## DELETE_CONFIRMED ##################################
 # called by delete_confirm, used to effectively confirm deletion of data in DB
 } elsif ($op eq 'delete_confirmed') {
        unless (C4::Context->config('demo') eq 1) {
-               $dbh->do("delete from marc_tag_structure where tagfield='$searchfield' and frameworkcode='$frameworkcode'");
-               $dbh->do("delete from marc_subfield_structure where tagfield='$searchfield' and frameworkcode='$frameworkcode'");
+        my $sth1 = $dbh->prepare("DELETE FROM marc_tag_structure      WHERE tagfield=? AND frameworkcode=?");
+        my $sth2 = $dbh->prepare("DELETE FROM marc_subfield_structure WHERE tagfield=? AND frameworkcode=?");
+        $sth1->execute($searchfield, $frameworkcode);
+        $sth2->execute($searchfield, $frameworkcode);
        }
-       $template->param(searchfield => $searchfield,
-                                                       frameworkcode => $frameworkcode,
-                                                       );
+       $template->param(
+          searchfield => $searchfield,
+        frameworkcode => $frameworkcode,
+    );
                                                                                                        # END $OP eq DELETE_CONFIRMED
 ################## ITEMTYPE_CREATE ##################################
 # called automatically if an unexisting  frameworkis selected
@@ -218,10 +212,10 @@ if ($op eq 'add_form') {
        my @existingframeworkloop;
        while (my ($tot,$thisframeworkcode,$frameworktext) = $sth->fetchrow) {
                if ($tot>0) {
-                       my %line = ( value => $thisframeworkcode,
-                                               frameworktext => $frameworktext,
-                                       );
-                       push @existingframeworkloop,\%line;
+                       push @existingframeworkloop, {
+                value => $thisframeworkcode,
+                frameworktext => $frameworktext,
+            };
                }
        }
        $template->param(existingframeworkloop => \@existingframeworkloop,
@@ -231,9 +225,9 @@ if ($op eq 'add_form') {
 ################## DEFAULT ##################################
 } else { # DEFAULT
        # here, $op can be unset or set to "framework_create_confirm".
-       if  ($searchfield ne '') {
-                $template->param(searchfield => $searchfield);
-       }
+    if ($searchfield ne '') {
+        $template->param(searchfield => $searchfield);
+    }
        my $cnt=0;
        if ($dspchoice) {
                #here, user only wants used tags/subfields displayed
@@ -256,94 +250,73 @@ if ($op eq 'add_form') {
                        push(@results,$data);
                        $cnt++;
                }
-               $sth->finish;
                
-               my $toggle=0;
                my @loop_data = ();
                my $j=1;
                my $i=$offset;
                while ($i < ($offset+$pagesize<$cnt?$offset+$pagesize:$cnt)) {
-                       if ($toggle eq 0){
-                               $toggle=1;
-                       } else {
-                               $toggle=0;
-                       }
                        my %row_data;  # get a fresh hash for the row data
-                       $row_data{tagfield} = $results[$i]->{'mts_tagfield'};
-                       $row_data{liblibrarian} = $results[$i]->{'mts_liblibrarian'};
-                       $row_data{repeatable} = $results[$i]->{'mts_repeatable'};
-                       $row_data{mandatory} = $results[$i]->{'mts_mandatory'};
+                       $row_data{tagfield}         = $results[$i]->{'mts_tagfield'};
+                       $row_data{liblibrarian}     = $results[$i]->{'mts_liblibrarian'};
+                       $row_data{repeatable}       = $results[$i]->{'mts_repeatable'};
+                       $row_data{mandatory}        = $results[$i]->{'mts_mandatory'};
                        $row_data{authorised_value} = $results[$i]->{'mts_authorised_value'};
-                       $row_data{subfield_link} ="marc_subfields_structure.pl?op=add_form&amp;tagfield=".$results[$i]->{'mts_tagfield'}."&amp;frameworkcode=".$frameworkcode;
-                       $row_data{edit} = "$script_name?op=add_form&amp;searchfield=".$results[$i]->{'mts_tagfield'}."&amp;frameworkcode=".$frameworkcode;
-                       $row_data{delete} = "$script_name?op=delete_confirm&amp;searchfield=".$results[$i]->{'mts_tagfield'}."&amp;frameworkcode=".$frameworkcode;
-                       $row_data{toggle} = $toggle;
+                       $row_data{subfield_link} = "marc_subfields_structure.pl?op=add_form&amp;tagfield=".$results[$i]->{'mts_tagfield'}."&amp;frameworkcode=".$frameworkcode;
+                       $row_data{edit}          = "$script_name?op=add_form&amp;searchfield="            .$results[$i]->{'mts_tagfield'}."&amp;frameworkcode=".$frameworkcode;
+                       $row_data{delete}        = "$script_name?op=delete_confirm&amp;searchfield="      .$results[$i]->{'mts_tagfield'}."&amp;frameworkcode=".$frameworkcode;
                        $j=$i;
                        my @internal_loop = ();
                        while (($results[$i]->{'tagfield'}==$results[$j]->{'tagfield'}) and ($j< ($offset+$pagesize<$cnt?$offset+$pagesize:$cnt))) {
                                my %subfield_data;
-                               $subfield_data{tagsubfield} = $results[$j]->{'tagsubfield'};
-                               $subfield_data{liblibrarian} = $results[$j]->{'liblibrarian'};
-                               $subfield_data{kohafield} = $results[$j]->{'kohafield'};
-                               $subfield_data{repeatable} = $results[$j]->{'repeatable'};
-                               $subfield_data{mandatory} = $results[$j]->{'mandatory'};
-                               $subfield_data{tab} = $results[$j]->{'tab'};
-                               $subfield_data{seealso} = $results[$j]->{'seealso'};
+                               $subfield_data{tagsubfield}      = $results[$j]->{'tagsubfield'};
+                               $subfield_data{liblibrarian}     = $results[$j]->{'liblibrarian'};
+                               $subfield_data{kohafield}        = $results[$j]->{'kohafield'};
+                               $subfield_data{repeatable}       = $results[$j]->{'repeatable'};
+                               $subfield_data{mandatory}        = $results[$j]->{'mandatory'};
+                               $subfield_data{tab}              = $results[$j]->{'tab'};
+                               $subfield_data{seealso}          = $results[$j]->{'seealso'};
                                $subfield_data{authorised_value} = $results[$j]->{'authorised_value'};
-                               $subfield_data{authtypecode}= $results[$j]->{'authtypecode'};
-                               $subfield_data{value_builder}= $results[$j]->{'value_builder'};
-                               $subfield_data{toggle}  = $toggle;
+                               $subfield_data{authtypecode}     = $results[$j]->{'authtypecode'};
+                               $subfield_data{value_builder}    = $results[$j]->{'value_builder'};
 #                              warn "tagfield :  ".$results[$j]->{'tagfield'}." tagsubfield :".$results[$j]->{'tagsubfield'};
                                push @internal_loop,\%subfield_data;
                                $j++;
                        }
                        $row_data{'subfields'}=\@internal_loop;
                        push(@loop_data, \%row_data);
-#                      undef @internal_loop;
                        $i=$j;
                }
                $template->param(select_display => "True",
                                                loop => \@loop_data);
-               #  $sth->execute;
-               $sth->finish;
        } else {
                #here, normal old style : display every tags
                my ($count,$results)=StringSearch($searchfield,$frameworkcode);
                $cnt = $count;
-               my $toggle=0;
                my @loop_data = ();
                for (my $i=$offset; $i < ($offset+$pagesize<$count?$offset+$pagesize:$count); $i++){
-                       if ($toggle eq 0){
-                               $toggle=1;
-                       } else {
-                               $toggle=0;
-                       }
                        my %row_data;  # get a fresh hash for the row data
-                       $row_data{tagfield} = $results->[$i]{'tagfield'};
-                       $row_data{liblibrarian} = $results->[$i]{'liblibrarian'};
-                       $row_data{repeatable} = $results->[$i]{'repeatable'};
-                       $row_data{mandatory} = $results->[$i]{'mandatory'};
+                       $row_data{tagfield}         = $results->[$i]{'tagfield'};
+                       $row_data{liblibrarian}     = $results->[$i]{'liblibrarian'};
+                       $row_data{repeatable}       = $results->[$i]{'repeatable'};
+                       $row_data{mandatory}        = $results->[$i]{'mandatory'};
                        $row_data{authorised_value} = $results->[$i]{'authorised_value'};
-                       $row_data{subfield_link} ="marc_subfields_structure.pl?tagfield=".$results->[$i]{'tagfield'}."&amp;frameworkcode=".$frameworkcode;
-                       $row_data{edit} = "$script_name?op=add_form&amp;searchfield=".$results->[$i]{'tagfield'}."&amp;frameworkcode=".$frameworkcode;
-                       $row_data{delete} = "$script_name?op=delete_confirm&amp;searchfield=".$results->[$i]{'tagfield'}."&amp;frameworkcode=".$frameworkcode;
-                       $row_data{toggle} = $toggle;
+                       $row_data{subfield_link}    = "marc_subfields_structure.pl?tagfield="          .$results->[$i]{'tagfield'}."&amp;frameworkcode=".$frameworkcode;
+                       $row_data{edit}             = "$script_name?op=add_form&amp;searchfield="      .$results->[$i]{'tagfield'}."&amp;frameworkcode=".$frameworkcode;
+                       $row_data{delete}           = "$script_name?op=delete_confirm&amp;searchfield=".$results->[$i]{'tagfield'}."&amp;frameworkcode=".$frameworkcode;
                        push(@loop_data, \%row_data);
                }
                $template->param(loop => \@loop_data);
        }
        if ($offset>0) {
-               my $prevpage = $offset-$pagesize;
                $template->param(isprevpage => $offset,
-                                               prevpage=> $prevpage,
+                                               prevpage=> $offset-$pagesize,
                                                searchfield => $searchfield,
                                                script_name => $script_name,
                                                frameworkcode => $frameworkcode,
                );
        }
        if ($offset+$pagesize<$cnt) {
-               my $nextpage =$offset+$pagesize;
-               $template->param(nextpage =>$nextpage,
+               $template->param(nextpage =>$offset+$pagesize,
                                                searchfield => $searchfield,
                                                script_name => $script_name,
                                                frameworkcode => $frameworkcode,
@@ -351,29 +324,22 @@ if ($op eq 'add_form') {
        }
 } #---- END $OP eq DEFAULT
 
-$template->param(loggeninuser => $loggedinuser,
-               );
 output_html_with_http_headers $input, $cookie, $template->output;
 
-
 #
 # the sub used for searches
 #
 sub StringSearch  {
        my ($searchstring,$frameworkcode)=@_;
-       my $dbh = C4::Context->dbh;
-       $searchstring=~ s/\'/\\\'/g;
-       my @data=split(' ',$searchstring);
-       my $count=@data;
-       my $sth=$dbh->prepare("Select tagfield,liblibrarian,libopac,repeatable,mandatory,authorised_value from marc_tag_structure where (tagfield >= ? and frameworkcode=?) order by tagfield");
-       $sth->execute($data[0], $frameworkcode);
-       my @results;
-       while (my $data=$sth->fetchrow_hashref){
-       push(@results,$data);
-       }
-       #  $sth->execute;
-       $sth->finish;
-       return (scalar(@results),\@results);
+       my $sth = C4::Context->dbh->prepare("
+    SELECT tagfield,liblibrarian,libopac,repeatable,mandatory,authorised_value
+     FROM  marc_tag_structure
+     WHERE (tagfield >= ? and frameworkcode=?)
+    ORDER BY tagfield
+    ");
+       $sth->execute($searchstring, $frameworkcode);
+       my $results = $sth->fetchall_arrayref({});
+       return (scalar(@$results), $results);
 }
 
 #
index dc34b48..3856488 100644 (file)
@@ -1,40 +1,26 @@
 <!-- TMPL_INCLUDE NAME="doc-head-open.inc" -->
-<title>Koha &rsaquo; Administration &rsaquo; <!-- TMPL_IF NAME="add_form" --> MARC Frameworks &rsaquo; <!-- TMPL_IF NAME="frameworkcode" -->Modify framework text<!-- TMPL_ELSE -->Add framework<!-- /TMPL_IF --><!-- /TMPL_IF --><!-- TMPL_IF NAME="delete_confirm" --> MARC Frameworks &rsaquo; Delete Framework for <!-- TMPL_VAR NAME="frameworktext" --> (<!-- TMPL_VAR NAME="frameworkcode" -->)?<!-- /TMPL_IF --><!-- TMPL_IF NAME="else" -->MARC Frameworks<!-- /TMPL_IF --></title>
+<title>Koha &rsaquo; Administration &rsaquo; MARC Frameworks
+<!-- TMPL_IF NAME="add_form" -->
+&rsaquo; <!-- TMPL_IF NAME="frameworkcode" -->Modify framework text<!-- TMPL_ELSE -->Add framework<!-- /TMPL_IF -->
+<!-- TMPL_ELSIF NAME="delete_confirm" -->
+&rsaquo; Delete Framework for <!-- TMPL_VAR NAME="frameworktext" --> (<!-- TMPL_VAR NAME="frameworkcode" -->)?
+<!-- /TMPL_IF -->
+</title>
 <!-- TMPL_INCLUDE NAME="doc-head-close.inc" -->
 <script type="text/javascript">
 //<![CDATA[
-/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+
 function isNotNull(f,noalert) {
     if (f.value.length ==0) {
         return false;
     }
     return true;
 }
-/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 function toUC(f) {
-    var x=f.value.toUpperCase();
-    f.value=x;
+    f.value = f.value.toUpperCase();
     return true;
 }
 /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-function isNum(v,maybenull) {
-var n = new Number(v.value);
-if (isNaN(n)) {
-    return false;
-    }
-if (maybenull==0 && v.value=='') {
-    return false;
-}
-return true;
-}
-/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-function isDate(f) {
-    var t = Date.parse(f.value);
-    if (isNaN(t)) {
-        return false;
-    }
-}
-/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 function Check(f) {
     var ok=1;
     var _alertString="";
@@ -42,7 +28,7 @@ function Check(f) {
     if (f.frameworkcode.value.length==0) {
         _alertString += "\n- " + _("Framework code missing");
     }
-    if (!(isNotNull(window.document.Aform.frameworktext,1))) {
+    if (!(isNotNull(window.document.Aform.frameworktext))) {
         _alertString += "\n- " + _("Description missing");
     }
     if (_alertString.length==0) {
@@ -54,6 +40,10 @@ function Check(f) {
         alert(alertString2);
     }
 }
+
+$(document).ready(function() {
+    new YAHOO.widget.Button("newframework");
+});
 //]]>
 </script>
 </head>
@@ -61,32 +51,23 @@ function Check(f) {
 <!-- TMPL_INCLUDE NAME="header.inc" -->
 <!-- TMPL_INCLUDE NAME="cat-search.inc" -->
 
-<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a> &rsaquo; <!-- TMPL_IF NAME="add_form" --><a href="/cgi-bin/koha/admin/biblio_framework.pl">MARC Frameworks</a> &rsaquo; <!-- TMPL_IF NAME="frameworkcode" -->Modify framework text<!-- TMPL_ELSE -->Add framework<!-- /TMPL_IF --><!-- /TMPL_IF --><!-- TMPL_IF NAME="delete_confirm" --><a href="/cgi-bin/koha/admin/biblio_framework.pl">MARC Frameworks</a> &rsaquo; Delete Framework for <!-- TMPL_VAR NAME="frameworktext" --> (<!-- TMPL_VAR NAME="frameworkcode" -->)?<!-- /TMPL_IF --><!-- TMPL_IF NAME="else" -->MARC Frameworks<!-- /TMPL_IF --></div>
+<div id="breadcrumbs">
+        <a href="/cgi-bin/koha/mainpage.pl">Home</a>
+&rsaquo; <a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a>
+&rsaquo; <a href="/cgi-bin/koha/admin/biblio_framework.pl">MARC Frameworks</a>
+<!-- TMPL_IF NAME="add_form" -->
+&rsaquo; <!-- TMPL_IF NAME="frameworkcode" -->Modify framework text<!-- TMPL_ELSE -->Add framework<!-- /TMPL_IF -->
+<!-- TMPL_ELSIF NAME="delete_confirm" -->
+&rsaquo; Delete Framework for <!-- TMPL_VAR NAME="frameworktext" --> (<!-- TMPL_VAR NAME="frameworkcode" -->)?
+<!-- /TMPL_IF -->
+</div>
 
 <div id="doc3" class="yui-t2">
-   
-   <div id="bd">
-       <div id="yui-main">
-       <div class="yui-b">
+  <div id="bd">
+    <div id="yui-main">
+      <div class="yui-b">
        
 <!-- TMPL_IF NAME="else" --><div id="toolbar">
-       <script type="text/javascript">
-       //<![CDATA[
-
-       // prepare DOM for YUI Toolbar
-
-        $(document).ready(function() {
-           yuiToolbar();
-        });
-
-       // YUI Toolbar Functions
-
-       function yuiToolbar() {
-           new YAHOO.widget.Button("newframework");
-       }
-
-       //]]>
-       </script>
        <ul class="toolbar">
        <li><a id="newframework" href="/cgi-bin/koha/admin/biblio_framework.pl?op=add_form">New Framework</a></li>
 </ul></div><!-- /TMPL_IF -->
@@ -95,12 +76,14 @@ function Check(f) {
     <h1><!-- TMPL_IF NAME="frameworkcode" -->Modify framework text<!-- TMPL_ELSE -->Add framework<!-- /TMPL_IF --></h1>
     <form action="<!-- TMPL_VAR NAME="script_name" -->" name="Aform" method="post">
         <input type="hidden" name="op" value="add_validate" />
-<fieldset class="rows">        <ol>
+    <fieldset class="rows">
+    <ol>
        <!-- TMPL_IF NAME="frameworkcode" -->
-            <li><span class="label">Framework Code</span><input type="hidden" id="frameworkcode" name="frameworkcode" value="<!-- TMPL_VAR NAME="frameworkcode" -->" /><!-- TMPL_VAR NAME="frameworkcode" --></li>
+        <li><span class="label">Framework Code</span><input type="hidden" id="frameworkcode" name="frameworkcode" value="<!-- TMPL_VAR NAME="frameworkcode" -->" /><!-- TMPL_VAR NAME="frameworkcode" -->
             <input type="hidden" name="modif" value="1" />
+        </li>
        <!-- TMPL_ELSE -->
-            <li><label for="frameworkcode">Framework Code</label><input type="text" id="frameworkcode" name="frameworkcode" size="4" maxlength="4" onblur="toUC(this)" /></li>
+        <li><label for="frameworkcode">Framework Code</label><input type="text" id="frameworkcode" name="frameworkcode" size="4" maxlength="4" onblur="toUC(this)" /></li>
        <!-- /TMPL_IF -->
         <li><label for="description">Description</label>
         <input type="text" name="frameworktext" id="description" size="40" maxlength="80" value="<!-- TMPL_VAR NAME="frameworktext" ESCAPE="HTML" -->" /></li></ol></fieldset>
@@ -108,14 +91,16 @@ function Check(f) {
     </form>
 <!-- /TMPL_IF -->
 
-<!-- TMPL_IF NAME="delete_confirm" --><div class="dialog alert">
-<h3>Delete framework for <!-- TMPL_VAR NAME="frameworktext" --> (<!-- TMPL_VAR NAME="frameworkcode" -->)?</h3>
+<!-- TMPL_IF NAME="delete_confirm" -->
+<div class="dialog alert">
+    <h3>Delete framework for <!-- TMPL_VAR NAME="frameworktext" --> (<!-- TMPL_VAR NAME="frameworkcode" -->)?</h3>
     <!-- TMPL_IF NAME="total" -->
-       <p> <strong>This framework is used <!-- TMPL_VAR NAME="total" --> times</strong>.</p>
+       <p><strong>This framework is used <!-- TMPL_VAR NAME="total" --> times</strong>.</p>
     <!-- /TMPL_IF -->
-        <form class="inline" action="<!-- TMPL_VAR NAME="script_name" -->" method="post"><input type="hidden" name="op" value="delete_confirmed" /><input type="hidden" name="frameworkcode" value="<!-- TMPL_VAR NAME="frameworkcode" -->" /><input type="submit" class="approve" value="Yes, Delete this Framework!" />
-        </form>
-        <form class="inline" action="<!-- TMPL_VAR NAME="script_name" -->" method="post"><input type="submit" class="deny" value="No, Do not Delete!" /></form></div>
+    <form class="inline" action="<!-- TMPL_VAR NAME="script_name" -->" method="post"><input type="hidden" name="op" value="delete_confirmed" /><input type="hidden" name="frameworkcode" value="<!-- TMPL_VAR NAME="frameworkcode" -->" /><input type="submit" class="approve" value="Yes, Delete this Framework!" />
+    </form>
+    <form class="inline" action="<!-- TMPL_VAR NAME="script_name" -->" method="get"><input type="submit" class="deny" value="No, Do not Delete!" /></form>
+</div>
 <!-- /TMPL_IF -->
 
 <!-- TMPL_IF NAME="else" -->
@@ -136,9 +121,11 @@ function Check(f) {
         <td>&nbsp;</td>
         <td>&nbsp;</td>
     </tr>
-    
+    <!-- note highlight assignment appears backwards because we already have a normal row for Default -->
     <!-- TMPL_LOOP NAME="loop" -->
-        <tr>
+    <!-- TMPL_IF NAME="__odd__" --><tr class="highlight">
+    <!-- TMPL_ELSE --><tr>
+    <!-- /TMPL_IF -->
             <td><!-- TMPL_VAR name="frameworkcode" --></td>
             <td><!-- TMPL_VAR name="frameworktext" --></td>
             <td><a href="marctagstructure.pl?frameworkcode=<!-- TMPL_VAR name="frameworkcode" -->" >MARC structure</a></td>
@@ -147,13 +134,14 @@ function Check(f) {
         </tr>
     <!-- /TMPL_LOOP -->
 </table>
-    <!-- TMPL_IF NAME="previous" --><a href="<!-- TMPL_VAR NAME="previous" -->">&lt;&lt; Previous</a><!-- /TMPL_IF --> <!-- TMPL_IF NAME="next" --><a href="<!-- TMPL_VAR NAME="next" -->">Next &gt;&gt;</a><!-- /TMPL_IF -->
+    <!-- TMPL_IF NAME="previous" --><a href="<!-- TMPL_VAR NAME="previous" -->">&lt;&lt; Previous</a><!-- /TMPL_IF -->
+    <!-- TMPL_IF NAME="next" --><a href="<!-- TMPL_VAR NAME="next" -->">Next &gt;&gt;</a><!-- /TMPL_IF -->
 
 <!-- /TMPL_IF -->
-</div>
-</div>
+    </div>
+  </div>
 <div class="yui-b">
 <!-- TMPL_INCLUDE NAME="admin-menu.inc" -->
-</div>
+  </div>
 </div>
 <!-- TMPL_INCLUDE NAME="intranet-bottom.inc" -->
index dd88246..40736cb 100644 (file)
@@ -7,90 +7,55 @@
 <!-- TMPL_INCLUDE NAME="doc-head-close.inc" -->
 <script type="text/javascript">
 //<![CDATA[
-    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-    function isNotNull(f,noalert) {
-        if (f.value.length ==0) {
-                       return false;
-        }
-        return true;
+function Check(f) {
+    var _alertString="";
+    var alertString2;
+    if (f.tagfield.value.length==0) {
+        _alertString += "\n- " + _("tag number missing");
     }
-    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-    function toUC(f) {
-        var x=f.value.toUpperCase();
-        f.value=x;
-        return true;
+    if (_alertString.length==0) {
+        document.Aform.submit();
+    } else {
+        alertString2  = _("Form not submitted because of the following problem(s)");
+        alertString2 += "\n------------------------------------------------------------------------------------\n";
+        alertString2 += _alertString;
+        alert(alertString2);
     }
-    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-    function isNum(v,maybenull) {
-    var n = new Number(v.value);
-    if (isNaN(n)) {
-        return false;
-        }
-    if (maybenull==0 && v.value=='') {
-        return false;
-    }
-    return true;
-    }
-    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-    function isDate(f) {
-        var t = Date.parse(f.value);
-        if (isNaN(t)) {
-            return false;
-        }
-    }
-    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-    function Check(f) {
-        var ok=1;
-        var _alertString="";
-        var alertString2;
-        if (f.tagfield.value.length==0) {
-            _alertString += "\n- " + _("tag number missing");
-        }
-        if (_alertString.length==0) {
-            document.Aform.submit();
-        } else {
-            alertString2  = _("Form not submitted because of the following problem(s)");
-            alertString2 += "\n------------------------------------------------------------------------------------\n";
-            alertString2 += _alertString;
-            alert(alertString2);
-        }
-    }
-    //]]>
+}
+
+$(document).ready(function() {
+    new YAHOO.widget.Button("addtag");
+});
+//]]>
 </script>
 </head>
 <body>
 <!-- TMPL_INCLUDE NAME="header.inc" -->
 <!-- TMPL_INCLUDE NAME="cat-search.inc" -->
 
-<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a> &rsaquo; <!-- TMPL_IF name="add_form" --> <a href="/cgi-bin/koha/admin/marctagstructure.pl">MARC Frameworks</a> &rsaquo; <a href="/cgi-bin/koha/admin/marctagstructure.pl?frameworkcode=<!-- TMPL_VAR NAME="frameworkcode" -->">MARC Framework for <!-- TMPL_VAR NAME="frameworktext" --> (<!-- TMPL_VAR NAME="frameworkcode" -->)</a> &rsaquo; <!-- TMPL_VAR name="action" --> <!-- TMPL_VAR NAME="searchfield" --><!-- /TMPL_IF -->
-<!-- TMPL_IF name="delete_confirm" --> <a href="/cgi-bin/koha/admin/marctagstructure.pl">MARC Frameworks</a> &rsaquo; Confirm Deletion of Tag '<!-- TMPL_VAR name="searchfield" -->'<!-- /TMPL_IF -->
-<!-- TMPL_IF name="delete_confirmed" --> <a href="/cgi-bin/koha/admin/marctagstructure.pl">MARC Frameworks</a> &rsaquo; Data Deleted<!-- /TMPL_IF -->
-<!-- TMPL_IF name="else" --><a href="/cgi-bin/koha/admin/biblio_framework.pl">MARC Frameworks</a> &rsaquo; MARC Framework for <!-- TMPL_VAR NAME="frameworktext" --> (<!-- TMPL_VAR NAME="frameworkcode" -->)<!-- /TMPL_IF --></div>
+<div id="breadcrumbs">
+         <a href="/cgi-bin/koha/mainpage.pl">Home</a>
+&rsaquo; <a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a>
+&rsaquo; <a href="/cgi-bin/koha/admin/biblio_framework.pl">MARC Frameworks</a>
+<!-- TMPL_IF name="add_form" -->
+&rsaquo; <a href="/cgi-bin/koha/admin/marctagstructure.pl?frameworkcode=<!-- TMPL_VAR NAME="frameworkcode" -->"><!-- TMPL_VAR NAME="frameworktext" --> (<!-- TMPL_VAR NAME="frameworkcode" -->)</a>
+&rsaquo; <!-- TMPL_VAR name="action" --> <!-- TMPL_VAR NAME="searchfield" -->
+<!-- TMPL_ELSIF name="else" -->
+&rsaquo; <a href="/cgi-bin/koha/admin/marctagstructure.pl?frameworkcode=<!-- TMPL_VAR NAME="frameworkcode" -->"><!-- TMPL_VAR NAME="frameworktext" --> (<!-- TMPL_VAR NAME="frameworkcode" -->)</a>
+<!-- TMPL_ELSIF name="delete_confirm" -->
+&rsaquo; Confirm Deletion of Tag '<!-- TMPL_VAR name="searchfield" -->'
+<!-- TMPL_ELSIF name="delete_confirmed" -->
+&rsaquo; Data Deleted
+<!-- /TMPL_IF -->
+</div>
 
 <div id="doc3" class="yui-t2">
-   
-   <div id="bd">
-       <div id="yui-main">
-       <div class="yui-b">
-
-<!-- TMPL_IF NAME="else" --><div id="toolbar">
-       <script type="text/javascript">
-       //<![CDATA[
-
-       // prepare DOM for YUI Toolbar
+  <div id="bd">
+    <div id="yui-main">
+      <div class="yui-b">
 
-        $(document).ready(function() {
-           yuiToolbar();
-        });
-
-       // YUI Toolbar Functions
-
-       function yuiToolbar() {
-           new YAHOO.widget.Button("addtag");
-       }
-
-       //]]>
-       </script>
+<!-- TMPL_IF NAME="else" -->
+<div id="toolbar">
        <ul class="toolbar">
        <li><a id="addtag" href="/cgi-bin/koha/admin/marctagstructure.pl?op=add_form&amp;frameworkcode=<!-- TMPL_VAR NAME="frameworkcode" -->">New Tag</a></li>
 </ul></div><!-- /TMPL_IF -->
     <li><label for="mandatory">Mandatory: </label><!-- TMPL_VAR NAME="mandatory" --></li>
     <li><label for="authorised_value">Authorized value: </label><!-- TMPL_VAR NAME="authorised_value" --> (if you select a value here, the indicators will be limited to the authorized value list)</li>
 </ol></fieldset> 
-       <fieldset class="action">
-            <input type="submit" value="Save Changes" onclick="Check(this.form)" />
-            <a class="cancel" href="<!-- TMPL_VAR NAME="script_name" -->?frameworkcode=<!-- TMPL_VAR NAME="frameworkcode" -->">Cancel</a>
-       </fieldset>
+    <fieldset class="action">
+        <input type="submit" value="Save Changes" onclick="Check(this.form)" />
+        <a class="cancel" href="<!-- TMPL_VAR NAME="script_name" -->?frameworkcode=<!-- TMPL_VAR NAME="frameworkcode" -->">Cancel</a>
+    </fieldset>
     </form>
 <!-- /TMPL_IF -->
 
        <input type="hidden" name="searchfield" value="<!-- TMPL_VAR NAME="searchfield" -->" /><input type="hidden" name="frameworkcode" value="<!-- TMPL_VAR NAME="frameworkcode" -->" />
        <input type="submit" class="approve" value="Yes, Delete this Tag" /></form>
        
-       <form action="<!-- TMPL_VAR NAME="script_name" -->" method="post"><input type="submit" value="No, Do Not Delete" class="deny" /></form></div>
+       <form action="<!-- TMPL_VAR NAME="script_name" -->" method="get"><input type="submit" value="No, Do Not Delete" class="deny" /></form></div>
 <!-- /TMPL_IF -->
 
 <!-- TMPL_IF NAME="delete_confirmed" -->
         <input type="submit" value="Search" />
     </p>
     <p>
+        <label for="select_display">Display only used Tags/Subfields</label>
         <!-- TMPL_IF Name="select_display"-->
-            <label for="select_display">Display only used Tags/Subfields</label> <input type="checkbox" name="select_display" id="select_display" value="True" checked="checked"  onchange="this.form.submit();" />
+            <input type="checkbox" name="select_display" id="select_display" value="True" checked="checked"  onchange="this.form.submit();" />
         <!-- TMPL_ELSE -->
-            <label for="select_display">Display only used Tags/Subfields</label> <input type="checkbox" name="select_display" id="select_display" value="True" onchange="this.form.submit();" />
+            <input type="checkbox" name="select_display" id="select_display" value="True" onchange="this.form.submit();" />
         <!--/TMPL_IF -->
     </p>
 </form>
 
     <!-- TMPL_IF NAME="select_display" -->
         <!-- TMPL_LOOP NAME="loop" -->
-            <!-- TMPL_IF NAME="toggle" --><tr><!-- TMPL_ELSE --><tr class="highlight"><!-- /TMPL_IF -->
+            <!-- TMPL_IF NAME="__odd__" --><tr><!-- TMPL_ELSE --><tr class="highlight"><!-- /TMPL_IF -->
             <td><!-- TMPL_VAR NAME="tagfield" --></td>
             <td><!-- TMPL_VAR NAME="liblibrarian" --></td>
             <td><!-- TMPL_IF NAME="repeatable" -->Yes<!-- TMPL_ELSE -->No<!-- /TMPL_IF --></td>
             <td><a href="<!-- TMPL_VAR NAME="edit" -->">Edit</a></td>
             <td><a href="<!-- TMPL_VAR NAME="delete" -->">Delete</a></td>
         </tr>
-      <!-- TMPL_IF NAME="toggle" --><tr><!-- TMPL_ELSE --><tr class="highlight"><!-- /TMPL_IF -->
-            <td>
-                &nbsp;
-            </td>
+      <!-- TMPL_IF NAME="__odd__" --><tr><!-- TMPL_ELSE --><tr class="highlight"><!-- /TMPL_IF -->
+            <td>&nbsp;</td>
             <td colspan="7">
                 <!-- TMPL_LOOP NAME="subfields" -->
                     <p>        Tab:<!-- TMPL_VAR NAME="tab" --> | $<!-- TMPL_VAR NAME="tagsubfield" -->
         <!-- /TMPL_LOOP -->
     <!-- TMPL_ELSE -->
     <!-- TMPL_LOOP NAME="loop" -->
-    <!-- TMPL_IF NAME="toggle" --><tr><!-- TMPL_ELSE --><tr class="highlight"><!-- /TMPL_IF -->
+    <!-- TMPL_IF NAME="__odd__" --><tr><!-- TMPL_ELSE --><tr class="highlight"><!-- /TMPL_IF -->
         <td><!-- TMPL_VAR NAME="tagfield" --></td>
         <td><!-- TMPL_VAR NAME="liblibrarian" --></td>
         <td><!-- TMPL_IF NAME="repeatable" -->Yes<!-- TMPL_ELSE -->No<!-- /TMPL_IF --></td>
     <!-- /TMPL_LOOP -->
     <!--/TMPL_IF -->
     </table>
+
     <!-- TMPL_IF NAME="isprevpage" -->
-            <a href="<!-- TMPL_VAR NAME="script_name" -->?offset=<!-- TMPL_VAR NAME="prevpage" -->&amp;searchfield=<!-- TMPL_VAR NAME="searchfield" -->&amp;frameworkcode=<!-- TMPL_VAR NAME="frameworkcode" --><!--TMPL_IF Name="select_display"-->&amp;select_display=True<!--/TMPL_IF -->">&lt;&lt; Previous</a>
-        <!-- /TMPL_IF -->
+    <a href="<!-- TMPL_VAR NAME="script_name" -->?offset=<!-- TMPL_VAR NAME="prevpage" -->&amp;searchfield=<!-- TMPL_VAR NAME="searchfield" -->&amp;frameworkcode=<!-- TMPL_VAR NAME="frameworkcode" --><!--TMPL_IF Name="select_display"-->&amp;select_display=True<!--/TMPL_IF -->">&lt;&lt; Previous</a>
+    <!-- /TMPL_IF -->
 
-        <!-- TMPL_IF NAME="nextpage" -->
-            <a href="<!-- TMPL_VAR NAME="script_name" -->?offset=<!-- TMPL_VAR NAME="nextpage" -->&amp;searchfield=<!-- TMPL_VAR NAME="searchfield" -->&amp;frameworkcode=<!-- TMPL_VAR NAME="frameworkcode" --><!--TMPL_IF Name="select_display"-->&amp;select_display=True<!--/TMPL_IF -->">Next &gt;&gt;</a>
-        <!-- /TMPL_IF -->
+    <!-- TMPL_IF NAME="nextpage" -->
+    <a href="<!-- TMPL_VAR NAME="script_name" -->?offset=<!-- TMPL_VAR NAME="nextpage" -->&amp;searchfield=<!-- TMPL_VAR NAME="searchfield" -->&amp;frameworkcode=<!-- TMPL_VAR NAME="frameworkcode" --><!--TMPL_IF Name="select_display"-->&amp;select_display=True<!--/TMPL_IF -->">Next &gt;&gt;</a>
+    <!-- /TMPL_IF -->
 
 <!-- /TMPL_IF -->
 
 
-</div>
-</div>
+    </div>
+  </div>
 <div class="yui-b">
 <!-- TMPL_INCLUDE NAME="admin-menu.inc" -->
 </div>