Completed
Push — 2.0 ( 6db185...cf3837 )
by Nicolas
03:06
created

AdminBaseController::requireDefaultAssets()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 3
nc 1
nop 0
dl 0
loc 5
rs 9.4285
c 0
b 0
f 0
1
<?php namespace Modules\Core\Http\Controllers\Admin;
2
3
use FloatingPoint\Stylist\Facades\ThemeFacade as Theme;
4
use Illuminate\Routing\Controller;
5
use Modules\Core\Foundation\Asset\Manager\AssetManager;
6
use Modules\Core\Foundation\Asset\Pipeline\AssetPipeline;
7
use Modules\Core\Foundation\Asset\Types\AssetTypeFactory;
8
use Pingpong\Modules\Facades\Module;
9
10
class AdminBaseController extends Controller
11
{
12
    /**
13
     * @var AssetManager
14
     */
15
    protected $assetManager;
16
    /**
17
     * @var AssetPipeline
18
     */
19
    protected $assetPipeline;
20
    /**
21
     * @var AssetTypeFactory
22
     */
23
    protected $assetFactory;
24
25
    public function __construct()
26
    {
27
        $this->assetManager = app(AssetManager::class);
28
        $this->assetPipeline = app(AssetPipeline::class);
29
        $this->assetFactory = app(AssetTypeFactory::class);
30
31
        $this->addAssets();
32
    }
33
34
    /**
35
     * Add the assets from the config file on the asset manager
36
     */
37
    private function addAssets()
38
    {
39
        foreach (config('asgard.core.core.admin-assets') as $assetName => $path) {
40
            $path = $this->assetFactory->make($path)->url();
41
            $this->assetManager->addAsset($assetName, $path);
42
        }
43
    }
44
}
45