This commit is contained in:
Laura Hausmann 2020-12-28 05:04:01 +01:00
parent 18fcaa2d7c
commit 621bf6b78a
Signed by: zotan
GPG key ID: 5EC1D38FFC321311
4 changed files with 6 additions and 11 deletions

View file

@ -8,7 +8,7 @@
return; return;
} }
c3stream.UpdateCookie(Request, Response, $"/Conference?c={Request.Query["c"]}&"); c3stream.UpdateCookie(Request, Response, $"/Conference?c={Request.Query["c"]}");
ReadUserData(); ReadUserData();
ViewData["Title"] = Request.Query["c"]; ViewData["Title"] = Request.Query["c"];
var wc = new WebClient(); var wc = new WebClient();

View file

@ -2,7 +2,7 @@
@model IndexModel @model IndexModel
@{ @{
ViewData["Title"] = "Home"; ViewData["Title"] = "Home";
c3stream.UpdateCookie(Request, Response, "/?"); c3stream.UpdateCookie(Request, Response, "/");
} }
<div style="text-align: center"> <div style="text-align: center">

View file

@ -9,7 +9,7 @@
return; return;
} }
c3stream.UpdateCookie(Request, Response, $"/Info?guid={Request.Query["guid"]}&"); c3stream.UpdateCookie(Request, Response, $"/Info?guid={Request.Query["guid"]}");
ConferenceModel.ReadUserData(); ConferenceModel.ReadUserData();
var talk = c3stream.GetEventByGuid(Request.Query["guid"]); var talk = c3stream.GetEventByGuid(Request.Query["guid"]);

View file

@ -82,20 +82,15 @@ namespace c3stream {
public static void UpdateCookie(HttpRequest request, HttpResponse response, string redirectUri) { public static void UpdateCookie(HttpRequest request, HttpResponse response, string redirectUri) {
//if new bookmark is in uri //if new bookmark is in uri
if (request.Query.ContainsKey("bookmark") && request.Cookies["bookmark"] != request.Query["bookmark"]) { if (request.Query.ContainsKey("bookmark")) {
response.Cookies.Append("bookmark", request.Query["bookmark"], new CookieOptions {Expires = DateTimeOffset.MaxValue}); response.Cookies.Append("bookmark", request.Query["bookmark"], new CookieOptions {Expires = DateTimeOffset.MaxValue});
//disabled for HSTS compliance response.Redirect(redirectUri);
response.Redirect(redirectUri + "bookmark=" + request.Query["bookmark"]);
} }
//if no cookie exists or cookie is invalid //if no cookie exists or cookie is invalid
else if (!request.Cookies.ContainsKey("bookmark") || !Guid.TryParseExact(request.Cookies["bookmark"], "D", out _)) { else if (!request.Cookies.ContainsKey("bookmark") || !Guid.TryParseExact(request.Cookies["bookmark"], "D", out _)) {
var guid = Guid.NewGuid().ToString(); var guid = Guid.NewGuid().ToString();
response.Cookies.Append("bookmark", guid, new CookieOptions {Expires = DateTimeOffset.MaxValue}); response.Cookies.Append("bookmark", guid, new CookieOptions {Expires = DateTimeOffset.MaxValue});
response.Redirect(redirectUri + "bookmark=" + guid); response.Redirect(redirectUri);
}
//redir to cookie
else if (!request.Query.ContainsKey("bookmark")) {
response.Redirect(redirectUri + "bookmark=" + request.Cookies["bookmark"]);
} }
} }