Recursively create directories when copying results

This commit is contained in:
Karsten Heiken
2011-11-26 19:11:03 +01:00
parent 2eddcf9ae9
commit 4a2d76d900

View File

@@ -157,12 +157,21 @@ class Xmlrpc extends MY_Controller {
if($files_uploaded) { if($files_uploaded) {
foreach (glob("/tmp/sp_incoming/" . $job_id . "/*") as $filename) { foreach (glob("/tmp/sp_incoming/" . $job_id . "/*") as $filename) {
$job_dir = FCPATH . 'uploads/' . $experiment['project_id'] . '/' . $experiment['id'] . '/' . $job['id']; $job_dir = FCPATH . 'uploads/' . $experiment['project_id'] . '/' . $experiment['id'];
if(!is_dir($job_dir)) $directories = explode("/", $job_dir);
mkdir($job_dir); $dir_tmp = '/';
foreach ($directories as $directory) {
$dir_tmp .= '/' . $directory;
if(!is_dir($dir_tmp)) {
mkdir($dir_tmp);
log_message('debug', "creating directory $dir_tmp");
}
}
$pathinfo = pathinfo($filename); $pathinfo = pathinfo($filename);
$newpath = FCPATH . 'uploads/' . $experiment['project_id'] . '/' . $experiment['id'] . '/' . $pathinfo['basename']; $newpath = FCPATH . 'uploads/' . $experiment['project_id'] . '/' . $experiment['id'] . '/' . $pathinfo['basename'];
log_message('debug', "copying $filename to $newpath");
copy($filename, $newpath); copy($filename, $newpath);
} }
} }