Skip to content
  • P
    Projects
  • G
    Groups
  • S
    Snippets
  • Help

semour / semour_admin

  • This project
    • Loading...
  • Sign in
Go to a project
  • Project
  • Repository
  • Issues 0
  • Merge Requests 0
  • Pipelines
  • Wiki
  • Snippets
  • Settings
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Files
  • Commits
  • Branches
  • Tags
  • Contributors
  • Graph
  • Compare
  • Charts
Find file
BlameHistoryPermalink
Switch branch/tag
  • semour_admin
  • vendor
  • dcat
  • laravel-admin
  • src
  • Console
  • ExtensionRefreshCommand.php
  • mushishixian's avatar
    安装laraveladmin · 8ae169e3
    mushishixian committed 2 years ago
    8ae169e3
ExtensionRefreshCommand.php 1.01 KB
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
<?php

namespace Dcat\Admin\Console;

use Dcat\Admin\Admin;
use Illuminate\Console\Command;

class ExtensionRefreshCommand extends Command
{
    protected $signature = 'admin:ext-refresh 
    {name : The name of the extension. Eg: author-name/extension-name} 
    {--path= : The path of the extension.}';

    protected $description = 'Removes and re-adds an existing extension';

    public function handle()
    {
        $name = $this->argument('name');

        if (! Admin::extension()->has($name)) {
            throw new \InvalidArgumentException(sprintf('Plugin "%s" not found.', $name));
        }

        $confirmQuestion = 'Please confirm that you wish to reinstall this extension?';

        if (! $this->confirm($confirmQuestion)) {
            return;
        }

        $manager = Admin::extension()
            ->updateManager()
            ->setOutPut($this->output);

        $manager->rollback($name);

        $this->output->writeln('<info>Reinstalling extension...</info>');

        $manager->update($name);
    }
}