use name as alt, display max size
This commit is contained in:
parent
df78d3fa7b
commit
21758dfae2
1 changed files with 17 additions and 9 deletions
26
src/db.ml
26
src/db.ml
|
|
@ -35,14 +35,18 @@ let () =
|
||||||
Format.eprintf "db error@\n";
|
Format.eprintf "db error@\n";
|
||||||
exit 1
|
exit 1
|
||||||
|
|
||||||
let mime_database = Conan.Process.database ~tree:Conan_light.tree
|
let mime =
|
||||||
|
let database = Conan.Process.database ~tree:Conan_light.tree in
|
||||||
let mime contents =
|
fun content ->
|
||||||
match Conan_string.run ~database:mime_database contents with
|
match Conan_string.run ~database content with
|
||||||
| Ok m -> Conan.Metadata.mime m
|
| Ok m -> Conan.Metadata.mime m
|
||||||
| Error _ -> None
|
| Error _ -> None
|
||||||
|
|
||||||
let clean_image image =
|
let clean_image image =
|
||||||
|
let max_name = 1000 in
|
||||||
|
let max_alt = 3000 in
|
||||||
|
let max_content = 4200000 in
|
||||||
|
|
||||||
let name, alt, content = image in
|
let name, alt, content = image in
|
||||||
let name =
|
let name =
|
||||||
match name with
|
match name with
|
||||||
|
|
@ -51,9 +55,13 @@ let clean_image image =
|
||||||
(* make up random name if no name was given *)
|
(* make up random name if no name was given *)
|
||||||
Uuidm.to_string (Uuidm.v4_gen random_state ())
|
Uuidm.to_string (Uuidm.v4_gen random_state ())
|
||||||
in
|
in
|
||||||
if String.length name > 1000 then Error "Image name too long"
|
let alt = if String.trim alt = "" then name else alt in
|
||||||
else if String.length alt > 1000 then Error "Image description too long"
|
if String.length name > max_name then
|
||||||
else if String.length content > 4200000 then Error "Image size too big"
|
Error (Format.sprintf "Image name too long: More than %dB" max_name)
|
||||||
|
else if String.length alt > max_alt then
|
||||||
|
Error (Format.sprintf "Image description too long: More than %dB" max_alt)
|
||||||
|
else if String.length content > max_content then
|
||||||
|
Error (Format.sprintf "Image size too big: More than %dB" max_content)
|
||||||
else
|
else
|
||||||
match mime content with
|
match mime content with
|
||||||
| None -> Error "invalid image type"
|
| None -> Error "invalid image type"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue