SMEDDJKY7PW7FWSG4QEWPAZBQK3SA3MK6JXG5XLF7MTPY23CBYIAC
document
.getElementById('descrmap')
?.addEventListener('keyup', async (e: KeyboardEvent) => {
if (e.key == 'Shift') {
if($communaute) {
delete $communaute.isMoving;
checkRayon($communaute, derogationRayonKm() * 1000)
save()
}
invalidDrag = false
initialCentre = null
}
})
map.on('keyup', async (e: KeyboardEvent) => {
console.log("KEYUP", e);
if (e.originalEvent.key == 'Shift') {
if($communaute) {
delete $communaute.isMoving;
checkRayon($communaute, derogationRayonKm() * 1000)
save()
}
console.log("invalidDrag");
invalidDrag = false
initialCentre = null
}
})
if(e.originalEvent.shiftKey) {
// Déplacer/ajouter la communauté
if($communaute?.circle) {
if(checkDistance(e.latlng, $communaute.compteurs ?? [], derogationRayonKm() * 1000)) {
$communaute.circle.setLatLng(e.latlng)
$communaute.lat = e.latlng.lat
$communaute.lng = e.latlng.lng
}
} else {
if(!$communaute) {
$communaute = { lat: e.latlng.lat, lng: e.latlng.lng, derogation: derogation }
}
circleOpts.radius = derogationRayonKm() * 1000;
$communaute!.circle = L.circle(
e.latlng,
circleOpts
)
$communaute!.circle.addTo(map)
}
checkRayon($communaute!, derogationRayonKm() * 1000)
save()
} else {
if(!$communaute) {
if(!$communaute) {
function checkDistance(
e: { lat: number; lng: number },
compteurs: { lat: number, lng: number }[],
d: number
): boolean {
for (let v of compteurs) {
function reset() {
if (!$communaute || !map) {
return
}
$communaute.circle.removeFrom(map)
for(let m of $communaute?.compteurs || []) {
m.dot.removeFrom(map);
}
$communaute = null
}
function checkDistance(
e: { lat: number; lng: number },
compteurs: { lat: number, lng: number }[],
d: number
): boolean {
for (let v of compteurs) {
async function geocoding(e: Event) {
e.preventDefault()
function diff(a: string, b: string): number {
const m = a.length, n = b.length;
const dp = Array(m + 1).fill(0).map(() => Array(n + 1).fill(0));
dp[0] = dp[0].map((_, j) => j);
dp.forEach((row, i) => row[0] = i);
for (let i = 1; i <= m; i++) {
for (let j = 1; j <= n; j++) {
if (a[i - 1] === b[j - 1]) {
dp[i][j] = dp[i - 1][j - 1];
} else {
dp[i][j] = 1 + Math.min(dp[i - 1][j], dp[i][j - 1], dp[i - 1][j - 1]);
}
}
}
return dp[m][n];
}
async function geocoding(e: Event) {
e.preventDefault()