banshee r3255 - in trunk/banshee: . src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio



Author: gburt
Date: Sun Feb 17 03:30:51 2008
New Revision: 3255
URL: http://svn.gnome.org/viewvc/banshee?rev=3255&view=rev

Log:
2008-02-16  Gabriel Burt  <gabriel burt gmail com>

	* src/Extensions/Banshee.Lastfm/*: Grr, overwrote Aaron's last fixes with
	my svn mv, since I'd initiated it locally before svn up'ing his changes.


Modified:
   trunk/banshee/ChangeLog
   trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/LastfmActions.cs
   trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/LastfmSource.cs
   trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/StationSource.cs

Modified: trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/LastfmActions.cs
==============================================================================
--- trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/LastfmActions.cs	(original)
+++ trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/LastfmActions.cs	Sun Feb 17 03:30:51 2008
@@ -232,7 +232,7 @@
         {
             AccountLoginDialog dialog = new AccountLoginDialog (lastfm.Account, true);
             dialog.SaveOnEdit = true;
-            if (lastfm.Account.Username == null) {
+            if (lastfm.Account.UserName == null) {
                 dialog.AddSignUpButton ();
             }
             dialog.Run ();
@@ -255,7 +255,7 @@
                 updating = true;
             }
 
-            bool have_user = (lastfm.Account.Username != null);
+            bool have_user = (lastfm.Account.UserName != null);
             this["LastfmAddAction"].Sensitive = have_user;
             this["LastfmSortAction"].Sensitive = have_user;
             this["LastfmConnectAction"].Visible = lastfm.Connection.State == ConnectionState.Disconnected;

Modified: trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/LastfmSource.cs
==============================================================================
--- trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/LastfmSource.cs	(original)
+++ trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/LastfmSource.cs	Sun Feb 17 03:30:51 2008
@@ -50,8 +50,8 @@
     {
         private const string lastfm = "Last.fm";
 
-        private Connection connection;
-        public Connection Connection {
+        private RadioConnection connection;
+        public RadioConnection Connection {
             get { return connection; }
         }
 
@@ -68,9 +68,10 @@
 
             // We don't automatically connect to Last.fm, but load the last Last.fm
             // username we used so we can load the user's stations.
-            account.Username = LastUserSchema.Get ();
+            account.UserName = LastUserSchema.Get ();
+            account.CryptedPassword = LastPassSchema.Get ();
 
-            connection = new Connection (account, Banshee.Web.Browser.UserAgent);
+            connection = new RadioConnection (account, Banshee.Web.Browser.UserAgent);
             connection.UpdateNetworkState (NetworkDetect.Instance.Connected);
             NetworkDetect.Instance.StateChanged += delegate (object o, NetworkStateChangedArgs args) {
                 connection.UpdateNetworkState (args.Connected);
@@ -91,6 +92,11 @@
         public void Initialize ()
         {
             Connection.StateChanged += HandleConnectionStateChanged;
+            
+            if (Account.UserName != null && Account.CryptedPassword != null) {
+                Connection.Connect ();
+            }
+            
             UpdateUI ();
         }
 
@@ -196,14 +202,14 @@
         }
 
         private string last_username;
-        public void SetUsername (string username)
+        public void SetUserName (string username)
         {
             if (username != last_username) {
                 last_username = username;
                 LastfmSource.LastUserSchema.Set (last_username);
                 ClearChildSources ();
                 sorting = true;
-                foreach (StationSource child in StationSource.LoadAll (this, Account.Username)) {
+                foreach (StationSource child in StationSource.LoadAll (this, Account.UserName)) {
                     if (!child.Type.SubscribersOnly || Connection.Subscriber) {
                         AddChildSource (child);
                         //SourceManager.AddSource (child);
@@ -256,10 +262,15 @@
 
         private void UpdateUI ()
         {
-            bool have_user = (Account.Username != null);
-
+            bool have_user = Account.UserName != null;
+            bool have_pass = Account.CryptedPassword != null;
+            
+            if (have_pass) {
+                LastPassSchema.Set (Account.CryptedPassword);
+            }
+            
             if (have_user) {
-                SetUsername (Account.Username);
+                SetUserName (Account.UserName);
             } else {
                 ClearChildSources ();
             }
@@ -280,6 +291,10 @@
             "plugins.lastfm", "username", "", "Last.fm user", "Last.fm username"
         );
 
+        public static readonly SchemaEntry<string> LastPassSchema = new SchemaEntry<string> (
+            "plugins.lastfm", "password_hash", "", "Last.fm password", "Last.fm password (hashed)"
+        );
+
         public static readonly SchemaEntry<bool> ExpandedSchema = new SchemaEntry<bool> (
             "plugins.lastfm", "expanded", false, "Last.fm expanded", "Last.fm expanded"
         );

Modified: trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/StationSource.cs
==============================================================================
--- trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/StationSource.cs	(original)
+++ trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/StationSource.cs	Sun Feb 17 03:30:51 2008
@@ -163,7 +163,7 @@
             HyenaSqliteCommand command = new HyenaSqliteCommand (
                 @"INSERT INTO LastfmStations (Creator, Name, Type, Arg, PlayCount)
                     VALUES (?, ?, ?, ?, ?)",
-                lastfm.Account.Username, Name, 
+                lastfm.Account.UserName, Name, 
                 Type.ToString (), Arg, PlayCount
             );
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]