From 60bd48cf26377134875d913b8170b6d77d652868 Mon Sep 17 00:00:00 2001 From: Josef Moravec Date: Tue, 19 Mar 2019 10:30:27 +0000 Subject: [PATCH] Bug 22544: Move upd_opac_new to Koha namespace --- C4/NewsChannels.pm | 40 +--------------------------------------- t/db_dependent/NewsChannels.t | 12 +----------- tools/koha-news.pl | 10 +++++----- 3 files changed, 7 insertions(+), 55 deletions(-) diff --git a/C4/NewsChannels.pm b/C4/NewsChannels.pm index 77e041a645..75c8c13bd2 100644 --- a/C4/NewsChannels.pm +++ b/C4/NewsChannels.pm @@ -28,7 +28,7 @@ BEGIN { @ISA = qw(Exporter); @EXPORT = qw( &GetNewsToDisplay - &add_opac_new &upd_opac_new + &add_opac_new ); } @@ -71,44 +71,6 @@ sub add_opac_new { return $retval; } -=head2 upd_opac_new - - $retval = upd_opac_new($hashref); - - $hashref should contains all the fields found in opac_news, - including idnew, since it is the key for the SQL UPDATE. - -=cut - -sub upd_opac_new { - my ($href_entry) = @_; - my $retval = 0; - - if ($href_entry) { - # take the keys of hash entry and make a list, but... - my @fields = keys %{$href_entry}; - my @values; - $#values = -1; - my $field_string = q{}; - foreach my $field_name (@fields) { - # exclude idnew - if ( $field_name ne 'idnew' ) { - $field_string = $field_string . "$field_name = ?,"; - push @values,$href_entry->{$field_name}; - } - } - # put idnew at the end, so we know which record to update - push @values,$href_entry->{'idnew'}; - chop $field_string; # remove that excess , - - my $dbh = C4::Context->dbh; - my $sth = $dbh->prepare("UPDATE opac_news SET $field_string WHERE idnew = ?;"); - $sth->execute(@values); - $retval = 1; - } - return $retval; -} - =head2 GetNewsToDisplay $news = &GetNewsToDisplay($lang,$branch); diff --git a/t/db_dependent/NewsChannels.t b/t/db_dependent/NewsChannels.t index f14d48939e..0a66177a3e 100644 --- a/t/db_dependent/NewsChannels.t +++ b/t/db_dependent/NewsChannels.t @@ -6,7 +6,7 @@ use Koha::DateUtils; use Koha::Libraries; use Koha::News; -use Test::More tests => 9; +use Test::More tests => 7; BEGIN { use_ok('C4::NewsChannels'); @@ -125,16 +125,6 @@ $query = q{ SELECT idnew from opac_news WHERE timestamp='2000-01-02'; }; my ( $idnew3 ) = $dbh->selectrow_array( $query ); -# Test upd_opac_new -$rv = upd_opac_new(); # intentionally bad parmeters -is( $rv, 0, 'Correctly failed on no parameter!' ); - -$new2 = '

Update! There is no news!

'; -$href_entry2->{content} = $new2; -$href_entry2->{idnew} = $idnew2; -$rv = upd_opac_new($href_entry2); -is( $rv, 1, 'Successfully updated second dummy news item!' ); - # Test GetNewsToDisplay my ( $opac_news_count, $arrayref_opac_news ) = GetNewsToDisplay( q{}, 'LIB1' ); ok( $opac_news_count >= 2, 'Successfully tested GetNewsToDisplay for LIB1!' ); diff --git a/tools/koha-news.pl b/tools/koha-news.pl index c7b590d209..fa912b6fbb 100755 --- a/tools/koha-news.pl +++ b/tools/koha-news.pl @@ -123,9 +123,9 @@ elsif ( $op eq 'add' ) { } } elsif ( $op eq 'edit' ) { - upd_opac_new( - { - idnew => $id, + my $news_item = Koha::News->find( $id ); + if ( $news_item ) { + $news_item->set({ title => $title, content => $content, lang => $lang, @@ -133,8 +133,8 @@ elsif ( $op eq 'edit' ) { timestamp => $timestamp, number => $number, branchcode => $branchcode, - } - ); + })->store; + } print $cgi->redirect("/cgi-bin/koha/tools/koha-news.pl"); } elsif ( $op eq 'del' ) { -- 2.11.0