mirror of https://github.com/ErsatzTV/ErsatzTV.git
16 changed files with 14161 additions and 10 deletions
@ -0,0 +1,7 @@
@@ -0,0 +1,7 @@
|
||||
namespace ErsatzTV.Core.Domain; |
||||
|
||||
public enum SidecarSubtitleIdentity |
||||
{ |
||||
FileName = 0, |
||||
StreamIndex = 1 |
||||
} |
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,62 @@
@@ -0,0 +1,62 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
||||
#nullable disable |
||||
|
||||
namespace ErsatzTV.Infrastructure.MySql.Migrations |
||||
{ |
||||
/// <inheritdoc />
|
||||
public partial class Fix_MediaServerExternalSubtitles : Migration |
||||
{ |
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder) |
||||
{ |
||||
// force a re-scan of media server items that have external subtitles; those subtitles were either
|
||||
// deleted outright (jellyfin sends no path) or collapsed into a single row (jellyfin and emby)
|
||||
migrationBuilder.Sql( |
||||
"""
|
||||
UPDATE JellyfinEpisode SET Etag = NULL |
||||
WHERE Id IN ( |
||||
SELECT mv.EpisodeId FROM MediaVersion mv |
||||
INNER JOIN MediaStream ms ON ms.MediaVersionId = mv.Id |
||||
WHERE mv.EpisodeId IS NOT NULL AND ms.MediaStreamKind = 5 |
||||
); |
||||
""");
|
||||
|
||||
migrationBuilder.Sql( |
||||
"""
|
||||
UPDATE JellyfinMovie SET Etag = NULL |
||||
WHERE Id IN ( |
||||
SELECT mv.MovieId FROM MediaVersion mv |
||||
INNER JOIN MediaStream ms ON ms.MediaVersionId = mv.Id |
||||
WHERE mv.MovieId IS NOT NULL AND ms.MediaStreamKind = 5 |
||||
); |
||||
""");
|
||||
|
||||
migrationBuilder.Sql( |
||||
"""
|
||||
UPDATE EmbyEpisode SET Etag = NULL |
||||
WHERE Id IN ( |
||||
SELECT mv.EpisodeId FROM MediaVersion mv |
||||
INNER JOIN MediaStream ms ON ms.MediaVersionId = mv.Id |
||||
WHERE mv.EpisodeId IS NOT NULL AND ms.MediaStreamKind = 5 |
||||
); |
||||
""");
|
||||
|
||||
migrationBuilder.Sql( |
||||
"""
|
||||
UPDATE EmbyMovie SET Etag = NULL |
||||
WHERE Id IN ( |
||||
SELECT mv.MovieId FROM MediaVersion mv |
||||
INNER JOIN MediaStream ms ON ms.MediaVersionId = mv.Id |
||||
WHERE mv.MovieId IS NOT NULL AND ms.MediaStreamKind = 5 |
||||
); |
||||
""");
|
||||
} |
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder) |
||||
{ |
||||
|
||||
} |
||||
} |
||||
} |
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,62 @@
@@ -0,0 +1,62 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
||||
#nullable disable |
||||
|
||||
namespace ErsatzTV.Infrastructure.Sqlite.Migrations |
||||
{ |
||||
/// <inheritdoc />
|
||||
public partial class Fix_MediaServerExternalSubtitles : Migration |
||||
{ |
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder) |
||||
{ |
||||
// force a re-scan of media server items that have external subtitles; those subtitles were either
|
||||
// deleted outright (jellyfin sends no path) or collapsed into a single row (jellyfin and emby)
|
||||
migrationBuilder.Sql( |
||||
"""
|
||||
UPDATE JellyfinEpisode SET Etag = NULL |
||||
WHERE Id IN ( |
||||
SELECT mv.EpisodeId FROM MediaVersion mv |
||||
INNER JOIN MediaStream ms ON ms.MediaVersionId = mv.Id |
||||
WHERE mv.EpisodeId IS NOT NULL AND ms.MediaStreamKind = 5 |
||||
); |
||||
""");
|
||||
|
||||
migrationBuilder.Sql( |
||||
"""
|
||||
UPDATE JellyfinMovie SET Etag = NULL |
||||
WHERE Id IN ( |
||||
SELECT mv.MovieId FROM MediaVersion mv |
||||
INNER JOIN MediaStream ms ON ms.MediaVersionId = mv.Id |
||||
WHERE mv.MovieId IS NOT NULL AND ms.MediaStreamKind = 5 |
||||
); |
||||
""");
|
||||
|
||||
migrationBuilder.Sql( |
||||
"""
|
||||
UPDATE EmbyEpisode SET Etag = NULL |
||||
WHERE Id IN ( |
||||
SELECT mv.EpisodeId FROM MediaVersion mv |
||||
INNER JOIN MediaStream ms ON ms.MediaVersionId = mv.Id |
||||
WHERE mv.EpisodeId IS NOT NULL AND ms.MediaStreamKind = 5 |
||||
); |
||||
""");
|
||||
|
||||
migrationBuilder.Sql( |
||||
"""
|
||||
UPDATE EmbyMovie SET Etag = NULL |
||||
WHERE Id IN ( |
||||
SELECT mv.MovieId FROM MediaVersion mv |
||||
INNER JOIN MediaStream ms ON ms.MediaVersionId = mv.Id |
||||
WHERE mv.MovieId IS NOT NULL AND ms.MediaStreamKind = 5 |
||||
); |
||||
""");
|
||||
} |
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder) |
||||
{ |
||||
|
||||
} |
||||
} |
||||
} |
||||
Loading…
Reference in new issue