Fix associations

This commit is contained in:
pietervdvn 2021-01-04 16:02:54 +01:00
parent c2a2306d18
commit cc48d34804
3 changed files with 40 additions and 41 deletions

View file

@ -6,10 +6,9 @@ import {Utils} from "../Utils";
import CountryCoder from "latlon2country"
class SimpleMetaTagger {
private _f: (feature: any, index: number) => void;
public readonly keys: string[];
public readonly doc: string;
private _f: (feature: any, index: number) => void;
constructor(keys: string[], doc: string, f: ((feature: any, index: number) => void)) {
this.keys = keys;
@ -89,39 +88,39 @@ export default class MetaTagging {
if (tags.opening_hours === undefined || tags._country === undefined) {
return;
}
try{
const oh = new opening_hours(tags["opening_hours"], {
lat: tags._lat,
lon: tags._lon,
address: {
country_code: tags._country.toLowerCase()
}
}, {tag_key: "opening_hours"});
// AUtomatically triggered on the next change
try {
const oh = new opening_hours(tags["opening_hours"], {
lat: tags._lat,
lon: tags._lon,
address: {
country_code: tags._country.toLowerCase()
}
}, {tag_key: "opening_hours"});
// AUtomatically triggered on the next change
const updateTags = () => {
const oldValueIsOpen = tags["_isOpen"];
tags["_isOpen"] = oh.getState() ? "yes" : "no";
const comment = oh.getComment();
if (comment) {
tags["_isOpen:description"] = comment;
}
const oldValueIsOpen = tags["_isOpen"];
tags["_isOpen"] = oh.getState() ? "yes" : "no";
const comment = oh.getComment();
if (comment) {
tags["_isOpen:description"] = comment;
}
if (oldValueIsOpen !== tags._isOpen) {
tagsSource.ping();
}
if (oldValueIsOpen !== tags._isOpen) {
tagsSource.ping();
}
const nextChange = oh.getNextChange();
const nextChange = oh.getNextChange();
if (nextChange !== undefined) {
window.setTimeout(
updateTags,
(nextChange.getTime() - (new Date()).getTime())
)
window.setTimeout(
updateTags,
(nextChange.getTime() - (new Date()).getTime())
)
}
}
}
updateTags();
}catch(e){
console.error(e);
updateTags();
} catch (e) {
console.error("Error while parsing opening hours of ", tags.id, e);
tags["_isOpen"] = "parse_error";
}
@ -234,8 +233,8 @@ export default class MetaTagging {
let carWidthUsed = (onewayCar ? 1 : 2) * carWidth;
properties["_width:needed:cars"] = Utils.Round(carWidthUsed);
properties["_width:needed:parking"] = Utils.Round(parallelParkingCount * carWidth)
let cyclistWidthUsed = 0;
if (cyclingAllowed) {
cyclistWidthUsed = (onewayBike ? 1 : 2) * cyclistWidth;
@ -250,16 +249,16 @@ export default class MetaTagging {
carWidthUsed +
cyclistWidthUsed +
parallelParkingCount * carWidthUsed;
properties["_width:needed:no_pedestrians"] =Utils.Round(targetWidthIgnoringPedestrians);
properties["_width:needed:no_pedestrians"] = Utils.Round(targetWidthIgnoringPedestrians);
const pedestriansNeed = Math.max(0, pedestrianFlowNeeded) * pedestrianWidth;
const targetWidth = targetWidthIgnoringPedestrians + pedestriansNeed ;
const targetWidth = targetWidthIgnoringPedestrians + pedestriansNeed;
properties["_width:needed"] = Utils.Round(targetWidth);
properties["_width:needed:pedestrians"] = Utils.Round(pedestriansNeed)
properties["_width:difference"] = Utils.Round(targetWidth - width );
properties["_width:difference:no_pedestrians"] = Utils.Round(targetWidthIgnoringPedestrians - width) ;
properties["_width:difference"] = Utils.Round(targetWidth - width);
properties["_width:difference:no_pedestrians"] = Utils.Round(targetWidthIgnoringPedestrians - width);
}
);

View file

@ -25,7 +25,7 @@ export default class State {
// The singleton of the global state
public static state: State;
public static vNumber = "0.2.6b";
public static vNumber = "0.2.6c";
// The user journey states thresholds when a new feature gets unlocked
public static userJourney = {

View file

@ -11,9 +11,9 @@
"or": [
"theme~cycling|bicycle",
"sport=cycling",
"association=cycling|bicycle",
"ngo=cycling|bicycle",
"club=bicycle|cycling"
"association~cycling|bicycle",
"ngo~cycling|bicycle",
"club~bicycle|cycling"
]
},
"title": {