PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 3.14.0
GiveWP – Donation Plugin and Fundraising Platform v3.14.0
4.16.4 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 / EventTickets / resources / components / EventTicketsListItem.tsx
give / src / EventTickets / resources / components Last commit date
EventTicketsDescription.tsx 2 years ago EventTicketsHeader.tsx 2 years ago EventTicketsList.tsx 2 years ago EventTicketsListItem.tsx 2 years ago types.ts 2 years ago
EventTicketsListItem.tsx
47 lines
1 import {Icon} from '@wordpress/components';
2 import {__} from '@wordpress/i18n';
3 import {plus, reset as minus} from '@wordpress/icons';
4 import useCurrencyFormatter from '@givewp/forms/app/hooks/useCurrencyFormatter';
5
6 export default function EventTicketsListItem({ticketType, currency, currencyRate, selectedTickets, handleSelect}) {
7 const formatter = useCurrencyFormatter(currency);
8 const ticketPrice =
9 ticketType.price > 0 ? formatter.format((Number(ticketType.price) * currencyRate) / 100) : __('Free', 'give');
10 const remainingTickets = ticketType.ticketsAvailable - selectedTickets;
11
12 const handleButtonClick = (quantity) => (e) => {
13 e.preventDefault();
14 handleSelect(quantity);
15 };
16
17 return (
18 <div className={'givewp-event-tickets__tickets__ticket'} key={ticketType.id}>
19 <div className={'givewp-event-tickets__tickets__ticket__description'}>
20 <h5>{ticketType.title}</h5>
21 <p>{ticketPrice}</p>
22 <p>{ticketType.description}</p>
23 </div>
24 <div className={'givewp-event-tickets__tickets__ticket__quantity'}>
25 {remainingTickets > 0 ? (
26 <>
27 <div className={'givewp-event-tickets__tickets__ticket__quantity__input'}>
28 <button onClick={handleButtonClick(selectedTickets - 1)}>
29 <Icon icon={minus} />
30 </button>
31 <input type="text" value={selectedTickets} />
32 <button onClick={handleButtonClick(selectedTickets + 1)}>
33 <Icon icon={plus} />
34 </button>
35 </div>
36 <p className={'givewp-event-tickets__tickets__ticket__quantity__availability'}>
37 {remainingTickets} {__('remaining', 'give')}
38 </p>
39 </>
40 ) : (
41 <span>{__('Sold out', 'give')}</span>
42 )}
43 </div>
44 </div>
45 );
46 }
47