aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--base/src/database.rs9
-rw-r--r--import/src/matroska.rs2
-rw-r--r--server/src/routes/ui/admin/mod.rs26
3 files changed, 20 insertions, 17 deletions
diff --git a/base/src/database.rs b/base/src/database.rs
index 90e42b9..2eecbf6 100644
--- a/base/src/database.rs
+++ b/base/src/database.rs
@@ -107,10 +107,17 @@ impl Database {
let mut t_node = txn.open_table(T_NODE)?;
let mut t_node_children = txn.open_table(T_NODE_CHILDREN)?;
let mut t_node_external_id = txn.open_table(T_NODE_EXTERNAL_ID)?;
+ let mut t_import_file_mtime = txn.open_table(T_IMPORT_FILE_MTIME)?;
t_node.retain(|_, _| false)?;
t_node_children.retain(|_, _| false)?;
t_node_external_id.retain(|_, _| false)?;
- drop((t_node, t_node_children, t_node_external_id));
+ t_import_file_mtime.retain(|_, _| false)?;
+ drop((
+ t_node,
+ t_node_children,
+ t_node_external_id,
+ t_import_file_mtime,
+ ));
txn.commit()?;
Ok(())
}
diff --git a/import/src/matroska.rs b/import/src/matroska.rs
index f9a59ab..4694833 100644
--- a/import/src/matroska.rs
+++ b/import/src/matroska.rs
@@ -92,7 +92,7 @@ pub(crate) fn matroska_metadata(path: &Path) -> Result<Arc<Option<MatroskaMetada
.ser(),
)
}
- a => println!("{a:?}"),
+ _ => (),
}
}
}
diff --git a/server/src/routes/ui/admin/mod.rs b/server/src/routes/ui/admin/mod.rs
index 62a06bc..edbdb03 100644
--- a/server/src/routes/ui/admin/mod.rs
+++ b/server/src/routes/ui/admin/mod.rs
@@ -73,20 +73,17 @@ pub async fn admin_dashboard<'a>(
@if is_transcoding() {
section.message { p.warn { "Currently transcoding posters." } }
}
- form[method="POST", action=uri!(r_admin_import(true, false))] {
+ 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, false))] {
+ 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_import(false, true))] {
- input[type="submit", disabled=is_importing(), value="Clear all nodes"];
- }
form[method="POST", action=uri!(r_admin_transcode_posters())] {
input[type="submit", disabled=is_transcoding(), value="Transcode all posters with low resolution"];
}
form[method="POST", action=uri!(r_admin_update_search())] {
- input[type="submit", value="Update full-text search index"];
+ input[type="submit", value="Regenerate full-text search index"];
}
form[method="POST", action=uri!(r_admin_delete_cache())] {
input.danger[type="submit", value="Delete Cache"];
@@ -145,24 +142,23 @@ pub async fn r_admin_remove_invite(
admin_dashboard(database, Some(Ok("Invite invalidated".into()))).await
}
-#[post("/admin/import?<incremental>&<nuke>")]
+#[post("/admin/import?<incremental>")]
pub async fn r_admin_import(
session: AdminSession,
database: &State<Database>,
_federation: &State<Federation>,
incremental: bool,
- nuke: bool,
) -> MyResult<DynLayoutPage<'static>> {
drop(session);
let t = Instant::now();
- let flash = if nuke {
+ database.clear_nodes()?;
+ if !incremental {
database.clear_nodes()?;
- Ok(format!("All nodes cleared."))
- } else {
- let r = import_wrap((*database).clone(), incremental).await;
- r.map_err(|e| e.into())
- .map(|_| format!("Import successful; took {:?}", t.elapsed()))
- };
+ }
+ let r = import_wrap((*database).clone(), incremental).await;
+ let flash = r
+ .map_err(|e| e.into())
+ .map(|_| format!("Import successful; took {:?}", t.elapsed()));
admin_dashboard(database, Some(flash)).await
}