diff --git a/src/Ombi.Core/Models/UI/UserViewModel.cs b/src/Ombi.Core/Models/UI/UserViewModel.cs
index 1c1e6162b..62b296009 100644
--- a/src/Ombi.Core/Models/UI/UserViewModel.cs
+++ b/src/Ombi.Core/Models/UI/UserViewModel.cs
@@ -16,6 +16,7 @@ namespace Ombi.Core.Models.UI
public UserType UserType { get; set; }
public int MovieRequestLimit { get; set; }
public int EpisodeRequestLimit { get; set; }
+ public int MusicRequestLimit { get; set; }
}
public class ClaimCheckboxes
diff --git a/src/Ombi/ClientApp/app/interfaces/IUser.ts b/src/Ombi/ClientApp/app/interfaces/IUser.ts
index 04546abf9..6cd1bc1d7 100644
--- a/src/Ombi/ClientApp/app/interfaces/IUser.ts
+++ b/src/Ombi/ClientApp/app/interfaces/IUser.ts
@@ -12,6 +12,7 @@ export interface IUser {
hasLoggedIn: boolean;
movieRequestLimit: number;
episodeRequestLimit: number;
+ musicRequestLimit: number;
userAccessToken: string;
// FOR UI
checked: boolean;
diff --git a/src/Ombi/ClientApp/app/usermanagement/usermanagement-user.component.html b/src/Ombi/ClientApp/app/usermanagement/usermanagement-user.component.html
index da1b4076e..f7bf702a0 100644
--- a/src/Ombi/ClientApp/app/usermanagement/usermanagement-user.component.html
+++ b/src/Ombi/ClientApp/app/usermanagement/usermanagement-user.component.html
@@ -102,12 +102,19 @@
+
diff --git a/src/Ombi/Controllers/IdentityController.cs b/src/Ombi/Controllers/IdentityController.cs
index 9e89a9506..2acc1637f 100644
--- a/src/Ombi/Controllers/IdentityController.cs
+++ b/src/Ombi/Controllers/IdentityController.cs
@@ -61,7 +61,8 @@ namespace Ombi.Controllers
IRepository notificationRepository,
IRepository subscriptionRepository,
ISettingsService umSettings,
- IRepository notificationPreferences)
+ IRepository notificationPreferences,
+ IMusicRequestRepository musicRepo)
{
UserManager = user;
Mapper = mapper;
@@ -71,6 +72,7 @@ namespace Ombi.Controllers
CustomizationSettings = c;
WelcomeEmail = welcome;
MovieRepo = m;
+ MusicRepo = musicRepo;
TvRepo = t;
_log = l;
_plexApi = plexApi;
@@ -96,6 +98,7 @@ namespace Ombi.Controllers
private IWelcomeEmail WelcomeEmail { get; }
private IMovieRequestRepository MovieRepo { get; }
private ITvRequestRepository TvRepo { get; }
+ private IMusicRequestRepository MusicRepo { get; }
private readonly ILogger _log;
private readonly IPlexApi _plexApi;
private readonly ISettingsService _plexSettings;
@@ -295,7 +298,8 @@ namespace Ombi.Controllers
LastLoggedIn = user.LastLoggedIn,
HasLoggedIn = user.LastLoggedIn.HasValue,
EpisodeRequestLimit = user.EpisodeRequestLimit ?? 0,
- MovieRequestLimit = user.MovieRequestLimit ?? 0
+ MovieRequestLimit = user.MovieRequestLimit ?? 0,
+ MusicRequestLimit = user.MusicRequestLimit ?? 0,
};
foreach (var role in userRoles)
@@ -347,6 +351,7 @@ namespace Ombi.Controllers
UserType = UserType.LocalUser,
MovieRequestLimit = user.MovieRequestLimit,
EpisodeRequestLimit = user.EpisodeRequestLimit,
+ MusicRequestLimit = user.MusicRequestLimit,
UserAccessToken = Guid.NewGuid().ToString("N"),
};
var userResult = await UserManager.CreateAsync(ombiUser, user.Password);
@@ -490,6 +495,7 @@ namespace Ombi.Controllers
user.Email = ui.EmailAddress;
user.MovieRequestLimit = ui.MovieRequestLimit;
user.EpisodeRequestLimit = ui.EpisodeRequestLimit;
+ user.MusicRequestLimit = ui.MusicRequestLimit;
var updateResult = await UserManager.UpdateAsync(user);
if (!updateResult.Succeeded)
{
@@ -562,6 +568,7 @@ namespace Ombi.Controllers
// We need to delete all the requests first
var moviesUserRequested = MovieRepo.GetAll().Where(x => x.RequestedUserId == userId);
var tvUserRequested = TvRepo.GetChild().Where(x => x.RequestedUserId == userId);
+ var musicRequested = MusicRepo.GetAll().Where(x => x.RequestedUserId == userId);
if (moviesUserRequested.Any())
{
@@ -572,6 +579,11 @@ namespace Ombi.Controllers
await TvRepo.DeleteChildRange(tvUserRequested);
}
+ if (musicRequested.Any())
+ {
+ await MusicRepo.DeleteRange(musicRequested);
+ }
+
// Delete any issues and request logs
var issues = _issuesRepository.GetAll().Where(x => x.UserReportedId == userId);
var issueComments = _issueCommentsRepository.GetAll().Where(x => x.UserId == userId);