/** * Returns the full path of a given script * * @param string $file Script file to find * @return string */ public function get($file) { $bundle_location = "/core/bundles/" . $this->context->getAddonName() . "/"; $file_location = Config::getAddOnPath($this->context->getAddonName()) . '/'; if (File::exists(APP_PATH . $bundle_location . $file)) { return URL::assemble(Config::getSiteRoot(), ENVIRONMENT_PATH_PREFIX, $file_location, $file); } elseif (File::exists(APP_PATH . $bundle_location . 'assets/' . $file)) { return URL::assemble(Config::getSiteRoot(), ENVIRONMENT_PATH_PREFIX, $file_location, 'assets', $file); } elseif (File::exists(BASE_PATH . $file_location . $file)) { return URL::assemble(Config::getSiteRoot(), $file_location, $file); } elseif (File::exists(BASE_PATH . $file_location . 'assets/' . $file)) { return URL::assemble(Config::getSiteRoot(), $file_location, 'assets', $file); } Log::error("Asset file `" . $file . "` doesn't exist.", $this->context->getAddonName(), $this->context->getAddonType()); return ""; }
public static function get_addon_path($addon = NULL) { Log::warn("Use of Statamic::get_addon_path() is deprecated. Use Config::getAddOnPath() instead.", "core", "Statamic"); return Config::getAddOnPath($addon); }
/** * Initialized maps by adding dependencies to the screen * * @return string */ public function start_maps() { $smart_include = $this->fetchParam('smart_include', false, null, true, false); // if smart_include is on and maps haven't been used on this page, // short-circuit this method and return nothing if ($smart_include && !$this->blink->get('maps_used')) { return ''; } $add_on_path = Path::tidy(Config::getSiteRoot() . Config::getAddOnPath("location")); $override = (File::exists($add_on_path . '/css/override.css')) ? '<link href="' . $add_on_path . '/css/override.css" rel="stylesheet" />' : ''; return ' <!-- leaflet maps --> <link rel="stylesheet" href="' . ENVIRONMENT_PATH_PREFIX . $add_on_path . '/css/leaflet.css"> <!--[if lte IE 8]> <link rel="stylesheet" href="' . ENVIRONMENT_PATH_PREFIX . $add_on_path . '/css/leaflet.ie.css"> <![endif]--> ' . $override . ' <script type="text/javascript" src="' . ENVIRONMENT_PATH_PREFIX . $add_on_path . '/js/leaflet.js"></script> <script> try { if (typeof _location_maps !== "object") { throw ("Out."); } for (var id in _location_maps) { if (!_location_maps.hasOwnProperty(id)) { continue; } try { _location_maps_maps.length; } catch(e) { var _location_maps_maps = {} } var _map = _location_maps[id]; // variables var bounds, mapOptions = {}, points = []; // do we need to determine the center point? if (_map.auto_center && _map.markers.length) { for (var i = 0; i < _map.markers.length; i++) { points.push([_map.markers[i].latitude, _map.markers[i].longitude]); } bounds = new L.LatLngBounds(points); } _location_maps_maps[id] = L.map(id, { scrollWheelZoom: _map.scroll_wheel_zoom, doubleClickZoom: _map.double_click_zoom, boxZoom: _map.box_zoom, touchZoom: _map.touch_zoom, dragging: _map.draggable, tap: _map.tap }); if (bounds) { _location_maps_maps[id].fitBounds(bounds, { padding: [60, 48], maxZoom: _map.max_zoom }); } else { _location_maps_maps[id].setView([_map.starting_latitude, _map.starting_longitude], _map.starting_zoom); } mapOptions = { attribution: _map.attribution, key: _map.mapping_api_key, styleId: _map.mapping_style, minZoom: _map.min_zoom, maxZoom: _map.max_zoom }; if (_map.mapping_subdomains) { mapOptions.subdomains = _map.mapping_subdomains; } L.tileLayer(_map.mapping_tiles, mapOptions).addTo(_location_maps_maps[id]); // markers if (_map.markers.length) { // use cluster markers if (_map.clusters) { var _marker_clusters = new L.MarkerClusterGroup({ spiderfy_on_max_zoom: _map.spiderfy_on_max_zoom, show_coverage_on_hover: _map.show_coverage_on_hover, zoom_to_bounds_on_click: _map.zoom_to_bounds_on_click, single_marker_mode: _map.single_marker_mode, animate_adding_markers: _map.animate_adding_markers, disable_clustering_at_zoom: _map.disable_clustering_at_zoom, max_cluster_radius: _map.max_cluster_radius }); for (var i = 0; i < _map.markers.length; i++) { var _marker_data = _map.markers[i], _local_marker = new L.marker([_marker_data.latitude, _marker_data.longitude]); if (_marker_data.marker_content) { _local_marker.bindPopup(_marker_data.marker_content); } if (_map.open_popup) { _local_marker.openPopup(); } _marker_clusters.addLayer(_local_marker); } _location_maps_maps[id].addLayer(_marker_clusters); // use regular markers } else { var _local_marker; for (var i = 0; i < _map.markers.length; i++) { var _marker_data = _map.markers[i]; _local_marker = L.marker([_marker_data.latitude, _marker_data.longitude]).addTo(_location_maps_maps[id]); if (_marker_data.marker_content) { _local_marker.bindPopup(_marker_data.marker_content); } if (_map.open_popup) { _local_marker.openPopup(); } } } } } } catch(e) {} </script> '; }
/** * Returns the full path of a given script * * @param string $file Script file to find * @return string */ public function get($file) { $file_location = Config::getAddOnPath($this->context->addon_name) . '/'; if (File::exists(BASE_PATH . $file_location . $file)) { return URL::assemble(Config::getSiteRoot(), $file_location, $file); } elseif (File::exists(BASE_PATH . $file_location . 'assets/' . $file)) { return URL::assemble(Config::getSiteRoot(), $file_location, 'assets', $file); } $this->context->log->error("Asset file `" . $file . "` doesn't exist."); return ""; }
/** * Initialized maps by adding dependencies to the screen * * @return string */ public function start_maps() { $add_on_path = Config::getAddOnPath("location"); return ' <!-- leaflet maps --> <link rel="stylesheet" href="' . $add_on_path . '/css/leaflet.css" /> <!--[if lte IE 8]> <link rel="stylesheet" href="' . $add_on_path . '/css/leaflet.ie.css" /> <![endif]--> <link rel="stylesheet" href="' . $add_on_path . '/css/override.css" /> <script type="text/javascript" src="' . $add_on_path . '/js/leaflet.js"></script> <script> try { if (typeof _location_maps !== "object") { throw ("Out."); } for (var id in _location_maps) { if (!_location_maps.hasOwnProperty(id)) { continue; } try { _location_maps_maps.length; } catch(e) { var _location_maps_maps = {} } _location_maps_maps[id] = L.map(id).setView([_location_maps[id].starting_latitude, _location_maps[id].starting_longitude], _location_maps[id].starting_zoom); L.tileLayer("http://{s}.tile.cloudmade.com/' . $this->fetch('cloudmade_api_key') . '/' . $this->fetch('cloudmade_tile_set_id') . '/256/{z}/{x}/{y}.png", { attribute: "", maxZoom: ' . $this->fetch('max_zoom') . ' }).addTo(_location_maps_maps[id]); // markers if (_location_maps[id].markers.length) { // use cluster markers if (_location_maps[id].clusters) { var _marker_clusters = new L.MarkerClusterGroup({ spiderfy_on_max_zoom: _location_maps[id].spiderfy_on_max_zoom, show_coverage_on_hover: _location_maps[id].show_coverage_on_hover, zoom_to_bounds_on_click: _location_maps[id].zoom_to_bounds_on_click, single_marker_mode: _location_maps[id].single_marker_mode, animate_adding_markers: _location_maps[id].animate_adding_markers, disable_clustering_at_zoom: _location_maps[id].disable_clustering_at_zoom, max_cluster_radius: _location_maps[id].max_cluster_radius }); for (var i = 0; i < _location_maps[id].markers.length; i++) { var _marker_data = _location_maps[id].markers[i], _local_marker = new L.marker([_marker_data.latitude, _marker_data.longitude]); if (_marker_data.marker_content) { _local_marker.bindPopup(_marker_data.marker_content); } _marker_clusters.addLayer(_local_marker); } _location_maps_maps[id].addLayer(_marker_clusters); // use regular markers } else { var _local_marker; for (var i = 0; i < _location_maps[id].markers.length; i++) { var _marker_data = _location_maps[id].markers[i]; _local_marker = L.marker([_marker_data.latitude, _marker_data.longitude]).addTo(_location_maps_maps[id]); if (_marker_data.marker_content) { _local_marker.bindPopup(_marker_data.marker_content); } } } } } } catch(e) {} </script> '; }