[Slim-Checkins] r8761 - in /trunk/server: Plugins/Favorites/HTML/EN/plugins/Favorites/favorites_list.html Slim/Utils/Favorites.pm Slim/Utils/Prefs.pm

andy at svn.slimdevices.com andy at svn.slimdevices.com
Tue Aug 1 15:34:36 PDT 2006


Author: andy
Date: Tue Aug  1 15:34:35 2006
New Revision: 8761

URL: http://svn.slimdevices.com?rev=8761&view=rev
Log:
Fixed deleting of Favorites

Modified:
    trunk/server/Plugins/Favorites/HTML/EN/plugins/Favorites/favorites_list.html
    trunk/server/Slim/Utils/Favorites.pm
    trunk/server/Slim/Utils/Prefs.pm

Modified: trunk/server/Plugins/Favorites/HTML/EN/plugins/Favorites/favorites_list.html
URL: http://svn.slimdevices.com/trunk/server/Plugins/Favorites/HTML/EN/plugins/Favorites/favorites_list.html?rev=8761&r1=8760&r2=8761&view=diff
==============================================================================
--- trunk/server/Plugins/Favorites/HTML/EN/plugins/Favorites/favorites_list.html (original)
+++ trunk/server/Plugins/Favorites/HTML/EN/plugins/Favorites/favorites_list.html Tue Aug  1 15:34:35 2006
@@ -30,7 +30,7 @@
 		[% END %]
 	
 		[% WRAPPER contentitem controls = 'favcontrols' %]
-			 <a href="favorites_list.html?p0=[% fav | uri %]&amp;player=[% player | uri %]">[% loop.count _ '. ' _ text %]</a>
+			 [% loop.count _ '. ' _ text %]
 		[% END %]
 		[% odd = (not odd) %]
 	[% END %]

Modified: trunk/server/Slim/Utils/Favorites.pm
URL: http://svn.slimdevices.com/trunk/server/Slim/Utils/Favorites.pm?rev=8761&r1=8760&r2=8761&view=diff
==============================================================================
--- trunk/server/Slim/Utils/Favorites.pm (original)
+++ trunk/server/Slim/Utils/Favorites.pm Tue Aug  1 15:34:35 2006
@@ -139,8 +139,8 @@
 		$to = $from + $to;
 	}
 
-	my @titles = Slim::Utils::Prefs::getArray('favorite_titles');
-	my @urls   = Slim::Utils::Prefs::getArray('favorite_urls');
+	my @titles = titles();
+	my @urls   = urls();
 
 	if (defined $from && defined $to && 
 		$from < scalar @titles && 
@@ -167,9 +167,15 @@
 	my $i      = shift;
 
 	if (defined($i)) {
-
-		Slim::Utils::Prefs::set('favorite_titles','', $i);
-		Slim::Utils::Prefs::set('favorite_urls','', $i);
+		
+		my @titles = titles();
+		my @urls   = urls();
+		
+		splice @titles, $i, 1;
+		splice @urls,   $i, 1;
+		
+		Slim::Utils::Prefs::setArray( 'favorite_titles', \@titles );
+		Slim::Utils::Prefs::setArray( 'favorite_urls', \@urls );
 		
 		$::d_favorites && msg("Favorites: deleting favorite number " . ($i+1) . "\n");
 	}
@@ -189,15 +195,11 @@
 
 # returns an array of titles
 sub titles {
-	ref(my $self = shift) or assert(0, __PACKAGE__."::titles is an instance-only method\n");
-
 	return Slim::Utils::Prefs::getArray('favorite_titles');
 }
 
 # returns an array of urls
 sub urls {
-	ref(my $self = shift) or assert(0, __PACKAGE__."::urls is an instance-only method\n");
-
 	return Slim::Utils::Prefs::getArray('favorite_urls');
 }
 

Modified: trunk/server/Slim/Utils/Prefs.pm
URL: http://svn.slimdevices.com/trunk/server/Slim/Utils/Prefs.pm?rev=8761&r1=8760&r2=8761&view=diff
==============================================================================
--- trunk/server/Slim/Utils/Prefs.pm (original)
+++ trunk/server/Slim/Utils/Prefs.pm Tue Aug  1 15:34:35 2006
@@ -826,6 +826,27 @@
 	$client->pref([$key,$ind], $value);
 }
 
+sub setArray {
+	my $key   = shift;
+	my $value = shift;
+	
+	my $prefs = \%prefs;
+	
+	my $oldvalue = $prefs->{$key};
+	
+	$prefs->{$key} = $value;
+	
+	onChange($key, $value);
+	
+	$::d_prefs && msgf("Prefs: %s => %s\n",
+		$key,
+		Data::Dump::dump($value),
+	);
+	
+	scheduleWrite() unless $writePending;
+	return $oldvalue;
+}
+
 sub maxRate {
 	my $client   = shift || return 0;
 	my $soloRate = shift;



More information about the checkins mailing list