https://www.enbrel.com/-/media/Themes/Amgen/Enbrel-com/Enbrel-com/…/brite-verify-library-02062025.js
1var btv_res; 2var briteVerifyLibrary = (function() { 3 var briteVerifySugg_flag=false; 4 var formModified=false; 5 var formModifiedAddressFields = false; 6 var hasEmail = false; 7 var hasPhone = false; 8 var hasAddress = false; 9 var addressFields = ["btv_address", "btv_address2", "btv_city", "btv_state", "btv_zip"]; 10 var emailField = "btv_email"; 11 var phoneNumberField = "btv_PhoneNumber"; 12 var form=false; 13 var suggested_addressFields=[]; 14 var emailError = false; 15 var addressError = false; 16 var phoneError = false; 17 var functionName; 18 var addressAccepted = false; 19 20 function initBriteVerify(formId, error_displayClearFn, formSubmitFn) { 21 form = $("#"+formId); 22 functionName=formSubmitFn; 23 if (form.length > 0) { 24 // Check if the form has the required fields 25 if (formId) { 26 if (addressFields.every(classExists)) { 27 console.log( 28 "%c â", 29 "color: green; background: yellow; font-size: 15px", 30 " All address fields are available for briteverify" 31 ); 32 } else { 33 console.log("Address fields are missing or have incorrect class."); 34 } 35 if (form.find('.' + emailField).length > 0) { 36 console.log( 37 "%c â", 38 "color: green; background: yellow; font-size: 15px", 39 " Element with class '" + emailField + "' is available for briteverify" 40 ); 41 } else { 42 console.log("Email field is missing or has an incorrect class."); 43 } 44 if (form.find('.' + phoneNumberField).length > 0) { 45 console.log( 46 "%c â", 47 "color: green; background: yellow; font-size: 15px", 48 " Phone number is available for briteverify" 49 ); 50 } else { 51 console.log( 52 "Phone number field is missing or has an incorrect class." 53 ); 54 } 55 } else { 56 console.log("Form ID is missing."); 57 } 58 } else { 59 console.log("Form not found."); 60 } 61 function classExists(className) { 62 return form.find('.' + className).length > 0; 63 } 64 if (error_displayClearFn == null || error_displayClearFn == " ") { 65 console.log("Default error handling should follow"); 66 } else { 67 console.log( 68 "%c â", 69 "color: orange; font-size: 15px", 70 " Make sure the form have custom error handling function" 71 ); 72 } 73 if (formSubmitFn == null || formSubmitFn == " ") { 74 console.log( 75 "%c â", 76 "color: orange; font-size: 15px", 77 " Please specify the form submission function which we want to submit" 78 ); 79 } else { 80 console.log( 81 "%c â", 82 "color: green; background: yellow; font-size: 15px", 83 " Form submission function mentioned" 84 ); 85 } 86 // Initialize BriteVerify on the specified form 87 if (!briteVerifySugg_flag || formModified || emailError || addressError || phoneError ) { 88 try { 89 form.find(".btv_submitBtn").attr("disabled", true); 90 briteVerify(event, null, errorMsgCallback, null, formId); 91 } catch (err) { 92 console.log("Error in BriteVerify"); 93 } 94 } else { 95 // Submit the form 96 if (typeof functionName === 'function') { 97 // Call the passed function 98 form.find(".btv_submitBtn").attr("disabled", true); 99 defaultFormErrorHandling("removeAll") 100 functionName(); 101 } else { 102 console.error('There is not form submission function'); 103 } 104 } 105 } 106 function errorMsgCallback(res) { 107 $.each(res, function(index, item) { 108 if (item.FieldName === "email") { 109 hasEmail = true; 110 } 111 if (item.FieldName === "PhoneNumber" || item.FieldName === "phone") { 112 hasPhone = true; 113 } 114 if (item.FieldName === "") { 115 hasAddress = true; 116 } 117 }); 118 console.log(res); 119 btv_res=res; 120 if (res.length > 0) { 121 // Clear previous error messages 122 defaultFormErrorHandling("removeAll"); 123 const errorCodesToCheckAddress = [ 124 "address_default_error_code", 125 "zip_code_invalid", 126 "missing_minimum_inputs", 127 "suite_missing", 128 "suite_invalid", 129 "street_number_invalid", 130 "multiple_match", 131 "unknown_street", 132 "directionals_invalid", 133 "street_number_missing", 134 "box_number_invalid", 135 "box_number_missing", 136 "pmb_required" 137 ]; 138 registeSelcetion(form) 139 for (var i = 0; i < res.length; i++) { 140 var response = res[i];
141 if (response.ResponseStatus === "invalid" || response.ResponseStatus === "unknown") { 142 if(hasAddress){ 143 if (errorCodesToCheckAddress.some(errorCode => response.ErrorResponse.includes(errorCode))) { 144 addressError = true; 145 if(response.IsAddressCorrected){ 146 briteVerifySugg_flag=true; 147 formModified=false; 148 // Collect data for entered address suggestion box 149 var complete_address = ""; 150 for (var i = 0; i < addressFields.length; i++) { 151 form.find('.' + phoneNumberField).length > 0 152 var field =form.find('.' + addressFields[i]).val() 153 if (field) { 154 complete_address += (complete_address ? ", " : "") + field; 155 } 156 } 157 // updateFormWithSuggestedAddress(); 158 form.find(".entered-address-block-txt").html(complete_address); // Appended entered address 159 160 // Collect data for suggested address suggestion box 161 suggested_addressFields = [response.AddessResponse.Address1, response.AddessResponse.Address2, response.AddessResponse.City, response.AddessResponse.State, response.AddessResponse.Zipcode]; 162 var concatenatedSuggestedAddress = suggested_addressFields.filter(function (value) { 163 return value.trim() !== ""; // Filter out empty or whitespace-only strings 164 }).join(", "); 165 form.find(".suggested-address-block-txt").html(concatenatedSuggestedAddress); // Appended suggested address. 166 // form.find("#addsuggbox").removeClass("d-none"); // Show suggested address. 167 if($('[name="rdoaddsuggest"]').is(':checked')) { 168 form.find("#addsuggbox").addClass("d-none"); 169 if (formModifiedAddressFields) { 170 form.find("#addsuggbox").removeClass("d-none"); 171 } 172 } else { 173 form.find("#addsuggbox").removeClass("d-none"); // Show suggested address. 174 } 175 formModifiedAddressFields = false; 176 form.find(".btv_submitBtn").attr("disabled", true); // make sure that the form have a similar class. 177 } 178 if(!addressAccepted) { 179 addressError = true; 180 } else { 181 addressError = false; 182 } 183 } 184 } 185 } else if (!response.IsAddressCorrected) { 186 addressError = false; 187 if(!$('#addsuggbox').hasClass('d-none')) { 188 form.find("#addsuggbox").addClass("d-none"); 189 } 190 } 191 if(hasEmail){// Check email validity (considering "accept_all" as valid) 192 const isEmailValid = ["valid", "accept_all", "unknown"].includes(res.find(item => item).ResponseStatus); 193 if(!isEmailValid) { 194 emailError = true; 195 } else { 196 emailError = false; 197 } 198 } 199 if(hasPhone){// Check phone number validity 200 // const isPhoneNumberValid = res.find(item => item.FieldName === "PhoneNumber").ResponseStatus === "valid"; 201 const isPhoneNumberValid = res.find(item => ["PhoneNumber", "phone"].includes(item.FieldName) && item.ResponseStatus === "valid"); 202 if(!isPhoneNumberValid) { 203 phoneError = true; 204 } else { 205 phoneError = false; 206 } 207 } 208 } 209 // Check if there are any errors related to address, phone, and email fields 210 if (addressError || phoneError || emailError) { 211 // Handle errors for individual fields 212 if (addressError && hasAddress && !addressAccepted) { 213 form.find(".btv_submitBtn").removeAttr("disabled"); 214 defaultFormErrorHandling("addressOnlayAdd"); 215 $('#bv-address-error').remove(); 216 $('.btv_address').after('<span class="error bv-error" id="bv-address-error">Please enter a valid address</span>'); 217 } 218 if (phoneError && hasPhone) { 219 form.find(".btv_submitBtn").removeAttr("disabled"); 220 defaultFormErrorHandling("phoneOnlayAdd"); 221 $('#bv-phone-error').remove(); 222 $('.btv_PhoneNumber').after('<span class="error bv-error" id="bv-phone-error">Please enter a valid phone number</span>'); 223 } 224 if (emailError && hasEmail) { 225 form.find(".btv_submitBtn").removeAttr("disabled"); 226 defaultFormErrorHandling("emailOnlayAdd"); 227 $('#bv-email-error').remove(); 228 $('.btv_email').after('<span class="error bv-error" id="bv-email-error">Please enter a valid email address</span>'); 229 } 230 // Scroll to the top of the form to display the error messages 231 if($('.defult_briteVerifError').length > 0){ 232 $(".defult_briteVerifError:visible").show()[0].scrollIntoView({ behavior: "smooth", block: "center" }); 233 } 234 } else { 235 // Clear any existing error messages 236 defaultFormErrorHandling("removeAll"); 237 // Check if at least one of the fields (phone, address, or email) is present 238 if (hasPhone || hasAddress || hasEmail) { 239 validFlag = 1; 240 // Submit the form 241 if (typeof functionName === 'function') { 242 // Call the passed function 243 form.find(".btv_submitBtn").attr("disabled", true); 244 defaultFormErrorHandling("removeAll") 245 functionName(); 246 } else { 247 console.error('There is not form submission function'); 248 } 249 } else { 250 // Handle the case where none of the fields are present (you may add appropriate error handling) 251 console.log("No response from the API...") 252 $('.btn-continue').prop('disabled', false); 253 } 254 } 255 } 256 } 257 function defaultFormErrorHandling (errorType){ 258 if(errorType=="addAll"){ 259 if(hasAddress){ 260 $.each(addressFields, function(index, fieldName) { 261 form.find('.' + fieldName ).addClass('defult_briteVerifError'); 262 }); 263 if($('.btv_state').hasClass('jcf-hidden')){ 264 $(".jcf-select-btv_state").addClass('defult_briteVerifError'); 265 } 266 } 267 if(hasEmail){ 268 form.find('.' + emailField ).addClass('defult_briteVerifError'); 269 } 270 if(hasPhone){ 271 form.find('.' + phoneNumberField ).addClass('defult_briteVerifError'); 272 } 273 } else if(errorType=="removeAll"){ 274 if(hasAddress) { 275 $.each(addressFields, function(index, fieldName) { 276 form.find('.' + fieldName ).removeClass('defult_briteVerifError'); 277 }); 278 if($('.btv_state').hasClass('jcf-hidden')){ 279 $(".jcf-select-btv_state").removeClass('defult_briteVerifError'); 280 } 281 } 282 if (hasEmail){ 283 form.find('.' + emailField ).removeClass('defult_briteVerifError'); 284 } 285 if(hasPhone){ 286 form.find('.' + phoneNumberField ).removeClass('defult_briteVerifError'); 287 } 288 } else if(errorType=="addressOnlayAdd" && !addressAccepted){ 289 form.find('.btv_address').addClass('defult_briteVerifError'); 290 if ( form.find('.btv_address2').val() != "") { 291 form.find('.btv_address2').addClass('defult_briteVerifError'); 292 } 293 form.find('.btv_zip').addClass('defult_briteVerifError'); 294 form.find('.btv_city').addClass('defult_briteVerifError'); 295 form.find('.btv_state').addClass('defult_briteVerifError'); 296 if($('.btv_state').hasClass('jcf-hidden')){ 297 $(".jcf-select-btv_state").addClass('defult_briteVerifError'); 298 } 299 } else if(errorType=="addressOnlayRemove"){ 300 form.find('.btv_address').removeClass('defult_briteVerifError'); 301 if ( form.find('.btv_address2').val() != "") { 302 form.find('.btv_address2').removeClass('defult_briteVerifError'); 303 } 304 form.find('.btv_zip').removeClass('defult_briteVerifError'); 305 form.find('.btv_city').removeClass('defult_briteVerifError'); 306 form.find('.btv_state').removeClass('defult_briteVerifError'); 307 if($('.btv_state').hasClass('jcf-hidden')){ 308 $(".jcf-select-btv_state").removeClass('defult_briteVerifError'); 309 } 310 } else if(errorType=="emailOnlayAdd"){ 311 form.find('.' + emailField ).addClass('defult_briteVerifError'); 312 } else if(errorType=="emailOnlayRemove"){ 313 form.find('.' + emailField ).removeClass('defult_briteVerifError'); 314 } else if(errorType=="phoneOnlayAdd"){ 315 form.find('.' + phoneNumberField ).addClass('defult_briteVerifError'); 316 } else if(errorType=="phoneOnlayRemove"){ 317 form.find('.' + phoneNumberField ).removeClass('defult_briteVerifError'); 318 } 319 } 320 function updateFormWithSuggestedAddress(){ 321 $("#addsuggbox").append(htmlToAppend); 322 // registeSelcetion(form) 323 }; 324 function registeSelcetion(form){ 325 //------------Select suggested/enter address 326 form.find('[name="rdoaddsuggest"]').click(function () { 327 // This code will run when either of the radio buttons is clicked 328 var selectedValue = $(this).val(); // Get the value of the selected radio button 329 addressAccepted = true; 330 $(".btv_address, .btv_address2, .btv_city, .btv_zip, .btv_state").removeClass('defult_briteVerifError'); 331 $('.btv_state').next('.jcf-select').removeClass('defult_briteVerifError'); 332 $('.btv_address').next('.bv-error').remove(); 333 if (selectedValue == "rdosuggestaddress") { 334 form.find('.btv_address').val(suggested_addressFields[0]); 335 if ( form.find('.btv_address2').val() != "") { 336 form.find('.btv_address2').val(suggested_addressFields[1]); 337 } 338 form.find('.btv_zip').val(suggested_addressFields[4].slice(0, -5)); 339 form.find('.btv_city').val(suggested_addressFields[2]); 340 form.find('.btv_state').find('option[value="' + suggested_addressFields[3] + '"]').prop('selected', true) 341 form.find('.btv_state').next('.jcf-select').find('.jcf-select-text span').text(suggested_addressFields[3]); 342 } 343 form.find('.btv_address').removeClass('error_field'); 344 form.find('.btv_address2').removeClass('error_field'); 345 form.find('.btv_zip').removeClass('error_field'); 346 form.find('.btv_city').removeClass('error_field'); 347 form.find('.btv_state').removeClass('error_field'); 348 $(".jcf-select-btv_state").removeClass('defult_briteVerifError'); 349 form.find('#addsuggbox').addClass("d-none"); 350 if (!form.find('.suggestedAddress_Box').is(":visible")) { 351 form.find(".btv_submitBtn").removeAttr('disabled'); // remove disable of submit button 352 } 353 addressError=false; 354 });
355 form.find('.btv_address, .btv_zip, .btv_address2, .btv_city, .btv_zip').on("input", function() { 356 addressAccepted = false; 357 if(briteVerifySugg_flag==true){ 358 formModified = true; 359 formModifiedAddressFields = true; 360 } 361 // $(this).removeClass('defult_briteVerifError'); 362 $(".btv_address, .btv_address2, .btv_city, .btv_zip, .btv_state").removeClass('defult_briteVerifError'); 363 $('.btv_state').next('.jcf-select').removeClass('defult_briteVerifError'); 364 $('.btv_address').next('.bv-error').remove(); 365 form.find(".btv_submitBtn").removeAttr('disabled'); 366 }); 367 form.find('.btv_email').on("input", function() { 368 if(briteVerifySugg_flag==true){ 369 formModified = true; 370 } 371 $(this).removeClass('defult_briteVerifError'); 372 $(this).nextAll('.error.bv-error').remove(); 373 form.find(".btv_submitBtn").removeAttr('disabled'); 374 }); 375 form.find('.btv_PhoneNumber').on("input", function() { 376 if(briteVerifySugg_flag==true){ 377 formModified = true; 378 } 379 $(this).removeClass('defult_briteVerifError'); 380 $(this).nextAll('.error.bv-error').remove(); 381 form.find(".btv_submitBtn").removeAttr('disabled'); 382 }); 383 form.find('.btv_state').on("change", function() { 384 addressAccepted = false; 385 if(briteVerifySugg_flag==true){ 386 formModified = true; 387 formModifiedAddressFields = true; 388 } 389 $(".btv_address, .btv_address2, .btv_city, .btv_zip, .btv_state").removeClass('defult_briteVerifError'); 390 $(this).next('.jcf-select').removeClass('defult_briteVerifError'); 391 $('.btv_address').next('.bv-error').remove(); 392 form.find(".btv_submitBtn").removeAttr('disabled'); 393 }); 394 } 395 return { 396 init: initBriteVerify 397 }; 398})();
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.