1 2 3<!DOCTYPE html> 4<html lang="en"> 5<head> 6 7 <title> 8 9 KLCS Public Media passport 10 11 12 13 14 15 </title> 16 17 18 <meta charset="utf-8"/> 19 20 <meta name="viewport" content="width=device-width, initial-scale=1"> 21 22 <link rel="shortcut icon" href="https://donation-form-prod.digi-cash-prod.pbs.org/static/icons/favicon.ico"> 23 24 25 26 27 28 29 <style> 30 body { 31 background-image: url(https://donation-form-prod.digi-cash-prod.pbs.org/media/images/klcs-station-scenery-11-FO4uscq.original.jpg); 32 } 33 34 @media only screen and (max-width: 640px) { 35 .station-picker-sm-background { 36 background-image: url(https://donation-form-prod.digi-cash-prod.pbs.org/media/images/klcs-station-scenery-11-FO4uscq.original.jpg); 37 background-size: cover; 38 background-position: center; 39 } 40 } 41 </style> 42
42<script> 43 dataLayer = window.dataLayer || []; 44 dataLayer.push({ecommerce: null}); // Clear the previous ecommerce object. 45 dataLayer.push( 46 47 {"event": "view_item_list", "ga4_measurement_id": null, "station_localization": "KLCS", "payment_campaign": "KLCS Web Passport", "signed_in_status": "false", "ecommerce": {"item_list_name": "Federated Form", "currency": "USD", "items": [{"item_name": "donation_7", "item_donation_frequency": "monthly", "item_donation_type": "predefined", "affiliation": "KLCS", "price": 7}, {"item_name": "donation_20", "item_donation_frequency": "monthly", "item_donation_type": "predefined", "affiliation": "KLCS", "price": 20}, {"item_name": "donation_100", "item_donation_frequency": "monthly", "item_donation_type": "predefined", "affiliation": "KLCS", "price": 100}, {"item_name": "donation_custom", "item_donation_frequency": "monthly", "item_donation_type": "custom", "affiliation": "KLCS", "price": 0}, {"item_name": "donation_100", "item_donation_frequency": "one-time", "item_donation_type": "predefined", "affiliation": "KLCS", "price": 100}, {"item_name": "donation_250", "item_donation_frequency": "one-time", "item_donation_type": "predefined", "affiliation": "KLCS", "price": 250}, {"item_name": "donation_500", "item_donation_frequency": "one-time", "item_donation_type": "predefined", "affiliation": "KLCS", "price": 500}, {"item_name": "donation_custom", "item_donation_frequency": "one-time", "item_donation_type": "custom", "affiliation": "KLCS", "price": 0}]}} 48 49 ); 50 </script>
50 51 52 53 <link rel="stylesheet" type="text/css" href="https://donation-form-prod.digi-cash-prod.pbs.org/static/css/text.css"> 54 <link rel="stylesheet" type="text/css" href="https://donation-form-prod.digi-cash-prod.pbs.org/static/css/colors.css"> 55 <link rel="stylesheet" type="text/css" href="https://donation-form-prod.digi-cash-prod.pbs.org/static/css/blocks.css"> 56 <link rel="stylesheet" type="text/css" href="https://donation-form-prod.digi-cash-prod.pbs.org/static/css/donation_form.css"> 57 <link rel="stylesheet" type="text/css" href="https://donation-form-prod.digi-cash-prod.pbs.org/static/css/sign_in_bar.css"> 58 59 60 <link rel="stylesheet" type="text/css" href="https://donation-form-prod.digi-cash-prod.pbs.org/static/css/donate.css"> 61 <link rel="stylesheet" type="text/css" href="https://donation-form-prod.digi-cash-prod.pbs.org/static/css/donation_selection.css"> 62 <link rel="stylesheet" type="text/css" href="https://donation-form-prod.digi-cash-prod.pbs.org/static/css/gift.css"> 63 <link rel="stylesheet" type="text/css" href="https://donation-form-prod.digi-cash-prod.pbs.org/static/css/payment_method.css"> 64 <link rel="stylesheet" type="text/css" href="https://donation-form-prod.digi-cash-prod.pbs.org/static/css/payment_details.css"> 65 <link rel="stylesheet" type="text/css" href="https://donation-form-prod.digi-cash-prod.pbs.org/static/css/shipping_address.css"> 66 <link rel="stylesheet" type="text/css" href="https://donation-form-prod.digi-cash-prod.pbs.org/static/css/df_modal.css"> 67 <link rel="stylesheet" type="text/css" href="https://donation-form-prod.digi-cash-prod.pbs.org/static/css/passport_modal.css"> 68 <link rel="stylesheet" type="text/css" href="https://donation-form-prod.digi-cash-prod.pbs.org/static/css/duplicate_donation_modal.css"> 69 <link rel="stylesheet" type="text/css" href="https://donation-form-prod.digi-cash-prod.pbs.org/static/css/error.css"> 70 <link rel="stylesheet" type="text/css" href="https://donation-form-prod.digi-cash-prod.pbs.org/static/css/gifts_catalog.css"> 71 72 73</head> 74 75<body 76 class="" 77 78 x-data="$store.global" 79 80> 81 82 83 84 <svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> 85 <!-- Search Icon --> 86 <symbol id="search" viewBox="0 0 15 14"> 87 <path d="M13.888 12.7187C13.8779 12.7087 13.8779 12.7087 13.8678 12.6988L13.8779 12.6888L9.94672 8.81749C11.6344 6.66785 11.4828 3.57277 9.48185 1.60227C8.40052 0.537409 6.97559 0 5.55066 0C4.13583 0 2.7109 0.537409 1.62957 1.60227C-0.543191 3.74196 -0.543191 7.19531 1.62957 9.33499C2.7109 10.3999 4.13583 10.9373 5.55066 10.9373C6.71283 10.9373 7.87501 10.579 8.84517 9.8724L12.7966 13.7636C12.8067 13.7736 12.8067 13.7736 12.8168 13.7835C13.1099 14.0722 13.5949 14.0722 13.888 13.7835C14.1811 13.475 14.1811 13.0073 13.888 12.7187ZM2.7008 8.28008C1.94286 7.52372 1.51841 6.52852 1.51841 5.46366C1.51841 4.39879 1.94286 3.40359 2.7008 2.65719C3.45874 1.91079 4.47943 1.4928 5.55066 1.4928C6.63199 1.4928 7.64257 1.91079 8.40052 2.65719C9.15846 3.40359 9.5829 4.40874 9.5829 5.46366C9.5829 6.35934 9.28983 7.20526 8.74412 7.89195L8.01649 8.60849C7.30908 9.1459 6.45008 9.43451 5.55066 9.43451C4.47943 9.44446 3.45874 9.02648 2.7008 8.28008Z" 88 fill="currentColor"/> 89 </symbol> 90 91 <!-- Back Arrow Icon -->
92 <symbol id="back-arrow" viewBox="0 0 12 22"> 93 <path d="M11 1L1 11L11 21" stroke="currentColor" stroke-width="2" stroke-linecap="round" 94 stroke-linejoin="round"/> 95 </symbol> 96 97 <!-- Close/X Icon --> 98 <symbol id="close" viewBox="0 0 20 20"> 99 <path d="M11.3841 10L19.5502 1.83391C19.9654 1.41869 19.9654 0.726644 19.5502 0.311419C19.1349 -0.103806 18.4429 -0.103806 18.0277 0.311419L9.86159 8.61592L1.83391 0.449827C1.41868 0.0346021 0.726644 0.0346021 0.311419 0.449827C-0.103806 0.865052 -0.103806 1.55709 0.311419 1.97232L8.47751 10.1384L0.311419 18.1661C-0.103806 18.5813 -0.103806 19.2734 0.311419 19.6886C0.726644 20.1038 1.41868 20.1038 1.83391 19.6886L10 11.5225L18.1661 19.6886C18.5813 20.1038 19.2734 20.1038 19.6886 19.6886C20.1038 19.2734 20.1038 18.5813 19.6886 18.1661L11.3841 10Z" 100 fill="currentColor"/> 101 </symbol> 102 103 <!-- Shopping Bag Icon --> 104 <symbol id="bag" viewBox="0 0 24 24"> 105 <path d="M6 2L3 6V20C3 21.1 3.9 22 5 22H19C20.1 22 21 21.1 21 20V6L18 2H6Z" stroke="currentColor" 106 stroke-width="2" stroke-linecap="round" stroke-linejoin="round" fill="none"/> 107 <path d="M3 6H21" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 108 <path d="M16 10C16 11.0609 15.5786 12.0783 14.8284 12.8284C14.0783 13.5786 13.0609 14 12 14C10.9391 14 9.92172 13.5786 9.17157 12.8284C8.42143 12.0783 8 11.0609 8 10" 109 stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 110 </symbol> 111 112 <!-- Plus Icon --> 113 <symbol id="plus" viewBox="0 0 14 14"> 114 <path d="M7 0V14M0 7H14" stroke="currentColor" stroke-width="2"/> 115 </symbol> 116 117 <!-- Minus Icon --> 118 <symbol id="minus" viewBox="0 0 14 2"> 119 <line x1="0" y1="1" x2="14" y2="1" stroke="currentColor" stroke-width="2"/> 120 </symbol> 121 122 <symbol id="triangle" viewBox="0 0 13 7"> 123 <path fill-rule="evenodd" clip-rule="evenodd" 124 d="M6.54932 6.01614C6.45697 6.10025 6.31578 6.10025 6.22342 6.01614L0.0796399 0.420693C-0.083817 0.271824 0.0215011 -0.000225262 0.24259 -0.000225242L12.5302 -0.000224168C12.7512 -0.000224149 12.8566 0.271825 12.6931 0.420693L6.54932 6.01614Z" 125 fill="white"/> 126 </symbol> 127 128 <!-- Trash Icon --> 129 <symbol id="trash" viewBox="0 0 13 15"> 130 <path d="M0.928571 13.5938C0.928571 13.9667 1.07532 14.3244 1.33653 14.5881C1.59774 14.8518 1.95202 15 2.32143 15H10.6786C11.048 15 11.4023 14.8518 11.6635 14.5881C11.9247 14.3244 12.0714 13.9667 12.0714 13.5938V3.75H0.928571V13.5938ZM8.82143 6.09375C8.82143 5.96943 8.87034 5.8502 8.95741 5.7623C9.04448 5.67439 9.16258 5.625 9.28571 5.625C9.40885 5.625 9.52694 5.67439 9.61401 5.7623C9.70108 5.8502 9.75 5.96943 9.75 6.09375V12.6563C9.75 12.7806 9.70108 12.8998 9.61401 12.9877C9.52694 13.0756 9.40885 13.125 9.28571 13.125C9.16258 13.125 9.04448 13.0756 8.95741 12.9877C8.87034 12.8998 8.82143 12.7806 8.82143 12.6563V6.09375ZM6.03571 6.09375C6.03571 5.96943 6.08463 5.8502 6.1717 5.7623C6.25877 5.67439 6.37686 5.625 6.5 5.625C6.62314 5.625 6.74123 5.67439 6.8283 5.7623C6.91537 5.8502 6.96429 5.96943 6.96429 6.09375V12.6563C6.96429 12.7806 6.91537 12.8998 6.8283 12.9877C6.74123 13.0756 6.62314 13.125 6.5 13.125C6.37686 13.125 6.25877 13.0756 6.1717 12.9877C6.08463 12.8998 6.03571 12.7806 6.03571 12.6563V6.09375ZM3.25 6.09375C3.25 5.96943 3.29892 5.8502 3.38599 5.7623C3.47306 5.67439 3.59115 5.625 3.71429 5.625C3.83742 5.625 3.95551 5.67439 4.04258 5.7623C4.12966 5.8502 4.17857 5.96943 4.17857 6.09375V12.6563C4.17857 12.7806 4.12966 12.8998 4.04258 12.9877C3.95551 13.0756 3.83742 13.125 3.71429 13.125C3.59115 13.125 3.47306 13.0756 3.38599 12.9877C3.29892 12.8998 3.25 12.7806 3.25 12.6563V6.09375ZM12.5357 0.937505H9.05357L8.7808 0.389653C8.72302 0.272529 8.63402 0.174006 8.5238 0.105169C8.41358 0.0363316 8.28652 -8.87099e-05 8.15692 5.13654e-06H4.84018C4.71087 -0.000496734 4.58403 0.0357877 4.47421 0.104701C4.36438 0.173615 4.276 0.272371 4.2192 0.389653L3.94643 0.937505H0.464286C0.341149 0.937505 0.223057 0.986891 0.135986 1.0748C0.0489157 1.16271 0 1.28193 0 1.40625L0 2.34375C0 2.46807 0.0489157 2.5873 0.135986 2.67521C0.223057 2.76312 0.341149 2.8125 0.464286 2.8125H12.5357C12.6588 2.8125 12.7769 2.76312 12.864 2.67521C12.9511 2.5873 13 2.46807 13 2.34375V1.40625C13 1.28193 12.9511 1.16271 12.864 1.0748C12.7769 0.986891 12.6588 0.937505 12.5357 0.937505Z" 131 fill="currentColor"/> 132 </symbol> 133 134 <!-- Chevron Right Icon (for pagination) --> 135 <symbol id="chevron-right" viewBox="0 0 6 10"> 136 <path d="M1 1L5 5L1 9" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 137 </symbol> 138</svg> 139 140 141 <div class="overlay" id="overlay"> 142 <svg xmlns="http://www.w3.org/2000/svg" width="59" height="59" viewBox="0 0 59 59" fill="none" id="spinner"> 143 <path class="color-animate" 144 d="M37.6243 15.2801C36.4932 14.5926 36.1051 13.0778 36.7594 11.8893L40.707 4.7117C41.3612 3.52317 42.8028 3.11533 43.9339 3.80285C45.0649 4.4903 45.4531 6.00511 44.7988 7.19364L40.8511 14.3713C40.208 15.5598 38.7553 15.9676 37.6243 15.2801Z" 145 fill="#F6F6FA"></path> 146 <path class="color-animate" 147 d="M43.7169 21.3714C43.0294 20.2403 43.4372 18.7988 44.6257 18.1445L51.8034 14.1968C52.9919 13.5426 54.5067 13.9307 55.1942 15.0617C55.8817 16.1928 55.4739 17.6344 54.2853 18.2886L47.1077 22.2363C45.9192 22.8905 44.4044 22.5024 43.7169 21.3714Z" 148 fill="#F6F6FA"></path> 149 <path class="color-animate" 150 d="M45.1133 29.4968C45.1133 28.5356 46.273 27.7617 47.7136 27.7617H56.3935C57.834 27.7617 58.9938 28.5356 58.9938 29.4968C58.9938 30.458 57.834 31.2318 56.3935 31.2318H47.7136C46.2852 31.2318 45.1133 30.458 45.1133 29.4968Z" 151 fill="#F6F6FA"></path> 152 <path class="color-animate" 153 d="M43.7169 37.6243C44.4044 36.4932 45.9192 36.1051 47.1077 36.7594L54.2853 40.707C55.4738 41.3612 55.8817 42.8028 55.1942 43.9339C54.5067 45.0649 52.9919 45.4531 51.8034 44.7988L44.6258 40.8622C43.4372 40.208 43.0294 38.7553 43.7169 37.6243Z" 154 fill="#F6F6FA"></path> 155 <path class="color-animate" 156 d="M37.6242 43.7169C38.7553 43.0294 40.1969 43.4372 40.8511 44.6257L44.7988 51.8034C45.453 52.9919 45.0649 54.5067 43.9339 55.1942C42.8028 55.8817 41.3613 55.4739 40.707 54.2853L36.7593 47.1077C36.1051 45.9192 36.4932 44.4044 37.6242 43.7169Z" 157 fill="#F6F6FA"></path> 158 <path class="color-animate" 159 d="M29.4887 45.1133C30.4499 45.1133 31.2318 46.273 31.2318 47.7136V56.3935C31.23
15918 57.834 30.458 58.9938 29.4968 58.9938C28.5356 58.9938 27.7618 57.834 27.7618 56.3935V47.7136C27.7536 46.2852 28.5275 45.1133 29.4887 45.1133Z" 160 fill="#F6F6FA"></path> 161 <path class="color-animate" 162 d="M21.3714 43.7169C22.5024 44.4044 22.8906 45.9192 22.2363 47.1077L18.2886 54.2853C17.6344 55.4738 16.1928 55.8817 15.0618 55.1942C13.9307 54.5067 13.5426 52.9919 14.1969 51.8034L18.1445 44.6258C18.7876 43.4372 20.2403 43.0294 21.3714 43.7169Z" 163 fill="#F6F6FA"></path> 164 <path class="color-animate" 165 d="M4.71167 40.707L11.8893 36.7593C13.0779 36.1051 14.5926 36.4932 15.2801 37.6242C15.9676 38.7553 15.5598 40.1969 14.3713 40.8511L7.19363 44.7988C6.00509 45.453 4.49033 45.0649 3.80282 43.9339C3.11536 42.8028 3.52316 41.3613 4.71167 40.707Z" 166 fill="#F6F6FA"></path> 167 <path class="color-animate" 168 d="M2.60029 27.7617H11.2802C12.7208 27.7617 13.8805 28.5356 13.8805 29.4968C13.8805 30.4579 12.7208 31.2318 11.2802 31.2318H2.60029C1.17195 31.2399 0 30.4661 0 29.5049C0 28.5437 1.17195 27.7617 2.60029 27.7617Z" 169 fill="#F6F6FA"></path> 170 <path class="color-animate" 171 d="M15.2886 21.3714C14.6013 22.5024 13.087 22.8906 11.8988 22.2363L4.71133 18.2886C3.52315 17.6344 3.11544 16.1928 3.80275 15.0618C4.49 13.9307 6.00437 13.5426 7.19256 14.1969L14.3681 18.1445C15.5563 18.7876 15.9642 20.2403 15.2886 21.3714Z" 172 fill="#F6F6FA"></path> 173 <path class="color-animate" 174 d="M21.3714 15.2801C20.2403 15.9676 18.7988 15.5598 18.1445 14.3713L14.1968 7.19363C13.5426 6.00509 13.9307 4.49033 15.0617 3.80282C16.1928 3.11536 17.6344 3.52316 18.2886 4.71167L22.2363 11.8893C22.8905 13.0779 22.5024 14.5926 21.3714 15.2801Z" 175 fill="#F6F6FA"></path> 176 <path class="color-animate" 177 d="M29.4887 0C30.4499 0 31.2318 1.15976 31.2318 2.60029V11.2802C31.2318 12.7208 30.458 13.8805 29.4968 13.8805C28.5356 13.8805 27.7618 12.7208 27.7618 11.2802V2.60029C27.7536 1.15976 28.5275 0 29.4887 0Z" 178 fill="#F6F6FA"></path> 179</svg> 180 You will be redirected shortly. 181</div> 182 183 184<div class="overlay" id="passport-modal"> 185 <div class="df-modal"> 186 <div class="passport-triangle"> 187 <img src=https://donation-form-prod.digi-cash-prod.pbs.org/static/icons/passport-triangle.svg> 188 </div> 189 <div class="close" onclick="hideModal('passport-modal')"> 190 <img src=https://donation-form-prod.digi-cash-prod.pbs.org/static/icons/x-icon.svg> 191 </div> 192 <div class="df-modal__inner-backdrop"> 193 <div class="df-modal__content flex-columns gap-1 gap-0-5-sm"> 194 195 196 197<div class="flex-rows intro__header"> 198 <div class="block-heading"><h1>KLCS Public Media</h1></div> 199 <div class="block-icon"> 200 <img alt="Compass Rose" height="24" src="https://donation-form-prod.digi-cash-prod.pbs.org/static/icons/Compass%20Rose.svg" width="24"> 201 </div> 202 <div class="block-heading"><h1>Passport</h1></div> 203</div> 204 205 <p data-block-key="ip152">Watch all the shows, news, and movies available on PBS.org and the PBS app <b>AND</b>:</p><ul><li data-block-key="ip152-2">Enjoy extended access to past seasons of PBS shows</li><li data-block-key="bu4tq">Stream early releases of new series</li><li data-block-key="cr2fv">Watch full seasons of your favorite PBS shows </li><li data-block-key="6ps12">Discover new titles to love from our featured Passport shows</li></ul> 206 207 <button class="donate-button bold" onclick="hideModal('passport-modal')"> 208 Donate Now 209 </button> 210 </div> 211 </div> 212 </div> 213</div> 214 215 <div class="overlay" id="gifts-catalog-modal"> 216 <div class="gifts-catalog-modal-wrapper" role="dialog" aria-modal="true" aria-label="Gift Catalog"> 217 <div class="gifts-catalog" x-data> 218 <div class="gifts-catalog-container"> 219 <!-- Gifts Grid --> 220 <main role="main" class="gifts-catalog-content"> 221 <div id="catalog-content"> 222 </div> 223 </main> 224 </div> 225 </div> 226 </div> 227</div> 228 229 230 231<div 232 class="flex-rows generic-error gap-1" 233 x-cloak x-show="genericErrorMessage" 234> 235 <img src="https://donation-form-prod.digi-cash-prod.pbs.org/static/icons/error.svg"> 236 <p x-text="genericErrorMessage"></p> 237</div> 238 239 <main class="outer-backdrop top-border"> 240 <div class="inner-backdrop"> 241 <div class="sm-background"> 242 <img src="https://donation-form-prod.digi-cash-prod.pbs.org/media/images/klcs-station-scenery-11-FO4uscq.width-640.jpg" alt="Backgroun
242d Image Mobile"> 243 </div> 244 <div class="flex-columns gap-2-25 gap-1-sm padding-left-right-1-sm donation-intro"> 245 <div class="flex-columns gap-1-5 gap-1-sm donation-intro__info"> 246 247 248 249<div class="flex-rows intro__header"> 250 <div class="block-heading"><h1>KLCS Public Media</h1></div> 251 <div class="block-icon"> 252 <img alt="Compass Rose" height="24" src="https://donation-form-prod.digi-cash-prod.pbs.org/static/icons/Compass%20Rose.svg" width="24"> 253 </div> 254 <div class="block-heading"><h1>Passport</h1></div> 255</div> 256 257 <p data-block-key="a7goy">Support KLCS Public Media to ensure programs that educate, inform, and inspire continue to thrive in our community. Your donation makes a difference!</p><p data-block-key="hvcjm"><b>With a donation of at least $7 per month or a one-time donation of $84, become a station member and enjoy <button type="button" class="passport-modal-link" onclick="showPassportModal()"><b>KLCS Public Media Passport</b></button>.</b></p> 258 259 </div> 260 </div> 261 262 <form 263 id="payment-form" 264 method="POST" 265 action="/donation/KLCS/passport/process-donation/" 266 autocomplete="off" 267 class="flex-columns gap-2-25 gap-1-5-sm padding-left-right-2-145 padding-left-right-1-sm donation-form" 268 x-cloak 269 x-data="$store.form" 270 > 271 <input type="hidden" name="csrfmiddlewaretoken" value="fXfg4lCcWvyE4OYknEPRfVvyYtGmO4TIkCl1C4Jw8I9EeY2RPFke8OWfmhOyur8y"> 272 273 <div class="flex-columns section donation-selection" 274 id="donation-amount-section" 275 tabindex="-1" 276 x-data="$store.selection" 277 > 278 <div class="donation-toast" role="status" aria-live="polite" 279 x-cloak x-show="$store.form.donationToast" x-transition> 280 <span x-text="$store.form.donationToast"></span> 281 <button type="button" class="donation-toast__close" aria-label="Dismiss" 282 @click="dismissDonationToast()"> 283 <svg class="donation-toast__close-icon" width="14" height="14"
284 viewBox="0 0 20 20"><use href="#close"></use></svg> 285 </button> 286 </div> 287 288 <h2>Donation Amounts</h2> 289 290 291 <div class="flex-rows donation-form__type"> 292 293 <input type="radio" 294 name="donation_type" 295 id="donation-type-monthly" 296 value="monthly" 297 298 x-on:change="resetAmounts().then()" 299 x-model="donationType" 300 checked 301 > 302 <label 303 for="donation-type-monthly" 304 class="flex-rows monthly" 305 > 306 <h3 class="h4">Give Monthly</h3> 307 308 </label> 309 310 <input type="radio" 311 name="donation_type" 312 id="donation-type-once" 313 value="once" 314 315 x-on:change="resetAmounts().then()" 316 x-model="donationType" 317 318 > 319 <label 320 for="donation-type-once" 321 class="flex-rows once" 322 > 323 <h3 class="h4">Give Once</h3> 324 325 </label> 326 327</div> 328 329 <div class="flex-columns gap-0-75 gap-0-5-sm"> 330 <div class="flex-columns gap-0-75" x-cloak x-show="donationType === 'monthly'"> 331 332 333 334 335 <div class="flex-rows gap-0-75 donation-form__amounts"> 336 337 <input type="radio" 338 name="amount" 339 id="monthly-donation-amount-7" 340 data-donation-type="monthly" 341 value="7" 342 343 @change="handlePresetAmountChange($event.target)" 344 @click="monthlyInvalidCustomAmount = false" 345 > 346 <label for="monthly-donation-amount-7"> 347 $7 348 </label> 349 350 <input type="radio" 351 name="amount" 352 id="monthly-donation-amount-20" 353 data-donation-type="monthly" 354 value="20" 355 356 @change="handlePresetAmountChange($event.target)" 357 @click="monthlyInvalidCustomAmount = false" 358 > 359 <label for="monthly-donation-amount-20"> 360 $20 361 </label> 362 363 <input type="radio" 364 name="amount" 365 id="monthly-donation-amount-100" 366 data-donation-type="monthly" 367 value="100" 368 369 @change="handlePresetAmountChange($event.target)" 370 @click="monthlyInvalidCustomAmount = false" 371 > 372 <label for="monthly-donation-amount-100"> 373 $100 374 </label> 375 376 </div> 377 378 379 380 <div class="donation-form__custom"> 381 <input type="radio" 382 name="amount" 383 id="monthly-custom-radio" 384 > 385 <label class="flex-rows" 386 :class="{ 'error-border': monthlyInvalidCustomAmount }" 387 for="monthly-custom-radio" 388 onclick="handleCustomLabelClick(this)" 389 > 390 <span>$</span> 391 <input type="number" 392 placeholder="Enter custom monthly amount" 393 min='7' 394 step="0.01" 395 396 id="monthly-custom-input" 397 name="monthly-custom-input" 398 399 data-radio="monthly-custom-radio" 400 data-error="monthlyInvalidCustomAmount" 401 402 onclick="handleCustomInputClick(this)" 403 oninput="limitDecimals(this);handleCustomInputInput(this)" 404 > 405 406 <span>/month</span> 407 408 </label> 409 </div> 410 411 412 413 414 </div> 415 <div class="flex-columns gap-0-75" x-cloak x-show="donationType === 'once'"> 416 417 418 419 420 <div class="flex-rows gap-0-75 donation-form__amounts"> 421 422 <input type="radio" 423 name="amount" 424 id="once-donation-amount-100" 425 data-donation-type="once" 426 value="100" 427 428 @change="handlePresetAmountChange($event.target)" 429 @click="onceInvalidCustomAmount = false" 430 > 431 <label for="once-donation-amount-100"> 432 $100 433 </label> 434 435 <input type="radio" 436 name="amount" 437 id="once-donation-amount-250" 438 data-donation-type="once" 439 value="250" 440 441 @change="handlePresetAmountChange($event.target)" 442 @click="onceInvalidCustomAmount = false" 443 > 444 <label for="once-donation-amount-250"> 445 $250 446 </label> 447 448 <input type="radio" 449 name="amount" 450 id="once-donation-amount-500" 451 data-donation-type="once" 452 value="500" 453 454 @change="handlePresetAmountChange($event.target)" 455 @click="onceInvalidCustomAmount = false" 456 > 457 <label for="once-donation-amount-500"> 458 $500 459 </label> 460 461 </div> 462 463 464 465 <div class="donation-form__custom"> 466 <input type="radio" 467 name="amount" 468 id="once-custom-radio" 469 > 470 <label class="flex-rows" 471 :class="{ 'error-border': onceInvalidCustomAmount }" 472 for="once-custom-radio" 473 onclick="handleCustomLabelClick(this)" 474 >
475 <span>$</span> 476 <input type="number" 477 placeholder="Enter custom one-time amount" 478 min='84' 479 step="0.01" 480 481 id="once-custom-input" 482 name="once-custom-input" 483 484 data-radio="once-custom-radio" 485 data-error="onceInvalidCustomAmount" 486 487 onclick="handleCustomInputClick(this)" 488 oninput="limitDecimals(this);handleCustomInputInput(this)" 489 > 490 491 </label> 492 </div> 493 494 495 496 497 </div> 498 499 500 501<div 502 class="checkbox" 503 x-cloak x-show="donationType === 'once'" 504> 505 <input type="checkbox" id="yearly_donation" name="yearly_donation" 506 x-model="$store.form.yearlyDonation"> 507 <label class="flex-rows gap-0-75" for="yearly_donation"> 508 <img class="checked-icon" src=https://donation-form-prod.digi-cash-prod.pbs.org/static/icons/checkbox_checked.svg> 509 <img class="unchecked-icon" src=https://donation-form-prod.digi-cash-prod.pbs.org/static/icons/checkbox_unchecked.svg> 510 Renew my membership automatically each year. 511 </label> 512</div> 513 514 </div> 515 <p x-cloak x-show="$store.form.amountMinimumError" class="error-message" 516 x-text="getAmountMinimumErrorMessage($store.giftBag, donationType)"> 517 </p> 518 </div> 519 520 521 <div id="gift-catalog-featured-gifts" 522 hx-get="/donation/gifts-catalog/c39fde04-f0c0-4f41-b797-a2c14938238b/featured-gifts/passport/" 523 hx-trigger="load" 524 hx-swap="innerHTML" 525 > 526 </div> 527 528 529 <div class="flex-columns section payment-method-selection"> 530 531 <h2>Payment Method</h2> 532 533 534 <div class="flex-columns gap-0-75 gap-0-5-sm"> 535 <div class="flex-rows gap-0-75 payment-methods"> 536 537 538 539 540 541 542 543 544<div 545 class="payment-method" 546 x-show="availablePaymentMethods.includes('card')" 547 x-transition.duration.1000ms 548> 549 <button 550 type="button" 551 class="flex-rows" 552 553 x-on:click=" 554 cardPaymentErrorMessage=null; 555 oneClickPaymentErrorMessage=null; 556 hiddenPaymentElements=false; 557 oneClickDonation=false; 558 selectedPaymentMethod='card' 559 560 updateStripePaymentMethod(); 561 " 562 563 :class="{ 564 'selected': selectedPaymentMethod === 'card', 565 'payment-error': selectedPaymentMethod === 'card' && oneClickPaymentErrorMessage 566 }" 567 > 568 <div class="block-icon"> 569 570 571 <img src="https://donation-form-prod.digi-cash-prod.pbs.org/media/images/Credit_Card.original.svg" alt="Credit Card Icon"> 572 573 </div> 574 575 <div class="block-name"> 576 Credit Card 577 </div> 578 579 </button> 580</div> 581 582 583 584 585 586 587 588 589<div 590 class="payment-method" 591 x-show="availablePaymentMethods.includes('google_pay')" 592 x-transition.duration.1000ms 593> 594 <button 595 type="button" 596 class="flex-rows" 597 598 x-on:click=" 599 cardPaymentErrorMessage=null; 600 oneClickPaymentErrorMessage=null; 601 hiddenPaymentElements=true; 602 oneClickDonation=true; 603 selectedPaymentMethod='google_pay' 604 605 updateStripePaymentMethod(); 606 " 607 608 :class="{ 609 'selected': selectedPaymentMethod === 'google_pay', 610 'payment-error': selectedPaymentMethod === 'google_pay' && oneClickPaymentErrorMessage 611 }" 612 > 613 <div class="block-icon"> 614 615 616 <img src="https://donation-form-prod.digi-cash-prod.pbs.org/media/images/Google_Pay.original.svg" alt="Google Pay Icon"> 617 618 </div> 619 620 <div class="block-name"> 621 Google Pay 622 </div> 623 624 </button> 625</div> 626 627 628 629 630 631 632 633 634<div 635 class="payment-method" 636 x-show="availablePaymentMethods.includes('apple_pay')" 637 x-transition.duration.1000ms 638> 639 <button 640 type="button" 641 class="flex-rows" 642 643 x-on:click=" 644 cardPaymentErrorMessage=null; 645 oneClickPaymentErrorMessage=null; 646 hiddenPaymentElements=true; 647 oneClickDonation=true; 648 selectedPaymentMethod='apple_pay' 649 650 updateStripePaymentMethod(); 651 " 652 653 :class="{ 654 'selected': selectedPaymentMethod === 'apple_pay', 655 'payment-error': selectedPaymentMethod === 'apple_pay' && oneClickPaymentErrorMessage 656 }" 657 > 658 <div class="block-icon"> 659 660 661 <img src="https://donation-form-prod.digi-cash-prod.pbs.org/media/images/Apple_Pay.original.svg" alt="Apple Pay Icon"> 662 663 </div> 664 665 <div class="block-name"> 666 Apple Pay 667 </div> 668 669 </button> 670</div> 671 672 </div> 673 674 675 676<div class="checkbox"> 677 <input type="checkbox" id="donor_covered_fees" name="donor_covered_fees" onchange="updateStripeAmount()" 678 x-model="$store.form.donorCoveredFees"> 679 <label class="flex-rows gap-0-75 payment_method__covered_fee" for="donor_covered_fees"> 680 <img class="checked-icon" src=https://donation-form-prod.digi-cash-prod.pbs.org/static/icons/checkbox_checked.svg> 681 <img class="unchecked-icon" src=https://donation-form-prod.digi-cash-prod.pbs.org/static/icons/checkbox_unchecked.svg>
682 Maximize my impact by adding 3% to help with processing fees. 683 </label> 684</div> 685 686 </div> 687 <div 688 class="" 689 x-cloak x-show="oneClickPaymentErrorMessage" 690 > 691 <p class="error-message" x-text="oneClickPaymentErrorMessage"></p> 692 </div> 693 </div> 694 695 <div 696 class="flex-columns payment" 697 id="payment" 698 x-cloak x-show="!hiddenPaymentElements" 699 > 700 701 702 703 704<div class="flex-columns padding-left-right-2 padding-left-right-1-25-sm 705 padding-top-bottom-2 gap-1-5 gap-0-94-sm 706 payment-details" 707 :class="{ 'payment-error': cardPaymentErrorMessage }" 708> 709 <div class="flex-rows gap-0-75 gap-0-5-sm payment-details__header"> 710 <div class="w-block-icon block-icon"><img alt="Lock" height="28" src="https://donation-form-prod.digi-cash-prod.pbs.org/media/images/Lock.original.svg" width="23"></div> 711<div class="w-block-heading block-heading"><h2>Payment Details</h2> 712</div> 713 </div> 714 <div id="payment-element" x-show="selectedPaymentMethod !== 'acss_debit'"> 715 <!-- Elements will create form elements here --> 716 </div> 717 <div id="acss-payment-element" x-show="selectedPaymentMethod === 'acss_debit'"> 718 <!-- Elements will create the ACSS (Canadian bank account) form elements here --> 719 </div> 720 <div 721 class="" 722 x-cloak x-show="cardPaymentErrorMessage" 723 > 724 <p class="error-message" x-text="cardPaymentErrorMessage"></p> 725 </div> 726</div> 727 728 729 730 731 <h2>Billing Address</h2> 732 733 734 735 736 <div class="flex-columns gap-0-5 padding-left-right-2 padding-left-right-1-25-sm address-block"> 737 <p x-cloak x-show="incompleteFullName" class="error-message"> 738 Please provide your full name. 739 </p> 740 <div id="address-element"> 741 <!-- Elements will create form elements here --> 742 </div> 743 </div> 744 745 746 747 <div id="link-authentication-element" 748 class="padding-left-right-2 padding-left-right-1-25-sm"> 749 <!-- Elements will create authentication element here --> 750 </div> 751 752 753 </div> 754 755 <div 756 x-cloak 757 class="flex-columns section shipping-address" 758 x-show="!hiddenPaymentElements && giftSelected" 759 > 760 761 <h2>Shipping Address</h2> 762 763 764 765 766<div x-data="$store.form.useBillingAddress" 767 x-init="$watch('$store.form.useBillingAddress', value => checkShippingAddressComplete())" 768 class="flex-columns gap-0-75 gap-0-5-sm"> 769 <div id="use-billing-address" class="checkbox"> 770 <input type="checkbox" checked name="shipping_use_billing_address" x-model="$store.form.useBillingAddress" 771 id="id_shipping_use_billing_address"> 772 <label for="id_shipping_use_billing_address" class="flex-rows gap-0-75"> 773 <img class="checked-icon" src=https://donation-form-prod.digi-cash-prod.pbs.org/static/icons/checkbox_checked.svg> 774 <img class="unchecked-icon" src=https://donation-form-prod.digi-cash-prod.pbs.org/static/icons/checkbox_unchecked.svg> 775 Same as billing address 776 </label> 777 </div> 778 <div x-show="!$store.form.useBillingAddress" class="flex-columns gap-0-75 gap-1-sm"> 779 <div class="flex-columns billing-address-field"> 780 <p x-cloak x-show="$store.form.incompleteShippingFullName" class="error-message"> 781 Please provide your full name. 782 </p> 783 <label for="id_shipping_full_name">Full Name</label> 784 <input type="text" name="shipping_full_name" @change="checkShippingAddressComplete()" :class="{ 'error-border'
784: incompleteShippingFullName }" id="id_shipping_full_name"> 785 </div> 786 <div class="flex-columns billing-address-field"> 787 <label for="id_shipping_address">Street Address</label> 788 <input type="text" name="shipping_address" maxlength="100" @change="checkShippingAddressComplete()" id="id_shipping_address"> 789 </div> 790 <div class="flex-columns billing-address-field"> 791 <label for="id_shipping_address_details">Apartment, Suite, etc (Optional)</label> 792 <input type="text" name="shipping_address_details" maxlength="100" @change="checkShippingAddressComplete()" id="id_shipping_address_details"> 793 </div> 794 <div class="flex-columns billing-address-field"> 795 <label for="id_shipping_city">City</label> 796 <input type="text" name="shipping_city" maxlength="50" @change="checkShippingAddressComplete()" id="id_shipping_city"> 797 </div> 798 <div class="flex-rows gap-0-75"> 799 <div class="flex-columns billing-address-field"> 800 <label for="id_shipping_state">State</label> 801 <div class="flex-rows state-field"> 802 <select name="shipping_state" @change="checkShippingAddressComplete()" id="id_shipping_state"> 803 <option value="" selected></option> 804 805 <option value="AL">Alabama</option> 806 807 <option value="AK">Alaska</option> 808 809 <option value="AS">American Samoa</option> 810 811 <option value="AZ">Arizona</option> 812 813 <option value="AR">Arkansas</option> 814 815 <option value="CA">California</option> 816 817 <option value="CO">Colorado</option> 818 819 <option value="CT">Connecticut</option> 820 821 <option value="DE">Delaware</option> 822 823 <option value="DC">District of Columbia</option> 824 825 <option value="FL">Florida</option> 826 827 <option value="GA">Georgia</option> 828 829 <option value="GU">Guam</option> 830 831 <option value="HI">Hawaii</option> 832 833 <option value="ID">Idaho</option> 834 835 <option value="IL">Illinois</option> 836 837 <option value="IN">Indiana</option> 838 839 <option value="IA">Iowa</option> 840 841 <option value="KS">Kansas</option> 842 843 <option value="KY">Kentucky</option> 844 845 <option value="LA">Louisiana</option> 846 847 <option value="ME">Maine</option> 848 849 <option value="MD">Maryland</option> 850 851 <option value="MA">Massachusetts</option> 852 853 <option value="MI">Michigan</option> 854 855 <option value="MN">Minnesota</option> 856 857 <option value="MS">Mississippi</option> 858 859 <option value="MO">Missouri</option> 860 861 <option value="MT">Montana</option> 862 863 <option value="NE">Nebraska</option> 864 865 <option value="NV">Nevada</option> 866 867 <option value="NH">New Hampshire</option> 868 869 <option value="NJ">New Jersey</option> 870 871 <option value="NM">New Mexico</option> 872 873 <option value="NY">New York</option> 874 875 <option value="NC">North Carolina</option> 876 877 <option value="ND">North Dakota</option> 878 879 <option value="OH">Ohio</option> 880 881 <option value="OK">Oklahoma</option> 882 883 <option value="OR">Oregon</option> 884 885 <option value="PA">Pennsylvania</option> 886 887 <option value="PR">Puerto Rico</option> 888 889 <option value="RI">Rhode Island</option> 890 891 <option value="SC">South Carolina</option> 892 893 <option value="SD">South Dakota</option> 894 895 <option value="TN">Tennessee</option> 896 897 <option value="TX">Texas</option> 898 899 <option value="UT">Utah</option> 900 901 <option value="VT">Vermont</option> 902 903 <option value="VI">Virgin Islands</option> 904 905 <option value="VA">Virginia</option> 906 907 <option value="WA">Washington</option> 908 909 <option value="WV">West Virginia</option> 910 911 <option value="WI">Wisconsin</option> 912 913 <option value="WY">Wyoming</option> 914 915</select> 916 <div class="dropdown-arrow"> 917 <img src="https://donation-form-prod.digi-cash-prod.pbs.org/static/icons/donate-dropdown-arrow.svg"> 918 </div> 919 </div> 920 </div> 921 <div class="flex-columns billing-address-field"> 922 <label for="id_shipping_zip_code">ZIP Code</label> 923 <input type="text" name="shipping_zip_code" maxlength="11" @change="checkShippingAddressComplete()" pattern="^\d{5}$" :class="{ 'error-border': invalidShippingZipCode }" id="id_shipping_zip_code">
924 <p x-cloak x-show="$store.form.invalidShippingZipCode" class="error-message"> 925 Your ZIP is invalid. 926 </p> 927 </div> 928 </div> 929 </div> 930</div> 931 932 </div> 933 934 <div 935 id="express-checkout-block" 936 :aria-hidden="!oneClickDonation" 937 class="one-click-donate-button" 938 > 939 <!-- Elements will create express checkout element here --> 940 </div> 941 942 <button 943 class="donate-button bold" 944 id="donate-button" 945 :aria-hidden="oneClickDonation" 946 947 x-cloak x-bind:disabled="!( 948 paymentElementComplete 949 && addressElementComplete 950 && linkAuthenticationElementComplete 951 && shippingAddressComplete 952 && selectedPaymentMethod 953 && !amountMinimumError 954 )" 955 956 957 958 x-text="getDonateButtonLabel( 959 amount, customAmount, donationType, donorCoveredFees, yearlyDonation 960 )" 961 ></button> 962 963 <div aria-hidden="true"> 964 <input type="text" id="hidden-call-sign" name="call_sign" value=KLCS> 965 <input type="text" id="hidden-payment-campaign-id" name="payment_campaign_id" 966 value=20d18e09-8c6c-48ee-bfc8-19cf45a00de6> 967 968 <input type="text" id="hidden-confirmation-token" name="confirmation_token" value=""> 969 <input type="text" id="hidden-setup-intent" name="setup_intent" value=""> 970 <input type="text" id="hidden-currency" name="currency" value="usd"> 971 972 <input type="text" id="hidden-donor-covered-fee" name="donor_covered_fee" 973 value="3.0"> 974 975 <input type="text" id="hidden-first-name" name="first_name" value=""> 976 <input type="text" id="hidden-last-name" name="last_name" value=""> 977 <input type="text" id="hidden-email" name="email" value=""> 978 <input type="text" id="hidden-phone" name="phone" value=""> 979 <input type="text" id="hidden-address" name="address" value=""> 980 <input type="text" id="hidden-city" name="city" value=""> 981 <input type="text" id="hidden-state" name="state" value=""> 982 <input type="text" id="hidden-zip-code" name="zip_code" value=""> 983 <input type="text" id="hidden-country" name="country" value=us> 984 </div> 985 </form> 986 </div> 987 </main> 988 989 990 991 992 993 994<!-- Begin Google Tag Manager -->
vendor: 67 bytes, lines 994-996
994 995<noscript> 996 <iframe src='//www.googletagmanager.com/ns.html?id=
996GTM-TWTDGH
vendor: 96 bytes, lines 996-998
996' height='0' width='0' 997 style='display:none;visibility:hidden'></iframe> 998</noscript>
999<script>
vendor: 391 bytes, lines 999-1007
999(function (w, d, s, l, i) { 1000 w[l] = w[l] || []; 1001 w[l].push({'gtm.start': new Date().getTime(), event: 'gtm.js'}); 1002 var f = d.getElementsByTagName(s)[0], j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; 1003 j.async = true; 1004 j.src = '//www.googletagmanager.com/gtm.js?id=' + i + dl; 1005 f.parentNode.insertBefore(j, f); 1006}) 1007(window, document, 'script', 'dataLayer', '
1007GTM-TWTDGH
vendor: 4 bytes, line 1007
1007');
1008</script>
1008 1009<!-- End Google Tag Manager --> 1010 1011 1012
1012<script src="https://donation-form-prod.digi-cash-prod.pbs.org/static/js/catalog_nav.js"></script>
1012 1013
1013<script src="https://donation-form-prod.digi-cash-prod.pbs.org/static/js/gift_bag.js"></script>
1013 1014
1014<script src="https://js.stripe.com/v3/"></script>
1014 1015
1015<script src="https://donation-form-prod.digi-cash-prod.pbs.org/static/js/stripe.js" defer></script>
1015 1016
1016<script src="https://donation-form-prod.digi-cash-prod.pbs.org/static/js/donate.js" defer></script>
1016 1017
1017<script src="https://donation-form-prod.digi-cash-prod.pbs.org/static/js/shipping_address.js" defer></script>
1017 1018
1018<script src="https://donation-form-prod.digi-cash-prod.pbs.org/static/js/gifts.js" defer></script>
1018 1019 1020
1020<script> 1021 window.addEventListener('pageshow', function (event) { 1022 if (event.persisted) { 1023 window.location.reload(); 1024 } 1025 }); 1026 1027 document.addEventListener('alpine:init', () => { 1028 Alpine.store('global', { 1029 genericErrorMessage: null, 1030 cardPaymentErrorMessage: null, 1031 oneClickPaymentErrorMessage: null, 1032 }) 1033 Alpine.store('form', { 1034 donationType: document.querySelector("[name='donation_type']").value, // Default check first radio 1035 amount: null, 1036 customAmount: null, 1037 1038 paymentElementComplete: false, 1039 addressElementComplete: false, 1040 linkAuthenticationElementComplete: false, 1041 1042 hiddenPaymentElements: true, 1043 oneClickDonation: false, 1044 incompleteFullName: false, 1045 1046 1047 amountMinimumError: false, 1048 1049 donationToast: null, 1050 1051 1052 useBillingAddress: true, 1053 giftSelected: false, 1054 shippingAddressComplete: true, 1055 incompleteShippingFullName: false, 1056 invalidShippingZipCode: false, 1057 1058 1059 donorCoveredFees: false, 1060 yearlyDonation: false, 1061 1062 1063 availablePaymentMethods: [ 1064 'card', 1065 'us_bank_account', 1066 ], 1067 selectedPaymentMethod: null, 1068 }) 1069 Alpine.store('selection', { 1070 onceInvalidCustomAmount: false, 1071 monthlyInvalidCustomAmount: false, 1072 defaultOption: 1, 1073 userAmount: null, 1074 }) 1075 1076 1077 Alpine.store('giftBag', window.createGiftBagStore()); 1078 Alpine.store('giftBag').init(); 1079 1080 1081 if (!Alpine.store('giftBag').isEmpty) { 1082 Alpine.store('form').giftSelected = true; 1083 } 1084 1085 1086 1087 Alpine.effect(() => { 1088 const amount = Alpine.store('form').amount; 1089 const customAmount = Alpine.store('form').customAmount; 1090 const donationType = Alpine.store('form').donationType; 1091 const bag = Alpine.store('giftBag'); 1092 1093 const effectiveMinimum = typeof getEffectiveMinimum === 'function' 1094 ? getEffectiveMinimum(bag, donationType) : 0; 1095 1096 if (effectiveMinimum <= 0) { 1097 Alpine.store('form').amountMinimumError = false; 1098 return; 1099 } 1100 1101 let effective = 0; 1102 if (customAmount !== null && customAmount !== '') { 1103 effective = parseFloat(customAmount); 1104 } else if (amount !== null && amount !== '') { 1105 effective = parseFloat(amount); 1106 } 1107 1108 Alpine.store('form').amountMinimumError = effective < effectiveMinimum; 1109 }); 1110 }) 1111 1112 /** Global Variables */ 1113 const DonationForm = { 1114 // Stripe 1115 stripePublishableKey: "pk_live_AZi3XYTe7uC2iK22rCCSjiAs004Qsrkqi6", 1116 stripe: null, 1117 stripeElements: null, 1118 expressCheckoutInitialized: false, 1119 1120 // ACSS (Canadian bank account) uses its own SetupIntent-bound Elements. 1121 stripeAppearance: null, 1122 acssElements: null, 1123 acssClientSecret: null, 1124 1125 // Form 1126 formBlock: null, 1127 forSubmitButton: null, 1128 formSubmitted: false, 1129 hidden: { 1130 confirmationToken: document.getElementById("hidden-confirmation-token"), 1131 setupIntent: document.getElementById("hidden-setup-intent"), 1132 firstName: document.getElementById("hidden-first-name"), 1133 lastName: document.getElementById("hidden-last-name"), 1134 email: document.getElementById("hidden-email"), 1135 phone: document.getElementById("hidden-phone"), 1136 address: document.getElementById("hidden-address"), 1137 city: document.getElementById("hidden-city"), 1138 zip_code: document.getElementById("hidden-zip-code"), 1139 state: document.getElementById("hidden-state"), 1140 country: document.getElementById("hidden-country"), 1141 }, 1142 shipping: { 1143 use_billing_address: document.getElementById("id_shipping_use_billing_address"), 1144 full_name: document.getElementById("id_shipping_full_name"), 1145 address: document.getElementById("id_shipping_address"), 1146 address_details: document.getElementById("id_shipping_address_details"), 1147 city: document.getElementById("id_shipping_city"), 1148 state: document.getElementById("id_shipping_state"), 1149 zip_code: document.getElementById("id_shipping_zip_code"), 1150 }, 1151 1152 // Donation Selection 1153 donationTypes: document.querySelectorAll("[name=donation_type]"),
1154 donationAmounts: { 1155 monthly: document.querySelectorAll(`[data-donation-type=monthly]`), 1156 once: document.querySelectorAll(`[data-donation-type=once]`), 1157 }, 1158 1159 yearlyDonation: document.getElementById("yearly_donation"), 1160 1161 donorCoveredFees: document.getElementById("donor_covered_fees"), 1162 donorCoveredFee: document.getElementById("hidden-donor-covered-fee"), 1163 1164 donateButtonLabel: "Donate to KLCS Public Media", 1165 1166 // Data 1167 country: "us", 1168 currency: "usd", 1169 1170 // Station (campaign) minimum donation amounts, per donation type 1171 oneTimeMin: parseFloat("84") || 0, 1172 monthlyMin: parseFloat("7") || 0, 1173 1174 stationShortCommonName: "KLCS Public Media", 1175 stationCallSign: "KLCS", 1176 paymentCampaignId: "20d18e09-8c6c-48ee-bfc8-19cf45a00de6", 1177 1178 googleMapsApiKey: "AIzaSyB-VtZnDApJ4y6UfSgoN12E777HvfWZvCs", 1179 1180 spinnerTimeoutId: null, 1181 donationToastTimeoutId: null, 1182 1183 genericErrorMessageText: 'Weâre unable to process online donations right now. Please contact PBS support at [email protected] for assistance. Thank you!' 1184 }; 1185 </script>
1185 1186 1187
1188<script src="https://unpkg.com/[email protected]"></script>
1188 1189
1190<script defer src="https://cdn.jsdelivr.net/npm/[email protected]/dist/cdn.min.js"></script>
vendor: 1 bytes, line 1190
1190
1191<script type="text/javascript" src="https://donation-form-prod.digi-cash-prod.pbs.org/static/js/donation_form.js"></script>
1191 1192</body> 1193</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.