From d1622c7a7dffbd4cdcb8e076473158a059ce901e Mon Sep 17 00:00:00 2001 From: Mark Tompsett Date: Tue, 23 Feb 2016 19:29:36 -0500 Subject: [PATCH] Bug 13287: QA Follow up Added missing upgrade SQL system preference. Corrected system preference screen message Fixes on purge_suggestions.pl - perlcritic friendlier - address $PERL5LIB comment by using $PROGRAM_NAME (comment #10) - used STDERR (comment #10) - perltidy TEST PLAN --------- $ ./installer/data/mysql/updatedatabase.pl -- should run upgrade and generate new systempreference in table $ ./misc/cronjobs/purge_suggestions.pl --help -- should give help with a real path used instead of $PERL5LIB. $ ./misc/cronjobs/purge_suggestions.pl -days -1 -- should give error message as expected $ ./misc/cronjobs/purge_suggestions.pl -days 0 -- should give error message as expected Go to OPAC system preferences tab and check the PurgeSuggestionsOlderThan system preference -- message should be as expected (see comment #9) run koha qa test tools -- all should pass --- ...dPurgeSuggestionsOlderThan_SystemPreference.sql | 2 ++ .../prog/en/modules/admin/preferences/opac.pref | 2 +- misc/cronjobs/purge_suggestions.pl | 34 ++++++++++------------ 3 files changed, 19 insertions(+), 19 deletions(-) create mode 100644 installer/data/mysql/atomicupdate/bug_13287_AddPurgeSuggestionsOlderThan_SystemPreference.sql diff --git a/installer/data/mysql/atomicupdate/bug_13287_AddPurgeSuggestionsOlderThan_SystemPreference.sql b/installer/data/mysql/atomicupdate/bug_13287_AddPurgeSuggestionsOlderThan_SystemPreference.sql new file mode 100644 index 0000000..6c66bbc --- /dev/null +++ b/installer/data/mysql/atomicupdate/bug_13287_AddPurgeSuggestionsOlderThan_SystemPreference.sql @@ -0,0 +1,2 @@ +INSERT IGNORE INTO systempreferences ( `variable`, `value`, `options`, `explanation`, `type` ) VALUES +('PurgeSuggestionsOlderThan', '', NULL, 'If this script is called without the days parameter', 'Integer'); diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref index d99d780..8630b2f 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref @@ -570,7 +570,7 @@ OPAC: - expired patrons from OPAC actions such as placing a hold or renewing. Note that the setting for a patron category takes priority over this system preference. - - - Keep accepted or rejected purchase suggestions for a period of [ ] days. + - Keep accepted or rejected purchase suggestions for a period of - pref: PurgeSuggestionsOlderThan class: integer - days. diff --git a/misc/cronjobs/purge_suggestions.pl b/misc/cronjobs/purge_suggestions.pl index 2b69170..cf4c48b 100755 --- a/misc/cronjobs/purge_suggestions.pl +++ b/misc/cronjobs/purge_suggestions.pl @@ -17,8 +17,8 @@ # You should have received a copy of the GNU General Public License # along with Koha; if not, see . -use strict; -use warnings; +use Modern::Perl; +use English qw( -no_match_vars ); use utf8; BEGIN { @@ -35,11 +35,11 @@ use C4::Suggestions; use C4::Log; use C4::Context; -my ($help, $days); +my ( $help, $days ); GetOptions( - 'help|?' => \$help, - 'days=s' => \$days, + 'help|?' => \$help, + 'days=s' => \$days, ); my $usage = << 'ENDUSAGE'; @@ -49,34 +49,32 @@ Parameters: -days TTT to define the age of suggestions to delete Example: -$PERL5LIB/misc/cronjobs/purge_suggestions.pl -days 30 ENDUSAGE +$usage .= $PROGRAM_NAME . " -days 30\n"; # If this script is called without the 'days' parameter, we use the system preferences value instead. -if ( ! defined($days) and not $help) { - my $purge_sugg_days = C4::Context->preference('PurgeSuggestionsOlderThan') || ''; - if($purge_sugg_days ne '' and $purge_sugg_days >= 0) { +if ( !defined($days) && !$help ) { + my $purge_sugg_days = + C4::Context->preference('PurgeSuggestionsOlderThan') || q{}; + if ( $purge_sugg_days ne q{} and $purge_sugg_days >= 0 ) { $days = $purge_sugg_days; } } + # If this script is called with the 'help' parameter, we show up the help message and we leave the script without doing anything. if ($help) { print $usage; exit; } -if(defined($days) && $days > 0 && $days ne ''){ +if ( defined($days) && $days ne q{} && $days > 0 ) { cronlogaction(); DelSuggestionsOlderThan($days); } -elsif(defined($days) && $days == 0) { - print << 'ERROR'; - This script is not executed with 0 days. Aborted. -ERROR +elsif ( defined($days) && $days == 0 ) { + warn "This script is not executed with 0 days. Aborted.\n"; } else { - print << 'ERROR'; - This script requires a positive number of days. Aborted. -ERROR -} \ No newline at end of file + warn "This script requires a positive number of days. Aborted.\n"; +} -- 2.1.4