yavsc/src/Yavsc.Server/ViewModels/Account/LoginViewModel.cs

62 lines
1.9 KiB
C#
Raw Normal View History

2018-03-26 19:27:29 +02:00
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
2019-09-04 01:25:36 +01:00
using Yavsc.Attributes.Validation;
2018-03-26 19:27:29 +02:00
namespace Yavsc.ViewModels.Account
{
2023-04-02 14:53:31 +01:00
// TODO external autentication providers
2018-03-26 19:27:29 +02:00
public class SignInViewModel
{
/// <summary>
/// Local user's name.
/// </summary>
/// <returns></returns>
2019-09-04 01:25:36 +01:00
[YaRequired]
2018-03-26 19:27:29 +02:00
public string UserName { get; set; }
/// <summary>
/// Local user's password .
/// </summary>
/// <returns></returns>
2019-09-04 01:25:36 +01:00
[YaRequired]
2018-03-26 19:27:29 +02:00
[DataType(DataType.Password)]
public string Password { get; set; }
/// <summary>
/// When true, asks for a two-factor identification
/// </summary>
/// <returns></returns>
[Display(Name = "Se souvenir de moi?")]
public bool RememberMe { get; set; }
/// <summary>
/// Indicates the authentication provider'name chosen to authenticate,
/// contains "LOCAL" to choose the local application identity
/// and user password credentials.
/// </summary>
/// <returns></returns>
public string Provider { get; set; }
/// <summary>
/// This value does NOT indicate the OAuth client method recieving the code,
/// but the one called once authorized.
/// </summary>
/// <returns></returns>
public string ReturnUrl { get; set; }
/// <summary>
/// Lists external identity provider descriptions.
/// </summary>
/// <returns>an enumeration of the descriptions.</returns>
public IEnumerable<YaAuthenticationDescription> ExternalProviders { get; set; }
}
public class YaAuthenticationDescription {
public string DisplayName { get; set; }
public string AuthenticationScheme { get; set; }
public IDictionary<string,object> Items { get; set; }
2018-03-26 19:27:29 +02:00
}
}