1
0
Fork 0
mirror of https://github.com/seanmorley15/AdventureLog.git synced 2025-07-27 08:49:36 +02:00

Merge pull request #422 from seanmorley15/development

Fix 'secure' cookie on http
This commit is contained in:
Sean Morley 2024-12-29 20:47:50 -05:00 committed by GitHub
commit 66ce80226e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 50 additions and 48 deletions

View file

@ -23,7 +23,7 @@ export const authHook: Handle = async ({ event, resolve }) => {
if (!userFetch.ok) { if (!userFetch.ok) {
event.locals.user = null; event.locals.user = null;
event.cookies.delete('sessionid', { path: '/' }); event.cookies.delete('sessionid', { path: '/', secure: event.url.protocol === 'https:' });
return await resolve(event); return await resolve(event);
} }
@ -47,19 +47,19 @@ export const authHook: Handle = async ({ event, resolve }) => {
path: '/', path: '/',
httpOnly: true, httpOnly: true,
sameSite: 'lax', sameSite: 'lax',
secure: true, secure: event.url.protocol === 'https:',
expires: expiryDate expires: expiryDate
}); });
} }
} }
} else { } else {
event.locals.user = null; event.locals.user = null;
event.cookies.delete('sessionid', { path: '/' }); event.cookies.delete('sessionid', { path: '/', secure: event.url.protocol === 'https:' });
} }
} catch (error) { } catch (error) {
console.error('Error in authHook:', error); console.error('Error in authHook:', error);
event.locals.user = null; event.locals.user = null;
event.cookies.delete('sessionid', { path: '/' }); event.cookies.delete('sessionid', { path: '/', secure: event.url.protocol === 'https:' });
} }
return await resolve(event); return await resolve(event);

View file

@ -1,9 +1,10 @@
{ {
"about": { "about": {
"about": "Om", "about": "Om",
"close": "Nära", "close": "Stäng",
"license": "Licensierad under GPL-3.0-licensen.", "license": "Licensierad under GPL-3.0-licensen.",
"message": "Tillverkad med ❤️ i USA.", "message": "Skapat med ❤️ i USA.",
"nominatim_1": "Platssökning och geokodning tillhandahålls av", "nominatim_1": "Platssökning och geokodning tillhandahålls av",
"nominatim_2": "Deras data är licensierad under ODbL-licensen.", "nominatim_2": "Deras data är licensierad under ODbL-licensen.",
"oss_attributions": "Tillskrivningar med öppen källkod", "oss_attributions": "Tillskrivningar med öppen källkod",
@ -80,12 +81,12 @@
"not_found_desc": "Äventyret du letade efter kunde inte hittas. \nProva ett annat äventyr eller kom tillbaka senare.", "not_found_desc": "Äventyret du letade efter kunde inte hittas. \nProva ett annat äventyr eller kom tillbaka senare.",
"open_details": "Öppna Detaljer", "open_details": "Öppna Detaljer",
"open_filters": "Öppna filter", "open_filters": "Öppna filter",
"order_by": "Beställ efter", "order_by": "Sortera efter",
"order_direction": "Beställ riktning", "order_direction": "Sorteringsriktning",
"planned": "Planerad", "planned": "Planerade",
"private": "Privat", "private": "Privat",
"public": "Offentlig", "public": "Offentlig",
"rating": "Gradering", "rating": "Betyg",
"remove_from_collection": "Ta bort från samlingen", "remove_from_collection": "Ta bort från samlingen",
"share": "Dela", "share": "Dela",
"sort": "Sortera", "sort": "Sortera",
@ -93,7 +94,7 @@
"unarchive": "Avarkivera", "unarchive": "Avarkivera",
"unarchived_collection_message": "Samlingen har tagits bort från arkivet!", "unarchived_collection_message": "Samlingen har tagits bort från arkivet!",
"visit": "Besök", "visit": "Besök",
"visited": "Besökte", "visited": "Besökta",
"visits": "Besök", "visits": "Besök",
"image_removed_error": "Det gick inte att ta bort bilden", "image_removed_error": "Det gick inte att ta bort bilden",
"image_removed_success": "Bilden har tagits bort!", "image_removed_success": "Bilden har tagits bort!",
@ -153,12 +154,12 @@
"all": "Alla", "all": "Alla",
"error_updating_regions": "Fel vid uppdatering av regioner", "error_updating_regions": "Fel vid uppdatering av regioner",
"mark_region_as_visited": "Markera region {region}, {country} som besökt?", "mark_region_as_visited": "Markera region {region}, {country} som besökt?",
"mark_visited": "Mark besökte", "mark_visited": "Markera som besökt",
"my_adventures": "Mina äventyr", "my_adventures": "Mina äventyr",
"no_adventures_found": "Inga äventyr hittades", "no_adventures_found": "Inga äventyr hittades",
"no_collections_found": "Inga samlingar hittades att lägga till detta äventyr till.", "no_collections_found": "Inga samlingar hittades att lägga till detta äventyr till.",
"no_linkable_adventures": "Inga äventyr hittades som kan kopplas till denna samling.", "no_linkable_adventures": "Inga äventyr hittades som kan kopplas till denna samling.",
"not_visited": "Ej besökt", "not_visited": "Ej besökta",
"regions_updated": "regioner uppdaterade", "regions_updated": "regioner uppdaterade",
"update_visited_regions": "Uppdatera besökta regioner", "update_visited_regions": "Uppdatera besökta regioner",
"update_visited_regions_disclaimer": "Detta kan ta ett tag beroende på antalet äventyr du har besökt.", "update_visited_regions_disclaimer": "Detta kan ta ett tag beroende på antalet äventyr du har besökt.",
@ -223,29 +224,29 @@
"feature_1": "Reselogg", "feature_1": "Reselogg",
"feature_1_desc": "Håll koll på dina äventyr med en personlig reselogg och dela dina upplevelser med vänner och familj.", "feature_1_desc": "Håll koll på dina äventyr med en personlig reselogg och dela dina upplevelser med vänner och familj.",
"feature_2": "Reseplanering", "feature_2": "Reseplanering",
"feature_2_desc": "Skapa enkelt anpassade resplaner och få en uppdelning av din resa dag för dag.", "feature_2_desc": "Skapa enkelt skräddarsydda resplaner och få en översikt över din resa, dag för dag.",
"feature_3": "Resekarta", "feature_3": "Resekarta",
"feature_3_desc": "Se dina resor över hela världen med en interaktiv karta och utforska nya destinationer.", "feature_3_desc": "Se dina resor över hela världen med en interaktiv karta och utforska nya destinationer.",
"go_to": "Gå till AdventureLog", "go_to": "Gå till AdventureLog",
"hero_1": "Upptäck världens mest spännande äventyr", "hero_1": "Upptäck världens mest spännande äventyr",
"hero_2": "Upptäck och planera ditt nästa äventyr med AdventureLog. \nUtforska hisnande destinationer, skapa anpassade resplaner och håll kontakten när du är på språng.", "hero_2": "Upptäck och planera ditt nästa äventyr med AdventureLog. \nUtforska hisnande destinationer, skapa anpassade resplaner och håll kontakten när du är på språng.",
"key_features": "Nyckelfunktioner" "key_features": "Viktiga funktioner"
}, },
"navbar": { "navbar": {
"about": "Om AdventureLog", "about": "Om AdventureLog",
"adventures": "Äventyr", "adventures": "Äventyr",
"collections": "Samlingar", "collections": "Samlingar",
"discord": "Disharmoni", "discord": "Discord",
"documentation": "Dokumentation", "documentation": "Dokumentation",
"greeting": "Hej", "greeting": "Hej",
"logout": "Utloggning", "logout": "Logga ut",
"map": "Karta", "map": "Karta",
"my_adventures": "Mina äventyr", "my_adventures": "Mina äventyr",
"profile": "Profil", "profile": "Profil",
"search": "Söka", "search": "Sök",
"settings": "Inställningar", "settings": "Inställningar",
"shared_with_me": "Delade med mig", "shared_with_me": "Delade med mig",
"theme_selection": "Temaval", "theme_selection": "Tema",
"themes": { "themes": {
"aqua": "Aqua", "aqua": "Aqua",
"dark": "Mörk", "dark": "Mörk",
@ -259,21 +260,21 @@
"users": "Användare", "users": "Användare",
"worldtravel": "Världsresor", "worldtravel": "Världsresor",
"my_tags": "Mina taggar", "my_tags": "Mina taggar",
"tag": "Märka", "tag": "Tagg",
"language_selection": "Språk", "language_selection": "Språk",
"support": "Stöd", "support": "Support",
"calendar": "Kalender" "calendar": "Kalender"
}, },
"worldtravel": { "worldtravel": {
"all": "Alla", "all": "Alla",
"all_subregions": "Alla underregioner", "all_subregions": "Alla underregioner",
"clear_search": "Rensa sökning", "clear_search": "Rensa sökning",
"completely_visited": "Helt besökt", "completely_visited": "Fullständigt besökta",
"country_list": "Lista över länder", "country_list": "Lista över länder",
"no_countries_found": "Inga länder hittades", "no_countries_found": "Inga länder hittades",
"not_visited": "Ej besökt", "not_visited": "Ej besökta",
"num_countries": "hittade länder", "num_countries": "länder hittades",
"partially_visited": "Delvis besökt" "partially_visited": "Delvis besökta"
}, },
"auth": { "auth": {
"confirm_password": "Bekräfta lösenord", "confirm_password": "Bekräfta lösenord",
@ -281,7 +282,7 @@
"first_name": "Förnamn", "first_name": "Förnamn",
"forgot_password": "Glömt lösenordet?", "forgot_password": "Glömt lösenordet?",
"last_name": "Efternamn", "last_name": "Efternamn",
"login": "Inloggning", "login": "Logga in",
"login_error": "Det går inte att logga in med de angivna uppgifterna.", "login_error": "Det går inte att logga in med de angivna uppgifterna.",
"password": "Lösenord", "password": "Lösenord",
"registration_disabled": "Registreringen är för närvarande inaktiverad.", "registration_disabled": "Registreringen är för närvarande inaktiverad.",
@ -307,25 +308,25 @@
"new_password": "Nytt lösenord", "new_password": "Nytt lösenord",
"no_email_set": "Ingen e-post inställd", "no_email_set": "Ingen e-post inställd",
"password_change": "Ändra lösenord", "password_change": "Ändra lösenord",
"settings_page": "Inställningssida", "settings_page": "Inställningar",
"update": "Uppdatera", "update": "Uppdatera",
"update_error": "Fel vid uppdatering av inställningar", "update_error": "Ett fel uppstod vid uppdatering av inställningar",
"update_success": "Inställningarna har uppdaterats!", "update_success": "Inställningarna har uppdaterats!",
"change_password": "Ändra lösenord", "change_password": "Ändra lösenord",
"invalid_token": "Token är ogiltig eller har gått ut", "invalid_token": "Token är ogiltig eller har gått ut",
"login_redir": "Du kommer då att omdirigeras till inloggningssidan.", "login_redir": "Du kommer då att omdirigeras till inloggningssidan.",
"missing_email": "Vänligen ange en e-postadress", "missing_email": "Vänligen ange en e-postadress",
"password_does_not_match": "Lösenord stämmer inte överens", "password_does_not_match": "Lösenorden stämmer inte överens",
"password_is_required": "Lösenord krävs", "password_is_required": "Lösenord krävs",
"possible_reset": "Om e-postadressen du angav är kopplad till ett konto kommer du att få ett e-postmeddelande med instruktioner för att återställa ditt lösenord!", "possible_reset": "Om e-postadressen du angav är kopplad till ett konto kommer du att få ett e-postmeddelande med instruktioner för att återställa ditt lösenord!",
"reset_password": "Återställ lösenord", "reset_password": "Återställ lösenord",
"submit": "Överlämna", "submit": "Skicka",
"token_required": "Token och UID krävs för lösenordsåterställning.", "token_required": "Token och UID krävs för lösenordsåterställning.",
"about_this_background": "Om denna bakgrund", "about_this_background": "Om denna bakgrund",
"join_discord": "Gå med i Discord", "join_discord": "Gå med i Discord",
"join_discord_desc": "för att dela dina egna foton. \nLägg upp dem i", "join_discord_desc": "för att dela dina egna foton. \nLägg upp dem i",
"photo_by": "Foto av", "photo_by": "Foto av",
"change_password_error": "Det går inte att ändra lösenord. \nOgiltigt nuvarande lösenord eller ogiltigt nytt lösenord.", "change_password_error": "Det gick inte att ändra lösenord. \nDet nuvarande eller det nya lösenordet är ogiltigt.",
"current_password": "Aktuellt lösenord", "current_password": "Aktuellt lösenord",
"password_change_lopout_warning": "Du kommer att loggas ut efter att du har ändrat ditt lösenord.", "password_change_lopout_warning": "Du kommer att loggas ut efter att du har ändrat ditt lösenord.",
"authenticator_code": "Autentiseringskod", "authenticator_code": "Autentiseringskod",
@ -371,19 +372,19 @@
}, },
"checklist": { "checklist": {
"add_item": "Lägg till objekt", "add_item": "Lägg till objekt",
"checklist_delete_error": "Fel vid borttagning av checklista", "checklist_delete_error": "Ett fel uppstod vid borttagning av checklista",
"checklist_deleted": "Checklistan har raderats!", "checklist_deleted": "Checklistan har raderats!",
"checklist_editor": "Checklista Editor", "checklist_editor": "Redigerare för checklistor",
"checklist_public": "Den här checklistan är offentlig eftersom den finns i en offentlig samling.", "checklist_public": "Den här checklistan är offentlig eftersom den finns i en offentlig samling.",
"editing_checklist": "Redigeringschecklista", "editing_checklist": "Redigerar checklista",
"failed_to_save": "Det gick inte att spara checklistan", "failed_to_save": "Det gick inte att spara checklistan",
"item": "Punkt", "item": "Punkt",
"item_already_exists": "Objektet finns redan", "item_already_exists": "Listobjektet finns redan",
"item_cannot_be_empty": "Objektet får inte vara tomt", "item_cannot_be_empty": "Listobjektet får inte vara tomt",
"items": "Föremål", "items": "Punkter",
"new_item": "Nytt föremål", "new_item": "Nytt föremål",
"save": "Spara", "save": "Spara",
"checklist_viewer": "Checklista Viewer", "checklist_viewer": "Se Checklista",
"new_checklist": "Ny checklista" "new_checklist": "Ny checklista"
}, },
"collection": { "collection": {
@ -392,18 +393,18 @@
"create": "Skapa", "create": "Skapa",
"edit_collection": "Redigera samling", "edit_collection": "Redigera samling",
"error_creating_collection": "Det gick inte att skapa samlingen", "error_creating_collection": "Det gick inte att skapa samlingen",
"error_editing_collection": "Fel vid redigering av samling", "error_editing_collection": "Ett fel uppstod vid redigering av samling",
"new_collection": "Ny samling", "new_collection": "Ny samling",
"public_collection": "Offentlig samling" "public_collection": "Offentlig samling"
}, },
"notes": { "notes": {
"add_a_link": "Lägg till en länk", "add_a_link": "Lägg till en länk",
"content": "Innehåll", "content": "Innehåll",
"editing_note": "Redigeringsanteckning", "editing_note": "Redigerar anteckning",
"failed_to_save": "Det gick inte att spara anteckningen", "failed_to_save": "Det gick inte att spara anteckningen",
"note_delete_error": "Det gick inte att ta bort anteckningen", "note_delete_error": "Det gick inte att ta bort anteckningen",
"note_deleted": "Anteckningen har raderats!", "note_deleted": "Anteckningen har raderats!",
"note_editor": "Note Editor", "note_editor": "Redigerare för anteckningar",
"note_public": "Den här anteckningen är offentlig eftersom den finns i en offentlig samling.", "note_public": "Den här anteckningen är offentlig eftersom den finns i en offentlig samling.",
"open": "Öppna", "open": "Öppna",
"save": "Spara", "save": "Spara",
@ -425,7 +426,7 @@
"bus": "Buss", "bus": "Buss",
"car": "Bil", "car": "Bil",
"other": "Andra", "other": "Andra",
"plane": "Plan", "plane": "Flygplan",
"train": "Tåg", "train": "Tåg",
"walking": "Gående" "walking": "Gående"
}, },
@ -463,7 +464,7 @@
"nl": "holländska", "nl": "holländska",
"sv": "svenska", "sv": "svenska",
"zh": "kinesiska", "zh": "kinesiska",
"pl": "polsk" "pl": "polska"
}, },
"share": { "share": {
"no_users_shared": "Inga användare delas med", "no_users_shared": "Inga användare delas med",
@ -475,13 +476,13 @@
"with": "med", "with": "med",
"go_to_settings": "Gå till inställningar", "go_to_settings": "Gå till inställningar",
"no_shared_found": "Inga samlingar hittades som delas med dig.", "no_shared_found": "Inga samlingar hittades som delas med dig.",
"set_public": "För att tillåta användare att dela med dig måste du ha din profil inställd på offentlig." "set_public": "För att tillåta användare att dela med dig måste du ha en offentlig profil."
}, },
"profile": { "profile": {
"member_since": "Medlem sedan dess", "member_since": "Medlem sedan",
"user_stats": "Användarstatistik", "user_stats": "Användarstatistik",
"visited_countries": "Besökta länder", "visited_countries": "Besökta länder",
"visited_regions": "Besökte regioner" "visited_regions": "Besökta regioner"
}, },
"categories": { "categories": {
"category_name": "Kategorinamn", "category_name": "Kategorinamn",

View file

@ -42,6 +42,7 @@ export const actions: Actions = {
credentials: 'include' credentials: 'include'
}); });
if (res.status == 401) { if (res.status == 401) {
event.cookies.delete('sessionid', { path: '/', secure: event.url.protocol === 'https:' });
return redirect(302, '/login'); return redirect(302, '/login');
} else { } else {
return redirect(302, '/'); return redirect(302, '/');

View file

@ -106,7 +106,7 @@ function handleSuccessfulLogin(event: RequestEvent<RouteParams, '/login'>, respo
path: '/', path: '/',
httpOnly: true, httpOnly: true,
sameSite: 'lax', sameSite: 'lax',
secure: true, secure: event.url.protocol === 'https:',
expires: new Date(expiryString) expires: new Date(expiryString)
}); });
} }

View file

@ -93,7 +93,7 @@ export const actions: Actions = {
path: '/', path: '/',
httpOnly: true, httpOnly: true,
sameSite: 'lax', sameSite: 'lax',
secure: true, secure: event.url.protocol === 'https:',
expires: expiryDate expires: expiryDate
}); });
} }