webForumDet fria alternativet

Utloggad i poup, FormsAuthentication

8 svar · 628 visningar · startad av ironhead

ironheadMedlem sedan mars 20011 346 inlägg
#1

Hej!

Jag har gjort några sidor som använder FormsAuthentication som inloggning.
I dessa sidor finns det popup-fönster. Det som händer är att om användaren blir utloggad, så blir användaren omdirigerad till loginsidan, men inuti popupfönstret. Jag vill såklart stänga popupfönstret först, sedan en redirect till loginsidan.

Finns det nåt sätt man kan se om användaren har blivit utloggad?

Dim Login As New FormsAuthenticationTicket(UserID, False, 20)
emissionMedlem sedan dec. 19996 721 inlägg
#2

Du får se till att loginsidan flyttar ner sig själv, mha av javascript. ASP.NET har ingen aning om något som försigår på klienten.

if (window.opener) //kolla om vi ligger i en popup
{
   window.opener.location.href=window.location.href; //flytta ner urlen
}

Typ..

ironheadMedlem sedan mars 20011 346 inlägg
#3

...men hur vet jag när jag blivit utloggad?

emissionMedlem sedan dec. 19996 721 inlägg
#4

Det behöver du inte få veta. Scriptet ser till att loginsidan aldrig kommer att ligga i en popup, och var det inte det som efterfrågades egentligen?

ironheadMedlem sedan mars 20011 346 inlägg
#5

Vad jag tänkte var om jag är inloggad i ett system med FormsAuthentication, öppnar ett popupfönster för att göra diverse grejjer, sen går på lunch....kommer tillbaka å försöker fortsätta jobba med popupfönstret, så loggas jag ut i det fönstret (skickas tillbaka till loginsidan). Om jag blivit utloggad och försöker göra grejjer i poupfönstret, vill jag stänga det först och sedan ska "huvudsidan" redirectas till loginsidan.

emissionMedlem sedan dec. 19996 721 inlägg
#6

Det är det skriptet gör (glömde att lägga med window.close() efter)

if (window.opener) //kolla om vi ligger i en popup
{
   window.opener.location.href=window.location.href; //flytta ner urlen
   window.close();
}

Skriptet kan ligga med hela tiden, eftersom det inte kommer att triggas förrän loginsidan körs i en popup.

ironheadMedlem sedan mars 20011 346 inlägg
#7

Jag vill ju bara att fönstret ska stängas om jag blivit utloggad (när sessionen dött och jag fösöker klicka i popupen), inte annars.

Då måste jag ju veta om sessionen inte är "giltig/aktiv" eller inte.

@ndersMedlem sedan juni 200032 969 inlägg
#8

Om du lägger emissions script på loginsidan, så är det ju precis det som händer! Scriptet ser till att loginsidan inte kan öppnas i popupen, utan öppnas i huvudfönstret istället.

Har du testat att göra som emission skriver?

ironheadMedlem sedan mars 20011 346 inlägg
#9

Oj! Förlåt för min otroligt korkade tankegång....jag tänkte att man var tvungen att exekvera skriptet när man redan blivit utloggad...*suck!*

Tack för klargörandet @nders....och otroligt många tack till emission som inte hunnit idiotförklara mig ;)

130 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)