/** * Checks the render method */ public function testRender() { $eventManagerTest = new EventManager(); $domEventTest = new Event(); $domEventTest->setInstance('instance'); $domEventTest->setEventName('event_name'); $domEventTest->setHandle('handle'); $domEventTest->setCapture(true); $eventManagerTest->addDomEvent($domEventTest); $domEventOnceTest = new Event(); $domEventOnceTest->setInstance('instance'); $domEventOnceTest->setEventName('event_name'); $domEventOnceTest->setHandle('handle'); $domEventOnceTest->setCapture(true); $eventManagerTest->addDomEventOnce($domEventOnceTest); $eventTest = new Event(); $eventTest->setInstance('instance'); $eventTest->setEventName('event_name'); $eventTest->setHandle('handle'); $eventManagerTest->addEvent($eventTest); $eventOnceTest = new Event(); $eventOnceTest->setInstance('instance'); $eventOnceTest->setEventName('event_name'); $eventOnceTest->setHandle('handle'); $eventManagerTest->addEventOnce($eventOnceTest); $this->assertEquals(self::$eventManagerHelper->render($eventManagerTest), 'var ' . $domEventTest->getJavascriptVariable() . ' = google.maps.event.addDomListener(instance, "event_name", handle, true);' . PHP_EOL . 'var ' . $domEventOnceTest->getJavascriptVariable() . ' = google.maps.event.addDomListenerOnce(instance, "event_name", handle, true);' . PHP_EOL . 'var ' . $eventTest->getJavascriptVariable() . ' = google.maps.event.addListener(instance, "event_name", handle);' . PHP_EOL . 'var ' . $eventOnceTest->getJavascriptVariable() . ' = google.maps.event.addListenerOnce(instance, "event_name", handle);' . PHP_EOL); }
/** * Checks the render event once method */ public function testRenderEventOnce() { $eventTest = new Event(); $eventTest->setInstance('instance'); $eventTest->setEventName('event_name'); $eventTest->setHandle('handle'); $this->assertEquals(self::$eventHelper->renderEventOnce($eventTest), 'var ' . $eventTest->getJavascriptVariable() . ' = google.maps.event.addListenerOnce(instance, "event_name", handle);' . PHP_EOL); }
/** * Renders the map javascript markers * * @param Ivory\GoogleMapBundle\Model\Map $map * @return string HTML output */ public function renderMarkers(Map $map) { $html = array(); foreach ($map->getMarkers() as $marker) { $html[] = $this->markerHelper->render($marker, $map); if ($marker->hasInfoWindow() && $marker->getInfoWindow()->isAutoOpen()) { $event = new Event(); $event->setInstance($marker->getJavascriptVariable()); $event->setEventName($marker->getInfoWindow()->getOpenEvent()); $event->setHandle(sprintf('function(){for(var info_window in closable_info_windows){closable_info_windows[info_window].close();}%s}', str_replace(PHP_EOL, '', $this->infoWindowHelper->renderOpen($marker->getInfoWindow(), $map, $marker)))); $map->getEventManager()->addEvent($event); } } return implode('', $html); }
/** * Checks the events once getter & setter */ public function testEventsOnce() { $eventOnceTest = new Event(); $eventOnceTest->setInstance('instance'); $eventOnceTest->setEventName('event_name'); $eventOnceTest->setHandle('handle'); $eventOnceTest->setCapture(true); self::$eventManager->addEventOnce($eventOnceTest); $eventsOnce = self::$eventManager->getEventsOnce(); $this->assertEquals($eventsOnce[0]->getInstance(), 'instance'); $this->assertEquals($eventsOnce[0]->getEventName(), 'event_name'); $this->assertEquals($eventsOnce[0]->getHandle(), 'handle'); $this->assertTrue($eventsOnce[0]->isCapture()); }