initialized = true; } /** * Defines necessary event listeners. */ public function run() { $dispatcher = EventDispatcher::getInstance(); $dispatcher->attachListener(Events::PAGE_ADD_JS, $this, 'pageAddJsHandler'); $dispatcher->attachListener(Events::PAGE_ADD_CSS, $this, 'pageAddCssHandler'); } /** * Returns verision of the plugin. * * @return string Plugin's version. */ public static function getVersion() { return '0.0.1'; } /** * {@inheritdoc} */ public static function getDependencies() { return array('Mibew:OpenStreetMap' => '0.2.*'); } /** * Adds custom JS files to the page. * * @see \Mibew\EventDispatcher\Events::PAGE_ADD_JS */ public function pageAddJsHandler(&$args) { if ($args['request']->attributes->get('_route') == 'history') { // Add several parts of Open Street Map plugin $filepath = str_replace(DIRECTORY_SEPARATOR, '/', PluginManager::getInstance() ->getPlugin('Mibew:OpenStreetMap') ->getFilesPath()); $args['js'][] = $filepath . '/vendor/jquery-colorbox/jquery.colorbox-min.js'; $args['js'][] = $filepath . '/vendor/leaflet/dist/leaflet.js'; $args['js'][] = $filepath . '/js/common.js'; // Add native js code $filepath = str_replace(DIRECTORY_SEPARATOR, '/', $this->getFilesPath()); $args['js'][] = $filepath . '/js/history.js'; } } /** * Adds custom CSS files to the page. * * @see \Mibew\EventDispatcher\Events::PAGE_ADD_CSS */ public function pageAddCssHandler(&$args) { if ($args['request']->attributes->get('_route') == 'history') { // Add several parts of Open Street Map plugin $filepath = str_replace(DIRECTORY_SEPARATOR, '/', PluginManager::getInstance() ->getPlugin('Mibew:OpenStreetMap') ->getFilesPath()); $args['css'][] = $filepath . '/vendor/jquery-colorbox/example3/colorbox.css'; $args['css'][] = $filepath . '/vendor/leaflet/dist/leaflet.css'; $args['css'][] = $filepath . '/css/styles.css'; // Add native css $filepath = str_replace(DIRECTORY_SEPARATOR, '/', $this->getFilesPath()); $args['css'][] = $filepath . '/css/history.css'; } } }