diff --git a/backend/src/Web/Extensions/EnumExtensions.cs b/backend/src/Web/Extensions/EnumExtensions.cs
deleted file mode 100644
index c820a5e..0000000
--- a/backend/src/Web/Extensions/EnumExtensions.cs
+++ /dev/null
@@ -1,34 +0,0 @@
-namespace Hutopy.Web.Extensions;
-
-public static class EnumExtensions
-{
- ///
- /// Converts a string to the specified enum type.
- ///
- /// The type of the enum to convert to. Must be an enum.
- /// The string value to convert.
- /// Specifies whether the string comparison should ignore case. Default is true.
- ///
- /// The corresponding enum value if the conversion is successful; otherwise, null if the string
- /// cannot be converted to the specified enum type.
- ///
- public static TEnum? ToEnum(this string value, bool ignoreCase = true) where TEnum : struct
- {
- if (Enum.TryParse(value, ignoreCase, out TEnum result))
- {
- return result;
- }
- return null;
- }
-
- ///
- /// Converts an enum value to its string representation.
- ///
- /// The type of the enum.
- /// The enum value to convert.
- /// The string representation of the enum value.
- public static string FromEnum(this TEnum enumValue) where TEnum : struct, Enum
- {
- return enumValue.ToString();
- }
-}
diff --git a/backend/src/Web/Features/Contents/Handlers/AddReaction.cs b/backend/src/Web/Features/Contents/Handlers/AddReaction.cs
index 301f200..8002c8f 100644
--- a/backend/src/Web/Features/Contents/Handlers/AddReaction.cs
+++ b/backend/src/Web/Features/Contents/Handlers/AddReaction.cs
@@ -1,5 +1,4 @@
-using Hutopy.Web.Extensions;
-using Hutopy.Web.Features.Contents.Data;
+using Hutopy.Web.Features.Contents.Data;
using Hutopy.Web.Features.Contents.Data.Enums;
namespace Hutopy.Web.Features.Contents.Handlers;
@@ -47,7 +46,16 @@ public class AddReaction(
CancellationToken ct)
{
var content = await context.Contents.SingleAsync(x => x.Id == req.ContentId, ct);
- var reactionEnum = req.Reaction.ToEnum();
+ Reaction? reactionEnum;
+ if (Enum.TryParse(req.Reaction, true, out Reaction result))
+ {
+ reactionEnum = result;
+ }
+ else
+ {
+ reactionEnum = null;
+ }
+
var currentReaction = content.Reactions.SingleOrDefault(x => x.UserId == req.UserId);
// Already reacted or reaction didn't change, do nothing
diff --git a/backend/src/Web/Features/Contents/Handlers/GetContent.cs b/backend/src/Web/Features/Contents/Handlers/GetContent.cs
index 9479008..beaa814 100644
--- a/backend/src/Web/Features/Contents/Handlers/GetContent.cs
+++ b/backend/src/Web/Features/Contents/Handlers/GetContent.cs
@@ -1,5 +1,4 @@
-using Hutopy.Web.Extensions;
-using Hutopy.Web.Features.Contents.Data;
+using Hutopy.Web.Features.Contents.Data;
using Hutopy.Web.Features.Contents.Handlers.Models;
namespace Hutopy.Web.Features.Contents.Handlers;
@@ -44,7 +43,7 @@ public class GetContent(
HtmlFileUrl = c.HtmlFileUrl ?? "",
Reactions = c.Reactions.Select(x => new ReactionModel
{
- Reaction = x.Reaction.FromEnum(), UserId = x.UserId, UserName = x.UserName
+ Reaction = x.Reaction.ToString(), UserId = x.UserId, UserName = x.UserName
}).ToList()
})
.SingleOrDefaultAsync(
diff --git a/backend/src/Web/Features/Contents/Handlers/GetContentsByCreator.cs b/backend/src/Web/Features/Contents/Handlers/GetContentsByCreator.cs
index 79dfc8f..78e09fb 100644
--- a/backend/src/Web/Features/Contents/Handlers/GetContentsByCreator.cs
+++ b/backend/src/Web/Features/Contents/Handlers/GetContentsByCreator.cs
@@ -1,5 +1,4 @@
-using Hutopy.Web.Extensions;
-using Hutopy.Web.Features.Contents.Data;
+using Hutopy.Web.Features.Contents.Data;
using Hutopy.Web.Features.Contents.Handlers.Models;
namespace Hutopy.Web.Features.Contents.Handlers;
@@ -55,7 +54,7 @@ public class GetContentsByCreatorHandler(
HtmlFileUrl = c.HtmlFileUrl ?? "",
Reactions = c.Reactions.Select(x => new ReactionModel
{
- Reaction = x.Reaction.FromEnum(),
+ Reaction = x.Reaction.ToString(),
UserId = x.UserId,
UserName = x.UserName
}).ToList()
diff --git a/backend/src/Web/Features/Contents/Handlers/GetFeaturedContents.cs b/backend/src/Web/Features/Contents/Handlers/GetFeaturedContents.cs
index 9b0e915..f213b9c 100644
--- a/backend/src/Web/Features/Contents/Handlers/GetFeaturedContents.cs
+++ b/backend/src/Web/Features/Contents/Handlers/GetFeaturedContents.cs
@@ -1,5 +1,4 @@
-using Hutopy.Web.Extensions;
-using Hutopy.Web.Features.Contents.Data;
+using Hutopy.Web.Features.Contents.Data;
using Hutopy.Web.Features.Contents.Handlers.Models;
namespace Hutopy.Web.Features.Contents.Handlers;
@@ -53,7 +52,7 @@ public class GetFeaturedContentsHandler(
ThumbnailUrl = c.ThumbnailUrl,
Reactions = c.Reactions.Select(x => new ReactionModel
{
- Reaction = x.Reaction.FromEnum(),
+ Reaction = x.Reaction.ToString(),
UserId = x.UserId,
UserName = x.UserName
}).ToList()