Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @{
- // Set the layout page and page title
- Layout = "~/_SiteLayout.cshtml";
- Page.Title = "Log In";
- // Initialize general page variables
- var username = "";
- var password = "";
- var rememberMe = false;
- // Validation
- var isValid = true;
- var usernameErrorMessage = "";
- var passwordErrorMessage = "";
- // If this is a POST request, validate and process data
- if (IsPost) {
- username = Request.Form["username"];
- password = Request.Form["password"];
- rememberMe = Request.Form["rememberMe"].AsBool();
- // Validate the user's username
- if (username.IsEmpty()) {
- usernameErrorMessage = "You must specify a username.";
- isValid = false;
- }
- // Validate the user's password
- if (password.IsEmpty()) {
- passwordErrorMessage = "You must specify a password.";
- isValid = false;
- }
- // Confirm there are no validation errors
- if (isValid) {
- if (WebSecurity.UserExists(username) && WebSecurity.GetPasswordFailuresSinceLastSuccess(username) > 4 && WebSecurity.GetLastPasswordFailureDate(username).AddSeconds(60) > DateTime.UtcNow ) {
- Response.Redirect("~/account/AccountLockedOut");
- return;
- }
- // Attempt to login to the Security object using provided creds
- if (WebSecurity.Login(username, password, rememberMe)) {
- var returnUrl = Request.QueryString["ReturnUrl"];
- if (returnUrl.IsEmpty()){
- Response.Redirect("~/");
- } else {
- Context.RedirectLocal(returnUrl);
- }
- }
- // If we arrived here, the login failed; convey that to the user
- isValid = false;
- }
- }
- }
- <p>
- Please enter your username and password below. If you don't have an account,
- visit the <a href="@Href("~/Account/Register")">registration page</a> and create one.
- </p>
- @* If one or more validation errors exist, show an error *@
- @if (!isValid) {
- <p class="message error">There was a problem with your login and/or errors exist in your form.</p>
- }
- <form method="post" action="">
- <fieldset>
- <legend>Log In to Your Account</legend>
- <ol>
- <li class="username">
- <label for="username">Username:</label>
- <input type="text" id="username" name="username" value="@username" title="Username" @if(!usernameErrorMessage.IsEmpty()){<text>class="error-field"</text>} />
- @* Write any username validation errors to the page *@
- @if (!usernameErrorMessage.IsEmpty()) {
- <label for="username" class="validation-error">
- @usernameErrorMessage
- </label>
- }
- </li>
- <li class="password">
- <label for="password">Password:</label>
- <input type="password" id="password" name="password" title="Password" @if(!passwordErrorMessage.IsEmpty()){<text>class="error-field"</text>} />
- @* Write any password validation errors to the page *@
- @if (!passwordErrorMessage.IsEmpty()) {
- <label for="password" class="validation-error">
- @passwordErrorMessage
- </label>
- }
- </li>
- <li class="remember-me">
- <label class="checkbox" for="rememberMe">Remember Me?</label>
- <input type="checkbox" id="rememberMe" name="rememberMe" value="true" title="Remember Me" @if(rememberMe){<text>checked="checked"</text>} />
- </li>
- </ol>
- <p class="form-actions">
- <input type="submit" value="login" title="Login"/>
- </p>
- <p><a href="@Href("~/Account/ForgotPassword")">Did you forget your password?</a></p>
- </fieldset>
- </form>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement