fix: some cleanup and fixing runtime bugs, refs NOISSUE

This commit is contained in:
2025-05-31 13:41:03 +02:00
parent dbd83ebb6a
commit 0d2ec3712e
23 changed files with 269 additions and 128 deletions

View File

@@ -3,8 +3,8 @@
{
using (var dci = DataContext.Instance)
{
var user = dci.Users.Where(u => u.LdapUserName == User.Identity.Name);
return user.Any();
var user = dci.Users?.Where(u => u.LdapUserName == User.Identity.Name);
return user == null ? false : user.Any();
}
}
}
@@ -18,7 +18,7 @@
<script type="importmap"></script>
<link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.min.css" />
<link rel="stylesheet" href="~/css/site.css" asp-append-version="true" />
<link rel="stylesheet" href="~/sotd.styles.css" asp-append-version="true" />
<link rel="stylesheet" href="~/song_of_the_day.styles.css" asp-append-version="true" />
</head>
<body>
<header>
@@ -37,13 +37,15 @@
<li class="nav-item">
<a class="nav-link text-dark" asp-area="" asp-page="/SuggestionHelpers">Suggestion Helpers</a>
</li>
@if (this.User.Identity.IsAuthenticated && !DoesUserHaveClaimedPhoneNumber())
@if (this.User != null && this.User.Identity != null &&
this.User.Identity.IsAuthenticated && !DoesUserHaveClaimedPhoneNumber())
{
<li class="nav-item">
<a class="nav-link text-dark" asp-area="" asp-page="/UnclaimedPhoneNumbers">Unclaimed Phone Numbers</a>
</li>
}
@if (this.User.Identity.IsAuthenticated && DoesUserHaveClaimedPhoneNumber())
@if (this.User != null && this.User.Identity != null &&
this.User.Identity.IsAuthenticated && DoesUserHaveClaimedPhoneNumber())
{
<li class="nav-item">
<a class="nav-link text-dark" asp-area="" asp-page="/SubmitSongs">Submit Songs</a>

View File

@@ -1,7 +1,7 @@
@using Microsoft.AspNetCore.Authentication
<div class="loginform">
@if (!this.User.Identity.IsAuthenticated)
@if (this.User == null || this.User.Identity == null || !this.User.Identity.IsAuthenticated)
{
<form method="post" action="Auth/Login">
<div>

View File

@@ -17,20 +17,26 @@ public class SubmitSongsModel : PageModel
{
_logger = logger;
this.songResolver = songResolver;
_submitUrl = string.Empty;
SongData = new Song();
}
[BindProperty]
public bool IsValidUrl { get; set; } = true;
[BindProperty]
public string SubmitUrl {
get {
public string SubmitUrl
{
get
{
return _submitUrl;
}
set {
set
{
_submitUrl = value.ToString();
Uri? newValue = default;
try {
try
{
newValue = new Uri(_submitUrl);
}
catch (UriFormatException)
@@ -41,7 +47,7 @@ public class SubmitSongsModel : PageModel
IsValidUrl = true;
if(this.songResolver.CanValidate(newValue))
if (this.songResolver.CanValidate(newValue))
{
this.SongData = this.songResolver.ResolveSongAsync(newValue).Result;
}
@@ -49,9 +55,13 @@ public class SubmitSongsModel : PageModel
}
[BindProperty]
public bool CanSubmit { get {
return !string.IsNullOrEmpty(SongData?.Artist) && ! string.IsNullOrEmpty(SongData?.Name);
} }
public bool CanSubmit
{
get
{
return !string.IsNullOrEmpty(SongData?.Artist) && !string.IsNullOrEmpty(SongData?.Name);
}
}
[BindProperty]
public Song SongData { get; set; }
@@ -66,6 +76,6 @@ public class SubmitSongsModel : PageModel
{
var songUrl = Request.Query["SubmitUrl"];
this.SubmitUrl = songUrl.ToString();
return Partial("_SongPartial", SongData);;
return Partial("_SongPartial", SongData); ;
}
}

View File

@@ -29,7 +29,7 @@ public class SuggestionHelpersModel : PageModel
{
using (var dci = DataContext.Instance)
{
this.SuggestionHelpers = dci.SuggestionHelpers.ToList();
this.SuggestionHelpers = dci.SuggestionHelpers == null ? new List<SuggestionHelper>() : dci.SuggestionHelpers.ToList();
}
}
@@ -42,9 +42,9 @@ public class SuggestionHelpersModel : PageModel
Title = this.NewSuggestionTitle,
Description = this.NewSuggestionDescription
};
dci.SuggestionHelpers.Add(newHelper);
dci.SuggestionHelpers?.Add(newHelper);
dci.SaveChanges();
this.SuggestionHelpers = dci.SuggestionHelpers.ToList();
this.SuggestionHelpers = dci.SuggestionHelpers == null ? new List<SuggestionHelper>() : dci.SuggestionHelpers.ToList();
}
this.NewSuggestionDescription = "";
this.NewSuggestionTitle = "";

View File

@@ -1,6 +1,7 @@
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.VisualBasic;
using SpotifyAPI.Web;
namespace sotd.Pages;
@@ -11,6 +12,7 @@ public class UnclaimedPhoneNumbersModel : PageModel
public UnclaimedPhoneNumbersModel(ILogger<UserModel> logger)
{
_logger = logger;
UnclaimedUsers = new List<User>();
}
public int userId { get; set; }
@@ -22,7 +24,7 @@ public class UnclaimedPhoneNumbersModel : PageModel
{
using (var dci = DataContext.Instance)
{
this.UnclaimedUsers = dci.Users.Where(u => string.IsNullOrEmpty(u.LdapUserName)).ToList();
this.UnclaimedUsers = dci.Users == null ? new List<User>(): dci.Users.Where(u => string.IsNullOrEmpty(u.LdapUserName)).ToList();
}
}

View File

@@ -25,9 +25,9 @@ public class UserModel : PageModel
{
using (var dci = DataContext.Instance)
{
var user = dci.Users.Find(userIndex);
this.UserName = user.Name;
this.UserNickName = user.NickName;
var user = dci.Users?.Find(userIndex);
this.UserName = user == null ? string.Empty : (user.Name ?? string.Empty);
this.UserNickName = user == null ? string.Empty : (user.NickName ?? string.Empty);
this.userId = userIndex;
}
}
@@ -36,10 +36,13 @@ public class UserModel : PageModel
{
using (var dci = DataContext.Instance)
{
var user = dci.Users.Find(userIndex);
user.NickName = this.UserNickName;
dci.SaveChanges();
this.UserName = user.Name;
var user = dci.Users?.Find(userIndex);
if (user != null)
{
user.NickName = this.UserNickName;
dci.SaveChanges();
this.UserName = user.Name ?? string.Empty;
}
}
}
}