X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModule%2FAttach.php;h=e9af90facc3fb1b0cc053acb93909e238c962e91;hb=41642061d778eda951342c4f2d81ef1e77d9fc33;hp=eed1275c58cbb52d2729ebae171c7565831189a7;hpb=fc2b804cccadcd2e9f90953f02b5977b2eb46439;p=friendica.git diff --git a/src/Module/Attach.php b/src/Module/Attach.php index eed1275c58..e9af90facc 100644 --- a/src/Module/Attach.php +++ b/src/Module/Attach.php @@ -8,8 +8,8 @@ namespace Friendica\Module; use Friendica\BaseModule; use Friendica\Core\L10n; -use Friendica\Core\System; use Friendica\Core\Logger; +use Friendica\Core\System; use Friendica\Model\Attach as MAttach; /** @@ -18,36 +18,34 @@ use Friendica\Model\Attach as MAttach; class Attach extends BaseModule { /** - * @brief Module initializer - * - * Fetch an attached file given the id + * @brief Return to user an attached file given the id */ - public static function init() + public static function rawContent() { $a = self::getApp(); if ($a->argc != 2) { - System::httpExit(400); // Bad Request. + throw new \Friendica\Network\HTTPException\BadRequestException(); } - + // @TODO: Replace with parameter from router $item_id = intval($a->argv[1]); // Check for existence $item = MAttach::exists(['id' => $item_id]); if ($item === false) { - System::httpExit(404, ['description' => L10n::t('Item was not found.')]); + throw new \Friendica\Network\HTTPException\NotFoundException(L10n::t('Item was not found.')); } // Now we'll fetch the item, if we have enough permisson $item = MAttach::getByIdWithPermission($item_id); if ($item === false) { - System::httpExit(403, ['description' => L10n::t('Permission denied.')]); + throw new \Friendica\Network\HTTPException\ForbiddenException(L10n::t('Permission denied.')); } $data = MAttach::getData($item); if (is_null($data)) { Logger::log('NULL data for attachment with id ' . $item['id']); - System::httpExit(404, ['description' => L10n::t('Item was not found.')]); + throw new \Friendica\Network\HTTPException\NotFoundException(L10n::t('Item was not found.')); } // Use quotes around the filename to prevent a "multiple Content-Disposition" @@ -64,4 +62,4 @@ class Attach extends BaseModule exit(); // NOTREACHED } -} \ No newline at end of file +}