require_api('error_api.php'); require_api('event_api.php'); require_api('form_api.php'); require_api('gpc_api.php'); require_api('print_api.php'); require_api('string_api.php'); form_security_validate('bugnote_update'); $f_bugnote_id = gpc_get_int('bugnote_id'); $f_bugnote_text = gpc_get_string('bugnote_text', ''); $f_time_tracking = gpc_get_string('time_tracking', '0:00'); # Check if the current user is allowed to edit the bugnote $t_user_id = auth_get_current_user_id(); $t_reporter_id = bugnote_get_field($f_bugnote_id, 'reporter_id'); if ($t_user_id == $t_reporter_id) { access_ensure_bugnote_level(config_get('bugnote_user_edit_threshold'), $f_bugnote_id); } else { access_ensure_bugnote_level(config_get('update_bugnote_threshold'), $f_bugnote_id); } # Check if the bug is readonly $t_bug_id = bugnote_get_field($f_bugnote_id, 'bug_id'); if (bug_is_readonly($t_bug_id)) { error_parameters($t_bug_id); trigger_error(ERROR_BUG_READ_ONLY_ACTION_DENIED, ERROR); } $f_bugnote_text = trim($f_bugnote_text) . "\n\n"; bugnote_set_text($f_bugnote_id, $f_bugnote_text); bugnote_set_time_tracking($f_bugnote_id, $f_time_tracking); # Plugin integration event_signal('EVENT_BUGNOTE_EDIT', array($t_bug_id, $f_bugnote_id)); form_security_purge('bugnote_update'); print_successful_redirect(string_get_bug_view_url($t_bug_id) . '#bugnotes');
require_api('form_api.php'); require_api('gpc_api.php'); require_api('helper_api.php'); require_api('print_api.php'); require_api('string_api.php'); form_security_validate('bugnote_set_view_state'); $f_bugnote_id = gpc_get_int('bugnote_id'); $f_private = gpc_get_bool('private'); $t_bug_id = bugnote_get_field($f_bugnote_id, 'bug_id'); $t_bug = bug_get($t_bug_id, true); if ($t_bug->project_id != helper_get_current_project()) { # in case the current project is not the same project of the bug we are viewing... # ... override the current project. This to avoid problems with categories and handlers lists etc. $g_project_override = $t_bug->project_id; } # Check if the bug is readonly if (bug_is_readonly($t_bug_id)) { error_parameters($t_bug_id); trigger_error(ERROR_BUG_READ_ONLY_ACTION_DENIED, ERROR); } # Check if the current user is allowed to change the view state of this bugnote $t_user_id = bugnote_get_field($f_bugnote_id, 'reporter_id'); if ($t_user_id == auth_get_current_user_id()) { access_ensure_bugnote_level(config_get('bugnote_user_change_view_state_threshold'), $f_bugnote_id); } else { access_ensure_bugnote_level(config_get('update_bugnote_threshold'), $f_bugnote_id); access_ensure_bugnote_level(config_get('change_view_status_threshold'), $f_bugnote_id); } bugnote_set_view_state($f_bugnote_id, $f_private); form_security_purge('bugnote_set_view_state'); print_successful_redirect(string_get_bug_view_url($t_bug_id) . '#bugnotes');