Working on contact script.
This commit is contained in:
parent
e696b2ef0d
commit
078bc59253
@ -4,7 +4,6 @@ import com.jessebrault.ssg.di.Global
|
|||||||
import groowt.view.component.web.BaseWebViewComponent
|
import groowt.view.component.web.BaseWebViewComponent
|
||||||
import groowt.view.component.web.WebViewComponent
|
import groowt.view.component.web.WebViewComponent
|
||||||
import jakarta.inject.Inject
|
import jakarta.inject.Inject
|
||||||
import org.jetbrains.annotations.Nullable
|
|
||||||
|
|
||||||
import java.time.LocalDate
|
import java.time.LocalDate
|
||||||
import java.time.format.DateTimeFormatter
|
import java.time.format.DateTimeFormatter
|
||||||
@ -15,6 +14,7 @@ class StandardPage extends BaseWebViewComponent {
|
|||||||
final String youtubeUrl
|
final String youtubeUrl
|
||||||
final String title
|
final String title
|
||||||
final Closure<WebViewComponent> banner
|
final Closure<WebViewComponent> banner
|
||||||
|
final List<String> pageScripts
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
StandardPage(@Global('spotifyUrl') String spotifyUrl, @Global('youtubeUrl') String youtubeUrl, Map attr) {
|
StandardPage(@Global('spotifyUrl') String spotifyUrl, @Global('youtubeUrl') String youtubeUrl, Map attr) {
|
||||||
@ -22,6 +22,7 @@ class StandardPage extends BaseWebViewComponent {
|
|||||||
this.youtubeUrl = youtubeUrl
|
this.youtubeUrl = youtubeUrl
|
||||||
this.title = attr.title
|
this.title = attr.title
|
||||||
this.banner = attr.banner ?: { '' }
|
this.banner = attr.banner ?: { '' }
|
||||||
|
this.pageScripts = attr.pageScripts ?: []
|
||||||
}
|
}
|
||||||
|
|
||||||
List getMainChildren() {
|
List getMainChildren() {
|
||||||
|
@ -21,5 +21,6 @@ import com.jessebrault.site.icon.YoutubeIcon
|
|||||||
</div>
|
</div>
|
||||||
<p>Copyright $copyrightYear Jesse R. Brault. All rights reserved.</p>
|
<p>Copyright $copyrightYear Jesse R. Brault. All rights reserved.</p>
|
||||||
</footer>
|
</footer>
|
||||||
|
<Each items={pageScripts} transform={<script src={it}></script>} />
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
@ -3,7 +3,7 @@ package com.jessebrault.site.contact
|
|||||||
|
|
||||||
import com.jessebrault.site.StandardPage
|
import com.jessebrault.site.StandardPage
|
||||||
---
|
---
|
||||||
<StandardPage title={title} banner={<ContactBanner />}>
|
<StandardPage title={title} banner={<ContactBanner />} pageScripts={['/contact.js']}>
|
||||||
<article class="contact">
|
<article class="contact">
|
||||||
<h1>Contact</h1>
|
<h1>Contact</h1>
|
||||||
<p>Please use the following form to contact Jesse Brault directly.</p>
|
<p>Please use the following form to contact Jesse Brault directly.</p>
|
||||||
|
23
static/contact.js
Normal file
23
static/contact.js
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
window.addEventListener('load', function () {
|
||||||
|
const contactForm = document.querySelector('form.contact')
|
||||||
|
contactForm.addEventListener('submit', function (submitEvent) {
|
||||||
|
submitEvent.preventDefault()
|
||||||
|
const formData = new FormData(contactForm)
|
||||||
|
|
||||||
|
const message = `
|
||||||
|
From: ${formData.get('name')}
|
||||||
|
Email: ${formData.get('email')}
|
||||||
|
Institution: ${formData.get('institution')}
|
||||||
|
Message:
|
||||||
|
${formData.get('message')}
|
||||||
|
`.trim()
|
||||||
|
|
||||||
|
const toSend = { message }
|
||||||
|
console.log(toSend)
|
||||||
|
// fetch('https://api.jessebrault.com/contact/jessebrault', {
|
||||||
|
// body: JSON.stringify(toSend),
|
||||||
|
// headers: 'Content-Type: Application/JSON',
|
||||||
|
// method: 'POST' // TODO: signal
|
||||||
|
// })
|
||||||
|
})
|
||||||
|
})
|
@ -1,9 +1,6 @@
|
|||||||
:root {
|
:root {
|
||||||
--black: #000000;
|
--black: #000000;
|
||||||
--charcoal: #38383b;
|
--charcoal: #38383b;
|
||||||
--dark-blue: #00416b;
|
|
||||||
--medium-blue: #005e9b;
|
|
||||||
--light-blue: #0071bb;
|
|
||||||
--light-gray: #dedede;
|
--light-gray: #dedede;
|
||||||
--petrol: #476c77;
|
--petrol: #476c77;
|
||||||
--off-white: #fdfdfd;
|
--off-white: #fdfdfd;
|
||||||
|
Loading…
Reference in New Issue
Block a user