53 lines
1.3 KiB
C#
53 lines
1.3 KiB
C#
using System.ComponentModel.DataAnnotations;
|
|
using System.Web.Mvc;
|
|
using AutoMapper;
|
|
using Compare = System.ComponentModel.DataAnnotations.CompareAttribute;
|
|
|
|
namespace MileageTraker.Web.ViewModels.Account
|
|
{
|
|
public class ChangePasswordViewModel
|
|
{
|
|
[HiddenInput(DisplayValue = false)]
|
|
public string Username { get; set; }
|
|
|
|
[HiddenInput(DisplayValue = false)]
|
|
public string FullName { get; set; }
|
|
|
|
[HiddenInput(DisplayValue = false)]
|
|
public string Email { get; set; }
|
|
|
|
[Required]
|
|
[DataType(DataType.Password)]
|
|
[Display(Name = "Current password")]
|
|
public string OldPassword { get; set; }
|
|
|
|
[Required]
|
|
[StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)]
|
|
[DataType(DataType.Password)]
|
|
[Display(Name = "New password")]
|
|
public string NewPassword { get; set; }
|
|
|
|
[DataType(DataType.Password)]
|
|
[Display(Name = "Confirm new password")]
|
|
[Compare("NewPassword", ErrorMessage = "The new password and confirmation password do not match.")]
|
|
public string ConfirmPassword { get; set; }
|
|
|
|
static ChangePasswordViewModel()
|
|
{
|
|
Mapper.CreateMap<Models.User, ChangePasswordViewModel>();
|
|
}
|
|
|
|
public ChangePasswordViewModel(){}
|
|
|
|
public ChangePasswordViewModel(Models.User user)
|
|
{
|
|
Mapper.Map(user, this);
|
|
}
|
|
|
|
public void SetProperties(Models.User user)
|
|
{
|
|
Mapper.Map(user, this);
|
|
}
|
|
}
|
|
}
|