private bool HandleGet(DynamicDictionary _parameters) { string validationToken = _parameters["validationtoken"]; if (!string.IsNullOrEmpty(validationToken)) { HydrantWikiManager hwManager = new HydrantWikiManager(); TGUserEmailValidation uev = hwManager.GetTGUserEmailValidation(validationToken); if (uev != null && uev.ParentGuid != null) { User user = (User)hwManager.GetUser(uev.ParentGuid.Value); if (user != null) { user.IsVerified = true; hwManager.Persist(user); hwManager.Delete(uev); return(true); } else { //User not found. } } else { //Validation text not found in database } } else { //Validation text not supplied. } return(false); }
public Response ValidateEmail(DynamicDictionary _parameters) { const string success = @" <html> <head> </head> <body> <p>You have successfully validated your email with HydrantWiki.</p> <p><a href=""www.hydrantwiki.com"">HydrantWiki</a></p> </body> </html>"; const string failure = @" <html> <head> </head> <body> <p>Unable to validate your email with HydrantWiki.</p> <p><a href=""www.hydrantwiki.com"">HydrantWiki</a></p> </body> </html>"; string validationToken = _parameters["token"]; HydrantWikiManager hwManager = new HydrantWikiManager(); if (!string.IsNullOrEmpty(validationToken)) { TGUserEmailValidation uev = hwManager.GetTGUserEmailValidation(validationToken); if (uev != null && uev.ParentGuid != null) { User user = (User)hwManager.GetUser(uev.ParentGuid.Value); if (user != null) { user.IsVerified = true; hwManager.Persist(user); hwManager.Delete(uev); hwManager.LogInfo(user.Guid, string.Format("Validated email address ({0})", user.EmailAddress)); Response successResponse = Response.AsText(success); successResponse.ContentType = "text/html"; return(successResponse); } else { //User not found. hwManager.LogWarning(Guid.Empty, string.Format("User not found (Token:{0})", validationToken)); } } else { //Validation text not found in database hwManager.LogWarning(Guid.Empty, string.Format("Validated token not found ({0})", validationToken)); } } else { //Validation text not supplied. hwManager.LogWarning(Guid.Empty, "Validation token not supplied"); } Response failureResponse = Response.AsText(failure); failureResponse.ContentType = "text/html"; return(failureResponse); }