invoiceninja/app/Utils/Traits/MakesMenu.php
David Bomba bdb0f43d33
Modules, VueJS (#2552)
* Fix for comparing delete contacts change diffKeys to diff()

* Client create

* Client Settings

* Working on localization

* Refactor DataTables

* protyping blade vs pure vue

* Rebuild test module

* Generic notes module

* Small Client Notes Module

* Tests for TabMenu Trait

* implements tab pills in client screen

* Integrate Modules
2018-12-13 10:23:21 +11:00

47 lines
781 B
PHP

<?php
namespace App\Utils\Traits;
use Nwidart\Modules\Facades\Module;
/**
* Class MakesMenu
* @package App\Utils\Traits
*/
trait MakesMenu
{
/**
* Builds an array of available modules for this view
* @param string $entity Class name
* @return array of modules
*/
public function makeEntityTabMenu(string $entity) : array
{
$tabs = [];
foreach (Module::getCached() as $module)
{
if(!$module['sidebar']
&& $module['active'] == 1
&& in_array( strtolower( class_basename($entity) ), $module['views']))
{
$tabs[] = $module;
}
}
return $tabs;
}
/**
* Builds an array items to be presented on the sidebar
* @return array menu items
*/
public function makeSideBarMenu()
{
}
}