Wp2ghost/GhostImageManager/Components/Pages/Home.razor

56 lines
1.8 KiB
Text
Raw Permalink Normal View History

2026-09-24 19:23:54 +02:00
@page "/"
@attribute [Authorize]
@inject GhostConfigService ConfigService
<PageTitle>Startseite</PageTitle>
<div class="jumbotron bg-light p-5 rounded">
<h1 class="display-4">Ghost Image Manager</h1>
<p class="lead">
Verwalte Bilder deiner Ghost-Instanzen direkt vom Server aus.
</p>
<hr class="my-4" />
<p>
Funktionen: Bilder auflisten, nach Posts suchen, verwaiste Bilder finden und Bilder austauschen.
</p>
<a class="btn btn-primary btn-lg" href="images" role="button">Zu den Bildern</a>
<a class="btn btn-outline-secondary btn-lg" href="settings" role="button">Einstellungen</a>
</div>
@if (_config.Instances.Count == 0)
{
<div class="alert alert-warning mt-4">
<strong>Hinweis:</strong> Es ist noch keine Ghost-Instanz konfiguriert.
Bitte hinterlege unter <a href="settings">Einstellungen</a> deine Ghost-URL, den Admin API Key und den lokalen Image-Ordner.
</div>
}
else
{
<div class="row mt-4">
@foreach (var instance in _config.Instances)
{
<div class="col-md-4">
<div class="card">
<div class="card-body">
<h5 class="card-title">@instance.Name</h5>
<p class="card-text">
<strong>URL:</strong> @instance.Url<br />
<strong>Image-Ordner:</strong> <span class="text-truncate d-block" title="@instance.ImageFolderPath">@instance.ImageFolderPath</span>
</p>
<a href="images" class="btn btn-primary">Bilder anzeigen</a>
</div>
</div>
</div>
}
</div>
}
@code {
private GhostConfig _config = new();
protected override void OnInitialized()
{
_config = ConfigService.Load();
}
}