{"version":3,"sources":["ImpersonationSearch.js","SimpleTextTile.js","FileUploadTile.js","FormTile.js","FeaturedFormTile.js","ExploreBenefitsTile.js","FaqTile.js","FeaturedFaqTile.js","ManageBenefitsTile.js","AcceptableDocumentationTile.js","MyInfoTile.js","ViewCurrentBenefitsTile.js","FeaturedTotalCompensationTile.js","CurrentSnapshotBreakdown.js","ContactUsForm.js","MyDocumentsTile.js","bsmodalfixer.js","contactInfoUpdateModal.js","lifeEventModal.js","AccountSettingsTile.js","CarouselTile.js"],"names":["ExecuteSearch","form","$","length","validate","valid","addClass","ajax","type","contentType","url","dataType","data","JSON","stringify","SelectCaseId","val","EmployeeId","FirstName","LastName","Last4SSN","success","textStatus","jqXHR","text","contents","each","index","value","Id","EEClassName","children","html","removeClass","click","selectedId","this","attr","$form","document","body","append","submit","ready","keypress","e","which","simpleTextTileJS","initialized","init","$el","$up","$l","$p","$m","find","outerHeight","hide","parent","toggleClass","fadeOut","fadeIn","fileUploadTileJS","uploadCardContent","BLOCK_SIZE","fileCount","filesUploading","selectFile","file","fileContainer","queueNum","textContent","name","cardContent","closest","first","hasClass","collapse","isProofOfLifeEvent","indexOf","substring","lastIndexOf","toLowerCase","fileName","documentId","confirmationNumber","uploadContainer","startPoints","startPointer","size","push","Math","min","reduce","chain","currentStartPoint","then","_","getBlockId","blob","slice","Promise","resolve","reject","xhr","XMLHttpRequest","onreadystatechange","readyState","status","response","onProgressMethod","upload","onprogress","open","setRequestHeader","Date","toISOString","send","error","css","sasURL","uri","requestBody","i","commitBlockList","dependentId","documentType","sendEmailNotification","confNumber","filenames","addFileToDom","err","showErrorModal","ErrorMessage","uploadFile","SASUrl","DocumentId","ConfirmationNumber","id","updateCompletionStatus","updateCardSectionStatus","splice","splitDocument","split","existingDocHtml","concat","blockId","btoa","floor","toString","padStart","card","childrenCompleted","parseInt","parentCard","parents","dependent","cardStatus","childrenRequired","show","getDocumentUrl","browserSupportsPDF","window","navigator","userAgent","hasActiveXObject","ActiveXObject","didError","postData","navUrl","Init","on","event","stopPropagation","preventDefault","originalEvent","dataTransfer","dropEffect","isPdf","console","log","myUploadDivs","newUploadControl","newFile","last","files","modal","attachExistingFileToDependent","fileNum","remove","formTileJS","initiated","pageID","partialViewURL","instanceName","UpdateLibraryFilter","categoryType","participantID","hash","vars","hashes","location","href","getUrlVars","pageTileID","CategoryType","getFormTileUserInput","userInput","formLinksContainer","keyup","word","trim","includes","innerWidth","change","trigger","focus","featuredFormTileJS","ExploreBenefitsTileJS","storedvalue","calculateExactHeight","headerHeight","height","combinedHeightOfContainerMinusX","top","isMobile","matchMedia","matches","hideExploreContent","hideToolBar","showToolBar","hideAllCategoryContent","containerID","scrollTop","documentElement","onresize","arr","get","style","display","faqTileJS","question","answers","topicTitle","questionTitle","answer","innerText","classList","siblings","add","prev","target","animate","offset","featuredFaqTileJS","ManageBenefitsTileJS","currentPage","numPerPage","totalPages","sortThisTable","$table","bind","numRows","numPages","ceil","resize","acceptableDocumentationTileJS","acc","getElementsByClassName","onclick","toggle","nextElementSibling","toggleChevron","myInfoTileJS","ViewCurrentBenefitsTileJS","print","FeaturedTotalCompensationModule","myDataArray","myColorArray","dataArray","colorArray","ctx","Chart","datasets","backgroundColor","options","hover","mode","tooltips","enabled","animation","duration","currentSnapshotBreakdownModule","myIdentifier","myLabelListArray","myBackgroundColorArray","myValueListArray","myGrandTotalText","identifier","labelListArray","backgroundColorArray","valueListArray","grandTotalText","getElementById","getContext","legend","labels","callbacks","label","tooltipItem","labelInfo","dataset","datasetIndex","currentValue","previousValue","currentIndex","array","round","plugins","beforeDraw","chart","width","restore","fontSize","font","toFixed","textBaseline","fillStyle","textX","measureText","textY","clearRect","fillText","save","OnDropdownChange","ContactUsForm","submitCaptchaButton","disableSubmitButton","pathname","toUpperCase","prop","contactFormViewModel","serializeArray","done","grecaptcha","reset","filter","DisableSubmitBtn","EnableSubmitBtn","MyDocumentsTileJS","getDocumentContainerElement","element","updateAllAboveMaxClasses","v","updateAboveMaxClasses","container","searchText","date","getFullYear","elems","sortClass","sortDataType","ascending","sort","a","b","sortStringA","sortStringB","localeCompare","setTimeout","failCount","modals","locked","lockWaitMillis","animationWaitMillis","onHidden","backdrops","onHide","is","setInterval","jQuery","initialInputValues","updateForm","isDirty","silent","formIsDirty","replace","validateAll","isFormValid","convertStringToBool","undefined","workEmailError","validateEmail","personalEmailError","workPhoneError","validatePhone","personalPhoneError","phone","required","test","email","debounce","func","timeout","clearTimeout","backdrop","keyboard","Titania","Models","PhoneNumber","Format","completedDate","completedType","checkTopOfLEModal","checkEnableEnrollmentBtn","parsedDateSelected","todaysDate","enrollmentWindow","minDate","updateTheContinueButton","getParsedDateSelected","setHours","setDate","getDate","datepicker","isDisabled","transactionType","s","hasMultipleLifeEvents","localStorage","removeItem","dateSelected","getMonth","leDate","containerName","selectedType","classNames","leType","checkedCircle","AccountSettingsTileJS","validCurrentPassword","validPassword","validPasswordReentry","validRecoveryEmail","validRecoveryPhone","CheckLoginValidity","CheckRecoveryValidity","CheckContactValidity","removeAttr","currentPassword","newPassword","complete","updatePasswordResult","responseJSON","DoesNotMatchCurrentPassword","UpdatePasswordResult","IsTooSimple","IsFormerPassword","newEmail","newPhone","updateRecoveryResult","CannotChangeEmail","EmailIsEmpty","EmailIsTaken","pw","validCount","match","RegExp","CarouselTileJS","firstWexCardDisplayed","wexCardCapacity","showMoreButtons","divheight","lineheight","getWexCardCapacity","updateWexCardsDisplay","newCapacity","lastDisplayedCard","previousHiddenCard","prevAll","firstDisplayedCard","nextHiddenCard","nextAll","next"],"mappings":"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","file":"portal.js","sourcesContent":["(function () {\r\n function ExecuteSearch() {\r\n\r\n function isJson(str) {\r\n try {\r\n JSON.parse(str);\r\n } catch (e) {\r\n return false;\r\n }\r\n return true;\r\n };\r\n\r\n var form = $(\"#partSearch\");\r\n\r\n if (!$(form) || !$(form).length)\r\n return;\r\n\r\n $(form).validate();\r\n if (!$(form).valid()) {\r\n return;\r\n }\r\n $(\".loader,.transaction-loading\").addClass('active');\r\n $.ajax({\r\n type: 'POST',\r\n contentType: 'application/json',\r\n url: '/Impersonation/ParticipantSearchTableHandler',\r\n dataType: 'json',\r\n data: JSON.stringify({\r\n SelectCaseId: $('#SelectCaseId').val(),\r\n EmployeeId: $('#EmployeeId').val(),\r\n FirstName: $('#FirstName').val(),\r\n LastName: $('#LastName').val(),\r\n Last4SSN: $('#Last4SSN').val(),\r\n }), \r\n success: function (data, textStatus, jqXHR) {\r\n $(\"#errorMessage\").text('');\r\n var contents = '';\r\n $.each(data, function (index, value) {\r\n contents += ''\r\n + '' + value.EmployeeId + ''\r\n + '' + value.Last4SSN + ''\r\n + '' + value.FirstName + ''\r\n + '' + value.LastName + ''\r\n + '' + value.EEClassName + ''\r\n + '';\r\n });\r\n \r\n $('#resultTable').children('tbody').html(contents);\r\n $(\".loader,.transaction-loading\").removeClass('active');\r\n $('.tableScroll tr').click(function () {\r\n var selectedId = $(this).attr(\"tag\");\r\n var $form = $(\"
\");\r\n $(document.body).append($form);\r\n $form.submit();\r\n $(\".loader,.transaction-loading\").addClass('active');\r\n });\r\n }\r\n });\r\n }\r\n \r\n\r\n $(document).ready(function () {\r\n $('input[type=button][value=Search]').click(ExecuteSearch);\r\n $('.form-control').keypress(function (e) {\r\n if (e.which === 13) {\r\n ExecuteSearch();\r\n return false;\r\n }\r\n });\r\n });\r\n})();","var simpleTextTileJS = (function() {\r\n return {\r\n initialized: false,\r\n init: function() {\r\n if (this.initialized) {\r\n return;\r\n }\r\n\r\n var $el, $ps, $up, $l, $p, $m;\r\n\r\n // check to see if the element needs the \"more\" button\r\n $(\".simple-text-tile\").each(function () {\r\n if ($(this).find(\"div\").outerHeight() > 120) {\r\n $(this).addClass(\"simple-text-tile-max-height\");\r\n } else {\r\n $(this).find(\".read-more\").hide();\r\n }\r\n });\r\n\r\n $(\".simple-text-tile p.read-more .button\").click(function () {\r\n $el = $(this);\r\n $p = $el.parent();\r\n\r\n $up = $p.parent();\r\n $l = $up.find(\".read-less\");\r\n\r\n $ps = $up.find(\"p:not('.read-more')\");\r\n\r\n $up.toggleClass(\"simple-text-tile-max-height\");\r\n\r\n // fade out read-more\r\n $p.fadeOut();\r\n $l.fadeIn();\r\n\r\n // prevent jump-down\r\n return false;\r\n });\r\n\r\n $(\".simple-text-tile p.read-less .button\").click(function () {\r\n $el = $(this);\r\n $p = $el.parent();\r\n\r\n $up = $p.parent();\r\n $m = $up.find(\".read-more\");\r\n\r\n $up.toggleClass(\"simple-text-tile-max-height\");\r\n\r\n $m.fadeIn();\r\n $p.fadeOut();\r\n\r\n return false;\r\n });\r\n\r\n this.initialized = true;\r\n }\r\n }\r\n})();\r\n\r\n","var fileUploadTileJS = (function () {\r\n\r\n var initialized = false;\r\n const BLOCK_SIZE = 256 * 1024;\r\n var fileCount = 0;\r\n var filesUploading = [];\r\n var uploadCardContent;\r\n\r\n function selectFile(file, fileContainer, queueNum) {\r\n fileContainer.parent(1).find('.file-name')[0].textContent = file.name;\r\n fileContainer.parent().parent().removeClass('upload-contents-hidden');\r\n\r\n var cardContent = fileContainer.closest('.submit-docs-card-content');\r\n //Open Collapsed Section\r\n if (!cardContent.find(\".upload-collapse\").first().hasClass(\"show\")) {\r\n cardContent.find(\".upload-collapse\").first().collapse(\"show\");\r\n cardContent.find(\".no-docs\").first().hide();\r\n }\r\n\r\n var isProofOfLifeEvent = cardContent.hasClass('proof-of-life-event');\r\n\r\n if (isFileValid(file)) {\r\n $('.submit-docs-tile-ext-error').hide();\r\n $.ajax({\r\n url: '/DocumentTile/GenerateUrlForFile',\r\n type: 'POST',\r\n data: { 'fileName': file.name, 'isProofOfLifeEvent': isProofOfLifeEvent },\r\n success: function (data) {\r\n uploadFile(data.SASUrl, data.DocumentId, file, fileContainer, queueNum, isProofOfLifeEvent, data.ConfirmationNumber);\r\n }\r\n });\r\n }\r\n }\r\n\r\n function uploadFile(url, documentId, file, fileContainer, queueNum, isProofOfLifeEvent, confirmationNumber) {\r\n var cardContent = fileContainer.closest('.submit-docs-card-content');\r\n var uploadContainer = fileContainer.closest('.upload-container');\r\n var startPoints = [];\r\n var startPointer = 0;\r\n while (startPointer < file.size) {\r\n startPoints.push(startPointer);\r\n startPointer = Math.min(startPointer + BLOCK_SIZE, file.size);\r\n }\r\n startPoints.reduce((chain, currentStartPoint) => {\r\n if (filesUploading.indexOf(queueNum) !== -1) {\r\n return chain.then(_ =>\r\n uploadBlobToBlobStorage(url + '&comp=block&blockid=' + getBlockId(currentStartPoint / BLOCK_SIZE), file.slice(currentStartPoint, Math.min(currentStartPoint + BLOCK_SIZE, file.size)))\r\n .then(() => {\r\n $(\"#progress-bar-filled\").css(\"width\", Math.min(currentStartPoint + BLOCK_SIZE, file.size) / file.size * 100);\r\n }))\r\n }\r\n }, Promise.resolve()).then(() => {\r\n if (filesUploading.indexOf(queueNum) !== -1) {\r\n commitBlockList(url, file).then(() => {\r\n var dependentId = cardContent.closest(\".dependent\").data(\"dependent-id\");\r\n var documentType = cardContent.closest(\".submit-docs-card-content\").data(\"document-type\");\r\n uploadContainer.data(\"url\", url);\r\n if (!isProofOfLifeEvent) {\r\n $.ajax({\r\n url: '/DocumentTile/SaveFile',\r\n type: 'POST',\r\n data: { 'documentId': documentId, 'dependentId': dependentId, 'documentType': documentType },\r\n success: function (data) {\r\n addFileToDom(data.Id, documentId, cardContent, uploadContainer, queueNum);\r\n }\r\n });\r\n }\r\n else {\r\n sendEmailNotification(false, {\r\n confNumber: confirmationNumber, filenames: [file.name]\r\n });\r\n addFileToDom('', documentId, cardContent, uploadContainer, queueNum);\r\n }\r\n });\r\n }\r\n }).catch(function (err) {\r\n var error = {\r\n ErrorMessage: \"Error while uploading document. Please try again.\"\r\n };\r\n if (isProofOfLifeEvent) {\r\n sendEmailNotification(true, {\r\n confNumber: confirmationNumber, filenames: [file.name]\r\n });\r\n }\r\n showErrorModal(error);\r\n });\r\n }\r\n\r\n function addFileToDom(id, documentId, cardContent, uploadContainer, queueNum) {\r\n cardContent.find(\".document-uploading\").removeClass(\"document-uploading\");\r\n uploadContainer.data(\"document-id\", documentId);\r\n if (id) {\r\n uploadContainer.data(\"id\", id);\r\n cardContent.addClass(\"completed\");\r\n uploadContainer.find('.cancelUpload').removeClass('cancelUpload').addClass('deleteUpload');\r\n updateCompletionStatus(cardContent);\r\n updateCardSectionStatus(cardContent.closest(\".dependent\"));\r\n }\r\n else {\r\n uploadContainer.find('.cancelUpload').removeClass('cancelUpload').addClass('deleteFileFromAzure');\r\n }\r\n var index = filesUploading.indexOf(queueNum);\r\n if (index !== -1) {\r\n filesUploading.splice(index, 1);\r\n }\r\n var splitDocument = documentId.split('^');\r\n var existingDocHtml = `
${splitDocument[splitDocument.length - 1]}
`;\r\n $('#existingDocuments').append(existingDocHtml);\r\n }\r\n\r\n function attachExistingFileToDependent(documentId, fileContainer) {\r\n var splitDocument = documentId.split('^');\r\n fileContainer.parent(1).find('.file-name')[0].textContent = splitDocument[splitDocument.length - 1];\r\n fileContainer.parent().parent().removeClass('upload-contents-hidden');\r\n\r\n $(\"#addExistingDocumentModal\").modal('hide');\r\n\r\n var cardContent = fileContainer.closest('.submit-docs-card-content');\r\n //Open Collapsed Section\r\n if (!cardContent.find(\".upload-collapse\").first().hasClass(\"show\")) {\r\n cardContent.find(\".upload-collapse\").first().collapse(\"show\");\r\n cardContent.find(\".no-docs\").first().hide();\r\n }\r\n $('.submit-docs-tile-ext-error').hide();\r\n var dependentId = cardContent.closest(\".dependent\").data(\"dependent-id\");\r\n var documentType = cardContent.closest(\".submit-docs-card-content\").data(\"document-type\");\r\n $.ajax({\r\n url: '/DocumentTile/AttachExistingFileToDependent',\r\n type: 'POST',\r\n data: { 'documentId': documentId, 'dependentId': dependentId, 'documentType': documentType },\r\n success: function (data) {\r\n cardContent.find(\".document-uploading\").removeClass(\"document-uploading\");\r\n cardContent.addClass(\"completed\");\r\n updateCompletionStatus(cardContent);\r\n updateCardSectionStatus(cardContent.closest(\".dependent\"));\r\n fileContainer.closest('.upload-container').data(\"document-id\", documentId);\r\n fileContainer.closest('.upload-container').data(\"id\", data.Id);\r\n fileContainer.closest('.upload-container').find('.cancelUpload').removeClass('cancelUpload').addClass('deleteUpload');\r\n }\r\n });\r\n }\r\n\r\n function deleteFile(uploadContainer) {\r\n $(\".transaction-loading, .loader\").addClass(\"active\");\r\n $.ajax({\r\n url: '/DocumentTile/DeleteUploadedDocument',\r\n type: 'POST',\r\n data: { 'id': uploadContainer.data('id') },\r\n success: function (data) {\r\n var cardContent = uploadContainer.closest(\".submit-docs-card-content\");\r\n var dependent = cardContent.closest(\".dependent\");\r\n\r\n uploadContainer.closest('.upload-contents').remove();\r\n $(\".transaction-loading, .loader\").removeClass(\"active\");\r\n\r\n if (cardContent.find(\".upload-container\").length == 0) {\r\n cardContent.find(\".upload-collapse\").first().collapse(\"hide\");\r\n cardContent.find(\".no-docs\").first().show();\r\n }\r\n\r\n if (cardContent.find(\".upload-container:not([data-document-approval-status='denied'])\").length == 0) {\r\n cardContent.removeClass('completed')\r\n updateCompletionStatus(cardContent);\r\n updateCardSectionStatus(dependent);\r\n }\r\n }\r\n });\r\n }\r\n\r\n function deleteFileFromAzure(uploadContainer) {\r\n $(\".transaction-loading, .loader\").addClass(\"active\");\r\n $.ajax({\r\n url: '/DocumentTile/DeleteDocumentFromAzure',\r\n type: 'POST',\r\n data: { 'documentId': uploadContainer.data('document-id') },\r\n success: function (data) {\r\n uploadContainer.closest('.upload-contents').remove();\r\n $(\".transaction-loading, .loader\").removeClass(\"active\");\r\n }\r\n });\r\n }\r\n\r\n function isFileValid(file) {\r\n const allowedFileExtensions = ['.bmp', '.doc', '.docx', '.heic', '.heif', '.jpeg', '.jpg', '.msg', '.pdf', '.png', '.tif', '.tiff', '.xls', '.xlsx'];\r\n var isValid = allowedFileExtensions.indexOf(file.name.substring(file.name.lastIndexOf('.')).toLowerCase()) != -1;\r\n return isValid;\r\n }\r\n\r\n function getBlockId(blockId) {\r\n return btoa(Math.floor(blockId).toString().padStart(6, '0'));\r\n }\r\n\r\n function commitBlockList(sasURL, file) {\r\n var uri = sasURL + '&comp=blocklist';\r\n var requestBody = '';\r\n for(var i = 0; i< file.size / BLOCK_SIZE; i++) {\r\n requestBody += '' + getBlockId(i) + '';\r\n }\r\n requestBody += '';\r\n return new Promise((resolve, reject) => {\r\n var xhr = new XMLHttpRequest();\r\n xhr.onreadystatechange = function () {\r\n if (xhr.readyState == 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n resolve(true);\r\n } else {\r\n reject(xhr.response);\r\n }\r\n }\r\n }\r\n xhr.open(\"PUT\", uri, true);\r\n xhr.setRequestHeader(\"x-ms-date\", new Date().toISOString());\r\n xhr.setRequestHeader(\"x-ms-version\", \"2019-07-07\");\r\n xhr.send(requestBody);\r\n });\r\n }\r\n\r\n function uploadBlobToBlobStorage(url, blob, onProgressMethod) {\r\n return new Promise((resolve, reject) => {\r\n try {\r\n var xhr = new XMLHttpRequest();\r\n xhr.onreadystatechange = function () {\r\n if (xhr.readyState == 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n resolve(true);\r\n } else {\r\n reject(xhr.response);\r\n }\r\n }\r\n }\r\n if (onProgressMethod) {\r\n xhr.upload.onprogress = onProgressMethod;\r\n }\r\n xhr.open(\"PUT\", url, true);\r\n xhr.setRequestHeader(\"x-ms-blob-type\", \"BlockBlob\");\r\n xhr.setRequestHeader(\"x-ms-date\", new Date().toISOString());\r\n xhr.setRequestHeader(\"x-ms-version\", \"2019-07-07\");\r\n xhr.send(blob);\r\n }\r\n catch (error) {\r\n reject(error);\r\n }\r\n });\r\n }\r\n\r\n function updateCompletionStatus(cardContent) {\r\n var card = cardContent.closest(\".submit-docs-card\");\r\n var childrenCompleted = card.children(\".completed\").length;\r\n if (childrenCompleted > 0 && childrenCompleted >= parseInt(card.data(\"children-required\"))) {\r\n card.addClass(\"completed\");\r\n card.removeClass(\"incomplete\");\r\n }\r\n else {\r\n card.addClass(\"incomplete\");\r\n card.removeClass(\"completed\");\r\n }\r\n var parentCard = card.parents(\".submit-docs-card\").first();\r\n if (parentCard.length > 0) {\r\n updateCompletionStatus(parentCard);\r\n }\r\n }\r\n\r\n function updateCardSectionStatus(dependent) {\r\n dependent.children('.section').each(function () {\r\n var card = $(this);\r\n var cardStatus = card.find('.submit-docs-card-status');\r\n var childrenCompleted = card.children(\".completed\").length;\r\n var childrenRequired = parseInt(card.data(\"children-required\"));\r\n if (card.data('approval-status') != \"approved\" && card.data('approval-status') != \"denied\") {\r\n if (childrenCompleted >= childrenRequired) {\r\n cardStatus.show();\r\n cardStatus.html(\"Pending Approval\");\r\n }\r\n else if (!dependent.hasClass(\"completed\") && card.find('.upload-contents').length >= 1) {\r\n cardStatus.show();\r\n cardStatus.html(childrenRequired - childrenCompleted + \" More Document\" + ((childrenRequired - childrenCompleted) > 1 ? 's' : '') + \" Required\");\r\n }\r\n else {\r\n cardStatus.hide();\r\n }\r\n }\r\n })\r\n }\r\n\r\n function getDocumentUrl(documentId) {\r\n return $.ajax({\r\n url: '/DocumentTile/GetDocumentUrl',\r\n type: 'POST',\r\n data: { 'documentId': documentId }\r\n });\r\n }\r\n \r\n function browserSupportsPDF() {\r\n return window.navigator.userAgent.indexOf(\"msie\") == -1\r\n || hasActiveXObject('AcroPDF.PDF')\r\n || hasActiveXObject('PDF.PdfCtrl');\r\n }\r\n\r\n function hasActiveXObject(name) {\r\n try { return new ActiveXObject(name); } catch (e) { return false; }\r\n }\r\n\r\n function sendEmailNotification(didError, postData) {\r\n var navUrl = didError ? '/DocumentTile/_FileUploadError' : '/DocumentTile/_FileUploadComplete';\r\n $.ajax({\r\n url: navUrl,\r\n type: 'POST',\r\n data: postData\r\n });\r\n }\r\n\r\n return {\r\n Init: function () {\r\n if (initialized) {\r\n return;\r\n }\r\n\r\n $(\".submit-docs-card-content\").each(function () {\r\n if ($(this).find(\".upload-contents\").length == 0) {\r\n $(this).find(\".no-docs\").first().show();\r\n }\r\n else {\r\n $(this).find(\".no-docs\").first().hide();\r\n }\r\n });\r\n\r\n $(\".upload-contents\").each(function () {\r\n $(this).closest('.upload-collapse').addClass('show');\r\n updateCompletionStatus($(this));\r\n });\r\n\r\n $(\".dependent\").each(function () {\r\n updateCardSectionStatus($(this));\r\n })\r\n\r\n $('.attach-files-zone').on('dragover', function (event) {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n event.originalEvent.dataTransfer.dropEffect = 'copy'; // Explicitly show this is a copy.\r\n });\r\n\r\n $(\"body\").on('dragover', function (event) {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n event.originalEvent.dataTransfer.dropEffect = 'none';\r\n });\r\n\r\n $(document).on('change', '.select-document', function () {\r\n $(\".transaction-loading, .loader\").addClass(\"active\");\r\n var isPdf = $(this).data('is-pdf') == \"True\";\r\n $('#fileNotSupported').hide();\r\n $('#textPreview').hide();\r\n getDocumentUrl($(this).val()).then((url) => {\r\n if (isPdf) {\r\n console.log(browserSupportsPDF())\r\n if (browserSupportsPDF()) {\r\n $('#imagePreview').hide();\r\n $('#pdfPreview').show();\r\n $('#pdfPreview').attr('src', url);\r\n }\r\n else {\r\n $('#file-not-supported').show();\r\n }\r\n }\r\n else {\r\n $('#pdfPreview').hide();\r\n $('#imagePreview').show();\r\n $('#imagePreview').attr('src', url);\r\n }\r\n $(\".transaction-loading, .loader\").removeClass(\"active\");\r\n });\r\n });\r\n\r\n //Adding new documents\r\n $('.attach-files-zone').on('drop', function (event) {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n //Grab upload container\r\n var cardContent = $(this).closest(\".submit-docs-card-content\");\r\n var myUploadDivs = cardContent.find('.upload-body').first();\r\n fileCount++;\r\n //Create an input control\r\n var newUploadControl = '
Browse for a file
';\r\n filesUploading.push(fileCount);\r\n\r\n myUploadDivs.append(newUploadControl);\r\n var newFile = cardContent.find(\".soon-to-be-uploaded\").last();\r\n selectFile(event.originalEvent.dataTransfer.files[0], newFile, fileCount);\r\n });\r\n\r\n //Adding new documents\r\n $('.attach-files-zone').click(function () {\r\n //Grab upload container\r\n var cardContent = $(this).closest(\".submit-docs-card-content\");\r\n var myUploadDivs = cardContent.find('.upload-body').first();\r\n fileCount++;\r\n //Create an input control\r\n var newUploadControl = '
Browse for a file
';\r\n filesUploading.push(fileCount);\r\n\r\n myUploadDivs.append(newUploadControl);\r\n\r\n //Grab most recent contol\r\n var newFile = cardContent.find(\".soon-to-be-uploaded\").last();\r\n\r\n //When user picks a file, populate the name field of it, and then show it to the user\r\n newFile.on('change', function () {\r\n selectFile(this.files[0], $(this), fileCount);\r\n });\r\n\r\n //Click that invisible input\r\n newFile.click();\r\n });\r\n\r\n $(document).on('click', '#saveSelectedDocument', function () {\r\n var documentId = $('.select-document:checked').first().val();\r\n var cardContent = uploadCardContent;\r\n var myUploadDivs = cardContent.find('.upload-body').first();\r\n fileCount++;\r\n //Create an input control\r\n var newUploadControl = '
Browse for a file
';\r\n filesUploading.push(fileCount);\r\n\r\n myUploadDivs.append(newUploadControl);\r\n var newFile = cardContent.find(\".soon-to-be-uploaded\").last();\r\n attachExistingFileToDependent(documentId, newFile, fileCount)\r\n })\r\n\r\n $('.toggle-sections').click(function () {\r\n if ($(this).children('.fas').hasClass('fa-angle-up')) {\r\n $(this).children('.fas').removeClass('fa-angle-up').addClass('fa-angle-down');\r\n $(this).children('.toggle-sections-text').html('View Sections');\r\n $(this).closest('.submit-docs-card').find('.section').hide();\r\n }\r\n else {\r\n $(this).children('.fas').removeClass('fa-angle-down').addClass('fa-angle-up');\r\n $(this).children('.toggle-sections-text').html('Hide Sections');\r\n $(this).closest('.submit-docs-card').find('.section').show();\r\n }\r\n })\r\n\r\n //Deleting queued documents\r\n $(document).on('click', '.cancelUpload', function (event) {\r\n event.preventDefault();\r\n var cardContent = $(this).closest(\".submit-docs-card-content\");\r\n\r\n var fileNum = $(this).closest('.upload-contents').attr(\"id\");\r\n var index = filesUploading.indexOf(parseInt(fileNum));\r\n if (index !== -1) {\r\n filesUploading.splice(index, 1);\r\n }\r\n $(this).closest('.upload-contents').remove();\r\n\r\n if (cardContent.find(\".upload-contents\").length == 0) {\r\n cardContent.find(\".upload-collapse\").first().collapse(\"hide\");\r\n cardContent.find(\".no-docs\").first().show();\r\n }\r\n });\r\n\r\n //Deleting uploaded documents\r\n $(document).on('click', '.deleteUpload', function (event) {\r\n event.preventDefault();\r\n deleteFile($(this).closest('.upload-container'))\r\n });\r\n\r\n $(document).on('click', '.deleteFileFromAzure', function (event) {\r\n event.preventDefault();\r\n deleteFileFromAzure($(this).closest('.upload-container'));\r\n });\r\n\r\n $(document).on('click', '.file-name', function () {\r\n getDocumentUrl($(this).closest('.upload-container').data('document-id')).then((url) => {\r\n window.open(url, \"_blank\");\r\n })\r\n });\r\n\r\n $('.existing-documents-link').click(function () {\r\n uploadCardContent = $(this).closest(\".submit-docs-card-content\");\r\n $('#imagePreview').hide();\r\n $('#pdfPreview').hide();\r\n $('#fileNotSupported').hide();\r\n $('#textPreview').show();\r\n $(\"#addExistingDocumentModal\").modal('show');\r\n });\r\n\r\n $(\"#submission-text > div\").hide();\r\n $(\"#toggle-email-submission-text\").click(function () {\r\n $(\"#submission-text > div\").hide();\r\n $(\"#email-submission-text\").show();\r\n });\r\n\r\n $(\"#toggle-fax-submission-text\").click(function () {\r\n $(\"#submission-text > div\").hide();\r\n $(\"#fax-submission-text\").show();\r\n });\r\n\r\n $(\"#toggle-mail-submission-text\").click(function () {\r\n $(\"#submission-text > div\").hide();\r\n $(\"#mail-submission-text\").show();\r\n });\r\n\r\n $('#openAlternateSubmissionsModal').click(function () {\r\n $(\"#alternateSubmissionsModal\").modal('show');\r\n });\r\n\r\n $('#proofOfLifeEventModalLink').click(function () {\r\n $(\"#proofOfLifeEventModal\").modal('show');\r\n });\r\n\r\n initialized = true;\r\n }\r\n }\r\n})();","let formTileJS = (function () {\r\n let initiated = false;\r\n return {\r\n init: function (pageID, partialViewURL, instanceName) {\r\n if (initiated) {\r\n return;\r\n }\r\n\r\n $(window).on('resize', function() {\r\n if(window.innerWidth > 1199.98) {\r\n $(\".forms-overlay\").css('display', '');\r\n $(\".forms-mobile-button-container\").css('display', '');\r\n $(\"html\").css(\"overflow\", \"\");\r\n $(\".forms-mobile-search-container\").css(\"display\", \"\");\r\n $(\".forms-tile\").css(\"margin-top\", \"\");\r\n }\r\n });\r\n\r\n $(document).ready(function () {\r\n $(\"#\" + instanceName + \"FormTypes\").change(function () {\r\n const categoryType = $(\"#\" + instanceName + \"FormTypes\").val();\r\n UpdateLibraryFilter(categoryType);\r\n });\r\n });\r\n\r\n function UpdateLibraryFilter(categoryType) {\r\n const participantID = getUrlVars()[\"participantID\"];\r\n const pageTileID = pageID;\r\n\r\n $.ajax({\r\n type: \"POST\",\r\n url: partialViewURL,\r\n data: { participantID: participantID, pageTileID: pageTileID, CategoryType: categoryType },\r\n success: function (data) {\r\n $(\"#\" + instanceName + \"formsgrid\").html(data);\r\n getFormTileUserInput();\r\n }\r\n });\r\n }\r\n\r\n // Read a page's GET URL variables and return them as an associative array.\r\n function getUrlVars() {\r\n let vars = [], hash;\r\n let hashes = window.location.href.slice(window.location.href.indexOf(\"?\") + 1).split(\"&\");\r\n for (var i = 0; i < hashes.length; i++) {\r\n hash = hashes[i].split(\"=\");\r\n vars.push(hash[0]);\r\n vars[hash[0]] = hash[1];\r\n }\r\n return vars;\r\n }\r\n\r\n function getFormTileUserInput() {\r\n /*User Search*/\r\n const userInput = $('.forms-search-field');\r\n const formLinksContainer = $(\".forms-link-container\");\r\n\r\n userInput.keyup(function () {\r\n const word = this.value;\r\n\r\n //Sync the 2 search fields\r\n $(\".forms-search-field\").val(word);\r\n\r\n for(let i = 0; i < formLinksContainer.length; i++){\r\n const formsLink = $(formLinksContainer[i]).children('.forms-link').text().trim().toLowerCase()\r\n\r\n if(!formsLink.includes(word)) {\r\n $(formLinksContainer[i]).addClass('d-none');\r\n } else {\r\n $(formLinksContainer[i]).removeClass('d-none');\r\n }\r\n }\r\n });\r\n }\r\n\r\n getFormTileUserInput();\r\n\r\n $('.forms-mobile-filter-button').click(function() {\r\n $(\".forms-overlay\").css(\"display\", \"block\");\r\n $(\".forms-mobile-button-container\").css(\"display\", \"none\");\r\n $(\"html\").css(\"overflow\", \"hidden\");\r\n });\r\n\r\n $('.forms-overlay-close-button').click(function() {\r\n $(\".forms-overlay\").css(\"display\", \"\");\r\n $(\".forms-mobile-button-container\").css(\"display\", \"\");\r\n $(\"html\").css(\"overflow\", \"\");\r\n });\r\n\r\n $('.forms-overlay-list-item').click(function() {\r\n const categoryType = $(this).attr('id');\r\n $(\"html\").css(\"overflow\", \"\");\r\n $(\"#\" + instanceName + \"FormTypes\").val(categoryType);\r\n UpdateLibraryFilter(categoryType);\r\n $('.forms-overlay-close-button').trigger('click');\r\n });\r\n\r\n $('.forms-mobile-search-button').click(function() {\r\n $(\".forms-mobile-button-container\").css(\"display\", \"none\");\r\n $(\".forms-mobile-search-container\").css(\"display\", \"flex\");\r\n\r\n $(\".forms-mobile-search-container\").find('.forms-search-field').focus();\r\n });\r\n\r\n $('.forms-mobile-search-close').click(function() {\r\n $(\".forms-mobile-button-container\").css(\"display\", \"\");\r\n $(\".forms-mobile-search-container\").css(\"display\", \"\");\r\n });\r\n\r\n initiated = true;\r\n }\r\n }\r\n})();","var featuredFormTileJS = (function () {\r\n return {\r\n initialized: false,\r\n init: function() {\r\n if (this.initialized) {\r\n return;\r\n }\r\n\r\n $(\".ul-form li a\").each(function () {\r\n var text = $(this).text();\r\n if (text.length > 30) {\r\n $(this).text(text.substring(0, 30) + \" ...\");\r\n }\r\n });\r\n\r\n this.initialized = true;\r\n }\r\n }\r\n})();\r\n","var ExploreBenefitsTileJS = (function() {\r\n var initialized = false;\r\n var storedvalue = false;\r\n\r\n return {\r\n Init: function () {\r\n if (initialized) {\r\n return;\r\n }\r\n\r\n calculateExactHeight();\r\n\r\n function calculateExactHeight() {\r\n var headerHeight = $('.header-wrapper').height();\r\n var combinedHeightOfContainerMinusX = headerHeight - 25;\r\n $(\".category-content-container\").css({ 'top': headerHeight + 'px' });\r\n $(\".explore-category-mobile-buffer-bar\").css({ 'top': headerHeight + 'px' });\r\n $(\".explore-category-mobile-close\").css({ 'top': combinedHeightOfContainerMinusX + 'px' });\r\n }\r\n\r\n function isMobile() {\r\n return typeof window.matchMedia == 'function'\r\n && matchMedia('(max-width: 1199.98px)').matches;\r\n }\r\n\r\n //Hide Explore Benefits\r\n function hideExploreContent() {\r\n $('.explore-benefits-content-container').hide();\r\n $('.explore-benefits-content-container-instance').hide();\r\n $('.explore-category-mobile-buffer-bar').show();\r\n }\r\n\r\n //Show Explore Benefits\r\n function showExploreContent() {\r\n $('.explore-benefits-content-container').show();\r\n $('.explore-benefits-content-container-instance').show();\r\n $('.explore-category-mobile-buffer-bar').hide();\r\n }\r\n\r\n //Hide Toolbar\r\n function hideToolBar() {\r\n $('.category-content-toolbar').hide();\r\n }\r\n\r\n //Show Toolbar\r\n function showToolBar() {\r\n $('.category-content-toolbar').show();\r\n }\r\n\r\n //Hide All Categories On Load\r\n function hideAllCategoryContent() {\r\n $('.explore-category-mobile-close').hide();\r\n\r\n $('.category-content-container').each(function () {\r\n $(this).hide();\r\n });\r\n }\r\n //Open Up Category On Click\r\n $(\".explore-benefits-tile-card\").click(function () {\r\n var containerID = $(this).attr('data-target');\r\n hideAllCategoryContent();\r\n hideExploreContent();\r\n showToolBar();\r\n $(containerID).show();\r\n $(\".explore-category-select\").val(($(this).text().trim()));\r\n document.body.scrollTop = document.documentElement.scrollTop = 0;\r\n\r\n if (isMobile())\r\n $('.explore-category-mobile-close').show();\r\n });\r\n\r\n //Go Back to Home Page\r\n $('.explore-category-go-back, .explore-category-mobile-close').click(function () {\r\n hideToolBar();\r\n hideAllCategoryContent();\r\n showExploreContent();\r\n $('.explore-category-mobile-close').hide();\r\n });\r\n\r\n //Change in Select Box = Change in Page Viewed\r\n $('.explore-category-select').change(function () {\r\n var containerID = ($(this).find(':selected').attr('data-target'));\r\n hideAllCategoryContent();\r\n hideExploreContent();\r\n showToolBar();\r\n $(containerID).show();\r\n });\r\n\r\n //Hide Description if There Isn't One\r\n if ($('.explore-benefits-content-container-description').text() == '') {\r\n $('.explore-benefits-content-container-description').hide();\r\n }\r\n\r\n window.onresize = function () {\r\n calculateExactHeight();\r\n if (storedvalue == isMobile())\r\n return;\r\n\r\n\r\n if (isMobile()) {\r\n var arr = $('.category-content-container').get();\r\n\r\n for (var i = 0; i < arr.length; i++) {\r\n if (arr[i].style.display !== 'none') {\r\n $('.explore-category-mobile-close').show();\r\n break;\r\n }\r\n }\r\n }\r\n else {\r\n $('.explore-category-mobile-close').hide();\r\n }\r\n\r\n storedvalue = isMobile();\r\n }\r\n\r\n // on page load\r\n hideAllCategoryContent();\r\n hideToolBar();\r\n $('.explore-category-mobile-buffer-bar').hide();\r\n\r\n storedvalue = isMobile();\r\n initialized = true;\r\n }\r\n }\r\n})();","let faqTileJS = (function () {\r\n let initialized = false;\r\n\r\n return {\r\n Init: function () {\r\n if (initialized) {\r\n return;\r\n }\r\n\r\n $(window).on('resize', function() {\r\n if(window.innerWidth > 1199.98) {\r\n $(\".faq-overlay\").css('display', '');\r\n $(\".faq-mobile-button-container\").css('display', '');\r\n $(\"html\").css(\"overflow\", \"\");\r\n $(\".faq-mobile-search-container\").css(\"display\", \"\");\r\n $(\".faq-tile\").css(\"margin-top\", \"\");\r\n }\r\n });\r\n\r\n /*User Search*/\r\n const question = $(\".faq-tile-question\");\r\n const answers = $(\".faq-tile-answer\");\r\n const topicTitle = $(\".faq-tile-topicTitle\");\r\n const userInput = $(\".faq-search-field\");\r\n\r\n //Filter Through Search\r\n userInput.keyup(function () {\r\n const word = this.value;\r\n\r\n //Sync the 2 search fields\r\n $(\".faq-search-field\").val(word);\r\n\r\n //Shows/hides topic names\r\n if (word !== '') {\r\n for (let i = 0; i < topicTitle.length; i++) {\r\n $(topicTitle[i]).addClass('d-none');\r\n }\r\n } else {\r\n for (let i = 0; i < topicTitle.length; i++) {\r\n $(topicTitle[i]).removeClass('d-none');\r\n }\r\n }\r\n\r\n //Shows/hides questions and answers\r\n for (let i = 0; i < question.length; i++) {\r\n const questionTitle = question[i];\r\n const answer = $(answers[i]).text().toLowerCase();\r\n const titleText = question[i].innerText.trim().toLowerCase();\r\n\r\n if (!titleText.includes(word) && !answer.includes(word)) {\r\n questionTitle.classList.add('d-none');\r\n $(answers[i]).addClass('d-none');\r\n //Hides Read More/Less\r\n if(answer.length > 490 || $(answers[i]).data(\"li-count\") > 3) {\r\n $(answers[i]).siblings('.faq-tile-read-more').addClass('d-none');\r\n $(answers[i]).siblings('.faq-tile-read-less').addClass('d-none');\r\n }\r\n } else {\r\n questionTitle.classList.remove('d-none');\r\n $(answers[i]).removeClass('d-none');\r\n\r\n if(answer.length > 490 || $(answers[i]).data(\"li-count\") > 3) {\r\n $(answers[i]).siblings('.faq-tile-read-less').trigger('click');\r\n }\r\n }\r\n }\r\n });\r\n\r\n $('.faq-tile-read-more').click(function() {\r\n $(this).addClass('d-none');\r\n $(this).siblings('.faq-tile-read-less').removeClass('d-none');\r\n $(this).prev().addClass('faq-line-clamp-unset');\r\n });\r\n\r\n $('.faq-tile-read-less').click(function() {\r\n $(this).addClass('d-none');\r\n $(this).siblings('.faq-tile-read-more').removeClass('d-none');\r\n $(this).prev().prev().removeClass('faq-line-clamp-unset');\r\n\r\n });\r\n\r\n $('.faq-mobile-filter-button').click(function() {\r\n $(\".faq-overlay\").css(\"display\", \"block\");\r\n $(\".faq-mobile-button-container\").css(\"display\", \"none\");\r\n $(\"html\").css(\"overflow\", \"hidden\");\r\n });\r\n\r\n $('.faq-overlay-close-button').click(function() {\r\n $(\".faq-overlay\").css(\"display\", \"\");\r\n $(\".faq-mobile-button-container\").css(\"display\", \"\");\r\n $(\"html\").css(\"overflow\", \"\");\r\n });\r\n\r\n $('.faq-overlay-list-item').click(function() {\r\n const target = $(this).attr('id');\r\n $(\"html\").css(\"overflow\", \"\");\r\n $('html, body').animate({\r\n scrollTop: $('#'+ target).offset().top - 70\r\n });\r\n $('.faq-overlay-close-button').trigger('click');\r\n });\r\n\r\n $('.faq-mobile-search-button').click(function() {\r\n $(\".faq-mobile-button-container\").css(\"display\", \"none\");\r\n $(\".faq-mobile-search-container\").css(\"display\", \"flex\");\r\n $(\".faq-tile\").css(\"margin-top\", \"80px\");\r\n\r\n $(\".faq-mobile-search-container\").find('.faq-search-field').focus();\r\n });\r\n\r\n $('.faq-mobile-search-close').click(function() {\r\n $(\".faq-mobile-button-container\").css(\"display\", \"\");\r\n $(\".faq-mobile-search-container\").css(\"display\", \"\");\r\n $(\".faq-tile\").css(\"margin-top\", \"\");\r\n });\r\n\r\n initialized = true;\r\n }\r\n }\r\n})();","var featuredFaqTileJS = (function () {\r\n var initialized = false;\r\n\r\n return {\r\n Init: function (instanceName) {\r\n if (initialized) {\r\n return;\r\n }\r\n\r\n //$('.featured-faq-tile-question').click(function (e) {\r\n // e.preventDefault();\r\n // var myAnswer = $(this).parent().next().get(0);\r\n\r\n // myAnswer.classList.toggle('show');\r\n //});\r\n\r\n initialized = true;\r\n }\r\n }\r\n})();","var ManageBenefitsTileJS = (function () {\r\n var initialized = false;\r\n\r\n return {\r\n Init: function () {\r\n if (initialized) {\r\n return;\r\n }\r\n\r\n var currentPage = 0;\r\n var numPerPage = 10;\r\n var totalPages;\r\n sortThisTable();\r\n\r\n\r\n $('select').on('change', function () {\r\n if (this.value == \"ALL\") {\r\n currentPage = 0;\r\n numPerPage = 10000000000;\r\n $('#life-event-items-scroller').hide();\r\n sortThisTable();\r\n } else {\r\n currentPage = 0;\r\n numPerPage = this.value;\r\n $('#life-event-items-scroller').show();\r\n sortThisTable();\r\n }\r\n });\r\n\r\n\r\n $(\"#items-per-page-minus\").click(function () {\r\n if (currentPage > 0) {\r\n currentPage--;\r\n sortThisTable();\r\n $(this).removeClass(\"disabled-icon\");\r\n $(\"#items-per-page-plus\").removeClass(\"disabled-icon\");\r\n\r\n }\r\n });\r\n\r\n $(\"#items-per-page-plus\").click(function () {\r\n if ((currentPage + 1) < (totalPages)) {\r\n currentPage++;\r\n sortThisTable();\r\n $(\"#items-per-page-minus\").removeClass(\"disabled-icon\");\r\n\r\n }\r\n });\r\n\r\n function sortThisTable() {\r\n $('table.manage-benefits-table').each(function () {\r\n var $table = $(this);\r\n $table.bind('repaginate', function () {\r\n $table.find('tbody tr').hide().slice(currentPage * numPerPage, (currentPage + 1) * numPerPage).show();\r\n });\r\n $table.trigger('repaginate');\r\n var numRows = $table.find('tbody tr').length;\r\n var numPages = Math.ceil(numRows / numPerPage);\r\n $('#items-per-page-min').html(currentPage + 1);\r\n $('#items-per-page-max').html(numPages);\r\n totalPages = numPages;\r\n });\r\n }\r\n\r\n $(window).resize(function () {\r\n if (typeof window.matchMedia == 'function' && matchMedia('(min-width: 575.98px)').matches) {\r\n $('#mobileEnrollmentHistoryModal').modal('hide');\r\n }\r\n });\r\n\r\n initialized = true;\r\n }\r\n }\r\n})();","var acceptableDocumentationTileJS = (function() {\r\n return {\r\n initialized: false,\r\n init: function() {\r\n if (this.initialized) {\r\n return;\r\n }\r\n\r\n var acc = document.getElementsByClassName(\"accordion\");\r\n\r\n for (var i = 0; i < acc.length; i++) {\r\n acc[i].onclick = function () {\r\n this.classList.toggle(\"active\");\r\n this.nextElementSibling.classList.toggle(\"show\");\r\n }\r\n }\r\n\r\n //Chevron toggle\r\n function toggleChevron(e) {\r\n $(e.target)\r\n .prev('.panel-heading')\r\n .find(\"span.indicator\")\r\n .toggleClass('fa-chevron-down fa-chevron-up');\r\n }\r\n\r\n $('#accordion').on('hide.bs.collapse', toggleChevron);\r\n $('#accordion').on('show.bs.collapse', toggleChevron);\r\n }\r\n }\r\n})();\r\n\r\n","var myInfoTileJS = (function () {\r\n var initiated = false;\r\n return {\r\n init: function () {\r\n if (initiated) {\r\n return;\r\n }\r\n\r\n //WHEN YOU CLICK A LINK, SMOOTH SCROLL TO MATCHING ID\r\n $('.circular-menu-item-link').click(function () {\r\n $('html, body').animate({\r\n scrollTop: $('#' + $(this).data('target')).offset().top - 70\r\n });\r\n });\r\n\r\n $(window).bind('load', function () {\r\n $('.my-info-card__body').collapse(\"show\");\r\n });\r\n \r\n $('.my-info-my-important-people-personal-info-container').click(function(e) {\r\n e.stopPropagation();\r\n });\r\n\r\n initiated = true;\r\n }\r\n }\r\n})();","var ViewCurrentBenefitsTileJS = (function () {\r\n var initiated = false;\r\n return {\r\n init: function () {\r\n if (initiated) {\r\n return;\r\n }\r\n\r\n //PRINT THE PAGE\r\n $(\".my-benefits-main-header-print\").click(function () {\r\n window.print();\r\n });\r\n\r\n //WHEN YOU CLICK A LINK, SMOOTH SCROLL TO MATCHING ID\r\n $('.circular-menu-item-link').click(function () {\r\n $('html, body').animate({\r\n scrollTop: $('#main-card-' + this.id).offset().top - 70\r\n });\r\n });\r\n\r\n //CHECK SIZE OF WINDOW AND DETERMINE IF CARDS OR OPENED OR NOT\r\n $(document).ready(function () {\r\n $('.current-benefits-card-info').collapse(\"show\");\r\n });\r\n\r\n $('.view-current-benefits-collapse-all-button').click(function() {\r\n if($('.view-current-benefits-collapse-all-button').hasClass('collapsed')) {\r\n $('.view-current-benefits-collapse-all-button').removeClass('collapsed');\r\n $('.current-benefits-card-info').collapse('show');\r\n }\r\n else {\r\n $('.view-current-benefits-collapse-all-button').addClass('collapsed');\r\n $('.current-benefits-card-info').collapse('hide');\r\n }\r\n });\r\n\r\n initiated = true;\r\n }\r\n }\r\n})();","var FeaturedTotalCompensationModule = (function () {\r\n var initialized = false;\r\n var myInstanceName = null;\r\n var myDataArray = null;\r\n var myColorArray = null;\r\n\r\n return {\r\n Init: function (instanceName, dataArray, colorArray) {\r\n if (initialized) {\r\n return;\r\n }\r\n\r\n myInstanceName = instanceName;\r\n myDataArray = dataArray;\r\n myColorArray = colorArray;\r\n\r\n var ctx = $(\"#myChart-\" + instanceName);\r\n\r\n if (ctx && ctx.length) {\r\n var myPieChart = new Chart(ctx, {\r\n type: 'doughnut',\r\n data: {\r\n datasets: [{\r\n data: myDataArray,\r\n backgroundColor: myColorArray\r\n }],\r\n },\r\n options: {\r\n hover: {\r\n mode: false\r\n },\r\n tooltips: {\r\n enabled: false\r\n },\r\n animation: {\r\n duration: 0\r\n }\r\n }\r\n });\r\n }\r\n\r\n initialized = true;\r\n }\r\n }\r\n})();","var currentSnapshotBreakdownModule = (function () {\r\n\r\n var myIdentifier = null;\r\n\r\n var myLabelListArray = null;\r\n var myBackgroundColorArray = null;\r\n var myValueListArray = null;\r\n var myGrandTotalText = null;\r\n\r\n var buildChart = function () {\r\n var ctx = document.getElementById(\"myChart-\" + myIdentifier).getContext('2d');\r\n\r\n var myChart = new Chart(ctx, {\r\n type: 'doughnut',\r\n legend: false,\r\n data: {\r\n labels: myLabelListArray,\r\n datasets: [{\r\n backgroundColor: myBackgroundColorArray,\r\n data: myValueListArray\r\n }]\r\n },\r\n options: {\r\n legend: {\r\n display: false\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: function (tooltipItem, data) {\r\n var labelInfo = data.labels[tooltipItem.index];\r\n var dataset = data.datasets[tooltipItem.datasetIndex];\r\n var total = dataset.data.reduce(function (previousValue, currentValue, currentIndex, array) {\r\n return previousValue + currentValue;\r\n });\r\n var currentValue = dataset.data[tooltipItem.index];\r\n return labelInfo + \": \" + Math.round(currentValue) + \"%\";\r\n }\r\n }\r\n }\r\n },\r\n plugins: [{\r\n beforeDraw: function (chart) {\r\n\r\n var width = chart.chart.width,\r\n height = chart.chart.height,\r\n ctx = chart.chart.ctx;\r\n\r\n ctx.restore();\r\n var fontSize = (height / 200);\r\n ctx.font = (fontSize * 0.8).toFixed(2) + \"em sans-serif\";\r\n ctx.textBaseline = \"middle\";\r\n ctx.fillStyle = \"#666\"; // $grey-medium\r\n var text = [myGrandTotalText],\r\n textX = Math.round((width - ctx.measureText(text).width) / 2),\r\n textY = height / 2;\r\n\r\n ctx.clearRect(0, 0, width, height);\r\n ctx.fillText(text, textX, textY);\r\n\r\n //ctx.fillText(\"ANNUAL\", textX + (textX * 0.3), textY + (textY / 6));\r\n\r\n ctx.save();\r\n }\r\n }]\r\n });\r\n };\r\n\r\n return {\r\n Init: function (identifier, labelListArray, backgroundColorArray, valueListArray, grandTotalText) {\r\n\r\n\r\n myIdentifier = identifier;\r\n myLabelListArray = labelListArray;\r\n myBackgroundColorArray = backgroundColorArray;\r\n myValueListArray = valueListArray;\r\n myGrandTotalText = grandTotalText;\r\n\r\n $('#printConfirmationStatementButton-' + myIdentifier).click(function (e) {\r\n e.preventDefault();\r\n window.print();\r\n });\r\n\r\n buildChart();\r\n },\r\n OnDropdownChange: function () {\r\n $('#runCompButton-' + myIdentifier).click();\r\n }\r\n }\r\n})();","var ContactUsForm = (function () {\r\n\r\n var myInstanceName = undefined,\r\n initialized = false,\r\n loginUrlSegment = \"/MAIN%20PORTAL/LOGIN\",\r\n submitCaptchaButton = {\r\n Id: \"#submit-captcha-btn\",\r\n Disabled: \"disabled\"\r\n },\r\n\r\n init = function (instanceName) {\r\n\r\n if (initialized) {\r\n return;\r\n }\r\n\r\n myInstanceName = instanceName;\r\n\r\n //Check if all fields are filled out\r\n $('#submit-nocaptcha-btn').prop(\"disabled\", true);\r\n\r\n $(\".contact-submit-btn\").click(function (e) {\r\n e.preventDefault();\r\n if ($(this).prop('disabled') == true) {\r\n return;\r\n }\r\n $(this).prop('disabled', true);\r\n\r\n var contactFormViewModel = {}; \r\n $.each($(this).closest('form').serializeArray(), function () {\r\n if (this.name == 'g-recaptcha-response') {\r\n contactFormViewModel['recaptchaResponse'] = $(\"textarea[name='g-recaptcha-response']\").val();\r\n }\r\n else {\r\n contactFormViewModel[this.name] = this.value || '';\r\n }\r\n });\r\n\r\n $.ajax({\r\n type: 'POST',\r\n url: url,\r\n data: JSON.stringify(contactFormViewModel),\r\n contentType: 'application/json'\r\n }).done(function () {\r\n $('#support').modal('hide');\r\n $('.contact-us-input').val('');\r\n $('.contact-submit-btn').prop('disabled', true);\r\n grecaptcha.reset();\r\n disableSubmitButton();\r\n });\r\n });\r\n\r\n $(document).on('keyup', '.contact-us-input', function (e) {\r\n $('#submit-nocaptcha-btn').prop(\"disabled\", !!$('.modal.show').find(\".contact-us-input\").filter(function () { return this && (!this.value || !this.value.trim()); }).length);\r\n })\r\n\r\n initialized = true;\r\n },\r\n\r\n disableSubmitButton = function () {\r\n var index = window.location.pathname.toUpperCase().indexOf(loginUrlSegment);\r\n let captchaIsOnPage = index !== -1;\r\n if (captchaIsOnPage) {\r\n $(submitCaptchaButton.Id).prop(submitCaptchaButton.Disabled, true);\r\n }\r\n },\r\n\r\n enableSubmitButton = function () {\r\n $(submitCaptchaButton.Id).prop(submitCaptchaButton.Disabled, false);\r\n };\r\n\r\n $(document).ready(function () {\r\n if (typeof window.matchMedia == 'function'\r\n && matchMedia('(max-width: 1199.98px)').matches) {\r\n $('#support').find('.modal-dialog').css('top', $('.header-wrapper').height());\r\n } else {\r\n $('#support').find('.modal-dialog').css('top', 'unset');\r\n }\r\n });\r\n\r\n //Set how low buttons are pushed down since the header can contain banners, and alerts\r\n $(window).resize(function () {\r\n if (typeof window.matchMedia == 'function'\r\n && matchMedia('(max-width: 1199.98px)').matches) {\r\n $('#support').find('.modal-dialog').css('top', $('.header-wrapper').height());\r\n } else {\r\n $('#support').find('.modal-dialog').css('top', 'unset');\r\n }\r\n });\r\n\r\n\r\n return {\r\n Init: init,\r\n DisableSubmitBtn: disableSubmitButton,\r\n EnableSubmitBtn: enableSubmitButton,\r\n };\r\n})();","var MyDocumentsTileJS = (function() {\r\n var initialized = false;\r\n\r\n return {\r\n Init: function () {\r\n if (initialized) {\r\n return;\r\n }\r\n \r\n //Filter by Search\r\n $(\"#my-documents-tile-user-search\").keyup(function () {\r\n var searchText = $(this).val() && $(this).val().toLowerCase();\r\n $(\".my-documents-tile-name\").each(function (i, v) {\r\n getDocumentContainerElement(v).toggleClass('my-documents-tile-document-row-search-filtered-out', !!(searchText && $(v).text() && $(v).text().toLowerCase().indexOf(searchText) == -1));\r\n });\r\n updateAllAboveMaxClasses();\r\n });\r\n /*-------------------------------------*/\r\n\r\n //Filter by Year\r\n $('#my-documents-tile-select').change(function () {\r\n $('.my-documents-tile-document-row-year-filtered-out').removeClass('my-documents-tile-document-row-year-filtered-out');\r\n var date = $(\".my-documents-tile-date\");\r\n if ($(this).val() == \"This Year\") {\r\n for (var i = 0; i < date.length; i++) {\r\n if (new Date($(date[i]).text()).getFullYear() != new Date().getFullYear()) {\r\n getDocumentContainerElement(date[i]).addClass('my-documents-tile-document-row-year-filtered-out');\r\n }\r\n }\r\n } else if ($(this).val() == \"Last Year\") {\r\n for (var i = 0; i < date.length; i++) {\r\n if (new Date($(date[i]).text()).getFullYear() != new Date().getFullYear() - 1) {\r\n getDocumentContainerElement(date[i]).addClass('my-documents-tile-document-row-year-filtered-out');\r\n }\r\n }\r\n }\r\n\r\n updateAllAboveMaxClasses();\r\n });\r\n /*-------------------------------------*/\r\n\r\n //Sorting\r\n $('[data-sort-class]').click(function () {\r\n var container = $(this).closest('.my-documents-tile-section').find('.my-documents-tile-document-rows');\r\n var elems = container.find('.my-documents-tile-document-row');\r\n var sortClass = '.' + $(this).data('sort-class');\r\n var sortDataType = $(this).data('sort-data-type');\r\n var ascending = !$(this).data('ascending');\r\n elems.sort(function (a, b) {\r\n var sortStringA = $(a).find(sortClass).text();\r\n var sortStringB = $(b).find(sortClass).text();\r\n if (sortDataType == 'date') {\r\n return (ascending ? 1 : -1) * (new Date(sortStringA) - new Date(sortStringB));\r\n } else {\r\n return (ascending ? 1 : -1) * sortStringA.localeCompare(sortStringB);\r\n }\r\n });\r\n\r\n container.html('');\r\n container.append(elems);\r\n updateAboveMaxClasses(container);\r\n\r\n $(this).data('ascending', ascending);\r\n });\r\n\r\n //WHEN YOU CLICK A LINK, OPEN ALL PANELS AND SMOOTH SCROLL TO MATCHING ID\r\n $('.circular-menu-item-link').click(function () {\r\n var target = $(this).data('target');\r\n setTimeout(function () {\r\n $('.no-rail-layout-row').scrollTop($(target).offset().top);\r\n }, 400);\r\n });\r\n\r\n //Get the document row for an element within a document row \r\n function getDocumentContainerElement(element) {\r\n return $(element).closest('.my-documents-tile-document-row');\r\n }\r\n\r\n /*Changes when clicking show more*/\r\n $(\".my-documents-tile-show-more,.my-documents-tile-show-less\").click(function () {\r\n $(this)\r\n .closest('.my-documents-tile-section')\r\n .toggleClass('my-documents-tile-section-show-subset');\r\n });\r\n\r\n function updateAllAboveMaxClasses() {\r\n $('.my-documents-tile-document-rows').each(function (i, v) {\r\n updateAboveMaxClasses(v);\r\n });\r\n }\r\n\r\n /**\r\n * Add/Remove the above-max class as necessary. This causes\r\n * docs beyond the 5th to be hidden.\r\n * @param {any} container The .my-documents-tile-document-rows element to have its children adjusted\r\n */\r\n function updateAboveMaxClasses(container) {\r\n $(container)\r\n .find('.my-documents-tile-document-row')\r\n .removeClass('my-documents-tile-document-row-above-max')\r\n .filter(':not(.my-documents-tile-document-row-year-filtered-out):not(.my-documents-tile-document-row-search-filtered-out)')\r\n .slice(5)\r\n .addClass('my-documents-tile-document-row-above-max');\r\n\r\n $(container)\r\n .closest('.my-documents-tile-section')\r\n .toggleClass('my-documents-tile-section-lt-max', $(container).find('.my-documents-tile-document-row-above-max:not(.my-documents-tile-document-row-year-filtered-out):not(.my-documents-tile-document-row-search-filtered-out)').length <= 5);\r\n }\r\n\r\n initialized = true;\r\n }\r\n }\r\n})();","//misc workarounds for stupid modal-background behavior\r\n(function ($) {\r\n var modals = { locked: false };\r\n var lockWaitMillis = 25;\r\n var animationWaitMillis = 1000;\r\n\r\n //Gets called immediately after initiating the modal close but\r\n //ONLY if the modal close is done the Bootstrap way. Just deleting\r\n //the modal from the DOM does not cause this method to get called.\r\n $(document).on(\"hide.bs.modal\", \".modal\", onHide);\r\n\r\n function onHide(e) {\r\n //This actually gets called for other things like the \r\n //bootstrap datepicker, so we need to make sure this\r\n //is a modal that's being hidden.\r\n if ($(e.target).is('.modal')) {\r\n if (!modals.locked) {\r\n modals.locked = true;\r\n var backdrops = $(\".modal-backdrop\");\r\n modals[e.target] = backdrops;\r\n modals.locked = false;\r\n window.setTimeout(function () { onHidden(e); }, animationWaitMillis);\r\n } else {\r\n window.setTimeout(function () { onHide(e); }, lockWaitMillis);\r\n }\r\n }\r\n }\r\n\r\n //Gets called after the animation for closing the modal has finished. This\r\n //method will only get called if the onHide method above is called. The bootstrap\r\n //event will only be triggered if the modal still exists in the DOM when the \r\n //animation timer completes. As a workaround for when the modal is deleted from \r\n //the DOM prior to the animation timer completing, this method should also be\r\n //called from onHide via a timer.\r\n $(document).on(\"hidden.bs.modal\", \".modal\", onHidden);\r\n function onHidden(e) {\r\n if (!modals.locked) {\r\n modals.locked = true;\r\n var backdrops = modals[e.target];\r\n if (backdrops && backdrops.length) {\r\n backdrops.remove();\r\n }\r\n modals[e.target] = null;\r\n if (!$(\".modal:visible\").length) {\r\n $(document.body).removeClass(\"modal-open\");\r\n }\r\n modals.locked = false;\r\n } else {\r\n window.setTimeout(function () { onHidden(e); }, lockWaitMillis);\r\n }\r\n }\r\n\r\n //Run a timer checking to see if modal backdrops exist when no modals are visible.\r\n //If that situation occurs more than maxTimerFails times then delete\r\n //all the modal backdrops. This method largely makes the other two unnecessary,\r\n //but the other two are much more responsive to user input which is why I'm\r\n //leaving the others (keep in mind that jQuery :visible is true until the modal fade\r\n //animation is finished).\r\n (function () {\r\n var maxTimerFails = 20;\r\n var failCount = 0;\r\n var timerMillis = 250;\r\n function onTimer() {\r\n if (!$(\".modal.show\").length && $(\".modal-backdrop\").length) {\r\n failCount++;\r\n } else {\r\n failCount = 0;\r\n }\r\n\r\n if (failCount >= maxTimerFails) {\r\n $(\".modal-backdrop\").remove();\r\n $(document.body).removeClass(\"modal-open\");\r\n console.log('ERROR: Workaround timer forced to clear modal-backdrop. Please close your modals properly by calling $(elem).modal(\"hide\").');\r\n }\r\n }\r\n var timer = window.setInterval(onTimer, timerMillis);\r\n })();\r\n})(jQuery);","(function () {\r\n\r\n var initialInputValues = [];\r\n\r\n function isFormDirty() {\r\n var isDirty = false;\r\n $(\"#update-contact-info-form input:not([type=hidden])\").each(function () {\r\n var value = $(this).is(':checkbox') ? $(this).is(':checked') : $(this).val();\r\n if ($(this).hasClass(\"phoneNumber\")) {\r\n value = value.replace(/\\D/g, '');\r\n }\r\n if (initialInputValues[$(this).attr(\"name\")] !== value) {\r\n isDirty = true;\r\n return false;\r\n }\r\n });\r\n return isDirty;\r\n }\r\n\r\n\r\n $(document).ready(function () {\r\n\r\n if ($(\"#update-contact-info-modal\").length) {\r\n $(\"#update-contact-info-modal\").modal({ backdrop: 'static', keyboard: false });\r\n }\r\n \r\n\r\n $(\"#update-contact-info-form input:not([type=hidden])\").each(function () {\r\n initialInputValues[$(this).attr(\"name\")] = $(this).is(':checkbox') ? $(this).is(':checked') : $(this).val();\r\n });\r\n\r\n $(\".phoneNumber\").each(function () {\r\n $(this).val(Titania.Models.PhoneNumber.Format($(this).val()));\r\n });\r\n\r\n\r\n $('#update-contact-info-form input').keyup(debounce(function () {\r\n updateForm();\r\n }));\r\n\r\n $('#update-contact-info-form input[type=\"checkbox\"]').change(debounce(function () {\r\n updateForm();\r\n }));\r\n\r\n function updateForm() {\r\n var formIsDirty = isFormDirty();\r\n\r\n $(\".update-contact-info-modal-info-up-to-date-btn\").prop('disabled', formIsDirty);\r\n\r\n formIsDirty ? $(\".update-contact-info-modal-info-up-to-date-btn\").removeClass(\"active\") : $(\".update-contact-info-modal-info-up-to-date-btn\").addClass(\"active\");\r\n updateSubmitButton(formIsDirty, true);\r\n }\r\n\r\n\r\n $(\"#update-contact-info-form\").submit(function (e) {\r\n\r\n if (!validateAll(false)) {\r\n return false;\r\n }\r\n\r\n if ($(\"#update-contact-info-modal\").length) {\r\n $('#update-contact-info-modal').modal('hide');\r\n }\r\n });\r\n\r\n\r\n $(\".phoneNumber\").on('keyup', function () {\r\n $(this).val(Titania.Models.PhoneNumber.Format($(this).val()));\r\n });\r\n\r\n function convertStringToBool(value) {\r\n return value && value.toLowerCase() === \"true\";\r\n }\r\n\r\n function validateAll(silent) {\r\n if (silent === undefined) {\r\n silent = false;\r\n }\r\n var workEmailError = $('#ParticipantPersonalInfo_WorkEmail').length ? validateEmail($('#ParticipantPersonalInfo_WorkEmail').val(), convertStringToBool($(\"#workEmail_isRequired\").val())) : \"\";\r\n var personalEmailError = $('#ParticipantPersonalInfo_PersonalEmail').length ? validateEmail($('#ParticipantPersonalInfo_PersonalEmail').val(), convertStringToBool($(\"#personalEmail_isRequired\").val())) : \"\";\r\n var workPhoneError = $('#ParticipantPersonalInfo_WorkCellPhone').length ? validatePhone($('#ParticipantPersonalInfo_WorkCellPhone').val(), convertStringToBool($(\"#workPhone_isRequired\").val())) : \"\";\r\n var personalPhoneError = $('#ParticipantPersonalInfo_PersonalCellPhone').length ? validatePhone($('#ParticipantPersonalInfo_PersonalCellPhone').val(), convertStringToBool($(\"#personalCellPhone_isRequired\").val())) : \"\";\r\n\r\n if (!silent) {\r\n $(\"#work-email-error\").text(workEmailError);\r\n $(\"#personal-email-error\").text(personalEmailError);\r\n $(\"#work-phone-error\").text(workPhoneError);\r\n $(\"#personal-phone-error\").text(personalPhoneError);\r\n }\r\n\r\n return workEmailError.length === 0 && personalEmailError.length === 0 && workPhoneError.length === 0 && personalPhoneError.length === 0;\r\n }\r\n\r\n $('#ParticipantPersonalInfo_WorkEmail').on('input', debounce(function () {\r\n $(\"#work-email-error\").text(validateEmail($('#ParticipantPersonalInfo_WorkEmail').val()));\r\n }));\r\n\r\n $('#ParticipantPersonalInfo_PersonalEmail').on('input', debounce(function () {\r\n $(\"#personal-email-error\").text(validateEmail($('#ParticipantPersonalInfo_PersonalEmail').val()));\r\n }));\r\n\r\n $('#ParticipantPersonalInfo_WorkCellPhone').on('input', debounce(function () {\r\n $(\"#work-phone-error\").text(validatePhone($('#ParticipantPersonalInfo_WorkCellPhone').val()));\r\n }));\r\n\r\n $('#ParticipantPersonalInfo_PersonalCellPhone').on('input', debounce(function () {\r\n $(\"#personal-phone-error\").text(validatePhone($('#ParticipantPersonalInfo_PersonalCellPhone').val()));\r\n }));\r\n\r\n\r\n function updateSubmitButton(formIsDirty, silent) {\r\n if (formIsDirty && isFormValid(silent)) {\r\n $(\"#update-contact-info-modal-info-update-btn\").addClass(\"active\");\r\n $(\"#update-contact-info-modal-info-update-btn\").prop('disabled', false);\r\n return;\r\n }\r\n $(\"#update-contact-info-modal-info-update-btn\").removeClass(\"active\");\r\n $(\"#update-contact-info-modal-info-update-btn\").prop('disabled', true);\r\n }\r\n\r\n function isFormValid(silent) {\r\n return $(\"#work-email-error\").text() === \"\" &&\r\n $(\"#personal-email-error\").text() === \"\" &&\r\n $(\"#work-phone-error\").text() === \"\" &&\r\n $(\"#personal-phone-error\").text() === \"\" &&\r\n validateAll(silent);\r\n }\r\n\r\n function validatePhone(phone, required) {\r\n phone = phone.replace(' ', '').replace('(', '').replace(')', '').replace('-', '');\r\n if (!phone || !phone.length) {\r\n return required ? \"Phone Number Required\" : \"\";\r\n }\r\n var regex = /\\(?([0-9]{3})\\)?([ .-]?)([0-9]{3})\\2([0-9]{4})/;\r\n return regex.test(phone) ? \"\" : \"Invalid Phone Number\";\r\n }\r\n\r\n function validateEmail(email, required) {\r\n if (!email || !email.length) {\r\n return required ? \"Email Required\" : \"\";\r\n }\r\n var regex = /^([a-zA-Z0-9_.+-])+\\@(([a-zA-Z0-9-])+\\.)+([a-zA-Z0-9]{2,4})+$/;\r\n return regex.test(email) ? \"\" : \"Invalid Email\";\r\n }\r\n\r\n function debounce(func) {\r\n var timeout;\r\n return function () {\r\n clearTimeout(timeout);\r\n timeout = null;\r\n timeout = setTimeout(func, 200);\r\n };\r\n }\r\n });\r\n})();","(function () {\r\n\r\n\r\n var completedDate = false;\r\n var completedType = false;\r\n\r\n var booleanParse = function (s) {\r\n if (typeof (s) == \"string\") {\r\n s = s.toLowerCase();\r\n if (s == \"t\" || s == \"true\") {\r\n return true;\r\n } else if (s == \"f\" || s == \"false\") {\r\n return false;\r\n }\r\n } else if (typeof (s) == \"boolean\") {\r\n return s;\r\n }\r\n }\r\n\r\n $(window).ready(function () {\r\n\r\n $(\"a[href='#LEQuestionModal']\").click(function () {\r\n var transactionType = $(this).data('transtype');\r\n\r\n if (transactionType && transactionType.toLowerCase() == 'lifeevent') {\r\n $(\"#lifeEventDetails\").show();\r\n $(\".oeDisplay\").hide();\r\n }\r\n else if (transactionType && transactionType.toLowerCase() == 'openenrollment') {\r\n $(\"#lifeEventDetails\").hide();\r\n $(\".oeDisplay\").show();\r\n }\r\n });\r\n\r\n var hasMultipleLifeEvents = booleanParse($(\"#HasMultipleLifeEvents\").val());\r\n $(\"#lifeEventDetails\").hide();\r\n $(\".oeDisplay\").show();\r\n\r\n if (hasMultipleLifeEvents) {\r\n $(\"#lifeEventDetails\").show();\r\n $(\".oeDisplay\").hide();\r\n }\r\n\r\n $(\"#leModalDateError\").text(\"\");\r\n\r\n $(\"#editLifeEvent\").click(function () {\r\n $(\"#lifeEventDetails\").show();\r\n });\r\n //set the continue button to disabled and clear out any LE values in local storage\r\n checkEnableEnrollmentBtn();\r\n localStorage.removeItem(\"selectedLifeEventType\");\r\n localStorage.removeItem(\"selectedLifeEventDate\");\r\n\r\n $('#lifeEventDatePicker').datepicker().on('changeDate', function (e) {\r\n //get the date and format it\r\n $(\"#leModalDateError\").text(\"\");\r\n\r\n var parsedDateSelected = getParsedDateSelected();\r\n \r\n var dateSelected = parsedDateSelected.getMonth() + 1 + '/' + parsedDateSelected.getDate() + '/' + parsedDateSelected.getFullYear();\r\n\r\n //any time the datepicker field changes check if the continue button can be enabled\r\n if (dateSelected != \"\") {\r\n leDate = dateSelected;\r\n completedDate = true;\r\n checkEnableEnrollmentBtn();\r\n }\r\n\r\n });\r\n\r\n $('#lifeEventDatePicker').datepicker().on('keyup', function (e) {\r\n //get the date and format it\r\n if ($(\"#lifeEventDate\").val().replace(/ /g, '').length == 10) {\r\n var parsedDateSelected = getParsedDateSelected();\r\n\r\n var dateSelected = parsedDateSelected.getMonth() + 1 + '/' + parsedDateSelected.getDate() + '/' + parsedDateSelected.getFullYear();\r\n\r\n //any time the datepicker field changes check if the continue button can be enabled\r\n if (dateSelected != \"\") {\r\n leDate = dateSelected;\r\n completedDate = true;\r\n checkEnableEnrollmentBtn();\r\n }\r\n }\r\n });\r\n\r\n \r\n $(\".lifeEventOption\").click(function () {\r\n //properly set radio button classes\r\n var selectedType = 0;\r\n var classNames = this.classList;\r\n\r\n //Finding selected type\r\n for (var i = 0; i < classNames.length; i++) {\r\n if (classNames[i].indexOf(\"leType-\") !== -1) {\r\n selectedType = classNames[i].replace(\"leType-\", \"\");\r\n }\r\n }\r\n\r\n //Displaying main text area\r\n if (selectedType && parseInt(selectedType) && selectedType != 0) {\r\n $(\"#SelectedLifeEventTypeId\").val(parseInt(selectedType));\r\n\r\n completedType = true;\r\n\r\n var isMobile = typeof window.matchMedia == 'function' && matchMedia('(max-width: 1199.98px)').matches;\r\n var containerName = isMobile ? \".service-modal-le-container-mobile\" : \".service-modal-le-container-desktop\";\r\n\r\n if (selectedType == '8' || selectedType == '11' || selectedType == '12') {\r\n if (isMobile) {\r\n $(containerName).hide();\r\n $(this).find(containerName).show();\r\n }\r\n else {\r\n $(containerName).show();\r\n }\r\n }\r\n else {\r\n $(containerName).hide();\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n //Toggling Check Mark Portion\r\n $(\".lifeEventOption\").each(function () {\r\n if ($(this).hasClass(\"leType-\" + selectedType)) {\r\n $(this).find(\"i.le-modal-le-type\").addClass(\"fas fa-check-circle\").removeClass(\"far fa-circle\");\r\n }\r\n else {\r\n $(this).find(\"i.le-modal-le-type\").addClass(\"far fa-circle\").removeClass(\"fas fa-check-circle\");\r\n }\r\n });\r\n\r\n checkEnableEnrollmentBtn();\r\n });\r\n\r\n\r\n $(\".closeLeModal\").click(function () {\r\n leDate = null;\r\n leType = null;\r\n completedDate = false;\r\n completedType = false;\r\n if (!hasMultipleLifeEvents) {\r\n $(\"#lifeEventDetails\").hide();\r\n }\r\n });\r\n\r\n checkTopOfLEModal();\r\n });\r\n\r\n function checkTopOfLEModal() {\r\n if (typeof window.matchMedia == 'function'\r\n && matchMedia('(max-width: 1199.98px)').matches) {\r\n //Need to accomodate for height of OE banner\r\n $(\"#LEQuestionModal\").css(\"top\", $(\".header-wrapper\").height());\r\n } else {\r\n $(\"#LEQuestionModal\").css(\"top\", \"0\");\r\n }\r\n }\r\n\r\n function checkEnableEnrollmentBtn() {\r\n updateTheContinueButton(true);\r\n\r\n validateLifeEventDate();\r\n\r\n if ($(\"#leModalDateError\").text() != \"\") {\r\n updateTheContinueButton(true);\r\n return;\r\n }\r\n\r\n if (completedDate && completedType) {\r\n updateTheContinueButton(false);\r\n }\r\n }\r\n\r\n function getParsedDateSelected() {\r\n return $('#lifeEventDatePicker').datepicker('getDate');\r\n }\r\n\r\n\r\n function validateLifeEventDate() {\r\n\r\n if (!completedDate || !completedType) {\r\n return;\r\n }\r\n\r\n var parsedDateSelected = getParsedDateSelected();\r\n\r\n var todaysDate = new Date();\r\n todaysDate.setHours(0, 0, 0, 0);\r\n\r\n if (todaysDate < parsedDateSelected) {\r\n $(\"#leModalDateError\").html(\"You cannot report a future life event. Please come back to report your life event on or after the date it occurs.\");\r\n }\r\n\r\n var enrollmentWindow = getEnrollmentWindowForSelectedLifeEvent();\r\n var minDate = new Date(todaysDate);\r\n minDate.setDate(todaysDate.getDate() - enrollmentWindow);\r\n\r\n if ((minDate) > parsedDateSelected) {\r\n $(\"#leModalDateError\").html(\"Life event must have occurred within the past \" + enrollmentWindow + \" days.\");\r\n }\r\n\r\n }\r\n\r\n function getEnrollmentWindowForSelectedLifeEvent() {\r\n return $(\".leTypeWindow-\" + $(\"#SelectedLifeEventTypeId\").val()).val();\r\n }\r\n\r\n function updateTheContinueButton(isDisabled) {\r\n $(\"#continueToEnrollmentBtn\").prop(\"disabled\", isDisabled);\r\n\r\n if (isDisabled) {\r\n $(\"#continueToEnrollmentBtn\").removeClass('next-btn');\r\n $(\"#continueToEnrollmentBtn\").addClass('confirm-btn');\r\n }\r\n else {\r\n $(\"#continueToEnrollmentBtn\").removeClass('confirm-btn');\r\n $(\"#continueToEnrollmentBtn\").addClass('next-btn');\r\n }\r\n }\r\n\r\n //On resize check to see where the text area should be displaying\r\n $(window).on('resize', function () {\r\n var checkedCircle = $('.le-modal-le-type.fa-check-circle');\r\n //Check if any LE is checked on resize\r\n if (checkedCircle.length > 0) {\r\n\r\n if (checkedCircle.closest('.leType-8').length || checkedCircle.closest('.leType-11').length || checkedCircle.closest('.leType-12').length) {\r\n //Display Text Area in Desktop\r\n if (typeof window.matchMedia == 'function' && matchMedia('(min-width: 1199.98px)').matches) {\r\n $(\".service-modal-le-container-desktop\").show();\r\n $(\".service-modal-le-container-mobile\").hide();\r\n } else {\r\n //Display mobile text area\r\n $(\".service-modal-le-container-desktop\").hide();\r\n $(\".service-modal-le-container-mobile\").hide();\r\n $('.le-modal-le-type.fa-check-circle').closest(\".life-event-modal-option\").find('.service-modal-le-container-mobile').show();\r\n }\r\n }\r\n } else {\r\n $(\".service-modal-le-container-desktop\").hide();\r\n $(\".service-modal-le-container-mobile\").hide();\r\n }\r\n\r\n checkTopOfLEModal();\r\n });\r\n\r\n})();","var AccountSettingsTileJS = new function () {\r\n var initialized = false;\r\n\r\n return {\r\n Init: function () {\r\n if (initialized) {\r\n return;\r\n }\r\n\r\n $(document).ready(function () {\r\n $(\".changeLoginInformation-cancel\").hide();\r\n $(\".changeLoginInformation-save\").hide();\r\n $(\".changeRecoveryInformation-cancel\").hide();\r\n $(\".changeRecoveryInformation-save\").hide();\r\n $(\".changeContactInformation-cancel\").hide();\r\n $(\".changeContactInformation-save\").hide();\r\n $(\"#personalEmailError\").hide();\r\n $(\"#workEmailError\").hide();\r\n $(\"#recoveryEmailError\").hide();\r\n $(\"#recoveryPhoneError\").hide();\r\n $('#cannotChangeEmailError').hide();\r\n $('#inUseEmailError').hide();\r\n $('#currentPasswordMismatchError').hide();\r\n $('#passwordComplexityError').hide();\r\n $('#formerPasswordError').hide();\r\n $('#workPhoneError').hide();\r\n $('#personalPhoneError').hide();\r\n $('input[name =\"WorkEmail\"').prop('readonly', true);\r\n $('input[name =\"WorkCellPhone\"').prop('readonly', true);\r\n $('input[name =\"PersonalEmail\"').prop('readonly', true);\r\n $('input[name =\"PersonalCellPhone\"').prop('readonly', true);\r\n $('.contact-checkbox').addClass('account-settings-checkbox-no-click');\r\n });\r\n\r\n $(\".changeLoginInformation-edit\").click(function () {\r\n if (!$(\"#ChangeLoginInformationDropdown\").hasClass(\"show\")) {\r\n $(\".changeLoginInformation-cancel\").show();\r\n $(\".changeLoginInformation-save\").show();\r\n $(\".changeLoginInformation-edit\").hide();\r\n $(\"#ChangeLoginInformationDropdown\").collapse(\"show\");\r\n $(\"#loginPassword\").prop('readonly', false);\r\n $('#loginPassword').removeAttr('placeholder');\r\n }\r\n });\r\n\r\n $(\".changeLoginInformation-cancel\").click(function () {\r\n if ($(\"#ChangeLoginInformationDropdown\").hasClass(\"show\")) {\r\n $(\".changeLoginInformation-cancel\").hide();\r\n $(\".changeLoginInformation-save\").hide();\r\n $(\".changeLoginInformation-edit\").show();\r\n $(\"#ChangeLoginInformationDropdown\").collapse(\"hide\");\r\n $(\"#loginPassword\").prop('readonly', true);\r\n }\r\n });\r\n\r\n $(\".changeLoginInformation-save\").click(function () {\r\n if (!$(this).hasClass('account-settings-update-action-disabled')) {\r\n $.ajax({\r\n type: 'POST',\r\n contentType:'application/json',\r\n url: 'UpdateUserPassword',\r\n data: JSON.stringify({\r\n currentPassword: $('#loginPassword').val(),\r\n newPassword: $('#newPassword').val()\r\n }),\r\n complete: function (updatePasswordResult) {\r\n $('#currentPasswordMismatchError').hide();\r\n $('#passwordComplexityError').hide();\r\n $('#formerPasswordError').hide();\r\n if (updatePasswordResult.responseJSON.DoesNotMatchCurrentPassword) {\r\n $('#currentPasswordMismatchError').show();\r\n }\r\n else if (updatePasswordResult.responseJSON.UpdatePasswordResult && updatePasswordResult.responseJSON.UpdatePasswordResult.IsTooSimple) {\r\n $('#passwordComplexityError').show();\r\n }\r\n else if (updatePasswordResult.responseJSON.UpdatePasswordResult && updatePasswordResult.responseJSON.UpdatePasswordResult.IsFormerPassword) {\r\n $('#formerPasswordError').show();\r\n }\r\n else {\r\n $(\".changeLoginInformation-cancel\").hide();\r\n $(\".changeLoginInformation-save\").hide();\r\n $(\".changeLoginInformation-edit\").show();\r\n $(\"#ChangeLoginInformationDropdown\").collapse(\"hide\");\r\n $(\"#loginPassword\").prop('readonly', true);\r\n }\r\n }\r\n });\r\n }\r\n });\r\n\r\n $(\".changeRecoveryInformation-save\").click(function () {\r\n if (!$(this).hasClass('account-settings-update-action-disabled')) {\r\n $.ajax({\r\n type: 'POST',\r\n contentType: 'application/json',\r\n url: 'UpdateRecoveryInfo',\r\n data: JSON.stringify({\r\n newEmail: $('#recoveryEmail').val(),\r\n newPhone: $('#recoveryPhoneNumber').val()\r\n }),\r\n complete: function (updateRecoveryResult) {\r\n $('#cannotChangeEmailError').hide();\r\n $('#recoveryEmailError').hide();\r\n $('#inUseEmailError').hide();\r\n if (updateRecoveryResult.responseJSON.CannotChangeEmail) {\r\n $('#cannotChangeEmailError').show();\r\n }\r\n else if (updateRecoveryResult.responseJSON.EmailIsEmpty) {\r\n $('#recoveryEmailError').show();\r\n }\r\n else if (updateRecoveryResult.responseJSON.EmailIsTaken) {\r\n $('#inUseEmailError').show();\r\n }\r\n else {\r\n $(\".changeRecoveryInformation-cancel\").hide();\r\n $(\".changeRecoveryInformation-save\").hide();\r\n $(\".changeRecoveryInformation-edit\").show();\r\n $('#recoveryEmail').prop('readonly', true);\r\n $('#recoveryPhoneNumber').prop('readonly', true);\r\n }\r\n }\r\n });\r\n }\r\n });\r\n\r\n $(\".contact-checkbox\").click(function (e) {\r\n if ($(this).hasClass('account-settings-checkbox-no-click')) {\r\n e.preventDefault();\r\n return false;\r\n }\r\n else {\r\n CheckContactValidity();\r\n }\r\n });\r\n\r\n $(\".changeRecoveryInformation-edit\").click(function () {\r\n $(\".changeRecoveryInformation-cancel\").show();\r\n $(\".changeRecoveryInformation-save\").show();\r\n $(\".changeRecoveryInformation-edit\").hide();\r\n $('#recoveryEmail').prop('readonly', false);\r\n $('#recoveryPhoneNumber').prop('readonly', false);\r\n });\r\n\r\n $(\".changeRecoveryInformation-cancel\").click(function () {\r\n $(\".changeRecoveryInformation-cancel\").hide();\r\n $(\".changeRecoveryInformation-save\").hide();\r\n $(\".changeRecoveryInformation-edit\").show();\r\n $('#recoveryEmail').prop('readonly', true);\r\n $('#recoveryPhoneNumber').prop('readonly', true);\r\n });\r\n\r\n $(\".changeContactInformation-edit\").click(function () {\r\n $(\".changeContactInformation-cancel\").show();\r\n $(\".changeContactInformation-save\").show();\r\n $(\".changeContactInformation-edit\").hide();\r\n $('input[name =\"WorkEmail\"').prop('readonly', false);\r\n $('input[name =\"WorkCellPhone\"').prop('readonly', false);\r\n $('input[name =\"PersonalEmail\"').prop('readonly', false);\r\n $('input[name =\"PersonalCellPhone\"').prop('readonly', false);\r\n $('.contact-checkbox').removeClass('account-settings-checkbox-no-click');\r\n });\r\n\r\n $(\".changeContactInformation-cancel\").click(function () {\r\n $(\".changeContactInformation-cancel\").hide();\r\n $(\".changeContactInformation-save\").hide();\r\n $(\".changeContactInformation-edit\").show();\r\n $('input[name =\"WorkEmail\"').prop('readonly', true);\r\n $('input[name =\"WorkCellPhone\"').prop('readonly', true);\r\n $('input[name =\"PersonalEmail\"').prop('readonly', true);\r\n $('input[name =\"PersonalCellPhone\"').prop('readonly', true);\r\n $('.contact-checkbox').addClass('account-settings-checkbox-no-click');\r\n });\r\n\r\n $('#loginPassword').keyup(function () {\r\n validCurrentPassword = $(this).val();\r\n\r\n CheckLoginValidity();\r\n })\r\n\r\n $(\"#newPassword\").keyup(function () {\r\n var pw = $(this).val();\r\n validPasswordReentry = pw == $(\"#retypePassword\").val();\r\n var validCount = 0; //count number of valid complexity requirements\r\n if (pw.length < 8) {\r\n //not long enough, auto fail\r\n validPassword = false\r\n CheckLoginValidity();\r\n return\r\n }\r\n if (pw.match(new RegExp('[A-Z]'))) {\r\n validCount++;\r\n }\r\n if (pw.match(new RegExp('[a-z]'))) {\r\n validCount++;\r\n }\r\n if (pw.match(new RegExp('[0-9]'))) {\r\n validCount++;\r\n }\r\n if (pw.match(new RegExp('[^a-zA-Z0-9]'))) {\r\n validCount++;\r\n }\r\n if (validCount >= 3) {\r\n //password is valid\r\n validPassword = true;\r\n }\r\n CheckLoginValidity();\r\n });\r\n\r\n $(\"#retypePassword\").keyup(function () {\r\n if ($(this).val() == $(\"#newPassword\").val()) {\r\n validPasswordReentry = true;\r\n }\r\n else {\r\n validPasswordReentry = false;\r\n }\r\n CheckLoginValidity();\r\n });\r\n\r\n $(\"#recoveryEmail\").keyup(function () {\r\n validRecoveryEmail = IsEmail($(this).val());\r\n if (validRecoveryEmail) {\r\n $('#recoveryEmailError').hide();\r\n }\r\n else {\r\n $('#recoveryEmailError').show();\r\n }\r\n CheckRecoveryValidity();\r\n });\r\n $(\"#recoveryPhoneNumber\").keyup(function () {\r\n CheckRecoveryValidity();\r\n });\r\n\r\n\r\n $('input[name =\"PersonalEmail\"').change(function () {\r\n CheckContactValidity();\r\n });\r\n\r\n $('input[name =\"PersonalCellPhone\"').change(function () {\r\n CheckContactValidity();\r\n });\r\n\r\n $('input[name =\"WorkCellPhone\"').change(function () {\r\n CheckContactValidity();\r\n });\r\n\r\n $('input[name =\"WorkEmail\"').change(function () {\r\n CheckContactValidity();\r\n });\r\n\r\n function IsEmail(email) {\r\n var regex = /^([a-zA-Z0-9_\\.\\-\\+])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$/;\r\n return regex.test(email);\r\n }\r\n\r\n function CheckLoginValidity() {\r\n if (validPassword && validPasswordReentry && validCurrentPassword) {\r\n $(\".changeLoginInformation-save\").removeClass(\"account-settings-update-action-disabled\");\r\n }\r\n else {\r\n $(\".changeLoginInformation-save\").addClass(\"account-settings-update-action-disabled\");\r\n }\r\n }\r\n\r\n function CheckRecoveryValidity() {\r\n if (validRecoveryEmail && validRecoveryPhone) {\r\n $(\".changeRecoveryInformation-save\").removeClass(\"account-settings-update-action-disabled\");\r\n }\r\n else {\r\n $(\".changeRecoveryInformation-save\").addClass(\"account-settings-update-action-disabled\");\r\n }\r\n }\r\n\r\n function CheckContactValidity() {\r\n //use the partial checking logic\r\n if ($(\"#personal-email-error\").is(':empty') && $(\"#personal-phone-error\").is(':empty') && $(\"#work-email-error\").is(':empty') && $(\"#work-phone-error\").is(':empty')) {\r\n $(\".changeContactInformation-save\").removeClass(\"account-settings-update-action-disabled\");\r\n $(\".changeContactInformation-save\").removeAttr(\"disabled\", \"disabled\");\r\n }\r\n else {\r\n $(\".changeContactInformation-save\").addClass(\"account-settings-update-action-disabled\");\r\n $(\".changeContactInformation-save\").attr(\"disabled\", \"disabled\");\r\n }\r\n }\r\n\r\n var validCurrentPassword = false;\r\n var validPassword = false;\r\n var validPasswordReentry = false;\r\n var validRecoveryEmail = true;\r\n var validRecoveryPhone = true;\r\n\r\n initialized = true;\r\n }\r\n }\r\n}();","var CarouselTileJS = new function () {\r\n var initialized = false;\r\n\r\n return {\r\n Init: function () {\r\n if (initialized) {\r\n return;\r\n }\r\n\r\n initialized = true;\r\n\r\n //line-clamp doesn't work on IE so just always show the full content\r\n if (window.navigator.userAgent.indexOf(\"MSIE \") != -1 || window.navigator.userAgent.match(/Trident.*rv\\:11\\./)) {\r\n return;\r\n }\r\n\r\n $(document).ready(showMoreButtons);\r\n\r\n $(window).resize(function () {\r\n $('.dashboard-sub-card').removeClass('expandable');\r\n showMoreButtons();\r\n });\r\n\r\n function showMoreButtons() {\r\n //Hide show more button if the text is larger than 5 lines\r\n $('.dashboard-sub-text').each(function () {\r\n //Height of div\r\n var divheight = $(this).height();\r\n //Line height\r\n var lineheight = parseInt($(\".dashboard-sub-text\").css('line-height'), 10);\r\n\r\n //Show read more and clamp line if its larger than 5 lines\r\n if ((Math.round(divheight / lineheight)) > 5) {\r\n $(this).closest('.dashboard-sub-card').addClass('expandable');\r\n } else {\r\n $(this).closest('.dashboard-sub-card').removeClass('expandable');\r\n }\r\n });\r\n }\r\n\r\n function getWexCardCapacity() {\r\n if (window.innerWidth <= 770) {\r\n return 1;\r\n } else if (window.innerWidth <= 1080) {\r\n return 2;\r\n } else if (window.innerWidth <= 1380) {\r\n return 3;\r\n } else {\r\n return 4;\r\n }\r\n }\r\n\r\n function updateWexCardsDisplay() {\r\n $('.wexcard').show();\r\n $('.wexcard-display-previous').hide();\r\n\r\n if ($('.wexcard').length > wexCardCapacity) {\r\n $('.wexcard').slice(wexCardCapacity).hide();\r\n $('.dashboard-wexcards-displaying').show();\r\n } else {\r\n $('.dashboard-wexcards-displaying').hide();\r\n }\r\n\r\n $('.wexcards-first-displayed').text(firstWexCardDisplayed);\r\n $('.wexcards-last-displayed').text(firstWexCardDisplayed + wexCardCapacity - 1);\r\n\r\n if (wexCardCapacity == 1) {\r\n $('.wexcards-hyphen-displayed').hide();\r\n $('.wexcards-last-displayed').hide();\r\n } else {\r\n $('.wexcards-hyphen-displayed').show();\r\n $('.wexcards-last-displayed').show();\r\n }\r\n }\r\n\r\n //Show entire text and show \"show less\" button\r\n $(\".dashboard-sub-read\").click(function () {\r\n $(this).closest('.dashboard-sub-card').addClass('expanded');\r\n });\r\n\r\n //Truncate text and show \"show more button\"\r\n $(\".dashboard-sub-less\").click(function () {\r\n $(this).closest('.dashboard-sub-card').removeClass('expanded');\r\n });\r\n\r\n let firstWexCardDisplayed = 1;\r\n let wexCardCapacity = getWexCardCapacity();\r\n updateWexCardsDisplay();\r\n\r\n $(window).on('resize', function () {\r\n const newCapacity = getWexCardCapacity();\r\n if (newCapacity == wexCardCapacity)\r\n return;\r\n\r\n wexCardCapacity = newCapacity;\r\n firstWexCardDisplayed = 1;\r\n $('.wexcard-display-previous').hide();\r\n $('.wexcard-display-next').show();\r\n updateWexCardsDisplay();\r\n });\r\n\r\n $('.wexcard-display-previous').click(function () {\r\n const lastDisplayedCard = $('.wexcard:visible').last();\r\n const previousHiddenCard = $(lastDisplayedCard).prevAll('.wexcard:hidden').first();\r\n\r\n lastDisplayedCard.hide();\r\n previousHiddenCard.show();\r\n\r\n firstWexCardDisplayed--;\r\n $('.wexcards-first-displayed').text(firstWexCardDisplayed);\r\n $('.wexcards-last-displayed').text(firstWexCardDisplayed + wexCardCapacity - 1);\r\n\r\n $('.wexcard-display-next').show();\r\n if ($(lastDisplayedCard).prevAll('.wexcard:hidden').length === 0) {\r\n $('.wexcard-display-previous').hide();\r\n }\r\n });\r\n\r\n $('.wexcard-display-next').click(function () {\r\n const firstDisplayedCard = $('.wexcard:visible').first();\r\n const nextHiddenCard = $(firstDisplayedCard).nextAll('.wexcard:hidden').first();\r\n\r\n firstDisplayedCard.hide();\r\n nextHiddenCard.show();\r\n\r\n firstWexCardDisplayed++;\r\n $('.wexcards-first-displayed').text(firstWexCardDisplayed);\r\n $('.wexcards-last-displayed').text(firstWexCardDisplayed + wexCardCapacity - 1);\r\n\r\n $('.wexcard-display-previous').show();\r\n if ($(firstDisplayedCard).nextAll('.wexcard:hidden').length === 0) {\r\n $('.wexcard-display-next').hide();\r\n }\r\n });\r\n\r\n $('.wexcard').each(function () {\r\n var planYearCount = $(this).find('.wexcard-wrapper').length;\r\n if (planYearCount > 1) {\r\n $(this).find('.wexcard-wrapper').last().prevAll().addClass('wexcard-hidden');\r\n }\r\n })\r\n\r\n $(\".wexcard-previous\").click(function () {\r\n $(this).closest('.wexcard-wrapper').addClass('wexcard-hidden');\r\n $(this).closest('.wexcard-hidden').prev().removeClass('wexcard-hidden');\r\n });\r\n\r\n $(\".wexcard-next\").click(function () {\r\n $(this).closest('.wexcard-wrapper').addClass('wexcard-hidden');\r\n $(this).closest('.wexcard-wrapper').next().removeClass('wexcard-hidden');\r\n });\r\n }\r\n }\r\n}();"]}