{"version":3,"file":"sm.portal.page.documentChecklist.min.js","names":["viewModel","sm","portal","vm","DocumentListViewModel","AdmissionsAttemptGID","windowURL","window","URL","currentLoaded","$","extend","page","documentChecklist","this","AttachMakePaymentOnPaymentInformation","on","MakePayment","ShowBackgroundProcessingInformation","message","utility","getResourceValue","newMessage","custom","callCustomization","isNullOrEmpty","header","messageFoundIndex","Messages","indexOf","messageFound","IsBackgroundProcessing","push","splice","showMessage","length","ShowMessages","Header","ShowBackgroundProcessingErrors","ErrorMessages","IsBackgroundProcessingError","IsError","ErrorHeader","ApplicationFee","blockUI","ajax","url","_baseApiUri","type","dataType","contentType","headers","processData","crossDomain","async","xhrFields","withCredentials","success","data","paymentSubmit","amount","paymentLocation","Payload","RedirectPaymentPageURL","currencyCode","TransactionCurrency","admissionsAttemptGID","AdmissionsAttemptGid","i","TransactionAmount","formatString","JSON","stringify","IsPaymentProviderEnabled","wrap","appendTo","closest","submit","unblockUI","error","jqXHR","exception","HandleError","initPage","when","loadCustomTemplate","loadTemplate","done","LoadInitialData","TemplatesLoaded","PageReady","ko","applyBindings","setChange","element","valueAccessor","change","file","files","fileName","name","val","id","validationMsg","isValidFileType","parents","addClass","each","find","insertAfter","isObservable","doUpdate","allBindingsAccessor","currentModel","bindingContext","utils","unwrapObservable","uploadID","ui","clearUpload","loadingIndicator","remove","FormData","append","documentID","model","TranscriptDocumentID","attemptID","subitemId","entityId","CollegeID","ID","HighSchoolID","subitemid","addmissionOfferId","stageName","StageBusinessMeaning","AdmissionsOfferID","encodeURIComponent","updateElement","elementID","document","getElementById","cleanNode","tmpViewModel","UpdateListViewModel","ThumbnailUrl","thumbnailUrl","DownloadUrl","downloadUrl","updateUrls","container","smapi","access","ApiContainerModel","Status","ValidationTitle","ValidationMessages","LoadModel","readyPage","successIndicator","textStatus","errorThrown","selecDoc","DocumentName","observable","Document","doApplicationUpdate","changeRecord","recordID","doGet","ifallTransactionArePaid","every","Paid","IsPaid","status","click","title","body","jQuery","bind"],"sources":["assets/js/pages/sm.portal.page.documentChecklist.js"],"mappings":"AAGA,IAAIA,UAAY,IAAIC,GAAGC,OAAOC,GAAGC,sBAC7BC,qBAAuB,GACvBC,UAAYC,OAAOC,IACnBC,cAAgB,GAIpB,SAAWC,GACP,IAAIT,EAAKM,OAAON,GAAKM,OAAON,IAAM,CAAC,OAEV,IAAdA,EAAGC,QACVQ,EAAEC,OAAOV,EAAI,CAAEC,OAAQ,CAAC,SAEE,IAAnBD,EAAGC,OAAOU,MACjBF,EAAEC,OAAOV,EAAGC,OAAQ,CAAEU,KAAM,CAAC,SAEe,IAArCX,EAAGC,OAAOU,KAAKC,mBACtBH,EAAEC,OAAOV,EAAGC,OAAOU,KAAM,CAAEC,kBAAmB,CAAC,IA8QnDC,KAAKC,sCAAwC,WACzCL,EAAE,+BAA+BM,GAAG,SAAS,WACzCC,aACJ,GACJ,EAEAH,KAAKI,oCAAsC,WACvC,IAAIC,EAAUlB,EAAGC,OAAOkB,QAAQC,iBAAiB,kCAC7CC,EAAcrB,EAAGC,OAAOC,GAAGoB,OAAOC,kBAAkB,mBACpDvB,EAAGC,OAAOkB,QAAQK,cAAcH,KAChCH,EAAWG,GAEf,IAAII,EAASzB,EAAGC,OAAOkB,QAAQC,iBAAiB,eAE5CM,EAAoB3B,UAAU4B,SAASC,QAAQV,GAC/CW,GAAsC,IAAvBH,EACf3B,UAAU+B,yBACLD,GACD9B,UAAU4B,SAASI,KAAKb,GAGxBW,GACA9B,UAAU4B,SAASK,OAAON,EAAmB,GAGrD,IAAIO,EAAclC,UAAU4B,WAAWO,OAAS,EAChDnC,UAAUoC,aAAaF,GACvBlC,UAAUqC,OAAOX,EACrB,EAEAZ,KAAKwB,+BAAiC,WAClC,IAAInB,EAAUlB,EAAGC,OAAOkB,QAAQC,iBAAiB,uCAC7CK,EAASzB,EAAGC,OAAOkB,QAAQC,iBAAiB,SAE5CM,EAAoB3B,UAAUuC,cAAcV,QAAQV,GACpDW,GAAsC,IAAvBH,EACf3B,UAAUwC,+BACLV,GACD9B,UAAUuC,cAAcP,KAAKb,GAEjCnB,UAAUyC,SAAQ,GAClBzC,UAAU0C,YAAYhB,KAGlBI,GACA9B,UAAUuC,cAAcN,OAAON,EAAmB,GAEtD3B,UAAUyC,SAAQ,GAE1B,EAEA3B,KAAKG,YAAc,WAEXjB,UAAU2C,iBAAiBR,OAAS,IAGxCzB,EAAEkC,UACFlC,EAAEmC,KAAK,CACHC,IAAKC,YAAc,kDACnBC,KAAM,MACNC,SAAU,OACVC,YAAa,kCACbC,QAAS,CACL,gBAAiB,KAErBC,aAAa,EACbC,aAAa,EACbC,OAAO,EACPC,UAAW,CACPC,iBAAiB,GAErBC,QAAS,SAAUC,GACf,IAAIC,EAAgB,CAAEC,OAAU,EAAGC,gBAAmBH,EAAKI,QAAQC,uBAAwBC,aAAgBhE,UAAU2C,iBAAiB,GAAGsB,oBAAqBC,qBAAwBlE,UAAUmE,wBAChMlE,EAAGC,OAAOC,GAAGoB,OAAOC,kBAAkB,wBAAwBmC,GAC9D,IAAK,IAAIS,EAAI,EAAGA,EAAIpE,UAAU2C,iBAAiBR,OAAQiC,IAC/CpE,UAAU2C,iBAAiByB,GAAGH,qBAAuBN,EAA4B,eACjFA,EAAsB,QAAK3D,UAAU2C,iBAAiByB,GAAGC,mBAIjE,IAAIvB,EAAMC,YAAc9C,EAAGC,OAAOkB,QAAQkD,aAAa,6CACvD5D,EAAEmC,KAAK,CACHC,IAAKA,EACLE,KAAM,OACNC,SAAU,OACVS,KAAMa,KAAKC,UAAUb,GACrBT,YAAa,kCACbC,QAAS,CACL,gBAAiB,KAErBC,aAAa,EACbC,aAAa,EACbC,OAAO,EACPC,UAAW,CACPC,iBAAiB,GAErBC,QAAS,SAAUC,GACXA,EAAKvB,OAAS,GAAKuB,GACnB1D,UAAUyE,yBAAyBf,GACnChD,EAAE,yBAAyBgE,KAAKhB,GAChChD,EAAE,yBAAyBiE,SAASjE,EAAE,yBAAyBkE,QAAQ,SACvElE,EAAE,yBAAyBmE,UAE3BnE,EAAEoE,WAEV,EACAC,MAAO,SAAUC,EAAOC,GACpBjF,UAAUkF,YAAYD,GACtBvE,EAAEoE,WACN,GAER,IAER,EAEApE,EAAEC,QAAO,EAAMV,EAAGC,OAAOU,KAAKC,kBAAmB,CAC7CsE,SA/XJ,WACInF,UAAY,IAAIC,EAAGC,OAAOC,GAAGC,sBAC7BM,EAAE0E,KACEnF,EAAGC,OAAOC,GAAGoB,OAAO8D,qBACpBpF,EAAGC,OAAOkB,QAAQkE,aAAa,0BAA2B,uBAC1DrF,EAAGC,OAAOkB,QAAQkE,aAAa,6BAA8B,iBAC7DrF,EAAGC,OAAOkB,QAAQkE,aAAa,mCAAoC,qCACnErF,EAAGC,OAAOkB,QAAQkE,aAAa,oCAAqC,qCACpErF,EAAGC,OAAOkB,QAAQkE,aAAa,+BAAgC,iBAC/DrF,EAAGC,OAAOkB,QAAQkE,aAAa,4BAA6B,iBAC5DrF,EAAGC,OAAOkB,QAAQkE,aAAa,mCAAoC,kBACrEC,MAAK,WACHvF,UAAUwF,kBACVxF,UAAUyF,iBAAgB,GAC1BzF,UAAU0F,WACd,IAGAC,GAAGC,cAAc5F,UACrB,EA6WI6F,UA3WJ,SAAmBC,EAASC,GACxBrF,EAAEoF,GAASE,QAAO,WACd,IAAIC,EAAOnF,KAAKoF,MAAM,GAClBC,EAAWF,EAAKG,KACL1F,EAAE,oBACR2F,IAAIvF,KAAKwF,IAClB,IAAIC,EAAgBtG,EAAGC,OAAOkB,QAAQC,iBAAiB,oCAEvD,IAAKpB,EAAGC,OAAOkB,QAAQoF,gBAAgBL,GAQnC,OAPAzF,EAAEoF,GAASW,QAAQ,kBAAkBC,SAAS,iBAC9ChG,EAAEoF,GAASW,QAAQ,kBAAkBE,MAAK,WAClCjG,EAAEoF,GAASW,QAAQ,kBAAkBG,KAAK,aAAazE,QAAU,GACjEzB,EAAE,wCAA0C6F,EAAgB,UAAUM,YAAYnG,EAAEI,MAAM8F,KAAK,eAGvG,KACO,EAGPjB,GAAGmB,aAAaf,MAChBA,IAAgBE,EAExB,GACJ,EAqVIc,SAnVJ,SAAkBjB,EAASC,EAAeiB,EAAqBC,EAAcC,GAEzE,IAAIjB,EAAON,GAAGwB,MAAMC,iBAAiBrB,KAGjCsB,GAFWL,IACOtG,EAAE,4BACTA,EAAE,qBAIjB,GAFAT,EAAGC,OAAOoH,GAAGC,YAAYzB,GAErBG,GAA2B,KAAnBoB,EAAShB,OAAgBgB,EAAShB,QAAUP,EAAQQ,GAAI,CAChErG,EAAGC,OAAOoH,GAAGE,iBAAiB1B,GAE9BpF,EAAEI,MAAM8F,KAAK,aAAaa,SAG1B,IAAI/D,EAAO,IAAIgE,SACfhE,EAAKiE,OAAO,eAAgB1B,GAG5B,IAAI2B,EAAa,EAC+B,cAA5CX,EAAaY,MAAMC,uBACnBF,EAAaX,EAAaY,MAAMC,sBAIpC,IAAIC,EACJA,EAAYrH,EAAE,uBAAuB2F,MAGrC,IAAI2B,EAAY,EACZC,EAAW,EACf,OAAQnC,EAAQM,MACZ,IAAK,oBACD4B,EAAYf,EAAaY,MAAMK,UAC/BD,EAAWhB,EAAaY,MAAMM,GAC9B,MACJ,IAAK,uBACDH,EAAYf,EAAaY,MAAMO,aAC/BH,EAAWhB,EAAaY,MAAMM,GAC9B,MACJ,QACIE,UAAY,EACZT,EAAaX,EAAaY,MAAMM,GAKxC,IAAIG,EAAoB,EACpBxF,EAAM,GACVyF,UAAYtB,EAAaY,MAAMW,qBACb,gCAAdD,WACAD,EAAoBrB,EAAaY,MAAMY,kBACvC3F,EAAMC,YAAc,oDAAsD6E,EAApE7E,kDAA+IgF,EAAY,cAAgBC,EAAY,aAAeC,EAAW,cAAgBS,mBAAmBH,WAAa,sBAAwBD,GAE/RxF,EAAMC,YAAc,oDAAsD6E,EAAa,cAAgB9B,EAAQM,KAAO,cAAgB2B,EAAY,cAAgBC,EAAY,aAAeC,EAAW,cAAgBS,mBAAmBH,WAG/O7H,EAAEmC,KAAK,CACHG,KAAM,OACNF,IAAKA,EACLI,aAAa,EACbE,aAAa,EACbC,aAAa,EACbK,KAAMA,EACNP,QAAS,CACL,gBAAiB,KAErBI,UAAW,CACPC,iBAAiB,GAErBC,QAAS,SAAUC,IAwB3B,SAAoBA,GAChB,IAAIiF,EAAgBjF,EAAKI,QAAQ8E,UAAY,WAG7C,GAA8C,MAA1CC,SAASC,eAAeH,GAAwB,CAChDhD,GAAGoD,UAAUF,SAASC,eAAeH,IAErC,IAAIK,EAAe,IAAIC,EACvBD,EAAaE,aAAaxF,EAAKI,QAAQqF,cACvCH,EAAaI,YAAY1F,EAAKI,QAAQuF,aACtCL,EAAab,GAAKzE,EAAKI,QAAQ8E,UAE/BjD,GAAGC,cAAcoD,EAAcH,SAASC,eAAeH,GAC3D,CACJ,CArCYW,CAAW5F,GAGXhD,EAAE,oBAAoB2F,IAAI,IAE1B,IAAIkD,EAAY,IAAIC,MAAMC,OAAOC,kBAAkBhG,EAAKiG,OAAQjG,EAAKI,QAASJ,EAAKkG,gBAAiBlG,EAAKmG,oBACzG7J,UAAU8J,UAAUP,GAEpBtJ,EAAGC,OAAOoH,GAAGyC,YACb9J,EAAGC,OAAOoH,GAAGC,YAAYzB,GACzB7F,EAAGC,OAAOoH,GAAG0C,iBAAiBlE,EAASpC,EAC3C,EACAqB,MAAO,SAAUC,EAAOiF,EAAYC,GAChClK,UAAUkF,YAAYD,UAC1B,GAER,CAGA,GAAIjF,UAAUmK,WAAalD,EAAaY,MAAMuC,aAC1C,OAAO,EAmBX,SAASnB,IACLnI,KAAKoI,aAAevD,GAAG0E,aACvBvJ,KAAKsI,YAAczD,GAAG0E,aACtBvJ,KAAKwJ,SAAW3E,GAAG0E,YACvB,CAEJ,EAgOIE,oBA9NJ,WAEI,IAAIxC,EAAYrH,EAAE,uBAAuB2F,MACzC,IAAKpG,EAAGC,OAAOkB,QAAQK,cAAcsG,GAAY,CAC7C,IAAIjF,EAAMC,YAAc,sDAAwDgF,EAEhFrH,EAAEmC,KAAK,CACHG,KAAM,MACNF,IAAKA,EACLI,aAAa,EACbE,aAAa,EACbC,aAAa,EACbF,QAAS,CACL,gBAAiB,KAErBI,UAAW,CACPC,iBAAiB,GAErBC,QAAS,SAAUC,GACnB,EACAqB,MAAO,SAAUC,EAAOiF,EAAYC,GAChClK,UAAUkF,YAAYD,UAC1B,GAER,CACJ,EAsMIuF,aApMJ,WACI,IAAIC,EAAW/J,EAAE,uBAAuB2F,MAGxC,GAFA5F,cAAgBR,EAAGC,OAAOC,GAAGoB,OAAOC,kBAAkB,qBAAqBiJ,GA9MnF,MAgNYA,GAAyBA,EAAW,GAAKA,GAAYhK,cAAe,CACpEA,cAAgBgK,EAChB,IAAI3H,EAAMC,gEAAyE0H,EAEnFxK,EAAGC,OAAOU,KAAKC,kBAAkB6J,MAAM5H,EAC3C,CACJ,EA2LI4H,MAzLJ,SAAe5H,GACXpC,EAAEkC,UAEFlC,EAAEmC,KAAK,CACHC,IAAKA,EACLE,KAAM,MACNC,SAAU,OACVC,YAAa,kCACbC,QAAS,CACL,gBAAiB,KAErBC,aAAa,EACbC,aAAa,EAEbE,UAAW,CACPC,iBAAiB,GAErBC,QAAS,SAAUC,EAAMuG,EAAYjF,GACjC,IAAIuE,EAAY,IAAIC,MAAMC,OAAOC,kBAAkBhG,EAAKiG,OAAQjG,EAAKI,QAASJ,EAAKkG,gBAAiBlG,EAAKmG,oBACzG,GAAmB,WAAfnG,EAAKiG,OAAqB,CAE1B3J,UAAUyC,SAAQ,GAClBzC,UAAU8J,UAAUP,GAEpB,IAAIoB,EAA0BpB,EAAUzF,QAAQnB,eAAeiI,OAAM,SAAU9E,GAC3E,OAAOA,EAAQ+E,IACnB,IACA7K,UAAU8K,OAAOH,GACjB5J,wCACAG,sCACAoB,gCAEJ,MAA0B,mBAAfoB,EAAKiG,QAKU,SAAfjG,EAAKiG,SAHZ3J,UAAUkF,YAAYqE,EAAUK,gBAAiBL,EAAUM,oBAQ/DnJ,EAAEoE,YACF7E,EAAGC,OAAOoH,GAAGyC,WACjB,EACAhF,MAAO,SAAUC,EAAOC,GAEpB,GAAoB,KAAhBD,EAAM+F,OAAe,CACrB9K,EAAGC,OAAOC,GAAGoB,OAAOC,kBAAkB,cAAc,MAAK,WACrDd,EAAE,yBAAyBsK,OAC/B,IAEA,IAAIC,EAAQhL,EAAGC,OAAOkB,QAAQC,iBAAiB,gBAC3C6J,EAAOjL,EAAGC,OAAOkB,QAAQC,iBAAiB,2BAC9CrB,UAAUkF,YAAY+F,EAAO,CAACC,GAClC,MACIlL,UAAUkF,YAAYD,GAE1BvE,EAAEoE,WACN,GAGR,GA8HH,CApZD,CAoZGqG,QAWAA,OAJGtC,UAAUuC,KAAK,mBAAmB,WAChCnL,GAAGC,OAAOU,KAAKC,kBAAkBsE,UACrC","ignoreList":[],"sourcesContent":["/************************************************/\r\n/* Variables */\r\n/************************************************/\r\nvar viewModel = new sm.portal.vm.DocumentListViewModel();\r\nvar AdmissionsAttemptGID = '';\r\nvar windowURL = window.URL;\r\nvar currentLoaded = 0;\r\n/************************************************/\r\n/* Page Object */\r\n/************************************************/\r\n(function ($, undefined) {\r\n var sm = window.sm = window.sm || {};\r\n\r\n if (typeof sm.portal === \"undefined\") {\r\n $.extend(sm, { portal: {} });\r\n }\r\n if (typeof sm.portal.page === \"undefined\") {\r\n $.extend(sm.portal, { page: {} });\r\n }\r\n if (typeof sm.portal.page.documentChecklist === \"undefined\") {\r\n $.extend(sm.portal.page, { documentChecklist: {} });\r\n }\r\n\r\n function initPage() {\r\n viewModel = new sm.portal.vm.DocumentListViewModel();\r\n $.when(\r\n sm.portal.vm.custom.loadCustomTemplate(),\r\n sm.portal.utility.loadTemplate('ValidationFieldTemplate', 'validationTemplates'),\r\n sm.portal.utility.loadTemplate('TermsAndConditionsTemplate', 'formTemplates'),\r\n sm.portal.utility.loadTemplate('PortalValidationMessagesTemplate', 'portalValidationMessagesTemplates'),\r\n sm.portal.utility.loadTemplate('PortalInformationMessagesTemplate', 'portalInformationMessagesTemplate'),\r\n sm.portal.utility.loadTemplate('UploadHighSchoolFileTemplate', 'formTemplates'),\r\n sm.portal.utility.loadTemplate('UploadCollegeFileTemplate', 'formTemplates'),\r\n sm.portal.utility.loadTemplate('UploadAdmissionsDocumentTemplate', 'formTemplates'), \r\n ).done(function () {\r\n viewModel.LoadInitialData();\r\n viewModel.TemplatesLoaded(true);\r\n viewModel.PageReady();\r\n });\r\n\r\n // Bind to Page Elements\r\n ko.applyBindings(viewModel);\r\n }\r\n\r\n function setChange(element, valueAccessor) {\r\n $(element).change(function () {\r\n var file = this.files[0];\r\n var fileName = file.name;\r\n var uploadID = $(\"#CurrentUploadID\");\r\n uploadID.val(this.id);\r\n var validationMsg = sm.portal.utility.getResourceValue('ValidationMsgForFileFilterUpload');\r\n\r\n if (!sm.portal.utility.isValidFileType(fileName)) {\r\n $(element).parents('.uploadControl').addClass('fileTypeError');\r\n $(element).parents('.fileTypeError').each(function () {\r\n if ($(element).parents('.fileTypeError').find('.errorMsg').length <= 0) {\r\n $('
' + validationMsg + '
').insertAfter($(this).find('.uploadArea'));\r\n }\r\n\r\n });\r\n return false;\r\n }\r\n\r\n if (ko.isObservable(valueAccessor())) {\r\n valueAccessor()(file);\r\n }\r\n });\r\n }\r\n\r\n function doUpdate(element, valueAccessor, allBindingsAccessor, currentModel, bindingContext) {\r\n\r\n var file = ko.utils.unwrapObservable(valueAccessor());\r\n var bindings = allBindingsAccessor();\r\n var activeIndicator = $(\".loadingIndicator.active\");\r\n var uploadID = $(\"#CurrentUploadID\");\r\n\r\n sm.portal.ui.clearUpload(element);\r\n\r\n if (file && uploadID.val() !== \"\" && uploadID.val() === element.id) {\r\n sm.portal.ui.loadingIndicator(element);\r\n\r\n $(this).find('.errorMsg').remove();\r\n\r\n //post the file\r\n var data = new FormData();\r\n data.append(\"UploadedFile\", file);\r\n\r\n // Set the document ID\r\n var documentID = 0;\r\n if (currentModel.model.TranscriptDocumentID !== \"undefined\") {\r\n documentID = currentModel.model.TranscriptDocumentID;\r\n }\r\n\r\n // Set the Attempt ID \r\n var attemptID = 0;\r\n attemptID = $(\"#AdmissionsRecordID\").val();\r\n\r\n // Set the Entity ID (HighSchool ID in the case of HS, College ID in the case of College, etc)\r\n var subitemId = 0;\r\n var entityId = 0;\r\n switch (element.name) {\r\n case \"uploadCollegeFile\":\r\n subitemId = currentModel.model.CollegeID;\r\n entityId = currentModel.model.ID;\r\n break;\r\n case \"uploadHighschoolFile\":\r\n subitemId = currentModel.model.HighSchoolID;\r\n entityId = currentModel.model.ID;\r\n break;\r\n default:\r\n subitemid = 0;\r\n documentID = currentModel.model.ID;\r\n break;\r\n }\r\n\r\n // Set the Stage Name\r\n var addmissionOfferId = 0;\r\n var url = '';\r\n stageName = currentModel.model.StageBusinessMeaning;\r\n if (stageName === \"Application.AdmissionsOffer\") {\r\n addmissionOfferId = currentModel.model.AdmissionsOfferID;\r\n url = _baseApiUri + \"api/studentdocumentchecklist/savefile?documentID=\" + documentID + \"&elementID=\" + 'uploadAdmissionsOfferForm' + \"&attemptID=\" + attemptID + \"&subitemID=\" + subitemId + \"&entityId=\" + entityId + \"&stagename=\" + encodeURIComponent(stageName) + \"&admissionsOfferID=\" + addmissionOfferId;\r\n } else {\r\n url = _baseApiUri + \"api/studentdocumentchecklist/savefile?documentID=\" + documentID + \"&elementID=\" + element.name + \"&attemptID=\" + attemptID + \"&subitemID=\" + subitemId + \"&entityId=\" + entityId + \"&stagename=\" + encodeURIComponent(stageName);\r\n }\r\n\r\n $.ajax({\r\n type: \"POST\",\r\n url: url,\r\n contentType: false,\r\n processData: false,\r\n crossDomain: true,\r\n data: data,\r\n headers: {\r\n \"x-api-version\": '1' //,\r\n },\r\n xhrFields: {\r\n withCredentials: true\r\n },\r\n success: function (data) {\r\n updateUrls(data);\r\n\r\n //reset the upload ID so we don't call this again when the file is updated during LoadModel\r\n $(\"#CurrentUploadID\").val(\"\")\r\n\r\n var container = new smapi.access.ApiContainerModel(data.Status, data.Payload, data.ValidationTitle, data.ValidationMessages);\r\n viewModel.LoadModel(container);\r\n\r\n sm.portal.ui.readyPage();\r\n sm.portal.ui.clearUpload(element);\r\n sm.portal.ui.successIndicator(element, data);\r\n },\r\n error: function (jqXHR, textStatus, errorThrown) {\r\n viewModel.HandleError(exception);\r\n }\r\n });\r\n }\r\n\r\n\r\n if (viewModel.selecDoc !== currentModel.model.DocumentName) {\r\n return false;\r\n }\r\n\r\n function updateUrls(data) {\r\n var updateElement = data.Payload.elementID + \"Download\";\r\n\r\n // Rebind the newly added DOM elements\r\n if (document.getElementById(updateElement) != null) {\r\n ko.cleanNode(document.getElementById(updateElement));\r\n\r\n var tmpViewModel = new UpdateListViewModel();\r\n tmpViewModel.ThumbnailUrl(data.Payload.thumbnailUrl);\r\n tmpViewModel.DownloadUrl(data.Payload.downloadUrl);\r\n tmpViewModel.ID = data.Payload.elementID;\r\n\r\n ko.applyBindings(tmpViewModel, document.getElementById(updateElement));\r\n }\r\n }\r\n\r\n function UpdateListViewModel() {\r\n this.ThumbnailUrl = ko.observable();\r\n this.DownloadUrl = ko.observable();\r\n this.Document = ko.observable();\r\n }\r\n\r\n };\r\n\r\n function doApplicationUpdate() {\r\n\r\n var attemptID = $(\"#AdmissionsRecordID\").val();\r\n if (!sm.portal.utility.isNullOrEmpty(attemptID)) {\r\n var url = _baseApiUri + \"api/studentdocumentchecklist/updateStage?attemptID=\" + attemptID;\r\n\r\n $.ajax({\r\n type: \"GET\",\r\n url: url,\r\n contentType: false,\r\n processData: false,\r\n crossDomain: true,\r\n headers: {\r\n \"x-api-version\": '1' //,\r\n },\r\n xhrFields: {\r\n withCredentials: true\r\n },\r\n success: function (data) {\r\n },\r\n error: function (jqXHR, textStatus, errorThrown) {\r\n viewModel.HandleError(exception);\r\n }\r\n });\r\n }\r\n }\r\n\r\n function changeRecord() {\r\n var recordID = $('#AdmissionsRecordID').val();\r\n currentLoaded = sm.portal.vm.custom.callCustomization('ChangeRecordCustom',recordID)\r\n\r\n if (recordID != undefined && recordID > 0 && recordID != currentLoaded) {\r\n currentLoaded = recordID;\r\n var url = _baseApiUri + 'api/studentdocumentchecklist/get/?gid=0' + '&recordid=' + recordID;\r\n\r\n sm.portal.page.documentChecklist.doGet(url);\r\n }\r\n }\r\n\r\n function doGet(url) {\r\n $.blockUI();\r\n\r\n $.ajax({\r\n url: url,\r\n type: 'GET',\r\n dataType: 'json',\r\n contentType: 'application/json; charset=utf-8',\r\n headers: {\r\n \"x-api-version\": '1' //,\r\n },\r\n processData: false,\r\n crossDomain: true,\r\n\r\n xhrFields: {\r\n withCredentials: true\r\n },\r\n success: function (data, textStatus, jqXHR) {\r\n var container = new smapi.access.ApiContainerModel(data.Status, data.Payload, data.ValidationTitle, data.ValidationMessages);\r\n if (data.Status == 'success') {\r\n\r\n viewModel.IsError(false);\r\n viewModel.LoadModel(container);\r\n\r\n var ifallTransactionArePaid = container.Payload.ApplicationFee.every(function (element) {\r\n return element.Paid;\r\n });\r\n viewModel.IsPaid(ifallTransactionArePaid);\r\n AttachMakePaymentOnPaymentInformation();\r\n ShowBackgroundProcessingInformation();\r\n ShowBackgroundProcessingErrors();\r\n\r\n } else if (data.Status == 'validationerror') {\r\n\r\n viewModel.HandleError(container.ValidationTitle, container.ValidationMessages);\r\n // TODO: Identify and highlight the associated fields (if possible)\r\n\r\n } else if (data.Status == 'error') {\r\n\r\n viewModel.HandleError(container.ValidationTitle, container.ValidationMessages);\r\n }\r\n\r\n $.unblockUI();\r\n sm.portal.ui.readyPage();\r\n },\r\n error: function (jqXHR, exception) {\r\n\r\n if (jqXHR.status == 401) {\r\n sm.portal.vm.custom.callCustomization('doGetCustom',null,function(){\r\n $('.smHeaderLogin button').click();\r\n })\r\n \r\n var title = sm.portal.utility.getResourceValue('UnAuthorized');\r\n var body = sm.portal.utility.getResourceValue('NotAuthorizedToViewPage');\r\n viewModel.HandleError(title, [body]);\r\n } else {\r\n viewModel.HandleError(exception);\r\n }\r\n $.unblockUI();\r\n }\r\n });\r\n\r\n };\r\n\r\n this.AttachMakePaymentOnPaymentInformation = function () {\r\n $('button[data-payment-button]').on('click', function () {\r\n MakePayment();\r\n });\r\n };\r\n\r\n this.ShowBackgroundProcessingInformation = function () {\r\n var message = sm.portal.utility.getResourceValue('AdmissionsBackgroundProcessing');\r\n var newMessage = sm.portal.vm.custom.callCustomization('ShowInfoMessage');\r\n if(!sm.portal.utility.isNullOrEmpty(newMessage)){\r\n message = newMessage ;\r\n }\r\n var header = sm.portal.utility.getResourceValue('Information');\r\n\r\n var messageFoundIndex = viewModel.Messages.indexOf(message);\r\n var messageFound = messageFoundIndex !== -1;\r\n if (viewModel.IsBackgroundProcessing()) {\r\n if (!messageFound)\r\n viewModel.Messages.push(message);\r\n }\r\n else {\r\n if (messageFound)\r\n viewModel.Messages.splice(messageFoundIndex, 1);\r\n }\r\n\r\n var showMessage = viewModel.Messages().length > 0\r\n viewModel.ShowMessages(showMessage);\r\n viewModel.Header(header);\r\n };\r\n\r\n this.ShowBackgroundProcessingErrors = function () {\r\n var message = sm.portal.utility.getResourceValue('AdmissionsBackgroundProcessingError');\r\n var header = sm.portal.utility.getResourceValue('Error');\r\n\r\n var messageFoundIndex = viewModel.ErrorMessages.indexOf(message);\r\n var messageFound = messageFoundIndex !== -1;\r\n if (viewModel.IsBackgroundProcessingError()) {\r\n if (!messageFound)\r\n viewModel.ErrorMessages.push(message);\r\n\r\n viewModel.IsError(true);\r\n viewModel.ErrorHeader(header);\r\n }\r\n else {\r\n if (messageFound)\r\n viewModel.ErrorMessages.splice(messageFoundIndex, 1);\r\n\r\n viewModel.IsError(false);\r\n }\r\n };\r\n\r\n this.MakePayment = function () {\r\n\r\n if (viewModel.ApplicationFee().length < 1) {\r\n return;\r\n }\r\n $.blockUI();\r\n $.ajax({\r\n url: _baseApiUri + 'api/Reenrollment/PaymentConfirmationRedirectURL',\r\n type: 'GET',\r\n dataType: 'json',\r\n contentType: 'application/json; charset=utf-8',\r\n headers: {\r\n \"x-api-version\": '1'\r\n },\r\n processData: false,\r\n crossDomain: true,\r\n async: false,\r\n xhrFields: {\r\n withCredentials: true\r\n },\r\n success: function (data) {\r\n var paymentSubmit = { \"amount\": 0, \"paymentLocation\": data.Payload.RedirectPaymentPageURL, \"currencyCode\": viewModel.ApplicationFee()[0].TransactionCurrency, \"admissionsAttemptGID\": viewModel.AdmissionsAttemptGid() };\r\n sm.portal.vm.custom.callCustomization('PaymentLocationCustom',paymentSubmit)\r\n for (var i = 0; i < viewModel.ApplicationFee().length; i++) {\r\n if (viewModel.ApplicationFee()[i].TransactionCurrency == paymentSubmit['currencyCode']) {\r\n paymentSubmit['amount'] += viewModel.ApplicationFee()[i].TransactionAmount;\r\n }\r\n }\r\n\r\n var url = _baseApiUri + sm.portal.utility.formatString('api/portalstudentledger/CreatePaymentForm');\r\n $.ajax({\r\n url: url,\r\n type: 'POST',\r\n dataType: 'json',\r\n data: JSON.stringify(paymentSubmit),\r\n contentType: 'application/json; charset=utf-8',\r\n headers: {\r\n \"x-api-version\": '1'\r\n },\r\n processData: false,\r\n crossDomain: true,\r\n async: false,\r\n xhrFields: {\r\n withCredentials: true\r\n },\r\n success: function (data) {\r\n if (data.length > 0 && data) {\r\n viewModel.IsPaymentProviderEnabled(data);\r\n $(\"[data-payment-button]\").wrap(data);\r\n $(\"[data-payment-button]\").appendTo($(\"[data-payment-button]\").closest('form'));\r\n $(\"[data-payment-button]\").submit();\r\n } else {\r\n $.unblockUI();\r\n }\r\n },\r\n error: function (jqXHR, exception) {\r\n viewModel.HandleError(exception);\r\n $.unblockUI();\r\n }\r\n });\r\n }\r\n });\r\n };\r\n\r\n $.extend(true, sm.portal.page.documentChecklist, {\r\n initPage: initPage,\r\n setChange: setChange,\r\n doUpdate: doUpdate,\r\n doApplicationUpdate: doApplicationUpdate,\r\n changeRecord: changeRecord,\r\n doGet: doGet\r\n });\r\n\r\n})(jQuery);\r\n\r\n/************************************************/\r\n/* Event Hooks */\r\n/************************************************/\r\n(function ($) {\r\n\r\n $(document).bind('afterSMInitPage', function () {\r\n sm.portal.page.documentChecklist.initPage();\r\n });\r\n\r\n})(jQuery);\r\n\r\n"]}