aboutsummaryrefslogtreecommitdiff
path: root/server/src
diff options
context:
space:
mode:
Diffstat (limited to 'server/src')
-rw-r--r--server/src/routes/ui/admin/mod.rs12
1 files changed, 8 insertions, 4 deletions
diff --git a/server/src/routes/ui/admin/mod.rs b/server/src/routes/ui/admin/mod.rs
index 2993be0..463319a 100644
--- a/server/src/routes/ui/admin/mod.rs
+++ b/server/src/routes/ui/admin/mod.rs
@@ -68,8 +68,11 @@ pub async fn admin_dashboard<'a>(
@if is_transcoding() {
section.message { p.warn { "Currently transcoding posters." } }
}
- form[method="POST", action=uri!(r_admin_import())] {
- input[type="submit", disabled=is_importing(), value="(Re-)Import Library"];
+ form[method="POST", action=uri!(r_admin_import(true))] {
+ input[type="submit", disabled=is_importing(), value="Start incremental import"];
+ }
+ form[method="POST", action=uri!(r_admin_import(false))] {
+ input[type="submit", disabled=is_importing(), value="Start full import"];
}
form[method="POST", action=uri!(r_admin_transcode_posters())] {
input[type="submit", disabled=is_transcoding(), value="Transcode all posters with low resolution"];
@@ -131,15 +134,16 @@ pub async fn r_admin_remove_invite(
admin_dashboard(database, Some(Ok("Invite invalidated".into()))).await
}
-#[post("/admin/import")]
+#[post("/admin/import?<incremental>")]
pub async fn r_admin_import(
session: AdminSession,
database: &State<Database>,
_federation: &State<Federation>,
+ incremental: bool,
) -> MyResult<DynLayoutPage<'static>> {
drop(session);
let t = Instant::now();
- let r = import_wrap((*database).clone()).await;
+ let r = import_wrap((*database).clone(), incremental).await;
admin_dashboard(
database,
Some(