Can I still use VS2005 Beta?
I have a user control called MemberPanel on every page. Member panel checks a session variable to see if you're logged in or not. If you are it welcomes you back to the site, and displays a logout button. If you're not logged in, it tells you you are a guest, and displays a login button.
Some pages require you to be logged in, e.g. pages that take payments, so I have this code at the top of the Page_Load event on those secured pages:
If Session("Member") Is Nothing Then Response.Redirect("MemberLogin.aspx?ReturnPath=<Wh atever page this is>")
Now the problem is that MemberPanel's logout button just destroys the Session("Member") variable. This is fine, in most cases, but if the user happens to already be on a secured page, after they click logout they are still on the secured page. As far as the page is concerned, they are still logged in (because the Page's Load event happenned before the MemberPanel's LogoutButton_Click event).
Now I could put an OnBubbleEvent on every page that is secured, to see if the user has logged out, but I hate to do that. It breaks my encapsulation, which is why built the user control in the first place. What I'd really like to do, is to be able to have the user control tell the parent page to redirect to a different page, a non-secure one.
Is there any way to do that?
Thanks.
Aaron
|