mirror of
				https://github.com/zoriya/Kyoo.git
				synced 2025-10-31 10:37:13 -04:00 
			
		
		
		
	Remove database triggers
This commit is contained in:
		
							parent
							
								
									58b799edb4
								
							
						
					
					
						commit
						db41c55230
					
				
							
								
								
									
										12
									
								
								back/.config/dotnet-tools.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								back/.config/dotnet-tools.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,12 @@ | |||||||
|  | { | ||||||
|  |   "version": 1, | ||||||
|  |   "isRoot": true, | ||||||
|  |   "tools": { | ||||||
|  |     "dotnet-ef": { | ||||||
|  |       "version": "7.0.7", | ||||||
|  |       "commands": [ | ||||||
|  |         "dotnet-ef" | ||||||
|  |       ] | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | } | ||||||
| @ -61,9 +61,11 @@ namespace Kyoo.Core.Controllers | |||||||
| 		/// Create a new <see cref="EpisodeRepository"/>. | 		/// Create a new <see cref="EpisodeRepository"/>. | ||||||
| 		/// </summary> | 		/// </summary> | ||||||
| 		/// <param name="database">The database handle to use.</param> | 		/// <param name="database">The database handle to use.</param> | ||||||
|  | 		/// <param name="shows">A show repository</param> | ||||||
| 		/// <param name="providers">A provider repository</param> | 		/// <param name="providers">A provider repository</param> | ||||||
| 		/// <param name="tracks">A track repository</param> | 		/// <param name="tracks">A track repository</param> | ||||||
| 		public EpisodeRepository(DatabaseContext database, | 		public EpisodeRepository(DatabaseContext database, | ||||||
|  | 			IShowRepository shows, | ||||||
| 			IProviderRepository providers, | 			IProviderRepository providers, | ||||||
| 			ITrackRepository tracks) | 			ITrackRepository tracks) | ||||||
| 			: base(database) | 			: base(database) | ||||||
| @ -71,6 +73,14 @@ namespace Kyoo.Core.Controllers | |||||||
| 			_database = database; | 			_database = database; | ||||||
| 			_providers = providers; | 			_providers = providers; | ||||||
| 			_tracks = tracks; | 			_tracks = tracks; | ||||||
|  | 
 | ||||||
|  | 			// Edit episode slugs when the show's slug changes. | ||||||
|  | 			shows.OnEdited += async (show) => | ||||||
|  | 			{ | ||||||
|  | 				foreach (Episode ep in _database.Episodes.Where(x => x.ShowID == show.ID)) | ||||||
|  | 					ep.ShowSlug = show.Slug; | ||||||
|  | 				await _database.SaveChangesAsync(); | ||||||
|  | 			}; | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		/// <inheritdoc /> | 		/// <inheritdoc /> | ||||||
|  | |||||||
| @ -50,13 +50,23 @@ namespace Kyoo.Core.Controllers | |||||||
| 		/// Create a new <see cref="SeasonRepository"/>. | 		/// Create a new <see cref="SeasonRepository"/>. | ||||||
| 		/// </summary> | 		/// </summary> | ||||||
| 		/// <param name="database">The database handle that will be used</param> | 		/// <param name="database">The database handle that will be used</param> | ||||||
|  | 		/// <param name="shows">A shows repository</param> | ||||||
| 		/// <param name="providers">A provider repository</param> | 		/// <param name="providers">A provider repository</param> | ||||||
| 		public SeasonRepository(DatabaseContext database, | 		public SeasonRepository(DatabaseContext database, | ||||||
|  | 			IShowRepository shows, | ||||||
| 			IProviderRepository providers) | 			IProviderRepository providers) | ||||||
| 			: base(database) | 			: base(database) | ||||||
| 		{ | 		{ | ||||||
| 			_database = database; | 			_database = database; | ||||||
| 			_providers = providers; | 			_providers = providers; | ||||||
|  | 
 | ||||||
|  | 			// Edit seasons slugs when the show's slug changes. | ||||||
|  | 			shows.OnEdited += async (show) => | ||||||
|  | 			{ | ||||||
|  | 				foreach (Season season in _database.Seasons.Where(x => x.ShowID == show.ID)) | ||||||
|  | 					season.ShowSlug = show.Slug; | ||||||
|  | 				await _database.SaveChangesAsync(); | ||||||
|  | 			}; | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		/// <inheritdoc/> | 		/// <inheritdoc/> | ||||||
|  | |||||||
							
								
								
									
										1258
									
								
								back/src/Kyoo.Postgresql/Migrations/20230621074246_RemoveTrigers.Designer.cs
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										1258
									
								
								back/src/Kyoo.Postgresql/Migrations/20230621074246_RemoveTrigers.Designer.cs
									
									
									
										generated
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @ -0,0 +1,50 @@ | |||||||
|  | using Microsoft.EntityFrameworkCore.Migrations; | ||||||
|  | 
 | ||||||
|  | namespace Kyoo.Postgresql.Migrations | ||||||
|  | { | ||||||
|  | 	public partial class RemoveTrigers : Migration | ||||||
|  | 	{ | ||||||
|  | 		protected override void Up(MigrationBuilder migrationBuilder) | ||||||
|  | 		{ | ||||||
|  | 			migrationBuilder.AlterDatabase() | ||||||
|  | 				.Annotation("Npgsql:Enum:item_type", "show,movie,collection") | ||||||
|  | 				.Annotation("Npgsql:Enum:status", "unknown,finished,airing,planned") | ||||||
|  | 				.Annotation("Npgsql:Enum:stream_type", "unknown,video,audio,subtitle") | ||||||
|  | 				.OldAnnotation("Npgsql:Enum:item_type", "show,movie,collection") | ||||||
|  | 				.OldAnnotation("Npgsql:Enum:status", "unknown,finished,airing,planned") | ||||||
|  | 				.OldAnnotation("Npgsql:Enum:stream_type", "unknown,video,audio,subtitle,attachment"); | ||||||
|  | 
 | ||||||
|  | 			// language=PostgreSQL | ||||||
|  | 			migrationBuilder.Sql("DROP TRIGGER show_slug_trigger ON shows;"); | ||||||
|  | 			// language=PostgreSQL | ||||||
|  | 			migrationBuilder.Sql(@"DROP FUNCTION show_slug_update;"); | ||||||
|  | 			// language=PostgreSQL | ||||||
|  | 			migrationBuilder.Sql(@"DROP TRIGGER season_slug_trigger ON seasons;"); | ||||||
|  | 			// language=PostgreSQL | ||||||
|  | 			migrationBuilder.Sql(@"DROP FUNCTION season_slug_update;"); | ||||||
|  | 			// language=PostgreSQL | ||||||
|  | 			migrationBuilder.Sql("DROP TRIGGER episode_slug_trigger ON episodes;"); | ||||||
|  | 			// language=PostgreSQL | ||||||
|  | 			migrationBuilder.Sql(@"DROP FUNCTION episode_slug_update;"); | ||||||
|  | 			// language=PostgreSQL | ||||||
|  | 			migrationBuilder.Sql("DROP TRIGGER track_slug_trigger ON tracks;"); | ||||||
|  | 			// language=PostgreSQL | ||||||
|  | 			migrationBuilder.Sql(@"DROP FUNCTION track_slug_update;"); | ||||||
|  | 			// language=PostgreSQL | ||||||
|  | 			migrationBuilder.Sql("DROP TRIGGER episode_track_slug_trigger ON episodes;"); | ||||||
|  | 			// language=PostgreSQL | ||||||
|  | 			migrationBuilder.Sql(@"DROP FUNCTION episode_update_tracks_slug;"); | ||||||
|  | 		} | ||||||
|  | 
 | ||||||
|  | 		protected override void Down(MigrationBuilder migrationBuilder) | ||||||
|  | 		{ | ||||||
|  | 			migrationBuilder.AlterDatabase() | ||||||
|  | 				.Annotation("Npgsql:Enum:item_type", "show,movie,collection") | ||||||
|  | 				.Annotation("Npgsql:Enum:status", "unknown,finished,airing,planned") | ||||||
|  | 				.Annotation("Npgsql:Enum:stream_type", "unknown,video,audio,subtitle,attachment") | ||||||
|  | 				.OldAnnotation("Npgsql:Enum:item_type", "show,movie,collection") | ||||||
|  | 				.OldAnnotation("Npgsql:Enum:status", "unknown,finished,airing,planned") | ||||||
|  | 				.OldAnnotation("Npgsql:Enum:stream_type", "unknown,video,audio,subtitle"); | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  | } | ||||||
| @ -1,4 +1,4 @@ | |||||||
| // <auto-generated /> | // <auto-generated /> | ||||||
| using System; | using System; | ||||||
| using System.Collections.Generic; | using System.Collections.Generic; | ||||||
| using Kyoo.Abstractions.Models; | using Kyoo.Abstractions.Models; | ||||||
| @ -19,12 +19,12 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|             modelBuilder |             modelBuilder | ||||||
|                 .HasPostgresEnum(null, "item_type", new[] { "show", "movie", "collection" }) |                 .HasPostgresEnum(null, "item_type", new[] { "show", "movie", "collection" }) | ||||||
|                 .HasPostgresEnum(null, "status", new[] { "unknown", "finished", "airing", "planned" }) |                 .HasPostgresEnum(null, "status", new[] { "unknown", "finished", "airing", "planned" }) | ||||||
|                 .HasPostgresEnum(null, "stream_type", new[] { "unknown", "video", "audio", "subtitle", "attachment" }) |                 .HasPostgresEnum(null, "stream_type", new[] { "unknown", "video", "audio", "subtitle" }) | ||||||
|                 .HasAnnotation("Relational:MaxIdentifierLength", 63) |                 .HasAnnotation("Relational:MaxIdentifierLength", 63) | ||||||
|                 .HasAnnotation("ProductVersion", "5.0.8") |                 .HasAnnotation("ProductVersion", "5.0.7") | ||||||
|                 .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); |                 .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Collection", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Collection", b => | ||||||
|                 { |                 { | ||||||
|                     b.Property<int>("ID") |                     b.Property<int>("ID") | ||||||
|                         .ValueGeneratedOnAdd() |                         .ValueGeneratedOnAdd() | ||||||
| @ -59,7 +59,7 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.ToTable("collections"); |                     b.ToTable("collections"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Episode", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Episode", b => | ||||||
|                 { |                 { | ||||||
|                     b.Property<int>("ID") |                     b.Property<int>("ID") | ||||||
|                         .ValueGeneratedOnAdd() |                         .ValueGeneratedOnAdd() | ||||||
| @ -129,7 +129,7 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.ToTable("episodes"); |                     b.ToTable("episodes"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Genre", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Genre", b => | ||||||
|                 { |                 { | ||||||
|                     b.Property<int>("ID") |                     b.Property<int>("ID") | ||||||
|                         .ValueGeneratedOnAdd() |                         .ValueGeneratedOnAdd() | ||||||
| @ -156,7 +156,7 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.ToTable("genres"); |                     b.ToTable("genres"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Library", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Library", b => | ||||||
|                 { |                 { | ||||||
|                     b.Property<int>("ID") |                     b.Property<int>("ID") | ||||||
|                         .ValueGeneratedOnAdd() |                         .ValueGeneratedOnAdd() | ||||||
| @ -187,7 +187,7 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.ToTable("libraries"); |                     b.ToTable("libraries"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.LibraryItem", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.LibraryItem", b => | ||||||
|                 { |                 { | ||||||
|                     b.Property<int>("ID") |                     b.Property<int>("ID") | ||||||
|                         .HasColumnType("integer") |                         .HasColumnType("integer") | ||||||
| @ -232,7 +232,7 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.ToView("library_items"); |                     b.ToView("library_items"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.People", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.People", b => | ||||||
|                 { |                 { | ||||||
|                     b.Property<int>("ID") |                     b.Property<int>("ID") | ||||||
|                         .ValueGeneratedOnAdd() |                         .ValueGeneratedOnAdd() | ||||||
| @ -263,7 +263,7 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.ToTable("people"); |                     b.ToTable("people"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.PeopleRole", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.PeopleRole", b => | ||||||
|                 { |                 { | ||||||
|                     b.Property<int>("ID") |                     b.Property<int>("ID") | ||||||
|                         .ValueGeneratedOnAdd() |                         .ValueGeneratedOnAdd() | ||||||
| @ -299,7 +299,7 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.ToTable("people_roles"); |                     b.ToTable("people_roles"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Provider", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Provider", b => | ||||||
|                 { |                 { | ||||||
|                     b.Property<int>("ID") |                     b.Property<int>("ID") | ||||||
|                         .ValueGeneratedOnAdd() |                         .ValueGeneratedOnAdd() | ||||||
| @ -330,7 +330,7 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.ToTable("providers"); |                     b.ToTable("providers"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Season", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Season", b => | ||||||
|                 { |                 { | ||||||
|                     b.Property<int>("ID") |                     b.Property<int>("ID") | ||||||
|                         .ValueGeneratedOnAdd() |                         .ValueGeneratedOnAdd() | ||||||
| @ -385,7 +385,7 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.ToTable("seasons"); |                     b.ToTable("seasons"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Show", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Show", b => | ||||||
|                 { |                 { | ||||||
|                     b.Property<int>("ID") |                     b.Property<int>("ID") | ||||||
|                         .ValueGeneratedOnAdd() |                         .ValueGeneratedOnAdd() | ||||||
| @ -451,7 +451,7 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.ToTable("shows"); |                     b.ToTable("shows"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Studio", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Studio", b => | ||||||
|                 { |                 { | ||||||
|                     b.Property<int>("ID") |                     b.Property<int>("ID") | ||||||
|                         .ValueGeneratedOnAdd() |                         .ValueGeneratedOnAdd() | ||||||
| @ -478,7 +478,7 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.ToTable("studios"); |                     b.ToTable("studios"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Track", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Track", b => | ||||||
|                 { |                 { | ||||||
|                     b.Property<int>("ID") |                     b.Property<int>("ID") | ||||||
|                         .ValueGeneratedOnAdd() |                         .ValueGeneratedOnAdd() | ||||||
| @ -545,7 +545,7 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.ToTable("tracks"); |                     b.ToTable("tracks"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.User", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.User", b => | ||||||
|                 { |                 { | ||||||
|                     b.Property<int>("ID") |                     b.Property<int>("ID") | ||||||
|                         .ValueGeneratedOnAdd() |                         .ValueGeneratedOnAdd() | ||||||
| @ -592,7 +592,7 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.ToTable("users"); |                     b.ToTable("users"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.WatchedEpisode", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.WatchedEpisode", b => | ||||||
|                 { |                 { | ||||||
|                     b.Property<int>("UserID") |                     b.Property<int>("UserID") | ||||||
|                         .HasColumnType("integer") |                         .HasColumnType("integer") | ||||||
| @ -891,15 +891,15 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.ToTable("studio_metadata_id"); |                     b.ToTable("studio_metadata_id"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Episode", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Episode", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.Season", "Season") |                     b.HasOne("Kyoo.Abstractions.Models.Season", "Season") | ||||||
|                         .WithMany("Episodes") |                         .WithMany("Episodes") | ||||||
|                         .HasForeignKey("SeasonID") |                         .HasForeignKey("SeasonID") | ||||||
|                         .HasConstraintName("fk_episodes_seasons_season_id") |                         .HasConstraintName("fk_episodes_seasons_season_id") | ||||||
|                         .OnDelete(DeleteBehavior.Cascade); |                         .OnDelete(DeleteBehavior.Cascade); | ||||||
| 
 | 
 | ||||||
|                     b.HasOne("Kyoo.Models.Show", "Show") |                     b.HasOne("Kyoo.Abstractions.Models.Show", "Show") | ||||||
|                         .WithMany("Episodes") |                         .WithMany("Episodes") | ||||||
|                         .HasForeignKey("ShowID") |                         .HasForeignKey("ShowID") | ||||||
|                         .HasConstraintName("fk_episodes_shows_show_id") |                         .HasConstraintName("fk_episodes_shows_show_id") | ||||||
| @ -911,16 +911,16 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.Navigation("Show"); |                     b.Navigation("Show"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.PeopleRole", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.PeopleRole", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.People", "People") |                     b.HasOne("Kyoo.Abstractions.Models.People", "People") | ||||||
|                         .WithMany("Roles") |                         .WithMany("Roles") | ||||||
|                         .HasForeignKey("PeopleID") |                         .HasForeignKey("PeopleID") | ||||||
|                         .HasConstraintName("fk_people_roles_people_people_id") |                         .HasConstraintName("fk_people_roles_people_people_id") | ||||||
|                         .OnDelete(DeleteBehavior.Cascade) |                         .OnDelete(DeleteBehavior.Cascade) | ||||||
|                         .IsRequired(); |                         .IsRequired(); | ||||||
| 
 | 
 | ||||||
|                     b.HasOne("Kyoo.Models.Show", "Show") |                     b.HasOne("Kyoo.Abstractions.Models.Show", "Show") | ||||||
|                         .WithMany("People") |                         .WithMany("People") | ||||||
|                         .HasForeignKey("ShowID") |                         .HasForeignKey("ShowID") | ||||||
|                         .HasConstraintName("fk_people_roles_shows_show_id") |                         .HasConstraintName("fk_people_roles_shows_show_id") | ||||||
| @ -932,9 +932,9 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.Navigation("Show"); |                     b.Navigation("Show"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Season", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Season", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.Show", "Show") |                     b.HasOne("Kyoo.Abstractions.Models.Show", "Show") | ||||||
|                         .WithMany("Seasons") |                         .WithMany("Seasons") | ||||||
|                         .HasForeignKey("ShowID") |                         .HasForeignKey("ShowID") | ||||||
|                         .HasConstraintName("fk_seasons_shows_show_id") |                         .HasConstraintName("fk_seasons_shows_show_id") | ||||||
| @ -944,9 +944,9 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.Navigation("Show"); |                     b.Navigation("Show"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Show", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Show", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.Studio", "Studio") |                     b.HasOne("Kyoo.Abstractions.Models.Studio", "Studio") | ||||||
|                         .WithMany("Shows") |                         .WithMany("Shows") | ||||||
|                         .HasForeignKey("StudioID") |                         .HasForeignKey("StudioID") | ||||||
|                         .HasConstraintName("fk_shows_studios_studio_id") |                         .HasConstraintName("fk_shows_studios_studio_id") | ||||||
| @ -955,9 +955,9 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.Navigation("Studio"); |                     b.Navigation("Studio"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Track", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Track", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.Episode", "Episode") |                     b.HasOne("Kyoo.Abstractions.Models.Episode", "Episode") | ||||||
|                         .WithMany("Tracks") |                         .WithMany("Tracks") | ||||||
|                         .HasForeignKey("EpisodeID") |                         .HasForeignKey("EpisodeID") | ||||||
|                         .HasConstraintName("fk_tracks_episodes_episode_id") |                         .HasConstraintName("fk_tracks_episodes_episode_id") | ||||||
| @ -967,16 +967,16 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.Navigation("Episode"); |                     b.Navigation("Episode"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.WatchedEpisode", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.WatchedEpisode", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.Episode", "Episode") |                     b.HasOne("Kyoo.Abstractions.Models.Episode", "Episode") | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("EpisodeID") |                         .HasForeignKey("EpisodeID") | ||||||
|                         .HasConstraintName("fk_watched_episodes_episodes_episode_id") |                         .HasConstraintName("fk_watched_episodes_episodes_episode_id") | ||||||
|                         .OnDelete(DeleteBehavior.Cascade) |                         .OnDelete(DeleteBehavior.Cascade) | ||||||
|                         .IsRequired(); |                         .IsRequired(); | ||||||
| 
 | 
 | ||||||
|                     b.HasOne("Kyoo.Models.User", null) |                     b.HasOne("Kyoo.Abstractions.Models.User", null) | ||||||
|                         .WithMany("CurrentlyWatching") |                         .WithMany("CurrentlyWatching") | ||||||
|                         .HasForeignKey("UserID") |                         .HasForeignKey("UserID") | ||||||
|                         .HasConstraintName("fk_watched_episodes_users_user_id") |                         .HasConstraintName("fk_watched_episodes_users_user_id") | ||||||
| @ -988,14 +988,14 @@ namespace Kyoo.Postgresql.Migrations | |||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("ShowUser", b => |             modelBuilder.Entity("ShowUser", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.User", null) |                     b.HasOne("Kyoo.Abstractions.Models.User", null) | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("UsersID") |                         .HasForeignKey("UsersID") | ||||||
|                         .HasConstraintName("fk_link_user_show_users_users_id") |                         .HasConstraintName("fk_link_user_show_users_users_id") | ||||||
|                         .OnDelete(DeleteBehavior.Cascade) |                         .OnDelete(DeleteBehavior.Cascade) | ||||||
|                         .IsRequired(); |                         .IsRequired(); | ||||||
| 
 | 
 | ||||||
|                     b.HasOne("Kyoo.Models.Show", null) |                     b.HasOne("Kyoo.Abstractions.Models.Show", null) | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("WatchedID") |                         .HasForeignKey("WatchedID") | ||||||
|                         .HasConstraintName("fk_link_user_show_shows_watched_id") |                         .HasConstraintName("fk_link_user_show_shows_watched_id") | ||||||
| @ -1005,14 +1005,14 @@ namespace Kyoo.Postgresql.Migrations | |||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("collection_metadata_id", b => |             modelBuilder.Entity("collection_metadata_id", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.Provider", "Provider") |                     b.HasOne("Kyoo.Abstractions.Models.Provider", "Provider") | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("ProviderID") |                         .HasForeignKey("ProviderID") | ||||||
|                         .HasConstraintName("fk_collection_metadata_id_providers_provider_id") |                         .HasConstraintName("fk_collection_metadata_id_providers_provider_id") | ||||||
|                         .OnDelete(DeleteBehavior.Cascade) |                         .OnDelete(DeleteBehavior.Cascade) | ||||||
|                         .IsRequired(); |                         .IsRequired(); | ||||||
| 
 | 
 | ||||||
|                     b.HasOne("Kyoo.Models.Collection", null) |                     b.HasOne("Kyoo.Abstractions.Models.Collection", null) | ||||||
|                         .WithMany("ExternalIDs") |                         .WithMany("ExternalIDs") | ||||||
|                         .HasForeignKey("ResourceID") |                         .HasForeignKey("ResourceID") | ||||||
|                         .HasConstraintName("fk_collection_metadata_id_collections_collection_id") |                         .HasConstraintName("fk_collection_metadata_id_collections_collection_id") | ||||||
| @ -1024,14 +1024,14 @@ namespace Kyoo.Postgresql.Migrations | |||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("episode_metadata_id", b => |             modelBuilder.Entity("episode_metadata_id", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.Provider", "Provider") |                     b.HasOne("Kyoo.Abstractions.Models.Provider", "Provider") | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("ProviderID") |                         .HasForeignKey("ProviderID") | ||||||
|                         .HasConstraintName("fk_episode_metadata_id_providers_provider_id") |                         .HasConstraintName("fk_episode_metadata_id_providers_provider_id") | ||||||
|                         .OnDelete(DeleteBehavior.Cascade) |                         .OnDelete(DeleteBehavior.Cascade) | ||||||
|                         .IsRequired(); |                         .IsRequired(); | ||||||
| 
 | 
 | ||||||
|                     b.HasOne("Kyoo.Models.Episode", null) |                     b.HasOne("Kyoo.Abstractions.Models.Episode", null) | ||||||
|                         .WithMany("ExternalIDs") |                         .WithMany("ExternalIDs") | ||||||
|                         .HasForeignKey("ResourceID") |                         .HasForeignKey("ResourceID") | ||||||
|                         .HasConstraintName("fk_episode_metadata_id_episodes_episode_id") |                         .HasConstraintName("fk_episode_metadata_id_episodes_episode_id") | ||||||
| @ -1043,14 +1043,14 @@ namespace Kyoo.Postgresql.Migrations | |||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("link_collection_show", b => |             modelBuilder.Entity("link_collection_show", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.Collection", null) |                     b.HasOne("Kyoo.Abstractions.Models.Collection", null) | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("collection_id") |                         .HasForeignKey("collection_id") | ||||||
|                         .HasConstraintName("fk_link_collection_show_collections_collection_id") |                         .HasConstraintName("fk_link_collection_show_collections_collection_id") | ||||||
|                         .OnDelete(DeleteBehavior.Cascade) |                         .OnDelete(DeleteBehavior.Cascade) | ||||||
|                         .IsRequired(); |                         .IsRequired(); | ||||||
| 
 | 
 | ||||||
|                     b.HasOne("Kyoo.Models.Show", null) |                     b.HasOne("Kyoo.Abstractions.Models.Show", null) | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("show_id") |                         .HasForeignKey("show_id") | ||||||
|                         .HasConstraintName("fk_link_collection_show_shows_show_id") |                         .HasConstraintName("fk_link_collection_show_shows_show_id") | ||||||
| @ -1060,14 +1060,14 @@ namespace Kyoo.Postgresql.Migrations | |||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("link_library_collection", b => |             modelBuilder.Entity("link_library_collection", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.Collection", null) |                     b.HasOne("Kyoo.Abstractions.Models.Collection", null) | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("collection_id") |                         .HasForeignKey("collection_id") | ||||||
|                         .HasConstraintName("fk_link_library_collection_collections_collection_id") |                         .HasConstraintName("fk_link_library_collection_collections_collection_id") | ||||||
|                         .OnDelete(DeleteBehavior.Cascade) |                         .OnDelete(DeleteBehavior.Cascade) | ||||||
|                         .IsRequired(); |                         .IsRequired(); | ||||||
| 
 | 
 | ||||||
|                     b.HasOne("Kyoo.Models.Library", null) |                     b.HasOne("Kyoo.Abstractions.Models.Library", null) | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("library_id") |                         .HasForeignKey("library_id") | ||||||
|                         .HasConstraintName("fk_link_library_collection_libraries_library_id") |                         .HasConstraintName("fk_link_library_collection_libraries_library_id") | ||||||
| @ -1077,14 +1077,14 @@ namespace Kyoo.Postgresql.Migrations | |||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("link_library_provider", b => |             modelBuilder.Entity("link_library_provider", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.Library", null) |                     b.HasOne("Kyoo.Abstractions.Models.Library", null) | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("library_id") |                         .HasForeignKey("library_id") | ||||||
|                         .HasConstraintName("fk_link_library_provider_libraries_library_id") |                         .HasConstraintName("fk_link_library_provider_libraries_library_id") | ||||||
|                         .OnDelete(DeleteBehavior.Cascade) |                         .OnDelete(DeleteBehavior.Cascade) | ||||||
|                         .IsRequired(); |                         .IsRequired(); | ||||||
| 
 | 
 | ||||||
|                     b.HasOne("Kyoo.Models.Provider", null) |                     b.HasOne("Kyoo.Abstractions.Models.Provider", null) | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("provider_id") |                         .HasForeignKey("provider_id") | ||||||
|                         .HasConstraintName("fk_link_library_provider_providers_provider_id") |                         .HasConstraintName("fk_link_library_provider_providers_provider_id") | ||||||
| @ -1094,14 +1094,14 @@ namespace Kyoo.Postgresql.Migrations | |||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("link_library_show", b => |             modelBuilder.Entity("link_library_show", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.Library", null) |                     b.HasOne("Kyoo.Abstractions.Models.Library", null) | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("library_id") |                         .HasForeignKey("library_id") | ||||||
|                         .HasConstraintName("fk_link_library_show_libraries_library_id") |                         .HasConstraintName("fk_link_library_show_libraries_library_id") | ||||||
|                         .OnDelete(DeleteBehavior.Cascade) |                         .OnDelete(DeleteBehavior.Cascade) | ||||||
|                         .IsRequired(); |                         .IsRequired(); | ||||||
| 
 | 
 | ||||||
|                     b.HasOne("Kyoo.Models.Show", null) |                     b.HasOne("Kyoo.Abstractions.Models.Show", null) | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("show_id") |                         .HasForeignKey("show_id") | ||||||
|                         .HasConstraintName("fk_link_library_show_shows_show_id") |                         .HasConstraintName("fk_link_library_show_shows_show_id") | ||||||
| @ -1111,14 +1111,14 @@ namespace Kyoo.Postgresql.Migrations | |||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("link_show_genre", b => |             modelBuilder.Entity("link_show_genre", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.Genre", null) |                     b.HasOne("Kyoo.Abstractions.Models.Genre", null) | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("genre_id") |                         .HasForeignKey("genre_id") | ||||||
|                         .HasConstraintName("fk_link_show_genre_genres_genre_id") |                         .HasConstraintName("fk_link_show_genre_genres_genre_id") | ||||||
|                         .OnDelete(DeleteBehavior.Cascade) |                         .OnDelete(DeleteBehavior.Cascade) | ||||||
|                         .IsRequired(); |                         .IsRequired(); | ||||||
| 
 | 
 | ||||||
|                     b.HasOne("Kyoo.Models.Show", null) |                     b.HasOne("Kyoo.Abstractions.Models.Show", null) | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("show_id") |                         .HasForeignKey("show_id") | ||||||
|                         .HasConstraintName("fk_link_show_genre_shows_show_id") |                         .HasConstraintName("fk_link_show_genre_shows_show_id") | ||||||
| @ -1128,14 +1128,14 @@ namespace Kyoo.Postgresql.Migrations | |||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("people_metadata_id", b => |             modelBuilder.Entity("people_metadata_id", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.Provider", "Provider") |                     b.HasOne("Kyoo.Abstractions.Models.Provider", "Provider") | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("ProviderID") |                         .HasForeignKey("ProviderID") | ||||||
|                         .HasConstraintName("fk_people_metadata_id_providers_provider_id") |                         .HasConstraintName("fk_people_metadata_id_providers_provider_id") | ||||||
|                         .OnDelete(DeleteBehavior.Cascade) |                         .OnDelete(DeleteBehavior.Cascade) | ||||||
|                         .IsRequired(); |                         .IsRequired(); | ||||||
| 
 | 
 | ||||||
|                     b.HasOne("Kyoo.Models.People", null) |                     b.HasOne("Kyoo.Abstractions.Models.People", null) | ||||||
|                         .WithMany("ExternalIDs") |                         .WithMany("ExternalIDs") | ||||||
|                         .HasForeignKey("ResourceID") |                         .HasForeignKey("ResourceID") | ||||||
|                         .HasConstraintName("fk_people_metadata_id_people_people_id") |                         .HasConstraintName("fk_people_metadata_id_people_people_id") | ||||||
| @ -1147,14 +1147,14 @@ namespace Kyoo.Postgresql.Migrations | |||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("season_metadata_id", b => |             modelBuilder.Entity("season_metadata_id", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.Provider", "Provider") |                     b.HasOne("Kyoo.Abstractions.Models.Provider", "Provider") | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("ProviderID") |                         .HasForeignKey("ProviderID") | ||||||
|                         .HasConstraintName("fk_season_metadata_id_providers_provider_id") |                         .HasConstraintName("fk_season_metadata_id_providers_provider_id") | ||||||
|                         .OnDelete(DeleteBehavior.Cascade) |                         .OnDelete(DeleteBehavior.Cascade) | ||||||
|                         .IsRequired(); |                         .IsRequired(); | ||||||
| 
 | 
 | ||||||
|                     b.HasOne("Kyoo.Models.Season", null) |                     b.HasOne("Kyoo.Abstractions.Models.Season", null) | ||||||
|                         .WithMany("ExternalIDs") |                         .WithMany("ExternalIDs") | ||||||
|                         .HasForeignKey("ResourceID") |                         .HasForeignKey("ResourceID") | ||||||
|                         .HasConstraintName("fk_season_metadata_id_seasons_season_id") |                         .HasConstraintName("fk_season_metadata_id_seasons_season_id") | ||||||
| @ -1166,14 +1166,14 @@ namespace Kyoo.Postgresql.Migrations | |||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("show_metadata_id", b => |             modelBuilder.Entity("show_metadata_id", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.Provider", "Provider") |                     b.HasOne("Kyoo.Abstractions.Models.Provider", "Provider") | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("ProviderID") |                         .HasForeignKey("ProviderID") | ||||||
|                         .HasConstraintName("fk_show_metadata_id_providers_provider_id") |                         .HasConstraintName("fk_show_metadata_id_providers_provider_id") | ||||||
|                         .OnDelete(DeleteBehavior.Cascade) |                         .OnDelete(DeleteBehavior.Cascade) | ||||||
|                         .IsRequired(); |                         .IsRequired(); | ||||||
| 
 | 
 | ||||||
|                     b.HasOne("Kyoo.Models.Show", null) |                     b.HasOne("Kyoo.Abstractions.Models.Show", null) | ||||||
|                         .WithMany("ExternalIDs") |                         .WithMany("ExternalIDs") | ||||||
|                         .HasForeignKey("ResourceID") |                         .HasForeignKey("ResourceID") | ||||||
|                         .HasConstraintName("fk_show_metadata_id_shows_show_id") |                         .HasConstraintName("fk_show_metadata_id_shows_show_id") | ||||||
| @ -1185,14 +1185,14 @@ namespace Kyoo.Postgresql.Migrations | |||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("studio_metadata_id", b => |             modelBuilder.Entity("studio_metadata_id", b => | ||||||
|                 { |                 { | ||||||
|                     b.HasOne("Kyoo.Models.Provider", "Provider") |                     b.HasOne("Kyoo.Abstractions.Models.Provider", "Provider") | ||||||
|                         .WithMany() |                         .WithMany() | ||||||
|                         .HasForeignKey("ProviderID") |                         .HasForeignKey("ProviderID") | ||||||
|                         .HasConstraintName("fk_studio_metadata_id_providers_provider_id") |                         .HasConstraintName("fk_studio_metadata_id_providers_provider_id") | ||||||
|                         .OnDelete(DeleteBehavior.Cascade) |                         .OnDelete(DeleteBehavior.Cascade) | ||||||
|                         .IsRequired(); |                         .IsRequired(); | ||||||
| 
 | 
 | ||||||
|                     b.HasOne("Kyoo.Models.Studio", null) |                     b.HasOne("Kyoo.Abstractions.Models.Studio", null) | ||||||
|                         .WithMany("ExternalIDs") |                         .WithMany("ExternalIDs") | ||||||
|                         .HasForeignKey("ResourceID") |                         .HasForeignKey("ResourceID") | ||||||
|                         .HasConstraintName("fk_studio_metadata_id_studios_studio_id") |                         .HasConstraintName("fk_studio_metadata_id_studios_studio_id") | ||||||
| @ -1202,33 +1202,33 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.Navigation("Provider"); |                     b.Navigation("Provider"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Collection", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Collection", b => | ||||||
|                 { |                 { | ||||||
|                     b.Navigation("ExternalIDs"); |                     b.Navigation("ExternalIDs"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Episode", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Episode", b => | ||||||
|                 { |                 { | ||||||
|                     b.Navigation("ExternalIDs"); |                     b.Navigation("ExternalIDs"); | ||||||
| 
 | 
 | ||||||
|                     b.Navigation("Tracks"); |                     b.Navigation("Tracks"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.People", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.People", b => | ||||||
|                 { |                 { | ||||||
|                     b.Navigation("ExternalIDs"); |                     b.Navigation("ExternalIDs"); | ||||||
| 
 | 
 | ||||||
|                     b.Navigation("Roles"); |                     b.Navigation("Roles"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Season", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Season", b => | ||||||
|                 { |                 { | ||||||
|                     b.Navigation("Episodes"); |                     b.Navigation("Episodes"); | ||||||
| 
 | 
 | ||||||
|                     b.Navigation("ExternalIDs"); |                     b.Navigation("ExternalIDs"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Show", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Show", b => | ||||||
|                 { |                 { | ||||||
|                     b.Navigation("Episodes"); |                     b.Navigation("Episodes"); | ||||||
| 
 | 
 | ||||||
| @ -1239,14 +1239,14 @@ namespace Kyoo.Postgresql.Migrations | |||||||
|                     b.Navigation("Seasons"); |                     b.Navigation("Seasons"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.Studio", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.Studio", b => | ||||||
|                 { |                 { | ||||||
|                     b.Navigation("ExternalIDs"); |                     b.Navigation("ExternalIDs"); | ||||||
| 
 | 
 | ||||||
|                     b.Navigation("Shows"); |                     b.Navigation("Shows"); | ||||||
|                 }); |                 }); | ||||||
| 
 | 
 | ||||||
|             modelBuilder.Entity("Kyoo.Models.User", b => |             modelBuilder.Entity("Kyoo.Abstractions.Models.User", b => | ||||||
|                 { |                 { | ||||||
|                     b.Navigation("CurrentlyWatching"); |                     b.Navigation("CurrentlyWatching"); | ||||||
|                 }); |                 }); | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user