[show-linked-portals] show preview on hover
This commit is contained in:
parent
c58438e4c4
commit
2e1a5fd1ae
@ -23,6 +23,8 @@ window.plugin.showLinkedPortal = function () {
|
||||
};
|
||||
|
||||
window.plugin.showLinkedPortal.portalDetail = function (data) {
|
||||
plugin.showLinkedPortal.removePreview();
|
||||
|
||||
var portalLinks = getPortalLinks(data.guid);
|
||||
var length = portalLinks.in.length + portalLinks.out.length
|
||||
|
||||
@ -84,10 +86,15 @@ window.plugin.showLinkedPortal.portalDetail = function (data) {
|
||||
.appendTo('#portaldetails');
|
||||
}
|
||||
|
||||
$('#portaldetails').on('click', '.showLinkedPortalLink', plugin.showLinkedPortal.onLinkedPortalClick);
|
||||
$('#portaldetails')
|
||||
.on('click', '.showLinkedPortalLink', plugin.showLinkedPortal.onLinkedPortalClick)
|
||||
.on('mouseover', '.showLinkedPortalLink', plugin.showLinkedPortal.onLinkedPortalMouseOver)
|
||||
.on('mouseout', '.showLinkedPortalLink', plugin.showLinkedPortal.onLinkedPortalMouseOut);
|
||||
}
|
||||
|
||||
plugin.showLinkedPortal.onLinkedPortalClick = function() {
|
||||
plugin.showLinkedPortal.removePreview();
|
||||
|
||||
var element = $(this);
|
||||
var guid = element.attr('data-guid');
|
||||
var lat = element.attr('data-lat');
|
||||
@ -103,6 +110,35 @@ plugin.showLinkedPortal.onLinkedPortalClick = function() {
|
||||
zoomToAndShowPortal(guid, position);
|
||||
};
|
||||
|
||||
plugin.showLinkedPortal.onLinkedPortalMouseOver = function() {
|
||||
plugin.showLinkedPortal.removePreview();
|
||||
|
||||
var element = $(this);
|
||||
var lat = element.attr('data-lat');
|
||||
var lng = element.attr('data-lng');
|
||||
|
||||
if(!(lat && lng)) return; // overflow
|
||||
|
||||
var position = L.latLng(lat, lng);
|
||||
plugin.showLinkedPortal.preview = L.circleMarker(position, {
|
||||
color: "red",
|
||||
weight: 5,
|
||||
fill: false,
|
||||
dashArray: "1,6",
|
||||
radius: 18,
|
||||
}).addTo(map);
|
||||
};
|
||||
|
||||
plugin.showLinkedPortal.onLinkedPortalMouseOut = function() {
|
||||
plugin.showLinkedPortal.removePreview();
|
||||
};
|
||||
|
||||
plugin.showLinkedPortal.removePreview = function() {
|
||||
if(plugin.showLinkedPortal.preview)
|
||||
map.removeLayer(plugin.showLinkedPortal.preview);
|
||||
plugin.showLinkedPortal.preview = null;
|
||||
};
|
||||
|
||||
var setup = function () {
|
||||
window.addHook('portalDetailsUpdated', window.plugin.showLinkedPortal.portalDetail);
|
||||
$('head').append('<style>' +
|
||||
|
Loading…
x
Reference in New Issue
Block a user