protected function _uninstall()
    {
        $allThemes = plugin()
            ->filter(function ($plugin) {
                return $plugin->isTheme;
            })
            ->toArray();
        $index = 1;
        $this->out();
        foreach ($allThemes as $plugin) {
            $allThemes[$index] = $plugin;
            $this->out(__d('installer', '[{0, number}] {1}', [$index, $plugin->humanName]));
            $index++;
        }
        $this->out();

        $message = __d('installer', "Which theme would you like to uninstall?\n[Q]uit");
        while (true) {
            $in = trim($this->in($message));
            if (strtoupper($in) === 'Q') {
                $this->err(__d('installer', 'Operation aborted'));
                break;
            } elseif (intval($in) < 1 || !isset($allThemes[intval($in)])) {
                $this->err(__d('installer', 'Invalid option'));
            } else {
                $plugin = plugin($allThemes[$in]->name());
                $this->hr();
                $this->out(__d('installer', '<info>The following theme will be uninstalled</info>'));
                $this->hr();
                $this->out(__d('installer', 'Name:        {0}', $plugin->name));
                $this->out(__d('installer', 'Description: {0}', $plugin->composer['description']));
                $this->out(__d('installer', 'Path:        {0}', $plugin->path));
                $this->hr();
                $this->out();

                $confirm = $this->in(__d('installer', 'Please type in "{0}" to uninstall', $allThemes[$in]->name));
                if ($confirm === $allThemes[$in]->name) {
                    $task = $this->dispatchShell("Installer.plugins uninstall -p {$allThemes[$in]->name}");

                    if ($task === 0) {
                        $this->out(__d('installer', 'Plugin uninstalled!'));
                        Plugin::dropCache();
                    } else {
                        $this->err(__d('installer', 'Plugin could not be uninstalled.'), 2);
                        $this->out();
                    }
                } else {
                    $this->err(__d('installer', 'Confirmation failure, operation aborted!'));
                }
                break;
            }
        }

        $this->out();
    }
protected function _uninstall()
    {
        $allThemes = plugin()
            ->filter(function ($plugin) {
                return $plugin->isTheme;
            })
            ->toArray();
        $index = 1;
        $this->out();
        foreach ($allThemes as $plugin) {
            $allThemes[$index] = $plugin;
            $this->out(__d('installer', '[{0, number}] {1}', [$index, $plugin->humanName]));
            $index++;
        }
        $this->out();

        $message = __d('installer', "Which theme would you like to uninstall?\n[Q]uit");
        while (true) {
            $in = trim($this->in($message));
            if (strtoupper($in) === 'Q') {
                $this->err(__d('installer', 'Operation aborted'));
                break;
            } elseif (intval($in) < 1 || !isset($allThemes[intval($in)])) {
                $this->err(__d('installer', 'Invalid option'));
            } else {
                $plugin = plugin($allThemes[$in]->name());
                $this->hr();
                $this->out(__d('installer', '<info>The following theme will be uninstalled</info>'));
                $this->hr();
                $this->out(__d('installer', 'Name:        {0}', $plugin->name));
                $this->out(__d('installer', 'Description: {0}', $plugin->composer['description']));
                $this->out(__d('installer', 'Path:        {0}', $plugin->path));
                $this->hr();
                $this->out();

                $confirm = $this->in(__d('installer', 'Please type in "{0}" to uninstall', $allThemes[$in]->name));
                if ($confirm === $allThemes[$in]->name) {
                    $task = $this->dispatchShell("Installer.plugins uninstall -p {$allThemes[$in]->name}");

                    if ($task === 0) {
                        $this->out(__d('installer', 'Plugin uninstalled!'));
                        Plugin::dropCache();
                    } else {
                        $this->err(__d('installer', 'Plugin could not be uninstalled.'), 2);
                        $this->out();
                    }
                } else {
                    $this->err(__d('installer', 'Confirmation failure, operation aborted!'));
                }
                break;
            }
        }

        $this->out();
    }
protected function _uninstall ( ) { $ allThemes = plugin ( ) -> filter ( function ( $ plugin ) { return $ plugin -> isTheme ; } ) -> toArray ( ) ; $ index = 1 ; $ this -> out ( ) ; foreach ( $ allThemes as $ plugin ) { $ allThemes [ $ index ] = $ plugin ; $ this -> out ( __d ( 'installer' , '[{0, number}] {1}' , [ $ index , $ plugin -> humanName ] ) ) ; $ index ++ ; } $ this -> out ( ) ; $ message = __d ( 'installer' , "Which theme would you like to uninstall?\n[Q]uit" ) ; while ( true ) { $ in = trim ( $ this -> in ( $ message ) ) ; if ( strtoupper ( $ in ) === 'Q' ) { $ this -> err ( __d ( 'installer' , 'Operation aborted' ) ) ; break ; } elseif ( intval ( $ in ) < 1 || ! isset ( $ allThemes [ intval ( $ in ) ] ) ) { $ this -> err ( __d ( 'installer' , 'Invalid option' ) ) ; } else { $ plugin = plugin ( $ allThemes [ $ in ] -> name ( ) ) ; $ this -> hr ( ) ; $ this -> out ( __d ( 'installer' , '<info>The following theme will be uninstalled</info>' ) ) ; $ this -> hr ( ) ; $ this -> out ( __d ( 'installer' , 'Name:        {0}' , $ plugin -> name ) ) ; $ this -> out ( __d ( 'installer' , 'Description: {0}' , $ plugin -> composer [ 'description' ] ) ) ; $ this -> out ( __d ( 'installer' , 'Path:        {0}' , $ plugin -> path ) ) ; $ this -> hr ( ) ; $ this -> out ( ) ; $ confirm = $ this -> in ( __d ( 'installer' , 'Please type in "{0}" to uninstall' , $ allThemes [ $ in ] -> name ) ) ; if ( $ confirm === $ allThemes [ $ in ] -> name ) { $ task = $ this -> dispatchShell ( "Installer.plugins uninstall -p {$allThemes[$in]->name}" ) ; if ( $ task === 0 ) { $ this -> out ( __d ( 'installer' , 'Plugin uninstalled!' ) ) ; Plugin :: dropCache ( ) ; } else { $ this -> err ( __d ( 'installer' , 'Plugin could not be uninstalled.' ) , 2 ) ; $ this -> out ( ) ; } } else { $ this -> err ( __d ( 'installer' , 'Confirmation failure, operation aborted!' ) ) ; } break ; } } $ this -> out ( ) ; }
Removes an existing theme.

@return void
Removes an existing theme .