protected function urlForPlacemark(Placemark $placemark) { $urlArgs = $placemark->getURLParams(); // mimic getMergedConfigData in MapWebModule if (isset($urlArgs['feed'])) { $category = $urlArgs['feed']; } else { $categoryArg = isset($urlArgs['category']) ? $urlArgs['category'] : null; $categories = explode(MAP_CATEGORY_DELIMITER, $categoryArg); $category = current($categories); if (strlen($category)) { $urlArgs['feed'] = $category; } } $configData = $this->getDataForGroup($this->feedGroup); // allow individual feeds to override group value $feedData = $this->getCurrentFeed($category); if ($feedData) { foreach ($feedData as $key => $value) { $configData[$key] = $value; } } // the device needs to be compliant to use the APIModule list($class, $static) = MapImageController::basemapClassForDevice(new MapDevice('compliant', 'computer'), $configData); if ($static) { $page = $this->numGroups > 1 ? 'campus' : 'index'; } else { $page = 'detail'; } return rtrim(FULL_URL_PREFIX, '/') . '/' . $this->configModule . '/' . $page . '?' . http_build_query($urlArgs); }
protected function pageForPlacemark(Placemark $placemark) { $page = 'detail'; $params = $placemark->getURLParams(); if (isset($params['feed']) && $this->isMapDrivenUI($params['feed'])) { //$fullscreen = ($this->numGroups > 1) ? 'campus' : 'index'; //if ($this->page != $fullscreen) { // use detail page if we're already on a fullscreen map // $page = $fullscreen; //} if (($this->page != 'campus' || $this->getArg('listview')) && !$this->getArg('mapview')) { // use detail page if we're already on a fullscreen map $page = 'campus'; } } return $page; }
protected function pageForPlacemark(Placemark $placemark) { $page = 'detail'; $params = $placemark->getURLParams(); // only if the placemark is searched, and there are 2 feed groups // the feedGroup is mandartory if (empty($this->feedGroup) && isset($params['group'])) { $this->feedGroup = $params['group']; } if (isset($params['feed']) && $this->isMapDrivenUI($params['feed'])) { //$fullscreen = ($this->numGroups > 1) ? 'campus' : 'index'; //if ($this->page != $fullscreen) { // use detail page if we're already on a fullscreen map // $page = $fullscreen; //} if (($this->page != 'campus' || $this->getArg('listview')) && !$this->getArg('mapview')) { // use detail page if we're already on a fullscreen map $page = 'campus'; } } return $page; }