';
echo '';
echo '';
echo '';
echo '';
echo lang_get( 'updating_bug_advanced_title' );
echo ' | ';
print_bracket_link( string_get_bug_view_url( $tpl_bug_id ), lang_get( 'back_to_bug_link' ) );
echo ' |
';
# Submit Button
if ( $tpl_top_buttons_enabled ) {
echo '';
echo '';
echo ' |
';
}
event_signal( 'EVENT_UPDATE_BUG_FORM_TOP', array( $tpl_bug_id, true ) );
if ( $tpl_show_id || $tpl_show_project || $tpl_show_category || $tpl_show_view_state || $tpl_show_date_submitted | $tpl_show_last_updated ) {
#
# Titles for Bug Id, Project Name, Category, View State, Date Submitted, Last Updated
#
echo '';
echo '', $tpl_show_id ? lang_get( 'id' ) : '', ' | ';
echo '', $tpl_show_project ? lang_get( 'email_project' ) : '', ' | ';
echo '', $tpl_show_category ? lang_get( 'category' ) : '', ' | ';
echo '', $tpl_show_view_state ? lang_get( 'view_status' ) : '', ' | ';
echo '', $tpl_show_date_submitted ? lang_get( 'date_submitted' ) : '', ' | ';
echo '', $tpl_show_last_updated ? lang_get( 'last_update' ) : '', ' | ';
echo '
';
#
# Values for Bug Id, Project Name, Category, View State, Date Submitted, Last Updated
#
echo '';
# Bug ID
echo '', $tpl_formatted_bug_id, ' | ';
# Project Name
echo '', $tpl_project_name, ' | ';
# Category
echo '';
if ( $tpl_show_category ) {
echo '';
}
echo ' | ';
# View State
echo '';
if ( $tpl_can_change_view_state ) {
echo '';
} else if ( $tpl_show_view_state ) {
echo $tpl_view_state;
}
echo ' | ';
# Date Submitted
echo '', $tpl_show_date_submitted ? date( config_get( 'normal_date_format' ), $tpl_bug->date_submitted ) : '', ' | ';
# Date Updated
echo '', $tpl_show_last_updated ? date( config_get( 'normal_date_format' ), $tpl_bug->last_updated ) : '', ' | ';
echo '
';
# spacer
echo ' |
';
}
#
# Reporter
#
if ( $tpl_show_reporter ) {
echo '';
$t_spacer = 4;
if ( $tpl_show_reporter ) {
# Reporter
echo '', lang_get( 'reporter' ), ' | ';
echo '';
# Do not allow the bug's reporter to edit the Reporter field
# when limit_reporters is ON
if( ON == config_get( 'limit_reporters' )
&& !access_has_project_level( REPORTER + 1, $tpl_bug->project_id )
) {
echo string_attribute( user_get_name( $tpl_bug->reporter_id ) );
} else {
if ( ON == config_get( 'use_javascript' ) ) {
$t_username = prepare_user_name( $tpl_bug->reporter_id );
echo ajax_click_to_edit( $t_username, 'reporter_id', 'entrypoint=issue_reporter_combobox&issue_id=' . $tpl_bug_id );
} else {
echo '';
}
}
echo ' | ';
} else {
$t_spacer += 2;
}
# spacer
echo ' | ';
echo '
';
}
#
# Assigned To, Due Date
#
if ( $tpl_show_handler || $tpl_show_due_date ) {
echo '';
$t_spacer = 2;
# Assigned To
echo '', lang_get( 'assigned_to' ), ' | ';
echo '';
if ( access_has_project_level( config_get( 'update_bug_assign_threshold', config_get( 'update_bug_threshold' ) ) ) ) {
echo '';
} else {
echo $tpl_handler_name;
}
echo ' | ';
if ( $tpl_show_due_date ) {
# Due Date
echo '', lang_get( 'due_date' ), ' | ';
if ( bug_is_overdue( $tpl_bug_id ) ) {
echo '';
} else {
echo ' | ';
}
if ( access_has_bug_level( config_get( 'due_date_update_threshold' ), $tpl_bug_id ) ) {
$t_date_to_display = '';
if ( !date_is_null( $tpl_bug->due_date ) ) {
$t_date_to_display = date( config_get( 'calendar_date_format' ), $tpl_bug->due_date );
}
echo '';
date_print_calendar();
date_finish_calendar( 'due_date', 'trigger');
} else {
if ( !date_is_null( $tpl_bug->due_date ) ) {
echo date( config_get( 'short_date_format' ), $tpl_bug->due_date );
}
}
echo ' | ';
} else {
$t_spacer += 2;
}
# spacer
echo ' | ';
echo '
';
}
#
# Priority, Severity, Reproducibility
#
if ( $tpl_show_priority || $tpl_show_severity || $tpl_show_reproducibility ) {
echo '';
$t_spacer = 0;
if ( $tpl_show_priority ) {
# Priority
echo '', lang_get( 'priority' ), ' | ';
echo '', ' | ';
} else {
$t_spacer += 2;
}
if ( $tpl_show_severity ) {
# Severity
echo '', lang_get( 'severity' ), ' | ';
echo '', ' | ';
} else {
$t_spacer += 2;
}
if ( $tpl_show_reproducibility ) {
# Reproducibility
echo '', lang_get( 'reproducibility' ), ' | ';
echo ' | ';
} else {
$t_spacer += 2;
}
# spacer
if ( $t_spacer > 0 ) {
echo ' | ';
}
echo '
';
}
#
# Status, Resolution
#
if ( $tpl_show_status || $tpl_show_resolution ) {
echo '';
$t_spacer = 2;
if ( $tpl_show_status ) {
# Status
echo '', lang_get( 'status' ), ' | ';
echo '';
print_status_option_list( 'status', $tpl_bug->status,
access_can_close_bug( $tpl_bug ),
$tpl_bug->project_id
);
echo ' | ';
} else {
$t_spacer += 2;
}
if ( $tpl_show_resolution ) {
# Resolution
echo '', lang_get( 'resolution' ), ' | ';
echo ' | ';
} else {
$t_spacer += 2;
}
# spacer
if ( $t_spacer > 0 ) {
echo ' | ';
}
echo '
';
}
#
# Projection, ETA
#
if ( $tpl_show_projection || $tpl_show_eta ) {
echo '';
$t_spacer = 2;
if ( $tpl_show_projection ) {
# Projection
echo '';
echo lang_get( 'projection' );
echo ' | ';
echo ' | ';
} else {
$t_spacer += 2;
}
# ETA
if ( $tpl_show_eta ) {
echo '', lang_get( 'eta' ), ' | ';
echo '', ' | ';
} else {
$t_spacer += 2;
}
# spacer
echo ' | ';
echo '
';
}
#
# Platform, OS, OS Version
#
if ( $tpl_show_platform || $tpl_show_os || $tpl_show_os_version ) {
echo '';
$t_spacer = 0;
if ( $tpl_show_platform ) {
# Platform
echo '', lang_get( 'platform' ), ' | ';
echo '';
if ( config_get( 'allow_freetext_in_profile_fields' ) == OFF ) {
echo '';
} else {
projax_autocomplete( 'platform_get_with_prefix', 'platform', array( 'value' => string_attribute( $tpl_bug->platform ), 'size' => '16', 'maxlength' => '32', 'tabindex' => helper_get_tab_index_value() ) );
}
echo ' | ';
} else {
$t_spacer += 2;
}
if ( $tpl_show_os ) {
# Operating System
echo '', lang_get( 'os' ), ' | ';
echo '';
if ( config_get( 'allow_freetext_in_profile_fields' ) == OFF ) {
echo '';
} else {
projax_autocomplete( 'os_get_with_prefix', 'os', array( 'value' => string_attribute( $tpl_bug->os ), 'size' => '16', 'maxlength' => '32', 'tabindex' => helper_get_tab_index_value() ) );
}
echo ' | ';
} else {
$t_spacer += 2;
}
if ( $tpl_show_os_version ) {
# OS Version
echo '', lang_get( 'os_version' ), ' | ';
echo '';
if ( config_get( 'allow_freetext_in_profile_fields' ) == OFF ) {
echo '';
} else {
projax_autocomplete( 'os_build_get_with_prefix', 'os_build', array( 'value' => string_attribute( $tpl_bug->os_build ), 'size' => '16', 'maxlength' => '16', 'tabindex' => helper_get_tab_index_value() ) );
}
echo ' | ';
} else {
$t_spacer += 2;
}
# spacer
if ( $t_spacer > 0 ) {
echo ' | ';
}
echo '
';
}
#
# Product Version, Product Build
#
if ( $tpl_show_product_version || $tpl_show_product_build ) {
echo '';
$t_spacer = 2;
# Product Version or Product Build, if version is suppressed
if ( $tpl_show_product_version ) {
echo '', lang_get( 'product_version' ), ' | ';
echo '', ' | ';
} else {
$t_spacer += 2;
}
if ( $tpl_show_product_build ) {
echo '', lang_get( 'product_build' ), ' | ';
echo '';
echo '';
echo ' | ';
} else {
$t_spacer += 2;
}
# spacer
echo ' | ';
echo '
';
}
#
# Target Versiom, Fixed in Version
#
if ( $tpl_show_target_version || $tpl_show_fixed_in_version ) {
echo '';
$t_spacer = 2;
# Target Version
if ( $tpl_show_target_version ) {
echo '', lang_get( 'target_version' ), ' | ';
echo ' | ';
} else {
$t_spacer += 2;
}
# Fixed in Version
if ( $tpl_show_fixed_in_version ) {
echo '';
echo lang_get( 'fixed_in_version' );
echo ' | ';
echo '';
echo '';
echo ' | ';
} else {
$t_spacer += 2;
}
# spacer
echo ' | ';
echo '
';
}
event_signal( 'EVENT_UPDATE_BUG_FORM', array( $tpl_bug_id, true ) );
# spacer
echo ' |
';
# Summary
if ( $tpl_show_summary ) {
echo '';
echo '', lang_get( 'summary' ), ' | ';
echo '', '';
echo ' |
';
}
# Description
if ( $tpl_show_description ) {
echo '';
echo '', lang_get( 'description' ), ' | ';
echo '';
echo '';
echo ' |
';
}
# Steps to Reproduce
if ( $tpl_show_steps_to_reproduce ) {
echo '';
echo '', lang_get( 'steps_to_reproduce' ), ' | ';
echo '';
echo '';
echo ' |
';
}
# Additional Information
if ( $tpl_show_additional_information ) {
echo '';
echo '', lang_get( 'additional_information' ), ' | ';
echo '';
echo '';
echo ' |
';
}
echo ' |
';
# Custom Fields
$t_custom_fields_found = false;
$t_related_custom_field_ids = custom_field_get_linked_ids( $tpl_bug->project_id );
foreach ( $t_related_custom_field_ids as $t_id ) {
$t_def = custom_field_get_definition( $t_id );
if ( ( $t_def['display_update'] || $t_def['require_update'] ) && custom_field_has_write_access( $t_id, $tpl_bug_id ) ) {
$t_custom_fields_found = true;
echo '';
echo '';
if ( $t_def['require_update'] ) {
echo '*';
}
echo string_display( lang_get_defaulted( $t_def['name'] ) );
echo ' | ';
print_custom_field_input( $t_def, $tpl_bug_id );
echo ' |
';
}
} # foreach( $t_related_custom_field_ids as $t_id )
if ( $t_custom_fields_found ) {
# spacer
echo ' |
';
} # custom fields found
# Bugnote Text Box
echo '';
echo '', lang_get( 'add_bugnote_title' ), ' | ';
echo ' |
';
# Bugnote Private Checkbox (if permitted)
if ( access_has_bug_level( config_get( 'private_bugnote_threshold' ), $tpl_bug_id ) ) {
echo '';
echo '', lang_get( 'private' ), ' | ';
echo '';
$t_default_bugnote_view_status = config_get( 'default_bugnote_view_status' );
if ( access_has_bug_level( config_get( 'set_view_status_threshold' ), $tpl_bug_id ) ) {
echo '';
echo lang_get( 'private' );
} else {
echo get_enum_element( 'view_state', $t_default_bugnote_view_status );
}
echo ' |
';
}
# Time Tracking (if permitted)
if ( config_get('time_tracking_enabled') ) {
if ( access_has_bug_level( config_get( 'time_tracking_edit_threshold' ), $tpl_bug_id ) ) {
echo '';
echo '', lang_get( 'time_tracking' ), ' (HH:MM) | ';
echo ' |
';
}
}
event_signal( 'EVENT_BUGNOTE_ADD_FORM', array( $tpl_bug_id ) );
# Submit Button
if ( $tpl_bottom_buttons_enabled ) {
echo '';
echo '';
echo ' |
';
}
echo '