3 input#modalContact.modal(type="checkbox")
4 div(role="dialog" data-checkbox="modalContact"
5 aria-labelledby="contactTitle")
7 label.modal-close(for="modalContact")
8 h3#contactTitle.section {{ st.tr["Contact form"] }}
10 label(for="userEmail") {{ st.tr["Email"] }}
11 input#userEmail(type="email")
13 label(for="mailSubject") {{ st.tr["Subject"] }}
14 input#mailSubject(type="text")
16 label(for="mailContent") {{ st.tr["Content"] }} *
20 button(type="button" @click="trySendMessage()") {{ st.tr["Send"] }}
21 p#emailSent {{ st.tr["Email sent!"] }}
25 import { ajax } from "../utils/ajax";
26 import { store } from "@/store";
27 import { checkNameEmail } from "@/data/userCheck";
29 name: "my-contact-form",
36 // Note: not using Vue here, but would be possible
37 trySendMessage: function() {
38 let email = document.getElementById("userEmail");
39 let subject = document.getElementById("mailSubject");
40 let content = document.getElementById("mailContent");
41 const error = checkNameEmail({email: email});
44 if (content.value.trim().length == 0)
45 return alert(this.st.tr["Empty message"]);
46 if (subject.value.trim().length == 0 && !confirm(this.st.tr["No subject. Send anyway?"]))
55 subject: subject.value,
56 content: content.value,
61 let emailSent = document.getElementById("emailSent");
62 emailSent.style.display = "inline-block";
63 setTimeout(() => { emailSent.style.display = "none"; }, 2000);
71 <style lang="sass" scoped>