--- AlarmClock.pm 2005-10-04 10:38:09.567001500 -0700 +++ Slim/Buttons/AlarmClock.pm 2005-10-04 10:15:18.145126500 -0700 @@ -333,7 +333,13 @@ sub checkAlarms { $client->fade_volume($client->prefGet("alarmfadeseconds", $day)); my $playlist = $client->prefGet("alarmplaylist", $day); - if (defined $playlist) { + + if ($specialPlaylists{$playlist} && ((grep {$_ eq 'RandomPlay::Plugin'} keys %{Slim::Buttons::Plugins::installedPlugins()}) + && !(grep {$_ eq 'RandomPlay::Plugin'} Slim::Utils::Prefs::getArray('disabledplugins')))) { + + Plugins::RandomPlay::Plugin::playRandom($client,$specialPlaylists{$playlist}); + + } elsif (defined $playlist) { $client->execute(["power", 1]); @@ -342,10 +348,7 @@ sub checkAlarms { $client->execute(["playlist", "load", $playlist], \&playDone, [$client]); # check random playlist choice, but only if RandomPlay plugin is enabled at this time. - } elsif ($specialPlaylists{$playlist} && ((grep {$_ eq 'RandomPlay::Plugin'} keys %{Slim::Buttons::Plugins::installedPlugins()}) - && !(grep {$_ eq 'RandomPlay::Plugin'} Slim::Utils::Prefs::getArray('disabledplugins')))) { - Plugins::RandomPlay::Plugin::playRandom($client,$specialPlaylists{$playlist}); - + #fallback to current playlist if all else fails. } else {