Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Base.pm =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Base.pm (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Base.pm (working copy) @@ -49,6 +49,11 @@ $class->webPages; } + if ($class->_pluginDataFor('pageicon')) { + + Slim::Web::Pages->addPageLinks("icons", { $name => $class->_pluginDataFor('pageicon') }); + } + if ($class->can('defaultMap')) { Slim::Hardware::IR::addModeDefaultMapping($mode, $class->defaultMap); Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/InfoBrowser/HTML/EN/plugins/InfoBrowser/html/images/infobrowser.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/InfoBrowser/HTML/EN/plugins/InfoBrowser/html/images/infobrowser.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/InfoBrowser/install.xml =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/InfoBrowser/install.xml (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/InfoBrowser/install.xml (working copy) @@ -10,6 +10,7 @@ enabled plugins/InfoBrowser/settings/basic.html + plugins/InfoBrowser/html/images/infobrowser.png 2 SqueezeCenter Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Live365/install.xml =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Live365/install.xml (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Live365/install.xml (working copy) @@ -9,6 +9,7 @@ Slim Devices/Logitech support@slimdevices.com enabled + html/images/ServiceProviders/live365.png http://www.slimdevices.com/ 2 Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Live365/Plugin.pm =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Live365/Plugin.pm (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Live365/Plugin.pm (working copy) @@ -22,7 +22,6 @@ feed => Slim::Networking::SqueezeNetwork->url('/api/live365/v1/opml'), tag => 'live365', menu => 'radio', - 'icon-id' => 'html/images/ServiceProviders/live365.png', ); } Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/LMA/install.xml =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/LMA/install.xml (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/LMA/install.xml (working copy) @@ -2,23 +2,24 @@ B9145737-A509-4DD9-8DCA-A2D31D0FF1B5 - PLUGIN_LMA_MODULE_NAME - Slim::Plugin::LMA::Plugin - MUSIC_SERVICES - 1.0 - PLUGIN_LMA_MODULE_NAME_DESC - Slim Devices/Logitech - support@slimdevices.com + PLUGIN_LMA_MODULE_NAME + Slim::Plugin::LMA::Plugin + MUSIC_SERVICES + 1.0 + PLUGIN_LMA_MODULE_NAME_DESC + Slim Devices/Logitech + support@slimdevices.com enabled - http://www.slimdevices.com/ + http://www.slimdevices.com/ + html/images/ServiceProviders/lma.png 2 - - SqueezeCenter - 7.0a - 7.0+ - + + SqueezeCenter + 7.0a + 7.0+ + Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/LMA/Plugin.pm =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/LMA/Plugin.pm (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/LMA/Plugin.pm (working copy) @@ -15,7 +15,6 @@ $class->SUPER::initPlugin( feed => Slim::Networking::SqueezeNetwork->url( '/api/lma/v1/opml' ), tag => 'lma', - 'icon-id' => 'html/images/ServiceProviders/lma.png', menu => 'music_services', style => 'albumcurrent', ); Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/MP3tunes/install.xml =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/MP3tunes/install.xml (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/MP3tunes/install.xml (working copy) @@ -10,6 +10,7 @@ support@slimdevices.com enabled http://www.slimdevices.com/ + html/images/ServiceProviders/mp3tunes.png 2 SqueezeCenter Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/MP3tunes/Plugin.pm =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/MP3tunes/Plugin.pm (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/MP3tunes/Plugin.pm (working copy) @@ -15,7 +15,6 @@ $class->SUPER::initPlugin( feed => Slim::Networking::SqueezeNetwork->url('/api/mp3tunes/v1/opml'), tag => 'mp3tunes', - 'icon-id' => 'html/images/ServiceProviders/mp3tunes.png', menu => 'music_services', ); } Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/OPMLBased.pm =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/OPMLBased.pm (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/OPMLBased.pm (working copy) @@ -18,10 +18,9 @@ *{$class.'::'.'tag'} = sub { $args{tag} }; *{$class.'::'.'menu'} = sub { $args{menu} }; } - - if (exists $args{'icon-id'}) { - Slim::Web::Pages->addPageLinks("icons", { $class->getDisplayName => $args{'icon-id'} }); - } else { + + if (!$class->_pluginDataFor('pageicon')) { + Slim::Web::Pages->addPageLinks("icons", { $class->getDisplayName => 'html/images/radio.png' }); } @@ -80,7 +79,9 @@ sub cliRadiosQuery { my ( $class, $args, $cli_menu ) = @_; my $tag = $args->{tag}; - my $icon = defined($args->{'icon-id'}) ? $args->{'icon-id'} : 'html/images/radio.png'; + + my $icon = $class->_pluginDataFor('pageicon') ? $class->_pluginDataFor('pageicon') : 'html/images/radio.png'; + return sub { my $request = shift; Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Pandora/install.xml =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Pandora/install.xml (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Pandora/install.xml (working copy) @@ -10,6 +10,7 @@ support@slimdevices.com enabled http://www.slimdevices.com/ + html/images/ServiceProviders/pandora.png 2 SqueezeCenter Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Pandora/Plugin.pm =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Pandora/Plugin.pm (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Pandora/Plugin.pm (working copy) @@ -34,7 +34,6 @@ $class->SUPER::initPlugin( feed => Slim::Networking::SqueezeNetwork->url('/api/pandora/v1/opml'), tag => 'pandora', - 'icon-id' => 'html/images/ServiceProviders/pandora.png', menu => 'music_services', ); Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Picks/install.xml =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Picks/install.xml (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Picks/install.xml (working copy) @@ -13,6 +13,7 @@ enabled http://www.slimdevices.com/ + html/images/ServiceProviders/picks.png 2 Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Picks/Plugin.pm =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Picks/Plugin.pm (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Picks/Plugin.pm (working copy) @@ -14,7 +14,6 @@ feed => 'http://www.slimdevices.com/picks/split/picks.opml', tag => 'picks', menu => 'radio', - 'icon-id' => 'html/images/ServiceProviders/picks.png', ); } Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Podcast/install.xml =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Podcast/install.xml (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Podcast/install.xml (working copy) @@ -13,6 +13,7 @@ http://www.slimdevices.com/ plugins/Podcast/settings/basic.html + html/images/ServiceProviders/podcast.png 2 Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Podcast/Plugin.pm =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Podcast/Plugin.pm (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Podcast/Plugin.pm (working copy) @@ -132,7 +132,6 @@ my $url = 'plugins/Podcast/index.html'; Slim::Web::Pages->addPageLinks('plugins', { $title => $url }); - Slim::Web::Pages->addPageLinks('icons', { $title => 'html/images/ServiceProviders/podcast.png' }); Slim::Web::HTTP::protectURI($url); @@ -171,7 +170,7 @@ if (defined $menu) { $data = { 'text' => Slim::Utils::Strings::string(getDisplayName()), # nice name - 'icon-id' => 'html/images/ServiceProviders/podcast.png', + 'icon-id' => Slim::Plugin::Podcast::Plugin->_pluginDataFor('pageicon'), 'actions' => { 'go' => { 'cmd' => ['podcast', 'items'], Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RadioIO/install.xml =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RadioIO/install.xml (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RadioIO/install.xml (working copy) @@ -12,6 +12,7 @@ enabled http://www.slimdevices.com/ + html/images/ServiceProviders/radioio.png 2 Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RadioIO/Plugin.pm =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RadioIO/Plugin.pm (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RadioIO/Plugin.pm (working copy) @@ -23,7 +23,6 @@ $class->SUPER::initPlugin( feed => Slim::Networking::SqueezeNetwork->url('/api/radioio/v1/opml'), tag => 'radioio', - 'icon-id' => 'html/images/ServiceProviders/radioio.png', menu => 'radio', ); } Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RadioTime/install.xml =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RadioTime/install.xml (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RadioTime/install.xml (working copy) @@ -13,6 +13,7 @@ enabled http://www.slimdevices.com/ + html/images/ServiceProviders/radiotime.png plugins/RadioTime/settings/basic.html 2 Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RadioTime/Plugin.pm =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RadioTime/Plugin.pm (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RadioTime/Plugin.pm (working copy) @@ -116,7 +116,6 @@ my $url = 'plugins/RadioTime/index.html'; Slim::Web::Pages->addPageLinks('radio', { $title => $url }); - Slim::Web::Pages->addPageLinks('icons', { $title => 'html/images/ServiceProviders/radiotime.png' }); Slim::Web::HTTP::protectURI($url); @@ -148,7 +147,7 @@ if (defined $menu) { $data = { 'text' => Slim::Utils::Strings::string(getDisplayName()), # nice name - 'icon-id' => 'html/images/ServiceProviders/radiotime.png', + 'icon-id' => Slim::Plugin::RadioTime::Plugin->_pluginDataFor('pageicon'), 'actions' => { 'go' => { 'cmd' => ['radiotime', 'items'], Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RhapsodyDirect/install.xml =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RhapsodyDirect/install.xml (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RhapsodyDirect/install.xml (working copy) @@ -10,6 +10,7 @@ support@slimdevices.com enabled http://www.slimdevices.com/ + html/images/ServiceProviders/rhapsodydirect.png 2 SqueezeCenter Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RhapsodyDirect/Plugin.pm =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RhapsodyDirect/Plugin.pm (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/RhapsodyDirect/Plugin.pm (working copy) @@ -32,7 +32,6 @@ feed => Slim::Networking::SqueezeNetwork->url('/api/rhapsody/v1/opml'), tag => 'rhapsodydirect', menu => 'music_services', - 'icon-id' => 'html/images/ServiceProviders/rhapsodydirect.png', ); if ( !$ENV{SLIM_SERVICE} ) { Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/ShoutcastBrowser/install.xml =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/ShoutcastBrowser/install.xml (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/ShoutcastBrowser/install.xml (working copy) @@ -13,6 +13,7 @@ enabled http://www.slimdevices.com/ + html/images/ServiceProviders/shoutcast.png 2 Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/ShoutcastBrowser/Plugin.pm =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/ShoutcastBrowser/Plugin.pm (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/ShoutcastBrowser/Plugin.pm (working copy) @@ -81,7 +81,7 @@ if (defined $menu) { $data = { 'text' => string(getDisplayName()), # nice name - 'icon-id' => 'html/images/ServiceProviders/shoutcastbrowser.png', + 'icon-id' => Slim::Plugin::ShoutcastBrowser::Plugin->_pluginDataFor('pageicon'), 'actions' => { 'go' => { 'cmd' => ['shoutcast', 'items'], Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Slacker/install.xml =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Slacker/install.xml (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Slacker/install.xml (working copy) @@ -10,6 +10,7 @@ support@slimdevices.com enabled http://www.slimdevices.com/ + html/images/ServiceProviders/slacker.png 2 SlimServer Index: /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Slacker/Plugin.pm =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Slacker/Plugin.pm (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Plugin/Slacker/Plugin.pm (working copy) @@ -38,7 +38,6 @@ feed => Slim::Networking::SqueezeNetwork->url('/api/slacker/v1/opml'), tag => 'slacker', menu => 'music_services', - 'icon-id' => 'html/images/ServiceProviders/slacker.png', ); if ( !$ENV{SLIM_SERVICE} ) { Index: /Users/mh/Documents/workspace/Teststoff/Slim/Utils/PluginManager.pm =================================================================== --- /Users/mh/Documents/workspace/Teststoff/Slim/Utils/PluginManager.pm (revision 15352) +++ /Users/mh/Documents/workspace/Teststoff/Slim/Utils/PluginManager.pm (working copy) @@ -283,6 +283,13 @@ return ($pluginName, $installManifest); } + + if ($installManifest->{'icon-id'}) { + + Slim::Web::Pages->addPageLinks("icons", { $pluginName => $installManifest->{'icon-id'} }); + + } + $installManifest->{'error'} = INSTALLERROR_SUCCESS; if ($installManifest->{'defaultState'} && !defined $prefs->get($pluginName)) {