* Cleaner thumbnail finder with more controlled state
This commit is contained in:
parent
31d9794d7f
commit
5707499af9
@ -36,21 +36,25 @@ pub fn get_category_dirs(path: &str) -> std::io::Result<Vec<DirEntry>> {
|
||||
}
|
||||
|
||||
pub fn get_category_thumbnail(category: &str) -> std::io::Result<String> {
|
||||
let pathname = format!("{}{}", thumbs_dir(), &category);
|
||||
let pathname = format!("{}/{}", thumbs_dir(), &category);
|
||||
let path = Path::new(&pathname);
|
||||
println!("Path to use {:?}", path);
|
||||
// Assume its a directory
|
||||
let mut ret = "/static/cantfindshit.jpg".to_string();
|
||||
for ent in path.read_dir()? {
|
||||
if let Ok(ent) = ent {
|
||||
let name = ent.file_name().into_string().unwrap();
|
||||
if name == "category-thumbnail.jpg" {
|
||||
ret = format!("/thumbnail/{}/{}", category, name);
|
||||
}
|
||||
let item = path.read_dir()?.find(|file| {
|
||||
if let Ok(file) = file {
|
||||
let name = file.file_name().into_string().unwrap();
|
||||
name == "category-thumbnail.jpg"
|
||||
} else {
|
||||
false
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
return Ok(ret);
|
||||
return Ok(match item {
|
||||
Some(name) => {
|
||||
let name = name.unwrap().file_name().into_string().unwrap();
|
||||
format!("/thumbnail/{}/{}", category, name)
|
||||
},
|
||||
None => "/static/cantfindshit.jpg".to_string()
|
||||
})
|
||||
}
|
||||
|
||||
#[get("/categories")]
|
||||
|
Loading…
Reference in New Issue
Block a user