function remarks_db2xml($langdata_path, $lab_config_id) { # Creates XML file from existing test measures (indicators) in catalog global $VERSION; $new_version = $VERSION; $handle = fopen($langdata_path . "remarks.xml", "w"); $string_data = <<<EOF <?xml version="1.0"?> <measures version="{$new_version}"> EOF; fwrite($handle, $string_data); $saved_db = DbUtil::switchToLabConfigRevamp($lab_config_id); $query_string = "SELECT * FROM measure"; $resultset = query_associative_all($query_string, $row_count); foreach ($resultset as $record) { $curr_measure = Measure::getObject($record); $id = $curr_measure->measureId; $descr = $curr_measure->name; $string_data = <<<EOF \t<measure id="{$id}" descr="{$descr}"> EOF; fwrite($handle, $string_data); $range_type = $curr_measure->getRangeType(); $range_values = $curr_measure->getRangeValues(); if ($range_type == Measure::$RANGE_NUMERIC) { $lower_bound = htmlspecialchars($range_values[0]); $upper_bound = htmlspecialchars($range_values[1]); $string_data = <<<EOF \t\t<range> \t\t\t<key>{$range_values['0']}:{$range_values['1']}</key> \t\t\t<value></value> \t\t</range> EOF; fwrite($handle, $string_data); } else { if ($range_type == Measure::$RANGE_OPTIONS) { foreach ($range_values as $range_value) { $range_value_xml = htmlspecialchars($range_value); $string_data = <<<EOF \t\t<range> \t\t\t<key>{$range_value_xml}</key> \t\t\t<value></value> \t\t</range> EOF; fwrite($handle, $string_data); } } } $string_data = <<<EOF \t</measure> EOF; fwrite($handle, $string_data); } $string_data = <<<EOF </measures> EOF; fwrite($handle, $string_data); fclose($handle); DbUtil::switchRestore($saved_db); }
public static function getById($measure_id) { # Returns a test measure by ID global $con; $measure_id = mysql_real_escape_string($measure_id, $con); if ($measure_id == null || $measure_id < 0) { return null; } $query_string = "SELECT * FROM measure WHERE measure_id={$measure_id} LIMIT 1"; $saved_db = DbUtil::switchToLabConfigRevamp(); $record = query_associative_one($query_string); DbUtil::switchRestore($saved_db); return Measure::getObject($record); }
query_delete($query_string); # Remove entries from test_type_measure $query_string = "DELETE FROM test_type_measure WHERE test_type_id={$test_type_id}"; query_delete($query_string); # Remove entries from specimen_test $query_string = "DELETE FROM specimen_test WHERE test_type_id={$test_type_id}"; query_delete($query_string); # Remove entry from test_type $query_string = "DELETE FROM test_type WHERE test_type_id={$test_type_id}"; query_delete($query_string); } $query_string = "SELECT * FROM measure"; $resultset = query_associative_all($query_string, $row_count); $measure_list = array(); foreach ($resultset as $record) { $measure_list[] = Measure::getObject($record); } # For each measure: foreach ($measure_list as $measure) { $measure_id = $measure->measureId; # Remove entries from test_type_measure $query_string = "DELETE FROM test_type_measure WHERE measure_id={$measure_id}"; query_delete($query_string); # Remove entry from measure $query_string = "DELETE FROM measure WHERE measure_id={$measure_id}"; query_delete($query_string); } $query_string = "SELECT * FROM specimen_type"; $resultset = query_associative_all($query_string, $row_count); $specimen_list = array(); foreach ($resultset as $record) {