예제 #1
0
 public function setUp()
 {
     \Zend\View\Helper\Placeholder\Registry::unsetRegistry();
     $this->basePath = __DIR__ . '/_files/modules';
     $renderer = new \Zend\View\Renderer\PhpRenderer();
     $renderer->plugin('basePath')->setBasePath($this->basePath);
     $this->helper = new CtrlJsLoader();
     $this->helper->setView($renderer);
 }
예제 #2
0
 /**
  * Register service manager & set up Twig if
  * we have an environment
  *
  * @param \Pimple\Container $container
  */
 public function register(\Pimple\Container $container)
 {
     $smConfigurator = new ServiceManagerConfigurator();
     $serviceManager = $smConfigurator->createServiceManager($this->settings);
     $container['serviceManager'] = $serviceManager;
     if ($container['view'] instanceof \Slim\Views\Twig) {
         // Register Zend\Forms view helpers
         $viewHelperManager = $serviceManager->get('ViewHelperManager');
         $renderer = new \Zend\View\Renderer\PhpRenderer();
         $renderer->setHelperPluginManager($viewHelperManager);
         $environment = $container['view']->getEnvironment();
         $environment->registerUndefinedFunctionCallback(function ($name) use($viewHelperManager, $renderer) {
             if (!$viewHelperManager->has($name)) {
                 return false;
             }
             $callable = [$renderer->plugin($name), '__invoke'];
             $options = ['is_safe' => ['html']];
             return new \Twig_SimpleFunction(null, $callable, $options);
         });
     }
 }
예제 #3
0
 /**
  * Constructor
  *
  * @param Finna\Db\Table\User            $userTable            User table.
  * @param Finna\Db\Table\DueDateReminder $dueDateReminderTable Due date
  *                                                             reminder table.
  * @param VuFind\ILS\Connection          $catalog              ILS connection.
  * @param VuFind\Config                  $configReader         Config reader.
  * @param Zend\View\Renderer\PhpRenderer $renderer             View renderer.
  * @param VuFind\RecordLoader            $recordLoader         Record loader.
  * @param VuFind\HMAC                    $hmac                 HMAC.
  * @param VuFind\Translator              $translator           Translator.
  * @param ServiceManager                 $serviceManager       Service manager.
  */
 public function __construct($userTable, $dueDateReminderTable, $catalog, $configReader, $renderer, $recordLoader, $hmac, $translator, $serviceManager)
 {
     $this->userTable = $userTable;
     $this->dueDateReminderTable = $dueDateReminderTable;
     $this->catalog = $catalog;
     $this->mainConfig = $configReader->get('config');
     $this->datasourceConfig = $configReader->get('datasources');
     $this->configReader = $configReader;
     $this->renderer = $renderer;
     $this->translator = $translator;
     $this->urlHelper = $renderer->plugin('url');
     $this->recordLoader = $recordLoader;
     $this->hmac = $hmac;
     $this->serviceManager = $serviceManager;
 }