/var/www/vhosts/ihelp.ro/httpdocs/vendor/cakephp/cakephp/src/Command
NameSizeModeActions
CacheClearallCommand.php21310644editdlrm
CacheClearCommand.php32160644editdlrm
CacheListCommand.php20050644editdlrm
Command.php20990644editdlrm
CompletionCommand.php93970644editdlrm
I18nCommand.php29170644editdlrm
I18nExtractCommand.php299950644editdlrm
I18nInitCommand.php36500644editdlrm
PluginAssetsCopyCommand.php24980644editdlrm
PluginAssetsRemoveCommand.php24290644editdlrm
PluginAssetsSymlinkCommand.php26170644editdlrm
PluginAssetsTrait.php71670644editdlrm
PluginLoadCommand.php44100644editdlrm
PluginLoadedCommand.php18020644editdlrm
PluginUnloadCommand.php33050644editdlrm
RoutesCheckCommand.php32340644editdlrm
RoutesCommand.php47590644editdlrm
RoutesGenerateCommand.php30790644editdlrm
SchemacacheBuildCommand.php28760644editdlrm
SchemacacheClearCommand.php28760644editdlrm
ServerCommand.php53520644editdlrm
VersionCommand.php11880644editdlrm
Edit: /var/www/vhosts/ihelp.ro/httpdocs/vendor/cakephp/cakephp/src/Command/PluginLoadCommand.php (4410B)
io = $io; $this->args = $args; $plugin = $args->getArgument('plugin') ?? ''; try { Plugin::getCollection()->findPath($plugin); } catch (MissingPluginException $e) { $this->io->err($e->getMessage()); $this->io->err('Ensure you have the correct spelling and casing.'); return static::CODE_ERROR; } $app = APP . 'Application.php'; if (file_exists($app)) { $this->modifyApplication($app, $plugin); return static::CODE_SUCCESS; } return static::CODE_ERROR; } /** * Modify the application class * * @param string $app The Application file to modify. * @param string $plugin The plugin name to add. * @return void */ protected function modifyApplication(string $app, string $plugin): void { $contents = file_get_contents($app); // Find start of bootstrap if (!preg_match('/^(\s+)public function bootstrap(?:\s*)\(\)/mu', $contents, $matches, PREG_OFFSET_CAPTURE)) { $this->io->err('Your Application class does not have a bootstrap() method. Please add one.'); $this->abort(); } $offset = $matches[0][1]; $indent = $matches[1][0]; // Find closing function bracket if (!preg_match("/^$indent\}\n$/mu", $contents, $matches, PREG_OFFSET_CAPTURE, $offset)) { $this->io->err('Your Application class does not have a bootstrap() method. Please add one.'); $this->abort(); } // Check if plugin is already loaded $regex = '#->addPlugin\(\'' . $plugin . '\'#mu'; if (preg_match($regex, $contents, $otherMatches, PREG_OFFSET_CAPTURE)) { $this->io->info('The specified plugin is already loaded!'); return; } $append = "$indent \$this->addPlugin('%s');\n"; $insert = str_replace(', []', '', sprintf($append, $plugin)); $offset = $matches[0][1]; $contents = substr_replace($contents, $insert, $offset, 0); file_put_contents($app, $contents); $this->io->out(''); $this->io->out(sprintf('%s modified', $app)); } /** * Get the option parser. * * @param \Cake\Console\ConsoleOptionParser $parser The option parser to update * @return \Cake\Console\ConsoleOptionParser */ public function buildOptionParser(ConsoleOptionParser $parser): ConsoleOptionParser { $parser->setDescription([ 'Command for loading plugins.', ]) ->addArgument('plugin', [ 'help' => 'Name of the plugin to load. Must be in CamelCase format. Example: cake plugin load Example', 'required' => true, ]); return $parser; } }