handle PDFs

This commit is contained in:
Max Bradbury 2023-05-04 18:15:51 +01:00
parent 3c471c46b0
commit 825482ba07
2 changed files with 16 additions and 1 deletions

View File

@ -1,6 +1,6 @@
[package]
name = "download-organiser"
version = "0.1.0"
version = "0.1.1"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

View File

@ -9,6 +9,10 @@ fn home_dir() -> PathBuf {
dirs::home_dir().expect("Couldn't find home dir")
}
fn documents_dir() -> PathBuf {
dirs::document_dir().expect("Couldn't find downloads dir")
}
fn downloads_dir() -> PathBuf {
dirs::download_dir().expect("Couldn't find downloads dir")
}
@ -102,6 +106,14 @@ fn handle_mp3(file: DirEntry) {
}
}
fn handle_pdf(file: DirEntry) {
let mut dir = documents_dir();
dir.push("PDFs");
move_file(file.path(), dir);
}
/// if filename contains something like `(1971)` or `[2003]` or `.1985.` it's a movie
fn is_movie(file: &DirEntry) -> bool {
lazy_static! {
@ -142,6 +154,8 @@ fn handle_video(file: DirEntry) {
fn handle_dir(path: PathBuf) {
let dir = std::fs::read_dir(path).expect("Couldn't read dir");
// todo if dir is empty, delete
for inode in dir {
let inode = inode.expect("Couldn't read inode");
@ -157,6 +171,7 @@ fn handle_dir(path: PathBuf) {
"jpeg" => { handle_image(inode) }
"png" => { handle_image(inode) }
"mp3" => { handle_mp3( inode) }
"pdf" => { handle_pdf( inode) }
"avi" => { handle_video(inode) }
"m4v" => { handle_video(inode) }
"mkv" => { handle_video(inode) }