""" Fallback quiz-spørsmål for når AI-modeller ikke er tilgjengelige Organisert etter tema og språk """ FALLBACK_QUESTIONS = { "no": { # Norske spørsmål "norsk historie": [ { "spørsmål": "Hvilket år ble Norge selvstendig fra Danmark?", "alternativer": ["1814", "1815", "1813", "1816"], "korrekt_svar": 0, "forklaring": "Norge ble selvstendig fra Danmark i 1814 etter Napoleonskrigene." }, { "spørsmål": "Hvem var Norges første konge etter selvstendigheten i 1814?", "alternativer": ["Christian Frederik", "Karl Johan", "Oscar I", "Haakon VII"], "korrekt_svar": 0, "forklaring": "Christian Frederik ble valgt til konge av den norske riksforsamlingen på Eidsvoll i 1814." }, { "spørsmål": "Hvilket år fikk kvinner stemmerett i Norge?", "alternativer": ["1913", "1915", "1910", "1920"], "korrekt_svar": 0, "forklaring": "Kvinner fikk stemmerett i Norge i 1913, som et av de første landene i verden." } ], "oslo": [ { "spørsmål": "Hva heter Oslo kommunes rådhus?", "alternativer": ["Oslo rådhus", "Akershus festning", "Stortinget", "Slottet"], "korrekt_svar": 0, "forklaring": "Oslo rådhus er kjent for sin karakteristiske arkitektur og er stedet hvor Nobels fredspris deles ut." }, { "spørsmål": "Hvilken øy i Oslofjorden er mest kjent for sine museer?", "alternativer": ["Bygdøy", "Hovedøya", "Gressholmen", "Langøyene"], "korrekt_svar": 0, "forklaring": "Bygdøy har flere av Norges viktigste museer, inkludert Vikingskipshuset og Kon-Tiki museet." }, { "spørsmål": "Hva heter Oslos hovedgate for shopping?", "alternativer": ["Karl Johans gate", "Storgata", "Grensen", "Torggata"], "korrekt_svar": 0, "forklaring": "Karl Johans gate strekker seg fra Jernbanetorget til Det kongelige slott og er Oslos hovedstrøk." } ], "bergen": [ { "spørsmål": "Hva kalles det fargerike kaiområdet i Bergen?", "alternativer": ["Bryggen", "Fisketorget", "Torgallmenningen", "Nordnes"], "korrekt_svar": 0, "forklaring": "Bryggen er UNESCOs verdensarvsted og består av fargerike trebygninger fra hansatiden." }, { "spørsmål": "Hvilket fjell kan du ta Fløibanen opp til?", "alternativer": ["Fløyen", "Ulriken", "Løvstakken", "Sandviksfjellet"], "korrekt_svar": 0, "forklaring": "Fløibanen er en av Norges mest populære turistattraksjoner og tar deg opp til Fløyen." }, { "spørsmål": "Bergen er kjent som 'Porten til' hva?", "alternativer": ["Fjordene", "Vestlandet", "Hardanger", "Sognefjorden"], "korrekt_svar": 0, "forklaring": "Bergen kalles 'Porten til fjordene' fordi den er utgangspunkt for mange fjordturer." } ] }, "en": { # English questions "norwegian history": [ { "spørsmål": "When did Norway gain independence from Denmark?", "alternativer": ["1814", "1815", "1813", "1816"], "korrekt_svar": 0, "forklaring": "Norway gained independence from Denmark in 1814 after the Napoleonic Wars." }, { "spørsmål": "Who was Norway's first king after independence in 1814?", "alternativer": ["Christian Frederik", "Karl Johan", "Oscar I", "Haakon VII"], "korrekt_svar": 0, "forklaring": "Christian Frederik was elected king by the Norwegian constituent assembly at Eidsvoll in 1814." } ], "oslo": [ { "spørsmål": "What is the name of Oslo's city hall?", "alternativer": ["Oslo City Hall", "Akershus Fortress", "Parliament", "Royal Palace"], "korrekt_svar": 0, "forklaring": "Oslo City Hall is known for its distinctive architecture and hosts the Nobel Peace Prize ceremony." }, { "spørsmål": "Which island in the Oslo fjord is most famous for its museums?", "alternativer": ["Bygdøy", "Hovedøya", "Gressholmen", "Langøyene"], "korrekt_svar": 0, "forklaring": "Bygdøy houses several of Norway's most important museums, including the Viking Ship Museum." } ], "bergen": [ { "spørsmål": "What is the colorful wharf area in Bergen called?", "alternativer": ["Bryggen", "Fish Market", "Torgallmenningen", "Nordnes"], "korrekt_svar": 0, "forklaring": "Bryggen is a UNESCO World Heritage site consisting of colorful wooden buildings from the Hanseatic period." } ] } } def get_fallback_questions(tema: str, språk: str = "no", antall: int = 5): """ Hent fallback-spørsmål for et gitt tema og språk Args: tema: Tema for spørsmålene (f.eks. "oslo", "bergen", "norsk historie") språk: Språkkode ("no" eller "en") antall: Antall spørsmål å returnere Returns: Liste med quiz-spørsmål """ # Normaliser tema til lowercase tema_key = tema.lower().strip() # Sjekk om språk finnes if språk not in FALLBACK_QUESTIONS: språk = "no" # Default til norsk # Sjekk om tema finnes for språket if tema_key not in FALLBACK_QUESTIONS[språk]: # Prøv å finne lignende tema available_topics = list(FALLBACK_QUESTIONS[språk].keys()) # Enkel matching for vanlige varianter tema_mapping = { "oslo": ["oslo", "oslo kommune", "hovedstad"], "bergen": ["bergen", "bergen kommune"], "norsk historie": ["norsk historie", "historie", "norway history", "norwegian history"] } for standard_tema, variants in tema_mapping.items(): if any(variant in tema_key for variant in variants): tema_key = standard_tema break # Hvis fortsatt ikke funnet, bruk første tilgjengelige tema if tema_key not in FALLBACK_QUESTIONS[språk]: tema_key = available_topics[0] if available_topics else "oslo" # Hent spørsmål questions = FALLBACK_QUESTIONS[språk].get(tema_key, []) # Begrens antall spørsmål if len(questions) > antall: questions = questions[:antall] return questions def get_available_topics(språk: str = "no"): """ Hent liste over tilgjengelige temaer for et språk Args: språk: Språkkode ("no" eller "en") Returns: Liste med tilgjengelige temaer """ if språk not in FALLBACK_QUESTIONS: språk = "no" return list(FALLBACK_QUESTIONS[språk].keys()) def get_topic_info(tema: str, språk: str = "no"): """ Hent informasjon om et tema Args: tema: Tema å få info om språk: Språkkode Returns: Dict med tema-informasjon """ tema_key = tema.lower().strip() if språk not in FALLBACK_QUESTIONS: språk = "no" if tema_key not in FALLBACK_QUESTIONS[språk]: return None questions = FALLBACK_QUESTIONS[språk][tema_key] return { "tema": tema_key, "språk": språk, "antall_spørsmål": len(questions), "tilgjengelig": True }