function updateRack() { assertUIntArg('row_id'); assertStringArg('name'); assertUIntArg('height'); assertStringArg('asset_no', TRUE); assertStringArg('comment', TRUE); $taglist = genericAssertion('taglist', 'array0'); $rack_id = getBypassValue(); usePreparedDeleteBlade('RackThumbnail', array('rack_id' => $rack_id)); commitUpdateRack($rack_id, $_REQUEST['row_id'], $_REQUEST['name'], $_REQUEST['height'], isCheckSet('has_problems', 'yesno'), $_REQUEST['asset_no'], $_REQUEST['comment']); updateObjectAttributes($rack_id); rebuildTagChainForEntity('rack', $rack_id, buildTagChainFromIds($taglist), TRUE); showFuncMessage(__FUNCTION__, 'OK', array($_REQUEST['name'])); }
function updateRack() { assertUIntArg('row_id'); assertStringArg('name'); assertUIntArg('height'); assertStringArg('asset_no', TRUE); assertStringArg('comment', TRUE); $taglist = genericAssertion('taglist', 'array0'); $rack_id = getBypassValue(); ############################################################################################### # update zabbix group $rack = spotEntity("rack", $rack_id); if ($rack['name'] != $_REQUEST['name']) { $result = updateGroup($rack["name"], $_REQUEST["name"]); if (isset($result["error"])) { showError("Updating zabbix group is failed. Error message:" . $result["error"]); return; } } # update table rack_airconditioner if ($rack['row_id'] != $_REQUEST['row_id']) { usePreparedUpdateBlade('rack_airconditioner', array('row_id' => $_REQUEST['row_id']), array('rack_id' => $rack_id)); } # END ############################################################################################### usePreparedDeleteBlade('RackThumbnail', array('rack_id' => $rack_id)); commitUpdateRack($rack_id, $_REQUEST['row_id'], $_REQUEST['name'], $_REQUEST['height'], isCheckSet('has_problems', 'yesno'), $_REQUEST['asset_no'], $_REQUEST['comment']); updateObjectAttributes($rack_id); rebuildTagChainForEntity('rack', $rack_id, buildTagChainFromIds($taglist), TRUE); showFuncMessage(__FUNCTION__, 'OK', array($_REQUEST['name'])); }
function updateRack() { assertUIntArg('row_id'); assertStringArg('name'); assertUIntArg('height'); assertStringArg('asset_no', TRUE); assertStringArg('comment', TRUE); $rack_id = getBypassValue(); usePreparedDeleteBlade('RackThumbnail', array('rack_id' => $rack_id)); commitUpdateRack($rack_id, $_REQUEST['row_id'], $_REQUEST['name'], $_REQUEST['height'], isCheckSet('has_problems', 'yesno'), $_REQUEST['asset_no'], $_REQUEST['comment']); updateObjectAttributes($rack_id); return showFuncMessage(__FUNCTION__, 'OK', array($_REQUEST['name'])); }
function updateRack() { assertUIntArg('row_id'); assertStringArg('name'); assertUIntArg('height'); assertStringArg('asset_no', TRUE); assertStringArg('comment', TRUE); $rack_id = getBypassValue(); usePreparedDeleteBlade('RackThumbnail', array('rack_id' => $rack_id)); commitUpdateRack($rack_id, $_REQUEST['row_id'], $_REQUEST['name'], $_REQUEST['height'], isCheckSet('has_problems', 'yesno'), $_REQUEST['asset_no'], $_REQUEST['comment']); // Update optional attributes $oldvalues = getAttrValues($rack_id); $num_attrs = isset($_REQUEST['num_attrs']) ? $_REQUEST['num_attrs'] : 0; for ($i = 0; $i < $num_attrs; $i++) { assertUIntArg("{$i}_attr_id"); $attr_id = $_REQUEST["{$i}_attr_id"]; // Skip the 'height' attribute as it's already handled by commitUpdateRack // Also skip 'sort_order' if ($attr_id == 27 or $attr_id == 29) { continue; } // Field is empty, delete attribute and move on. OR if the field type is a dictionary and it is the --NOT SET-- value of 0 if (!strlen($_REQUEST["{$i}_value"]) || $oldvalues[$attr_id]['type'] == 'dict' && $_REQUEST["{$i}_value"] == 0) { commitUpdateAttrValue($rack_id, $attr_id); continue; } // The value could be uint/float, but we don't know ATM. Let SQL // server check this and complain. assertStringArg("{$i}_value"); $value = $_REQUEST["{$i}_value"]; switch ($oldvalues[$attr_id]['type']) { case 'uint': case 'float': case 'string': $oldvalue = $oldvalues[$attr_id]['value']; break; case 'dict': $oldvalue = $oldvalues[$attr_id]['key']; break; default: } if ($value === $oldvalue) { // ('' == 0), but ('' !== 0) continue; } commitUpdateAttrValue($rack_id, $attr_id, $value); } return showFuncMessage(__FUNCTION__, 'OK', array($_REQUEST['name'])); }
commitLinkEntities('row', $_REQUEST['row_id'], 'rack', $rack_id); echo json_encode(array("result" => $rack_id)); return; // api.php?method=update_rack&oldname=test1&newname=test2 // api.php?method=update_rack&oldname=test1&newname=test2 case "update_rack": require_once 'inc/init.php'; $id = getEntityIdByName("rack", $_REQUEST["oldname"]); if ($id < 0) { echo json_encode(array("error" => "In racktables the rack " . $_REQUEST["oldname"] . "is not existed.")); return; } $rack = spotEntity("rack", $id); $taglist = genericAssertion("taglist", "array0"); #usePreparedDeleteBlade ("RackThumbnail", array ("rack_id" => $rack["id"])); commitUpdateRack($rack["id"], $rack["row_id"], $_REQUEST["newname"], $rack["height"], $rack["has_problem"], $rack["asset_no"], $rack["comment"]); #updateObjectAttributes ($rack["id"]); #rebuildTagChainForEntity ("rack", $rack["id"], buildTagChainFromIds ($taglist), TRUE); echo json_encode(array("result" => $rack["id"])); return; // api.php?method=delete_rack&name[]=test1 // api.php?method=delete_rack&name[]=test1 case "delete_rack": require_once 'inc/init.php'; $id = getEntityIdByName("rack", $_REQUEST["name"]); if ($id < 0) { echo json_encode(array("error" => "In racktables the rack " . $_REQUEST["name"] . "is not existed.")); return; } $rack = spotEntity("rack", $id); amplifyCell($rack);