Updates trait added

Added: the ability to delete old files or folders from the previous version with a single function
This commit is contained in:
EnesSacid-Buker 2022-12-20 16:00:49 +03:00 committed by GitHub
parent 2824e617de
commit c05294a44d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

46
app/Traits/Updates.php Normal file
View File

@ -0,0 +1,46 @@
<?php
namespace App\Traits;
use Illuminate\Support\Facades\File;
trait Updates
{
/**
* get the path by alias.
*/
public function getPathByAlias(string $alias = ''): string
{
if (empty($alias)) {
$const = static::class . '::ALIAS';
$alias = defined($const) ? constant($const) : 'core';
}
return $alias === 'core' ? base_path() : module_path($alias);
}
/**
* delete the files.
*/
public function deleteFiles(array $files, $alias = null): void
{
$path = $this->getPathByAlias($alias);
foreach ($files as $file) {
File::delete($path . '/' . $file);
}
}
/**
* delete the folders.
*/
public function deleteFolders(array $folders, $alias = null): void
{
$path = $this->getPathByAlias($alias);
foreach ($folders as $folder) {
File::deleteDirectory($path . '/' . $folder);
}
}
}