5 use Zend\ModuleManager\Feature\AutoloaderProviderInterface;
6 use Zend\ModuleManager\Feature\ConfigProviderInterface;
7 use Zend\ModuleManager\Feature\BootstrapListenerInterface;
8 use Zend\ModuleManager\Feature\ServiceProviderInterface;
9 use Zend\ModuleManager\Feature\ViewHelperProviderInterface;
11 use Zend\EventManager\EventInterface;
12 use Zend\Mvc\ModuleRouteListener;
14 use Zend\Stdlib\Hydrator\ClassMethods as HydratorClassMethods;
15 use Zend\Db\ResultSet\HydratingResultSet;
16 use Zend\Db\TableGateway\TableGateway;
19 use Galerie\Model\GalerieTable;
20 use Galerie\Model\GalerieInfoTable;
21 use Galerie\Model\Contact;
23 use Galerie\Form\GalerieForm;
24 use Galerie\Export\GalerieWorkbook;
25 use Galerie\Mail\MailSender;
27 use Custom\View\Helper\Format;
28 use Custom\Model\PairManager;
31 class Module implements
32 AutoloaderProviderInterface,
33 ConfigProviderInterface,
34 BootstrapListenerInterface,
35 ServiceProviderInterface,
36 ViewHelperProviderInterface
39 public function getAutoloaderConfig()
42 'Zend\Loader\ClassMapAutoloader' => array(
43 __DIR__ . '/autoload_classmap.php',
45 'Zend\Loader\StandardAutoloader' => array(
46 'namespaces' => array(
47 __NAMESPACE__ => __DIR__ . '/src/' . __NAMESPACE__,
53 public function getConfig()
55 return include __DIR__ . '/config/module.config.php';
58 public function onBootstrap(EventInterface $e)
60 $translator = $e->getApplication()->getServiceManager()->get('translator');
61 \Zend\Validator\AbstractValidator::setDefaultTranslator($translator, 'val');
64 public function getServiceConfig()
66 $config = $this->getConfig();
69 'Galerie\Model\GalerieTable' => function($sm) {
70 return new GalerieTable(
71 $sm->get('Zend\Db\Adapter\Adapter')
74 'Galerie\Model\GalerieInfoTable' => function($sm) {
75 return new GalerieInfoTable(
76 $sm->get('Zend\Db\Adapter\Adapter')
79 'Galerie\Form\GalerieForm' => function($sm) {
80 $result = new GalerieForm;
81 $result->setTranslator($sm->get('translator'), 'galerie');
82 $result->initialize();
85 'Galerie\Export\GalerieWorkbook' => function ($sm) {
86 return new GalerieWorkbook;
88 'Galerie\Mail\MailSender' => function($sm) use ($config) {
89 $result = new MailSender;
90 $result::initialize($config['mail']);
93 'Galerie\Model\GaleriePairTable' => function($sm) {
94 return new PairManager(
95 $sm->get('Zend\Db\Adapter\Adapter'),
99 'Galerie\Model\ContactTable' => function($sm) {
100 return new TableGateway(
102 Zend\Db\TableGateway\TableGateway,
104 new HydratingResultSet(
105 new HydratorClassMethods,
114 public function getViewHelperConfig()
117 'factories' => array(
118 'format' => function($sm) {