#!c:/perl/bin/perl use strict; use Globals; use CGI; use playlists::playlist; use Globals qw(%ALLPLATTERS @MUSIC @VIDEO @SHORTCUT $bgcolour); # Scripting variables # my $WEBPAGE = openTemplate("settings"); my $FORMATS; my $SERVERS; my $QUERY = CGI::new(); my $exclude = $QUERY->cookie("exclude"); my @AVAILABLE; # Playlist formats form opendir(DIR, "./playlists/"); while (my $file = readdir(DIR)) { if ($file =~ /^ext(.*)\.(pm)$/) { push (@AVAILABLE, $1); } } closedir DIR; my $thisformat; my $desc; foreach ( @AVAILABLE ) { if (/playlist/) { next } $thisformat = $_; $desc = playlist->new("ext$thisformat")->desc(); $FORMATS.="". "$thisformat$desc\n"; } $WEBPAGE =~ s/%FORMATS%/$FORMATS/; $WEBPAGE =~ s/%BGCOLOUR%/$bgcolour/g; # filetype form my $query = CGI::new(); my $currExts = $query->cookie('exclTypes'); my $EXTS = createExtForm("Audio", $currExts, @MUSIC).createExtForm("Video", $currExts, @VIDEO).createExtForm("Shortcut", $currExts, @SHORTCUT); $WEBPAGE =~ s/%EXTS%/$EXTS/; # server exclusion form # foreach( keys %ALLPLATTERS ) { chomp; my @THISSERVER = split; my $CHECKED = 'checked'; if ($SERVERS =~ /"$THISSERVER[0]"/) { next;} if ($exclude =~ /$THISSERVER[0]/) { $CHECKED = ''; } $SERVERS.= ''.$THISSERVER[0].'
'; } # Put in what we know # $WEBPAGE =~ s/%SERVERS%/$SERVERS/g; # Display the finished Web page # print $WEBPAGE; # Fin # close TEMPLATE; exit; sub createExtForm() { my ($TITLE, $CURR, @EXTS) = @_; my $FORM = "
$TITLE:"; my $ext; foreach $ext ( @EXTS ) { my $CHECKED = ' checked'; $CHECKED = '' if ($CURR =~ /$ext,/); $FORM.=' $ext \n"; } return $FORM."\n"; }