let cancelProviderUnauthorised = { aboutYourProviderPageOnLoad: function (aboutProviderSnippetJson, getAccountNameByIdUrl) { $('#PreviousButton').hide(); $("#UpdateButton").hide(); $("#UpdateButton").after(''); $('#UpdateButton').before(''); $('#cqc_salecqcproviderid').after(''); $('#cqc_salecqcproviderid').after(''); $('#cqc_salecqcproviderid').after(''); $('#provider-result-div').after(''); // $('#PreviousButton2').show(); $('#cqc_salecqcproviderid').after(''); $('#PreviousButton').before(''); $("fieldset").after(""); //fix for bug 48708 $('#cqc_salecqcproviderid').on("change", function (e) {           $(this).removeAttr("onchange"); $(this).removeClass("dirty");     }); //end of fix let isValidated = false; let isEmailValid = false; let hasNavigatedToInvalidEmailPage = false; $("#NextButton,#UpdateButton2").prop("value", "Search"); $("#NextButton,#UpdateButton2").click(function (event) { if (!isValidated || !isEmailValid) { event.preventDefault(); } if (!$('#cqc_salecqcproviderid').val()) { $('#text-error-no-id').show(); $('#text-error-invalid').hide(); $('#cqc_salecqcproviderid').addClass("dirty"); } else if (!isValidated) { //Added by Apurva Bansal on 27/09/2023 for BUG 94938 - Fix Start var salesProvID = null; if (common.checkIdExists('cqc_entertheproviderid', true)) salesProvID = $('#cqc_entertheproviderid').val(); var inputValue = $('#cqc_salecqcproviderid').val().trim().toUpperCase(); var legalOwnershipType = cancelProviderUnauthorised.getLegalownershipType(inputValue); var queryUrl = cancelProviderUnauthorised.getQueryUrl(legalOwnershipType, inputValue, getAccountNameByIdUrl); $.ajax( { type: "GET", url: queryUrl, dataType: 'json', async: false, success: function (data) { if (!jQuery.isEmptyObject(data)) { if (data.hasExistingCancellationApp || !data.isValidOwnershipType || !data.isValidLocations || (salesProvID != null && salesProvID == inputValue)) {//BUG 94938 - Fix End $('#text-error-invalid').show(); $('#text-error-no-id').hide(); $('#cqc_salecqcproviderid').addClass("dirty"); } else { $("fieldset").show(); $("#div-no-email").hide(); $(".tab-title").show(); $('#div-provider-name').text(data.name); $("div#div-location-name").remove(); for(let i=0; i < data.locations.length; i++){ $('#div-provider-name').after('
' + data.locations[i].locationName + '
'); } $('#cqc_salecqcproviderid').hide(); $('#cqc_salecqcproviderid_label').hide(); $('#text-error-invalid').hide(); $('#text-error-no-id').hide(); $('div[class="description above"]').hide(); $('#provider-result_label').show(); $('#provider-result-div').show(); $("#PreviousButton3").show(); //$('#PreviousButton2').show(); $('#provider-name-text-success').show(); if(common.checkIdExists('UpdateButton')){ $("#UpdateButton2").prop("value", "Update"); } else{ $("#NextButton").prop("value", "Continue");} isValidated = true; isEmailValid = data.isValidEmail; } } else { $('#text-error-invalid').show(); $('#text-error-no-id').hide(); $('#cqc_salecqcproviderid').addClass("dirty"); } }, error: function (xhr) { console.log("Error : " + xhr.responseText); } }); } else if (isValidated && !isEmailValid) { $("#div-no-email").show(); $(".tab-title").hide(); $("fieldset").hide(); $("#NextButton,#UpdateButton2").hide(); $("#cancel-btn").hide(); hasNavigatedToInvalidEmailPage = true; }else if (isValidated && isEmailValid){ if(common.checkIdExists('UpdateButton', true)){ $("#UpdateButton").click(); } } }); $('#PreviousButton2,#PreviousButton3').click(function (event) { if (isValidated && hasNavigatedToInvalidEmailPage) { event.preventDefault(); $(".tab-title").show(); $("fieldset").show(); $("#div-no-email").hide(); $("#NextButton,#UpdateButton2").show(); $("#cancel-btn").show(); hasNavigatedToInvalidEmailPage = false; } else if (isValidated && !hasNavigatedToInvalidEmailPage) { event.preventDefault(); $('#provider-result-div').hide(); $('#provider-result_label').hide(); $("#PreviousButton3").hide(); $('#provider-name-text-success').hide(); $('#cqc_salecqcproviderid_label').show(); $('#cqc_salecqcproviderid').show(); $('.info').next().show(); $("#NextButton,#UpdateButton2").prop("value", "Search"); isValidated = false; } else { $('#PreviousButton').click(); } }); // Create a MutationObserver to detect and remove the unwanted element var observer = new MutationObserver(function (mutations) { mutations.forEach(function (mutation) { if (mutation.addedNodes.length) { mutation.addedNodes.forEach(function (node) { if ($(node).hasClass('text-muted')) { $(node).remove(); observer.disconnect(); // Stop observing once the unwanted element is removed } }); } }); }); // Start observing the DOM for changes observer.observe($('#provider-result')[0].parentNode, { childList: true, }); }, getLegalownershipType: function(providerId) { var queryUrl = "../../get-legalownershiptype-by-providerid?provider=" + providerId; let legalownershipType = 0; $.ajax( { type: "GET", url: queryUrl, dataType: 'json', async: false, success: function (data) { if (!jQuery.isEmptyObject(data) && data.results.length > 0) { legalownershipType = data.results[0].legalownershipType; } } }); return legalownershipType; }, getQueryUrl : function(legalOwnershipType, providerId, getAccountNameByIdUrl) { var queryUrl = "../../get-account-name-by-id?provider=" + providerId; switch(legalOwnershipType) { //Organisation case "116390000": queryUrl = "../../get-account-name-by-id?provider=" + providerId; break; //Partnership case "116390001": queryUrl = "../../get-account-name-by-id-partnership?provider=" + providerId; break; //Sole Trader case "116390002": queryUrl = "../../get-account-name-by-id-soletrader?provider=" + providerId; break; } return queryUrl; }, legalResponsibilityPageOnLoad: function (legalResponibilitySnippetJson) { common.setCounterTextAreaLength("cqc_describewhatyouaredoingtomaintaincare", 4000); $(".tab-title").after("

" + legalResponibilitySnippetJson.Declaration + "


"); common.pageAddRequiredValidator("cqc_describewhatyouaredoingtomaintaincare", "", legalResponibilitySnippetJson.MandatoryErrorText); $('.tab-title').html(legalResponibilitySnippetJson.Tabtitle); $("#cqc_describewhatyouaredoingtomaintaincare_label").html(legalResponibilitySnippetJson.FieldLabel); }, plansToStopServiceOnLoad: function (plansToStopServiceSnippetJson) { cancelProviderUnauthorised.changeLabelForPlanToSTopTextFields(plansToStopServiceSnippetJson); $("#cqc_explainwhyhaventinformedserviceusers").closest("tr").hide(); $("#cqc_explainwhyhaventinformedserviceuserreps").closest("tr").hide(); $("#cqc_explainwhyhaventinformedlocalauthorities").closest("tr").hide(); $("#cqc_explainwhyhaventinformedicbs").closest("tr").hide(); $('.tab-title').html(plansToStopServiceSnippetJson.Tabtitle); $(".tab-title").after("

" + plansToStopServiceSnippetJson.Declaration + "


"); //Mark fields required common.pageAddRequiredValidator("cqc_thepeoplewhouseregulatedactivityloc", "", "Select yes if you have informed the people who use the services"); common.pageAddRequiredValidator("cqc_carersandrepresentativesofthepeople", "", "Select yes if you have informed family members and representatives who use the services"); common.pageAddRequiredValidator("cqc_relevantlocalauthorities", "", "Select yes if you have informed the relevant local authorities"); common.pageAddRequiredValidator("cqc_relevantclinicalcommissioninggroups", "", "Select yes if you have informed the relevant integrated commissioned boards"); let selectedIndex_Yes = 1; let selectedIndex_No = 0; let maxLengthErrorText = "Why you have not informed them must be 1000 characters or less"; let mandatoryFieldErrorMsg = "Enter the reason why you have not informed them"; $('input:radio').on("change", function () { switch (this.id) { case "cqc_thepeoplewhouseregulatedactivityloc_" + selectedIndex_Yes: cancelProviderUnauthorised.showHideRequiredTextField(true, "cqc_thepeoplewhouseregulatedactivityloc", selectedIndex_Yes, "cqc_explainwhyhaventinformedserviceusers", mandatoryFieldErrorMsg, "Your answer must not exceed 1000 characters"); break; case "cqc_thepeoplewhouseregulatedactivityloc_" + selectedIndex_No: cancelProviderUnauthorised.showHideRequiredTextField(false, "cqc_thepeoplewhouseregulatedactivityloc", selectedIndex_No, "cqc_explainwhyhaventinformedserviceusers", mandatoryFieldErrorMsg, "Your answer must not exceed 1000 characters"); break; case "cqc_carersandrepresentativesofthepeople_" + selectedIndex_Yes: cancelProviderUnauthorised.showHideRequiredTextField(true, "cqc_carersandrepresentativesofthepeople", selectedIndex_Yes, "cqc_explainwhyhaventinformedserviceuserreps", mandatoryFieldErrorMsg, "Your answer must not exceed 1000 characters"); break; case "cqc_carersandrepresentativesofthepeople_" + selectedIndex_No: cancelProviderUnauthorised.showHideRequiredTextField(false, "cqc_carersandrepresentativesofthepeople", selectedIndex_No, "cqc_explainwhyhaventinformedserviceuserreps", mandatoryFieldErrorMsg, "Your answer must not exceed 1000 characters"); break; case "cqc_relevantlocalauthorities_" + selectedIndex_Yes: cancelProviderUnauthorised.showHideRequiredTextField(true, "cqc_relevantlocalauthorities", selectedIndex_Yes, "cqc_explainwhyhaventinformedlocalauthorities", mandatoryFieldErrorMsg, "Your answer must not exceed 1000 characters"); break; case "cqc_relevantlocalauthorities_" + selectedIndex_No: cancelProviderUnauthorised.showHideRequiredTextField(false, "cqc_relevantlocalauthorities", selectedIndex_No, "cqc_explainwhyhaventinformedlocalauthorities", mandatoryFieldErrorMsg, "Your answer must not exceed 1000 characters"); break; case "cqc_relevantclinicalcommissioninggroups_" + selectedIndex_Yes: cancelProviderUnauthorised.showHideRequiredTextField(true, "cqc_relevantclinicalcommissioninggroups", selectedIndex_Yes, "cqc_explainwhyhaventinformedicbs", mandatoryFieldErrorMsg, "Your answer must not exceed 1000 characters"); break; case "cqc_relevantclinicalcommissioninggroups_" + selectedIndex_No: cancelProviderUnauthorised.showHideRequiredTextField(false, "cqc_relevantclinicalcommissioninggroups", selectedIndex_No, "cqc_explainwhyhaventinformedicbs", mandatoryFieldErrorMsg, "Your answer must not exceed 1000 characters"); break; } }); $('input:radio').trigger("change"); }, changeLabelForPlanToSTopTextFields: function (plansToStopServiceSnippetJson) { $("#cqc_explainwhyhaventinformedserviceusers_label").html(plansToStopServiceSnippetJson.FieldLabel); $("#cqc_explainwhyhaventinformedserviceuserreps_label").html(plansToStopServiceSnippetJson.FieldLabel); $("#cqc_explainwhyhaventinformedlocalauthorities_label").html(plansToStopServiceSnippetJson.FieldLabel); $("#cqc_explainwhyhaventinformedicbs_label").html(plansToStopServiceSnippetJson.FieldLabel); }, //date input page function ProviderDateInputPageOnLoad: function (providerDateInputJson, PreviousCancellationReasons) { common.SetDateValueFullWithoutYearValidation("cqc_ifyeswhatdatedidyoustopregactivities"); $('#cqc_ifyeswhatdatedidyoustopregactivitiesdiv').after(""); $('#cqc_ifyeswhatdatedidyoustopregactivitiesdiv').after(""); $('#cqc_ifyeswhatdatedidyoustopregactivitiesdiv').after(""); $('#cqc_ifyeswhatdatedidyoustopregactivitiesdiv').after(""); $(".input-group-addon").hide(); $('#cqc_reasonforprovidercancellation').hide(); $('#cqc_reasonforprovidercancellation_label').hide(); //$("#cqc_ifyeswhatdatedidyoustopregactivities_description").attr("placeholder", "DD/MM/YYYY"); //$("#NextButton").before(""); //let SaveForLaterButton = `   `; //$("#NextButton").append(SaveForLaterButton); $("#UpdateButton").hide(); $("#UpdateButton").after(''); var queryString = window.location.search; let cancelReason = ""; if(queryString.includes('id')) // for check your answer edit page { let cancelReasonOptionSet = $('#cqc_reasonforprovidercancellation').val(); if(cancelReasonOptionSet == 116390000) cancelReason = 'iamclosingdown'; else if(cancelReasonOptionSet == 116390001) cancelReason = 'closeddownservices'; else if(cancelReasonOptionSet == 116390003) cancelReason = 'registerasnewlegalentity'; } if(queryString.includes('param')){ if(queryString.includes('iamclosingdown')) cancelReason = 'iamclosingdown'; else if (queryString.includes('closeddownservices')) cancelReason = 'closeddownservices'; else if (queryString.includes('registerasnewlegalentity')) cancelReason = 'registerasnewlegalentity'; } if (cancelReason == 'iamclosingdown') { $("#cqc_ifyeswhatdatedidyoustopregactivities_label").text(providerDateInputJson.DateHeaderStoppingServices); $('#cqc_reasonforprovidercancellation').val("116390000"); } else if (cancelReason == 'closeddownservices') { $("#cqc_ifyeswhatdatedidyoustopregactivities_label").text(providerDateInputJson.DateHeaderStoppedServices); $(".description.above").hide(); $('#cqc_reasonforprovidercancellation').val("116390001"); } else if (cancelReason == 'registerasnewlegalentity') { $("#cqc_ifyeswhatdatedidyoustopregactivities_label").text(providerDateInputJson.DateHeaderStoppedServices); //$(".description.above").hide(); $('#cqc_reasonforprovidercancellation').val("116390003"); } //apply date field validation on next button click $('#NextButton,#UpdateButton2').click(function (event){ //common.addValidationErrorsFromSummaryToEachControl(); var returnValue = true; var dateselected = $("#ddcqc_ifyeswhatdatedidyoustopregactivities").val(); var converteddate = new Date(dateselected.split('T')[0].replace(/(\d{2})\/(\d{2})\/(\d{4})/, "$2/$1/$3")); var converteddateonly = converteddate; converteddateonly.setHours(0, 0, 0, 0); var todaydate = new Date(); todaydate.setHours(0, 0, 0, 0); var futuredate = new Date(); futuredate.setHours(0, 0, 0, 0); var extractedDate = moment(dateselected, 'YYYY-MM-DDTHH:mm:ss.SSSZ').format('DD/MM/YYYY'); //format selected date in browser var dateRegex = /^(\d{2})\/(\d{2})\/(\d{4})$/; //regular expression futuredate.setDate(todaydate.getDate() + 30); //set date after 30days $('#date-error').hide(); $('#no-date').hide(); $('#invalid-date-format').hide(); $('#date-not-in-past').hide(); //if null if (!dateselected) { $('#no-date').show(); returnValue = false; } //if invalid format else if (!dateRegex.test(extractedDate)) { returnValue = false; $('#invalid-date-format').show(); } else { debugger; //param = I am closing down services if (cancelReason == 'iamclosingdown') { if (converteddate > futuredate) //comparison to date + 30days { $('#date-error').show(); returnValue = false; } else if (converteddate < todaydate) //comparison to date today { $('#date-error').show(); returnValue = false; } } //param = I have closed down services else if (cancelReason == 'closeddownservices') { if (converteddateonly.isAfter(todaydate)) //checks if date is after today { $('#date-not-in-past').show(); returnValue = false; } } else { if (converteddate > futuredate) //comparison to date + 30days { $('#date-error').show(); returnValue = false; } else if (converteddate < todaydate) //comparison to date today { $('#date-error').show(); returnValue = false; } } } if(returnValue){ $("#UpdateButton").click(); $("#UpdateButton").show(); $("#UpdateButton2").hide(); } if(returnValue == false) event.preventDefault(); return returnValue; }); }, applicationConfirmation: function (providerConfirmationJSON) { $('#RefNo').html(providerConfirmationJSON.RefNo); $('#WhatHappensNext').html(providerConfirmationJSON.WhatHappensNext); $('#EmailSend').html(providerConfirmationJSON.EmailSingleSend); $('#InstructionsHeading').html(providerConfirmationJSON.InstructionsHeading); $('#Instructions1').html(providerConfirmationJSON.Instructions1); $('#Instructions3').html(providerConfirmationJSON.Instructions3); $('#HomePage').html(providerConfirmationJSON.HomePage); }, additionalInformationProvider: function (additionInformationSnippetJson) { $("#cqc_additionaldisclosurecomments").closest("tr").hide(); common.pageAddRequiredValidator("cqc_additionaldisclosures", "", "Select yes if you would like to tell us something else"); let mandatoryFieldErrorMessage = "Enter what you would like to tell us"; $("#cqc_additionaldisclosurecomments_label").html(additionInformationSnippetJson.AdditionalDisclosureCommentsLabel); let selectedIndex_No = 1; let selectedIndex_Yes = 0; //get $txtA_plansForTellign () { return $('#cqc_additionaldisclosurecomments') }, $('input:radio').on("change", function () { switch (this.id) { case "cqc_additionaldisclosures_" + selectedIndex_Yes: cancelProviderUnauthorised.showHideRequiredTextField(true, "cqc_additionaldisclosures", selectedIndex_Yes, "cqc_additionaldisclosurecomments", mandatoryFieldErrorMessage); //common.hideShowRequiredCountertextField(true, "cqc_additionaldisclosurecomments", mandatoryFieldErrorMessage,1000,"Enter 1000 characters or fewer"); break; case "cqc_additionaldisclosures_" + selectedIndex_No: //common.hideShowRequiredCountertextField(false, "cqc_additionaldisclosurecomments", mandatoryFieldErrorMessage,1000,"Enter 1000 characters or fewer"); cancelProviderUnauthorised.showHideRequiredTextField(false, "cqc_additionaldisclosures", selectedIndex_No, "cqc_additionaldisclosurecomments", mandatoryFieldErrorMessage); break; } }); $('input:radio').trigger("change"); // $('input:radio').trigger("click"); }, getNI: function (appId,providerConfirmationJSON) { let isSingleNI = true; var queryUrl = "../GetNIByApplicationID?id=" + appId; $.ajax( { type: "GET", url: queryUrl, dataType: 'json', async: false, success: function (data) { if (data.totalcount > 0) { if(data.results.length > 1) { $('#EmailSend').html(providerConfirmationJSON.EmailSend); $('#Instructions2').html(providerConfirmationJSON.Instructions2); } $("#EmailSend").append(data.results.join(", ")); } } }); return isSingleNI; }, //show field when radio button selected to yes, reverse if selected no showHideRequiredTextField: function (boolValue, radioFieldID, selectedIndex, textFieldID, mandatoryFieldErrorMsg, characterLimitErrorMsg = "Your answer must not exceed 1000 characters") { if (common.isChecked(radioFieldID, selectedIndex)) { common.hideShowRequiredCountertextField(boolValue, textFieldID, mandatoryFieldErrorMsg, 1000, characterLimitErrorMsg); } }, // for Cancel and Withdraw pages formatIframeControls(plansToStopServiceSnippetJson,legalResponibilitySnippetJson,providerDateInputJson,additionInformationSnippetJson) { $('#Quickview_ApplicationForm').on("load", function() { let IframeContents = $("#Quickview_ApplicationForm").contents(); IframeContents.find('*[data-name="LegalResponsibilityToMaintainCare"]').prevUntil('.tab-title').find('h3').html(legalResponibilitySnippetJson.Tabtitle); IframeContents.find("#cqc_describewhatyouaredoingtomaintaincare_label").html(legalResponibilitySnippetJson.FieldLabel); IframeContents.find('*[data-name="WhoHaveYouInformedOfYourPlansToStopServices"]').prevUntil('.tab-title').find('h3').html(plansToStopServiceSnippetJson.Tabtitle); IframeContents.find("#cqc_additionaldisclosurecomments_label").html(additionInformationSnippetJson.AdditionalDisclosureCommentsLabelWithdrawCYA); IframeContents.find("#cqc_explainwhyhaventinformedserviceusers_label").html(plansToStopServiceSnippetJson.FieldLabel); IframeContents.find("#cqc_explainwhyhaventinformedserviceuserreps_label").html(plansToStopServiceSnippetJson.FieldLabel); IframeContents.find("#cqc_explainwhyhaventinformedlocalauthorities_label").html(plansToStopServiceSnippetJson.FieldLabel); IframeContents.find("#cqc_explainwhyhaventinformedicbs_label").html(plansToStopServiceSnippetJson.FieldLabel); IframeContents.find("#cqc_describewhatyouaredoingtomaintaincare_label").html(legalResponibilitySnippetJson.FieldLabel); if(IframeContents.find("#cqc_thepeoplewhouseregulatedactivityloc").children("option:selected").text() == 'Yes'){ IframeContents.find("#cqc_explainwhyhaventinformedserviceusers").closest("tr").hide(); } if(IframeContents.find("#cqc_carersandrepresentativesofthepeople").children("option:selected").text() == 'Yes'){ IframeContents.find("#cqc_explainwhyhaventinformedserviceuserreps").closest("tr").hide(); } if(IframeContents.find("#cqc_relevantlocalauthorities").children("option:selected").text() == 'Yes'){ IframeContents.find("#cqc_explainwhyhaventinformedlocalauthorities").closest("tr").hide(); } if(IframeContents.find("#cqc_relevantclinicalcommissioninggroups").children("option:selected").text() == 'Yes'){ IframeContents.find("#cqc_explainwhyhaventinformedicbs").closest("tr").hide(); } if(IframeContents.find("#cqc_additionaldisclosures").children("option:selected").text() == 'No'){ IframeContents.find("#cqc_additionaldisclosurecomments").closest("tr").hide(); } if (IframeContents.find('#cqc_reasonforprovidercancellation').val() == '116390000') { IframeContents.find("#cqc_ifyeswhatdatedidyoustopregactivities_label").text(providerDateInputJson.DateHeaderStoppingServices); } else if (IframeContents.find('#cqc_reasonforprovidercancellation').val() == '116390001') { IframeContents.find("#cqc_ifyeswhatdatedidyoustopregactivities_label").text(providerDateInputJson.DateHeaderStoppedServices); } common.formateQuickViewFromDate ("Quickview_ApplicationForm","cqc_ifyeswhatdatedidyoustopregactivities","d MM yy"); }); } }