[DXCC Mao] Fixed so that worked/confirmed/not worked works with map
这个提交包含在:
父节点
1b563b7eb0
当前提交
06028992aa
共有 2 个文件被更改,包括 69 次插入 和 47 次删除
|
|
@ -644,7 +644,7 @@ class Awards extends CI_Controller {
|
||||||
}
|
}
|
||||||
$newdxcc[$i]['lat'] = $dxcc->lat;
|
$newdxcc[$i]['lat'] = $dxcc->lat;
|
||||||
$newdxcc[$i]['long'] = $dxcc->long;
|
$newdxcc[$i]['long'] = $dxcc->long;
|
||||||
$newdxcc[$i++]['status'] = $this->returnStatus($dxcc_array[$dxcc->adif]);
|
$newdxcc[$i++]['status'] = isset($dxcc_array[$dxcc->adif]) ? $this->returnStatus($dxcc_array[$dxcc->adif]) : 'x';
|
||||||
}
|
}
|
||||||
|
|
||||||
header('Content-Type: application/json');
|
header('Content-Type: application/json');
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,7 @@ function load_dxcc_map() {
|
||||||
Antarctica: +$('#Antarctica').prop('checked'),
|
Antarctica: +$('#Antarctica').prop('checked'),
|
||||||
},
|
},
|
||||||
success: function(data) {
|
success: function(data) {
|
||||||
load_dxcc_map2(data);
|
load_dxcc_map2(data, worked, confirmed, notworked);
|
||||||
},
|
},
|
||||||
error: function() {
|
error: function() {
|
||||||
|
|
||||||
|
|
@ -31,7 +31,7 @@ function load_dxcc_map() {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function load_dxcc_map2(data) {
|
function load_dxcc_map2(data, worked, confirmed, notworked) {
|
||||||
|
|
||||||
// If map is already initialized
|
// If map is already initialized
|
||||||
var container = L.DomUtil.get('dxccmap');
|
var container = L.DomUtil.get('dxccmap');
|
||||||
|
|
@ -51,61 +51,55 @@ function load_dxcc_map2(data) {
|
||||||
}
|
}
|
||||||
).addTo(map);
|
).addTo(map);
|
||||||
|
|
||||||
var notworked = data.length;
|
var notworkedcount = data.length;
|
||||||
var confirmed = 0;
|
var confirmedcount = 0;
|
||||||
var workednotconfirmed = 0;
|
var workednotconfirmedcount = 0;
|
||||||
|
|
||||||
for (var i = 0; i < data.length; i++) {
|
for (var i = 0; i < data.length; i++) {
|
||||||
var D = data[i];
|
var D = data[i];
|
||||||
var mapColor = 'red';
|
if (D['status'] != 'x') {
|
||||||
|
var mapColor = 'red';
|
||||||
if (D['status'] == 'C') {
|
|
||||||
mapColor = 'green';
|
if (D['status'] == 'C') {
|
||||||
confirmed++;
|
mapColor = 'green';
|
||||||
notworked--;
|
if (confirmed != '0') {
|
||||||
}
|
addMarker(L, D, mapColor, map);
|
||||||
if (D['status'] == 'W') {
|
confirmedcount++;
|
||||||
mapColor = 'orange';
|
notworkedcount--;
|
||||||
workednotconfirmed++;
|
}
|
||||||
notworked--;
|
|
||||||
}
|
|
||||||
|
|
||||||
const markerHtmlStyles = `
|
|
||||||
background-color: ${mapColor};
|
|
||||||
width: 1rem;
|
|
||||||
height: 1rem;
|
|
||||||
display: block;
|
|
||||||
position: relative;
|
|
||||||
border-radius: 3rem 3rem 0;
|
|
||||||
transform: rotate(45deg);
|
|
||||||
border: 1px solid #FFFFFF`
|
|
||||||
|
|
||||||
const icon = L.divIcon({
|
|
||||||
className: "my-custom-pin",
|
|
||||||
iconAnchor: [0, 24],
|
|
||||||
labelAnchor: [-6, 0],
|
|
||||||
popupAnchor: [0, -36],
|
|
||||||
html: `<span style="${markerHtmlStyles}" />`
|
|
||||||
})
|
|
||||||
|
|
||||||
L.marker(
|
|
||||||
[D['lat'], D['long']], {
|
|
||||||
icon: icon,
|
|
||||||
adif: D['adif'],
|
|
||||||
title: D['prefix'] + ' - ' + D['name'],
|
|
||||||
}
|
}
|
||||||
).addTo(map).on('click', onClick);
|
if (D['status'] == 'W') {
|
||||||
|
mapColor = 'orange';
|
||||||
|
if (worked != '0') {
|
||||||
|
addMarker(L, D, mapColor, map);
|
||||||
|
workednotconfirmedcount++;
|
||||||
|
notworkedcount--;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Make a check here and hide what I don't want to show
|
||||||
|
if (notworked != '0') {
|
||||||
|
if (mapColor == 'red') {
|
||||||
|
addMarker(L, D, mapColor, map);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*Legend specific*/
|
/*Legend specific*/
|
||||||
var legend = L.control({ position: "topright" });
|
var legend = L.control({ position: "topright" });
|
||||||
|
|
||||||
|
if (notworked.checked == false) {
|
||||||
|
notworkedcount = 0;
|
||||||
|
}
|
||||||
|
|
||||||
legend.onAdd = function(map) {
|
legend.onAdd = function(map) {
|
||||||
var div = L.DomUtil.create("div", "legend");
|
var div = L.DomUtil.create("div", "legend");
|
||||||
div.innerHTML += "<h4>Colors</h4>";
|
div.innerHTML += "<h4>Colors</h4>";
|
||||||
div.innerHTML += '<i style="background: green"></i><span>Confirmed ('+confirmed+')</span><br>';
|
div.innerHTML += '<i style="background: green"></i><span>Confirmed ('+confirmedcount+')</span><br>';
|
||||||
div.innerHTML += '<i style="background: orange"></i><span>Worked not confirmed ('+workednotconfirmed+')</span><br>';
|
div.innerHTML += '<i style="background: orange"></i><span>Worked not confirmed ('+workednotconfirmedcount+')</span><br>';
|
||||||
div.innerHTML += '<i style="background: red"></i><span>Not worked ('+notworked+')</span><br>';
|
div.innerHTML += '<i style="background: red"></i><span>Not worked ('+notworkedcount+')</span><br>';
|
||||||
return div;
|
return div;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -114,6 +108,34 @@ function load_dxcc_map2(data) {
|
||||||
map.setView([20, 0], 2);
|
map.setView([20, 0], 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function addMarker(L, D, mapColor, map) {
|
||||||
|
const markerHtmlStyles = `
|
||||||
|
background-color: ${mapColor};
|
||||||
|
width: 1rem;
|
||||||
|
height: 1rem;
|
||||||
|
display: block;
|
||||||
|
position: relative;
|
||||||
|
border-radius: 3rem 3rem 0;
|
||||||
|
transform: rotate(45deg);
|
||||||
|
border: 1px solid #FFFFFF`
|
||||||
|
|
||||||
|
const icon = L.divIcon({
|
||||||
|
className: "my-custom-pin",
|
||||||
|
iconAnchor: [0, 24],
|
||||||
|
labelAnchor: [-6, 0],
|
||||||
|
popupAnchor: [0, -36],
|
||||||
|
html: `<span style="${markerHtmlStyles}" />`
|
||||||
|
})
|
||||||
|
|
||||||
|
L.marker(
|
||||||
|
[D['lat'], D['long']], {
|
||||||
|
icon: icon,
|
||||||
|
adif: D['adif'],
|
||||||
|
title: D['prefix'] + ' - ' + D['name'],
|
||||||
|
}
|
||||||
|
).addTo(map).on('click', onClick);
|
||||||
|
}
|
||||||
|
|
||||||
function onClick(e) {
|
function onClick(e) {
|
||||||
var marker = e.target;
|
var marker = e.target;
|
||||||
displayContacts(marker.options.adif, $('#band2').val(), $('#mode').val(), 'DXCC2');
|
displayContacts(marker.options.adif, $('#band2').val(), $('#mode').val(), 'DXCC2');
|
||||||
|
|
|
||||||
正在加载…
在新工单中引用