PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.19.3
GiveWP – Donation Plugin and Fundraising Platform v2.19.3
4.16.3 4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / src / Promotions / FreeAddonModal / resources / Modal.js
give / src / Promotions / FreeAddonModal / resources Last commit date
App.js 4 years ago Modal.js 4 years ago Modal.module.scss 4 years ago
Modal.js
92 lines
1 import React, {useRef, useState, useEffect} from 'react';
2
3 import GreenButton from '@givewp/promotions/components/GreenButton';
4 import useFreeAddonSubscription from '@givewp/promotions/hooks/useFreeAddonSubscription';
5
6 import styles from './Modal.module.scss';
7
8 const {siteUrl, siteName} = window.giveFreeAddonModal;
9
10 const Modal = () => {
11 const {userSubscribed, hasSubscriptionError, subscribeUser, rejectOffer} = useFreeAddonSubscription();
12 const [isOpen, setIsOpen] = useState(true);
13 const firstNameInput = useRef();
14 const emailInput = useRef();
15
16 if (!isOpen) {
17 return null;
18 }
19
20 const handleSubscribe = (event) => {
21 event.preventDefault();
22 subscribeUser(firstNameInput.current.value, emailInput.current.value, siteUrl, siteName);
23 };
24
25 const handleDismiss = (event) => {
26 event.preventDefault();
27 setIsOpen(false);
28 rejectOffer();
29 };
30
31 return (
32 <div className={styles.giveModalContainer}>
33 <div className={styles.modal}>
34 <h2>🎉 Congratulations!</h2>
35 <p>You've just updated to version 2.19 of GiveWP</p>
36 <img
37 src="../wp-content/plugins/give/assets/dist/images/email-reports-icon.png"
38 alt="Email Reports Icon"
39 className={styles.icon}
40 />
41 {
42 userSubscribed ? (
43 <>
44 <p>Excellent! We have sent you an email to confirm your submission. Please confirm the email and we'll send you your free add-on!</p>
45 <GreenButton onClick={() => setIsOpen(false)} text="Close" />
46 </>
47 ) : (
48 <>
49 {hasSubscriptionError && (
50 <div className={styles.submissionError}>
51 There was an issue submitting your information. Please try again. If the problem
52 persists, try refreshing the page. If it still doesn't work, please{' '}
53 <a href="https://givewp.com/support" target="_blank">
54 contact support.
55 </a>
56 </div>
57 )}
58 <p>
59 As a special thanks, we’d like to offer you a <span>FREE</span> premium add-on, called Email
60 Reports!
61 </p>
62 <form onSubmit={handleSubscribe} className={styles.form}>
63 <div className={styles.fields}>
64 <label>
65 <span>First Name</span>
66 <input type="text" name="firstName" required ref={firstNameInput} />
67 </label>
68 <label>
69 <span>Email Address</span>
70 <input type="email" name="email" required ref={emailInput} />
71 </label>
72 </div>
73 <GreenButton as="input" text="👉 Get my Free Add-on" shadow />
74 <em className={styles.disclosure}>
75 * By submitting this form, you agree to be subscribed to our GiveWP Newsletter (you can
76 unsubscribe at any time. The free Email Reports add-on is only the open source installable zip
77 file. It does not include a license or access to priority support.
78 </em>
79 </form>
80 <a onClick={handleDismiss} href="#">
81 No thanks!
82 </a>
83 </>
84 )
85 }
86 </div>
87 </div>
88 );
89 };
90
91 export default Modal;
92