diff --git a/assets/layers/filters/filters.json b/assets/layers/filters/filters.json
index 5673e569d..2817460c2 100644
--- a/assets/layers/filters/filters.json
+++ b/assets/layers/filters/filters.json
@@ -303,6 +303,57 @@
"osmTags": "service:electricity=yes"
}
]
+ },
+ {
+ "id": "sugar_free",
+ "options": [
+ {
+ "question": {
+ "en": "Has a sugar-free offering"
+ },
+ "osmTags": {
+ "or": [
+ "diet:sugar_free=yes",
+ "diet:sugar_free=only",
+ "diet:sugar_free=limited"
+ ]
+ }
+ }
+ ]
+ },
+ {
+ "id": "gluten_free",
+ "options": [
+ {
+ "question": {
+ "en": "Has a gluten free offering"
+ },
+ "osmTags": {
+ "or": [
+ "diet:gluten_free=yes",
+ "diet:gluten_free=only",
+ "diet:gluten_free=limited"
+ ]
+ }
+ }
+ ]
+ },
+ {
+ "id": "lactose_free",
+ "options": [
+ {
+ "question": {
+ "en": "Has a lactose free offering"
+ },
+ "osmTags": {
+ "or": [
+ "diet:lactose_free=yes",
+ "diet:lactose_free=only",
+ "diet:lactose_free=limited"
+ ]
+ }
+ }
+ ]
}
]
}
diff --git a/assets/layers/food/food.json b/assets/layers/food/food.json
index 642274525..1eec4aeda 100644
--- a/assets/layers/food/food.json
+++ b/assets/layers/food/food.json
@@ -719,6 +719,9 @@
"condition": "cuisine!=friture",
"id": "halal (no friture)"
},
+ "sugar_free",
+ "gluten_free",
+ "lactose_free",
{
"id": "organic (no friture)",
"question": {
@@ -1105,6 +1108,9 @@
]
},
"has_organic",
+ "sugar_free",
+ "gluten_free",
+ "lactose_free",
"accepts_cash",
"accepts_cards",
"dogs"
diff --git a/assets/layers/questions/questions.json b/assets/layers/questions/questions.json
index 21b6b96d5..764010735 100644
--- a/assets/layers/questions/questions.json
+++ b/assets/layers/questions/questions.json
@@ -2396,6 +2396,105 @@
}
}
]
+ },
+ {
+ "id": "sugar_free",
+ "question": {
+ "en": "Does this shop have a sugar free offering?"
+ },
+ "questionHint": {
+ "en": "This is important for people following a sugar-free diet, such as people with Diabetes"
+ },
+ "mappings": [
+ {
+ "if": "diet:sugar_free=only",
+ "then": {
+ "en": "This shop only sells sugar free products"
+ }
+ },
+ {
+ "if": "diet:sugar_free=yes",
+ "then": {
+ "en": "This shop has a big sugar free offering"
+ }
+ },
+ {
+ "if": "diet:sugar_free=limited",
+ "then": {
+ "en": "This shop has a limited sugar free offering"
+ }
+ },
+ {
+ "if": "diet:sugar_free=no",
+ "then": {
+ "en": "This shop has no sugar free offering"
+ }
+ }
+ ]
+ },
+ {
+ "id": "lactose_free",
+ "question": {
+ "en": "Does {title()} have a lactose-free offering?"
+ },
+ "mappings": [
+ {
+ "if": "diet:lactose_free=only",
+ "then": {
+ "en": "Only sells lactose free products"
+ }
+ },
+ {
+ "if": "diet:lactose_free=yes",
+ "then": {
+ "en": "Big lactose free offering"
+ }
+ },
+ {
+ "if": "diet:lactose_free=limited",
+ "then": {
+ "en": "Limited lactose free offering"
+ }
+ },
+ {
+ "if": "diet:lactose_free=no",
+ "then": {
+ "en": "No lactose free offering"
+ }
+ }
+ ]
+ },
+ {
+ "id": "gluten_free",
+ "question": {
+ "en": "Does this shop have a gluten free offering?"
+ },
+ "mappings": [
+ {
+ "if": "diet:gluten_free=only",
+ "then": {
+ "en": "This shop only sells gluten free products"
+ }
+ },
+ {
+ "if": "diet:gluten_free=yes",
+ "then": {
+ "en": "This shop has a big gluten free offering"
+ }
+ },
+ {
+ "if": "diet:gluten_free=limited",
+ "then": {
+ "en": "This shop has a limited gluten free offering"
+ }
+ },
+ {
+ "if": "diet:gluten_free=no",
+ "then": {
+ "en": "This shop has no gluten free offering"
+ }
+ }
+ ]
}
]
}
diff --git a/assets/layers/shops/shops.json b/assets/layers/shops/shops.json
index ee0cf2bc1..a5109f6b5 100644
--- a/assets/layers/shops/shops.json
+++ b/assets/layers/shops/shops.json
@@ -142,6 +142,41 @@
"condition": "craft="
}
},
+ {
+ "id": "second_hand",
+ "question": {
+ "en": "Does this shop sell second-hand items?"
+ },
+ "mappings": [
+ {
+ "if": "second_hand=only",
+ "then": "This shop sells second-hand items only"
+ },
+ {
+ "if": "second_hand=yes",
+ "then": "This shop sells second-hand items along with new items"
+ },
+ {
+ "if": "second_hand=no",
+ "then": "This shop only sells brand-new items"
+ }
+ ],
+ "condition": {
+ "or": [
+ "shop=clothes",
+ "shop=car",
+ "shop=books",
+ "shop=charity",
+ "shop=car_repair",
+ "shop=furniture",
+ "shop=bicycle",
+ "shop=bicycle",
+ "shop=mobile_phone",
+ "shop=computer",
+ "shop=toys"
+ ]
+ }
+ },
"opening_hours",
"website",
"email",
@@ -287,6 +322,32 @@
]
}
},
+ {
+ "builtin": [
+ "sugar_free",
+ "gluten_free",
+ "lactose_free"
+ ],
+ "override": {
+ "condition": {
+ "or": [
+ "shop=supermarket",
+ "shop=convenience",
+ "shop=farm",
+ "shop=greengrocer",
+ "shop=health_food",
+ "shop=deli",
+ "shop=bakery",
+ "shop=beverages",
+ "shop=beverages",
+ "shop=pastry",
+ "shop=chocolate",
+ "shop=frozen_food",
+ "shop=ice_cream"
+ ]
+ }
+ }
+ },
"questions",
"reviews"
],
@@ -456,6 +517,32 @@
},
"accepts_cash",
"accepts_cards",
- "has_organic"
+ "has_organic",
+ {
+ "id": "second_hand",
+ "options": [
+ {
+ "question": {
+ "en": "Only show shops selling second-hand items"
+ },
+ "osmTags": {
+ "or": [
+ "shop=second_hand",
+ "shop=charity",
+ "second_hand=yes",
+ "second_hand=only"
+ ]
+ }
+ }
+ ],
+ "condition": {
+ "and": [
+ "shop!=second_hand"
+ ]
+ }
+ },
+ "sugar_free",
+ "gluten_free",
+ "lactose_free"
]
}