[ticket/12560] Add methods to set upload and temp paths in plupload

The paths will be reset to the default paths after an upload is complete.

PHPBB3-12560
This commit is contained in:
Marc Alexander 2014-07-20 21:37:34 +02:00
parent 449ffbe799
commit b94ce7b932

View file

@ -79,8 +79,7 @@ class plupload
$this->php_ini = $php_ini; $this->php_ini = $php_ini;
$this->mimetype_guesser = $mimetype_guesser; $this->mimetype_guesser = $mimetype_guesser;
$this->upload_directory = $this->phpbb_root_path . $this->config['upload_path']; $this->set_default_directories();
$this->temporary_directory = $this->upload_directory . '/plupload';
} }
/** /**
@ -120,6 +119,9 @@ class plupload
{ {
rename("{$file_path}.part", $file_path); rename("{$file_path}.part", $file_path);
// Reset upload directories to defaults once completed
$this->set_default_directories();
// Need to modify some of the $_FILES values to reflect the new file // Need to modify some of the $_FILES values to reflect the new file
return array( return array(
'tmp_name' => $file_path, 'tmp_name' => $file_path,
@ -372,4 +374,29 @@ class plupload
); );
} }
} }
/**
* Sets the default directories for uploads
*
* @return null
*/
protected function set_default_directories()
{
$this->upload_directory = $this->phpbb_root_path . $this->config['upload_path'];
$this->temporary_directory = $this->upload_directory . '/plupload';
}
/**
* Sets the upload directories to the specified paths
*
* @param string $upload_directory Upload directory
* @param string $temporary_directory Temporary directory
*
* @return null
*/
public function set_upload_directories($upload_directory, $temporary_directory)
{
$this->upload_directory = $upload_directory;
$this->temporary_directory = $temporary_directory;
}
} }