blessing-skin-server/app/Listeners/CopyPluginAssets.php
2019-09-09 23:08:03 +08:00

36 lines
801 B
PHP

<?php
namespace App\Listeners;
use App\Services\Plugin;
use Illuminate\Filesystem\Filesystem;
class CopyPluginAssets
{
/**
* @var Filesystem
*/
protected $filesystem;
public function __construct(Filesystem $filesystem)
{
$this->filesystem = $filesystem;
}
public function handle($event)
{
$plugin = $event instanceof Plugin ? $event : $event->plugin;
$dir = public_path('plugins/'.$plugin->name);
$this->filesystem->deleteDirectory($dir);
$this->filesystem->copyDirectory(
$plugin->getPath().DIRECTORY_SEPARATOR.'assets',
$dir.'/assets'
);
$this->filesystem->copyDirectory(
$plugin->getPath().DIRECTORY_SEPARATOR.'lang',
$dir.'/lang'
);
}
}