fix model binding and more stuff in views

This commit is contained in:
Shannon
2021-04-09 16:31:03 +10:00
parent 8ea88a980a
commit a745ef54a7
6 changed files with 21 additions and 14 deletions

View File

@@ -8,7 +8,7 @@ namespace Umbraco.Cms.Core.Models
/// </summary>
public class MemberPropertyModel
{
[Editable(false)]
[Required]
public string Alias { get; set; }
//NOTE: This has to be a string currently, if it is an object it will bind as an array which we don't want.

View File

@@ -18,5 +18,11 @@ namespace Umbraco.Cms.Core.Security
IEnumerable<string> allowTypes = null,
IEnumerable<string> allowGroups = null,
IEnumerable<int> allowMembers = null);
// TODO: We'll need to add some additional things here that people will be using in their code:
// bool MemberHasAccess(string path);
// IReadOnlyDictionary<string, bool> MemberHasAccess(IEnumerable<string> paths)
// Possibly some others from the old MembershipHelper
}
}

View File

@@ -35,12 +35,12 @@
<hr />
<div asp-validation-summary="All" class="text-danger"></div>
<div class="mb-3">
<label asp-for="@profileModel.Name"></label>
<label asp-for="@profileModel.Name" class="form-label"></label>
<input asp-for="@profileModel.Name" class="form-control" aria-required="true" />
<span asp-validation-for="@profileModel.Name" class="form-text text-danger"></span>
</div>
<div class="mb-3">
<label asp-for="@profileModel.Email"></label>
<label asp-for="@profileModel.Email" class="form-label"></label>
<input asp-for="@profileModel.Email" class="form-control" autocomplete="username" aria-required="true" />
<span asp-validation-for="@profileModel.Email" class="form-text text-danger"></span>
</div>
@@ -48,17 +48,18 @@
@if (!string.IsNullOrWhiteSpace(profileModel.UserName))
{
<div class="mb-3">
<label asp-for="@profileModel.UserName"></label>
<label asp-for="@profileModel.UserName" class="form-label"></label>
<input asp-for="@profileModel.UserName" class="form-control" autocomplete="username" aria-required="true" />
<span asp-validation-for="@profileModel.UserName" class="form-text text-danger"></span>
</div>
}
for (var i = 0; i < profileModel.MemberProperties.Count; i++)
for (var i = 0; i < profileModel.MemberProperties.Count; i++)
{
<div class="mb-3">
<label asp-for="@profileModel.MemberProperties[i].Value"></label>
@Html.LabelFor(m => profileModel.MemberProperties[i].Value, profileModel.MemberProperties[i].Name)
<input asp-for="@profileModel.MemberProperties[i].Value" class="form-control" />
@Html.HiddenFor(m => profileModel.MemberProperties[i].Alias)
<span asp-validation-for="@profileModel.MemberProperties[i].Value" class="form-text text-danger"></span>
</div>
}

View File

@@ -23,12 +23,12 @@
<hr />
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<div class="mb-3">
<label asp-for="@loginModel.Username" class="col-md-2 control-label"></label>
<label asp-for="@loginModel.Username" class="form-label"></label>
<input asp-for="@loginModel.Username" class="form-control" />
<span asp-validation-for="@loginModel.Username" class="form-text text-danger"></span>
</div>
<div class="mb-3">
<label asp-for="@loginModel.Password" class="col-md-2 control-label"></label>
<label asp-for="@loginModel.Password" class="form-label"></label>
<input asp-for="@loginModel.Password" class="form-control" />
<span asp-validation-for="@loginModel.Password" class="form-text text-danger"></span>
</div>

View File

@@ -15,7 +15,7 @@
{
<div class="login-status">
<p>You are currently logged in as @Context.User.Identity.Name</p>
<p>Welcome back <strong>@Context.User.Identity.Name</strong>!</p>
@using (Html.BeginUmbracoForm<UmbLoginStatusController>("HandleLogout", new { RedirectUrl = logoutModel.RedirectUrl }))
{

View File

@@ -46,22 +46,22 @@ else
<hr />
<div asp-validation-summary="All" class="text-danger"></div>
<div class="mb-3">
<label asp-for="@registerModel.Name"></label>
<label asp-for="@registerModel.Name" class="form-label"></label>
<input asp-for="@registerModel.Name" class="form-control" aria-required="true" />
<span asp-validation-for="@registerModel.Name" class="form-text text-danger"></span>
</div>
<div class="mb-3">
<label asp-for="@registerModel.Email"></label>
<label asp-for="@registerModel.Email" class="form-label"></label>
<input asp-for="@registerModel.Email" class="form-control" autocomplete="username" aria-required="true" />
<span asp-validation-for="@registerModel.Email" class="form-text text-danger"></span>
</div>
<div class="mb-3">
<label asp-for="@registerModel.Password"></label>
<label asp-for="@registerModel.Password" class="form-label"></label>
<input asp-for="@registerModel.Password" class="form-control" autocomplete="new-password" aria-required="true" />
<span asp-validation-for="@registerModel.Password" class="form-text text-danger"></span>
</div>
<div class="mb-3">
<label asp-for="@registerModel.ConfirmPassword"></label>
<label asp-for="@registerModel.ConfirmPassword" class="form-label"></label>
<input asp-for="@registerModel.ConfirmPassword" class="form-control" autocomplete="new-password" aria-required="true" />
<span asp-validation-for="@registerModel.ConfirmPassword" class="form-text text-danger"></span>
</div>
@@ -71,7 +71,7 @@ else
for (var i = 0; i < registerModel.MemberProperties.Count; i++)
{
<div class="mb-3">
<label asp-for="@registerModel.MemberProperties[i].Value"></label>
<label asp-for="@registerModel.MemberProperties[i].Value" class="form-label"></label>
<input asp-for="@registerModel.MemberProperties[i].Value" class="form-control" />
<span asp-validation-for="@registerModel.MemberProperties[i].Value" class="form-text text-danger"></span>
</div>