AccountManagerSettingField.php
3 years ago
CreditCardSettingField.php
3 years ago
CustomizeAccountField.php
4 years ago
CreditCardSettingField.php
147 lines
| 1 | <?php |
| 2 | |
| 3 | namespace Give\PaymentGateways\Stripe\Admin; |
| 4 | |
| 5 | /** |
| 6 | * Class CreditCardSettingField |
| 7 | * |
| 8 | * @package Give\PaymentGateways\Stripe\Admin |
| 9 | * @since 2.13.0 |
| 10 | */ |
| 11 | class CreditCardSettingField |
| 12 | { |
| 13 | |
| 14 | /** |
| 15 | * CreditCardSettingField constructor. |
| 16 | */ |
| 17 | public function __construct() |
| 18 | { |
| 19 | } |
| 20 | |
| 21 | /** |
| 22 | * Render Stripe account manager setting field. |
| 23 | * |
| 24 | * @since 2.13.0 |
| 25 | * |
| 26 | * @param array $field |
| 27 | * @param string $value |
| 28 | */ |
| 29 | public function handle($field, $value) |
| 30 | { |
| 31 | $classes = ! empty($field['wrapper_class']) ? esc_attr($field['wrapper_class']) : '' |
| 32 | ?> |
| 33 | <div class="<?php |
| 34 | echo $classes; ?>"> |
| 35 | <?php |
| 36 | $this->getIntroductionSectionMarkup(); ?> |
| 37 | <?php |
| 38 | $this->getRadioButtons($field, $value); ?> |
| 39 | </div> |
| 40 | <?php |
| 41 | } |
| 42 | |
| 43 | /** |
| 44 | * @since 2.13.0 |
| 45 | */ |
| 46 | private function getIntroductionSectionMarkup() |
| 47 | { |
| 48 | ?> |
| 49 | <div class="give-stripe-credit-card-format-description"> |
| 50 | <h2><?php |
| 51 | esc_html_e('Credit Card Fields Format', 'give'); ?></h2> |
| 52 | <p class="give-stripe-subheading-description"> |
| 53 | <?php |
| 54 | esc_html_e( |
| 55 | 'The credit card fieldset uses Stripe Elements for a secure method of accepting payment. Stripe offers two different types of credit card fields. A consolidated single field or a more traditional multi-fields format.', |
| 56 | 'give' |
| 57 | ); |
| 58 | ?> |
| 59 | </p> |
| 60 | </div> |
| 61 | <?php |
| 62 | } |
| 63 | |
| 64 | /** |
| 65 | * @since 2.13.0 |
| 66 | */ |
| 67 | private function getRadioButtons($field, $value) |
| 68 | { |
| 69 | ?> |
| 70 | <div class="give-stripe-credit-card-options"> |
| 71 | <div class="give-stripe-cc-option-field give-stripe-boxshadow-option-wrap <?php |
| 72 | echo 'single' === $value ? 'give-stripe-boxshadow-option-wrap__selected' : ''; ?>"> |
| 73 | <div class="give-stripe-account-default-checkmark"> |
| 74 | <svg width="33" height="33" viewBox="0 0 33 33" fill="none" xmlns="http://www.w3.org/2000/svg"> |
| 75 | <path |
| 76 | d="M32.375 16.1875C32.375 25.1276 25.1276 32.375 16.1875 32.375C7.24737 32.375 0 25.1276 0 16.1875C0 7.24737 7.24737 0 16.1875 0C25.1276 0 32.375 7.24737 32.375 16.1875ZM14.3151 24.7586L26.3252 12.7486C26.733 12.3407 26.733 11.6795 26.3252 11.2717L24.8483 9.79474C24.4404 9.38686 23.7792 9.38686 23.3713 9.79474L13.5766 19.5894L9.00371 15.0165C8.59589 14.6086 7.93462 14.6086 7.52673 15.0165L6.04982 16.4934C5.642 16.9012 5.642 17.5625 6.04982 17.9703L12.8381 24.7586C13.246 25.1665 13.9072 25.1665 14.3151 24.7586Z" |
| 77 | fill="#69B868" /> |
| 78 | </svg> |
| 79 | </div> |
| 80 | <label> |
| 81 | <input |
| 82 | name="stripe_cc_fields_format" |
| 83 | value="single" |
| 84 | type="radio" |
| 85 | style="" |
| 86 | <?php |
| 87 | checked('single', $value); ?> |
| 88 | > |
| 89 | <span class="stripe-cc-fields-radio-title"><?php |
| 90 | esc_html_e('Single Field', 'give'); ?></span> |
| 91 | <span class="stripe-cc-fields-radio-description"><?php |
| 92 | esc_html_e( |
| 93 | 'The single credit card format combines the Card number, expiration date, CVC, and zip / postal code (if enabled) fields into one intuitive field.', |
| 94 | 'give' |
| 95 | ); ?></span> |
| 96 | <span class="stripe-cc-fields-example stripe-cc-fields-example__single"> |
| 97 | <span class="stripe-cc-fields-example-text"><?php |
| 98 | esc_html_e('Example', 'give'); ?>:</span> |
| 99 | <img src="<?php |
| 100 | echo GIVE_PLUGIN_URL . '/assets/dist/images/admin/stripe-single-cc-field.png'; ?>" |
| 101 | width="340px" /> |
| 102 | </span> |
| 103 | |
| 104 | </label> |
| 105 | </div> |
| 106 | |
| 107 | <div class="give-stripe-cc-option-field give-stripe-boxshadow-option-wrap <?php |
| 108 | echo 'multi' === $value ? 'give-stripe-boxshadow-option-wrap__selected' : ''; ?>"> |
| 109 | <div class="give-stripe-account-default-checkmark"> |
| 110 | <svg width="33" height="33" viewBox="0 0 33 33" fill="none" xmlns="http://www.w3.org/2000/svg"> |
| 111 | <path |
| 112 | d="M32.375 16.1875C32.375 25.1276 25.1276 32.375 16.1875 32.375C7.24737 32.375 0 25.1276 0 16.1875C0 7.24737 7.24737 0 16.1875 0C25.1276 0 32.375 7.24737 32.375 16.1875ZM14.3151 24.7586L26.3252 12.7486C26.733 12.3407 26.733 11.6795 26.3252 11.2717L24.8483 9.79474C24.4404 9.38686 23.7792 9.38686 23.3713 9.79474L13.5766 19.5894L9.00371 15.0165C8.59589 14.6086 7.93462 14.6086 7.52673 15.0165L6.04982 16.4934C5.642 16.9012 5.642 17.5625 6.04982 17.9703L12.8381 24.7586C13.246 25.1665 13.9072 25.1665 14.3151 24.7586Z" |
| 113 | fill="#69B868" /> |
| 114 | </svg> |
| 115 | </div> |
| 116 | <label> |
| 117 | <input |
| 118 | name="stripe_cc_fields_format" |
| 119 | value="multi" |
| 120 | type="radio" |
| 121 | style="" |
| 122 | <?php |
| 123 | checked('multi', $value); ?> |
| 124 | > |
| 125 | <span class="stripe-cc-fields-radio-title"><?php |
| 126 | esc_html_e('Multiple Fields', 'give'); ?></span> |
| 127 | <span class="stripe-cc-fields-radio-description"><?php |
| 128 | esc_html_e( |
| 129 | 'This is the more traditional credit card fieldset format that many are familiar with. All fields are separate from one another.', |
| 130 | 'give' |
| 131 | ); ?></span> |
| 132 | |
| 133 | <span class="stripe-cc-fields-example stripe-cc-fields-example__multi "> |
| 134 | <span class="stripe-cc-fields-example-text"><?php |
| 135 | esc_html_e('Example', 'give'); ?>:</span> |
| 136 | <img src="<?php |
| 137 | echo GIVE_PLUGIN_URL . '/assets/dist/images/admin/stripe-multiple-cc-fields.png'; ?>" |
| 138 | width="340px" /> |
| 139 | </span> |
| 140 | |
| 141 | </label> |
| 142 | </div> |
| 143 | </div> |
| 144 | <?php |
| 145 | } |
| 146 | } |
| 147 |