Bugzilla – Attachment 44441 Details for
Bug 14969
Remove C4::Dates from serials/*.pl files
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 14969 - Remove C4::Dates from serials/*.pl files
Bug-14969---Remove-C4Dates-from-serialspl-files.patch (text/plain), 19.69 KB, created by
Marc Véron
on 2015-11-04 22:57:41 UTC
(
hide
)
Description:
Bug 14969 - Remove C4::Dates from serials/*.pl files
Filename:
MIME Type:
Creator:
Marc Véron
Created:
2015-11-04 22:57:41 UTC
Size:
19.69 KB
patch
obsolete
>From 02e60218d9e4adb180bc79f653ecaac33a249a6a Mon Sep 17 00:00:00 2001 >From: =?UTF-8?q?Marc=20V=C3=A9ron?= <veron@veron.ch> >Date: Tue, 6 Oct 2015 23:51:43 +0200 >Subject: [PATCH] Bug 14969 - Remove C4::Dates from serials/*.pl files > >Bug to remove C4::Dates from files: > >- serials/acqui-search-result.pl >- serials/checkexpiration.pl >- serials/routing-preview.pl >- serials/routing.pl >- serials/serial-issues.pl >- serials/serials-collection.pl >- serials/serials-edit.pl >- serials/showpredictionpattern.pl >- serials/subscription-add.pl >- serials/subscription-detail.pl >- serials/subscription-history.pl >- serials/subscription-renew.pl > >To test: >- Go to Home > Serials >- Add, edit serials and routing lists with focus on date entry and display >- Verify that information for serials on item detail pages look fine in OPAC > and staff client as well >- Try to find regressions > >Amended to make it apply ( serials/checkexpiration.pl ) 04.11.2015 / mv >--- > serials/acqui-search-result.pl | 6 +++--- > serials/checkexpiration.pl | 18 +++++++++++------ > serials/routing-preview.pl | 1 - > serials/routing.pl | 1 - > serials/serial-issues.pl | 1 - > serials/serials-collection.pl | 20 ++++++++++--------- > serials/serials-edit.pl | 15 +++++++------- > serials/showpredictionpattern.pl | 16 +++++++-------- > serials/subscription-add.pl | 41 ++++++++++++++++++++++++++++---------- > serials/subscription-detail.pl | 5 +++-- > serials/subscription-history.pl | 13 ++++++++---- > serials/subscription-renew.pl | 15 +++++++------- > 12 files changed, 93 insertions(+), 59 deletions(-) > >diff --git a/serials/acqui-search-result.pl b/serials/acqui-search-result.pl >index 6e4d944..e8cc258 100755 >--- a/serials/acqui-search-result.pl >+++ b/serials/acqui-search-result.pl >@@ -47,7 +47,7 @@ use C4::Biblio; > use C4::Output; > use CGI qw ( -utf8 ); > use C4::Acquisition qw( SearchOrders ); >-use C4::Dates qw/format_date/; >+use Koha::DateUtils; > > use Koha::Acquisition::Bookseller; > >@@ -79,8 +79,8 @@ for my $s (@suppliers) { > basketno => $ord->{'basketno'}, > total => $ord->{'count(*)'}, > authorisedby => $ord->{'authorisedby'}, >- creationdate => format_date($ord->{'creationdate'}), >- closedate => format_date($ord->{'closedate'}), >+ creationdate => eval { output_pref( { dt => dt_from_string( $ord->{'creationdate'} ), dateonly => 1 }); } , >+ closedate => eval { output_pref( { dt => dt_from_string( $ord->{'closedate'} ), dateonly => 1 }); } , > }; > } > push @{$loop_suppliers}, { >diff --git a/serials/checkexpiration.pl b/serials/checkexpiration.pl >index c926814..a27490d 100755 >--- a/serials/checkexpiration.pl >+++ b/serials/checkexpiration.pl >@@ -50,8 +50,8 @@ use C4::Serials; # GetExpirationDate > use C4::Branch; > use C4::Output; > use C4::Context; >-use C4::Dates qw/format_date format_date_in_iso/; > use Date::Calc qw/Today Date_to_Days/; >+use Koha::DateUtils; > > my $query = new CGI; > >@@ -69,7 +69,9 @@ my ( $template, $loggedinuser, $cookie, $flags ) = get_template_and_user ( > my $title = $query->param('title'); > my $issn = $query->param('issn'); > my $branch = $query->param('branch'); >-my $date = format_date_in_iso($query->param('date')); >+my $date = ''; >+$date = eval { output_pref( { dt => dt_from_string( $query->param('date') ), dateonly => 1, dateformat => 'iso' }); } >+ if ( $query->param('date') ); > > if ($date) { > my @subscriptions = SearchSubscriptions({ title => $title, issn => $issn, orderby => 'title' }); >@@ -78,8 +80,12 @@ if ($date) { > foreach my $subscription ( @subscriptions ) { > my $subscriptionid = $subscription->{'subscriptionid'}; > my $expirationdate = GetExpirationDate($subscriptionid); >+ $expirationdate = eval { output_pref( { dt => dt_from_string( $expirationdate ), dateonly => 1, dateformat => 'iso' }); } >+ if ( $expirationdate ); >+ >+ next unless ( $expirationdate ); >+ > $subscription->{expirationdate} = $expirationdate; >- next if $expirationdate !~ /\d{4}-\d{2}-\d{2}/; # next if not in ISO format. > next if $subscription->{closed}; > if ( !C4::Context->preference("IndependentBranches") > or C4::Context->IsSuperLibrarian() >@@ -90,9 +96,9 @@ if ($date) { > } > next if $subscription->{cannotedit}; > if ( Date_to_Days(split "-",$expirationdate) < Date_to_Days(split "-",$date) && >- Date_to_Days(split "-",$expirationdate) > Date_to_Days(&Today) && > ( !$branch || ($subscription->{'branchcode'} eq $branch) ) ) { >- $subscription->{expirationdate}=format_date($subscription->{expirationdate}); >+ $subscription->{expirationdate} = >+ eval { output_pref( { dt => dt_from_string( $subscription->{expirationdate} ), dateonly => 1 }); }; > push @subscriptions_loop,$subscription; > } > } >@@ -101,7 +107,7 @@ if ($date) { > title => $title, > issn => $issn, > numsubscription => scalar @subscriptions_loop, >- date => format_date($date), >+ date => output_pref( { dt => dt_from_string( $date ), dateonly => 1 }) , > subscriptions_loop => \@subscriptions_loop, > "BiblioDefaultView".C4::Context->preference("BiblioDefaultView") => 1, > ); >diff --git a/serials/routing-preview.pl b/serials/routing-preview.pl >index 13bca6c..bed5091 100755 >--- a/serials/routing-preview.pl >+++ b/serials/routing-preview.pl >@@ -23,7 +23,6 @@ use warnings; > use CGI qw ( -utf8 ); > use C4::Koha; > use C4::Auth; >-use C4::Dates; > use C4::Output; > use C4::Acquisition; > use C4::Reserves; >diff --git a/serials/routing.pl b/serials/routing.pl >index 8f9cb6b..32f42e5 100755 >--- a/serials/routing.pl >+++ b/serials/routing.pl >@@ -30,7 +30,6 @@ use warnings; > use CGI qw ( -utf8 ); > use C4::Koha; > use C4::Auth; >-use C4::Dates; > use C4::Output; > use C4::Acquisition; > use C4::Output; >diff --git a/serials/serial-issues.pl b/serials/serial-issues.pl >index 12d7f90..c5bfbca 100755 >--- a/serials/serial-issues.pl >+++ b/serials/serial-issues.pl >@@ -46,7 +46,6 @@ use warnings; > use CGI qw ( -utf8 ); > use C4::Auth; > use C4::Koha; >-use C4::Dates; > use C4::Serials; > use C4::Output; > use C4::Context; >diff --git a/serials/serials-collection.pl b/serials/serials-collection.pl >index 900064a..21a7d64 100755 >--- a/serials/serials-collection.pl >+++ b/serials/serials-collection.pl >@@ -24,11 +24,12 @@ use warnings; > use CGI qw ( -utf8 ); > use C4::Auth; > use C4::Koha; >-use C4::Dates qw/format_date/; > use C4::Serials; > use C4::Letters; > use C4::Output; > use C4::Context; >+use Koha::DateUtils; >+ > use List::MoreUtils qw/uniq/; > > >@@ -111,14 +112,15 @@ if (@subscriptionid){ > $subs->{missinglist} =~ s/\n/\<br\/\>/g; > $subs->{recievedlist} =~ s/\n/\<br\/\>/g; > ##these are display information >- $subs->{startdate} = format_date( $subs->{startdate} ); >- $subs->{histstartdate} = format_date( $subs->{histstartdate} ); >- if ( !defined $subs->{enddate} || $subs->{enddate} eq '0000-00-00' ) { >- $subs->{enddate} = ''; >- } >- else { >- $subs->{enddate} = format_date( $subs->{enddate} ); >- } >+ $subs->{startdate} = eval { dt_from_string( $subs->{startdate} ) } if ( $subs->{startdate} ); >+ $subs->{startdate} = output_pref( { dt => $subs->{startdate}, dateonly => 1 } ) if ($subs->{startdate} ); >+ >+ $subs->{histstartdate} = eval { dt_from_string( $subs->{histstartdate} ) } if ( $subs->{histstartdate} ); >+ $subs->{histdate} = output_pref( { dt => $subs->{histdate}, dateonly => 1 } ) if ($subs->{histdate} ); >+ >+ $subs->{enddate} = eval { dt_from_string( $subs->{enddate} ) } if ( $subs->{enddate} ); >+ $subs->{enddate} = output_pref( { dt => $subs->{enddate}, dateonly => 1 } ) if ($subs->{enddate} ); >+ > $subs->{'abouttoexpire'}=abouttoexpire($subs->{'subscriptionid'}); > $subs->{'subscriptionexpired'}=HasSubscriptionExpired($subs->{'subscriptionid'}); > $subs->{'subscriptionid'} = $subscriptionid; # FIXME - why was this lost ? >diff --git a/serials/serials-edit.pl b/serials/serials-edit.pl >index 8df489d..6daf6ac 100755 >--- a/serials/serials-edit.pl >+++ b/serials/serials-edit.pl >@@ -66,7 +66,6 @@ use warnings; > use CGI qw ( -utf8 ); > use Encode qw( decode is_utf8 ); > use C4::Auth; >-use C4::Dates qw/format_date format_date_in_iso/; > use C4::Biblio; > use C4::Items; > use C4::Koha; >@@ -74,6 +73,8 @@ use C4::Output; > use C4::Context; > use C4::Serials; > use C4::Search qw/enabled_staff_search_views/; >+use Koha::DateUtils; >+ > use List::MoreUtils qw/uniq/; > > my $query = CGI->new(); >@@ -126,7 +127,7 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user( > my @serialdatalist; > my %processedserialid; > >-my $today = C4::Dates->new(); >+my $today = dt_from_string; > foreach my $serialid (@serialids) { > > #filtering serialid for duplication >@@ -142,10 +143,10 @@ foreach my $serialid (@serialids) { > $serinfo->{$d} = q{}; > } > else { >- $serinfo->{$d} = format_date( $serinfo->{$d} ); >+ $serinfo->{$d} = eval { output_pref( { dt => dt_from_string( $serinfo ), dateonly => 1 } ); }; > } > } >- $serinfo->{arriveddate}=$today->output('syspref'); >+ $serinfo->{arriveddate}=$today; > > $serinfo->{'editdisable'} = ( > ( >@@ -186,7 +187,7 @@ foreach my $subscriptionid (@subscriptionids) { > $cell->{'itemid'} = 'NNEW'; > $cell->{'serialid'} = 'NEW'; > $cell->{'issuesatonce'} = 1; >- $cell->{arriveddate}=$today->output('syspref'); >+ $cell->{arriveddate}=$today; > > push @newserialloop, $cell; > push @subscriptionloop, >@@ -213,10 +214,10 @@ if ( $op and $op eq 'serialchangestatus' ) { > my ($plan_date, $pub_date); > > if (defined $planneddates[$i] && $planneddates[$i] ne 'XXX') { >- $plan_date = format_date_in_iso( $planneddates[$i] ); >+ $plan_date = eval { output_pref( { dt => dt_from_string( $planneddates[$i] ), dateonly => 1, dateformat => 'iso' } ); }; > } > if (defined $publisheddates[$i] && $publisheddates[$i] ne 'XXX') { >- $pub_date = format_date_in_iso( $publisheddates[$i] ); >+ $pub_date = eval { output_pref( { dt => dt_from_string( $publisheddates[$i] ), dateonly => 1, dateformat => 'iso' } ); }; > } > > if ( $serialids[$i] && $serialids[$i] eq 'NEW' ) { >diff --git a/serials/showpredictionpattern.pl b/serials/showpredictionpattern.pl >index 6945a36..0d8542b 100755 >--- a/serials/showpredictionpattern.pl >+++ b/serials/showpredictionpattern.pl >@@ -36,6 +36,7 @@ use C4::Auth; > use C4::Output; > use C4::Serials; > use C4::Serials::Frequency; >+use Koha::DateUtils; > > my $input = new CGI; > my ($template, $loggedinuser, $cookie, $flags) = get_template_and_user( { >@@ -76,19 +77,18 @@ my %pattern = ( > every3 => $input->param('every3') // '', > ); > >-if(!defined $firstacquidate || $firstacquidate eq ''){ >- my ($year, $month, $day) = Today(); >- $firstacquidate = sprintf "%04d-%02d-%02d", $year, $month, $day; >-} else { >- $firstacquidate = C4::Dates->new($firstacquidate)->output('iso'); >-} >+$firstacquidate = eval { output_pref( { dt => dt_from_string( $firstacquidate ), dateonly => 1, dateformat => 'iso' } ); } >+ if ( $firstacquidate ); >+ >+$firstacquidate = eval { output_pref( { dt => dt_from_string, dateonly => 1, dateformat => 'iso' } ); } >+ unless ( $firstacquidate ); > > if($enddate){ >- $enddate = C4::Dates->new($enddate)->output('iso'); >+ $enddate = eval { output_pref( { dt => dt_from_string( $enddate ), dateonly => 1, dateformat => 'iso' } ); }; > } > > if($nextacquidate) { >- $nextacquidate = C4::Dates->new($nextacquidate)->output('iso'); >+ $nextacquidate = eval { output_pref( { dt => dt_from_string( $nextacquidate ), dateonly => 1, dateformat => 'iso' } ); }; > } else { > $nextacquidate = $firstacquidate; > } >diff --git a/serials/subscription-add.pl b/serials/subscription-add.pl >index fedb7da..8795438 100755 >--- a/serials/subscription-add.pl >+++ b/serials/subscription-add.pl >@@ -23,7 +23,6 @@ use Date::Calc qw(Today Day_of_Year Week_of_Year Add_Delta_Days Add_Delta_YM); > use C4::Koha; > use C4::Biblio; > use C4::Auth; >-use C4::Dates qw/format_date format_date_in_iso/; > use C4::Acquisition; > use C4::Output; > use C4::Context; >@@ -33,6 +32,7 @@ use C4::Serials::Frequency; > use C4::Serials::Numberpattern; > use C4::Letters; > use Koha::AdditionalField; >+use Koha::DateUtils; > use Carp; > > #use Smart::Comments; >@@ -322,9 +322,18 @@ sub redirect_add_subscription { > my $opacdisplaycount = $query->param('opacdisplaycount'); > my $location = $query->param('location'); > my $skip_serialseq = $query->param('skip_serialseq'); >- my $startdate = format_date_in_iso( $query->param('startdate') ); >- my $enddate = format_date_in_iso( $query->param('enddate') ); >- my $firstacquidate = format_date_in_iso($query->param('firstacquidate')); >+ >+ my $startdate = $query->param('startdate'); >+ $startdate = eval { dt_from_string( $startdate ); } if ( $startdate ); >+ $startdate = output_pref( { dt => $startdate, dateonly => 1, dateformat => 'iso' } ) if ( $startdate ); >+ >+ my $enddate = $query->param('enddate'); >+ $enddate = eval { dt_from_string( $enddate ); } if ( $enddate ); >+ $enddate = output_pref( { dt => $enddate, dateonly => 1, dateformat => 'iso' } ) if ( $enddate ); >+ my $firstacquidate = $query->param('firstacquidate'); >+ $firstacquidate = eval { dt_from_string( $firstacquidate ); } if ( $firstacquidate ); >+ $firstacquidate = output_pref( { dt => $enddate, dateonly => 1, dateformat => 'iso' } ) if ( $firstacquidate ); >+ > if(!defined $enddate || $enddate eq '') { > if($subtype eq "issues") { > $enddate = _guess_enddate($firstacquidate, $periodicity, $numberlength, $weeklength, $monthlength); >@@ -361,12 +370,24 @@ sub redirect_mod_subscription { > my $aqbooksellerid = $query->param('aqbooksellerid'); > my $biblionumber = $query->param('biblionumber'); > my $aqbudgetid = $query->param('aqbudgetid'); >- my $startdate = format_date_in_iso($query->param('startdate')); >- my $firstacquidate = format_date_in_iso( $query->param('firstacquidate') ); >- my $nextacquidate = $query->param('nextacquidate') ? >- format_date_in_iso($query->param('nextacquidate')): >- $firstacquidate; >- my $enddate = format_date_in_iso($query->param('enddate')); >+ >+ my $startdate = $query->param('startdate'); >+ $startdate = eval { dt_from_string( $startdate ); } if ( $startdate ); >+ $startdate = output_pref( { dt => $startdate, dateonly => 1, dateformat => 'iso' } ) if ( $startdate ); >+ >+ my $enddate = $query->param('enddate'); >+ $enddate = eval { dt_from_string( $enddate ); } if ( $enddate ); >+ $enddate = output_pref( { dt => $enddate, dateonly => 1, dateformat => 'iso' } ) if ( $enddate ); >+ >+ my $firstacquidate = $query->param('firstacquidate'); >+ $firstacquidate = eval { dt_from_string( $firstacquidate ); } if ( $firstacquidate ); >+ $firstacquidate = output_pref( { dt => $firstacquidate, dateonly => 1, dateformat => 'iso' } ) if ( $firstacquidate ); >+ >+ my $nextacquidate = $query->param('nextacquidate'); >+ $nextacquidate = eval { dt_from_string( $nextacquidate ); } if ( $nextacquidate ); >+ $nextacquidate = output_pref( { dt => $nextacquidate, dateonly => 1, dateformat => 'iso' } ) if ( $nextacquidate ); >+ $nextacquidate = $firstacquidate unless $nextacquidate; >+ > my $periodicity = $query->param('frequency'); > > my $subtype = $query->param('subtype'); >diff --git a/serials/subscription-detail.pl b/serials/subscription-detail.pl >index 45ce5b0..0927e39 100755 >--- a/serials/subscription-detail.pl >+++ b/serials/subscription-detail.pl >@@ -21,11 +21,11 @@ use C4::Acquisition; > use C4::Auth; > use C4::Budgets; > use C4::Koha; >-use C4::Dates qw/format_date/; > use C4::Serials; > use C4::Output; > use C4::Context; > use C4::Search qw/enabled_staff_search_views/; >+use Koha::DateUtils; > > use Koha::Acquisition::Bookseller; > >@@ -100,7 +100,8 @@ my $hasRouting = check_routing($subscriptionid); > # COMMENT hdl : IMHO, we should think about passing more and more data hash to template->param rather than duplicating code a new coding Guideline ? > > for my $date ( qw(startdate enddate firstacquidate histstartdate histenddate) ) { >- $$subs{$date} = format_date($$subs{$date}) if $date && $$subs{$date}; >+ $$subs{$date} = eval { output_pref( { dt => dt_from_string( $$subs{$date} ), dateonly => 1 }); } >+ if $date && $$subs{$date}; > } > $subs->{location} = GetKohaAuthorisedValueLib("LOC",$subs->{location}); > $subs->{abouttoexpire} = abouttoexpire($subs->{subscriptionid}); >diff --git a/serials/subscription-history.pl b/serials/subscription-history.pl >index 267afcb..2318397 100755 >--- a/serials/subscription-history.pl >+++ b/serials/subscription-history.pl >@@ -34,8 +34,8 @@ use C4::Auth; > use C4::Output; > > use C4::Biblio; >-use C4::Dates qw(format_date_in_iso); > use C4::Serials; >+use Koha::DateUtils; > > my $input = new CGI; > my ($template, $loggedinuser, $cookie, $flags) = get_template_and_user( { >@@ -63,9 +63,14 @@ if($op && $op eq 'mod') { > my $opacnote = $input->param('opacnote'); > my $librariannote = $input->param('librariannote'); > >- ModSubscriptionHistory( $subscriptionid, format_date_in_iso($histstartdate), >- format_date_in_iso($histenddate), $receivedlist, $missinglist, $opacnote, >- $librariannote ); >+ $histstartdate = eval { output_pref( { dt => $histstartdate, dateonly => 1, dateformat => 'iso' } ); } >+ if ( $histstartdate ); >+ >+ $histenddate = eval { output_pref( { dt => $histenddate, dateonly => 1, dateformat => 'iso' } ); } >+ if ( $histenddate ); >+ >+ ModSubscriptionHistory( $subscriptionid, $histstartdate, $histenddate, $receivedlist, >+ $missinglist, $opacnote, $librariannote ); > > print $input->redirect("/cgi-bin/koha/serials/subscription-detail.pl?subscriptionid=$subscriptionid"); > exit; >diff --git a/serials/subscription-renew.pl b/serials/subscription-renew.pl >index 9f3b934..6ac3595 100755 >--- a/serials/subscription-renew.pl >+++ b/serials/subscription-renew.pl >@@ -50,11 +50,11 @@ use CGI qw ( -utf8 ); > use Carp; > use C4::Koha; > use C4::Auth; >-use C4::Dates qw/format_date/; > use C4::Context; > use C4::Auth; > use C4::Output; > use C4::Serials; >+use Koha::DateUtils; > > my $query = new CGI; > my $dbh = C4::Context->dbh; >@@ -74,9 +74,10 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user( > } > ); > if ( $op eq "renew" ) { >+ my $renewstartdate = eval { output_pref( { dt => dt_from_string( $query->param('startdate') ), dateonly => 1, dateformat => 'iso' } ); }; > ReNewSubscription( >- $subscriptionid, $loggedinuser, >- C4::Dates->new($query->param('startdate'))->output('iso'), $query->param('numberlength'), >+ $subscriptionid, $loggedinuser, >+ $renewstartdate, $query->param('numberlength'), > $query->param('weeklength'), $query->param('monthlength'), > $query->param('note') > ); >@@ -88,11 +89,11 @@ if ($subscription->{'cannotedit'}){ > print $query->redirect("/cgi-bin/koha/serials/subscription-detail.pl?subscriptionid=$subscriptionid"); > } > >+my $newstartdate = eval { output_pref( { dt => dt_from_string( $subscription->{enddate} ), dateonly => 1 } ); }; >+$newstartdate = output_pref( { dt => dt_from_string, dateonly => 1 } ) unless ( $newstartdate ); >+ > $template->param( >- startdate => format_date( >- $subscription->{enddate} >- || POSIX::strftime( "%Y-%m-%d", localtime ) >- ), >+ startdate => $newstartdate, > numberlength => $subscription->{numberlength}, > weeklength => $subscription->{weeklength}, > monthlength => $subscription->{monthlength}, >-- >1.7.10.4
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 14969
:
43182
|
44441
|
44526
|
44527
|
44528
|
44549
|
44550
|
44617
|
44618
|
44694
|
44735
|
44763
|
44775
|
44794
|
44799
|
44930
|
44931