]> git.openstreetmap.org Git - nominatim.git/blobdiff - nominatim/api/types.py
Merge pull request #3383 from lonvia/window-searches
[nominatim.git] / nominatim / api / types.py
index 3ca023e7bbe1c7dce2a82a8b510c248a029d8721..e93015fcd0a8ce9cbfa67b2cb602674695b4bb11 100644 (file)
@@ -316,7 +316,7 @@ class DataLayer(enum.Flag):
         for reverse and forward search.
     """
     ADDRESS = enum.auto()
         for reverse and forward search.
     """
     ADDRESS = enum.auto()
-    """ The address layer contains all places relavant for addresses:
+    """ The address layer contains all places relevant for addresses:
         fully qualified addresses with a house number (or a house name equivalent,
         for some addresses) and places that can be part of an address like
         roads, cities, states.
         fully qualified addresses with a house number (or a house name equivalent,
         for some addresses) and places that can be part of an address like
         roads, cities, states.
@@ -415,7 +415,7 @@ class LookupDetails:
         more the geometry gets simplified.
     """
     locales: Locales = Locales()
         more the geometry gets simplified.
     """
     locales: Locales = Locales()
-    """ Prefered languages for localization of results.
+    """ Preferred languages for localization of results.
     """
 
     @classmethod
     """
 
     @classmethod
@@ -538,11 +538,13 @@ class SearchDetails(LookupDetails):
                 or (self.bounded_viewbox
                     and self.viewbox is not None and self.near is not None
                     and self.viewbox.contains(self.near))
                 or (self.bounded_viewbox
                     and self.viewbox is not None and self.near is not None
                     and self.viewbox.contains(self.near))
-                or self.layers is not None and not self.layers)
+                or (self.layers is not None and not self.layers)
+                or (self.max_rank <= 4 and
+                    self.layers is not None and not self.layers & DataLayer.ADDRESS))
 
 
     def layer_enabled(self, layer: DataLayer) -> bool:
 
 
     def layer_enabled(self, layer: DataLayer) -> bool:
-        """ Check if the given layer has been choosen. Also returns
+        """ Check if the given layer has been chosen. Also returns
             true when layer restriction has been disabled completely.
         """
         return self.layers is None or bool(self.layers & layer)
             true when layer restriction has been disabled completely.
         """
         return self.layers is None or bool(self.layers & layer)