diff options
Diffstat (limited to 'cgi-bin/playlists/extwvx.pm')
| -rw-r--r-- | cgi-bin/playlists/extwvx.pm | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/cgi-bin/playlists/extwvx.pm b/cgi-bin/playlists/extwvx.pm new file mode 100644 index 0000000..7decaee --- /dev/null +++ b/cgi-bin/playlists/extwvx.pm @@ -0,0 +1,64 @@ +package extwvx; + +use strict; + +use Globals; +use Globals qw($CGIROOT); +use Globals qw($APPNAME); +use Globals qw(%PLATTERS); +use Globals qw($delim); +use Globals qw(@VIDEO); + +sub new { + my $self = { + mime => "video/x-ms-wvx", + playlist => "<Asx Version = \"3.0\" >\n"}; + bless ($self); + return $self; +} + +sub desc { + return "Windows Media Player Playlist"; + } + +sub header { + my $self = shift; + my ($artist, $album) = @_; + $album =~ /(\d{2} - |)(.*)(\((\d{4})\)|)/; + $self->{playlist} .= "<Title>$2</Title>". + "<Author>$artist</Author>". + "<Param Name = \"AllowShuffle\" Value = \"yes\" />\n"; +} + +sub track { + my $self = shift; + + my ($folder, $trackartist, $album, $year, $track, $url, $platter) = @_; + my $artist = getArtistString($folder, $trackartist); + + my $mediatype = "audio"; + $track =~ /.*\.(.*?)/i; + my $filetype = $1; + foreach (@VIDEO) { + $mediatype = "video" if (/^$filetype$/i); + } + + $self->{playlist} .= "<Entry>\n". + "<Title>".makeNice($track)."</Title>\n". + "<Ref href = \"".makeTrackURL( $PLATTERS{$platter}, $url, $folder, $trackartist, $track )."\"/>\n". + "<Param Name = \"Artist\" Value = \"".$artist."\" />\n". + "<Param Name = \"Album\" Value = \"".makeNice($album)."\" />\n". + "<Param Name = \"MediaType\" Value = \"".$mediatype."\" />\n". + "<Banner Href = \"http://$CGIROOT/platdoc/img/banner.png\">\n". + "<Abstract>Click to go to the ".makeNice($folder)." page</Abstract>\n". + "<Moreinfo Href=\"http://$CGIROOT/$APPNAME/front.plx?artist=".makeUnNice($folder)."&album=".makeUnNice($album)."\" />\n". + "</Banner>\n". + "</Entry>\n"; + } + +sub dump { + my $self = shift; + return $self->{playlist}."</Asx>"; + } + +return 1; |
