/**
  * @param $bug_id
  * @param $version_date
  * @return string
  */
 public function get_bug_summary($bug_id, $version_date)
 {
     $specmanagement_database_api = new specmanagement_database_api();
     $int_filter_string = 'summary';
     $summary_value = $specmanagement_database_api->calculate_last_change($bug_id, $version_date, $int_filter_string);
     if (strlen($summary_value) == 0) {
         $summary_value = bug_get_field($bug_id, 'summary');
         return $summary_value;
     }
     return $summary_value;
 }
/**
 * @param $version
 * @param $reachable_issue_ids
 * @return mixed
 */
function calculate_relevant_issues($version, $reachable_issue_ids)
{
    $specmanagement_database_api = new specmanagement_database_api();
    $version_date = $version->date_order;
    $int_filter_string = 'target_version';
    /* Prüfen ob Bug zum gegebenen Zeitpunkt dieser Zielversion zugeordnet war */
    foreach ($reachable_issue_ids as $reachable_issue_id) {
        $target_version = $specmanagement_database_api->calculate_last_change($reachable_issue_id, $version_date, $int_filter_string);
        if ($target_version != $version->version) {
            if (($key = array_search($reachable_issue_id, $reachable_issue_ids)) !== false) {
                unset($reachable_issue_ids[$key]);
            }
        }
    }
    return $reachable_issue_ids;
}