diff options
author | Marc Alexander <admin@m-a-styles.de> | 2015-06-01 13:27:29 +0200 |
---|---|---|
committer | Marc Alexander <admin@m-a-styles.de> | 2015-09-09 08:27:36 +0200 |
commit | 92e49cd0acef56b78fda3bcffebb7a0958891b82 (patch) | |
tree | 10d2c52ac64d353eadbd6df663472355a2cc47f1 | |
parent | 0cbb713cc2a6249cb12507db7d0fa78ce8663ae6 (diff) | |
download | forums-92e49cd0acef56b78fda3bcffebb7a0958891b82.tar forums-92e49cd0acef56b78fda3bcffebb7a0958891b82.tar.gz forums-92e49cd0acef56b78fda3bcffebb7a0958891b82.tar.bz2 forums-92e49cd0acef56b78fda3bcffebb7a0958891b82.tar.xz forums-92e49cd0acef56b78fda3bcffebb7a0958891b82.zip |
[ticket/13904] Turn filespec into prototype and improve init methods
PHPBB3-13904
-rw-r--r-- | phpBB/config/default/container/services_files.yml | 1 | ||||
-rw-r--r-- | phpBB/includes/functions_upload.php | 27 | ||||
-rw-r--r-- | phpBB/phpbb/files/filespec.php | 4 |
3 files changed, 20 insertions, 12 deletions
diff --git a/phpBB/config/default/container/services_files.yml b/phpBB/config/default/container/services_files.yml index 64d63776a2..6f0b10cce1 100644 --- a/phpBB/config/default/container/services_files.yml +++ b/phpBB/config/default/container/services_files.yml @@ -4,6 +4,7 @@ services: files.filespec: class: phpbb\files\filespec + scope: prototype arguments: - @filesystem - @mimetype.guesser diff --git a/phpBB/includes/functions_upload.php b/phpBB/includes/functions_upload.php index c759631c47..3170a47033 100644 --- a/phpBB/includes/functions_upload.php +++ b/phpBB/includes/functions_upload.php @@ -155,7 +155,7 @@ class fileupload */ function form_upload($form_name, \phpbb\mimetype\guesser $mimetype_guesser = null, \phpbb\plupload\plupload $plupload = null) { - global $user, $request; + global $user, $request, $phpbb_container; $upload = $request->file($form_name); unset($upload['local_mode']); @@ -169,9 +169,10 @@ class fileupload } } - $file = new \phpbb\files\filespec($this->filesystem, $mimetype_guesser, $plupload); - $file->set_upload_ary($upload); - $file->set_upload_namespace($this); + /** @var \phpbb\files\filespec $file */ + $file = $phpbb_container->get('files.filespec') + ->set_upload_ary($upload) + ->set_upload_namespace($this); if ($file->init_error()) { @@ -233,7 +234,7 @@ class fileupload */ function local_upload($source_file, $filedata = false, \phpbb\mimetype\guesser $mimetype_guesser = null) { - global $user, $request; + global $user, $request, $phpbb_container; $upload = array(); @@ -252,9 +253,10 @@ class fileupload $upload['type'] = $filedata['type']; } - $file = new \phpbb\files\filespec($this->filesystem, $mimetype_guesser); - $file->set_upload_ary($upload); - $file->set_upload_namespace($this); + /** @var \phpbb\files\filespec $file */ + $file = $phpbb_container->get('files.filespec') + ->set_upload_ary($upload) + ->set_upload_namespace($this); if ($file->init_error()) { @@ -315,7 +317,7 @@ class fileupload */ function remote_upload($upload_url, \phpbb\mimetype\guesser $mimetype_guesser = null) { - global $user, $phpbb_root_path; + global $user, $phpbb_root_path, $phpbb_container; $upload_ary = array(); $upload_ary['local_mode'] = true; @@ -492,9 +494,10 @@ class fileupload $upload_ary['tmp_name'] = $filename; - $file = new \phpbb\files\filespec($this->filesystem, $mimetype_guesser); - $file->set_upload_ary($upload_ary); - $file->set_upload_namespace($this); + /** @var \phpbb\files\filespec $file */ + $file = $phpbb_container->get('files.filespec') + ->set_upload_ary($upload_ary) + ->set_upload_namespace($this); $this->common_checks($file); return $file; diff --git a/phpBB/phpbb/files/filespec.php b/phpBB/phpbb/files/filespec.php index 8501b217f7..3f50488e7c 100644 --- a/phpBB/phpbb/files/filespec.php +++ b/phpBB/phpbb/files/filespec.php @@ -97,11 +97,15 @@ class filespec $this->file_moved = false; $this->local = (isset($upload_ary['local_mode'])) ? true : false; + + return $this; } public function set_upload_namespace($namespace) { $this->upload = $namespace; + + return $this; } /** |