function plugins_releasemgt_file_delete($p_file_id) { $t_upload_method = plugin_config_get('upload_method', UPLOAD_METHOD_DEFAULT); $c_file_id = db_prepare_int($p_file_id); $t_filename = plugins_releasemgt_file_get_field($p_file_id, 'filename'); $t_diskfile = plugins_releasemgt_file_get_field($p_file_id, 'diskfile'); if (DISK == $t_upload_method || FTP == $t_upload_method) { if (FTP == $t_upload_method) { $ftp = plugins_releasemgt_file_ftp_connect(); file_ftp_delete($ftp, $t_diskfile); file_ftp_disconnect($ftp); } if (file_exists($t_diskfile)) { file_delete_local($t_diskfile); } } $t_file_table = plugin_table('file'); $query = "DELETE FROM {$t_file_table}\n\t\t\t\tWHERE id='{$c_file_id}'"; db_query($query); return true; }
$c_file_name = db_prepare_string($v_name); $c_file_type = db_prepare_string($v_type); $t_file_size = filesize($v_tmp_name); $t_max_file_size = (int) min(ini_get_number('upload_max_filesize'), ini_get_number('post_max_size'), config_get('max_file_size')); if ($t_file_size > $t_max_file_size) { trigger_error(ERROR_FILE_TOO_BIG, ERROR); } $c_file_size = db_prepare_int($t_file_size); $t_method = config_get('file_upload_method'); switch ($t_method) { case FTP: case DISK: file_ensure_valid_upload_path($t_file_path); if (FTP == $t_method) { $conn_id = file_ftp_connect(); file_ftp_delete($conn_id, $t_disk_file_name); file_ftp_put($conn_id, $t_disk_file_name, $v_tmp_name); file_ftp_disconnect($conn_id); } if (file_exists($t_disk_file_name)) { file_delete_local($t_disk_file_name); } if (!move_uploaded_file($v_tmp_name, $t_disk_file_name)) { trigger_error(ERROR_FILE_MOVE_FAILED, ERROR); } chmod($t_disk_file_name, config_get('attachments_file_permissions')); $c_content = ''; break; case DATABASE: $c_content = db_prepare_binary_string(fread(fopen($v_tmp_name, 'rb'), $v_size)); break;
function file_delete($p_file_id, $p_table = 'bug') { $t_upload_method = config_get('file_upload_method'); $c_file_id = db_prepare_int($p_file_id); $t_filename = file_get_field($p_file_id, 'filename', $p_table); $t_diskfile = file_get_field($p_file_id, 'diskfile', $p_table); if ($p_table == 'bug') { $t_bug_id = file_get_field($p_file_id, 'bug_id', $p_table); $t_project_id = bug_get_field($t_bug_id, 'project_id'); } else { $t_project_id = file_get_field($p_file_id, 'project_id', $p_table); } if (DISK == $t_upload_method || FTP == $t_upload_method) { if (FTP == $t_upload_method) { $ftp = file_ftp_connect(); file_ftp_delete($ftp, $t_diskfile); file_ftp_disconnect($ftp); } $t_local_disk_file = file_normalize_attachment_path($t_diskfile, $t_project_id); if (file_exists($t_local_disk_file)) { file_delete_local($t_local_disk_file); } } if ('bug' == $p_table) { # log file deletion history_log_event_special($t_bug_id, FILE_DELETED, file_get_display_name($t_filename)); } $t_file_table = db_get_table('mantis_' . $p_table . '_file_table'); $query = "DELETE FROM {$t_file_table}\n\t\t\t\tWHERE id=" . db_param(); db_query_bound($query, array($c_file_id)); return true; }
function file_delete($p_file_id, $p_table = 'bug') { $t_upload_method = config_get('file_upload_method'); $c_file_id = db_prepare_int($p_file_id); $t_filename = file_get_field($p_file_id, 'filename', $p_table); $t_diskfile = file_get_field($p_file_id, 'diskfile', $p_table); if (DISK == $t_upload_method || FTP == $t_upload_method) { if (FTP == $t_upload_method) { $ftp = file_ftp_connect(); file_ftp_delete($ftp, $t_diskfile); file_ftp_disconnect($ftp); } if (file_exists($t_diskfile)) { file_delete_local($t_diskfile); } } if ('bug' == $p_table) { # log file deletion $t_bug_id = file_get_field($p_file_id, 'bug_id', 'bug'); history_log_event_special($t_bug_id, FILE_DELETED, file_get_display_name($t_filename)); } $t_file_table = config_get('mantis_' . $p_table . '_file_table'); $query = "DELETE FROM {$t_file_table}\n\t\t\t\tWHERE id='{$c_file_id}'"; db_query($query); return true; }