function api_data_source_path_get($data_source_id, $expand_paths) { require_once(CACTI_BASE_PATH . "/lib/sys/variable.php"); require_once(CACTI_BASE_PATH . "/lib/data_source/data_source_update.php"); $current_path = db_fetch_cell("select rrd_path from data_source where id = $data_source_id"); /* generate a new path if needed */ if ($current_path == "") { $current_path = api_data_source_path_get_update($data_source_id); } if ($expand_paths == true) { return substitute_path_variables($current_path); }else{ return $current_path; } }
function api_data_source_item_save($data_source_item_id, &$_fields_data_source_item) { require_once(CACTI_BASE_PATH . "/lib/data_source/data_source_info.php"); /* sanity checks */ validate_id_die($data_source_item_id, "data_source_item_id", true); /* sanity check for $data_source_id */ if ((empty($data_source_item_id)) && (empty($_fields_data_source_item["data_source_id"]))) { log_save("Required data_source_id when data_source_item_id = 0", SEV_ERROR); return false; } else if ((isset($_fields_data_source_item["data_source_id"])) && (!is_numeric($_fields_data_source_item["data_source_id"]))) { return false; } /* field: id */ $_fields["id"] = array("type" => DB_TYPE_INTEGER, "value" => $data_source_item_id); /* field: data_source_id */ if (!empty($_fields_data_source_item["data_source_id"])) { $_fields["data_source_id"] = array("type" => DB_TYPE_INTEGER, "value" => $_fields_data_source_item["data_source_id"]); } /* field: data_template_item_id */ if (!empty($_fields_data_source_item["data_template_item_id"])) { $_fields["data_template_item_id"] = array("type" => DB_TYPE_INTEGER, "value" => $_fields_data_source_item["data_template_item_id"]); } /* field: field_input_value */ if (isset($_fields_data_source_item["field_input_value"])) { $_fields["field_input_value"] = array("type" => DB_TYPE_STRING, "value" => $_fields_data_source_item["field_input_value"]); } /* convert the input array into something that is compatible with db_replace() */ $_fields += sql_get_database_field_array($_fields_data_source_item, api_data_source_item_form_list()); /* check for an empty field list */ if (sizeof($_fields) == 1) { return true; } if (db_replace("data_source_item", $_fields, array("id"))) { if (!empty($_fields_data_source_item["data_source_id"])) { /* since the data source path is based in part on the data source item name, it makes sense * to update it here */ api_data_source_path_get_update($_fields_data_source_item["data_source_id"]); } return true; }else{ return false; } }