This repository has been archived by the owner on Mar 22, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathModule.php
61 lines (49 loc) · 1.86 KB
/
Module.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?php
namespace SporkTools;
use Zend\Mvc\ModuleRouteListener;
use Zend\Mvc\MvcEvent;
use Zend\Stdlib\Glob;
use SporkTools\Core\Listener;
use SporkTools\Core\Access\AccessListener;
class Module
{
const LISTENER_PERMISSION = 'controllistenerpermission';
protected $config;
public function onBootstrap(MvcEvent $event)
{
$application = $event->getApplication();
$serviceManager = $application->getServiceManager();
$eventManager = $application->getEventManager();
$sharedEventManager = $eventManager->getSharedManager();
$appConfig = $serviceManager->get('config');
$this->config = isset($appConfig['control_module'])
&& is_array($appConfig['control_module'])
? $appConfig['control_module'] : array();
$moduleRouteListener = new ModuleRouteListener();
$moduleRouteListener->attach($eventManager);
$eventManager->attachAggregate(new AccessListener());
$eventManager->attachAggregate(new Listener\InjectLayout());
}
public function getConfig()
{
$config = array_merge_recursive(
require __DIR__ . '/core/config/module.config.php',
require __DIR__ . '/core/config/navigation.config.php',
require __DIR__ . '/core/config/router.config.php');
foreach (Glob::glob(__DIR__ . '/config/*.config.php') as $file) {
$config = array_merge_recursive($config, require $file);
}
return $config;
}
public function getAutoloaderConfig()
{
return array(
'Zend\Loader\StandardAutoloader' => array(
'namespaces' => array(
__NAMESPACE__ . '\Core' => __DIR__ . '/core/src/',
__NAMESPACE__ => __DIR__ . '/src/'
)
)
);
}
}