+ plc_redirect(l_slice($slice_id) . "&show_persons=true" );
+ break;
+ }
+
+ case 'remove-nodes-from-slice': {
+ $slice_id = intval ($_POST['slice_id']);
+ $node_ids = array_map("intval",$_POST['node_ids']);
+ $count=count($node_ids);
+
+ if ($api->DeleteSliceFromNodes($slice_id,$node_ids) == 1)
+ drupal_set_message ("Removed $count node(s)");
+ else
+ drupal_set_error ("Could not remove selected nodes");
+ plc_redirect(l_slice_nodes($slice_id));
+ break;
+ }
+
+ case 'add-nodes-in-slice': {
+ $slice_id = intval ($_POST['slice_id']);
+ $node_ids = array_map("intval",$_POST['node_ids']);
+ $count=count($node_ids);
+ if ($api->AddSliceToNodes($slice_id,$node_ids) == 1)
+ drupal_set_message ("Added $count node(s)");
+ else
+ drupal_set_error ("Could not add all selected nodes");
+ plc_redirect(l_slice_nodes($slice_id));
+ break;
+ }
+
+ case 'delete-slice-tags': {
+ $slice_id = intval($_POST['slice_id']);
+ $slice_tag_ids = array_map("intval", $_POST['slice_tag_ids']);
+ $count = 0;
+ $success = true;
+ foreach($slice_tag_ids as $slice_tag_id) {
+ if ($api->DeleteSliceTag($slice_tag_id)) $count += 1;
+ else {
+ drupal_set_error("Could not delete slice tag: slice_tag_id = $slice_tag_id");
+ $success = false;
+ }
+ }
+ if ($success)
+ drupal_set_message ("Deleted $count slice tag(s)");
+ plc_redirect(l_slice($slice_id) . "&show_tags=true" );
+ break;
+ }
+
+ case 'add-slice-tag': {
+ $slice_id = intval($_POST['slice_id']);
+ $tag_type_id = intval($_POST['tag_type_id']);
+ $value = $_POST['value'];
+ $node_id = intval($_POST['node_id']);
+ $nodegroup_id = intval($_POST['nodegroup_id']);
+
+ $result = null;
+ if ($node_id) {
+ $result = $api->AddSliceTag($slice_id, $tag_type_id, $value, $node_id);
+ } elseif ($nodegroup_id) {
+ $result = $api->AddSliceTag($slice_id, $tag_type_id, $value, null, $nodegroup_id);
+ } else {
+ $result = $api->AddSliceTag($slice_id, $tag_type_id, $value);
+ }
+ if ($result)
+ drupal_set_message ("Added slice tag.");
+ else
+ drupal_set_error("Could not add slice tag");
+ if ($_POST['sliver_action'])
+ plc_redirect(l_sliver($node_id,$slice_id));
+ else
+ plc_redirect(l_slice($slice_id) . "&show_tags=true" );