Skip to content

Commit f57eaf9

Browse files
committed
Update Newsletter component
1 parent de593ef commit f57eaf9

File tree

1 file changed

+25
-72
lines changed

1 file changed

+25
-72
lines changed

src/components/home/Newsletter.js

Lines changed: 25 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -1,86 +1,39 @@
1-
import React from 'react'
2-
import { useForm, ValidationError } from '@formspree/react'
3-
import { BigText, IconContainer, Paragraph, Widont } from '@/components/home/common'
1+
import { IconContainer } from '@/components/home/common'
42
import { ReactComponent as Icon } from '@/img/icons/home/newsletter.svg'
53
import { gradients } from '@/utils/gradients'
4+
import React from 'react'
65

76
export function Newsletter() {
8-
const [state, handleSubmit] = useForm('moqyyjvo', {
9-
data: {
10-
_subject: 'Someone joined the newsletter',
11-
pageTitle: function () {
12-
// This function will be evaluated at submission time
13-
return document.title
14-
},
15-
},
16-
})
17-
if (state.succeeded) {
18-
return (
19-
<div className="p-5 m-5 flex flex-wrap font-semibold hover:shadow-lg rounded-lg border border-green-400 bg-green-300 text-green-900 ">
20-
<span className="mr-2">
21-
<svg
22-
xmlns="http://www.w3.org/2000/svg"
23-
className="h-6 w-6"
24-
fill="none"
25-
viewBox="0 0 24 24"
26-
stroke="currentColor"
27-
>
28-
<path
29-
stroke-linecap="round"
30-
stroke-linejoin="round"
31-
stroke-width="2"
32-
d="M14 10h4.764a2 2 0 011.789 2.894l-3.5 7A2 2 0 0115.263 21h-4.017c-.163 0-.326-.02-.485-.06L7 20m7-10V5a2 2 0 00-2-2h-.095c-.5 0-.905.405-.905.905 0 .714-.211 1.412-.608 2.006L7 11v9m7-10h-2M7 20H5a2 2 0 01-2-2v-6a2 2 0 012-2h2.5"
33-
/>
34-
</svg>
35-
</span>
36-
Congratulations!
37-
<p className="font-normal pl-2">You have successfully subscribed to our newsletter.</p>
38-
</div>
39-
)
40-
}
417
return (
428
<section id="newsletter">
43-
<div className="px-4 sm:px-6 md:px-8 mb-10 sm:mb-16 md:mb-20">
9+
<div className="flex flex-col justify-center items-center px-4 sm:px-6 md:px-8 mb-10 sm:mb-8 md:mb-20">
4410
<IconContainer className={`${gradients.blue[0]} mb-8`}>
4511
<Icon />
4612
</IconContainer>
47-
<BigText className="mb-8">
48-
<Widont>Want product news and updates?</Widont>
49-
</BigText>
50-
<Paragraph className="mb-6">Sign Up for our weekly newsletter.</Paragraph>
13+
<p className="text-3xl sm:text-5xl lg:text-6xl text-center leading-none font-extrabold text-gray-900 tracking-tight mb-8">Want product news and updates?</p>
14+
<p className="max-w-4xl text-lg sm:text-2xl text-center font-medium sm:leading-10 space-y-6">Subscribe to our newsletter.</p>
5115
</div>
5216
<div className="max-w-xl mx-auto">
53-
<form onSubmit={handleSubmit} class="mt-2">
54-
<div className="flex flex-center flex-wrap p-5 space-y-4 sm:space-y-4 sm:space-x-0 text-center mt-12">
55-
<input
56-
id="email"
57-
type="email"
58-
name="email"
59-
className="flex-none w-full px-4 py-4 font-medium text-lg bg-gray-100 hover:shadow-lg rounded-lg border border-gray-400 focus:outline-none"
60-
placeholder="Enter your email"
61-
required
62-
/>
63-
<ValidationError
64-
prefix="Email"
65-
field="email"
66-
errors={state.errors}
67-
className="p-5 rounded-lg w-full flex-none hover:shadow-lg font-semibold border border-red-400 bg-red-300 text-red-900"
68-
/>
69-
<button
70-
type="submit"
71-
disabled={state.submitting}
72-
className="w-full px-6 py-4 sm:w-auto flex-none bg-blue-700 hover:bg-blue-600 text-white text-lg shadow-md hover:shadow-lg leading-6 font-semibold border border-transparent rounded-lg focus:ring-2 focus:ring-offset-2 focus:ring-offset-white focus:ring-blue-600 focus:outline-none transition-colors duration-200"
73-
>
74-
Sign Up
75-
</button>
76-
<p className="pt-2 text-base flex-center">
77-
We care about the protection of your data. Read our{' '}
78-
<a className="text-blue-500 font-medium underline" href="/">
79-
Privacy Policy
80-
</a>
81-
</p>
82-
</div>
83-
</form>
17+
<div id="revue-embed">
18+
<form action="https://www.getrevue.co/profile/javaistic/add_subscriber" double_opt_in="false" method="post" id="revue-form" name="revue-form" target="_blank">
19+
<div className="flex flex-center flex-wrap p-5 pb-1 space-y-4 sm:space-y-4 sm:space-x-0 text-center mt-1">
20+
<label for="member_email">Email address</label>
21+
<input className="flex-none w-full px-4 py-4 font-medium text-lg bg-gray-100 hover:shadow-lg rounded-lg border border-gray-400 focus:outline-none" placeholder="Your email address..." type="email" name="member[email]" id="member_email" />
22+
</div>
23+
<div className="flex flex-center flex-wrap p-5 pb-1 space-y-4 sm:space-y-4 sm:space-x-0 text-center">
24+
<label for="member_first_name">First name <span class="optional">(Optional)</span></label>
25+
<input className="flex-none w-full px-4 py-4 font-medium text-lg bg-gray-100 hover:shadow-lg rounded-lg border border-gray-400 focus:outline-none" placeholder="First name... (Optional)" type="text" name="member[first_name]" id="member_first_name" />
26+
</div>
27+
<div className="flex flex-center flex-wrap p-5 pb-1 space-y-4 sm:space-y-4 sm:space-x-0 text-center">
28+
<label for="member_last_name">Last name <span class="optional">(Optional)</span></label>
29+
<input className="flex-none w-full px-4 py-4 font-medium text-lg bg-gray-100 hover:shadow-lg rounded-lg border border-gray-400 focus:outline-none" placeholder="Last name... (Optional)" type="text" name="member[last_name]" id="member_last_name" />
30+
</div>
31+
<div className="flex flex-center flex-wrap p-5 pb-1 space-y-4 sm:space-y-4 sm:space-x-0 text-center">
32+
<input className="w-full px-6 py-4 sm:w-auto flex-none bg-blue-700 hover:bg-blue-600 text-white text-lg shadow-md hover:shadow-lg leading-6 font-semibold border border-transparent rounded-lg focus:ring-2 focus:ring-offset-2 focus:ring-offset-white focus:ring-blue-600 focus:outline-none transition-colors duration-200" type="submit" value="Subscribe" name="member[subscribe]" id="member_submit" />
33+
</div>
34+
<div className="p-5 lg:p-0 lg:pt-3 sm:p-5 text-base flex-center">By subscribing, you agree with Revue’s <a target="_blank" className="text-blue-500 font-medium underline" href="https://www.getrevue.co/terms" rel="noreferrer">Terms of Service</a> and <a target="_blank" className="text-blue-500 font-medium underline" href="https://www.getrevue.co/privacy" rel="noreferrer">Privacy Policy</a>.</div>
35+
</form>
36+
</div>
8437
</div>
8538
</section>
8639
)

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy