mirror of
https://github.com/Part-DB/Part-DB-server.git
synced 2025-07-14 12:24:33 +02:00
Added an PHP CS fixer config file and applied it to files.
We now use the same the same style as the symfony project, and it allows us to simply fix the style by executing php_cs_fixer fix in the project root.
This commit is contained in:
parent
89258bc102
commit
e557bdedd5
210 changed files with 2099 additions and 2742 deletions
|
@ -1,6 +1,6 @@
|
|||
<?php
|
||||
/**
|
||||
* This file is part of Part-DB (https://github.com/Part-DB/Part-DB-symfony)
|
||||
* This file is part of Part-DB (https://github.com/Part-DB/Part-DB-symfony).
|
||||
*
|
||||
* Copyright (C) 2019 Jan Böhmer (https://github.com/jbtronics)
|
||||
*
|
||||
|
@ -17,29 +17,11 @@
|
|||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*
|
||||
*/
|
||||
|
||||
namespace App\Services\Attachments;
|
||||
|
||||
|
||||
use App\Entity\Attachments\Attachment;
|
||||
use App\Entity\Attachments\AttachmentContainingDBElement;
|
||||
use App\Entity\Attachments\AttachmentTypeAttachment;
|
||||
use App\Entity\Attachments\CategoryAttachment;
|
||||
use App\Entity\Attachments\CurrencyAttachment;
|
||||
use App\Entity\Attachments\DeviceAttachment;
|
||||
use App\Entity\Attachments\FootprintAttachment;
|
||||
use App\Entity\Attachments\GroupAttachment;
|
||||
use App\Entity\Attachments\ManufacturerAttachment;
|
||||
use App\Entity\Attachments\MeasurementUnitAttachment;
|
||||
use App\Entity\Attachments\PartAttachment;
|
||||
use App\Entity\Attachments\StorelocationAttachment;
|
||||
use App\Entity\Attachments\SupplierAttachment;
|
||||
use App\Entity\Attachments\UserAttachment;
|
||||
use App\Services\Attachments\AttachmentPathResolver;
|
||||
use Symfony\Component\HttpFoundation\File\UploadedFile;
|
||||
use Symfony\Component\OptionsResolver\OptionsResolver;
|
||||
|
||||
/**
|
||||
* This service contains basic commonly used functions to work with attachments.
|
||||
|
@ -47,11 +29,9 @@ use Symfony\Component\OptionsResolver\OptionsResolver;
|
|||
* (like filesize or if a file is existing).
|
||||
*
|
||||
* Special operations like getting attachment urls or handling file uploading/downloading are in their own services.
|
||||
* @package App\Services
|
||||
*/
|
||||
class AttachmentManager
|
||||
{
|
||||
|
||||
protected $pathResolver;
|
||||
|
||||
public function __construct(AttachmentPathResolver $pathResolver)
|
||||
|
@ -61,11 +41,13 @@ class AttachmentManager
|
|||
|
||||
/**
|
||||
* Gets an SPLFileInfo object representing the file associated with the attachment.
|
||||
*
|
||||
* @param Attachment $attachment The attachment for which the file should be generated
|
||||
*
|
||||
* @return \SplFileInfo|null The fileinfo for the attachment file. Null, if the attachment is external or has
|
||||
* invalid file.
|
||||
* invalid file.
|
||||
*/
|
||||
public function attachmentToFile(Attachment $attachment) : ?\SplFileInfo
|
||||
public function attachmentToFile(Attachment $attachment): ?\SplFileInfo
|
||||
{
|
||||
if ($attachment->isExternal() || !$this->isFileExisting($attachment)) {
|
||||
return null;
|
||||
|
@ -77,7 +59,9 @@ class AttachmentManager
|
|||
/**
|
||||
* Returns the absolute filepath of the attachment. Null is returned, if the attachment is externally saved,
|
||||
* or is not existing.
|
||||
*
|
||||
* @param Attachment $attachment The attachment for which the filepath should be determined
|
||||
*
|
||||
* @return string|null
|
||||
*/
|
||||
public function toAbsoluteFilePath(Attachment $attachment): ?string
|
||||
|
@ -93,15 +77,16 @@ class AttachmentManager
|
|||
$path = $this->pathResolver->placeholderToRealPath($attachment->getPath());
|
||||
|
||||
//realpath does not work with null as argument
|
||||
if ($path === null) {
|
||||
if (null === $path) {
|
||||
return null;
|
||||
}
|
||||
|
||||
$tmp = realpath($path);
|
||||
//If path is not existing realpath returns false.
|
||||
if ($tmp === false) {
|
||||
if (false === $tmp) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return $tmp;
|
||||
}
|
||||
|
||||
|
@ -127,6 +112,7 @@ class AttachmentManager
|
|||
* For external attachments or not existing attachments, null is returned.
|
||||
*
|
||||
* @param Attachment $attachment The filesize for which the filesize should be calculated.
|
||||
*
|
||||
* @return int|null
|
||||
*/
|
||||
public function getFileSize(Attachment $attachment): ?int
|
||||
|
@ -140,22 +126,23 @@ class AttachmentManager
|
|||
}
|
||||
|
||||
$tmp = filesize($this->toAbsoluteFilePath($attachment));
|
||||
return $tmp !== false ? $tmp : null;
|
||||
|
||||
return false !== $tmp ? $tmp : null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a human readable version of the attachment file size.
|
||||
* For external attachments, null is returned.
|
||||
*
|
||||
* @param Attachment $attachment
|
||||
* @param int $decimals The number of decimals numbers that should be printed
|
||||
*
|
||||
* @return string|null A string like 1.3M
|
||||
*/
|
||||
public function getHumanFileSize(Attachment $attachment, $decimals = 2): ?string
|
||||
{
|
||||
$bytes = $this->getFileSize($attachment);
|
||||
|
||||
if ($bytes == null) {
|
||||
if (null == $bytes) {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
@ -163,7 +150,8 @@ class AttachmentManager
|
|||
//Taken from: https://www.php.net/manual/de/function.filesize.php#106569 and slightly modified
|
||||
|
||||
$sz = 'BKMGTP';
|
||||
$factor = (int) floor((strlen($bytes) - 1) / 3);
|
||||
return sprintf("%.{$decimals}f", $bytes / 1024 ** $factor) . @$sz[$factor];
|
||||
$factor = (int) floor((\strlen($bytes) - 1) / 3);
|
||||
|
||||
return sprintf("%.{$decimals}f", $bytes / 1024 ** $factor).@$sz[$factor];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue