from pathlib import Path BASE_DIR = Path(__file__).parent.parent BOUNDARIES_DIR = BASE_DIR / "data" / "boundaries" VG250_DIR = BOUNDARIES_DIR / "vg250" NE_DIR = BOUNDARIES_DIR / "natural_earth" CACHE_DIR = BASE_DIR / "data" / "species_cache" PERIODS = [ (2006, 2009, "2006–2009"), (2010, 2013, "2010–2013"), (2014, 2017, "2014–2017"), (2018, 2021, "2018–2021"), (2022, 2025, "2022–2025"), ] CURRENT_YEAR = 2026 YEAR_FROM = 2006 HIST_YEAR_TO = CURRENT_YEAR - 1 # last year included in on-disk cache SCOPE_OPTIONS = { "Gemeinden (DE)": "gemeinden", "Kreise (DE)": "kreise", "Bundesländer (DE)": "bundeslaender", "Admin-1 (Welt)": "admin1", "Länder (Welt)": "countries", } UNIT_NAME_COL = { "gemeinden": "GEN", "kreise": "GEN", "bundeslaender": "GEN", "admin1": "name", "countries": "NAME", } AGS_TO_BUNDESLAND = { "01": "Schleswig-Holstein", "02": "Hamburg", "03": "Niedersachsen", "04": "Bremen", "05": "Nordrhein-Westfalen", "06": "Hessen", "07": "Rheinland-Pfalz", "08": "Baden-Württemberg", "09": "Bayern", "10": "Saarland", "11": "Berlin", "12": "Brandenburg", "13": "Mecklenburg-Vorpommern", "14": "Sachsen", "15": "Sachsen-Anhalt", "16": "Thüringen", } BUNDESLAENDER_LIST = sorted(AGS_TO_BUNDESLAND.values()) EUROPEAN_COUNTRIES = { "Albanien": "AL", "Andorra": "AD", "Belgien": "BE", "Bosnien und Herzegowina": "BA", "Bulgarien": "BG", "Dänemark": "DK", "Deutschland": "DE", "Estland": "EE", "Finnland": "FI", "Frankreich": "FR", "Griechenland": "GR", "Irland": "IE", "Island": "IS", "Italien": "IT", "Kosovo": "XK", "Kroatien": "HR", "Lettland": "LV", "Liechtenstein": "LI", "Litauen": "LT", "Luxemburg": "LU", "Malta": "MT", "Moldau": "MD", "Monaco": "MC", "Montenegro": "ME", "Niederlande": "NL", "Nordmazedonien": "MK", "Norwegen": "NO", "Österreich": "AT", "Polen": "PL", "Portugal": "PT", "Rumänien": "RO", "San Marino": "SM", "Schweden": "SE", "Schweiz": "CH", "Serbien": "RS", "Slowakei": "SK", "Slowenien": "SI", "Spanien": "ES", "Tschechien": "CZ", "Türkei": "TR", "Ukraine": "UA", "Ungarn": "HU", "Vereinigtes Königreich": "GB", "Weißrussland": "BY", "Zypern": "CY", } BKG_FILES = { "gemeinden": "VG250_GEM.shp", "kreise": "VG250_KRS.shp", "bundeslaender": "VG250_LAN.shp", } NE_FILES = { "countries": "ne_10m_admin_0_countries.shp", "admin1": "ne_10m_admin_1_states_provinces.shp", } MAP_CENTER = { "gemeinden": (51.2, 10.4), "kreise": (51.2, 10.4), "bundeslaender": (51.2, 10.4), "admin1": (20.0, 0.0), "countries": (20.0, 0.0), } MAP_ZOOM = { "gemeinden": 6, "kreise": 6, "bundeslaender": 6, "admin1": 2, "countries": 2, } GBIF_PAGE_SIZE = 300 GBIF_MAX_OFFSET = 99_700