mirror of
https://github.com/Ombi-app/Ombi.git
synced 2025-08-20 05:13:18 -07:00
feat: Added the new Movie 4k Request
This commit is contained in:
parent
1c4db0ab69
commit
3f31100bd5
9 changed files with 2635 additions and 116 deletions
|
@ -16,5 +16,6 @@
|
||||||
public const string ReceivesNewsletter = nameof(ReceivesNewsletter);
|
public const string ReceivesNewsletter = nameof(ReceivesNewsletter);
|
||||||
public const string ManageOwnRequests = nameof(ManageOwnRequests);
|
public const string ManageOwnRequests = nameof(ManageOwnRequests);
|
||||||
public const string EditCustomPage = nameof(EditCustomPage);
|
public const string EditCustomPage = nameof(EditCustomPage);
|
||||||
|
public const string Request4KMovie = nameof(Request4KMovie);
|
||||||
}
|
}
|
||||||
}
|
}
|
16
src/Ombi.Store/MigrationHelper.cs
Normal file
16
src/Ombi.Store/MigrationHelper.cs
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
using System;
|
||||||
|
|
||||||
|
namespace Ombi.Store
|
||||||
|
{
|
||||||
|
internal static class MigrationHelper
|
||||||
|
{
|
||||||
|
public static void InsertRole(this MigrationBuilder mb, string role)
|
||||||
|
{
|
||||||
|
mb.Sql($@"
|
||||||
|
INSERT INTO AspnetRoles(Id, ConcurrencyStamp, Name, NormalizedName)
|
||||||
|
SELECT '{Guid.NewGuid()}','{Guid.NewGuid()}','{role}', '{role.ToUpper()}'
|
||||||
|
WHERE NOT EXISTS(SELECT 1 FROM AspnetRoles WHERE Name = '{role}');");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
1246
src/Ombi.Store/Migrations/OmbiMySql/20220210195008_Radarr4kRole.Designer.cs
generated
Normal file
1246
src/Ombi.Store/Migrations/OmbiMySql/20220210195008_Radarr4kRole.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,20 @@
|
||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
using Ombi.Helpers;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace Ombi.Store.Migrations.OmbiMySql
|
||||||
|
{
|
||||||
|
public partial class Radarr4kRole : Migration
|
||||||
|
{
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.InsertRole(OmbiRoles.Request4KMovie);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -5,6 +5,8 @@ using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||||
using Ombi.Store.Context.MySql;
|
using Ombi.Store.Context.MySql;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
namespace Ombi.Store.Migrations.OmbiMySql
|
namespace Ombi.Store.Migrations.OmbiMySql
|
||||||
{
|
{
|
||||||
[DbContext(typeof(OmbiMySqlContext))]
|
[DbContext(typeof(OmbiMySqlContext))]
|
||||||
|
@ -14,8 +16,8 @@ namespace Ombi.Store.Migrations.OmbiMySql
|
||||||
{
|
{
|
||||||
#pragma warning disable 612, 618
|
#pragma warning disable 612, 618
|
||||||
modelBuilder
|
modelBuilder
|
||||||
.HasAnnotation("Relational:MaxIdentifierLength", 64)
|
.HasAnnotation("ProductVersion", "6.0.0")
|
||||||
.HasAnnotation("ProductVersion", "5.0.1");
|
.HasAnnotation("Relational:MaxIdentifierLength", 64);
|
||||||
|
|
||||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b =>
|
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b =>
|
||||||
{
|
{
|
||||||
|
@ -40,7 +42,7 @@ namespace Ombi.Store.Migrations.OmbiMySql
|
||||||
.IsUnique()
|
.IsUnique()
|
||||||
.HasDatabaseName("RoleNameIndex");
|
.HasDatabaseName("RoleNameIndex");
|
||||||
|
|
||||||
b.ToTable("AspNetRoles");
|
b.ToTable("AspNetRoles", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||||
|
@ -63,7 +65,7 @@ namespace Ombi.Store.Migrations.OmbiMySql
|
||||||
|
|
||||||
b.HasIndex("RoleId");
|
b.HasIndex("RoleId");
|
||||||
|
|
||||||
b.ToTable("AspNetRoleClaims");
|
b.ToTable("AspNetRoleClaims", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||||
|
@ -86,7 +88,7 @@ namespace Ombi.Store.Migrations.OmbiMySql
|
||||||
|
|
||||||
b.HasIndex("UserId");
|
b.HasIndex("UserId");
|
||||||
|
|
||||||
b.ToTable("AspNetUserClaims");
|
b.ToTable("AspNetUserClaims", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||||
|
@ -108,7 +110,7 @@ namespace Ombi.Store.Migrations.OmbiMySql
|
||||||
|
|
||||||
b.HasIndex("UserId");
|
b.HasIndex("UserId");
|
||||||
|
|
||||||
b.ToTable("AspNetUserLogins");
|
b.ToTable("AspNetUserLogins", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||||
|
@ -123,7 +125,7 @@ namespace Ombi.Store.Migrations.OmbiMySql
|
||||||
|
|
||||||
b.HasIndex("RoleId");
|
b.HasIndex("RoleId");
|
||||||
|
|
||||||
b.ToTable("AspNetUserRoles");
|
b.ToTable("AspNetUserRoles", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||||
|
@ -142,7 +144,7 @@ namespace Ombi.Store.Migrations.OmbiMySql
|
||||||
|
|
||||||
b.HasKey("UserId", "LoginProvider", "Name");
|
b.HasKey("UserId", "LoginProvider", "Name");
|
||||||
|
|
||||||
b.ToTable("AspNetUserTokens");
|
b.ToTable("AspNetUserTokens", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Ombi.Store.Entities.Audit", b =>
|
modelBuilder.Entity("Ombi.Store.Entities.Audit", b =>
|
||||||
|
@ -342,7 +344,7 @@ namespace Ombi.Store.Migrations.OmbiMySql
|
||||||
.IsUnique()
|
.IsUnique()
|
||||||
.HasDatabaseName("UserNameIndex");
|
.HasDatabaseName("UserNameIndex");
|
||||||
|
|
||||||
b.ToTable("AspNetUsers");
|
b.ToTable("AspNetUsers", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Ombi.Store.Entities.RecentlyAddedLog", b =>
|
modelBuilder.Entity("Ombi.Store.Entities.RecentlyAddedLog", b =>
|
||||||
|
@ -406,28 +408,6 @@ namespace Ombi.Store.Migrations.OmbiMySql
|
||||||
b.ToTable("RequestQueue");
|
b.ToTable("RequestQueue");
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Ombi.Store.Entities.RequestSubscription", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("Id")
|
|
||||||
.ValueGeneratedOnAdd()
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int>("RequestId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int>("RequestType")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<string>("UserId")
|
|
||||||
.HasColumnType("varchar(255)");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.HasIndex("UserId");
|
|
||||||
|
|
||||||
b.ToTable("RequestSubscription");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Ombi.Store.Entities.Requests.AlbumRequest", b =>
|
modelBuilder.Entity("Ombi.Store.Entities.Requests.AlbumRequest", b =>
|
||||||
{
|
{
|
||||||
b.Property<int>("Id")
|
b.Property<int>("Id")
|
||||||
|
@ -815,6 +795,28 @@ namespace Ombi.Store.Migrations.OmbiMySql
|
||||||
b.ToTable("TvRequests");
|
b.ToTable("TvRequests");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("Ombi.Store.Entities.RequestSubscription", b =>
|
||||||
|
{
|
||||||
|
b.Property<int>("Id")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("int");
|
||||||
|
|
||||||
|
b.Property<int>("RequestId")
|
||||||
|
.HasColumnType("int");
|
||||||
|
|
||||||
|
b.Property<int>("RequestType")
|
||||||
|
.HasColumnType("int");
|
||||||
|
|
||||||
|
b.Property<string>("UserId")
|
||||||
|
.HasColumnType("varchar(255)");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.HasIndex("UserId");
|
||||||
|
|
||||||
|
b.ToTable("RequestSubscription");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Ombi.Store.Entities.Tokens", b =>
|
modelBuilder.Entity("Ombi.Store.Entities.Tokens", b =>
|
||||||
{
|
{
|
||||||
b.Property<int>("Id")
|
b.Property<int>("Id")
|
||||||
|
@ -1052,15 +1054,6 @@ namespace Ombi.Store.Migrations.OmbiMySql
|
||||||
b.Navigation("User");
|
b.Navigation("User");
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Ombi.Store.Entities.RequestSubscription", b =>
|
|
||||||
{
|
|
||||||
b.HasOne("Ombi.Store.Entities.OmbiUser", "User")
|
|
||||||
.WithMany()
|
|
||||||
.HasForeignKey("UserId");
|
|
||||||
|
|
||||||
b.Navigation("User");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Ombi.Store.Entities.Requests.AlbumRequest", b =>
|
modelBuilder.Entity("Ombi.Store.Entities.Requests.AlbumRequest", b =>
|
||||||
{
|
{
|
||||||
b.HasOne("Ombi.Store.Entities.OmbiUser", "RequestedUser")
|
b.HasOne("Ombi.Store.Entities.OmbiUser", "RequestedUser")
|
||||||
|
@ -1145,6 +1138,15 @@ namespace Ombi.Store.Migrations.OmbiMySql
|
||||||
b.Navigation("User");
|
b.Navigation("User");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("Ombi.Store.Entities.RequestSubscription", b =>
|
||||||
|
{
|
||||||
|
b.HasOne("Ombi.Store.Entities.OmbiUser", "User")
|
||||||
|
.WithMany()
|
||||||
|
.HasForeignKey("UserId");
|
||||||
|
|
||||||
|
b.Navigation("User");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Ombi.Store.Entities.Tokens", b =>
|
modelBuilder.Entity("Ombi.Store.Entities.Tokens", b =>
|
||||||
{
|
{
|
||||||
b.HasOne("Ombi.Store.Entities.OmbiUser", "User")
|
b.HasOne("Ombi.Store.Entities.OmbiUser", "User")
|
||||||
|
|
1244
src/Ombi.Store/Migrations/OmbiSqlite/20220210194758_Radarr4kRole.Designer.cs
generated
Normal file
1244
src/Ombi.Store/Migrations/OmbiSqlite/20220210194758_Radarr4kRole.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,20 @@
|
||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
using Ombi.Helpers;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace Ombi.Store.Migrations.OmbiSqlite
|
||||||
|
{
|
||||||
|
public partial class Radarr4kRole : Migration
|
||||||
|
{
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.InsertRole(OmbiRoles.Request4KMovie);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -5,6 +5,8 @@ using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||||
using Ombi.Store.Context.Sqlite;
|
using Ombi.Store.Context.Sqlite;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
namespace Ombi.Store.Migrations.OmbiSqlite
|
namespace Ombi.Store.Migrations.OmbiSqlite
|
||||||
{
|
{
|
||||||
[DbContext(typeof(OmbiSqliteContext))]
|
[DbContext(typeof(OmbiSqliteContext))]
|
||||||
|
@ -13,8 +15,7 @@ namespace Ombi.Store.Migrations.OmbiSqlite
|
||||||
protected override void BuildModel(ModelBuilder modelBuilder)
|
protected override void BuildModel(ModelBuilder modelBuilder)
|
||||||
{
|
{
|
||||||
#pragma warning disable 612, 618
|
#pragma warning disable 612, 618
|
||||||
modelBuilder
|
modelBuilder.HasAnnotation("ProductVersion", "6.0.0");
|
||||||
.HasAnnotation("ProductVersion", "5.0.1");
|
|
||||||
|
|
||||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b =>
|
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b =>
|
||||||
{
|
{
|
||||||
|
@ -39,7 +40,7 @@ namespace Ombi.Store.Migrations.OmbiSqlite
|
||||||
.IsUnique()
|
.IsUnique()
|
||||||
.HasDatabaseName("RoleNameIndex");
|
.HasDatabaseName("RoleNameIndex");
|
||||||
|
|
||||||
b.ToTable("AspNetRoles");
|
b.ToTable("AspNetRoles", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||||
|
@ -62,7 +63,7 @@ namespace Ombi.Store.Migrations.OmbiSqlite
|
||||||
|
|
||||||
b.HasIndex("RoleId");
|
b.HasIndex("RoleId");
|
||||||
|
|
||||||
b.ToTable("AspNetRoleClaims");
|
b.ToTable("AspNetRoleClaims", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||||
|
@ -85,7 +86,7 @@ namespace Ombi.Store.Migrations.OmbiSqlite
|
||||||
|
|
||||||
b.HasIndex("UserId");
|
b.HasIndex("UserId");
|
||||||
|
|
||||||
b.ToTable("AspNetUserClaims");
|
b.ToTable("AspNetUserClaims", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||||
|
@ -107,7 +108,7 @@ namespace Ombi.Store.Migrations.OmbiSqlite
|
||||||
|
|
||||||
b.HasIndex("UserId");
|
b.HasIndex("UserId");
|
||||||
|
|
||||||
b.ToTable("AspNetUserLogins");
|
b.ToTable("AspNetUserLogins", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||||
|
@ -122,7 +123,7 @@ namespace Ombi.Store.Migrations.OmbiSqlite
|
||||||
|
|
||||||
b.HasIndex("RoleId");
|
b.HasIndex("RoleId");
|
||||||
|
|
||||||
b.ToTable("AspNetUserRoles");
|
b.ToTable("AspNetUserRoles", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||||
|
@ -141,7 +142,7 @@ namespace Ombi.Store.Migrations.OmbiSqlite
|
||||||
|
|
||||||
b.HasKey("UserId", "LoginProvider", "Name");
|
b.HasKey("UserId", "LoginProvider", "Name");
|
||||||
|
|
||||||
b.ToTable("AspNetUserTokens");
|
b.ToTable("AspNetUserTokens", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Ombi.Store.Entities.Audit", b =>
|
modelBuilder.Entity("Ombi.Store.Entities.Audit", b =>
|
||||||
|
@ -341,7 +342,7 @@ namespace Ombi.Store.Migrations.OmbiSqlite
|
||||||
.IsUnique()
|
.IsUnique()
|
||||||
.HasDatabaseName("UserNameIndex");
|
.HasDatabaseName("UserNameIndex");
|
||||||
|
|
||||||
b.ToTable("AspNetUsers");
|
b.ToTable("AspNetUsers", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Ombi.Store.Entities.RecentlyAddedLog", b =>
|
modelBuilder.Entity("Ombi.Store.Entities.RecentlyAddedLog", b =>
|
||||||
|
@ -405,28 +406,6 @@ namespace Ombi.Store.Migrations.OmbiSqlite
|
||||||
b.ToTable("RequestQueue");
|
b.ToTable("RequestQueue");
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Ombi.Store.Entities.RequestSubscription", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("Id")
|
|
||||||
.ValueGeneratedOnAdd()
|
|
||||||
.HasColumnType("INTEGER");
|
|
||||||
|
|
||||||
b.Property<int>("RequestId")
|
|
||||||
.HasColumnType("INTEGER");
|
|
||||||
|
|
||||||
b.Property<int>("RequestType")
|
|
||||||
.HasColumnType("INTEGER");
|
|
||||||
|
|
||||||
b.Property<string>("UserId")
|
|
||||||
.HasColumnType("TEXT");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.HasIndex("UserId");
|
|
||||||
|
|
||||||
b.ToTable("RequestSubscription");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Ombi.Store.Entities.Requests.AlbumRequest", b =>
|
modelBuilder.Entity("Ombi.Store.Entities.Requests.AlbumRequest", b =>
|
||||||
{
|
{
|
||||||
b.Property<int>("Id")
|
b.Property<int>("Id")
|
||||||
|
@ -814,6 +793,28 @@ namespace Ombi.Store.Migrations.OmbiSqlite
|
||||||
b.ToTable("TvRequests");
|
b.ToTable("TvRequests");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("Ombi.Store.Entities.RequestSubscription", b =>
|
||||||
|
{
|
||||||
|
b.Property<int>("Id")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("INTEGER");
|
||||||
|
|
||||||
|
b.Property<int>("RequestId")
|
||||||
|
.HasColumnType("INTEGER");
|
||||||
|
|
||||||
|
b.Property<int>("RequestType")
|
||||||
|
.HasColumnType("INTEGER");
|
||||||
|
|
||||||
|
b.Property<string>("UserId")
|
||||||
|
.HasColumnType("TEXT");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.HasIndex("UserId");
|
||||||
|
|
||||||
|
b.ToTable("RequestSubscription");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Ombi.Store.Entities.Tokens", b =>
|
modelBuilder.Entity("Ombi.Store.Entities.Tokens", b =>
|
||||||
{
|
{
|
||||||
b.Property<int>("Id")
|
b.Property<int>("Id")
|
||||||
|
@ -1051,15 +1052,6 @@ namespace Ombi.Store.Migrations.OmbiSqlite
|
||||||
b.Navigation("User");
|
b.Navigation("User");
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Ombi.Store.Entities.RequestSubscription", b =>
|
|
||||||
{
|
|
||||||
b.HasOne("Ombi.Store.Entities.OmbiUser", "User")
|
|
||||||
.WithMany()
|
|
||||||
.HasForeignKey("UserId");
|
|
||||||
|
|
||||||
b.Navigation("User");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Ombi.Store.Entities.Requests.AlbumRequest", b =>
|
modelBuilder.Entity("Ombi.Store.Entities.Requests.AlbumRequest", b =>
|
||||||
{
|
{
|
||||||
b.HasOne("Ombi.Store.Entities.OmbiUser", "RequestedUser")
|
b.HasOne("Ombi.Store.Entities.OmbiUser", "RequestedUser")
|
||||||
|
@ -1144,6 +1136,15 @@ namespace Ombi.Store.Migrations.OmbiSqlite
|
||||||
b.Navigation("User");
|
b.Navigation("User");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("Ombi.Store.Entities.RequestSubscription", b =>
|
||||||
|
{
|
||||||
|
b.HasOne("Ombi.Store.Entities.OmbiUser", "User")
|
||||||
|
.WithMany()
|
||||||
|
.HasForeignKey("UserId");
|
||||||
|
|
||||||
|
b.Navigation("User");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Ombi.Store.Entities.Tokens", b =>
|
modelBuilder.Entity("Ombi.Store.Entities.Tokens", b =>
|
||||||
{
|
{
|
||||||
b.HasOne("Ombi.Store.Entities.OmbiUser", "User")
|
b.HasOne("Ombi.Store.Entities.OmbiUser", "User")
|
||||||
|
|
|
@ -46,57 +46,36 @@ namespace Ombi.Controllers.V1
|
||||||
[ApiController]
|
[ApiController]
|
||||||
public class IdentityController : Controller
|
public class IdentityController : Controller
|
||||||
{
|
{
|
||||||
public IdentityController(OmbiUserManager user, IMapper mapper, RoleManager<IdentityRole> rm, IEmailProvider prov,
|
public IdentityController(OmbiUserManager user,
|
||||||
|
RoleManager<IdentityRole> rm,
|
||||||
|
IEmailProvider prov,
|
||||||
ISettingsService<EmailNotificationSettings> s,
|
ISettingsService<EmailNotificationSettings> s,
|
||||||
ISettingsService<CustomizationSettings> c,
|
ISettingsService<CustomizationSettings> c,
|
||||||
ISettingsService<OmbiSettings> ombiSettings,
|
ISettingsService<OmbiSettings> ombiSettings,
|
||||||
IWelcomeEmail welcome,
|
IWelcomeEmail welcome,
|
||||||
IMovieRequestRepository m,
|
|
||||||
ITvRequestRepository t,
|
|
||||||
ILogger<IdentityController> l,
|
ILogger<IdentityController> l,
|
||||||
IPlexApi plexApi,
|
IPlexApi plexApi,
|
||||||
ISettingsService<PlexSettings> settings,
|
ISettingsService<PlexSettings> settings,
|
||||||
IRepository<RequestLog> requestLog,
|
|
||||||
IRepository<Issues> issues,
|
|
||||||
IRepository<IssueComments> issueComments,
|
|
||||||
IRepository<NotificationUserId> notificationRepository,
|
|
||||||
IRepository<RequestSubscription> subscriptionRepository,
|
|
||||||
ISettingsService<UserManagementSettings> umSettings,
|
ISettingsService<UserManagementSettings> umSettings,
|
||||||
IRepository<UserNotificationPreferences> notificationPreferences,
|
IRepository<UserNotificationPreferences> notificationPreferences,
|
||||||
IRepository<UserQualityProfiles> userProfiles,
|
IRepository<UserQualityProfiles> userProfiles,
|
||||||
IMusicRequestRepository musicRepo,
|
|
||||||
IMovieRequestEngine movieRequestEngine,
|
|
||||||
ITvRequestEngine tvRequestEngine,
|
|
||||||
IMusicRequestEngine musicEngine,
|
|
||||||
IUserDeletionEngine deletionEngine,
|
IUserDeletionEngine deletionEngine,
|
||||||
IRequestLimitService requestLimitService,
|
IRequestLimitService requestLimitService,
|
||||||
ICacheService cacheService)
|
ICacheService cacheService)
|
||||||
{
|
{
|
||||||
UserManager = user;
|
UserManager = user;
|
||||||
Mapper = mapper;
|
|
||||||
RoleManager = rm;
|
RoleManager = rm;
|
||||||
EmailProvider = prov;
|
EmailProvider = prov;
|
||||||
EmailSettings = s;
|
EmailSettings = s;
|
||||||
CustomizationSettings = c;
|
CustomizationSettings = c;
|
||||||
WelcomeEmail = welcome;
|
WelcomeEmail = welcome;
|
||||||
MovieRepo = m;
|
|
||||||
MusicRepo = musicRepo;
|
|
||||||
TvRepo = t;
|
|
||||||
_log = l;
|
_log = l;
|
||||||
_plexApi = plexApi;
|
_plexApi = plexApi;
|
||||||
_plexSettings = settings;
|
_plexSettings = settings;
|
||||||
_issuesRepository = issues;
|
|
||||||
_requestLogRepository = requestLog;
|
|
||||||
_issueCommentsRepository = issueComments;
|
|
||||||
OmbiSettings = ombiSettings;
|
OmbiSettings = ombiSettings;
|
||||||
_requestSubscriptionRepository = subscriptionRepository;
|
|
||||||
_notificationRepository = notificationRepository;
|
|
||||||
_userManagementSettings = umSettings;
|
_userManagementSettings = umSettings;
|
||||||
TvRequestEngine = tvRequestEngine;
|
|
||||||
MovieRequestEngine = movieRequestEngine;
|
|
||||||
_userNotificationPreferences = notificationPreferences;
|
_userNotificationPreferences = notificationPreferences;
|
||||||
_userQualityProfiles = userProfiles;
|
_userQualityProfiles = userProfiles;
|
||||||
MusicRequestEngine = musicEngine;
|
|
||||||
_deletionEngine = deletionEngine;
|
_deletionEngine = deletionEngine;
|
||||||
_requestLimitService = requestLimitService;
|
_requestLimitService = requestLimitService;
|
||||||
_cacheService = cacheService;
|
_cacheService = cacheService;
|
||||||
|
@ -108,27 +87,15 @@ namespace Ombi.Controllers.V1
|
||||||
private readonly ICacheService _cacheService;
|
private readonly ICacheService _cacheService;
|
||||||
|
|
||||||
private RoleManager<IdentityRole> RoleManager { get; }
|
private RoleManager<IdentityRole> RoleManager { get; }
|
||||||
private IMapper Mapper { get; }
|
|
||||||
private IEmailProvider EmailProvider { get; }
|
private IEmailProvider EmailProvider { get; }
|
||||||
private ISettingsService<EmailNotificationSettings> EmailSettings { get; }
|
private ISettingsService<EmailNotificationSettings> EmailSettings { get; }
|
||||||
private ISettingsService<CustomizationSettings> CustomizationSettings { get; }
|
private ISettingsService<CustomizationSettings> CustomizationSettings { get; }
|
||||||
private readonly ISettingsService<UserManagementSettings> _userManagementSettings;
|
private readonly ISettingsService<UserManagementSettings> _userManagementSettings;
|
||||||
private ISettingsService<OmbiSettings> OmbiSettings { get; }
|
private ISettingsService<OmbiSettings> OmbiSettings { get; }
|
||||||
private IWelcomeEmail WelcomeEmail { get; }
|
private IWelcomeEmail WelcomeEmail { get; }
|
||||||
private IMovieRequestRepository MovieRepo { get; }
|
|
||||||
private ITvRequestRepository TvRepo { get; }
|
|
||||||
private IMovieRequestEngine MovieRequestEngine { get; }
|
|
||||||
private IMusicRequestEngine MusicRequestEngine { get; }
|
|
||||||
private ITvRequestEngine TvRequestEngine { get; }
|
|
||||||
private IMusicRequestRepository MusicRepo { get; }
|
|
||||||
private readonly ILogger<IdentityController> _log;
|
private readonly ILogger<IdentityController> _log;
|
||||||
private readonly IPlexApi _plexApi;
|
private readonly IPlexApi _plexApi;
|
||||||
private readonly ISettingsService<PlexSettings> _plexSettings;
|
private readonly ISettingsService<PlexSettings> _plexSettings;
|
||||||
private readonly IRepository<Issues> _issuesRepository;
|
|
||||||
private readonly IRepository<IssueComments> _issueCommentsRepository;
|
|
||||||
private readonly IRepository<RequestLog> _requestLogRepository;
|
|
||||||
private readonly IRepository<NotificationUserId> _notificationRepository;
|
|
||||||
private readonly IRepository<RequestSubscription> _requestSubscriptionRepository;
|
|
||||||
private readonly IRepository<UserNotificationPreferences> _userNotificationPreferences;
|
private readonly IRepository<UserNotificationPreferences> _userNotificationPreferences;
|
||||||
private readonly IRepository<UserQualityProfiles> _userQualityProfiles;
|
private readonly IRepository<UserQualityProfiles> _userQualityProfiles;
|
||||||
|
|
||||||
|
@ -258,6 +225,8 @@ namespace Ombi.Controllers.V1
|
||||||
await CreateRole(OmbiRoles.ReceivesNewsletter);
|
await CreateRole(OmbiRoles.ReceivesNewsletter);
|
||||||
await CreateRole(OmbiRoles.ManageOwnRequests);
|
await CreateRole(OmbiRoles.ManageOwnRequests);
|
||||||
await CreateRole(OmbiRoles.EditCustomPage);
|
await CreateRole(OmbiRoles.EditCustomPage);
|
||||||
|
await CreateRole(OmbiRoles.EditCustomPage);
|
||||||
|
await CreateRole(OmbiRoles.Request4KMovie);
|
||||||
}
|
}
|
||||||
|
|
||||||
private async Task CreateRole(string role)
|
private async Task CreateRole(string role)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue