Changement de login par email

This commit is contained in:
MarcEricMartel 2022-11-01 09:24:04 -07:00
parent e353531288
commit 058e467bb3
5 changed files with 37 additions and 2 deletions

View File

@ -22,7 +22,7 @@ public class LoginController : Controller {
}
public class LoginUser {
public string username { get; set; } = "";
public string email { get; set; } = "";
public string password { get; set; } = "";
}
@ -35,7 +35,7 @@ public class LoginController : Controller {
[HttpPost, Route("Login"), AllowAnonymous]
public async Task<SignInResult> Login(LoginUser user, bool rememberMe = false) {
return await _signInMan.PasswordSignInAsync(user.username, user.password, rememberMe, false);
return await _signInMan.PasswordSignInAsync(await _userMan.FindByEmailAsync(user.email), user.password, rememberMe, false);
}
[HttpPost, Route("Logout")]

View File

@ -204,6 +204,7 @@ public class InventoryContext : IdentityDbContext<InventoryUser> {
InventoryUser admin = new InventoryUser() { NormalizedUserName = "admin", UserName = "Admin", NormalizedEmail = "admin@admin.com", Email = "admin@admin.com" };
admin.PasswordHash = new PasswordHasher<InventoryUser>().HashPassword(admin, "Qwerty123!");
modelBuilder.Entity<InventoryUser>().HasData(admin);
}
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) {
var configuration = new ConfigurationBuilder()

View File

@ -1,6 +1,28 @@
using Microsoft.AspNetCore.Identity;
using System.ComponentModel.DataAnnotations;
namespace GrossesMitainesAPI.Data;
public class InventoryUser : IdentityUser {
public class Address {
[Key]
public int Id { get; set; }
[Required, Range(1, int.MaxValue)]
public int CivicNumber { get; set; }
public string? Appartment { get; set; }
[Required, MinLength(3), MaxLength(50)]
public string Street { get; set; }
[Required, MinLength(4), MaxLength(50)]
public string City { get; set; }
[Required, MaxLength(2)]
public string Province { get; set; }
[Required, MinLength(4), MaxLength(30)]
public string Country { get; set; }
// Source pour regex: https://stackoverflow.com/questions/15774555/efficient-regex-for-canadian-postal-code-function
[Required, RegularExpression(@"/^[ABCEGHJ-NPRSTVXY]\d[ABCEGHJ-NPRSTV-Z][ -]?\d[ABCEGHJ-NPRSTV-Z]\d$/i")]
public string PostalCode { get; set; }
}
public List<Address> Adresses { get; set; }
}

View File

@ -0,0 +1,12 @@
using GrossesMitainesAPI.Data;
using System.Collections.Generic;
namespace GrossesMitainesAPI.Models;
public class InvoiceModel {
public InventoryUser Account { get; set; }
public DateTime PurchaseDate { get; set; }
public Dictionary<Product, int> Products { get; set; }
public InventoryUser.Address BillingAddress { get; set; }
public InventoryUser.Address ShippingAddress { get; set; }
}

Binary file not shown.