Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/MediaBrowser.Common/Media/Import/ImportController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ public class ImportController(Ffmpeg ffmpeg, MediaConfig mediaConfig, MediaDbCon
.Concat(['/', '\\', ':', '*', '?', '"', '<', '>', '|'])
.Distinct()
.ToArray();
[HttpPost("files")]
[HttpPost("files"), DisableRequestSizeLimit]
public async Task<ActionResult> Add([FromForm] AddFileRequest request)
{
if (!Directory.Exists(mediaConfig.ImportDirectory)
Expand Down
5 changes: 5 additions & 0 deletions src/MediaBrowser.Frontend/src/app/app.routes.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,11 @@ export const routes: Routes = [
loadComponent: () => import('./search/search').then(m => m.SearchComponent),
canActivate: [authGuard]
},
{
path: 'searchByTag',
loadComponent: () => import('./search/search').then(m => m.SearchComponent),
canActivate: [authGuard]
},
{
path: 'import',
loadComponent: () => import('./import/import').then(m => m.ImportComponent),
Expand Down
2 changes: 1 addition & 1 deletion src/MediaBrowser.Frontend/src/app/meta/meta.html
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ <h2>{{ type }}</h2>
<a
class="result-link"
[title]="metaMember.name"
[routerLink]="'/search'"
[routerLink]="'/searchByTag'"
[queryParams]="metaMember.queryParams"
(click)="clearPagePositionState()">
<div class="card-overlay">
Expand Down
2 changes: 1 addition & 1 deletion src/MediaBrowser.Frontend/src/app/search/search-content.ts
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ export class SearchContentComponent {
getTooltip(result: MediaReadModel): string {
let tooltip = result.title;

if (result.duration) {
if (result.duration && !result.mime.startsWith('image/')) {
tooltip += `\nDuration: ${ReadonlyInfoSectionComponent.formatDuration(result.duration)}`;
}

Expand Down
3 changes: 2 additions & 1 deletion src/MediaBrowser.Tests/MediaBrowserWebApplicationFactory.cs
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,7 @@ public MediaBrowserWebApplicationFactory(DbType dbType = DbType.Sqlite, TimeSpan
public DbConnection? Connection { get; private set; }
public DbType DbType { get; }
public List<JsonObject> ConfigurationFiles { get; }
public const string Version = "v1";
public string CastDirectory { get; }
public string DirectorsDirectory { get; }
public string GenresDirectory { get; }
Expand Down Expand Up @@ -121,7 +122,7 @@ public async Task StartServerAsync()
StartServer();
await Installer.OnStartup(Services, CancellationTokenSource.Token);
}
protected override IHostBuilder CreateHostBuilder() => Installer.CreateHostBuilder([], ConfigurationFiles, Connection);
protected override IHostBuilder CreateHostBuilder() => Installer.CreateHostBuilder([], ConfigurationFiles, Version, Connection);

public string GetJwtForTestUser(UserReadModel? user = null)
{
Expand Down
2 changes: 1 addition & 1 deletion src/MediaBrowser.Tests/SwaggerTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ public async Task Test()
using var swaggerPage = await client.GetAsync("/swagger");
swaggerPage.EnsureSuccessStatusCode();

using var swaggerJsonFile = await client.GetAsync($"/swagger/{Installer.Version}/swagger.json");
using var swaggerJsonFile = await client.GetAsync($"/swagger/{MediaBrowserWebApplicationFactory.Version}/swagger.json");
swaggerJsonFile.EnsureSuccessStatusCode();
}
}
18 changes: 8 additions & 10 deletions src/MediaBrowser/Installer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,8 @@ namespace MediaBrowser;

public class Installer
{
public const string Version = "v1";

public const string CliArgsKey = "CliArgs", TestConfigsKey = "TestConfigs";
public static IHostBuilder CreateHostBuilder(string[] args, IReadOnlyList<JsonObject> configs, DbConnection? connection = null)
public static IHostBuilder CreateHostBuilder(string[] args, IReadOnlyList<JsonObject> configs, string version, DbConnection? connection = null)
{
var builder = Host.CreateDefaultBuilder(args)
.ConfigureAppConfiguration(configurationBuilder =>
Expand All @@ -14,12 +12,12 @@ public static IHostBuilder CreateHostBuilder(string[] args, IReadOnlyList<JsonOb
configurationBuilder.Properties.Add(TestConfigsKey, configs);
})
.ConfigureAppConfiguration(ConfigureSettings)
.ConfigureServices(ConfigureServices)
.ConfigureServices((_, services) => ConfigureServices(services, version))
.ConfigureServices((context, services) =>
MediaInstaller.ConfigureServices(context, services, connection))
.ConfigureServices(ImportInstaller.ConfigureServices)
.ConfigureServices(UserInstaller.ConfigureServices)
.ConfigureWebHostDefaults(webBuilder => webBuilder.Configure(ConfigureApp));
.ConfigureWebHostDefaults(webBuilder => webBuilder.Configure(app => ConfigureApp(app, version)));

return builder;
}
Expand All @@ -41,7 +39,7 @@ public static void ConfigureSettings(IConfigurationBuilder configurationBuilder)
}
}

static void ConfigureServices(HostBuilderContext context, IServiceCollection services)
static void ConfigureServices(IServiceCollection services, string version)
{
// Add services to the container
services.AddControllers()
Expand All @@ -52,14 +50,14 @@ static void ConfigureServices(HostBuilderContext context, IServiceCollection ser
services.Configure<MvcOptions>(options => options.Filters.Add(new ValidationStatus417Filter()));

// Add Swagger services
services.AddSwaggerGen(options => options.SwaggerDoc(Version, new()
services.AddSwaggerGen(options => options.SwaggerDoc(version, new()
{
Title = "MediaBrowser API",
Version = Version
Version = version
}));
}

static void ConfigureApp(IApplicationBuilder app)
static void ConfigureApp(IApplicationBuilder app, string version)
{
// Configure the HTTP request pipeline
app.UseDefaultFiles()
Expand All @@ -70,7 +68,7 @@ static void ConfigureApp(IApplicationBuilder app)
app.UseSwagger();
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint($"/swagger/{Version}/swagger.json", $"MediaBrowser API {Version}");
c.SwaggerEndpoint($"/swagger/{version}/swagger.json", $"MediaBrowser API {version}");
c.RoutePrefix = "swagger";
});

Expand Down
2 changes: 1 addition & 1 deletion src/MediaBrowser/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ public static class Program
{
public async static Task Main(string[] args)
{
var builder = CreateHostBuilder(args, []);
var builder = CreateHostBuilder(args, [], typeof(Program).Assembly.GetName().Version!.ToString());

using var app = builder.Build();
var cancellationToken = app.Services.GetRequiredService<IHostApplicationLifetime>().ApplicationStopped;
Expand Down
Loading