From: Thierry Parmentelat Date: Sun, 29 Aug 2010 19:52:56 +0000 (+0200) Subject: reservations now effective X-Git-Tag: plewww-4.3-48~8 X-Git-Url: http://git.onelab.eu/?p=plewww.git;a=commitdiff_plain;h=25d592663f87afd3082f21bea43ba261c5e54180 reservations now effective --- diff --git a/planetlab/common/actions.php b/planetlab/common/actions.php index 5f3994d..50f6d81 100644 --- a/planetlab/common/actions.php +++ b/planetlab/common/actions.php @@ -953,34 +953,45 @@ Our support team will be glad to answer any question that you might have. //////////////////////////////////////// leases case 'manage-leases': { $actions=json_decode($_POST['actions']); + $add_requested=0; + $add_done=0; + $del_requested=0; + $del_done=0; + $errors=array(); foreach ($actions as $action) { - $todo=$action[0]; - switch ($todo) { - case 'add-leases': { - plc_debug('(add) action',$action); - break; - } - case 'delete-leases': { - plc_debug('(delete) action',$action); - break; - } - default: { - plc_debug('wrong entry',$action); - } + if ($action[0] == 'add-leases') { + $nodenames=$action[1]; + $add_requested += count($nodenames); + $slicename=$action[2]; + $t_from=intval($action[3]); + $t_until=intval($action[4]); + $hash = $api->AddLeases($nodenames,$slicename,$t_from,$t_until); + // update number of added leases + $ids=$hash['new_ids']; + $add_done += count($ids); + // update global errors array + foreach ($api_errors=$hash['errors'] as $error) $errors[]=$error; + } else if ($action[0]=='delete-leases') { + $lease_id=intval($action[1]); + $del_requested += 1; + if ($api->DeleteLeases(array($lease_id)) == 1) { + $del_done += 1; + } else { + $errors []= "Could not delete lease " . $lease_id; + } + } else { + $errors []= "in actions.php, manage-leases, wrong action ". $action[0]; } } - /* - plc_debug('POST',$_POST); - $slicename=$_POST['slicename']; - $nodenames=$_POST['nodenames']; - $t_from=intval($_POST['t_from']); - $t_until=intval($_POST['t_until']); - foreach ($nodenames as $nodename) plc_debug('nodename',$nodename); - $json=json_decode($_POST['nodenames_json']); - plc_debug('json_decode',$json); - $api->AddLeases(); - */ + if (count($errors)==0) { + echo("All leases updated (" . $add_done . " added and " . $del_done . " deleted)"); + } else { + foreach ($errors as $error) echo($error. "\n"); + echo("Leases updated only partially (" . + $add_done . "/" . $add_requested . " added and " . + $del_done . "/" . $del_requested . " deleted)"); + } break; } diff --git a/planetlab/slices/leases.js b/planetlab/slices/leases.js index 439ec0e..0b45806 100644 --- a/planetlab/slices/leases.js +++ b/planetlab/slices/leases.js @@ -1,7 +1,7 @@ /* need to put some place else in CSS ? */ // space for the nodenames -var x_nodelabel = 120; +var x_nodelabel = 200; // right space after the nodename - removed from the above var x_sep=20; // height for the (two) rows of timelabels @@ -174,7 +174,7 @@ function Scheduler (sliceid, slicename, axisx, axisy, data) { /* scan the leases just after this one and merge if appropriate */ var j=i+1; while (j