|
Lines 870-877
sub GetNextSeq {
Link Here
|
| 870 |
} |
870 |
} |
| 871 |
} |
871 |
} |
| 872 |
|
872 |
|
| 873 |
my $numberingmethod = $pattern->{numberingmethod}; |
|
|
| 874 |
my $calculated = ""; |
873 |
my $calculated = ""; |
|
|
874 |
my $numberingmethod = ""; |
| 875 |
if ($pattern eq "pubdate"){ |
| 876 |
$calculated = dt_from_string( $planneddate )->strftime( '%Y %B %d' ); |
| 877 |
} else { |
| 878 |
$numberingmethod = $pattern->{numberingmethod}; |
| 879 |
} |
| 875 |
if ($numberingmethod) { |
880 |
if ($numberingmethod) { |
| 876 |
$calculated = $numberingmethod; |
881 |
$calculated = $numberingmethod; |
| 877 |
my $locale = $subscription->{locale}; |
882 |
my $locale = $subscription->{locale}; |
|
Lines 951-956
the sequence in string format
Link Here
|
| 951 |
sub GetSeq { |
956 |
sub GetSeq { |
| 952 |
my ($subscription, $pattern) = @_; |
957 |
my ($subscription, $pattern) = @_; |
| 953 |
|
958 |
|
|
|
959 |
if ($pattern->{numberingmethod} eq ''){ |
| 960 |
return "pubdate"; |
| 961 |
} |
| 962 |
|
| 954 |
return unless ($subscription and $pattern); |
963 |
return unless ($subscription and $pattern); |
| 955 |
|
964 |
|
| 956 |
my $locale = $subscription->{locale}; |
965 |
my $locale = $subscription->{locale}; |
|
Lines 1159-1164
sub ModSerialStatus {
Link Here
|
| 1159 |
my $pattern = C4::Serials::Numberpattern::GetSubscriptionNumberpattern($subscription->{numberpattern}); |
1168 |
my $pattern = C4::Serials::Numberpattern::GetSubscriptionNumberpattern($subscription->{numberpattern}); |
| 1160 |
my $frequency = C4::Serials::Frequency::GetSubscriptionFrequency($subscription->{periodicity}); |
1169 |
my $frequency = C4::Serials::Frequency::GetSubscriptionFrequency($subscription->{periodicity}); |
| 1161 |
|
1170 |
|
|
|
1171 |
my $nextpublisheddate = GetNextDate($subscription, $publisheddate, 1); |
| 1172 |
my ( $newserialseq, $newlastvalue1, $newlastvalue2, $newlastvalue3, |
| 1173 |
$newinnerloop1, $newinnerloop2, $newinnerloop3 ); |
| 1174 |
|
| 1175 |
if (!defined $pattern){ |
| 1176 |
$pattern = "pubdate"; |
| 1177 |
( $newserialseq, $newlastvalue1, $newlastvalue2, $newlastvalue3, |
| 1178 |
$newinnerloop1, $newinnerloop2, $newinnerloop3 ) = GetNextSeq( $subscription, $pattern, $nextpublisheddate ); |
| 1179 |
} else { |
| 1180 |
( $newserialseq, $newlastvalue1, $newlastvalue2, $newlastvalue3, |
| 1181 |
$newinnerloop1, $newinnerloop2, $newinnerloop3 ) = GetNextSeq( $subscription, $pattern, $publisheddate ); |
| 1182 |
} |
| 1183 |
|
| 1162 |
# next issue number |
1184 |
# next issue number |
| 1163 |
my ( |
1185 |
my ( |
| 1164 |
$newserialseq, $newlastvalue1, $newlastvalue2, $newlastvalue3, |
1186 |
$newserialseq, $newlastvalue1, $newlastvalue2, $newlastvalue3, |
|
Lines 1167-1173
sub ModSerialStatus {
Link Here
|
| 1167 |
= GetNextSeq( $subscription, $pattern, $frequency, $publisheddate ); |
1189 |
= GetNextSeq( $subscription, $pattern, $frequency, $publisheddate ); |
| 1168 |
|
1190 |
|
| 1169 |
# next date (calculated from actual date & frequency parameters) |
1191 |
# next date (calculated from actual date & frequency parameters) |
| 1170 |
my $nextpublisheddate = GetNextDate($subscription, $publisheddate, $frequency, 1); |
|
|
| 1171 |
my $nextpubdate = $nextpublisheddate; |
1192 |
my $nextpubdate = $nextpublisheddate; |
| 1172 |
$query = "UPDATE subscription SET lastvalue1=?, lastvalue2=?, lastvalue3=?, innerloop1=?, innerloop2=?, innerloop3=? |
1193 |
$query = "UPDATE subscription SET lastvalue1=?, lastvalue2=?, lastvalue3=?, innerloop1=?, innerloop2=?, innerloop3=? |
| 1173 |
WHERE subscriptionid = ?"; |
1194 |
WHERE subscriptionid = ?"; |
|
Lines 1433-1438
sub NewSubscription {
Link Here
|
| 1433 |
# calculate issue number |
1454 |
# calculate issue number |
| 1434 |
my $serialseq = GetSeq($subscription, $pattern) || q{}; |
1455 |
my $serialseq = GetSeq($subscription, $pattern) || q{}; |
| 1435 |
|
1456 |
|
|
|
1457 |
if ($serialseq eq "pubdate"){ |
| 1458 |
$serialseq = dt_from_string( $firstacquidate )->strftime('%Y %B %d'); |
| 1459 |
} |
| 1460 |
|
| 1436 |
Koha::Serial->new( |
1461 |
Koha::Serial->new( |
| 1437 |
{ |
1462 |
{ |
| 1438 |
serialseq => $serialseq, |
1463 |
serialseq => $serialseq, |