"src/git@lab.frogg.it:kuadrado-software/kuadrado-website.git" did not exist on "bcd8ae5b45459800a2708399f18e909114bb8183"
Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#[derive(Debug, PartialEq)]
pub enum UploadFileType {
Image,
Sound,
Video,
Doc,
Code,
}
pub struct UploadFileData {
pub up_type: UploadFileType,
pub filename: String,
}
pub fn dirname_from_type(upload_type: &UploadFileType) -> String {
match upload_type {
UploadFileType::Image => String::from("images"),
UploadFileType::Sound => String::from("sounds"),
UploadFileType::Video => String::from("videos"),
UploadFileType::Doc => String::from("docs"),
UploadFileType::Code => String::from("source_code"),
}
}
pub fn upload_type_from_file_ext(ext: &String) -> UploadFileType {
match &ext[..] {
"webp" | "jpg" | "png" | "jpeg" | "bmp" | "gif" => UploadFileType::Image,
"mp3" | "ogg" | "wav" | "opus" => UploadFileType::Sound,
"mp4" | "webm" | "ogv" => UploadFileType::Video,
"js" | "css" | "html" => UploadFileType::Code,
_ => UploadFileType::Doc,
}
}
pub fn file_ext(file_name: &String) -> Result<String, String> {
let parts = file_name.split(".").collect::<Vec<&str>>();
let err_msg = format!("Couldn't get extension from filename : {}", file_name);
if parts.len() < 2 {
return Err(err_msg);
}
match parts.last() {
Some(ext) => Ok(ext.to_string()),
None => Err(err_msg),
}
}