[extensions-web] js: Fix extension installation



commit 492117fdf32db57f882f79360b62e6e2127c28ea
Author: Jasper St. Pierre <jstpierre mecheye net>
Date:   Sun Apr 1 09:56:15 2012 -0400

    js: Fix extension installation
    
    meta doesn't exist if the extension is uninstalled... d'oh!

 sweettooth/static/js/extensions.js |   13 ++++++++-----
 1 files changed, 8 insertions(+), 5 deletions(-)
---
diff --git a/sweettooth/static/js/extensions.js b/sweettooth/static/js/extensions.js
index 87e6508..5a47e46 100644
--- a/sweettooth/static/js/extensions.js
+++ b/sweettooth/static/js/extensions.js
@@ -90,10 +90,13 @@ function($, messages, dbusProxy, extensionUtils, templates) {
         });
     };
 
-    function addExtensionSwitch(extension, $elem) {
-        var uuid = extension.uuid;
+    function addExtensionSwitch(uuid, $elem, meta) {
         var $switch = $elem.find('.switch');
-        var _state = extension.state !== undefined ? extension.state : ExtensionState.UNINSTALLED;
+        var _state;
+        if (meta && meta.state)
+            _state = meta.state;
+        else
+            _state = ExtensionState.UNINSTALLED;
 
         $elem.data({'elem': $elem,
                     'state': _state,
@@ -223,7 +226,7 @@ function($, messages, dbusProxy, extensionUtils, templates) {
                             if (extension.state === ExtensionState.OUT_OF_DATE)
                                 $elem.addClass('out-of-date');
 
-                            addExtensionSwitch(extension, $elem);
+                            addExtensionSwitch(uuid, $elem, extension);
                         }
 
                         $.ajax({
@@ -287,7 +290,7 @@ function($, messages, dbusProxy, extensionUtils, templates) {
             });
 
             dbusProxy.GetExtensionInfo(uuid).done(function(meta) {
-                addExtensionSwitch(meta, $extension);
+                addExtensionSwitch(uuid, $extension, meta);
             });
         });
     };



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