| 214 | | my $field = lc($1); |
| 215 | | |
| 216 | | if (($field eq "programme") || ($field eq "/programme")) { |
| 217 | | # print all previously seen tags in xmltv_tag_order |
| 218 | | foreach my $xmltag (@xmltv_tag_order) { |
| 219 | | if ($xmltv_tags{$xmltag} ne "") { |
| 220 | | print OUT $xmltv_tags{$xmltag}; |
| 221 | | $xmltv_tags{$xmltag} = ""; |
| 222 | | } |
| 223 | | } |
| 224 | | |
| 225 | | # if we have a start="(time)" and/or stop="(time)" make sure they |
| 226 | | # have a timezone on them. |
| 227 | | $line = $1."start=\"".$2." +0000\"".$3 if ($line =~ /^(.*)start="([0-9]+)"(.*)/); |
| 228 | | $line = $1."stop=\"".$2." +0000\"".$3 if ($line =~ /^(.*)stop="([0-9]+)"(.*)/); |
| 229 | | |
| 230 | | print OUT $line."\n"; # programme tag |
| 231 | | $cur_field = ""; |
| 232 | | } else { |
| 233 | | # do we know about this tag? |
| 234 | | $cur_field = $field if (defined $xmltv_tags{$field}); |
| 235 | | |
| 236 | | if ($cur_field eq "") { |
| 237 | | print OUT $line."\n"; |
| 238 | | } else { |
| 239 | | $xmltv_tags{$cur_field} .= $line."\n"; |
| 240 | | } |
| 241 | | } |
| | 216 | my $field = lc($1); |
| | 217 | # do we know about this tag? |
| | 218 | $cur_field = $field if (defined $xmltv_tags{$field}); |
| | 219 | } |
| | 220 | |
| | 221 | if ($cur_field eq "programme") { |
| | 222 | # if we have a start="(time)" and/or stop="(time)" make sure they |
| | 223 | # have a timezone on them. |
| | 224 | $line = $1."start=\"".$2." +0000\"".$3 if ($line =~ /^(.*)start="([0-9]+)"(.*)/); |
| | 225 | $line = $1."stop=\"".$2." +0000\"".$3 if ($line =~ /^(.*)stop="([0-9]+)"(.*)/); |
| | 226 | |
| | 227 | print OUT $line."\n"; # programme tag |
| | 228 | $cur_field = ""; |
| | 229 | } elsif ($cur_field eq "/programme") { |
| | 230 | print "Program with no title!\n" |
| | 231 | if (($xmltv_tags{title} eq "") or ($xmltv_tags{title} =~ />\s*</)); |
| | 232 | # print all previously seen tags in xmltv_tag_order |
| | 233 | foreach my $xmltag (@xmltv_tag_order) { |
| | 234 | if ($xmltv_tags{$xmltag} ne "") { |
| | 235 | print OUT $xmltv_tags{$xmltag}; |
| | 236 | $xmltv_tags{$xmltag} = ""; |
| | 237 | } |
| | 238 | } |
| | 239 | print OUT $line."\n"; # /programme tag |
| | 240 | $cur_field = ""; |