/** * Bind event to the item */ private function makeBindEventsScript($var, GeoObject $object) { if (!count($object->getEvents())) { return null; } $events = ["{$var}.events"]; foreach ($object->getEvents() as $event => $handle) { $event = Json::encode($event); if (is_string($handle) && strpos($handle, 'js:') === 0) { $handle = substr($handle, 3); } else { $handle = Json::encode($handle); } $events[] = ".add({$event}, {$handle})"; } return implode($events); }