92 lines
4.0 KiB
Plaintext
92 lines
4.0 KiB
Plaintext
@model IdentitySample.Models.LoginViewModel
|
|
@using System.Collections.Generic
|
|
@using Microsoft.AspNet.Http
|
|
@using Microsoft.AspNet.Http.Authentication
|
|
|
|
@{
|
|
//TODO: Until we have a way to specify the layout page at application level.
|
|
Layout = "/Views/Shared/_Layout.cshtml";
|
|
ViewBag.Title = "Log in";
|
|
}
|
|
|
|
<h2>@ViewBag.Title.</h2>
|
|
<div class="row">
|
|
<div class="col-md-8">
|
|
<section id="loginForm">
|
|
@using (Html.BeginForm("Login", "Account", new { ReturnUrl = ViewBag.ReturnUrl }, FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
|
|
{
|
|
@Html.AntiForgeryToken()
|
|
<h4>Use a local account to log in.</h4>
|
|
<hr />
|
|
@Html.ValidationSummary(true)
|
|
<div class="form-group">
|
|
@Html.LabelFor(m => m.UserName, new { @class = "col-md-2 control-label" })
|
|
<div class="col-md-10">
|
|
@Html.TextBoxFor(m => m.UserName, new { @class = "form-control" })
|
|
@Html.ValidationMessageFor(m => m.UserName)
|
|
</div>
|
|
</div>
|
|
<div class="form-group">
|
|
@Html.LabelFor(m => m.Password, new { @class = "col-md-2 control-label" })
|
|
<div class="col-md-10">
|
|
@Html.PasswordFor(m => m.Password, new { @class = "form-control" })
|
|
@Html.ValidationMessageFor(m => m.Password)
|
|
</div>
|
|
</div>
|
|
<div class="form-group">
|
|
<div class="col-md-offset-2 col-md-10">
|
|
<div class="checkbox">
|
|
@Html.CheckBoxFor(m => m.RememberMe)
|
|
@Html.LabelFor(m => m.RememberMe)
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="form-group">
|
|
<div class="col-md-offset-2 col-md-10">
|
|
<input type="submit" value="Log in" class="btn btn-default" />
|
|
</div>
|
|
</div>
|
|
<p>
|
|
@Html.ActionLink("Register a new user?", "Register")
|
|
</p>
|
|
<p>
|
|
@Html.ActionLink("Forget your password?", "ForgotPassword")
|
|
</p>
|
|
}
|
|
</section>
|
|
</div>
|
|
<div class="col-md-4">
|
|
<section id="socialLoginForm">
|
|
<h4>Use another service to log in.</h4>
|
|
<hr />
|
|
@{
|
|
if (ViewBag.LoginProviders.Count == 0) {
|
|
<div>
|
|
<p>
|
|
There are no external authentication services configured. See <a href="http://go.microsoft.com/fwlink/?LinkId=313242">this article</a>
|
|
for details on setting up this ASP.NET application to support logging in via external services.
|
|
</p>
|
|
</div>
|
|
}
|
|
else {
|
|
using (Html.BeginForm("ExternalLogin", "Account", new { ReturnUrl = ViewBag.ReturnUrl })) {
|
|
@Html.AntiForgeryToken()
|
|
<div id="socialLoginList">
|
|
<p>
|
|
@foreach (AuthenticationDescription p in ViewBag.LoginProviders) {
|
|
<button type="submit" class="btn btn-default" id="@p.AuthenticationScheme" name="provider" value="@p.AuthenticationScheme" title="Log in using your @p.DisplayName account">@p.AuthenticationScheme</button>
|
|
}
|
|
</p>
|
|
</div>
|
|
}
|
|
}
|
|
}
|
|
</section>
|
|
</div>
|
|
</div>
|
|
@section Scripts {
|
|
@*TODO : Until script helpers are available, adding script references manually*@
|
|
@*@Scripts.Render("~/bundles/jqueryval")*@
|
|
<script src="@Url.Content("~/Scripts/jquery.validate.js")"></script>
|
|
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.js")"></script>
|
|
} |