Files
faveo/app/Plugins/ServiceProvider.php
Manish Verma b13fa06585 apped plugin service provider
provided plugin service provider in app/Plugins so users can install and
use plugins or create their own plugin to share with community.
2016-10-19 12:08:54 +05:30

47 lines
1.4 KiB
PHP

<?php
namespace App\Plugins;
abstract class ServiceProvider extends \Illuminate\Support\ServiceProvider
{
public function boot()
{
if ($module = $this->getModule(func_get_args())) {
//$this->package('app/' . $module, $module, app_path() . '/modules/' . $module);
// $this->publishes([
// 'app/' . $module => app_path() . '/Plugins/' . $module . '/config',
// ]);
$this->publishes([
'app/plugins/'.$module.'/Config/config.php' => config_path($module.'/config.php'),
]);
}
}
public function register()
{
if ($module = $this->getModule(func_get_args())) {
//$this->app['config']->package('app/' . $module, app_path() . '/modules/' . $module . '/config');
// $this->publishes([
// 'app/' . $module => app_path() . '/Plugins/' . $module . '/config',
// ]);
$this->publishes([
'app/plugins/'.$module.'/Config/config.php' => config_path($module.'/config.php'),
]);
// Add routes
$routes = app_path().'/Plugins/'.$module.'/routes.php';
if (file_exists($routes)) {
require $routes;
}
}
}
public function getModule($args)
{
$module = (isset($args[0]) and is_string($args[0])) ? $args[0] : null;
return $module;
}
}