plugins: updated js framework + googlemaps and hazelnut to better handle sets and...
[myslice.git] / manifold / js / manifold.js
index b99b648..b2df24b 100644 (file)
@@ -465,7 +465,7 @@ var manifold = {
     {
         // We don't prepare an update query if the result has more than 1 entry
         if (records.length != 1)
-            continue;
+            return;
         var query_ext = manifold.query_store.find_query_ext(query.query_uuid);
 
         var record = records[0];
@@ -818,6 +818,21 @@ var manifold = {
                 manifold.raise_record_event(query_uuid, event_type, value);
 
                 // b) subqueries eventually (dot in the key)
+                // Let's unfold 
+                var path_array = value.key.split('.');
+                var value_key = value.key.split('.');
+
+                var cur_query = query;
+                if (cur_query.analyzed_query)
+                    cur_query = cur_query.analyzed_query;
+                $.each(path_array, function(i, method) {
+                    cur_query = cur_query.subqueries[method];
+                    value_key.shift(); // XXX check that method is indeed shifted
+                });
+                value.key = value_key;
+
+                manifold.raise_record_event(cur_query.query_uuid, event_type, value);
+
                 // XXX make this DOT a global variable... could be '/'
                 break;