diff --git a/addons/default/visiosoft/advs-module/src/Support/Command/CheckModuleInstalled.php b/addons/default/visiosoft/advs-module/src/Support/Command/CheckModuleInstalled.php new file mode 100644 index 000000000..d3b82188e --- /dev/null +++ b/addons/default/visiosoft/advs-module/src/Support/Command/CheckModuleInstalled.php @@ -0,0 +1,23 @@ +moduleNamespace = $moduleNamespace; + $this->checkEnabled = $checkEnabled; + } + + public function handle(ModuleRepositoryInterface $moduleRepository) + { + if ($module = $moduleRepository->findBy('namespace', $this->moduleNamespace)) { + return $this->checkEnabled ? $module->installed && $module->enabled : boolval($module->installed); + } + return false; + } +} diff --git a/addons/default/visiosoft/advs-module/src/Support/_helpers.php b/addons/default/visiosoft/advs-module/src/Support/_helpers.php index 834968bdb..f9f24f480 100644 --- a/addons/default/visiosoft/advs-module/src/Support/_helpers.php +++ b/addons/default/visiosoft/advs-module/src/Support/_helpers.php @@ -2,9 +2,18 @@ use Illuminate\Contracts\Bus\Dispatcher; use Visiosoft\AdvsModule\Adv\Command\appendRequestURL; +use Visiosoft\AdvsModule\Support\Command\CheckModuleInstalled; -if (!function_exists('fullLink')) { +if (!function_exists('fullLink')) +{ function fullLink($request, $url, $newParameters = array()) { return app(Dispatcher::class)->dispatch(new appendRequestURL($request, $url, $newParameters)); } +} + +if (!function_exists('is_module_installed')) +{ + function is_module_installed($moduleNamespace, $checkEnabled = true) { + return dispatch_now(new CheckModuleInstalled($moduleNamespace, $checkEnabled)); + } } \ No newline at end of file