function make_attachment_path($fileId) { return make_file_path(0, "mail{$fileId}"); }
function upload($fieldId) { $user = $this->user->get_current_user(); if (!preg_match('/^[a-z0-9\\-_]+$/i', $fieldId)) { die('Illegal field ID'); } if ($_FILES['file']['error'] !== UPLOAD_ERR_OK) { echo 'File upload failed'; die($_FILES['file']['error']); } $filename = $_FILES['file']['name']; $filetype = $_FILES['file']['type']; $destfile = make_file_path($user->id, $fieldId); if (!move_uploaded_file($_FILES['file']['tmp_name'], $destfile)) { die('Upload failed'); } merge_data($user->id, json_encode(array($fieldId => array('name' => $filename, 'type' => $filetype)))); $this->load->view('apply/uploaded', array('fieldId' => $fieldId, 'filename' => $filename)); }
function download_user_file($userId, $fieldId) { $user = get_user($userId); $filePath = make_file_path($userId, $fieldId); if (!$user->data) { return FALSE; } $data = json_decode($user->data); $fileData = $data->{$fieldId}; if (!$fileData) { return FALSE; } $fileType = $fileData->type; $filename = $fileData->name; return download_file($filePath, $filename, $fileType); }