Index: Slim/Plugin/Favorites/HTML/EN/plugins/Favorites/index.html
===================================================================
--- Slim/Plugin/Favorites/HTML/EN/plugins/Favorites/index.html (revision 18783)
+++ Slim/Plugin/Favorites/HTML/EN/plugins/Favorites/index.html (working copy)
@@ -26,6 +26,14 @@
+ [% IF favorites AND entry.audio %]
+
+ [% END %]
[% IF useAJAX %]
Index: Slim/Plugin/Favorites/OpmlFavorites.pm
===================================================================
--- Slim/Plugin/Favorites/OpmlFavorites.pm (revision 18783)
+++ Slim/Plugin/Favorites/OpmlFavorites.pm (working copy)
@@ -276,7 +276,13 @@
sub hotkeys {
my $class = shift;
- return keys %{$class->{'hotkey-index'}};
+ my @keys;
+
+ for my $key (1..9,0) {
+ push @keys, { 'key' => $key, 'used' => $class->{'hotkey-index'}->{ $key } ? 1 : 0 };
+ }
+
+ return \@keys;
}
sub hasHotkey {
Index: Slim/Plugin/Favorites/Plugin.pm
===================================================================
--- Slim/Plugin/Favorites/Plugin.pm (revision 18783)
+++ Slim/Plugin/Favorites/Plugin.pm (working copy)
@@ -519,6 +519,31 @@
$entry->{'URL'} = $url;
}
+
+ if (!$favs) {
+
+ my $hotkey = $params->{'entryhotkey'};
+
+ if (!defined $hotkey || $hotkey eq '') {
+
+ $log->info("removing hotkey from entry");
+
+ delete $entry->{'hotkey'};
+
+ } else {
+
+ my $oldindex = $opml->hasHotkey($hotkey);
+
+ if (defined $oldindex) {
+
+ $opml->setHotkey($oldindex, undef);
+ }
+
+ $log->info("setting hotkey for entry to $hotkey");
+
+ $entry->{'hotkey'} = $hotkey;
+ }
+ }
}
$changed = 1;