aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes/acp
diff options
context:
space:
mode:
authorTristan Darricau <tristan.darricau@sensiolabs.com>2015-10-14 08:40:01 +0200
committerTristan Darricau <tristan.darricau@sensiolabs.com>2015-10-14 08:40:01 +0200
commitcac090b659a90749a8ea6ed7f62af980ffe7c60d (patch)
tree154e581503145a6a7b9223850d05bb85626defe7 /phpBB/includes/acp
parent359ef56e3538cb91f11587f77ecfc4bc423ebd96 (diff)
parentbb2634b5e5bdee53118eff8cdba3fea73932ff47 (diff)
downloadforums-cac090b659a90749a8ea6ed7f62af980ffe7c60d.tar
forums-cac090b659a90749a8ea6ed7f62af980ffe7c60d.tar.gz
forums-cac090b659a90749a8ea6ed7f62af980ffe7c60d.tar.bz2
forums-cac090b659a90749a8ea6ed7f62af980ffe7c60d.tar.xz
forums-cac090b659a90749a8ea6ed7f62af980ffe7c60d.zip
Merge pull request #3913 from marc1706/ticket/14168
[ticket/14168] Refactor attachment management functions into classes * marc1706/ticket/14168: (36 commits) [ticket/14168] Correctly state return type of upload and upload_attachment [ticket/14168] Use attachment manager instead of separate classes [ticket/14168] Fix docblock in manager [ticket/14168] Add more test cases for attachment manager [ticket/14168] Add new test method and more tests [ticket/14168] Fix tabs in manager and add test file [ticket/14168] Fix tests after rebase [ticket/14168] Add attachment manager service [ticket/14168] Use correct docblock [ticket/14168] Add services_attachment.yml to services.yml [ticket/14168] Minor coding style fixes [ticket/14168] Move attachment service definitions to services_attachment [ticket/14168] Improve code coverage in upload class [ticket/14168] Move image check and don't use trigger_error() [ticket/14168] Add tests for init_error() during upload [ticket/14168] Add basic test file for attachments upload [ticket/14168] Fix CS issue [ticket/14168] No longer use deprecated functions in core files [ticket/14168] Move phpbb_unlink() into attachment delete class [ticket/14168] Reset sequence before tests in delete tests ...
Diffstat (limited to 'phpBB/includes/acp')
-rw-r--r--phpBB/includes/acp/acp_attachments.php10
-rw-r--r--phpBB/includes/acp/acp_forums.php7
-rw-r--r--phpBB/includes/acp/acp_users.php10
3 files changed, 20 insertions, 7 deletions
diff --git a/phpBB/includes/acp/acp_attachments.php b/phpBB/includes/acp/acp_attachments.php
index 7ff9846a75..e2090f3cd5 100644
--- a/phpBB/includes/acp/acp_attachments.php
+++ b/phpBB/includes/acp/acp_attachments.php
@@ -39,6 +39,9 @@ class acp_attachments
/** @var \phpbb\filesystem\filesystem_interface */
protected $filesystem;
+ /** @var \phpbb\attachment\manager */
+ protected $attachment_manager;
+
public $id;
public $u_action;
protected $new_config;
@@ -55,6 +58,7 @@ class acp_attachments
$this->user = $user;
$this->phpbb_container = $phpbb_container;
$this->filesystem = $phpbb_filesystem;
+ $this->attachment_manager = $phpbb_container->get('attachment.manager');
$user->add_lang(array('posting', 'viewtopic', 'acp/attachments'));
@@ -922,11 +926,11 @@ class acp_attachments
$delete_files = array();
while ($row = $db->sql_fetchrow($result))
{
- phpbb_unlink($row['physical_filename'], 'file');
+ $this->attachment_manager->unlink($row['physical_filename'], 'file');
if ($row['thumbnail'])
{
- phpbb_unlink($row['physical_filename'], 'thumbnail');
+ $this->attachment_manager->unlink($row['physical_filename'], 'thumbnail');
}
$delete_files[$row['attach_id']] = $row['real_filename'];
@@ -1091,7 +1095,7 @@ class acp_attachments
}
$db->sql_freeresult($result);
- if ($num_deleted = delete_attachments('attach', $delete_files))
+ if ($num_deleted = $this->attachment_manager->delete('attach', $delete_files))
{
if (sizeof($delete_files) != $num_deleted)
{
diff --git a/phpBB/includes/acp/acp_forums.php b/phpBB/includes/acp/acp_forums.php
index f252f2a594..5d20664b31 100644
--- a/phpBB/includes/acp/acp_forums.php
+++ b/phpBB/includes/acp/acp_forums.php
@@ -1788,7 +1788,7 @@ class acp_forums
*/
function delete_forum_content($forum_id)
{
- global $db, $config, $phpbb_root_path, $phpEx, $phpbb_dispatcher;
+ global $db, $config, $phpbb_root_path, $phpEx, $phpbb_container, $phpbb_dispatcher;
include_once($phpbb_root_path . 'includes/functions_posting.' . $phpEx);
@@ -1809,7 +1809,10 @@ class acp_forums
}
$db->sql_freeresult($result);
- delete_attachments('topic', $topic_ids, false);
+ /** @var \phpbb\attachment\manager $attachment_manager */
+ $attachment_manager = $phpbb_container->get('attachment.manager');
+ $attachment_manager->delete('topic', $topic_ids, false);
+ unset($attachment_manager);
// Delete shadow topics pointing to topics in this forum
delete_topic_shadows($forum_id);
diff --git a/phpBB/includes/acp/acp_users.php b/phpBB/includes/acp/acp_users.php
index c21a9f94d1..5378c894cf 100644
--- a/phpBB/includes/acp/acp_users.php
+++ b/phpBB/includes/acp/acp_users.php
@@ -543,7 +543,10 @@ class acp_users
if (confirm_box(true))
{
- delete_attachments('user', $user_id);
+ /** @var \phpbb\attachment\manager $attachment_manager */
+ $attachment_manager = $phpbb_container->get('attachment.manager');
+ $attachment_manager->delete('user', $user_id);
+ unset($attachment_manager);
$phpbb_log->add('admin', $user->data['user_id'], $user->ip, 'LOG_USER_DEL_ATTACH', false, array($user_row['username']));
trigger_error($user->lang['USER_ATTACHMENTS_REMOVED'] . adm_back_link($this->u_action . '&amp;u=' . $user_id));
@@ -2139,7 +2142,10 @@ class acp_users
}
$db->sql_freeresult($result);
- delete_attachments('attach', $marked);
+ /** @var \phpbb\attachment\manager $attachment_manager */
+ $attachment_manager = $phpbb_container->get('attachment.manager');
+ $attachment_manager->delete('attach', $marked);
+ unset($attachment_manager);
$message = (sizeof($log_attachments) == 1) ? $user->lang['ATTACHMENT_DELETED'] : $user->lang['ATTACHMENTS_DELETED'];