brr
This commit is contained in:
parent
d12efaeed8
commit
6963e068c8
20 changed files with 166 additions and 178 deletions
45
src/js/post_form.ml
Normal file
45
src/js/post_form.ml
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
open Brr
|
||||
open Utils
|
||||
|
||||
(* called by clicking post_id *)
|
||||
(* insert emojid into reply form *)
|
||||
let insert_quote el _event =
|
||||
log "quote@\n";
|
||||
let emojid =
|
||||
match El.at (Jstr.of_string "data-emojid") el with
|
||||
| None -> "no data-emojid on element"
|
||||
| Some emojid -> Jstr.to_string emojid
|
||||
in
|
||||
let textarea = find_by_id "reply-comment" in
|
||||
let inner_html = El.Prop.jstr (Jstr.of_string "innerHTML") in
|
||||
let content = Jstr.to_string @@ El.prop inner_html textarea in
|
||||
let new_content =
|
||||
if String.ends_with ~suffix:"\n" content || String.length content = 0 then
|
||||
(* don't skip a line *)
|
||||
Format.sprintf "%s[>%s] " content emojid
|
||||
else Format.sprintf "%s@\n[>%s] " content emojid
|
||||
in
|
||||
El.set_prop inner_html (Jstr.of_string new_content) textarea
|
||||
|
||||
let () =
|
||||
log "add inser_quote event on post links@\n";
|
||||
add_event_to_class Ev.click "quote-link" insert_quote
|
||||
|
||||
(* make image description field visible when a file is selected*)
|
||||
let make_visible el _event = El.set_class (Jstr.of_string "off") false el
|
||||
|
||||
let () =
|
||||
log "add event to change image description visibility@\n";
|
||||
match find_by_id_opt "file" with
|
||||
| None -> log "no file element found, not logged in?@\n"
|
||||
| Some file_input ->
|
||||
let alt_input = find_by_id "alt" in
|
||||
let alt_label = find_by_id "alt-label" in
|
||||
let change = Ev.Type.create (Jstr.of_string "change") in
|
||||
let (_ : Ev.listener) =
|
||||
Ev.listen change (make_visible alt_input) (El.as_target file_input)
|
||||
in
|
||||
let (_ : Ev.listener) =
|
||||
Ev.listen change (make_visible alt_label) (El.as_target file_input)
|
||||
in
|
||||
()
|
||||
Loading…
Add table
Add a link
Reference in a new issue