1//console.log('data')name 2 3const debug = false; 4 5const promo_code = ''; 6 7const promo_prod = ['3', '4', '16', '19']; 8 9const annual_promotional_plan_products = [26, 27, 28, 29] 10 11const jsversion = '[32]'; 12 13 14 15console.log(`v. ${jsversion}`) 16 17let ApiTimerStart; 18 19let cleave; 20 21let is_elapsed = false; 22 23const regex_rules = { 24 25 email: /^[^\s@]+@[^\s@]+\.[^\s@]+$/, 26 27 password: /^(?=.*[A-Z])(?=.*[a-z])(?=.*\d)(?=.*[!@#$%^&*])[A-Za-z\d!@#$%^&*]+$/, 28 29 address: /^[A-Za-z0-9\s\-.#]{3,180}$/, 30 31 name: /^[A-Za-z\s\-'.,]{2,180}$/, 32 33 ignore: /^.*$/, 34 35 text: (min, max) => { 36 37 return generateRegex(false, true, false, min, max); 38 39 }, 40 41 number: (min, max) => { 42 43 return generateRegex(true, false, false, min, max); 44 45 }, 46 47 combo: (number, text, symbol, min, max) => { 48 49 return generateRegex(number, text, symbol, min, max); 50 51 } 52 53} 54 55 56 57 58 59 60 61const error_codes = { 62 63 102: 'regex', 64 65 701: 'exist', 66 67 702: 'exist', 68 69 710: 'exist', 70 71 711: 'exist', 72 73 1214: 'is_current', 74 75 122: 'decline', 76 77 4444: 'connection-lost' 78 79} 80 81 82 83const StatusClasses = { 84 85 active: 'active', 86 87 error: 'error', 88 89 valid: 'valid', 90 91 disable: 'disabled', 92 93 default: '', 94 95 hidden: 'hidden', 96 97 processing: 'processing' 98 99} 100 101 102 103const form_buttons = { 104 105 continue_button: { 106 107 id: 'checkout_continue_btn', 108 109 is_required: false, 110 111 valid: true, 112 113 reason: '', 114 115 element: `#checkout_continue_btn` 116 117 }, 118 119 back_button: { 120 121 id: 'checkout_back_btn', 122 123 is_required: false, 124 125 valid: true, 126 127 reason: '', 128 129 element: `#checkout_back_btn` 130 131 }, 132 133 upgrade_plan_btn: { 134 135 id: 'upgrade_plan_btn', 136 137 is_required: false, 138 139 valid: true, 140 141 reason: '', 142 143 element: `#upgrade_plan_btn` 144 145 } 146 147} 148 149 150 151const idseal_submission_objects = { 152 153 checkout: { 154 155 submission_id: '', 156 157 nonce: '', 158 159 product_id: 0, 160 161 firstname: '', 162 163 lastname: '', 164 165 phonenumber: '', 166 167 ibo_number: '', 168 169 student_identifier: '', 170 171 learning_institution: '', 172 173 email: '', 174 175 password: '', 176 177 address: '', 178 179 address2: '', 180 181 city: '', 182 183 state: '', 184 185 zip: '', 186 187 card_name: '', 188 189 card_number: '', 190 191 billing_zip: '', 192 193 card_month: '', 194 195 card_year: '', 196 197 cvv: '', 198 199 promo: '' 200 201 }, 202 203 upgrade: { 204 205 nonce: '', 206 207 submission_id: '', 208 209 ucid: '', 210 211 ontraport_contact_id: '', 212 213 opuid: '', 214 215 product_id: '', 216 217 zip: '', 218 219 card_name: '', 220 221 card_number: '', 222 223 billing_zip: '', 224 225 card_month: '', 226 227 card_year: '', 228 229 cvv: '' 230 231 }, 232 233 reactivate: { 234 235 nonce: '', 236 237 submission_id: '', 238 239 ucid: '', 240 241 ontraport_contact_id: '', 242 243 opuid: '', 244 245 product_id: '', 246 247 zip: '', 248 249 card_name: '', 250 251 card_number: '', 252 253 billing_zip: '', 254 255 card_month: '', 256 257 card_year: '', 258 259 cvv: '', 260 261 promo: '', 262 263 264 265 } 266 267} 268 269 270 271 272 273// const card_message = ` 274 275// We only accept Visa, Mastercard, and American Express. We do not accept gift cards.<br> 276 277// Accepted Credit Cards: 278 279// <svg class="cc-svg visa" aria-hidden="true" data-prefix="fab" data-icon="cc-visa" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" data-fa-i2svg=""><path fill="currentColor" d="M470.1 231.3s7.6 37.2 9.3 45H446c3.3-8.9 16-43.5 16-43.5-.2.3 3.3-9.1 5.3-14.9l2.8 13.4zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM152.5 331.2L215.7 176h-42.5l-39.3 106-4.3-21.5-14-71.4c-2.3-9.9-9.4-12.7-18.2-13.1H32.7l-.7 3.1c15.8 4 29.9 9.8 42.2 17.1l35.8 135h42.5zm94.4.2L272.1 176h-40.2l-25.1 155.4h40.1zm139.9-50.8c.2-17.7-10.6-31.2-33.7-42.3-14.1-7.1-22.7-11.9-22.7-19.2.2-6.6 7.3-13.4 23.1-13.4 13.1-.3 22.7 2.8 29.9 5.9l3.6 1.7 5.5-33.6c-7.9-3.1-20.5-6.6-36-6.6-39.7 0-67.6 21.2-67.8 51.4-.3 22.3 20 34.7 35.2 42.2 15.5 7.6 20.8 12.6 20.8 19.3-.2 10.4-12.6 15.2-24.1 15.2-16 0-24.6-2.5-37.7-8.3l-5.3-2.5-5.6 34.9c9.4 4.3 26.8 8.1 44.8 8.3 42.2.1 69.7-20.8 70-53zM528 331.4L495.6 176h-31.1c-9.6 0-16.9 2.8-21 12.9l-59.7 142.5H426s6.9-19.2 8.4-23.3H486c1.2 5.5 4.8 23.3 4.8 23.3H528z"></path></svg> 280 281// <svg class="cc-svg mastercard" aria-hidden="true" data-prefix="fab" data-icon="cc-mastercard" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" data-fa-i2svg="">
281<path fill="currentColor" d="M482.9 410.3c0 6.8-4.6 11.7-11.2 11.7-6.8 0-11.2-5.2-11.2-11.7 0-6.5 4.4-11.7 11.2-11.7 6.6 0 11.2 5.2 11.2 11.7zm-310.8-11.7c-7.1 0-11.2 5.2-11.2 11.7 0 6.5 4.1 11.7 11.2 11.7 6.5 0 10.9-4.9 10.9-11.7-.1-6.5-4.4-11.7-10.9-11.7zm117.5-.3c-5.4 0-8.7 3.5-9.5 8.7h19.1c-.9-5.7-4.4-8.7-9.6-8.7zm107.8.3c-6.8 0-10.9 5.2-10.9 11.7 0 6.5 4.1 11.7 10.9 11.7 6.8 0 11.2-4.9 11.2-11.7 0-6.5-4.4-11.7-11.2-11.7zm105.9 26.1c0 .3.3.5.3 1.1 0 .3-.3.5-.3 1.1-.3.3-.3.5-.5.8-.3.3-.5.5-1.1.5-.3.3-.5.3-1.1.3-.3 0-.5 0-1.1-.3-.3 0-.5-.3-.8-.5-.3-.3-.5-.5-.5-.8-.3-.5-.3-.8-.3-1.1 0-.5 0-.8.3-1.1 0-.5.3-.8.5-1.1.3-.3.5-.3.8-.5.5-.3.8-.3 1.1-.3.5 0 .8 0 1.1.3.5.3.8.3 1.1.5s.2.6.5 1.1zm-2.2 1.4c.5 0 .5-.3.8-.3.3-.3.3-.5.3-.8 0-.3 0-.5-.3-.8-.3 0-.5-.3-1.1-.3h-1.6v3.5h.8V426h.3l1.1 1.4h.8l-1.1-1.3zM576 81v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V81c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM64 220.6c0 76.5 62.1 138.5 138.5 138.5 27.2 0 53.9-8.2 76.5-23.1-72.9-59.3-72.4-171.2 0-230.5-22.6-15-49.3-23.1-76.5-23.1-76.4-.1-138.5 62-138.5 138.2zm224 108.8c70.5-55 70.2-162.2 0-217.5-70.2 55.3-70.5 162.6 0 217.5zm-142.3 76.3c0-8.7-5.7-14.4-14.7-14.7-4.6 0-9.5 1.4-12.8 6.5-2.4-4.1-6.5-6.5-12.2-6.5-3.8 0-7.6 1.4-10.6 5.4V392h-8.2v36.7h8.2c0-18.9-2.5-30.2 9-30.2 10.2 0 8.2 10.2 8.2 30.2h7.9c0-18.3-2.5-30.2 9-30.2 10.2 0 8.2 10 8.2 30.2h8.2v-23zm44.9-13.7h-7.9v4.4c-2.7-3.3-6.5-5.4-11.7-5.4-10.3 0-18.2 8.2-18.2 19.3 0 11.2 7.9 19.3 18.2 19.3 5.2 0 9-1.9 11.7-5.4v4.6h7.9V392zm40.5 25.6c0-15-22.9-8.2-22.9-15.2 0-5.7 11.9-4.8 18.5-1.1l3.3-6.5c-9.4-6.1-30.2-6-30.2 8.2 0 14.3 22.9 8.3 22.9 15 0 6.3-13.5 5.8-20.7.8l-3.5 6.3c11.2 7.6 32.6 6 32.6-7.5zm35.4 9.3l-2.2-6.8c-3.8 2.1-12.2 4.4-12.2-4.1v-16.6h13.1V392h-13.1v-11.2h-8.2V392h-7.6v7.3h7.6V416c0 17.6 17.3 14.4 22.6 10.9zm13.3-13.4h27.5c0-16.2-7.4-22.6-17.4-22.6-10.6 0-18.2 7.9-18.2 19.3 0 20.5 22.6 23.9 33.8 14.2l-3.8-6c-7.8 6.4-19.6 5.8-21.9-4.9zm59.1-21.5c-4.6-2-11.6-1.8-15.2 4.4V392h-8.2v36.7h8.2V408c0-11.6 9.5-10.1 12.8-8.4l2.4-7.6zm10.6 18.3c0-11.4 11.6-15.1 20.7-8.4l3.8-6.5c-11.6-9.1-32.7-4.1-32.7 15 0 19.8 22.4 23.8 32.7 15l-3.8-6.5c-9.2 6.5-20.7 2.6-20.7-8.6zm66.7-18.3H408v4.4c-8.3-11-29.9-4.8-29.9 13.9 0 19.2 22.4 24.7 29.9 13.9v4.6h8.2V392zm33.7 0c-2.4-1.2-11-2.9-15.2 4.4V392h-7.9v36.7h7.9V408c0-11 9-10.3 12.8-8.4l2.4-7.6zm40.3-14.9h-7.9v19.3c-8.2-10.9-29.9-5.1-29.9 13.9 0 19.4 22.5 24.6 29.9 13.9v4.6h7.9v-51.7zm7.6-75.1v4.6h.8V302h1.9v-.8h-4.6v.8h1.9zm6.6 123.8c0-.5 0-1.1-.3-1.6-.3-.3-.5-.8-.8-1.1-.3-.3-.8-.5-1.1-.8-.5 0-1.1-.3-1.6-.3-.3 0-.8.3-1.4.3-.5.3-.8.5-1.1.8-.5.3-.8.8-.8 1.1-.3.5-.3 1.1-.3 1.6 0 .3 0 .8.3 1.4 0 .3.3.8.8 1.1.3.3.5.5 1.1.8.5.3 1.1.3 1.4.3.5 0 1.1 0 1.6-.3.3-.3.8-.5 1.1-.8.3-.3.5-.8.8-1.1.3-.6.3-1.1.3-1.4zm3.2-124.7h-1.4l-1.6 3.5-1.6-3.5h-1.4v5.4h.8v-4.1l1.6 3.5h1.1l1.4-3.5v4.1h1.1v-5.4zm4.4-80.5c0-76.2-62.1-138.3-138.5-138.3-27.2 0-53.9 8.2-76.5 23.1 72.1 59.3 73.2 171.5 0 230.5 22.6 15 49.5 23.1 76.5 23.1 76.4.1 138.5-61.9 138.5-138.4z"></path></svg> 282 283// <svg class="cc-svg amex" aria-hidden="true" data-prefix="fab" data-icon="cc-amex" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" data-fa-i2svg=""><path fill="currentColor" d="M576 255.4c-37.9-.2-44.2-.9-54.5 5v-5c-45.3 0-53.5-1.7-64.9 5.2v-5.2h-78.2v5.1c-11.4-6.5-21.4-5.1-75.7-5.1v5.6c-6.3-3.7-14.5-5.6-24.3-5.6h-58c-3.5 3.8-12.5 13.7-15.7 17.2-12.7-14.1-10.5-11.6-15.5-17.2h-83.1v92.3h82c3.3-3.5 12.9-13.9 16.1-17.4 12.7 14.3 10.3 11.7 15.4 17.4h48.9c0-14.7.1-8.3.1-23 11.5.2 24.3-.2 34.3-6.2 0 13.9-.1 17.1-.1 29.2h39.6c0-18.5.1-7.4.1-25.3 6.2 0 7.7 0 9.4.1.1 1.3 0 0 0 25.2 152.8 0 145.9 1.1 156.7-4.5v4.5c34.8 0 54.8 2.2 67.5-6.1V432c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V228.3h26.6c4.2-10.1 2.2-5.3 6.4-15.3h19.2c4.2 10 2.2 5.2 6.4 15.3h52.9v-11.4c2.2 5 1.1 2.5 5.1 11.4h29.5c2.4-5.5 2.6-5.8 5.1-11.4v11.4h135.5v-25.1c6.4 0 8-.1 9.8.2 0 0-.2 10.9.1 24.8h66.5v-8.9c7.4 5.9 17.4 8.9 29.7 8.9h26.8c4.2-10.1 2.2-5.3 6.4-15.3h19c6.5 15 .2.5 6.6 15.3h52.8v-21.9c11.8 19.7 7.8 12.9 13.2 21.9h41.6v-92h-39.9v18.4c-12.2-20.2-6.3-10.4-11.2-18.4h-43.3v20.6c-6.2-14.6-4.6-10.8-8.8-20.6h-32.4c-.4 0-2.3.2-2.3-.3h-27.6c-12.8 0-23.1 3.2-30.7 9.3v-9.3h-39.9v5.3c-10.8-6.1-20.7-5.1-64.4-5.3-.1 0-11.6-.1-11.6 0h-103c-2.5 6.1-6.8 16.4-12.6 30-2.8-6-11-23.8-13.9-30h-46V157c-7.4-17.4-4.7-11-9-21.1H22.9c-3.4 7.9-13.7 32-23.1 53.9V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48v175.4zm-186.6-80.6c-.3.2-1.4 2.2-1.4 7.6 0 6 .9 7.7 1.1 7.9.2.1 1.1.5 3.4.5l7.3-16.9c-1.1 0-2.1-.1-3.1-.1-5.6 0-7 .7-7.3 1zm-19.9 130.9c9.2 3.3 11 9.5 11 18.4l-.1 13.8h-16.6l.1-11.5c0-11.8-3.8-13.8-14.8-13.8h-17.6l-.1 25.3h-16.6l.1-69.3h39.4c13 0 27.1 2.3 27.1 18.7-.1 7.6-4.2 15.3-11.9 18.4zm-6.3-15.4c0-6.4-5.6-7.4-10.7-7.4h-21v15.6h20.7c5.6 0 11-1.3 11-8.2zm181.7-7.1H575v-14.6h-32.9c-12.8 0-23.8 6.6-23.8 20.7 0 33 42.7 12.8 42.7 27.4 0 5.1-4.3 6.4-8.4 6.4h-32l-.1 14.8h32c8.4 0 17.6-1.8 22.5-8.9v-25.8c-10.5-13.8-39.3-1.3-39.3-13.5 0-5.8 4.6-6.5 9.2-6.5zm-99.2-.3v-14.3h-55.2l-.1 69.3h55.2l.1-14.3-38.6-.3v-13.8H445v-14.1h-37.8v-12.5h38.5zm42.2 40.1h-32.2l-.1 14.8h32.2c14.8 0 26.2-5.6 26.2-22 0-33.2-42.9-11.2-42.9-26.3 0-5.6 4.9-6.4 9.2-6.4h30.4v-14.6h-33.2c-12.8 0-23.5 6.6-23.5 20.7 0 33 42.7 12.5 42.7 27.4-.1 5.4-4.7 6.4-8.8 6.4zm-78.1-158.7c-17.4-.3-33.2-4.1-33.2 19.7 0 11.8 2.8 19.9 16.1 19.9h7.4l23.5-54.5h24.8l27.9 65.4v-65.4h25.3l29.1 48.1v-48.1h16.9v69H524l-31.2-51.9v51.9h-33.7l-6.6-15.3h-34.3l-6.4 15.3h-19.2c-22.8 0-33-11.8-33-34 0-23.3 10.5-35.3 34-35.3h16.1v15.2zm14.3 24.5h22.8l-11.2-27.6-11.6 27.6zm-72.6-39.6h-16.9v69.3h16.9v-69.3zm-38.1 37.3c9.5 3.3 11 9.2 11 18.4v13.5h-16.6c-.3-14.8 3.6-25.1-14.8-25.1h-18v25.1h-16.4v-69.3l39.1.3c13.3 0 27.4 2 27.4 18.4.1 8-4.3 15.7-11.7 18.7zm-6.7-1
2835.3c0-6.4-5.6-7.4-10.7-7.4h-21v15.3h20.7c5.7 0 11-1.3 11-7.9zm-59.5-7.4v-14.6h-55.5v69.3h55.5v-14.3h-38.9v-13.8h37.8v-14.1h-37.8v-12.5h38.9zm-84.6 54.7v-54.2l-24 54.2H124l-24-54.2v54.2H66.2l-6.4-15.3H25.3l-6.4 15.3H1l29.7-69.3h24.5l28.1 65.7v-65.7h27.1l21.7 47 19.7-47h27.6v69.3h-16.8zM53.9 188.8l-11.5-27.6-11.2 27.6h22.7zm253 102.5c0 27.9-30.4 23.3-49.3 23.3l-.1 23.3h-32.2l-20.4-23-21.3 23h-65.4l.1-69.3h66.5l20.5 22.8 21-22.8H279c15.6 0 27.9 5.4 27.9 22.7zm-112.7 11.8l-17.9-20.2h-41.7v12.5h36.3v14.1h-36.3v13.8h40.6l19-20.2zM241 276l-25.3 27.4 25.3 28.1V276zm48.3 15.3c0-6.1-4.6-8.4-10.2-8.4h-21.5v17.6h21.2c5.9 0 10.5-2.8 10.5-9.2z"></path></svg> 284 285// <svg class="cc-svg discover" aria-hidden="true" data-prefix="fab" data-icon="cc-discover" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" data-fa-i2svg=""><path fill="currentColor" d="M83 212.1c0 7.9-3.2 15.5-8.9 20.7-4.9 4.4-11.6 6.4-21.9 6.4H48V185h4.2c10.3 0 16.7 1.7 21.9 6.6 5.7 5 8.9 12.6 8.9 20.5zM504.8 184h-4.9v24.9h4.7c10.3 0 15.8-4.4 15.8-12.8 0-7.9-5.5-12.1-15.6-12.1zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM428 253h45.3v-13.8H444V217h28.3v-13.8H444V185h29.3v-14H428v82zm-86.2-82l35 84.2h8.6l35.5-84.2h-17.5l-22.2 55.2-21.9-55.2h-17.5zm-83 41.6c0 24.6 19.9 44.6 44.6 44.6 24.6 0 44.6-19.9 44.6-44.6 0-24.6-19.9-44.6-44.6-44.6-24.6 0-44.6 19.9-44.6 44.6zm-68-.5c0 32.5 33.6 52.5 63.3 38.2v-19c-19.3 19.3-46.8 5.8-46.8-19.2 0-23.7 26.7-39.1 46.8-19v-19c-30.2-15-63.3 6.8-63.3 38zm-33.9 28.3c-7.6 0-13.8-3.7-17.5-10.8l-10.3 9.9c17.8 26.1 56.6 18.2 56.6-11.3 0-13.1-5.4-19-23.6-25.6-9.6-3.4-12.3-5.9-12.3-10.3 0-8.7 14.5-14.1 24.9-2.5l8.4-10.8c-19.1-17.1-49.7-8.9-49.7 14.3 0 11.3 5.2 17.2 20.2 22.7 25.7 9.1 14.7 24.4 3.3 24.4zm-57.4-28.3c0-24.1-18-41.1-44.1-41.1H32v82h23.4c30.9 0 44.1-22.4 44.1-40.9zm23.4-41.1h-16v82h16v-82zM544 288c-33.3 20.8-226.4 124.4-416 160h401c8.2 0 15-6.8 15-15V288zm0-35l-25.9-34.5c12.1-2.5 18.7-10.6 18.7-23.2 0-28.5-30.3-24.4-52.9-24.4v82h16v-32.8h2.2l22.2 32.8H544z"></path></svg> 286 287// `; 288 289 290 291 292 293const idseal_field_requirements = { 294 295 address: { 296 297 id: 'address', 298 299 is_required: true, 300 301 valid: false, 302 303 reason: 'empty', 304 305 element: '#address-input', 306 307 validation_method: 'regex', 308 309 validation_rule: regex_rules.address, 310 311 //validation_rule: regex_rules.ignore, 312 313 messages: { 314 315 empty: 'This field cannot be empty', 316 317 regex: 'Must be between 3 and 180 characters long, and contain only letters, spaces, dashes, periods, or number signs (a-z, ,-,.,#).', 318 319 default: '', 320 321 match: '', 322 323 pass: '', 324 325 }, 326 327 }, 328 329 address2: { 330 331 id: 'address2', 332 333 is_required: false, 334 335 valid: true, 336 337 reason: 'empty', 338 339 element: '#address2-input', 340 341 validation_method: 'regex', 342 343 validation_rule: regex_rules.address, 344 345 messages: { 346 347 empty: 'This field cannot be empty', 348 349 regex: 'Must be between 3 and 180 characters long, and contain only letters, spaces, dashes, periods, or number signs (a-z, ,-,.,#).', 350 351 default: '', 352 353 match: '', 354 355 pass: '', 356 357 }, 358 359 }, 360 361 billing_zip: { 362 363 id: 'billing_zip', 364 365 is_required: true, 366 367 valid: false, 368 369 reason: 'empty', 370 371 element: '#billing_zip-input', 372 373 validation_method: 'regex', 374 375 validation_rule: regex_rules.number(5, 5), 376 377 messages: { 378 379 empty: 'This field cannot be empty', 380 381 regex: 'Must be a 5 digit numeric zip code.', 382 383 default: '', 384 385 match: '', 386 387 pass: '', 388 389 }, 390 391 }, 392 393 card_month: { 394 395 id: 'card_month', 396 397 is_required: true, 398 399 valid: false, 400 401 reason: 'empty', 402 403 element: '#card_month-input', 404 405 validation_method: 'regex', 406 407 validation_rule: regex_rules.number(1, 2), 408 409 messages: { 410 411 empty: 'This field cannot be empty', 412 413 regex: '', 414 415 default: '', 416 417 match: '', 418 419 pass: '', 420 421 }, 422 423 }, 424 425 card_name: { 426 427 id: 'card_name', 428 429 is_required: true, 430 431 valid: false, 432 433 reason: 'empty', 434 435 element: '#card_name-input', 436 437 validation_method: 'regex', 438 439 // validation_rule: regex_rules.text(2, 225), 440 441 validation_rule: regex_rules.name, 442 443 messages: { 444 445 empty: 'This field cannot be empty', 446 447 regex: 'Must be between 2 to 255 characters long, and contain only letters, space
447s, dashes or apostrophes (a-z, ,-,\')', 448 449 default: '', 450 451 match: '.', 452 453 pass: '', 454 455 }, 456 457 }, 458 459 card_number: { 460 461 id: 'card_number', 462 463 is_required: true, 464 465 valid: false, 466 467 format: true, 468 469 reason: 'empty', 470 471 element: '#card_number-input', 472 473 validation_method: 'regex', 474 475 validation_rule: regex_rules.number(15, 16), 476 477 //validation_rule: regex_rules.ignore, 478 479 messages: { 480 481 empty: 'This field cannot be empty', 482 483 regex: 'Must be 16 characters long, and contain only numbers.', 484 485 default: 'We only accept Visa, Mastercard, American Express, and Discover. We do not accept prepaid, cash cards, or gift cards.', 486 487 match: '', 488 489 pass: 'We only accept Visa, Mastercard, American Express, and Discover. We do not accept prepaid, cash cards, or gift cards.', 490 491 decline: 'Credit card number failed to authorize' 492 493 }, 494 495 }, 496 497 card_year: { 498 499 id: 'card_year', 500 501 is_required: true, 502 503 valid: false, 504 505 reason: 'empty', 506 507 element: '#card_year-input', 508 509 validation_method: 'regex', 510 511 validation_rule: regex_rules.number(3, 4), 512 513 messages: { 514 515 empty: 'This field cannot be empty', 516 517 regex: '', 518 519 default: '', 520 521 match: '', 522 523 pass: '', 524 525 }, 526 527 }, 528 529 city: { 530 531 id: 'city', 532 533 is_required: true, 534 535 valid: false, 536 537 reason: 'empty', 538 539 element: '#city-input', 540 541 validation_method: 'regex', 542 543 validation_rule: regex_rules.text(2, 225), 544 545 messages: { 546 547 empty: 'This field cannot be empty', 548 549 regex: 'Must be a maximum of 200 characters long, and contain only letters, spaces (a-z, ).', 550 551 default: '', 552 553 match: '', 554 555 pass: '', 556 557 }, 558 559 }, 560 561 cvv: { 562 563 id: 'cvv', 564 565 is_required: true, 566 567 valid: false, 568 569 reason: 'empty', 570 571 element: '#cvv-input', 572 573 validation_method: 'regex', 574 575 validation_rule: regex_rules.number(3, 4), 576 577 messages: { 578 579 empty: 'This field cannot be empty', 580 581 regex: 'Must be between 3 to 4 characters long, and contain only numbers.', 582 583 default: '', 584 585 match: '', 586 587 pass: '', 588 589 }, 590 591 }, 592 593 email: { 594 595 id: 'email', 596 597 is_required: true, 598 599 valid: false, 600 601 reason: 'empty', 602 603 element: '#email-input', 604 605 validation_method: 'regex', 606 607 validation_rule: regex_rules.email, 608 609 compared: 'email_confirm', 610 611 messages: { 612 613 empty: 'This field cannot be empty', 614 615 regex: 'This does not appear to be a valid email address', 616 617 exist: 'Email already exists. You can login to your Member Portal to view account, upgrade plan, or renew your subscription by <a href="https://member.idseal.com/login" target="_blank" title="login to your member portal">clicking here</a>. ', 618 619 default: '1 email per account.', 620 621 pass: '', 622 623 }, 624 625 }, 626 627 email_confirm: { 628 629 id: 'email_confirm', 630 631 is_required: true, 632 633 valid: false, 634 635 reason: 'empty', 636 637 element: `#email_confirm-input`, 638 639 validation_method: 'compare', 640 641 validation_rule: 'email', 642 643 messages: { 644 645 empty: 'This field cannot be empty', 646 647 regex: '', 648 649 match: 'This does not appear to match your email address', 650 651 default: 'Must match email address above.', 652 653 pass: '', 654 655 }, 656 657 }, 658 659 firstname: { 660 661 id: 'firstname', 662 663 is_required: true, 664 665 valid: false, 666 667 reason: 'empty', 668 669 element: '#firstname-input', 670 671 validation_method: 'regex', 672 673 validation_rule: regex_rules.name, 674 675 messages: { 676 677 empty: 'This field cannot be empty', 678 679 regex: 'Must be between 2 to 255 characters long, and contain only letters, spaces, dashes or apostrophes (a-z, ,-,\')', 680 681 default: '', 682 683 pass: '', 684 685 } 686 687 }, 688 689 ibo_number: { 690 691 id: 'ibo_number', 692 693 is_required: false, 694 695 valid: true, 696 697 reason: 'empty', 698 699 element: '#ibo_number-input', 700 701 validation_method: 'regex', 702 703 validation_rule: regex_rules.number(2, 10), 704 705 messages: { 706 707 empty: '', 708 709 regex: 'Must between 2 to 10, and contain only numbers.', 710 711 default: 'Must between 2 to 10, and contain only numbers.', 712 713 pass: '', 714 715 }, 716 717 }, 718 719 lastname: { 720 721 id: 'lastname', 722 723 is_required: true, 724 725 valid: false, 726 727 reason: 'empty', 728 729 element: '#lastname-input', 730 731 validation_method: 'regex', 732 733 validation_rule: regex_rules.name, 734 735 messages: { 736 737 empty: 'This field cannot be empty', 738 739 regex: 'Must be between 2 to 255 characters long, and contain only letters, space
739s, dashes or apostrophes (a-z, ,-,\')', 740 741 default: '', 742 743 pass: '', 744 745 } 746 747 }, 748 749 password: { 750 751 id: 'password', 752 753 is_required: true, 754 755 valid: false, 756 757 compared: 'password_confirm', 758 759 reason: 'empty', 760 761 element: '#password-input', 762 763 validation_rule: regex_rules.password, 764 765 validation_method: 'password', 766 767 messages: { 768 769 empty: 'This field cannot be empty', 770 771 regex: 'Min. 8 characters, must include (1) Uppercase, (1) Lowercase, (1) Number, and/or (1) Special Character.', 772 773 default: 'Min. 8 characters, must include (1) Uppercase, (1) Lowercase, (1) Number, and/or (1) Special Character.', 774 775 email: 'Password cannot contain your email.', 776 777 pass: '', 778 779 } 780 781 }, 782 783 password_confirm: { 784 785 id: 'password_confirm', 786 787 is_required: true, 788 789 valid: false, 790 791 reason: 'empty', 792 793 element: '#password_confirm-input', 794 795 validation_method: 'compare', 796 797 validation_rule: 'password', 798 799 messages: { 800 801 empty: 'This field cannot be empty', 802 803 regex: '', 804 805 default: 'Min. 8 characters, must include (1) Uppercase, (1) Lowercase, (1) Number, and/or (1) Special Character.', 806 807 match: 'Passwords must match', 808 809 pass: '', 810 811 }, 812 813 }, 814 815 phonenumber: { 816 817 id: 'phonenumber', 818 819 is_required: true, 820 821 valid: false, 822 823 reason: 'empty', 824 825 format: true, 826 827 element: '#phonenumber-input', 828 829 validation_method: 'regex', 830 831 validation_rule: regex_rules.number(10, 10), 832 833 messages: { 834 835 empty: 'This field cannot be empty', 836 837 regex: 'Input should be a full 10 digit US phone number.', 838 839 default: 'Only numbers, include area code. 5551234567', 840 841 pass: '', 842 843 } 844 845 }, 846 847 productID: { 848 849 id: 'productID', 850 851 is_required: true, 852 853 valid: false, 854 855 reason: 'empty', 856 857 element: '#productID-input', 858 859 validation_method: 'upgrade_reactivate', 860 861 validation_rule: 'upgrade_reactivate', 862 863 //validation_rule: regex_rules.ignore, 864 865 messages: { 866 867 empty: 'This field cannot be empty', 868 869 regex: '', 870 871 default: '', 872 873 match: '', 874 875 pass: '', 876 877 is_current: 'You must select a different plan in order to upgrade.' 878 879 }, 880 881 }, 882 883 // promo: { 884 885 // id: 'promo', 886 887 // is_required: false, 888 889 // valid: true, 890 891 // reason: 'empty', 892 893 // element: '#promo-input', 894 895 // validation_method: 'regex', 896 897 // validation_rule: regex_rules.text(2, 35), 898 899 // messages: { 900 901 // empty: 'This field cannot be empty', 902 903 // regex: '', 904 905 // default: '', 906 907 // match: '', 908 909 // pass: '', 910 911 // }, 912 913 // }, 914 915 referrer: { 916 917 id: 'referrer', 918 919 is_required: false, 920 921 valid: true, 922 923 reason: 'empty', 924 925 element: '#referrer-input', 926 927 validation_method: 'regex', 928 929 validation_rule: regex_rules.combo(2, 225), 930 931 messages: { 932 933 empty: '', 934 935 regex: '', 936 937 default: '', 938 939 match: '', 940 941 pass: '', 942 943 }, 944 945 }, 946 947 state: { 948 949 id: 'state', 950 951 is_required: true, 952 953 valid: false, 954 955 reason: 'empty', 956 957 element: '#state-input', 958 959 validation_method: 'regex', 960 961 validation_rule: regex_rules.text(2, 2), 962 963 messages: { 964 965 empty: 'This field cannot be empty', 966 967 regex: '', 968 969 default: '', 970 971 match: '', 972 973 pass: '', 974 975 }, 976 977 }, 978 979 termsandconditions: { 980 981 id: 'termsandconditions', 982 983 is_required: true, 984 985 valid: false, 986 987 reason: 'unchecked', 988 989 element: '#termsandconditions-input', 990 991 validation_method: 'is_checked', 992 993 validation_rule: true, 994 995 messages: { 996 997 empty: 'This field cannot be empty', 998 999 regex: '', 1000 1001 default: '', 1002 1003 match: '', 1004 1005 pass: '', 1006 1007 unchecked: 'You must agree to Terms and Conditions' 1008 1009 }, 1010 1011 }, 1012 1013 zip: { 1014 1015 id: 'zip', 1016 1017 is_required: true, 1018 1019 valid: false, 1020 1021 reason: 'empty', 1022 1023 element: '#zip-input', 1024 1025 validation_method: 'regex', 1026 1027 validation_rule: regex_rules.number(5, 5), 1028 1029 messages: { 1030 1031 empty: 'This field cannot be empty', 1032 1033 regex: 'Must be a 5 digit numeric zip code.', 1034 1035 default: '', 1036 1037 match: '', 1038 1039 pass: '', 1040 1041 }, 1042 1043 }, 1044 1045} 1046 1047 1048 1049 1050 1051 1052 1053const idseal_customer_data = { 1054 1055 checkout: {}, 1056 1057 upgrade: { 1058 1059 id: "", 1060 1061 ontraportID: "", 1062 1063 firstName: "", 1064 1065 lastName: "", 1066 1067 zip: "", 1068 1069 productID: "", 1070 1071 productName: "", 1072 1073 productFrequency: "", 1074 1075 opuid: "", 1076 1077 nextBillingDate: "", 1078 1079 active: false, 1080 1081 inDunning: false 1082 1083 1084 1085 }, 1086 1087 reactivate: {} 1088 1089}
1089 1090 1091 1092 1093const idseal_form_requirements = { 1094 1095 checkout: { 1096 1097 1: { 1098 1099 email: idseal_field_requirements.email, 1100 1101 email_confirm: idseal_field_requirements.email_confirm, 1102 1103 continue_button: form_buttons.continue_button, 1104 1105 back_button: form_buttons.back_button, 1106 1107 }, 1108 1109 2: { 1110 1111 firstname: idseal_field_requirements.firstname, 1112 1113 lastname: idseal_field_requirements.lastname, 1114 1115 phonenumber: idseal_field_requirements.phonenumber, 1116 1117 //ibo_number: idseal_field_requirements.ibo_number, 1118 1119 password: idseal_field_requirements.password, 1120 1121 password_confirm: idseal_field_requirements.password_confirm, 1122 1123 address: idseal_field_requirements.address, 1124 1125 address2: idseal_field_requirements.address2, 1126 1127 city: idseal_field_requirements.city, 1128 1129 state: idseal_field_requirements.state, 1130 1131 zip: idseal_field_requirements.zip, 1132 1133 continue_button: form_buttons.continue_button, 1134 1135 back_button: form_buttons.back_button, 1136 1137 }, 1138 1139 3: { 1140 1141 card_name: idseal_field_requirements.card_name, 1142 1143 card_number: idseal_field_requirements.card_number, 1144 1145 card_month: idseal_field_requirements.card_month, 1146 1147 card_year: idseal_field_requirements.card_year, 1148 1149 cvv: idseal_field_requirements.cvv, 1150 1151 billing_zip: idseal_field_requirements.billing_zip, 1152 1153 //promo: idseal_field_requirements.promo, 1154 1155 referrer: idseal_field_requirements.referrer, 1156 1157 termsandconditions: idseal_field_requirements.termsandconditions, 1158 1159 continue_button: form_buttons.continue_button, 1160 1161 back_button: form_buttons.back_button, 1162 1163 } 1164 1165 }, 1166 1167 upgrade: { 1168 1169 1: { 1170 1171 card_name: idseal_field_requirements.card_name, 1172 1173 card_number: idseal_field_requirements.card_number, 1174 1175 card_month: idseal_field_requirements.card_month, 1176 1177 card_year: idseal_field_requirements.card_year, 1178 1179 cvv: idseal_field_requirements.cvv, 1180 1181 productID: idseal_field_requirements.productID, 1182 1183 zip: idseal_field_requirements.zip, 1184 1185 billing_zip: idseal_field_requirements.billing_zip, 1186 1187 termsandconditions: idseal_field_requirements.termsandconditions, 1188 1189 upgrade_plan_btn: form_buttons.upgrade_plan_btn, 1190 1191 } 1192 1193 }, 1194 1195 reactivate: { 1196 1197 1: { 1198 1199 card_name: idseal_field_requirements.card_name, 1200 1201 card_number: idseal_field_requirements.card_number, 1202 1203 card_month: idseal_field_requirements.card_month, 1204 1205 card_year: idseal_field_requirements.card_year, 1206 1207 cvv: idseal_field_requirements.cvv, 1208 1209 // productID: idseal_field_requirements.productID, 1210 1211 // zip: idseal_field_requirements.zip, 1212 1213 billing_zip: idseal_field_requirements.billing_zip, 1214 1215 termsandconditions: idseal_field_requirements.termsandconditions, 1216 1217 upgrade_plan_btn: form_buttons.upgrade_plan_btn, 1218 1219 } 1220 1221 } 1222 1223 1224 1225 1226 1227} 1228
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.