From c8cbf6b5f219c2a3726490816a71c5cdc60c1007 Mon Sep 17 00:00:00 2001 From: Joe Atzberger Date: Fri, 12 Jun 2009 17:33:02 -0500 Subject: [PATCH] Cleanup stopwords.pl and .tmpl Remove "toggle" code and useless javascript. Rework "SimpleSearch" to use just one argument. Remove unnecessary dependencies. Remove incorrectly pasted comments. Remove queries that didn't do anything. Enable warnings. Use one $dbh. Remove $sth->finish calls. Signed-off-by: Galen Charlton --- admin/stopwords.pl | 94 ++------- .../prog/en/modules/admin/stopwords.tmpl | 181 ++++++++---------- 2 files changed, 96 insertions(+), 179 deletions(-) diff --git a/admin/stopwords.pl b/admin/stopwords.pl index d753085116..cf3a4a67db 100755 --- a/admin/stopwords.pl +++ b/admin/stopwords.pl @@ -4,22 +4,6 @@ #written 20/02/2002 by paul.poulain@free.fr # This software is placed under the gnu General Public License, v2 (http://www.gnu.org/licenses/gpl.html) -# ALGO : -# this script use an $op to know what to do. -# if $op is empty or none of the above values, -# - the default screen is build (with all records, or filtered datas). -# - the user can clic on add, modify or delete record. -# if $op=add_form -# - if primkey exists, this is a modification,so we read the $primkey record -# - builds the add/modify form -# if $op=add_validate -# - the user has just send datas, so we create/modify the record -# if $op=delete_form -# - we show the record having primkey=$primkey and ask for deletion validation form -# if $op=delete_confirm -# - we delete the record having primkey=$primkey - - # Copyright 2000-2002 Katipo Communications # # This file is part of Koha. @@ -38,45 +22,33 @@ # Suite 330, Boston, MA 02111-1307 USA use strict; +use warnings; use CGI; use C4::Context; use C4::Output; -use C4::Search; use C4::Auth; sub StringSearch { - my ($env,$searchstring,$type)=@_; - $searchstring=~ s/\'/\\\'/g; - my @data=split(' ',$searchstring); - my $count=@data; my $sth = C4::Context->dbh->prepare(" - SELECT word from stopwords WHERE (word like ?) order by word + SELECT word FROM stopwords WHERE (word LIKE ?) ORDER BY word "); - $sth->execute("$data[0]%"); - my @results; - my $cnt=0; - while (my $data=$sth->fetchrow_hashref){ - push(@results,$data); - $cnt ++; - } - $sth->finish; - return ($cnt,\@results); + $sth->execute((shift || '') . "%"); + return $sth->fetchall_arrayref({}); } my $input = new CGI; -my $searchfield=$input->param('searchfield'); -my $offset=$input->param('offset'); -my $script_name="/cgi-bin/koha/admin/stopwords.pl"; +my $searchfield = $input->param('searchfield'); +my $offset = $input->param('offset') || 0; +my $script_name = "/cgi-bin/koha/admin/stopwords.pl"; -my $pagesize=20; -my $op = $input->param('op'); -$searchfield=~ s/\,//g; +my $pagesize = 20; +my $op = $input->param('op') || ''; my ($template, $loggedinuser, $cookie) = get_template_and_user({template_name => "admin/stopwords.tmpl", query => $input, type => "intranet", - flagsrequired => {parameters => 1, management => 1}, + flagsrequired => {parameters => 1}, authnotrequired => 0, debug => 1, }); @@ -84,69 +56,37 @@ my ($template, $loggedinuser, $cookie) $template->param(script_name => $script_name, searchfield => $searchfield); - -################## ADD_FORM ################################## -# called by default. Used to create form to add or modify a record +my $dbh = C4::Context->dbh; if ($op eq 'add_form') { $template->param(add_form => 1); - #---- if primkey exists, it's a modify action, so read values to modify... - if ($searchfield) { - my $dbh = C4::Context->dbh; - my $sth=$dbh->prepare("SELECT word from stopwords where word=?"); - $sth->execute($searchfield); - my $data=$sth->fetchrow_hashref; # why bother ?? - $sth->finish; - } - # END $OP eq ADD_FORM -################## ADD_VALIDATE ################################## -# called by add_form, used to insert/modify data in DB } elsif ($op eq 'add_validate') { $template->param(add_validate => 1); - my $dbh = C4::Context->dbh; my @tab = split / |,/, $input->param('word'); my $sth=$dbh->prepare("INSERT INTO stopwords (word) VALUES (?)"); foreach my $insert_value (@tab) { $sth->execute($insert_value); } - $sth->finish; - # END $OP eq ADD_VALIDATE -################## DELETE_CONFIRM ################################## -# called by default form, used to confirm deletion of data in DB } elsif ($op eq 'delete_confirm') { $template->param(delete_confirm => 1); - my $dbh = C4::Context->dbh; - my $sth=$dbh->prepare("SELECT word from stopwords where word=?"); - $sth->execute($searchfield); - my $data=$sth->fetchrow_hashref; # why bother ? - $sth->finish; - # 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') { $template->param(delete_confirmed => 1); - my $dbh = C4::Context->dbh; my $sth=$dbh->prepare("delete from stopwords where word=?"); $sth->execute($searchfield); - $sth->finish; - # END $OP eq DELETE_CONFIRMED -################## DEFAULT ################################## } else { # DEFAULT $template->param(else => 1); - - my $env; - my ($count,$results)=StringSearch($env,$searchfield,'web'); + my $results = StringSearch($searchfield); + my $count = scalar(@$results); my @loop; + # FIXME: limit and offset should get to the SQL query for (my $i=$offset; $i < ($offset+$pagesize<$count?$offset+$pagesize:$count); $i++){ - my %row = (word => $results->[$i]{'word'}); - push @loop, \%row; + push @loop, {word => $results->[$i]{'word'}}; } $template->param(loop => \@loop); - - if ($offset>0) { + if ($offset > 0) { $template->param(offsetgtzero => 1, prevpage => $offset-$pagesize); } - if ($offset+$pagesize<$count) { + if ($offset+$pagesize < scalar(@$results)) { $template->param(ltcount => 1, nextpage => $offset+$pagesize); } diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/stopwords.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/stopwords.tmpl index 5c0f821d02..d03f87127d 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/stopwords.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/stopwords.tmpl @@ -1,65 +1,50 @@ -Koha › System Administration › <!-- TMPL_IF NAME="else" -->Stop words<!-- /TMPL_IF --><!-- TMPL_IF NAME="add_form" --> Stop words › <!-- TMPL_IF NAME="searchfield" -->Modify stop word<!-- TMPL_ELSE -->New stop word<!-- /TMPL_IF --><!-- /TMPL_IF --><!-- TMPL_IF NAME="add_validate" --> Stop words › Data recorded<!-- /TMPL_IF --><!-- TMPL_IF NAME="delete_confirm" --> Stop words › Delete stop word '<!-- TMPL_VAR NAME="searchfield" -->' ?<!-- /TMPL_IF --><!-- TMPL_IF NAME="delete_confirmed" --> Stop words › Data deleted<!-- /TMPL_IF --> +Koha › System Administration › Stop words +<!-- TMPL_IF NAME="add_form" -->› <!-- TMPL_IF NAME="searchfield" -->Modify<!-- TMPL_ELSE -->New<!-- /TMPL_IF --> stop word +<!-- TMPL_ELSIF NAME="add_validate" -->› Data recorded +<!-- TMPL_ELSIF NAME="delete_confirm" -->› Delete stop word '<!-- TMPL_VAR NAME="searchfield" -->' ? +<!-- TMPL_ELSIF NAME="delete_confirmed" -->› Data deleted +<!-- /TMPL_IF --> + - - - + - +
@@ -68,7 +53,6 @@
-

Modify word

@@ -76,19 +60,21 @@
" name="Aform" method="post"> -
    -
  1. - Word - " /> -
  2. +
    +
    1. + + Word + " /> -
    2. - - + + +
    3. -
    +
+
- Cancel + + Cancel
@@ -104,10 +90,13 @@

Delete Stop Word ''

" method="post"> - + " /> -
-
" method="get">
+ + +
" method="get"> + +
@@ -120,17 +109,6 @@
-
@@ -138,33 +116,32 @@

Stop Words

NOTE : if you change something in this table, ask your administrator to run misc/rebuildnonmarc.pl script.

- - You searched for +

You searched for

- - - - - - - - - - - - - - + + + + + + + + + + +
Word
?op=delete_confirm&searchfield=">Delete
Word
?op=delete_confirm&searchfield=">Delete
- + +
-- 2.39.5