xmltv/grab/sd_json tv_grab_sd_json,1.7,1.8
Kevin Groeneveld <[email protected]> Thu, 26 May 2016 23:43:37 +0000
| Newsgroups | gmane.comp.tv.xmltv.cvs |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvsroot/xmltv/xmltv/grab/sd_json
In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv4191
Modified Files:
tv_grab_sd_json
Log Message:
tv_grab_sd_json: Add support for totalSeason and totalEpisodes.
Also ignore zero values for season/episode/partNumber.
Index: tv_grab_sd_json
===================================================================
RCS file: /cvsroot/xmltv/xmltv/grab/sd_json/tv_grab_sd_json,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** tv_grab_sd_json 26 May 2016 23:36:12 -0000 1.7
--- tv_grab_sd_json 26 May 2016 23:43:35 -0000 1.8
***************
*** 1060,1069 ****
}
sub get_program_episode {
my ($program, $details) = @_;
! my $season ='';
! my $episode = '';
! my $part = '';
! my $data = 0;
my @result;
--- 1060,1082 ----
}
+ sub _get_program_episode {
+ my ($number, $total) = @_;
+ my $result;
+
+ if(looks_like_number($number) && int($number)) {
+ $result = sprintf('%d', $number - 1);
+ if(looks_like_number($total) && int($total)) {
+ $result .= sprintf('/%d', $total);
+ }
+ }
+
+ return $result;
+ }
+
sub get_program_episode {
my ($program, $details) = @_;
! my $season;
! my $episode;
! my $part;
my @result;
***************
*** 1071,1112 ****
if($metadata)
{
! my $temp = $metadata->{'season'};
! if(looks_like_number($temp)) {
! $season = sprintf('%d', $temp - 1);
! $data = 1;
! }
!
! $temp = $metadata->{'episode'};
! if(looks_like_number($temp)) {
! $episode = sprintf('%d', $temp - 1);
! $data = 1;
! }
}
my $multipart = $program->{'multipart'};
if($multipart) {
! my $temp = $multipart->{'partNumber'};
! if(looks_like_number($temp)) {
! $part = sprintf('%d', $temp - 1);
! $temp = $multipart->{'totalParts'};
! if(looks_like_number($temp)) {
! $part .= sprintf('/%d', $temp );
! }
! $data = 1;
! }
}
! if($data) {
! push(@result, [ "$season.$episode.$part", 'xmltv_ns' ]);
}
push(@result, [ $program->{'programID'}, 'dd_progid' ]);
! if(scalar @result) {
! return \@result;
! }
! else {
! return undef;
! }
}
--- 1084,1106 ----
if($metadata)
{
! $season = _get_program_episode($metadata->{'season'}, $metadata->{'totalSeason'});
! $episode = _get_program_episode($metadata->{'episode'}, $metadata->{'totalEpisodes'});
}
my $multipart = $program->{'multipart'};
if($multipart) {
! $part = _get_program_episode($multipart->{'partNumber'}, $multipart->{'totalParts'});
}
! if($season || $episode || $part) {
! $season //= '';
! $episode //= '';
! $part //= '';
! push(@result, [ sprintf('%s.%s.%s', $season, $episode, $part), 'xmltv_ns' ]);
}
push(@result, [ $program->{'programID'}, 'dd_progid' ]);
! return \@result;
}
------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e