fixed removing pending_in slots
authorJordan Augé <jordan.auge@lip6.fr>
Fri, 11 Jul 2014 13:09:56 +0000 (15:09 +0200)
committerJordan Augé <jordan.auge@lip6.fr>
Fri, 11 Jul 2014 13:09:56 +0000 (15:09 +0200)
manifoldapi/static/js/manifold.js
plugins/scheduler2/static/js/scheduler2.js

index 57a6c39..b959c10 100644 (file)
@@ -351,6 +351,12 @@ function QueryStore() {
         return query_ext.records.remove(record_key);
     }
 
+    this.del_state = function(query_uuid, record_key)
+    {
+        var query_ext = this.find_analyzed_query_ext(query_uuid);
+        return query_ext.state.remove(record_key);
+    }
+
     this.add_record = function(query_uuid, record, new_state)
     {
         var query_ext, key, record_key;
@@ -386,6 +392,7 @@ function QueryStore() {
             // Leases that are marked out are in fact leases from other slices
             // We need to _remove_ leases that we mark as OUT
             manifold.query_store.del_record(query_uuid, record_key);
+            manifold.query_store.del_state(query_uuid, record_key);
         } else {
             manifold.query_store.set_record_state(query_uuid, record_key, STATE_SET, new_state);
         }
index 102c456..862b8a7 100755 (executable)
@@ -313,7 +313,7 @@ var SCHEDULER_COLWIDTH = 50;
                     }\r
         \r
                     $scope._create_new_lease(model_resource.urn, start_time, end_time);\r
-                    model_lease.status = 'pendingin'; \r
+                    model_lease.status = (model_lease.status == 'free') ? 'pendingin' : 'in';\r
                     // unless the exact same lease already existed (pending_out status for the lease, not the cell !!)\r
 \r
                     break;\r
@@ -351,7 +351,7 @@ var SCHEDULER_COLWIDTH = 50;
                     }\r
                 \r
                     // cf comment in previous switch case\r
-                    model_lease.status = 'pendingout'; \r
+                    model_lease.status = (model_lease.status == 'selected') ? 'pendingout' : 'free';\r
 \r
                     break;\r
 \r
@@ -735,7 +735,11 @@ var SCHEDULER_COLWIDTH = 50;
                             lease_success = '';\r
                             break;\r
                         case STATE_SET_OUT_PENDING:\r
-                            lease_class = 'pendingout';\r
+                            // pending_in & pending_out == IN == replacement\r
+                            if (resource.leases[i].status == 'pendingin')\r
+                                lease_class = 'pendingin'\r
+                            else\r
+                                lease_class = 'pendingout';\r
                             lease_success = '';\r
                             break;\r
                     \r