{"version":3,"sources":["source/extscripts.js","source/Global/CHSI.Root.js","source/Templates/SuperClaimsFilter.hbs.js","source/Templates/Template_DistributionList.hbs.js","source/Templates/Template_FileIntegrity.hbs.js","source/Templates/Template_ScheduleOverview.hbs.js","source/Templates/Template_Subsidy_CurrentSubsidyInformation.hbs.js","source/Templates/Template_SuperClaimsResults.hbs.js","source/Global/CHSI/AdvancedSearch.js","source/Global/CHSI/CHSI.Arrays.js","source/Global/CHSI/CHSI.Common.js","source/Global/CHSI/CHSI.DateFunctions.js","source/Global/CHSI/CHSI.Dates.js","source/Global/CHSI/CHSI.DOM.js","source/Global/CHSI/CHSI.DOM.Modal.js","source/Global/CHSI/CHSI.Enums.js","source/Global/CHSI/CHSI.GUI.js","source/Global/CHSI/CHSI.HandleBars.js","source/Global/CHSI/CHSI.Help.js","source/Global/CHSI/CHSI.Math.js","source/Global/CHSI/CHSI.MuniUW.js","source/Global/CHSI/CHSI.NumberFunctions.js","source/Global/CHSI/CHSI.Scripting.js","source/Global/CHSI/CHSI.StringFunctions.js","source/Global/CHSI/CHSI.SystemNotification.js","source/Global/CHSI/CHSI.UI.js","source/Global/CHSI/CHSI.UI.ValuePicker.js","source/Global/CHSI/CHSI.Validation.js","source/Global/Claims/CHSI.Claims.js","source/Global/Claims/ClaimsSearch.js","source/Global/Claims/Notification.js","source/Global/CM/AttachmentsTreeModule.js","source/Global/CM/FileUpload.js","source/Global/Common/LazyViewer.js","source/Global/CRM/CHSI.CRM.js","source/Global/CRM/ProducerUser.js","source/Global/Forms/CHSI.Forms.js","source/Global/Page/BrokerQuoteEditor.js","source/Global/Page/BrokerQuoteSubmissions.js","source/Global/Page/CHSI.Page.ClaimChartOverview.js","source/Global/Page/CHSI.Page.ClaimSearch.js","source/Global/Page/CHSI.Page.CurrentSubsidyInformation.js","source/Global/Page/CHSI.Page.IncidentSearch.js","source/Global/Page/CHSI.Page.LossSummary.js","source/Global/Page/CHSI.Page.Subsidy.js","source/Global/Que/DataStructure.js","source/Global/Que/DataStructureCategories.js","source/Global/Que/DataStructureEditor.js","source/Global/Que/DataStructureFields.js","source/Global/Que/DataStructureSubCategories.js","source/Global/Security/EnvironmentVariable.js","source/Global/Security/Security.js","source/Global/UW/CHSI.UW.Root.js","source/Global/UW/PortalTiles.js","source/Global/UW/PrintStatus.js","source/Templates/AR/Template_Attachments.hbs.js","source/Templates/AR/Template_BatchCredit.hbs.js","source/Templates/AR/Template_PendingSubsidies.hbs.js","source/Templates/BI/Template_ReportEditSummary.hbs.js","source/Templates/BI/Template_ReportImage.hbs.js","source/Templates/BI/Template_ReportImagePreview.hbs.js","source/Templates/BI/Template_ReportParameters.hbs.js","source/Templates/Claims/Template_ClaimSearch_ClientResults.hbs.js","source/Templates/Claims/Template_ClaimSearch_FilterOptions.hbs.js","source/Templates/Claims/Template_ClaimSearch_GroupResults.hbs.js","source/Templates/Claims/Template_ClaimSearch_Parameters.hbs.js","source/Templates/Claims/Template_ClaimSearch_PortalResults.hbs.js","source/Templates/Claims/Template_Claims_ClaimsOverview.hbs.js","source/Templates/Claims/Template_Claims_LossSummary.hbs.js","source/Templates/Claims/Template_SuperClaim.hbs.js","source/Templates/Claims/Template_SuperClaims.hbs.js","source/Templates/Common/Template_Attachments.hbs.js","source/Templates/CRM/CRM_DistributionListList.hbs.js","source/Templates/CRM/Template_ClientDetailsForm.hbs.js","source/Templates/CRM/Template_DistributionEmailList.hbs.js","source/Templates/CRM/Template_DistributionFaxList.hbs.js","source/Templates/CRM/Template_DistributionList.hbs.js","source/Templates/CRM/Template_DistributionListAdmin.hbs.js","source/Templates/CRM/Template_DistributionListEmailEditor.hbs.js","source/Templates/CRM/Template_DistributionPhoneList.hbs.js","source/Templates/CRM/Template_DistributionPostList.hbs.js","source/Templates/CRM/Template_GroupNoteEditor.hbs.js","source/TS/IO/Ajax.ts","source/TS/IO/JQueryHelpers.ts","source/TS/WebHelpers/escapeFunctions.ts","source/TS/WebHelpers/WebUtilities.ts","source/Global/CHSI/Common/Ajax.js","source/Global/CHSI/Common/Attachments.js","source/Global/CHSI/Common/ErrorFunctions.js","source/Global/CHSI/Common/Events.js","source/Global/CHSI/Common/Page.js","source/Global/CHSI/Common/StringFormat.js","source/Global/CHSI/Common/Universal.js","source/Global/Claims/ClaimIntake/CHSI.Claims.ClaimIntake.Root.js","source/Global/Claims/ClaimIntake/ClaimIntakeForm.js","source/Global/Claims/ClaimIntake/Dynamic.js","source/Global/Claims/ClaimIntake/Finish.js","source/Global/Claims/ClaimIntake/Start.js","source/Global/Claims/FormTypes/Categories.js","source/Global/Claims/FormTypes/ClaimsForm.js","source/Global/Claims/FormTypes/Fields.js","source/Global/Claims/FormTypes/FormPicker.js","source/Global/Claims/FormTypes/FormTypeEditor.js","source/Global/Claims/FormTypes/Information.js","source/Global/Claims/SuperClaims/SuperClaimsSearch.js","source/Global/CRM/Alerts/CHSI.CRM.Alerts.js","source/Global/CRM/ClientType/ClientTypes.js","source/Global/CRM/Departments/CHSI.CRM.Departments.js","source/Global/CRM/Group/CHSI.CRM.Group.js","source/Global/CRM/RecordType/CHSI.CRM.RecordType.js","source/Global/Forms/subForms/CHSI.Forms.Actions.js","source/Global/Forms/subForms/CHSI.Forms.APIs.js","source/Global/Forms/subForms/CHSI.Forms.Elements.js","source/Global/Forms/subForms/CHSI.Forms.Grid.js","source/Global/Forms/subForms/CHSI.Forms.Navigation.js","source/Global/Forms/subForms/CHSI.Forms.Results.js","source/Global/Forms/subForms/GridRowHistory.js","source/Global/Forms/subForms/ReviewAnswer.js","source/Global/UW/MuniQuote/Details.js","source/Global/UW/MuniQuote/Finish.js","source/Global/UW/MuniQuote/FormulaWorksheet.js","source/Global/UW/MuniQuote/MuniQuote.js","source/Global/UW/MuniQuote/Narrative.js","source/Global/UW/MuniQuote/NarrativeEditor.js","source/Global/UW/MuniQuote/Premium.js","source/Global/UW/MuniQuote/VariableHistory.js","source/Global/UW/MuniQuote/VariableSave.js","source/Global/UW/Quote/QuoteType.js","source/Global/UW/QuoteAssignment/QuoteAssignment.js","source/Global/UW/References/ReferenceEditor.js","source/Global/UW/Schedules/ScheduleCategoriesModule.js","source/Global/UW/Schedules/ScheduleFieldsModule.js","source/Global/UW/Schedules/ScheduleGrid.js","source/Global/UW/Schedules/ScheduleInformationModule.js","source/Global/UW/Schedules/ScheduleItemFormEditImagesModule.js","source/Global/UW/Schedules/ScheduleItemFormFieldsModule.js","source/Global/UW/Schedules/ScheduleItemFormItemModule.js","source/Global/UW/Schedules/ScheduleItemFormUploadImageModule.js","source/Global/UW/Schedules/ScheduleItemSummary.js","source/Global/UW/Schedules/SInformation.js","source/Global/UW/Schedules/SItemFormFields.js","source/Global/UW/Schedules/SItemFormImageEdit.js","source/Global/UW/Schedules/SItemFormItem.js","source/Global/UW/Schedules/SItemFormUploadImage.js","source/Global/UW/Schedules/stringformat.js","source/Global/UW/Xmods/XmodEdit.js","source/Templates/Claims/IncidentSearch/Template_IncidentSearch_ClientResults.hbs.js","source/Templates/Claims/IncidentSearch/Template_IncidentSearch_FilterOptions.hbs.js","source/Templates/Claims/IncidentSearch/Template_IncidentSearch_GroupResults.hbs.js","source/Templates/Claims/IncidentSearch/Template_IncidentSearch_Parameters.hbs.js","source/Templates/Claims/Intake/Template_InstructionsEditor.hbs.js","source/Templates/UW/MuniQuote/Template_FormulaWorksheet.hbs.js","source/Templates/UW/MuniQuote/Template_QuoteChecklist.hbs.js","source/Templates/UW/MuniQuote/Template_QuoteDocuments.hbs.js","source/Templates/UW/MuniQuote/Template_QuoteInfo_Commissions.hbs.js","source/Templates/UW/MuniQuote/Template_QuoteInfo_CoverageLine.hbs.js","source/Templates/UW/MuniQuote/Template_QuoteInfo_Payroll.hbs.js","source/Templates/UW/MuniQuote/Template_QuoteInfo_QuoteDetails.hbs.js","source/Templates/UW/MuniQuote/Template_QuoteNarrative.hbs.js","source/Templates/UW/MuniQuote/Template_QuotePremium.hbs.js","source/Templates/UW/MuniQuote/Template_QuotePremium_Billing.hbs.js","source/Templates/UW/MuniQuote/Template_QuotePremium_BillingSchedule.hbs.js","source/Templates/UW/MuniQuote/Template_QuotePremium_Premium.hbs.js","source/Templates/UW/MuniQuote/Template_QuotePremium_VariableHistory.hbs.js","source/Templates/UW/Schedules/ScheduleGridView.hbs.js","source/TS/GUI/Date/DateTime.ts","source/TS/GUI/Mustache/Mustache.ts","source/TS/GUI/Paging/Paging.ts","source/TS/GUI/Smart/SmartObject.ts","source/TS/GUI/Sortable/Sortable.ts","source/TS/GUI/Tables/Helpers.ts","source/TS/GUI/Tables/ITables.js","source/TS/GUI/Tables/Settings.ts","source/TS/GUI/Tables/Tables.ts","source/TS/GUI/Templates/CHSITemplates.js","source/TS/GUI/Utilities/Helpers.ts","source/TS/GUI/Utilities/NumericHelpers.ts","source/TS/GUI/Utilities/ObjectHelpers.ts","source/TS/GUI/Windows/popup.ts","source/TS/PL/BrokerPortal/SmartGrid.ts","source/TS/PL/Claims/ClaimSearch.ts","source/TS/PL/ClientSearch/ClientSearch.ts","source/TS/PL/Exceptions/ExceptionDetail.ts","source/TS/PL/Exceptions/Exceptions.ts","source/TS/PL/Que/QuestionnaireFormPicker.ts","source/Global/CHSI/Common/References/References.js","source/Global/CRM/ClientType/Controller/ClientTypeAdminController.js","source/Global/CRM/ClientType/Models/ClientType.js","source/Global/CRM/Images/Models/ClientIcon.js","source/Global/UW/ClassCode/Controllers/ClassCodeAdminController.js","source/Global/UW/ClassCode/Models/ClassCode.js","source/Global/UW/QuoteStatus/Controllers/QuoteStatusAdminController.js","source/Global/UW/QuoteStatus/Models/QuoteStatus.js","source/Global/UW/Schedules/Controllers/ScheduleTypesController.js","source/Global/UW/Schedules/Models/ScheduleTypes.js","source/TS/CL/Common/APIs/AttachmentCategoryRepository.ts","source/TS/CL/Common/Factories/RepositoryFactory.ts","source/TS/CL/Common/Models/AttachmentCategory.ts","source/TS/CL/Common/Views/AttachmentCategoryDropDown.ts","source/TS/CL/UW/APIs/DocumentRepository.ts","source/TS/CL/UW/APIs/ProductsRepository.ts","source/TS/CL/UW/Factories/RepositoryFactory.ts","source/TS/CL/UW/Models/GroupLineDocument.ts","source/TS/CL/UW/Models/GroupProductLine.ts","source/TS/CL/UW/Views/GroupLineDocumentDropDown.ts","source/TS/CL/UW/Views/GroupProductLineDropDown.ts","source/TS/PL/AdminTools/APIs/ClaimServiceRepository.ts","source/TS/PL/AdminTools/APIs/QuoteDocumentBatchRepository.ts","source/TS/PL/AdminTools/APIs/WYSIWYG_Repo.ts","source/TS/PL/AdminTools/Controllers/Base_ClaimIntakeEdit.ts","source/TS/PL/AdminTools/Controllers/ClaimIntakeEdit.ts","source/TS/PL/AdminTools/Controllers/ClaimIntakeEditCategories.ts","source/TS/PL/AdminTools/Controllers/ClaimIntakeEditFields.ts","source/TS/PL/AdminTools/Controllers/ClaimIntakeEditInformation.ts","source/TS/PL/AdminTools/Controllers/QuestionnaireFormGridController.ts","source/TS/PL/AdminTools/Controllers/QuestionnaireGridFormGridController.ts","source/TS/PL/AdminTools/Controllers/QuoteDocsBatchController.ts","source/TS/PL/AdminTools/Controllers/QuoteDocsBatchEditController.ts","source/TS/PL/AdminTools/Enums/Alerts.ts","source/TS/PL/AdminTools/Enums/ClaimIntakeEditor_Messages.ts","source/TS/PL/AdminTools/Factories/RepositoryFactory.ts","source/TS/PL/AdminTools/Models/QuestionnaireWYSIWYG.ts","source/TS/PL/AdminTools/Models/QuoteDocumentBatch.ts","source/TS/PL/AdminTools/Modules/QuestionnaireFormEditor_$alerts.ts","source/TS/PL/AdminTools/Modules/QuestionnaireFormEditor_$widgets.js","source/TS/PL/Claims/Abstract/ClaimIntakeFormBase.ts","source/TS/PL/Claims/APIs/ClaimIncidentReportRepo.ts","source/TS/PL/Claims/APIs/ClaimRepo.ts","source/TS/PL/Claims/APIs/FormTypeRepo.ts","source/TS/PL/Claims/APIs/IncidentAttachmentRepo.ts","source/TS/PL/Claims/APIs/IntakeFormCategoryRepo.ts","source/TS/PL/Claims/APIs/IntakeFormFieldRepo.ts","source/TS/PL/Claims/APIs/IntakeFormRepo.ts","source/TS/PL/Claims/APIs/Notification_Repo.ts","source/TS/PL/Claims/Controllers/ClaimIntakeDynamicV2Controller.ts","source/TS/PL/Claims/Controllers/ClaimIntakeFinishV2Controller.ts","source/TS/PL/Claims/Controllers/ClaimIntakeFormController.ts","source/TS/PL/Claims/Controllers/ClaimIntakeNavigationV2Controller.ts","source/TS/PL/Claims/Controllers/ClaimIntakeNotificationV2Controller.ts","source/TS/PL/Claims/Controllers/ClaimIntakeStartV2Controller.ts","source/TS/PL/Claims/Enums/ClaimIntake.ts","source/TS/PL/Claims/Models/ClaimIncidentAttachments.ts","source/TS/PL/Claims/Models/ClaimIncidentReport.ts","source/TS/PL/Claims/Models/FormCategory.ts","source/TS/PL/Claims/Models/FormField.ts","source/TS/PL/Claims/Models/FormType.ts","source/TS/PL/Claims/Models/IntakeForm.ts","source/TS/PL/Claims/Models/IntakeFormCategory.ts","source/TS/PL/Claims/Models/IntakeFormField.ts","source/TS/PL/Claims/Models/LateReasonCodes.ts","source/TS/PL/Claims/Models/Notification.ts","source/TS/PL/Claims/Models/SignNow.ts","source/TS/PL/Claims/Modules/ClaimIntake_$category.ts","source/TS/PL/Claims/Modules/ClaimIntake_$progress.ts","source/TS/PL/Common/APIs/ChoreRepository.ts","source/TS/PL/Common/APIs/ContentType_Repo.ts","source/TS/PL/Common/Controllers/ChoreCoordinator.ts","source/TS/PL/Common/Enums/ChoreType.ts","source/TS/PL/Common/Factories/RepositoryFactory.ts","source/TS/PL/Common/Models/Chore.ts","source/TS/PL/Common/Models/ContentType.ts","source/TS/PL/Common/Models/SmartField.ts","source/TS/PL/Common/Models/SmartGrid.ts","source/TS/PL/Common/Models/ValidationQuery.ts","source/TS/PL/Common/ViewModels/ValidationAlert.ts","source/TS/PL/CRM/APIs/ClientAddress.ts","source/TS/PL/CRM/APIs/Clients.ts","source/TS/PL/CRM/APIs/Group.ts","source/TS/PL/CRM/APIs/Location.ts","source/TS/PL/CRM/Models/ClientAddInfo.ts","source/TS/PL/CRM/Models/ClientAddress.ts","source/TS/PL/CRM/Models/Clients.ts","source/TS/PL/CRM/Models/ExcessGroupPolicy.ts","source/TS/PL/CRM/Models/ExcessPolicy.ts","source/TS/PL/CRM/Models/Group.ts","source/TS/PL/CRM/Models/Location.ts","source/TS/PL/CRM/ViewModels/ExcessPolicy.ts","source/TS/PL/Que/APIs/DataStructure_Repo.ts","source/TS/PL/Que/APIs/FormAPI.ts","source/TS/PL/Que/APIs/QuoteForm_Repo.ts","source/TS/PL/Que/APIs/Section_Repo.ts","source/TS/PL/Que/Controllers/FormController.ts","source/TS/PL/Que/Enums/Element.ts","source/TS/PL/Que/Enums/MetaAttribute.ts","source/TS/PL/Que/Models/DynFormObject.ts","source/TS/PL/Que/Models/ElementCalculations.ts","source/TS/PL/Que/Models/ElementHelp.ts","source/TS/PL/Que/Models/Form.ts","source/TS/PL/Que/Models/MetaAttribute.ts","source/TS/PL/Que/Models/QuoteForm.ts","source/TS/PL/Que/Models/QuoteFormSummaryLookup.ts","source/TS/PL/Que/Models/ResultSetValue.ts","source/TS/PL/Que/Utilities/QuestionnaireV2.ts","source/TS/PL/Que/Utilities/Questionnaire_Deprecated.ts","source/TS/PL/ClaimSystem/ClaimManagement/Models/Assignee.ts","source/TS/PL/ClaimSystem/ClaimManagement/Models/AssignmentModel.ts","source/TS/PL/ClaimSystem/ClaimManagement/Models/AttachmentModel.ts","source/TS/PL/ClaimSystem/ClaimManagement/Models/ClaimantModel.ts","source/TS/PL/ClaimSystem/ClaimManagement/Models/ClaimModel.ts","source/TS/PL/ClaimSystem/ClaimManagement/Models/EventModel.ts","source/TS/PL/ClaimSystem/ClaimManagement/Models/IncidentInjuryModel.ts","source/TS/PL/ClaimSystem/ClaimManagement/Models/IncidentModel.ts","source/TS/PL/ClaimSystem/ClaimManagement/Models/LitigationContactModel.ts","source/TS/PL/ClaimSystem/ClaimManagement/Models/LitigationModel.ts","source/TS/PL/ClaimSystem/ClaimManagement/Models/NoteModel.ts","source/TS/PL/ClaimSystem/ClaimManagement/Models/PartyModel.ts","source/TS/PL/ClaimSystem/ClaimManagement/Models/PayeeModel.ts","source/TS/PL/ClaimSystem/ClaimManagement/Models/PaymentModel.ts","source/TS/PL/ClaimSystem/ClaimManagement/Models/ProviderModel.ts","source/TS/PL/ClaimSystem/ClaimManagement/Models/ReserveModel.ts","source/TS/PL/ClaimSystem/ClaimManagement/Models/TreatmentModel.ts","source/TS/PL/Que/Models/Data/DataStructure.ts","source/TS/PL/Que/Models/Data/DataStructureCategory.ts","source/TS/PL/Que/Models/Data/DataStructureColumn.ts","source/TS/PL/Que/Models/Design/ActionBehavior.ts","source/TS/PL/Que/Models/Design/ContentType.ts","source/TS/PL/Que/Models/Design/Element.ts","source/TS/PL/Que/Models/Design/Form.ts","source/TS/PL/Que/Models/Design/Section.ts","source/TS/PL/Que/Models/Design/ValueList.ts","source/TS/PL/Que/Models/Design/ValueListOptions.ts","source/TS/PL/UW/LossHistory/API/LossHistoryAPI.ts","source/TS/PL/UW/LossHistory/Controller/LossHistoryEditController.ts","source/TS/PL/UW/LossHistory/Model/PriorCoverage.ts","source/TS/PL/UW/LossHistory/Model/PriorCoverageDetail.ts","source/TS/PL/UW/LossHistory/Model/PriorCoverageLoss.ts","source/TS/PL/UW/LossHistory/Views/xMod_LossHistoryEdit_PriorCoverage.ts","source/TS/PL/UW/LossHistory/Views/xMod_LossHistoryEdit_PriorCoverageDetail.ts","source/TS/PL/UW/LossHistory/Views/xMod_LossHistoryEdit_PriorCoverageLoss.ts","source/TS/PL/UW/Quotes/APIs/QuoteAPIs.ts","source/TS/PL/UW/Quotes/APIs/QuoteStatus_Repo.ts","source/TS/PL/UW/Quotes/Model/QuoteRule.ts","source/TS/PL/UW/Quotes/Model/QuoteStatus.ts","source/TS/PL/UW/XMods/API/XModAPI.ts","source/TS/PL/UW/XMods/Controller/XmodController.ts","source/TS/PL/UW/XMods/Model/Xmod.ts"],"names":["addEvent","obj","evType","fn","addEventListener","attachEvent","GlobalWindow","OpenWindow","url","windowname","OpenNewWindow","closed","window","open","focus","removeEvent","useCapture","removeEventListener","detachEvent","alert","getViewportHeight","innerHeight","undefined","document","compatMode","documentElement","clientHeight","body","getViewportWidth","innerWidth","clientWidth","getScrollTop","self","pageYOffset","scrollTop","getScrollLeft","pageXOffset","scrollLeft","PunctuationExp","PunctuationExpStrict","wordsearch","CheckBlank","val","value","SelectAll","select","dodacheck","match","replace","isPlainText","e","keynum","keychar","event","keyCode","which","String","fromCharCode","test","isNumberKey","evt","charCode","isSSN","isDoubleKey","isUSZip","isDateKey","addDays","myDate","days","Date","getTime","gaussianRound","x","absolute","Math","abs","sign","floored","floor","round","ceil","gaussianRound2","isDate","dateStr","isNaN","getYear","DateDiff","firstdate","seconddate","addCommas","nStr","split","x1","x2","length","rgx","ForceZero","Right","str","n","iLen","substring","InStr","strSearch","charSearchFor","i","Len","Mid","FormatNumber","num","decimalNum","bolLeadingZero","bolParens","bolCommas","bolPadDecimals","parseInt","tmpNum","iSign","pow","tmpNumStr","iStart","indexOf","charAt","decimalpos","Automove","currentlength","maxlength","boxtomove","getElementById","SafeAdd","val1","val2","val3","val4","val5","val6","val7","val8","result","SafeSubtract","SafeMultiply","SafeDivide","PageQuery","q","this","keyValuePairs","Array","getKeyValuePairs","getValue","s","j","getParameters","a","getLength","queryString","key","page","location","search","unescape","displayItem","write","inputs","restart","stIsIE","imgFalse","ImageBase","imgTrue","checkboxesdone","replaceChecks","checkChange","checked","src","sorttable","init","arguments","callee","done","_timer","clearInterval","createElement","getElementsByTagName","DATE_RE","forEach","table","className","makeSortable","the","appendChild","rows","insertBefore","firstChild","tBodies","tHead","sortbottomrows","tFoot","tfo","headrow","cells","mtch","override","sorttable_sortfunction","guessType","sorttable_columnindex","sorttable_tbody","dean_addEvent","scrollcontainer","reverse","removeChild","sortrevind","id","innerHTML","sortfwdind","theadrow","parentNode","childNodes","cell","nodeType","row_array","col","getInnerText","sort","tb","column","sortfn","sort_alpha","text","sort_numeric","possdate","first","second","sort_ddmm","sort_mmdd","node","hasInputs","getAttribute","textContent","innerText","nodeName","toLowerCase","nodeValue","tbody","newrows","b","aa","parseFloat","bb","y","m","d","dt1","dt2","shaker_sort","list","comp_func","t","swap","navigator","userAgent","setInterval","readyState","testfunction","element","type","handler","$$guid","guid","events","handlers","handleEvent","returnValue","fixEvent","ownerDocument","parentWindow","$$handleEvent","preventDefault","stopPropagation","onload","cancelBubble","array","block","context","call","Function","prototype","object","string","chr","index","resolve","Object","ss","fixAllLinks","allLinks","lnk","href","pathname","smoothScroll","target","srcElement","anchor","hash","substr","destinationLink","name","offsetLeft","desty","offsetTop","thisNode","offsetParent","INTERVAL","cypos","getCurrentYPos","ss_stepsize","STEPS","scrollWindow","scramount","dest","wascypos","isAbove","scrollTo","iscypos","isAboveNow","elm","isAlphaNumeric","isAddressKey","jQuery","extend","historyCurrentHash","historyCallback","historyIframeSrc","historyInit","callback","current_hash","browser","msie","prepend","iframe","contentWindow","close","safari","historyBackStack","history","historyForwardStack","lastHistoryLength","isFirst","historyCheck","historyAddHistory","push","ihistory","contentDocument","shift","dontCheck","historyDelta","unshift","pop","cachedHash","historyLoad","newhash","decodeURIComponent","setTimeout","CHSI","AR","BI","CM","Dates","Page","Information","HandleBars","Security","Que","SuperClaimsFilter","Handlebars","template","1","depth0","helpers","partials","data","stack1","buffer","each","FilterObject","PolicyPeriod","program","inverse","noop","Coverages","ClaimTypes","2","lambda","escapeExpression","4","helper","functionType","helperMissing","Value","compiler","main","useData","Template_DistributionList","unless","ListTypeID","ListName","CreateUser","Status","MemberCount","AllowEmail","AllowPost","AllowPhone","AllowFax","ListID","6","ListSource","7","9","11","13","15","DistributionList","Template_FileIntegrity","FileID","AlternativePath","CreateTmsp","FileIntegrity","Template_ScheduleOverview","Schedule","ScheduleID","ScheduleName","ScheduleGroup","ScheduleType","ScheduleIndex","ScheduleCode","StartTime","FailureCount","MaxFailureAttempts","3","compare","BatchFileID","ReportID","8","Template_Subsidy_CurrentSubsidyInformation","depths","GroupSubsidyByClientRecord","SubsidyName","NumberToCurrency","Balance","CHSIDate","LastActivity","GroupSubsidyID","RequestText","useDepths","Template_SuperClaimsResults","SuperClaims","backgroundcolor","Index","ClientName","Description","Claims","FormatCurrency","TotalIncurred","SuperClaimID","Coverage","ClaimNumber","ClaimTypeCategory","DateOfIncident","Claimant","Incurred","ClaimID","ClientID","ClaimSystemVersion","5","AdvancedSearch","SearchAjax","as_SelectedSearchID","CurrentSearchCategory","as_SearchType","as_pageindex","as_numrecords","ResponseFunction","ShowAdvancedSearchForm","categoryname","SearchID","responseFunction","windowWidth","max","width","windowHeight","height","ShowPagePopup","join","ajaxfunctions","GetSearchQueries","GetQueryOption_Result","CHSI_ErrorResult","bind","ResizeSearchContents","AdvancedSearchContents","html","TabClass","SearchTypeID","SearchTitle","SearchTerm","Common","Log","OrderText","abort","ajaxData","searchid","searchterm","searchtype","pageindex","numrecords","OrderBy","ajaxString","JSON","stringify","ajax","contentType","dataType","success","AdvancedSearch_Result","error","statusText","GetPage","pageincrement","jxAdvancedSearchResults","Cols","MorePages","Headers","Data","objindex","objdata","NavigateURL","slice","columnvalue","inArray","AddNewCompany","confirm","SubWindowWidth","SubWindowHeight","AIContent","ReSort","SortColumn","SortParam","Arrays","ReturnEmpty2DimensionalMatrix","RowCount","ColumnCount","Matrix","row","DebugMode","CancelNavigation","Navigation","NavigateToNextTab","successFunction","MenuLinks","$","URL","CurrentTab","CurrentIndex","NextIndex","NextPage","ReturnURL","prop","UpdateNavigationTabs","ReturnURLParameter","NavigateToReturnURL","defaultReturnURL","parseQuerystring","GroupName","TabID","TabName","TabCategory","protocol","host","Supports_Canvas","getContext","message","console","log","LogObject","EscapeHTML","toString","ConditionalEscapeHTML","cond","replaceString","oldS","newS","fullS","PopulateListBox","Options","SourceData","HTML","ItemCount","Item","ValueProperty","SourceProperty","ResetList","ListBox","append","D","fromISO","day","tz","p","exec","L","UTC","apply","getDate","setUTCMinutes","getUTCMinutes","NaN","addHours","hours","addMinutes","minutes","addSeconds","seconds","addMilliseconds","milliseconds","setISO8601","RegExp","offset","date","setMonth","setDate","setHours","setMinutes","setSeconds","setMilliseconds","Number","getTimezoneOffset","time","GetjQueryAJAXDate","jsonDate","DateCheck","getMonth","thedate","getFullYear","ConvertDate","ConvertedDate","ProcessDateString","GetShortDate","getUTCMonth","getUTCDate","getUTCFullYear","GetYear","GetDateTime","FormatTime","Hour","Second","Period","getUTCSeconds","getUTCHours","GetFormattedJSONDate","addMonths","DOM","CreateHashObject","hashVarObj","hashArr","CachedElements","ClearCache","Get","selector","ElementKey","DOMObject","ProcessAjaxError","xmlHttpRequest","textStatus","errorThrown","responseText","status","showpreview","ShowMore","NewestURL","MinY","MinX","HistoryIndex","HistoryPages","ResizedWindows","PageModals","ClearHistory","AddHistory","PageUrl","hidePopupWin","ModalWin","Modal","CloseModal","ShowInlinePopup","WindowID","panelcontent","WinTitle","CloseFunction","ismodal","ShowPopup","WinURL","isWindowLocked","ShowHelp","SuccessFunction","panelContent","htmlcontent","title","overridex","overridey","hidePopWin","Modals","is","ModalName","attr","showPopWin","navigateurl","callbackfunction","ReplacementTitle","ExtractPageID","pageid","queryobject","componentToHex","c","hex","RGBtoHex","r","g","aRGBtoalphaHex","UpdateTitle","newTitle","GenerateID","find","ModalWindow","bPopup","ResizeModal","ModalID","newWidth","newHeight","ModalFrame","GetTemplate","SiteStartColor","SiteEndColor","PageID","showclose","HeaderStyle","StartHex","EndHex","closebuttonhtml","newID","closablevalue","autoresizeWidth","autoresizeHeight","ContentType","loadUrl","content","contentContainer","closeClass","modalClose","modal","onClose","position","scrollBar","draggable","handle","SuccessfulClose","resizedwindow","ready","resize","FreshResizedWindows","options","Enums","ConnectionsObject","MetaAttributes","Utilities","GetEnumValue","EnumObject","Key","AdditionalResponse","EnumValue","GUI","Romanize","digits","roman","DeRomanize","token","M","CD","C","XC","XL","X","IX","V","IV","I","toUpperCase","AjaxInit","ajaxStart","show","ajaxStop","hide","AjaxStart","AjaxStop","SetSize","BuildSelectItemHTML","Collection","LabelField","ValueField","SelectedValue","ResultHTML","ResultIndex","ResultSetLength","isSelected","MakeSelectionBlock","control","VariableName","defaultvalue","addClass","Links","children","RenderedLinks","Link","NewValue","ActivateLink","jLink","sender","eval","ActiveLink","SelWindow","parent","NewLeft","left","NewWidth","animate","css","removeClass","ZebraStripe","JQuery","Preparehelpers","registerHelper","ret","property","size","isLast","datevalue","email","IsEmail","inStr","inNumber","showDecimals","Numbers","optionalValue","lvalue","rvalue","Error","operator","operators","==","l","===","!=","<",">","<=",">=","typeof","$el","selected","Even","Odd","SafeString","decodeURI","endecodeURI","Nvalue","Noptions","isnumericv","isnumerico","toFixed","containsValue","hasValue","DataSize","DataType","argh1","argh2","Help","Settings","ParentElement","ParentContainer","Ajax","HelpLookup","HelpID","parentElement","GetHelpInformation","GenerateContainer","HelpObject","Class","elem","corners","flipIt","parents","HelpMessage","HelpText","qtip","overwrite","my","at","viewport","container","button","style","classes","TagClass","GetHeight","GetWidth","OverrideHeight","Height","OverrideWidth","Width","AjaxURL","cache","precision","mode","f","isHalf","sgn","MuniUW","QuoteObject","RefreshGUI","GetAppearanceCollection","ControlType","Appearance","LossColumns","RateVariables","Variables","GetClientIDfromObject","ControlObject","ColumnValueID","ProgramRateVariableID","RateInfoID","VariableID","GetVariable","Variable","Vars","CL","Rates","RateIndex","GetRateInfoVariable","RateType","RateTypes","RateDetail","GetQuoteObjectfromClientID","clientID","IDs","sCLit","GetControlTypeFromClientID","PrepareFunctions","CurrentControl","CurrentControlValue","CurrentControlCachedValue","ObjectType","keyID","DisplayFilter","AppearanceCollection","Display","DisplayMode","DisplayTitle","GetAddCoverageLineControl","GetAddCoverageLineSelectList","SourceObject","locked","isLocked","GetControlType","PropertyName","GetQuotePropertyDisplay","AppearanceTemplate","ControlStart","ControlEnd","inEditMode","EditControlType","ReadOnlyControlType","GetSaveEventCode","CleanValue","GetValue","MenuController","QuoteObj","xTarget","QuoteID","GroupID","ShowNewNote","ShowNewTask","ShowCopyQuote","DeleteQuote","Success","Delete","SaveOriginalValue","CacheValue","ShowSaveWindow","ObjectID","SourceControl","CancelChange","SetValue","DataObject","StringValue","DateValue","DecimalValue","BoolValue","IntegerValue","SetDefaultValue","DefaultStringValue","DefaultDateValue","DefaultDecimalValue","DefaultBoolValue","DefaultIntegerValue","GetDefaultValue","SaveVariable","ForceAutoCalculation","Comments","isAutoCalculated","processData","availableCL","newCL","CoverageLineInfo","showCoverageLine","CoverageLineID","CoverageLineName","SaveQuoteProperty","strValue","ShowDecimals","dblValue","blnSign","intCents","strCents","IsCurrencyNumber","inputValue","IsNumber","IsDecimalNumber","Scripting","getObjectProperties","keys","FilterString","Query","doesContain","Format","__Format","SystemNotification","ContainerName","SetResponse","responseType","delayTimerSeconds","clearTimeout","NotificationTimer","GetResponseType","fadeOut","SetTimer","responseTypeNo","ConstructContainer","SetParentTarget","appendTo","UI","ValuePicker","AjaxObjects","ReturnFunctions","UIInfo","ShowPicker","searchID","isModal","defaultSearch","pageIndex","numRecords","hideSearch","searchType","SearchObject","PageIndex","NumRecords","SearchType","frameWidth","frameHeight","DoSearch","DoAction","CachedData","Row","MUI","closeWindow","UISearchGridTable","UISearchContainer","Validation","UseQTip","ValidateCurrencyPress","isValid","ValidateNumberPress","isValidDate","parse","validator","setDefaults","ignoreTitle","errorClass","validClass","errorPlacement","useQTip","filter","PrepareValidation","addMethod","methods","required","optional","addClassRules","iLongText","iShortText","iPostalCode","minlength","iSSN","iInteger","isInteger","iDecimal","isdecimal","iDate","iPriorDate","isPriorDate","iTime","isTime","iPhoneNumber","phone","iPostalCodeSuffix","iEmailAddress","iRequired","iYear","year","iCurrency","currency","FourDigitNumber","fourdigit","messages","remote","dateISO","number","creditcard","equalTo","accept","format","rangelength","range","min","FormTypes","ClaimsSearch","Init","Template_Results","Templates","Results","compile","Template_Filters","Filters","Events","Global","ConstructFilters","Cache","FilterIndex","LeftFilterValue","RightFilterValue","Value1","Value2","OperatorValue","RightFilterType","RightFilterName","OptionFilterValue","Client","ClaimType","ClaimNo","IncidentDate","BindPresentationLayer","BindFilters","BindResults","on","FilterType","FilterName","NumberOfFilters","FilterID","RightFilter","CurrentFilterValues","SaveFilterValues","Calls","GetResults","AddFilter","FilterTree","LeftFilter","OptionFilter","FilterValues","FilterBuilders","DateFilter","TextFilter","NumericTextFilter","GroupIDFilter","GroupIDs","GetGroups","ClientIDFilter","PolicyPeriodFilter","PolicyPeriods","GetPolicyPeriods","CoverageFilter","GetCoverageLines","ClaimClassFilter","GetClaimTypesByGroupLineID","GetClaimTypes","ClaimTypeFilter","ClaimSearch","GroupLineID","BuildClaimTypeList","selectedOption","StatusFilter","Notification","QSObject","NotificationID","Template_NotificationEditor","NotificationEditor","GetNotification","Binds","From","DistributionListObject","NotificationObject","NotificationName","NotificationType","Subject","IncludeReport","BodyTemplate","DestinationType","Destination","CCDestinationType","CCDestination","BCCDestinationType","BCCDestination","TemplateID","EmailDistributionListObject","ActiveGroups","GroupSpec","GroupSpecs","GroupSpecCode","EmailTemplates","CKEDITOR","GetDistributionList","GetGroupSepcFromGroupSpecType","GetQueueEmailTemplates","GetDestinationType","ConfigureDestinationTypeFilters","remove","SpecificationName","TemplateName","SaveNotification","closeThis","DestinationValue","values","PersistDistributionListToCache","Group","ContactType","Committee","Custom","ConstantContact","SystemUser","PersistNotificationToCache","instances","uxMessageBody","getData","SelectDropDownListValue","$listID","cachedValue","Post","GetGroupSpec","SpecName","AttachmentTree","AttachmentTreeObject","GenerateAttachmentTreeview","isCollapsed","IncludeCheckboxes","SingleObjectArray","Tree","TreeIndex","TreeTopNode","TierLevel","HTMLLink","GetChildren","ProductCode","treeview","animated","collapsed","ParentID","Attachment","SectionID","AttachmentObject","AllowDocuments","ProductName","GetParentSection","SectionsObject","RootParent","NewSectionsArray","ParentIndex","FilterAttachmentResults","FilteredResult","SectionIDsInUse","NewAttachmentsArray","AttachmentsObject","SectionItem","FileName","DefaultSectionID","FoundSectionID","FileUpload","AttachmentID","FileIDs","FileNames","fileInfo","ArrFileAttachment","BindFileNames","NewFile","GetClientInfo","GetPolicyYears","PolicyYears","GetFileSections","GetAttachment","CreateUploader","Template","FileAttachmentObject","ClientInfo","AttachmentPost","FileAttachment","ArrAttachmentPost","PolicyYear","Sections","AddFile","ItemDate","AttachmentCategories","section","ID","GetFieldsFromPresentationLayer","SectionIDs","SaveAttachmentFromPost","Attachments","CommaSeparator","FileNameList","DeleteFileName","splice","InitYear","TodayYear","AttachmentPostClone","StartDate","CRM","GetAvailablePolicyYearByClientID","GetFileAttachment","fineUploader","request","endpoint","debug","multiple","callbacks","onSubmit","fileName","onComplete","response","onAllComplete","successful","failed","LazyViewer","_private","vContainer","vToolbar","vCloseButton","vDeleteButton","vOverlay","vImgContainer","vImg","vPrev","vNext","_public","CurrentImage","ViewImage","imgContainer","img","hasClass","marginLeft","marginTop","opacity","onclick","prev","next","CloseViewer","DeleteImage","fileID","WebUtilities","ParameterHelpers","getParameterByName","df","Deferred","ClaimImages","jqXHR","reject","CreateToolbar","CreateOverlay","lineHeight","View","fadeIn","ResizeDetailViewer","Images","Models","Controllers","GetClient","errorFunction","GetLocationsByClient","GetContactsByClient","GetAvailablePolicyYearByGroupID","ProducerUser","qs","ExtUsersId","ExtUsersID","ProducerID","GetGetExtRoles","PermissionsObject","RoleType","UserObject","ExtUserObject","RoleIDs","UserFound","validate","onkeyup","onfocusout","Element","errorList","GetDataStructures","valid","UserName","GetUser","SaveExternalUser","ExtUser","UserID","Restrictions","Username","EmailAddress","Password","PasswordFormat","PasswordSalt","ExpirationDate","Role","Authorized","RoleID","UserRole","Roles","Permission","RoleName","BindUser","emailaddress","GetUserByExtUserID","Forms","ShowNoChangeCheckbox","MaxElementExplanation","FormContainerID","FormContainer","FooterPadding","CurrentActiveSectionIndex","ResultID","isPortal","ResultSetValues","PrimaryFormID","ContentTypes","FromID","InitialIndex","ActionCollection","NavigationCreated","ResultTagRegEx","CurrentValidationObjects","CurrentDesignTemplate","ajaxFormDetails","ajaxContainerHTML","DataStructure","CalculatedResults","ValidatedResults","ChangeResults","isFullPageMode","qsObject","BindEvents","off","NoChangeCheckbox","EventInfo","MarkFormAsChanged","GetPriorResult","ColumnID","ValueIndex","Elements","ChangeElementEditability","ElementID","FormID","UpdateElementValue","SetLastUserResult","HelpIcon","ParentElementID","Field","ExplanationField","SaveExplanation","ReadOnly","SaveForm","isFormSaved","RedirectToSchedule","SiteType","clientid","DisplayCurrentForm","formID","BuildFormContainer","ReplaceTemplatePlaceholders","jxSectionDetails","trim","SectionHeaderDetails","ReportName","ReportFormName","urlEncodedPrintURL","encodeURIComponent","CurrentURL","NavContainer","NavHTML","GenerateNavigation","UpdateSectionHTML","RegionHTML","GetRegionHTMLArray","ReplaceRegionsWithContent","Grid","ProcessGridElements","ResizeFormContainer","Actions","ExecuteFormActions","isDisabled","GetChangedResults","FormDetails","FormDetailHTML","PolicyResult","ShowPolicyPeriod","GetResultSetValueByTagRegex","FormClient","Title","DateOfStatus","DueDate","NavigationHTML","RegionIndex","NumberRegions","OutputHTML","Header","Footer","TemplateRegionIndex","ReturnRenderedElement","CreateForm","outputContainerID","blur","LastFormIndex","GetFormDisplay","GetFormMetaAttributeBoolean","FormInstance","MetaattributeID","DefaultValue","CurrentValue","metaattribute","MetaType","MetaValue","sectionIndex","ajaxLookup","formid","sectionindex","resultid","ElementsOnly","APIs","QuoteDetailsAPI","ParentDataStructure","HelpIDs","DataChanged","ProcessActions","ActionBehaviors","BuildContainerHTML","DesignTemplateID","templateid","contenttype","ContentTypeID","replaceEvenIfExists","Templatebody","ContainerY","TotalWindowHeight","top","WindowFrameHeight","AppropriateFrameHeight","PortalWindowHeight","MainContentRegion","NavRegion","Body","jxFormTable","NavScrollTop","Footerheight","Headerheight","LabelWidth","NewBodyheight","ignore","BrokerQuoteEditor","groupid","Template_ClassCodes","ClassCodes","Template_AssessmentMods","AssessmentMods","GetStates","years","ConstructStateList","ClassCodeLayer","Year","ClassCodesObject","States","ConstructedStateList","LCM","isClassCodeValid","AssessmentModData","PremiumAmount","TotalGrossPrem","TotalPayroll","EstimatedPayroll","PolicyTotal","QTName","State","datepicker","showOn","minDate","maxDate","buttonImage","buttonImageOnly","CalculateTotal","isEmptyObject","CalculateAssessments","AssessmentModLayer","GetAssessmentMods","NewClassCodeObject","ClassCode","Location","Payroll","EffectiveDate","DescriptionIndex","ClassCodeValidationResponse","ClassCodeResult","Rate","GrossPrem","isReadOnly","RevalidateClassCode","indexRow","ClassCodeIndex","ModID","ModValue","UpdateAssessmet","ClassCodeFilters","ValidateClassCode","ErrorMsg","isHidden","ConstructDropDown","AssessmentMod","Selected","DefaultCollectionValues","ConstructTextBox","ConstructCheckBox","GetAssessmentModControl","SelectionType","OutputFieldID","Total","CurrentRow","RowIndex","UpdatedClassCodeObject","ClassIndex","PreviousAmount","Amount","CalculateAssessment","Difference","CalcAmount","CalcedDiscount","TotalContributionConsidered","RAFModReduction","AddContribution","Minimum","MultiplyContribution","aryRule","PercValue","FlatValue","SelectionValues","premID","ModAmount","Discount","MinMax","MinValue","MaxValue","Product","ModType","Sum","Async","ValidationObject","BrokerQuoteSubmissions","Template_QuoteSubmissions","QuoteSubmissions","GetQuoteSubmissionsObject","SubmissionsObject","Groups","GroupSelectorFlag","Submissions","ShowGroupSelectorURL","CurrentUserID","ModalWidth","ModalHeight","ModalTitle","GetLocalization","HasPermission","RoleList","ClaimChartOverview","ChartClientID","ChartAsOfDate","mainDivID","Highcharts","setOptions","chart","fontFamily","CHSITemplates","Template_Claims_ClaimsOverview","today","BuildCharts","CreateStackedColumnChart","outputDivID","chartTitle","Chart","renderTo","exporting","enabled","credits","xAxis","categories","yAxis","stackLabels","fontWeight","color","theme","textColor","legend","align","verticalAlign","floating","backgroundColor","legendBackgroundColorSolid","borderColor","borderWidth","shadow","tooltip","formatter","series","numberFormat","point","stackTotal","plotOptions","stacking","dataLabels","dataLabelsColor","ProcessChartError","LoadSpinner","chartDivID","spinnerDivID","CreateChart1","IncludeChildren","CreateChart2","CreateChart3","CreateChart4","asOfDate","BuildClaimTypeListHTML","ClaimTypesSpecific","SelectedClaimTypes","SelectedOption","SearchOptionsID","GridOutputID","CurrentOptionIndex","Template_SearchParameters","Template_ClaimSearch_FilterOptions","Template_ClaimSearch_GroupResults","Template_ClaimSearch_ClientResults","FormFilterOptions","SearchLevel","SearchOptions","SearchOption","FilterPosition","FilterValue1","FilterValue2","FilterOperator","decimalNumberPattern","FilterOptionsID","ReturnSearchParameterHTML","returnList","ClaimVersion","GetTemplates","ResultsTemplate","Template_ClaimSearch_PortalResults","Template_ClaimSearch_Results","ShowFilterOptions","filtertemplate","BuildSearchOptionInputs","successfunction","isExists","aryindex","aryvalue","GetAllClaimTypes","FilterResults","BuildSearchOptionArray","FormatFormFilterOptions","PL","GetFilteredClaims","newIndex","Template_ClaimSearch_Parameters","ShowAdditionalFilter","arySelectedOptions","aryFormattedOptions","option","currentOption","jxSearchOption","BuildDateFilter","BuildTextFilter","BuildNumericTextFilter","currentIndex","BuildClaimClassOptions","BuildDatePickers","vertical-align","filtertype","BuildNewSearchOption","sourcecontrol","selectedBuildType","NewIndex","nextAll","IsEdit","ObjectIndex","SearchClaims","ChangeDateFilterOptions","sourceControl","selectedDateFilterType","jxDateFilterOption","ChangeGetGroupLineID","currentID","GetSelectedClaimTypes","SelectedTypes","lenght","currentSelection","ValidateEntry","objToValidate","pattern","sanitizedInput","background-color","ValidateCurrencyField","FilterChildResults","filterChildren","CurrentSubsidyInformation","SubsidyTemplate","returnFunction","GetGroupSubsidyByClient","GroupSubsidyClient","showIntakeForm","IncidentID","FormTypeID","FormTypeName","RefreshGrid","IncidentSearch","Template_IncidentSearch_FilterOptions","Template_IncidentSearch_Results","inGroupID","FormType","reportOptions","Template_IncidentSearch_Parameters","TemplateSource","Template_IncidentSearch_GroupResults","Template_IncidentSearch_ClientResults","get","BuildDefaultSearchParameters","TotalIncidents","IncidentContainer","IncidentTableRecord","ShowTooManyRecords","incidenttemplate","jQuery_ErrorResult","searchlevel","GetIntialDate","SearchIncidents","LossSummary","Template_Claims_LossSumary","gridID","inputNumber","$0","$1","$2","Template_Claims_LossSummary","GetLossSummary","policyPeriod","groupLineID","removeAttr","lossSummaryContainer","lossSummaryTemplate","Subsidy","SubsidyID","ShowTransactionModal","subsidyID","userID","ActiveOnly","GridObject","StructureID","DataSet","Values","Columns","Column","orderable","class","defaultContent","columnDefs","ClientColumnDefinition","targets","render","GridTable","DataTable","columns","lengthMenu","stateSave","DataStructureCategories","setup","DataStructureID","GetCategories","draw","Categories","CategoryIndex","CategoriesGrid","CategoryID","CategoryTitle","sortByKey","CategoryObject","CHSI_DataTables","PrepareColumnDefinitions","ColumnIndex","meta","orderDataType","aaData","aoColumnDefs","SortOrder","StructureType","SaveCategory","Cell","settings","aoColumns","ValueType","StructureEdit","structureid","Fields","GetStructureFields","DependentTabs","FieldObject","DependentTabsBound","fieldObj","FieldStamp","UpdateUser","UpdateTmsp","StructureName","StructureDescription","DataStructureSubCategories","DataStructureFields","fieldObject","SaveStructureFields","FieldDetailFormat","RowObject","ValueData","GetSubCategories","GenerateHTMLSelect","GenerateHTMLCheckbox","GetFields","GetContentTypes","Bind","GetNewField","FieldName","NewObject","DataTypeID","CalculationFormula","CalculationProcessOrder","DataCategoryID","FieldsGrid","CustomColumns","tr","closest","child","isShown","DetailRow","CellValue","SaveFieldValues","SaveFields","displayArray","displayArrySecondaryPos","valueArray","valueArrySecondaryPos","selectValue","ClassName","dataAtt","arrayValue","arrayDisplay","trueValue","isBit","DataSubCategoryID","DefaultBitValue","DefaultValueFormula","MetaIndex","SubCategories","field","xhr","err","ExceptionMessage","SubCategoriesGrid","SubCategoryID","SubCategoryTitle","SubCategoryObject","SaveSubCategory","currentEnvironment","getCurrentEnvironment","targetEnvironment","PermissionID","async","UW","Quote","MuniQuote","PrintStatus","QuoteStatus","ScheduleTypes","PortalTiles","TileType","Template_PortalTiles","GetAllQuoteStatuses","GetPortalMenuTabs","PortalTileContainer","Properties","SaveQueue","QuoteStatuses","AvailableQuoteStatus","TileObject","TilesObject","SortOrderList","TileEditor","tileTop","tileLeft","TileHeaderName","BGColor","FGColor","AutoSave","ContentScrollPosition","Tiles","sortable","connectWith","cancel","disableSelection","ControlledObjects","ControlledObjectWidthModifiers","ControlledObjectHeightModifiers","Prop","Event","Call","ui","start_pos","item","SaveTileSortOrder","lastElementChild","OriginalQuotestatus","QStatus","QuoteStatusUpdate","PortalTabID","PropertyQuoteStatus","GetQuoteStatusFromProperties","RequireComments","QCAvailable","DisplayDays","Editable","Print","AccessRole","TileIndex","SaveQuoteStatus","SaveStatuses","ShowSaveAllComplete","SaveTiles","Tile","TileEditorContainer","spectrum","move","toHexString","preferredFormat","ShowTileEditor","GenerateNewTile","DeleteTile","StatusIndex","SaveStatus","Editor","BackColor","ForeColor","SaveTile","HideTileEditor","TileEditorObject","prependTo","scrollHeight","HTMLTiles","HTMLTileIndex","TileID","StatusName","stringValue","GetPendingPrintRequests","GetPendingPrintRequest","queueID","GetRequestsAndCreatePending","printRequestObject","CancelPrintRequest","Template_Attachments","Template_BatchCredit","Batches","StyleRow","Industry","ParticipatesIn","LastDate","Template_PendingSubsidies","PendingRequest","TransactionTypeName","RequestDate","AmountRequested","AttachmentCount","Template_ReportEditSummary","RoleKey","ParameterID","ParameterName","ReportParameters","10","12","ReportGroup","ReportRoles","OriginalUser","ApprovedDate","CriteriaInstruction","AllReportParameters","Template_ReportImage","PreviewImageID","PreviewImageURL","Template_ReportImagePreview","Template_ReportParameters","ApplicationReportType","Parameters","GetParameterControl","ClaimTableRecord","TruncateString","Type","DateOpened","Paid","Reserves","GetClaimDetailsURL","GenerateSearchOptions","PopulateOptionDropdown","DateClosed","eachArray","LossSummaryTableRecordList","CommafyNumber","OpenedSum","ClosedSum","LitigatedSum","PaidSum","ReservesSum","RecoveriesSum","IncurredSum","Audited","Contribution","FixedToPercentage","LossRatio","DecimalToPercentage","Frequency","ClaimClass","Opened","Closed","Litigated","Recovery","Template_SuperClaim","DefaultClientID","SuperClaim","Template_SuperClaims","CRM_DistributionListList","Template_ClientDetailsForm","DBA","LegalName","DetailValue","PrimaryContact","ContactFirst","ContactLast","ContactTitle","Phone1AC","Phone1","Phone1Ext","FaxAC","Fax","Email","ContactID","BillingAddress","AddressID","Address1","Address2","City","Zip","MaillingAddress","MailingAddress","ShippingAddress","FEIN","BusinessType","SubmissionDate","FullTimeEEs","PartTimeEEs","Template_DistributionEmailList","Greeting","FirstName","LastName","Template_DistributionFaxList","Template_DistributionListAdmin","isPrivate","Template_DistributionListEmailEditor","Template_DistributionPhoneList","Phone","Template_DistributionPostList","Template_GroupNoteEditor","CategoryType","IO","cleanedJSONObject","fullObject","AjaxBase","_base","defaultSettings","Put","JQueryHelper","nvpair","pairs","v","pair","rfc3986EncodeURIComponent","results","genericAJAXErrorHandler","GetFile","toReturn","GetHTML","HTMLPath","GetDefaultErrorFunction","StringData","AddNew","Code","Template_AttachmentGrid","GetQuoteInfo","GetAttachmentSections","GetAttachmentsByClientID","AttachmentGlobal","ShowFileUploader","UWRule","QuoteType","BindFilteredQuery","NewAttachment","BindAttachmentsBySectionID","NewAttachments","NewAttachmentObject","AttachmentSections","NewAttachmentResult","RefreshAttachments","GetAttachments","DeleteAttachment","FileType","GetAllowDocuments","disableDefaultDropzone","onProgress","loaded","total","ErrorMessage","empty","SectionIndex","ValidateDropZone","AjaxData","GetUWRule","RuleValue","GetPolicyPeriod","SecOptions","ErrorLogging","RecordError","Message","InternalMessage","StackTrace","Priority","ErrorObject","SourceType","Host","hostname","Resolution","ExceptionID","InstanceId","MouseClick","shiftKey","ctrlKey","Input","Select","Button","msf","E","F","T","Y","_m","_d","_r","_t","_c","_ct","_cr","G","H","LC","J","Q","K","S","P","N","O","R","U","B","getDay","getHours","getMinutes","getSeconds","setCulture","systemLanguage","language","A","isnull","replacementvalue","ClaimIntake","ClaimIntakeForm","Template_ClaimIntakeForm","CurrentClientID","Start","ClaimIntakeObject","NewIncidentObject","Progress","PreviousIndex","isValidated","UpdateActiveNavigationLink","FormCategoryID","ValidateFields","RequestFieldSave","TrackProgress","NavigateForms","MextIndex","RequestIncidentSave","GetRequestedForm","categoryName","formCategoryID","Finish","Dynamic","ConfirmIsValid","ProgressBar","NumberOfCategories","CurrentProgress","TotalProgress","CategoryCount","CategoryName","DisplayForm","primaryTarget","secondaryTarget","isPrevious","NextCategoryID","NextCategoryName","SaveIncident","incidentID","ClaimIntakeForm_Dynamic","FieldsObject","PopulateFieldData","FieldsObjectValues","SelectedDate","onSelect","ChangedField","dataSize","DataSizeValidator","ElementVal","FormatString","FormatedDate","NewFieldsArray","NewFieldsObject","FormFieldID","FieldValue","GetFieldValueInformation","FieldValues","CurrentField","CurrentFormFieldID","FieldIndex","CharLimit","Characteristic","Mantissa","ApplyPrevious","priorvalue","actualvalue","SetLabel","PendingChanges","SItemFormItem","Deleted","NewItem","SValue","FormatedText","formTypeID","ClaimIntakeForm_Finish","GetLateReasons","ClaimObject","SubmitIncident","PersistIncident","shortDate","FormCompletedDate","FormCompletedBy","FormCompletedTitle","LateReasonCode","LateReasons","ClaimIntakeForm_Start","GetInstructions","GetClientInformation","GetAdditionalClientInformation","GetLocations","StateAccountNo","AdditionalClientInformation","TypeOfEmployer","NatureOfBusiness","ClientInformation","ClientNumber","LocationID","Locations","InstructionsObject","Template_Categories","CategoriesObject","SaveFlag","CategoriesList","updateCategorySortOrder","updateRowColor","AddField","updateFieldsCategoriesList","checkAssociatedFields","deleteCategory","SaveCategories","FieldCount","getLastSortOrder","validateCategoryName","savedName","isDupilcate","DeleteCategory","categoryNameContext","categoryID","fields","FieldsArray","hasFields","getCategoryObjectByID","category","previousSortOrder","ClaimsForm","Template_ClaimsForm","Template_Groups","GetForms","FormsObject","isActive","FormTypeObject","GroupObject","ShowFormEditor","deleteFormType","deleteForm","post","Template_Fields","GetValidatorTypes","ProcessFieldCall","ValidatorTypes","SelectedCategoryIndex","SavingFlag","SortType","currentMasterDetail","isNewFieldActive","SelectedCategoryID","FormEditor","selectedIndex","SelectedCategoryName","GetDefaultField","FormEditable","Required","FieldType","Summarize","GridShow","FormShow","PortalShow","FieldLogic","FormSortOrder","getLastSortOrderIndex","ShowForm","GridSortOrder","BindFieldtoPresentation","PortalReadOnly","LongName","ToolTipText","ProcessFieldTypeChange","DisplayFormat","newFieldType","jxFieldLogicLabel","jxFieldValidator","jxFieldFormula","jxFieldDataType","ShowHideDetailRow","FieldEditButton","slideUp","slideDown","updateFieldSortOrder","addField","CategoryList","currentOptionValue","checkbox","jxSFieldSortOrderDisplay","jxSFieldShowInForm","jxSFieldReadonlyDisplay","RevertButton","IndexInArray","FieldTypeList","deleteField","isChecked","getFieldByIndex","formFieldID","getFieldByFieldID","fieldIndex","ValidateFieldInformation","isMissingValue","k","DynamicFieldTypes","FieldTypeValue","getFieldsByCategory","$this","fieldID","fieldsList","StickyCategoryName","isFieldArray","getFormTypeParameters","sortOrder","orderBy","SaveField","FormPicker","FormSelect_Template","FormSelect","ClientInfoObject","GetFormTypes","FormTypesObject","FormPath","RedirectToForm","ConfigureFields","GetCachedValues","thisWindow","ReturnFunctionString","Name","ReportForm","ScheduleObject","CombinedScheduleObject","tabs","heightStyle","SaveAll","SaveInformation","FieldCategoryName","Template_Information","Template_Notifications","Notifications","GetFormInformation","InformationObject","AssociatedGroups","Instructions","FormInformation","FinishInstructions","GetAssociatedGroups","SaveFormTypeNotification","RefreshNotifications","ShowNotificationEditor","ShowInstructionsEditor","GetNotificationsNotInFormType","GetNotificationsByFormTypeID","RefreshInformation","ValidateSummaryFields","SummaryFieldHasValue","SummaryFields","PersistFormToCache","DaysToStale","groupName","instructionType","AllNotifications","SuperClaimsSearch","QS","AutoSelectClient","SupportChildClaims","DisplaySuperClaims","SuperClaimsFilters","GetCoverages","BindFilter","ShowInactive","Paramters","Filterdescription","LineName","FilterClaimant","DateOfIncidentFilter","DateOfIncidentValue1","DateOfIncidentValue2","SuperClaimsObject","GetFilterValues","PostFilterResult","FilterParameters","Alerts","ClientTypes","GetClientTypes","ClientTypeName","DeleteClientType","bSortable","aTargets","clienttype","Departments","RecordType","behavior","ActionFormula","Result","TargetTag","TargetTrueValue","TargetFalseValue","TargetObjectType","ChangeElementProperty","TargetObjectID","ChangeSectionProperty","ComparisonType","ParentObjectID","resultindex","resultitem","StructureColumnID","TargetElement","objResultValue","FormElement","formatValue","trigger","GetFooterNavHTML","version","Repositories","ChangeResultsAPI","SaveSectionAPI","SubmitQuestionnaireAPI","submitQuestionnaireAPI","CachedResults","GetElementByID","FoundElement","ElementIndex","ElementsLength","elementID","valueIndex","ElementType","TextBox","Items","newValue","UpdateElementTextboxValue","UpdateElementGroupValue","StringValues","StringIndex","FormattedValue","GetNoChangeCheckboxHTML","formElement","CheckboxHTML","isNoChangeCheckboxVisible","NoChangeResultValue","GetResultSetValue","isCheckedValue","ChangeType","JSONObject","DisabledHTML","GetHelpForElement","HelpCollection","HelpIndex","HelpCount","GetHelpIconHTML","ShowElementMessage","Color","MessageID","insertAfter","ShowNoChange","PreviousResultSetID","MetaAttributeIndex","Attribute","GetElementByColumn","columnID","DataStructureColumnID","ShowRequiredLabel","ContainerID","BlockType","Visibility","GetCSSSafeString","Tag","GetElementHTML","ParentFormElement","PriorValue","MakeJoinedArrayReadable","elementvalue","ReplaceElementValue","RelatedValueItem","BitValue","GetElementCssClasses","DataColumn","CssClass","OnElementFocus","elementcontrol","ContentValue","Disabled","isNADisabled","TargetDataType","ResultValue","NAChecked","NAResult","AllowNA","GetMetaAttributeValue","Label","OpeningTag","ClosingTag","ValueCode","AllowHTML","Formatting","FormattedContentValue","GetElementID","GetSaveHTML","GetElementTitle","Text","NewTableRow","TableData","GetFileUploadListing","StyleBold","IsRequired","varValue","SaveNA","isNA","IsInternal","SetSectionStatus","NAValueItem","SetElementActivation","SaveMetaAttribute","ResultItem","ExistingFileCount","GetResultSetValueArray","ElementTag","FormattedTag","SaveHTML","ValueAsString","UseDecimals","RemoveFormatting","valueobject","TargetID","Section","objSection","CurrentVisibility","SaveSection","GridID","GetGridForm","qq","FineUploader","params","ResultSetID","clearStoredFiles","CurrentValueIndex","GetMaxValueIndex","PassedValidation","Explanation","ValidationLevel","AppendResult","SortResults","GetResultSetValueByTag","columnid","valueindex","passedvalidation","WarningLevel","ClearReviewed","DataString","ElementCalculations","BuildGrid","AddDeleteRows","RowIndices","CurrentForm","ElementLength","concat","GetNonVirtualValueIndexRows","HeaderHTML","getHeaderHTML","ContentMatrix","translateResultSettoGridMatrix","BodyHTML","getBodyHTML","FooterHTML","getFooterHTML","OutputGridHTML","GridHTML","GridElementID","THeadHTML","LabelColumnText","LabelHelp","OptionalLabels","ShowDeleteRows","TableContent","CurrentColumn","ContentMatrixValue","translateResultSettoGridMatrixValue","Calculations","getCalculationsHTML","CalculationsHTML","CalculatedElement","CalculationType","CalcIndex","getCalculatedColumn","CalculatedValue","RecalculateTotals","AllowDeleteRows","ResultSetCollection","rowIndices","TargetElementID","CurrentRowValueIndex","isElementDisabled","AddNewRow","ResultMax","MaxResultValue","ResultMap","GetResultKey","returnResultSetIndex","SaveResultFieldValue","DeleteValueIndex","DeleteElement","ExportTableasExcel","GetGridRow","RowContents","RowHTML","td","CurrentDialog","ChangeSectionDirection","Direction","NewSectionIndex","CurrentSectionIndex","GetSectionIndexbyIndex","NumSections","ChangeActiveSection","ResultMessage","DialogWindow","DialogMessage","jxFormDialog","Confirm","SubmitSection","GetSectionIDbyIndex","Cancel","collision","of","newSectionIndex","newStatus","GetSectionCompletionFlag","Tooltip","SectionElement","GetSectionCompletionFlagCSS","sectionstatus","LastVisibleIndex","FirstVisibleIndex","isElementVisible","ElementCount","PriorResult","RelatedResultValue","PriorResultAsString","AjaxValue","PreviousValue","GetResultItemAsString","ChangedResults","ProcessCalculatedResults","ProcessValidatedResults","ResultCount","ValidatedResult","ProcessValidationResult","ValidationResult","CalculatedResult","UpdatedResultItem","ExplanationText","ResultSetValue","executeSuccess","CreateMap","valuecount","GetDisabledStatus","UploadControl","SaveValue","datastructurecolumnid","tag","NewAnswer","CheckboxAnswer","CheckedResults","QueFormElement","isvalidated","ValidateField","jxNoChange","GetValueByTag","SenderTagValues","ElementName","ElementExists","ElementLookup","ELementType","ResultTagValues","Parent2ID","Parent3ID","ObjectTypeID","IncrementAttribute","controlid","answerindex","newanswer","CompleteForm","IgnoreWarnings","SaveObject","StatusChanged","WarningMessages","ErrorMessages","DialogButtons","objCurrentSection","CurrentSearchItemKey","beginIndex","endIndex","SearchKey","LoopCount","CurrentItem","ResultFound","TagRegex","isFound","NewResultItem","GridRowHistory","GetRowHistory","ScheduleGrid","ShowGridRowHistory","ShowReviewAnswer","ModalRefresh","Review","DisplayGrid","Filter","ParentFormID","SetupDataGridInputSearch","BindCategories","AnswerGrid","Template_AnswerGrid","GetGridForms","BindAttachments","BindGUI","ReviewSectionObject","PayrollIndex","FTEIndex","isSummarized","AnswerStatus","AjaxCalls","isAjaxRunning","dataTable","mRender","BindReviewSection","ReviewContainer","FooterRenderFunction","editable","nRow","iEnd","aiDisplay","footer","IndexValue","fnFooterCallback","AnswerGridObject","Answers","flagAR","change","ReviewerNotes","ReviewedBy","ReviewedDate","SingleAutoReview","AutoReview","CellData","SaveResultSetValue","sTitle","idx","SaveRowCellStatus","ShowReviewHistory","SaveRow","rowIndex","structureColumnID","GetGridValues","calculateColumn","columnIndex","DT","TotalCellCount","NewPayrollTotal","CellIndex","ProcessAnswers","AnswerRow","complete","AutoReviewFlag","PriorStringValue","PriorDateValue","PriorDecimalValue","PriorBitValue","PriorIntegerValue","ReviewStatus","CellObject","MuniUW_Details","PDF","CoverageLine","Template_QuoteInfo_CoverageLine","Commissions","Template_QuoteInfo_Commissions","Template_QuoteInfo_Payroll","Details","Template_QuoteInfo_QuoteDetails","GetQuoteDetails","GetCommissions","CommissionsObject","SavedCommissionObject","NewestCommissionID","PayrollObject","SavedPayrollObject","NewestPayrollID","CoverageLineObject","InfoObject","ActiveEditableCommssionIndex","ActiveEditablePayrollIndex","Producers","UseEstimatedPayroll","PDL","PDMax","ProRateDays","BindQuoteDetails","QuoteList","ParentQuoteID","DisablePage","BindCoverageLines","BindCommissions","GetProducers","ProducerList","ConstructProducersList","BindPayroll","StateList","ProductLineID","AddQuoteCoverageLine","DeleteCoverageLine","Property","ValidateQuoteProperty","border","CommissionMode","DeleteCommission","PersistCommission","SaveCommission","PayrollMode","DeletePayroll","GetPayroll","PersistPayroll","SavePayroll","BatchQuoteProperties","QuotePropertyObject","SaveBatchQuoteProperties","quoteproperty","Valid","NewExpiration","setFullYear","ValidationItem","Id","ValidateUseEstimatedPayroll","brokers","idTag","ProducerName","states","classTag","isCancelled","BrokerEdit","CurrentBroker","ProducerRepEdit","CurrentProducerRep","RateEdit","CurrentRate","CustomerEdit","CurrentCustomer","PrimaryEdit","CurrentPrimary","RatingEdit","CurrentRating","EditMode","DeleteMode","CurrentCommissionID","StateEdit","CurrentState","ClassCodeEdit","CurrentClassCode","AltClassEdit","CurrentAltClassCode","EmployeesEdit","CurrentEmployees","DescriptionEdit","CurrentDescription","PayrollEdit","CurrentPayroll","PayrollBaseRateEdit","CurrentBaseRate","GrossPremEdit","CurrentGrossPrem","CurrentPayrollID","DescriptionID","CommissionID","Commission","PayCommission","ProducerCustomerID","ProducerCSR","CommissionRate","UseRating","PrimaryProducer","ProducerRep","PayrollID","ClassCodeID","AltClassCode","EndDate","BaseRate","xMod","AdjustmentFactor","TotalCommission","NumberOfEE","UseDescription","PayrollAmount","DetailID","ParentDetailID","parentappid","isVerified","totalCommission","totalRatableCommission","TotalRatableCommission","SaveQuoteDetail","totalEEs","totalPayroll","totalGrossPrem","CalculateGrossPrem","TotalEmployees","TotalGrossPremium","DeleteQuoteCoverageLine","MuniUW_Finish","Premium","Template_QuotePremium","Billing","Template_QuotePremium_Billing","BillingSchedule","Template_QuotePremium_BillingSchedule","BRULE","MinPR","CalcD","DuDay","EQPay","AllowShortBillingMonthsInQuote","FirstBillingOffset","QuoteDetailArr","BillingObject","BillingRules","BillingType","Percentage","FirstPaymentDate","BillingPeriod","NumberOfPayments","DepositPercentage","BillingIncrement","CalcDepositAmount","PaymentTotal","OnePayment","DepositAmount","Fday","BindQuote","PolicyTotalE","CalculatePolicyTotal","PolicyTotalD","SaveQuoteDetails","SavePaymentSchedules","BuildBillingRules","CalcPercentage","BP","LoadDataFromCache","PT","includeInPolicyTotal","RefreshPage","LoadDataToCache","strRule","strRules","strBRules","BillingRule","BillingRuleName","strPercent","GetNextDate","CounterDate","dtCounterDate","cc","mulCalcDeposit","CounterAmount","OneMultNum","Surplus","PaymentAmount","Deposit","UWPaymentScheduleID","BillDate","BillAmount","DEffectiveDate","LoadFromQuoteDetails","FieldID","DMax","GetQuoteDetail","GetPaymentSchedules","MuniUW_FormulaWorksheet","FormulaWorksheet","Template_FormulaWorksheet","LastTabID","TopPosition","CurrentSelectedElementID","Methods","RecalculateSize","BindQTips","Target","adjust","method","fixed","delay","padding","InformationPanelID","HistoryID","VarID","AdditionalInfoPanel","RecalculateVariable","ShowHistory","ShowSaveVariable","FormatedValue","OriginalValue","ShowGUIAdminTools","HideGUIAdminTools","ShowFormulas","currentobject","ShowVariableTitles","ShowVariables","NotificationsBar","Left","Top","Position","WindowHeight","HeaderContainerHeight","GetNextEditableFocus","NextInput","GetQuoteObjectfromVarID","GetValueByDataType","VariableObj","RecalculateQuote","CopyQuote","AddEndorsementAPICall","AddEndorsement","Endorsement","OriginalQuoteID","CreateNewQuote","ConstructQuote","NewQuote","FullDate","addExtraYear","fullYear","QuoteDate","ProgramID","QuoteName","LoadFromQuoteDetailsToCache","DataCollection","QuotePropertyArray","retdisabled","retvalue","retclass","retdata","GetVarIDfromObject","GetControlTypeFromVarID","DataCleanValue","Locked","GenerateDropDownListFromSource","FieldOptions","ShowRecalculateQuote","ChangeStatus","ShowBindQuote","parentRefresh","SanitizeTitle","GetAppearanceControlProperties","ReadOnlyOverride","AppearanceObj","Collapsable","GetVariableDifference","DiffObj","Var1","Var2","DifObj","ControlOutput","EditableControl","Formula","CommissionAmount","Narrative","Document","Template_QuoteNarrative","NarrativeObject","NarrativeID","DeleteNarrative","NarrativeTypeID","ShowEditNarrativeURL","GetNarrative","GetNarrativeFromCollection","CurrentUser","NarrativeEditor","setData","NarrativeValue","Save","PersistValues","MuniUW_Premium","Template_QuotePremium_Premium","cookieValue","cookie","ExpandCoverageLines","cl","expires","removeCookie","ShowWorkSheet","qtPremiumCookieValue","MuniQuote_VariableHistory","History","Template_QuotePremium_VariableHistory","GetHistory","HistoryObj","ChangeHistory","MuniQuote_VariableSave","GetByGroupID","GetByClientID","UWQuoteAssignment","Template_AssigneeTypes","AssigneeTypes","Template_Assignments","Assignments","Template_AssigneeNames","AssigneeNames","GetAssigneeTypes","GetQuoteAssignments","AssigneeTypeID","CurrentAssignment","BindPresentationLayerAssigneeTypes","BindPresentationLayerAssigneeNames","AssigneeID","PersistFromCache","AssignmentObject","AssigneeTypeName","Primary","FromDate","ToDate","GetAssigneeNames","ResetNewAssignment","SaveNewAssignment","SaveExistingAssignment","Reference","GetReferences","EditAssignment","AssignID","GetAssigneeInformation","AssigneeName","ReferenceValueID","UpdateURL","TableName","ReferenceTable","GetReferenceTypesURL","NameSpace","GetReferencesURL","Refresh","GetReferenceTypes","ShowReferenceEdit","QueryString","ReferenceEditorURL","ReferenceEditor","isNew","NewReference","AdditionalReferenceObject","jsonReferences","Template_ReferenceEditor","UpdateAPI_URL_GET","UpdateAPI_URL_DELETE","UpdateAPI_URL_POST","References","ValueN","NewReferences","DeleteReferencesURL","PostReferencesURL","SaveReferences","DeleteReferences","BindNewPresentationLayer","AdditionalReferences","SCategories","Template_ScheduleCategories","ScheduleCategories","SInformation","ScheduleTypeID","GetScheduleCategories","ScheduleCategoriesObject","ScheduleCategoryID","SaveArray","Category","DeleteScheduleCateogory","SFields","Template_ScheduleFields","ScheduleFields","GetScheduleFields","ScheduleFieldsContainer","jxSFieldValidator","jxSFieldFormula","ScheduleFieldID","SaveScheduleFields","GetSummaryFields","GetSummary","CurrentURLParameters","IncludeClientColumn","ScheduleGroupGrid","ScheduleGridView","ScheduleGroupGridObject","StatusType","SummaryEnabled","ExportReportPath","ScheduleCategory","ScheduleItemSummary","ExportLinks","SourceColumn","visible","TotalObj","Summarized","TotalCells","TotalLabelDisplayed","TotalDisplay","isVisible","TotalAmount","mW","DataTableHelpers","BuildDataTableWithHeaders","GridEvents","BuildReportPath","ExportAll","GroupFilter","HashObject","DefaultImageID","ShowScheduleItemDetails","ScheduleItemID","GetFiltersFromURL","BindTabs","DeterminePageMode","DisplayType","groupspecValue","Template_ScheduleInformation","ScheduleInformation","ScheduleInformationObject","TextColor","SaveScheduleInformation","TileName","SummaryLabel","UpdateColorPickerOnChange","UpdatedBGHex","UpdateHexOnChange","UpdateTextHex","SInformationObject","UpdatedHexValue","TypeCategory","SummaryFieldID","GetDefaultImages","DefaultImages","GetScheduleInformationByID","SItemFormImageEdit","Template_ScheduleItemFormImageEdit","ScheduleItemFormImageEdit","ImageObject","GetScheduleItemImages","DeleteScheduleItemImage","ScheduleImageID","SItemFormFields","scheduleItemID","scheduleTypeID","Template_ScheduleItemFormFields","ScheduleItemFormFields","Template_ScheduleItemFieldHistory","ScheduleItemFieldHistory","PersistFieldsFromHTML","SaveAllFields","ColumnValue","SHistoryObject","HistoryName","Active","BindHistory","ClearStatusChangedFields","ProcessFields","NumOfUpdates","InsertRevertOption","SItemObject","PendingFields","FieldStatus","FieldsContainer","ItemFields","Template_ScheduleItemFormItem","ScheduleItemFormItem","GetItem","GetNewItem","GetScheduleTypeByID","DefaultFileID","SaveItem","GetLocationByClientID","SItemFormUploadImage","Template_ScheduleItemFormImageUpload","ScheduleItemFormImageUpload","ScheduleImageObject","GetFileID","GetTextareaLength","SaveScheduleItemImage","TextareaID","TextareaCountID","Textarea","CounterID","CurrentChars","RemaingChars","FileUploader","action","allowedExtensions","FileInfo","GetScheduleItemImage","isEdit","RefreshTab","AjaxString","RefreshScheduleEditImageTab","RefreshScheduleItemTab","ScheduleItemSummaries","SetupScheduleItemHelpers","Template_GroupTabs","GroupTabs","Template_ScheduleItemSummaries","Template_ScheduleItemLinks","Template_ScheduleItemExportLinks","GetSummaries","ScheduleItemSummaryDetails","hashParameters","Div","escape","GetGroupURL","GetSummaryURL","filterapplication","BindGroups","BindSummaries","Summaries","ScheduleItem","Style","QuoteDetail","StatusString","Utils","DecodedValue","VisibleOnPortal","AutoApprove","controller","then","fixFocusIE","dateText","inst","beforeShow","input","click","datatype","datasize","SaveButton","PendingFieldIndex","deferred","DeleteItem","GetStatus","isAutoApprove","isDeleted","isNewImage","UsedChars","EmployeeName","Language","CreatedDate","CreatedBy","CreatePrintURL","Template_InstructionsEditor","alias1","alias2","alias3","eachProperty","RateName","firstProperty","GetFormulaControl","14","Template_QuoteChecklist","blockParams","GroupTitle","Questions","QuestionID","QuestionMarker","QuestionText","Response","Template_QuoteDocuments","DocumentType","DocumentID","Documents","RoundTotalCommission","ClassCodeDescription","GetQuotePropertyTextbox","DaysInProgramYear","AddNumber","NarrativeText","CHSIDateTime","GetAppearanceTitle","GetAppearanceControl","Template_ScheduleGroupGrid","statustype","DateTime","getTodaysDate","moment","formatDate","dateFormat","getMonthName","isFullMonthName","validateYear","yearValue","yearRangeValidator","isYearValid","dateRangeValidator","startDate","endDate","regExp","Mustache","SetupCommonHelpers","matchText","selectedAttachmentCategoryID","Views","AttachmentCategoryDropDown","GetOptionHTML","QuickBind","HTMLTemplate","$container","GenericTemplate","quickBindPrecompiled","PrecompiledTemplate","Pagination","viewPortID","setRowCount","PageRenderLevel","ViewPortID","$viewPort","getViewPortPosition","topPosition","_self","AjaxBaseParameters","getPagedDataSet","updateViewPort","requestInfo","rederedData","Smart","SmartColumnObject","SmartObject","Sortable","recalculateOrder","classList","HTMLList","sortIndexProp","IDProp","sortList","newList","connectedLists","generateList","dataObject","DropTargets","$listContainer","generateNewListTile","tileHTML","Tables","Helpers","editColumn","targetRow","addCustomColumn","columnName","columnNameAsHTML","columnDataIndex","clickColumn","clickCallback","containerName","rowData","$grid","currentTarget","openMasterDetail","clickEventName","masterDetailTemplate","Settings2","createdRow","colDefCollection","colDef","ColumnDefinitions","newColDef","colHeaderCollection","colHeader","globalFilter","paging","TableEvents","displayLength","bFilter","showEntryDropDown","DTables","defineProperty","_$container","tableName","_$table","_dtObject","dto","addTableEvent","eventName","eventAction","tableEvents","executeTableEvents","hasURL","buildTable","reponses","responseCode","refreshTable","newData","preExecutionCallback","$table","newTable","beginBuildingTable","topSearch","columnSearch","dtObject","searching","pageLength","order","defaultSortColumn","lengthChange","dom","eq","colIdx","dataindex","columnindex","closeFunction","orderParentChildHierarchy","ParentChildPattern","orderedArray","currentParentID","iIndex","eIndex","checkForChildElement","resetIndex","generateHTMLList","checkForChildElements","depth","tabdepth","NumericHelpers","formatCurrency","decPlaces","thouSeparator","decSeparator","isCurrencySymbol","currencySymbol","deformatCurrency","ObjectHelpers","arrayEquals","leftObject","rightObject","isChanged","Windows","Popup","isParent","showIFrame","clickEvent","showHelp","HTMLContent","showInline","closeThisInline","targetID","BrokerPortal","SmartGrid","BrokerPortalData","buildFormColumnDefinitions","bindForms","$formGrid","_this","_getFilteredClaims","filters","smartgrid","_andBuildTable","BuildDataTable","BuildSettings","ClientSearch","searchVal","DefaultSearch","FilterCategory","FilterNameText","FilterValue","FilterAdd","Preferences","DefaultSearchType","_getFilteredClients","_andBuildTableWithSearch","GetFilteredClients","beforeSend","ExceptionDetail","eID","cdt1","exceptions","Exceptions","eObject","getExceptionsByID","buildExceptionDetailColumnDefinition","masterDetailExceptionView","prepareFields","rowObject","exceptionData","buildExceptionDetailTable","sourceTypeColorMarker","exceptionID","getLatestExceptions","bindEvents","sourceTypeName","classColor","constructExceptionData","buildExceptionTable","cdt","ParentContext","FormController","bindDataStructuresList","newFormObject","QuestionnaireBase","FormAPI","saveCompleteFormObject","preperFields","formObject","ActiveDate","InactiveDate","FormDescription","DataStructureController","Template_ReferenceType","ReferenceType","Template_References","ReferenceTypes","BindPresentationLayerReferenceType","GetSelectedReference","ShowNewReferenceEdit","DisplayName","ModifedReferenceObject","ReferenceValues","ClientTypeAdminController","TargetOutputElement","TargetTemplateElement","currentObject","currentTemplate","ClientIcons","GetClientType","SetupGlobalEvents","ClientType","IconImage","GetClientIconsDDL","ClientIcon","BindClientIconsDDL","SetClientIconsDDL","model","BindIconPreview","SaveClientType","GetClientTypeFromForm","check","OriginalClientTypeName","CancelClientType","clienttypename","MemberAccess","BrokerAccess","PartnerAccess","Image","GetIconPreview","ImageIcon","resultfunction","ClassCodeAdminController","TargetAddElement","TargetClientCodesElement","TargetInactiveFilterElement","GetAllClassCode","includeinactive","GetAllClassCodes","QuoteStatusAdminController","GetAllQuoteStatus","ScheduleTypesController","TargetGroupNameFilterElement","GetScheduleTypes","BindGroupPresentationLayer","showInactive","GroupOptions","ShowScheduleTypeEdit","resultFunction","AttachmentCategoryRepository","getAttachmentCategories","AttachmentCategory","parseJSONArray","Factories","RepositoryFactory","getAttachmentRepository","jsonObject","Children","findChildren","Self","attachmentCategory","JSONObjects","selectedID","DocumentRepository","getGroupDocumentType","ProductRepository","getGroupProductLines","getProductRepository","getDocumentRepository","Model","GroupLineDocument","GroupProductLine","GroupLineDocumentDropDown","getDropDownValues","GroupLineDocuments","existingGroupDocumentID","GroupDocument","GroupProductLineDropDown","GroupProductLines","DocumentGroupID","GroupLineProduct","AdminTools","ClaimServiceRepository","getClaimImports","QuoteDocumentBatchRepository","getQuoteDocumentBatch","QuoteDocumentBatch","getQuoteDocumentBatcheGrid","saveBatch","QuoteDoc","CleanedObject","WYSIWYG_Repo","getForms","dataStructureID","templateID","_routePrefix","getFormTypeGridByDataStructureID","saveForm","form","getCompleteFormByFormID","saveSection","io","saveSections","sections","saveElement","saveElements","getValueList","getContentType","copyForm","Base_ClaimIntakeEdit","source","_information","ClaimIntakeEditInformation","_categories","ClaimIntakeEditCategories","_fields","ClaimIntakeEditFields","setupEvents","bindSortable","containment","items","FormCategories","cO","cI","FormCategory","FormFields","fO","fI","updateFieldCategories","fcO","fcI","getTabMessage","activeTabIndex","informationMessage","categoryMessage","fieldMessage","clearMessage","$message","ClaimIntakeEditor_Information_Messages","NEW_UNSAVED","SAVED","MISSING_REQUIRED_INFORMATION","REPORT_FORM_ID_NOT_NUMERIC","ClaimIntakeEditor_Category_Messages","CHANGES_UNSAVED","SAVE_ERROR","ClaimIntakeEditor_Field_Messages","handlebarHelpers","SavedFieldTypeID","FieldTypeID","returnActiveFieldType","fieldTypeID","attributes","isRequired","_super","ClaimIntakeEdit","_$parentContainer","__extends","getCompleteForm","initEvents","contentTypes","getActiveGroups","groups","remainingUnsavedFields","saveFormType","saveCategories","fc","FormField","saveFormFields","_$categoryContainer","_activeTab","claimIntake","$result","handlebars","AdminTools_ClaimIntakeEditor_Categories","update","add","save","delete","validateCategories","getCategoriesByFormTypeID","catO","internalCat","reconstructFieldCategoryRelationship","getCategory","_$fieldContainer","_openCount","AdminTools_ClaimIntakeEditor_Fields","bindCategories","filterRow","getExpandedRowCount","minimizeAll","toggleFieldTypeOptions","toggleRowDisplay","remaining","selectCategory","$parent","ffO","ffI","isExpanded","$jqContext","$detail","getFormFields","formFields","propName","hasOwnProperty","newFieldCount","ff","getField","bindNotifications","AdminTools_ClaimIntakeEditor","AdminTools_ClaimIntakeEditor_Information_Notifications","bindCategoriesAndFields","validateReportFormID","instructionID","validateInformation","showInstructionEditor","isIncluded","updateGroup","notificationID","updateFormNotifications","showNotificationEditor","deleteNotification","wasNew","showPopUP","updateInstructions","updateAllNotifications","reportFormValue","isNumeric","formtypeid","newFormType","getInstructions","formType","agO","agI","ag","execute","Notifcation","getNotificationsByFormTypeID","notifications","saveFormTypeNotification","removeFormTypeNotification","notification","getNotificationsNotInFormType","anO","anI","removeFormNotification","nO","nI","QuestionnaireFormGridController","FormEditGrid","getDataStructures","openFormCopy","openForm","QuestionnaireWYSIWYG","bindGrid","formTitle","dataStructures","addEditColumn","addDeleteColumn","addCopyColumn","QuesitonnaireGridFormGridController","DataStructures","formEditGrid","eventSetup","QuoteDocsBatchController","SmartQuoteDocs","BatchTable","getBatchGrid","buildQuoteBatchTable","ShowWindow","QuoteBatchID","clickInformation","QuoteDocumentBatchWindow","QuoteDocsBatchEditController","$quoteDocContainer","getFromAPI","quoteDocumentBatch","setupWithQuoteDoc","quoteDoc","groupLineDocuments","GroupLineProducts","catData","bindPresentationLayer","validateForm","updateFromForm","bindGroupLineDocuments","GroupDocuments","Alert_Type","Alert_Name","Alert_Indicator","GetQuoteDocumentBatchRepository","GetClaimServiceRepository","Design","ValueList","DataStructureColumns","UsedDataStructureColumns","DataStructureCategory","metaSections","reconstruct_object","SectionMetaAttributes","metaElements","ElementMetaAttributes","metaForm","FormMetaAttributes","Form","eO","eI","mO","mI","dscolO","dscolI","dscol","dscatO","dscatI","dscat","sO","sI","FormSectionID","elements","getSelection","sectionID","ExportName","SQLSource","DestinationAddress","DestinationUsername","DestinationPassword","DestinationAttachmentCategoryID","Modules","$alerts","_$alert_container","getAlert","setContent","setType","setIndication","displaySectionNotification","displayElementNotification","MESSAGE","Content","Indicator","DEFAULT","SUCCESS","WARNING","ERRROR","AdminTools_QuestionnaireForm_Notifications","NO_NOTIFICATIONS_FORM","NO_NOTIFICATIONS_GRID","SAVE_SECTION_ERROR","sectionSaveError","SAVE_ELEMENT_ERROR","SAVE_ACTION_ERROR","elementSaveError","actionSaveError","Abstract","ClaimIntakeFormBase","intakeForm","$category_container","$information","validateFields","fieldValue","incompleteCategories","$cat","ClaimIntakeCategory_Status","COMPLETE","remainingCount","saveCategoryFields","categoryIndex","saveFields","updateCategoryField","cfO","cfI","updateCategoryProgress","$category","answered","percentCompleted","totalAvalibleQuestions","_Status","REVIEW","setCategoryStatusAsEnum","INCOMPLETE","progressType","updateFormProgress","completed","numberOfCategories","$formProgress","catI","getFormStatusAsEnum","enumStatus","ClaimIntakeForm_Status","NEW","OPEN","SUBMITTED","FIRST_AID","PENDING","NO_CATEGORIES","setFormStatusAsEnum","IncidentReport","getCategoryPhaseAsEnum","phase","enumPhase","ClaimIntakeForm_Phase","START","START_DYNAMIC","DYNAMIC","DYNAMIC_FINISH","FINISH","setCategoryPhaseAsEnum","_Phase","UNKNOWN","getCategoryStatusAsEnum","ERROR","setEnumNotificationRequest","enumRequest","ClaimIntakeNotification_Request","GENERAL_INFORMATION_ONE","GENERAL_INFORMATION_TWO","CATEGORY_PROGRESS_ERROR","FIELD_VALIDATION_ERROR","ClaimIncidentReportRepo","getIncident","submitIncident","fail","saveIncident","incidentObject","executeClaimIncidentSteps","executionStage","getAttachments","saveAttachment","attachment","deleteAttachment","ClaimRepo","getLateReasons","FormTypeRepo","getFormType","formTypeObject","getCategoriesByType","saveFormCategory","saveFormTypeCategories","formTypeCategories","deleteFormCategory","saveFormTypeField","formTypeField","saveFormTypeFields","formTypeFields","deleteFormField","IncidetnAttachmentRepo","IntakeFormCategoryRepo","IntakeFormFieldRepo","GetIntakeFormFields","ClaimIncidentReportID","SaveIntakeFormField","IntakeFormRepo","formTypeName","Notification_Repo","ClaimIntakeDynamicV2Controller","_categoryIndex","requiredSelect","fileUploader","requestNotification","formFieldType","multiselectValueCombiner","fileid","additionalNotificationInformation","ClaimIncidentAttachments","attachmentInfo","attObj","attO","getNotification","FIELD_ATTACHMENT_PREVIEW_AND_EDIT","attachmentID","attachmentTemplate","addAttachment","$newAttachment","newAttachment","$attachment","faO","faI","fa","combinedValue","fieldName","claimIncidents","currentValue","returnSelected","ClaimIntakeFinishV2Controller","submit","markFailedCategoires","FINISH_CATEGORIES_INCOMPLETE_ERROR","FINISH_INFORMATION_NOT_COMPLETED_ERROR","processMissingValues","$finish","EsignatureURL","EsignatureDocID","responseJSON","ClaimIntakeFormController","IntakeForm","client","getClientInformation","clientInfo","newIncidentID","removeUnwantedFields","prepareCategories","ClaimIntakeNavigationV2Controller","prcoessCategoryStatus","processCategoryPhases","requiredQuestions","requiredAndAnsweredQuestions","incident","missingValue","bindCategory","ClaimIntakeForm_Navigation","ClaimIntakeNotificationV2Controller","_start","ClaimIntakeStartV2Controller","_dynamic","_finish","categoryPhase","HideLocation","navigationBar","configureNavButtons","addInputMasks","mask","_$notification_container","_$notification_content","ClaimIntakeForm_Notifications","NotificationInformation","additionalInformation","notificationRequest","$notification","FORM_CATEGORIES_COMPLETE","getLocationGroupSpec","isStartValid","ClaimIntakeForm_Type","ClaimIncidentReport","TimeReportedForWork","DateOfDeath","ReturnedToWork","LastDayOfWork","DateReturned","WagesPaid","WagesContinued","DateNotified","DateFormProvided","NatureOfInjuryCode","CauseOfInjuryCode","AnatomyCode","AnatomyAffected","IncidentLocation","IncidentAddress","IncidentCity","IncidentState","IncidentZip","IncidentCounty","OccurredOnPremises","IncidentDepartment","OthersInvolved","IncidentMechanism","IncidentActions","IncidentDescription","PhysicianTreating","PhysicianAddress","PhysicianCity","PhysicianState","PhysicianZip","PhysicianPhone","HospitalName","HospitalAddress","HospitalCity","HospitalState","HospitalZip","HospitalPhone","HispitalERVisit","LostDays","ReceivedUnemployment","IncidentSupervisor","ValidityDoubted","Witness1","Witness2","Witness3","LightDutyAvailable","MCOName","LastWagesDate","EmpMiddleInitial","EmpFirstName","EmpLastName","SocialSecurityNo","DateOfBirth","EmpAddress","EmpCity","EmpState","EmpZip","EmpCountryCode","EmpPhone","EmpSex","EmpOccupation","DateOfHire","EmpDailyHours","EmpWorkDays","EmpWeekHours","EmpStatus","IncidentClassCode","EmpWages","EmpWagesPer","NonReportdWages","MaritalStatus","EmpHireState","EmpOfficer","EmpProprietor","EmpPartner","EmpDepartment","EmployedAtIncident","EmpNormalStart","EmpNormalEnd","ScheduledDays","PayPeriodEnds","PrimaryLanguage","SafetyEquipmentProvided","SafetyEquipmentUsed","ExtRefNum","TPACode","setEnumsStatusAsString","CreateTsmp","filteredCategories","saveCategory","filterFieldsByCategoryID","filterAllFieldsByCategory","formCategories","propagatePropertyValues","noteO","noteI","cat","catName","ClientAddInfo","ClientAddress","IntakeFormCategory","attI","always","lateReasons","lateO","lateI","instructions","clientAddress","AddTypeID","additionalClientInfo","getLocations","locations","locO","locI","IntakeFormField","saveIntakeFormField","LateReasonCodes","LateCode","LateType","LateDescription","SignNow","IframeURL","iframeURL","load","_$category","$makeActive","_$makeActiveProgress","$progress_bar","category_type","next_index","previous_index","last_index","$getCategory","$active","ClaimIntakeForum_Category","_$progress","$progress","$remaning","remaning_count","setProgress","progressClass","progressStatus","progressMessage","progressRemaining","_removeClasses","ChoreRepository","EnableChore","choreType","recurrance","ChoreType","Recurrence","DisableChore","ContentType_Repo","ChoreCoordinator","pageOutput","getChoreRepository","choreData","bindUI","choreID","choreid","buildOptions","DataTableObject","Chore","Enabled","Recurrance","NextExecution","LastExecution","SmartField","ValidationQueryResult","ValidationAlert","_fail","_warning","_pass","ValidationQueryResults","_hasValidationErrors","_i","_a","ValidationStatus","_hasValidationWarnings","GetValidationQueryResults","CreateValidationSummaryDiv","containerID","div","icon","msg","linkClass","cursorCSS","CreateValidationAlertModal","ValidationAlertsModal","hasWarnings","hasErrors","QuotePrebindModal","ValidationPassed","getClientAddressByClientID","Clients","getClientInfo","getAdditionalClientInfo","addTypeID","ClientAddID","DetailName","clientInformation","AddressType","Zip4","County","RelatedClientNumber","AccountNumber","Phone2","Phone3","P1Ext","P2Ext","P3Ext","ShippingAddress1","ShippingAddress2","ShippingCity","ShippingState","ShippingZip","BillingAddress1","BillingAddress2","BillingCity","BillingState","BillingZip","TerminationDate","Products","HasBilling","ExcessGroupPolicy","ExcessPolicy","LocationDBA","PhoneExt","LocationNumber","StoreNumber","Directions","RegionCode","Latitude","Longitude","ClaimEmail","LocationString","ViewModels","LoadPageByGroup","ShowLoading","HideLoading","MapFormToPolicy","Policy","MapFormToPolicyByLetter","letter","BPolicy","CPolicy","DPolicy","EPolicy","MapFormToExcess","GroupPolicy","ExcessProviderLetter","SaveExcessForm","SaveExcess","SavePolicy","GetPolicyByLetter","ExcessID","policy","excessID","groups_1","GetPolicies","groupID","PrevPoliciesDataTable","GetExcessByGroup","excess","GroupPolicyEff","CreateNewPolicy","ExcessProvider","CreatePolicyModal","NewExcessPolicy","buttonText","when","CP","DP","EP","DataStructure_Repo","activeOnly","getFormQuestionsByIndex","designID","elementsOnly","onSuccess","getFormDetails","getFormSections","getFormElements","getFormActions","saveNewForm","optionalFormObject","getFormInformation","QuoteForm_Repo","getQuoteSummaries","dueWithin","schemaTypeID","resultSetID","Section_Repo","initFormGrid","sData","StructureObject","fData","FormObject","GridFormObject","displayFormGrid","setupFormEvents","displayFormEditor","displayEditor","completeFormObject","ElementValues","reconstructFormObject","Detail","initDetails","initSections","getFieldValues","getDetailFieldValues","getSectionFieldValues","setFieldValues","getFormObjectIndexByFormID","currentFormItem","newObject","newElement","ElementColumns","z","hasPendingDeletedContent","hasPendingNewContent","DetailController","ContentController","formController","setDetailFieldValues","setupDetailEvents","isPortalEditable","getDataStructureNameByDataStructureID","activate","currentTab","getFormDetailHTML","Template_QuestionnaireForm","SectionContainerName","_$sectionContainer","SectionListItemName","ElementListItemName","_$elementContainer","ElementContainerName","ElementsObject","bindSectionTemplate","setupContentEvents","getSectionTemplate","Template_Sections","SectionsTemplate","$sectionContainer","getElementTemplate","Template_Elements","ElementsTemplate","$elementListItem","placeholder","bindElementTemplate","$sectionListItem","$elementContainer","elementIndex","deleteElement","sectionid","deleteSection","addNewSection","parentContainer","elementTypeID","addNewElement","toggleCollapse","ThisContext","HTMLRendered","getElementFieldValues","elementList","currentFormObject","pendingDeletedWaterMark","ActionController","initAction","getActionFieldValues","setActionFieldValues","setupActionEvents","dataStructureObject","dataStructureName","structure","DynFormObject","ElementHelp","ParentSecondID","ParentThirdID","QuoteForm","QuoteFormSummaryLookup","DueWithin","SchemaTypeID","QuestionnaireV2","showScheduleInCurrentWindow","showScheduleInNewWindow","showLocationsInNewWindow","showClientLocationsInNewWindow","CT","Questionnaire","ClaimSystem","Assignee","ClaimManagement","AssignmentModel","AssigneeInfo","AttachmentModel","Update","ClaimantModel","constuctor","ClaimModel","EventModel","IncidentInjuryModel","IncidentModel","LitigationContactModel","LitigationModel","NoteModel","PartyModel","PayeeModel","PaymentModel","Payee","ProviderModel","ReserveModel","TreatmentModel","Provider","TreatmentID","ProviderID","TreatmentType","TreatmentStatus","DataStructureColumn","ActionBehavior","LabelTemplate","RequiresReview","SortIndex","PrevAllowNA","Changed","ControlTypeName","MetaAttribute","getMetaAttribute","metaType","objectTypeID","metaAttribute","newMeta","foundMeta","NumOfElements","getProperties","getElement","ListOptions","ValueListOptions","LossHistory","API","LossHistoryAPI","getPriorCoverage","PriorCoverageID","getPriorCoverageLoss","PriorLossID","getPriorCoverageLosses","getPriorCoverageDetail","PriorDetailID","getPriorCoverageDetails","updatePriorCoverageUseLosses","priorCoverageID","useLosses","ImportPriorCoverageLosses","AsOfDate","getClassCode","getStates","SuccuessFunction","savePriorCoverageLosses","PriorCoverageLossObject","savePriorCoverageDetails","savePriorCoverage","priorCoverageObject","Controller","LossHistoryEditController","PriorCoverageDetailData","PriorCoverageLossData","LossHistoryContainerName","_$lossHistoryContainer","XmodID","isNewXmod","isXmod","pcData","PriorCoverageData","PriorCoverage","WorkSheetID","MasterPolicyPeriod","xModSuccessFunction","bindLossHistoryPresentationLayer","addStates","plData","bindLossesGrid","prData","bindPayrollGird","$lossHistoryContainer","validationCode","validateRequiredFields","validationResponse","models","clear","PriorCoverageLoss","PriorCoverageDetail","$lossInfoGrid","$payrollInfoGrid","validateNumericFields","saveLosses","refreshLosses","classCode","validateClassCode","saveDetails","refreshPayroll","ProductionDate","$losses","xMod_LossHistoryEdit_PriorCoverageLoss","$individual","$claimNumber","$medical","$indemnity","$paidActual","$paidAdjusted","$incurredActual","$inccuredAdjusted","$recovery","$type","$open","$lossComments","$payroll","xMod_LossHistoryEdit_PriorCoverageDetail","$state","$classCode","isValidClassCode","ParentContainerID","areFieldsValid","areFieldsNumeric","customReponse","getValues","lossesObject","processPriorCoverageLossValues","pclData","PCLs","PCDs","StatesList","$coverage","xMod_LossHistoryEdit_PriorCoverage","priorCoverage","$policyPeriod","$lossRunDate","$fromDate","$toDate","$carrier","$premium","Mod","$xMod","$overallComments","$priorCoverage","Source","PCD","$details","PCL","Quotes","QuoteAPIs","getQuoteRulesByGroupPeriod","rData","quoteRules","LPRIM","xSAL","IncurredAdjustedERA","bCLBR","RuleCode","Open","NumClaims","IndClaims","IncurredActual","IncurredAdjusted","primaryLosses","LERARuleApplied","PaidActual","PaidAdjusted","LossType","PrimaryERA","PrimaryLosses","isJQueryObject","getQuoteRuleByGroupPeriod","QuoteStatus_Repo","getQuoteStatuses","saveQuoteStatues","quoteStatusObject","QuoteRules","XMods","XModAPI","getDefaultxModWorksheet","getxModWorkSheet","XModID","getxModWorkSheets","getXModPolicyPeriods","getPolicyPeriods","savexModWorksheet","xModObject","XmodController","policyPeriodData","groupData","xModData","XMod","links","getPolicyPeriod","$XmodGrid","refreshGrid","getGroups","xmodData"],"mappings":"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","file":"CHSI10-3bb8cd2233.js","sourcesContent":["/**\r\n* COMMON DHTML FUNCTIONS\r\n* These are handy functions I use all the time.\r\n*\r\n* By Seth Banks (webmaster at subimage dot com)\r\n* http://www.subimage.com/\r\n*\r\n* Up to date code can be found at http://www.subimage.com/dhtml/\r\n*\r\n* This code is free for you to use anywhere, just keep this comment block.\r\n*/\r\n\r\n/**\r\n* X-browser event handler attachment and detachment\r\n* TH: Switched first true to false per http://www.onlinetools.org/articles/unobtrusivejavascript/chapter4.html\r\n*\r\n* @argument obj - the object to attach event to\r\n* @argument evType - name of the event - DONT ADD \"on\", pass only \"mouseover\", etc\r\n* @argument fn - function to call\r\n*/\r\n\r\nfunction addEvent(obj, evType, fn) {\r\n\tif (obj.addEventListener) {\r\n\t\tobj.addEventListener(evType, fn, false);\r\n\t\treturn true;\r\n\t} else if (obj.attachEvent) {\r\n\t\tvar r = obj.attachEvent(\"on\" + evType, fn);\r\n\t\treturn r;\r\n\t} else {\r\n\t\treturn false;\r\n\t}\r\n}\r\n\r\nvar GlobalWindow = null;\r\nfunction OpenWindow(url, windowname) {\r\n\tvar OpenNewWindow = false;\r\n\tif (GlobalWindow == null)\r\n\t{ OpenNewWindow = true }\r\n\telse {\r\n\t\tif (GlobalWindow.closed) {\r\n\t\t\tOpenNewWindow = true;\r\n\t\t}\r\n\t}\r\n\tif (OpenNewWindow == true) {\r\n\t\tGlobalWindow = window.open(url, windowname, 'scrollbars=yes, menubar=no, height=600, width=800, resizable=yes, toolbar=no, location=no, status=no');\r\n\t}\r\n\telse {\r\n\t\tGlobalWindow = window.open(url, windowname, 'scrollbars=yes, menubar=no, height=600, width=800, resizable=yes, toolbar=no, location=no, status=no');\r\n\t\tGlobalWindow.focus();\r\n\t}\r\n\r\n\treturn void (0);\r\n}\r\nfunction removeEvent(obj, evType, fn, useCapture) {\r\n\tif (obj.removeEventListener) {\r\n\t\tobj.removeEventListener(evType, fn, useCapture);\r\n\t\treturn true;\r\n\t} else if (obj.detachEvent) {\r\n\t\tvar r = obj.detachEvent(\"on\" + evType, fn);\r\n\t\treturn r;\r\n\t} else {\r\n\t\talert(\"Handler could not be removed\");\r\n\t}\r\n}\r\n\r\n/**\r\n* Code below taken from - http://www.evolt.org/article/document_body_doctype_switching_and_more/17/30655/\r\n*\r\n* Modified 4/22/04 to work with Opera/Moz (by webmaster at subimage dot com)\r\n*\r\n* Gets the full width/height because it's different for most browsers.\r\n*/\r\nfunction getViewportHeight() {\r\n\tif (window.innerHeight != window.undefined) return window.innerHeight;\r\n\tif (document.compatMode == 'CSS1Compat') return document.documentElement.clientHeight;\r\n\tif (document.body) return document.body.clientHeight;\r\n\r\n\treturn window.undefined;\r\n}\r\nfunction getViewportWidth() {\r\n\tvar offset = 17;\r\n\tvar width = null;\r\n\tif (window.innerWidth != window.undefined) return window.innerWidth;\r\n\tif (document.compatMode == 'CSS1Compat') return document.documentElement.clientWidth;\r\n\tif (document.body) return document.body.clientWidth;\r\n}\r\n\r\n/**\r\n* Gets the real scroll top\r\n*/\r\nfunction getScrollTop() {\r\n\tif (self.pageYOffset) // all except Explorer\r\n\t{\r\n\t\treturn self.pageYOffset;\r\n\t}\r\n\telse if (document.documentElement && document.documentElement.scrollTop)\r\n\t// Explorer 6 Strict\r\n\t{\r\n\t\treturn document.documentElement.scrollTop;\r\n\t}\r\n\telse if (document.body) // all other Explorers\r\n\t{\r\n\t\treturn document.body.scrollTop;\r\n\t}\r\n}\r\nfunction getScrollLeft() {\r\n\tif (self.pageXOffset) // all except Explorer\r\n\t{\r\n\t\treturn self.pageXOffset;\r\n\t}\r\n\telse if (document.documentElement && document.documentElement.scrollLeft)\r\n\t// Explorer 6 Strict\r\n\t{\r\n\t\treturn document.documentElement.scrollLeft;\r\n\t}\r\n\telse if (document.body) // all other Explorers\r\n\t{\r\n\t\treturn document.body.scrollLeft;\r\n\t}\r\n}\r\n\r\nvar PunctuationExp = /[$\\\\@\\\\\\#%\\^\\*\\(\\)\\[\\]\\+\\_\\{\\}\\`\\~\\=\\|\\.\\!\\<\\?\\/\\,\\>]/;\r\nvar PunctuationExpStrict = /[$\\\\@\\\\\\#%\\^\\*\\(\\)\\[\\]\\+\\_\\{\\}\\`\\~\\=\\|\\.\\!\\<\\?\\/\\,\\>]/;\r\nvar wordsearch = / suite | ste /i;\r\nfunction CheckBlank(val) {\r\n\tif (val.value == '') {\r\n\t\tval.value = 'Closed';\r\n\t}\r\n}\r\n\r\nfunction SelectAll(val) {\r\n\tval.select();\r\n}\r\nfunction dodacheck(val) {\r\n\r\n\tif (val.value.match(wordsearch)) {\r\n\t\tval.value = val.value.replace(/ suite/i, '').replace(/ ste/i, '');\r\n\t}\r\n\r\n}\r\nfunction isPlainText(e) {\r\n\tvar keynum;\r\n\tvar keychar;\r\n\tvar numcheck;\r\n\tif (window.event) //IE\r\n\t{\r\n\t\tkeynum = e.keyCode;\r\n\t}\r\n\telse if (e.which) //Netscape/Firefox/Opera\r\n\t{\r\n\t\tkeynum = e.which;\r\n\t}\r\n\tkeychar = String.fromCharCode(keynum);\r\n\treturn !PunctuationExp.test(keychar);\r\n}\r\nfunction isNumberKey(evt) {\r\n var charCode = (evt.which) ? evt.which : event.keyCode;\r\n //alert(charCode);\r\n\tif (charCode > 31 && (charCode < 48 || charCode > 57))\r\n\t\treturn false;\r\n\treturn true;\r\n}\r\nfunction isSSN(evt) {\r\n\tvar charCode = (evt.which) ? evt.which : event.keyCode\r\n\tif (charCode > 31 && (charCode < 48 || charCode > 57)) {\r\n\t\t//Not a number\r\n\t\tif (charCode != 32 && charCode != 45) {\r\n\t\t\t//not a - nor a space \r\n\t\t\treturn false;\r\n\t\t}\r\n\t}\r\n\treturn true;\r\n}\r\nfunction isDoubleKey(evt) {\r\n\tvar charCode = (evt.which) ? evt.which : event.keyCode\r\n\r\n\tif (charCode > 31 && (charCode < 48 || charCode > 57)) {\r\n\t\t//Not a number\r\n\t\tif (charCode != 46 && charCode != 45) {\r\n\t\t\t//not a .\r\n\t\t\treturn false;\r\n\t\t}\r\n\t}\r\n\treturn true;\r\n}\r\nfunction isUSZip(evt) {\r\n\tvar charCode = (evt.which) ? evt.which : event.keyCode\r\n\tif (charCode > 31 && (charCode < 48 || charCode > 57)) {\r\n\t\t//Not a number\r\n\t\tif (charCode != 45) {\r\n\t\t\t//not a -\r\n\t\t\treturn false;\r\n\t\t}\r\n\t}\r\n\treturn true;\r\n}\r\nfunction isDateKey(evt) {\r\n\tvar charCode = (evt.which) ? evt.which : event.keyCode\r\n\r\n\tif (charCode > 31 && (charCode < 48 || charCode > 57) && charCode != 47)\r\n\t\treturn false;\r\n\treturn true;\r\n}\r\nfunction addDays(myDate, days) {\r\n\treturn new Date(myDate.getTime() + days * 24 * 60 * 60 * 1000);\r\n}\r\n\r\nfunction gaussianRound(x) { var absolute = Math.abs(x); var sign = x == 0 ? 0 : (x < 0 ? -1 : 1); var floored = Math.floor(absolute); if (absolute - floored != 0.5) { return Math.round(absolute) * sign; } if (floored % 2 == 1) { return Math.ceil(absolute) * sign; } return floored * sign; }\r\nfunction gaussianRound2(x) { return gaussianRound(x * 100) / 100; }\r\nfunction isDate(dateStr) { return (!isNaN(new Date(dateStr).getYear())); }\r\nfunction DateDiff(firstdate, seconddate) { var date1 = new Date(firstdate); var date2 = new Date(seconddate); var one_day = 1000 * 60 * 60 * 24; return gaussianRound((date1 - date2) / (one_day)) * -1 }\r\nfunction addCommas(nStr) { nStr += ''; x = nStr.split('.'); x1 = x[0]; x2 = x.length > 1 ? '.' + x[1] : ''; var rgx = /(\\d+)(\\d{3})/; while (rgx.test(x1)) { x1 = x1.replace(rgx, '$1' + ',' + '$2'); } if (isNaN(nStr) == true) { return ''; } else { return x1 + x2; } }\r\nfunction ForceZero(nStr) {\r\n\tif (nStr == \"\") {\r\n\t\tnStr = 0;\r\n\t}\r\n\treturn nStr;\r\n}\r\n\r\nfunction Right(str, n)\r\n/***\r\nIN: str - the string we are RIGHTing\r\nn - the number of characters we want to return\r\n\r\nRETVAL: n characters from the right side of the string\r\n***/\r\n{\r\n\tif (n <= 0) // Invalid bound, return blank string\r\n\t\treturn \"\";\r\n\telse if (n > String(str).length) // Invalid bound, return\r\n\t\treturn str; // entire string\r\n\telse { // Valid bound, return appropriate substring\r\n\t\tvar iLen = String(str).length;\r\n\t\treturn String(str).substring(iLen, iLen - n);\r\n\t}\r\n}\r\n\r\nfunction InStr(strSearch, charSearchFor)\r\n/*\r\nInStr(strSearch, charSearchFor) : Returns the first location a substring (SearchForStr)\r\nwas found in the string str. (If the character is not\r\nfound, -1 is returned.)\r\n\t\t\t\t\t\t \r\nRequires use of:\r\nMid function\r\nLen function\r\n*/\r\n{\r\n\tfor (i = 0; i < Len(strSearch); i++) {\r\n\t\tif (charSearchFor == Mid(strSearch, i, 1)) {\r\n\t\t\treturn i;\r\n\t\t}\r\n\t}\r\n\treturn -1;\r\n}\r\n\r\nfunction FormatNumber(num, decimalNum, bolLeadingZero, bolParens, bolCommas, bolPadDecimals)\r\n/**********************************************************************\r\nIN:\r\nNUM - the number to format\r\ndecimalNum - the number of decimal places to format the number to\r\nbolLeadingZero - true / false - display a leading zero for\r\nnumbers between -1 and 1\r\nbolParens - true / false - use parenthesis around negative numbers\r\nbolCommas - put commas as number separators.\r\n \r\nRETVAL:\r\nThe formatted number!\r\n**********************************************************************/\r\n{\r\n\tif (isNaN(parseInt(num))) return \"NaN\";\r\n\r\n\tvar tmpNum = num;\r\n\tvar iSign = num < 0 ? -1 : 1; \t// Get sign of number\r\n\r\n\t// Adjust number so only the specified number of numbers after\r\n\t// the decimal point are shown.\r\n\ttmpNum *= Math.pow(10, decimalNum);\r\n\r\n\ttmpNum = Math.round(Math.abs(tmpNum))\r\n\ttmpNum /= Math.pow(10, decimalNum);\r\n\ttmpNum *= iSign; \t\t\t\t// Readjust for sign\r\n\r\n\t// Create a string object to do our formatting on\r\n\tvar tmpNumStr = new String(tmpNum);\r\n\r\n\t// See if we need to strip out the leading zero or not.\r\n\tif (!bolLeadingZero && num < 1 && num > -1 && num != 0)\r\n\t\tif (num > 0)\r\n\t\t\ttmpNumStr = tmpNumStr.substring(1, tmpNumStr.length);\r\n\t\telse\r\n\t\t\ttmpNumStr = \"-\" + tmpNumStr.substring(2, tmpNumStr.length);\r\n\r\n\t// See if we need to put in the commas\r\n\tif (bolCommas && (num >= 1000 || num <= -1000)) {\r\n\t\tvar iStart = tmpNumStr.indexOf(\".\");\r\n\t\tif (iStart < 0)\r\n\t\t\tiStart = tmpNumStr.length;\r\n\r\n\t\tiStart -= 3;\r\n\t\twhile (iStart >= 1) {\r\n\t\t\tif (iStart == 1 && tmpNumStr.charAt(0) == \"-\") {\r\n\t\t\t\t//We do not place a comma here, would be like saying -,1,000\r\n\t\t\t\t//This fixes continues even if we use the parans option theoretically it'd \r\n\t\t\t\t//transform into (,1,000), but this conditional stops it.\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\ttmpNumStr = tmpNumStr.substring(0, iStart) + \",\" + tmpNumStr.substring(iStart, tmpNumStr.length)\r\n\t\t\t}\r\n\t\t\tiStart -= 3;\r\n\t\t}\r\n\t}\r\n\r\n\t//handle partial decimals\r\n\tvar decimalpos = tmpNumStr.indexOf(\".\") + 1;\r\n\tif (bolPadDecimals) {\r\n\t\tif (decimalpos == 0) {\r\n\t\t\ttmpNumStr = tmpNumStr + \".\"\r\n\t\t\tdecimalpos = tmpNumStr.length;\r\n\t\t\t//For now, I'm ok with NOT forcing decimalNum positions, I just\r\n\t\t\t//want to avoid *partial* decimalNum, so we don't do anything\r\n\t\t}\r\n\t\tif (decimalpos + decimalNum != tmpNumStr.length) {\r\n\t\t\twhile (decimalpos + decimalNum != tmpNumStr.length) {\r\n\t\t\t\ttmpNumStr = tmpNumStr + \"0\"\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t// See if we need to use parenthesis\r\n\tif (bolParens && num < 0)\r\n\t\ttmpNumStr = \"(\" + tmpNumStr.substring(1, tmpNumStr.length) + \")\";\r\n\t//tmpNumStr = Left(tmpNumStr + '00', tmpNumStr.length);\r\n\tif (decimalNum == 0) {\r\n\t\ttmpNumStr = tmpNumStr.replace('.', '');\r\n\t}\r\n\treturn tmpNumStr; \t// Return our formatted string!\r\n}\r\nfunction Automove(currentlength, maxlength, boxtomove) {\r\n\tif (currentlength == maxlength) {\r\n\t\tdocument.getElementById(boxtomove).focus();\r\n\t}\r\n}\r\n\r\nfunction SafeAdd(val1, val2, val3, val4, val5, val6, val7, val8) {\r\n\tvar result = val1;\r\n\r\n\tif (val2 != undefined) {\r\n\t\tresult = ((result * 10000) + (val2 * 10000)) / 10000;\r\n\t}\r\n\tif (val3 != undefined) {\r\n\t\tresult = ((result * 10000) + (val3 * 10000)) / 10000;\r\n\t}\r\n\tif (val4 != undefined) {\r\n\t\tresult = ((result * 10000) + (val4 * 10000)) / 10000;\r\n\t}\r\n\tif (val5 != undefined) {\r\n\t\tresult = ((result * 10000) + (val5 * 10000)) / 10000;\r\n\t}\r\n\tif (val6 != undefined) {\r\n\t\tresult = ((result * 10000) + (val6 * 10000)) / 10000;\r\n\t}\r\n\tif (val7 != undefined) {\r\n\t\tresult = ((result * 10000) + (val7 * 10000)) / 10000;\r\n\t}\r\n\tif (val8 != undefined) {\r\n\t\tresult = ((result * 10000) + (val8 * 10000)) / 10000;\r\n\t}\r\n\treturn result;\r\n}\r\n\r\nfunction SafeSubtract(val1, val2, val3, val4, val5, val6, val7, val8) {\r\n\tvar result = val1;\r\n\r\n\tif (val2 != undefined) {\r\n\t\tresult = ((result * 10000) - (val2 * 10000)) / 10000;\r\n\t}\r\n\tif (val3 != undefined) {\r\n\t\tresult = ((result * 10000) - (val3 * 10000)) / 10000;\r\n\t}\r\n\tif (val4 != undefined) {\r\n\t\tresult = ((result * 10000) - (val4 * 10000)) / 10000;\r\n\t}\r\n\tif (val5 != undefined) {\r\n\t\tresult = ((result * 10000) - (val5 * 10000)) / 10000;\r\n\t}\r\n\tif (val6 != undefined) {\r\n\t\tresult = ((result * 10000) - (val6 * 10000)) / 10000;\r\n\t}\r\n\tif (val7 != undefined) {\r\n\t\tresult = ((result * 10000) - (val7 * 10000)) / 10000;\r\n\t}\r\n\tif (val8 != undefined) {\r\n\t\tresult = ((result * 10000) - (val8 * 10000)) / 10000;\r\n\t}\r\n\treturn result;\r\n}\r\n\r\nfunction SafeMultiply(val1, val2, val3, val4, val5, val6, val7, val8) {\r\n\tvar result = val1;\r\n\tif (val2 != undefined) {\r\n\t\tresult = ((result * 10000) * (val2 * 10000)) / 100000000;\r\n\r\n\t}\r\n\tif (val3 != undefined) {\r\n\t\tresult = ((result * 10000) * (val3 * 10000)) / 100000000;\r\n\t}\r\n\tif (val4 != undefined) {\r\n\t\tresult = ((result * 10000) * (val4 * 10000)) / 100000000;\r\n\t}\r\n\tif (val5 != undefined) {\r\n\t\tresult = ((result * 10000) * (val5 * 10000)) / 100000000;\r\n\t}\r\n\tif (val6 != undefined) {\r\n\t\tresult = ((result * 10000) * (val6 * 10000)) / 100000000;\r\n\t}\r\n\tif (val7 != undefined) {\r\n\t\tresult = ((result * 10000) * (val7 * 10000)) / 100000000;\r\n\t}\r\n\tif (val8 != undefined) {\r\n\t\tresult = ((result * 10000) * (val8 * 10000)) / 100000000;\r\n\t}\r\n\treturn result;\r\n}\r\n\r\nfunction SafeDivide(val1, val2, val3, val4, val5, val6, val7, val8) {\r\n\tvar result = val1;\r\n\r\n\tif (val2 != undefined) {\r\n\t\tresult = (result * 10000) / (val2 * 10000);\r\n\t}\r\n\tif (val3 != undefined) {\r\n\t\tresult = (result * 10000) / (val3 * 10000);\r\n\t}\r\n\tif (val4 != undefined) {\r\n\t\tresult = (result * 10000) / (val4 * 10000);\r\n\t}\r\n\tif (val5 != undefined) {\r\n\t\tresult = (result * 10000) / (val5 * 10000);\r\n\t}\r\n\tif (val6 != undefined) {\r\n\t\tresult = (result * 10000) / (val6 * 10000);\r\n\t}\r\n\tif (val7 != undefined) {\r\n\t\tresult = (result * 10000) / (val7 * 10000);\r\n\t}\r\n\tif (val8 != undefined) {\r\n\t\tresult = (result * 10000) / (val8 * 10000);\r\n\t}\r\n\treturn result;\r\n}\r\n\r\n/* Get the querystring */\r\nfunction PageQuery(q) {\r\n\tif (q.length > 1) this.q = q.substring(1, q.length);\r\n\telse this.q = null;\r\n\tthis.keyValuePairs = new Array();\r\n\tif (q) {\r\n\r\n\t\tfor (var i = 0; i < this.q.split(\"&\").length; i++) {\r\n\t\t\tthis.keyValuePairs[i] = this.q.split(\"&\")[i];\r\n\r\n\t\t}\r\n\t}\r\n\tthis.getKeyValuePairs = function () { return this.keyValuePairs; }\r\n\tthis.getValue = function (s) {\r\n\t\tfor (var j = 0; j < this.keyValuePairs.length; j++) {\r\n\t\t\tif (this.keyValuePairs[j].split(\"=\")[0] == s)\r\n\t\t\t\treturn this.keyValuePairs[j].split(\"=\")[1];\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\tthis.getParameters = function () {\r\n\t\tvar a = new Array(this.getLength());\r\n\t\tfor (var j = 0; j < this.keyValuePairs.length; j++) {\r\n\t\t\ta[j] = this.keyValuePairs[j].split(\"=\")[0];\r\n\t\t}\r\n\t\treturn a;\r\n\t}\r\n\tthis.getLength = function () { return this.keyValuePairs.length; }\r\n}\r\nfunction queryString(key) {\r\n\tvar page = new PageQuery(window.location.search);\r\n\treturn unescape(page.getValue(key));\r\n}\r\nfunction displayItem(key) {\r\n\tif (queryString(key) == 'false') {\r\n\t\tdocument.write(\"you didn't enter a ?name=value querystring item.\");\r\n\t} else {\r\n\t\tdocument.write(queryString(key));\r\n\t}\r\n}\r\n/* Sortable */\r\n/*\r\nSortTable\r\nversion 2\r\n7th April 2007\r\nStuart Langridge, http://www.kryogenix.org/code/browser/sorttable/\r\n \r\nInstructions:\r\nDownload this file\r\nAdd to your HTML\r\nAdd class=\"sortable\" to any table you'd like to make sortable\r\nClick on the headers to sort\r\n \r\nThanks to many, many people for contributions and suggestions.\r\nLicenced as X11: http://www.kryogenix.org/code/browser/licence.html\r\nThis basically means: do what you want with it.\r\n*/\r\n\r\nvar restart = true;\r\nvar stIsIE = /*@cc_on!@*/false;\r\n\r\n//Checkboxes\r\n//global variables that can be used by ALL the function son this page.\r\n\r\nvar inputs;\r\nvar imgFalse = ImageBase + 'icons/false.png';\r\nvar imgTrue = ImageBase + 'icons/true.png';\r\nvar checkboxesdone = false;\r\n\r\nfunction replaceChecks() {\r\n return false;\r\n\t//get all the input fields on the page \r\n\tinputs = document.getElementsByTagName('input');\r\n\r\n\t//cycle trough the input fields \r\n\tfor (var i = 0; i < inputs.length; i++) {\r\n\r\n\t\t//check if the input is a checkbox \r\n\t\tif (inputs[i].getAttribute('type') == 'checkbox') {\r\n\r\n\t\t\t//create a new image \r\n\t\t\tvar img = document.createElement('img');\r\n\r\n\t\t\t//check if the checkbox is checked \r\n\t\t\tif (inputs[i].checked) {\r\n\t\t\t\timg.src = imgTrue;\r\n\t\t\t} else {\r\n\t\t\t\timg.src = imgFalse;\r\n\t\t\t}\r\n\r\n\t\t\t//set image ID and onclick action \r\n\t\t\timg.id = 'checkImage' + i;\r\n\t\t\t//set image\r\n\t\t\timg.onclick = new Function('checkChange(' + i + ')');\r\n\t\t\timg.style.display = 'inline';\r\n\t\t\timg.style.marginLeft = '2px';\r\n\t\t\timg.style.cursor = 'pointer';\r\n\t\t\t//place image in front of the checkbox \r\n\t\t\tinputs[i].parentNode.insertBefore(img, inputs[i]);\r\n\r\n\t\t\t//hide the checkbox\r\n\t\t\tinputs[i].style.display = 'none';\r\n\t\t\tif (inputs[i].onclick) {\r\n\t\t\t\tdean_addEvent(img, \"click\", inputs[i].onclick)\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n}\r\n\r\n//change the checkbox status and the replacement image \r\nfunction checkChange(i) {\r\n\r\n\tif (inputs[i].checked) {\r\n\t\tinputs[i].checked = '';\r\n\r\n\t\tdocument.getElementById('checkImage' + i).src = imgFalse;\r\n\t} else {\r\n\t\tinputs[i].checked = 'checked';\r\n\r\n\t\tdocument.getElementById('checkImage' + i).src = imgTrue;\r\n\t}\r\n\r\n\r\n}\r\n\r\n\r\n\r\n\r\nsorttable = {\r\n\tinit: function () {\r\n\t\t// quit if this function has already been called\r\n\r\n\t\tif (restart) {\r\n\t\t\targuments.callee.done = false;\r\n\t\t\trestart = false;\r\n\t\t\treplaceChecks();\r\n\t\t}\r\n\r\n\t\tif (arguments.callee.done) return;\r\n\t\t// flag this function so we don't do the same thing twice\r\n\r\n\t\targuments.callee.done = true;\r\n\t\t// kill the timer\r\n\t\tif (_timer) clearInterval(_timer);\r\n\r\n\t\tif (!document.createElement || !document.getElementsByTagName) return;\r\n\r\n\t\tsorttable.DATE_RE = /^(\\d\\d?)[\\/\\.-](\\d\\d?)[\\/\\.-]((\\d\\d)?\\d\\d)$/;\r\n\t\tforEach(document.getElementsByTagName('table'), function (table) {\r\n\t\t\tif (table.className.search(/\\bsortable\\b/) != -1) {\r\n\t\t\t\tsorttable.makeSortable(table);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t},\r\n\r\n\tmakeSortable: function (table) {\r\n\t\tif (table.getElementsByTagName('thead').length == 0) {\r\n\t\t\t// table doesn't have a tHead. Since it should have, create one and\r\n\t\t\t// put the first table row in it.\r\n\t\t\tthe = document.createElement('thead');\r\n\t\t\tthe.appendChild(table.rows[0]);\r\n\t\t\ttable.insertBefore(the, table.firstChild);\r\n\t\t}\r\n\t\t// Assign classes to the rows when the table's first loaded\r\n\t\tif (table.tBodies[0] == null) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tfor (i = 1; i < table.rows.length; i++) {\r\n\t\t\ttable.rows[i].className = table.rows[i].className.replace(\"arow\", \"\").replace(\"prow\", \"\")\r\n\t\t\tif (i % 2 == 0) table.rows[i].className = table.rows[i].className + ' prow';\r\n\t\t\telse table.rows[i].className = table.rows[i].className + ' arow';\r\n\t\t}\r\n\r\n\t\t// Safari doesn't support table.tHead, sigh\r\n\t\tif (table.tHead == null) table.tHead = table.getElementsByTagName('thead')[0];\r\n\r\n\t\tif (table.tHead.rows.length != 1) return; // can't cope with two header rows\r\n\r\n\t\t// Sorttable v1 put rows with a class of \"sortbottom\" at the bottom (as\r\n\t\t// \"total\" rows, for example). This is B&R, since what you're supposed\r\n\t\t// to do is put them in a tfoot. So, if there are sortbottom rows,\r\n\t\t// for backwards compatibility, move them to tfoot (creating it if needed).\r\n\t\tsortbottomrows = [];\r\n\t\tfor (var i = 0; i < table.rows.length; i++) {\r\n\t\t\tif (table.rows[i].className.search(/\\bsortbottom\\b/) != -1) {\r\n\t\t\t\tsortbottomrows[sortbottomrows.length] = table.rows[i];\r\n\t\t\t}\r\n\t\t}\r\n\t\tif (sortbottomrows) {\r\n\t\t\tif (table.tFoot == null) {\r\n\t\t\t\t// table doesn't have a tfoot. Create one.\r\n\t\t\t\ttfo = document.createElement('tfoot');\r\n\t\t\t\ttable.appendChild(tfo);\r\n\t\t\t}\r\n\t\t\tfor (var i = 0; i < sortbottomrows.length; i++) {\r\n\t\t\t\ttfo.appendChild(sortbottomrows[i]);\r\n\t\t\t}\r\n\t\t\tdelete sortbottomrows;\r\n\t\t}\r\n\r\n\t\t// work through each column and calculate its type\r\n\t\theadrow = table.tHead.rows[0].cells;\r\n\t\tfor (var i = 0; i < headrow.length; i++) {\r\n\t\t\t// manually override the type with a sorttable_type attribute\r\n\t\t\tif (!headrow[i].className.match(/\\bsorttable_nosort\\b/)) { // skip this col\r\n\t\t\t\tmtch = headrow[i].className.match(/\\bsorttable_([a-z0-9]+)\\b/);\r\n\t\t\t\tif (mtch) { override = mtch[1]; }\r\n\t\t\t\tif (mtch && typeof sorttable[\"sort_\" + override] == 'function') {\r\n\t\t\t\t\theadrow[i].sorttable_sortfunction = sorttable[\"sort_\" + override];\r\n\t\t\t\t} else {\r\n\t\t\t\t\theadrow[i].sorttable_sortfunction = sorttable.guessType(table, i);\r\n\t\t\t\t}\r\n\t\t\t\t// make it clickable to sort\r\n\t\t\t\theadrow[i].sorttable_columnindex = i;\r\n\t\t\t\theadrow[i].sorttable_tbody = table.tBodies[0];\r\n\t\t\t\tdean_addEvent(headrow[i], \"click\", function (e) {\r\n\t\t\t\t\tvar obj = document.getElementById('scrollcontainer');\r\n\t\t\t\t\tif (obj) {\r\n\t\t\t\t\t\tscrollcontainer.scrollTop = 0;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (this.className.search(/\\bsorttable_sorted\\b/) != -1) {\r\n\t\t\t\t\t\t// if we're already sorted by this column, just \r\n\t\t\t\t\t\t// reverse the table, which is quicker\r\n\t\t\t\t\t\tsorttable.reverse(this.sorttable_tbody);\r\n\t\t\t\t\t\tthis.className = this.className.replace('sorttable_sorted',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t'sorttable_sorted_reverse');\r\n\t\t\t\t\t\tthis.removeChild(document.getElementById('sorttable_sortfwdind'));\r\n\t\t\t\t\t\tsortrevind = document.createElement('span');\r\n\t\t\t\t\t\tsortrevind.id = \"sorttable_sortrevind\";\r\n\t\t\t\t\t\tsortrevind.innerHTML = stIsIE ? ' 5' : ' ▴';\r\n\t\t\t\t\t\tthis.appendChild(sortrevind);\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (this.className.search(/\\bsorttable_sorted_reverse\\b/) != -1) {\r\n\t\t\t\t\t\t// if we're already sorted by this column in reverse, just \r\n\t\t\t\t\t\t// re-reverse the table, which is quicker\r\n\t\t\t\t\t\tsorttable.reverse(this.sorttable_tbody);\r\n\t\t\t\t\t\tthis.className = this.className.replace('sorttable_sorted_reverse',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t'sorttable_sorted');\r\n\t\t\t\t\t\tthis.removeChild(document.getElementById('sorttable_sortrevind'));\r\n\t\t\t\t\t\tsortfwdind = document.createElement('span');\r\n\t\t\t\t\t\tsortfwdind.id = \"sorttable_sortfwdind\";\r\n\t\t\t\t\t\tsortfwdind.innerHTML = stIsIE ? ' 6' : ' ▾';\r\n\t\t\t\t\t\tthis.appendChild(sortfwdind);\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// remove sorttable_sorted classes\r\n\t\t\t\t\ttheadrow = this.parentNode;\r\n\t\t\t\t\tforEach(theadrow.childNodes, function (cell) {\r\n\t\t\t\t\t\tif (cell.nodeType == 1) { // an element\r\n\t\t\t\t\t\t\tcell.className = cell.className.replace('sorttable_sorted_reverse', '');\r\n\t\t\t\t\t\t\tcell.className = cell.className.replace('sorttable_sorted', '');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t\tsortfwdind = document.getElementById('sorttable_sortfwdind');\r\n\t\t\t\t\tif (sortfwdind) { sortfwdind.parentNode.removeChild(sortfwdind); }\r\n\t\t\t\t\tsortrevind = document.getElementById('sorttable_sortrevind');\r\n\t\t\t\t\tif (sortrevind) { sortrevind.parentNode.removeChild(sortrevind); }\r\n\r\n\t\t\t\t\tthis.className += ' sorttable_sorted';\r\n\t\t\t\t\tsortfwdind = document.createElement('span');\r\n\t\t\t\t\tsortfwdind.id = \"sorttable_sortfwdind\";\r\n\t\t\t\t\tsortfwdind.innerHTML = stIsIE ? ' 6' : ' ▾';\r\n\t\t\t\t\tthis.appendChild(sortfwdind);\r\n\r\n\t\t\t\t\t// build an array to sort. This is a Schwartzian transform thing,\r\n\t\t\t\t\t// i.e., we \"decorate\" each row with the actual sort key,\r\n\t\t\t\t\t// sort based on the sort keys, and then put the rows back in order\r\n\t\t\t\t\t// which is a lot faster because you only do getInnerText once per row\r\n\t\t\t\t\trow_array = [];\r\n\t\t\t\t\tcol = this.sorttable_columnindex;\r\n\t\t\t\t\trows = this.sorttable_tbody.rows;\r\n\t\t\t\t\tfor (var j = 0; j < rows.length; j++) {\r\n\t\t\t\t\t\trow_array[row_array.length] = [sorttable.getInnerText(rows[j].cells[col]), rows[j]];\r\n\t\t\t\t\t}\r\n\t\t\t\t\t/* If you want a stable sort, uncomment the following line */\r\n\t\t\t\t\t//sorttable.shaker_sort(row_array, this.sorttable_sortfunction);\r\n\t\t\t\t\t/* and comment out this one */\r\n\t\t\t\t\trow_array.sort(this.sorttable_sortfunction);\r\n\r\n\t\t\t\t\ttb = this.sorttable_tbody;\r\n\t\t\t\t\tfor (var j = 0; j < row_array.length; j++) {\r\n\t\t\t\t\t\ttb.appendChild(row_array[j][1]);\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// Assign classes to the rows when the table's first loaded\r\n\t\t\t\t\tfor (i = 1; i < table.rows.length; i++) {\r\n\t\t\t\t\t\ttable.rows[i].className = table.rows[i].className.replace(\"arow\", \"\").replace(\"prow\", \"\")\r\n\t\t\t\t\t\tif (i % 2 == 0) table.rows[i].className = table.rows[i].className + ' prow';\r\n\t\t\t\t\t\telse table.rows[i].className = table.rows[i].className + ' arow';\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tdelete row_array;\r\n\t\t\t\t});\r\n\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\r\n\tguessType: function (table, column) {\r\n\t\t// guess the type of a column based on its first non-blank row\r\n\t\tsortfn = sorttable.sort_alpha;\r\n\t\tfor (var i = 0; i < table.tBodies[0].rows.length; i++) {\r\n\t\t\ttext = sorttable.getInnerText(table.tBodies[0].rows[i].cells[column]);\r\n\t\t\tif (text != '') {\r\n\t\t\t\tif (text.match(/^-?[£$¤]?[\\d,.]+%?$/)) {\r\n\t\t\t\t\treturn sorttable.sort_numeric;\r\n\t\t\t\t}\r\n\t\t\t\t// check for a date: dd/mm/yyyy or dd/mm/yy \r\n\t\t\t\t// can have / or . or - as separator\r\n\t\t\t\t// can be mm/dd as well\r\n\t\t\t\tpossdate = text.match(sorttable.DATE_RE)\r\n\t\t\t\tif (possdate) {\r\n\t\t\t\t\t// looks like a date\r\n\t\t\t\t\tfirst = parseInt(possdate[1]);\r\n\t\t\t\t\tsecond = parseInt(possdate[2]);\r\n\t\t\t\t\tif (first > 12) {\r\n\t\t\t\t\t\t// definitely dd/mm\r\n\t\t\t\t\t\treturn sorttable.sort_ddmm;\r\n\t\t\t\t\t} else if (second > 12) {\r\n\t\t\t\t\t\treturn sorttable.sort_mmdd;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t// looks like a date, but we can't tell which, so assume\r\n\t\t\t\t\t\t// that it's dd/mm (English imperialism!) and keep looking\r\n\t\t\t\t\t\tsortfn = sorttable.sort_ddmm;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn sortfn;\r\n\t},\r\n\r\n\tgetInnerText: function (node) {\r\n\t\t// gets the text we want to use for sorting for a cell.\r\n\t\t// strips leading and trailing whitespace.\r\n\t\t// this is *not* a generic getInnerText function; it's special to sorttable.\r\n\t\t// for example, you can override the cell text with a customkey attribute.\r\n\t\t// it also gets .value for fields.\r\n\r\n\t\thasInputs = (typeof node.getElementsByTagName == 'function') &&\r\n\t\t\t\t node.getElementsByTagName('input').length;\r\n\r\n\t\tif (node.getAttribute(\"sorttable_customkey\") != null) {\r\n\t\t\treturn node.getAttribute(\"sorttable_customkey\");\r\n\t\t}\r\n\t\telse if (typeof node.textContent != 'undefined' && !hasInputs) {\r\n\t\t\treturn node.textContent.replace(/^\\s+|\\s+$/g, '');\r\n\t\t}\r\n\t\telse if (typeof node.innerText != 'undefined' && !hasInputs) {\r\n\t\t\treturn node.innerText.replace(/^\\s+|\\s+$/g, '');\r\n\t\t}\r\n\t\telse if (typeof node.text != 'undefined' && !hasInputs) {\r\n\t\t\treturn node.text.replace(/^\\s+|\\s+$/g, '');\r\n\t\t}\r\n\t\telse {\r\n\t\t\tswitch (node.nodeType) {\r\n\t\t\t\tcase 3:\r\n\t\t\t\t\tif (node.nodeName.toLowerCase() == 'input') {\r\n\t\t\t\t\t\treturn node.value.replace(/^\\s+|\\s+$/g, '');\r\n\t\t\t\t\t}\r\n\t\t\t\tcase 4:\r\n\t\t\t\t\treturn node.nodeValue.replace(/^\\s+|\\s+$/g, '');\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 1:\r\n\t\t\t\tcase 11:\r\n\t\t\t\t\tvar innerText = '';\r\n\t\t\t\t\tfor (var i = 0; i < node.childNodes.length; i++) {\r\n\t\t\t\t\t\tinnerText += sorttable.getInnerText(node.childNodes[i]);\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn innerText.replace(/^\\s+|\\s+$/g, '');\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\r\n\treverse: function (tbody) {\r\n\t\t// reverse the rows in a tbody\r\n\t\tnewrows = [];\r\n\t\tfor (var i = 0; i < tbody.rows.length; i++) {\r\n\t\t\tnewrows[newrows.length] = tbody.rows[i];\r\n\t\t}\r\n\t\tfor (var i = newrows.length - 1; i >= 0; i--) {\r\n\t\t\ttbody.appendChild(newrows[i]);\r\n\t\t}\r\n\t\tdelete newrows;\r\n\t},\r\n\r\n\t/* sort functions\r\n\teach sort function takes two parameters, a and b\r\n\tyou are comparing a[0] and b[0] */\r\n\tsort_numeric: function (a, b) {\r\n\t\taa = parseFloat(a[0].replace(/[^0-9.-]/g, ''));\r\n\t\tif (isNaN(aa)) aa = 0;\r\n\t\tbb = parseFloat(b[0].replace(/[^0-9.-]/g, ''));\r\n\t\tif (isNaN(bb)) bb = 0;\r\n\t\treturn aa - bb;\r\n\t},\r\n\tsort_alpha: function (a, b) {\r\n\t if (a[0].toLowerCase() == b[0].toLowerCase()) return 0;\r\n\t if (a[0].toLowerCase() < b[0].toLowerCase()) return -1;\r\n\t return 1;\r\n\t},\r\n\tsort_ddmm: function (a, b) {\r\n\t\tmtch = a[0].match(sorttable.DATE_RE);\r\n\t\ty = mtch[3]; m = mtch[2]; d = mtch[1];\r\n\t\tif (m.length == 1) m = '0' + m;\r\n\t\tif (d.length == 1) d = '0' + d;\r\n\t\tdt1 = y + m + d;\r\n\t\tmtch = b[0].match(sorttable.DATE_RE);\r\n\t\ty = mtch[3]; m = mtch[2]; d = mtch[1];\r\n\t\tif (m.length == 1) m = '0' + m;\r\n\t\tif (d.length == 1) d = '0' + d;\r\n\t\tdt2 = y + m + d;\r\n\t\tif (dt1 == dt2) return 0;\r\n\t\tif (dt1 < dt2) return -1;\r\n\t\treturn 1;\r\n\t},\r\n\tsort_mmdd: function (a, b) {\r\n\t\tmtch = a[0].match(sorttable.DATE_RE);\r\n\t\ty = mtch[3]; d = mtch[2]; m = mtch[1];\r\n\t\tif (m.length == 1) m = '0' + m;\r\n\t\tif (d.length == 1) d = '0' + d;\r\n\t\tdt1 = y + m + d;\r\n\t\tmtch = b[0].match(sorttable.DATE_RE);\r\n\t\ty = mtch[3]; d = mtch[2]; m = mtch[1];\r\n\t\tif (m.length == 1) m = '0' + m;\r\n\t\tif (d.length == 1) d = '0' + d;\r\n\t\tdt2 = y + m + d;\r\n\t\tif (dt1 == dt2) return 0;\r\n\t\tif (dt1 < dt2) return -1;\r\n\t\treturn 1;\r\n\t},\r\n\r\n\tshaker_sort: function (list, comp_func) {\r\n\t\t// A stable sort function to allow multi-level sorting of data\r\n\t\t// see: http://en.wikipedia.org/wiki/Cocktail_sort\r\n\t\t// thanks to Joseph Nahmias\r\n\t\tvar b = 0;\r\n\t\tvar t = list.length - 1;\r\n\t\tvar swap = true;\r\n\r\n\t\twhile (swap) {\r\n\t\t\tswap = false;\r\n\t\t\tfor (var i = b; i < t; ++i) {\r\n\t\t\t\tif (comp_func(list[i], list[i + 1]) > 0) {\r\n\t\t\t\t\tvar q = list[i]; list[i] = list[i + 1]; list[i + 1] = q;\r\n\t\t\t\t\tswap = true;\r\n\t\t\t\t}\r\n\t\t\t} // for\r\n\t\t\tt--;\r\n\r\n\t\t\tif (!swap) break;\r\n\r\n\t\t\tfor (var i = t; i > b; --i) {\r\n\t\t\t\tif (comp_func(list[i], list[i - 1]) < 0) {\r\n\t\t\t\t\tvar q = list[i]; list[i] = list[i - 1]; list[i - 1] = q;\r\n\t\t\t\t\tswap = true;\r\n\t\t\t\t}\r\n\t\t\t} // for\r\n\t\t\tb++;\r\n\r\n\t\t} // while(swap)\r\n\t}\r\n}\r\n\r\n/* ******************************************************************\r\nSupporting functions: bundled here to avoid depending on a library\r\n****************************************************************** */\r\n\r\n// Dean Edwards/Matthias Miller/John Resig\r\n\r\n/* for Mozilla/Opera9 */\r\nif (document.addEventListener) {\r\n\tdocument.addEventListener(\"DOMContentLoaded\", sorttable.init, false);\r\n}\r\n\r\n/* for Internet Explorer */\r\n/*@cc_on@*/\r\n/*@if (@_win32)\r\n//document.write(\"\";\r\n },\"useData\":true});","var Template_Claims_LossSummary = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var stack1, helperMissing=helpers.helperMissing, buffer = \"\\r\\n \\r\\n\";\r\n stack1 = ((helpers.eachArray || (depth0 && depth0.eachArray) || helperMissing).call(depth0, (depth0 != null ? depth0.LossSummary : depth0), {\"name\":\"eachArray\",\"hash\":{},\"fn\":this.program(2, data),\"inverse\":this.noop,\"data\":data}));\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer + \" \\r\\n \\r\\n \\r\\n
\\r\\n
* denotes unaudited values\\r\\n
\\r\\n
\\r\\n\";\r\n},\"2\":function(depth0,helpers,partials,data) {\r\n var stack1, lambda=this.lambda, escapeExpression=this.escapeExpression, helperMissing=helpers.helperMissing, buffer = \" \\r\\n \\r\\n \"\r\n + escapeExpression(lambda(((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.PolicyPeriod : stack1), depth0))\r\n + \"\\r\\n Opened\\r\\n Closed\\r\\n Litigated\\r\\n Paid\\r\\n Reserves\\r\\n Recoveries\\r\\n Incurred\\r\\n Payroll\\r\\n Contribution\\r\\n Loss Ratio\\r\\n Frequency\\r\\n \\r\\n \\r\\n \\r\\n\";\r\n stack1 = ((helpers.eachArray || (depth0 && depth0.eachArray) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.LossSummaryTableRecordList : stack1), {\"name\":\"eachArray\",\"hash\":{},\"fn\":this.program(3, data),\"inverse\":this.noop,\"data\":data}));\r\n if (stack1 != null) { buffer += stack1; }\r\n buffer += \" \\r\\n Total\\r\\n \"\r\n + escapeExpression(((helpers.CommafyNumber || (depth0 && depth0.CommafyNumber) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.OpenedSum : stack1), {\"name\":\"CommafyNumber\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n \\r\\n \"\r\n + escapeExpression(((helpers.CommafyNumber || (depth0 && depth0.CommafyNumber) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.ClosedSum : stack1), {\"name\":\"CommafyNumber\",\"hash\":{},\"data\":data})))\r\n + \" \\r\\n \\r\\n \"\r\n + escapeExpression(((helpers.CommafyNumber || (depth0 && depth0.CommafyNumber) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.LitigatedSum : stack1), {\"name\":\"CommafyNumber\",\"hash\":{},\"data\":data})))\r\n + \" \\r\\n \\r\\n \"\r\n + escapeExpression(((helpers.CommafyNumber || (depth0 && depth0.CommafyNumber) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.PaidSum : stack1), {\"name\":\"CommafyNumber\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n \\r\\n \"\r\n + escapeExpression(((helpers.CommafyNumber || (depth0 && depth0.CommafyNumber) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.ReservesSum : stack1), {\"name\":\"CommafyNumber\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n \\r\\n \"\r\n + escapeExpression(((helpers.CommafyNumber || (depth0 && depth0.CommafyNumber) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.RecoveriesSum : stack1), {\"name\":\"CommafyNumber\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n \\r\\n \"\r\n + escapeExpression(((helpers.CommafyNumber || (depth0 && depth0.CommafyNumber) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.IncurredSum : stack1), {\"name\":\"CommafyNumber\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n \\r\\n \"\r\n + escapeExpression(((helpers.CommafyNumber || (depth0 && depth0.CommafyNumber) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.Payroll : stack1), {\"name\":\"CommafyNumber\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n\";\r\n stack1 = ((helpers.compare || (depth0 && depth0.compare) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.Audited : stack1), 1, {\"name\":\"compare\",\"hash\":{\r\n 'operator': (\"<\")\r\n },\"fn\":this.program(5, data),\"inverse\":this.noop,\"data\":data}));\r\n if (stack1 != null) { buffer += stack1; }\r\n buffer += \" \\r\\n \"\r\n + escapeExpression(((helpers.CommafyNumber || (depth0 && depth0.CommafyNumber) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.Contribution : stack1), {\"name\":\"CommafyNumber\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n\";\r\n stack1 = ((helpers.compare || (depth0 && depth0.compare) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.Audited : stack1), 1, {\"name\":\"compare\",\"hash\":{\r\n 'operator': (\"<\")\r\n },\"fn\":this.program(5, data),\"inverse\":this.noop,\"data\":data}));\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer + \" \\r\\n \"\r\n + escapeExpression(((helpers.FixedToPercentage || (depth0 && depth0.FixedToPercentage) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.LossRatio : stack1), {\"name\":\"FixedToPercentage\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n \\r\\n \"\r\n + escapeExpression(((helpers.DecimalToPercentage || (depth0 && depth0.DecimalToPercentage) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.Frequency : stack1), {\"name\":\"DecimalToPercentage\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n \\r\\n \\r\\n\";\r\n},\"3\":function(depth0,helpers,partials,data) {\r\n var stack1, lambda=this.lambda, escapeExpression=this.escapeExpression, helperMissing=helpers.helperMissing;\r\n return \" \\r\\n \"\r\n + escapeExpression(lambda(((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.ClaimClass : stack1), depth0))\r\n + \"\\r\\n \"\r\n + escapeExpression(((helpers.CommafyNumber || (depth0 && depth0.CommafyNumber) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.Opened : stack1), {\"name\":\"CommafyNumber\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n \"\r\n + escapeExpression(((helpers.CommafyNumber || (depth0 && depth0.CommafyNumber) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.Closed : stack1), {\"name\":\"CommafyNumber\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n \"\r\n + escapeExpression(((helpers.CommafyNumber || (depth0 && depth0.CommafyNumber) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.Litigated : stack1), {\"name\":\"CommafyNumber\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n \"\r\n + escapeExpression(((helpers.CommafyNumber || (depth0 && depth0.CommafyNumber) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.Paid : stack1), {\"name\":\"CommafyNumber\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n \"\r\n + escapeExpression(((helpers.CommafyNumber || (depth0 && depth0.CommafyNumber) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.Reserves : stack1), {\"name\":\"CommafyNumber\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n \"\r\n + escapeExpression(((helpers.CommafyNumber || (depth0 && depth0.CommafyNumber) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.Recovery : stack1), {\"name\":\"CommafyNumber\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n \"\r\n + escapeExpression(((helpers.CommafyNumber || (depth0 && depth0.CommafyNumber) || helperMissing).call(depth0, ((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.Incurred : stack1), {\"name\":\"CommafyNumber\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n \\r\\n \\r\\n\";\r\n},\"5\":function(depth0,helpers,partials,data) {\r\n return \" *\\r\\n\";\r\n },\"7\":function(depth0,helpers,partials,data) {\r\n return \"

Nothing to Display.

\\r\\n\";\r\n },\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \"\";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.LossSummary : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(1, data),\"inverse\":this.program(7, data),\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer;\r\n},\"useData\":true});","var Template_SuperClaim = Handlebars.template({\"1\":function(depth0,helpers,partials,data,depths) {\r\n var stack1, helper, helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression, functionType=\"function\", buffer = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Status\\r\\n \\r\\n
Associated Client\"\r\n + escapeExpression(((helper = (helper = helpers.ClientName || (depth0 != null ? depth0.ClientName : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"ClientName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"
Description
\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
To manually add a claim to this Super Claim enter the Claim Number and click the add button.
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
ClaimIDVersion\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\";\r\n stack1 = helpers.each.call(depth0, (depth0 != null ? depth0.Claims : depth0), {\"name\":\"each\",\"hash\":{},\"fn\":this.program(2, data, depths),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer + \" \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
CoverageClientClaim NumberIncident DateClaimantStatusIncurred  
 
 
Total Incurred:\"\r\n + escapeExpression(((helpers.FormatCurrency || (depth0 && depth0.FormatCurrency) || helperMissing).call(depth0, (depth0 != null ? depth0.TotalIncurred : depth0), true, {\"name\":\"FormatCurrency\",\"hash\":{},\"data\":data})))\r\n + \"
\\r\\n\";\r\n},\"2\":function(depth0,helpers,partials,data,depths) {\r\n var helper, helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression, functionType=\"function\", lambda=this.lambda;\r\n return \" \\r\\n \"\r\n + escapeExpression(((helper = (helper = helpers.Coverage || (depth0 != null ? depth0.Coverage : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Coverage\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n \"\r\n + escapeExpression(((helper = (helper = helpers.ClientName || (depth0 != null ? depth0.ClientName : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"ClientName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n \"\r\n + escapeExpression(((helper = (helper = helpers.ClaimNumber || (depth0 != null ? depth0.ClaimNumber : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"ClaimNumber\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n \"\r\n + escapeExpression(((helpers.CHSIDate || (depth0 && depth0.CHSIDate) || helperMissing).call(depth0, (depth0 != null ? depth0.DateOfIncident : depth0), {\"name\":\"CHSIDate\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n \"\r\n + escapeExpression(((helper = (helper = helpers.Claimant || (depth0 != null ? depth0.Claimant : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Claimant\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n \"\r\n + escapeExpression(((helper = (helper = helpers.Status || (depth0 != null ? depth0.Status : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Status\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n \"\r\n + escapeExpression(((helpers.FormatCurrency || (depth0 && depth0.FormatCurrency) || helperMissing).call(depth0, (depth0 != null ? depth0.Incurred : depth0), true, {\"name\":\"FormatCurrency\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n [view]\\r\\n [remove]\\r\\n \\r\\n\";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data,depths) {\r\n var stack1, buffer = \"\";\r\n stack1 = helpers['with'].call(depth0, (depth0 != null ? depth0.SuperClaim : depth0), {\"name\":\"with\",\"hash\":{},\"fn\":this.program(1, data, depths),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer;\r\n},\"useData\":true,\"useDepths\":true});","var Template_SuperClaims = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \" \\r\\n\";\r\n stack1 = helpers.each.call(depth0, (depth0 != null ? depth0.SuperClaims : depth0), {\"name\":\"each\",\"hash\":{},\"fn\":this.program(2, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer + \" \\r\\n\";\r\n},\"2\":function(depth0,helpers,partials,data) {\r\n var helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression;\r\n return \" \\r\\n \\r\\n \"\r\n + escapeExpression(((helper = (helper = helpers.ClientName || (depth0 != null ? depth0.ClientName : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"ClientName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n \\r\\n \\r\\n \"\r\n + escapeExpression(((helper = (helper = helpers.Description || (depth0 != null ? depth0.Description : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Description\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n \\r\\n \\r\\n [assign]\\r\\n \\r\\n \\r\\n\";\r\n},\"4\":function(depth0,helpers,partials,data) {\r\n return \" No Super Claims found.\\r\\n\";\r\n },\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \"
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.SuperClaims : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(1, data),\"inverse\":this.program(4, data),\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer + \"
 ClientDescription 
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Add to a new Super Claim:\\r\\n
\\r\\n Description\\r\\n \\r\\n \\r\\n
\";\r\n},\"useData\":true});","var Template_Attachments = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression;\r\n return \" \\r\\n \"\r\n + escapeExpression(((helper = (helper = helpers.FileName || (depth0 != null ? depth0.FileName : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"FileName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n \\r\\n\";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \"\\r\\n\\r\\n\";\r\n stack1 = helpers.each.call(depth0, (depth0 != null ? depth0.Attachments : depth0), {\"name\":\"each\",\"hash\":{},\"fn\":this.program(1, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer + \"
\";\r\n},\"useData\":true});","var CRM_DistributionListList = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression, buffer = \"\";\r\n stack1 = helpers.unless.call(depth0, (data && data.index), {\"name\":\"unless\",\"hash\":{},\"fn\":this.program(2, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n buffer += \" \\r\\n \\r\\n \"\r\n + escapeExpression(((helper = (helper = helpers.ListName || (depth0 != null ? depth0.ListName : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"ListName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \" - (\"\r\n + escapeExpression(((helper = (helper = helpers.CreateUser || (depth0 != null ? depth0.CreateUser : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"CreateUser\",\"hash\":{},\"data\":data}) : helper)))\r\n + \")\\r\\n \"\r\n + escapeExpression(((helper = (helper = helpers.Status || (depth0 != null ? depth0.Status : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Status\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n \"\r\n + escapeExpression(((helper = (helper = helpers.MemberCount || (depth0 != null ? depth0.MemberCount : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"MemberCount\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n \\r\\n \";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.AllowEmail : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(4, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n buffer += \"\\r\\n \";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.AllowPost : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(9, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n buffer += \"\\r\\n \";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.AllowPhone : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(11, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n buffer += \"\\r\\n \";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.AllowFax : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(13, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n buffer += \"\\r\\n [edit]\\r\\n \\r\\n\";\r\n},\"2\":function(depth0,helpers,partials,data) {\r\n return \" \\r\\n \\r\\n Type\\r\\n Distrubution List\\r\\n Status\\r\\n Membership\\r\\n Email\\r\\n Post\\r\\n Phone\\r\\n Fax\\r\\n  \\r\\n \\r\\n \\r\\n \\r\\n\";\r\n },\"4\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression, buffer = \" \";\r\n},\"5\":function(depth0,helpers,partials,data) {\r\n var helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression;\r\n return escapeExpression(((helper = (helper = helpers.ListID || (depth0 != null ? depth0.ListID : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"ListID\",\"hash\":{},\"data\":data}) : helper)));\r\n },\"7\":function(depth0,helpers,partials,data) {\r\n return \"null\";\r\n },\"9\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression, buffer = \" \";\r\n},\"11\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression, buffer = \" \";\r\n},\"13\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression, buffer = \" \";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \"\\r\\n\";\r\n stack1 = helpers.each.call(depth0, (depth0 != null ? depth0.DistributionList : depth0), {\"name\":\"each\",\"hash\":{},\"fn\":this.program(1, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer + \" \\r\\n
\";\r\n},\"useData\":true});","var Template_ClientDetailsForm = Handlebars.template({\"1\":function(depth0,helpers,partials,data,depths) {\r\n var stack1, helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression, buffer = \" \\r\\n\";\r\n},\"2\":function(depth0,helpers,partials,data) {\r\n return \" selected=\\\"selected\\\" \";\r\n },\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data,depths) {\r\n var stack1, lambda=this.lambda, escapeExpression=this.escapeExpression, helperMissing=helpers.helperMissing, buffer = \"\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
 Click here to use the advanced search to look up the company.
Company Name\\r\\n \\r\\n *\\r\\n \\r\\n
DBA
Legal Entity Name
Start Date\\r\\n *\\r\\n
Group\\r\\n \\r\\n
Governing Class\\r\\n \\r\\n   \\r\\n \\r\\n
Primary Contact\\r\\n  \\r\\n \\r\\n
Contact Title
Phone\\r\\n  \\r\\n   \\r\\n ext.  \\r\\n
Fax\\r\\n  \\r\\n \\r\\n
Email Address\\r\\n \\r\\n \\r\\n
\\r\\n Billing Address\\r\\n \\r\\n \\r\\n *
\\r\\n
\\r\\n City   *  \\r\\n State   *  \\r\\n Zip   *\\r\\n
\\r\\n Mailing Address\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n *
\\r\\n
\\r\\n City   *  \\r\\n State   *  \\r\\n Zip   *\\r\\n
\\r\\n Shipping Address\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n City     \\r\\n State     \\r\\n Zip   \\r\\n
FEIN*
Business Type\\r\\n \\r\\n
Date Opened
Submission Date
Full Time EEs
Part Time EEs
\";\r\n},\"useData\":true,\"useDepths\":true});","var Template_DistributionEmailList = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \"\";\r\n stack1 = helpers.each.call(depth0, (depth0 != null ? depth0.DistributionList : depth0), {\"name\":\"each\",\"hash\":{},\"fn\":this.program(2, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer + \"\\r\\n\";\r\n},\"2\":function(depth0,helpers,partials,data) {\r\n var helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression;\r\n return \" \"\r\n + escapeExpression(((helper = (helper = helpers.Greeting || (depth0 != null ? depth0.Greeting : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Greeting\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.FirstName || (depth0 != null ? depth0.FirstName : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"FirstName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.LastName || (depth0 != null ? depth0.LastName : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"LastName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.Title || (depth0 != null ? depth0.Title : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Title\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.Client || (depth0 != null ? depth0.Client : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Client\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.Email || (depth0 != null ? depth0.Email : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Email\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\";\r\n},\"4\":function(depth0,helpers,partials,data) {\r\n return \" No list to display.\\r\\n\";\r\n },\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.DistributionList : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(1, data),\"inverse\":this.program(4, data),\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer + \" \\r\\n
GreetingFirst NameLast NameTitleClientEmail Address
\";\r\n},\"useData\":true});","var Template_DistributionFaxList = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \"\";\r\n stack1 = helpers.each.call(depth0, (depth0 != null ? depth0.DistributionList : depth0), {\"name\":\"each\",\"hash\":{},\"fn\":this.program(2, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer;\r\n},\"2\":function(depth0,helpers,partials,data) {\r\n var helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression;\r\n return \" \"\r\n + escapeExpression(((helper = (helper = helpers.Greeting || (depth0 != null ? depth0.Greeting : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Greeting\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.FirstName || (depth0 != null ? depth0.FirstName : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"FirstName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.LastName || (depth0 != null ? depth0.LastName : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"LastName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.Title || (depth0 != null ? depth0.Title : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Title\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.Client || (depth0 != null ? depth0.Client : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Client\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.Fax || (depth0 != null ? depth0.Fax : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Fax\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n\";\r\n},\"4\":function(depth0,helpers,partials,data) {\r\n return \" No list to display.\\r\\n\";\r\n },\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.DistributionList : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(1, data),\"inverse\":this.program(4, data),\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer + \" \\r\\n
GreetingFirst NameLast NameTitleClientFax
\";\r\n},\"useData\":true});","var Template_DistributionList = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression, buffer = \" \\r\\n \\r\\n \\r\\n \"\r\n + escapeExpression(((helper = (helper = helpers.ListName || (depth0 != null ? depth0.ListName : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"ListName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n \"\r\n + escapeExpression(((helper = (helper = helpers.MemberCount || (depth0 != null ? depth0.MemberCount : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"MemberCount\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n \\r\\n\\r\\n \";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.AllowEmail : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(2, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n buffer += \"\\r\\n \";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.AllowPost : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(7, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n buffer += \"\\r\\n \";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.AllowPhone : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(9, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n buffer += \"\\r\\n \";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.AllowFax : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(11, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer + \"\\r\\n \\r\\n\";\r\n},\"2\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression, buffer = \" \";\r\n},\"3\":function(depth0,helpers,partials,data) {\r\n var helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression;\r\n return escapeExpression(((helper = (helper = helpers.ListID || (depth0 != null ? depth0.ListID : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"ListID\",\"hash\":{},\"data\":data}) : helper)));\r\n },\"5\":function(depth0,helpers,partials,data) {\r\n return \"null\";\r\n },\"7\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression, buffer = \" \";\r\n},\"9\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression, buffer = \" \";\r\n},\"11\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression, buffer = \" \";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\";\r\n stack1 = helpers.each.call(depth0, (depth0 != null ? depth0.DistributionList : depth0), {\"name\":\"each\",\"hash\":{},\"fn\":this.program(1, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer + \" \\r\\n
 TypeDistrubution ListMembershipEmailPostPhoneFax
\";\r\n},\"useData\":true});","var Template_DistributionListAdmin = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n return \" checked=\\\"checked\\\" \";\r\n },\"3\":function(depth0,helpers,partials,data) {\r\n return \" \";\r\n },\"5\":function(depth0,helpers,partials,data) {\r\n var helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression;\r\n return escapeExpression(((helper = (helper = helpers.ListName || (depth0 != null ? depth0.ListName : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"ListName\",\"hash\":{},\"data\":data}) : helper)));\r\n },\"7\":function(depth0,helpers,partials,data) {\r\n return \"\";\r\n},\"9\":function(depth0,helpers,partials,data) {\r\n var helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression;\r\n return escapeExpression(((helper = (helper = helpers.Description || (depth0 != null ? depth0.Description : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Description\",\"hash\":{},\"data\":data}) : helper)));\r\n },\"11\":function(depth0,helpers,partials,data) {\r\n var helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression;\r\n return escapeExpression(((helper = (helper = helpers.ListSource || (depth0 != null ? depth0.ListSource : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"ListSource\",\"hash\":{},\"data\":data}) : helper)));\r\n },\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression, buffer = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Distribution List Type\\r\\n \\r\\n \\r\\n \\r\\n Fax\\r\\n \\r\\n Phone\\r\\n \\r\\n Post\\r\\n \\r\\n Email\\r\\n
\\r\\n Display Name\\r\\n \\r\\n \\r\\n
\\r\\n Private\\r\\n \\r\\n \\r\\n
\\r\\n Active\\r\\n \\r\\n \\r\\n
\\r\\n Description\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n List Source\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\";\r\n},\"useData\":true});","var Template_DistributionListEmailEditor = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var stack1;\r\n stack1 = helpers.each.call(depth0, (depth0 != null ? depth0.DistributionList : depth0), {\"name\":\"each\",\"hash\":{},\"fn\":this.program(2, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { return stack1; }\r\n else { return ''; }\r\n },\"2\":function(depth0,helpers,partials,data) {\r\n var stack1;\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.Email : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(3, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { return stack1; }\r\n else { return ''; }\r\n },\"3\":function(depth0,helpers,partials,data) {\r\n var helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression;\r\n return escapeExpression(((helper = (helper = helpers.Email || (depth0 != null ? depth0.Email : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Email\",\"hash\":{},\"data\":data}) : helper)))\r\n + \";\";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n From\\r\\n \\r\\n \\r\\n
\\r\\n To\\r\\n \\r\\n \\r\\n
\\r\\n Subject\\r\\n \\r\\n \\r\\n Save to actionItem
\\r\\n Message\\r\\n \\r\\n \\r\\n\\r\\n
Attachments\\r\\n
\\r\\n
\\r\\n
\\r\\n\";\r\n},\"useData\":true});","var Template_DistributionPhoneList = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \"\";\r\n stack1 = helpers.each.call(depth0, (depth0 != null ? depth0.DistributionList : depth0), {\"name\":\"each\",\"hash\":{},\"fn\":this.program(2, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer;\r\n},\"2\":function(depth0,helpers,partials,data) {\r\n var helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression;\r\n return \" \"\r\n + escapeExpression(((helper = (helper = helpers.Greeting || (depth0 != null ? depth0.Greeting : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Greeting\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.FirstName || (depth0 != null ? depth0.FirstName : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"FirstName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.LastName || (depth0 != null ? depth0.LastName : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"LastName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.Title || (depth0 != null ? depth0.Title : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Title\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.Client || (depth0 != null ? depth0.Client : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Client\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.Phone || (depth0 != null ? depth0.Phone : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Phone\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n\";\r\n},\"4\":function(depth0,helpers,partials,data) {\r\n return \" No list to display.\\r\\n\";\r\n },\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.DistributionList : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(1, data),\"inverse\":this.program(4, data),\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer + \" \\r\\n
GreetingFirst NameLast NameTitleClientPhone
\";\r\n},\"useData\":true});","var Template_DistributionPostList = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \"\";\r\n stack1 = helpers.each.call(depth0, (depth0 != null ? depth0.DistributionList : depth0), {\"name\":\"each\",\"hash\":{},\"fn\":this.program(2, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer;\r\n},\"2\":function(depth0,helpers,partials,data) {\r\n var helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression;\r\n return \" \"\r\n + escapeExpression(((helper = (helper = helpers.Greeting || (depth0 != null ? depth0.Greeting : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Greeting\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.FirstName || (depth0 != null ? depth0.FirstName : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"FirstName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.LastName || (depth0 != null ? depth0.LastName : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"LastName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.Title || (depth0 != null ? depth0.Title : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Title\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.Client || (depth0 != null ? depth0.Client : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Client\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.Address1 || (depth0 != null ? depth0.Address1 : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Address1\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.Address2 || (depth0 != null ? depth0.Address2 : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Address2\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.City || (depth0 != null ? depth0.City : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"City\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.State || (depth0 != null ? depth0.State : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"State\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + escapeExpression(((helper = (helper = helpers.Zip || (depth0 != null ? depth0.Zip : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"Zip\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n\";\r\n},\"4\":function(depth0,helpers,partials,data) {\r\n return \" No list to display.\\r\\n\";\r\n },\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.DistributionList : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(1, data),\"inverse\":this.program(4, data),\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer + \" \\r\\n
GreetingFirst NameLast NameTitleClientAddress 1Address 2CityStateZip
\";\r\n},\"useData\":true});","var Template_GroupNoteEditor = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression;\r\n return \" \\r\\n\";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Subject\\r\\n \\r\\n \\r\\n
\\r\\n Category\\r\\n \\r\\n \\r\\n \\r\\n Private\\r\\n
\\r\\n Message\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\";\r\n},\"useData\":true});","\r\nmodule IO {\r\n //This object cleans out functions from an object\r\n export class cleanedJSONObject{\r\n\r\n constructor(fullObject: any){\r\n for (var prop in fullObject) {\r\n if (typeof fullObject[prop] == 'function') continue;\r\n this[prop] = fullObject[prop];\r\n }\r\n }\r\n\r\n }\r\n\r\n export class AjaxBase {\r\n URL: string;\r\n Data: any;\r\n Async: boolean;\r\n StringData: string;\r\n Type: string;\r\n Success: any;\r\n Error: any; \r\n }\r\n\r\n export interface IAjaxConfig {\r\n URL: string;\r\n Data?: any;\r\n Async?: boolean;\r\n StringData?: string;\r\n Type?: string;\r\n Success?: any;\r\n Error?: any; \r\n }\r\n\r\n export class Ajax implements IAjaxConfig { \r\n\r\n URL: string; \r\n\r\n //constructor(URL?: string, successFunction?: any, restType?: string) {\r\n // var a: IAjaxConfig;\r\n\r\n // a.URL = URL;\r\n // a.Success = successFunction; \r\n\r\n // switch(restType) { \r\n // case 'GET': \r\n // this.Get(a);\r\n // break;\r\n // case 'POST':\r\n // this.Post(a);\r\n // break;\r\n // case 'PUT':\r\n // this.Put(a);\r\n // break;\r\n // case 'DELETE':\r\n // this.Delete(a);\r\n // break;\r\n // default:\r\n // this.Get(a); \r\n // }\r\n //}\r\n\r\n private _base(defaultSettings: IAjaxConfig): any {\r\n\r\n if (defaultSettings.Async == null) {\r\n defaultSettings.Async = true;\r\n }\r\n\r\n if (defaultSettings.Data) {\r\n defaultSettings.Data = JSON.stringify(defaultSettings.Data);\r\n }\r\n\r\n if (defaultSettings.Success == null) {\r\n defaultSettings.Success = function (data) {\r\n console.log(data);\r\n }\r\n }\r\n\r\n if (defaultSettings.Error == null) {\r\n defaultSettings.Error = function (data) {\r\n console.log(data);\r\n }\r\n }\r\n\r\n var settings: JQueryAjaxSettings = {\r\n url: defaultSettings.URL,\r\n async: defaultSettings.Async,\r\n type: defaultSettings.Type,\r\n data: defaultSettings.Data,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: defaultSettings.Success,\r\n error: defaultSettings.Error\r\n }\r\n\r\n $.ajax(settings);\r\n }\r\n\r\n public Get(a: IAjaxConfig): any {\r\n a.Type = \"GET\";\r\n this._base(a);\r\n }\r\n\r\n public Post(a: IAjaxConfig): any {\r\n a.Type = \"POST\"; \r\n this._base(a);\r\n }\r\n\r\n public Put(a: IAjaxConfig): any {\r\n a.Type = \"PUT\";\r\n this._base(a);\r\n }\r\n\r\n public Delete(a: IAjaxConfig): any {\r\n a.Type = \"DELETE\";\r\n this._base(a);\r\n }\r\n }\r\n}\r\n\r\n\r\n\r\n","\r\nmodule IO {\r\n export class JQueryHelper {\r\n\r\n static parseQuerystring(): any {\r\n\r\n var nvpair = {};\r\n var qs = window.location.search.replace('?', '') == '' || window.location.search.replace('?', '') == null ? window.location.href.replace('?', '') : null;\r\n var pairs = qs.split('&');\r\n $(pairs).each(function (i: number, v) {\r\n var pair = (v).split('=');\r\n nvpair[pair[0]] = pair[1];\r\n nvpair[pair[0].toLowerCase()] = pair[1];\r\n });\r\n return nvpair;\r\n }\r\n\r\n } \r\n}\r\n\r\n","function rfc3986EncodeURIComponent(value: string): string {\r\n return encodeURIComponent(value).replace(/[!'()*]/g, '');\r\n}","module WebUtilities {\r\n\r\n export class ParameterHelpers {\r\n\r\n public static getParameterByName(url: string, name: string): string {\r\n name = name.replace(/[\\[]/, \"\\\\[\").replace(/[\\]]/, \"\\\\]\");\r\n var regex = new RegExp(\"[\\\\?&]\" + name + \"=([^&#]*)\"),\r\n results = regex.exec(url);\r\n return results === null ? \"\" : decodeURIComponent(results[1].replace(/\\+/g, \" \"));\r\n }\r\n // insert parameter func\r\n // get list of parameters func\r\n }\r\n\r\n export function genericAJAXErrorHandler(jqXHR: any, textStatus: any, errorThrown: any) {\r\n if (jqXHR.readyState == 4) // http error\r\n console.log(\"(╯°□°)╯︵ ┻━┻ Error: \" + textStatus + \"\\r ... looks like we had trouble getting your data.\\r\\r If this problem persists, please contact our support team at: support@chsitech.com\");\r\n else if (jqXHR.readyState == 0) // network error\r\n console.log(\"(っ˘̩╭╮˘̩)っ Error: Network error\\rCheck your internet connection!\");\r\n else // other error\r\n console.log(\"(╯°□°)╯︵ ┻━┻ Error: Application error\\r ... looks like we had trouble getting your data.\\r\\r If this problem persists, please contact our support team at: support@chsitech.com\");\r\n }\r\n}","CHSI.Common.Ajax = {\r\n GetFile: function (url) {\r\n \r\n var toReturn;\r\n $.ajax({\r\n url: url,\r\n async: false\r\n }).done(function (data) {\r\n toReturn = data;\r\n });\r\n return toReturn;\r\n },\r\n GetHTML: function (HTMLPath) {\r\n return CHSI.Common.Ajax.GetFile('/Libs/' + HTMLPath);\r\n },\r\n Get: function (Options) {\r\n if (Options.Error == null) {\r\n Options.Error = this.GetDefaultErrorFunction();\r\n }\r\n if (Options.Async == null || Options.Async == false)\r\n {\r\n console.log('synchronous: ' + Options.URL);\r\n }\r\n $.ajax({\r\n type: \"GET\",\r\n async: Options.Async != null ? Options.Async : true,\r\n url: Options.URL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: Options.Success,\r\n error: Options.Error\r\n });\r\n }\r\n , Post: function (Options) {\r\n if (Options.Error == null) {\r\n Options.Error = this.GetDefaultErrorFunction();\r\n }\r\n if (Options.StringData == null) {\r\n Options.StringData = JSON.stringify(Options.Data);\r\n }\r\n\r\n $.ajax({\r\n type: \"POST\",\r\n async: Options.Async != null ? Options.Async : true,\r\n url: Options.URL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n data: Options.StringData,\r\n success: Options.Success,\r\n error: Options.Error\r\n });\r\n }\r\n\r\n , Put: function (Options) {\r\n if (Options.Error == null) {\r\n Options.Error = this.GetDefaultErrorFunction();\r\n }\r\n if (Options.StringData == null) {\r\n Options.StringData = JSON.stringify(Options.Data);\r\n }\r\n\r\n $.ajax({\r\n type: \"PUT\",\r\n async: Options.Async != null ? Options.Async : true,\r\n url: Options.URL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n data: Options.StringData,\r\n success: Options.Success,\r\n error: Options.Error\r\n });\r\n }\r\n\r\n , Delete: function (Options) {\r\n if (Options.Error == null) {\r\n Options.Error = this.GetDefaultErrorFunction();\r\n }\r\n if (Options.StringData == null) {\r\n Options.StringData = JSON.stringify(Options.Data);\r\n }\r\n\r\n $.ajax({\r\n type: \"DELETE\",\r\n async: Options.Async != null ? Options.Async : true,\r\n url: Options.URL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n data: Options.StringData,\r\n success: Options.Success,\r\n error: Options.Error\r\n });\r\n }\r\n , GetDefaultErrorFunction: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n}\r\n","CHSI.Common.Attachments = { \r\n Init: function (ClientID, AddNew, QuoteID, Code) {\r\n var df = $.Deferred();\r\n\r\n\r\n this.Templates.Attachments = CHSITemplates.Template_AttachmentGrid;\r\n this.Cache.ClientID = ClientID; \r\n this.Cache.QuoteID = QuoteID;\r\n\r\n if (QuoteID) {\r\n if (Code) {\r\n this.Cache.Code = Code;\r\n } else {\r\n this.Cache.Code = 'UWAtt'\r\n } \r\n this.Calls.GetQuoteInfo(this.Cache.QuoteID).done(function(){\r\n df.resolve();\r\n });\r\n } else {\r\n CHSI.Common.Attachments.Calls.GetAttachmentSections(function () {\r\n CHSI.Common.Attachments.Calls.GetAttachmentsByClientID(function () {\r\n CHSI.CM.AttachmentTree.Events.GenerateAttachmentTreeview(CHSI.Common.Attachments.Cache.AttachmentGlobal, false, false, false);\r\n }).done(function () { df.resolve(); });;\r\n });\r\n }\r\n\r\n this.Events.Global();\r\n this.Events.CreateUploader();\r\n\r\n if (AddNew == 1) {\r\n CHSI.Common.Attachments.Events.ShowFileUploader();\r\n }\r\n\r\n return df;\r\n },\r\n Templates: {\r\n },\r\n Cache: {\r\n AttachmentObject: {\r\n },\r\n ClientID: 0,\r\n FileAttachment: null,\r\n ArrFileAttachment: [],\r\n SectionID: 0\r\n , UWRule: null\r\n , GroupID: null\r\n , Code: 'UWAtt'\r\n , ClientInfo: null\r\n , QuoteID: null\r\n , QuoteType: 'CHSI1'\r\n , AttachmentGlobal: []\r\n , AllowDocuments: 'N'\r\n ,Editable:'Y'\r\n },\r\n BindFilteredQuery: function (NewAttachment) {\r\n $('#jxAttachmentOverview').html(this.Templates.Attachments({ Attachments: NewAttachment }));\r\n $('#jxAllowDocuments').val(CHSI.Common.Attachments.Cache.AllowDocuments);\r\n restart = true;\r\n sorttable.init();\r\n if (SetSize) {\r\n SetSize();\r\n }\r\n },\r\n BindPresentationLayer: function () {\r\n $('#jxAttachmentOverview').html(this.Templates.Attachments({ Attachments: CHSI.Common.Attachments.Cache.AttachmentObject }));\r\n $('#jxAllowDocuments').val(CHSI.Common.Attachments.Cache.AllowDocuments);\r\n restart = true;\r\n sorttable.init();\r\n //CHSI.UW.MuniQuote.DisablePage(CHSI.Common.Attachments.Cache.Editable);\r\n if (SetSize) {\r\n SetSize();\r\n }\r\n },\r\n BindAttachmentsBySectionID: function (SectionID) {\r\n var Attachments = CHSI.Common.Attachments.Cache.AttachmentObject,\r\n NewAttachments = [];\r\n\r\n for (i = 0; i < Attachments.length; i++) {\r\n if (Attachments[i].DefaultSectionID == SectionID) {\r\n NewAttachments.push(Attachments[i]);\r\n }\r\n }\r\n $('#jxAttachmentOverview').html(this.Templates.Attachments({ Attachments: NewAttachments }));\r\n $('#jxAllowDocuments').val(CHSI.Common.Attachments.Cache.AllowDocuments);\r\n restart = true;\r\n sorttable.init();\r\n if (SetSize)\r\n {\r\n SetSize();\r\n }\r\n },\r\n Events: {\r\n Global: function () {\r\n $('#jxAttachmentFilter').on('click', function () {\r\n $(this).val('');\r\n });\r\n\r\n $('#jxAttachmentFilter').on('keyup', function () {\r\n var SearchTerm = $(this).val(),\r\n NewAttachmentObject = [];\r\n\r\n NewAttachmentObject.push(CHSI.Common.Attachments.Cache.AttachmentSections);\r\n NewAttachmentObject.push(CHSI.Common.Attachments.Cache.AttachmentObject); \r\n\r\n if (SearchTerm == '') {\r\n CHSI.CM.AttachmentTree.Events.GenerateAttachmentTreeview(NewAttachmentObject, false, false, false);\r\n CHSI.Common.Attachments.BindFilteredQuery([]);\r\n }\r\n if (SearchTerm.length > 1) {\r\n var NewAttachmentResult = CHSI.CM.AttachmentTree.Events.FilterAttachmentResults(SearchTerm, NewAttachmentObject);\r\n CHSI.CM.AttachmentTree.Events.GenerateAttachmentTreeview(NewAttachmentResult, false, false, false);\r\n CHSI.Common.Attachments.BindFilteredQuery(NewAttachmentResult[1]);\r\n } else {\r\n CHSI.CM.AttachmentTree.Events.GenerateAttachmentTreeview(NewAttachmentObject, false, false, false);\r\n }\r\n });\r\n\r\n \r\n $('#uxShowNewFile').on('click', function () {\r\n CHSI.Common.Attachments.Events.ShowFileUploader();\r\n });\r\n\r\n $('#jxFilterResultsContainer').on('click', '.HierarchyNode', function () {\r\n var SectionID = $(this).data('sectionid');\r\n CHSI.Common.Attachments.Cache.SectionID = SectionID;\r\n $('.HierarchyNode').removeClass('SelectedSection');\r\n $(this).addClass('SelectedSection');\r\n\r\n CHSI.Common.Attachments.Cache.AllowDocuments = $(this).data('allowdocuments'); \r\n\r\n CHSI.Common.Attachments.Calls.GetAttachmentsByClientID();\r\n CHSI.Common.Attachments.BindAttachmentsBySectionID(SectionID);\r\n });\r\n\r\n $('#jxSaveNext').on('click', function () {\r\n CHSI.Common.Navigation.NavigateToNextTab();\r\n });\r\n\r\n $('#jxCancel').on('click', function () {\r\n CHSI.Common.Navigation.NavigateToReturnURL\r\n $(this).addClass('SelectedSection');\r\n });\r\n\r\n },\r\n RefreshAttachments:function () {\r\n CHSI.Common.Attachments.Calls.GetAttachments(CHSI.Common.Attachments.Cache.SectionID);\r\n $('.HierarchyNode[data-sectionid=' + CHSI.Common.Attachments.Cache.SectionID + ']').addClass('SelectedSection');\r\n },\r\n ShowFileUploader: function(AttachmentID, SectionID) { \r\n URL = '/CM/Modals/FileUploadForm.aspx?SectionID=' + SectionID + '&AttachmentID=' + AttachmentID + '&clientid=' + CHSI.Common.Attachments.Cache.ClientID;\r\n ShowPopup('FileUploadForm', URL, 'File Upload', 520, 430, CHSI.Common.Attachments.Events.RefreshAttachments, true);\r\n },\r\n DeleteAttachment:function(AttachmentID, FileID, ItemDate, Description, FileName, PolicyPeriod, FileType, CreateUser, CreateTmsp, UpdateUser) {\r\n var AttachmentObject = {};\r\n AttachmentObject.AttachmentID = AttachmentID\r\n AttachmentObject.FileID = FileID;\r\n AttachmentObject.Status = 'Deleted';\r\n AttachmentObject.ItemDate = ItemDate;\r\n AttachmentObject.Description = Description;\r\n AttachmentObject.FileName = FileName;\r\n AttachmentObject.PolicyPeriod = PolicyPeriod;\r\n AttachmentObject.FileType = FileType;\r\n AttachmentObject.CreateUser = CreateUser;\r\n AttachmentObject.CreateTmsp = CreateTmsp;\r\n AttachmentObject.UpdateUser = UpdateUser;\r\n CHSI.Common.Attachments.Calls.DeleteAttachment(AttachmentObject);\r\n CHSI.Common.Attachments.BindAttachmentsBySectionID(CHSI.Common.Attachments.Cache.SectionID);\r\n },\r\n GetAllowDocuments: function (SectionID) {\r\n CHSI.Common.Attachments.Cache.AllowDocuments = 'N';\r\n if (CHSI.Common.Attachments.Cache.AttachmentSections) {\r\n for (i = 0; i < CHSI.Common.Attachments.Cache.AttachmentSections.length; i++) {\r\n if (SectionID == CHSI.Common.Attachments.Cache.AttachmentSections[i].SectionID) {\r\n CHSI.Common.Attachments.Cache.AllowDocuments = CHSI.Common.Attachments.Cache.AttachmentSections[i].AllowDocuments;\r\n }\r\n }\r\n }\r\n },\r\n CreateUploader: function () {\r\n /* Uploader Script */\r\n \r\n var Uploader = $('#jxUploadAttachment').fineUploader({\r\n element: document.getElementById('jxUploadAttachment'),\r\n request: { endpoint:'/CHSIUploadHandler.axd'},\r\n debug: true,\r\n multiple: true,\r\n disableDefaultDropzone: true,\r\n callbacks: {\r\n onSubmit: function (id, fileName) {\r\n //$('.qq-upload-list').empty(); \r\n },\r\n onProgress: function (id, fileName, loaded, total) {\r\n $('.Loading').show();\r\n },\r\n onComplete: function (id, fileName, response) {\r\n if (response.success == true) {\r\n $('.qq-upload-list').hide();\r\n $('.Loading').hide();\r\n\r\n var fileInfo = {\r\n FileID: response.FileID,\r\n FileName: fileName,\r\n };\r\n CHSI.Common.Attachments.Cache.FileAttachment = fileInfo;\r\n \r\n if ($('#jxAllowDocuments').val() == 'Y') {\r\n CHSI.Common.Attachments.Cache.ArrFileAttachment.push(fileInfo);\r\n }\r\n \r\n }\r\n else {\r\n alert(response.ErrorMessage);\r\n }\r\n },\r\n onAllComplete: function (successful, failed) {\r\n if (CHSI.Common.Attachments.Cache.ArrFileAttachment.length == 0)\r\n {\r\n return false;\r\n }\r\n var FileIDs='';\r\n var FileNames = '';\r\n var CommaSeparator = '';\r\n for (var j = 0; j < CHSI.Common.Attachments.Cache.ArrFileAttachment.length; j++) {\r\n FileIDs = FileIDs +CommaSeparator+ CHSI.Common.Attachments.Cache.ArrFileAttachment[j].FileID;\r\n FileNames = FileNames + CommaSeparator + CHSI.Common.Attachments.Cache.ArrFileAttachment[j].FileName;\r\n CommaSeparator = ',';\r\n }\r\n\r\n if ($('#jxAllowDocuments').val() == 'Y') {\r\n var ExtraHeigth = CHSI.Common.Attachments.Cache.ArrFileAttachment.length * 20;\r\n URL = '/CM/Modals/FileUploadForm.aspx?SectionID=' + CHSI.Common.Attachments.Cache.SectionID + '&FileID=' + FileIDs + '&clientid=' + CHSI.Common.Attachments.Cache.ClientID + '&FileName=' + encodeURIComponent(FileNames);\r\n ShowPopup('FileUploadForm', URL, 'File Upload', 520, 430 , CHSI.Common.Attachments.Events.RefreshAttachments, true);\r\n $('.qq-upload-list').empty();\r\n CHSI.Common.Attachments.Cache.ArrFileAttachment=[];\r\n } else {\r\n alert('Attachments cannot be placed in this section at this time.');\r\n return false;\r\n }\r\n }\r\n }\r\n });\r\n Uploader.on('submit', function () {\r\n if (CHSI.Common.Attachments.Cache.SectionID == 0)\r\n {\r\n alert('Please select a section before uploading files');\r\n return false;\r\n }\r\n for (var SectionIndex = 0; SectionIndex < CHSI.Common.Attachments.Cache.AttachmentSections.length; SectionIndex++) {\r\n if (CHSI.Common.Attachments.Cache.AttachmentSections[SectionIndex].SectionID == CHSI.Common.Attachments.Cache.SectionID)\r\n {\r\n if (CHSI.Common.Attachments.Cache.AttachmentSections[SectionIndex].AllowDocuments == 'N')\r\n {\r\n alert('This category does not allow files to be uploaded, please select another');\r\n return false;\r\n }\r\n }\r\n }\r\n \r\n })\r\n \r\n\r\n function ValidateDropZone() {\r\n if (!$('.qq-upload-drop-area-active')[0]) { \r\n $('.qq-upload-drop-area').hide();\r\n setTimeout(ValidateDropZone, 2000);\r\n } else { \r\n $('.qq-upload-drop-area').show();\r\n setTimeout(ValidateDropZone, 2000);\r\n }\r\n }\r\n ValidateDropZone();\r\n }\r\n },\r\n Calls: {\r\n GetAttachments: function (SectionID) {\r\n CHSI.Common.Attachments.Cache.SectionID = SectionID;\r\n\r\n var AjaxURL = '/api/Common/Attachment/GetByClientSection?ClientID=' + CHSI.Common.Attachments.Cache.ClientID + '&SectionID=' + SectionID + '&PolicyPeriod=' + CHSI.Common.Attachments.Cache.PolicyPeriod;\r\n $.ajax({\r\n async: true,\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Common.Attachments.Cache.AttachmentObject = e;\r\n CHSI.Common.Attachments.BindPresentationLayer();\r\n restart = true;\r\n sorttable.init();\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n GetAttachmentsByClientID: function (successFunction) {\r\n var df = $.Deferred();\r\n var AjaxURL = '/api/Common/Attachment/GetAttachmentsByClientID?ClientID=' + CHSI.Common.Attachments.Cache.ClientID;\r\n $.ajax({\r\n async: true,\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Common.Attachments.Cache.AttachmentObject = e;\r\n CHSI.Common.Attachments.Cache.AttachmentGlobal.push(e);\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n df.resolve();\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n df.reject();\r\n }\r\n });\r\n return df;\r\n },\r\n GetAttachmentSections: function (successFunction) {\r\n var df = $.Deferred();\r\n var AjaxURL = '/api/Common/Attachment/GetFileSections?ClientID=' + CHSI.Common.Attachments.Cache.ClientID;\r\n $.ajax({\r\n async: true,\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Common.Attachments.Cache.AttachmentSections = e;\r\n CHSI.Common.Attachments.Cache.AttachmentGlobal = [e];\r\n if (successFunction) {\r\n successFunction(); \r\n } \r\n df.resolve();\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n df.reject();\r\n }\r\n });\r\n return df;\r\n },\r\n DeleteAttachment: function (AttachmentObject) {\r\n var strconfirm = confirm(\"Are you sure you want to delete?\");\r\n if (strconfirm == false) {\r\n return false;\r\n }\r\n\r\n var AjaxData = null\r\n AjaxData = JSON.stringify(AttachmentObject);\r\n\r\n var AjaxURL = '/api/Common/Attachment/SaveAttachment';\r\n $.ajax({\r\n async: true,\r\n type: \"POST\",\r\n url: AjaxURL,\r\n cache: false,\r\n data: AjaxData,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Common.Attachments.Calls.GetAttachments(CHSI.Common.Attachments.Cache.SectionID); \r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n GetUWRule: function (QuoteType,GroupID, PolicyPeriod, Code) {\r\n CHSI.Common.Ajax.Get({Async: true,\r\n URL: '/api/UW/UW/GetRules?QuoteType=' + QuoteType + '&GroupID=' + GroupID + '&PolicyPeriod=' + PolicyPeriod + '&Code=' + Code,\r\n Success: function (e) {\r\n CHSI.Common.Attachments.Cache.UWRule = e;\r\n if (e.RuleValue) {\r\n CHSI.Common.Attachments.Cache.SectionID = CHSI.Common.Attachments.Cache.UWRule.RuleValue;\r\n CHSI.Common.Attachments.Events.GetAllowDocuments(CHSI.Common.Attachments.Cache.SectionID);\r\n CHSI.Common.Attachments.Calls.GetAttachments(CHSI.Common.Attachments.Cache.SectionID);\r\n } else {\r\n if (Code != 'UWAtt') {\r\n CHSI.Common.Attachments.Cache.Code = 'UWAtt';\r\n CHSI.Common.Attachments.Calls.GetUWRule(QuoteType, GroupID, PolicyPeriod, CHSI.Common.Attachments.Cache.Code);\r\n }\r\n }\r\n }\r\n })\r\n },\r\n GetClientInfo: function (ClientID) {\r\n CHSI.Common.Ajax.Get({Async:true,\r\n URL: '/api/CRM/Clients/GetClient?ClientID=' + ClientID,\r\n Success: function (e) {\r\n CHSI.Common.Attachments.Cache.ClientInfo = e;\r\n if (e) {\r\n var GroupID = CHSI.Common.Attachments.Cache.ClientInfo.GroupID;\r\n var QuoteType = CHSI.Common.Attachments.Cache.QuoteType;\r\n var Code = CHSI.Common.Attachments.Cache.Code;\r\n var PolicyPeriod = CHSI.Common.Attachments.Cache.PolicyPeriod;\r\n CHSI.Common.Attachments.Calls.GetAttachmentSections(function () { CHSI.Common.Attachments.Calls.GetUWRule(QuoteType, GroupID, PolicyPeriod, Code) }); \r\n }\r\n }\r\n }) \r\n },\r\n GetPolicyPeriod: function (QuoteID) {\r\n CHSI.Common.Ajax.Get({Async: true,\r\n URL: '/api/UW/UW/GetPolicyYearByQuote?QuoteID=' + QuoteID,\r\n Success: function (e) {\r\n CHSI.Common.Attachments.Cache.PolicyPeriod = e;\r\n if (e) {\r\n CHSI.Common.Attachments.Calls.GetClientInfo(CHSI.Common.Attachments.Cache.ClientID);\r\n }\r\n }\r\n }) \r\n },\r\n GetQuoteInfo: function (QuoteID) {\r\n var df = $.Deferred();\r\n var Options = {}\r\n Options.Async = true;\r\n Options.URL = '/api/UW/MuniQuote/GetBasicQuote?QuoteID=' + CHSI.Common.Attachments.Cache.QuoteID;\r\n Options.Success = function (e) {\r\n if (e.QuoteStatus && e.QuoteStatus.Editable == 'N') {\r\n CHSI.Common.Attachments.Cache.Editable = 'N';\r\n }\r\n CHSI.Common.Attachments.Cache.QuoteType = e.QuoteType;\r\n CHSI.Common.Attachments.Cache.PolicyPeriod = e.PolicyPeriod;\r\n var SecOptions = {},\r\n isVerified = false;\r\n SecOptions.PermissionID = 14;\r\n SecOptions.Success = function (v) { \r\n CHSI.Common.Attachments.Calls.GetClientInfo(CHSI.Common.Attachments.Cache.ClientID);\r\n isVerified = v;\r\n\r\n if (isVerified) {\r\n CHSI.UW.MuniQuote.MenuController(e, '#jxMenuContainer');\r\n }\r\n }\r\n\r\n CHSI.Security.HasPermission(SecOptions);\r\n df.resolve();\r\n }\r\n CHSI.Common.Ajax.Get(Options);\r\n return df;\r\n }\r\n }\r\n}\r\n","CHSI.Common.ErrorLogging = {\r\n\r\n RecordError: function (Message, InternalMessage, StackTrace, Priority)\r\n {\r\n var ErrorObject = {};\r\n ErrorObject.Message = Message;\r\n ErrorObject.InternalMessage = InternalMessage;\r\n ErrorObject.StackTrace = StackTrace;\r\n ErrorObject.SourceType = 1;/*Javascript*/\r\n ErrorObject.Host = window.location.hostname;\r\n ErrorObject.Priority = Priority;\r\n ErrorObject.Resolution = $(window).width() + 'x' + $(window).height();\r\n \r\n var Options = {};\r\n Options.URL = '/api/logging/Exception/RecordError';\r\n Options.Data = ErrorObject;\r\n Options.Success = function (data) {\r\n CHSI.Common.Log('Error recorded successfully - ExceptionID ' + data.ExceptionID + ', Instance ID ' + data.InstanceId);\r\n };\r\n CHSI.Common.Ajax.Post(Options);\r\n\r\n }\r\n\r\n\r\n}","CHSI.Common.Events = {\r\n OpenWindow: function (URL, MouseClick) {\r\n if (MouseClick.shiftKey || MouseClick.ctrlKey) {\r\n window.open(URL)\r\n }\r\n else {\r\n location.href = URL;\r\n }\r\n }\r\n}","CHSI.Common.Page = {\r\n ReadOnly: function (Input, Select, Button) {\r\n\r\n if (Input == null) {\r\n Input = false;\r\n }\r\n\r\n if (Select == null) {\r\n Select = false;\r\n }\r\n\r\n if (Button == null) {\r\n Button = false;\r\n }\r\n\r\n if (Input) {\r\n $('input[type=\"text\"]').attr('readonly', true);\r\n $('input[type=\"text\"]').attr('disabled', true);\r\n $('input:not([type=\"text\"],[type=\"submit\"], [type=\"button\"])').attr('disabled', true);\r\n $('.DatePicker').datepicker('disable');\r\n } else {\r\n $('input[type=\"text\"]').attr('readonly', false);\r\n $('input[type=\"text\"]').attr('disabled', false);\r\n $('input:not([type=\"text\"],[type=\"submit\"], [type=\"button\"])').attr('disabled', false); \r\n }\r\n\r\n if (Select) {\r\n $('select').attr('disabled', true);\r\n } else {\r\n $('select').attr('disabled', false);\r\n }\r\n\r\n if (Button) {\r\n $('input[type=\"button\"]').attr('disabled', true);\r\n $('input[type=\"submit\"]').attr('disabled', true);\r\n $('input[type=\"file\"]').attr('disabled', true);\r\n } else {\r\n $('input[type=\"button\"]').attr('disabled', false);\r\n $('input[type=\"submit\"]').attr('disabled', false);\r\n $('input[type=\"file\"]').attr('disabled', false);\r\n }\r\n }\r\n}\r\n","/**\r\n * String.format for JavaScript\r\n * Copyright (c) Daniel Mester Pirttijärvi 2009\r\n * \r\n * www.masterdata.se/r/string_format_for_javascript/\r\n */\r\n\r\nvar msf = {}; (function () { function C(E) { return (E < 10 ? \"0\" : \"\") + E } function D(E) { E = E.toLowerCase(); var F = { name: \"en-GB\", d: \"dd/MM/yyyy\", D: \"dd MMMM yyyy\", t: \"HH:mm\", T: \"HH:mm:ss\", M: \"d MMMM\", Y: \"MMMM yyyy\", s: \"yyyy-MM-ddTHH:mm:ss\", _m: [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"], _d: [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"], _r: \".\", _t: \",\", _c: \"£#,0.00\", _ct: \",\", _cr: \".\" }; if (E.substr(0, 2) == \"sv\") { F.name = \"sv-SE\"; F.d = \"yyyy-MM-dd\"; F.D = \"den dd MMMM yyyy\"; F._m = [\"januari\", \"februari\", \"mars\", \"april\", \"maj\", \"juni\", \"juli\", \"augusti\", \"september\", \"oktober\", \"november\", \"december\"]; F._d = [\"söndag\", \"måndag\", \"tisdag\", \"onsdag\", \"torsdag\", \"fredag\", \"lördag\"]; F._r = \",\"; F._t = \" \"; F._ct = \".\"; F._cr = \",\"; F._c = \"#,0.00 kr\" } else { if (E != \"en-gb\") { F.name = \"en-US\"; F.t = \"hh:mm tt\"; F.T = \"hh:mm:ss tt\"; F.d = \"MM/dd/yyyy\"; F.D = \"MMMM dd, yyyy\"; F.Y = \"MMMM, yyyy\"; F._c = \"$#,0.00\" } } F.f = F.D + \" \" + F.t; F.F = F.D + \" \" + F.T; F.g = F.d + \" \" + F.t; F.G = F.d + \" \" + F.T; return F } function B(L, Q) { var S = 0, P = -1, H = -1, I = 0, E = 0, N = -1, F = false, O = true, J = [], G, K; function R(T) { for (var U = 0; U < T.length; U++) { J.push(T.charAt(U)); if (I > 1 && I-- % 3 == 1) { J.push(Q.t) } } } for (K = 0; K < Q.f.length; K++) { G = Q.f.charAt(K); E += F; if (G == \"0\") { if (F) { N = E } else { if (P < 0) { P = S } } } S += !F && (G == \"0\" || G == \"#\"); F = F || G == \".\" } P = P < 0 ? 1 : S - P; if (L < 0) { J.push(\"-\") } L = (Math.round(Math.abs(L) * Math.pow(10, E)) / Math.pow(10, E)).toString(); H = L.indexOf(\".\"); H = H < 0 ? L.length : H; K = H - S; if (Q.f.match(/^[^\\.]*[0#],[0#]/)) { I = Math.max(H, P) } for (var M = 0; M < Q.f.length; M++) { G = Q.f.charAt(M); if (G == \"#\" || G == \"0\") { if (K < H) { if (K >= 0) { if (O) { R(L.substr(0, K)) } R(L.charAt(K)) } else { if (K >= H - P) { R(\"0\") } } O = false } else { if (N-- > 0 || K < L.length) { R(K >= L.length ? \"0\" : L.charAt(K)) } } K++ } else { if (G == \".\") { if (L.length > ++K || N > 0) { J.push(Q.r) } } else { if (G !== \",\") { J.push(G) } } } } return J.join(\"\") } Number.prototype.__Format = function (F) { var H = Number(this); if (F == \"X\") { return Math.round(H).toString(16).toUpperCase() } else { if (F == \"x\") { return Math.round(H).toString(16) } else { var G = { t: msf.LC._t, r: msf.LC._r }; var J = \"0.################\", I = F ? F.toLowerCase() : null; if (I === null || I == \"g\") { F = J } else { if (I == \"n\") { F = \"#,\" + J } else { if (I == \"c\") { F = msf.LC._c; G.r = msf.LC._cr; G.t = msf.LC._ct } else { if (I == \"f\") { F = \"0.00\" } } } } if (F.indexOf(\",.\") !== -1) { H /= 1000 } if (F.indexOf(\"%\") !== -1) { H *= 100 } var E = F.split(\";\"); if (H < 0 && E.length > 1) { H *= -1; G.f = E[1] } else { G.f = E[!H && E.length > 2 ? 2 : 0] } return B(H, G) } } }; Date.prototype.__Format = function (F) { var G = this; var E = \"\"; var H; if (F.length == 1) { F = msf.LC[F] } return F.replace(/(d{1,4}|M{1,4}|yyyy|yy|HH|H|hh|h|mm|m|ss|s|tt)/g, function () { switch (arguments[0]) { case \"dddd\": return msf.LC._d[G.getDay()]; case \"ddd\": return msf.LC._d[G.getDay()].substr(0, 3); case \"dd\": return C(G.getDate()); case \"d\": return G.getDate(); case \"MMMM\": return msf.LC._m[G.getMonth()]; case \"MMM\": return msf.LC._m[G.getMonth()].substr(0, 3); case \"MM\": return C(G.getMonth() + 1); case \"M\": return G.getMonth() + 1; case \"yyyy\": return G.getFullYear(); case \"yy\": return G.getFullYear().toString().substr(2); case \"HH\": return C(G.getHours()); case \"hh\": return C((G.getHours() - 1) % 12 + 1); case \"H\": return G.getHours(); case \"h\": return (G.getHours() - 1) % 12 + 1; case \"mm\": return C(G.getMinutes()); case \"m\": return G.getMinutes(); case \"ss\": return C(G.getSeconds()); case \"s\": return G.getSeconds(); case \"tt\": return G.getHours() < 12 ? \"AM\" : \"PM\"; default: return \"\" } }) }; String.__Format = function (I, J, H, F) { var G = arguments, E; return I.replace(/(\\{*)\\{((\\d+)(\\,(-?\\d*))?(\\:([^\\}]*))?)\\}/g, function () { var K = arguments; if (K[1] && K[1].length % 2 == 1) { return K[0] } if ((E = G[parseInt(K[3], 10) + 1]) === undefined) { throw \"Missing argument\" } var N = E.__Format ? E.__Format(K[7]) : E.toString(); var L = parseInt(K[5], 10) || 0; var O = Math.abs(L) - N.length; if (O > 0) { var M = \" \"; while (M.length < O) { M += \" \" } N = L > 0 ? N + M : M + N } return K[1] + N }).replace(/\\{\\{/g, \"{\") }; msf.LC = null; msf.setCulture = function (E) { msf.LC = D(E) || D(E.substr(0, 2)) || D() }; msf.setCulture(navigator.systemLanguage || navigator.language || \"en-US\"); var A = Date.prototype; A.format = A.format || A.__Format; A = Number.prototype; A.format = A.format || A.__Format; String.format = String.format || String.__Format })();","/* These functions are outside of a namespace */\r\n/* isnull would normally only operate on null in SQL, but in this case, even if blank, we want the replacement value */\r\nfunction isnull(value, replacementvalue)\r\n{\r\n if (value == null)\r\n { return replacementvalue;}\r\n else\r\n {\r\n if(value == '')\r\n {\r\n return replacementvalue;\r\n }\r\n else\r\n {\r\n return value;\r\n }\r\n }\r\n}\r\n\r\nfunction sortByKey(array, key) {\r\n return array.sort(function (a, b) {\r\n var x = a[key]; var y = b[key];\r\n return ((x < y) ? -1 : ((x > y) ? 1 : 0));\r\n });\r\n}","CHSI.Claims.ClaimIntake = {};","CHSI.Claims.ClaimIntake.ClaimIntakeForm = {\r\n Init: function (qs) {\r\n var Template_ClaimIntakeForm = $('#Template_ClaimIntakeForm').html();\r\n this.Templates.ClaimIntakeForm = Handlebars.compile(Template_ClaimIntakeForm);\r\n\r\n this.Cache.IncidentID = qs.IncidentID;\r\n if (this.Cache.IncidentID == null || this.Cache.IncidentID == undefined || this.Cache.IncidentID == 0) {\r\n this.Cache.IncidentID = 0;\r\n }\r\n this.Cache.FormTypeID = qs.FormTypeID;\r\n this.Cache.ClientID = qs.ClientID;\r\n if (this.Cache.ClientID == null) {\r\n this.Cache.ClientID = CurrentClientID;\r\n }\r\n\r\n this.Calls.GetCategories(function () {\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Binds.Categories(function () {\r\n CHSI.Claims.ClaimIntake.Start.Init(CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.FormTypeID, CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClientID, CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.IncidentID);\r\n });\r\n });\r\n\r\n this.Events.Global();\r\n }, \r\n Templates: {},\r\n Cache: {\r\n ClaimIntakeObject: {\r\n NewIncidentObject: {}\r\n },\r\n Progress: 0,\r\n PreviousIndex: null,\r\n isValidated: false, \r\n },\r\n Binds: {\r\n Categories: function (successFunction) {\r\n $('#ClaimIntakeFormContainer').html(CHSI.Claims.ClaimIntake.ClaimIntakeForm.Templates.ClaimIntakeForm({ ClaimIntakeObject: CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject }));\r\n\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Events.UpdateActiveNavigationLink(0);\r\n\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n\r\n $('#jxInnerProgressBar').css('width', 0);\r\n }\r\n },\r\n Events: {\r\n Global: function () {\r\n // This adds the ability to allow the user to select the category links in order to traverse the form in addition to clicking the next and previous buttons.\r\n\r\n //$('#ClaimIntakeFormContainer').on('click', '.DisplayForm', function () {\r\n // var CategoryName = $(this).data('categoryname'),\r\n // FormCategoryID = $(this).data('formcategoryid'),\r\n // CurrentIndex = $(this).data('index');\r\n\r\n // $('#jxNext').data('currentindex', CurrentIndex);\r\n // $('#jxNext').data('formcategoryid', '');\r\n // $('#jxPrevious').data('currentindex', CurrentIndex);\r\n // $('#jxPrevious').data('formcategoryid', '');\r\n\r\n // CHSI.Claims.ClaimIntake.ClaimIntakeForm.Events.GetRequestedForm(CategoryName, FormCategoryID);\r\n // CHSI.Claims.ClaimIntake.ClaimIntakeForm.Events.UpdateActiveNavigationLink(CurrentIndex);\r\n //});\r\n\r\n $('#ClaimIntakeFormContainer').on('click', '#jxPrevious', function () {\r\n var FormCategoryID = $(this).data('formcategoryid'),\r\n CurrentIndex = $(this).data('currentindex'),\r\n Fields = $('.FieldType').data('index'),\r\n PreviousIndex = CurrentIndex - 1;\r\n\r\n $(this).attr('disabled', true);\r\n $('#jxPreparing').show();\r\n\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Events.ValidateFields(CurrentIndex, function () {\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Events.RequestFieldSave(function () {\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Events.TrackProgress(PreviousIndex, FormCategoryID);\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Events.NavigateForms('#jxPrevious', '#jxNext', true);\r\n });\r\n }); \r\n });\r\n\r\n $('#ClaimIntakeFormContainer').on('click', '#jxNext', function () {\r\n var FormCategoryID = $(this).data('formcategoryid'),\r\n CurrentIndex = $(this).data('currentindex'),\r\n Fields = $('.FieldType').data('index'),\r\n MextIndex = CurrentIndex + 1;\r\n\r\n $(this).attr('disabled', true);\r\n $('#jxPreparing').show();\r\n\r\n if (CurrentIndex == 0) { // we're on the start page\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Events.RequestIncidentSave(function (IncidentID) {\r\n if (CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.IncidentID == null) {\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.IncidentID = IncidentID;\r\n }\r\n\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Events.TrackProgress(MextIndex, FormCategoryID);\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Events.NavigateForms('#jxNext', '#jxPrevious', false);\r\n }); \r\n }\r\n else {\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Events.ValidateFields(CurrentIndex, function () {\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Events.RequestFieldSave(function () {\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Events.TrackProgress(MextIndex, FormCategoryID);\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Events.NavigateForms('#jxNext', '#jxPrevious', false);\r\n });\r\n });\r\n } \r\n });\r\n\r\n $('#ClaimIntakeFormContainer').on('click', '#jxCancel', function () {\r\n closeThis(true);\r\n });\r\n\r\n $('#ClaimIntakeFormContainer').on('click', '#jxFinish', function () {\r\n // run notifications?\r\n });\r\n },\r\n\r\n GetRequestedForm: function (categoryName, formCategoryID) {\r\n var ClaimIntakeObject = CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject;\r\n\r\n switch (categoryName) {\r\n case 'Start':\r\n CHSI.Claims.ClaimIntake.Start.Init(CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.FormTypeID, CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClientID, CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.IncidentID);\r\n break;\r\n case 'Finish':\r\n CHSI.Claims.ClaimIntake.Finish.Init(CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.IncidentID, CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.FormTypeID);\r\n break;\r\n default:\r\n for (Index = 0; Index < ClaimIntakeObject.Categories.length; Index++) {\r\n if (formCategoryID == ClaimIntakeObject.Categories[Index].FormCategoryID) {\r\n CHSI.Claims.ClaimIntake.Dynamic.Init(ClaimIntakeObject.Categories[Index], CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.IncidentID);\r\n return true;\r\n }\r\n }\r\n }\r\n },\r\n\r\n ValidateFields: function (index, successFunction) {\r\n if ($('form').valid()) { \r\n successFunction();\r\n } else { \r\n alert('Please complete the form before proceeding.');\r\n return false;\r\n }\r\n },\r\n\r\n ConfirmIsValid: function (index, isValid) {\r\n var CurrentCategory = $('#jxCategoryLink_' + index);\r\n\r\n CurrentCategory.data('isvalidated', isValid); \r\n },\r\n\r\n TrackProgress: function (index, formCategoryID) {\r\n var ProgressBar = $('#jxInnerProgressBar'),\r\n Categories = CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.Categories,\r\n NumberOfCategories = Categories.length,\r\n CurrentProgress = (100 / NumberOfCategories).toFixed(2),\r\n TotalProgress = CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.Progress,\r\n PreviousIndex = CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.PreviousIndex;\r\n\r\n CurrentProgress = parseFloat(CurrentProgress);\r\n \r\n for (CategoryCount = 0; CategoryCount < NumberOfCategories; CategoryCount++) {\r\n if (Categories[CategoryCount].FormCategoryID == formCategoryID || Categories[CategoryCount].CategoryName == 'Start' || Categories[CategoryCount].CategoryName == 'Finish') {\r\n\r\n if (index > PreviousIndex || PreviousIndex == null) {\r\n TotalProgress = TotalProgress += CurrentProgress; \r\n }else{\r\n TotalProgress = TotalProgress -= CurrentProgress;\r\n } \r\n\r\n ProgressBar.css('width', TotalProgress + '%');\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.Progress = TotalProgress;\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.PreviousIndex = index;\r\n return true;\r\n }\r\n }\r\n\r\n // In order to update the progress bar based on whether or not a category/form was validated, use the \"UpdateFormProgress\" method. Otherwise, the \"TrackProgress\" method just updates the progress bar based on your position within the form.\r\n },\r\n\r\n //UpdateFormProgress: function (index, formCategoryID, isFormCompleted) {\r\n // var ProgressBar = $('#jxInnerProgressBar'),\r\n // Categories = CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.Categories,\r\n // NumberOfCategories = Categories.length,\r\n // CurrentProgress = (100 / NumberOfCategories).toFixed(2),\r\n // TotalProgress = CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.Progress;\r\n\r\n // CurrentProgress = parseFloat(CurrentProgress);\r\n\r\n // if (!isFormCompleted || isFormCompleted == undefined) {\r\n // for (CategoryCount = 0; CategoryCount < NumberOfCategories; CategoryCount++) {\r\n // if (Categories[CategoryCount].FormCategoryID == formCategoryID || Categories[CategoryCount].CategoryName == 'Start' || Categories[CategoryCount].CategoryName == 'Finish') {\r\n\r\n // TotalProgress = TotalProgress += CurrentProgress;\r\n // ProgressBar.css('width', TotalProgress + '%');\r\n // CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.Progress = TotalProgress;\r\n // CHSI.Claims.ClaimIntake.ClaimIntakeForm.Events.ConfirmIsValid(index, true);\r\n // return true;\r\n // }\r\n // }\r\n // }\r\n //},\r\n\r\n UpdateActiveNavigationLink: function (index) {\r\n var DisplayForm = $('.DisplayForm'),\r\n CurrentIndex = 0;\r\n\r\n $('li a').removeClass('ActiveLink');\r\n\r\n $.each(DisplayForm, function (Index, Value) {\r\n CurrentIndex = $(this).data('index');\r\n\r\n if (CurrentIndex == index) {\r\n $(this).addClass('ActiveLink');\r\n }\r\n });\r\n },\r\n\r\n NavigateForms: function (primaryTarget, secondaryTarget, isPrevious) {\r\n var Categories = CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.Categories,\r\n CurrentIndex = $(primaryTarget).data('currentindex'),\r\n NextIndex = 0,\r\n NextCategoryID = 0,\r\n NextCategoryName = null;\r\n\r\n if (isPrevious) {\r\n NextIndex = CurrentIndex * 1 - 1;\r\n } else {\r\n NextIndex = CurrentIndex * 1 + 1;\r\n }\r\n\r\n NextCategoryName = Categories[NextIndex].CategoryName;\r\n NextCategoryID = Categories[NextIndex].FormCategoryID;\r\n\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Events.GetRequestedForm(NextCategoryName, NextCategoryID);\r\n\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Events.UpdateActiveNavigationLink(NextIndex);\r\n\r\n $(primaryTarget).data('currentindex', NextIndex);\r\n $(primaryTarget).data('formcategoryid', Categories[NextIndex].FormCategoryID);\r\n $(secondaryTarget).data('currentindex', NextIndex);\r\n $(secondaryTarget).data('formcategoryid', Categories[NextIndex].FormCategoryID);\r\n },\r\n\r\n RequestFieldSave: function (successFunction) {\r\n CHSI.Claims.ClaimIntake.Dynamic.Calls.SaveFields(successFunction);\r\n },\r\n\r\n RequestIncidentSave: function (successFunction) {\r\n CHSI.Claims.ClaimIntake.Start.Calls.SaveIncident(successFunction);\r\n }\r\n },\r\n Calls: {\r\n GetCategories: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/Form/GetIntakeForm?ClaimIncidentReportID=' + CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.IncidentID+'&FormTypeID='+CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.FormTypeID;\r\n Options.Data = null;\r\n Options.Success = function (data) {\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject = data;\r\n if (!(data && data.IncidentDate)) {\r\n d = new Date();\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.IncidentDate = (d.getUTCMonth() + 1) + '/' + d.getUTCDate() + '/' + d.getUTCFullYear();\r\n }\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.Categories.unshift({ CategoryName: 'Start' });\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.Categories.push({ CategoryName: 'Finish' });\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n };\r\n CHSI.Common.Ajax.Get(Options);\r\n }\r\n }\r\n}","CHSI.Claims.ClaimIntake.Dynamic = {\r\n Init: function (fieldObject, incidentID) {\r\n \r\n this.Templates.Dynamic = CHSITemplates.ClaimIntakeForm_Dynamic; // Handlebars.compile(Template_Dynamic);\r\n\r\n this.Cache.IncidentID = incidentID;\r\n this.Cache.FieldsObject = fieldObject.Fields;\r\n \r\n this.Binds.Dynamic(function () {\r\n CHSI.Claims.ClaimIntake.Dynamic.Events.PopulateFieldData();\r\n });\r\n\r\n this.Events.Global();\r\n },\r\n Templates: {},\r\n Cache: {\r\n FieldsObject: {},\r\n FieldsObjectValues: {},\r\n SelectedDate: null\r\n },\r\n Binds: {\r\n Dynamic: function (successFunction) {\r\n $('#DynamicFormContainer').html(CHSI.Claims.ClaimIntake.Dynamic.Templates.Dynamic({ Fields: CHSI.Claims.ClaimIntake.Dynamic.Cache.FieldsObject }));\r\n \r\n $('.Date').datepicker({\r\n showOn: \"both\",\r\n buttonImage: \"/images/icons/cal.gif\",\r\n buttonImageOnly: true,\r\n onSelect: function () { \r\n var ua = window.navigator.userAgent;\r\n var msie = ua.indexOf(\"MSIE \");\r\n\r\n if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\\:11\\./)){\r\n $(this).blur();\r\n }else{\r\n $(this).focus().blur();\r\n } \r\n }\r\n });\r\n\r\n $('#jxPrevious').attr('disabled', false);\r\n $('#jxPrevious').show();\r\n $('#jxNext').attr('disabled', false);\r\n $('#jxNext').show();\r\n $('#jxFinish').hide();\r\n $('#jxPreparing').hide();\r\n\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n }\r\n },\r\n Events: {\r\n Global: function () {\r\n $('#DynamicFormContainer').on('keyup', 'input', function () {\r\n\r\n var ChangedField = $(this),\r\n index = ChangedField.data('index'),\r\n dataSize = ChangedField.data('datasize'),\r\n value = ChangedField.val();\r\n\r\n ChangedField.val(CHSI.Claims.ClaimIntake.Dynamic.Events.DataSizeValidator(value, dataSize));\r\n });\r\n\r\n $('#DynamicFormContainer').on('blur', '.Regular', function () {\r\n var Element = $(this);\r\n var ElementVal = Element.val();\r\n var Format = Element.data('displayformat');\r\n var DataType = Element.data('datatype');\r\n Element.val(CHSI.Claims.ClaimIntake.Dynamic.Events.FormatString(ElementVal, Format, DataType));\r\n\r\n var validator = $('form').validate({\r\n debug: true,\r\n onkeyup: false,\r\n onfocusout: false\r\n });\r\n\r\n validator.element(this); \r\n\r\n $('#jxNext').attr('disabled', false);\r\n $('#jxPrevious').attr('disabled', false);\r\n });\r\n\r\n $('#DynamicFormContainer').on('blur', '.Calculated', function () {\r\n });\r\n\r\n $('#DynamicFormContainer').on('blur', '.Date', function () {\r\n var Element = $(this);\r\n var FormatedDate = CHSI.Dates.GetShortDate(Element.val());\r\n Element.val(FormatedDate);\r\n\r\n var validator = $('form').validate({\r\n debug: true,\r\n onkeyup: false,\r\n onfocusout: false\r\n });\r\n\r\n validator.element(this); \r\n\r\n $('#jxNext').attr('disabled', false);\r\n $('#jxPrevious').attr('disabled', false);\r\n });\r\n\r\n $('#DynamicFormContainer').on('blur', '.DropDown', function () {\r\n var validator = $('form').validate({\r\n debug: true,\r\n onkeyup: false,\r\n onfocusout: false\r\n });\r\n validator.element(this); \r\n\r\n $('#jxNext').attr('disabled', false);\r\n $('#jxPrevious').attr('disabled', false);\r\n });\r\n\r\n $('#DynamicFormContainer').on('blur', '.TextBlock', function () {\r\n var validator = $('form').validate({\r\n debug: true,\r\n onkeyup: false,\r\n onfocusout: false\r\n });\r\n validator.element(this); \r\n\r\n $('#jxNext').attr('disabled', false);\r\n $('#jxPrevious').attr('disabled', false);\r\n }); \r\n\r\n },\r\n SaveFields: function () {\r\n var NewFieldsArray = [],\r\n NewFieldsObject = {},\r\n Fields = $('.FieldType');\r\n \r\n for (Index = 0; Index < Fields.length ; Index++) {\r\n NewFieldsObject = {}; \r\n NewFieldsObject.FormFieldID = CHSI.Claims.ClaimIntake.Dynamic.Cache.FieldsObject[Index].FormFieldID;\r\n NewFieldsObject.IncidentID = CHSI.Claims.ClaimIntake.Dynamic.Cache.IncidentID;\r\n NewFieldsObject.FieldValue = $('#jxField_' + Index).val();\r\n NewFieldsArray.push(NewFieldsObject);\r\n }\r\n return NewFieldsArray;\r\n },\r\n PopulateFieldData: function () {\r\n CHSI.Claims.ClaimIntake.Dynamic.Calls.GetFieldValueInformation(function () {\r\n var FieldValues = CHSI.Claims.ClaimIntake.Dynamic.Cache.FieldsObjectValues,\r\n Fields = $('.FieldType');\r\n\r\n for (Index = 0; Index < Fields.length; Index++) {\r\n var CurrentField = $('#jxField_' + Index),\r\n CurrentFormFieldID = CurrentField.data('formfieldid')\r\n\r\n for (FieldIndex = 0; FieldIndex < FieldValues.length; FieldIndex++) {\r\n if (CurrentFormFieldID == FieldValues[FieldIndex].FormFieldID) {\r\n CurrentField.val(FieldValues[FieldIndex].FieldValue);\r\n break;\r\n }\r\n }\r\n }\r\n });\r\n \r\n },\r\n DataSizeValidator: function (CurrentValue, DataSize) {\r\n var CharLimit = 0;\r\n \r\n if (CurrentValue.indexOf('.') == -1) {\r\n CharLimit = CurrentValue;\r\n } else {\r\n var DecimalValue = CurrentValue.split('.'),\r\n Characteristic = DecimalValue[0],\r\n Mantissa = DecimalValue[1] * 1;\r\n \r\n if (Mantissa == 0 || '') {\r\n CharLimit = CurrentValue;\r\n } else { \r\n if (Mantissa.toString().length > DataSize) {\r\n Mantissa = Mantissa.toString().substring(0, DataSize);\r\n }\r\n DecimalValue = Characteristic + '.' + Mantissa;\r\n CharLimit = DecimalValue;\r\n } \r\n }\r\n\r\n return CharLimit;\r\n },\r\n ApplyPrevious: function (index, priorvalue, actualvalue) {\r\n $('#jxField_' + index).val(priorvalue);\r\n $('#jxRevertField_' + index).hide();\r\n $('#jxField_' + index).removeClass('HighlightGreen');\r\n },\r\n SetLabel: function () {\r\n if (this.Cache.PendingChanges) {\r\n $('#jxFieldLabel').html(\"Values have been changed and are waiting for administrator action.
The scheduled item status will remain pending until changes are saved.\");\r\n if (CHSI.Page.SItemFormItem.Cache.Deleted == false) {\r\n $('#jxItemLabel').html(\"Approval Required: Field Value(s) Changed\");\r\n if (this.Cache.NewItem) {\r\n $('#jxItemLabel').html(\"Approval Required: New Item Added\");\r\n }\r\n }\r\n } else {\r\n if (this.Cache.NewItem) {\r\n $('#jxFieldLabel').html(\"A new item has been added and waiting for administrator action.
The scheduled item status will remain pending until changes are saved.\");\r\n if (CHSI.Page.SItemFormItem.Cache.Deleted == false) {\r\n $('#jxItemLabel').html(\"Approval Required: New Item Added\");\r\n }\r\n } else {\r\n $('#jxFieldLabel').html(\"\");\r\n if (CHSI.Page.SItemFormItem.Cache.Deleted == false) {\r\n $('#jxItemLabel').html(\"\");\r\n }\r\n }\r\n }\r\n },\r\n FormatString: function (SValue, Format, DataType) {\r\n var FormatedText = SValue;\r\n if (SValue && Format && DataType) {\r\n var ElementVal = CHSI.Claims.ClaimIntake.Dynamic.Events.GetValue(SValue, DataType);\r\n FormatedText = String.__Format(Format, ElementVal);\r\n }\r\n return FormatedText;\r\n },\r\n GetValue: function (SValue, DataType) {\r\n var ElementVal = SValue;\r\n switch (DataType) {\r\n case 3: //Decimal\r\n ElementVal = parseFloat(ElementVal.replace(/[^0-9\\.]/g, ''));\r\n break;\r\n case 5: //Integer \r\n ElementVal = parseInt(ElementVal.replace(/,/g, ''), 10);\r\n break;\r\n }\r\n return ElementVal;\r\n },\r\n },\r\n Calls: {\r\n GetFieldValueInformation: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/Form/GetIntakeFormFields?ClaimIncidentReportID=' + CHSI.Claims.ClaimIntake.Dynamic.Cache.IncidentID;\r\n Options.Success = function (data) {\r\n CHSI.Claims.ClaimIntake.Dynamic.Cache.FieldsObjectValues = data;\r\n if (successFunction) {\r\n successFunction(data);\r\n } \r\n }\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n SaveFields: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/Form/SaveIntakeFormField';\r\n Options.Data = CHSI.Claims.ClaimIntake.Dynamic.Events.SaveFields();\r\n Options.Success = function () {\r\n if (successFunction) {\r\n successFunction();\r\n } \r\n }\r\n CHSI.Common.Ajax.Post(Options);\r\n }\r\n }\r\n}","CHSI.Claims.ClaimIntake.Finish = {\r\n Init: function (incidentID, formTypeID) {\r\n \r\n this.Templates.Finish = CHSITemplates.ClaimIntakeForm_Finish;\r\n\r\n this.Cache.IncidentID = incidentID;\r\n this.Cache.FormTypeID = formTypeID;\r\n\r\n this.Calls.GetLateReasons(function () {\r\n CHSI.Claims.ClaimIntake.Finish.Binds.Finish();\r\n });\r\n \r\n this.Events.Global();\r\n },\r\n Templates: {},\r\n Cache: {\r\n ClaimObject: {}\r\n },\r\n Binds: {\r\n Finish: function () {\r\n $('#DynamicFormContainer').html(CHSI.Claims.ClaimIntake.Finish.Templates.Finish({ ClaimObject: CHSI.Claims.ClaimIntake.Finish.Cache.ClaimObject }));\r\n\r\n $('#jxNext').hide();\r\n $('#jxFinish').show();\r\n $('#jxPreparing').hide();\r\n }\r\n },\r\n Events: {\r\n Global: function () {\r\n $('#ClaimIntakeFormContainer').on('click', '#jxFinish', function () {\r\n CHSI.Claims.ClaimIntake.Finish.Calls.SaveIncident(function () {\r\n CHSI.Claims.ClaimIntake.Finish.Calls.SubmitIncident(function () {\r\n top.location = top.location;\r\n });\r\n });\r\n });\r\n },\r\n PersistIncident: function () {\r\n var NewIncidentObject = CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.NewIncidentObject,\r\n d = new Date(),\r\n month = d.getMonth() + 1,\r\n day = d.getDate(),\r\n fullYear = d.getFullYear(),\r\n shortDate = month + '/' + day + '/' + fullYear;\r\n\r\n\r\n \r\n NewIncidentObject.Status = 'Submitted';\r\n NewIncidentObject.FormCompletedDate = shortDate;\r\n NewIncidentObject.FormCompletedBy = $('#jxCompletedBy').val();\r\n NewIncidentObject.FormCompletedTitle = $('#jxTitle').val();\r\n NewIncidentObject.LateReasonCode = $('#jxLate').val();\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.NewIncidentObject = NewIncidentObject;\r\n\r\n return NewIncidentObject;\r\n }\r\n },\r\n Calls: {\r\n GetLateReasons: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/Claim/GetLateReasons'; \r\n Options.Success = function (data) {\r\n CHSI.Claims.ClaimIntake.Finish.Cache.ClaimObject.LateReasons = data;\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n };\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n SaveIncident: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/ClaimIncidentReport/SaveIncident';\r\n Options.Data = CHSI.Claims.ClaimIntake.Finish.Events.PersistIncident();\r\n Options.Success = function (data) {\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n };\r\n CHSI.Common.Ajax.Post(Options);\r\n },\r\n SubmitIncident: function (successFunction) {\r\n var IncidentID = CHSI.Claims.ClaimIntake.Finish.Cache.IncidentID * 1;\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/ClaimIncidentReport/SubmitIncident?IncidentID=' + IncidentID;\r\n Options.Success = function (data) {\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n };\r\n CHSI.Common.Ajax.Post(Options);\r\n }\r\n }\r\n}","CHSI.Claims.ClaimIntake.Start = {\r\n Init: function (formTypeID, ClientID, incidentID) {\r\n\r\n $('#jxNext').hide();\r\n $('#jxCancel').hide();\r\n $('#jxPrevious').hide();\r\n $('#jxFinish').hide(); \r\n\r\n \r\n this.Templates.Start = CHSITemplates.ClaimIntakeForm_Start;\r\n \r\n this.Cache.IncidentID = incidentID;\r\n this.Cache.FormTypeID = formTypeID;\r\n this.Cache.ClientID = ClientID;\r\n \r\n this.Calls.GetInstructions(function () {\r\n CHSI.Claims.ClaimIntake.Start.Calls.GetClientInformation(function () {\r\n CHSI.Claims.ClaimIntake.Start.Calls.GetAdditionalClientInformation(function () {\r\n CHSI.Claims.ClaimIntake.Start.Calls.GetLocations(function () {\r\n CHSI.Claims.ClaimIntake.Start.Binds.Start();\r\n });\r\n }); \r\n }); \r\n }); \r\n\r\n this.Events.Global();\r\n },\r\n Templates: {},\r\n Cache: {\r\n ClaimObject: {}\r\n },\r\n Binds: {\r\n Start: function () {\r\n $('#DynamicFormContainer').html(CHSI.Claims.ClaimIntake.Start.Templates.Start({ ClaimObject: CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject }));\r\n\r\n $('#jxIncidentDate').datepicker({\r\n showOn: \"both\",\r\n buttonImage: \"/images/icons/cal.gif\",\r\n buttonImageOnly: true, \r\n });\r\n\r\n $('#ui-datepicker-div').hide();\r\n\r\n $('#jxNext').show();\r\n $('#jxCancel').show();\r\n $('#jxPrevious').hide();\r\n $('#jxFinish').hide();\r\n $('#jxPreparing').hide();\r\n }\r\n },\r\n Events: {\r\n Global: function () {\r\n\r\n },\r\n PersistIncident: function () {\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.NewIncidentObject = {};\r\n var NewIncidentObject = CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.NewIncidentObject,\r\n ClaimIntakeObject = CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject;\r\n\r\n NewIncidentObject.StateAccountNo = ClaimIntakeObject.AdditionalClientInformation.DetailValue == null ? '' : ClaimIntakeObject.AdditionalClientInformation.DetailValue;\r\n NewIncidentObject.TypeOfEmployer = 'Private';\r\n NewIncidentObject.FormType = ClaimIntakeObject.FormTypeName;\r\n NewIncidentObject.NatureOfBusiness = ClaimIntakeObject.ClientInformation.Industry;\r\n NewIncidentObject.ClientNumber = ClaimIntakeObject.ClientInformation.ClientNumber;\r\n NewIncidentObject.GroupID = ClaimIntakeObject.ClientInformation.GroupID;\r\n NewIncidentObject.LocationID = $('#jxLocation').val();\r\n NewIncidentObject.IncidentDate = $('#jxIncidentDate').val();\r\n NewIncidentObject.IncidentID = CHSI.Claims.ClaimIntake.Start.Cache.IncidentID != null ? CHSI.Claims.ClaimIntake.Start.Cache.IncidentID : 0;\r\n NewIncidentObject.Status = ClaimIntakeObject.Status;\r\n if (NewIncidentObject.Status.toLowerCase() == 'active')\r\n {\r\n NewIncidentObject.Status = 'new';\r\n }\r\n NewIncidentObject.FormTypeID = CHSI.Claims.ClaimIntake.Start.Cache.FormTypeID;\r\n\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.NewIncidentObject = NewIncidentObject;\r\n return NewIncidentObject;\r\n }\r\n },\r\n Calls: {\r\n GetClientInformation: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/CRM/Clients/GetClient?ClientID=' + CHSI.Claims.ClaimIntake.Start.Cache.ClientID;\r\n Options.Success = function (data) {\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.ClientInformation = data;\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n };\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n GetAdditionalClientInformation: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/CRM/Clients/GetClientAddInfo?ClientID=' + CHSI.Claims.ClaimIntake.Start.Cache.ClientID + '&AddTypeID=4';\r\n Options.Success = function (data) {\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.AdditionalClientInformation = data;\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n };\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n GetLocations: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/CRM/Location/GetLocationsByClientID?ClientID=' + CHSI.Claims.ClaimIntake.Start.Cache.ClientID;\r\n Options.Success = function (data) {\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.Locations = data;\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n };\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n GetInstructions: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/Form/GetInstructions?FormTypeID=' + CHSI.Claims.ClaimIntake.Start.Cache.FormTypeID;\r\n Options.Success = function (data) {\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.InstructionsObject = data;\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n };\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n SaveIncident: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/ClaimIncidentReport/SaveIncident';\r\n Options.Data = CHSI.Claims.ClaimIntake.Start.Events.PersistIncident();\r\n Options.Success = function (data) {\r\n if (CHSI.Claims.ClaimIntake.Start.Cache.IncidentID == null||CHSI.Claims.ClaimIntake.Start.Cache.IncidentID ==0) {\r\n CHSI.Claims.ClaimIntake.Start.Cache.IncidentID = data;\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.IncidentID = data;\r\n CHSI.Claims.ClaimIntake.ClaimIntakeForm.Cache.ClaimIntakeObject.NewIncidentObject.IncidentID = data;\r\n }\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n };\r\n CHSI.Common.Ajax.Post(Options);\r\n },\r\n }\r\n}","CHSI.Claims.FormTypes.Categories = {\r\n Init: function (successFunction) { \r\n var Template_Categories = $('#Template_Categories').html();\r\n this.Templates.Categories = Handlebars.compile(Template_Categories);\r\n\r\n if (CHSI.Claims.FormTypes.Information.Cache.FormTypeID) {\r\n CHSI.Claims.FormTypes.Categories.Calls.GetCategories(function () {\r\n successFunction();\r\n CHSI.Claims.FormTypes.Categories.Binds.Categories();\r\n });\r\n }\r\n else {\r\n CHSI.Claims.FormTypes.Categories.CategoriesObject = [];\r\n CHSI.Claims.FormTypes.Categories.Binds.Categories();\r\n CHSI.Claims.FormTypes.Categories.SaveFlag = false;\r\n\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n }\r\n\r\n this.Events.Global();\r\n },\r\n Templates: {\r\n\r\n },\r\n Cache: {\r\n FormCategoryID: null,\r\n CategoriesObject: {},\r\n SaveFlag: false,\r\n CategoriesList: []\r\n },\r\n Binds: {\r\n Categories: function () { \r\n $('#CategoriesContainer').html(CHSI.Claims.FormTypes.Categories.Templates.Categories({ CategoriesObject: CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories }));\r\n restart = true;\r\n sorttable.init(); \r\n\r\n $('#categoryBody > ul').sortable({\r\n connectWith: \"#CategoriesContainer\"\r\n }).disableSelection();\r\n } \r\n }, \r\n Events: {\r\n Global: function () {\r\n $('#CategoriesContainer').on('sortstart', '#categoryBody > ul', function (event, ui) {\r\n ui.item.css('box-shadow', '0 0 10px #000000');\r\n ui.item.css('background-color', 'white'); \r\n });\r\n\r\n $('#CategoriesContainer').on('sortstop', '#categoryBody > ul', function (event, ui) {\r\n ui.item.css('box-shadow', '');\r\n CHSI.Claims.FormTypes.Categories.Events.updateCategorySortOrder();\r\n CHSI.Claims.FormTypes.Categories.Events.updateRowColor();\r\n });\r\n\r\n $('.ButtonsLeft').on('click', '#jxCategoryAddField', function () {\r\n if (CHSI.Claims.FormTypes.Information.Cache.FormTypeID == null) {\r\n alert('Please save the form if you would like to create a new category.');\r\n } else {\r\n CHSI.Claims.FormTypes.Categories.Events.AddField();\r\n } \r\n });\r\n\r\n $('#CategoriesContainer').on('blur', '.CategoryNameInput', function () {\r\n var name = $(this).data('name');\r\n CHSI.Claims.FormTypes.Categories.Events.updateFieldsCategoriesList($(this), name);\r\n CHSI.Claims.FormTypes.Fields.Binds.Fields();\r\n });\r\n\r\n $('#CategoriesContainer').on('click', '.jxDelete', function () {\r\n var FormCategoryID = $(this).data('formcategoryid'),\r\n Index = $(this).data('index');\r\n var hasFields = CHSI.Claims.FormTypes.Categories.Events.checkAssociatedFields(FormCategoryID);\r\n var isDeleted = false;\r\n\r\n if (hasFields) {\r\n isDeleted = confirm('The category you are about to delete has fields associated with it. If you delete this category, those fields will be deleted in addition to having this category removed. Please confirm to contiune.');\r\n } else {\r\n isDeleted = confirm('Please confirm that you want to delete this category.');\r\n }\r\n if (isDeleted) {\r\n CHSI.Claims.FormTypes.Categories.Events.deleteCategory(FormCategoryID);\r\n \r\n CHSI.SystemNotification.SetResponse('Category deleted');\r\n\r\n $(this).closest('li').remove();\r\n $(this).prop('disabled', true);\r\n }\r\n });\r\n },\r\n SaveCategories: function (successFunction) {\r\n if (CHSI.Claims.FormTypes.Information.Cache.FormTypeID != null) { \r\n CHSI.Claims.FormTypes.Categories.Calls.SaveCategories(successFunction);\r\n }\r\n },\r\n AddField: function () {\r\n\r\n if (CHSI.Claims.FormTypes.Information.Cache.FormTypeID) {\r\n\r\n if (CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories == null) {\r\n CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories = [];\r\n }\r\n\r\n CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories.push({\r\n FormCategoryID: null,\r\n FormTypeID: CHSI.Claims.FormTypes.Information.Cache.FormTypeID * 1,\r\n CategoryName: null,\r\n FieldCount: 0,\r\n SortOrder: CHSI.Claims.FormTypes.Categories.Events.getLastSortOrder(),\r\n Status: 'Active',\r\n CreateUser: null,\r\n CreateTmsp: null,\r\n UpdateUser: null,\r\n UpdateTmsp: null\r\n });\r\n\r\n CHSI.Claims.FormTypes.Categories.Binds.Categories();\r\n\r\n } else { \r\n CHSI.SystemNotification.SetResponse('Save to continue', 4);\r\n } \r\n },\r\n validateCategoryName: function (categoryName, savedName) {\r\n var categories = CHSI.Claims.FormTypes.Categories.Cache.CategoriesList;\r\n var isDupilcate = false;\r\n for (i = 0; i < categories.length; i++) {\r\n if (savedName == categoryName) {\r\n break;\r\n }\r\n if (categories[i].CategoryName == categoryName) {\r\n isDupilcate = true; \r\n break;\r\n }\r\n } \r\n return isDupilcate;\r\n },\r\n deleteCategory: function (formCategoryID) {\r\n var categories = CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories; CHSI.Claims.FormTypes.Categories.Calls.DeleteCategory(formCategoryID, function () { \r\n for (i = 0; i < categories.length; i++) {\r\n if (categories[i].FormCategoryID == formCategoryID) {\r\n categories.splice(i, 1);\r\n }\r\n }\r\n });\r\n },\r\n updateFieldsCategoriesList: function (categoryNameContext, savedName) {\r\n var categories = CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories;\r\n if (categoryNameContext != undefined) { \r\n var isDuplicate = CHSI.Claims.FormTypes.Categories.Events.validateCategoryName(categoryNameContext.val(), savedName);\r\n if (!isDuplicate) {\r\n var index = categoryNameContext.data('index');\r\n var categoryName = categoryNameContext.val();\r\n categories[index].CategoryName = categoryName;\r\n CHSI.Claims.FormTypes.Fields.Binds.Fields();\r\n } else {\r\n categoryNameContext.val('');\r\n alert('There can only be one category with the same name.');\r\n }\r\n }\r\n },\r\n checkAssociatedFields: function (categoryID) {\r\n var fields = CHSI.Claims.FormTypes.Fields.Cache.FieldsArray;\r\n var hasFields = false;\r\n for (i = 0; i < fields.length; i++) {\r\n if (fields[i].FormCategoryID == categoryID) {\r\n hasFields = true;\r\n break;\r\n }\r\n }\r\n return hasFields;\r\n },\r\n updateCategorySortOrder: function () {\r\n var categories = CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories;\r\n $('#categoryBody > ul > li').each(function (i, v) {\r\n for (e = 0; e < categories.length; e++) {\r\n if ($(this).find('.CategoryNameInput').val() == categories[e].CategoryName) {\r\n categories[e].SortOrder = i; \r\n }\r\n }\r\n }); \r\n },\r\n updateRowColor: function () {\r\n $('#categoryBody > ul > li').each(function (i, v) {\r\n var backgroundcolor = 'arow';\r\n if (i % 2 == 0) {\r\n backgroundcolor = 'prow';\r\n }\r\n $(this).removeClass('arow prow').addClass(backgroundcolor);\r\n return backgroundcolor;\r\n });\r\n },\r\n getCategoryObjectByID: function (formCategoryID) {\r\n var categories = CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories;\r\n var category;\r\n for (i = 0; i < categories.length; i++) {\r\n if (categories[i].FormCategoryID == formCategoryID) {\r\n category = categories[i];\r\n break;\r\n }\r\n }\r\n return category;\r\n },\r\n getLastSortOrder: function () {\r\n var categories = CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories;\r\n var previousSortOrder = 0; \r\n for (i = 0; i < categories.length; i++) {\r\n if (categories[i].SortOrder > previousSortOrder) {\r\n previousSortOrder = categories[i].SortOrder;\r\n } \r\n }\r\n return previousSortOrder + 1;\r\n }\r\n },\r\n Calls: {\r\n GetCategories: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/Form/GetCategoriesByType?FormTypeID=' + CHSI.Claims.FormTypes.Information.Cache.FormTypeID;\r\n Options.Success = function (data) {\r\n CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories = data;\r\n CHSI.Claims.FormTypes.Categories.Cache.CategoriesList = data;\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n }\r\n Options.Error = function (data) {\r\n CHSI.Common.LogObject(data); \r\n }\r\n\r\n CHSI.Common.Ajax.Get(Options); \r\n },\r\n SaveCategories: function (successFunction) {\r\n\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/Form/SaveFormCategories';\r\n Options.Data = CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories == undefined ? [] : CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories;\r\n Options.Success = function (data) { \r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n }\r\n Options.Error = function (data) {\r\n CHSI.SystemNotification.SetResponse('An error occurred and has been logged', 2);\r\n CHSI.Common.LogObject(data); \r\n }\r\n\r\n CHSI.Common.Ajax.Post(Options); \r\n },\r\n DeleteCategory: function (FormCategoryID, successFunction) {\r\n var Options = {}; \r\n Options.URL = '/api/ClaimSystem/Form/DeleteFormCategory?FormCategoryID=' + FormCategoryID;\r\n Options.Data = null;\r\n Options.Success = function (data) {\r\n $('.jxDelete').prop('disabled', false);\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n }\r\n Options.Error = function (data) {\r\n CHSI.Common.LogObject(data); \r\n }\r\n CHSI.Common.Ajax.Delete(Options);\r\n }, \r\n }\r\n}","CHSI.Claims.FormTypes.ClaimsForm = {\r\n Init: function () {\r\n var Template_ClaimsForm = $('#Template_ClaimsForm').html();\r\n this.Templates.ClaimsForm = Handlebars.compile(Template_ClaimsForm);\r\n var Template_Groups = $('#Template_Groups').html();\r\n this.Templates.Groups = Handlebars.compile(Template_Groups);\r\n\r\n this.Calls.GetGroups(function () { \r\n CHSI.Claims.FormTypes.ClaimsForm.Binds.Groups();\r\n\r\n CHSI.Claims.FormTypes.ClaimsForm.Calls.GetForms(function () {\r\n CHSI.Claims.FormTypes.ClaimsForm.Binds.Forms();\r\n });\r\n }); \r\n \r\n this.Events.Global();\r\n },\r\n Templates: {\r\n\r\n },\r\n Cache: {\r\n FormsObject: {},\r\n isActive: false,\r\n GroupID: ' '\r\n },\r\n Binds: {\r\n Forms: function () {\r\n $('#ClaimsFormContainer').html(CHSI.Claims.FormTypes.ClaimsForm.Templates.ClaimsForm({ Forms: CHSI.Claims.FormTypes.ClaimsForm.Cache.FormTypeObject }));\r\n restart = true;\r\n sorttable.init();\r\n },\r\n Groups: function () {\r\n $('#GroupsContainer').html(CHSI.Claims.FormTypes.ClaimsForm.Templates.Groups({ Groups: CHSI.Claims.FormTypes.ClaimsForm.Cache.GroupObject }));\r\n }\r\n },\r\n Events: {\r\n Global: function () { \r\n $('#GroupsContainer').on('change', '#jxGroups', function () {\r\n CHSI.Claims.FormTypes.ClaimsForm.Cache.GroupID = $(this).val();\r\n\r\n CHSI.Claims.FormTypes.ClaimsForm.Calls.GetForms(function () {\r\n CHSI.Claims.FormTypes.ClaimsForm.Binds.Forms();\r\n });\r\n });\r\n\r\n $('#GroupsContainer').on('change', '#jxStatus', function () {\r\n if ($(this).is(':checked')) {\r\n CHSI.Claims.FormTypes.ClaimsForm.Cache.isActive = true;\r\n } else {\r\n CHSI.Claims.FormTypes.ClaimsForm.Cache.isActive = false;\r\n }\r\n\r\n CHSI.Claims.FormTypes.ClaimsForm.Calls.GetForms(function () {\r\n CHSI.Claims.FormTypes.ClaimsForm.Binds.Forms();\r\n });\r\n });\r\n },\r\n ShowFormEditor: function (FormTypeID) {\r\n var URL = null;\r\n if (FormTypeID) {\r\n URL = '/Claims/Modals/FormTypeEditor.aspx?FormTypeID=' + FormTypeID;\r\n }else {\r\n URL = '/Claims/Modals/FormTypeEditor.aspx?FormTypeID=' + null;\r\n }\r\n\r\n ShowPopup('ClaimFormEditor', URL, 'Form Editor', 800, 465, CHSI.Claims.FormTypes.ClaimsForm.Events.RefreshGrid, true);\r\n },\r\n RefreshGrid: function () {\r\n CHSI.Claims.FormTypes.ClaimsForm.Calls.GetForms(function () {\r\n CHSI.Claims.FormTypes.ClaimsForm.Binds.Forms();\r\n });\r\n },\r\n deleteFormType: function (FormTypeID) {\r\n var c = confirm('Please confirm that you would like to delete this Form.');\r\n if (c) {\r\n CHSI.Claims.FormTypes.ClaimsForm.Calls.deleteForm(FormTypeID);\r\n }\r\n }\r\n },\r\n Calls: {\r\n GetForms: function (successFunction) {\r\n var Options = {};\r\n\r\n Options.URL = '/api/ClaimSystem/Form/GetFormTypes?GroupName=' + CHSI.Claims.FormTypes.ClaimsForm.Cache.GroupID + '&ActiveOnly=' + CHSI.Claims.FormTypes.ClaimsForm.Cache.isActive;\r\n Options.Success = function (data) {\r\n CHSI.Claims.FormTypes.ClaimsForm.Cache.FormTypeObject = data;\r\n\r\n if (successFunction) { \r\n successFunction(data); \r\n }\r\n }\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n GetGroups: function (successFunction) {\r\n var Options = {};\r\n\r\n Options.URL = '/api/CRM/Group/GetActiveGroups';\r\n Options.Data = null;\r\n Options.Success = function (data) {\r\n CHSI.Claims.FormTypes.ClaimsForm.Cache.GroupObject = data;\r\n\r\n if (successFunction) { \r\n successFunction(data);\r\n }\r\n }\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n deleteForm: function (FormTypeID) {\r\n var URL = '/api/ClaimSystem/Form/DeleteFormType?FormTypeID=' + FormTypeID;\r\n $.post(URL).done(function () {\r\n CHSI.Claims.FormTypes.ClaimsForm.Calls.GetForms(function () {\r\n CHSI.Claims.FormTypes.ClaimsForm.Binds.Forms();\r\n });\r\n });\r\n }\r\n }\r\n}","CHSI.Claims.FormTypes.Fields = {\r\n Init: function (successFunction) {\r\n\r\n var Template_Fields = $('#Template_Fields').html();\r\n this.Templates.Fields = Handlebars.compile(Template_Fields); \r\n\r\n CHSI.Claims.FormTypes.Fields.Calls.GetValidatorTypes(function () {\r\n if (CHSI.Claims.FormTypes.Information.Cache.FormTypeID) {\r\n CHSI.Claims.FormTypes.Fields.Calls.GetFields(function () {\r\n CHSI.Claims.FormTypes.Fields.Calls.GetCategories(function () {\r\n //CHSI.Claims.FormTypes.Fields.Binds.Fields(); \r\n CHSI.Claims.FormTypes.Fields.Events.ProcessFieldCall();\r\n }); \r\n });\r\n }\r\n else {\r\n CHSI.Claims.FormTypes.Fields.Events.ProcessFieldCall([]);\r\n }\r\n });\r\n\r\n this.Events.Global();\r\n },\r\n Templates: {\r\n\r\n },\r\n Cache: {\r\n ValidatorTypes: [],\r\n FieldsObject: {\r\n Fields:[],\r\n Categories: [],\r\n SelectedCategoryIndex: null\r\n }, \r\n SavingFlag: false,\r\n FieldsArray: [], // new as of 6/23/2015\r\n SortType: 'form',\r\n currentMasterDetail: null,\r\n isNewFieldActive: false,\r\n SelectedCategoryID: null\r\n },\r\n\r\n Binds: {\r\n Fields: function () { \r\n\r\n if (CHSI.Claims.FormTypes.FormEditor.Cache.FieldObject) {\r\n CHSI.Claims.FormTypes.Fields.Events.GetFieldsFromPresentationLayer();\r\n CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Fields = CHSI.Claims.FormTypes.FormEditor.Cache.FieldObject;\r\n }\r\n\r\n if ($('#jxFieldCategories').length > 0)\r\n {\r\n CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.SelectedCategoryIndex = $('#jxFieldCategories')[0].selectedIndex - 1;\r\n }\r\n \r\n if (CHSI.Claims.FormTypes.Categories.Cache.CategoriesList.length <= 0) { \r\n \r\n CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Categories = CHSI.Claims.FormTypes.Categories.Cache.CategoriesList;\r\n $('#FieldsContainer').html(CHSI.Claims.FormTypes.Fields.Templates.Fields(CHSI.Claims.FormTypes.Fields.Cache.FieldsObject));\r\n } else {\r\n CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Categories = CHSI.Claims.FormTypes.Categories.Cache.CategoriesList;\r\n $('#FieldsContainer').html(CHSI.Claims.FormTypes.Fields.Templates.Fields({ Fields: CHSI.Claims.FormTypes.Fields.Cache.FieldsObject }));\r\n }\r\n\r\n if (CHSI.Claims.FormTypes.Fields.Cache.SelectedCategoryName == null) {\r\n CHSI.Claims.FormTypes.Fields.Cache.SelectedCategoryName = $('#jxFieldCategories :selected').val();\r\n CHSI.Claims.FormTypes.Fields.Cache.SelectedCategoryID = $('#jxFieldCategories :selected').data('formcategoryid');\r\n }\r\n\r\n\r\n $('#jxFieldCategories').val(CHSI.Claims.FormTypes.Fields.Cache.SelectedCategoryName); \r\n\r\n $('#fieldContainer > ul').sortable({\r\n connectWith: \"#FieldsContainer\"\r\n }).disableSelection();\r\n\r\n $('.jxDatePicker').datepicker({\r\n showOn: \"both\",\r\n buttonImage: \"/images/icons/cal.gif\",\r\n buttonImageOnly: true\r\n });\r\n\r\n if (CHSI.Claims.FormTypes.Fields.Cache.isNewFieldActive) {\r\n $('#jxFieldAddField').prop('disabled', true);\r\n } else {\r\n $('#jxFieldAddField').prop('disabled', false);\r\n }\r\n\r\n $(\"#jxFormRadio\").prop(\"checked\", true);\r\n\r\n $('.formSortOrderContainer').show();\r\n $('.gridSortOrderContainer').hide();\r\n } \r\n },\r\n GetDefaultField: function () {\r\n return {\r\n FormTypeID: CHSI.Claims.FormTypes.Information.Cache.FormTypeID * 1,\r\n FormFieldID: -1,\r\n CategoryName: $('#jxFieldCategories :selected').val(),\r\n FormEditable: true,\r\n Required: false,\r\n Status: 'Active',\r\n FieldType: '1',\r\n Summarize: false,\r\n GridShow: false,\r\n FormShow: false,\r\n PortalShow: false,\r\n FieldLogic: '',\r\n FormSortOrder: CHSI.Claims.FormTypes.Fields.Events.getLastSortOrderIndex(),\r\n ShowForm: false,\r\n GridSortOrder: CHSI.Claims.FormTypes.Fields.Events.getLastSortOrderIndex(),\r\n GridShow: false\r\n }\r\n },\r\n BindFieldtoPresentation: function (index, Field) {\r\n $('#jxFieldName_' + index).val(Field.FieldName);\r\n $('#jxFieldShowInGrid_' + index).prop('checked', Field.GridShow);\r\n if (Field.GridShow) {\r\n $('#jxFieldSortOrderDisplay_' + index).show();\r\n } else {\r\n $('#jxFieldSortOrderDisplay_' + index).hide();\r\n }\r\n //$('#jxFieldSortOrderGrid_' + index).val(Field.GridSortOrder);\r\n $('#jxFieldShowInForm_' + index).prop('checked', Field.FormShow);\r\n if (Field.FormShow) {\r\n $('#jxFieldShowFormDisplay_' + index).show();\r\n } else {\r\n $('#jxFieldShowFormDisplay_' + index).hide();\r\n }\r\n //$('#jxFieldSortOrderForm_' + index).val(Field.FormSortOrder);\r\n $('#jxFieldVisibleOnPortal_' + index).prop('checked', Field.PortalShow);\r\n if (Field.PortalShow) {\r\n $('#jxFieldReadonlyDisplay_' + index).show();\r\n } else {\r\n $('#jxFieldReadonlyDisplay_' + index).hide();\r\n }\r\n $('#jxFieldReadOnly_' + index).prop('checked', Field.PortalReadOnly);\r\n $('#jxFieldStatus_' + index).val(Field.Status);\r\n $('#jxFieldCategory_' + index).val(Field.CategoryName);\r\n $('#jxFieldLongName_' + index).val(Field.LongName);\r\n $('#jxFieldRequired_' + index).val(Field.Required.toString());\r\n\r\n $('#jxFieldToolTip_' + index).val(Field.ToolTipText);\r\n $('#jxFieldSummarized_' + index).val(Field.Summarize.toString());\r\n $('#jxFieldFieldType_' + index).val(Field.FieldType);\r\n $('#jxFieldDataType_' + index).val(Field.DataType.toString());\r\n $('#jxFieldSize_' + index).val(Field.DataSize);\r\n switch (Field.FieldType * 1) {\r\n case 1/*regular*/:\r\n $('#jxFieldValidator_' + index).val(Field.FieldLogic);\r\n break;\r\n case 2/*calculated*/:\r\n case 4/*dropdown*/:\r\n $('#jxFieldFormula_' + index).val(Field.FieldLogic);\r\n break;\r\n case 3/*date*/:\r\n break;\r\n case 5/*textblock*/:\r\n break;\r\n default:\r\n }\r\n CHSI.Claims.FormTypes.Fields.ProcessFieldTypeChange(index, Field.FieldType * 1);\r\n\r\n $('#jxSFieldDisplayFormat_' + index).val(Field.DisplayFormat);\r\n },\r\n ProcessFieldTypeChange: function (index, newFieldType) {\r\n var jxFieldLogicLabel = $('#jxFieldLogicLabel_' + index);\r\n\r\n var jxFieldValidator = $('#jxFieldValidator_' + index);\r\n var jxFieldFormula = $('#jxFieldFormula_' + index);\r\n var jxFieldDataType = $('#jxFieldDataType_' + index);\r\n jxFieldValidator.hide();\r\n jxFieldFormula.hide();\r\n jxFieldLogicLabel.html('');\r\n switch (newFieldType) {\r\n case 1/*regular*/:\r\n jxFieldValidator.show();\r\n jxFieldLogicLabel.html('Validator');\r\n jxFieldDataType.val(1);\r\n break;\r\n case 2/*calculated*/:\r\n jxFieldFormula.show();\r\n jxFieldLogicLabel.html('Calculation Formula');\r\n jxFieldDataType.val(3);\r\n break;\r\n case 4/*dropdown*/:\r\n jxFieldFormula.show();\r\n jxFieldLogicLabel.html('Dropdown source');\r\n jxFieldDataType.val(1);\r\n break;\r\n case 3/*date*/:\r\n jxFieldDataType.val(2);\r\n break;\r\n case 5/*textblock*/:\r\n jxFieldDataType.val(1);\r\n break;\r\n case 6/*HTML Read-Only*/:\r\n jxFieldDataType.val(1);\r\n break;\r\n default:\r\n }\r\n\r\n },\r\n ShowHideDetailRow: function (index) {\r\n var FieldEditButton = $('#jxFieldEdit_' + index);\r\n var DetailRow = $('#ItemDetailRow_' + index);\r\n\r\n if (DetailRow.is(':visible')) {\r\n DetailRow.slideUp('fast');\r\n FieldEditButton.html('Edit');\r\n }\r\n else {\r\n DetailRow.slideDown('fast');\r\n FieldEditButton.html('Edit');\r\n }\r\n DetailRow.parent().find('.headerFieldName').focus();\r\n },\r\n Events: {\r\n Global: function () {\r\n $('#FieldsContainer').on('sortstart', '#fieldContainer > ul', function (event, ui) {\r\n ui.item.css('box-shadow', '0 0 10px #000000');\r\n ui.item.css('background-color', 'white');\r\n });\r\n\r\n $('#FieldsContainer').on('sortstop', '#fieldContainer > ul', function (event, ui) {\r\n ui.item.css('box-shadow', ''); \r\n CHSI.Claims.FormTypes.Fields.Events.updateFieldSortOrder();\r\n CHSI.Claims.FormTypes.Fields.Events.updateRowColor();\r\n });\r\n\r\n $('#jxFieldAddField').on('click', function () { \r\n if (CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories == undefined) {\r\n CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories = [];\r\n }\r\n if (CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories.length == 0) {\r\n alert('Please add a category if you would like to create a new field.');\r\n } else {\r\n CHSI.Claims.FormTypes.Fields.Events.addField();\r\n } \r\n });\r\n\r\n $('#TabFields').on('change', '.FieldCategorySelect', function () {\r\n var CategoryList = CHSI.Claims.FormTypes.Categories.Cache.CategoriesList,\r\n CategoryName = $(this).val(); \r\n\r\n for (Index = 0; Index < CategoryList.length; Index++) {\r\n if (CategoryName == CategoryList[Index].CategoryName) {\r\n $(this).data('index', CategoryList[Index].Index);\r\n }\r\n }\r\n });\r\n\r\n $('#FieldsContainer').on('change', '#jxFieldCategories', function () {\r\n var FormCategoryID = $(this).find(':selected').data('formcategoryid'),\r\n CurrentOptionIndex = $(this).find(':selected').data('index'),\r\n currentOptionValue = $(this).find(':selected').val();\r\n \r\n CHSI.Claims.FormTypes.Fields.Cache.SelectedCategoryName = currentOptionValue;\r\n CHSI.Claims.FormTypes.Fields.Events.ProcessFieldCall();\r\n });\r\n\r\n\r\n $('#FieldsContainer').on('change', '.ShowGridCheckbox', function () {\r\n var checkbox = $(this);\r\n var Index = checkbox.data('fieldindex');\r\n var jxSFieldSortOrderDisplay = $('#jxFieldSortOrderDisplay_' + Index);\r\n if (checkbox.is(':checked')) {\r\n jxSFieldSortOrderDisplay.show();\r\n } else {\r\n jxSFieldSortOrderDisplay.hide();\r\n }\r\n });\r\n\r\n $('#FieldsContainer').on('change', '.ShowFormCheckbox', function () {\r\n var checkbox = $(this);\r\n var Index = checkbox.data('fieldindex');\r\n var jxSFieldShowInForm = $('#jxFieldShowFormDisplay_' + Index);\r\n if (checkbox.is(':checked')) {\r\n jxSFieldShowInForm.show();\r\n } else {\r\n jxSFieldShowInForm.hide();\r\n }\r\n });\r\n\r\n $('#FieldsContainer').on('change', '.ShowFieldVisibleonPortalCheckbox', function () {\r\n var checkbox = $(this);\r\n var Index = checkbox.data('fieldindex');\r\n var jxSFieldReadonlyDisplay = $('#jxFieldReadonlyDisplay_' + Index);\r\n if (checkbox.is(':checked')) {\r\n jxSFieldReadonlyDisplay.show();\r\n } else {\r\n jxSFieldReadonlyDisplay.hide();\r\n }\r\n });\r\n\r\n $('#FieldsContainer').on('click', '.FieldEdit', function () {\r\n\r\n var FieldEditButton = $(this);\r\n var Index = FieldEditButton.data('fieldindex');\r\n\r\n CHSI.Claims.FormTypes.Fields.ShowHideDetailRow(Index);\r\n\r\n });\r\n $('#FieldsContainer').on('click', '.revertbutton', function () {\r\n var RevertButton = $(this);\r\n var Index = RevertButton.data('fieldindex');\r\n RevertButton.attr('disabled', 'disabled');\r\n var isFound = false;\r\n $(CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Fields).each(function (IndexInArray, Field) {\r\n if (IndexInArray == Index) {\r\n if (Field.FormFieldID == null) {\r\n CHSI.Claims.FormTypes.Fields.BindFieldtoPresentation(IndexInArray, CHSI.Claims.FormTypes.Fields.GetDefaultField());\r\n }\r\n else {\r\n CHSI.Claims.FormTypes.Fields.BindFieldtoPresentation(IndexInArray, Field);\r\n }\r\n\r\n isFound = true;\r\n return false;\r\n }\r\n });\r\n });\r\n\r\n $('#FieldsContainer').on('change', '.FieldType', function () {\r\n var FieldTypeList = $(this);\r\n var index = FieldTypeList.data('fieldindex');\r\n var FieldType = FieldTypeList.val() * 1;\r\n\r\n CHSI.Claims.FormTypes.Fields.ProcessFieldTypeChange(index, FieldType);\r\n });\r\n\r\n $('#FieldsContainer').on('change', 'input,textarea,select', function () {\r\n var ChangeField = $(this);\r\n var Index = ChangeField.data('fieldindex');\r\n var RevertButton = $('#jxFieldRevert_' + Index);\r\n RevertButton.removeAttr('disabled');\r\n });\r\n\r\n $('#FieldsContainer').on('click', '.deletebutton', function () {\r\n var isDeleted = confirm('Please confirm that you would like to delete this field'); \r\n if (isDeleted) { \r\n CHSI.Claims.FormTypes.Fields.Events.deleteField($(this));\r\n }\r\n }); \r\n $('#FieldsContainer').on('click', '.cancelButton', function () { \r\n CHSI.Claims.FormTypes.Fields.Events.deleteField($(this)); \r\n });\r\n\r\n $('#FieldsContainer').on('change', '.setSortOrder', function () {\r\n CHSI.Claims.FormTypes.Fields.Cache.SortType = $(this).val();\r\n var sortOrder = $(this).val();\r\n if (sortOrder == 'form') {\r\n $('.formSortOrderContainer').show();\r\n $('.gridSortOrderContainer').hide();\r\n } else {\r\n (CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Fields);\r\n $('.gridSortOrderContainer').show();\r\n $('.formSortOrderContainer').hide();\r\n }\r\n });\r\n\r\n $('#FieldsContainer').on('change', '.showInForm, .showInGrid', function () {\r\n var isChecked = $(this).is(':checked');\r\n var index = $(this).find('masterDetail').data('index');\r\n if ($(this).attr('class') == 'showInForm') {\r\n CHSI.Claims.FormTypes.Fields.Events.getFieldByIndex(index).FormShow = isChecked;\r\n } else { \r\n CHSI.Claims.FormTypes.Fields.Events.getFieldByIndex(index).GridShow = isChecked;\r\n }\r\n });\r\n },\r\n GetFieldsFromPresentationLayer: function () {\r\n var fields = CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Fields,\r\n fieldObject = null,\r\n fieldID = null;\r\n $('.masterDetail').each(function (i, v) {\r\n\r\n var index = $(this).data('index'); \r\n var formFieldID = $(this).data('formfieldid');\r\n fieldObject = CHSI.Claims.FormTypes.Fields.Events.getFieldByFieldID(formFieldID, false);\r\n\r\n if (fieldObject == null) {\r\n for (fieldIndex = 0; fieldIndex < fields.length; fieldIndex++) {\r\n if (fields[i].FormFieldID == -1) { \r\n fieldObject = fields[i]; \r\n }\r\n }\r\n }\r\n\r\n //for (fieldIndexValue = 0; fieldIndexValue < fields.length; fieldIndexValue++) {\r\n\r\n // fieldObject.FormFieldID = $('#jxFieldName_' + index).data('formfieldid') == -1 ? null : $('#jxFieldName_' + i).data('formfieldid');\r\n\r\n //if (fields[fieldIndexValue].FormFieldID == fieldObject.FormFieldID || fields[fieldIndexValue].FormFieldID == -1) {\r\n\r\n fieldObject.FormFieldID = fieldObject.FormFieldID == -1 ? null : $(this).data('formfieldid');\r\n fieldObject.CategoryName = $('#jxFieldCategory_' + index).val();\r\n fieldObject.FieldName = $('#jxFieldName_' + index).val();\r\n fieldObject.GridShow = $(this).find('.showInGrid').is(':checked');\r\n fieldObject.GridSortOrder = $(this).data('gridsortorder');\r\n fieldObject.FormShow = $(this).find('.showInForm').is(':checked');\r\n fieldObject.FormSortOrder = $(this).data('formsortorder');\r\n fieldObject.PortalShow = $('#jxFieldVisibleOnPortal_' + index).is(':checked');\r\n fieldObject.PortalReadOnly = $('#jxFieldReadOnly_' + index).is(':checked');\r\n fieldObject.Status = $('#jxFieldStatus_' + index).val();\r\n fieldObject.FormCategoryID = null;\r\n fieldObject.LongName = $('#jxFieldLongName_' + index).val();\r\n fieldObject.Required = $('#jxFieldRequired_' + index).val();\r\n fieldObject.ToolTipText = $('#jxFieldToolTip_' + index).val();\r\n fieldObject.Summarize = $('#jxFieldSummarized_' + index).val();\r\n fieldObject.FieldType = $('#jxFieldFieldType_' + index).val();\r\n fieldObject.DataType = $('#jxFieldDataType_' + index).val();\r\n fieldObject.DataSize = $('#jxFieldSize_' + index).val();\r\n fieldObject.FieldLogic = '';\r\n\r\n switch (fieldObject.FieldType * 1) {\r\n case 1 /*regular*/:\r\n fieldObject.FieldLogic = $('#jxFieldValidator_' + index).val();\r\n break;\r\n case 2 /*calculated*/:\r\n case 4 /*dropdown*/:\r\n fieldObject.FieldLogic = $('#jxFieldFormula_' + index).val();\r\n break;\r\n case 3 /*date*/:\r\n break;\r\n case 5 /*textblock*/:\r\n break;\r\n default:\r\n }\r\n fieldObject.DisplayFormat = $('#jxFieldDisplayFormat_' + index).val();\r\n \r\n //} \r\n //}\r\n \r\n });\r\n\r\n this.ValidateFieldInformation();\r\n },\r\n SaveFields: function (successFunction) { \r\n if (CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Fields) {\r\n CHSI.Claims.FormTypes.Fields.Events.GetFieldsFromPresentationLayer();\r\n CHSI.Claims.FormTypes.Fields.Calls.SaveFields(successFunction);\r\n } \r\n\r\n CHSI.Claims.FormTypes.Fields.Cache.isNewFieldActive = false;\r\n $('#jxFieldAddField').prop('disabled', false);\r\n },\r\n ValidateFieldInformation: function () {\r\n var Fields = CHSI.Claims.FormTypes.Fields.Cache.FieldsObject;\r\n var isMissingValue = false; \r\n \r\n for (i = 0; i < Fields.length; i++) { \r\n $.each(Fields[i], function (k, v) {\r\n var FieldName = $('#jxFieldName_' + i).val();\r\n if (FieldName == \"\") {\r\n isMissingValue = true;\r\n return false;\r\n } else { \r\n switch (k) {\r\n case 'FormCategoryID':\r\n break;\r\n case 'FieldOptions':\r\n break;\r\n case 'FieldLogic':\r\n if (v == null) {\r\n v = '';\r\n }\r\n break;\r\n default: \r\n if (v == null) { \r\n isMissingValue = true;\r\n return false;\r\n }\r\n } \r\n }\r\n });\r\n if (isMissingValue) {\r\n break;\r\n }\r\n \r\n }\r\n return isMissingValue;\r\n },\r\n DynamicFieldTypes: function (FieldTypeValue) {\r\n var Calls = CHSI.Claims.FormTypes.Fields.Calls;\r\n var Cache = CHSI.Page.Cache;\r\n var HTML = [];\r\n switch (FieldTypeValue) {\r\n case 1: // Regular\r\n $('#jxSFieldDynamicFieldType_' + + '').html('Validator')\r\n HTML.push('');\r\n break;\r\n case 2: // Calculated\r\n HTML.push('');\r\n break;\r\n case 3: // Date\r\n HTML.push('');\r\n break;\r\n case 4: // DropDown\r\n HTML.push('');\r\n break;\r\n case 5: // TextBlock\r\n HTML.push('');\r\n break;\r\n default:\r\n alert('Type not supported.');\r\n break;\r\n }\r\n return HTML.join('');\r\n },\r\n ProcessFieldCall: function (Fields) { \r\n if (CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories != undefined) {\r\n if (CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories.length != 0) {\r\n \r\n CHSI.Claims.FormTypes.Fields.Cache.FieldsObject = { Fields: CHSI.Claims.FormTypes.Fields.Events.getFieldsByCategory(), Categories: CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories, ContentTypes: CHSI.Claims.FormTypes.Fields.Cache.ContentTypes };\r\n CHSI.Claims.FormTypes.Fields.Binds.Fields();\r\n }\r\n }\r\n },\r\n addField: function () {\r\n if (CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Fields == null) {\r\n CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Fields = [];\r\n }\r\n\r\n var field = {\r\n FormTypeID: CHSI.Claims.FormTypes.Information.Cache.FormTypeID * 1,\r\n FormFieldID: -1,\r\n CategoryName: $('#jxFieldCategories :selected').val(),\r\n FormEditable: true,\r\n Required: false,\r\n Status: 'Active',\r\n FieldType: '1',\r\n Summarize: false,\r\n GridShow: false,\r\n FormShow: false,\r\n PortalShow: false,\r\n FieldLogic: '',\r\n FormSortOrder: CHSI.Claims.FormTypes.Fields.Events.getLastSortOrderIndex(),\r\n ShowForm: false,\r\n GridSortOrder: CHSI.Claims.FormTypes.Fields.Events.getLastSortOrderIndex(),\r\n GridShow: false\r\n }\r\n console.log(CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Fields);\r\n CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Fields.push(field);\r\n console.log(CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Fields);\r\n CHSI.Claims.FormTypes.Fields.Cache.isNewFieldActive = true;\r\n\r\n CHSI.Claims.FormTypes.Fields.Binds.Fields();\r\n\r\n CHSI.Claims.FormTypes.Fields.Events.updateFieldSortOrder();\r\n\r\n CHSI.Claims.FormTypes.Fields.ShowHideDetailRow(CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Fields.length - 1);\r\n \r\n },\r\n deleteField: function ($this) {\r\n var fieldID = $this.data('formfieldid'),\r\n index = $this.data('fieldindex'),\r\n fields = CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Fields;\r\n\r\n $this.closest('li').fadeOut('fast');\r\n\r\n for (i = 0; i < fields.length; i++) {\r\n \r\n if (i == index) {\r\n fields.splice(index, 1);\r\n }\r\n\r\n }\r\n\r\n CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Fields = fields;\r\n if (fieldID) {\r\n CHSI.Claims.FormTypes.Fields.Calls.deleteField(fieldID, function () {\r\n CHSI.Claims.FormTypes.Fields.Events.updateRowColor();\r\n CHSI.Claims.FormTypes.Fields.Events.updateFieldSortOrder();\r\n });\r\n } else {\r\n CHSI.Claims.FormTypes.Fields.Events.updateRowColor();\r\n CHSI.Claims.FormTypes.Fields.Events.updateFieldSortOrder();\r\n }\r\n CHSI.Claims.FormTypes.Fields.Cache.isNewFieldActive = false;\r\n $('#jxFieldAddField').prop('disabled', false);\r\n },\r\n getFieldsByCategory: function () {\r\n \r\n var categoryName = (CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories[0].CategoryName == null ? null : CHSI.Claims.FormTypes.Categories.Cache.CategoriesObject.Categories[0].CategoryName);\r\n var fields = CHSI.Claims.FormTypes.Fields.Cache.FieldsArray;\r\n var fieldsList = [];\r\n\r\n if (CHSI.Claims.FormTypes.Fields.Cache.SelectedCategoryName == null) {\r\n CHSI.Claims.FormTypes.Fields.Cache.SelectedCategoryName = categoryName;\r\n } \r\n\r\n \r\n\r\n if ($('#jxFieldCategories :selected').text() == 'Internal') {\r\n for (i = 0; i < fields.length; i++) {\r\n if (fields[i].CategoryName == '' || fields[i].CategoryName == null || fields[i].CategoryName == ' ' || fields[i].CategoryName == 'Internal') {\r\n fieldsList.push(fields[i]);\r\n }\r\n }\r\n } else { \r\n for (i = 0; i < fields.length; i++) {\r\n if (fields[i].CategoryName == CHSI.Claims.FormTypes.Fields.Cache.SelectedCategoryName) {\r\n fieldsList.push(fields[i]);\r\n }\r\n }\r\n } \r\n\r\n return fieldsList;\r\n\r\n },\r\n StickyCategoryName: function () {\r\n var CategoryList = CHSI.Claims.FormTypes.Categories.Cache.CategoriesList,\r\n Category = $('#jxFieldCategories');\r\n \r\n for (Index = 0; Index < CategoryList.length; Index++) {\r\n if ($('#jxFieldCategory_' + Index).data('fieldindex') == CategoryList[Index].Index) {\r\n $('#jxFieldCategory_' + Index).val(CategoryList[Index].CategoryName);\r\n $('#jxFieldCategory_' + Index).data('fieldindex', CategoryList[Index].Index);\r\n }\r\n }\r\n },\r\n getFieldByIndex: function (index, isFieldArray) {\r\n if (isFieldArray == undefined) {\r\n isFieldArray = true;\r\n }\r\n var fieldObject = null;\r\n var fields = isFieldArray == true ? CHSI.Claims.FormTypes.Fields.Cache.FieldsArray : CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Fields;\r\n for (i = 0; i < fields.length; i++) {\r\n if (index == i) {\r\n fieldObject = fields[i];\r\n break;\r\n }\r\n }\r\n return fieldObject;\r\n },\r\n getFieldByFieldID: function (fieldID, isFieldArray) {\r\n if (isFieldArray == undefined) {\r\n isFieldArray = true;\r\n }\r\n var fieldObject = null;\r\n var fields = isFieldArray == true ? CHSI.Claims.FormTypes.Fields.Cache.FieldsArray : CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Fields;\r\n for (i = 0; i < fields.length; i++) {\r\n if (fields[i].FormFieldID == fieldID) {\r\n fieldObject = fields[i];\r\n break;\r\n }\r\n }\r\n return fieldObject;\r\n },\r\n getFormTypeParameters: function () {\r\n var obj = {};\r\n obj.FormTypeID = CHSI.Claims.FormTypes.Information.Cache.FormTypeID == undefined ? null : CHSI.Claims.FormTypes.Information.Cache.FormTypeID,\r\n obj.FormCategoryID = CHSI.Claims.FormTypes.Fields.Cache.FormCategoryID == undefined ? null : CHSI.Claims.FormTypes.Fields.Cache.FormCategoryID,\r\n obj.FormFieldID = CHSI.Claims.FormTypes.Fields.Cache.FormFieldID == undefined ? null : CHSI.Claims.FormTypes.Fields.Cache.FormFieldID;\r\n return obj;\r\n },\r\n updateFieldSortOrder: function () {\r\n var fields = CHSI.Claims.FormTypes.Fields.Events.getFieldsByCategory();\r\n\r\n\r\n $('#fieldContainer > ul > li').each(function (i, v) {\r\n if (CHSI.Claims.FormTypes.Fields.Cache.SortType == 'form') {\r\n $(this).find('.masterDetail').data('formsortorder', i); \r\n //fields[i].FormSortOrder = i;\r\n } else {\r\n $(this).find('.masterDetail').data('gridsortorder', i);\r\n }\r\n });\r\n },\r\n updateRowColor: function () {\r\n $('#fieldContainer > ul > li').each(function (i, v) { \r\n var backgroundcolor = 'arow';\r\n if (i % 2 == 0) {\r\n backgroundcolor = 'prow';\r\n }\r\n $(this).removeClass('arow prow').addClass(backgroundcolor);\r\n return backgroundcolor;\r\n }); \r\n },\r\n getLastSortOrderIndex: function () {\r\n var fields = CHSI.Claims.FormTypes.Fields.Events.getFieldsByCategory();\r\n var previousSortOrder = 0;\r\n for (i = 0; i < fields.length; i++) {\r\n if (fields[i].SortOrder > previousSortOrder) {\r\n previousSortOrder = fields[i].SortOrder;\r\n }\r\n }\r\n return previousSortOrder + 1;\r\n },\r\n sortOrder: function (orderBy) {\r\n // TODO\r\n }\r\n }, \r\n Calls: {\r\n SaveField: function (Fields, successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/Form/SaveFormFields';\r\n Options.Data = Fields;\r\n Options.Success = function (data) { \r\n if (successFunction) {\r\n successFunction();\r\n }\r\n }\r\n Options.Error = function (data) {\r\n CHSI.SystemNotification.SetResponse('An error occurred and has been logged', 2);\r\n CHSI.Common.LogObject(data);\r\n }\r\n\r\n CHSI.Common.Ajax.Post(Options);\r\n },\r\n SaveFields: function (successFunction) { \r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/Form/SaveFormFields';\r\n Options.Data = CHSI.Claims.FormTypes.Fields.Cache.FieldsObject.Fields;\r\n Options.Success = function (data) {\r\n CHSI.Claims.FormTypes.Fields.Events.ProcessFieldCall(data); \r\n\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n }\r\n Options.Error = function (data) {\r\n CHSI.SystemNotification.SetResponse('An error occurred and has been logged', 2);\r\n CHSI.Common.LogObject(data);\r\n }\r\n\r\n CHSI.Common.Ajax.Post(Options); \r\n },\r\n GetFields: function (successFunction) {\r\n var Options = {},\r\n FormTypeID = CHSI.Claims.FormTypes.Information.Cache.FormTypeID == undefined ? null : CHSI.Claims.FormTypes.Information.Cache.FormTypeID,\r\n FormCategoryID = CHSI.Claims.FormTypes.Fields.Cache.FormCategoryID == undefined ? null : CHSI.Claims.FormTypes.Fields.Cache.FormCategoryID,\r\n FormFieldID = CHSI.Claims.FormTypes.Fields.Cache.FormFieldID == undefined ? null : CHSI.Claims.FormTypes.Fields.Cache.FormFieldID;\r\n\r\n Options.URL = '/api/ClaimSystem/Form/GetFormFields?FormTypeID=' + FormTypeID + '&FormFieldID=' + FormFieldID + '&FormCategoryID=' + FormCategoryID;\r\n Options.Success = function (data) {\r\n CHSI.Claims.FormTypes.Fields.Cache.FieldsArray = data;\r\n CHSI.Claims.FormTypes.Fields.Events.ProcessFieldCall();\r\n\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n }\r\n Options.Error = function () {\r\n CHSI.Common.Log('no data to return');\r\n }\r\n\r\n CHSI.Common.Ajax.Get(Options); \r\n },\r\n GetValidatorTypes: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/Common/ContentType/Get';\r\n Options.Data = null;\r\n Options.Success = function (data) {\r\n CHSI.Claims.FormTypes.Fields.Cache.ContentTypes = data;\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n }\r\n Options.Error = function (data) {\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n CHSI.Common.Log('no data to return');\r\n }\r\n\r\n CHSI.Common.Ajax.Get(Options); \r\n },\r\n GetCategories: function (successFunction) {\r\n var Options = {},\r\n FormTypeID = CHSI.Claims.FormTypes.Information.Cache.FormTypeID;\r\n \r\n Options.URL = '/api/ClaimSystem/Form/GetCategoriesByType?FormTypeID=' + FormTypeID;\r\n Options.Success = function (data) {\r\n CHSI.Claims.FormTypes.Categories.Cache.CategoriesList = data;\r\n \r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n }\r\n Options.Error = function () {\r\n CHSI.Common.LogObject(e); \r\n }\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n deleteField: function (formFieldID, successFunction) {\r\n var URL = '/api/ClaimSystem/Form/DeleteFieldByFieldID?formFieldID=' + formFieldID + '&formTypeID=' + CHSI.Claims.FormTypes.Information.Cache.FormTypeID;\r\n $.post(URL).done(function (data) {\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n });\r\n }\r\n }\r\n}","CHSI.Claims.FormTypes.FormPicker = {\r\n Init: function (qs) {\r\n var FormSelect_Template = $('#Template_FormTypeSelect').html();\r\n this.Templates.FormSelect = Handlebars.compile(FormSelect_Template);\r\n\r\n this.Cache.ClientID = qs.ClientID;\r\n\r\n if (this.Cache.ClientID) {\r\n CHSI.Claims.FormTypes.FormPicker.Calls.GetClientInfo(this.Cache.ClientID, function (data) {\r\n var ClientInfoObject = CHSI.Claims.FormTypes.FormPicker.Cache.ClientInfoObject;\r\n\r\n ClientInfoObject = data;\r\n CHSI.Claims.FormTypes.FormPicker.Cache.ClientID = data.ClientID;\r\n CHSI.Claims.FormTypes.FormPicker.Cache.GroupID = data.GroupID;\r\n\r\n $('#jxClientInfo').text(ClientInfoObject.ClientName);\r\n\r\n CHSI.Claims.FormTypes.FormPicker.Calls.GetFormTypes(ClientInfoObject.ClientID, function () {\r\n if (CHSI.Claims.FormTypes.FormPicker.Cache.FormTypesObject.length == 1) {\r\n if (CHSI.Claims.FormTypes.FormPicker.Cache.FormTypesObject[0].FormTypeID) {\r\n CHSI.Claims.FormTypes.FormPicker.Cache.FormPath = '/Claims/Modals/ClaimIntakeForm.aspx?claimincidentid=0&formtypeid=' + CHSI.Claims.FormTypes.FormPicker.Cache.FormTypesObject[0].FormTypeID + '&clientid=' + CHSI.Claims.FormTypes.FormPicker.Cache.ClientID;\r\n } else {\r\n CHSI.Claims.FormTypes.FormPicker.Cache.FormPath = '/Claims/' + CHSI.Claims.FormTypes.FormPicker.Cache.FormTypesObject[0].FormTypeName + '?&ClientID=' + CHSI.Claims.FormTypes.FormPicker.Cache.ClientID; \r\n }\r\n CHSI.Claims.FormTypes.FormPicker.Events.RedirectToForm(CHSI.Claims.FormTypes.FormPicker.Cache.FormPath);\r\n } else {\r\n CHSI.Claims.FormTypes.FormPicker.BindPresentationLayer();\r\n }\r\n });\r\n });\r\n } else {\r\n this.BindPresentationLayer();\r\n }\r\n\r\n this.Events.Global();\r\n },\r\n Templates: {},\r\n Cache: {},\r\n BindPresentationLayer: function () {\r\n $('#FormPickerContainer').html(CHSI.Claims.FormTypes.FormPicker.Templates.FormSelect({ FormTypesObject: CHSI.Claims.FormTypes.FormPicker.Cache.FormTypesObject }));\r\n\r\n CHSI.Claims.FormTypes.FormPicker.Events.ConfigureFields();\r\n },\r\n Events: {\r\n Global: function () {\r\n $('#FormPickerContainer').on('change', '#jxFormTypeselector', function () {\r\n CHSI.Claims.FormTypes.FormPicker.Events.GetCachedValues();\r\n\r\n });\r\n\r\n $('#jxClientSelect').on('click', function () {\r\n var thisWindow = window.name;\r\n var ReturnFunctionString = ((thisWindow == '') ? 'ChangeClient' : 'parent.window.frames.' + thisWindow + '.ChangeClient');\r\n parent.ShowAdvancedSearchForm('ChooseClient', null, ReturnFunctionString);\r\n });\r\n\r\n $('#FormPickerContainer').on('click', '#jxCancel', function () {\r\n closeThis(true);\r\n });\r\n\r\n $('#FormPickerContainer').on('click', '#jxGotoForm', function () { \r\n CHSI.Claims.FormTypes.FormPicker.Events.GetCachedValues();\r\n CHSI.Claims.FormTypes.FormPicker.Events.RedirectToForm(CHSI.Claims.FormTypes.FormPicker.Cache.FormPath);\r\n\r\n });\r\n },\r\n RedirectToForm: function (FormPath) {\r\n console.log(CHSI.Claims.FormTypes.FormPicker.Cache.FormPath);\r\n parent.ShowPopup(\"NewForm\", FormPath, \"New Form\", 1010, 770, parent.RefreshGrid, true);\r\n closeThis(false);\r\n\r\n },\r\n\r\n ConfigureFields: function () {\r\n $('#jxFormTypeselector').hide();\r\n $('#jxClientSelect').hide();\r\n $('#QuoteInfoContainer').hide();\r\n\r\n if (CHSI.Claims.FormTypes.FormPicker.Cache.ClientID) {\r\n $('#jxClientSelect').show();\r\n $('#jxFormTypeselector').show();\r\n } else {\r\n $('#jxClientSelect').show();\r\n }\r\n },\r\n\r\n GetCachedValues: function () {\r\n var FormTypeName = $('#jxFormTypeselector').find(':selected').data('formtypename'),\r\n FormTypeID = $('#jxFormTypeselector').find(':selected').data('formtypeid'),\r\n Name = $('#jxFormTypeselector').find(':selected').data('name'),\r\n ReportForm = $('#jxFormTypeselector').find(':selected').data('reportform');\r\n\r\n CHSI.Claims.FormTypes.FormPicker.Cache.Name = Name;\r\n CHSI.Claims.FormTypes.FormPicker.Cache.ReportForm = ReportForm;\r\n CHSI.Claims.FormTypes.FormPicker.Cache.FormTypeID = FormTypeID;\r\n CHSI.Claims.FormTypes.FormPicker.Cache.FormTypeName = FormTypeName;\r\n if (FormTypeID) {\r\n CHSI.Claims.FormTypes.FormPicker.Cache.FormPath = '/Claims/Modals/ClaimIntakeForm.aspx?claimincidentid=0&formtypeid=' + FormTypeID + '&clientid=' + CHSI.Claims.FormTypes.FormPicker.Cache.ClientID + '&formtypename=' + FormTypeName;\r\n } else {\r\n CHSI.Claims.FormTypes.FormPicker.Cache.FormPath = '/Claims/' + FormTypeName + '?ClientID=' + CHSI.Claims.FormTypes.FormPicker.Cache.ClientID;\r\n }\r\n }\r\n },\r\n Calls: {\r\n GetFormTypes: function (ClientID, successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/Form/GetFormTypesByClientID?ClientID=' + ClientID;\r\n Options.Data = null;\r\n Options.Success = function (data) {\r\n CHSI.Claims.FormTypes.FormPicker.Cache.FormTypesObject = data;\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n }\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n GetClientInfo: function (ClientID, successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/CRM/Clients/GetClient?ClientID=' + ClientID;\r\n Options.Data = null;\r\n Options.Success = function (data) {\r\n CHSI.Claims.FormTypes.FormPicker.Cache.ClientInfoObject = data;\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n };\r\n CHSI.Common.Ajax.Get(Options);\r\n }\r\n }\r\n}\r\n","CHSI.Claims.FormTypes.FormEditor = {\r\n Init: function (QSObject) {\r\n CHSI.Claims.FormTypes.Information.Init(QSObject, function () {\r\n CHSI.Claims.FormTypes.Categories.Init(function () {\r\n CHSI.Claims.FormTypes.Fields.Init();\r\n });\r\n });\r\n\r\n this.Events.Global();\r\n },\r\n Templates: {\r\n\r\n },\r\n Cache: {\r\n ScheduleObject: null,\r\n CombinedScheduleObject: null,\r\n FieldObject: null\r\n },\r\n Events: {\r\n Global: function () { \r\n $('.actionProcess').hide();\r\n $('#FormTypeEditTabs').tabs({\r\n heightStyle: 'fill'\r\n }).on(\"tabsshow\", function (event, ui) {\r\n switch (ui.index) {\r\n case 0:\r\n break;\r\n case 1:\r\n CHSI.Claims.FormTypes.Categories.Events.updateFieldsCategoriesList();\r\n break;\r\n case 2: \r\n break;\r\n default: 0\r\n } \r\n });\r\n\r\n $('.jxSaveAll').on('click', function () { \r\n CHSI.Claims.FormTypes.FormEditor.Events.SaveAll();\r\n });\r\n\r\n $('.jxOK').on('click', function () {\r\n $(this).attr('disabled', true);\r\n CHSI.SystemNotification.SetResponse('Saving...', 3);\r\n CHSI.Claims.FormTypes.Information.Events.SaveInformation(function () {\r\n CHSI.Claims.FormTypes.Categories.Events.SaveCategories(function () { \r\n CHSI.SystemNotification.SetResponse('Saved');\r\n closeThis(true); \r\n });\r\n });\r\n });\r\n },\r\n SaveAll: function () {\r\n $('.jxSaveAll').attr('disabled', true);\r\n $('.actionProcess').show();\r\n CHSI.SystemNotification.SetResponse('Saving...', 3);\r\n CHSI.Claims.FormTypes.Information.Events.SaveInformation(function () {\r\n CHSI.Claims.FormTypes.Categories.Events.SaveCategories(function () {\r\n CHSI.Claims.FormTypes.Fields.Events.SaveFields(function () {\r\n CHSI.Claims.FormTypes.Categories.Calls.GetCategories(function () {\r\n CHSI.Claims.FormTypes.Fields.Calls.GetFields(function () {\r\n CHSI.Claims.FormTypes.Categories.Binds.Categories();\r\n CHSI.Claims.FormTypes.Fields.Binds.Fields();\r\n CHSI.Claims.FormTypes.Categories.Events.updateCategorySortOrder();\r\n $('.jxSaveAll').attr('disabled', false);\r\n $('.actionProcess').hide();\r\n CHSI.SystemNotification.SetResponse('Saved');\r\n });\r\n\r\n });\r\n });\r\n });\r\n });\r\n\r\n }\r\n }\r\n}\r\n\r\nHandlebars.registerHelper('backgroundcolor', function (value, options) {\r\n var backgroundcolor = 'arow';\r\n if (value % 2 == 0) {\r\n backgroundcolor = 'prow';\r\n }\r\n return backgroundcolor;\r\n});\r\n\r\nHandlebars.registerHelper('plusOneIndex', function (options) {\r\n return (1 + options.data.index);\r\n});\r\n\r\nHandlebars.registerHelper('breakword', function (property) {\r\n return property.replace(/ /g, \"
\");\r\n});\r\n\r\nHandlebars.registerHelper('StickyCategory', function (FieldCategoryName, CategoryName, options) {\r\n\r\n if (FieldCategoryName == CategoryName) {\r\n\r\n return options.fn(this);\r\n }\r\n return options.inverse(this);\r\n});","CHSI.Claims.FormTypes.Information = {\r\n Init: function (QSObject, successFunction) {\r\n var Template_Information = $('#Template_Information').html();\r\n this.Templates.Information = Handlebars.compile(Template_Information); \r\n var Template_Notifications = $('#Template_Notifications').html();\r\n this.Templates.Notifications = Handlebars.compile(Template_Notifications);\r\n\r\n this.Cache.FormTypeID = QSObject.FormTypeID; \r\n\r\n if (this.Cache.FormTypeID) {\r\n this.Calls.GetFormInformation(function () {\r\n CHSI.Claims.FormTypes.Information.Calls.GetGroups(function () {\r\n CHSI.Claims.FormTypes.Information.Binds.Information();\r\n }); \r\n });\r\n } else {\r\n this.Calls.GetGroups(function () {\r\n CHSI.Claims.FormTypes.Information.Binds.Information();\r\n }); \r\n }\r\n\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n\r\n this.Events.Global();\r\n },\r\n Templates: {\r\n\r\n },\r\n Cache: { \r\n InformationObject: {\r\n ActiveGroups: {},\r\n AssociatedGroups: [],\r\n Instructions: null\r\n }, \r\n FormTypeID: null,\r\n Instructions: null\r\n },\r\n Binds:{\r\n Information: function () { \r\n $('#InformationContainer').html(CHSI.Claims.FormTypes.Information.Templates.Information({ FormInformation: CHSI.Claims.FormTypes.Information.Cache.InformationObject }));\r\n $('#jxNotificationsContainer').html(CHSI.Claims.FormTypes.Information.Templates.Notifications({ FormInformation: CHSI.Claims.FormTypes.Information.Cache.InformationObject }));\r\n restart = true;\r\n sorttable.init();\r\n\r\n if (CHSI.Claims.FormTypes.Information.Cache.InformationObject.Instructions != null) {\r\n $('#jxInstructions').text('Click to update Start Instructions');\r\n }\r\n\r\n if (CHSI.Claims.FormTypes.Information.Cache.InformationObject.FinishInstructions != null) {\r\n $('#jxFinishInstructions').text('Click to update Finish Instructions');\r\n }\r\n }, \r\n Notifications: function () {\r\n $('#jxNotificationsContainer').html(CHSI.Claims.FormTypes.Information.Templates.Notifications({ FormInformation: CHSI.Claims.FormTypes.Information.Cache.InformationObject }));\r\n restart = true;\r\n sorttable.init();\r\n }\r\n },\r\n Events: { \r\n Global: function () {\r\n $('#InformationContainer').on('change', '.AssociatedGroup', function () {\r\n var GroupName = $(this).data('groupname');\r\n\r\n if ($(this).is(':checked')) {\r\n CHSI.Claims.FormTypes.Information.Events.GetAssociatedGroups(GroupName, true);\r\n } else {\r\n CHSI.Claims.FormTypes.Information.Events.GetAssociatedGroups(GroupName, false);\r\n } \r\n });\r\n\r\n $('#InformationContainer').on('click', '#jxAddNotification', function () {\r\n var NotificationID = $('#jxNotificationList').val();\r\n Data = {};\r\n Data.FormTypeID = CHSI.Claims.FormTypes.Information.Cache.FormTypeID;\r\n Data.NotificationID = NotificationID;\r\n Data.Status = 'active';\r\n CHSI.Claims.FormTypes.Information.Calls.SaveFormTypeNotification(Data, CHSI.Claims.FormTypes.Information.Events.RefreshNotifications)\r\n });\r\n\r\n $('#InformationContainer').on('click', '#jxSubmitIncident', function () { \r\n CHSI.Claims.FormTypes.Information.Calls.SubmitIncident(5);\r\n });\r\n\r\n $('#InformationContainer').on('click', '.jxDeleteNotification', function () {\r\n var NotificationID = $(this).data('notificationid');\r\n Data = {};\r\n Data.FormTypeID = CHSI.Claims.FormTypes.Information.Cache.FormTypeID;\r\n Data.NotificationID = NotificationID;\r\n Data.Status = 'deleted';\r\n CHSI.Claims.FormTypes.Information.Calls.SaveFormTypeNotification(Data, CHSI.Claims.FormTypes.Information.Events.RefreshNotifications)\r\n });\r\n\r\n $('#InformationContainer').on('click', '.jxEditNotification', function () {\r\n var NotificationID = $(this).data('notificationid');\r\n CHSI.Claims.FormTypes.Information.Events.ShowNotificationEditor(NotificationID); \r\n });\r\n\r\n $('#InformationContainer').on('click', '#jxAddNewNotification', function () {\r\n if (CHSI.Claims.FormTypes.Information.Cache.FormTypeID == null) {\r\n CHSI.SystemNotification.SetResponse('Save to continue', 4);\r\n return false;\r\n }\r\n CHSI.Claims.FormTypes.Information.Events.ShowNotificationEditor();\r\n });\r\n\r\n $('#InformationContainer').on('click', '#jxInstructions', function () {\r\n if (CHSI.Claims.FormTypes.Information.Cache.FormTypeID == null) { \r\n alert('Save to continue');\r\n return false;\r\n } \r\n CHSI.Claims.FormTypes.Information.Events.ShowInstructionsEditor('start');\r\n });\r\n\r\n $('#InformationContainer').on('click', '#jxFinishInstructions', function () {\r\n if (CHSI.Claims.FormTypes.Information.Cache.FormTypeID == null) { \r\n alert('Save to continue');\r\n return false;\r\n }\r\n CHSI.Claims.FormTypes.Information.Events.ShowInstructionsEditor('finish');\r\n });\r\n }, \r\n RefreshNotifications: function ()\r\n {\r\n CHSI.Claims.FormTypes.Information.Calls.GetNotificationsNotInFormType(function () { CHSI.Claims.FormTypes.Information.Calls.GetNotificationsByFormTypeID(CHSI.Claims.FormTypes.Information.Binds.Notifications) })\r\n },\r\n RefreshInformation: function () {\r\n CHSI.Claims.FormTypes.Information.Calls.GetFormInformation(function () {\r\n CHSI.Claims.FormTypes.Information.Calls.GetGroups(function () {\r\n CHSI.Claims.FormTypes.Information.Binds.Information();\r\n });\r\n });\r\n },\r\n ShowNotificationEditor: function (NotificationID) {\r\n var URL = null;\r\n if (NotificationID) {\r\n URL = '/Claims/Modals/NotificationEditor.aspx?NotificationID=' + NotificationID;\r\n }else {\r\n URL = '/Claims/Modals/NotificationEditor.aspx';\r\n }\r\n\r\n parent.ShowPopup('NotificationEditor', URL, 'Notification Editor', 800, 650, CHSI.Claims.FormTypes.Information.Events.RefreshNotifications, true);\r\n },\r\n SaveInformation: function (successFunction) {\r\n if (!CHSI.Claims.FormTypes.Information.Events.ValidateSummaryFields()) {\r\n alert('Please select a value in Summary Field.');\r\n return false;\r\n }\r\n CHSI.Claims.FormTypes.Information.Calls.SaveInformation(successFunction);\r\n },\r\n ValidateSummaryFields: function () {\r\n var InformationObject = CHSI.Claims.FormTypes.Information.Cache.InformationObject,\r\n isValid = false,\r\n SummaryFieldHasValue = false;\r\n\r\n if (InformationObject.SummaryFields) {\r\n SummaryFieldHasValue = (InformationObject.SummaryFields.length == 0) ? false : true;\r\n }\r\n\r\n if (SummaryFieldHasValue) {\r\n if ($('#jxSummaryField').val()) {\r\n isValid = true;\r\n } else {\r\n isValid = false;\r\n }\r\n } else {\r\n isValid = true;\r\n }\r\n return isValid;\r\n },\r\n PersistFormToCache: function () {\r\n var InformationObject = {}\r\n\r\n InformationObject.FormTypeID = CHSI.Claims.FormTypes.Information.Cache.FormTypeID;\r\n InformationObject.FormTypeName = $('#jxFormType').val();\r\n InformationObject.Name = $('#jxName').val();\r\n InformationObject.Description = $('#jxDescription').val();\r\n InformationObject.Instructions = CHSI.Claims.FormTypes.Information.Cache.InformationObject.Instructions\r\n InformationObject.Status = $('#jxStatus').val();\r\n InformationObject.ReportForm = $('#jxReportForm').val();\r\n InformationObject.DaysToStale = $('#jxDaysToStale').val();\r\n InformationObject.AssociatedGroups = CHSI.Claims.FormTypes.Information.Cache.InformationObject.AssociatedGroups;\r\n\r\n CHSI.Claims.FormTypes.Information.Cache.InformationObject = InformationObject;\r\n return InformationObject;\r\n },\r\n GetAssociatedGroups: function (groupName, isActive) {\r\n var AssociatedGroups = CHSI.Claims.FormTypes.Information.Cache.InformationObject.AssociatedGroups;\r\n\r\n if (isActive) {\r\n AssociatedGroups.push(groupName);\r\n } else {\r\n for (Index = 0; Index < AssociatedGroups.length; Index++) {\r\n if (AssociatedGroups[Index] == groupName) {\r\n AssociatedGroups.splice(Index, 1);\r\n }\r\n }\r\n }\r\n\r\n CHSI.Claims.FormTypes.Information.Cache.InformationObject.AssociatedGroups = AssociatedGroups;\r\n },\r\n ShowInstructionsEditor: function (instructionType) {\r\n var URL;\r\n if (instructionType == 'start') {\r\n URL = '/Claims/Modals/InstructionsEditor.aspx?FormTypeID=' + CHSI.Claims.FormTypes.Information.Cache.FormTypeID + '&instructiontype=start';\r\n } else {\r\n URL = '/Claims/Modals/InstructionsEditor.aspx?FormTypeID=' + CHSI.Claims.FormTypes.Information.Cache.FormTypeID + '&instructiontype=finish';\r\n }\r\n\r\n\r\n parent.ShowPopup('InstructionsEditor', URL, 'Instructions Editor', 850, 490, CHSI.Claims.FormTypes.Information.Events.RefreshInformation, true);\r\n },\r\n },\r\n Calls: {\r\n GetFormInformation: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/Form/GetFormType?FormTypeID=' + CHSI.Claims.FormTypes.Information.Cache.FormTypeID;\r\n Options.Success = function (data) {\r\n CHSI.Claims.FormTypes.Information.Cache.InformationObject = data\r\n CHSI.Claims.FormTypes.Information.Cache.InformationObject.AssociatedGroups = data.AssociatedGroups;\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n }; \r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n GetGroups: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/CRM/Group/GetActiveGroups';\r\n Options.Data = null;\r\n Options.Success = function (data) {\r\n CHSI.Claims.FormTypes.Information.Cache.InformationObject.ActiveGroups = data;\r\n\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n }\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n SaveInformation: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/Form/SaveFormType';\r\n Options.Data = CHSI.Claims.FormTypes.Information.Events.PersistFormToCache();\r\n Options.Success = function (data) { \r\n CHSI.Claims.FormTypes.Information.Cache.FormTypeID = data;\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n };\r\n Options.Error = function (data) {\r\n CHSI.SystemNotification.SetResponse('An error occurred and has been logged', 2);\r\n CHSI.Common.LogObject(data);\r\n }\r\n\r\n CHSI.Common.Ajax.Post(Options);\r\n },\r\n GetNotificationsNotInFormType: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/Form/GetNotificationsNotInFormType?FormTypeID='+CHSI.Claims.FormTypes.Information.Cache.FormTypeID;\r\n Options.Data = null;\r\n Options.Success = function (data) {\r\n CHSI.Claims.FormTypes.Information.Cache.InformationObject.AllNotifications = data;\r\n\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n }\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n GetNotificationsByFormTypeID: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/Form/GetNotificationsByFormTypeID?FormTypeID=' + CHSI.Claims.FormTypes.Information.Cache.FormTypeID;;\r\n Options.Data = null;\r\n Options.Success = function (data) {\r\n CHSI.Claims.FormTypes.Information.Cache.InformationObject.Notifications = data;\r\n\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n }\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n SaveFormTypeNotification: function (Data, successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/Form/SaveFormTypeNotification?FormTypeID='+Data.FormTypeID+'&NotificationID='+Data.NotificationID+'&Status='+Data.Status;\r\n Options.Data = Data;\r\n Options.Success = function (data) { \r\n if (successFunction) {\r\n successFunction();\r\n }\r\n };\r\n\r\n CHSI.Common.Ajax.Post(Options);\r\n },\r\n SubmitIncident: function (IncidentID) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/ClaimIncidentReport/SubmitIncident?IncidentID=' + IncidentID;\r\n Options.Data = IncidentID;\r\n Options.Success = function (data) {\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n };\r\n\r\n CHSI.Common.Ajax.Post(Options);\r\n } \r\n }\r\n}","CHSI.Claims.SuperClaimsSearch = {\r\n Init: function (QS, isPortal, AutoSelectClient, SupportChildClaims) {\r\n \r\n this.Templates.DisplaySuperClaims = CHSITemplates.Template_SuperClaimsResults;\r\n this.Templates.SuperClaimsFilters = CHSITemplates.SuperClaimsFilter;\r\n\r\n this.Cache.isPortal = isPortal;\r\n\r\n if (SupportChildClaims == null) {\r\n this.Cache.SupportChildClaims = false\r\n this.Cache.IncludeChildren = false;\r\n } else {\r\n this.Cache.SupportChildClaims = SupportChildClaims;\r\n }\r\n\r\n if (AutoSelectClient == null) {\r\n this.Cache.AutoSelectClient = false;\r\n } else {\r\n this.Cache.AutoSelectClient = AutoSelectClient;\r\n }\r\n\r\n if (isPortal) {\r\n this.Cache.ClientID = ClientID;\r\n } else {\r\n this.Cache.ClientID = QS.ClientID || QS.clientid;\r\n }\r\n\r\n this.Calls.GetClaimTypes(function () {\r\n CHSI.Claims.SuperClaimsSearch.Calls.GetCoverages(function () {\r\n CHSI.Claims.SuperClaimsSearch.Calls.GetPolicyPeriods(function () {\r\n CHSI.Claims.SuperClaimsSearch.BindFilter();\r\n });\r\n });\r\n });\r\n\r\n this.Events.Global();\r\n },\r\n Settings: {\r\n ShowInactive: false\r\n , Index: null\r\n },\r\n Cache: {\r\n isPortal: false,\r\n FilterObject: {\r\n ClaimTypes: {\r\n Key: 0,\r\n Value: ''\r\n },\r\n Coverages: {},\r\n Paramters: {\r\n IncludeChildren: false,\r\n Status: null,\r\n Description: null,\r\n Filterdescription: null,\r\n ClaimType: null,\r\n LineName: null,\r\n Claimant: null,\r\n FilterClaimant: null,\r\n PolicyPeriod: null,\r\n ClientID: null,\r\n DateOfIncidentFilter: null,\r\n DateOfIncidentValue1: null,\r\n DateOfIncidentValue2: null\r\n },\r\n },\r\n ClientID: 0,\r\n AutoSelectClient: false\r\n },\r\n Templates: {\r\n\r\n },\r\n BindPresentationLayer: function () {\r\n $('#jxSuperClaims').html(this.Templates.DisplaySuperClaims(this.SuperClaimsObject));\r\n },\r\n BindFilter: function () {\r\n $('#SuperClaimsFilterContainer').html(this.Templates.SuperClaimsFilters({ FilterObject: CHSI.Claims.SuperClaimsSearch.Cache.FilterObject }));\r\n $('#jxQuerying').hide();\r\n\r\n $('.jxDate').datepicker({\r\n showOn: \"both\",\r\n buttonImage: \"/images/icons/cal.gif\",\r\n buttonImageOnly: true\r\n });\r\n\r\n if (!CHSI.Claims.SuperClaimsSearch.Cache.SupportChildClaims) {\r\n $('#jxSupportChildClaims').hide();\r\n }\r\n\r\n if (CHSI.Claims.SuperClaimsSearch.Cache.isPortal || CHSI.Claims.SuperClaimsSearch.Cache.AutoSelectClient) {\r\n $('#jxSelectClient').hide();\r\n $('#jxCancelClient').hide();\r\n\r\n CHSI.Claims.SuperClaimsSearch.Calls.GetClientInformation(CHSI.Claims.SuperClaimsSearch.Cache.ClientID, function (data) {\r\n $('#jxClientName').text(data.ClientName);\r\n $('#jxClientIDValue').val(CHSI.Claims.SuperClaimsSearch.Cache.ClientID);\r\n });\r\n }\r\n },\r\n Events: {\r\n Global: function () {\r\n $('#SuperClaimsFilterContainer').on('click', '#jxSearch', function () {\r\n $('#jxQuerying').show();\r\n var Values = CHSI.Claims.SuperClaimsSearch.GetFilterValues();\r\n CHSI.Claims.SuperClaimsSearch.Calls.PostFilterResult(Values, function (data) {\r\n for (i = 0; i < data.length; i++) {\r\n data[i].Index = i;\r\n }\r\n CHSI.Claims.SuperClaimsSearch.SuperClaimsObject = { SuperClaims: data };\r\n CHSI.Claims.SuperClaimsSearch.BindPresentationLayer();\r\n restart = true;\r\n sorttable.init();\r\n\r\n $('#jxQuerying').hide();\r\n });\r\n });\r\n\r\n $('#SuperClaimsFilterContainer').on('change', '#jxDateOfIncidentFilter', function () {\r\n var SelectedValue = $(this).val();\r\n if (SelectedValue == 'equals' || SelectedValue == 'before' || SelectedValue == 'after') {\r\n $('#jxDateOfIncidentContainer2').hide();\r\n } else {\r\n $('#jxDateOfIncidentContainer2').show();\r\n }\r\n });\r\n }\r\n },\r\n GetFilterValues: function () {\r\n var Values = CHSI.Claims.SuperClaimsSearch.Cache.FilterObject.Paramters;\r\n\r\n if ($('#jxShowChildClaims').is(':checked')) {\r\n Values.IncludeChildren = true;\r\n } else {\r\n Values.IncludeChildren = false;\r\n }\r\n\r\n Values.Status = $('#jxStatusValue1').val();\r\n if (Values.Status == '') {\r\n Values.Status = null;\r\n }\r\n Values.Description = $('#jxDescriptionValue2').val();\r\n if (Values.Description == '') {\r\n Values.Description = null;\r\n Values.Filterdescription = null;\r\n } else {\r\n Values.Filterdescription = $('#jxDescriptionValue1').val();\r\n }\r\n\r\n if (Values.Filterdescription == '' || Values.Filterdescription == null) {\r\n Values.Filterdescription = null;\r\n Values.Description = null;\r\n }\r\n\r\n Values.ClaimType = $('#jxClaimTypeValue1').val();\r\n if (Values.ClaimType == '') {\r\n Values.ClaimType = null;\r\n }\r\n Values.LineName = $('#jxCoverageValue1').val();\r\n if (Values.LineName == '') {\r\n Values.LineName = null;\r\n }\r\n\r\n Values.Claimant = $('#jxClaimantValue2').val();\r\n Values.FilterClaimant = $('#jxClaimantValue1').val();\r\n\r\n if (Values.FilterClaimant == '' || Values.FilterClaimant == null) {\r\n Values.Claimant = null;\r\n Values.FilterClaimant = null;\r\n } else {\r\n Values.FilterClaimant = $('#jxClaimantValue1').val();\r\n Values.Claimant = $('#jxClaimantValue2').val();\r\n }\r\n Values.PolicyPeriod = $(\"#jxPolicyPeriodValue1\").val();\r\n if (Values.PolicyPeriod == '') {\r\n Values.PolicyPeriod = null;\r\n }\r\n Values.ClientID = $('#jxClientIDValue').val();\r\n if (Values.ClientID == '') {\r\n Values.ClientID = null;\r\n }\r\n Values.DateOfIncidentFilter = $('#jxDateOfIncidentFilter').val();\r\n if (Values.DateOfIncidentFilter == '') {\r\n Values.DateOfIncidentFilter = null;\r\n Values.DateOfIncidentValue1 = null;\r\n Values.DateOfIncidentValue2 = null;\r\n } else {\r\n Values.DateOfIncidentValue1 = $('#jxDateOfIncidentValue1').val();\r\n Values.DateOfIncidentValue2 = $('#jxDateOfIncidentValue2').val();\r\n }\r\n return Values;\r\n },\r\n Calls: {\r\n GetClientInformation: function (ClientID, successFunction) {\r\n CHSI.CRM.GetClient(ClientID, successFunction);\r\n },\r\n //GetSuperClaims: function (ShowInactive) {\r\n // var AjaxURL = \"/api/ClaimSystem/SuperClaim/GetSuperClaims\";\r\n // $.ajax({\r\n // type: \"POST\",\r\n // url: AjaxURL,\r\n // cache: false,\r\n // contentType: \"application/json; charset=utf-8\",\r\n // dataType: \"json\",\r\n // success: function (e) {\r\n // for (i = 0; i < e.length; i++) {\r\n // e[i].Index = i;\r\n // }\r\n // CHSI.Claims.SuperClaimsSearch.SuperClaimsObject = { SuperClaims: e };\r\n\r\n // CHSI.Claims.SuperClaimsSearch.BindPresentationLayer();\r\n // restart = true;\r\n // sorttable.init();\r\n // },\r\n // error: function (e) {\r\n // CHSI.Common.LogObject(e);\r\n // }\r\n // });\r\n //},\r\n GetClaimTypes: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/Claim/GetAllClaimTypes';\r\n Options.Success = function (data) {\r\n for (i = 0; i < data.length; i++) {\r\n CHSI.Claims.SuperClaimsSearch.Cache.FilterObject.ClaimTypes[i] = { Key: i, Value: data[i] };\r\n }\r\n\r\n delete CHSI.Claims.SuperClaimsSearch.Cache.FilterObject.ClaimTypes.Key;\r\n delete CHSI.Claims.SuperClaimsSearch.Cache.FilterObject.ClaimTypes.Value;\r\n\r\n successFunction();\r\n }\r\n CHSI.Common.Ajax.Get(Options)\r\n },\r\n GetCoverages: function (successFunction) {\r\n\r\n if (!CHSI.Claims.SuperClaimsSearch.Cache.ClientID) {\r\n CHSI.Claims.SuperClaimsSearch.Cache.ClientID = 0;\r\n }\r\n\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/Claim/GetCoverageTypes?ClientID=' + CHSI.Claims.SuperClaimsSearch.Cache.ClientID;\r\n Options.Success = function (data) {\r\n var i = -1;\r\n for (var value in data) {\r\n i++;\r\n CHSI.Claims.SuperClaimsSearch.Cache.FilterObject.Coverages[i] = { Key: value, Value: value };\r\n }\r\n successFunction();\r\n }\r\n CHSI.Common.Ajax.Get(Options)\r\n },\r\n GetPolicyPeriods: function (successFunction) {\r\n var AjaxURL = '/api/UW/UW/GetPolicyYears';\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n cache: false,\r\n success: function (e) {\r\n CHSI.Claims.SuperClaimsSearch.Cache.FilterObject.PolicyPeriod = e;\r\n if (successFunction) {\r\n successFunction(e);\r\n }\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log(e);\r\n }\r\n });\r\n },\r\n PostFilterResult: function (FilterParameters, successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/ClaimSystem/SuperClaim/GetSuperClaims';\r\n Options.Data = FilterParameters;\r\n Options.Success = function (data) {\r\n successFunction(data);\r\n }\r\n Options.Error = function (data) {\r\n $('#jxQuerying').hide();\r\n }\r\n CHSI.Common.Ajax.Post(Options)\r\n }\r\n }\r\n};\r\n","CHSI.CRM.Alerts = {\r\n Init: function () {\r\n CHSI.Common.Log('Alert System Initiation');\r\n }\r\n}","CHSI.CRM.ClientTypes = {\r\n\r\n Models: {},\r\n Controllers: {},\r\n\r\n Init: function () {\r\n\r\n CHSI.CRM.ClientTypes.Calls.GetClientTypes();\r\n CHSI.CRM.ClientTypes.Events.Global();\r\n\r\n },\r\n\r\n Cache: {\r\n GridObject: {}\r\n , ActiveOnly: false\r\n\r\n },\r\n\r\n Events: {\r\n\r\n Global: function () {\r\n //$('#jxClientTypeFilter').on('click', '.jxEdit', function () {\r\n $('#jxClientTypes').on('click', '.jxEdit', function () {\r\n var Button = $(this);\r\n var ClientTypeName = Button.data('clienttype');\r\n var ShowEditClientTypeURL = '/utilities/clienttypeedit.aspx?ClientTypeName=' + ClientTypeName;\r\n ShowPopup(\"EditClientType\", ShowEditClientTypeURL, \"Edit Company Type\", 340, 185, CHSI.CRM.ClientTypes.Calls.GetClientTypes, true);\r\n\r\n });\r\n //Not sure where this should point\r\n $('#jxClientTypes').on('click', '.jxDelete', function () {\r\n var Button = $(this);\r\n var ClientTypeName = Button.data('clienttype');\r\n if (confirm(\"Are you sure you want to delete this Company Type?\") == true) {\r\n CHSI.CRM.ClientTypes.Calls.DeleteClientType(ClientTypeName);\r\n\r\n }\r\n \r\n });\r\n\r\n $('#jxAddNew').on('click', function () {\r\n var ShowEditClientTypeURL = '/utilities/clienttypeedit.aspx';\r\n ShowPopup(\"EditClientTypeURL\", ShowEditClientTypeURL, \"Add Company Type\", 340, 185, CHSI.CRM.ClientTypes.Calls.GetClientTypes, true);\r\n });\r\n\r\n\r\n }\r\n },\r\n\r\n BindPresentationLayer: function () {\r\n\r\n $('#jxClientTypes').html('
');\r\n\r\n var DataSet = null;\r\n\r\n if (CHSI.CRM.ClientTypes.Cache.GridObject) {\r\n DataSet = CHSI.CRM.ClientTypes.Cache.GridObject.Values;\r\n var Columns = CHSI.CRM.ClientTypes.Cache.GridObject.Columns;\r\n }\r\n\r\n var columnDefs = [{\r\n bSortable: false,\r\n width:'10%',\r\n aTargets: [5] \r\n }];\r\n var ClientColumnDefinition = {};\r\n ClientColumnDefinition.targets = 5;\r\n ClientColumnDefinition.render = function (data, type, row) {\r\n return \"[Edit] [Delete]\";\r\n }\r\n columnDefs.push(ClientColumnDefinition);\r\n\r\n if (DataSet != null) {\r\n CHSI.CRM.ClientTypes.Cache.GridTable = $('#jxClientTypesGrid').DataTable({\r\n data: DataSet,\r\n columns: Columns,\r\n lengthMenu: [[25], [25]],\r\n columnDefs: columnDefs,\r\n stateSave: true\r\n })\r\n } else {\r\n var HTML = [];\r\n $('#jxClientTypesGrid').html('No results found.')\r\n }\r\n\r\n $('#jxLoading').hide();\r\n },\r\n\r\n Calls: {\r\n\r\n GetClientTypes: function () {\r\n var Options = {};\r\n Options.URL = \"/api/CRM/ClientType/GetClientTypes\";\r\n Options.Success = function (e) { CHSI.CRM.ClientTypes.Cache.GridObject = e; CHSI.CRM.ClientTypes.BindPresentationLayer(); };\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n\r\n DeleteClientType: function (clienttype) {\r\n var Options = {};\r\n Options.URL = \"/api/CRM/ClientType/DeleteClientType?clienttype=\" + clienttype;\r\n Options.Success = function (e) {\r\n CHSI.CRM.ClientTypes.Calls.GetClientTypes();\r\n };\r\n CHSI.Common.Ajax.Delete(Options);\r\n\r\n }\r\n }\r\n\r\n}\r\n","CHSI.CRM.Departments = {\r\n Cache: {\r\n Departments: null\r\n }\r\n ,Get: function (successFunction)\r\n {\r\n var Options = {};\r\n Options.URL = '/api/CRM/Department/Get' ;\r\n Options.Success = function (e) {\r\n CHSI.CRM.Departments.Cache.Departments = e;\r\n if (successFunction)\r\n {\r\n successFunction(e);\r\n }\r\n };\r\n CHSI.Common.Ajax.Get(Options);\r\n\r\n }\r\n\r\n}","\r\n\r\nCHSI.CRM.Group = {\r\n Get: function (SuccessFunction) {\r\n CHSI.Common.Ajax.Get({ URL: '/api/CRM/Group/GetGroup', Success: SuccessFunction });\r\n } \r\n}","\r\n\r\nCHSI.CRM.RecordType = {\r\n Get: function (SuccessFunction)\r\n {\r\n CHSI.Common.Ajax.Get({URL: '/api/CRM/RecordType/Get', Success: SuccessFunction});\r\n }\r\n}","\r\nCHSI.Forms.Actions = new Object();\r\n\r\nCHSI.Forms.Actions.ProcessActions = function (Actions) {\r\n /* we need to adjust the actionformulae to be jQuery specific*/\r\n jQuery(Actions).each(function (index, behavior) {\r\n behavior.ActionFormula = behavior.ActionFormula.replace(/(\\{.*\\}) in \\((.*)\\)/, '\"$2\".indexOf(\\'\"\\' + $1 + \\'\"\\') >= 0');\r\n behavior.ActionFormula = behavior.ActionFormula.replace(CHSI.Forms.ResultTagRegEx, \"CHSI.Forms.Results.GetValueByTag('$1', \" + CHSI.Forms.PrimaryFormID + \")\");\r\n behavior.ActionFormula = behavior.ActionFormula.replace(/ = /g, ' == ');\r\n behavior.ActionFormula = behavior.ActionFormula.replace(/ and /g, ' && ');\r\n behavior.ActionFormula = behavior.ActionFormula.replace(/ or /g, ' || ');\r\n if (CHSI.Forms.DebugMode) {\r\n CHSI.Common.Log('Creating Action Formula - ' + behavior.ActionFormula);\r\n }\r\n });\r\n return Actions;\r\n}\r\n\r\nCHSI.Forms.Actions.ExecuteFormActions = function () {\r\n\r\n jQuery(CHSI.Forms.ActionCollection).each(function (index, behavior) {\r\n if (behavior.ActionFormula != '') {\r\n var Result = eval(behavior.ActionFormula);\r\n if (CHSI.Forms.DebugMode) {\r\n CHSI.Common.Log(behavior.ActionFormula + ' result = ' + Result + ', target tag: ' + behavior.TargetTag);\r\n }\r\n var NewValue = null;\r\n\r\n NewValue = (Result == true) ? behavior.TargetTrueValue : behavior.TargetFalseValue;\r\n\r\n if (behavior.TargetObjectType == 14) {\r\n CHSI.Forms.Elements.ChangeElementProperty(behavior.TargetTag, behavior.PropertyName, NewValue, behavior.TargetObjectID);\r\n }\r\n else if (behavior.TargetObjectType == 15) {\r\n CHSI.Forms.Elements.ChangeSectionProperty(behavior.TargetTag, behavior.PropertyName, NewValue, behavior.TargetObjectID);\r\n }\r\n\r\n\r\n }\r\n else if (behavior.ComparisonType == 9) {\r\n var ColumnID = behavior.ParentObjectID;\r\n var Sum = 0;\r\n if (CHSI.Forms.Forms['f' + CHSI.Forms.PrimaryFormID].isDisabled == false)\r\n {\r\n jQuery(CHSI.Forms.ResultSetValues).each(function (resultindex, resultitem) {\r\n if (resultitem.StructureColumnID == ColumnID) {\r\n var Value = 0;\r\n if (resultitem.DataTypeID == 5) {\r\n Value = resultitem.IntegerValue;\r\n }\r\n else if (resultitem.DataTypeID == 3) {\r\n Value = resultitem.DecimalValue;\r\n }\r\n Sum = CHSI.Math.SafeAdd(Sum, Value); /* Force value to be a number */\r\n }\r\n });\r\n if (CHSI.Forms.DebugMode) {\r\n CHSI.Common.Log('change element ' + '#jxElement_' + behavior.TargetObjectID + '_0');\r\n }\r\n var TargetElement = CHSI.DOM.Get('#jxElement_' + behavior.TargetObjectID + '_0');\r\n if (TargetElement.length > 0) {\r\n if (TargetElement.val() != Sum) {\r\n /*Retrieve any object for formatting purposes*/\r\n var objResultValue = null;\r\n jQuery(CHSI.Forms.Forms['f' + CHSI.Forms.PrimaryFormID].Elements).each(function (index, FormElement) {\r\n if (FormElement.ElementID == behavior.TargetObjectID ) {\r\n objResultValue = FormElement;\r\n return false;\r\n }\r\n });\r\n \r\n\r\n if (objResultValue)\r\n {\r\n Sum = CHSI.Forms.Elements.formatValue(objResultValue, Sum);\r\n }\r\n \r\n\r\n\r\n TargetElement.val(Sum);\r\n\r\n\r\n TargetElement.trigger('change');\r\n }\r\n }\r\n\r\n }\r\n \r\n\r\n }\r\n\r\n });\r\n jQuery('#FooterNav').html(CHSI.Forms.Navigation.GetFooterNavHTML());\r\n};\r\n","\r\nCHSI.Forms.APIs = new Object();\r\nCHSI.Forms.APIs.version = 2;\r\nCHSI.Forms.APIs.Repositories = [];\r\nCHSI.Forms.APIs.QuoteDetailsAPI = function () {\r\n return CHSI.Forms.APIs.Repositories[CHSI.Forms.APIs.version].QuoteDetailsAPI;\r\n}\r\nCHSI.Forms.APIs.ChangeResultsAPI = function () {\r\n return CHSI.Forms.APIs.Repositories[CHSI.Forms.APIs.version].ChangeResultsAPI;\r\n}\r\nCHSI.Forms.APIs.SaveSectionAPI = function () {\r\n return CHSI.Forms.APIs.Repositories[CHSI.Forms.APIs.version].SaveSectionAPI;\r\n}\r\nCHSI.Forms.APIs.SubmitQuestionnaireAPI = function () {\r\n return CHSI.Forms.APIs.Repositories[CHSI.Forms.APIs.version].submitQuestionnaireAPI;\r\n}\r\nCHSI.Forms.APIs.Repositories[1] = {\r\n QuoteDetailsAPI: '/api/Que/Result/QuoteDetails',\r\n ChangeResultsAPI: '/api/Que/Result/GetChangeResults',\r\n SaveSectionAPI: '/api/Que/Form/SaveSection',\r\n submitQuestionnaireAPI: \"/webservice/formfunctions.asmx/SubmitSavedValues\"\r\n}\r\nCHSI.Forms.APIs.Repositories[2] = {\r\n QuoteDetailsAPI: '/api/Que/FormInstance/GetFormInstanceByIndex',\r\n ChangeResultsAPI: '/api/Que/FormInstance/GetChangeResults',\r\n SaveSectionAPI: '/api/Que/FormInstance/SaveSection',\r\n submitQuestionnaireAPI: '/api/Que/FormInstance/SubmitQuestionnaire'\r\n}\r\n\r\n","\r\nCHSI.Forms.Elements = {\r\n CachedResults: new Object()\r\n , GetElementByID: function (ElementID, formID) {\r\n var FoundElement;\r\n var Elements = CHSI.Forms.Forms['f' + formID].Elements;\r\n for (var ElementIndex = 0, ElementsLength = Elements.length; ElementIndex < ElementsLength; ++ElementIndex) {\r\n var Element = Elements[ElementIndex];\r\n if (Element.ElementID == ElementID) {\r\n FoundElement = Element;\r\n break;\r\n }\r\n }\r\n return FoundElement;\r\n }\r\n , ChangeElementEditability: function (elementID, valueIndex,formID, isDisabled)\r\n {\r\n var Element = CHSI.Forms.Elements.GetElementByID(elementID, formID);\r\n if (Element) {\r\n CHSI.Common.Log('element Info: ' + Element.ElementType)\r\n switch (Element.ElementType) {\r\n case 8: /*select list*/\r\n case 3:/*textbox*/\r\n var TextBox = $('#jxElement_' + elementID + '_' + valueIndex);\r\n if (TextBox.length == 1) {\r\n if (isDisabled)\r\n {\r\n TextBox.attr(\"disabled\", \"disabled\");\r\n }\r\n else\r\n {\r\n TextBox.removeAttr(\"disabled\");\r\n }\r\n \r\n }\r\n break;\r\n case 10: /*vertical radio*/\r\n case 4: /*radio*/\r\n case 11: /*vertical checkbox*/\r\n case 5: /*checkbox list*/\r\n var Items = $('input[name=jxElement_' + elementID + '_' + valueIndex + ']');\r\n if (isDisabled) {\r\n Items.attr(\"disabled\", \"disabled\");\r\n }\r\n else {\r\n Items.removeAttr(\"disabled\");\r\n }\r\n break;\r\n\r\n default:\r\n\r\n }\r\n }\r\n }\r\n , UpdateElementValue: function (elementID, valueIndex, formID, newValue) {\r\n\r\n var Element = CHSI.Forms.Elements.GetElementByID(elementID, formID);\r\n if (Element) {\r\n CHSI.Common.Log('element Info: ' + Element.ElementType)\r\n switch (Element.ElementType) {\r\n case 8: /*select list*/\r\n case 3:/*textbox*/\r\n this.UpdateElementTextboxValue(Element, valueIndex, formID, newValue);\r\n break;\r\n case 10: /*vertical radio*/\r\n case 4: /*radio*/\r\n case 11: /*vertical checkbox*/\r\n case 5: /*checkbox list*/\r\n this.UpdateElementGroupValue(elementID, valueIndex, formID, newValue);\r\n break;\r\n \r\n default:\r\n\r\n }\r\n }\r\n }\r\n , UpdateElementGroupValue: function (elementID, valueIndex, formID, newValue) {\r\n if (newValue == null)\r\n {\r\n newValue = '';\r\n }\r\n var StringValues = newValue.split('||');\r\n var Items = $('input[name=jxElement_' + elementID + '_' + valueIndex + ']');\r\n Items.removeAttr('checked');\r\n for (StringIndex = 0; StringIndex < StringValues.length; StringIndex++)\r\n {\r\n $(Items).each(function (Index, Item) {\r\n var CurrentValue = $(Item);\r\n if (CurrentValue.val() == StringValues[StringIndex])\r\n {\r\n \r\n CurrentValue.attr('checked', 'checked');\r\n return false;\r\n }\r\n });\r\n }\r\n\r\n }\r\n , UpdateElementTextboxValue: function (Element, valueIndex, formID, newValue) {\r\n var TextBox = $('#jxElement_' + Element.ElementID + '_' + valueIndex);\r\n \r\n if (TextBox.length == 1) {\r\n \r\n\r\n if (TextBox.data('rawvalue') != newValue) {\r\n\r\n TextBox.data('rawvalue', newValue);\r\n TextBox.focus();\r\n TextBox.val(CHSI.Forms.Elements.formatValue(Element, newValue));\r\n TextBox.blur();\r\n var Format = TextBox.data('format');\r\n\r\n if (Format) {\r\n var FormattedValue = String.__Format(Format, +TextBox.val());\r\n TextBox.data('rawvalue', +TextBox.val());\r\n TextBox.val(FormattedValue);\r\n \r\n }\r\n }\r\n \r\n }\r\n }\r\n , GetNoChangeCheckboxHTML: function (formElement, valueIndex, formID, isDisabled) {\r\n var CheckboxHTML = '';\r\n if ((CHSI.Forms.Settings.ShowNoChangeCheckbox || CHSI.Forms.Elements.isNoChangeCheckboxVisible(formElement, valueIndex)) && (formElement.DataStructure != null)) {\r\n \r\n var NoChangeResultValue = CHSI.Forms.Results.GetResultSetValue(formElement.DataStructure.ColumnID, valueIndex);\r\n var isCheckedValue = '';\r\n if (NoChangeResultValue) {\r\n if (NoChangeResultValue.ChangeType == 1) {\r\n isCheckedValue = 'checked';\r\n }\r\n }\r\n var JSONObject = { ColumnID: formElement.DataStructure.ColumnID, ValueIndex: valueIndex, FormID: formID, ElementID: formElement.ElementID }\r\n var DisabledHTML = '';\r\n if (isDisabled == true)\r\n {\r\n DisabledHTML = ' disabled=\"disabled\" ';\r\n }\r\n CheckboxHTML = '';\r\n \r\n }\r\n return CheckboxHTML;\r\n }\r\n , GetHelpForElement: function (elementID, FormID) {\r\n var HelpCollection = CHSI.Forms.Forms['f' + FormID].HelpIDs; \r\n var HelpID;\r\n for (var HelpIndex = 0, HelpCount = HelpCollection.length; HelpIndex < HelpCount; HelpIndex++) { \r\n if (HelpCollection[HelpIndex].ElementID == elementID) {\r\n HelpID = HelpCollection[HelpIndex].HelpID;\r\n break;\r\n }\r\n }\r\n return HelpID;\r\n }\r\n , GetHelpIconHTML: function (elementID, formID)\r\n {\r\n var HTML;\r\n var Help = this.GetHelpForElement(elementID, formID);\r\n if (Help == null) {\r\n HTML = '';\r\n }\r\n else {\r\n HTML = '\"Help';\r\n }\r\n\r\n return HTML;\r\n }\r\n , ShowElementMessage: function (ElementID, Message, Color, ValueIndex)\r\n {\r\n\r\n var elem = jQuery('#jxElementContainer_' + ElementID +'_' + ValueIndex);\r\n corners = ['left center', 'right center'],\r\n flipIt = elem.parents('span.right').length > 0;\r\n var MessageID = 'jxElementMessage_' + ElementID + '_' + ValueIndex;\r\n var Error = Message;\r\n var TagClass = 'ui-tooltip-red';\r\n\r\n if (Color == 'orange') {\r\n TagClass = 'ui-tooltip-orange';\r\n }\r\n if (elem.qtip) {\r\n elem.qtip('destroy');\r\n };\r\n $('#' + MessageID).remove();\r\n \r\n \r\n \r\n $('
' + Message + '
').insertAfter(elem);\r\n \r\n //elem.qtip({\r\n // overwrite: false,\r\n // content: Message,\r\n // position: {\r\n // my: corners[flipIt ? 0 : 1],\r\n // at: corners[flipIt ? 1 : 0],\r\n // viewport: jQuery(window),\r\n // container: jQuery('#FormRegion2')\r\n // },\r\n\r\n // show: {\r\n // event: false,\r\n // ready: true\r\n // },\r\n // hide: false,\r\n // style: {\r\n // classes: TagClass + ' elementvalidation'\r\n // }\r\n\r\n //});\r\n\r\n //elem.qtip('option', 'content.text', Error);\r\n\r\n \r\n }\r\n , isNoChangeCheckboxVisible: function (FormElement, ValueIndex) {\r\n var ShowNoChange = false;\r\n if (CHSI.Forms.Forms['f' + CHSI.Forms.PrimaryFormID].PreviousResultSetID != null)\r\n {\r\n for (MetaAttributeIndex = 0; MetaAttributeIndex < FormElement.MetaAttributes.length; MetaAttributeIndex++) {\r\n var Attribute = FormElement.MetaAttributes[MetaAttributeIndex];\r\n if (Attribute.MetaType == 28 && Attribute.MetaValue == 1) {\r\n ShowNoChange = true;\r\n break;\r\n }\r\n }\r\n\r\n }\r\n\r\n return ShowNoChange;\r\n }\r\n , GetElementByColumn: function (formID, columnID)\r\n {\r\n var FoundElement;\r\n var Elements = CHSI.Forms.Forms['f' + formID].Elements;\r\n for (var ElementIndex = 0, ElementsLength = Elements.length; ElementIndex < ElementsLength; ++ElementIndex) {\r\n var Element = Elements[ElementIndex];\r\n if (Element.DataStructureColumnID == columnID) {\r\n FoundElement = Element;\r\n break;\r\n }\r\n }\r\n return FoundElement;\r\n }\r\n \r\n};\r\n\r\n\r\nCHSI.Forms.Elements.ReturnRenderedElement = function (FormElement, ValueIndex, FormID, ShowRequiredLabel) {\r\n if (ShowRequiredLabel == null) {\r\n ShowRequiredLabel = true;\r\n }\r\n var HTML = [];\r\n if (ValueIndex == null) {\r\n ValueIndex = 0;\r\n }\r\n var ContainerID = 'jxContainer_' + ((FormElement.ElementID == 0) ? FormElement.ParentID : FormElement.ElementID);\r\n var CurrentValue = CHSI.Forms.Result;\r\n if (CHSI.Forms.DebugMode) {\r\n CHSI.Common.Log('Getting element for ' + FormID);\r\n }\r\n if (FormElement.BlockType == 1) {\r\n HTML.push('');\r\n }\r\n if (FormElement.BlockType == 2) {\r\n HTML.push('');\r\n\r\n }\r\n\r\n if (FormElement.BlockType == 4) {\r\n HTML.push('');\r\n }\r\n if (FormElement.BlockType == 5) {\r\n HTML.push('
');\r\n }\r\n HTML.push('
');\r\n HTML.push(CHSI.Forms.Elements.GetElementHTML(FormElement, 0, FormID, true,true));\r\n \r\n\r\n if ((FormElement.BlockType == 1 || FormElement.BlockType == 2)) {\r\n\r\n var ParentFormElement = CHSI.Forms.Elements.GetElementByID(FormElement.ParentID, FormID);\r\n if (ParentFormElement != null) {\r\n if (ParentFormElement.ElementType == 3 || ParentFormElement.ElementType == 4 || ParentFormElement.ElementType == 5 || ParentFormElement.ElementType == 10 || ParentFormElement.ElementType == 11 || ParentFormElement.ElementType == 6 || ParentFormElement.ElementType == 8 || ParentFormElement.ElementType == 12)\r\n {\r\n var PriorValue = CHSI.Forms.Results.GetPriorResult(ParentFormElement.DataStructureColumnID, ValueIndex);\r\n if (CHSI.Forms.Forms['f' + CHSI.Forms.PrimaryFormID].PreviousResultSetID != null) {\r\n PriorValue = CHSI.Forms.Elements.formatValue(ParentFormElement, PriorValue);\r\n HTML.push('
Prior Value: ' + PriorValue + '
');\r\n }\r\n }\r\n \r\n }\r\n\r\n\r\n }\r\n HTML.push('
');\r\n\r\n\r\n\r\n return HTML.join('');\r\n}\r\n\r\nCHSI.Forms.Elements.MakeJoinedArrayReadable = function (elementvalue) {\r\n if (elementvalue.length >= 4) {\r\n if (elementvalue.indexOf('||') >= 0) {\r\n elementvalue = elementvalue.slice(2, elementvalue.length - 3).replace(/\\|\\|/g, \",\");\r\n }\r\n\r\n }\r\n else { }\r\n return elementvalue;\r\n}\r\n/* Replace the value with the current resultset*/\r\nCHSI.Forms.Elements.ReplaceElementValue = function (element, ValueIndex, FormID) {\r\n if (ValueIndex == null) {\r\n ValueIndex = 0;\r\n }\r\n if (element.DataStructure != null) {\r\n var RelatedValueItem = CHSI.Forms.Results.GetResultSetValue(element.DataStructure.ColumnID, ValueIndex);\r\n if (RelatedValueItem) {\r\n element.DataStructure.DefaultStringValue = RelatedValueItem.StringValue;\r\n element.DataStructure.DefaultDateValue = RelatedValueItem.DateValue;\r\n element.DataStructure.DefaultDecimalValue = RelatedValueItem.DecimalValue;\r\n element.DataStructure.DefaultBitValue = RelatedValueItem.BitValue;\r\n element.DataStructure.DefaultIntegerValue = RelatedValueItem.IntegerValue;\r\n }\r\n\r\n }\r\n\r\n}\r\n\r\n/* translate the meta contenttypes into css classes*/\r\nCHSI.Forms.Elements.GetElementCssClasses = function (element, FormID) {\r\n var result = [];\r\n var Column = null;\r\n if (element.DataStructureColumnID != 0) {\r\n jQuery(CHSI.Forms.DataStructure.Columns).each(function (index, DataColumn) {\r\n if (DataColumn.ColumnID == element.DataStructureColumnID) {\r\n Column = DataColumn;\r\n return false;\r\n }\r\n });\r\n }\r\n result.push(CHSI.Forms.Elements.GetCSSSafeString(element.Tag) + ' ');\r\n \r\n if (element.MetaAttributes) {\r\n \r\n for (var i = 0; i < element.MetaAttributes.length; i++) {\r\n if (element.MetaAttributes[i].MetaType == 5) {\r\n result.push(CHSI.Forms.ContentTypes[element.MetaAttributes[i].MetaValue].CssClass);\r\n }\r\n }\r\n }\r\n\r\n\r\n\r\n if (Column) {\r\n jQuery(Column.MetaAttributes).each(function (index, metaattribute) {\r\n if (metaattribute.MetaType == 5) {\r\n result.push(CHSI.Forms.ContentTypes[metaattribute.MetaValue].CssClass);\r\n }\r\n });\r\n }\r\n return result.join(' ');\r\n}\r\n\r\nCHSI.Forms.Elements.OnElementFocus = function ($this) {\r\n\r\n var elementcontrol = $($this);\r\n\r\n elementcontrol.val(elementcontrol.data('rawvalue'));\r\n\r\n};\r\n\r\n/* injecting various   to direct the browser to keep objects together when possible*/\r\nCHSI.Forms.Elements.GetElementHTML = function (object, ValueIndex, FormID, ParentElementID, ShowRequiredLabel, ShowHelp) {\r\n\r\n if (ShowRequiredLabel == null) {\r\n ShowRequiredLabel = true;\r\n }\r\n if (ShowHelp == null) {\r\n ShowHelp = true;\r\n }\r\n var HTML = [];\r\n var ContentValue = '';\r\n var Disabled = false;\r\n Disabled = object.isDisabled;\r\n var isNADisabled = false;\r\n if (CHSI.Forms.Forms['f' + CHSI.Forms.PrimaryFormID].isDisabled == true)\r\n {\r\n Disabled = CHSI.Forms.Forms['f' + CHSI.Forms.PrimaryFormID].isDisabled;\r\n isNADisabled = Disabled;\r\n }\r\n \r\n\r\n if (ValueIndex == null) {\r\n ValueIndex = 0;\r\n }\r\n var TargetDataType = null;\r\n if (object.DataStructure == null) {\r\n Disabled = true;\r\n isNADisabled = true;\r\n }\r\n else {\r\n TargetDataType = object.DataStructure.DataTypeID;\r\n }\r\n \r\n if (object.DataStructure != null) {\r\n var ResultValue = CHSI.Forms.Results.GetResultSetValue(object.DataStructure.ColumnID, ValueIndex);\r\n\r\n if (ResultValue) {\r\n if (ResultValue.ChangeType == 1)\r\n {\r\n Disabled = true;\r\n }\r\n }\r\n }\r\n var NAChecked = '';\r\n \r\n var NAResult = 'false';\r\n\r\n\r\n if (object.AllowNA == true) {\r\n if (object.DataStructure != null) {\r\n NAResult = CHSI.Forms.Results.GetMetaAttributeValue(object.DataStructure.ColumnID, ValueIndex, 19);\r\n if (NAResult == null) {\r\n NAResult = false;\r\n }\r\n if (NAResult.toString().toLowerCase() == 'true') {\r\n NAChecked = 'checked';\r\n Disabled = true;\r\n }\r\n if (CHSI.Forms.DebugMode) {\r\n CHSI.Common.Log('Checking Debug for ElementID: ' + object.ElementID + ' ColumnID: ' + object.DataStructure.ColumnID + ', ValueIndex: ' + ValueIndex + ', metaattribute 19: value: ' + NAResult + ' Label: ' + object.Tag);\r\n }\r\n\r\n }\r\n\r\n }\r\n\r\n if (CHSI.Forms.DebugMode) {\r\n CHSI.Common.Log('Build HTML for ' + ValueIndex + ' in formid: ' + FormID + ', disabled: ' + object.isDisabled + ', element columnid: ' + object.DataStructureColumnID + ', Value Index: ' + ValueIndex + ', AllowNA: ' + object.AllowNA + ', Disabled: ' + Disabled);\r\n }\r\n if (object.ElementType == 1 || object.ElementType == 2) {\r\n if (CHSI.Forms.Forms['f' + FormID].DesignTemplateID == 2) {\r\n\r\n if (object.DataStructure != null) {\r\n\r\n ContentValue = CHSI.Forms.Results.GetValue(object.DataStructure.ColumnID, ValueIndex, FormID);\r\n }\r\n\r\n HTML.push(ContentValue + ' ');\r\n }\r\n else {\r\n HTML.push(object.Label + ' ');\r\n }\r\n\r\n }\r\n\r\n if (object.ElementType == 3) {\r\n if (object.DataStructure != null) {\r\n if (CHSI.Forms.DebugMode) {\r\n CHSI.Common.Log('Getting Text Field Value for Form: ' + FormID + ', object ElementID: ' + object.ElementID + ', ColumnID: ' + object.DataStructure.ColumnID + ', ValueIndex: ' + ValueIndex + ', FormID: ' + FormID);\r\n }\r\n ContentValue = CHSI.Forms.Results.GetValue(object.DataStructure.ColumnID, ValueIndex, FormID);\r\n }\r\n ContentValue = CHSI.Forms.Elements.formatValue(object, ContentValue);\r\n\r\n var OpeningTag = ' ';\r\n var Formatting = '';\r\n\r\n jQuery(object.MetaAttributes).each(function (index, metaattribute) {\r\n \r\n // metatype 2 = formatting\r\n if (metaattribute.MetaType == 2) {\r\n \r\n if (ContentValue == '') {\r\n ContentValue = 0;\r\n }\r\n\r\n Formatting = 'data-format=\"' + metaattribute.MetaValue + '\" data-rawvalue=\"' + ContentValue + '\" onfocus=\"CHSI.Forms.Elements.OnElementFocus(this);\" ';\r\n \r\n var FormattedContentValue = String.__Format(metaattribute.MetaValue, +ContentValue);\r\n \r\n ValueCode = ' value=\"' + CHSI.Common.ConditionalEscapeHTML(FormattedContentValue, object.AllowHTML) + '\" > ';\r\n }\r\n\r\n if (metaattribute.MetaType == 5) {\r\n if (metaattribute.MetaValue == '12') {\r\n OpeningTag = '', 'orange', 0)\r\n break;\r\n case 3: //error\r\n CHSI.Forms.Elements.ShowElementMessage(ValidatedResult.ElementID, ValidatedResult.Message, 'red',0)\r\n break;\r\n }\r\n }\r\n \r\n\r\n }\r\n , ProcessCalculatedResults: function (CalculatedResults) {\r\n for (var i = 0, ResultCount = CHSI.Forms.CalculatedResults.length; i < ResultCount; i++) {\r\n var CalculatedResult = CHSI.Forms.CalculatedResults[i];\r\n if (CalculatedResult.NewValue) {\r\n var ElementValue = CHSI.Forms.Results.GetValue(CalculatedResult.ColumnID, CalculatedResult.ValueIndex, CHSI.Forms.FormID);\r\n if (ElementValue == CalculatedResult.NewValue) {\r\n CHSI.Common.Log('Calculated Value for ' + CalculatedResult.ColumnID + ' the same as original answer, not saving');\r\n } else {\r\n\r\n var Element = CHSI.Forms.Elements.GetElementByColumn(CHSI.Forms.PrimaryFormID, CalculatedResult.ColumnID);\r\n if (Element) {\r\n CHSI.Forms.Elements.UpdateElementValue(Element.ElementID, CalculatedResult.ValueIndex, CHSI.Forms.PrimaryFormID, CalculatedResult.NewValue);\r\n $(\"#\" + Element.ElementID).trigger('blur', function (event) { event.stopPropagation() });\r\n }\r\n else {\r\n var UpdatedResultItem = CHSI.Forms.Results.SetValue(CalculatedResult.ColumnID, CalculatedResult.ValueIndex, CHSI.Forms.FormID, CalculatedResult.NewValue, null);\r\n this.SaveResultFieldValue(UpdatedResultItem, null);\r\n }\r\n }\r\n }\r\n }\r\n \r\n }\r\n , MarkFormAsChanged: function () {\r\n\r\n CHSI.Forms.Forms['f' + CHSI.Forms.PrimaryFormID].DataChanged = true;\r\n CHSI.Common.Log('Internal status: ' + CHSI.Forms.Forms['f' + CHSI.Forms.PrimaryFormID].IsInternal);\r\n if (CHSI.Forms.Forms['f' + CHSI.Forms.PrimaryFormID].IsInternal == false) {\r\n CHSI.Forms.Navigation.SetSectionStatus(CHSI.Forms.CurrentActiveSectionIndex, 'In Progress');\r\n jQuery('#jxStatusTitle').html('In Progress');\r\n }\r\n\r\n CHSI.Forms.Navigation.UpdateSectionHTML();\r\n }\r\n ,SaveExplanation: function(ElementID, ExplanationText)\r\n {\r\n var ajaxData = new Object();\r\n ajaxData.ElementID = ElementID;\r\n ajaxData.ResultSetID = CHSI.Forms.ResultID;\r\n ajaxData.ValidationResult = null;\r\n ajaxData.Message = null;\r\n ajaxData.Explanation = ExplanationText;\r\n var DataString = JSON.stringify(ajaxData);\r\n jQuery.ajax({\r\n type: \"POST\", url: \"/api/Que/ElementValidation/post\",\r\n data: DataString,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n\r\n }, error: jQuery_ErrorResult\r\n });\r\n\r\n \r\n }\r\n , SaveResultFieldValue: function (ResultSetValue, ParentElementID, executeSuccess) {\r\n if (executeSuccess == null)\r\n {\r\n executeSuccess = true;\r\n }\r\n\r\n var ajaxData = new Object();\r\n ajaxData.resultid = CHSI.Forms.ResultID;\r\n ajaxData.columnid = ResultSetValue.StructureColumnID;\r\n ajaxData.formid = CHSI.Forms.PrimaryFormID;\r\n ajaxData.valueindex = ResultSetValue.ValueIndex;\r\n ajaxData.StringValue = ResultSetValue.StringValue;\r\n ajaxData.DateValue = ResultSetValue.DateValue;\r\n ajaxData.IntegerValue = ResultSetValue.IntegerValue;\r\n ajaxData.DecimalValue = ResultSetValue.DecimalValue;\r\n ajaxData.BitValue = ResultSetValue.BitValue;\r\n ajaxData.passedvalidation = ResultSetValue.PassedValidation;\r\n ajaxData.ChangeType = ResultSetValue.ChangeType;\r\n ajaxData.WarningLevel = ResultSetValue.ValidationLevel;\r\n ajaxData.ParentElementID = ParentElementID;\r\n ajaxData.ClearReviewed = true;\r\n var DataString = JSON.stringify(ajaxData);\r\n if (CHSI.Forms.DebugMode) {\r\n CHSI.Common.Log('Calling SaveResultField: ' + DataString + ' and setting new cache for tag: ' + ResultSetValue.Tag);\r\n }\r\n jQuery.ajax({\r\n type: \"POST\", url: \"/webservice/formfunctions.asmx/SaveResultField\",\r\n data: DataString,\r\n async: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n /* replace the cached value*/\r\n if (executeSuccess)\r\n {\r\n CHSI.Forms.Results.GetChangedResults(CHSI.Forms.ResultID, CHSI.Forms.PrimaryFormID);\r\n CHSI.Forms.Actions.ExecuteFormActions();\r\n CHSI.Forms.Navigation.SetSectionStatus(CHSI.Forms.CurrentActiveSectionIndex, 'In Progress');\r\n }\r\n \r\n\r\n }, error: jQuery_ErrorResult\r\n });\r\n\r\n }\r\n , CreateMap: function ()\r\n {\r\n var ResultMap = {};\r\n for (var i = 0, valuecount = CHSI.Forms.ResultSetValues.length; i < valuecount; i++) { \r\n var ResultValue = CHSI.Forms.ResultSetValues[i];\r\n ResultMap[this.GetResultKey(ResultValue.StructureColumnID, ResultValue.ValueIndex)] = ResultValue;\r\n }; \r\n CHSI.Forms.Results.ResultMap = ResultMap;\r\n }\r\n , GetResultKey: function (ColumnID, ValueIndex)\r\n {\r\n return \"R\" + ColumnID + '_' + ValueIndex;\r\n }\r\n , GetResultSetValue: function (StructureColumnID, ValueIndex) {\r\n var Value = null;\r\n if (StructureColumnID != 0 && StructureColumnID != null)\r\n {\r\n if (!CHSI.Forms.Results.ResultMap)\r\n {\r\n CHSI.Forms.Results.CreateMap();\r\n }\r\n Value = CHSI.Forms.Results.ResultMap[this.GetResultKey(StructureColumnID, ValueIndex)];\r\n\r\n return Value;\r\n\r\n }\r\n \r\n }\r\n};\r\n\r\nCHSI.Forms.Results.GetDisabledStatus = function (columnID, ValueIndex, FormID) {\r\n var isDisabled = false;\r\n var ResultValue = CHSI.Forms.Results.GetResultSetValue(ColumnID, ValueIndex);\r\n if (ResultValue) {\r\n isDisabled = ResultValue.isDisabled;\r\n }\r\n\r\n return isDisabled;\r\n}\r\n\r\nCHSI.Forms.Results.DeleteElement = function (ElementID, ColumnID, ValueIndex, FormID) {\r\n if (CHSI.Forms.Forms['f' + CHSI.Forms.PrimaryFormID].isDisabled) {\r\n return false;\r\n }\r\n\r\n var ResultValue = CHSI.Forms.Results.GetResultSetValue(ColumnID, ValueIndex)\r\n if (ResultValue) {\r\n CHSI.Common.Log('deleting Result: ' + ColumnID + ', Value Index: ' + ValueIndex);\r\n ResultValue.Status = 'deleted';\r\n }\r\n\r\n CHSI.Forms.Forms['f' + CHSI.Forms.PrimaryFormID].DataChanged = true;\r\n CHSI.Forms.Navigation.SetSectionStatus(CHSI.Forms.CurrentActiveSectionIndex, 'In Progress');\r\n\r\n\r\n var ajaxData = new Object();\r\n ajaxData.resultid = CHSI.Forms.ResultID;\r\n ajaxData.columnid = ColumnID;\r\n ajaxData.formid = CHSI.Forms.PrimaryFormID;\r\n ajaxData.valueindex = ValueIndex;\r\n ajaxData.ParentElementID = ElementID;\r\n var DataString = JSON.stringify(ajaxData);\r\n if (CHSI.Forms.DebugMode) {\r\n CHSI.Common.Log('Calling DeleteResultField: ' + DataString + ' and setting new cache for elementid: ' + ElementID);\r\n }\r\n\r\n jQuery.ajax({\r\n type: \"POST\", url: \"/webservice/formfunctions.asmx/DeleteResultField\",\r\n data: DataString,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n /* replace the cached value*/\r\n CHSI.Forms.Actions.ExecuteFormActions();\r\n var UploadControl = CHSI.DOM.Get('#' + CHSI.Forms.Elements.GetElementID(ElementID, 'X'))\r\n CHSI.Common.Log('Updating Upload Control: ' + UploadControl.length + ' count');\r\n UploadControl.html(CHSI.Forms.Elements.GetFileUploadListing(ColumnID, FormID, ElementID));\r\n\r\n }, error: jQuery_ErrorResult\r\n });\r\n\r\n\r\n};\r\n\r\nCHSI.Forms.Results.SaveValue = function (sender, datastructurecolumnid, tag, ValueIndex, FormID, ParentElementID, TargetDataType) { \r\n \r\n \r\n \r\n if (CHSI.Forms.Forms['f' + CHSI.Forms.PrimaryFormID].isDisabled) {\r\n return false;\r\n }\r\n var cachedValue = CHSI.Forms.Results.GetValue(datastructurecolumnid, ValueIndex, FormID);\r\n var elementcontrol = jQuery(sender);\r\n console.log('SaveValue function being called for - Column: ' + datastructurecolumnid + ' for Tag: ' + tag + ' cached value' + cachedValue + ' compared to control value: ' + elementcontrol.val());\r\n \r\n var NewAnswer = '';\r\n \r\n\r\n if (elementcontrol.attr(\"type\") == 'checkbox') {\r\n /* to get the values we have to do it a bit differently*/\r\n console.log('checkbox code called');\r\n var CheckboxAnswer = [];\r\n var CheckedResults = jQuery('input:checkbox[name=' + elementcontrol.attr('name') + ']:checked');\r\n jQuery(CheckedResults).each(function (index, value) {\r\n CheckboxAnswer.push(value.value);\r\n });\r\n NewAnswer = '||' + CheckboxAnswer.join('||') + '||';\r\n }\r\n else {\r\n NewAnswer = elementcontrol.val();\r\n }\r\n \r\n \r\n\r\n if (NewAnswer != cachedValue) {\r\n\r\n if (elementcontrol.attr(\"type\") == 'text' && NewAnswer != '') {\r\n if (CHSI.Forms.DebugMode) {\r\n CHSI.Common.Log('Checking to remove validation');\r\n }\r\n NewAnswer = CHSI.Forms.Elements.RemoveFormatting(datastructurecolumnid, NewAnswer, FormID);\r\n CHSI.Common.Log('the new value is ' + NewAnswer);\r\n }\r\n \r\n var CurrentResult = null;\r\n\r\n if (elementcontrol.valid() == false) {\r\n return false;\r\n }\r\n var QueFormElement = CHSI.Forms.Elements.GetElementByID(ParentElementID, FormID);\r\n\r\n if (QueFormElement && QueFormElement.ElementType == 12)\r\n {\r\n \r\n if (elementcontrol.is(':checked'))\r\n {\r\n if (QueFormElement.DataStructure.DataTypeID == 1)\r\n { NewAnswer = 'Y';}\r\n else\r\n { NewAnswer = 'true'; }\r\n }\r\n else\r\n {\r\n if (QueFormElement.DataStructure.DataTypeID == 1)\r\n { NewAnswer = 'N'; }\r\n else\r\n { NewAnswer = 'false'; }\r\n }\r\n }\r\n\r\n CHSI.Forms.Results.MarkFormAsChanged();\r\n\r\n CHSI.Forms.Navigation.UpdateSectionHTML();\r\n \r\n CHSI.Forms.Results.SetValue(datastructurecolumnid, ValueIndex, FormID, NewAnswer, TargetDataType);\r\n\r\n var isvalidated = CHSI.Forms.Results.ValidateField(tag, elementcontrol.attr(\"id\"), ValueIndex, NewAnswer, FormID, TargetDataType);\r\n if (CHSI.Forms.DebugMode) {\r\n CHSI.Common.Log('Validation Level ' + isvalidated + ', saving ' + datastructurecolumnid + ':' + ValueIndex + ' with new value ' + NewAnswer);\r\n }\r\n CHSI.Forms.CurrentValidationObjects[tag] = isvalidated;\r\n var objResultValue = CHSI.Forms.Results.GetResultSetValue(datastructurecolumnid, ValueIndex);\r\n\r\n if (TargetDataType != 2) {\r\n objResultValue.DateValue = '';\r\n }\r\n\r\n objResultValue.passedvalidation = true;\r\n \r\n var ChangeType = 0;\r\n var jxNoChange = $('#jxNoChange' + datastructurecolumnid + '_' + ValueIndex);\r\n if (jxNoChange.length == 1) {\r\n if (jxNoChange.is(':checked')) {\r\n ChangeType = 1;\r\n }\r\n }\r\n objResultValue.ChangeType = ChangeType;\r\n objResultValue.WarningLevel = isvalidated;\r\n \r\n CHSI.Forms.Results.SaveResultFieldValue(objResultValue, ParentElementID);\r\n\r\n elementcontrol.addClass('dbSaved'); \r\n\r\n }\r\n\r\n var Format = elementcontrol.data('format');\r\n\r\n if (Format) {\r\n var FormattedValue = String.__Format(Format, +elementcontrol.val());\r\n elementcontrol.data('rawvalue', +elementcontrol.val());\r\n elementcontrol.val(FormattedValue);\r\n }\r\n\r\n CHSI.Forms.Grid.RecalculateTotals();\r\n \r\n}\r\n\r\n\r\n/*This gets the calculated columns*/\r\n\r\n\r\n\r\n\r\nCHSI.Forms.Results.GetValueByTag = function (tag, FormID) {\r\n\r\n var Result = [];\r\n\r\n\r\n var SenderTagValues = tag.replace(\"{\", \"\").replace(\"}\", \"\").split('.');\r\n if (SenderTagValues.length == 3) {\r\n SenderTagValues.push(0); /*Default to Value Index 0 */\r\n }\r\n \r\n /* Check for element on page */\r\n var ElementExists = false;\r\n var ElementName;\r\n jQuery(CHSI.Forms.Forms['f' + FormID].Elements).each(function (index, Element) {\r\n if (Element.Tag == tag && Element.DataStructure != null) {\r\n \r\n /* Element might be on page */\r\n ElementName = 'jxElement_' + Element.ElementID + '_' + SenderTagValues[3];\r\n \r\n var ElementLookup = null;\r\n if (Element.ElementType == 5 || Element.ELementType == 11) {\r\n ElementLookup = jQuery('input:checkbox[name=' + ElementName + ']');\r\n if (ElementLookup.length > 0) {\r\n ElementExists = true;\r\n ElementLookup = jQuery('input:checkbox[name=' + ElementName + ']:checked');\r\n var CheckboxAnswer = [];\r\n jQuery(ElementLookup).each(function (index, value) {\r\n CheckboxAnswer.push(value.value);\r\n });\r\n Result.push('||' + CheckboxAnswer.join('||') + '||');\r\n }\r\n\r\n }\r\n else if (Element.ElementType == 4 || Element.ElementType == 10) {\r\n ElementLookup = jQuery('input:radio[name=' + ElementName + ']');\r\n if (ElementLookup.length > 0) {\r\n ElementExists = true;\r\n ElementLookup = jQuery('input:radio[name=' + ElementName + ']:checked');\r\n var CheckboxAnswer = [];\r\n jQuery(ElementLookup).each(function (index, value) {\r\n CheckboxAnswer.push(value.value);\r\n });\r\n Result.push(CheckboxAnswer);\r\n }\r\n }\r\n else if (Element.ElementType == 8) {\r\n ElementLookup = jQuery('select[name=' + ElementName + ']');\r\n if (ElementLookup.length > 0) {\r\n ElementExists = true;\r\n Result.push(ElementLookup.val());\r\n }\r\n }\r\n else {\r\n ElementLookup = jQuery('input[name=' + ElementName + ']');\r\n if (ElementLookup.length > 0) {\r\n ElementExists = true;\r\n Result.push(ElementLookup.val());\r\n return Result.join('');\r\n }\r\n }\r\n return false;\r\n }\r\n });\r\n if (ElementExists == true) {\r\n return Result.join('');\r\n }\r\n\r\n\r\n for (var ResultIndex = 0, ResultSetLength = CHSI.Forms.ResultSetValues.length; ResultIndex < ResultSetLength; ++ResultIndex) {\r\n var ResultValue = CHSI.Forms.ResultSetValues[ResultIndex];\r\n var ResultTagValues = ResultValue.Tag.replace(\"{\", \"\").replace(\"}\", \"\").split('.');\r\n if (ResultTagValues.length == 3) {\r\n ResultTagValues.push(0);\r\n }\r\n if (ResultTagValues[1] == SenderTagValues[1] && ResultTagValues[2] == SenderTagValues[2] && ResultTagValues[3] == SenderTagValues[3]) {\r\n if (ResultValue)\r\n {\r\n Result.push(CHSI.Forms.Results.GetResultItemAsString(ResultValue));\r\n }\r\n \r\n break;\r\n }\r\n };\r\n\r\n\r\n return Result.join('');\r\n}\r\n\r\nCHSI.Forms.Results.GetResultItemAsString = function (ResultValue) {\r\n var Value = null;\r\n if (ResultValue.DataTypeID)\r\n {\r\n if (ResultValue.DataTypeID == 1) {\r\n Value = ResultValue.StringValue;\r\n }\r\n if (ResultValue.DataTypeID == 2) {\r\n Value = CHSI.Dates.GetFormattedJSONDate(ResultValue.DateValue);\r\n }\r\n if (ResultValue.DataTypeID == 3) {\r\n Value = ResultValue.DecimalValue;\r\n }\r\n if (ResultValue.DataTypeID == 4) {\r\n Value = ResultValue.BitValue;\r\n }\r\n if (ResultValue.DataTypeID == 5) {\r\n Value = ResultValue.IntegerValue;\r\n }\r\n\r\n }\r\n \r\n return Value;\r\n}\r\n\r\nCHSI.Forms.Results.SaveMetaAttribute = function (ParentID, Parent2ID, Parent3ID, ObjectTypeID, MetaType, MetaIndex, MetaValue, IncrementAttribute, ElementID) {\r\n if (CHSI.Forms.Forms['f' + CHSI.Forms.PrimaryFormID].isDisabled) {\r\n return false;\r\n }\r\n var ajaxData = new Object();\r\n ajaxData.ParentID = ParentID;\r\n ajaxData.Parent2ID = Parent2ID;\r\n ajaxData.Parent3ID = Parent3ID;\r\n ajaxData.ObjectTypeID = ObjectTypeID;\r\n ajaxData.MetaType = MetaType;\r\n ajaxData.MetaIndex = MetaIndex;\r\n ajaxData.MetaValue = MetaValue;\r\n ajaxData.IncrementAttribute = IncrementAttribute;\r\n ajaxData.ElementID = ElementID;\r\n ajaxData.ParentElementID = ElementID;\r\n var DataString = JSON.stringify(ajaxData);\r\n \r\n\r\n jQuery.ajax({\r\n type: \"POST\", url: \"/webservice/formfunctions.asmx/SaveMetaAttribute\",\r\n data: DataString,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n /* replace the cached value*/\r\n var isFound = false;\r\n var ResultItem = null;\r\n var objResultValue;\r\n objResultValue = CHSI.Forms.Results.GetResultSetValue(ParentID, Parent3ID);\r\n if (objResultValue) {\r\n\r\n jQuery(objResultValue.MetaAttributes).each(function (index, Attribute) {\r\n if (Attribute.MetaType == MetaType) {\r\n Attribute.MetaValue = MetaValue;\r\n isFound = true;\r\n return false;\r\n }\r\n });\r\n }\r\n\r\n if (isFound == false && ResultItem != null) {\r\n ResultItem.MetaAttributes.push(e.d);\r\n }\r\n\r\n\r\n }, error: jQuery_ErrorResult\r\n });\r\n\r\n}\r\n\r\nCHSI.Forms.Results.GetMetaAttributeValue = function (ColumnID, ValueIndex, MetaType) {\r\n var Result = null;\r\n var objResultValue;\r\n objResultValue = CHSI.Forms.Results.GetResultSetValue(ColumnID, ValueIndex);\r\n if (objResultValue) {\r\n jQuery(objResultValue.MetaAttributes).each(function (index, Attribute) {\r\n if (Attribute.MetaType == MetaType) {\r\n Result = Attribute.MetaValue;\r\n return false;\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n return Result;\r\n}\r\n\r\nCHSI.Forms.Results.GetValue = function (ColumnID, ValueIndex, FormID) {\r\n var Result = [];\r\n var objResultValue;\r\n objResultValue = CHSI.Forms.Results.GetResultSetValue(ColumnID, ValueIndex);\r\n if (objResultValue) {\r\n Result.push(CHSI.Forms.Results.GetResultItemAsString(objResultValue));\r\n }\r\n\r\n return Result.join('');\r\n}\r\n\r\nCHSI.Forms.Results.SetValue = function (ColumnID, ValueIndex, FormID, NewValue, TargetDataType) {\r\n var ResultValue;\r\n ResultValue = CHSI.Forms.Results.GetResultSetValue(ColumnID, ValueIndex);\r\n if (ResultValue) {\r\n if (TargetDataType == null) {\r\n TargetDataType = ResultValue.DataTypeID;\r\n }\r\n\r\n if (TargetDataType == 1) {\r\n ResultValue.StringValue = NewValue;\r\n }\r\n if (TargetDataType == 2) {\r\n ResultValue.DateValue = CHSI.Dates.GetFormattedJSONDate(NewValue);\r\n }\r\n if (TargetDataType == 3) {\r\n ResultValue.DecimalValue = NewValue;\r\n\r\n }\r\n if (TargetDataType == 4) {\r\n ResultValue.BitValue = NewValue;\r\n }\r\n if (TargetDataType == 5) {\r\n ResultValue.IntegerValue = NewValue;\r\n }\r\n }\r\n return ResultValue;\r\n}\r\n/* validation logic will be here soon */\r\nCHSI.Forms.Results.ValidateField = function (tag, controlid, answerindex, newanswer, formID, TargetDataType) {\r\n if (CHSI.Forms.Forms['f' + CHSI.Forms.PrimaryFormID].isDisabled) {\r\n return false;\r\n }\r\n var ValidationResult = 0; /*this would be a success if nothing else changes*/\r\n if (newanswer == '') {\r\n ValidationResult = 1; /* unanswered*/\r\n }\r\n\r\n else {\r\n \r\n\r\n }\r\n return ValidationResult;\r\n}\r\n/* The user wants to save whats in the fields*/\r\nCHSI.Forms.Results.SaveForm = function (CompleteForm, IgnoreWarnings, FormID, successFunction) {\r\n if (CHSI.Forms.Forms['f' + CHSI.Forms.PrimaryFormID].isDisabled) {\r\n return false;\r\n }\r\n \r\n var invalidForm = false;\r\n\r\n if (invalidForm == true) {\r\n alert('one or more errors exist on the page, please correct before continuing');\r\n return false;\r\n }\r\n var DataObject = new Object();\r\n DataObject.ResultID = CHSI.Forms.ResultID;\r\n DataObject.FormID = FormID;\r\n DataObject.IgnoreWarnings = IgnoreWarnings;\r\n \r\n var ajaxString = JSON.stringify(DataObject);\r\n \r\n jQuery.ajax({\r\n type: \"POST\", url: CHSI.Forms.APIs.SubmitQuestionnaireAPI(),\r\n data: ajaxString,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n /* replace the cached value*/\r\n var SaveObject = e;\r\n console.log(e);\r\n if (SaveObject.StatusChanged == true) {\r\n CHSI.Forms.Results.isFormSaved = true;\r\n if (CompleteForm) {\r\n alert('Your Form has been completed and successfully submitted. Changes to this Form may no longer be made.');\r\n \r\n $('#jxLoadingText').hide();\r\n $('#jxFormContainer').show();\r\n }\r\n else {\r\n alert('Your changes have been saved');\r\n $('#jxLoadingText').hide();\r\n $('#jxFormContainer').show();\r\n }\r\n\r\n }\r\n else {\r\n if (CompleteForm) {\r\n if (SaveObject.ValidationLevel <= 2) {\r\n if (confirm('The following Warnings occurred: \\n\\t' + SaveObject.WarningMessages.join('\\n\\t') + '\\nDo you want to submit the form anyway?')) {\r\n CHSI.Forms.Results.SaveForm(true, true, FormID);\r\n $('#jxLoadingText').hide();\r\n $('#jxFormContainer').show();\r\n }\r\n }\r\n else {\r\n CHSI.Common.Page.ReadOnly(false, false, false);\r\n $('.SubmitQuestionnaire').attr('readonly', false);\r\n $('.SubmitQuestionnaire').css('background-color', 'orange');\r\n $('#jxLoadingText').hide();\r\n $('#jxFormContainer').show();\r\n\r\n CHSI.Forms.Results.isFormSaved = false;\r\n \r\n var ResultMessage = '';\r\n if (SaveObject.WarningMessages.length > 0) {\r\n ResultMessage = ResultMessage + 'The following Warnings occurred:';\r\n }\r\n if (SaveObject.ErrorMessages.length > 0) {\r\n ResultMessage = ResultMessage + '
The questionnaire is unable to be submitted due to the issues below. Please address each and then re-submit.

';\r\n }\r\n var DialogWindow = jQuery('#jxFormMessageWindow');\r\n var DialogMessage = jQuery('#jxFormMessage', DialogWindow);\r\n var jxFormDialog = jQuery('#jxFormDialog', DialogWindow);\r\n\r\n var DialogButtons;\r\n if (SaveObject.ValidationLevel <= 2) {\r\n DialogButtons = '';\r\n }\r\n else {\r\n DialogButtons = '';\r\n }\r\n jxFormDialog.html(DialogButtons);\r\n DialogMessage.html(ResultMessage);\r\n\r\n DialogWindow.css('left', -5000);\r\n DialogWindow.css('top', -5000);\r\n DialogWindow.show();\r\n DialogWindow.position({ at: \"center center\", collision: \"flip flip\", of: jQuery('#' + CHSI.Forms.FormContainerID) });\r\n }\r\n }\r\n }\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n }, error: function () {\r\n jQuery_ErrorResult \r\n $('#jxLoadingText').hide();\r\n $('#jxFormContainer').show();\r\n } \r\n });\r\n\r\n };\r\n\r\nCHSI.Forms.Results.SaveSection = function (FormID, SectionID, Visibility, ResultID, Status, IgnoreWarnings, newSectionIndex) {\r\n if (CHSI.Forms.Forms['f' + CHSI.Forms.PrimaryFormID].isDisabled) {\r\n return false;\r\n }\r\n if (IgnoreWarnings == null) {\r\n IgnoreWarnings = false;\r\n }\r\n if (newSectionIndex == null) {\r\n newSectionIndex = -1;\r\n }\r\n\r\n\r\n var ajaxData = new Object();\r\n ajaxData.FormID = FormID;\r\n ajaxData.SectionID = SectionID;\r\n ajaxData.CurrentVisibility = Visibility;\r\n ajaxData.ResultID = ResultID * 1;\r\n ajaxData.Status = Status;\r\n ajaxData.IgnoreWarnings = IgnoreWarnings;\r\n var ajaxString = JSON.stringify(ajaxData);\r\n\r\n jQuery.ajax({\r\n /*\r\n Old API /api/Que/Form/SaveSection\r\n New API /api/Que/FormInstance/SaveSection\r\n */\r\n type: \"POST\", url: CHSI.Forms.APIs.SaveSectionAPI(),\r\n data: ajaxString,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n /* replace the cached value*/\r\n\r\n var objCurrentSection = CHSI.Forms.Forms['f' + FormID].Sections[CHSI.Forms.Navigation.GetSectionIndexbyIndex(CHSI.Forms.CurrentActiveSectionIndex)];\r\n\r\n\r\n var SaveObject = e;\r\n\r\n if (SaveObject.StatusChanged == true) {\r\n if (Status != null) {\r\n objCurrentSection.Status = Status;\r\n jQuery('#jxFormMessageWindow').hide();\r\n jQuery('#jxStatusTitle').html('In Progress');\r\n CHSI.Forms.Forms['f' + CHSI.Forms.PrimaryFormID].DataChanged = false;\r\n \r\n }\r\n\r\n CHSI.Forms.Navigation.UpdateSectionHTML();\r\n\r\n if (newSectionIndex != -1) {\r\n CHSI.Forms.Navigation.ChangeActiveSection(newSectionIndex, FormID);\r\n }\r\n }\r\n else {\r\n\r\n var ResultMessage = '';\r\n if (SaveObject.WarningMessages.length > 0) {\r\n ResultMessage = ResultMessage + 'The following Warnings occurred:';\r\n }\r\n if (SaveObject.ErrorMessages.length > 0) {\r\n ResultMessage = ResultMessage + '
The questionnaire is unable to be completed due to the issues below. Please address each and then re-submit.

';\r\n }\r\n var DialogWindow = jQuery('#jxFormMessageWindow');\r\n var DialogMessage = jQuery('#jxFormMessage', DialogWindow);\r\n var jxFormDialog = jQuery('#jxFormDialog', DialogWindow);\r\n\r\n var DialogButtons;\r\n if (SaveObject.ValidationLevel <= 2) {\r\n DialogButtons = '';\r\n }\r\n else {\r\n DialogButtons = '';\r\n }\r\n jxFormDialog.html(DialogButtons);\r\n DialogMessage.html(ResultMessage);\r\n\r\n DialogWindow.css('left', -5000);\r\n DialogWindow.css('top', -5000);\r\n DialogWindow.show();\r\n DialogWindow.position({ at: \"center center\", collision: \"flip flip\", of: jQuery('#' + CHSI.Forms.FormContainerID) });\r\n\r\n\r\n }\r\n\r\n /*jQuery('#FormNavRegion').html(CHSI.Forms.Navigation.GenerateNavigation(FormID));*/\r\n\r\n }, error: jQuery_ErrorResult\r\n });\r\n\r\n\r\n};\r\n\r\nCHSI.Forms.Results.returnResultSetIndex = function (StructureColumnID, ValueIndex) {\r\n if (ValueIndex == null)\r\n { ValueIndex = 0; }\r\n var beginIndex = 0, endIndex = CHSI.Forms.ResultSetValues.length;\r\n var ResultIndex = null;\r\n var SearchKey = (StructureColumnID * 10000) + ValueIndex;\r\n var CurrentSearchItemKey;\r\n var LoopCount = 0;\r\n\r\n while (beginIndex < endIndex) {\r\n if (LoopCount > 100) {\r\n ResultIndex == null;\r\n break;\r\n }\r\n ResultIndex = Math.floor((beginIndex + endIndex) / 2);\r\n var CurrentItem = CHSI.Forms.ResultSetValues[ResultIndex];\r\n CurrentSearchItemKey = (CurrentItem.StructureColumnID * 10000) + CurrentItem.ValueIndex;\r\n if (SearchKey === CurrentSearchItemKey)\r\n { break; }\r\n if (SearchKey < CurrentSearchItemKey) {\r\n endIndex = ResultIndex;\r\n }\r\n else {\r\n beginIndex = ResultIndex;\r\n }\r\n LoopCount++;\r\n }\r\n return ResultIndex;\r\n\r\n};\r\n\r\n\r\nCHSI.Forms.Results.GetNonVirtualValueIndexRows = function (StructureColumnID) {\r\n var RowIndices = []\r\n var ResultFound = false;\r\n var StartIndex = CHSI.Forms.Results.returnResultSetIndex(StructureColumnID, 0);\r\n for (var ResultIndex = StartIndex, ResultSetLength = CHSI.Forms.ResultSetValues.length; ResultIndex < ResultSetLength; ++ResultIndex) {\r\n var ResultValue = CHSI.Forms.ResultSetValues[ResultIndex];\r\n if (ResultValue.StructureColumnID == StructureColumnID && ResultValue.Status != 'deleted' && ResultValue.Status != 'virtual') {\r\n RowIndices.push(ResultValue.ValueIndex);\r\n ResultFound = true;\r\n }\r\n else {\r\n if (ResultFound == true && ResultValue.StructureColumnID != StructureColumnID) {\r\n break;/*Ordered list, if it did match and now doesn't, there must not be any more*/\r\n }\r\n }\r\n }\r\n return RowIndices;\r\n};\r\nCHSI.Forms.Results.GetResultSetValueByTag = function (Tag) {\r\n var Value = null;\r\n for (var ResultIndex = 0, ResultSetLength = CHSI.Forms.ResultSetValues.length; ResultIndex < ResultSetLength; ++ResultIndex) {\r\n var ResultValue = CHSI.Forms.ResultSetValues[ResultIndex];\r\n if (ResultValue.Tag == Tag) {\r\n Value = ResultValue;\r\n break;\r\n }\r\n }\r\n return Value;\r\n}\r\n\r\n\r\nCHSI.Forms.Results.GetResultSetValueByTagRegex = function (TagRegex) {\r\n var Value = null;\r\n for (var ResultIndex = 0, ResultSetLength = CHSI.Forms.ResultSetValues.length; ResultIndex < ResultSetLength; ++ResultIndex) {\r\n var ResultValue = CHSI.Forms.ResultSetValues[ResultIndex];\r\n if (TagRegex.test(ResultValue.Tag)) {\r\n Value = ResultValue;\r\n break;\r\n }\r\n };\r\n\r\n return Value;\r\n}\r\n\r\n\r\n\r\n\r\nCHSI.Forms.Results.GetResultSetValueArray = function (StructureColumnID) {\r\n var Values = [];\r\n var isFound = false;\r\n var StartIndex = CHSI.Forms.Results.returnResultSetIndex(StructureColumnID, 0);\r\n\r\n for (var ResultIndex = StartIndex, ResultSetLength = CHSI.Forms.ResultSetValues.length; ResultIndex < ResultSetLength; ++ResultIndex) {\r\n var ResultValue = CHSI.Forms.ResultSetValues[ResultIndex];\r\n if (ResultValue.StructureColumnID == StructureColumnID) {\r\n Values.push(ResultValue);\r\n isFound = true;\r\n }\r\n if (isFound == true && ResultValue.StructureColumnID != StructureColumnID) {\r\n break;\r\n }\r\n };\r\n\r\n return Values;\r\n};\r\n\r\nCHSI.Forms.Results.GetMaxValueIndex = function (StructureColumnID) {\r\n var MaxValue = -1;\r\n var isFound = false;\r\n var StartIndex = CHSI.Forms.Results.returnResultSetIndex(StructureColumnID, 0);\r\n for (var ResultIndex = StartIndex, ResultSetLength = CHSI.Forms.ResultSetValues.length; ResultIndex < ResultSetLength; ++ResultIndex) {\r\n var ResultValue = CHSI.Forms.ResultSetValues[ResultIndex];\r\n if (ResultValue.StructureColumnID == StructureColumnID) {\r\n MaxValue = ResultValue.ValueIndex;\r\n isFound = true;\r\n }\r\n if (isFound == true && ResultValue.StructureColumnID != StructureColumnID) {\r\n break;\r\n }\r\n };\r\n return MaxValue;\r\n};\r\n\r\n\r\n\r\nCHSI.Forms.Results.AppendResult = function (NewResultItem) {\r\n CHSI.Forms.ResultSetValues.push(NewResultItem);\r\n if (!CHSI.Forms.Results.ResultMap )\r\n {\r\n CHSI.Forms.Results.CreateMap();\r\n }\r\n CHSI.Forms.Results.ResultMap[this.GetResultKey(NewResultItem.StructureColumnID, NewResultItem.ValueIndex)] = NewResultItem;\r\n};\r\nCHSI.Forms.Results.SortResults = function () {\r\n\r\n CHSI.Forms.ResultSetValues.sort(function (a, b) {\r\n if (a.StructureColumnID < b.StructureColumnID)\r\n { return -1; }\r\n else if (a.StructureColumnID > b.StructureColumnID)\r\n { return 1; }\r\n else if (a.ValueIndex < b.ValueIndex) {\r\n return -1;\r\n }\r\n else if (a.ValueIndex > b.ValueIndex) {\r\n return 1;\r\n }\r\n else {\r\n return 0;\r\n }\r\n\r\n });\r\n\r\n};","CHSI.Page.GridRowHistory = {\r\n Settings: {\r\n FormID: 0\r\n , ResultSetID: 0\r\n , ValueIndex: 0\r\n }\r\n , Init: function (Settings) {\r\n if (Settings) {\r\n if (Settings.FormID != null)\r\n this.Settings.FormID = Settings.FormID;\r\n if (Settings.ResultSetID != null)\r\n this.Settings.ResultSetID = Settings.ResultSetID;\r\n if (Settings.ValueIndex != null)\r\n this.Settings.ValueIndex = Settings.ValueIndex;\r\n }\r\n\r\n\r\n this.Calls.GetRowHistory(CHSI.Page.GridRowHistory.Settings.FormID, CHSI.Page.GridRowHistory.Settings.ResultSetID, CHSI.Page.GridRowHistory.Settings.ValueIndex, function (e) { CHSI.Page.GridRowHistory.Cache.GridObject = e; CHSI.Page.GridRowHistory.BindPresentationLayer(); });\r\n },\r\n Templates: {\r\n },\r\n Cache: {\r\n GridObject: {}\r\n\r\n },\r\n BindPresentationLayer: function () {\r\n\r\n var DataSet = null;\r\n\r\n if (CHSI.Page.GridRowHistory.Cache.GridObject) {\r\n DataSet = CHSI.Page.GridRowHistory.Cache.GridObject.Values;\r\n var Columns = CHSI.Page.GridRowHistory.Cache.GridObject.Columns; \r\n }\r\n if (DataSet != null) {\r\n CHSI.Page.ScheduleGrid.Cache.GridTable = $('#jxGridHistory').DataTable({\r\n data: DataSet,\r\n columns: Columns,\r\n lengthMenu: [[25], [25]],\r\n stateSave: true\r\n })\r\n } else {\r\n var HTML = [];\r\n $('#jxGridHistory').html('No results found.')\r\n }\r\n \r\n $('#jxLoading').hide();\r\n }\r\n , Calls: {\r\n GetRowHistory: function (FormID, ResultSetID, ValueIndex, Success) {\r\n var Options = {};\r\n Options.URL = \"/api/Que/Grid/GetGridRowHistory?FormID=\" + FormID + \"&ResultSetID=\" + ResultSetID + \"&ValueIndex=\" + ValueIndex;\r\n Options.Success = Success;\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n\r\n }\r\n}\r\n","CHSI.Page.Review = {\r\n Init: function () {\r\n this.Settings.Filter.FormID = qs['FormID'];\r\n this.Settings.Filter.ParentFormID = qs['FormID'];\r\n this.Settings.Filter.ResultSetID = qs['ResultID'];\r\n this.Settings.LastFormIndex = qs['LastFormIndex'];\r\n this.Settings.PolicyPeriod = qs['PolicyPeriod'];\r\n this.Settings.GroupID = qs['GroupID'];\r\n this.Settings.DataStructureID = qs['DataStructureID'];\r\n CHSI_DataTables.SetupDataGridInputSearch();\r\n this.BindCategories();\r\n\r\n this.Templates.AnswerGrid = CHSITemplates.Template_AnswerGrid;\r\n\r\n this.DisplayGrid(this.Settings.Filter);\r\n\r\n this.Calls.GetGridForms(function () {\r\n CHSI.Page.Review.Settings.Filter.FormID = $('#jxGridForm').val();\r\n CHSI.Page.Review.Events.GetGridForms(CHSI.Page.Review.Settings.Filter.FormID);\r\n }); \r\n\r\n this.Calls.GetAttachments(function () {\r\n CHSI.Page.Review.BindAttachments();\r\n });\r\n\r\n this.Events.Global();\r\n\r\n this.BindGUI();\r\n } \r\n ,Cache: {\r\n AttachmentsObject: {},\r\n ReviewSectionObject: {},\r\n PayrollIndex: null,\r\n FTEIndex: null,\r\n isSummarized: []\r\n },\r\n Settings: {\r\n Filter: {\r\n CategoryID: null,\r\n FormID: null,\r\n ResultSetID: null,\r\n AnswerStatus: 43\r\n },\r\n DataStructureID: null,\r\n LastFormIndex: null,\r\n PolicyPeriod: null,\r\n GroupID: null\r\n },\r\n Templates: {\r\n\r\n },\r\n AjaxCalls: function (Parameters) {\r\n if (!isAjaxRunning) {\r\n isAjaxRunning = true;\r\n CHSI.Page.Review.DisplayGrid(Parameters);\r\n } else {\r\n CHSI.Page.Review.AjaxCalls.DisplayGrid.abort();\r\n }\r\n },\r\n BindAttachments: function (successFunction) {\r\n $('#uxAttachmentsTable').dataTable({\r\n data: CHSI.Page.Review.Cache.AttachmentsObject.Values,\r\n aoColumnDefs: [\r\n {\r\n aTargets: [0],\r\n mRender: function (data, type, row) {\r\n return row[1];\r\n }\r\n },\r\n {\r\n aTargets: [1],\r\n mRender: function (data, type, row) {\r\n return row[2];\r\n }\r\n },\r\n {\r\n aTargets: [2],\r\n mRender: function (data, type, row) {\r\n return row[3];\r\n }\r\n },\r\n {\r\n aTargets: [3],\r\n mRender: function (data, type, row) {\r\n return row[4];\r\n }\r\n },\r\n { bSortable:false,\r\n aTargets: [4],\r\n mRender: function (data, type, row) {\r\n return '[View]';\r\n }\r\n }\r\n ],\r\n stateSave: true\r\n });\r\n\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n },\r\n BindReviewSection: function () {\r\n CHSI.Page.Review.Settings.ReviewContainer = {};\r\n\r\n $('#jxGridContainer').html('
');\r\n\r\n var DataSet = CHSI.Page.Review.Cache.ReviewSectionObject;\r\n var Row = [];\r\n var Rows = [];\r\n var columnDefs = [];\r\n var ClientColumnDefinition = {};\r\n var FooterRenderFunction = null;\r\n\r\n for (ColumnIndex = 0; ColumnIndex < DataSet.Columns.length; ColumnIndex++) {\r\n\r\n if (DataSet.Columns[ColumnIndex].title == 'Payroll') {\r\n CHSI.Page.Review.Cache.PayrollIndex = ColumnIndex;\r\n }\r\n\r\n if (DataSet.Columns[ColumnIndex].title == 'FTE') {\r\n CHSI.Page.Review.Cache.FTEIndex = ColumnIndex;\r\n }\r\n\r\n ClientColumnDefinition = {};\r\n ClientColumnDefinition.targets = ColumnIndex;\r\n /*\r\n If they are textboxes, we need to use custom sorting. This will BREAK non-textbox columns\r\n */\r\n if (ColumnIndex < DataSet.Columns.length - 4)\r\n {\r\n if (DataSet.Columns[ColumnIndex].DataType == 5 || DataSet.Columns[ColumnIndex].DataType == 3) {\r\n /*blanks will be treated as 0s*/\r\n DataSet.Columns[ColumnIndex].orderDataType = 'dom-text-numeric';\r\n }\r\n if (DataSet.Columns[ColumnIndex].DataType == 1 || DataSet.Columns[ColumnIndex].DataType == 2 || DataSet.Columns[ColumnIndex].DataType == 4) {\r\n DataSet.Columns[ColumnIndex].orderDataType = 'dom-text';\r\n DataSet.Columns[ColumnIndex].type = 'string'\r\n }\r\n \r\n if (DataSet.Columns[ColumnIndex].CalculationType > 0) {\r\n CHSI.Page.Review.Cache.isSummarized.push({ title: DataSet.Columns[ColumnIndex].title, index: ColumnIndex, total: 0 });\r\n } else {\r\n CHSI.Page.Review.Cache.isSummarized.push({ title: '', index: null, total: 0 });\r\n }\r\n }\r\n \r\n if (DataSet.Columns[ColumnIndex].ElementID > 0) {\r\n\r\n if (DataSet.Columns[ColumnIndex].editable == false) { \r\n ClientColumnDefinition.render = function (data, type, row, meta) { \r\n return '';\r\n }\r\n } else {\r\n ClientColumnDefinition.render = function (data, type, row, meta) {\r\n return '';\r\n }\r\n }\r\n\r\n \r\n } else {\r\n ClientColumnDefinition.render = function (data, type, row) { \r\n return data;\r\n }\r\n }\r\n\r\n if (DataSet.Columns[ColumnIndex].ElementID == -1) {\r\n ClientColumnDefinition.render = function (data, type, row) {\r\n if (data == 'Completed') {\r\n return 'ü';\r\n } else {\r\n return '';\r\n } \r\n }\r\n }\r\n\r\n columnDefs.push(ClientColumnDefinition);\r\n\r\n // Build table tfoot\r\n\r\n\r\n }\r\n\r\n var Column = {}\r\n Column.title = \"\";\r\n Column.data = null;\r\n Column.orderable = false;\r\n Column.class = 'details-control';\r\n Column.defaultContent = '[History]';\r\n DataSet.Columns.push(Column);\r\n\r\n var Column = {}\r\n Column.title = \"\";\r\n Column.data = null;\r\n Column.orderable = false;\r\n Column.class = 'details-control';\r\n Column.defaultContent = '';\r\n DataSet.Columns.push(Column);\r\n\r\n ClientColumnDefinition = {};\r\n ClientColumnDefinition.targets = -2;\r\n ClientColumnDefinition.render = function (data, type, row, meta) {\r\n return '[History]';\r\n }\r\n columnDefs.push(ClientColumnDefinition);\r\n\r\n ClientColumnDefinition = {};\r\n ClientColumnDefinition.targets = -1;\r\n ClientColumnDefinition.render = function (data, type, row, meta) {\r\n if (row[row.length - 3] == 'Completed') {\r\n return '';\r\n }else{\r\n return '';\r\n }\r\n }\r\n columnDefs.push(ClientColumnDefinition);\r\n\r\n \r\n FooterRenderFunction = function (nRow, aaData, iStart, iEnd, aiDisplay) {\r\n \r\n var PayrollTotal = 0;\r\n var FTETotal = 0;\r\n var FooterHTML = [];\r\n var Total = 0;\r\n var Values = DataSet.Values;\r\n var Columns = DataSet.Columns;\r\n var footer = $('#uxReviewGrid tfoot');\r\n footer.html('');\r\n var tr = $('');\r\n \r\n for (ColumnIndex = 1; ColumnIndex < Columns.length; ColumnIndex++) { \r\n if (Columns[ColumnIndex].CalculationType > 0) {\r\n var Total = 0;\r\n for (var IndexValue = 0; IndexValue < Values.length; IndexValue++) {\r\n Total = Total + (Values[IndexValue][ColumnIndex] * 1);\r\n }\r\n if (isNaN(Total))\r\n {\r\n Total = 0;\r\n }\r\n\r\n\r\n\r\n tr.append('' + 'Total: ' + Total + '');\r\n } else {\r\n tr.append('');\r\n } \r\n } \r\n footer.append(tr);\r\n }\r\n\r\n CHSI.Page.Review.Settings.ReviewContainer = $('#uxReviewGrid').DataTable({\r\n aaData: DataSet.Values,\r\n columns: DataSet.Columns,\r\n aoColumnDefs: columnDefs,\r\n fnFooterCallback: FooterRenderFunction,\r\n stateSave: true\r\n });\r\n },\r\n BindPresentationLayer: function () {\r\n $('#jxAnswerGrid').html(this.Templates.AnswerGrid(this.AnswerGridObject));\r\n if (this.AnswerGridObject.Answers && this.AnswerGridObject.Answers.flagAR) {\r\n $('#jxAutoReview').removeAttr(\"disabled\");\r\n }\r\n\r\n $('#jxSectionTitle').text('Submission Review');\r\n $('#tabNavigation a').hide();\r\n },\r\n BindCategories: function () {\r\n var DataStructureID = CHSI.Page.Review.Settings.DataStructureID;\r\n var AjaxURL = \"/api/Que/Questionnaire/GetCategoriesByDataStructureID?DataStructureID=\" + DataStructureID;\r\n jQuery.ajax({\r\n type: \"GET\", url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n var html = '' + CHSI.GUI.BuildSelectItemHTML(e, 'Value', 'Key');\r\n jQuery('#jxFilterCategory').html(html);\r\n }, error: function (e) {\r\n alert(e);\r\n }\r\n });\r\n }, \r\n BindGUI: function () {\r\n\r\n $('.Filter').off('click').on('click', function () {\r\n CHSI.Page.Review.Settings.Filter.AnswerStatus = 0;\r\n if ($('#jxFilterRequiresReview').prop('checked')) {\r\n CHSI.Page.Review.Settings.Filter.AnswerStatus = CHSI.Page.Review.Settings.Filter.AnswerStatus | $('#jxFilterRequiresReview').val();\r\n }\r\n if ($('#jxFilterWarnings').prop('checked')) {\r\n CHSI.Page.Review.Settings.Filter.AnswerStatus = CHSI.Page.Review.Settings.Filter.AnswerStatus | $('#jxFilterWarnings').val();\r\n }\r\n if ($('#jxFilterCompleted').prop('checked')) {\r\n CHSI.Page.Review.Settings.Filter.AnswerStatus = CHSI.Page.Review.Settings.Filter.AnswerStatus | $('#jxFilterCompleted').val();\r\n }\r\n if ($('#jxFilterModified').prop('checked')) {\r\n CHSI.Page.Review.Settings.Filter.AnswerStatus = CHSI.Page.Review.Settings.Filter.AnswerStatus | $('#jxFilterModified').val();\r\n }\r\n if ($('#jxFilterUnmodified').prop('checked')) {\r\n CHSI.Page.Review.Settings.Filter.AnswerStatus = CHSI.Page.Review.Settings.Filter.AnswerStatus | $('#jxFilterUnmodified').val();\r\n }\r\n\r\n if ($('#jxHideReviewed').prop('checked')) {\r\n CHSI.Page.Review.Settings.Filter.AnswerStatus = CHSI.Page.Review.Settings.Filter.AnswerStatus | $('#jxHideReviewed').val();\r\n }\r\n\r\n CHSI.Page.Review.AjaxCalls(CHSI.Page.Review.Settings.Filter);\r\n\r\n });\r\n\r\n\r\n\r\n $('#jxFilterCategory').change(function () {\r\n CHSI.Page.Review.Settings.Filter.CategoryID = jQuery(this).val();\r\n CHSI.Page.Review.AjaxCalls(CHSI.Page.Review.Settings.Filter);\r\n });\r\n\r\n\r\n \r\n $('#jxAnswerGrid').on('click', '.SingleAutoReview', function () {\r\n var date = new Date();\r\n var offset = date.getTimezoneOffset() * -1;\r\n var time = (Number(date) + (offset * 60 * 1000));\r\n var Button = $(this);\r\n var Review = {};\r\n Review.ColumnID = Button.data('columnid');\r\n Review.ValueIndex = Button.data('valueindex');\r\n Review.HistoryIndex = null;\r\n Review.ResultSetID = Button.data('resultsetid');\r\n Review.Status = 'Completed';\r\n Review.ReviewerNotes = ' System Verified - Quick Complete';\r\n Review.ReviewedBy = null;\r\n Review.ReviewedDate = CHSI.Dates.GetDateTime(new Date(time));\r\n Review.FormID = qs.formid;\r\n CHSI.Page.Review.SingleAutoReview(Review,function () {\r\n CHSI.Page.Review.AjaxCalls(CHSI.Page.Review.Settings.Filter);\r\n });\r\n\r\n });\r\n\r\n $('#Filters').on('click', '#jxAutoReview', function () {\r\n if (confirm('Do you want to automatically mark ALL records as \\'Review Completed\\' where the current and prior value match?')) {\r\n CHSI.Page.Review.Settings.Filter.Status = 'Completed';\r\n CHSI.Page.Review.Settings.Filter.ReviewerNotes = 'System Verified - Auto Review';\r\n CHSI.Page.Review.AutoReview(function () { \r\n CHSI.Page.Review.AjaxCalls(CHSI.Page.Review.Settings.Filter);\r\n });\r\n $(this).attr(\"disabled\", \"disabled\");\r\n } else {\r\n // Do nothing!\r\n }\r\n \r\n });\r\n },\r\n\r\n Events: {\r\n Global: function () {\r\n\r\n $('#tabFormReview').on('change', '#jxGridForm', function () { \r\n var FormID = $(this).val();\r\n CHSI.Page.Review.Settings.Filter.FormID = FormID; \r\n CHSI.Page.Review.Events.GetGridForms(FormID);\r\n });\r\n\r\n $('#jxGridContainer').on('change', 'td', function () {\r\n \r\n var Cell = CHSI.Page.Review.Settings.ReviewContainer.cell(this).index(); \r\n var Row = CHSI.Page.Review.Settings.ReviewContainer.row(Cell.row).data();\r\n var Column = CHSI.Page.Review.Settings.ReviewContainer.settings()[0].aoColumns[Cell.column]; \r\n var ValueIndex = Row[0]; \r\n var CellData = {};\r\n var ValueType = $(this).find('.ReviewRowCell').val(); \r\n\r\n CellData.resultid = CHSI.Page.Review.Settings.Filter.ResultSetID;\r\n CellData.columnid = Column.StructureColumnID;\r\n CellData.formid = $(\"#jxGridForm\").val();\r\n CellData.valueindex = ValueIndex;\r\n CellData.StringValue = Column.DataType == 1 ? ValueType : null;\r\n CellData.DateValue = Column.DataType == 2 ? ValueType : null;\r\n CellData.DecimalValue = Column.DataType == 3 ? ValueType : null;\r\n CellData.BitValue = Column.DataType == 4 ? ValueType : null;\r\n CellData.IntegerValue = Column.DataType == 5 ? ValueType*1 : null;\r\n CellData.passedvalidation = true;\r\n CellData.ChangeType = Column.DataType;\r\n CellData.Explanation = null;\r\n CellData.WarningLevel = 0;\r\n CellData.ParentElementID = Column.ElementID;\r\n CellData.ClearReviewed = false;\r\n CHSI.Page.Review.Settings.ReviewContainer.cell({ row: CHSI.Page.Review.Settings.ReviewContainer.row(Cell.row).index(), column: Cell.column }).data(ValueType); \r\n \r\n CHSI.Page.Review.Calls.SaveResultSetValue(CellData); \r\n CHSI.Page.Review.Events.RecalculateTotals(CHSI.Page.Review.Settings.ReviewContainer.settings()[0].aoColumns[Cell.column].sTitle, CHSI.Page.Review.Settings.ReviewContainer.settings()[0].aoColumns[Cell.column].idx);\r\n \r\n });\r\n\r\n $(\"#jxGridContainer\").on('click', '.jxRowGridHistory', function () {\r\n var tr = $(this).closest('tr');\r\n var CellData = CHSI.Page.Review.Settings.ReviewContainer.row(tr).data();\r\n var FormID = $('#jxGridForm').val();\r\n var ValueIndex = CellData[0];\r\n\r\n ShowGridRowHistory(ValueIndex, FormID, CHSI.Page.Review.Settings.Filter.ResultSetID);\r\n });\r\n\r\n $(\"#jxGridContainer\").on('click', '.jxRowGridReview', function () {\r\n var tr = $(this).closest('tr');\r\n var CellData = CHSI.Page.Review.Settings.ReviewContainer.row(tr).data();\r\n var FormID = $('#jxGridForm').val();\r\n var ValueIndex = CellData[0];\r\n var RowObject = {};\r\n\r\n RowObject.Status = 'completed';\r\n RowObject.ResultSetID = CHSI.Page.Review.Settings.Filter.ResultSetID;\r\n RowObject.Comments = '';\r\n RowObject.FormID = $('#jxGridForm').val();\r\n RowObject.ValueIndex = ValueIndex;\r\n\r\n CHSI.Page.Review.Calls.SaveRowCellStatus(RowObject, function () {\r\n var FormID = $('#jxGridForm').val();\r\n CHSI.Page.Review.Settings.Filter.FormID = FormID;\r\n CHSI.Page.Review.Events.GetGridForms(FormID);\r\n });\r\n });\r\n },\r\n ShowReviewHistory: function () {\r\n var URL = '';\r\n ShowPopup('ReviewHistory', URL, 'Review History', 350, 280, null, false);\r\n },\r\n SaveRow: function (rowIndex, structureColumnID) {\r\n\r\n },\r\n GetGridForms: function (FormID) { \r\n CHSI.Page.Review.Calls.GetGridValues(FormID, function () {\r\n CHSI.Page.Review.BindReviewSection();\r\n });\r\n },\r\n RecalculateTotals: function (calculateColumn, columnIndex) { \r\n var DT = CHSI.Page.Review.Settings.ReviewContainer;\r\n var TotalCellCount = DT.rows()[0].length; \r\n var NewPayrollTotal = 0;\r\n var currentValue = 0; \r\n\r\n for (CellIndex = 0; CellIndex < TotalCellCount; CellIndex++) { \r\n currentValue = DT.cell({ row: CellIndex, column: columnIndex }).data();\r\n NewPayrollTotal = NewPayrollTotal + (currentValue * 1);\r\n } \r\n \r\n $('#jxTotalColIndex_' + columnIndex).html('' + 'Total: ' + NewPayrollTotal + '');\r\n \r\n }, \r\n\r\n },\r\n\r\n AutoReview: function (Success) {\r\n var Parameters = {};\r\n Parameters.AnswerStatus = CHSI.Page.Review.Settings.Filter.AnswerStatus;\r\n Parameters.CategoryID = CHSI.Page.Review.Settings.Filter.CategoryID;\r\n Parameters.FormID = CHSI.Page.Review.Settings.Filter.ParentFormID;\r\n Parameters.ResultSetID = CHSI.Page.Review.Settings.Filter.ResultSetID;\r\n\r\n var Options = {};\r\n Options.URL = \"/api/Que/Result/AutoReviewResultSetValueReview\";\r\n Options.Data = Parameters;\r\n Options.Success = Success;\r\n CHSI.Common.Ajax.Post(Options);\r\n },\r\n\r\n SingleAutoReview: function (Review, Success){ \r\n var Options = {};\r\n Options.URL = \"/api/Que/Result/SaveResultSetValueReview\";\r\n Options.Data = Review;\r\n Options.Success = Success;\r\n CHSI.Common.Ajax.Post(Options);\r\n },\r\n\r\n DisplayGrid: function (Filter) {\r\n var Parameters = {};\r\n Parameters.AnswerStatus = Filter.AnswerStatus;\r\n Parameters.CategoryID = Filter.CategoryID;\r\n Parameters.FormID = Filter.ParentFormID;\r\n Parameters.ResultSetID = Filter.ResultSetID;\r\n\r\n var AjaxURL = \"/api/Que/Result/GetReviewFormAnswers\";\r\n var ajaxString = JSON.stringify(Parameters);\r\n CHSI.Page.Review.AjaxCalls.DisplayGrid = $.ajax({\r\n type: \"POST\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n data: ajaxString,\r\n success: function (e) {\r\n Answers = CHSI.Page.Review.ProcessAnswers(e);\r\n CHSI.Page.Review.AnswerGridObject = { Answers: Answers.AnswerRow };\r\n CHSI.Page.Review.BindPresentationLayer();\r\n restart = true;\r\n sorttable.init();\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n },\r\n complete: function () {\r\n isAjaxRunning = false;\r\n }\r\n });\r\n\r\n\r\n },\r\n\r\n ProcessAnswers: function (Answers) {\r\n var flagAR = Answers.AutoReviewFlag;\r\n for (i = 0; i < Answers.AnswerRow.length; i++) {\r\n switch (Answers.AnswerRow[i].DataTypeID) {\r\n case 1: //string\r\n Answers.AnswerRow[i].Value = Answers.AnswerRow[i].StringValue;\r\n Answers.AnswerRow[i].PriorValue = Answers.AnswerRow[i].PriorStringValue;\r\n break;\r\n case 2: //date\r\n Answers.AnswerRow[i].Value = CHSI.Dates.GetFormattedJSONDate(Answers.AnswerRow[i].DateValue);\r\n Answers.AnswerRow[i].PriorValue = CHSI.Dates.GetFormattedJSONDate(Answers.AnswerRow[i].PriorDateValue);\r\n break;\r\n case 3: //decimal\r\n if (Answers.AnswerRow[i].ContentType == 11) {\r\n Answers.AnswerRow[i].Value = CHSI.Common.Numbers.FormatCurrency(Answers.AnswerRow[i].DecimalValue, 2);\r\n Answers.AnswerRow[i].PriorValue = CHSI.Common.Numbers.FormatCurrency(Answers.AnswerRow[i].PriorDecimalValue, 2);\r\n } else {\r\n Answers.AnswerRow[i].Value = Answers.AnswerRow[i].DecimalValue;\r\n Answers.AnswerRow[i].PriorValue = Answers.AnswerRow[i].PriorDecimalValue;\r\n }\r\n break;\r\n case 4: //bit\r\n Answers.AnswerRow[i].Value = Answers.AnswerRow[i].BitValue;\r\n Answers.AnswerRow[i].PriorValue = Answers.AnswerRow[i].PriorBitValue;\r\n break;\r\n case 5: //integer \r\n if (Answers.AnswerRow[i].ContentType == 11) {\r\n Answers.AnswerRow[i].Value = CHSI.Common.Numbers.FormatCurrency(Answers.AnswerRow[i].IntegerValue, 2);\r\n Answers.AnswerRow[i].PriorValue = CHSI.Common.Numbers.FormatCurrency(Answers.AnswerRow[i].PriorIntegerValue, 2);\r\n } else {\r\n Answers.AnswerRow[i].Value = Answers.AnswerRow[i].IntegerValue;\r\n Answers.AnswerRow[i].PriorValue = Answers.AnswerRow[i].PriorIntegerValue;\r\n }\r\n break;\r\n\r\n }\r\n\r\n if (Answers.AnswerRow[i].ReviewStatus != 'Completed') {\r\n if (Answers.AnswerRow[i].Value == Answers.AnswerRow[i].PriorValue || (Answers.AnswerRow[i].PriorValue == null && Answers.AnswerRow[i].Value == null)) {\r\n flagAR = true;\r\n } else {\r\n Answers.AnswerRow[i].flagAR = true;\r\n } \r\n \r\n }\r\n }\r\n Answers.AnswerRow.flagAR = flagAR;\r\n return Answers;\r\n\r\n }, \r\n Calls: {\r\n GetAttachments: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/Que/Questionnaire/GetAttachments?ResultSetID=' + CHSI.Page.Review.Settings.Filter.ResultSetID + '&FormID=' + CHSI.Page.Review.Settings.Filter.ParentFormID;\r\n Options.Success = function (data) {\r\n\r\n CHSI.Page.Review.Cache.AttachmentsObject = data;\r\n\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n\r\n };\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n GetGridValues: function (FormID, successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/Que/Grid/GetGrid?FormID=' + FormID + '&ResultSetID=' + CHSI.Page.Review.Settings.Filter.ResultSetID + '&ParentFormID=' + CHSI.Page.Review.Settings.Filter.ParentFormID;\r\n Options.Success = function (data) {\r\n CHSI.Page.Review.Cache.ReviewSectionObject = data;\r\n\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n };\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n GetGridForms: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/Que/Form/GetGridForms?FormID=' + CHSI.Page.Review.Settings.Filter.FormID;\r\n Options.Success = function (data) {\r\n $('#jxGridForm').html(CHSI.GUI.BuildSelectItemHTML(data, 'Title', 'FormID', null));\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n }\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n SaveRowCellStatus: function (Filter, successFunction) {\r\n\r\n var Options = {};\r\n Options.URL = '/api/Que/Result/ReviewGridRow';\r\n Options.Data = Filter;\r\n Options.Success = function () {\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n };\r\n CHSI.Common.Ajax.Post(Options)\r\n },\r\n SaveResultSetValue: function (CellObject, successFunction) {\r\n var DataString = JSON.stringify(CellObject);\r\n jQuery.ajax({\r\n type: \"POST\",\r\n url: \"/api/Que/Result/SaveResultField\",\r\n data: DataString,\r\n async: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n }, error: jQuery_ErrorResult\r\n });\r\n },\r\n }\r\n};\r\n\r\nfunction ShowGridRowHistory(ValueIndex, FormID, ResultSetID) {\r\n var URL = '/Que/Modals/GridRowHistory.aspx?ValueIndex=' + ValueIndex + '&FormID=' + FormID + '&ResultSetID=' + ResultSetID;\r\n ShowPopup('QuestionReviewModal', URL, 'Question Review', 800, 700, null, true);\r\n}\r\n\r\nfunction ShowReviewAnswer(ElementID, ColumnID, ValueIndex, FormID, ResultSetID) {\r\n var URL = '/Que/Modals/QuestionReview.aspx?ElementID=' + ElementID + '&ColumnID=' + ColumnID + '&ValueIndex=' + ValueIndex + '&FormID=' + FormID + '&ResultSetID=' + ResultSetID;\r\n parent.ShowPopup('QuestionReviewModal', URL, 'Question Review', 800, 700, ModalRefresh, true);\r\n}\r\n\r\nfunction ModalRefresh() {\r\n CHSI.Page.Review.DisplayGrid(CHSI.Page.Review.Settings.Filter);\r\n}","\r\nCHSI.UW.MuniUW_Details = {\r\n Init: function (qs) {\r\n this.Cache.QuoteID = qs.QuoteID;\r\n this.Cache.GroupID = qs.GroupName;\r\n if (typeof (qs.ClientID) == \"undefined\") {\r\n this.Cache.ClientID = qs.clientid;\r\n } else {\r\n this.Cache.ClientID = qs.ClientID;\r\n }\r\n console.log('MuniUW_Details Init');\r\n this.Cache.PDF.setHours(0,0,0,0);\r\n \r\n this.Templates.CoverageLine = CHSITemplates.Template_QuoteInfo_CoverageLine;\r\n this.Templates.Commissions = CHSITemplates.Template_QuoteInfo_Commissions;\r\n this.Templates.Payroll = CHSITemplates.Template_QuoteInfo_Payroll;\r\n this.Templates.Details = CHSITemplates.Template_QuoteInfo_QuoteDetails;\r\n\r\n this.Calls.GetQuoteDetails(this.Cache.QuoteID);\r\n this.Calls.GetCommissions();\r\n\r\n this.Events.Global();\r\n },\r\n Templates: {},\r\n Cache: {\r\n CommissionsObject: {},\r\n SavedCommissionObject: {},\r\n NewestCommissionID: 0,\r\n PayrollObject: {},\r\n SavedPayrollObject: {},\r\n NewestPayrollID: 0,\r\n QuoteObject: {},\r\n CoverageLineObject: {},\r\n ValidationObject: {},\r\n InfoObject: {},\r\n ActiveEditableCommssionIndex: null,\r\n ActiveEditablePayrollIndex: null,\r\n QuoteID: null,\r\n GroupID: null,\r\n isClassCodeValid: false,\r\n Producers: [],\r\n States: [],\r\n UseEstimatedPayroll: false,\r\n PDF: new Date(),\r\n PDL: new Date('01/01/2299'),\r\n PDMax: 0,\r\n DateDiff: 366,\r\n ProRateDays: 0,\r\n Editable:'Y'\r\n\r\n\r\n },\r\n Binds: {\r\n BindQuoteDetails: function () {\r\n $('#QuoteDetailContainer').html(CHSI.UW.MuniUW_Details.Templates.Details({ QuoteObject: CHSI.UW.MuniQuote.Cache.QuoteObject }));\r\n jQuery('.DatePicker').datepicker({ showOn: \"both\", buttonImage: \"/images/icons/cal.gif\", buttonImageOnly: true }); \r\n CHSI.UW.MuniUW_Details.Cache.ProRateDays = DateDiff(CHSI.UW.MuniQuote.Cache.QuoteObject.EffectiveDate, CHSI.UW.MuniQuote.Cache.QuoteObject.ExpirationDate);\r\n $('#proRateDays').val(CHSI.UW.MuniUW_Details.Cache.ProRateDays);\r\n restart = true;\r\n sorttable.init();\r\n if (CHSI.UW.MuniQuote.Cache.QuoteList.length > 1 && CHSI.UW.MuniQuote.Cache.QuoteObject.ParentQuoteID) {\r\n $('.QuoteLabel').html('Endorsement');\r\n }\r\n CHSI.UW.MuniQuote.DisablePage(CHSI.UW.MuniUW_Details.Cache.Editable);\r\n\r\n\r\n },\r\n BindCoverageLines: function () { \r\n $('#CoverageLineContainer').html(CHSI.UW.MuniUW_Details.Templates.CoverageLine({ CoverageLineObject: CHSI.UW.MuniQuote.Cache.CoverageLineObject }));\r\n restart = true;\r\n sorttable.init();\r\n\r\n CHSI.UW.MuniQuote.DisablePage(CHSI.UW.MuniUW_Details.Cache.Editable);\r\n },\r\n BindCommissions: function () {\r\n $('#CommissionsContainer').html(CHSI.UW.MuniUW_Details.Templates.Commissions({ CommissionsObject: CHSI.UW.MuniQuote.Cache.CommissionsObject }));\r\n restart = true;\r\n sorttable.init();\r\n\r\n CHSI.UW.MuniUW_Details.Calls.GetProducers(function (data) {\r\n var ProducerList = CHSI.UW.MuniUW_Details.Events.ConstructProducersList(data, 'id=\"jxNewCommissionProducers\"');\r\n $('#jxProducers').html(ProducerList);\r\n CHSI.UW.MuniQuote.DisablePage(CHSI.UW.MuniUW_Details.Cache.Editable);\r\n });\r\n \r\n },\r\n BindPayroll: function () {\r\n $('#PayrollContainer').html(CHSI.UW.MuniUW_Details.Templates.Payroll({ PayrollObject: CHSI.UW.MuniUW_Details.Cache.PayrollObject }));\r\n restart = true;\r\n sorttable.init();\r\n\r\n CHSI.UW.MuniUW_Details.Calls.GetStates(function (data) {\r\n var StateList = CHSI.UW.MuniUW_Details.Events.ConstructStateList(data, 'jxNewPayrollStates', 'validateNewClassCode');\r\n $('#jxStates').html(StateList);\r\n CHSI.UW.MuniQuote.DisablePage(CHSI.UW.MuniUW_Details.Cache.Editable);\r\n });\r\n\r\n $('#jxPayrollErrorMessage').hide();\r\n\r\n \r\n }\r\n },\r\n Events: {\r\n Global: function () {\r\n // Coverage Lines\r\n $('#CoverageLineContainer').on('click', '#addPL', function () {\r\n var ProductLineID = $('#addNewCoverageLine').val();\r\n CHSI.UW.MuniUW_Details.Calls.AddQuoteCoverageLine(CHSI.UW.MuniUW_Details.Cache.QuoteID, ProductLineID);\r\n });\r\n\r\n $('#CoverageLineContainer').on('click', '.jxDeleteCL', function () {\r\n var ProductLineID = $(this).data('clid');\r\n CHSI.UW.MuniUW_Details.Calls.DeleteCoverageLine(CHSI.UW.MuniUW_Details.Cache.QuoteID, ProductLineID);\r\n });\r\n\r\n $('#QuoteDetailContainer').on('change', '.QuoteProperty', function () {\r\n var Property = $(this).val();\r\n var PropertyName = $(this).attr('data-propertyname');\r\n var Validation = CHSI.UW.MuniUW_Details.Events.ValidateQuoteProperty(PropertyName, Property);\r\n \r\n if (Validation.length == 0 || (CHSI.UW.MuniQuote.Cache.QuoteList.length > 1 && CHSI.UW.MuniQuote.Cache.QuoteObject.ParentQuoteID))\r\n {\r\n $('.QuoteProperty').css({ \"border\": '2px inset' }); \r\n if (PropertyName == 'EffectiveDate') { \r\n //CHSI.UW.MuniQuote.SaveQuoteProperty('ExpirationDate', CHSI.UW.MuniQuote.Cache.QuoteObject.ExpirationDate, function () {\r\n // CHSI.UW.MuniUW_Details.Calls.SaveQuoteProperty(PropertyName, Property);\r\n //});\r\n } else {\r\n \r\n //CHSI.UW.MuniUW_Details.Calls.SaveQuoteProperty(PropertyName, Property);\r\n }\r\n\r\n } else {\r\n for (var c = 0; c < Validation.length; c++) {\r\n alert(Validation[c].ErrorMessage);\r\n $('#jxQuoteProp' + PropertyName).css({ \"border\": '#FF0000 2px inset' });\r\n }\r\n }\r\n\r\n });\r\n\r\n // Commissions\r\n $('#CommissionsContainer').on('click', '.jxEditCommission', function () {\r\n var Edit = $(this),\r\n Index = Edit.data('commissionindex');\r\n\r\n $('#NewCommission').find('input, select').prop('disabled', true);\r\n\r\n if (CHSI.UW.MuniUW_Details.Cache.ActiveEditableCommssionIndex != Index) {\r\n CHSI.UW.MuniUW_Details.Events.CommissionMode(CHSI.UW.MuniUW_Details.Cache.ActiveEditableCommssionIndex, true);\r\n }\r\n\r\n CHSI.UW.MuniUW_Details.Events.CommissionMode(Index);\r\n\r\n CHSI.UW.MuniUW_Details.Cache.ActiveEditableCommssionIndex = Index;\r\n });\r\n\r\n $('#CommissionsContainer').on('click', '#jxNewResetCommission', function () {\r\n $('#jxNewCommissionProducers').val($(\"#jxNewCommissionProducers option:first\").val());\r\n $('#jxNewCommissionRepAgent').val('');\r\n $('#jxNewCommissionCustNo').val('');\r\n $('#jxNewCommissionPrimary').prop('checked', false);\r\n $('#jxNewCommissionRate').val('');\r\n $('#jxNewCommissionRating').prop('checked', false);\r\n });\r\n\r\n $('#CommissionsContainer').on('click', '.jxCancelCommission', function () {\r\n var Index = $(this).data('commissionindex');\r\n\r\n $('#NewCommission').find('input, select').prop('disabled', false);\r\n\r\n CHSI.UW.MuniUW_Details.Events.CommissionMode(Index, true);\r\n });\r\n\r\n $('#CommissionsContainer').on('click', '.jxDeleteCommission', function () {\r\n var ID = $(this).data('commissionid'),\r\n Response = confirm('Please confirm that you would like to delete this Commission item.');\r\n\r\n if (Response) {\r\n CHSI.UW.MuniUW_Details.Calls.DeleteCommission(ID, function () {\r\n CHSI.UW.MuniUW_Details.Calls.GetCommissions();\r\n });\r\n }\r\n });\r\n\r\n $('#CommissionsContainer').on('click', '.jxSaveCommission', function () {\r\n var ID = $(this).data('commissionid'),\r\n Index = $(this).data('commissionindex');\r\n\r\n CHSI.UW.MuniUW_Details.Cache.SavedCommissionObject = CHSI.UW.MuniUW_Details.Events.PersistCommission(ID, Index);\r\n CHSI.UW.MuniUW_Details.Calls.SaveCommission(function () {\r\n CHSI.UW.MuniUW_Details.Calls.GetCommissions();\r\n });\r\n });\r\n\r\n $('#CommissionsContainer').on('click', '#jxSaveNewCommission', function () {\r\n CHSI.UW.MuniUW_Details.Cache.SavedCommissionObject = CHSI.UW.MuniUW_Details.Events.PersistCommission();\r\n CHSI.UW.MuniUW_Details.Calls.SaveCommission(function () {\r\n CHSI.UW.MuniUW_Details.Calls.GetCommissions();\r\n });\r\n });\r\n\r\n // Payroll\r\n $('#PayrollContainer').on('click', '.jxEditPayroll', function () {\r\n var Edit = $(this),\r\n Index = Edit.data('payrollindex');\r\n\r\n $('#jxPayrollErrorMessage').val('');\r\n $('#jxPayrollErrorMessage').hide();\r\n\r\n $('#NewPayroll').find('input, select').prop('disabled', true);\r\n\r\n if (CHSI.UW.MuniUW_Details.Cache.ActiveEditablePayrollIndex != Index) {\r\n CHSI.UW.MuniUW_Details.Events.PayrollMode(CHSI.UW.MuniUW_Details.Cache.ActiveEditablePayrollIndex, true);\r\n }\r\n\r\n CHSI.UW.MuniUW_Details.Events.PayrollMode(Index);\r\n\r\n CHSI.UW.MuniUW_Details.Cache.ActiveEditablePayrollIndex = Index;\r\n\r\n\r\n });\r\n\r\n $('#PayrollContainer').on('click', '#jxResetNewPayroll', function () {\r\n $('#jxNewPayrollStates').val($('#jxNewPayrollStates option:first').val())\r\n $('#jxNewClassCode').val('');\r\n $('#jxNewAltClassCode').val('');\r\n $('#jxNewEmployees').val('');\r\n $('#jxNewDescrption').val('');\r\n $('#jxNewPayroll').val('');\r\n $('#jxNewPayrollRate').val('');\r\n $('#jxNewGrossPrem').val('');\r\n $('#jxNewPayrollBaseRate').val('');\r\n\r\n });\r\n\r\n $('#PayrollContainer').on('click', '.jxDeletePayroll', function () {\r\n var ID = $(this).data('detailid'),\r\n Response = confirm('Please confirm that you would like to delete this Payroll item.');\r\n\r\n if (Response) {\r\n CHSI.UW.MuniUW_Details.Calls.DeletePayroll(ID, function () {\r\n CHSI.UW.MuniUW_Details.Calls.GetPayroll();\r\n });\r\n }\r\n });\r\n\r\n $('#PayrollContainer').on('click', '.jxCancelPayroll', function () {\r\n var Index = $(this).data('payrollindex');\r\n\r\n $('#NewPayroll').find('input, select').prop('disabled', false);\r\n\r\n CHSI.UW.MuniUW_Details.Events.PayrollMode(Index, true);\r\n });\r\n\r\n $('#PayrollContainer').on('click', '#jxSaveNewPayroll', function () {\r\n\r\n if (CHSI.UW.MuniUW_Details.Cache.isClassCodeValid) {\r\n CHSI.UW.MuniUW_Details.Cache.SavedPayrollObject = CHSI.UW.MuniUW_Details.Events.PersistPayroll();\r\n CHSI.UW.MuniUW_Details.Calls.SavePayroll(function () {\r\n CHSI.UW.MuniUW_Details.Calls.GetPayroll();\r\n });\r\n }\r\n\r\n });\r\n\r\n $('#PayrollContainer').on('click', '.jxSavePayroll', function () {\r\n\r\n var ID = $(this).data('payrollid'),\r\n Index = $(this).data('payrollindex');\r\n\r\n if (CHSI.UW.MuniUW_Details.Cache.isClassCodeValid) {\r\n CHSI.UW.MuniUW_Details.Cache.SavedPayrollObject = CHSI.UW.MuniUW_Details.Events.PersistPayroll(ID, Index);\r\n CHSI.UW.MuniUW_Details.Calls.SavePayroll(function () {\r\n CHSI.UW.MuniUW_Details.Calls.GetPayroll();\r\n });\r\n }\r\n });\r\n\r\n\r\n $('#PayrollContainer').on('change', '.validateNewClassCode', function () {\r\n var Index = $(this).data('index'),\r\n ClassCodeFilters = {},\r\n ClassCodeResult = {};\r\n\r\n if (!$('#jxNewClassCode').val() == '') {\r\n ClassCodeFilters.State = $('#jxNewPayrollStates').val();\r\n ClassCodeFilters.ClassCode = $('#jxNewClassCode').val();\r\n ClassCodeFilters.GroupID = CHSI.UW.MuniUW_Details.Cache.GroupID;\r\n ClassCodeFilters.EffectiveDate = CHSI.UW.MuniQuote.Cache.QuoteObject.EffectiveDate;\r\n ClassCodeFilters.DescriptionIndex = $('#jxNewDescription').val();\r\n\r\n CHSI.UW.MuniUW_Details.Events.ClassCodeValidationResponse(ClassCodeFilters);\r\n }\r\n });\r\n\r\n $('#PayrollContainer').on('change', '.validateClassCode', function () {\r\n var Index = $(this).data('index'),\r\n ClassCodeFilters = {},\r\n ClassCodeResult = {};\r\n\r\n if (!$('#jxClassCodeMode_' + Index + ' > input').val() == '') {\r\n ClassCodeFilters.State = $('#jxStateMode_' + Index + ' > select').val();\r\n ClassCodeFilters.ClassCode = $('#jxClassCodeMode_' + Index + ' > input').val();\r\n ClassCodeFilters.GroupID = CHSI.UW.MuniUW_Details.Cache.GroupID;\r\n ClassCodeFilters.EffectiveDate = CHSI.UW.MuniQuote.Cache.QuoteObject.EffectiveDate;\r\n ClassCodeFilters.DescriptionIndex = $('#jxDescriptionMode_' + Index + ' > select').val();\r\n\r\n CHSI.UW.MuniUW_Details.Events.ClassCodeValidationResponse(ClassCodeFilters);\r\n }\r\n });\r\n\r\n $('#jxSaveNext').on('click', function () {\r\n CHSI.Common.Navigation.NavigateToNextTab(function () {\r\n var BatchQuoteProperties = [],\r\n QuotePropertyObject = {};\r\n\r\n QuotePropertyObject.QuoteID = CHSI.UW.MuniUW_Details.Cache.QuoteID;\r\n QuotePropertyObject.PropertyName = 'QuoteName';\r\n QuotePropertyObject.NewValue = $('#jxQuotePropQuoteName').val(); \r\n BatchQuoteProperties.push(QuotePropertyObject);\r\n\r\n QuotePropertyObject = {};\r\n QuotePropertyObject.QuoteID = CHSI.UW.MuniUW_Details.Cache.QuoteID;\r\n QuotePropertyObject.PropertyName = 'QuoteDate';\r\n QuotePropertyObject.NewValue = $('#jxQuotePropQuoteDate').val(); \r\n BatchQuoteProperties.push(QuotePropertyObject);\r\n\r\n QuotePropertyObject = {};\r\n QuotePropertyObject.QuoteID = CHSI.UW.MuniUW_Details.Cache.QuoteID;\r\n QuotePropertyObject.PropertyName = 'EffectiveDate';\r\n QuotePropertyObject.NewValue = $('#jxQuotePropEffectiveDate').val(); \r\n BatchQuoteProperties.push(QuotePropertyObject);\r\n\r\n QuotePropertyObject = {};\r\n QuotePropertyObject.QuoteID = CHSI.UW.MuniUW_Details.Cache.QuoteID;\r\n QuotePropertyObject.PropertyName = 'ExpirationDate';\r\n QuotePropertyObject.NewValue = $('#jxQuotePropExpirationDate').val(); \r\n BatchQuoteProperties.push(QuotePropertyObject);\r\n\r\n BatchQuoteProperties.push({\r\n QuoteID: CHSI.UW.MuniUW_Details.Cache.QuoteID,\r\n PropertyName: 'PolicyPeriod',\r\n NewValue: $('#jxQuotePropPolicyPeriod').val()\r\n });\r\n\r\n CHSI.UW.MuniQuote.SaveBatchQuoteProperties(BatchQuoteProperties);\r\n });\r\n });\r\n\r\n $('#jxCancel').on('click', function () {\r\n CHSI.Common.Navigation.NavigateToReturnURL();\r\n });\r\n },\r\n ValidateQuoteProperty: function (quoteproperty, value) {\r\n var Validation = [];\r\n var Valid = true;\r\n var ErrorMessage = '';\r\n var PDF = CHSI.UW.MuniUW_Details.Cache.PDF;\r\n var PDL = CHSI.UW.MuniUW_Details.Cache.PDL;\r\n var EffectiveDate = CHSI.UW.MuniQuote.Cache.QuoteObject.EffectiveDate;\r\n var ExpirationDate = CHSI.UW.MuniQuote.Cache.QuoteObject.ExpirationDate;\r\n\r\n switch (quoteproperty) {\r\n case 'EffectiveDate':\r\n var DateValue = new Date(value);\r\n EffectiveDate = value;\r\n CHSI.UW.MuniQuote.Cache.QuoteObject.EffectiveDate = value;\r\n if (DateValue < PDF || DateValue > PDL) {\r\n Valid = false;\r\n ErrorMessage = 'Effective date must be equal to or greater than ' + CHSI.Dates.GetShortDate(PDF);\r\n } else {\r\n var NewExpiration=DateValue;\r\n NewExpiration.setFullYear(DateValue.getFullYear()+1);\r\n CHSI.UW.MuniQuote.Cache.QuoteObject.ExpirationDate = CHSI.Dates.GetShortDate(NewExpiration);\r\n ExpirationDate = CHSI.UW.MuniQuote.Cache.QuoteObject.ExpirationDate;\r\n $('#jxQuotePropExpirationDate').val(CHSI.UW.MuniQuote.Cache.QuoteObject.ExpirationDate);\r\n }\r\n\r\n break;\r\n case 'ExpirationDate':\r\n var DateValue = new Date(value);\r\n ExpirationDate = value;\r\n CHSI.UW.MuniQuote.Cache.QuoteObject.ExpirationDate = value;\r\n if (DateValue < PDF || DateValue > PDL) {\r\n Valid = false;\r\n ErrorMessage = 'Expiration date must be equal to or less than ' + CHSI.Dates.GetShortDate(PDL);\r\n }\r\n break;\r\n case 'PolicyPeriod':\r\n var DateValue = value*1;\r\n if (DateValue < 1900 || DateValue > 9999) {\r\n Valid = false;\r\n ErrorMessage = 'Please enter a valid Policy Period';\r\n }\r\n break;\r\n\r\n }\r\n if (Valid == false) {\r\n var ValidationItem = { Id: quoteproperty, Valid: Valid, ErrorMessage: ErrorMessage };\r\n Validation.push(ValidationItem);\r\n }\r\n\r\n var ProRateDays = DateDiff(EffectiveDate, ExpirationDate);\r\n CHSI.UW.MuniUW_Details.Cache.ProRateDays = ProRateDays;\r\n $('#proRateDays').val(CHSI.UW.MuniUW_Details.Cache.ProRateDays);\r\n if (ProRateDays > CHSI.UW.MuniUW_Details.Cache.DateDiff) {\r\n Valid = false;\r\n ErrorMessage = 'Policy Length > 1 year';\r\n var ValidationItem = { Id: quoteproperty, Valid: Valid, ErrorMessage: ErrorMessage };\r\n Validation.push(ValidationItem); \r\n \r\n }\r\n\r\n\r\n return Validation;\r\n },\r\n ValidateUseEstimatedPayroll: function () {\r\n CHSI.UW.MuniUW_Details.Cache.UseEstimatedPayroll = false;\r\n $('#PayrollContainer').hide();\r\n if (CHSI.UW.MuniQuote.Cache.QuoteObject.CL) {\r\n for (var CL in CHSI.UW.MuniQuote.Cache.QuoteObject.CL) {\r\n if (CHSI.UW.MuniQuote.Cache.QuoteObject.CL[CL].UseEstimatedPayroll) {\r\n CHSI.UW.MuniUW_Details.Cache.UseEstimatedPayroll = true;\r\n $('#PayrollContainer').show();\r\n }\r\n }\r\n\r\n }\r\n\r\n },\r\n ConstructProducersList: function (brokers, idTag, CurrentIndex) {\r\n var HTML = [];\r\n\r\n HTML.push('');\r\n\r\n return HTML.join('');\r\n },\r\n ConstructStateList: function (states, idTag, classTag, CurrentIndex) {\r\n var HTML = [];\r\n\r\n HTML.push('');\r\n\r\n return HTML.join('');\r\n },\r\n CommissionMode: function (Index, isCancelled) {\r\n\r\n BrokerEdit = $('#jxProducerMode_' + Index),\r\n CurrentBroker = BrokerEdit.data('producer'),\r\n ProducerRepEdit = $('#jxRepAgentMode_' + Index),\r\n CurrentProducerRep = ProducerRepEdit.data('repagent'),\r\n RateEdit = $('#jxRateMode_' + Index),\r\n CurrentRate = RateEdit.data('rate'),\r\n CustomerEdit = $('#jxCustomerMode_' + Index),\r\n CurrentCustomer = CustomerEdit.data('customerno'),\r\n PrimaryEdit = $('#jxPrimaryMode_' + Index),\r\n CurrentPrimary = PrimaryEdit.data('primary'),\r\n RatingEdit = $('#jxRatingMode_' + Index),\r\n CurrentRating = RatingEdit.data('rating'),\r\n EditMode = $('#jxEditMode_' + Index),\r\n DeleteMode = $('#jxDeleteMode_' + Index),\r\n CurrentCommissionID = DeleteMode.data('commissionid');\r\n\r\n if (isCancelled == null) {\r\n isCancelled = false;\r\n }\r\n\r\n if (isCancelled) {\r\n // readonly\r\n BrokerEdit.html(CurrentBroker);\r\n RateEdit.html(CurrentRate);\r\n ProducerRepEdit.html(CurrentProducerRep);\r\n CustomerEdit.html(CurrentCustomer);\r\n PrimaryEdit.html(CurrentPrimary);\r\n RatingEdit.html(CurrentRating);\r\n EditMode.html('');\r\n DeleteMode.html('');\r\n } else {\r\n // editable\r\n if (CHSI.UW.MuniUW_Details.Cache.Producers) {\r\n var ProducerList = CHSI.UW.MuniUW_Details.Events.ConstructProducersList(CHSI.UW.MuniUW_Details.Cache.Producers, 'id=\"jxCommissionProducers_' + Index + '\"', Index);\r\n BrokerEdit.html(ProducerList);\r\n } else {\r\n CHSI.UW.MuniUW_Details.Calls.GetProducers(function (data) {\r\n var ProducerList = CHSI.UW.MuniUW_Details.Events.ConstructProducersList(data, 'id=\"jxCommissionProducers_' + Index + '\"');\r\n BrokerEdit.html(ProducerList);\r\n });\r\n }\r\n\r\n if (CurrentPrimary == 'Y') {\r\n PrimaryEdit.html('');\r\n } else {\r\n PrimaryEdit.html('');\r\n }\r\n\r\n if (CurrentRating == 'Y') {\r\n RatingEdit.html('');\r\n } else {\r\n RatingEdit.html('');\r\n }\r\n\r\n ProducerRepEdit.html('');\r\n CustomerEdit.html('');\r\n RateEdit.html('');\r\n EditMode.html('');\r\n DeleteMode.html('');\r\n }\r\n },\r\n PayrollMode: function (Index, isCancelled) {\r\n\r\n StateEdit = $('#jxStateMode_' + Index),\r\n CurrentState = StateEdit.data('state'),\r\n ClassCodeEdit = $('#jxClassCodeMode_' + Index),\r\n CurrentClassCode = ClassCodeEdit.data('classcode'),\r\n AltClassEdit = $('#jxAltClassMode_' + Index),\r\n CurrentAltClassCode = AltClassEdit.data('altclasscode'),\r\n EmployeesEdit = $('#jxEmployeesMode_' + Index),\r\n CurrentEmployees = EmployeesEdit.data('employees'),\r\n DescriptionEdit = $('#jxDescriptionMode_' + Index),\r\n CurrentDescription = DescriptionEdit.data('description'),\r\n PayrollEdit = $('#jxPayrollMode_' + Index),\r\n CurrentPayroll = PayrollEdit.data('payroll'),\r\n PayrollBaseRateEdit = $('#jxPayrollBaseRateMode_' + Index),\r\n CurrentBaseRate = PayrollBaseRateEdit.data('baserate'),\r\n GrossPremEdit = $('#jxGrossPremMode_' + Index),\r\n CurrentGrossPrem = GrossPremEdit.data('gross'),\r\n EditMode = $('#jxPayrollEditMode_' + Index),\r\n DeleteMode = $('#jxPayrollDeleteMode_' + Index),\r\n CurrentPayrollID = DeleteMode.data('detailid');\r\n\r\n if (isCancelled == null) {\r\n isCancelled = false;\r\n }\r\n\r\n if (isCancelled) {\r\n // readonly\r\n StateEdit.html(CurrentState);\r\n ClassCodeEdit.html(CurrentClassCode);\r\n AltClassEdit.html(CurrentAltClassCode);\r\n EmployeesEdit.html(CurrentEmployees);\r\n DescriptionEdit.html(CurrentDescription);\r\n PayrollEdit.html(CurrentPayroll);\r\n PayrollBaseRateEdit.html(CurrentBaseRate);\r\n GrossPremEdit.html(CurrentGrossPrem);\r\n EditMode.html('');\r\n DeleteMode.html('');\r\n } else {\r\n // editable\r\n if (CHSI.UW.MuniUW_Details.Cache.States) {\r\n var StateList = CHSI.UW.MuniUW_Details.Events.ConstructStateList(CHSI.UW.MuniUW_Details.Cache.States, 'jxPayrollStates_' + Index, 'validateClassCode', Index);\r\n StateEdit.html(StateList);\r\n } else {\r\n CHSI.UW.MuniUW_Details.Calls.GetStates(function (data) {\r\n var StateList = CHSI.UW.MuniUW_Details.Events.ConstructStateList(data, 'jxPayrollStates_' + Index, 'validateClassCode');\r\n StateEdit.html(StateList);\r\n });\r\n }\r\n CHSI.UW.MuniUW_Details.Cache.isClassCodeValid = true;\r\n ClassCodeEdit.html('');\r\n AltClassEdit.html('');\r\n EmployeesEdit.html('');\r\n //DescriptionEdit.html('');\r\n DescriptionEdit.html(function () {\r\n var HTML = [],\r\n DescriptionID = $('#jxDescriptionMode_' + Index).data('descriptionid');\r\n HTML.push('');\r\n return HTML.join('');\r\n });\r\n PayrollEdit.html('');\r\n PayrollBaseRateEdit.html('');\r\n EditMode.html('');\r\n DeleteMode.html('');\r\n }\r\n },\r\n PersistCommission: function (CommissionID, Index) {\r\n var Commission = {},\r\n QuoteObject = CHSI.UW.MuniQuote.Cache.QuoteObject;\r\n\r\n if (CommissionID == null) { // new commission\r\n Commission.QuoteID = CHSI.UW.MuniUW_Details.Cache.QuoteID;\r\n Commission.ProducerID = $('#jxNewCommissionProducers').val();\r\n Commission.ClientID = CHSI.UW.MuniUW_Details.Cache.ClientID;\r\n Commission.Status = 'Active';\r\n Commission.PolicyPeriod = QuoteObject.PolicyPeriod;\r\n Commission.EffectiveDate = QuoteObject.EffectiveDate;\r\n Commission.ExpirationDate = QuoteObject.ExpirationDate;\r\n Commission.PayCommission = 'N';\r\n Commission.ProducerCustomerID = $('#jxNewCommissionCustNo').val();\r\n Commission.ProducerCSR = null;\r\n Commission.Comments = null;\r\n Commission.CommissionRate = $('#jxNewCommissionRate').val();\r\n Commission.UseRating = $('#jxNewCommissionRating').is(':checked') ? 'Y' : 'N';\r\n Commission.PrimaryProducer = $('#jxNewCommissionPrimary').is(':checked') ? 'Y' : 'N';\r\n Commission.ProducerRep = $('#jxNewCommissionRepAgent').val();\r\n } else {\r\n Commission.CommissionID = CommissionID;\r\n Commission.QuoteID = CHSI.UW.MuniUW_Details.Cache.QuoteID;\r\n Commission.ProducerID = $('#jxCommissionProducers_' + Index).val();\r\n Commission.ClientID = CHSI.UW.MuniUW_Details.Cache.ClientID;\r\n Commission.Status = 'Active';\r\n Commission.PolicyPeriod = QuoteObject.PolicyPeriod;\r\n Commission.EffectiveDate = QuoteObject.EffectiveDate;\r\n Commission.ExpirationDate = QuoteObject.EffectiveDate;\r\n Commission.PayCommission = $('#jxEditMode_' + Index).data('paycommission');\r\n Commission.ProducerCustomerID = $('#jxEditMode_' + Index).data('producercustomerid');\r\n Commission.ProducerCSR = $('#jxEditMode_' + Index).data('producercsr');\r\n Commission.Comments = $('#jxEditMode_' + Index).data('comments');\r\n Commission.CommissionRate = $('#jxRateMode_' + Index + '> input').val();\r\n Commission.UseRating = $('#jxRatingMode_' + Index + '> input').is(':checked') ? 'Y' : 'N';\r\n Commission.PrimaryProducer = $('#jxPrimaryMode_' + Index + '> input').is(':checked') ? 'Y' : 'N';\r\n Commission.ProducerRep = $('#jxRepAgentMode_' + Index + '> input').val();\r\n }\r\n return Commission;\r\n },\r\n PersistPayroll: function (PayrollID, Index) {\r\n var Payroll = {},\r\n QuoteObject = CHSI.UW.MuniQuote.Cache.QuoteObject,\r\n ClassCodeFilters = {};\r\n\r\n if (PayrollID == null) { // new payroll\r\n Payroll.QuoteID = CHSI.UW.MuniUW_Details.Cache.QuoteID;\r\n Payroll.ClassCodeID = CHSI.UW.MuniUW_Details.Cache.ValidationObject.ClassCodeID;\r\n Payroll.AltClassCode = $('#jxNewAltClassCode').val();\r\n Payroll.State = $('#jxNewPayrollStates').val();\r\n Payroll.StartDate = QuoteObject.EffectiveDate;\r\n Payroll.EndDate = QuoteObject.ExpirationDate;\r\n Payroll.BaseRate = $('#jxNewPayrollBaseRate').val();\r\n Payroll.xMod = \"1\";\r\n Payroll.AdjustmentFactor = 0;\r\n Payroll.Commission = CHSI.UW.MuniQuote.Cache.CommissionsObject.TotalCommission;\r\n Payroll.NumberOfEE = $('#jxNewEmployees').val();\r\n Payroll.UseDescription = $('#jxNewDescrption').val();\r\n Payroll.PayrollAmount = $('#jxNewPayroll').val();\r\n Payroll.ParentDetailID = QuoteObject.parentappid;\r\n // original Rate logic - Payroll.Rate = Payroll.BaseRate * (1 + (Payroll.Commission / 100)) * (1 + (Payroll.AdjustmentFactor / 100)) * Payroll.xMod;\r\n Payroll.Rate = CHSI.Math.SafeMultiply(Payroll.BaseRate, (CHSI.Math.SafeAdd(1, (CHSI.Math.SafeDivide(Payroll.Commission, 100)))), (CHSI.Math.SafeAdd(1, (CHSI.Math.SafeDivide(Payroll.AdjustmentFactor, 100)))), Payroll.xMod);\r\n } else {\r\n Payroll.DetailID = $('#jxPayrollEditMode_' + Index).data('detailid');\r\n Payroll.QuoteID = CHSI.UW.MuniUW_Details.Cache.QuoteID;\r\n Payroll.ClassCodeID = $('#jxClassCodeMode_' + Index).data('classcodeid');\r\n Payroll.State = $('#jxPayrollStates_' + Index).val();\r\n Payroll.AltClassCode = $('#jxAltClassMode_' + Index + ' > input').val();\r\n Payroll.StartDate = QuoteObject.EffectiveDate;\r\n Payroll.EndDate = QuoteObject.ExpirationDate;\r\n Payroll.BaseRate = $('#jxPayrollBaseRateMode_' + Index + ' > input').val();\r\n Payroll.xMod = $('#jxPayrollEditMode_' + Index).data('xmod');\r\n Payroll.AdjustmentFactor = $('#jxPayrollEditMode_' + Index).data('adjustmentfactor');\r\n Payroll.Commission = CHSI.UW.MuniQuote.Cache.CommissionsObject.TotalCommission;\r\n Payroll.NumberOfEE = $('#jxEmployeesMode_' + Index + ' > input').val();\r\n Payroll.UseDescription = $('#jxDescriptionMode_' + Index + ' > select').val();\r\n Payroll.PayrollAmount = $('#jxPayrollMode_' + Index + ' > input').val();\r\n Payroll.ParentDetailID = QuoteObject.parentappid;\r\n Payroll.Rate = CHSI.Math.SafeMultiply(Payroll.BaseRate, (CHSI.Math.SafeAdd(1, (CHSI.Math.SafeDivide(Payroll.Commission, 100)))), (CHSI.Math.SafeAdd(1, (CHSI.Math.SafeDivide(Payroll.AdjustmentFactor, 100)))), Payroll.xMod);\r\n\r\n }\r\n return Payroll;\r\n },\r\n ClassCodeValidationResponse: function (ClassCodeFilters) {\r\n CHSI.UW.MuniUW_Details.Calls.ValidateClassCode(ClassCodeFilters, function (data) {\r\n ClassCodeResult = data;\r\n\r\n var ErrorMsg = $('#jxPayrollErrorMessage');\r\n\r\n if (ClassCodeResult.Description == 'That is not a valid Class Code') {\r\n ErrorMsg.css('color', 'red');\r\n ErrorMsg.text(ClassCodeResult.Description);\r\n ErrorMsg.show();\r\n CHSI.UW.MuniUW_Details.Cache.isClassCodeValid = false;\r\n } else {\r\n ErrorMsg.css('color', 'green');\r\n ErrorMsg.text(ClassCodeResult.Description);\r\n ErrorMsg.show();\r\n CHSI.UW.MuniUW_Details.Cache.isClassCodeValid = true;\r\n }\r\n });\r\n }\r\n },\r\n\r\n Calls: {\r\n ValidateClassCode: function (ClassCodeFilters, successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/UW/ClassCode/AdvancedGetDescriptionByClassCode?ClassCode=' + ClassCodeFilters.ClassCode + '&GroupID=' + ClassCodeFilters.GroupID + '&EffectiveDate=' + ClassCodeFilters.EffectiveDate + '&State=' + ClassCodeFilters.State + '&DescriptionIndex=' + ClassCodeFilters.DescriptionIndex;\r\n Options.Success = function (data) {\r\n if (successFunction) {\r\n CHSI.UW.MuniUW_Details.Cache.ValidationObject = data;\r\n successFunction(data);\r\n } else {\r\n CHSI.UW.MuniUW_Details.Cache.ValidationObject = data;\r\n }\r\n };\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n AddQuoteCoverageLine: function (QuoteID, CoverageLineID) {\r\n\r\n var Success = function (e) {\r\n CHSI.UW.MuniUW_Details.Calls.GetQuoteDetails(QuoteID);\r\n }\r\n\r\n CHSI.UW.MuniQuote.AddQuoteCoverageLine(QuoteID, CoverageLineID, Success);\r\n },\r\n GetQuoteDetails: function (QuoteID) {\r\n if (!QuoteID) {\r\n QuoteID = CHSI.UW.MuniUW_Details.Cache.QuoteID;\r\n }\r\n var Success = function (e) {\r\n console.log('Getting Quote Details');\r\n CHSI.UW.MuniQuote.Cache.QuoteList = e;\r\n CHSI.UW.MuniQuote.Cache.CoverageLineObject = e[0];\r\n CHSI.UW.MuniQuote.Cache.QuoteObject = e[0];\r\n if (CHSI.UW.MuniQuote.Cache.QuoteObject.QuoteStatus && CHSI.UW.MuniQuote.Cache.QuoteObject.QuoteStatus.Editable == 'N') {\r\n CHSI.UW.MuniUW_Details.Cache.Editable = 'N';\r\n }\r\n \r\n CHSI.UW.MuniUW_Details.Cache.GroupID = CHSI.UW.MuniQuote.Cache.QuoteObject.GroupID;\r\n CHSI.UW.MuniQuote.Cache.QuoteObject.EffectiveDate = CHSI.UW.MuniQuote.Cache.QuoteObject.EffectiveDate;\r\n CHSI.UW.MuniQuote.Cache.QuoteObject.ExpirationDate = CHSI.UW.MuniQuote.Cache.QuoteObject.ExpirationDate;\r\n CHSI.UW.MuniUW_Details.Binds.BindCoverageLines();\r\n CHSI.UW.MuniUW_Details.Binds.BindQuoteDetails();\r\n CHSI.UW.MuniUW_Details.Events.ValidateUseEstimatedPayroll();\r\n if (CHSI.UW.MuniUW_Details.Cache.UseEstimatedPayroll) {\r\n CHSI.UW.MuniUW_Details.Calls.GetPayroll();\r\n }\r\n\r\n CHSI.UW.MuniUW_Details.Calls.GetUWRule('PDF', function (e) { if (e && e.RuleValue) { CHSI.UW.MuniUW_Details.Cache.PDF = e.RuleValue; } });\r\n CHSI.UW.MuniUW_Details.Calls.GetUWRule('PDL', function (e) { if (e && e.RuleValue) { CHSI.UW.MuniUW_Details.Cache.PDL = e.RuleValue; } });\r\n CHSI.UW.MuniUW_Details.Calls.GetUWRule('PDMax', function (e) { if (e && e.RuleValue) { CHSI.UW.MuniUW_Details.Cache.PDMax = e.RuleValue; } });\r\n\r\n\r\n var SecOptions = {},\r\n isVerified = false;\r\n\r\n SecOptions.PermissionID = 14;\r\n SecOptions.Success = function (e) {\r\n isVerified = e;\r\n console.log('has security permission 14');\r\n if (isVerified) {\r\n CHSI.UW.MuniQuote.MenuController(CHSI.UW.MuniQuote.Cache.CoverageLineObject, '#jxMenuContainer');\r\n }\r\n }\r\n CHSI.Security.HasPermission(SecOptions);\r\n \r\n \r\n \r\n }\r\n\r\n CHSI.UW.MuniQuote.GetQuoteDetails(QuoteID, Success);\r\n\r\n },\r\n GetProducers: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/CRM/Producer/GetProducerByGroup?GroupID=' + CHSI.UW.MuniUW_Details.Cache.GroupID;\r\n Options.Success = function (data) {\r\n if (successFunction) {\r\n successFunction(data);\r\n CHSI.UW.MuniUW_Details.Cache.Producers = data;\r\n } else {\r\n CHSI.UW.MuniUW_Details.Cache.Producers = data;\r\n }\r\n };\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n GetStates: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/UW/ClassCode/GetClassCodeStates?GroupName=' + CHSI.UW.MuniUW_Details.Cache.GroupID;\r\n Options.Success = function (data) {\r\n if (successFunction) {\r\n successFunction(data);\r\n CHSI.UW.MuniUW_Details.Cache.States = data;\r\n } else {\r\n CHSI.UW.MuniUW_Details.Cache.States = data;\r\n }\r\n };\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n GetCommissions: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/UW/ClientCommissions/GetQuoteCommissions?ClientID=' + CHSI.UW.MuniUW_Details.Cache.ClientID + '&QuoteID=' + CHSI.UW.MuniUW_Details.Cache.QuoteID;\r\n Options.Success = function (data) {\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n\r\n var totalCommission = 0,\r\n totalRatableCommission = 0;\r\n for (var index = 0; index < data.length; index++) {\r\n totalCommission = CHSI.Math.SafeAdd(data[index].CommissionRate, totalCommission);\r\n CommissionRate = data[index].CommissionRate;\r\n\r\n if (data[index].UseRating == 'Y') {\r\n totalRatableCommission = CHSI.Math.SafeAdd(data[index].CommissionRate, totalRatableCommission);\r\n }\r\n }\r\n\r\n CHSI.UW.MuniQuote.Cache.CommissionsObject = data;\r\n CHSI.UW.MuniQuote.Cache.CommissionsObject.TotalCommission = totalCommission;\r\n CHSI.UW.MuniQuote.Cache.CommissionsObject.TotalRatableCommission = totalRatableCommission;\r\n CHSI.UW.MuniQuote.SaveQuoteDetail(CHSI.UW.MuniUW_Details.Cache.QuoteID, 4, totalCommission);\r\n CHSI.UW.MuniQuote.SaveQuoteDetail(CHSI.UW.MuniUW_Details.Cache.QuoteID, 5, totalRatableCommission);\r\n CHSI.UW.MuniUW_Details.Binds.BindCommissions();\r\n };\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n GetPayroll: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/UW/MonthlyActualPayrollQuote/Get?QuoteID=' + CHSI.UW.MuniUW_Details.Cache.QuoteID;\r\n Options.Success = function (data) {\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n\r\n var totalEEs = 0,\r\n totalPayroll = 0,\r\n totalGrossPrem = 0;\r\n for (var index = 0; index < data.length; index++) {\r\n totalEEs += data[index].NumberOfEE;\r\n totalPayroll += data[index].PayrollAmount;\r\n totalGrossPrem += CHSI.UW.MuniQuote.CalculateGrossPrem(data[index].PayrollAmount, data[index].BaseRate);\r\n }\r\n\r\n CHSI.UW.MuniUW_Details.Cache.PayrollObject = data;\r\n CHSI.UW.MuniUW_Details.Cache.PayrollObject.TotalEmployees = totalEEs;\r\n CHSI.UW.MuniUW_Details.Cache.PayrollObject.TotalPayroll = totalPayroll;\r\n CHSI.UW.MuniUW_Details.Cache.PayrollObject.TotalGrossPremium = totalGrossPrem;\r\n CHSI.UW.MuniQuote.SaveQuoteDetail(CHSI.UW.MuniUW_Details.Cache.QuoteID, 1, totalPayroll);\r\n CHSI.UW.MuniQuote.SaveQuoteDetail(CHSI.UW.MuniUW_Details.Cache.QuoteID, 6, totalGrossPrem);\r\n CHSI.UW.MuniUW_Details.Binds.BindPayroll();\r\n };\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n DeleteCoverageLine: function (QuoteID, ProductLineID) {\r\n\r\n var Success = function (e) {\r\n CHSI.UW.MuniUW_Details.Calls.GetQuoteDetails(QuoteID);\r\n }\r\n\r\n CHSI.UW.MuniQuote.DeleteQuoteCoverageLine(QuoteID, ProductLineID, Success);\r\n },\r\n DeleteCommission: function (ID, successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/UW/ClientCommissions/DeleteClientCommissionByCommissionID?CommissionID=' + ID;\r\n Options.Success = function (data) {\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n };\r\n CHSI.Common.Ajax.Delete(Options);\r\n },\r\n DeletePayroll: function (ID, successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/UW/MonthlyActualPayrollQuote/Delete?DetailID=' + ID;\r\n Options.Success = function (data) {\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n };\r\n CHSI.Common.Ajax.Delete(Options);\r\n },\r\n SaveQuoteProperty: function (PropertyName, NewValue, successFunction) {\r\n var Success = function (e) {\r\n CHSI.UW.MuniUW_Details.Calls.GetQuoteDetails(CHSI.UW.MuniUW_Details.Cache.QuoteID);\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n }\r\n\r\n CHSI.UW.MuniQuote.SaveQuoteProperty(PropertyName, NewValue, Success);\r\n },\r\n SaveCommission: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/UW/ClientCommissions/SaveClientCommission';\r\n Options.Data = CHSI.UW.MuniUW_Details.Cache.SavedCommissionObject;\r\n Options.Success = function (data) {\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n CHSI.UW.MuniUW_Details.Cache.NewestCommissionID = data;\r\n };\r\n CHSI.Common.Ajax.Post(Options);\r\n },\r\n SavePayroll: function (successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/UW/MonthlyActualPayrollQuote/Save';\r\n Options.Data = CHSI.UW.MuniUW_Details.Cache.SavedPayrollObject;\r\n Options.Success = function (data) {\r\n if (successFunction) {\r\n successFunction(data);\r\n }\r\n CHSI.UW.MuniUW_Details.Cache.NewestPayrollID = data;\r\n };\r\n CHSI.Common.Ajax.Post(Options);\r\n },\r\n GetUWRule: function (Code, Success) {\r\n var QuoteType = CHSI.UW.MuniQuote.Cache.QuoteObject.QuoteType;\r\n var GroupID = CHSI.UW.MuniQuote.Cache.QuoteObject.GroupID;\r\n var PolicyPeriod = CHSI.UW.MuniQuote.Cache.QuoteObject.PolicyPeriod;\r\n CHSI.UW.MuniQuote.GetUWRule(QuoteType, GroupID, PolicyPeriod, Code, Success);\r\n }\r\n }\r\n\r\n}\r\n","CHSI.UW.MuniUW_Finish = {\r\n Init: function (QuoteID) {\r\n this.Cache.QuoteID = QuoteID;\r\n\r\n this.Templates.Premium = CHSITemplates.Template_QuotePremium;\r\n this.Templates.Billing = CHSITemplates.Template_QuotePremium_Billing;\r\n this.Templates.BillingSchedule = CHSITemplates.Template_QuotePremium_BillingSchedule;\r\n \r\n this.Calls.GetQuoteDetails(QuoteID);\r\n this.Events.Global();\r\n \r\n },\r\n Templates: {},\r\n Cache: {\r\n QuoteObject: {},\r\n InfoObject: {},\r\n QuoteID: null,\r\n BRULE: null,\r\n PDMax: 0,\r\n MinPR: 0,\r\n CalcD: 'Modified',\r\n DuDay: 1,\r\n EQPay:'N',\r\n AllowShortBillingMonthsInQuote:'N',\r\n FirstBillingOffset: 0,\r\n QuoteDetailArr: [],\r\n BillingObject: {},\r\n BillingRules: [],\r\n BillingType: 'Installment',\r\n Percentage: false,\r\n FirstPaymentDate: null,\r\n BillingPeriod:'Monthly',\r\n NumberOfPayments: 1,\r\n DepositPercentage: 0,\r\n BillingIncrement: 1,\r\n CalcDepositAmount: 0,\r\n PaymentTotal: 0,\r\n OnePayment: 0,\r\n DepositAmount:0,\r\n BillingSchedule: [],\r\n Fday: 1,\r\n Editable:'Y'\r\n\r\n\r\n\r\n },\r\n Binds: {\r\n BindQuote: function () {\r\n \r\n var PolicyTotal = 0;\r\n var PolicyTotalE = 0;\r\n var ProRateDays = 365;\r\n if (CHSI.UW.MuniQuote.Cache.QuoteList.length > 1 && CHSI.UW.MuniQuote.Cache.QuoteObject.ParentQuoteID) {\r\n ProRateDays = DateDiff(CHSI.UW.MuniQuote.Cache.QuoteList[0].EffectiveDate, CHSI.UW.MuniQuote.Cache.QuoteList[0].ExpirationDate);\r\n PolicyTotal = CHSI.UW.MuniUW_Finish.Events.CalculatePolicyTotal(CHSI.UW.MuniQuote.Cache.QuoteList[1]);\r\n PolicyTotalE = CHSI.UW.MuniUW_Finish.Events.CalculatePolicyTotal(CHSI.UW.MuniQuote.Cache.QuoteList[0]);\r\n PolicyTotalE = PolicyTotalE * (ProRateDays/365);\r\n CHSI.UW.MuniQuote.Cache.QuoteList[0].PolicyTotal = PolicyTotalE; \r\n } else {\r\n PolicyTotal = CHSI.UW.MuniUW_Finish.Events.CalculatePolicyTotal(CHSI.UW.MuniQuote.Cache.QuoteObject);\r\n }\r\n CHSI.UW.MuniQuote.Cache.QuoteObject.PolicyTotalE = PolicyTotalE.toFixed(2);\r\n CHSI.UW.MuniQuote.Cache.QuoteObject.PolicyTotal = PolicyTotal;\r\n CHSI.UW.MuniQuote.Cache.QuoteObject.PolicyTotalD = PolicyTotal - PolicyTotalE;\r\n CHSI.UW.MuniQuote.Cache.QuoteObject.PolicyTotalD = CHSI.UW.MuniQuote.Cache.QuoteObject.PolicyTotalD.toFixed(2);\r\n $('#jxPremium').html(CHSI.UW.MuniUW_Finish.Templates.Premium(CHSI.UW.MuniQuote.Cache.QuoteObject));\r\n restart = true;\r\n sorttable.init();\r\n $('.Collapsable').hide();\r\n CHSI.UW.MuniQuote.DisablePage(CHSI.UW.MuniUW_Finish.Cache.Editable);\r\n },\r\n\r\n Billing: function () {\r\n $('#jxBilling').html(CHSI.UW.MuniUW_Finish.Templates.Billing(CHSI.UW.MuniUW_Finish.Cache.BillingObject));\r\n jQuery('.DatePicker').datepicker({ showOn: \"both\", buttonImage: \"/images/icons/cal.gif\", buttonImageOnly: true });\r\n if ($('#jxBillingType').val() == 'Installment') {\r\n $('.Installment').show();\r\n } else {\r\n $('.Installment').hide();\r\n $('#lblBillingScheduleTitle').hide();\r\n }\r\n CHSI.UW.MuniQuote.DisablePage(CHSI.UW.MuniUW_Finish.Cache.Editable);\r\n },\r\n\r\n BillingSchedule: function () {\r\n $('#jxBillingSchedule').html(CHSI.UW.MuniUW_Finish.Templates.BillingSchedule({ BillingSchedule: CHSI.UW.MuniUW_Finish.Cache.BillingSchedule }));\r\n if ($('#jxBillingType').val() == 'Installment') {\r\n $('#lblBillingScheduleTitle').show();\r\n } else { \r\n $('#lblBillingScheduleTitle').hide();\r\n }\r\n \r\n restart = true;\r\n sorttable.init();\r\n CHSI.UW.MuniQuote.DisablePage(CHSI.UW.MuniUW_Finish.Cache.Editable);\r\n }\r\n },\r\n Events: {\r\n Global: function () {\r\n\r\n $('#jxBilling').on('click', '#jxDepositPercent', function () { \r\n if ($(this).is(':checked')) {\r\n $('#lblPercentageSign').html('%'); \r\n } else {\r\n $('#lblPercentageSign').html(''); \r\n }\r\n CHSI.UW.MuniUW_Finish.Events.RefreshGUI();\r\n CHSI.UW.MuniUW_Finish.Events.SaveQuoteDetails(function () {\r\n CHSI.UW.MuniUW_Finish.Calls.SavePaymentSchedules(function () {\r\n });\r\n });\r\n });\r\n\r\n\r\n $('#jxBilling').on('change', '#jxBillingType', function () {\r\n CHSI.UW.MuniUW_Finish.Cache.BillingType = $('#jxBillingType').val();\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.BillingType = CHSI.UW.MuniUW_Finish.Cache.BillingType;\r\n CHSI.UW.MuniUW_Finish.Events.BuildBillingRules(CHSI.UW.MuniUW_Finish.Cache.BRULE);\r\n CHSI.UW.MuniUW_Finish.Events.CalcPercentage();\r\n CHSI.UW.MuniUW_Finish.Binds.Billing();\r\n CHSI.UW.MuniUW_Finish.Binds.BillingSchedule();\r\n CHSI.UW.MuniUW_Finish.Events.SaveQuoteDetails(function () {\r\n CHSI.UW.MuniUW_Finish.Calls.SavePaymentSchedules(function () {\r\n });\r\n });\r\n \r\n });\r\n\r\n \r\n $('#jxBilling').on('change', '.AutoRefresh', function () {\r\n CHSI.UW.MuniUW_Finish.Events.RefreshGUI();\r\n CHSI.UW.MuniUW_Finish.Events.SaveQuoteDetails(function () {\r\n CHSI.UW.MuniUW_Finish.Calls.SavePaymentSchedules(function () {\r\n });\r\n });\r\n });\r\n\r\n $('#jxBilling').on('click', '#jxSave', function () {\r\n CHSI.UW.MuniUW_Finish.Events.SaveQuoteDetails();\r\n CHSI.UW.MuniUW_Finish.Calls.SavePaymentSchedules();\r\n\r\n });\r\n \r\n\r\n $('#jxBilling').on('change', '#jxBillingPeriod', function () {\r\n CHSI.UW.MuniUW_Finish.Cache.Percentage = true; \r\n CHSI.UW.MuniUW_Finish.Cache.BillingPeriod = $('#jxBillingPeriod').val();\r\n var BP = $('#jxBillingPeriod').find('option:selected');\r\n CHSI.UW.MuniUW_Finish.Cache.BillingIncrement = BP.data('billingincrement');\r\n CHSI.UW.MuniUW_Finish.Cache.DepositPercentage = BP.data('depositpercentage');\r\n CHSI.UW.MuniUW_Finish.Cache.NumberOfPayments= BP.data('numberofpayments'); \r\n CHSI.UW.MuniUW_Finish.Events.LoadDataFromCache();\r\n CHSI.UW.MuniUW_Finish.Events.RefreshGUI();\r\n CHSI.UW.MuniUW_Finish.Events.SaveQuoteDetails(function () {\r\n CHSI.UW.MuniUW_Finish.Calls.SavePaymentSchedules(function () { \r\n });\r\n });\r\n \r\n });\r\n \r\n $('#jxSaveNext').on('click', function () {\r\n CHSI.UW.MuniUW_Finish.Events.SaveQuoteDetails(function () {\r\n CHSI.UW.MuniUW_Finish.Calls.SavePaymentSchedules(function () {\r\n CHSI.Common.Navigation.NavigateToNextTab();\r\n });\r\n });\r\n }); \r\n\r\n $('#jxCancel').on('click', function () {\r\n CHSI.Common.Navigation.NavigateToReturnURL();\r\n });\r\n },\r\n\r\n CalculatePolicyTotal: function (Quote) {\r\n var PT = 0;\r\n for(var key in Quote.Vars) {\r\n\r\n var Variable = Quote.Vars[key];\r\n\r\n if (Variable.includeInPolicyTotal) {\r\n var Value = Variable.GetValue;\r\n PT = CHSI.Math.SafeAdd(PT, Value);\r\n }\r\n }\r\n return PT;\r\n },\r\n RefreshPage: function () {\r\n CHSI.UW.MuniUW_Finish.Calls.GetQuoteDetails(CHSI.UW.MuniUW_Finish.Cache.QuoteID)\r\n },\r\n\r\n RefreshGUI: function () { \r\n CHSI.UW.MuniUW_Finish.Events.LoadDataToCache();\r\n CHSI.UW.MuniUW_Finish.Events.CalcPercentage();\r\n CHSI.UW.MuniUW_Finish.Binds.Billing();\r\n CHSI.UW.MuniUW_Finish.Binds.BillingSchedule();\r\n },\r\n BuildBillingRules: function (strRule) {\r\n CHSI.UW.MuniUW_Finish.Cache.BillingRules = [];\r\n strRules = strRule.split('|');\r\n for (var i = 0; i < strRules.length; i++) {\r\n strBRules = strRules[i].split(',');\r\n var BillingRule = {};\r\n BillingRule.BillingType = strBRules[0];\r\n BillingRule.BillingRuleName = strBRules[1];\r\n BillingRule.BillingIncrement = strBRules[2];\r\n BillingRule.DepositPercentage = strBRules[3];\r\n BillingRule.NumberOfPayments= strBRules[4];\r\n if (CHSI.UW.MuniUW_Finish.Cache.BillingType.substring(0, 1) == BillingRule.BillingType) {\r\n CHSI.UW.MuniUW_Finish.Cache.BillingRules.push(BillingRule);\r\n } \r\n \r\n }\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.BillingRules = CHSI.UW.MuniUW_Finish.Cache.BillingRules; \r\n },\r\n\r\n LoadDataFromCache:function(){\r\n $('#jxBillingIncrement').val(CHSI.UW.MuniUW_Finish.Cache.BillingIncrement);\r\n $('#jxDepositPercentage').val(CHSI.UW.MuniUW_Finish.Cache.DepositPercentage);\r\n $('#jxNumberOfPayments').val(CHSI.UW.MuniUW_Finish.Cache.NumberOfPayments);\r\n $('#jxBillingType').val(CHSI.UW.MuniUW_Finish.Cache.BillingType);\r\n $('#jxPaymentDate').val(CHSI.UW.MuniUW_Finish.Cache.FirstPaymentDate);\r\n $('#jxBillingPeriod').val(CHSI.UW.MuniUW_Finish.Cache.BillingPeriod);\r\n $('#jxDepositPercent').prop('checked', CHSI.UW.MuniUW_Finish.Cache.Percentage); \r\n \r\n },\r\n LoadDataToCache: function () {\r\n CHSI.UW.MuniUW_Finish.Cache.BillingType = $('#jxBillingType').val();\r\n CHSI.UW.MuniUW_Finish.Cache.FirstPaymentDate = $('#jxPaymentDate').val();\r\n CHSI.UW.MuniUW_Finish.Cache.Percentage = $('#jxDepositPercent').is(':checked');\r\n CHSI.UW.MuniUW_Finish.Cache.BillingIncrement = $('#jxBillingIncrement').val();\r\n CHSI.UW.MuniUW_Finish.Cache.BillingPeriod = $('#jxBillingPeriod').val();\r\n CHSI.UW.MuniUW_Finish.Cache.NumberOfPayments = $('#jxNumberOfPayments').val();\r\n CHSI.UW.MuniUW_Finish.Cache.DepositPercentage = $('#jxDepositPercentage').val(); \r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.BillingPeriod = CHSI.UW.MuniUW_Finish.Cache.BillingPeriod;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.BillingIncrement = CHSI.UW.MuniUW_Finish.Cache.BillingIncrement;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.DepositPercentage = CHSI.UW.MuniUW_Finish.Cache.DepositPercentage;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.NumberOfPayments = CHSI.UW.MuniUW_Finish.Cache.NumberOfPayments;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.Percentage = CHSI.UW.MuniUW_Finish.Cache.Percentage;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.FirstPaymentDate = CHSI.UW.MuniUW_Finish.Cache.FirstPaymentDate;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.BillingType = CHSI.UW.MuniUW_Finish.Cache.BillingType;\r\n },\r\n SaveQuoteDetails: function (successFunction) {\r\n CHSI.UW.MuniUW_Finish.Events.LoadDataToCache();\r\n if (CHSI.UW.MuniUW_Finish.Cache.DepositAmount == null) { CHSI.UW.MuniUW_Finish.Events.RefreshGUI(); };\r\n CHSI.UW.MuniQuote.SaveQuoteDetail(CHSI.UW.MuniUW_Finish.Cache.QuoteID, 28, CHSI.UW.MuniQuote.Cache.QuoteObject.PolicyTotal, function () {\r\n CHSI.UW.MuniQuote.SaveQuoteDetail(CHSI.UW.MuniUW_Finish.Cache.QuoteID, 29, CHSI.UW.MuniUW_Finish.Cache.BillingType, function () {\r\n if (CHSI.UW.MuniUW_Finish.Cache.BillingPeriod == null) {\r\n alert('Billing Period Rule is not currently configured properly. Please configure this item correctly to continue.');\r\n CHSI.Common.CancelNavigation = true;\r\n } else {\r\n CHSI.UW.MuniQuote.SaveQuoteDetail(CHSI.UW.MuniUW_Finish.Cache.QuoteID, 30, CHSI.UW.MuniUW_Finish.Cache.BillingPeriod);\r\n CHSI.Common.CancelNavigation = false;\r\n }\r\n CHSI.UW.MuniQuote.SaveQuoteDetail(CHSI.UW.MuniUW_Finish.Cache.QuoteID, 31, CHSI.UW.MuniUW_Finish.Cache.BillingIncrement, function () {\r\n var strPercent = \"entered\";\r\n if (CHSI.UW.MuniUW_Finish.Cache.BillingObject.Percentage) {\r\n strPercent = \"percent\";\r\n }\r\n CHSI.UW.MuniQuote.SaveQuoteDetail(CHSI.UW.MuniUW_Finish.Cache.QuoteID, 32, strPercent, function () {\r\n CHSI.UW.MuniQuote.SaveQuoteDetail(CHSI.UW.MuniUW_Finish.Cache.QuoteID, 33, CHSI.UW.MuniUW_Finish.Cache.DepositPercentage, function () {\r\n CHSI.UW.MuniQuote.SaveQuoteDetail(CHSI.UW.MuniUW_Finish.Cache.QuoteID, 34, CHSI.UW.MuniUW_Finish.Cache.DepositAmount, function () {\r\n CHSI.UW.MuniQuote.SaveQuoteDetail(CHSI.UW.MuniUW_Finish.Cache.QuoteID, 35, CHSI.UW.MuniUW_Finish.Cache.NumberOfPayments, function () {\r\n CHSI.UW.MuniQuote.SaveQuoteDetail(CHSI.UW.MuniUW_Finish.Cache.QuoteID, 36, CHSI.UW.MuniUW_Finish.Cache.OnePayment, function () { \r\n CHSI.UW.MuniQuote.SaveQuoteDetail(CHSI.UW.MuniUW_Finish.Cache.QuoteID, 40, CHSI.UW.MuniUW_Finish.Cache.FirstPaymentDate, function () {\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n });\r\n\r\n });\r\n });\r\n });\r\n });\r\n });\r\n });\r\n });\r\n });\r\n\r\n \r\n },\r\n\r\n GetNextDate: function (CounterDate,Index) {\r\n dtCounterDate = new Date(CounterDate); \r\n switch (CHSI.UW.MuniUW_Finish.Cache.BillingPeriod) {\r\n case 'Weekly':\r\n dtCounterDate = CHSI.Dates.addDays(dtCounterDate, 7 * CHSI.UW.MuniUW_Finish.Cache.BillingIncrement); \r\n break;\r\n case 'Quarterly':\r\n if(Index==0){\r\n dtCounterDate.setMonth(dtCounterDate.getMonth() + 3);\r\n var cc=0;\r\n while (dtCounterDate.getDate() != CHSI.UW.MuniUW_Finish.Cache.DuDay && cc < 31) {\r\n dtCounterDate.setDate((dtCounterDate.getDate() + 1));\r\n cc++;\r\n }\r\n }else{\r\n dtCounterDate.setMonth(dtCounterDate.getMonth() + 3* CHSI.UW.MuniUW_Finish.Cache.BillingIncrement);\r\n } \r\n break;\r\n case 'Semi-Annual':\r\n if(Index==0){\r\n if (dtCounterDate.getMonth() < 6) {\r\n dtCounterDate = new Date('7/1/' + dtCounterDate.getFullYear());\r\n } else {\r\n dtCounterDate = new Date('1/1/' + (dtCounterDate.getFullYear() + 1));\r\n }\r\n }else{\r\n dtCounterDate.setMonth(dtCounterDate.getMonth() + 6 * CHSI.UW.MuniUW_Finish.Cache.BillingIncrement);\r\n }\r\n break;\r\n case 'Annual':\r\n if(Index==0){\r\n dtCounterDate = new Date((dtCounterDate.getMonth() + 1) + '/1/' + (dtCounterDate.getFullYear() + 1));\r\n }else{\r\n dtCounterDate.setMonth(dtCounterDate.getMonth() + 12 * CHSI.UW.MuniUW_Finish.Cache.BillingIncrement);\r\n }\r\n break;\r\n default:\r\n if (Index == 0) {\r\n dtCounterDate = new Date((dtCounterDate.getMonth() + 1) + '/' + CHSI.UW.MuniUW_Finish.Cache.DuDay + '/' + dtCounterDate.getFullYear());\r\n if (CHSI.UW.MuniUW_Finish.Cache.AllowShortBillingMonthsInQuote == 'Y') {\r\n dtCounterDate.setMonth(dtCounterDate.getMonth() + 1);\r\n } else {\r\n if (CHSI.UW.MuniUW_Finish.Cache.Fday > 14) {\r\n dtCounterDate.setMonth(dtCounterDate.getMonth() + 2);\r\n } else {\r\n dtCounterDate.setMonth(dtCounterDate.getMonth() + 1);\r\n }\r\n\r\n }\r\n }else{\r\n dtCounterDate.setMonth(dtCounterDate.getMonth() + 1 * CHSI.UW.MuniUW_Finish.Cache.BillingIncrement);\r\n }\r\n\r\n break;\r\n }\r\n \r\n return CHSI.Dates.GetShortDate(dtCounterDate);\r\n }, \r\n CalcPercentage: function () {\r\n var PolicyTotal = CHSI.UW.MuniQuote.Cache.QuoteObject.PolicyTotal; \r\n var CalcDepositAmount = 0;\r\n if (CHSI.UW.MuniUW_Finish.Cache.Percentage) {\r\n var mulCalcDeposit= CHSI.Math.SafeMultiply(PolicyTotal, CHSI.UW.MuniUW_Finish.Cache.DepositPercentage);\r\n CalcDepositAmount = CHSI.Math.SafeDivide(mulCalcDeposit, 100); \r\n } else { \r\n CalcDepositAmount = CHSI.UW.MuniUW_Finish.Cache.DepositPercentage;\r\n }\r\n \r\n CHSI.UW.MuniUW_Finish.Cache.CalcDepositAmount = CalcDepositAmount; \r\n CHSI.UW.MuniUW_Finish.Cache.DepositAmount = CalcDepositAmount*1;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.DepositAmount = CalcDepositAmount;\r\n CHSI.UW.MuniUW_Finish.Cache.PaymentTotal = CHSI.Math.SafeSubtract(PolicyTotal, CalcDepositAmount);\r\n var CounterDate = CHSI.UW.MuniUW_Finish.Cache.FirstPaymentDate;\r\n var CounterAmount = CHSI.UW.MuniUW_Finish.Cache.DepositAmount;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingSchedule = []; \r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.PaymentTotal = CHSI.UW.MuniUW_Finish.Cache.PaymentTotal;\r\n if ((CHSI.UW.MuniUW_Finish.Cache.NumberOfPayments*1)) {\r\n CHSI.UW.MuniUW_Finish.Cache.OnePayment = 1*CHSI.Math.SafeDivide(CHSI.UW.MuniUW_Finish.Cache.PaymentTotal, CHSI.UW.MuniUW_Finish.Cache.NumberOfPayments); \r\n CHSI.UW.MuniUW_Finish.Cache.OnePayment = CHSI.UW.MuniUW_Finish.Cache.OnePayment.toFixed(2) * 1;\r\n CHSI.UW.MuniUW_Finish.Cache.DepositAmount = CHSI.UW.MuniUW_Finish.Cache.DepositAmount.toFixed(2) * 1;\r\n var OneMultNum = CHSI.Math.SafeMultiply(CHSI.UW.MuniUW_Finish.Cache.OnePayment, CHSI.UW.MuniUW_Finish.Cache.NumberOfPayments);\r\n var Surplus = CHSI.Math.SafeSubtract(PolicyTotal, OneMultNum);\r\n Surplus = CHSI.Math.SafeSubtract(Surplus * 1, CHSI.UW.MuniUW_Finish.Cache.DepositAmount);\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.PaymentAmount = CHSI.UW.MuniUW_Finish.Cache.OnePayment;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.DepositAmount = CHSI.UW.MuniUW_Finish.Cache.DepositAmount; \r\n \r\n if(CHSI.UW.MuniUW_Finish.Cache.EQPay=='N'){\r\n CounterAmount = Surplus.toFixed(2)*1; \r\n } else {\r\n CounterAmount = 0;\r\n }\r\n }\r\n var j = 0;\r\n if (CHSI.UW.MuniUW_Finish.Cache.DepositAmount > 0) {\r\n var Deposit = {};\r\n Deposit.UWPaymentScheduleID = 0;\r\n Deposit.QuoteID = CHSI.UW.MuniUW_Finish.Cache.QuoteID;\r\n Deposit.BillDate = CounterDate;\r\n Deposit.BillAmount = CHSI.UW.MuniUW_Finish.Cache.DepositAmount * 1 + CounterAmount;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingSchedule.push(Deposit);\r\n CounterDate = CHSI.UW.MuniUW_Finish.Events.GetNextDate(CounterDate, j);\r\n CounterAmount = CHSI.UW.MuniUW_Finish.Cache.OnePayment;\r\n j++;\r\n } else {\r\n CounterAmount = CHSI.UW.MuniUW_Finish.Cache.OnePayment * 1 + CounterAmount;\r\n CounterAmount = CounterAmount.toFixed(2) * 1;\r\n }\r\n for (var i = j; i < (CHSI.UW.MuniUW_Finish.Cache.NumberOfPayments*1+j*1); i++) {\r\n var Deposit = {};\r\n Deposit.UWPaymentScheduleID = 0;\r\n Deposit.QuoteID = CHSI.UW.MuniUW_Finish.Cache.QuoteID;\r\n Deposit.BillDate = CounterDate;\r\n Deposit.BillAmount = CounterAmount;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingSchedule.push(Deposit);\r\n CounterDate = CHSI.UW.MuniUW_Finish.Events.GetNextDate(CounterDate,i);\r\n CounterAmount = CHSI.UW.MuniUW_Finish.Cache.OnePayment;\r\n }\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.BillingSchedule = CHSI.UW.MuniUW_Finish.Cache.BillingSchedule;\r\n \r\n \r\n\r\n return CalcDepositAmount;\r\n },\r\n FirstPaymentDate: function(){\r\n var EffectiveDate = CHSI.Dates.GetShortDate(CHSI.UW.MuniQuote.Cache.QuoteObject.EffectiveDate);\r\n var DEffectiveDate = new Date(EffectiveDate);\r\n CHSI.UW.MuniUW_Finish.Cache.FirstPaymentDate = new Date(DEffectiveDate.getTime() + (24 * 60 * 60 * CHSI.UW.MuniUW_Finish.Cache.FirstBillingOffset));\r\n CHSI.UW.MuniUW_Finish.Cache.Fday = DEffectiveDate.getDay();\r\n CHSI.UW.MuniUW_Finish.Cache.FirstPaymentDate=CHSI.Dates.GetShortDate(CHSI.UW.MuniUW_Finish.Cache.FirstPaymentDate);\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.FirstPaymentDate = CHSI.UW.MuniUW_Finish.Cache.FirstPaymentDate;\r\n $('#jxPaymentDate').val(CHSI.Dates.GetShortDate(CHSI.UW.MuniUW_Finish.Cache.BillingObject.FirstPaymentDate));\r\n },\r\n\r\n LoadFromQuoteDetails: function () {\r\n for (var i = 0; i < CHSI.UW.MuniUW_Finish.Cache.QuoteDetailArr.length; i++) {\r\n switch (CHSI.UW.MuniUW_Finish.Cache.QuoteDetailArr[i].FieldID) {\r\n case 29:\r\n CHSI.UW.MuniUW_Finish.Cache.BillingType = CHSI.UW.MuniUW_Finish.Cache.QuoteDetailArr[i].FieldValue;\r\n break;\r\n case 30:\r\n CHSI.UW.MuniUW_Finish.Cache.BillingPeriod = CHSI.UW.MuniUW_Finish.Cache.QuoteDetailArr[i].FieldValue;\r\n break;\r\n case 31:\r\n CHSI.UW.MuniUW_Finish.Cache.BillingIncrement = CHSI.UW.MuniUW_Finish.Cache.QuoteDetailArr[i].FieldValue;\r\n break;\r\n case 32:\r\n CHSI.UW.MuniUW_Finish.Cache.Percentage = (CHSI.UW.MuniUW_Finish.Cache.QuoteDetailArr[i].FieldValue == 'percent'?true:false);\r\n break;\r\n case 33:\r\n CHSI.UW.MuniUW_Finish.Cache.DepositPercentage = CHSI.UW.MuniUW_Finish.Cache.QuoteDetailArr[i].FieldValue;\r\n break;\r\n case 34:\r\n CHSI.UW.MuniUW_Finish.Cache.DepositAmount = CHSI.UW.MuniUW_Finish.Cache.QuoteDetailArr[i].FieldValue;\r\n break;\r\n case 35:\r\n CHSI.UW.MuniUW_Finish.Cache.NumberOfPayments = CHSI.UW.MuniUW_Finish.Cache.QuoteDetailArr[i].FieldValue;\r\n break;\r\n case 36:\r\n CHSI.UW.MuniUW_Finish.Cache.OnePayment = CHSI.UW.MuniUW_Finish.Cache.QuoteDetailArr[i].FieldValue;\r\n CHSI.UW.MuniUW_Finish.Cache.PaymentAmount = CHSI.UW.MuniUW_Finish.Cache.QuoteDetailArr[i].FieldValue;\r\n break;\r\n case 40:\r\n CHSI.UW.MuniUW_Finish.Cache.FirstPaymentDate = CHSI.UW.MuniUW_Finish.Cache.QuoteDetailArr[i].FieldValue;\r\n break;\r\n }\r\n }\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.BillingPeriod = CHSI.UW.MuniUW_Finish.Cache.BillingPeriod;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.BillingIncrement = CHSI.UW.MuniUW_Finish.Cache.BillingIncrement;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.DepositPercentage = CHSI.UW.MuniUW_Finish.Cache.DepositPercentage;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.NumberOfPayments = CHSI.UW.MuniUW_Finish.Cache.NumberOfPayments;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.Percentage = CHSI.UW.MuniUW_Finish.Cache.Percentage;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.FirstPaymentDate = CHSI.UW.MuniUW_Finish.Cache.FirstPaymentDate;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.BillingType = CHSI.UW.MuniUW_Finish.Cache.BillingType;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.PaymentAmount = CHSI.UW.MuniUW_Finish.Cache.PaymentAmount;\r\n CHSI.UW.MuniUW_Finish.Cache.BillingObject.DepositAmount = CHSI.UW.MuniUW_Finish.Cache.DepositAmount;\r\n },\r\n \r\n },\r\n\r\n Calls: {\r\n GetQuoteDetails: function (QuoteID) {\r\n if (!QuoteID) {\r\n QuoteID = CHSI.UW.MuniUW_Finish.Cache.QuoteID;\r\n }\r\n var Success = function (e) {\r\n CHSI.UW.MuniQuote.Cache.QuoteObject = e[0];\r\n CHSI.UW.MuniQuote.Cache.QuoteList = e;\r\n if (CHSI.UW.MuniQuote.Cache.QuoteObject.QuoteStatus && CHSI.UW.MuniQuote.Cache.QuoteObject.QuoteStatus.Editable == 'N') {\r\n CHSI.UW.MuniUW_Finish.Cache.Editable = 'N';\r\n }\r\n CHSI.UW.MuniUW_Finish.Calls.GetUWRule('DMax', function (e) { if (e && e.RuleValue) { CHSI.UW.MuniUW_Finish.Cache.DMax = e.RuleValue; } else { CHSI.UW.MuniUW_Finish.Cache.DMax = 0 } });\r\n CHSI.UW.MuniUW_Finish.Calls.GetUWRule('MinPR', function (e) { if (e && e.RuleValue) { CHSI.UW.MuniUW_Finish.Cache.MinPR = e.RuleValue; } else { CHSI.UW.MuniUW_Finish.Cache.MinPR = 0 } });\r\n CHSI.UW.MuniUW_Finish.Calls.GetUWRule('CalcD', function (e) { if (e && e.RuleValue) { CHSI.UW.MuniUW_Finish.Cache.CalcD = e.RuleValue; } else { CHSI.UW.MuniUW_Finish.Cache.CalcD = 'Modified' } });\r\n CHSI.UW.MuniUW_Finish.Calls.GetUWRule('DuDay', function (e) { if (e && e.RuleValue) { CHSI.UW.MuniUW_Finish.Cache.DuDay = e.RuleValue; } else { CHSI.UW.MuniUW_Finish.Cache.DuDay = 1 } });\r\n CHSI.UW.MuniUW_Finish.Calls.GetUWRule('EQPay', function (e) { if (e && e.RuleValue) { CHSI.UW.MuniUW_Finish.Cache.EQPay = e.RuleValue; } else { CHSI.UW.MuniUW_Finish.Cache.EQPay = 'N' } });\r\n CHSI.UW.MuniUW_Finish.Calls.GetGroupSpec('AllowShortBillingMonthsInQuote', function (e) { if (e) { CHSI.UW.MuniUW_Finish.Cache.AllowShortBillingMonthsInQuote = e; } else { CHSI.UW.MuniUW_Finish.Cache.AllowShortBillingMonthsInQuote = 'N' } });\r\n CHSI.UW.MuniUW_Finish.Calls.GetUWRule('BRULE', function (e) {\r\n if (e && e.RuleValue) {\r\n CHSI.UW.MuniUW_Finish.Cache.BRULE = e.RuleValue;\r\n CHSI.UW.MuniUW_Finish.Events.BuildBillingRules(e.RuleValue);\r\n } else {\r\n CHSI.UW.MuniUW_Finish.Cache.BRULE = null\r\n }\r\n CHSI.UW.MuniUW_Finish.Calls.GetGroupSpec('FirstBillingOffset', function (e) {\r\n if (e) {\r\n CHSI.UW.MuniUW_Finish.Cache.FirstBillingOffset = e;\r\n } else { CHSI.UW.MuniUW_Finish.Cache.FirstBillingOffset = 0 }\r\n CHSI.UW.MuniUW_Finish.Events.FirstPaymentDate();\r\n CHSI.UW.MuniQuote.GetQuoteDetail('', '', QuoteID, function (e) {\r\n if (e) {\r\n CHSI.UW.MuniUW_Finish.Cache.QuoteDetailArr = e;\r\n CHSI.UW.MuniUW_Finish.Events.LoadFromQuoteDetails();\r\n \r\n }\r\n CHSI.UW.MuniUW_Finish.Binds.Billing();\r\n CHSI.UW.MuniUW_Finish.Calls.GetPaymentSchedules(function (e) {\r\n if (e) {\r\n CHSI.UW.MuniUW_Finish.Cache.BillingSchedule = e; \r\n } \r\n CHSI.UW.MuniUW_Finish.Binds.BillingSchedule();\r\n });\r\n \r\n });\r\n });\r\n });\r\n \r\n \r\n CHSI.UW.MuniUW_Finish.Binds.BindQuote();\r\n\r\n var SecOptions = {},\r\n isVerified = false;\r\n SecOptions.PermissionID = 14;\r\n SecOptions.Success = function (e) {\r\n isVerified = e;\r\n if (isVerified) {\r\n CHSI.UW.MuniQuote.MenuController(CHSI.UW.MuniQuote.Cache.QuoteObject, '#jxMenuContainer');\r\n }\r\n }\r\n CHSI.Security.HasPermission(SecOptions);\r\n \r\n\r\n \r\n }\r\n\r\n CHSI.UW.MuniQuote.GetQuoteDetails(QuoteID, Success); \r\n },\r\n\r\n GetUWRule: function (Code,Success) {\r\n var QuoteType=CHSI.UW.MuniQuote.Cache.QuoteObject.QuoteType;\r\n var GroupID=CHSI.UW.MuniQuote.Cache.QuoteObject.GroupID;\r\n var PolicyPeriod = CHSI.UW.MuniQuote.Cache.QuoteObject.PolicyPeriod;\r\n CHSI.UW.MuniQuote.GetUWRule(QuoteType, GroupID, PolicyPeriod, Code, Success);\r\n },\r\n GetGroupSpec: function (SpecName, Success) { \r\n var GroupID = CHSI.UW.MuniQuote.Cache.QuoteObject.GroupID; \r\n CHSI.UW.MuniQuote.GetGroupSpec(GroupID, SpecName, Success);\r\n\r\n },\r\n\r\n SavePaymentSchedules: function (Success) {\r\n var Options = {};\r\n Options.URL = '/api/UW/UW/SavePaymentSchedules';\r\n Options.Data = CHSI.UW.MuniUW_Finish.Cache.BillingSchedule;\r\n Options.Success = Success;\r\n CHSI.Common.Ajax.Post(Options);\r\n },\r\n\r\n GetPaymentSchedules: function (Success) {\r\n var Options = {};\r\n Options.URL = '/api/UW/UW/GetPaymentSchedules?QuoteID=' + CHSI.UW.MuniUW_Finish.Cache.QuoteID; \r\n Options.Success = Success;\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n }\r\n\r\n}\r\n","CHSI.UW.MuniUW_FormulaWorksheet = {\r\n Init: function (QuoteID) {\r\n this.Cache.QuoteID = QuoteID; \r\n this.Templates.FormulaWorksheet = CHSITemplates.Template_FormulaWorksheet;\r\n this.Calls.GetQuoteDetails(QuoteID);\r\n this.Events.Global();\r\n //this.Binds.BindQTips();\r\n },\r\n Templates: {},\r\n Cache: {\r\n QuoteObject: {},\r\n InfoObject: {},\r\n QuoteID: null,\r\n Editable: 'Y',\r\n LastTabID: null,\r\n TopPosition: null,\r\n CurrentSelectedElementID: null\r\n },\r\n Binds: {\r\n BindQuote: function () {\r\n if ($('.blockIndent')[0]) {\r\n CHSI.UW.MuniUW_FormulaWorksheet.Cache.TopPosition = Math.abs($('#jxFormulaWorksheet .blockIndent:first').offset().top);\r\n }\r\n if (QuoteObject) {\r\n CHSI.UW.MuniQuote.Cache.QuoteObject = QuoteObject; \r\n QuoteObject = null;\r\n }\r\n if (CHSI.UW.MuniQuote.Cache.QuoteList.length > 1 && CHSI.UW.MuniQuote.Cache.QuoteObject.ParentQuoteID) {\r\n $('.QuoteLabel').html('Endorsement');\r\n }\r\n $('#jxFormulaWorksheet').html(CHSI.UW.MuniUW_FormulaWorksheet.Templates.FormulaWorksheet(CHSI.UW.MuniQuote.Cache.QuoteObject)); \r\n restart = true;\r\n sorttable.init();\r\n if (CHSI.UW.MuniUW_FormulaWorksheet.Cache.CurrentSelectedElementID) {\r\n $('#' + CHSI.UW.MuniUW_FormulaWorksheet.Cache.CurrentSelectedElementID).focus();\r\n }\r\n CHSI.UW.MuniUW_FormulaWorksheet.Methods.RecalculateSize(); \r\n //CHSI.UW.MuniUW_FormulaWorksheet.Binds.BindQTips();\r\n CHSI.UW.MuniQuote.DisablePage(CHSI.UW.MuniUW_FormulaWorksheet.Cache.Editable);\r\n $('.NotificationsBar').hide();\r\n if (CHSI.UW.MuniUW_FormulaWorksheet.Cache.LastTabID != null) {\r\n $('#' + CHSI.UW.MuniUW_FormulaWorksheet.Cache.LastTabID).select();\r\n }\r\n CHSI.Common.Log('top on bind ' + CHSI.UW.MuniUW_FormulaWorksheet.Cache.TopPosition);\r\n $('#PageContainer').scrollTop(CHSI.UW.MuniUW_FormulaWorksheet.Cache.TopPosition);\r\n },\r\n BindQTips: function (Target) {\r\n $(Target + ' > .jxQtipInformation').qtip({\r\n position: { \r\n my: 'top right',\r\n at: 'bottom left',\r\n adjust: {\r\n method: 'flip'\r\n },\r\n viewport: jQuery(window)\r\n },\r\n content: { \r\n attr: 'title'\r\n },\r\n hide: { fixed: true, delay: 300 },\r\n style: { padding: '5px 15px', name: '' }\r\n });\r\n }\r\n },\r\n Events: {\r\n Global: function () {\r\n\r\n $(window).on('resize', CHSI.UW.MuniUW_FormulaWorksheet.Methods.RecalculateSize());\r\n\r\n $('#jxCheatSheetLink').attr('href', 'FormulaWorksheet.aspx?QuoteID=' + CHSI.UW.MuniUW_FormulaWorksheet.Cache.QuoteID);\r\n\r\n $('.NotificationsBar').hide();\r\n\r\n $('#jxFormulaWorksheet').on('focus', '.VariableTitle', function () {\r\n var ID = $(this).data('notificationid'),\r\n InformationPanelID = '#InformationBar_' + ID,\r\n Title = $(InformationPanelID).data('title'),\r\n VariableName = $(InformationPanelID).data('variablename'),\r\n QuoteID = $(InformationPanelID).data('quoteid'),\r\n HistoryID = $(InformationPanelID).data('historyid'),\r\n InfoObject = CHSI.UW.MuniUW_FormulaWorksheet.Cache.InfoObject,\r\n EditMode = $(InformationPanelID).data('editmode');\r\n\r\n InfoObject.InformationPanelID = InformationPanelID;\r\n InfoObject.VarID = ID;\r\n InfoObject.HistoryID = HistoryID;\r\n InfoObject.Title = Title;\r\n InfoObject.VariableName = VariableName;\r\n InfoObject.QuoteID = QuoteID;\r\n InfoObject.EditMode = EditMode;\r\n\r\n\r\n\r\n CHSI.UW.MuniUW_FormulaWorksheet.Events.AdditionalInfoPanel('#NotificationID_' + ID, InfoObject);\r\n\r\n \r\n $('.NotificationsBar').show();\r\n\r\n //CHSI.UW.MuniUW_FormulaWorksheet.Binds.BindQTips();\r\n });\r\n\r\n $('body').on('scroll', function () {\r\n $('.NotificationsBar').hide();\r\n });\r\n //$('#jxFormulaWorksheet').on('blur', '.VariableTitle', function () {\r\n // $('.NotificationsBar').hide();\r\n //});\r\n\r\n //$('.NotificationsBar').on('mouseenter', function () {\r\n // $(this).show();\r\n //});\r\n\r\n //$('.NotificationsBar').on('mouseleave', function () {\r\n // $(this).hide();\r\n //});\r\n\r\n $('.jxRecalculate').on('click', function () {\r\n var Response = confirm('Please confirm that you would like to update this value.');\r\n\r\n if (Response) {\r\n\r\n InfoObject = CHSI.UW.MuniUW_FormulaWorksheet.Cache.InfoObject;\r\n CHSI.UW.MuniUW_FormulaWorksheet.Calls.RecalculateVariable(InfoObject.VarID, CHSI.UW.MuniUW_FormulaWorksheet.Cache.QuoteID);\r\n\r\n\r\n }\r\n });\r\n\r\n $('.jxShowHistory').on('click', function () {\r\n QuoteObject = CHSI.UW.MuniQuote.Cache.QuoteObject;\r\n InfoObject = CHSI.UW.MuniUW_FormulaWorksheet.Cache.InfoObject;\r\n CHSI.UW.MuniUW_FormulaWorksheet.Events.ShowHistory(InfoObject.VarID, CHSI.UW.MuniUW_FormulaWorksheet.Cache.QuoteID, InfoObject.EditMode, InfoObject.VariableName);\r\n });\r\n\r\n\r\n $('#jxFormulaWorksheet').on('change', '.Variable', function () {\r\n QuoteObject = CHSI.UW.MuniQuote.Cache.QuoteObject;\r\n var Variable = $(this); \r\n if (CHSI.UW.MuniQuote.Cache.QuoteObject.QuoteStatus.RequireComments == 'Y') {\r\n CHSI.UW.MuniUW_FormulaWorksheet.Events.ShowSaveVariable(Variable.attr(\"id\"), CHSI.UW.MuniUW_FormulaWorksheet.Cache.QuoteID, Variable.val());\r\n } else {\r\n CHSI.UW.MuniUW_FormulaWorksheet.Calls.SaveVariable(Variable.attr(\"id\"), Variable.val(), false);\r\n }\r\n });\r\n\r\n $('#jxFormulaWorksheet').on('focus', '.Variable', function () {\r\n var Variable = $(this);\r\n Variable.val(Variable.val());\r\n $(this).select();\r\n });\r\n\r\n $('#jxFormulaWorksheet').on('focusout', '.Variable', function () {\r\n var Variable = $(this);\r\n var FormatedValue = '';\r\n if (Variable.data('format')) {\r\n var Format = Variable.data('format');\r\n var OriginalValue = Variable.data('value');\r\n FormatedValue = CHSI.Common.String.Format(Format, OriginalValue);\r\n Variable.val(FormatedValue);\r\n }\r\n });\r\n },\r\n ShowGUIAdminTools: function () {\r\n $('.GUIAdmin').show();\r\n $('#jxShowGUIAdminTools').hide();\r\n $('#jxHideGUIAdminTools').show();\r\n },\r\n HideGUIAdminTools: function () {\r\n $('.GUIAdmin').hide();\r\n $('#jxShowGUIAdminTools').show();\r\n $('#jxHideGUIAdminTools').hide();\r\n },\r\n ShowFormulas: function () {\r\n $('[data-formula]').each(function (i, j) {\r\n var currentobject = jQuery(this);\r\n currentobject.html('' + currentobject.attr('data-formula') + '');\r\n });\r\n },\r\n ShowVariableTitles: function () {\r\n $('[data-title]').each(function (i, j) {\r\n var currentobject = jQuery(this);\r\n currentobject.html(currentobject.attr('data-title'));\r\n });\r\n },\r\n ShowVariables: function () {\r\n $('[data-variable]').each(function (i, j) {\r\n var currentobject = jQuery(this);\r\n currentobject.html('' + currentobject.attr('data-variable') + '');\r\n });\r\n },\r\n ShowHistory: function (VarID, QuoteID, EditMode, VariableName) {\r\n var ShowHistoryURL = '/UW/Modals/VariableHistory.aspx?VarID=' + VarID + '&QuoteID=' + QuoteID + '&EditMode=' + EditMode;\r\n ShowPopup(\"History\", ShowHistoryURL, \"History of \" + VariableName + ' - ' + VarID, 600, 290, CHSI.UW.MuniUW_FormulaWorksheet.Binds.BindQuote, false);\r\n\r\n },\r\n\r\n ShowSaveVariable: function (VarID, QuoteID, NewValue) {\r\n var ShowSaveVariableURL = '/UW/Modals/VariableSave.aspx?VarID=' + VarID + '&QuoteID=' + QuoteID + '&NewValue=' + NewValue;\r\n ShowPopup(\"SaveVariable\", ShowSaveVariableURL, \"Save Variable: \" + VarID, 290, 110, CHSI.UW.MuniUW_FormulaWorksheet.Binds.BindQuote, false);\r\n\r\n },\r\n AdditionalInfoPanel: function (Target, InfoObject) { \r\n var jqTarget = $(Target),\r\n NotificationsBar = '.NotificationsBar',\r\n Left = 0,\r\n Top = 0,\r\n Position = jqTarget.position();\r\n\r\n if (Position) {\r\n Left = Position.left;\r\n Top = Position.top + 23;\r\n $(NotificationsBar).css('left', Left);\r\n $(NotificationsBar).css('top', Top);\r\n\r\n $('.jxQtipInformation').prop('title', InfoObject.Title);\r\n }\r\n \r\n //CHSI.UW.MuniUW_FormulaWorksheet.Binds.BindQTips(Target);\r\n\r\n // update the button values\r\n }\r\n },\r\n Methods: {\r\n RecalculateSize: function () {\r\n var WindowHeight = $(window).height();\r\n var HeaderContainerHeight = $('#HeaderContainer').height();\r\n var PageContainer = $('#PageContainer')\r\n PageContainer.height(WindowHeight - HeaderContainerHeight);\r\n }\r\n },\r\n GetNextEditableFocus: function (currentID) {\r\n var NextInput = $('#' + currentID).closest('td').next().find('input');\r\n\r\n if (NextInput.length == 0) {\r\n NextInput = $('#' + currentID).closest('tr').next().children('td').children('input').first();\r\n }\r\n\r\n if (NextInput.length == 0) {\r\n\r\n\r\n return null;\r\n }\r\n else {\r\n if (NextInput.is('[readonly]')) {\r\n return CHSI.UW.MuniUW_FormulaWorksheet.GetNextEditableFocus(NextInput.attr('id'));\r\n }\r\n else {\r\n return NextInput.attr('id');\r\n }\r\n\r\n }\r\n\r\n\r\n },\r\n Calls: {\r\n GetQuoteDetails: function (QuoteID) {\r\n var Success = function (e) {\r\n CHSI.UW.MuniQuote.Cache.QuoteList = e;\r\n CHSI.UW.MuniQuote.Cache.QuoteObject = e[0];\r\n if (CHSI.UW.MuniQuote.Cache.QuoteObject.QuoteStatus && CHSI.UW.MuniQuote.Cache.QuoteObject.QuoteStatus.Editable == 'N') {\r\n CHSI.UW.MuniUW_FormulaWorksheet.Cache.Editable = 'N';\r\n }\r\n CHSI.UW.MuniUW_FormulaWorksheet.Binds.BindQuote();\r\n }\r\n\r\n CHSI.UW.MuniQuote.GetQuoteDetails(QuoteID, Success);\r\n\r\n },\r\n\r\n RecalculateVariable: function (VarID, QuoteID) {\r\n var Success = function (e) {\r\n e.Appearance = CHSI.UW.MuniQuote.Cache.QuoteObject.Appearance;\r\n CHSI.UW.MuniQuote.Cache.QuoteObject = e; \r\n CHSI.UW.MuniUW_FormulaWorksheet.Binds.BindQuote();\r\n $('#' + VarID).css('color', 'orange');\r\n }\r\n\r\n CHSI.UW.MuniQuote.RecalculateVariable(VarID, QuoteID, Success);\r\n },\r\n\r\n SaveVariable: function (VarID, NewValue, ForceAutoCalculation) {\r\n var SourceObject = CHSI.UW.MuniQuote.GetQuoteObjectfromVarID(VarID);\r\n\r\n var ajaxData = {};\r\n ajaxData.DataObject = {};\r\n ajaxData.Comments = '';\r\n ajaxData.DataObject.isLocked = 1;\r\n ajaxData.DataObject.StringValue = SourceObject.StringValue;\r\n ajaxData.DataObject.DateValue = SourceObject.DateValue;\r\n ajaxData.DataObject.IntegerValue = SourceObject.IntegerValue;\r\n ajaxData.DataObject.DecimalValue = SourceObject.DecimalValue;\r\n ajaxData.DataObject.BoolValue = SourceObject.BoolValue;\r\n ajaxData.DataObject.DataType = SourceObject.DataType;\r\n ajaxData.DataObject.QuoteID = CHSI.UW.MuniQuote.Cache.QuoteObject.QuoteID;\r\n ajaxData.isAutoCalculated = SourceObject.isAutoCalculated;\r\n ajaxData.ForceAutoCalculation = ForceAutoCalculation;\r\n ajaxData.Status = 'active';\r\n ajaxData.Type = 'Quote';\r\n\r\n if (CHSI.UW.MuniQuote.Cache.QuoteList.length > 1 && CHSI.UW.MuniQuote.Cache.QuoteObject.ParentQuoteID) {\r\n ajaxData.Type = 'Endorsement';\r\n }\r\n CHSI.UW.MuniQuote.SetValue(ajaxData.DataObject, NewValue);\r\n CHSI.UW.MuniUW_FormulaWorksheet.Cache.CurrentSelectedElementID = CHSI.UW.MuniUW_FormulaWorksheet.GetNextEditableFocus(VarID);\r\n var Success = function (e) {\r\n var Appearance = CHSI.UW.MuniQuote.Cache.QuoteObject.Appearance;\r\n e.Appearance = Appearance\r\n QuoteObject = e;\r\n parent.QuoteObject = e;\r\n CHSI.UW.MuniQuote.Cache.QuoteObject = e;\r\n CHSI.UW.MuniUW_FormulaWorksheet.Binds.BindQuote();\r\n }\r\n\r\n CHSI.UW.MuniQuote.SaveVariable(VarID, ajaxData, Success);\r\n }\r\n }, \r\n\r\n}","CHSI.UW.MuniQuote = {\r\n\r\n Init: function (QuoteID, QuoteObject) {\r\n this.Cache.QuoteID = QuoteID;\r\n this.Cache.QuoteObject = QuoteObject;\r\n },\r\n\r\n Cache: {\r\n QuoteID: null,\r\n QuoteObject: null,\r\n CurrentControl: null,\r\n CurrentControlValue: null,\r\n CurrentControlCachedValue: null,\r\n QuoteList:null\r\n },\r\n\r\n GetValueByDataType: function (DataObject) {\r\n var NewValue;\r\n\r\n switch (DataObject.DataType) {\r\n case 1:\r\n NewValue = DataObject.StringValue;\r\n break;\r\n case 2:\r\n NewValue = DataObject.DateValue;\r\n break;\r\n case 3:\r\n NewValue = DataObject.DecimalValue;\r\n break;\r\n case 4:\r\n NewValue = DataObject.BoolValue;\r\n break;\r\n case 5:\r\n NewValue = DataObject.IntegerValue;\r\n break;\r\n }\r\n\r\n return NewValue;\r\n },\r\n\r\n SetValue: function (DataObject, NewValue) {\r\n DataObject.GetValue = NewValue;\r\n switch (DataObject.DataType) {\r\n case 1:\r\n DataObject.StringValue = NewValue;\r\n break;\r\n case 2:\r\n DataObject.DateValue = NewValue;\r\n break;\r\n case 3:\r\n DataObject.DecimalValue = NewValue;\r\n break;\r\n case 4:\r\n DataObject.BoolValue = NewValue;\r\n break;\r\n case 5:\r\n DataObject.IntegerValue = NewValue;\r\n break;\r\n }\r\n },\r\n\r\n SetDefaultValue: function (DataObject, NewValue) {\r\n DataObject.GetValue = NewValue;\r\n switch (DataObject.DataType) {\r\n case 1:\r\n DataObject.DefaultStringValue = NewValue;\r\n break;\r\n case 2:\r\n DataObject.DefaultDateValue = NewValue;\r\n break;\r\n case 3:\r\n DataObject.DefaultDecimalValue = NewValue;\r\n break;\r\n case 4:\r\n DataObject.DefaultBoolValue = NewValue;\r\n break;\r\n case 5:\r\n DataObject.DefaultIntegerValue = NewValue;\r\n break;\r\n }\r\n },\r\n\r\n GetDefaultValue: function (DataObject) {\r\n var result;\r\n\r\n switch (DataObject.DataType) {\r\n case 1:\r\n result = DataObject.DefaultStringValue; break;\r\n case 2:\r\n result = DataObject.DefaultDateValue; break;\r\n case 3:\r\n result = DataObject.DefaultDecimalValue; break;\r\n case 4:\r\n result = DataObject.DefaultBoolValue; break;\r\n case 5:\r\n result = DataObject.DefaultIntegerValue; break;\r\n\r\n return result;\r\n }\r\n },\r\n\r\n SaveVariable: function (VarID, VariableObj, Success) {\r\n var Options = {};\r\n Options.Data = {};\r\n Options.Data = VariableObj;\r\n switch (VarID.substring(0, 3)) {\r\n case \"RaV\":\r\n Options.URL = '/api/UW/MuniQuote/SaveQuoteRateVariable';\r\n var IDs = VarID.replace('RaV_', '').split('_');\r\n Options.Data.ProgramRateVariableID = IDs[0];\r\n Options.Data.RateInfoID = IDs[1];\r\n break;\r\n case \"VaR\":\r\n Options.URL = '/api/UW/MuniQuote/SaveQuoteVariable';\r\n Options.Data.VariableID = VarID.replace('VaR_', '');\r\n break;\r\n\r\n }\r\n var ajaxString = JSON.stringify(VariableObj);\r\n if (CHSI.Common.DebugMode) {\r\n CHSI.Common.Log('value - ' + Options.URL + ', Data: ' + ajaxString);\r\n }\r\n Options.Success = Success;\r\n CHSI.Common.Ajax.Put(Options);\r\n },\r\n\r\n RecalculateVariable: function (VarID, QuoteID, Success) {\r\n\r\n var Options = {};\r\n Options.Data = {};\r\n ajaxData = {};\r\n ajaxData.DataObject = {};\r\n ajaxData.Comments = 'Forced Recalculation';\r\n ajaxData.DataObject.isLocked = 1;\r\n ajaxData.DataObject.QuoteID = QuoteID;\r\n ajaxData.ForceAutoCalculation = true;\r\n ajaxData.Status = 'active';\r\n\r\n switch (VarID.substring(0, 3)) {\r\n case \"RaV\":\r\n Options.URL = '/api/UW/MuniQuote/RecalculateQuoteRateVariable';\r\n var IDs = VarID.replace('RaV_', '').split('_');\r\n ajaxData.ProgramRateVariableID = IDs[0];\r\n ajaxData.RateInfoID = IDs[1];\r\n break;\r\n case \"VaR\":\r\n Options.URL = '/api/UW/MuniQuote/RecalculateQuoteVariable';\r\n ajaxData.VariableID = VarID.replace('VaR_', '');\r\n break;\r\n }\r\n Options.Data = ajaxData;\r\n var ajaxString = JSON.stringify(ajaxData);\r\n if (CHSI.Common.DebugMode) {\r\n CHSI.Common.Log('value - ' + Options.URL + ', Data: ' + ajaxString);\r\n }\r\n Options.Success = Success;\r\n CHSI.Common.Ajax.Put(Options);\r\n },\r\n\r\n RecalculateQuote: function (QuoteID, Success) {\r\n\r\n var Options = {};\r\n Options.Data = QuoteID;\r\n Options.URL = '/api/UW/MuniQuote/RecalculateQuote';\r\n Options.Success = Success;\r\n CHSI.Common.Ajax.Put(Options);\r\n },\r\n\r\n CopyQuote: function (QuoteObject, Success) {\r\n var Options = {};\r\n Options.URL = '/api/UW/MuniQuote/CopyQuote';\r\n Options.Data = QuoteObject;\r\n Options.Success = Success; \r\n CHSI.Common.Ajax.Post(Options);\r\n },\r\n\r\n AddEndorsementAPICall: function (QuoteObject, Success) {\r\n var Options = {};\r\n Options.URL = '/api/UW/MuniQuote/AddEndorsement';\r\n Options.Data = QuoteObject;\r\n Options.Success = Success;\r\n CHSI.Common.Ajax.Post(Options);\r\n },\r\n\r\n AddEndorsement: function (QuoteID) {\r\n var Endorsement = null; \r\n if (QuoteID) {\r\n Endorsement = {};\r\n CHSI.UW.MuniQuote.GetQuoteDetails(QuoteID, function (e) {\r\n \r\n if (e.length > 1) {\r\n Endorsement = e[1];\r\n Endorsement.ParentQuoteID = Endorsement.ParentQuoteID;\r\n Endorsement.OriginalQuoteID = Endorsement.ParentQuoteID;\r\n } else {\r\n Endorsement = e[0];\r\n Endorsement.ParentQuoteID = Endorsement.QuoteID;\r\n Endorsement.OriginalQuoteID = Endorsement.QuoteID;\r\n } \r\n \r\n Endorsement.QuoteType = 'Endrse';\r\n CHSI.UW.MuniQuote.AddEndorsementAPICall(Endorsement, function (e) { window.location = '/uw/Quote/QuoteInfo.aspx?QuoteID=' + e + '&ClientID=' + Endorsement.ClientID + '&GroupName=' + Endorsement.GroupID; });\r\n }); \r\n \r\n } else\r\n {\r\n Endorsement = this.Cache.QuoteObject;\r\n Endorsement.ParentQuoteID = Endorsement.QuoteID;\r\n Endorsement.OriginalQuoteID = Endorsement.QuoteID;\r\n Endorsement.QuoteType = 'Endrse';\r\n CHSI.UW.MuniQuote.AddEndorsementAPICall(Endorsement, function (e) { window.location = '/uw/Quote/QuoteInfo.aspx?QuoteID=' + e + '&ClientID=' + Endorsement.ClientID + '&GroupName=' + Endorsement.GroupID; });\r\n }\r\n \r\n \r\n },\r\n GetUWRule: function (QuoteType, GroupID, PolicyPeriod, Code, Success) {\r\n var Options = {};\r\n Options.URL = '/api/UW/UW/GetRules?QuoteType=' + QuoteType + '&GroupID=' + GroupID + '&PolicyPeriod=' + PolicyPeriod + '&Code=' + Code;\r\n Options.Success = Success;\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n\r\n GetGroupSpec: function (GroupID, SpecName, Success) {\r\n var Options = {};\r\n Options.URL = '/api/Common/GroupSpecification/GetGroupSpecification?GroupID=' + GroupID + '&SpecName=' + SpecName;\r\n Options.Success = Success;\r\n Options.Error = CHSI.Common.Log('Please check the groupid or specname.');\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n\r\n AddQuoteCoverageLine: function (QuoteID, CoverageLineID, Success) {\r\n var Options = {};\r\n Options.Data = {};\r\n Options.URL = \"/api/UW/MuniQuote/AddQuoteCoverageLine?QuoteId=\" + QuoteID + \"&CoverageLineId=\" + CoverageLineID;\r\n Options.Error = CHSI.DOM.ProcessAjaxError;\r\n Options.Success = Success;\r\n CHSI.Common.Ajax.Post(Options);\r\n },\r\n\r\n CreateNewQuote: function (QuoteObject, Success) {\r\n var Options = {};\r\n Options.Data = QuoteObject;\r\n Options.URL = \"/api/UW/MuniQuote/CreateNewQuote\";\r\n Options.Error = CHSI.DOM.ProcessAjaxError;\r\n Options.Success = function (data) {\r\n if (Success) {\r\n Success(data);\r\n }\r\n };\r\n CHSI.Common.Ajax.Post(Options);\r\n },\r\n\r\n ConstructQuote: function (QuoteType) {\r\n var NewQuote = {},\r\n d = new Date();\r\n\r\n function FullDate(addExtraYear) {\r\n if (addExtraYear == null) {\r\n addExtraYear = 0;\r\n }\r\n var fullYear = d.getUTCFullYear() + addExtraYear,\r\n monthArray = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];\r\n\r\n return monthArray[d.getUTCMonth()] + '/' + d.getUTCDate() + '/' + fullYear;\r\n };\r\n\r\n NewQuote.QuoteDate = FullDate();\r\n NewQuote.PolicyPeriod = d.getFullYear();\r\n NewQuote.EffectiveDate = FullDate();\r\n NewQuote.ExpirationDate = FullDate(1);\r\n\r\n if (QuoteType) {\r\n NewQuote.QuoteType = QuoteType.QTName\r\n NewQuote.ProgramID = QuoteType.ProgramID;\r\n NewQuote.QuoteName = QuoteType.Name\r\n }\r\n\r\n return NewQuote;\r\n },\r\n GetQuoteDetails: function (QuoteID, Success) {\r\n var Options = {};\r\n //Options.Data = { QuoteID: QuoteID };\r\n Options.URL = \"/api/UW/MuniQuote/GetQuote?QuoteID=\" + QuoteID;\r\n Options.Error = CHSI.DOM.ProcessAjaxError;\r\n Options.Success = Success;\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n SaveQuoteDetail: function (QuoteID, FieldID, FieldValue, Success) {\r\n var Options = {};\r\n Options.Data = { QuoteID: QuoteID, FieldID: FieldID, FieldValue: FieldValue };\r\n Options.URL = \"/api/UW/QuoteDetail/Save\";\r\n Options.Error = CHSI.DOM.ProcessAjaxError;\r\n Options.Success = Success;\r\n CHSI.Common.Ajax.Post(Options);\r\n },\r\n\r\n GetQuoteDetail: function (DetailID, FieldID, QuoteID, Success) {\r\n var Options = {};\r\n Options.URL = \"/api/UW/QuoteDetail/Get?DetailID=\" + DetailID + \"&FieldID=\" + FieldID + \"&QuoteID=\" + QuoteID;\r\n Options.Error = CHSI.DOM.ProcessAjaxError;\r\n Options.Success = Success;\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n\r\n LoadFromQuoteDetailsToCache: function (QuoteDetailArr, Cache) {\r\n for (var i = 0; i < QuoteDetailArr.length; i++) {\r\n switch (QuoteDetailArr[i].FieldID) {\r\n case 29:\r\n Cache.BillingType = QuoteDetailArr[i].FieldValue;\r\n break;\r\n case 30:\r\n Cache.BillingPeriod = QuoteDetailArr[i].FieldValue;\r\n break;\r\n case 31:\r\n Cache.BillingIncrement = QuoteDetailArr[i].FieldValue;\r\n break;\r\n case 32:\r\n Cache.Percentage = (QuoteDetailArr[i].FieldValue == 'percent' ? true : false);\r\n break;\r\n case 33:\r\n Cache.DepositPercentage = QuoteDetailArr[i].FieldValue;\r\n break;\r\n case 34:\r\n Cache.DepositAmount = QuoteDetailArr[i].FieldValue;\r\n break;\r\n case 35:\r\n Cache.NumberOfPayments = QuoteDetailArr[i].FieldValue;\r\n break;\r\n case 36:\r\n Cache.OnePayment = QuoteDetailArr[i].FieldValue;\r\n Cache.PaymentAmount = QuoteDetailArr[i].FieldValue;\r\n break;\r\n case 40:\r\n Cache.FirstPaymentDate = QuoteDetailArr[i].FieldValue;\r\n break;\r\n }\r\n }\r\n\r\n },\r\n SaveQuoteProperty: function (PropertyName, NewValue, Success) {\r\n var ajaxData = {};\r\n ajaxData.PropertyName = PropertyName;\r\n ajaxData.QuoteID = this.Cache.QuoteObject.QuoteID;\r\n ajaxData.NewValue = NewValue;\r\n var DataCollection = [];\r\n DataCollection.push(ajaxData);\r\n var Options = {};\r\n Options.Data = {};\r\n Options.Data = DataCollection;\r\n Options.URL = '/api/UW/MuniQuote/SaveQuoteproperty';\r\n var ajaxString = JSON.stringify(ajaxData);\r\n if (CHSI.Common.DebugMode) {\r\n CHSI.Common.Log('Updating Property value with URL ' + Options.URL + ' and Data: ' + ajaxString);\r\n }\r\n Options.Success = Success;\r\n Options.Error = CHSI.DOM.ProcessAjaxError;\r\n CHSI.Common.Ajax.Put(Options);\r\n },\r\n\r\n SaveBatchQuoteProperties: function (QuotePropertyArray, successFunction) {\r\n // object parameters: PropertyName, QuoteID, NewValue\r\n var Options = {};\r\n Options.URL = '/api/UW/MuniQuote/SaveQuoteproperty';\r\n Options.Data = QuotePropertyArray;\r\n Options.Success = successFunction;\r\n Options.Error = CHSI.DOM.ProcessAjaxError;\r\n CHSI.Common.Ajax.Put(Options);\r\n\r\n },\r\n DeleteQuote: function (QuoteID, GroupID) {\r\n var Response = confirm('Are you sure you want to delete this quote?');\r\n if (Response) {\r\n var Options = {};\r\n Options.URL = '/api/UW/MuniQuote/DeleteQuote?QuoteID=' + QuoteID;\r\n Options.Success = function () {\r\n alert('Quote deleted.');\r\n window.location = '/sig/underwriting/uwmain.aspx#GroupName=' + GroupID + '&TabID=2&TabName=QUOTED';\r\n };\r\n Options.Error = function () { alert('You do not have access to that function.'); };\r\n CHSI.Common.Ajax.Delete(Options);\r\n }\r\n },\r\n\r\n\r\n DeleteQuoteCoverageLine: function (QuoteID, CoverageLineID, Success) {\r\n var Options = {};\r\n Options.URL = '/api/UW/MuniQuote/DeleteQuoteCoverageLine?QuoteId=' + QuoteID + \"&CoverageLineId=\" + CoverageLineID;\r\n Options.Success = Success;\r\n Options.Error = CHSI.DOM.ProcessAjaxError;\r\n CHSI.Common.Ajax.Delete(Options);\r\n },\r\n\r\n GetQuotePropertyDisplay: function (PropertyName, ContentType) {\r\n var ret = '';\r\n return ret;\r\n },\r\n\r\n GetAppearanceCollection: function (ControlType) {\r\n if (this.Cache.QuoteObject == null) {\r\n throw new Error('Quote Object is null');\r\n }\r\n if (this.Cache.QuoteObject.Appearance == null) {\r\n throw new Error('Quote Object Appearance is null');\r\n }\r\n switch (ControlType) {\r\n case \"RateVariables\":\r\n return this.Cache.QuoteObject.Appearance.RateVariables;\r\n break;\r\n case \"Variables\":\r\n return this.Cache.QuoteObject.Appearance.Variables;\r\n break;\r\n }\r\n },\r\n\r\n GetVarIDfromObject: function (ControlObject, ControlType) {\r\n switch (ControlType) {\r\n case \"RateVariables\":\r\n return 'RaV_' + ControlObject.ProgramRateVariableID + '_' + ControlObject.RateInfoID;\r\n break;\r\n case \"Variables\":\r\n return 'VaR_' + ControlObject.VariableID;\r\n break;\r\n\r\n }\r\n },\r\n\r\n GetVariable: function (VariableID) {\r\n if (CHSI.Common.DebugMode) {\r\n CHSI.Common.Log('Getting VariableID ' + VariableID);\r\n }\r\n\r\n\r\n for (var Variable in this.Cache.QuoteObject.Vars) {\r\n if (this.Cache.QuoteObject.Vars[Variable].VariableID == VariableID) {\r\n return this.Cache.QuoteObject.Vars[Variable];\r\n }\r\n }\r\n\r\n for (var CL in this.Cache.QuoteObject.CL) {\r\n if (CHSI.Common.DebugMode) {\r\n CHSI.Common.Log('CL ' + CL + ', ' + this.Cache.QuoteObject.CL[CL].Rates.length)\r\n }\r\n\r\n for (var RateIndex = 0 ; RateIndex < this.Cache.QuoteObject.CL[CL].Rates.length; RateIndex++) {\r\n if (CHSI.Common.DebugMode) {\r\n CHSI.Common.Log('Rate Index - ' + RateIndex);\r\n }\r\n\r\n for (var Variable in this.Cache.QuoteObject.CL[CL].Vars) {\r\n if (this.Cache.QuoteObject.CL[CL].Vars[Variable].VariableID == VariableID) {\r\n return this.Cache.QuoteObject.CL[CL].Vars[Variable];\r\n }\r\n }\r\n }\r\n }\r\n },\r\n\r\n\r\n GetRateInfoVariable: function (ProgramRateVariableID, RateInfoID) {\r\n for (var CL in this.Cache.QuoteObject.CL) {\r\n if (CHSI.Common.DebugMode) {\r\n CHSI.Common.Log('CL ' + CL + ', ' + this.Cache.QuoteObject.CL[CL].Rates.length)\r\n }\r\n\r\n for (var RateIndex = 0 ; RateIndex < this.Cache.QuoteObject.CL[CL].Rates.length; RateIndex++) {\r\n if (CHSI.Common.DebugMode) {\r\n CHSI.Common.Log('Rate Index - ' + RateIndex);\r\n }\r\n\r\n for (var RateType in this.Cache.QuoteObject.CL[CL].Rates[RateIndex].RateTypes) {\r\n var RateDetail = this.Cache.QuoteObject.CL[CL].Rates[RateIndex].RateTypes[RateType];\r\n if (CHSI.Common.DebugMode) {\r\n CHSI.Common.Log('RateInfo - ' + RateDetail.RateInfoID);\r\n }\r\n\r\n if (RateDetail.RateInfoID == RateInfoID) {\r\n if (CHSI.Common.DebugMode) {\r\n CHSI.Common.Log('Rate Found');\r\n\r\n }\r\n\r\n for (var Variable in this.Cache.QuoteObject.CL[CL].Rates[RateIndex].RateTypes[RateType].Vars) {\r\n if (CHSI.Common.DebugMode) {\r\n CHSI.Common.Log('Checking - ' + this.Cache.QuoteObject.CL[CL].Rates[RateIndex].RateTypes[RateType].Vars[Variable].ProgramRateVariableID);\r\n }\r\n\r\n if (this.Cache.QuoteObject.CL[CL].Rates[RateIndex].RateTypes[RateType].Vars[Variable].ProgramRateVariableID == ProgramRateVariableID) {\r\n\r\n return this.Cache.QuoteObject.CL[CL].Rates[RateIndex].RateTypes[RateType].Vars[Variable];\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n },\r\n\r\n GetQuoteObjectfromVarID: function (VarID) {\r\n if (CHSI.Common.DebugMode) {\r\n CHSI.Common.Log('getting quote object for ' + VarID);\r\n }\r\n\r\n switch (VarID.substring(0, 3)) {\r\n case \"RaV\":\r\n var IDs = CHSI.Common.replaceString('RaV_', '', VarID).split('_');\r\n var ProgramRateVariableID = IDs[0];\r\n var RateInfoID = IDs[1];\r\n if (CHSI.Common.DebugMode) {\r\n CHSI.Common.Log('Getting Rate Variable for ProgramRateVariableID - ' + ProgramRateVariableID + ' and RateInfoID - ' + RateInfoID);\r\n }\r\n\r\n return this.GetRateInfoVariable(ProgramRateVariableID, RateInfoID);\r\n\r\n\r\n break;\r\n case \"VaR\":\r\n var VariableID = CHSI.Common.replaceString('VaR_', '', VarID);\r\n return this.GetVariable(VariableID);\r\n break;\r\n\r\n\r\n }\r\n\r\n },\r\n\r\n\r\n GetControlTypeFromVarID: function (VarID) {\r\n switch (VarID.substring(0, 3)) {\r\n case \"RaV\":\r\n return \"RateVariables\";\r\n break;\r\n case \"VaR\":\r\n return \"Variables\";\r\n break;\r\n\r\n }\r\n },\r\n\r\n GetControlType: function (AppearanceTemplate, SourceObject, ObjectType) {\r\n var ControlType;\r\n var Format = '';\r\n var DataCleanValue = '';\r\n \r\n if (AppearanceTemplate) {\r\n\r\n } else {\r\n AppearanceTemplate = {\r\n inEditMode: false\r\n , EditControlType:3\r\n , ReadOnlyControlType: 3\r\n , Format: ''\r\n , Locked:''\r\n }\r\n }\r\n if (AppearanceTemplate.inEditMode) {\r\n ControlType = AppearanceTemplate.EditControlType;\r\n }\r\n else {\r\n ControlType = AppearanceTemplate.ReadOnlyControlType;\r\n }\r\n if (CHSI.Common.DebugMode) {\r\n CHSI.Common.Log('Creating Appearance Control - ' + ControlType + ' - Display Title: ' + AppearanceTemplate.DisplayTitle)\r\n }\r\n var CleanValue = SourceObject.GetValue;\r\n if (CleanValue == 'null' || CleanValue == null) {\r\n CleanValue = '';\r\n } else {\r\n DataCleanValue = ' data-value=\"' + CleanValue + '\" ';\r\n }\r\n\r\n if (AppearanceTemplate.Format) {\r\n Format = ' data-format=\"' + AppearanceTemplate.Format + '\" '; \r\n }\r\n var ControlStart, ControlEnd;\r\n\r\n if (ControlType == 2) {\r\n ControlStart = ''\r\n ControlEnd = ''\r\n }\r\n if (ControlType == 3) {\r\n if (AppearanceTemplate.Format) {\r\n Format = ' data-format=\"' + AppearanceTemplate.Format + '\" ';\r\n CleanValue = CHSI.Common.String.Format(AppearanceTemplate.Format, CleanValue);\r\n }\r\n\r\n ControlStart = '' + SourceObject.FieldOptions[i].Key + '');\r\n } else {\r\n HTML.push('');\r\n }\r\n } \r\n return HTML.join('');\r\n },\r\n\r\n\r\n MenuController: function (QuoteObj, xTarget) { \r\n var HTML = [];\r\n HTML.push('Go To Client');\r\n HTML.push('New Note');\r\n HTML.push('New Task');\r\n HTML.push('Change Status');\r\n if (location.href.indexOf(\"Finish.aspx\") != -1 && QuoteObj.QuoteStatus && QuoteObj.QuoteStatus.Bind == 'Y' && QuoteObj.QuoteStatus.Editable == 'Y') {\r\n HTML.push('Bind Quote');\r\n }\r\n if (QuoteObj.QuoteStatus && QuoteObj.QuoteStatus.Editable == 'Y') {\r\n HTML.push('Recalculate Quote');\r\n }\r\n\r\n if (QuoteObj.QuoteStatus && QuoteObj.QuoteStatus.QStatus.toLowerCase() == 'final') {\r\n HTML.push('Add Endorsement');\r\n } \r\n \r\n if (CHSI.UW.MuniQuote.Cache.QuoteList && CHSI.UW.MuniQuote.Cache.QuoteList.length > 1 && CHSI.UW.MuniQuote.Cache.QuoteObject.ParentQuoteID) {\r\n HTML.push('Go to Quote'); \r\n }\r\n\r\n HTML.push('Copy Quote');\r\n HTML.push(\"Delete Quote\");\r\n\r\n $(xTarget).html(HTML.join(''));\r\n },\r\n\r\n RefreshPage: function () {\r\n //window.location.reload();\r\n },\r\n\r\n ShowNewNote: function (ClientID) {\r\n var NoteURL = '/utilities/actionitemedit.aspx?ClientID=' + ClientID;\r\n ShowPopup(\"NewNote\", NoteURL, \"New Note\", 750, 530, null, false/*, SaveQuoteDetail*/);\r\n },\r\n\r\n ShowRecalculateQuote: function (QuoteID) {\r\n var Response = confirm('Please confirm that you would like to update this Quote.');\r\n\r\n if (Response) {\r\n CHSI.UW.MuniQuote.RecalculateQuote(QuoteID, CHSI.UW.MuniQuote.RefreshPage);\r\n }\r\n },\r\n ShowNewTask: function (ClientID) {\r\n var TaskURL = '/utilities/taskedit.aspx?ClientID=' + ClientID;\r\n ShowPopup(\"NewTask\", TaskURL, \"New Task\", 870, 600, null, false);\r\n },\r\n\r\n ChangeStatus: function (PolicyYear, QuoteID) {\r\n var ChangeStatusURL = '/utilities/quotestatusedit.aspx?PolicyYear=' + PolicyYear + '&QuoteID=' + QuoteID;\r\n ShowPopup(\"ChangeStatus\", ChangeStatusURL, \"Change Status\", 700, 490, null, false);\r\n },\r\n\r\n ShowCopyQuote: function (ClientID, QuoteID) {\r\n var CopyQuoteURL = '/UW/Modals/CopyQuote.aspx?ClientID=' + ClientID + '&QuoteID=' + QuoteID;\r\n ShowPopup(\"CopyQuote\", CopyQuoteURL, \"Copy Quote\", 260, 200, null, false);\r\n },\r\n\r\n ShowBindQuote: function (ClientID, QuoteID) {\r\n\r\n var parentRefresh = null\r\n if (parent.RefreshPage) {\r\n parentRefresh = parent.RefreshPage;\r\n }\r\n\r\n var BindQuoteURL = '/UW/Modals/BindQuote.aspx?ClientID=' + ClientID + '&QuoteID=' + QuoteID;\r\n ShowPopup(\"BindQuote\", BindQuoteURL, \"Bind Quote\", 270, 100, parentRefresh, true);\r\n },\r\n\r\n SaveOriginalValue: function (e) {\r\n this.Cache.CurrentControlValue = jQuery(e).val();\r\n },\r\n\r\n CacheValue: function () {\r\n this.Cache.CurrentControlCachedValue = this.Cache.CurrentControlValue;\r\n },\r\n\r\n GetAddCoverageLineSelectList: function () {\r\n var html = [];\r\n var availableCL = 0;\r\n html.push('');\r\n html.push('');\r\n } else {\r\n html[0] = '';\r\n }\r\n\r\n return html.join('');\r\n\r\n },\r\n\r\n SanitizeTitle: function (value) {\r\n if (value == null || value == '') {\r\n return 'no formula';\r\n }\r\n else {\r\n return value;\r\n }\r\n },\r\n\r\n CalculateGrossPrem: function (Payroll, BaseRate) {\r\n var GrossPrem = 0;\r\n GrossPrem = CHSI.Math.SafeMultiply(Payroll, (CHSI.Math.SafeDivide(BaseRate, 100)));\r\n return GrossPrem;\r\n },\r\n\r\n DisablePage: function(Editable){\r\n if (Editable == \"N\") {\r\n CHSI.Common.Page.ReadOnly(true, true, true);\r\n $('#jxSaveNext').attr('value', 'Next');\r\n $('#jxSaveNext').attr('disabled', false);\r\n $('#jxCancel').attr('disabled', false);\r\n\r\n }\r\n },\r\n\r\n\r\n GetAppearanceControlProperties: function(ObjectType, keyID, SourceObject, DisplayFilter, ReadOnlyOverride) {\r\n var AppearanceCollection = CHSI.UW.MuniQuote.GetAppearanceCollection(ObjectType);\r\n var AppearanceObj = {\r\n Collapsable: 'Collapsable',\r\n Prop: null,\r\n Locked: '',\r\n ObjectType:null\r\n\r\n };\r\n var key = 'k' + keyID;\r\n for (var prop in AppearanceCollection) {\r\n if (prop == key) {\r\n var Display = true;\r\n if (DisplayFilter && AppearanceCollection[prop].DisplayMode < DisplayFilter) {\r\n Display = false;\r\n }\r\n if (Display) {\r\n var Collapsable = \"Collapsable\";\r\n if (AppearanceCollection[prop].DisplayMode && AppearanceCollection[prop].DisplayMode == 2) {\r\n Collapsable = \"NonCollapsable\";\r\n }\r\n var locked = '';\r\n if (SourceObject && SourceObject.isLocked == true) {\r\n //locked = '\"Modified';\r\n locked = 'locked';\r\n }\r\n if (ReadOnlyOverride == 1) {\r\n AppearanceCollection[prop].inEditMode = false;\r\n locked = '';\r\n }\r\n AppearanceObj.Collapsable = Collapsable;\r\n AppearanceObj.Prop = AppearanceCollection[prop];\r\n if (AppearanceObj.Prop) {\r\n AppearanceObj.Prop.Locked = locked;\r\n } \r\n AppearanceObj.Locked = locked;\r\n AppearanceObj.Display = Display;\r\n AppearanceObj.ObjectType = ObjectType;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n return AppearanceObj;\r\n },\r\n\r\n GetVariableDifference: function(Variable){ \r\n var DiffObj = {\r\n Var1: Variable,\r\n Var2: null,\r\n Difference: Variable,\r\n Type:'Quote'\r\n };\r\n\r\n if (CHSI.UW.MuniQuote.Cache.QuoteList && CHSI.UW.MuniQuote.Cache.QuoteList.length > 1)\r\n {\r\n if (CHSI.UW.MuniQuote.Cache.QuoteObject.ParentQuoteID) {\r\n DiffObj.Type = 'Endorsement';\r\n }\r\n CHSI.UW.MuniQuote.Cache.QuoteObject= CHSI.UW.MuniQuote.Cache.QuoteList[1];\r\n DiffObj.Var2 = CHSI.UW.MuniQuote.GetVariable(DiffObj.Var1.VariableID);\r\n DiffObj.Difference = CHSI.UW.MuniQuote.GetValueByDataType(DiffObj.Var1) - CHSI.UW.MuniQuote.GetValueByDataType(DiffObj.Var2);\r\n CHSI.UW.MuniQuote.Cache.QuoteObject = CHSI.UW.MuniQuote.Cache.QuoteList[0];\r\n }\r\n\r\n return DiffObj;\r\n }\r\n\r\n\r\n\r\n\r\n}\r\n\r\n/////////////////////////////////////////////////////////////////////\r\n// was handlebars.js extensions to handlebars\r\n////////////////////////////////////////////////////////////////////\r\nCHSI.UW.MuniQuote.Preparehelpers = function () {\r\n\r\n Handlebars.registerHelper('GetValueByDataType', function (DataObject) {\r\n return CHSI.UW.MuniQuote.GetValueByDataType(DataObject);\r\n });\r\n\r\n Handlebars.registerHelper('GetAppearanceTitle', function (ObjectType, keyID, DisplayFilter) {\r\n var AppearanceObj = CHSI.UW.MuniQuote.GetAppearanceControlProperties(ObjectType, keyID, null, DisplayFilter, 0); \r\n ret = AppearanceObj.Prop==null?'':'' + AppearanceObj.Prop.DisplayTitle + '';\r\n return new Handlebars.SafeString(ret);\r\n });\r\n\r\n\r\n Handlebars.registerHelper('GetAddCoverageLineControl', function () {\r\n return new Handlebars.SafeString(CHSI.UW.MuniQuote.GetAddCoverageLineControl());\r\n });\r\n\r\n Handlebars.registerHelper('GetAddCoverageLineSelectList', function () {\r\n return new Handlebars.SafeString(CHSI.UW.MuniQuote.GetAddCoverageLineSelectList());\r\n });\r\n\r\n Handlebars.registerHelper('GetAppearanceDisplayValue', function (ObjectType, keyID, DisplayFilter) {\r\n var AppearanceObj = CHSI.UW.MuniQuote.GetAppearanceControlProperties(ObjectType, keyID, null, DisplayFilter, 0);\r\n ret = AppearanceObj.Prop == null ? '' : '' + AppearanceObj.Prop.DisplayTitle + '';\r\n return new Handlebars.SafeString(ret);\r\n });\r\n\r\n\r\n Handlebars.registerHelper('GetAppearanceControl', function (ObjectType, keyID, SourceObject, DisplayFilter, ReadOnlyOverride) {\r\n var AppearanceObj = CHSI.UW.MuniQuote.GetAppearanceControlProperties(ObjectType, keyID, SourceObject, DisplayFilter, ReadOnlyOverride);\r\n ret = AppearanceObj.Prop == null ? '' : '' + CHSI.UW.MuniQuote.GetControlType(AppearanceObj.Prop, SourceObject, ObjectType) + '';\r\n return new Handlebars.SafeString(ret);\r\n });\r\n\r\n Handlebars.registerHelper('GetVariableSummary', function (ObjectType, keyID, SourceObject, DisplayFilter, ReadOnlyOverride) {\r\n var AppearanceObj = CHSI.UW.MuniQuote.GetAppearanceControlProperties(ObjectType, keyID, SourceObject, DisplayFilter, ReadOnlyOverride);\r\n ret = AppearanceObj.Prop == null ? '' : '' + AppearanceObj.Prop.DisplayTitle + '';\r\n ret += AppearanceObj.Prop == null ? '' : '' + CHSI.UW.MuniQuote.GetControlType(AppearanceObj.Prop, SourceObject, ObjectType) + '';\r\n\r\n var DifObj = CHSI.UW.MuniQuote.GetVariableDifference(SourceObject);\r\n if (DifObj.Var2 != null) {\r\n var EditMode = AppearanceObj.Prop.inEditMode;\r\n var Var2 = DifObj.Var2.GetValue;\r\n AppearanceObj.Prop.inEditMode = false;\r\n ret += AppearanceObj.Prop == null ? '' : '' + CHSI.UW.MuniQuote.GetControlType(AppearanceObj.Prop, DifObj.Var2, ObjectType) + '';\r\n CHSI.UW.MuniQuote.SetValue(DifObj.Var2, DifObj.Difference);\r\n ret += AppearanceObj.Prop == null ? '' : '' + CHSI.UW.MuniQuote.GetControlType(AppearanceObj.Prop, DifObj.Var2, ObjectType) + '';\r\n CHSI.UW.MuniQuote.SetValue(DifObj.Var2, Var2);\r\n AppearanceObj.Prop.inEditMode = EditMode;\r\n }\r\n return new Handlebars.SafeString(ret);\r\n });\r\n\r\n Handlebars.registerHelper('GetVariableSummaryTitles', function (ObjectType, keyID, SourceObject, DisplayFilter, ReadOnlyOverride) {\r\n var ret = '';\r\n\r\n var DiffObj = CHSI.UW.MuniQuote.GetVariableDifference(SourceObject);\r\n if (DiffObj.Var2 != null) {\r\n var AppearanceObj = CHSI.UW.MuniQuote.GetAppearanceControlProperties(ObjectType, keyID, SourceObject, DisplayFilter, ReadOnlyOverride);\r\n ret += 'Variable';\r\n if (DiffObj.Type != 'Quote') {\r\n ret += 'Endorsement Value';\r\n ret += 'Original Value';\r\n } else {\r\n ret += 'Original Value';\r\n ret += 'Endorsement Value';\r\n }\r\n \r\n ret += 'Difference';\r\n }\r\n return new Handlebars.SafeString(ret);\r\n });\r\n\r\n\r\n Handlebars.registerHelper('GetQuotePropertyTextbox', function (PropertyName, ContentType) {\r\n\r\n return new Handlebars.SafeString(CHSI.UW.MuniQuote.GetQuotePropertyDisplay(PropertyName, ContentType));\r\n });\r\n\r\n\r\n Handlebars.registerHelper('GetFormulaControl', function (ObjectType, keyID, SourceObject) {\r\n var AppearanceCollection = CHSI.UW.MuniQuote.GetAppearanceCollection(ObjectType);\r\n var ret = \"\";\r\n var key = 'k' + keyID;\r\n var ControlOutput = '';\r\n var locked = '';\r\n var EditableControl = false;\r\n var EditMode = ' data-editmode=\"true\" ';\r\n\r\n var AppearanceObj = CHSI.UW.MuniQuote.GetAppearanceControlProperties(ObjectType, keyID, SourceObject, 1, 0);\r\n\r\n for (var prop in AppearanceCollection) {\r\n if (prop == key) {\r\n CHSI.Common.Log('hello this is the key - ' + key + ' this should be showing a control - ' + SourceObject.VariableName + ' - ' + AppearanceCollection[prop].DisplayTitle);\r\n ControlOutput = CHSI.UW.MuniQuote.GetControlType(AppearanceObj.Prop, SourceObject, ObjectType);\r\n EditableControl = AppearanceCollection[prop].inEditMode;\r\n break;\r\n }\r\n }\r\n\r\n if (SourceObject.isLocked == true) {\r\n locked = 'style=\"border:1px solid orange;\"';//'\"Modified';\r\n }\r\n\r\n if (EditableControl == false) {\r\n EditMode = ' data-editmode=\"false\" ';\r\n if (SourceObject.GetValue) {\r\n ControlOutput = SourceObject.GetValue.toString().replace('-214748364', '');\r\n } else {\r\n ControlOutput = '';\r\n }\r\n ControlOutput = '' + ControlOutput + '';\r\n }\r\n \r\n\r\n \r\n\r\n var id = CHSI.UW.MuniQuote.GetVarIDfromObject(SourceObject, ObjectType);\r\n var infopanel = '
'\r\n\r\n ret = '' + ControlOutput + infopanel + '';\r\n\r\n return new Handlebars.SafeString(ret);\r\n });\r\n\r\n Handlebars.registerHelper('CalculateGrossPrem', function (Payroll, BaseRate) {\r\n var GrossPrem = 0;\r\n GrossPrem = CHSI.UW.MuniQuote.CalculateGrossPrem(Payroll, BaseRate);\r\n return new Handlebars.SafeString(GrossPrem);\r\n });\r\n\r\n Handlebars.registerHelper('RoundTotalCommission', function (CommissionAmount) {\r\n CommissionAmount = CHSI.Math.SafeMultiply(CommissionAmount, 100.0);\r\n CommissionAmount = CHSI.Math.SafeDivide(CommissionAmount, 100.0);\r\n return new Handlebars.SafeString(CommissionAmount);\r\n });\r\n}\r\n","\r\nCHSI.UW.Narrative = {\r\n Init: function (QuoteID) {\r\n this.Templates.Document = CHSITemplates.Template_QuoteNarrative;\r\n this.Events.Global();\r\n this.Calls.GetQuoteInfo();\r\n\r\n },\r\n Templates: {\r\n\r\n },\r\n Cache: {\r\n NarrativeObject: null\r\n , QuoteID: 0\r\n , ClientID: 0\r\n , GroupID: ''\r\n , Editable: 'Y'\r\n },\r\n BindPresentationLayer: function () {\r\n $('#jxNarrativeContainer').html(this.Templates.Document({ Narrative: this.Cache.NarrativeObject }));\r\n CHSI.UW.MuniQuote.DisablePage(this.Cache.Editable);\r\n },\r\n Events: {\r\n Global: function () {\r\n $('#jxNarrativeContainer').on('click', '#jxDeleteNarrative', function () {\r\n var Button = $(this);\r\n var NarrativeID = Button.data('narrativeid');\r\n var r = confirm('Are you sure you want to delete this narrative?');\r\n if (r) {\r\n CHSI.UW.Narrative.Calls.DeleteNarrative(NarrativeID);\r\n }\r\n });\r\n\r\n $('#jxNarrativeContainer').on('click', '#jxEditNarrative', function () {\r\n var Button = $(this);\r\n var NarrativeTypeID = Button.data('narrativetypeid');\r\n var NarrativeID = Button.data('narrativeid');\r\n var ShowEditNarrativeURL = '/UW/Modals//QuoteNarrativeEditor.aspx?QuoteID=' + CHSI.UW.Narrative.Cache.QuoteID + '&NarrativeTypeID=' + NarrativeTypeID + '&NarrativeID=' + NarrativeID;\r\n ShowPopup(\"EditNarrative\", ShowEditNarrativeURL, \"Edit Narrative\", 700, 480, CHSI.UW.Narrative.Calls.GetNarrative, false);\r\n\r\n });\r\n\r\n $('#jxSaveNext').on('click', function () {\r\n CHSI.Common.Navigation.NavigateToNextTab();\r\n });\r\n\r\n $('#jxCancel').on('click', function () {\r\n CHSI.Common.Navigation.NavigateToReturnURL();\r\n });\r\n },\r\n GetNarrativeFromCollection: function (NarrativeID) {\r\n var Narrative = null;\r\n for (var i = 0; i < CHSI.UW.Narrative.Cache.NarrativeObject.length; i++) {\r\n if (CHSI.UW.Narrative.Cache.NarrativeObject[i].Narrative && CHSI.UW.Narrative.Cache.NarrativeObject[i].Narrative.NarrativeID == NarrativeID) {\r\n Narrative = CHSI.UW.Narrative.Cache.NarrativeObject[i].Narrative;\r\n break;\r\n }\r\n }\r\n\r\n return Narrative;\r\n\r\n }\r\n },\r\n Calls: {\r\n GetQuoteInfo: function () {\r\n var Options = {}; \r\n Options.URL = '/api/UW/MuniQuote/GetBasicQuote?QuoteID=' + CHSI.UW.Narrative.Cache.QuoteID; \r\n Options.Success = function (e) {\r\n if (e.QuoteStatus && e.QuoteStatus.Editable == 'N') {\r\n CHSI.UW.Narrative.Cache.Editable = 'N';\r\n }\r\n CHSI.UW.Narrative.Calls.GetNarrative();\r\n var SecOptions = {},\r\n isVerified = false;\r\n SecOptions.PermissionID = 14;\r\n SecOptions.Success = function (v) {\r\n isVerified = v;\r\n\r\n if (isVerified) {\r\n CHSI.MuniUW.MenuController(e, '#jxMenuContainer');\r\n }\r\n }\r\n\r\n CHSI.Security.HasPermission(SecOptions);\r\n\r\n }\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n\r\n GetNarrative: function () {\r\n var Options = {};\r\n Options.URL = '/api/UW/Narrative/GetQuoteNarrativeTypes?QuoteID=' + CHSI.UW.Narrative.Cache.QuoteID; \r\n Options.Error = CHSI.DOM.ProcessAjaxError;\r\n Options.Success = function (e) {\r\n CHSI.UW.Narrative.Cache.NarrativeObject = e;\r\n CHSI.UW.Narrative.Cache.NarrativeObject.QuoteID = CHSI.UW.Narrative.Cache.QuoteID;\r\n CHSI.UW.Narrative.BindPresentationLayer();\r\n };\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n DeleteNarrative: function (NarrativeID) {\r\n var Options = {};\r\n Options.URL = '/api/UW/Narrative/SaveQuoteNarrative';\r\n var Narrative = CHSI.UW.Narrative.Events.GetNarrativeFromCollection(NarrativeID);\r\n Narrative.Status = 'Deleted';\r\n Narrative.CurrentUser = '';\r\n Options.Data = Narrative;\r\n Options.Error = CHSI.DOM.ProcessAjaxError;\r\n Options.Success = function (e) {\r\n CHSI.UW.Narrative.Calls.GetNarrative();\r\n };\r\n CHSI.Common.Ajax.Post(Options);\r\n }\r\n\r\n\r\n }\r\n\r\n}","CHSI.UW.NarrativeEditor = {\r\n Init: function (QuoteID, NarrativeTypeID, NarrativeID) {\r\n \r\n this.Cache.QuoteID = QuoteID;\r\n this.Cache.NarrativeTypeID = NarrativeTypeID;\r\n if (NarrativeID == \"undefined\") {\r\n this.Cache.NarrativeID = 0;\r\n this.Cache.Editor = CKEDITOR.replace('jxNarrativeText', { height: '350px' });\r\n } else {\r\n this.Cache.NarrativeID = NarrativeID;\r\n }\r\n\r\n this.Events.Global();\r\n this.Calls.GetNarrative();\r\n },\r\n Templates: {},\r\n Cache: {\r\n QuoteID: 0,\r\n NarrativeTypeID: 0,\r\n NarrativeID: 0,\r\n NarrativeObject: {},\r\n Editor: null\r\n },\r\n BindPresentationLayer: function () {\r\n this.Cache.Editor = CKEDITOR.replace('jxNarrativeText', { height: '350px' });\r\n CHSI.UW.NarrativeEditor.Cache.Editor.setData(this.Cache.NarrativeObject.NarrativeValue);\r\n },\r\n Events: {\r\n Global: function () {\r\n $('#jxSave').on('click', function () {\r\n CHSI.UW.NarrativeEditor.Calls.Save();\r\n closeThis(true);\r\n });\r\n $('#jxCancel').on('click', function () {\r\n closeThis(true);\r\n });\r\n\r\n },\r\n PersistValues: function () {\r\n var Narrative = {};\r\n Narrative.NarrativeID = 0;\r\n Narrative.NarrativeTypeID = CHSI.UW.NarrativeEditor.Cache.NarrativeTypeID;\r\n Narrative.QuoteID = CHSI.UW.NarrativeEditor.Cache.QuoteID;\r\n Narrative.Status = 'Active';\r\n if (CHSI.UW.NarrativeEditor.Cache.NarrativeID) {\r\n Narrative = CHSI.UW.NarrativeEditor.Cache.NarrativeObject;\r\n }\r\n Narrative.NarrativeValue = CHSI.UW.NarrativeEditor.Cache.Editor.getData();\r\n return Narrative;\r\n },\r\n\r\n },\r\n Calls: {\r\n GetNarrative: function () {\r\n if (CHSI.UW.NarrativeEditor.Cache.NarrativeID) {\r\n var Options = {};\r\n\r\n Options.URL = '/api/UW/Narrative/GetQuoteNarrative?NarrativeID=' + CHSI.UW.NarrativeEditor.Cache.NarrativeID;\r\n Options.Success = function (e) {\r\n CHSI.UW.NarrativeEditor.Cache.NarrativeObject = e;\r\n CHSI.UW.NarrativeEditor.BindPresentationLayer();\r\n }\r\n CHSI.Common.Ajax.Get(Options);\r\n }\r\n },\r\n Save: function () {\r\n\r\n var Options = {};\r\n Options.URL = '/api/UW/Narrative/SaveQuoteNarrative';\r\n Options.Data = CHSI.UW.NarrativeEditor.Events.PersistValues();\r\n Options.Success = function (e) {\r\n\r\n }\r\n CHSI.Common.Ajax.Post(Options);\r\n },\r\n }\r\n}","CHSI.UW.MuniUW_Premium = {\r\n Init: function (QuoteID) {\r\n this.Cache.QuoteID = QuoteID;\r\n this.Templates.Premium = CHSITemplates.Template_QuotePremium_Premium;\r\n\r\n if (this.Cache.cookieValue.length == 0) {\r\n if ($.cookie('QTPremiumSV')) {\r\n CHSI.UW.MuniUW_Premium.Cache.cookieValue.push($.cookie('QTPremiumSV'));\r\n }\r\n }\r\n\r\n this.Calls.GetQuoteDetails(QuoteID);\r\n this.Events.Global();\r\n },\r\n Templates: {},\r\n Cache: {\r\n QuoteObject: {},\r\n InfoObject: {},\r\n QuoteID: null,\r\n cookieValue: [],\r\n Editable: 'Y',\r\n CurrentSelectedElementID: null\r\n },\r\n Binds: {\r\n BindQuote: function () {\r\n if (QuoteObject) {\r\n CHSI.UW.MuniQuote.Cache.QuoteObject = QuoteObject;\r\n CHSI.MuniUW.QuoteObject = QuoteObject;\r\n QuoteObject = null;\r\n }\r\n $('#jxPremium').html(CHSI.UW.MuniUW_Premium.Templates.Premium(CHSI.UW.MuniQuote.Cache.QuoteObject));\r\n restart = true;\r\n sorttable.init();\r\n if (CHSI.UW.MuniUW_Premium.Cache.CurrentSelectedElementID) {\r\n $('#' + CHSI.UW.MuniUW_Premium.Cache.CurrentSelectedElementID).focus();\r\n }\r\n if (CHSI.UW.MuniQuote.Cache.QuoteList.length > 1 && CHSI.UW.MuniQuote.Cache.QuoteObject.ParentQuoteID) {\r\n $('.QuoteLabel').html('Endorsement');\r\n }\r\n CHSI.UW.MuniUW_Premium.Events.ExpandCoverageLines();\r\n CHSI.UW.MuniQuote.DisablePage(CHSI.UW.MuniUW_Premium.Cache.Editable);\r\n }\r\n },\r\n Events: {\r\n Global: function () {\r\n\r\n $('#jxPremium').on('click', '.plusbutton', function () {\r\n var plusbuttonid = $(this).attr('id');\r\n var ids = plusbuttonid.split(\"_\");\r\n var cl = ids[1];\r\n var cookieValue = null;\r\n if ($('#jxplusimg_' + cl).data(\"status\") == '+') {\r\n $('#jxplusimg_' + cl).attr('src', '/images/images/minus.gif');\r\n $('#jxplusimg_' + cl).data(\"status\", \"-\");\r\n $('#jxCL_' + cl + ' .Collapsable').show();\r\n\r\n CHSI.UW.MuniUW_Premium.Cache.cookieValue.push(cl);\r\n $.cookie('QTPremiumSV', CHSI.UW.MuniUW_Premium.Cache.cookieValue, { expires: 7 });\r\n } else {\r\n $('#jxplusimg_' + cl).attr('src', '/images/images/plus.gif');\r\n $('#jxplusimg_' + cl).data(\"status\", \"+\");\r\n $('#jxCL_' + cl + ' .Collapsable').hide();\r\n\r\n CHSI.UW.MuniUW_Premium.Cache.cookieValue = CHSI.UW.MuniUW_Premium.Cache.cookieValue.toString().replace(cl, '').replace(/,/g, '');\r\n $.cookie('QTPremiumSV', CHSI.UW.MuniUW_Premium.Cache.cookieValue, { expires: 7 });\r\n if ($.cookie('QTPremiumSV') == null || $.cookie('QTPremiumSV') == undefined || $.cookie('QTPremiumSV') == \"\") {\r\n $.removeCookie('QTPremiumSV');\r\n CHSI.UW.MuniUW_Premium.Cache.cookieValue = [];\r\n }\r\n }\r\n });\r\n\r\n $('#jxCheatSheetLink').attr('href', 'FormulaWorksheet.aspx?QuoteID=' + CHSI.UW.MuniUW_Premium.Cache.QuoteID);\r\n jQuery('#jxCheatSheetLink').on('click', CHSI.UW.MuniUW_Premium.Events.ShowWorkSheet);\r\n\r\n\r\n $('#jxPremium').on('change', '.Variable', function () {\r\n QuoteObject = CHSI.UW.MuniQuote.Cache.QuoteObject;\r\n var Variable = $(this);\r\n if (CHSI.UW.MuniQuote.Cache.QuoteObject.QuoteStatus.RequireComments == 'Y') {\r\n CHSI.UW.MuniUW_Premium.Events.ShowSaveVariable(Variable.attr(\"id\"), CHSI.UW.MuniUW_Premium.Cache.QuoteID, Variable.val());\r\n } else {\r\n CHSI.UW.MuniUW_Premium.Calls.SaveVariable(Variable.attr(\"id\"), Variable.val(), false);\r\n }\r\n\r\n });\r\n\r\n $('#jxPremium').on('focus', '.Variable', function () {\r\n var Variable = $(this);\r\n Variable.val(Variable.val());\r\n $(this).select();\r\n });\r\n\r\n $('#jxPremium').on('focusout', '.Variable', function () {\r\n var Variable = $(this);\r\n var FormatedValue = '';\r\n if (Variable.data('format')) {\r\n var Format = Variable.data('format');\r\n var OriginalValue = Variable.data('value');\r\n FormatedValue = CHSI.Common.String.Format(Format, OriginalValue);\r\n Variable.val(FormatedValue);\r\n }\r\n\r\n });\r\n\r\n $('#jxSaveNext').on('click', function () {\r\n CHSI.Common.Navigation.NavigateToNextTab();\r\n });\r\n\r\n $('#jxCancel').on('click', function () {\r\n CHSI.Common.Navigation.NavigateToReturnURL();\r\n });\r\n },\r\n\r\n ShowSaveVariable: function (VarID, QuoteID, NewValue) {\r\n var ShowSaveVariableURL = '/UW/Modals/VariableSave.aspx?VarID=' + VarID + '&QuoteID=' + QuoteID + '&NewValue=' + NewValue;\r\n ShowPopup(\"SaveVariable\", ShowSaveVariableURL, \"Save Variable: \" + VarID, 290, 110, CHSI.UW.MuniUW_Premium.Binds.BindQuote, false);\r\n\r\n },\r\n\r\n ShowWorkSheet: function (e) {\r\n var URL = 'FormulaWorksheet.aspx?QuoteID=' + CHSI.UW.MuniUW_Premium.Cache.QuoteID;\r\n\r\n if (e.shiftKey) {\r\n window.open(URL);\r\n }\r\n else { ShowPopup('FormulaWorksheet', URL, 'Formula Worksheet', 0, 0, CHSI.UW.MuniUW_Premium.Calls.GetQuoteDetails, true); }\r\n return false;\r\n\r\n },\r\n\r\n ExpandCoverageLines: function () {\r\n var qtPremiumCookieValue = 0;\r\n if ($.cookie('QTPremiumSV') != undefined) {\r\n qtPremiumCookieValue = $.cookie('QTPremiumSV');\r\n }\r\n if (qtPremiumCookieValue != 0) {\r\n if (qtPremiumCookieValue.length > 0) {\r\n qtPremiumCookieValue = qtPremiumCookieValue.replace(/,/g, '');\r\n $('.Collapsable').hide();\r\n for (Index = 0; Index < qtPremiumCookieValue.length; Index++) {\r\n $('#jxplusimg_' + qtPremiumCookieValue[Index]).attr('src', '/images/images/minus.gif');\r\n $('#jxplusimg_' + qtPremiumCookieValue[Index]).data(\"status\", \"-\");\r\n $('#jxCL_' + qtPremiumCookieValue[Index] + ' .Collapsable').show();\r\n }\r\n } else {\r\n for (Index = 0; Index < qtPremiumCookieValue.length; Index++) {\r\n $('#jxplusimg_' + qtPremiumCookieValue[Index]).attr('src', '/images/images/plus.gif');\r\n $('#jxplusimg_' + qtPremiumCookieValue[Index]).data(\"status\", \"+\");\r\n $('#jxCL_' + qtPremiumCookieValue[Index] + ' .Collapsable').hide();\r\n }\r\n }\r\n } else {\r\n $('.Collapsable').hide();\r\n }\r\n }\r\n\r\n },\r\n GetNextEditableFocus: function (currentID) {\r\n var NextInput = $('#' + currentID).closest('td').next().find('input');\r\n\r\n if (NextInput.length == 0) {\r\n NextInput = $('#' + currentID).closest('tr').next().children('td').children('input').first();\r\n }\r\n\r\n if (NextInput.length == 0) {\r\n\r\n\r\n return null;\r\n }\r\n else {\r\n if (NextInput.is('[readonly]')) {\r\n return CHSI.UW.MuniUW_Premium.GetNextEditableFocus(NextInput.attr('id'));\r\n }\r\n else {\r\n return NextInput.attr('id');\r\n }\r\n\r\n }\r\n\r\n\r\n },\r\n Calls: {\r\n GetQuoteDetails: function (QuoteID) {\r\n if (!QuoteID) {\r\n QuoteID = CHSI.UW.MuniUW_Premium.Cache.QuoteID;\r\n }\r\n var Success = function (e) {\r\n CHSI.UW.MuniQuote.Cache.QuoteList = e;\r\n CHSI.UW.MuniQuote.Cache.QuoteObject = e[0];\r\n if (CHSI.UW.MuniQuote.Cache.QuoteObject.QuoteStatus && CHSI.UW.MuniQuote.Cache.QuoteObject.QuoteStatus.Editable == 'N') {\r\n CHSI.UW.MuniUW_Premium.Cache.Editable = 'N';\r\n }\r\n CHSI.UW.MuniUW_Premium.Binds.BindQuote();\r\n\r\n var SecOptions = {},\r\n isVerified = false;\r\n SecOptions.PermissionID = 14;\r\n SecOptions.Success = function (e) {\r\n isVerified = e;\r\n if (isVerified) {\r\n CHSI.UW.MuniQuote.MenuController(CHSI.UW.MuniQuote.Cache.QuoteObject, '#jxMenuContainer');\r\n }\r\n \r\n }\r\n CHSI.Security.HasPermission(SecOptions);\r\n \r\n }\r\n\r\n CHSI.UW.MuniQuote.GetQuoteDetails(QuoteID, Success);\r\n\r\n },\r\n\r\n SaveVariable: function (VarID, NewValue, ForceAutoCalculation) {\r\n var SourceObject = CHSI.UW.MuniQuote.GetQuoteObjectfromVarID(VarID);\r\n\r\n var ajaxData = {};\r\n ajaxData.DataObject = {};\r\n ajaxData.Comments = '';\r\n ajaxData.DataObject.isLocked = 1;\r\n ajaxData.DataObject.StringValue = SourceObject.StringValue;\r\n ajaxData.DataObject.DateValue = SourceObject.DateValue;\r\n ajaxData.DataObject.IntegerValue = SourceObject.IntegerValue;\r\n ajaxData.DataObject.DecimalValue = SourceObject.DecimalValue;\r\n ajaxData.DataObject.BoolValue = SourceObject.BoolValue;\r\n ajaxData.DataObject.DataType = SourceObject.DataType;\r\n ajaxData.DataObject.QuoteID = CHSI.UW.MuniQuote.Cache.QuoteObject.QuoteID;\r\n ajaxData.isAutoCalculated = SourceObject.isAutoCalculated;\r\n ajaxData.ForceAutoCalculation = ForceAutoCalculation;\r\n ajaxData.Status = 'active';\r\n ajaxData.Type='Quote';\r\n \r\n if(CHSI.UW.MuniQuote.Cache.QuoteList.length>1 && CHSI.UW.MuniQuote.Cache.QuoteObject.ParentQuoteID)\r\n { \r\n ajaxData.Type = 'Endorsement';\r\n }\r\n CHSI.UW.MuniQuote.SetValue(ajaxData.DataObject, NewValue);\r\n CHSI.UW.MuniUW_Premium.Cache.CurrentSelectedElementID = CHSI.UW.MuniUW_Premium.GetNextEditableFocus(VarID);\r\n\r\n\r\n var Success = function (e) {\r\n var Appearance = CHSI.UW.MuniQuote.Cache.QuoteObject.Appearance;\r\n e.Appearance = Appearance;\r\n CHSI.UW.MuniQuote.Cache.QuoteObject = e;\r\n CHSI.UW.MuniQuote.Cache.QuoteList[0] = e;\r\n QuoteObject = CHSI.UW.MuniQuote.Cache.QuoteObject;\r\n CHSI.UW.MuniUW_Premium.Binds.BindQuote();\r\n\r\n }\r\n\r\n CHSI.UW.MuniQuote.SaveVariable(VarID, ajaxData, Success);\r\n }\r\n }\r\n\r\n}\r\n","CHSI.UW.MuniQuote_VariableHistory = {\r\n Init: function (VarID, QuoteID, EditMode) {\r\n this.Cache.VarID = VarID;\r\n this.Cache.QuoteID = QuoteID;\r\n if (EditMode == 'true') {\r\n this.Cache.EditMode = true;\r\n } else {\r\n this.Cache.EditMode = false;\r\n }\r\n \r\n this.Templates.History = CHSITemplates.Template_QuotePremium_VariableHistory;\r\n this.Events.Global();\r\n this.Calls.GetHistory();\r\n },\r\n Templates: {},\r\n Cache: {\r\n VarID: null,\r\n QuoteID: null,\r\n EditMode: false,\r\n HistoryObj: null,\r\n VariableName: ''\r\n },\r\n BindPresentationLayer: function () {\r\n $('#jxHistoryContainer').html(this.Templates.History({ HistoryObj: this.Cache.HistoryObj }));\r\n restart = true;\r\n sorttable.init();\r\n\r\n },\r\n\r\n Events: {\r\n Global: function () {\r\n $('#jxCancel').on('click', function () {\r\n closeThis(true);\r\n });\r\n\r\n }\r\n },\r\n Calls: {\r\n\r\n\r\n GetHistory: function () {\r\n var VarID = CHSI.UW.MuniQuote_VariableHistory.Cache.VarID;\r\n var Options = {};\r\n Options.Data = {};\r\n var Parameters = {};\r\n switch (VarID.substring(0, 3)) {\r\n case \"RaV\":\r\n var IDs = VarID.replace('RaV_', '').split('_');\r\n Options.Data.ProgramRateVariableID = IDs[0];\r\n Options.Data.RateInfoID = IDs[1];\r\n Options.URL = '/api/UW/MuniQuote/QuoteRateVariableHistory' + \"?ProgramRateVariableID=\" + Options.Data.ProgramRateVariableID + \"&RateInfoID=\" + Options.Data.RateInfoID;\r\n break\r\n case \"VaR\":\r\n Options.Data.VariableID = VarID.replace('VaR_', '');\r\n Options.Data.QuoteID = CHSI.UW.MuniQuote_VariableHistory.Cache.QuoteID;\r\n Options.URL = '/api/UW/MuniQuote/QuoteVariableHistory' + \"?VariableID=\" + Options.Data.VariableID + \"&QuoteID=\" + Options.Data.QuoteID;\r\n break;\r\n }\r\n Options.Success = function (e) {\r\n\r\n e.EditMode = CHSI.UW.MuniQuote_VariableHistory.Cache.EditMode;\r\n e.VarID = CHSI.UW.MuniQuote_VariableHistory.Cache.VarID;\r\n CHSI.UW.MuniQuote_VariableHistory.Cache.HistoryObj = e;\r\n CHSI.UW.MuniQuote_VariableHistory.BindPresentationLayer();\r\n }\r\n CHSI.Common.Ajax.Post(Options);\r\n\r\n },\r\n\r\n ChangeHistory: function (VarID, NewValue, Index) {\r\n var ajaxData = CHSI.UW.MuniQuote_VariableHistory.Cache.HistoryObj[Index]; \r\n ajaxData.Comments = 'History Change'; \r\n ajaxData.DataObject.isLocked = 1; \r\n ajaxData.DataObject.QuoteID = CHSI.UW.MuniQuote_VariableHistory.Cache.QuoteID;\r\n ajaxData.Status = 'active'; \r\n CHSI.UW.MuniQuote.SetValue(ajaxData.DataObject, NewValue); \r\n var Success = function (e) {\r\n var Appearance = parent.QuoteObject.Appearance;\r\n e.Appearance = Appearance;\r\n parent.QuoteObject = e;\r\n CHSI.UW.MuniQuote.Cache.QuoteObject = e;\r\n closeThis(true);\r\n }\r\n\r\n CHSI.UW.MuniQuote.SaveVariable(VarID, ajaxData, Success);\r\n \r\n },\r\n\r\n\r\n \r\n }\r\n}\r\n","CHSI.UW.MuniQuote_VariableSave = {\r\n Init: function (VarID, QuoteID, NewValue) {\r\n this.Cache.VarID = VarID;\r\n this.Cache.QuoteID = QuoteID;\r\n this.Cache.NewValue = NewValue;\r\n this.Events.Global();\r\n this.Calls.GetHistory();\r\n },\r\n Templates: {},\r\n Cache: {\r\n VarID: null,\r\n QuoteID: null, \r\n HistoryObj: null,\r\n NewValue: null\r\n },\r\n BindPresentationLayer: function () { \r\n\r\n },\r\n\r\n Events: {\r\n Global: function () {\r\n $('#jxCancel').on('click', function () {\r\n closeThis(true);\r\n });\r\n\r\n $('#jxSave').on('click', function () {\r\n CHSI.UW.MuniQuote_VariableSave.Calls.SaveVariable(CHSI.UW.MuniQuote_VariableSave.Cache.VarID, CHSI.UW.MuniQuote_VariableSave.Cache.NewValue);\r\n });\r\n\r\n }\r\n },\r\n Calls: {\r\n\r\n\r\n GetHistory: function () {\r\n var VarID = CHSI.UW.MuniQuote_VariableSave.Cache.VarID;\r\n var Options = {};\r\n Options.Data = {};\r\n var Parameters = {};\r\n switch (VarID.substring(0, 3)) {\r\n case \"RaV\":\r\n var IDs = VarID.replace('RaV_', '').split('_');\r\n Options.Data.ProgramRateVariableID = IDs[0];\r\n Options.Data.RateInfoID = IDs[1];\r\n Options.URL = '/api/UW/MuniQuote/QuoteRateVariableHistory' + \"?ProgramRateVariableID=\" + Options.Data.ProgramRateVariableID + \"&RateInfoID=\" + Options.Data.RateInfoID;\r\n break\r\n case \"VaR\":\r\n Options.Data.VariableID = VarID.replace('VaR_', '');\r\n Options.Data.QuoteID = CHSI.UW.MuniQuote_VariableSave.Cache.QuoteID;\r\n Options.URL = '/api/UW/MuniQuote/QuoteVariableHistory?QuoteID=' + Options.Data.QuoteID + \"&VariableID=\" + Options.Data.VariableID;\r\n break;\r\n }\r\n Options.Success = function (e) {\r\n \r\n CHSI.UW.MuniQuote_VariableSave.Cache.HistoryObj = e; \r\n $('#jxSave').removeAttr(\"disabled\");\r\n }\r\n CHSI.Common.Ajax.Post(Options);\r\n\r\n },\r\n\r\n SaveVariable: function (VarID, NewValue) {\r\n var ajaxData = CHSI.UW.MuniQuote_VariableSave.Cache.HistoryObj[0];\r\n \r\n ajaxData.Comments = jQuery('#jxChangecomments').val();\r\n ajaxData.DataObject.isLocked = 1;\r\n ajaxData.DataObject.QuoteID = CHSI.UW.MuniQuote_VariableSave.Cache.QuoteID;\r\n ajaxData.Status = 'active';\r\n CHSI.UW.MuniQuote.SetValue(ajaxData.DataObject, NewValue);\r\n var Success = function (e) {\r\n var Appearance = parent.QuoteObject.Appearance;\r\n e.Appearance = Appearance;\r\n parent.QuoteObject = e;\r\n CHSI.UW.MuniQuote.Cache.QuoteObject = e;\r\n closeThis(true);\r\n }\r\n\r\n CHSI.UW.MuniQuote.SaveVariable(VarID, ajaxData, Success);\r\n }\r\n\r\n }\r\n}\r\n","CHSI.UW.Quote.QuoteType = {\r\n GetByGroupID: function (GroupID, successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/UW/UW/GetQuotetypeByGroupID?GroupID=' + GroupID + '&isCreateable=' + true;\r\n Options.Data = null;\r\n Options.Success = successFunction;\r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n\r\n\r\n GetByClientID: function (ClientID, successFunction) {\r\n var Options = {};\r\n Options.URL = '/api/UW/UW/GetQuotetypeByClientID?ClientID=' + ClientID + '&isCreateable=' + true;\r\n Options.Data = null;\r\n Options.Success = successFunction; \r\n CHSI.Common.Ajax.Get(Options);\r\n },\r\n \r\n}","CHSI.Page.UWQuoteAssignment = {\r\n Init: function (QuoteID) {\r\n\r\n this.Cache.QuoteID = QuoteID;\r\n \r\n var Template_AssigneeTypes = $('#Template_AssigneeTypes').html();\r\n this.Templates.AssigneeTypes = Handlebars.compile(Template_AssigneeTypes);\r\n var Template_Assignments = $('#Template_Assignments').html();\r\n this.Templates.Assignments = Handlebars.compile(Template_Assignments);\r\n var Template_AssigneeNames = $('#Template_AssigneeNames').html();\r\n this.Templates.AssigneeNames = Handlebars.compile(Template_AssigneeNames);\r\n \r\n this.Calls.GetAssigneeTypes();\r\n this.Calls.GetQuoteAssignments();\r\n this.Events.Global();\r\n },\r\n Templates: {\r\n\r\n },\r\n Cache: {\r\n Assignments: null,\r\n AssigneeTypes: null,\r\n AssigneeNames: null,\r\n Status: 'active'\r\n ,QuoteID:null\r\n , AssigneeTypeID: null\r\n , CurrentAssignment: { \r\n Status: 'active'\r\n , QuoteID: null\r\n , AssigneeTypeID: null\r\n }\r\n },\r\n BindPresentationLayer: function () {\r\n $('#jxAssigmentsContainer').html(this.Templates.Assignments(this.Cache.Assignments));\r\n },\r\n BindPresentationLayerAssigneeTypes: function () {\r\n $('#jxAssigneeTypesContainer').html(this.Templates.AssigneeTypes(this.Cache.AssigneeTypes));\r\n },\r\n BindPresentationLayerAssigneeNames: function () {\r\n $('#jxAssigneeNamesContainer').html(this.Templates.AssigneeNames(this.Cache.AssigneeNames));\r\n if (this.Cache.CurrentAssignment) {\r\n $('#jxAssigneeID').val(this.Cache.CurrentAssignment.AssigneeID);\r\n } \r\n },\r\n PersistFromCache: function (Object) {\r\n if (Object == null) {\r\n AssignmentObject = CHSI.Page.UWQuoteAssignment.Cache.CurrentAssignment;\r\n } else {\r\n AssignmentObject = Object;\r\n }\r\n AssignmentObject.AssigneeTypeName = $('#jxAssigneeType').val();\r\n AssignmentObject.Primary = $('#jxPrimary').is(':checked') ? true : false;\r\n AssignmentObject.AssigneeTypeID = $('#jxAssigneeType').val();\r\n AssignmentObject.Status = $('#jxStatus').val();\r\n AssignmentObject.QuoteID = this.Cache.QuoteID;\r\n AssignmentObject.AssigneeID = $('#jxAssigneeID').val();\r\n AssignmentObject.FromDate = $('#jxDateFrom').val();\r\n AssignmentObject.ToDate = $('#jxDateTo').val();\r\n return AssignmentObject;\r\n },\r\n Events: {\r\n Global: function () {\r\n\r\n $('#jxAssigneeTypesContainer').on('change', '#jxAssigneeType', function () {\r\n CHSI.Page.UWQuoteAssignment.Cache.AssigneeTypeID = $(this).val();\r\n CHSI.Page.UWQuoteAssignment.Calls.GetAssigneeNames();\r\n });\r\n\r\n $('#jxAdd').on('click', function () {\r\n var isNew = $(this).data('isnew');\r\n if (isNew) {\r\n CHSI.Page.UWQuoteAssignment.Events.ResetNewAssignment();\r\n CHSI.Page.UWQuoteAssignment.PersistFromCache();\r\n CHSI.Page.UWQuoteAssignment.Calls.SaveNewAssignment();\r\n } else {\r\n CHSI.Page.UWQuoteAssignment.Calls.SaveExistingAssignment();\r\n } \r\n }); \r\n\r\n $('#jxReferenceTypeContainer').on('change', '#jxStatus', function () {\r\n if ($(this).is(':checked')) {\r\n CHSI.Common.Reference.Cache.Status = 'active';\r\n CHSI.Common.Reference.Calls.GetReferences();\r\n } else {\r\n CHSI.Common.Reference.Cache.Status = '';\r\n CHSI.Common.Reference.Calls.GetReferences();\r\n }\r\n });\r\n\r\n $('.DatePicker').val();\r\n },\r\n EditAssignment: function (AssignID) {\r\n $('#jxAdd').prop('value', ' Save ');\r\n $('#jxAdd').data('isnew', false);\r\n this.GetAssigneeInformation(AssignID);\r\n },\r\n ResetNewAssignment: function () {\r\n $('#jxAdd').prop('value', ' Add ');\r\n $('#jxAdd').data('isnew', true);\r\n var CurrentAssignment = CHSI.Page.UWQuoteAssignment.Cache.CurrentAssignment; \r\n CurrentAssignment.AssignID = null\r\n CurrentAssignment.AssigneeID = ''\r\n CurrentAssignment.AssigneeTypeID = ''\r\n CurrentAssignment.Email = ''\r\n CurrentAssignment.QuoteID = 0\r\n CurrentAssignment.UserID = ''\r\n CurrentAssignment.AssigneeTypeName = ''\r\n CurrentAssignment.AssigneeName = ''\r\n CurrentAssignment.FromDate = ''\r\n CurrentAssignment.ToDate = ''\r\n CurrentAssignment.Status = ''\r\n CurrentAssignment.Primary = '' \r\n },\r\n GetAssigneeInformation: function (AssignID) {\r\n var Assignments = CHSI.Page.UWQuoteAssignment.Cache.Assignments.Assignments;\r\n $.each(Assignments, function (Index) {\r\n if (Assignments[Index].AssignID == AssignID) {\r\n\r\n var CurrentAssignment = CHSI.Page.UWQuoteAssignment.Cache.CurrentAssignment;\r\n CurrentAssignment.AssignID = Assignments[Index].AssignID;\r\n CurrentAssignment.AssigneeID = Assignments[Index].AssigneeID;\r\n CurrentAssignment.AssigneeTypeID = Assignments[Index].AssigneeTypeID;\r\n CurrentAssignment.Email = Assignments[Index].Email;\r\n CurrentAssignment.QuoteID = Assignments[Index].QuoteID;\r\n CurrentAssignment.UserID = Assignments[Index].UserID;\r\n CurrentAssignment.AssigneeTypeName = Assignments[Index].AssigneeTypeName;\r\n CurrentAssignment.AssigneeName = Assignments[Index].AssigneeName;\r\n CurrentAssignment.FromDate = Assignments[Index].FromDate;\r\n CurrentAssignment.ToDate = Assignments[Index].ToDate;\r\n CurrentAssignment.Status = Assignments[Index].Status;\r\n CurrentAssignment.Primary = Assignments[Index].Primary;\r\n\r\n $('#jxAssigneeType').val(CurrentAssignment.AssigneeTypeID);\r\n CHSI.Page.UWQuoteAssignment.Cache.AssigneeTypeID = CurrentAssignment.AssigneeTypeID;\r\n CHSI.Page.UWQuoteAssignment.Calls.GetAssigneeNames();\r\n $('#jxAssigneeID').val(CurrentAssignment.AssigneeID);\r\n $('#jxDateFrom').val(CHSI.Dates.GetShortDate(CurrentAssignment.FromDate));\r\n $('#jxDateTo').val(CHSI.Dates.GetShortDate(CurrentAssignment.ToDate));\r\n $('#jxStatus').val(CurrentAssignment.Status);\r\n\r\n if (CurrentAssignment.Primary) {\r\n $('#jxPrimary').prop('checked', true);\r\n } else {\r\n $('#jxPrimary').prop('checked', false);\r\n }\r\n }\r\n });\r\n }\r\n }, \r\n Calls: {\r\n GetQuoteAssignments: function () { \r\n // var AjaxURL = '/api/UW/QuoteAssignment/get?AssignID=' + AssignID + '&QuoteID=' + QuoteID + '&AssigneeID=' + AssigneeID + '&AssigneeTypeID=' + AssigneeTypeID;\r\n var AjaxURL = '/api/UW/QuoteAssignment/get?QuoteID=' + CHSI.Page.UWQuoteAssignment.Cache.QuoteID;\r\n\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.UWQuoteAssignment.Cache.Assignments = { Assignments: e };\r\n CHSI.Page.UWQuoteAssignment.BindPresentationLayer();\r\n restart = true;\r\n sorttable.init();\r\n\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n GetAssigneeTypes: function () {\r\n var AjaxURL = '/api/UW/ReferenceValue/GetReferenceSpecValues?tablename=uw.assigneetype&fieldname=';\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n if (e.length) {\r\n CHSI.Page.UWQuoteAssignment.Cache.AssigneeTypeID = e[0].ReferenceValueID;\r\n CHSI.Page.UWQuoteAssignment.Calls.GetAssigneeNames();\r\n }\r\n\r\n CHSI.Page.UWQuoteAssignment.Cache.AssigneeTypes = { AssigneeTypes: e };\r\n CHSI.Page.UWQuoteAssignment.BindPresentationLayerAssigneeTypes();\r\n restart = true;\r\n sorttable.init();\r\n\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log('no data to return');\r\n }\r\n });\r\n }, \r\n GetAssigneeNames: function () {\r\n var AjaxURL = '/api/UW/Assignee/GetByType?AssigneeTypeID=' + CHSI.Page.UWQuoteAssignment.Cache.AssigneeTypeID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.UWQuoteAssignment.Cache.AssigneeNames = { AssigneeNames: e };\r\n CHSI.Page.UWQuoteAssignment.BindPresentationLayerAssigneeNames();\r\n restart = true;\r\n sorttable.init();\r\n\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log('no data to return');\r\n }\r\n });\r\n },\r\n SaveNewAssignment: function () {\r\n var AjaxURL = '/api/UW/QuoteAssignment/Save';\r\n var ajaxString = JSON.stringify(CHSI.Page.UWQuoteAssignment.PersistFromCache());\r\n $.ajax({\r\n type: \"POST\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n data: ajaxString,\r\n success: function (e) {\r\n CHSI.Page.UWQuoteAssignment.Calls.GetQuoteAssignments();\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log(e);\r\n }\r\n });\r\n },\r\n SaveExistingAssignment: function () {\r\n CHSI.Page.UWQuoteAssignment.PersistFromCache(CHSI.Page.UWQuoteAssignment.Cache.CurrentAssignment); \r\n var AjaxURL = '/api/UW/QuoteAssignment/Save';\r\n var ajaxString = JSON.stringify(CHSI.Page.UWQuoteAssignment.Cache.CurrentAssignment);\r\n $.ajax({\r\n type: \"POST\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n data: ajaxString,\r\n success: function (e) {\r\n CHSI.Page.UWQuoteAssignment.Calls.GetQuoteAssignments();\r\n CHSI.Page.UWQuoteAssignment.Events.ResetNewAssignment();\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log(e);\r\n }\r\n });\r\n }\r\n },\r\n UpdateURL: function (TableName, ReferenceTable) {\r\n this.Cache.TableName = TableName;\r\n this.Cache.ReferenceTable = ReferenceTable;\r\n this.Cache.GetReferenceTypesURL = '/api/' + this.Cache.NameSpace + '/ReferenceSpec/GetTypes?TableName=' + this.Cache.TableName;\r\n this.Cache.GetReferencesURL = '/api/' + this.Cache.NameSpace + '/ReferenceSpec/Get?TableName=' + this.Cache.TableName + '&ReferenceTable=' + this.Cache.ReferenceTable + '&IncludeValues=true&FieldName=';\r\n },\r\n Refresh: function () {\r\n CHSI.Common.Reference.Calls.GetReferenceTypes();\r\n CHSI.Common.Reference.Calls.GetReferences();\r\n },\r\n\r\n ShowReferenceEdit: function (ReferenceValueID) {\r\n var QueryString = '';\r\n if (ReferenceValueID != 0)\r\n { QueryString = '?ReferenceValueID=' + ReferenceValueID }\r\n var URL = CHSI.Common.Reference.Cache.ReferenceEditorURL + QueryString;\r\n ShowPopup('ReferenceEditor', URL, 'Reference Editor', 900, 550, CHSI.Common.Reference.RefreshPage, true);\r\n }\r\n\r\n}","CHSI.Common.ReferenceEditor = {\r\n Init: function (QSObject) {\r\n this.Cache.ReferenceValueID = QSObject.ReferenceValueID;\r\n this.Cache.FieldName = QSObject.FieldName;\r\n this.Cache.TableName = QSObject.TableName;\r\n this.Cache.isNew = QSObject.NewReference;\r\n this.Cache.AdditionalReferenceObject = QSObject.jsonReferences;\r\n var Template_ReferenceEditor = $('#Template_ReferenceEditor').html();\r\n this.Templates.ReferenceEditor = Handlebars.compile(Template_ReferenceEditor);\r\n this.Events.Global();\r\n\r\n switch (QSObject.ReferenceTable) {\r\n case 'UW':\r\n this.Cache.NameSpace = 'UW';\r\n this.Events.UpdateAPI_URL_GET('uw_Reference');\r\n this.Events.UpdateAPI_URL_DELETE('uw_Reference', 'uw_reference');\r\n this.Events.UpdateAPI_URL_POST('uw_Reference', 'uw_reference');\r\n break;\r\n case 'ClaimSystem':\r\n this.Cache.NameSpace = 'ClaimSystem';\r\n this.Events.UpdateAPI_URL_GET('cl_Reference');\r\n this.Events.UpdateAPI_URL_DELETE('cl_Reference', 'cl_Reference');\r\n this.Events.UpdateAPI_URL_POST('cl_Reference', 'cl_Reference');\r\n break;\r\n case 'Inventory':\r\n this.Cache.NameSpace = 'Inventory';\r\n this.Events.UpdateAPI_URL_GET('st_Reference');\r\n this.Events.UpdateAPI_URL_DELETE('st_Reference', 'st_Reference');\r\n this.Events.UpdateAPI_URL_POST('st_Reference', 'st_Reference');\r\n break;\r\n }\r\n },\r\n Templates: {},\r\n Cache: {\r\n References: {\r\n Status: 'Active',\r\n Value1: '',\r\n Value2: '',\r\n ValueN: 0\r\n },\r\n NewReferences: {\r\n Status: 'Active',\r\n Value1: ' ',\r\n Value2: ' ',\r\n ValueN: 0\r\n },\r\n ReferenceValueID: null,\r\n NameSpace: null,\r\n TableName: null,\r\n FieldName: null,\r\n ReferenceTable: null,\r\n GetReferencesURL: null,\r\n DeleteReferencesURL: null,\r\n PostReferencesURL: null,\r\n AdditionalReferenceObject: null,\r\n isNew: false\r\n },\r\n Events: {\r\n Global: function () {\r\n $('#jxSave').on('click', function () {\r\n CHSI.Common.ReferenceEditor.Events.PersistFormToCache();\r\n CHSI.Common.ReferenceEditor.Calls.SaveReferences();\r\n closeThis(true);\r\n });\r\n\r\n $('#jxDelete').on('click', function () {\r\n CHSI.Common.ReferenceEditor.Events.PersistFormToCache();\r\n CHSI.Common.ReferenceEditor.Calls.DeleteReferences();\r\n closeThis(true);\r\n });\r\n\r\n $('#jxCancel').on('click', function () {\r\n closeThis(true);\r\n });\r\n },\r\n UpdateAPI_URL_GET: function (ReferenceTable) {\r\n CHSI.Common.ReferenceEditor.Cache.ReferenceTable = ReferenceTable;\r\n CHSI.Common.ReferenceEditor.Cache.GetReferencesURL = '/api/' + CHSI.Common.ReferenceEditor.Cache.NameSpace + '/ReferenceValue/Get?TableName=' + CHSI.Common.ReferenceEditor.Cache.TableName + '&ReferenceValueID=' + CHSI.Common.ReferenceEditor.Cache.ReferenceValueID + '&FieldName=' + CHSI.Common.ReferenceEditor.Cache.FieldName;\r\n if (CHSI.Common.ReferenceEditor.Cache.isNew == \"true\") {\r\n CHSI.Common.ReferenceEditor.BindNewPresentationLayer();\r\n } else {\r\n CHSI.Common.ReferenceEditor.Calls.GetReferences();\r\n }\r\n },\r\n UpdateAPI_URL_DELETE: function () {\r\n CHSI.Common.ReferenceEditor.Cache.DeleteReferencesURL = '/api/' + CHSI.Common.ReferenceEditor.Cache.NameSpace + '/ReferenceValue/Delete?TableName=' + CHSI.Common.ReferenceEditor.Cache.TableName + '&ReferenceTable=' + CHSI.Common.ReferenceEditor.Cache.ReferenceTable + '&IncludeValues=true&FieldName=';\r\n },\r\n UpdateAPI_URL_POST: function () {\r\n CHSI.Common.ReferenceEditor.Cache.PostReferencesURL = '/api/' + CHSI.Common.ReferenceEditor.Cache.NameSpace + '/ReferenceValue/Post?TableName=' + CHSI.Common.ReferenceEditor.Cache.TableName + '&ReferenceTable=' + CHSI.Common.ReferenceEditor.Cache.ReferenceTable + '&IncludeValues=true&FieldName=';\r\n },\r\n PersistFormToCache: function () {\r\n var References = CHSI.Common.ReferenceEditor.Cache.References;\r\n var Value1 = $('#jxValue1');\r\n if (Value1.val()) {\r\n References.Value1 = $('#jxValue1').val();\r\n } else {\r\n References.Value1 = '';\r\n }\r\n var Value2 = $('#jxValue2');\r\n if (Value2.val()) {\r\n References.Value2 = $('#jxValue2').val();\r\n } else {\r\n References.Value2 = '';\r\n }\r\n var ValueN = $('#jxValueN');\r\n if (ValueN.val()) {\r\n References.ValueN = $('#jxValueN').val();\r\n } else {\r\n References.ValueN = 0;\r\n }\r\n References.Status = $('#jxStatus').is(':checked') ? References.Status = 'Active' : References.Status = 'Inactive';\r\n References.ReferenceValueID = CHSI.Common.ReferenceEditor.Cache.ReferenceValueID;\r\n References.TableName = CHSI.Common.ReferenceEditor.Cache.TableName;\r\n References.FieldName = CHSI.Common.ReferenceEditor.Cache.FieldName;\r\n return References;\r\n }\r\n },\r\n BindPresentationLayer: function () {\r\n $('#jxReferenceEditorContainer').html(this.Templates.ReferenceEditor(this.Cache.References));\r\n },\r\n BindNewPresentationLayer: function () {\r\n var AdditionalReferenceObject = CHSI.Common.ReferenceEditor.Cache.AdditionalReferenceObject\r\n CHSI.Common.ReferenceEditor.Cache.References = { References: CHSI.Common.ReferenceEditor.Cache.NewReferences, AdditionalReferences: AdditionalReferenceObject };\r\n $('#jxReferenceEditorContainer').html(this.Templates.ReferenceEditor(this.Cache.References));\r\n },\r\n Calls: {\r\n GetReferences: function () {\r\n var AjaxURL = CHSI.Common.ReferenceEditor.Cache.GetReferencesURL;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n var AdditionalReferenceObject = CHSI.Common.ReferenceEditor.Cache.AdditionalReferenceObject\r\n CHSI.Common.ReferenceEditor.Cache.References = { References: e, AdditionalReferences: AdditionalReferenceObject };\r\n CHSI.Common.ReferenceEditor.BindPresentationLayer();\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n SaveReferences: function () {\r\n var AjaxURL = CHSI.Common.ReferenceEditor.Cache.PostReferencesURL;\r\n var ajaxString = JSON.stringify(CHSI.Common.ReferenceEditor.Cache.References);\r\n $.ajax({\r\n type: \"POST\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n data: ajaxString,\r\n success: function (e) {\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log(e);\r\n }\r\n });\r\n },\r\n DeleteReferences: function () {\r\n var AjaxURL = CHSI.Common.ReferenceEditor.Cache.DeleteReferencesURL;\r\n var ajaxString = JSON.stringify(CHSI.Common.ReferenceEditor.Cache.References);\r\n $.ajax({\r\n type: \"DELETE\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n data: ajaxString,\r\n success: function (e) {\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n }\r\n }\r\n}\r\n","CHSI.Page.SCategories = {\r\n\r\n Init: function (successFunction) {\r\n var qs = jQuery.parseQuerystring();\r\n\r\n var Template_ScheduleCategories = $('#Template_ScheduleCategories').html();\r\n this.Templates.ScheduleCategories = Handlebars.compile(Template_ScheduleCategories);\r\n if (CHSI.Page.SInformation.Cache.ScheduleTypeID) {\r\n this.Calls.GetScheduleCategories(successFunction);\r\n }\r\n else {\r\n CHSI.Page.SCategories.Cache.ScheduleCategoriesObject = { ScheduleCategories: [] };\r\n CHSI.Page.SCategories.BindPresentationLayer();\r\n CHSI.Page.SCategories.Cache.SaveFlag = false;\r\n if (successFunction)\r\n { successFunction(); }\r\n }\r\n\r\n CHSI.Page.SCategories.Events.Global();\r\n\r\n },\r\n Templates: {\r\n\r\n },\r\n Cache: {\r\n ScheduleCategoryID: null,\r\n ScheduleCategoriesObject: null,\r\n SaveFlag: false\r\n\r\n },\r\n BindPresentationLayer: function () {\r\n $('#jxScheduleCategoriesContainer').html(this.Templates.ScheduleCategories(this.Cache.ScheduleCategoriesObject));\r\n restart = true;\r\n sorttable.init();\r\n },\r\n\r\n SaveArray: function () {\r\n if (CHSI.Page.SCategories.Cache.ScheduleCategoriesObject) {\r\n if (CHSI.Page.SCategories.Cache.ScheduleCategoriesObject.ScheduleCategories) {\r\n for (i = 0; i < CHSI.Page.SCategories.Cache.ScheduleCategoriesObject.ScheduleCategories.length; i++) {\r\n if (CHSI.Page.SCategories.Cache.ScheduleCategoriesObject.ScheduleCategories[i].ScheduleCategoryID == 0) {\r\n CHSI.Page.SCategories.Cache.ScheduleCategoriesObject.ScheduleCategories[i].ScheduleCategoryID = null;\r\n }\r\n CHSI.Page.SCategories.Cache.ScheduleCategoriesObject.ScheduleCategories[i].CategoryName = $('#uxSCCategoryName_' + i).val();\r\n if ($('#uxSCPortalShow_' + i).is(\":checked\")) {\r\n CHSI.Page.SCategories.Cache.ScheduleCategoriesObject.ScheduleCategories[i].PortalShow = true;\r\n } else\r\n CHSI.Page.SCategories.Cache.ScheduleCategoriesObject.ScheduleCategories[i].PortalShow = false;\r\n\r\n CHSI.Page.SCategories.Cache.ScheduleCategoriesObject.ScheduleCategories[i].SortOrder = $('#uxSCSortOrder_' + i).val();\r\n }\r\n }\r\n\r\n }\r\n },\r\n Events: {\r\n Global: function () {\r\n\r\n $('#jxSCButtonsLeft').on('click', '#uxScheduleCategoryAddField', function () {\r\n CHSI.Page.SCategories.Events.AddField();\r\n });\r\n\r\n $('#jxSCButtonsRight').on('click', '#uxScheduleCategoryOK', function () {\r\n if (!CHSI.Page.SCategories.Cache.SaveFlag) {\r\n if (CHSI.Page.SInformation.Cache.ScheduleTypeID > 0) {\r\n $(this).attr('disabled', 'disabled');\r\n CHSI.Page.SCategories.Calls.SaveCategories();\r\n closeThis(true);\r\n } else {\r\n alert('Please save a new ScheduleType before add a category');\r\n }\r\n\r\n }\r\n });\r\n\r\n\r\n },\r\n AutoSave: function () {\r\n if (!CHSI.Page.SCategories.Cache.SaveFlag && CHSI.Page.SInformation.Cache.ScheduleTypeID > 0) {\r\n CHSI.Page.SCategories.Calls.SaveCategories();\r\n\r\n }\r\n\r\n },\r\n AddField: function () {\r\n\r\n if (CHSI.Page.SInformation.Cache.ScheduleTypeID) {\r\n CHSI.Page.SCategories.SaveArray();\r\n var Category = new Object();\r\n\r\n Category = {\r\n ScheduleCategoryID: 0,\r\n ScheduleTypeID: CHSI.Page.SInformation.Cache.ScheduleTypeID,\r\n CategoryName: null,\r\n PortalShow: true,\r\n SortOrder: 0,\r\n CreateUser: null,\r\n CreateTmsp: null,\r\n UpdateUser: null,\r\n UpdateTmsp: null,\r\n FieldCount: null\r\n }\r\n if (CHSI.Page.SCategories.Cache.ScheduleCategoriesObject.ScheduleCategories == null)\r\n { CHSI.Page.SCategories.Cache.ScheduleCategoriesObject.ScheduleCategories = [];}\r\n CHSI.Page.SCategories.Cache.ScheduleCategoriesObject.ScheduleCategories.push(Category);\r\n CHSI.Page.SCategories.BindPresentationLayer();\r\n } else {\r\n alert('Please save a new ScheduleType before add a category');\r\n }\r\n },\r\n\r\n DeleteScheduleCateogory: function (ScheduleCategoryID, index) {\r\n CHSI.Page.SCategories.SaveArray();\r\n if (ScheduleCategoryID) {\r\n CHSI.Page.SCategories.Calls.DeleteCategory(ScheduleCategoryID);\r\n }\r\n CHSI.Page.SCategories.Cache.ScheduleCategoriesObject.ScheduleCategories.splice(index, 1);\r\n CHSI.Page.SCategories.BindPresentationLayer();\r\n }\r\n\r\n },\r\n Calls: {\r\n\r\n GetScheduleCategories: function (successFunction) {\r\n CHSI.Page.SCategories.Cache.SaveFlag = true;\r\n\r\n var ScheduleTypeID = CHSI.Page.SInformation.Cache.ScheduleTypeID;\r\n\r\n var AjaxURL = '/api/UW/ScheduleCategory/GetByType?ScheduleType=' + ScheduleTypeID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n\r\n CHSI.Page.SCategories.Cache.ScheduleCategoriesObject = { ScheduleCategories: e };\r\n CHSI.Page.SCategories.BindPresentationLayer();\r\n CHSI.Page.SCategories.Cache.SaveFlag = false;\r\n\r\n if (successFunction)\r\n { successFunction(); }\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n CHSI.Page.SCategories.Cache.SaveFlag = false;\r\n }\r\n });\r\n },\r\n\r\n\r\n DeleteCategory: function (CategoryID) {\r\n CHSI.Page.SCategories.Cache.SaveFlag = true;\r\n var AjaxURL = '/api/UW/ScheduleCategory/Delete?CategoryID=' + CategoryID;\r\n $.ajax({\r\n type: \"Delete\",\r\n url: AjaxURL,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SCategories.Cache.SaveFlag = false;\r\n // CHSI.Page.SCategories.BindPresentationLayer(); \r\n\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n CHSI.Page.SCategories.Cache.SaveFlag = false;\r\n }\r\n });\r\n },\r\n\r\n\r\n SaveCategories: function () {\r\n if (!CHSI.Page.SCategories.Cache.SaveFlag) {\r\n CHSI.Page.SCategories.Cache.SaveFlag = true;\r\n CHSI.Page.SCategories.SaveArray();\r\n var ajaxData = [];\r\n ajaxData = CHSI.Page.SCategories.Cache.ScheduleCategoriesObject.ScheduleCategories\r\n var ajaxString = JSON.stringify(ajaxData);\r\n\r\n var AjaxURL = '/api/UW/ScheduleCategory/SaveMultiple'\r\n $.ajax({\r\n type: \"POST\",\r\n url: AjaxURL,\r\n data: ajaxString,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n $('#uxScheduleCategoryOK').removeAttr('disabled');\r\n CHSI.Page.SCategories.Calls.GetScheduleCategories();\r\n\r\n\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n CHSI.Page.SCategories.Cache.SaveFlag = false;\r\n $('#uxScheduleCategoryOK').removeAttr('disabled');\r\n }\r\n });\r\n }\r\n }\r\n\r\n }\r\n\r\n}","CHSI.Page.SFields = {\r\n Init: function (successFunction) {\r\n \r\n var Template_ScheduleFields = $('#Template_ScheduleFields').html();\r\n this.Templates.ScheduleFields = Handlebars.compile(Template_ScheduleFields);\r\n CHSI.Page.SFields.Cache.SavingFlag = false;\r\n\r\n this.Calls.GetValidatorTypes(function () {\r\n \r\n if (CHSI.Page.SInformation.Cache.ScheduleTypeID) {\r\n CHSI.Page.SFields.Calls.GetScheduleFields(successFunction);\r\n }\r\n else {\r\n CHSI.Page.SFields.ProcessFieldCall([]);\r\n }\r\n\r\n });\r\n this.Events.Global();\r\n\r\n },\r\n Templates: {\r\n\r\n },\r\n Cache: {\r\n \r\n ValidatorTypes: []\r\n , ScheduleFieldsContainer: {\r\n Categories: []\r\n }\r\n ,SavingFlag:false\r\n },\r\n\r\n BindPresentationLayer: function () {\r\n CHSI.Page.SFields.Cache.ScheduleFieldsContainer.Categories = CHSI.Page.SCategories.Cache.ScheduleCategoriesObject.ScheduleCategories;\r\n $('#jxScheduleFieldsContainer').html(this.Templates.ScheduleFields(this.Cache.ScheduleFieldsContainer));\r\n\r\n $('.jxDatePicker').datepicker({\r\n showOn: \"both\",\r\n buttonImage: \"/images/icons/cal.gif\",\r\n buttonImageOnly: true\r\n });\r\n },\r\n GetDefaultField: function()\r\n {\r\n return {\r\n ScheduleTypeID: CHSI.Page.SInformation.Cache.ScheduleTypeID,\r\n FormEditable: true,\r\n Required: false,\r\n Status: 'Active',\r\n FieldType: '1',\r\n Summarize: false,\r\n GridShow: false,\r\n FormShow: false,\r\n PortalShow: false,\r\n FieldLogic:''\r\n }\r\n }\r\n ,BindFieldtoPresentation: function(index,Field)\r\n { \r\n $('#jxSFieldName_' + index).val(Field.FieldName);\r\n $('#jxSFieldShowInGrid_' + index).prop('checked', Field.GridShow);\r\n if (Field.GridShow) { \r\n $('#jxSFieldSortOrderDisplay_' + index).show();\r\n } else { \r\n $('#jxSFieldSortOrderDisplay_' + index).hide();\r\n }\r\n $('#jxSFieldSortOrderGrid_' + index).val(Field.GridSortOrder);\r\n $('#jxSFieldShowInForm_' + index).prop('checked', Field.FormShow); \r\n if (Field.FormShow) { \r\n $('#jxSFieldShowFormDisplay_' + index).show(); \r\n } else { \r\n $('#jxSFieldShowFormDisplay_' + index).hide();\r\n }\r\n $('#jxSFieldSortOrderForm_' + index).val(Field.FormSortOrder);\r\n $('#jxSFieldVisibleOnPortal_' + index).prop('checked', Field.PortalShow);\r\n if (Field.PortalShow) { \r\n $('#jxSFieldReadonlyDisplay_' + index).show();\r\n } else { \r\n $('#jxSFieldReadonlyDisplay_' + index).hide();\r\n }\r\n $('#jxSFieldReadOnly_' + index).prop('checked', Field.PortalReadOnly);\r\n $('#jxSFieldStatus_' + index).val(Field.Status);\r\n $('#jxSFieldCategory_' + index).val(Field.ScheduleCategoryID);\r\n $('#jxSFieldLongName_' + index).val(Field.LongName);\r\n $('#jxSFieldRequired_' + index).val(Field.Required.toString());\r\n \r\n $('#jxSFieldToolTip_' + index).val(Field.ToolTipText);\r\n $('#jxSFieldSummarized_' + index).val(Field.Summarize.toString());\r\n $('#jxSFieldFieldType_' + index).val(Field.FieldType);\r\n $('#jxSFieldDataType_' + index).val(Field.DataType.toString());\r\n $('#jxSFieldSize_' + index).val(Field.DataSize);\r\n switch (Field.FieldType * 1) {\r\n case 1/*regular*/:\r\n $('#jxSFieldValidator_' + index).val(Field.FieldLogic);\r\n break;\r\n case 2/*calculated*/:\r\n case 4/*dropdown*/:\r\n $('#jxSFieldFormula_' + index).val(Field.FieldLogic);\r\n break;\r\n case 3/*date*/:\r\n break;\r\n case 5/*textblock*/:\r\n break;\r\n default:\r\n }\r\n CHSI.Page.SFields.ProcessFieldTypeChange(index, Field.FieldType * 1);\r\n\r\n $('#jxSFieldDisplayFormat_' + index).val(Field.DisplayFormat);\r\n }\r\n , ProcessFieldTypeChange: function (index, newFieldType)\r\n {\r\n var jxFieldLogicLabel = $('#jxFieldLogicLabel_' + index);\r\n\r\n var jxSFieldValidator = $('#jxSFieldValidator_' + index);\r\n var jxSFieldFormula = $('#jxSFieldFormula_' + index);\r\n jxSFieldValidator.hide();\r\n jxSFieldFormula.hide();\r\n jxFieldLogicLabel.html('');\r\n switch (newFieldType) {\r\n case 1/*regular*/:\r\n jxSFieldValidator.show();\r\n jxFieldLogicLabel.html('Validator');\r\n break;\r\n case 2/*calculated*/:\r\n jxSFieldFormula.show();\r\n jxFieldLogicLabel.html('Calculation Formula');\r\n break;\r\n case 4/*dropdown*/:\r\n jxSFieldFormula.show();\r\n jxFieldLogicLabel.html('Dropdown source');\r\n break;\r\n case 3/*date*/:\r\n break;\r\n case 5/*textblock*/:\r\n break;\r\n default:\r\n }\r\n\r\n }\r\n , ShowHideDetailRow: function (index) {\r\n var FieldEditButton = $('#jxSFieldEdit_' + index);\r\n var DetailRow = $('#ItemDetailRow_' + index);\r\n \r\n if (DetailRow.is(':visible')) {\r\n DetailRow.hide();\r\n FieldEditButton.html('Edit');\r\n }\r\n else {\r\n DetailRow.show();\r\n FieldEditButton.html('Edit');\r\n }\r\n }\r\n ,Events: {\r\n Global: function () {\r\n\r\n $('#jxAddField').on('click', function () {\r\n CHSI.Page.SFields.Events.GetFieldsFromPresentationLayer();\r\n CHSI.Page.SFields.Cache.ScheduleFieldsContainer.ScheduleFields.push(CHSI.Page.SFields.GetDefaultField());\r\n CHSI.Page.SFields.BindPresentationLayer();\r\n CHSI.Page.SFields.ShowHideDetailRow(CHSI.Page.SFields.Cache.ScheduleFieldsContainer.ScheduleFields.length-1);\r\n });\r\n\r\n $('body').on('change', '.ShowGridCheckbox', function ()\r\n {\r\n var checkbox = $(this);\r\n var Index = checkbox.data('fieldindex');\r\n var jxSFieldSortOrderDisplay = $('#jxSFieldSortOrderDisplay_' + Index);\r\n if (checkbox.is(':checked'))\r\n {\r\n jxSFieldSortOrderDisplay.show(); \r\n } else {\r\n jxSFieldSortOrderDisplay.hide(); \r\n }\r\n });\r\n \r\n $('body').on('change', '.ShowFormCheckbox', function () {\r\n var checkbox = $(this);\r\n var Index = checkbox.data('fieldindex');\r\n var jxSFieldShowInForm = $('#jxSFieldShowFormDisplay_' + Index);\r\n if (checkbox.is(':checked'))\r\n {\r\n jxSFieldShowInForm.show(); \r\n } else {\r\n jxSFieldShowInForm.hide(); \r\n }\r\n });\r\n \r\n $('body').on('change', '.ShowFieldVisibleonPortalCheckbox', function () {\r\n var checkbox = $(this);\r\n var Index = checkbox.data('fieldindex');\r\n var jxSFieldReadonlyDisplay = $('#jxSFieldReadonlyDisplay_' + Index);\r\n if (checkbox.is(':checked'))\r\n {\r\n jxSFieldReadonlyDisplay.show(); \r\n } else {\r\n jxSFieldReadonlyDisplay.hide(); \r\n }\r\n });\r\n $('#uxScheduleFieldOK').on('click', function () {\r\n CHSI.Page.SFields.Events.SaveFields();\r\n closeThis(true);\r\n });\r\n\r\n $('body').on('click', '.FieldEdit', function () {\r\n \r\n var FieldEditButton = $(this);\r\n var Index = FieldEditButton.data('fieldindex');\r\n \r\n CHSI.Page.SFields.ShowHideDetailRow(Index);\r\n \r\n });\r\n $('body').on('click', '.revertbutton', function () {\r\n var RevertButton = $(this);\r\n var Index = RevertButton.data('fieldindex');\r\n RevertButton.attr('disabled', 'disabled');\r\n var isFound = false;\r\n $(CHSI.Page.SFields.Cache.ScheduleFieldsContainer.ScheduleFields).each(function (IndexInArray, Field) {\r\n if (IndexInArray == Index) {\r\n if (Field.ScheduleFieldID == null) {\r\n CHSI.Page.SFields.BindFieldtoPresentation(IndexInArray, CHSI.Page.SFields.GetDefaultField());\r\n }\r\n else {\r\n CHSI.Page.SFields.BindFieldtoPresentation(IndexInArray, Field);\r\n }\r\n \r\n isFound = true;\r\n return false;\r\n } \r\n });\r\n\r\n\r\n });\r\n\r\n $('body').on('change', '.FieldType', function () {\r\n var FieldTypeList = $(this);\r\n var index = FieldTypeList.data('fieldindex');\r\n var FieldType = FieldTypeList.val() * 1;\r\n\r\n CHSI.Page.SFields.ProcessFieldTypeChange(index, FieldType);\r\n });\r\n\r\n $('#jxScheduleFieldsContainer').on('change', 'input,textarea,select', function () {\r\n var ChangeField = $(this);\r\n var Index = ChangeField.data('fieldindex');\r\n var RevertButton = $('#jxSFieldRevert_' + Index);\r\n RevertButton.removeAttr('disabled');\r\n });\r\n },\r\n GetFieldsFromPresentationLayer: function () {\r\n\r\n $(CHSI.Page.SFields.Cache.ScheduleFieldsContainer.ScheduleFields).each(function (index, Field) {\r\n Field.FieldName = $('#jxSFieldName_' + index).val();\r\n Field.GridShow = $('#jxSFieldShowInGrid_' + index).is(':checked');\r\n Field.GridSortOrder = $('#jxSFieldSortOrderGrid_' + index).val();\r\n Field.FormShow = $('#jxSFieldShowInForm_' + index).is(':checked');\r\n Field.FormSortOrder = $('#jxSFieldSortOrderForm_' + index).val();\r\n Field.PortalShow = $('#jxSFieldVisibleOnPortal_' + index).is(':checked');\r\n Field.PortalReadOnly = $('#jxSFieldReadOnly_' + index).is(':checked');\r\n Field.Status = $('#jxSFieldStatus_' + index).val();\r\n Field.ScheduleCategoryID = $('#jxSFieldCategory_' + index).val();\r\n Field.LongName = $('#jxSFieldLongName_' + index).val();\r\n Field.Required = $('#jxSFieldRequired_' + index).val();\r\n Field.ToolTipText = $('#jxSFieldToolTip_' + index).val();\r\n Field.Summarize = $('#jxSFieldSummarized_' + index).val();\r\n Field.FieldType = $('#jxSFieldFieldType_' + index).val();\r\n Field.DataType = $('#jxSFieldDataType_' + index).val();\r\n Field.DataSize = $('#jxSFieldSize_' + index).val();\r\n Field.FieldLogic = '';\r\n switch (Field.FieldType * 1) {\r\n case 1/*regular*/:\r\n Field.FieldLogic = $('#jxSFieldValidator_' + index).val();\r\n break;\r\n case 2/*calculated*/:\r\n case 4/*dropdown*/:\r\n Field.FieldLogic = $('#jxSFieldFormula_' + index).val();\r\n break;\r\n case 3/*date*/:\r\n break;\r\n case 5/*textblock*/:\r\n break;\r\n default:\r\n }\r\n Field.DisplayFormat = $('#jxSFieldDisplayFormat_' + index).val();\r\n });\r\n\r\n }\r\n , SaveFields: function () {\r\n if (CHSI.Page.SFields.Cache.ScheduleFieldsContainer.ScheduleFields) {\r\n CHSI.Page.SFields.Events.GetFieldsFromPresentationLayer();\r\n CHSI.Page.SFields.Calls.SaveScheduleFields();\r\n }\r\n },\r\n DynamicFieldTypes: function (FieldTypeValue) {\r\n var Calls = CHSI.Page.SFields.Calls;\r\n var Cache = CHSI.Page.Cache;\r\n var HTML = [];\r\n switch (FieldTypeValue) {\r\n case 1: // Regular\r\n $('#jxSFieldDynamicFieldType_' + + '').html('Validator')\r\n HTML.push('');\r\n break;\r\n case 2: // Calculated\r\n HTML.push('');\r\n break;\r\n case 3: // Date\r\n HTML.push('');\r\n break;\r\n case 4: // DropDown\r\n HTML.push('');\r\n break;\r\n case 5: // TextBlock\r\n HTML.push('');\r\n break;\r\n default:\r\n alert('Type not supported.');\r\n break;\r\n }\r\n return HTML.join('');\r\n } \r\n },\r\n ProcessFieldCall: function (Fields) {\r\n CHSI.Page.SFields.Cache.ScheduleFieldsContainer = { ScheduleFields: Fields, Categories: CHSI.Page.SCategories.Cache.ScheduleCategoriesObject.ScheduleCategories, ContentTypes: CHSI.Page.SFields.Cache.ContentTypes };\r\n \r\n CHSI.Page.SInformation.Calls.GetSummaryFields();\r\n\r\n \r\n CHSI.Page.SFields.BindPresentationLayer();\r\n }\r\n\r\n , Calls: {\r\n SaveScheduleFields: function () {\r\n if (!CHSI.Page.SFields.Cache.SavingFlag) {\r\n CHSI.Page.SFields.Cache.SavingFlag = true;\r\n var ajaxData = [];\r\n ajaxData = CHSI.Page.SFields.Cache.ScheduleFieldsContainer.ScheduleFields;\r\n var ajaxString = JSON.stringify(ajaxData);\r\n var AjaxURL = '/api/UW/ScheduleField/SaveScheduleFields';\r\n $.ajax({\r\n type: \"POST\",\r\n url: AjaxURL,\r\n cache: true,\r\n data: ajaxString,\r\n contentType: \"application/json; charset=utf-8\",\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SFields.ProcessFieldCall(e);\r\n CHSI.Page.SFields.Cache.SavingFlag = false;\r\n\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n }\r\n\r\n }\r\n , GetScheduleFields: function (successFunction) {\r\n var AjaxURL = '/api/UW/ScheduleField/GetScheduleField?ScheduleTypeID=' + CHSI.Page.SInformation.Cache.ScheduleTypeID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SFields.ProcessFieldCall(e);\r\n\r\n if (successFunction)\r\n { successFunction(); }\r\n\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log('no data to return');\r\n }\r\n });\r\n },\r\n GetValidatorTypes: function (successFunction) {\r\n var AjaxURL = '/api/Common/ContentType/Get';\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SFields.Cache.ContentTypes = e;\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log('no data to return');\r\n }\r\n });\r\n }\r\n }\r\n}","CHSI.Page.ScheduleGrid = {\r\n Settings: {\r\n isPortal: false\r\n , IncludeClientColumn: true\r\n ,ClientID:null\r\n }\r\n , Init: function (Settings) {\r\n if (Settings) {\r\n if (Settings.isPortal != null)\r\n this.Settings.isPortal = Settings.isPortal;\r\n if (Settings.IncludeClientColumn != null)\r\n this.Settings.IncludeClientColumn = Settings.IncludeClientColumn;\r\n if (Settings.ClientID != null)\r\n this.Cache.ClientID = Settings.ClientID;\r\n }\r\n \r\n var HashObject = CHSI.DOM.CreateHashObject(location.hash);\r\n this.Templates.ScheduleGroupGrid = CHSITemplates.ScheduleGridView;\r\n this.Events.Global();\r\n },\r\n Templates: {\r\n },\r\n Cache: {\r\n ScheduleGroupGridObject: null\r\n , StatusType: 3\r\n , Total: 0\r\n , SummaryEnabled: false\r\n , isPortal: false\r\n , ExportReportPath: null\r\n , ClientID: null\r\n , GroupID: null\r\n , GridTable: null\r\n , CurrentURLParameters: null\r\n },\r\n BindPresentationLayer: function () { \r\n setTimeout(function () {\r\n $('#jxPageMainContent').html(CHSI.Page.ScheduleGrid.Templates.ScheduleGroupGrid({ ScheduleCategory: CHSI.Page.ScheduleItemSummary.Settings.TabName }));\r\n $('#jxLinks').html(CHSI.Page.ScheduleItemSummary.Templates.Links({ Details: true, ScheduleTypeID: CHSI.Page.ScheduleItemSummary.Settings.ScheduleTypeID }));\r\n if (CHSI.Page.ScheduleGrid.Settings.isPortal) {\r\n $('#jxExportLinks').html(CHSI.Page.ScheduleItemSummary.Templates.ExportLinks({ Details: true, ScheduleTypeID: CHSI.Page.ScheduleItemSummary.Settings.ScheduleTypeID }));\r\n }\r\n\r\n var DataSet = null;\r\n\r\n if (CHSI.Page.ScheduleGrid.Cache.ScheduleGroupGridObject) {\r\n DataSet = CHSI.Page.ScheduleGrid.Cache.ScheduleGroupGridObject.Values;\r\n \r\n var Columns = [];\r\n for (var i = 0; i < CHSI.Page.ScheduleGrid.Cache.ScheduleGroupGridObject.Columns.length; i++) {\r\n var Column = {};\r\n var SourceColumn = CHSI.Page.ScheduleGrid.Cache.ScheduleGroupGridObject.Columns[i];\r\n Column.title = SourceColumn.title;\r\n Column.visible = SourceColumn.visible;\r\n\r\n if (Column.title == 'Client') {\r\n if (CHSI.Page.ScheduleGrid.Settings.IncludeClientColumn == false) {\r\n Column.visible = false;\r\n }\r\n Column.class = 'client-control';\r\n }\r\n \r\n Columns.push(Column);\r\n }\r\n var Column = {}\r\n Column.title = \"\";\r\n Column.data = null;\r\n Column.orderable = false;\r\n Column.class = 'details-control';\r\n Column.defaultContent = '[view]';\r\n Columns.push(Column);\r\n var columnDefs = [];\r\n var ClientColumnDefinition = {};\r\n ClientColumnDefinition.targets = 2;\r\n ClientColumnDefinition.render = function (data, type, row) {\r\n return \"\" + data + '';\r\n }\r\n columnDefs.push(ClientColumnDefinition);\r\n /*Build Totals Object*/\r\n var TotalObj = {};\r\n CHSI.Page.ScheduleGrid.Cache.SummaryEnabled = false;\r\n\r\n if (CHSI.Page.ScheduleGrid.Cache.ScheduleGroupGridObject.Columns.length) {\r\n for (var x = 0; x < CHSI.Page.ScheduleGrid.Cache.ScheduleGroupGridObject.Columns.length; x++) {\r\n if (CHSI.Page.ScheduleGrid.Cache.ScheduleGroupGridObject.Columns[x].Summarized) {\r\n CHSI.Page.ScheduleGrid.Cache.SummaryEnabled = true;\r\n }\r\n }\r\n if (CHSI.Page.ScheduleGrid.Cache.SummaryEnabled) {\r\n TotalObj.TotalCells = [];\r\n TotalObj.Comments = '###Total###';\r\n var TotalLabelDisplayed = false;\r\n for (var x = 0; x < CHSI.Page.ScheduleGrid.Cache.ScheduleGroupGridObject.Columns.length; x++) {\r\n var TotalDisplay = '';\r\n if (CHSI.Page.ScheduleGrid.Cache.ScheduleGroupGridObject.Columns[x].isVisible) {\r\n if (TotalLabelDisplayed == false) {\r\n TotalDisplay = 'Totals:';\r\n TotalLabelDisplayed = true;\r\n }\r\n else if (CHSI.Page.ScheduleGrid.Cache.ScheduleGroupGridObject.Columns[x].Summarized) {\r\n var TotalAmount = 0;\r\n if (CHSI.Page.ScheduleGrid.Cache.ScheduleGroupGridObject.Columns[x].DataType == 5 || CHSI.Page.ScheduleGrid.Cache.ScheduleGroupGridObject.Columns[x].DataType == 3) {\r\n for (var y = 0; y < CHSI.Page.ScheduleGrid.Cache.ScheduleGroupGridObject.Values.length; y++) {\r\n TotalAmount = CHSI.Math.SafeAdd(TotalAmount, CHSI.Page.ScheduleGrid.Cache.ScheduleGroupGridObject.Values[y][x]);\r\n }\r\n }\r\n else {\r\n TotalAmount = CHSI.Page.ScheduleGrid.Cache.ScheduleGroupGridObject.Values.length;\r\n }\r\n TotalDisplay = TotalAmount;\r\n }\r\n TotalObj.TotalCells.push(TotalDisplay);\r\n }\r\n }\r\n TotalObj.TotalCells.push('');/*negate the last column*/\r\n }\r\n }\r\n var FooterRenderFunction = null;\r\n if (CHSI.Page.ScheduleGrid.Cache.SummaryEnabled) {\r\n FooterRenderFunction = function (nRow, aaData, iStart, iEnd, aiDisplay) {\r\n var footer = $('#jxScheduleGrid tfoot');\r\n footer.html('');\r\n var tr = $('');\r\n for (var i = 0; i < TotalObj.TotalCells.length; i++) {\r\n tr.append('' + TotalObj.TotalCells[i] + '');\r\n }\r\n\r\n \r\n footer.append(tr);\r\n \r\n\r\n }\r\n \r\n }\r\n }\r\n\r\n if (DataSet != null) {\r\n\t\t\t\t//CHSI.Page.ScheduleGrid.Cache.GridTable = $('#jxScheduleGrid').DataTable({\r\n\t\t\t\t//\tdata: DataSet,\r\n\t\t\t\t//\tcolumns: Columns,\r\n\t\t\t\t//\tcolumnDefs: columnDefs,\r\n\t\t\t\t//\tfnFooterCallback: FooterRenderFunction,\r\n\t\t\t\t//\tstateSave: true\r\n\t\t\t\t//});\r\n\t\t\t\tDataSet.Values = DataSet;\r\n\t\t\t\tDataSet.Columns = Columns;\r\n\t\t\t\tCHSI.Page.ScheduleGrid.Cache.GridTable = mW.DataTableHelpers.BuildDataTableWithHeaders('jxScheduleGrid', DataSet, '', 600, true);\r\n\t\t\t\t$('#jxScheduleGrid tr.odd td').css('font-size', '9pt');\r\n } else {\r\n var HTML = []; \r\n $('#jxScheduleGrid').html('No results found.')\r\n }\r\n \r\n \r\n SetSize();\r\n CHSI.Page.ScheduleGrid.Events.GridEvents();\r\n\r\n if (CHSI.Page.ScheduleGrid.Cache.CurrentURLParameters == null) {\r\n CHSI.Page.ScheduleGrid.Cache.CurrentURLParameters = location.hash;\r\n }\r\n\r\n location.hash = CHSI.Page.ScheduleGrid.Cache.CurrentURLParameters;\r\n\r\n $('.header').each(function () {\r\n var index = $(this).data('index');\r\n var width = $(this).width();\r\n $('#jxTotal_' + index).width(width);\r\n });\r\n\r\n if (CHSI.Page.ScheduleGrid.Cache.StatusType == 2) {\r\n $('#jxFilterPending').prop('checked', true);\r\n }\r\n\r\n if (CHSI.Page.ScheduleGrid.Cache.StatusType == 3) {\r\n $('#jxFilterActive').prop('checked', true);\r\n }\r\n if (CHSI.Page.ScheduleGrid.Cache.StatusType == 4) {\r\n $('#jxFilterInactive').prop('checked', true);\r\n }\r\n if (CHSI.Page.ScheduleGrid.Cache.StatusType == 7) {\r\n $('#jxFilterAll').prop('checked', true);\r\n }\r\n\r\n $('#jxLoading').hide();\r\n }, 1000);\r\n },\r\n BuildReportPath: function (ExportAll) {\r\n if (CHSI.Page.ScheduleGrid.Cache.ExportReportPath === undefined) {\r\n alert('invalid report path configured, check groupspec \"Schedule Report Path\"');\r\n }\r\n\r\n return '/CHSIFileHandler.axd?ReportName=' + CHSI.Page.ScheduleGrid.Cache.ExportReportPath + '&ReportType=5&ReportOptions=ScheduleTypeID%3D' + CHSI.Page.ScheduleItemSummary.Settings.ScheduleTypeID + '%26GroupID%3D' + CHSI.Page.ScheduleItemSummary.Settings.GroupFilter + '%26ClientID%3D' + ((CHSI.Page.ScheduleItemSummary.Settings.ClientID == \"null\" || CHSI.Page.ScheduleItemSummary.Settings.ClientID == null) ? 0 : CHSI.Page.ScheduleItemSummary.Settings.ClientID) + '%26ExportAll%3D' + (ExportAll ? 1 : 0);\r\n }\r\n , Events: {\r\n GridEvents: function () {\r\n $('#jxExport').off('click').on('click', function () {\r\n window.open(CHSI.Page.ScheduleGrid.BuildReportPath(false));\r\n });\r\n\r\n $('#jxExportAllFields').off('click').on('click', function () {\r\n window.open(CHSI.Page.ScheduleGrid.BuildReportPath(true));\r\n });\r\n\r\n $('#jxNewScheduleItem').off('click').on('click', function () {\r\n var qs = jQuery.parseQuerystring();\r\n var ScheduleID = $(this).data('scheduleid');\r\n if (CHSI.Page.ScheduleGrid.Cache.CurrentURLParameters == null) {\r\n CHSI.Page.ScheduleGrid.Cache.CurrentURLParameters = location.hash;\r\n } else {\r\n location.hash = CHSI.Page.ScheduleGrid.Cache.CurrentURLParameters;\r\n }\r\n var HashObject = CHSI.DOM.CreateHashObject(location.hash);\r\n var Name = decodeURI(HashObject.TabName);\r\n var Category = decodeURI(HashObject.TabName);\r\n var DefaultImageID = HashObject.DefaultImageID;\r\n\r\n CHSI.Page.ScheduleGrid.Events.ShowScheduleItemDetails(ScheduleID, null, Name, Category, CHSI.Page.ScheduleGrid.Cache.isPortal, DefaultImageID, CHSI.Page.ScheduleGrid.Cache.ClientID);\r\n });\r\n }\r\n , Global: function () {\r\n $('#jxPageHeader').html();\r\n /*Grid delegate event*/\r\n $('#jxPageMainContent').on('click', '#jxScheduleGrid td.details-control', function () {\r\n var tr = $(this).closest('tr');\r\n var row = CHSI.Page.ScheduleGrid.Cache.GridTable.row(tr); \r\n var ScheduleItemID = row.data()[0];\r\n CHSI.Common.Log(row.data())\r\n CHSI.Common.Log('ScheduleItem ' + ScheduleItemID);\r\n if (CHSI.Page.ScheduleGrid.Cache.CurrentURLParameters == null) {\r\n CHSI.Page.ScheduleGrid.Cache.CurrentURLParameters = location.hash;\r\n } else {\r\n location.hash = CHSI.Page.ScheduleGrid.Cache.CurrentURLParameters;\r\n }\r\n var HashObject = CHSI.DOM.CreateHashObject(location.hash);\r\n var Name = HashObject.TabName;\r\n var Category = HashObject.ScheduleCategory;\r\n var isPortal = CHSI.Page.ScheduleGrid.Settings.isPortal;\r\n CHSI.Page.ScheduleGrid.Events.ShowScheduleItemDetails(CHSI.Page.ScheduleItemSummary.Settings.ScheduleTypeID, ScheduleItemID, Name, Category, isPortal, null, CHSI.Page.ScheduleGrid.Cache.ClientID);\r\n });\r\n \r\n\r\n\r\n $('#jxPageMainContent').on('click', '#jxBack', function () {\r\n var href = $(this).attr('href');\r\n CHSI.Page.ScheduleItemSummary.GetFiltersFromURL(href);\r\n CHSI.Page.ScheduleItemSummary.BindTabs();\r\n CHSI.Page.ScheduleItemSummary.DeterminePageMode();\r\n });\r\n\r\n $('#jxPageMainContent').on('click', '.Filter', function () {\r\n\r\n CHSI.Page.ScheduleGrid.Cache.StatusType = 0;\r\n if ($(this).is(':checked')) {\r\n CHSI.Page.ScheduleGrid.Cache.StatusType = $(this).val();\r\n } \r\n CHSI.Page.ScheduleGrid.Calls.GetSummary(); \r\n });\r\n\r\n \r\n }\r\n , ShowScheduleItemDetails: function (ScheduleTypeID, ScheduleItemID, Name, Category, isPortal, DefaultImageID, ClientID) {\r\n var QueryString = '?ScheduleTypeID=' + ScheduleTypeID + '&isPortal=' + isPortal;\r\n\r\n if (ScheduleItemID) {\r\n QueryString = QueryString + '&ScheduleItemID=' + ScheduleItemID + '&Name=' + Name + '&Category=' + Category;\r\n }\r\n if (DefaultImageID) {\r\n QueryString = QueryString + '&DefaultImageID=' + DefaultImageID;\r\n }\r\n if (ClientID) {\r\n QueryString = QueryString + '&ClientID=' + ClientID;\r\n }\r\n var URL = '/UW/Modals/ScheduleItemForm.aspx' + QueryString;\r\n ShowPopup('ScheduleItemForm', URL, 'Schedule Item - ' + decodeURI(Category.replace('%26', \"&\")) + ' - ' + decodeURI(Name.replace('%26', \"&\")), 720, 570, RefreshGrid, true);\r\n }\r\n },\r\n Calls: {\r\n GetSummary: function () {\r\n $('#jxLoading').show();\r\n var isPortal = CHSI.Page.ScheduleGrid.Settings.isPortal;\r\n var DisplayType = CHSI.Page.ScheduleItemSummary.Settings.DisplayType;\r\n var ScheduleTypeID = CHSI.Page.ScheduleItemSummary.Settings.ScheduleTypeID;\r\n var ClientID = CHSI.Page.ScheduleItemSummary.Settings.ClientID;\r\n\r\n var GroupID = CHSI.Page.ScheduleItemSummary.Settings.GroupFilter\r\n var StatusType = CHSI.Page.ScheduleGrid.Cache.StatusType;\r\n CHSI.CRM.GetGroupSpec(GroupID, 'Schedule Report Path', function (groupspecValue) {\r\n CHSI.Page.ScheduleGrid.Cache.ExportReportPath = groupspecValue;\r\n var AjaxURL = \"/api/UW/ScheduleItem/GetSummary2?DisplayType=\" + DisplayType + \"&StatusType=\" + StatusType + \"&ClientID=\" + ClientID + \"&GroupID=\" + GroupID + \"&ScheduleTypeID=\" + ScheduleTypeID + \"&isPortal=\" + isPortal;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) { \r\n CHSI.Page.ScheduleGrid.Cache.ScheduleGroupGridObject = e;\r\n CHSI.Page.ScheduleGrid.BindPresentationLayer();\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log('no data to return');\r\n }\r\n });\r\n });\r\n }\r\n }\r\n}\r\n\r\nfunction RefreshGrid() {\r\n CHSI.Page.ScheduleGrid.Calls.GetSummary();\r\n if (CHSI.Page.ScheduleGrid.Cache.CurrentURLParameters == null) {\r\n CHSI.Page.ScheduleGrid.Cache.CurrentURLParameters = location.hash;\r\n } else {\r\n location.hash = CHSI.Page.ScheduleGrid.Cache.CurrentURLParameters;\r\n }\r\n}\r\n\r\nHandlebars.registerHelper('backgroundcolor', function (value, options) {\r\n var backgroundcolor = 'arow';\r\n if (value % 2 == 0) {\r\n backgroundcolor = 'prow';\r\n }\r\n return backgroundcolor;\r\n});","CHSI.Page.SInformation = {\r\n Init: function (QSObject, successFunction) {\r\n var Template_ScheduleInformation = $('#Template_ScheduleInformation').html();\r\n this.Templates.ScheduleInformation = Handlebars.compile(Template_ScheduleInformation); \r\n this.Cache.ScheduleTypeID = QSObject.ScheduleTypeID;\r\n \r\n this.Calls.GetGroups(successFunction);\r\n this.Events.Global();\r\n },\r\n Templates: {\r\n\r\n },\r\n Cache: {\r\n ScheduleInformationObject: {\r\n SummaryFields: []\r\n }\r\n , Groups: null\r\n },\r\n BindPresentationLayer: function () {\r\n \r\n if (this.Cache.ScheduleInformationObject == null)\r\n {\r\n this.Cache.ScheduleInformationObject = { Groups: this.Cache.Groups, BGColor: '#595656', TextColor: '#FFFFFF' }\r\n } else {\r\n this.Cache.ScheduleInformationObject.Groups = this.Cache.Groups;\r\n }\r\n \r\n \r\n\r\n $('#jxScheduleInformationContainer').html(this.Templates.ScheduleInformation(this.Cache.ScheduleInformationObject));\r\n $('#jxBackgroundColorPicker').spectrum({\r\n move: function (hex) { CHSI.Page.SInformation.Cache.ScheduleInformationObject.BGColor = hex.toHexString(); }\r\n , preferredFormat: \"hex\" \r\n });\r\n $('#jxTextColorPicker').spectrum({\r\n move: function (hex) { CHSI.Page.SInformation.Cache.ScheduleInformationObject.TextColor = hex.toHexString(); }\r\n , preferredFormat: \"hex\" \r\n }); \r\n },\r\n Events: {\r\n SaveScheduleInformation: function()\r\n {\r\n if (!CHSI.Page.SInformation.Events.ValidateSummaryFields()) {\r\n alert('Please select a value in Summary Field.');\r\n return false;\r\n }\r\n CHSI.Page.SInformation.Events.PersistFormToCache();\r\n CHSI.Page.SInformation.Calls.SaveScheduleInformation(CHSI.Page.SInformation.Cache.ScheduleInformationObject);\r\n return true;\r\n }\r\n ,Global: function () {\r\n \r\n \r\n $('#jxScheduleInformationContainer').on('keyup', '#jxTileName', function () {\r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject.TileName = $(this).val().replace(/ /g, \"
\").toUpperCase();\r\n $('#jxTileInformationName').html(CHSI.Page.SInformation.Cache.ScheduleInformationObject.TileName);\r\n });\r\n\r\n $('#jxScheduleInformationContainer').on('keyup', '#jxLabel', function () {\r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject.SummaryLabel = $(this).val();\r\n $('#jxTileInformationLabel').html(CHSI.Page.SInformation.Cache.ScheduleInformationObject.SummaryLabel);\r\n });\r\n\r\n $('#jxScheduleInformationContainer').on('change', '#jxBackgroundColorPicker', function () { \r\n CHSI.Page.SInformation.Events.UpdateColorPickerOnChange();\r\n });\r\n\r\n $('#jxScheduleInformationContainer').on('change', '#jxBackgroundColorHex', function () {\r\n var UpdatedBGHex = $(this).val();\r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject.BGColor = UpdatedBGHex;\r\n CHSI.Page.SInformation.Events.UpdateHexOnChange(CHSI.Page.SInformation.Cache.ScheduleInformationObject.BGColor);\r\n });\r\n\r\n $('#jxScheduleInformationContainer').on('change', '#jxTextColorPicker', function () { \r\n CHSI.Page.SInformation.Events.UpdateColorPickerOnChange();\r\n });\r\n\r\n $('#jxScheduleInformationContainer').on('change', '#jxTextColorHex', function () {\r\n var UpdateTextHex = $(this).val();\r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject.TextColor = UpdateTextHex;\r\n CHSI.Page.SInformation.Events.UpdateHexOnChange(CHSI.Page.SInformation.Cache.ScheduleInformationObject.TextColor);\r\n }); \r\n },\r\n AutoSave: function () {\r\n CHSI.Page.SInformation.Events.PersistFormToCache();\r\n CHSI.Page.SInformation.Calls.SaveScheduleInformation();\r\n },\r\n UpdateColorPickerOnChange: function () {\r\n var SInformationObject = CHSI.Page.SInformation.Cache.ScheduleInformationObject; \r\n $('#jxBackgroundColorPicker').val(SInformationObject.BGColor);\r\n $('#jxBackgroundColorHex').val(SInformationObject.BGColor);\r\n $('#jxTextColorPicker').val(SInformationObject.TextColor);\r\n $('#jxTextColorHex').val(SInformationObject.TextColor);\r\n CHSI.Page.SInformation.Events.PersistFormToCache();\r\n CHSI.Page.SInformation.BindPresentationLayer();\r\n },\r\n UpdateHexOnChange: function (UpdatedHexValue) {\r\n var UpdatedHexValue = CHSI.Page.SInformation.Cache.ScheduleInformationObject;\r\n $('#jxBackgroundColorPicker').val(UpdatedHexValue.BGColor);\r\n $('#jxBackgroundColorHex').val(UpdatedHexValue.BGColor);\r\n $('#jxTextColorPicker').val(UpdatedHexValue.TextColor);\r\n $('#jxTextColorHex').val(UpdatedHexValue.TextColor);\r\n CHSI.Page.SInformation.Events.PersistFormToCache();\r\n CHSI.Page.SInformation.BindPresentationLayer();\r\n },\r\n PersistFormToCache: function () {\r\n var SInformationObject = CHSI.Page.SInformation.Cache.ScheduleInformationObject;\r\n SInformationObject.Name = $('#jxName').val();\r\n SInformationObject.GroupName = $('#jxGroup').val();\r\n SInformationObject.Status = $('#jxStatus').val();\r\n SInformationObject.Description = $('#jxDescription').val();\r\n SInformationObject.TypeCategory = $('#jxCategory').val();\r\n SInformationObject.SortOrder = $('#jxSortOrder').val();\r\n SInformationObject.DefaultImageID = $('#jxDefaultImageID').val();\r\n SInformationObject.TileName = $('#jxTileName').val().toUpperCase();\r\n SInformationObject.BGColor = $('#jxBackgroundColorHex').val();\r\n SInformationObject.TextColor = $('#jxTextColorHex').val();\r\n SInformationObject.SummaryFieldID = $('#jxSummaryField').val();\r\n SInformationObject.SummaryLabel = $('#jxLabel').val();\r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject = SInformationObject;\r\n },\r\n ValidateSummaryFields: function () {\r\n var SInformationObject = CHSI.Page.SInformation.Cache.ScheduleInformationObject;\r\n var isValid = false;\r\n var SummaryFieldHasValue = (SInformationObject.SummaryFields.length == 0) ? false : true; \r\n \r\n if (SummaryFieldHasValue) {\r\n if ($('#jxSummaryField').val()) {\r\n isValid = true;\r\n } else {\r\n isValid = false;\r\n }\r\n } else {\r\n isValid = true;\r\n }\r\n return isValid;\r\n }\r\n },\r\n Calls: {\r\n GetDefaultImages: function () {\r\n var AjaxURL = \"/api/UW/Schedule/GetScheduleDefaultImage\";\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject.DefaultImages = e; \r\n CHSI.Page.SInformation.Calls.GetSummaryFields(); \r\n },\r\n error: function (e) {\r\n CHSI.Common.Log('no data to return');\r\n }\r\n });\r\n },\r\n GetGroups: function (successFunction) {\r\n var AjaxURL = \"/api/CRM/Group/GetActiveGroups\";\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n\r\n CHSI.Page.SInformation.Cache.Groups = e;\r\n \r\n if (CHSI.Page.SInformation.Cache.ScheduleTypeID) {\r\n \r\n CHSI.Page.SInformation.Calls.GetScheduleInformationByID(CHSI.Page.SInformation.Cache.ScheduleTypeID);\r\n }\r\n else\r\n {\r\n CHSI.Page.SInformation.BindPresentationLayer();\r\n }\r\n successFunction();\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log('no data to return');\r\n }\r\n });\r\n }\r\n , GetScheduleInformationByID: function (ScheduleTypeID) {\r\n var AjaxURL = '/api/UW/Schedule/GetScheduleTypeByScheduleTypeID?ScheduleTypeID=' + ScheduleTypeID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n \r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject = e; \r\n CHSI.Page.SInformation.Calls.GetDefaultImages(CHSI.Page.SInformation.Cache.ScheduleInformationObject.DefaultImageID);\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n GetSummaryFields: function () {\r\n var AjaxURL = '/api/UW/ScheduleField/GetSummarizedFields?ScheduleTypeID=' + CHSI.Page.SInformation.Cache.ScheduleTypeID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) { \r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject.SummaryFields = e;\r\n CHSI.Page.SInformation.BindPresentationLayer(); \r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n SaveScheduleInformation: function (ScheduleInformationObject) { \r\n var AjaxURL = '/api/UW/Schedule/SaveScheduleType';\r\n var ajaxString = JSON.stringify(ScheduleInformationObject);\r\n $.ajax({\r\n type: \"POST\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n data: ajaxString,\r\n success: function (e) {\r\n CHSI.Page.SInformation.Cache.ScheduleTypeID = e;\r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject.ScheduleTypeID = e;\r\n CHSI.Common.Log('saved'); \r\n },\r\n error: function (e) {\r\n CHSI.Common.Log(e);\r\n }\r\n });\r\n }\r\n }\r\n}","CHSI.Page.SItemFormImageEdit = {\r\n \r\n Init: function (ScheduleItemID) {\r\n var Template_ScheduleItemFormImageEdit = $('#Template_ScheduleItemFormImageEdit').html();\r\n this.Templates.ScheduleItemFormImageEdit = Handlebars.compile(Template_ScheduleItemFormImageEdit);\r\n this.Cache.ImageObject.ScheduleItemID = ScheduleItemID;\r\n if (ScheduleItemID) {\r\n this.Calls.GetScheduleItemImages(ScheduleItemID);\r\n }\r\n \r\n },\r\n Templates: {\r\n\r\n },\r\n Cache: {\r\n ImageObject: {\r\n ScheduleItemID: null\r\n }\r\n },\r\n BindPresentationLayer: function (){\r\n $('#jxScheduleItemFormImageEditContainer').html(this.Templates.ScheduleItemFormImageEdit(this.Cache.ImageObject));\r\n },\r\n Events: {\r\n Global: function () { \r\n\r\n }\r\n },\r\n Calls: {\r\n GetScheduleItemImages: function (ScheduleItemID) {\r\n var AjaxURL = '/api/UW/ScheduleItemImage/GetScheduleItemImages?ScheduleItemID=' + ScheduleItemID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SItemFormImageEdit.Cache.ImageObject = { ImageObject: e };\r\n CHSI.Page.SItemFormImageEdit.BindPresentationLayer(); \r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n DeleteScheduleItemImage: function (ScheduleImageID, ScheduleItemID) {\r\n \r\n var AjaxURL = '/api/UW/ScheduleItemImage/DeleteScheduleItemImage?ScheduleImageID=' + ScheduleImageID;\r\n $.ajax({\r\n type: \"Delete\",\r\n url: AjaxURL,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SItemFormImageEdit.Calls.GetScheduleItemImages(ScheduleItemID);\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n }\r\n }\r\n}","CHSI.Page.SItemFormFields = {\r\n Init: function (scheduleItemID, scheduleTypeID) { \r\n var Template_ScheduleItemFormFields = $('#Template_ScheduleItemFormFields').html();\r\n this.Templates.ScheduleItemFormFields = Handlebars.compile(Template_ScheduleItemFormFields);\r\n var Template_ScheduleItemFieldHistory = $('#Template_ScheduleItemFieldHistory').html();\r\n this.Templates.ScheduleItemFieldHistory = Handlebars.compile(Template_ScheduleItemFieldHistory);\r\n this.Cache.ScheduleItemID = scheduleItemID;\r\n this.Cache.ScheduleTypeID = scheduleTypeID;\r\n \r\n this.Calls.GetFields();\r\n this.Events.Global();\r\n \r\n },\r\n SaveAll: function (Status) {\r\n this.PersistFieldsFromHTML();\r\n\r\n //this.Calls.SaveFields(Status);\r\n this.Events.SaveFields();\r\n },\r\n SaveAllFields: function (Status)\r\n {\r\n this.PersistFieldsFromHTML();\r\n\r\n this.Calls.SaveFields(Status);\r\n $('.jxUndo').hide();\r\n\r\n }\r\n , PersistFieldsFromHTML: function () {\r\n for (var index = 0; index < CHSI.Page.SItemFormFields.Cache.FieldsObject.length; index++) {\r\n var Element = $('#jxField_' + index);\r\n var DataType = Element.data('datatype');\r\n var ElementVal = Element.val();\r\n ElementVal = CHSI.Page.SItemFormFields.GetValue(ElementVal, DataType);\r\n if (DataType == 3 || DataType == 5) {\r\n ElementVal = isNaN(ElementVal) ? '' : ElementVal;\r\n }\r\n CHSI.Page.SItemFormFields.Cache.FieldsObject[index].ColumnValue = ElementVal;\r\n CHSI.Page.SItemFormFields.Cache.FieldsObject[index].Status = $('#jxField_' + index).data('newstatus');\r\n }\r\n }\r\n ,Templates: {\r\n\r\n },\r\n Cache: {\r\n Fields: null\r\n , SHistoryObject: null\r\n , FieldsObject: null\r\n , HistoryName: null\r\n , Active: false\r\n , validator: null\r\n\r\n },\r\n BindPresentationLayer: function () {\r\n $('#jxScheduleItemFormFieldsContainer').html(this.Templates.ScheduleItemFormFields({ Fields: this.Cache.Fields}));\r\n\r\n restart = true;\r\n sorttable.init();\r\n \r\n\r\n $('.Date').datepicker({\r\n showOn: \"both\",\r\n buttonImage: \"/images/icons/cal.gif\",\r\n buttonImageOnly: true\r\n });\r\n },\r\n BindHistory: function () {\r\n var HTML ='';\r\n HTML = CHSI.Page.SItemFormFields.Templates.ScheduleItemFieldHistory(CHSI.Page.SItemFormFields.Cache.SHistoryObject);\r\n ShowInlinePopup('FieldHistoryModal', HTML, 'History:' + CHSI.Page.SItemFormFields.Cache.HistoryName, 400, 400, null, true);\r\n restart = true;\r\n sorttable.init();\r\n \r\n },\r\n Events: {\r\n ClearStatusChangedFields: function () {\r\n $('.jxUndo').hide();\r\n CHSI.Page.SItemFormFields.Cache.Fields = CHSI.Page.SItemFormFields.Events.ProcessFields(CHSI.Page.SItemFormFields.Cache.FieldsObject);\r\n CHSI.Page.SItemFormFields.BindPresentationLayer();\r\n },\r\n\r\n ProcessFields: function (e) {\r\n var obj = {};\r\n if (e) {\r\n for (i = 0; i < e.length; i++) {\r\n if (e[i]) {\r\n if (!e[i].CategoryName) {\r\n e[i].CategoryName = 'Other';\r\n }\r\n e[i].index = i;\r\n if (typeof obj[e[i].CategoryName] == 'undefined') {\r\n obj[e[i].CategoryName] = [];\r\n }\r\n e[i].ColumnValue = CHSI.Page.SItemFormFields.FormatString(e[i].ColumnValue, e[i].DisplayFormat, e[i].DataType);\r\n if (e[i].Status) {\r\n if (e[i].Status.substring(0, 7).toLowerCase() == 'pending') {\r\n CHSI.Page.SItemFormFields.Cache.PendingChanges = true;\r\n }\r\n }\r\n if (CHSI.Page.SItemFormFields.Cache.ScheduleItemID == undefined && CHSI.Page.SItemFormFields.Cache.isPortal) {\r\n CHSI.Page.SItemFormFields.Cache.NewItem = true;\r\n }\r\n\r\n if (e[i].NumOfUpdates < 1 && CHSI.Page.SItemFormFields.Cache.ScheduleItemID && CHSI.Page.SItemFormItem.Cache.Status == 'Pending' && CHSI.Page.SItemFormItem.Cache.AddNew == false) {\r\n CHSI.Page.SItemFormFields.Cache.NewItem = true;\r\n }\r\n\r\n obj[e[i].CategoryName].push(e[i]);\r\n }\r\n }\r\n }\r\n\r\n return obj;\r\n },\r\n Global: function () {\r\n $('#jxScheduleItemFormFieldsContainer').on('change', 'select,input,textarea', function () {\r\n var ChangedField = $(this);\r\n //var ScheduleItemID = ChangedField.data('scheduleitemid');\r\n //var PreviousValue = CHSI.Page.SItemFormFields.Calls.GetHistory(ScheduleItemID);\r\n ChangedField.data('newstatus', 'changed');\r\n var index = ChangedField.data('index');\r\n $('#jxUndoField_' + index).show();\r\n $('#jxScheduleItemFormFieldsContainer').on('click', '#jxUndoField_' + index, function () {\r\n ChangedField.val(ChangedField.data('originalvalue'));\r\n ChangedField.data('newstatus', ChangedField.data('status'));\r\n $('#jxUndoField_' + index).hide();\r\n });\r\n \r\n //ChangedField.append('Previous Value: ' + PreviousValue + '[revert]');\r\n });\r\n\r\n $('#jxScheduleItemFormFieldsContainer').on('blur', '.Regular', function () { \r\n var Element = $(this);\r\n var ElementVal = Element.val();\r\n var Format = Element.data('displayformat');\r\n var DataType= Element.data('datatype');\r\n Element.val(CHSI.Page.SItemFormFields.FormatString(ElementVal, Format, DataType));\r\n\r\n var validator = jQuery('form').validate({ onkeyup: false });\r\n validator.element(this);\r\n \r\n\r\n });\r\n\r\n $('#jxScheduleItemFormFieldsContainer').on('blur', '.Calculated', function () {\r\n \r\n });\r\n\r\n $('#jxScheduleItemFormFieldsContainer').on('blur', '.Date', function () {\r\n var Element = $(this);\r\n var FormatedDate = CHSI.Dates.GetShortDate(Element.val());\r\n Element.val(FormatedDate);\r\n });\r\n\r\n $('#jxScheduleItemFormFieldsContainer').on('blur', '.DropDown', function () {\r\n var validator = jQuery('form').validate({ onkeyup: false });\r\n validator.element(this);\r\n });\r\n\r\n $('#jxScheduleItemFormFieldsContainer').on('blur', '.TextBlock', function () {\r\n var validator = jQuery('form').validate({ onkeyup: false });\r\n validator.element(this);\r\n });\r\n\r\n $('#uxScheduleItemFieldsOK').on('click', function () {\r\n if (jQuery('form').valid()) {\r\n CHSI.Page.SItemFormFields.SaveAllFields('active');\r\n closeThis(true);\r\n }\r\n });\r\n },\r\n InsertRevertOption: function () {\r\n\r\n },\r\n ValidateFields: function () {\r\n\r\n }\r\n \r\n },\r\n ApplyPrevious: function (index, priorvalue, actualvalue) {\r\n $('#jxField_' + index).val(priorvalue);\r\n $('#jxRevertField_' + index).hide();\r\n $('#jxField_' + index).removeClass('HighlightGreen');\r\n },\r\n FormatString: function (SValue, Format, DataType)\r\n {\r\n var FormatedText = SValue;\r\n if (SValue && Format && DataType) { \r\n var ElementVal = CHSI.Page.SItemFormFields.GetValue(SValue, DataType);\r\n FormatedText = String.__Format(Format, ElementVal); \r\n }\r\n return FormatedText;\r\n },\r\n GetValue: function (SValue, DataType)\r\n {\r\n var ElementVal = SValue;\r\n switch (DataType) {\r\n case 3: //Decimal\r\n ElementVal = parseFloat(ElementVal.replace(/[^0-9\\.]/g, ''));\r\n break;\r\n case 5: //Integer\r\n ElementVal = parseInt(ElementVal.replace(/[^0-9]/g, ''));\r\n break;\r\n\r\n }\r\n\r\n return ElementVal;\r\n\r\n },\r\n Calls: {\r\n GetFields: function () {\r\n \r\n var AjaxURL = '/api/UW/ScheduleField/GetScheduleField?ScheduleTypeID=' + CHSI.Page.SItemFormFields.Cache.ScheduleTypeID;\r\n\r\n if (CHSI.Page.SItemFormFields.Cache.ScheduleItemID) {\r\n AjaxURL = '/api/UW/ScheduleItemField/Get?ScheduleItemID=' + CHSI.Page.SItemFormFields.Cache.ScheduleItemID;\r\n } else {\r\n if (CHSI.Page.SItemFormItem.Cache.SItemObject.ScheduleItemID) {\r\n AjaxURL = '/api/UW/ScheduleItemField/Get?ScheduleItemID=' + CHSI.Page.SItemFormItem.Cache.SItemObject.ScheduleItemID;\r\n }\r\n }\r\n\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n \r\n if (e) {\r\n var obj = {};\r\n for (i = 0; i < e.length; i++) {\r\n if (!e[i].CategoryName) {\r\n e[i].CategoryName = 'Other';\r\n }\r\n e[i].index = i;\r\n if (typeof obj[e[i].CategoryName] == 'undefined') {\r\n obj[e[i].CategoryName] = [];\r\n }\r\n e[i].ColumnValue = CHSI.Page.SItemFormFields.FormatString(e[i].ColumnValue, e[i].DisplayFormat, e[i].DataType);\r\n obj[e[i].CategoryName].push(e[i]);\r\n }\r\n\r\n }\r\n CHSI.Page.SItemFormFields.Cache.FieldsObject = e;\r\n CHSI.Page.SItemFormFields.Cache.Fields = obj;\r\n CHSI.Page.SItemFormFields.BindPresentationLayer();\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log('no data to return');\r\n }\r\n });\r\n },\r\n GetHistory: function (ScheduleItemID, ScheduleFieldID, Name) {\r\n var AjaxURL = '/api/UW/ScheduleItemFieldValue/GetHistory?ScheduleItemID=' + ScheduleItemID + '&ScheduleFieldID='+ScheduleFieldID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SItemFormFields.Cache.HistoryName = Name;\r\n CHSI.Page.SItemFormFields.Cache.SHistoryObject = { History: e };\r\n CHSI.Page.SItemFormFields.BindHistory();\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log('no data to return');\r\n }\r\n });\r\n },\r\n SaveFields: function (Status) {\r\n var AjaxURL = '/api/UW/ScheduleItemField/SaveScheduleFields';\r\n var PendingFields = [];\r\n if (!CHSI.Page.SItemFormFields.Cache.FieldsObject) {\r\n return false;\r\n }\r\n if (CHSI.Page.SItemFormFields.Cache.FieldsObject.length) { \r\n for (i = 0; i < CHSI.Page.SItemFormFields.Cache.FieldsObject.length; i++) {\r\n var FieldStatus= CHSI.Page.SItemFormFields.Cache.FieldsObject[i].Status.toLowerCase();\r\n if (FieldStatus == 'pending' || FieldStatus=='changed')\r\n {\r\n if (Status != '') {\r\n PendingFields.push(CHSI.Page.SItemFormFields.Cache.FieldsObject[i]);\r\n } else {\r\n if (FieldStatus == 'changed') {\r\n CHSI.Page.SItemFormFields.Cache.FieldsObject[i].Status = 'pending';\r\n PendingFields.push(CHSI.Page.SItemFormFields.Cache.FieldsObject[i]);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n\r\n var FieldsContainer = {};\r\n FieldsContainer.ItemFields = PendingFields;\r\n FieldsContainer.Status = Status;\r\n var ajaxString = JSON.stringify(FieldsContainer);\r\n $.ajax({\r\n type: \"POST\",\r\n url: AjaxURL,\r\n data: ajaxString,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n //CHSI.Page.SItemFormFields.Calls.GetFields();\r\n CHSI.Page.SItemFormFields.Events.ClearStatusChangedFields();\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log(e);\r\n }\r\n });\r\n }\r\n }\r\n\r\n}\r\n\r\nHandlebars.registerHelper('eachArray', function (context, options) {\r\n var ret = \"\";\r\n var index = -1;\r\n var size = 0;\r\n var isLast = false;\r\n if (Object.prototype.toString.apply(context) === '[object Array]') {\r\n size = context.length;\r\n for (var i = 0; i < context.length; i++) {\r\n index++;\r\n isLast = false;\r\n if (index >= size - 1) {\r\n isLast = true;\r\n }\r\n ret = ret + options.fn({ property: i, value: context[i], index: index, isLast: isLast, size: size });\r\n }\r\n } else {\r\n for (var prop in context) {\r\n size++;\r\n }\r\n for (var prop in context) {\r\n index++;\r\n isLast = false;\r\n if (index >= size - 1) {\r\n isLast = true;\r\n }\r\n ret = ret + options.fn({ property: prop, value: context[prop], index: index, isLast: isLast, size: size });\r\n }\r\n }\r\n\r\n return ret;\r\n});","CHSI.Page.SItemFormItem = {\r\n Init: function (ScheduleItemID, scheduleTypeID, DefaultImageID, ClientID) {\r\n \r\n var Template_ScheduleItemFormItem = $('#Template_ScheduleItemFormItem').html();\r\n this.Templates.ScheduleItemFormItem = Handlebars.compile(Template_ScheduleItemFormItem);\r\n\r\n if (ScheduleItemID) { \r\n this.Calls.GetItem(ScheduleItemID);\r\n } else { \r\n this.Cache.SItemObject = this.GetNewItem(scheduleTypeID, ClientID);\r\n var SuccessFunction;\r\n if (ClientID) {\r\n SuccessFunction = function () { CHSI.Page.SItemFormItem.Calls.GetClientInfo(ClientID) };\r\n } else {\r\n SuccessFunction = CHSI.Page.SItemFormItem.BindPresentationLayer();\r\n }\r\n this.Calls.GetScheduleTypeByID(scheduleTypeID, SuccessFunction);\r\n }\r\n this.Events.Global();\r\n },\r\n Templates: {\r\n\r\n },\r\n Cache: {\r\n SItemObject: null \r\n , ClientID: null\r\n ,Active:true\r\n },\r\n GetNewItem: function (scheduleTypeID, ClientID) {\r\n return {\r\n Locations: []\r\n , ClientInfo: []\r\n , FileID: null\r\n , Comments: ''\r\n , ScheduleTypeID: scheduleTypeID \r\n , DefaultFileID: null\r\n , ClientID: ClientID\r\n }\r\n },\r\n BindPresentationLayer: function () {\r\n $('#jxScheduleItemFormItemContainer').html(this.Templates.ScheduleItemFormItem(this.Cache.SItemObject));\r\n $('.uxScheduleItemFormUploadImage').attr('disabled', false);\r\n },\r\n Events: {\r\n Global: function () {\r\n $('#uxScheduleItemFormItemOK').on('click', function () { \r\n CHSI.Page.SItemFormItem.Calls.SaveItem();\r\n closeThis(true);\r\n });\r\n\r\n $('#jxScheduleItemFormItemContainer').on('click', '#jxClientSelect', function () {\r\n var thisWindow = window.name;\r\n var ReturnFunctionString = ((thisWindow == '') ? 'ChangeClient' : 'parent.window.frames.' + thisWindow + '.ChangeClient');\r\n parent.ShowAdvancedSearchForm('ChooseClient', null, ReturnFunctionString);\r\n });\r\n\r\n $('#jxScheduleItemFormItemContainer').on('change', '#jxStatus', function () {\r\n\r\n CHSI.Page.SItemFormItem.Cache.SItemObject.Status = $(this).val();\r\n\r\n });\r\n \r\n },\r\n PersistFromCache: function () {\r\n var SItemObject = CHSI.Page.SItemFormItem.Cache.SItemObject;\r\n SItemObject.ClientID = $('#jxClientID').val();\r\n SItemObject.LocationID = $('#jxLocation option:selected').val();\r\n SItemObject.Name = $('#jxName').val();\r\n //SItemObject.Status = $('#jxStatus option:selected').val();\r\n SItemObject.Comments = $('#jxComments').val();\r\n CHSI.Page.SItemFormItem.Cache.SItemObject = SItemObject;\r\n }\r\n },\r\n Calls: {\r\n GetItem: function (ScheduleItemID) {\r\n var AjaxURL = '/api/UW/ScheduleItem/Get?ScheduleItemID=' + ScheduleItemID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SItemFormItem.Cache.SItemObject = e;\r\n if (e.ClientID == null) {\r\n CHSI.Page.SItemFormItem.BindPresentationLayer();\r\n } else {\r\n \r\n CHSI.Page.SItemFormItem.Cache.ClientID = e.ClientID; \r\n CHSI.Page.SItemFormItem.Calls.GetClientInfo(CHSI.Page.SItemFormItem.Cache.ClientID); \r\n\r\n } \r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n }); \r\n }, \r\n GetClientInfo: function (ClientID) {\r\n CHSI.Page.SItemFormItem.Cache.SItemObject.ClientID = ClientID;\r\n var AjaxURL = '/api/CRM/Clients/GetClient?ClientID=' + ClientID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SItemFormItem.Cache.SItemObject.ClientInfo = e;\r\n \r\n CHSI.Page.SItemFormItem.Calls.GetLocationByClientID(CHSI.Page.SItemFormItem.Cache.SItemObject.ClientID);\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n GetLocationByClientID: function (ClientID) {\r\n var AjaxURL = '/api/CRM/Location/GetLocationsByClientID?ClientID=' + ClientID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SItemFormItem.Cache.SItemObject.Locations = e;\r\n CHSI.Page.SItemFormItem.BindPresentationLayer();\r\n $(\"#ScheduleItemFormTabs\").tabs('enable', 1);\r\n $(\"#ScheduleItemFormTabs\").tabs('enable', 2);\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n GetScheduleTypeByID: function (ScheduleTypeID, SuccessFunction) {\r\n var AjaxURL = '/api/UW/Schedule/GetScheduleTypeByScheduleTypeID?ScheduleTypeID=' + ScheduleTypeID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) { \r\n if (e.DefaultFileID) {\r\n CHSI.Page.SInformation.Cache.SItemObject.DefaultFileID = e.DefaultFileID; \r\n }\r\n if (SuccessFunction) {\r\n SuccessFunction(e);\r\n }\r\n $('.uxScheduleItemFormUploadImage').attr('disabled', false);\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n SaveItem: function (successFunction) { \r\n CHSI.Page.SItemFormItem.Events.PersistFromCache();\r\n if (CHSI.Page.SItemFormItem.Cache.SItemObject.ClientID) {\r\n var ajaxData = [];\r\n ajaxData = CHSI.Page.SItemFormItem.Cache.SItemObject;\r\n var ajaxString = JSON.stringify(ajaxData);\r\n var AjaxURL = '/api/UW/ScheduleItem/SaveScheduleItem';\r\n $.ajax({\r\n type: \"POST\",\r\n url: AjaxURL,\r\n data: ajaxString,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SItemFormItem.Cache.SItemObject.ScheduleItemID = e.ScheduleItemID; \r\n if (successFunction) {\r\n successFunction();\r\n }\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log(e);\r\n }\r\n });\r\n } else {\r\n alert('Please add a valid client');\r\n }\r\n }\r\n }\r\n}","CHSI.Page.SItemFormUploadImage = {\r\n\r\n Init: function (ScheduleItemID) {\r\n var Template_ScheduleItemFormImageUpload = $('#Template_ScheduleItemFormImageUpload').html();\r\n this.Templates.ScheduleItemFormImageUpload = Handlebars.compile(Template_ScheduleItemFormImageUpload);\r\n this.Cache.ScheduleImageObject.ScheduleItemID = ScheduleItemID;\r\n this.BindPresentationLayer(); \r\n this.Events.Global();\r\n },\r\n Templates: {\r\n\r\n },\r\n Cache: {\r\n ScheduleImageObject: {\r\n ScheduleItemID: null\r\n , Primary: 0\r\n , Description: ''\r\n , Comments: ''\r\n } \r\n }, \r\n BindPresentationLayer: function () {\r\n $('#jxScheduleItemFormImageUploadContainer').html(this.Templates.ScheduleItemFormImageUpload(this.Cache.ScheduleImageObject));\r\n CHSI.Page.SItemFormUploadImage.Calls.GetFileID();\r\n this.Events.GetTextareaLength('jxImageDescription', 'DescriptionMaxCount', 190);\r\n this.Events.GetTextareaLength('jxImageComments', 'CommentsMaxCount', 490);\r\n },\r\n PersistFromCache: function () {\r\n var ScheduleImageObject = CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject\r\n if (!ScheduleImageObject.ScheduleItemID) {\r\n ScheduleImageObject.ScheduleItemID = CHSI.Page.SItemFormUploadImage.Cache.ScheduleItemID;\r\n }\r\n ScheduleImageObject.Primary = $('#jxImagePrimary').is(':checked') ? true : false;\r\n ScheduleImageObject.Description = $('#jxImageDescription').val();\r\n ScheduleImageObject.Comments = $('#jxImageComments').val();\r\n return ScheduleImageObject;\r\n },\r\n Events: {\r\n Global: function () {\r\n $('#jxScheduleItemFormImageUploadContainer').on('click', '#jxImageSave', function () {\r\n CHSI.Page.SItemFormUploadImage.Calls.SaveScheduleItemImage(true); \r\n $('#jxImageCancel').attr('disabled', true);\r\n $(\"#ScheduleItemFormTabs\").tabs('option', 'active', 2);\r\n $('#jxImageUploadTab').hide(); \r\n });\r\n\r\n $('#jxScheduleItemFormImageUploadContainer').on('click', '#jxImageCancel', function () {\r\n var ImageObject = CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject;\r\n ImageObject.FileID = null;\r\n ImageObject.ScheduleImageID = null;\r\n ImageObject.Primary = 0;\r\n ImageObject.Description = '';\r\n ImageObject.Comments = ''; \r\n CHSI.Page.SItemFormUploadImage.BindPresentationLayer();\r\n $(\"#ScheduleItemFormTabs\").tabs('option', 'active', 2);\r\n $('#jxImageUploadTab').hide();\r\n });\r\n\r\n $('#jxScheduleItemFormImageUploadContainer').on('change', '#jxImagePrimary', function () {\r\n $('#jxImageSave').prop('disabled', false);\r\n });\r\n\r\n $('#jxScheduleItemFormImageUploadContainer').on('input', '#jxImageDescription, #jxImageComments', function () {\r\n $('#jxImageSave').prop('disabled', false);\r\n });\r\n\r\n this.GetTextareaLength('jxImageDescription', 'DescriptionMaxCount', 190);\r\n this.GetTextareaLength('jxImageComments', 'CommentsMaxCount', 490);\r\n },\r\n GetTextareaLength: function (TextareaID, TextareaCountID, MaxValue) {\r\n var Textarea = $('#' + TextareaID);\r\n var CounterID = $('#' + TextareaCountID);\r\n\r\n Textarea.on('keydown', function () {\r\n var CurrentChars = $(this).val().length;\r\n var RemaingChars = MaxValue - CurrentChars;\r\n CounterID.html(RemaingChars);\r\n if (CurrentChars > MaxValue) {\r\n alert('You have exceeded the maximum amount of characters supported.')\r\n }\r\n });\r\n } \r\n },\r\n Calls: {\r\n GetFileID: function () {\r\n var Uploader = new qq.FileUploader({\r\n element: document.getElementById('jxUploadattachment'),\r\n action: '/CHSIUploadHandler.axd',\r\n allowedExtensions: ['jpg', 'jpeg', 'png', 'gif'],\r\n debug: true,\r\n disableDefaultDropzone: true,\r\n onComplete: function (id, fileName, response) {\r\n\r\n if (response.success == true) {\r\n\r\n var CurrentValueIndex = 0;\r\n\r\n jQuery('.qq-upload-list').hide();\r\n\r\n var FileInfo = {\r\n FileID: response.FileID,\r\n FileName: fileName\r\n };\r\n \r\n CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject.FileID = FileInfo.FileID;\r\n CHSI.Page.SItemFormUploadImage.BindPresentationLayer();\r\n }\r\n }\r\n });\r\n },\r\n GetScheduleItemImage: function (ScheduleImageID, isEdit) {\r\n var AjaxURL = '/api/UW/ScheduleItemImage/GetScheduleItemImage?ScheduleImageID=' + ScheduleImageID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject = e; \r\n CHSI.Page.SItemFormUploadImage.BindPresentationLayer();\r\n if (isEdit) {\r\n $('#jxImageSave').prop('disabled', true); \r\n }\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n SaveScheduleItemImage: function (RefreshTab) {\r\n var AjaxData = CHSI.Page.SItemFormUploadImage.PersistFromCache(); \r\n var AjaxString = JSON.stringify(AjaxData);\r\n var AjaxURL = '/api/UW/ScheduleItemImage/SaveScheduleItemImage';\r\n $.ajax({\r\n type: \"POST\", \r\n url: AjaxURL,\r\n data: AjaxString,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) { \r\n CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject.ScheduleImageID = e.ScheduleImageID;\r\n if (RefreshTab) {\r\n RefreshScheduleEditImageTab(CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject.ScheduleItemID);\r\n RefreshScheduleItemTab(CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject.ScheduleItemID);\r\n }\r\n CHSI.Common.LogObject(e);\r\n }, error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n }\r\n }\r\n}","CHSI.Page.ScheduleItemSummary = {\r\n Settings: {\r\n GroupFilter: null\r\n , TabID: null\r\n , TabName: null\r\n , ClientID: null\r\n , DisplayType: 1\r\n , ScheduleTypeID: null\r\n , isPortal: false\r\n }\r\n , Cache: {\r\n Groups: null\r\n , ScheduleItemSummaries: null\r\n , Details: null\r\n },\r\n Init: function (isPortal, ClientID, GroupID) {\r\n this.SetupScheduleItemHelpers();\r\n this.Settings.isPortal = isPortal;\r\n var Template_GroupTabs = $('#Template_GroupTabs').html();\r\n this.Templates.GroupTabs = Handlebars.compile(Template_GroupTabs);\r\n var Template_ScheduleItemSummaries = $('#Template_ScheduleItemSummaries').html();\r\n this.Templates.ScheduleItemSummaries = Handlebars.compile(Template_ScheduleItemSummaries);\r\n var Template_ScheduleItemLinks = $('#Template_ScheduleItemLinks').html();\r\n this.Templates.Links = Handlebars.compile(Template_ScheduleItemLinks);\r\n if (isPortal) {\r\n var Template_ScheduleItemExportLinks = $('#Template_ScheduleItemExportLinks').html();\r\n this.Templates.ExportLinks = Handlebars.compile(Template_ScheduleItemExportLinks);\r\n }\r\n\r\n if (!isPortal) {\r\n this.GetFiltersFromURL();\r\n } else {\r\n this.Settings.ClientID = ClientID;\r\n this.Settings.GroupFilter = GroupID;\r\n CHSI.Page.ScheduleItemSummary.GetSummaries();\r\n } \r\n this.BindEvents();\r\n },\r\n\r\n Ajax: {},\r\n Templates: {\r\n GroupTabs: null\r\n , ScheduleItemSummaries: null\r\n , ScheduleItemSummaryDetails: null\r\n , Links: null\r\n , ExportLinks: null\r\n },\r\n\r\n DeterminePageMode: function () {\r\n if (this.Settings.TabID == null) {\r\n CHSI.Page.ScheduleItemSummary.GetSummaries();\r\n }\r\n else { \r\n CHSI.Page.ScheduleGrid.Calls.GetSummary();\r\n }\r\n //this.BindEvents();\r\n },\r\n GetFiltersFromURL: function (hashParameters) {\r\n if (hashParameters) {\r\n location.hash = '';\r\n location.hash = hashParameters;\r\n }\r\n\r\n var HashObject = CHSI.DOM.CreateHashObject(location.hash);\r\n if (HashObject.GroupName) {\r\n this.Settings.GroupFilter = HashObject.GroupName;\r\n } else {\r\n if (CHSI.Page.ScheduleItemSummary.Cache.Groups) {\r\n this.Settings.GroupFilter = CHSI.Page.ScheduleItemSummary.Cache.Groups[0].GroupName;\r\n }\r\n }\r\n this.Settings.TabID = HashObject.TabID;\r\n this.Settings.TabName = unescape(HashObject.TabName);\r\n if (HashObject.ClientID) {\r\n this.Settings.ClientID = HashObject.ClientID; \r\n }\r\n if (HashObject.DisplayType) {\r\n this.Settings.DisplayType = HashObject.DisplayType;\r\n }\r\n this.Settings.ScheduleTypeID = HashObject.ScheduleTypeID;\r\n }\r\n ,\r\n BuildReportPath: function (ExportAll) {\r\n if (CHSI.Page.ScheduleItemSummary.Settings.ExportReportPath === undefined) {\r\n alert('invalid report path configured, check groupspec \"Schedule Report Path\"');\r\n }\r\n\r\n return '/CHSIFileHandler.axd?ReportName=' + CHSI.Page.ScheduleItemSummary.Settings.ExportReportPath + '&ReportType=5&ReportOptions=ScheduleTypeID%3D' + CHSI.Page.ScheduleItemSummary.Settings.ScheduleTypeID + '%26GroupID%3D' + CHSI.Page.ScheduleItemSummary.Settings.GroupFilter + '%26ClientID%3D' + ((CHSI.Page.ScheduleItemSummary.Settings.ClientID == \"null\" || CHSI.Page.ScheduleItemSummary.Settings.ClientID == null) ? 0 : CHSI.Page.ScheduleItemSummary.Settings.ClientID) + '%26ExportAll%3D' + (ExportAll ? 1 : 0);\r\n }\r\n ,\r\n\r\n BindEvents: function () {\r\n $('#jxPageMainContent').on('hashchange', window, function () {\r\n CHSI.Page.ScheduleItemSummary.GetFiltersFromURL();\r\n CHSI.Page.ScheduleItemSummary.BindTabs();\r\n CHSI.Page.ScheduleItemSummary.DeterminePageMode();\r\n });\r\n\r\n $('#jxPageMainContent').on('click', '#jxExport', function () {\r\n window.open('/CHSIFileHandler.axd?ReportName=reports/uw/ScheduleSummaryExport.rpt&ReportOptions&ReportType=1&ReportOptions=groupname%3D' + CHSI.Page.ScheduleItemSummary.Settings.GroupFilter);\r\n });\r\n\r\n $('#jxPageMainContent').on('click', '#jxExportAllFields', function () {\r\n window.open('/CHSIFileHandler.axd?ReportName=reports/uw/ScheduleSummaryDetails.rpt&ReportOptions&ReportType=1&ReportOptions=groupname%3D' + CHSI.Page.ScheduleItemSummary.Settings.GroupFilter + '%26ScheduleTypeID%3D' + CHSI.Page.ScheduleItemSummary.Settings.TabID + '%26ClientID=' + CHSI.Page.ScheduleItemSummary.Settings.ClientID);\r\n });\r\n\r\n $('#SideTabContainer').on('click', '.GroupLinks', function () { \r\n var GroupName = $(this).attr('href')\r\n $('.GroupLinks').removeClass('activesubmit');\r\n $(this).addClass('activesubmit'); \r\n CHSI.Page.ScheduleItemSummary.GetFiltersFromURL(GroupName);\r\n CHSI.Page.ScheduleItemSummary.DeterminePageMode(); \r\n });\r\n\r\n $('#jxPageMainContent').on('click', '.QuoteSummary', function () {\r\n\r\n $('#jxScheduleItemSummariesTable').hide();\r\n\r\n var Div = $(this);\r\n var TabID = Div.data('tabid');\r\n var TabName = Div.data('tabname');\r\n var Category = Div.data('category');\r\n var DefaultImageID = Div.data('defaultimageid');\r\n location.hash = '';\r\n location.hash = '#GroupName=' + CHSI.Page.ScheduleItemSummary.Settings.GroupFilter + '&TabID=' + TabID + '&TabName=' + escape(TabName) + '&ClientID=' + CHSI.Page.ScheduleItemSummary.Settings.ClientID + '&ScheduleTypeID=' + TabID + '&DisplayType=' + CHSI.Page.ScheduleItemSummary.Settings.DisplayType + '&ScheduleCategory=' + escape(Category) + '&DefaultImageID=' + DefaultImageID;\r\n\r\n CHSI.Page.ScheduleItemSummary.GetFiltersFromURL();\r\n CHSI.Page.ScheduleItemSummary.DeterminePageMode();\r\n });\r\n },\r\n GetGroupURL: function () {\r\n return '/API/CRM/Group/GetGroup';\r\n },\r\n GetSummaryURL: function () {\r\n return '/api/UW/ScheduleItemSummary/Get?ClientID=' + this.Settings.ClientID + '&GroupName=' + this.Settings.GroupFilter;\r\n },\r\n GetGroups: function () {\r\n $('#jxLoading').show();\r\n if (CHSI.Page.ScheduleItemSummary.Ajax.filterapplication) {\r\n CHSI.Page.ScheduleItemSummary.Ajax.filterapplication.abort();\r\n }\r\n CHSI.Page.ScheduleItemSummary.Ajax.filterapplication = $.ajax({\r\n type: \"GET\",\r\n url: this.GetGroupURL(),\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.ScheduleItemSummary.Cache.Groups = e;\r\n CHSI.Page.ScheduleItemSummary.BindGroups();\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n }\r\n , BindGroups: function () {\r\n if ((this.Settings.GroupFilter == '' || this.Settings.GroupFilter == null) && this.Cache.Groups.length > 0) {\r\n this.Settings.GroupFilter = this.Cache.Groups[0].GroupName;\r\n }\r\n $('#jxTabMenu').html(this.Templates.GroupTabs({ Groups: this.Cache.Groups }));\r\n this.BindTabs();\r\n CHSI.Page.ScheduleItemSummary.DeterminePageMode();\r\n }\r\n , BindTabs: function () {\r\n var Links = $('#jxTabMenu > a');\r\n Links.removeClass('activesubmit');\r\n var ActiveLink = $('#jxTabMenu > a[href$=\"#GroupName=' + this.Settings.GroupFilter + '\"]');\r\n ActiveLink.addClass('activesubmit');\r\n },\r\n\r\n GetSummaries: function () {\r\n $('#jxLoading').show();\r\n CHSI.Page.ScheduleItemSummary.Ajax.filterapplication = $.ajax({\r\n type: \"GET\",\r\n url: this.GetSummaryURL(),\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n if (e) {\r\n var obj = {};\r\n for (i = 0; i < e.length; i++) {\r\n if (!e[i].TypeCategory) {\r\n e[i].TypeCategory = 'Other';\r\n }\r\n if (typeof obj[e[i].TypeCategory] == 'undefined') {\r\n obj[e[i].TypeCategory] = [];\r\n }\r\n obj[e[i].TypeCategory].push(e[i]);\r\n }\r\n }\r\n CHSI.Page.ScheduleItemSummary.Cache.ScheduleItemSummaries = obj;\r\n CHSI.Page.ScheduleItemSummary.BindSummaries();\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n }\r\n , BindSummaries: function () { \r\n $('#jxPageMainContent').html(this.Templates.ScheduleItemSummaries({ Summaries: this.Cache.ScheduleItemSummaries }));\r\n $('#jxLinks').html(this.Templates.Links({ Details: false }));\r\n if (CHSI.Page.ScheduleItemSummary.Settings.isPortal) {\r\n $('#jxExportLinks').html(this.Templates.ExportLinks({ Details: false }));\r\n }\r\n CHSI.Page.ScheduleGrid.Cache.CurrentURLParameters = null; \r\n $('#jxScheduleItemSummariesTable').show();\r\n $('#jxLoading').hide();\r\n }\r\n \r\n , SetupScheduleItemHelpers: function () {\r\n /*if these helpers are used outside of this function, they don't belong here. If they are, they have to be prepared before they're called or the page errors.*/\r\n\r\n Handlebars.registerHelper('GetStyle', function (ScheduleItem) {\r\n var Style = '';\r\n if (ScheduleItem.TextColor) {\r\n Style += 'Color: ' + ScheduleItem.TextColor + '; ';\r\n }\r\n if (ScheduleItem.BGColor) {\r\n Style += 'Background-color: ' + ScheduleItem.BGColor + '; ';\r\n }\r\n\r\n return new Handlebars.SafeString(Style);\r\n });\r\n Handlebars.registerHelper('GetStatusLink', function (QuoteDetail) {\r\n var StatusString;\r\n if (QuoteDetail.Editable == 'Y') {\r\n StatusString = '' + Handlebars.Utils.escapeExpression(QuoteDetail.Status) + '';\r\n }\r\n else {\r\n StatusString = Handlebars.Utils.escapeExpression(QuoteDetail.Status);\r\n }\r\n return new Handlebars.SafeString(StatusString);\r\n });\r\n\r\n Handlebars.registerHelper('DecodeValue', function (Value) {\r\n var DecodedValue = decodeURI(Value);\r\n return new Handlebars.SafeString(DecodedValue);\r\n });\r\n\r\n Handlebars.registerHelper('eachArray', function (context, options) {\r\n var ret = \"\";\r\n var index = -1;\r\n var size = 0;\r\n var isLast = false;\r\n if (Object.prototype.toString.apply(context) === '[object Array]') {\r\n size = context.length;\r\n for (var i = 0; i < context.length; i++) {\r\n index++;\r\n isLast = false;\r\n if (index >= size - 1) {\r\n isLast = true;\r\n }\r\n ret = ret + options.fn({ property: i, value: context[i], index: index, isLast: isLast, size: size });\r\n }\r\n } else {\r\n for (var prop in context) {\r\n size++;\r\n }\r\n for (var prop in context) {\r\n index++;\r\n isLast = false;\r\n if (index >= size - 1) {\r\n isLast = true;\r\n }\r\n ret = ret + options.fn({ property: prop, value: context[prop], index: index, isLast: isLast, size: size });\r\n }\r\n }\r\n\r\n return ret;\r\n });\r\n\r\n \r\n}\r\n\r\n\r\n};\r\n","CHSI.Page.SInformation = {\r\n Init: function (QSObject, successFunction) {\r\n var Template_ScheduleInformation = $('#Template_ScheduleInformation').html();\r\n this.Templates.ScheduleInformation = Handlebars.compile(Template_ScheduleInformation); \r\n this.Cache.ScheduleTypeID = QSObject.ScheduleTypeID;\r\n \r\n this.Calls.GetGroups(successFunction);\r\n this.Events.Global();\r\n },\r\n Templates: {\r\n\r\n },\r\n Cache: {\r\n ScheduleInformationObject: {\r\n SummaryFields: []\r\n }\r\n , Groups: null \r\n },\r\n BindPresentationLayer: function () {\r\n \r\n if (this.Cache.ScheduleInformationObject == null )\r\n {\r\n this.Cache.ScheduleInformationObject = { Groups: this.Cache.Groups, BGColor: '#595656', TextColor: '#FFFFFF', VisibleOnPortal:true, SummaryFields: [] }\r\n } else {\r\n this.Cache.ScheduleInformationObject.Groups = this.Cache.Groups;\r\n }\r\n \r\n \r\n\r\n $('#jxScheduleInformationContainer').html(this.Templates.ScheduleInformation(this.Cache.ScheduleInformationObject));\r\n $('#jxBackgroundColorPicker').spectrum({\r\n move: function (hex) { CHSI.Page.SInformation.Cache.ScheduleInformationObject.BGColor = hex.toHexString(); }\r\n , preferredFormat: \"hex\" \r\n });\r\n $('#jxTextColorPicker').spectrum({\r\n move: function (hex) { CHSI.Page.SInformation.Cache.ScheduleInformationObject.TextColor = hex.toHexString(); }\r\n , preferredFormat: \"hex\" \r\n }); \r\n },\r\n Events: {\r\n SaveScheduleInformation: function()\r\n {\r\n if (!CHSI.Page.SInformation.Events.ValidateSummaryFields()) {\r\n alert('Please select a value in Summary Field.');\r\n return false;\r\n }\r\n CHSI.Page.SInformation.Events.PersistFormToCache();\r\n CHSI.Page.SInformation.Calls.SaveScheduleInformation(CHSI.Page.SInformation.Cache.ScheduleInformationObject);\r\n return true;\r\n }\r\n ,Global: function () {\r\n \r\n \r\n $('#jxScheduleInformationContainer').on('keyup', '#jxTileName', function () {\r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject.TileName = $(this).val().replace(/ /g, \"
\").toUpperCase();\r\n $('#jxTileInformationName').html(CHSI.Page.SInformation.Cache.ScheduleInformationObject.TileName);\r\n });\r\n\r\n $('#jxScheduleInformationContainer').on('keyup', '#jxLabel', function () {\r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject.SummaryLabel = $(this).val();\r\n $('#jxTileInformationLabel').html(CHSI.Page.SInformation.Cache.ScheduleInformationObject.SummaryLabel);\r\n });\r\n\r\n $('#jxScheduleInformationContainer').on('change', '#jxBackgroundColorPicker', function () { \r\n CHSI.Page.SInformation.Events.UpdateColorPickerOnChange();\r\n });\r\n\r\n $('#jxScheduleInformationContainer').on('change', '#jxBackgroundColorHex', function () {\r\n var UpdatedBGHex = $(this).val();\r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject.BGColor = UpdatedBGHex;\r\n CHSI.Page.SInformation.Events.UpdateHexOnChange(CHSI.Page.SInformation.Cache.ScheduleInformationObject.BGColor);\r\n });\r\n\r\n $('#jxScheduleInformationContainer').on('change', '#jxTextColorPicker', function () { \r\n CHSI.Page.SInformation.Events.UpdateColorPickerOnChange();\r\n });\r\n\r\n $('#jxScheduleInformationContainer').on('change', '#jxTextColorHex', function () {\r\n var UpdateTextHex = $(this).val();\r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject.TextColor = UpdateTextHex;\r\n CHSI.Page.SInformation.Events.UpdateHexOnChange(CHSI.Page.SInformation.Cache.ScheduleInformationObject.TextColor);\r\n }); \r\n },\r\n AutoSave: function () {\r\n CHSI.Page.SInformation.Events.PersistFormToCache();\r\n CHSI.Page.SInformation.Calls.SaveScheduleInformation();\r\n },\r\n UpdateColorPickerOnChange: function () {\r\n var SInformationObject = CHSI.Page.SInformation.Cache.ScheduleInformationObject; \r\n $('#jxBackgroundColorPicker').val(SInformationObject.BGColor);\r\n $('#jxBackgroundColorHex').val(SInformationObject.BGColor);\r\n $('#jxTextColorPicker').val(SInformationObject.TextColor);\r\n $('#jxTextColorHex').val(SInformationObject.TextColor);\r\n CHSI.Page.SInformation.Events.PersistFormToCache();\r\n CHSI.Page.SInformation.BindPresentationLayer();\r\n },\r\n UpdateHexOnChange: function (UpdatedHexValue) {\r\n var UpdatedHexValue = CHSI.Page.SInformation.Cache.ScheduleInformationObject;\r\n $('#jxBackgroundColorPicker').val(UpdatedHexValue.BGColor);\r\n $('#jxBackgroundColorHex').val(UpdatedHexValue.BGColor);\r\n $('#jxTextColorPicker').val(UpdatedHexValue.TextColor);\r\n $('#jxTextColorHex').val(UpdatedHexValue.TextColor);\r\n CHSI.Page.SInformation.Events.PersistFormToCache();\r\n CHSI.Page.SInformation.BindPresentationLayer();\r\n },\r\n PersistFormToCache: function () {\r\n var SInformationObject = CHSI.Page.SInformation.Cache.ScheduleInformationObject;\r\n SInformationObject.Name = $('#jxName').val();\r\n SInformationObject.GroupName = $('#jxGroup').val();\r\n SInformationObject.Status = $('#jxStatus').val();\r\n SInformationObject.Description = $('#jxDescription').val();\r\n SInformationObject.TypeCategory = $('#jxCategory').val();\r\n SInformationObject.SortOrder = $('#jxSortOrder').val();\r\n SInformationObject.DefaultImageID = $('#jxDefaultImageID').val();\r\n SInformationObject.TileName = $('#jxTileName').val().toUpperCase();\r\n SInformationObject.BGColor = $('#jxBackgroundColorHex').val();\r\n SInformationObject.TextColor = $('#jxTextColorHex').val();\r\n SInformationObject.SummaryFieldID = $('#jxSummaryField').val();\r\n SInformationObject.SummaryLabel = $('#jxLabel').val();\r\n SInformationObject.VisibleOnPortal = $('#jxVisibleOnPortal').is(':checked');\r\n SInformationObject.AutoApprove = $('#jxAutoApprove').is(':checked');\r\n \r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject = SInformationObject;\r\n },\r\n ValidateSummaryFields: function () {\r\n var SInformationObject = CHSI.Page.SInformation.Cache.ScheduleInformationObject;\r\n var isValid = false;\r\n var SummaryFieldHasValue = false;\r\n if (SInformationObject.SummaryFields) {\r\n SummaryFieldHasValue = (SInformationObject.SummaryFields.length == 0) ? false : true;\r\n }\r\n \r\n if (SummaryFieldHasValue) {\r\n if ($('#jxSummaryField').val()) {\r\n isValid = true;\r\n } else {\r\n isValid = false;\r\n }\r\n } else {\r\n isValid = true;\r\n }\r\n return isValid;\r\n }\r\n },\r\n Calls: {\r\n GetDefaultImages: function () {\r\n var AjaxURL = \"/api/UW/Schedule/GetScheduleDefaultImage\";\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject.DefaultImages = e; \r\n CHSI.Page.SInformation.Calls.GetSummaryFields(); \r\n },\r\n error: function (e) {\r\n CHSI.Common.Log('no data to return');\r\n }\r\n });\r\n },\r\n GetGroups: function (successFunction) {\r\n var AjaxURL = \"/api/CRM/Group/GetActiveGroups\";\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n\r\n CHSI.Page.SInformation.Cache.Groups = e;\r\n \r\n if (CHSI.Page.SInformation.Cache.ScheduleTypeID) {\r\n \r\n CHSI.Page.SInformation.Calls.GetScheduleInformationByID(CHSI.Page.SInformation.Cache.ScheduleTypeID);\r\n }\r\n else\r\n {\r\n CHSI.Page.SInformation.BindPresentationLayer();\r\n }\r\n successFunction();\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log('no data to return');\r\n }\r\n });\r\n }\r\n , GetScheduleInformationByID: function (ScheduleTypeID) {\r\n var AjaxURL = '/api/UW/Schedule/GetScheduleTypeByScheduleTypeID?ScheduleTypeID=' + ScheduleTypeID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n \r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject = e;\r\n if (CHSI.Page.SInformation.Cache.ScheduleInformationObject.DefaultImageID) {\r\n CHSI.Page.SInformation.Calls.GetDefaultImages(CHSI.Page.SInformation.Cache.ScheduleInformationObject.DefaultImageID);\r\n }\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n GetSummaryFields: function () {\r\n if (CHSI.Page.SInformation.Cache.ScheduleTypeID == null) {\r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject.SummaryFields = [];\r\n return null;\r\n }\r\n\r\n var AjaxURL = '/api/UW/ScheduleField/GetSummarizedFields?ScheduleTypeID=' + CHSI.Page.SInformation.Cache.ScheduleTypeID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) { \r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject.SummaryFields = e;\r\n CHSI.Page.SInformation.BindPresentationLayer(); \r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n SaveScheduleInformation: function (ScheduleInformationObject) { \r\n var AjaxURL = '/api/UW/Schedule/SaveScheduleType';\r\n var ajaxString = JSON.stringify(ScheduleInformationObject);\r\n $.ajax({\r\n type: \"POST\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n data: ajaxString,\r\n success: function (e) {\r\n\r\n CHSI.Page.SInformation.Cache.ScheduleTypeID = e;\r\n CHSI.Page.SInformation.Cache.ScheduleInformationObject.ScheduleTypeID = e;\r\n CHSI.Common.Log('saved'); \r\n },\r\n error: function (e) {\r\n CHSI.Common.Log(e);\r\n }\r\n });\r\n }\r\n }\r\n}","CHSI.Page.SItemFormFields = {\r\n Init: function (scheduleItemID, scheduleTypeID, isPortal) {\r\n var Template_ScheduleItemFormFields = $('#Template_ScheduleItemFormFields').html();\r\n this.Templates.ScheduleItemFormFields = Handlebars.compile(Template_ScheduleItemFormFields);\r\n var Template_ScheduleItemFieldHistory = $('#Template_ScheduleItemFieldHistory').html();\r\n this.Templates.ScheduleItemFieldHistory = Handlebars.compile(Template_ScheduleItemFieldHistory);\r\n this.Cache.ScheduleItemID = scheduleItemID;\r\n this.Cache.ScheduleTypeID = scheduleTypeID;\r\n this.Cache.isPortal = isPortal;\r\n var controller = this;\r\n var result = this.Calls.GetFields();\r\n result.then(function () {\r\n CHSI.Page.SItemFormFields.BindPresentationLayer();\r\n CHSI.Page.SItemFormFields.SetLabel();\r\n controller.Events.Global();\r\n })\r\n return result;\r\n \r\n },\r\n SaveAll: function (Status) {\r\n this.PersistFieldsFromHTML();\r\n this.Events.SaveFields();\r\n },\r\n SaveAllFields: function (Status) { \r\n this.PersistFieldsFromHTML();\r\n this.Calls.SaveFields(Status); \r\n }\r\n , PersistFieldsFromHTML: function () { \r\n for(var index=0;index< CHSI.Page.SItemFormFields.Cache.FieldsObject.length;index++){\r\n var Element = $('#jxField_' + index);\r\n var DataType = Element.data('datatype');\r\n var ElementVal = Element.val(); \r\n ElementVal = CHSI.Page.SItemFormFields.GetValue(ElementVal, DataType);\r\n if (DataType == 3 || DataType==5) {\r\n ElementVal = isNaN(ElementVal) ? '' : ElementVal;\r\n }\r\n CHSI.Page.SItemFormFields.Cache.FieldsObject[index].ColumnValue = ElementVal;\r\n CHSI.Page.SItemFormFields.Cache.FieldsObject[index].Status = $('#jxField_' + index).data('newstatus');\r\n }\r\n }\r\n , Templates: {\r\n },\r\n Cache: {\r\n Fields: null\r\n , SHistoryObject: null\r\n , FieldsObject: null\r\n , HistoryName: null\r\n , Active: false\r\n , validator: null\r\n , isPortal: false\r\n , NewItem: false\r\n , PendingChanges: false\r\n },\r\n BindPresentationLayer: function () {\r\n $('#jxScheduleItemFormFieldsContainer').html(this.Templates.ScheduleItemFormFields({ Fields: this.Cache.Fields }));\r\n\r\n restart = true;\r\n //sorttable.init();\r\n var isReadonly = $('input.Date').attr('readonly');\r\n if (!isReadonly) {\r\n $('.Date').datepicker({\r\n showOn: \"both\",\r\n buttonImage: \"/images/icons/cal.gif\",\r\n buttonImageOnly: true\r\n , /* fix buggy IE focus functionality */\r\n fixFocusIE: false,\r\n\r\n /* blur needed to correctly handle placeholder text */\r\n onSelect: function (dateText, inst) {\r\n this.fixFocusIE = true;\r\n $(this).blur().change().focus();\r\n },\r\n onClose: function (dateText, inst) {\r\n this.fixFocusIE = true;\r\n this.focus();\r\n },\r\n beforeShow: function (input, inst) {\r\n var result = true;\r\n var ua = window.navigator.userAgent;\r\n if (!!navigator.userAgent.match(/Trident\\/7\\./)) {\r\n result = !this.fixFocusIE;\r\n }\r\n this.fixFocusIE = false;\r\n return result;\r\n }\r\n\r\n }).click(function () { $(this).focus() });\r\n }\r\n\r\n $('#jxScheduleItemFormFieldsContainer').on('blur', 'input,select,textarea', function () {\r\n\r\n var ChangedField = $(this);\r\n if (ChangedField.data('originalvalue') != ChangedField.val()) {\r\n\r\n ChangedField.data('newstatus', 'changed');\r\n\r\n var index = ChangedField.data('index'),\r\n dataSize = ChangedField.data('datasize');\r\n\r\n $('#jxUndoField_' + index).show()\r\n\r\n $('#jxScheduleItemFormFieldsContainer').on('click', '#jxUndoField_' + index, function () {\r\n ChangedField.val(ChangedField.data('originalvalue'));\r\n ChangedField.data('newstatus', ChangedField.data('status'));\r\n $('#jxUndoField_' + index).hide();\r\n });\r\n }\r\n\r\n });\r\n\r\n },\r\n BindHistory: function () {\r\n var HTML = '';\r\n HTML = CHSI.Page.SItemFormFields.Templates.ScheduleItemFieldHistory(CHSI.Page.SItemFormFields.Cache.SHistoryObject);\r\n ShowInlinePopup('FieldHistoryModal', HTML, 'History:' + CHSI.Page.SItemFormFields.Cache.HistoryName, 400, 400, null, true);\r\n restart = true;\r\n //sorttable.init();\r\n },\r\n Events: {\r\n ClearStatusChangedFields:function(){\r\n $('.jxUndo').hide();\r\n CHSI.Page.SItemFormFields.Cache.Fields = CHSI.Page.SItemFormFields.Events.ProcessFields(CHSI.Page.SItemFormFields.Cache.FieldsObject);\r\n CHSI.Page.SItemFormFields.BindPresentationLayer();\r\n },\r\n\r\n ProcessFields: function (e) {\r\n var obj = {};\r\n if (e) { \r\n for (i = 0; i < e.length; i++) {\r\n if (e[i]) {\r\n if (!e[i].CategoryName) {\r\n e[i].CategoryName = 'Other';\r\n }\r\n e[i].index = i;\r\n if (typeof obj[e[i].CategoryName] == 'undefined') {\r\n obj[e[i].CategoryName] = [];\r\n }\r\n e[i].ColumnValue = CHSI.Page.SItemFormFields.FormatString(e[i].ColumnValue, e[i].DisplayFormat, e[i].DataType);\r\n if (e[i].Status) {\r\n if (e[i].Status.substring(0, 7).toLowerCase() == 'pending') {\r\n CHSI.Page.SItemFormFields.Cache.PendingChanges = true;\r\n }\r\n }\r\n if (CHSI.Page.SItemFormFields.Cache.ScheduleItemID == undefined && CHSI.Page.SItemFormFields.Cache.isPortal) {\r\n CHSI.Page.SItemFormFields.Cache.NewItem = true;\r\n }\r\n\r\n if (e[i].NumOfUpdates < 1 && CHSI.Page.SItemFormFields.Cache.ScheduleItemID && CHSI.Page.SItemFormItem.Cache.Status == 'Pending' && CHSI.Page.SItemFormItem.Cache.AddNew == false) {\r\n CHSI.Page.SItemFormFields.Cache.NewItem = true;\r\n }\r\n\r\n obj[e[i].CategoryName].push(e[i]);\r\n }\r\n }\r\n }\r\n\r\n return obj;\r\n },\r\n Global: function () {\r\n\r\n\r\n $('#jxScheduleItemFormFieldsContainer').on('keyup', 'input', function () {\r\n\r\n var ChangedField = $(this),\r\n index = ChangedField.data('index'),\r\n dataSize = ChangedField.data('datasize'),\r\n datatype = ChangedField.data('datatype'),\r\n value = ChangedField.val();\r\n\r\n if (datatype == 3 || datatype == 5) {\r\n if (datatype == 5) {\r\n datasize = 0;\r\n }\r\n ChangedField.val(CHSI.Page.SItemFormFields.Events.DataSizeValidator(value, dataSize));\r\n }\r\n });\r\n\r\n $('#jxScheduleItemFormFieldsContainer').on('blur', '.Regular', function () {\r\n var Element = $(this);\r\n var ElementVal = Element.val();\r\n var Format = Element.data('displayformat');\r\n var DataType = Element.data('datatype');\r\n Element.val(CHSI.Page.SItemFormFields.FormatString(ElementVal, Format, DataType));\r\n\r\n var validator = jQuery('form').validate({ debug: true, onkeyup: false, onfocusout: false });\r\n validator.element(this);\r\n\r\n if (!validator.errorList.length) {\r\n Element.qtip('destroy');\r\n }\r\n });\r\n\r\n $('#jxScheduleItemFormFieldsContainer').on('blur', '.Calculated', function () {\r\n });\r\n\r\n $('#jxScheduleItemFormFieldsContainer').on('blur', '.Date', function () {\r\n var Element = $(this);\r\n var FormatedDate = CHSI.Dates.GetShortDate(Element.val());\r\n Element.val(FormatedDate);\r\n var validator = jQuery('form').validate({ debug: true, onkeyup: false, onfocusout: false });\r\n validator.element(this);\r\n if (!validator.errorList.length) {\r\n Element.qtip('destroy');\r\n }\r\n\r\n });\r\n\r\n $('#jxScheduleItemFormFieldsContainer').on('blur', '.DropDown', function () {\r\n var validator = jQuery('form').validate({ debug: true, onkeyup: false, onfocusout: false });\r\n validator.element(this);\r\n var Element = $(this);\r\n if (!validator.errorList.length) {\r\n Element.qtip('destroy');\r\n }\r\n });\r\n\r\n $('#jxScheduleItemFormFieldsContainer').on('blur', '.TextBlock', function () {\r\n var validator = jQuery('form').validate({ debug: true, onkeyup: false, onfocusout: false });\r\n validator.element(this);\r\n var Element = $(this);\r\n if (!validator.errorList.length) {\r\n Element.qtip('destroy');\r\n }\r\n });\r\n\r\n\r\n },\r\n SaveFields: function (successFunction) {\r\n CHSI.Page.SItemFormItem.Cache.SaveButton = true;\r\n if (CHSI.Page.SItemFormItem.Cache.Deleted && CHSI.Page.SItemFormItem.Cache.SItemObject.Status == 'Pending-Delete') {\r\n var r = true;\r\n if (CHSI.Page.SItemFormItem.Cache.AutoApprove || !CHSI.Page.SItemFormFields.Cache.isPortal) {\r\n r = confirm(\"The item status will be updated to Deleted by confirming this message.\");\r\n } else {\r\n return false;\r\n }\r\n if (r == true) {\r\n CHSI.Page.SItemFormItem.Calls.SaveItem(false);\r\n \r\n } else {\r\n return false;\r\n }\r\n } else {\r\n if (CHSI.Page.SItemFormFields.Cache.isPortal && CHSI.Page.SItemFormItem.Cache.AutoApprove == false) {\r\n CHSI.Page.SItemFormFields.SaveAllFields('Pending');\r\n } else {\r\n var r = true\r\n if (CHSI.Page.SItemFormFields.Cache.PendingChanges || CHSI.Page.SItemFormFields.Cache.NewItem) {\r\n r = confirm(\"Pending values and the item status will be updated to active by confirming this message.\");\r\n }\r\n if (r == true) {\r\n CHSI.Page.SItemFormFields.SaveAllFields('Active');\r\n if (CHSI.Page.SItemFormItem.Cache.SItemObject.Status == 'Pending') {\r\n CHSI.Page.SItemFormItem.Cache.SItemObject.Status = 'Active';\r\n CHSI.Page.SItemFormItem.Calls.SaveItem(false);\r\n }\r\n } else {\r\n return false;\r\n }\r\n }\r\n \r\n if (successFunction) {\r\n successFunction();\r\n }\r\n }\r\n CHSI.Page.SItemFormItem.Cache.SaveButton = false;\r\n }\r\n , DataSizeValidator: function (CurrentValue, DataSize) {\r\n var CharLimit = 0;\r\n\r\n if (CurrentValue.indexOf('.') == -1) {\r\n CharLimit = CurrentValue;\r\n } else {\r\n var DecimalValue = CurrentValue.split('.'),\r\n Characteristic = DecimalValue[0],\r\n Mantissa = DecimalValue[1] * 1;\r\n\r\n if (Mantissa == 0 || '') {\r\n CharLimit = CurrentValue;\r\n } else {\r\n if (Mantissa.toString().length > DataSize) {\r\n Mantissa = Mantissa.toString().substring(0, DataSize);\r\n }\r\n DecimalValue = Characteristic + '.' + Mantissa;\r\n CharLimit = DecimalValue;\r\n }\r\n }\r\n\r\n return CharLimit;\r\n }\r\n },\r\n ApplyPrevious: function (index, priorvalue, actualvalue) {\r\n $('#jxField_' + index).val(priorvalue);\r\n $('#jxRevertField_' + index).hide();\r\n $('#jxField_' + index).removeClass('HighlightGreen');\r\n },\r\n\r\n SetLabel: function () {\r\n if (this.Cache.PendingChanges) {\r\n if (!CHSI.Page.SItemFormFields.Cache.isPortal) {\r\n if (this.Cache.NewItem) {\r\n $('#jxItemLabel').html(\"Approval Required: New Item Added\");\r\n } else {\r\n $('#jxFieldLabel').html(\"Values have been changed and are waiting for administrator action.
The scheduled item status will remain pending until changes are saved.\");\r\n } \r\n }\r\n if (CHSI.Page.SItemFormItem.Cache.Deleted == false) {\r\n if (!CHSI.Page.SItemFormFields.Cache.isPortal) {\r\n $('#jxItemLabel').html(\"Approval Required: Field Value(s) Changed\");\r\n if (this.Cache.NewItem) {\r\n $('#jxItemLabel').html(\"Approval Required: New Item Added\");\r\n }\r\n }\r\n }\r\n } else {\r\n if (this.Cache.NewItem) {\r\n if (!CHSI.Page.SItemFormFields.Cache.isPortal) {\r\n $('#jxFieldLabel').html(\"A new item has been added and waiting for administrator action.
The scheduled item status will remain pending until changes are saved.\");\r\n if (CHSI.Page.SItemFormItem.Cache.Deleted == false) {\r\n $('#jxItemLabel').html(\"Approval Required: New Item Added\");\r\n }\r\n }\r\n } else {\r\n $('#jxFieldLabel').html(\"\");\r\n if (CHSI.Page.SItemFormItem.Cache.Deleted == false) {\r\n $('#jxItemLabel').html(\"\");\r\n }\r\n }\r\n }\r\n },\r\n FormatString: function (SValue, Format, DataType) {\r\n var FormatedText = SValue;\r\n if (SValue && Format && DataType) {\r\n var ElementVal = CHSI.Page.SItemFormFields.GetValue(SValue, DataType);\r\n FormatedText = String.__Format(Format, ElementVal);\r\n }\r\n return FormatedText;\r\n },\r\n GetValue: function (SValue, DataType) {\r\n var ElementVal = SValue.toString(); // toString incase server doesn't return a string\r\n switch (DataType) {\r\n case 3: //Decimal\r\n ElementVal = parseFloat(ElementVal.replace(/[^0-9\\.]/g, ''));\r\n break;\r\n case 5: //Integer\r\n //ElementVal = parseInt(ElementVal.replace(/[^0-9]/g, ''));\r\n\r\n ElementVal = parseInt(ElementVal.replace(/,/g, ''), 10);\r\n break;\r\n }\r\n\r\n return ElementVal;\r\n },\r\n Calls: {\r\n GetFields: function () {\r\n var AjaxURL = '/api/UW/ScheduleField/GetScheduleField?ScheduleTypeID=' + CHSI.Page.SItemFormFields.Cache.ScheduleTypeID;\r\n\r\n if (CHSI.Page.SItemFormFields.Cache.ScheduleItemID) {\r\n AjaxURL = '/api/UW/ScheduleItemField/Get?ScheduleItemID=' + CHSI.Page.SItemFormFields.Cache.ScheduleItemID;\r\n } else {\r\n if (CHSI.Page.SItemFormItem.Cache.SItemObject.ScheduleItemID) {\r\n AjaxURL = '/api/UW/ScheduleItemField/Get?ScheduleItemID=' + CHSI.Page.SItemFormItem.Cache.SItemObject.ScheduleItemID;\r\n }\r\n }\r\n\r\n CHSI.Page.SItemFormFields.Cache.PendingChanges = false;\r\n CHSI.Page.SItemFormFields.Cache.NewItem = false;\r\n return $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n var obj = CHSI.Page.SItemFormFields.Events.ProcessFields(e);\r\n CHSI.Page.SItemFormFields.Cache.FieldsObject = e;\r\n CHSI.Page.SItemFormFields.Cache.Fields = obj;\r\n \r\n },\r\n error: function (e) {\r\n CHSI.Common.Log('no data to return');\r\n }\r\n });\r\n },\r\n GetHistory: function (ScheduleItemID, ScheduleFieldID, Name) {\r\n var AjaxURL = '/api/UW/ScheduleItemFieldValue/GetHistory?ScheduleItemID=' + ScheduleItemID + '&ScheduleFieldID=' + ScheduleFieldID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SItemFormFields.Cache.HistoryName = Name;\r\n CHSI.Page.SItemFormFields.Cache.SHistoryObject = { History: e };\r\n CHSI.Page.SItemFormFields.BindHistory();\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log('no data to return');\r\n }\r\n });\r\n },\r\n SaveFields: function (Status) {\r\n var AjaxURL = '/api/UW/ScheduleItemField/SaveScheduleFields';\r\n var PendingFields = [];\r\n if (!CHSI.Page.SItemFormFields.Cache.FieldsObject) {\r\n return false;\r\n }\r\n if (CHSI.Page.SItemFormFields.Cache.FieldsObject.length) {\r\n for (i = 0; i < CHSI.Page.SItemFormFields.Cache.FieldsObject.length; i++) {\r\n var FieldStatus = \"\";\r\n if (CHSI.Page.SItemFormFields.Cache.FieldsObject[i].Status) {\r\n FieldStatus = CHSI.Page.SItemFormFields.Cache.FieldsObject[i].Status.toLowerCase();\r\n }\r\n if (FieldStatus == 'pending' || FieldStatus == 'changed') {\r\n if (Status != '') {\r\n PendingFields.push(CHSI.Page.SItemFormFields.Cache.FieldsObject[i]);\r\n CHSI.Page.SItemFormFields.Cache.FieldsObject[i].Status = Status;\r\n } else {\r\n if (FieldStatus == 'changed') {\r\n if (CHSI.Page.SItemFormFields.Cache.isPortal) {\r\n CHSI.Page.SItemFormFields.Cache.FieldsObject[i].Status = 'Pending';\r\n } else {\r\n CHSI.Page.SItemFormFields.Cache.FieldsObject[i].Status = 'Active';\r\n }\r\n PendingFields.push(CHSI.Page.SItemFormFields.Cache.FieldsObject[i]);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n for (var PendingFieldIndex = 0; PendingFieldIndex < PendingFields.length; PendingFieldIndex++) {\r\n PendingFields[PendingFieldIndex].ScheduleItemID = CHSI.Page.SItemFormFields.Cache.ScheduleItemID;\r\n }\r\n\r\n\r\n var FieldsContainer = {};\r\n FieldsContainer.AutoApprove = CHSI.Page.SItemFormItem.Cache.AutoApprove;\r\n FieldsContainer.ItemFields = PendingFields;\r\n FieldsContainer.Status = Status;\r\n var ajaxString = JSON.stringify(FieldsContainer);\r\n $.ajax({\r\n type: \"POST\",\r\n url: AjaxURL,\r\n data: ajaxString,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n //CHSI.Page.SItemFormFields.Calls.GetFields();\r\n CHSI.Page.SItemFormFields.Events.ClearStatusChangedFields();\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log(e);\r\n }\r\n });\r\n }\r\n }\r\n}\r\n\r\nHandlebars.registerHelper('eachArray', function (context, options) {\r\n var ret = \"\";\r\n var index = -1;\r\n var size = 0;\r\n var isLast = false;\r\n if (Object.prototype.toString.apply(context) === '[object Array]') {\r\n size = context.length;\r\n for (var i = 0; i < context.length; i++) {\r\n index++;\r\n isLast = false;\r\n if (index >= size - 1) {\r\n isLast = true;\r\n }\r\n ret = ret + options.fn({ property: i, value: context[i], index: index, isLast: isLast, size: size });\r\n }\r\n } else {\r\n for (var prop in context) {\r\n size++;\r\n }\r\n for (var prop in context) {\r\n index++;\r\n isLast = false;\r\n if (index >= size - 1) {\r\n isLast = true;\r\n }\r\n ret = ret + options.fn({ property: prop, value: context[prop], index: index, isLast: isLast, size: size });\r\n }\r\n }\r\n\r\n return ret;\r\n});\r\n\r\nHandlebars.registerHelper('setMaxLength', function (DataSize, DataType) {\r\n var maxLength = 0;\r\n\r\n if (DataType == 3) { // Decimal\r\n maxLength = 30;\r\n } else {\r\n maxLength = DataSize;\r\n }\r\n return maxLength;\r\n});\r\n","CHSI.Page.SItemFormImageEdit = {\r\n\r\n Init: function (ScheduleItemID) {\r\n var Template_ScheduleItemFormImageEdit = $('#Template_ScheduleItemFormImageEdit').html();\r\n this.Templates.ScheduleItemFormImageEdit = Handlebars.compile(Template_ScheduleItemFormImageEdit);\r\n this.Cache.ImageObject.ScheduleItemID = ScheduleItemID;\r\n if (ScheduleItemID) {\r\n return this.Calls.GetScheduleItemImages(ScheduleItemID);\r\n }\r\n else {\r\n var deferred = $.Deferred();\r\n deferred.resolve();\r\n return deferred;\r\n }\r\n\r\n },\r\n Templates: {\r\n\r\n },\r\n Cache: {\r\n ImageObject: {\r\n ScheduleItemID: null\r\n }\r\n },\r\n BindPresentationLayer: function () {\r\n $('#jxScheduleItemFormImageEditContainer').html(this.Templates.ScheduleItemFormImageEdit(this.Cache.ImageObject));\r\n },\r\n Events: {\r\n Global: function () {\r\n\r\n }\r\n },\r\n Calls: {\r\n GetScheduleItemImages: function (ScheduleItemID) {\r\n var AjaxURL = '/api/UW/ScheduleItemImage/GetScheduleItemImages?ScheduleItemID=' + ScheduleItemID;\r\n return $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SItemFormImageEdit.Cache.ImageObject = { ImageObject: e };\r\n CHSI.Page.SItemFormImageEdit.BindPresentationLayer();\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n DeleteScheduleItemImage: function (ScheduleImageID, ScheduleItemID, successFunction) {\r\n\r\n var AjaxURL = '/api/UW/ScheduleItemImage/DeleteScheduleItemImage?ScheduleImageID=' + ScheduleImageID;\r\n $.ajax({\r\n type: \"Delete\",\r\n url: AjaxURL,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SItemFormImageEdit.Calls.GetScheduleItemImages(ScheduleItemID);\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n }\r\n }\r\n}","CHSI.Page.SItemFormItem = {\r\n Init: function (ScheduleItemID, scheduleTypeID, DefaultImageID, ClientID, isPortal) {\r\n\r\n this.Templates.ScheduleItemFormItem = Handlebars.compile($('#Template_ScheduleItemFormItem').html());\r\n this.Cache.isPortal = isPortal;\r\n if (ScheduleItemID) {\r\n this.Calls.GetItem(ScheduleItemID);\r\n this.Cache.AddNew = false;\r\n } else {\r\n this.Cache.AddNew = true;\r\n this.Cache.SItemObject = this.GetNewItem(scheduleTypeID, ClientID);\r\n var SuccessFunction;\r\n if (ClientID) {\r\n SuccessFunction = function () {\r\n CHSI.Page.SItemFormItem.Calls.GetClientInfo(ClientID)\r\n };\r\n } else {\r\n SuccessFunction = CHSI.Page.SItemFormItem.BindPresentationLayer();\r\n }\r\n this.Calls.GetScheduleTypeByID(scheduleTypeID, SuccessFunction);\r\n }\r\n this.Events.Global();\r\n },\r\n Templates: {\r\n\r\n },\r\n Cache: {\r\n SItemObject: null\r\n , ClientID: null\r\n , Active: true\r\n , isPortal: false\r\n , Deleted: false\r\n , Status: 'Pending'\r\n , AutoApprove: false\r\n , AddNew: false\r\n , SaveButton: false\r\n },\r\n GetNewItem: function (scheduleTypeID, ClientID) {\r\n return {\r\n Locations: []\r\n , ClientInfo: []\r\n , FileID: null\r\n , Comments: ''\r\n , ScheduleTypeID: scheduleTypeID\r\n , DefaultFileID: null\r\n , ClientID: ClientID\r\n , Status: 'Active'\r\n \r\n\r\n }\r\n },\r\n BindPresentationLayer: function () {\r\n\r\n $('#jxScheduleItemFormItemContainer').html(this.Templates.ScheduleItemFormItem(this.Cache.SItemObject));\r\n\r\n if (this.Cache.AddNew && this.Cache.isPortal == false) {\r\n $('#jxStatus').val('Active');\r\n }\r\n\r\n if (CHSI.Page.SItemFormItem.Cache.ClientID) {\r\n $('.uxScheduleItemFormUploadImage').attr('disabled', false);\r\n } else {l\r\n $('.uxScheduleItemFormUploadImage').attr('disabled', true);\r\n }\r\n\r\n if ($('#jxClientID').val()) {\r\n $('.uxScheduleItemFormUploadImage').attr('disabled', false);\r\n } else {\r\n $('.uxScheduleItemFormUploadImage').attr('disabled', true);\r\n }\r\n\r\n if (CHSI.Page.SItemFormItem.Cache.Deleted) {\r\n if (!CHSI.Page.SItemFormItem.Cache.isPortal) {\r\n $('#jxItemLabel').html(\"Approval Required: Item Delete Request\");\r\n }\r\n } else {\r\n //$('#jxItemLabel').html(\"\");\r\n CHSI.Page.SItemFormFields.SetLabel();\r\n }\r\n\r\n if (CHSI.Page.SItemFormItem.Cache.isPortal) {\r\n $('#jxClientSelectContainer').hide();\r\n }\r\n\r\n // logic for activating/deactivating status\r\n $('#jxStatusUpdate').on('click', function () {\r\n var msg = 'Are you sure you want to deactivate this item? You can reactivate at a later time.';\r\n var s = $('#jxStatus').val();\r\n if (s === 'Active' || s === 'Pending-Active')\r\n {\r\n if (!confirm(msg)) return;\r\n if (CHSI.Page.SItemFormItem.Cache.isPortal && CHSI.Page.SItemFormItem.Cache.AutoApprove) {\r\n $('#jxStatus').val('Inactive');\r\n $('#jxStatusUpdate').val('Activate');\r\n }\r\n else {\r\n $('#jxStatus').val('Pending-Inactive');\r\n $('#jxStatusUpdate').val('Activate');\r\n }\r\n }\r\n else {\r\n if (CHSI.Page.SItemFormItem.Cache.isPortal && CHSI.Page.SItemFormItem.Cache.AutoApprove) {\r\n $('#jxStatus').val('Active');\r\n $('#jxStatusUpdate').val('Deactivate');\r\n }\r\n else {\r\n $('#jxStatus').val('Pending-Active');\r\n $('#jxStatusUpdate').val('Deactivate');\r\n }\r\n }\r\n });\r\n },\r\n Events: {\r\n Global: function () {\r\n $('.uxScheduleItemDelete').on('click', function () {\r\n if (CHSI.Page.SItemFormItem.Cache.AutoApprove || !CHSI.Page.SItemFormItem.Cache.isPortal) {\r\n var r = confirm(\"Are you sure you want to delete this item?\");\r\n if (r == true) {\r\n CHSI.Page.SItemFormItem.Calls.DeleteItem(false);\r\n closeThis(true);\r\n }\r\n else { return false; }\r\n } else {\r\n var r = confirm(\"Confirming this action will submit a request to delete this item. When your program administrator approves the request the item will be removed from the schedule.\");\r\n if (r == true)\r\n {\r\n CHSI.Page.SItemFormItem.Calls.DeleteItem(true);\r\n closeThis(true);\r\n }\r\n else { return false; }\r\n }\r\n\r\n });\r\n\r\n $('#jxScheduleItemFormItemContainer').on('click', '#jxClientSelect', function () {\r\n var thisWindow = window.name;\r\n var ReturnFunctionString = ((thisWindow == '') ? 'ChangeClient' : 'parent.window.frames.' + thisWindow + '.ChangeClient');\r\n parent.ShowAdvancedSearchForm('ChooseClient', null, ReturnFunctionString);\r\n });\r\n },\r\n GetStatus: function (isPortal, isAutoApprove, isDeleted) {\r\n var status = $('#jxStatus').val();// not sure where else to get status\r\n switch (status) {\r\n case 'Active':\r\n return (isPortal && !isAutoApprove) ? 'Pending-Active' : status;\r\n case 'Pending-Inactive':\r\n return (isPortal && !isAutoApprove) ? ((isPortal && isAutoApprove) ? 'Inactive' : status) : 'Pending-Inactive';\r\n case 'Deleted':\r\n return (isPortal && !isAutoApprove) ? 'Pending-Delete' : status;\r\n case 'Pending-Delete':\r\n return (!isPortal && isAutoApprove) ? 'Deleted' : status;\r\n case 'Pending-Active':\r\n return (!isPortal && isAutoApprove) ? ((isPortal && isAutoApprove) ? 'Active': 'Pending-Inactive') : status;\r\n default:\r\n return status;\r\n }\r\n },\r\n\r\n PersistFromCache: function () {\r\n var SItemObject = CHSI.Page.SItemFormItem.Cache.SItemObject;\r\n SItemObject.ClientID = $('#jxClientID').val();\r\n SItemObject.LocationID = $('#jxLocation option:selected').val();\r\n SItemObject.Name = $('#jxName').val();\r\n\r\n SItemObject.Status = CHSI.Page.SItemFormItem.Events.GetStatus(CHSI.Page.SItemFormItem.Cache.isPortal, CHSI.Page.SItemFormItem.Cache.AutoApprove, CHSI.Page.SItemFormItem.Cache.Deleted);\r\n \r\n SItemObject.Comments = $('#jxComments').val();\r\n CHSI.Page.SItemFormItem.Cache.SItemObject = SItemObject;\r\n }\r\n },\r\n Calls: {\r\n GetItem: function (ScheduleItemID) {\r\n CHSI.Page.SItemFormItem.Cache.Deleted = false;\r\n var AjaxURL = '/api/UW/ScheduleItem/Get?ScheduleItemID=' + ScheduleItemID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SItemFormItem.Cache.SItemObject = e;\r\n CHSI.Page.SItemFormItem.Cache.Status = e.Status;\r\n if (e.Status == 'Pending-Delete') {\r\n CHSI.Page.SItemFormItem.Cache.Deleted = true;\r\n }\r\n if (e.AutoApprove) {\r\n CHSI.Page.SItemFormItem.Cache.AutoApprove = true;\r\n }\r\n if (e.ClientID == null) {\r\n CHSI.Page.SItemFormItem.BindPresentationLayer();\r\n } else {\r\n\r\n CHSI.Page.SItemFormItem.Cache.ClientID = e.ClientID;\r\n CHSI.Page.SItemFormItem.Calls.GetClientInfo(CHSI.Page.SItemFormItem.Cache.ClientID);\r\n\r\n }\r\n $(\"#ScheduleItemFormTabs\").tabs('enable', 1);\r\n $(\"#ScheduleItemFormTabs\").tabs('enable', 2);\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n GetClientInfo: function (ClientID) {\r\n CHSI.Page.SItemFormItem.Cache.SItemObject.ClientID = ClientID;\r\n var AjaxURL = '/api/CRM/Clients/GetClient?ClientID=' + ClientID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SItemFormItem.Cache.SItemObject.ClientInfo = e;\r\n\r\n CHSI.Page.SItemFormItem.Calls.GetLocationByClientID(CHSI.Page.SItemFormItem.Cache.SItemObject.ClientID);\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n GetLocationByClientID: function (ClientID) {\r\n var AjaxURL = '/api/CRM/Location/GetLocationsByClientID?ClientID=' + ClientID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n\r\n CHSI.Page.SItemFormItem.Cache.SItemObject.Locations = e;\r\n CHSI.Page.SItemFormItem.BindPresentationLayer();\r\n \r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n GetScheduleTypeByID: function (ScheduleTypeID, SuccessFunction) {\r\n var AjaxURL = '/api/UW/Schedule/GetScheduleTypeByScheduleTypeID?ScheduleTypeID=' + ScheduleTypeID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n if (e.AutoApprove) {\r\n CHSI.Page.SItemFormItem.Cache.AutoApprove = true;\r\n }\r\n if (e.DefaultFileID) {\r\n CHSI.Page.SItemFormItem.Cache.SItemObject.DefaultFileID = e.DefaultFileID;\r\n }\r\n if (SuccessFunction) {\r\n SuccessFunction(e);\r\n }\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n SaveItem: function (isPortal, successFunction) {\r\n CHSI.Page.SItemFormItem.Events.PersistFromCache(); \r\n\r\n if (CHSI.Page.SItemFormItem.Cache.SItemObject.ClientID) {\r\n var ajaxData = [];\r\n ajaxData = CHSI.Page.SItemFormItem.Cache.SItemObject;\r\n var ajaxString = JSON.stringify(ajaxData);\r\n var AjaxURL = '/api/UW/ScheduleItem/SaveScheduleItem';\r\n $.ajax({\r\n type: \"POST\",\r\n url: AjaxURL,\r\n data: ajaxString,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SItemFormItem.Cache.SaveButton = false;\r\n CHSI.Page.SItemFormItem.Cache.SItemObject.ScheduleItemID = e.ScheduleItemID;\r\n $(\"#ScheduleItemFormTabs\").tabs('enable', 1);\r\n $(\"#ScheduleItemFormTabs\").tabs('enable', 2);\r\n\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log(e);\r\n }\r\n });\r\n } else {\r\n alert('Please add a valid client');\r\n }\r\n },\r\n\r\n DeleteItem: function (isPortal, successFunction) {\r\n CHSI.Page.SItemFormItem.Events.PersistFromCache();\r\n if (isPortal) {\r\n CHSI.Page.SItemFormItem.Cache.SItemObject.Status = 'Pending-Delete';\r\n } else {\r\n CHSI.Page.SItemFormItem.Cache.SItemObject.Status = 'Deleted';\r\n }\r\n if (CHSI.Page.SItemFormItem.Cache.SItemObject.ClientID) {\r\n var ajaxData = [];\r\n ajaxData = CHSI.Page.SItemFormItem.Cache.SItemObject;\r\n var ajaxString = JSON.stringify(ajaxData);\r\n var AjaxURL = '/api/UW/ScheduleItem/SaveScheduleItem';\r\n $.ajax({\r\n type: \"POST\",\r\n url: AjaxURL,\r\n data: ajaxString,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SItemFormItem.Cache.SItemObject.ScheduleItemID = e.ScheduleItemID;\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n },\r\n error: function (e) {\r\n CHSI.Common.Log(e);\r\n }\r\n });\r\n } else {\r\n alert('Please add a valid client');\r\n }\r\n }\r\n }\r\n}","CHSI.Page.SItemFormUploadImage = {\r\n\r\n Init: function (ScheduleItemID) {\r\n var Template_ScheduleItemFormImageUpload = $('#Template_ScheduleItemFormImageUpload').html();\r\n this.Templates.ScheduleItemFormImageUpload = Handlebars.compile(Template_ScheduleItemFormImageUpload);\r\n this.Cache.ScheduleImageObject.ScheduleItemID = ScheduleItemID;\r\n this.Cache.ScheduleItemID = ScheduleItemID;\r\n this.BindPresentationLayer(); \r\n this.Events.Global();\r\n },\r\n Templates: {\r\n\r\n },\r\n Cache: {\r\n ScheduleImageObject: {\r\n ScheduleItemID: null\r\n , Primary: 0\r\n , Description: ''\r\n , Comments: ''\r\n } \r\n }, \r\n BindPresentationLayer: function (isNewImage) { \r\n if (isNewImage) {\r\n var ScheduleImageObject = CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject;\r\n ScheduleImageObject.ScheduleItemID = null;\r\n ScheduleImageObject.FileID = null;\r\n ScheduleImageObject.Primary = false;\r\n ScheduleImageObject.Description = '';\r\n ScheduleImageObject.Comments = '';\r\n }\r\n $('#jxScheduleItemFormImageUploadContainer').html(this.Templates.ScheduleItemFormImageUpload(this.Cache.ScheduleImageObject)); \r\n CHSI.Page.SItemFormUploadImage.Calls.GetFileID();\r\n \r\n this.Events.GetTextareaLength('jxImageDescription', 'DescriptionMaxCount', 190, CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject.Description.length);\r\n this.Events.GetTextareaLength('jxImageComments', 'CommentsMaxCount', 490, CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject.Comments.length);\r\n \r\n \r\n },\r\n PersistFromCache: function () {\r\n var ScheduleImageObject = CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject;\r\n if (!ScheduleImageObject.ScheduleItemID) {\r\n ScheduleImageObject.ScheduleItemID = CHSI.Page.SItemFormUploadImage.Cache.ScheduleItemID;\r\n }\r\n ScheduleImageObject.Primary = $('#jxImagePrimary').is(':checked') ? true : false;\r\n ScheduleImageObject.Description = $('#jxImageDescription').val();\r\n ScheduleImageObject.Comments = $('#jxImageComments').val();\r\n return ScheduleImageObject;\r\n },\r\n Events: {\r\n Global: function () {\r\n $('#jxScheduleItemFormImageUploadContainer').on('click', '#jxImageSave', function () {\r\n CHSI.Page.SItemFormUploadImage.Calls.SaveScheduleItemImage(true); \r\n $('#jxImageCancel').attr('disabled', true);\r\n $(\"#ScheduleItemFormTabs\").tabs('option', 'active', 2);\r\n $('#jxImageUploadTab').parent().hide(); \r\n });\r\n\r\n $('#jxScheduleItemFormImageUploadContainer').on('click', '#jxImageCancel', function () {\r\n var ImageObject = CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject;\r\n ImageObject.FileID = null;\r\n ImageObject.ScheduleImageID = null;\r\n ImageObject.Primary = 0;\r\n ImageObject.Description = '';\r\n ImageObject.Comments = ''; \r\n CHSI.Page.SItemFormUploadImage.BindPresentationLayer();\r\n $(\"#ScheduleItemFormTabs\").tabs('option', 'active', 2);\r\n $('#jxImageUploadTab').parent().hide();\r\n });\r\n\r\n \r\n\r\n $('.SCButtonsRight').on('click', '#uxScheduleItemEditImageOK', function () { \r\n CHSI.Page.SItemFormItem.Cache.SaveButton = true;\r\n if (CHSI.Page.SItemFormItem.Cache.Deleted && CHSI.Page.SItemFormItem.Cache.SItemObject.Status == 'Pending-Delete') {\r\n var r = true;\r\n if (CHSI.Page.SItemFormItem.Cache.AutoApprove || !CHSI.Page.SItemFormFields.Cache.isPortal) {\r\n r = confirm(\"The item status will be updated to Deleted by confirming this message.\");\r\n } else {\r\n return false;\r\n }\r\n if (r == true) {\r\n CHSI.Page.SItemFormItem.Calls.SaveItem(false);\r\n closeThis(true);\r\n } else {\r\n return false;\r\n }\r\n } else {\r\n if (jQuery('form').valid()) {\r\n if (CHSI.Page.SItemFormFields.Cache.isPortal && CHSI.Page.SItemFormItem.Cache.AutoApprove == false) {\r\n CHSI.Page.SItemFormFields.SaveAllFields('Pending');\r\n } else {\r\n var r = true\r\n if (CHSI.Page.SItemFormFields.Cache.PendingChanges || CHSI.Page.SItemFormFields.Cache.NewItem) {\r\n r = confirm(\"Pending values and the item status will be updated to active by confirming this message.\");\r\n }\r\n if (r == true) {\r\n CHSI.Page.SItemFormFields.SaveAllFields('Active');\r\n if (CHSI.Page.SItemFormItem.Cache.SItemObject.Status == 'Pending') {\r\n CHSI.Page.SItemFormItem.Cache.SItemObject.Status = 'Active';\r\n CHSI.Page.SItemFormItem.Calls.SaveItem(false);\r\n }\r\n } else {\r\n return false;\r\n }\r\n }\r\n closeThis(true);\r\n }\r\n }\r\n CHSI.Page.SItemFormItem.Cache.SaveButton = false;\r\n });\r\n\r\n $('#jxScheduleItemFormImageUploadContainer').on('change', '#jxImagePrimary', function () {\r\n $('#jxImageSave').prop('disabled', false);\r\n });\r\n\r\n $('#jxScheduleItemFormImageUploadContainer').on('input', '#jxImageDescription, #jxImageComments', function () {\r\n $('#jxImageSave').prop('disabled', false);\r\n });\r\n\r\n this.GetTextareaLength('jxImageDescription', 'DescriptionMaxCount', 190);\r\n this.GetTextareaLength('jxImageComments', 'CommentsMaxCount', 490);\r\n },\r\n GetTextareaLength: function (TextareaID, TextareaCountID, MaxValue, UsedChars) {\r\n var Textarea = $('#' + TextareaID);\r\n var CounterID = $('#' + TextareaCountID);\r\n var RemaingChars;\r\n \r\n if (UsedChars == null || 0) {\r\n UsedChars = MaxValue;\r\n }\r\n\r\n RemaingChars = MaxValue - UsedChars;\r\n\r\n Textarea.on('keydown', function () {\r\n var CurrentChars = $(this).val().length;\r\n RemaingChars = MaxValue - CurrentChars;\r\n CounterID.html(RemaingChars);\r\n if (CurrentChars > MaxValue) {\r\n alert('You have exceeded the maximum amount of characters supported.')\r\n }\r\n });\r\n\r\n CounterID.html(RemaingChars);\r\n }\r\n },\r\n Calls: {\r\n GetFileID: function () {\r\n var Uploader = new qq.FileUploader({\r\n element: document.getElementById('jxUploadattachment'),\r\n action: '/CHSIUploadHandler.axd',\r\n allowedExtensions: ['jpg', 'jpeg', 'png', 'gif'],\r\n debug: true,\r\n disableDefaultDropzone: true,\r\n onComplete: function (id, fileName, response) {\r\n\r\n if (response.success == true) {\r\n\r\n var CurrentValueIndex = 0;\r\n\r\n jQuery('.qq-upload-list').hide();\r\n\r\n var FileInfo = {\r\n FileID: response.FileID,\r\n FileName: fileName\r\n };\r\n \r\n CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject.FileID = FileInfo.FileID;\r\n CHSI.Page.SItemFormUploadImage.PersistFromCache();\r\n CHSI.Page.SItemFormUploadImage.BindPresentationLayer();\r\n \r\n }\r\n }\r\n });\r\n },\r\n GetScheduleItemImage: function (ScheduleImageID, isEdit, isNewImage) {\r\n \r\n var AjaxURL = '/api/UW/ScheduleItemImage/GetScheduleItemImage?ScheduleImageID=' + ScheduleImageID;\r\n $.ajax({\r\n type: \"GET\",\r\n url: AjaxURL,\r\n cache: false,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) {\r\n CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject = e; \r\n CHSI.Page.SItemFormUploadImage.BindPresentationLayer(isNewImage);\r\n if (isEdit) {\r\n $('#jxImageSave').prop('disabled', true); \r\n }\r\n },\r\n error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n },\r\n SaveScheduleItemImage: function (RefreshTab) {\r\n if (!CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject.FileID) {\r\n alert('You cannot save without uploading an image.')\r\n return false;\r\n }\r\n var AjaxData = CHSI.Page.SItemFormUploadImage.PersistFromCache(); \r\n var AjaxString = JSON.stringify(AjaxData);\r\n var AjaxURL = '/api/UW/ScheduleItemImage/SaveScheduleItemImage';\r\n $.ajax({\r\n type: \"POST\", \r\n url: AjaxURL,\r\n data: AjaxString,\r\n cache: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: \"json\",\r\n success: function (e) { \r\n CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject.ScheduleImageID = e.ScheduleImageID;\r\n if (RefreshTab) {\r\n RefreshScheduleEditImageTab(CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject.ScheduleItemID);\r\n RefreshScheduleItemTab(CHSI.Page.SItemFormUploadImage.Cache.ScheduleImageObject.ScheduleItemID);\r\n }\r\n CHSI.Common.LogObject(e);\r\n }, error: function (e) {\r\n CHSI.Common.LogObject(e);\r\n }\r\n });\r\n }\r\n }\r\n}","/**\r\n * String.format for JavaScript\r\n * Copyright (c) Daniel Mester Pirttijärvi 2009\r\n * \r\n * www.masterdata.se/r/string_format_for_javascript/\r\n */\r\n\r\nvar msf={};(function(){function C(E){return(E<10?\"0\":\"\")+E}function D(E){E=E.toLowerCase();var F={name:\"en-GB\",d:\"dd/MM/yyyy\",D:\"dd MMMM yyyy\",t:\"HH:mm\",T:\"HH:mm:ss\",M:\"d MMMM\",Y:\"MMMM yyyy\",s:\"yyyy-MM-ddTHH:mm:ss\",_m:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],_d:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],_r:\".\",_t:\",\",_c:\"£#,0.00\",_ct:\",\",_cr:\".\"};if(E.substr(0,2)==\"sv\"){F.name=\"sv-SE\";F.d=\"yyyy-MM-dd\";F.D=\"den dd MMMM yyyy\";F._m=[\"januari\",\"februari\",\"mars\",\"april\",\"maj\",\"juni\",\"juli\",\"augusti\",\"september\",\"oktober\",\"november\",\"december\"];F._d=[\"söndag\",\"måndag\",\"tisdag\",\"onsdag\",\"torsdag\",\"fredag\",\"lördag\"];F._r=\",\";F._t=\" \";F._ct=\".\";F._cr=\",\";F._c=\"#,0.00 kr\"}else{if(E!=\"en-gb\"){F.name=\"en-US\";F.t=\"hh:mm tt\";F.T=\"hh:mm:ss tt\";F.d=\"MM/dd/yyyy\";F.D=\"MMMM dd, yyyy\";F.Y=\"MMMM, yyyy\";F._c=\"$#,0.00\"}}F.f=F.D+\" \"+F.t;F.F=F.D+\" \"+F.T;F.g=F.d+\" \"+F.t;F.G=F.d+\" \"+F.T;return F}function B(L,Q){var S=0,P=-1,H=-1,I=0,E=0,N=-1,F=false,O=true,J=[],G,K;function R(T){for(var U=0;U1&&I--%3==1){J.push(Q.t)}}}for(K=0;K=0){if(O){R(L.substr(0,K))}R(L.charAt(K))}else{if(K>=H-P){R(\"0\")}}O=false}else{if(N-->0||K=L.length?\"0\":L.charAt(K))}}K++}else{if(G==\".\"){if(L.length>++K||N>0){J.push(Q.r)}}else{if(G!==\",\"){J.push(G)}}}}return J.join(\"\")}Number.prototype.__Format=function(F){var H=Number(this);if(F==\"X\"){return Math.round(H).toString(16).toUpperCase()}else{if(F==\"x\"){return Math.round(H).toString(16)}else{var G={t:msf.LC._t,r:msf.LC._r};var J=\"0.################\",I=F?F.toLowerCase():null;if(I===null||I==\"g\"){F=J}else{if(I==\"n\"){F=\"#,\"+J}else{if(I==\"c\"){F=msf.LC._c;G.r=msf.LC._cr;G.t=msf.LC._ct}else{if(I==\"f\"){F=\"0.00\"}}}}if(F.indexOf(\",.\")!==-1){H/=1000}if(F.indexOf(\"%\")!==-1){H*=100}var E=F.split(\";\");if(H<0&&E.length>1){H*=-1;G.f=E[1]}else{G.f=E[!H&&E.length>2?2:0]}return B(H,G)}}};Date.prototype.__Format=function(F){var G=this;var E=\"\";var H;if(F.length==1){F=msf.LC[F]}return F.replace(/(d{1,4}|M{1,4}|yyyy|yy|HH|H|hh|h|mm|m|ss|s|tt)/g,function(){switch(arguments[0]){case\"dddd\":return msf.LC._d[G.getDay()];case\"ddd\":return msf.LC._d[G.getDay()].substr(0,3);case\"dd\":return C(G.getDate());case\"d\":return G.getDate();case\"MMMM\":return msf.LC._m[G.getMonth()];case\"MMM\":return msf.LC._m[G.getMonth()].substr(0,3);case\"MM\":return C(G.getMonth()+1);case\"M\":return G.getMonth()+1;case\"yyyy\":return G.getFullYear();case\"yy\":return G.getFullYear().toString().substr(2);case\"HH\":return C(G.getHours());case\"hh\":return C((G.getHours()-1)%12+1);case\"H\":return G.getHours();case\"h\":return(G.getHours()-1)%12+1;case\"mm\":return C(G.getMinutes());case\"m\":return G.getMinutes();case\"ss\":return C(G.getSeconds());case\"s\":return G.getSeconds();case\"tt\":return G.getHours()<12?\"AM\":\"PM\";default:return\"\"}})};String.__Format=function(I,J,H,F){var G=arguments,E;return I.replace(/(\\{*)\\{((\\d+)(\\,(-?\\d*))?(\\:([^\\}]*))?)\\}/g,function(){var K=arguments;if(K[1]&&K[1].length%2==1){return K[0]}if((E=G[parseInt(K[3],10)+1])===undefined){throw\"Missing argument\"}var N=E.__Format?E.__Format(K[7]):E.toString();var L=parseInt(K[5],10)||0;var O=Math.abs(L)-N.length;if(O>0){var M=\" \";while(M.length0?N+M:M+N}return K[1]+N}).replace(/\\{\\{/g,\"{\")};msf.LC=null;msf.setCulture=function(E){msf.LC=D(E)||D(E.substr(0,2))||D()};msf.setCulture(navigator.systemLanguage||navigator.language||\"en-US\");var A=Date.prototype;A.format=A.format||A.__Format;A=Number.prototype;A.format=A.format||A.__Format;String.format=String.format||String.__Format})();",null,"var Template_IncidentSearch_ClientResults = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n return \"
\\r\\n More than 100 records found, please refine your search.\\r\\n
\\r\\n\";\r\n },\"3\":function(depth0,helpers,partials,data,depths) {\r\n var stack1, buffer = \" \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\";\r\n stack1 = helpers.each.call(depth0, (depth0 != null ? depth0.IncidentTableRecord : depth0), {\"name\":\"each\",\"hash\":{},\"fn\":this.program(4, data, depths),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer + \" \\r\\n
Incident #Incident DateEmployeeStatusLanguageCreate DateCreated By 
\\r\\n\";\r\n},\"4\":function(depth0,helpers,partials,data,depths) {\r\n var stack1, helper, lambda=this.lambda, escapeExpression=this.escapeExpression, helperMissing=helpers.helperMissing, functionType=\"function\";\r\n return \" \\r\\n \"\r\n + escapeExpression(lambda((depth0 != null ? depth0.IncidentID : depth0), depth0))\r\n + \"\\r\\n \"\r\n + escapeExpression(((helpers.CHSIDate || (depth0 && depth0.CHSIDate) || helperMissing).call(depth0, (depth0 != null ? depth0.IncidentDate : depth0), {\"name\":\"CHSIDate\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n \"\r\n + escapeExpression(lambda((depth0 != null ? depth0.EmployeeName : depth0), depth0))\r\n + \"\\r\\n \"\r\n + escapeExpression(lambda((depth0 != null ? depth0.Status : depth0), depth0))\r\n + \"\\r\\n \"\r\n + escapeExpression(lambda((depth0 != null ? depth0.Language : depth0), depth0))\r\n + \"\\r\\n \"\r\n + escapeExpression(((helpers.CHSIDate || (depth0 && depth0.CHSIDate) || helperMissing).call(depth0, (depth0 != null ? depth0.CreatedDate : depth0), {\"name\":\"CHSIDate\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n \"\r\n + escapeExpression(lambda((depth0 != null ? depth0.CreatedBy : depth0), depth0))\r\n + \"\\r\\n\\r\\n [View/Edit][Details][Print]\\r\\n \\r\\n\";\r\n},\"6\":function(depth0,helpers,partials,data) {\r\n return \"

No incidents found using the supplied search filters. Please refine your search and try again...

\\r\\n\";\r\n },\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data,depths) {\r\n var stack1, buffer = \"\";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.ShowTooManyRecords : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(1, data, depths),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n buffer += \"
\\r\\nReported Incidents
\\r\\n\";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.IncidentTableRecord : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(3, data, depths),\"inverse\":this.program(6, data, depths),\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer;\r\n},\"useData\":true,\"useDepths\":true});","var Template_IncidentSearch_FilterOptions = Handlebars.template({\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression;\r\n return \"
\\r\\n Search and Filter\\r\\n \t\\r\\n\t\t\t \\r\\n \\r\\n\t\t\t \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
 \\r\\n
\\r\\n \\r\\n \"\r\n + escapeExpression(((helpers.GenerateSearchOptions || (depth0 && depth0.GenerateSearchOptions) || helperMissing).call(depth0, 0, {\"name\":\"GenerateSearchOptions\",\"hash\":{},\"data\":data})))\r\n + \"\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\";\r\n},\"useData\":true});","var Template_IncidentSearch_GroupResults = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n return \"
\\r\\n More than 100 records found, please refine your search.\\r\\n
\\r\\n\";\r\n },\"3\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \" \";\r\n stack1 = helpers.each.call(depth0, (depth0 != null ? depth0.IncidentTableRecord : depth0), {\"name\":\"each\",\"hash\":{},\"fn\":this.program(4, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer + \"
GroupClientIncident No.Incident DateEmployee NameStatus 
\\r\\n\";\r\n},\"4\":function(depth0,helpers,partials,data) {\r\n var stack1, lambda=this.lambda, escapeExpression=this.escapeExpression, helperMissing=helpers.helperMissing;\r\n return \"\"\r\n + escapeExpression(lambda((depth0 != null ? depth0.GroupID : depth0), depth0))\r\n + \"\"\r\n + escapeExpression(((helpers.TruncateString || (depth0 && depth0.TruncateString) || helperMissing).call(depth0, (depth0 != null ? depth0.ClientName : depth0), 34, {\"name\":\"TruncateString\",\"hash\":{},\"data\":data})))\r\n + \"\"\r\n + escapeExpression(lambda((depth0 != null ? depth0.IncidentID : depth0), depth0))\r\n + \"\"\r\n + escapeExpression(((helpers.CHSIDate || (depth0 && depth0.CHSIDate) || helperMissing).call(depth0, (depth0 != null ? depth0.IncidentDate : depth0), {\"name\":\"CHSIDate\",\"hash\":{},\"data\":data})))\r\n + \"\"\r\n + escapeExpression(((helpers.TruncateString || (depth0 && depth0.TruncateString) || helperMissing).call(depth0, (depth0 != null ? depth0.EmployeeName : depth0), 20, {\"name\":\"TruncateString\",\"hash\":{},\"data\":data})))\r\n + \"\"\r\n + escapeExpression(lambda((depth0 != null ? depth0.Status : depth0), depth0))\r\n + \"[view][print]\";\r\n},\"6\":function(depth0,helpers,partials,data) {\r\n return \"

No incidents found using the supplied search filters. Please refine your search and try again...

\\r\\n\";\r\n },\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, buffer = \"\";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.ShowTooManyRecords : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(1, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n buffer += \"
Reported Incidents
\\r\\n\";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.IncidentTableRecord : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(3, data),\"inverse\":this.program(6, data),\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer;\r\n},\"useData\":true});","var Template_IncidentSearch_Parameters = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression;\r\n return \" \\r\\n\";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression, buffer = \" \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\";\r\n stack1 = helpers['if'].call(depth0, (depth0 != null ? depth0.ShowAdditionalFilter : depth0), {\"name\":\"if\",\"hash\":{},\"fn\":this.program(1, data),\"inverse\":this.noop,\"data\":data});\r\n if (stack1 != null) { buffer += stack1; }\r\n return buffer + \" \\r\\n \\r\\n \";\r\n},\"useData\":true});","var Template_InstructionsEditor = Handlebars.template({\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression;\r\n return \" \";\r\n},\"useData\":true});","var Template_FormulaWorksheet = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var stack1;\r\n\r\n return ((stack1 = helpers['with'].call(depth0,(depth0 != null ? depth0.value : depth0),{\"name\":\"with\",\"hash\":{},\"fn\":this.program(2, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \" \\r\\n\";\r\n},\"2\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, alias1=helpers.helperMissing, alias2=\"function\", alias3=this.escapeExpression;\r\n\r\n return \"

\"\r\n + alias3(((helper = (helper = helpers.CoverageLineName || (depth0 != null ? depth0.CoverageLineName : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"CoverageLineName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"

\\r\\n
\\r\\n\"\r\n + ((stack1 = helpers.each.call(depth0,(depth0 != null ? depth0.Rates : depth0),{\"name\":\"each\",\"hash\":{},\"fn\":this.program(3, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \"

\"\r\n + alias3(((helper = (helper = helpers.CoverageLineName || (depth0 != null ? depth0.CoverageLineName : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"CoverageLineName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \" Variables

\\r\\n \\r\\n\"\r\n + ((stack1 = (helpers.eachProperty || (depth0 && depth0.eachProperty) || alias1).call(depth0,(depth0 != null ? depth0.Vars : depth0),{\"name\":\"eachProperty\",\"hash\":{},\"fn\":this.program(12, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \"
\\r\\n\";\r\n},\"3\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, alias1=helpers.helperMissing;\r\n\r\n return \"
Rate: \"\r\n + this.escapeExpression(((helper = (helper = helpers.RateName || (depth0 != null ? depth0.RateName : depth0)) != null ? helper : alias1),(typeof helper === \"function\" ? helper.call(depth0,{\"name\":\"RateName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"
\\r\\n \\r\\n \\r\\n \\r\\n\"\r\n + ((stack1 = (helpers.firstProperty || (depth0 && depth0.firstProperty) || alias1).call(depth0,(depth0 != null ? depth0.RateTypes : depth0),{\"name\":\"firstProperty\",\"hash\":{},\"fn\":this.program(4, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \" \\r\\n \\r\\n \\r\\n\"\r\n + ((stack1 = (helpers.eachProperty || (depth0 && depth0.eachProperty) || alias1).call(depth0,(depth0 != null ? depth0.RateTypes : depth0),{\"name\":\"eachProperty\",\"hash\":{},\"fn\":this.program(8, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \" \\r\\n
\\r\\n\";\r\n},\"4\":function(depth0,helpers,partials,data) {\r\n var stack1;\r\n\r\n return ((stack1 = helpers['with'].call(depth0,(depth0 != null ? depth0.value : depth0),{\"name\":\"with\",\"hash\":{},\"fn\":this.program(5, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\");\r\n},\"5\":function(depth0,helpers,partials,data) {\r\n var stack1;\r\n\r\n return \" Rate Detail\\r\\n\"\r\n + ((stack1 = (helpers.eachProperty || (depth0 && depth0.eachProperty) || helpers.helperMissing).call(depth0,(depth0 != null ? depth0.Vars : depth0),{\"name\":\"eachProperty\",\"hash\":{},\"fn\":this.program(6, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\");\r\n},\"6\":function(depth0,helpers,partials,data) {\r\n var stack1, alias1=this.lambda, alias2=this.escapeExpression;\r\n\r\n return \" \"\r\n + alias2(alias1(((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.Title : stack1), depth0))\r\n + \"\\r\\n\";\r\n},\"8\":function(depth0,helpers,partials,data) {\r\n var stack1;\r\n\r\n return \" \\r\\n\"\r\n + ((stack1 = helpers['with'].call(depth0,(depth0 != null ? depth0.value : depth0),{\"name\":\"with\",\"hash\":{},\"fn\":this.program(9, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \" \\r\\n\";\r\n},\"9\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, alias1=helpers.helperMissing;\r\n\r\n return \" \"\r\n + this.escapeExpression(((helper = (helper = helpers.Title || (depth0 != null ? depth0.Title : depth0)) != null ? helper : alias1),(typeof helper === \"function\" ? helper.call(depth0,{\"name\":\"Title\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n\"\r\n + ((stack1 = (helpers.eachProperty || (depth0 && depth0.eachProperty) || alias1).call(depth0,(depth0 != null ? depth0.Vars : depth0),{\"name\":\"eachProperty\",\"hash\":{},\"fn\":this.program(10, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\");\r\n},\"10\":function(depth0,helpers,partials,data) {\r\n var stack1;\r\n\r\n return \" \"\r\n + this.escapeExpression((helpers.GetFormulaControl || (depth0 && depth0.GetFormulaControl) || helpers.helperMissing).call(depth0,\"RateVariables\",((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.ProgramRateVariableID : stack1),(depth0 != null ? depth0.value : depth0),{\"name\":\"GetFormulaControl\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n\";\r\n},\"12\":function(depth0,helpers,partials,data) {\r\n var stack1, alias1=this.lambda, alias2=this.escapeExpression;\r\n\r\n return \" \\r\\n \"\r\n + alias2(alias1(((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.Title : stack1), depth0))\r\n + \"\\r\\n \"\r\n + alias2((helpers.GetFormulaControl || (depth0 && depth0.GetFormulaControl) || helpers.helperMissing).call(depth0,\"Variables\",((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.VariableID : stack1),(depth0 != null ? depth0.value : depth0),{\"name\":\"GetFormulaControl\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n \\r\\n\";\r\n},\"14\":function(depth0,helpers,partials,data) {\r\n var stack1, alias1=this.lambda, alias2=this.escapeExpression;\r\n\r\n return \" \\r\\n \"\r\n + alias2(alias1(((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.Title : stack1), depth0))\r\n + \"\\r\\n \"\r\n + alias2((helpers.GetFormulaControl || (depth0 && depth0.GetFormulaControl) || helpers.helperMissing).call(depth0,\"Variables\",((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.VariableID : stack1),(depth0 != null ? depth0.value : depth0),{\"name\":\"GetFormulaControl\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n \\r\\n\";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, alias1=helpers.helperMissing;\r\n\r\n return \"
\\r\\n

Quote Formula Worksheet

\\r\\n For ease of understanding the worksheet, please use these controls.\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Coverage Lines

\\r\\n\"\r\n + ((stack1 = (helpers.eachProperty || (depth0 && depth0.eachProperty) || alias1).call(depth0,(depth0 != null ? depth0.CL : depth0),{\"name\":\"eachProperty\",\"hash\":{},\"fn\":this.program(1, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \"

Quote-wide Variables

\\r\\n \\r\\n\"\r\n + ((stack1 = (helpers.eachProperty || (depth0 && depth0.eachProperty) || alias1).call(depth0,(depth0 != null ? depth0.Vars : depth0),{\"name\":\"eachProperty\",\"hash\":{},\"fn\":this.program(14, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \"
\\r\\n
\\r\\n
\";\r\n},\"useData\":true});","var Template_QuoteChecklist = Handlebars.template({\"1\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1, helper;\r\n\r\n return \"
\\r\\n
\\r\\n \"\r\n + this.escapeExpression(((helper = (helper = helpers.GroupTitle || (depth0 != null ? depth0.GroupTitle : depth0)) != null ? helper : helpers.helperMissing),(typeof helper === \"function\" ? helper.call(depth0,{\"name\":\"GroupTitle\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n
\\r\\n
\\r\\n\"\r\n + ((stack1 = helpers.each.call(depth0,(depths[1] != null ? depths[1].Questions : depths[1]),{\"name\":\"each\",\"hash\":{},\"fn\":this.program(2, data, 0, blockParams, depths),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";\r\n},\"2\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1;\r\n\r\n return ((stack1 = (helpers.compare || (depth0 && depth0.compare) || helpers.helperMissing).call(depth0,(depths[1] != null ? depths[1].GroupID : depths[1]),(depth0 != null ? depth0.GroupID : depth0),{\"name\":\"compare\",\"hash\":{\"operator\":\"==\"},\"fn\":this.program(3, data, 0, blockParams, depths),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\");\r\n},\"3\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1;\r\n\r\n return \"
\\r\\n\"\r\n + ((stack1 = helpers.each.call(depth0,(depths[3] != null ? depths[3].Answers : depths[3]),{\"name\":\"each\",\"hash\":{},\"fn\":this.program(4, data, 0, blockParams, depths),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \"
\\r\\n\";\r\n},\"4\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1;\r\n\r\n return ((stack1 = (helpers.compare || (depth0 && depth0.compare) || helpers.helperMissing).call(depth0,(depths[1] != null ? depths[1].QuestionID : depths[1]),(depth0 != null ? depth0.QuestionID : depth0),{\"name\":\"compare\",\"hash\":{\"operator\":\"==\"},\"fn\":this.program(5, data, 0, blockParams, depths),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\");\r\n},\"5\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1, alias1=helpers.helperMissing;\r\n\r\n return ((stack1 = (helpers.compare || (depth0 && depth0.compare) || alias1).call(depth0,(depths[2] != null ? depths[2].QuestionMarker : depths[2]),1,{\"name\":\"compare\",\"hash\":{\"operator\":\"==\"},\"fn\":this.program(6, data, 0, blockParams, depths),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + ((stack1 = (helpers.compare || (depth0 && depth0.compare) || alias1).call(depth0,(depths[2] != null ? depths[2].QuestionMarker : depths[2]),2,{\"name\":\"compare\",\"hash\":{\"operator\":\"==\"},\"fn\":this.program(9, data, 0, blockParams, depths),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + ((stack1 = (helpers.compare || (depth0 && depth0.compare) || alias1).call(depth0,(depths[2] != null ? depths[2].QuestionMarker : depths[2]),0,{\"name\":\"compare\",\"hash\":{\"operator\":\"==\"},\"fn\":this.program(11, data, 0, blockParams, depths),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\");\r\n},\"6\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, alias1=helpers.helperMissing, alias2=\"function\", alias3=this.escapeExpression;\r\n\r\n return \" X\"\r\n + alias3(((helper = (helper = helpers.QuestionText || (depth0 != null ? depth0.QuestionText : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"QuestionText\",\"hash\":{},\"data\":data}) : helper)))\r\n + \" \"\r\n + ((stack1 = helpers['if'].call(depth0,(depth0 != null ? depth0.Response : depth0),{\"name\":\"if\",\"hash\":{},\"fn\":this.program(7, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \"\\r\\n\";\r\n},\"7\":function(depth0,helpers,partials,data) {\r\n var helper, alias1=helpers.helperMissing, alias2=this.escapeExpression;\r\n\r\n return \" \"\r\n + alias2(((helper = (helper = helpers.Response || (depth0 != null ? depth0.Response : depth0)) != null ? helper : alias1),(typeof helper === \"function\" ? helper.call(depth0,{\"name\":\"Response\",\"hash\":{},\"data\":data}) : helper)))\r\n + \" - \"\r\n + alias2((helpers.CHSIDate || (depth0 && depth0.CHSIDate) || alias1).call(depth0,(depth0 != null ? depth0.UpdateTmsp : depth0),{\"name\":\"CHSIDate\",\"hash\":{},\"data\":data}))\r\n + \" \";\r\n},\"9\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, alias1=helpers.helperMissing, alias2=\"function\", alias3=this.escapeExpression;\r\n\r\n return \" P\"\r\n + alias3(((helper = (helper = helpers.QuestionText || (depth0 != null ? depth0.QuestionText : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"QuestionText\",\"hash\":{},\"data\":data}) : helper)))\r\n + \" \"\r\n + ((stack1 = helpers['if'].call(depth0,(depth0 != null ? depth0.Response : depth0),{\"name\":\"if\",\"hash\":{},\"fn\":this.program(7, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \"\\r\\n\";\r\n},\"11\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, alias1=helpers.helperMissing, alias2=\"function\", alias3=this.escapeExpression;\r\n\r\n return \" O\"\r\n + alias3(((helper = (helper = helpers.QuestionText || (depth0 != null ? depth0.QuestionText : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"QuestionText\",\"hash\":{},\"data\":data}) : helper)))\r\n + \" \"\r\n + ((stack1 = helpers['if'].call(depth0,(depth0 != null ? depth0.Response : depth0),{\"name\":\"if\",\"hash\":{},\"fn\":this.program(7, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \"\\r\\n\";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1;\r\n\r\n return \"\"\r\n + ((stack1 = helpers.each.call(depth0,(depth0 != null ? depth0.Groups : depth0),{\"name\":\"each\",\"hash\":{},\"fn\":this.program(1, data, 0, blockParams, depths),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\");\r\n},\"useData\":true,\"useDepths\":true});","var Template_QuoteDocuments = Handlebars.template({\"1\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1, alias1=helpers.helperMissing;\r\n\r\n return ((stack1 = (helpers.compare || (depth0 && depth0.compare) || alias1).call(depth0,(depth0 != null ? depth0.DocumentType : depth0),\"text\",{\"name\":\"compare\",\"hash\":{\"operator\":\"==\"},\"fn\":this.program(2, data, 0, blockParams, depths),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + ((stack1 = (helpers.compare || (depth0 && depth0.compare) || alias1).call(depth0,(depth0 != null ? depth0.DocumentType : depth0),\"report\",{\"name\":\"compare\",\"hash\":{\"operator\":\"==\"},\"fn\":this.program(4, data, 0, blockParams, depths),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + ((stack1 = (helpers.compare || (depth0 && depth0.compare) || alias1).call(depth0,(depth0 != null ? depth0.DocumentType : depth0),\"file\",{\"name\":\"compare\",\"hash\":{\"operator\":\"==\"},\"fn\":this.program(6, data, 0, blockParams, depths),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\");\r\n},\"2\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, alias1=helpers.helperMissing, alias2=\"function\", alias3=this.escapeExpression;\r\n\r\n return \" \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \"\r\n + ((stack1 = ((helper = (helper = helpers.Description || (depth0 != null ? depth0.Description : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"Description\",\"hash\":{},\"data\":data}) : helper))) != null ? stack1 : \"\")\r\n + \"\\r\\n \\r\\n \\r\\n\";\r\n},\"4\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1, helper, alias1=helpers.helperMissing, alias2=\"function\", alias3=this.escapeExpression;\r\n\r\n return \" \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\\"Document\\\"\\r\\n \\r\\n \\r\\n \"\r\n + alias3(((helper = (helper = helpers.Description || (depth0 != null ? depth0.Description : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"Description\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n \\r\\n \\r\\n\";\r\n},\"6\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1, helper, alias1=helpers.helperMissing, alias2=\"function\", alias3=this.escapeExpression;\r\n\r\n return \" \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\\"Document\\\"\\r\\n \\r\\n \\r\\n \"\r\n + alias3(((helper = (helper = helpers.Description || (depth0 != null ? depth0.Description : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"Description\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n \\r\\n \\r\\n\";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1;\r\n\r\n return \"The following documents are available for this policy. Clicking on the document will open it as a PDF in another window.\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\"\r\n + ((stack1 = helpers.each.call(depth0,(depth0 != null ? depth0.Documents : depth0),{\"name\":\"each\",\"hash\":{},\"fn\":this.program(1, data, 0, blockParams, depths),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \"
\\r\\n\\r\\n \\r\\n
\\r\\n Select All \\r\\n
\\r\\n Create Attachment         \\r\\n Named       \\r\\n \\r\\n     \\r\\n \\r\\n
\\r\\n
\";\r\n},\"useData\":true,\"useDepths\":true});","var Template_QuoteInfo_Commissions = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var helper, alias1=helpers.helperMissing, alias2=\"function\", alias3=this.escapeExpression;\r\n\r\n return \" \\r\\n \\r\\n
\"\r\n + alias3(((helper = (helper = helpers.ProducerName || (depth0 != null ? depth0.ProducerName : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"ProducerName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"
\\r\\n \\r\\n \\r\\n
\"\r\n + alias3(((helper = (helper = helpers.ProducerRep || (depth0 != null ? depth0.ProducerRep : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"ProducerRep\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"
\\r\\n \\r\\n \\r\\n
\"\r\n + alias3(((helper = (helper = helpers.ProducerCustomerID || (depth0 != null ? depth0.ProducerCustomerID : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"ProducerCustomerID\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"
\\r\\n \\r\\n \\r\\n
\"\r\n + alias3(((helper = (helper = helpers.PrimaryProducer || (depth0 != null ? depth0.PrimaryProducer : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"PrimaryProducer\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"
\\r\\n \\r\\n \\r\\n
\"\r\n + alias3(((helper = (helper = helpers.CommissionRate || (depth0 != null ? depth0.CommissionRate : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"CommissionRate\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"
\\r\\n \\r\\n \\r\\n
\"\r\n + alias3(((helper = (helper = helpers.UseRating || (depth0 != null ? depth0.UseRating : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"UseRating\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, alias1=helpers.helperMissing, alias2=this.escapeExpression;\r\n\r\n return \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\"\r\n + ((stack1 = helpers.each.call(depth0,(depth0 != null ? depth0.CommissionsObject : depth0),{\"name\":\"each\",\"hash\":{},\"fn\":this.program(1, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \" \\r\\n
\\r\\n Broker\\r\\n \\r\\n Rep/Agent\\r\\n \\r\\n Cust#\\r\\n \\r\\n Primary\\r\\n \\r\\n Rate\\r\\n \\r\\n Rating?\\r\\n \\r\\n  \\r\\n \\r\\n  \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Total Commissions    Total Ratable Commissions \\r\\n
\";\r\n},\"useData\":true});","var Template_QuoteInfo_CoverageLine = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var stack1;\r\n\r\n return ((stack1 = helpers['with'].call(depth0,(depth0 != null ? depth0.value : depth0),{\"name\":\"with\",\"hash\":{},\"fn\":this.program(2, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\");\r\n},\"2\":function(depth0,helpers,partials,data) {\r\n var helper, alias1=helpers.helperMissing, alias2=\"function\", alias3=this.escapeExpression;\r\n\r\n return \" \\r\\n \\r\\n \"\r\n + alias3(((helper = (helper = helpers.CoverageLineName || (depth0 != null ? depth0.CoverageLineName : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"CoverageLineName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, alias1=helpers.helperMissing;\r\n\r\n return \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\"\r\n + ((stack1 = (helpers.eachProperty || (depth0 && depth0.eachProperty) || alias1).call(depth0,((stack1 = (depth0 != null ? depth0.CoverageLineObject : depth0)) != null ? stack1.CL : stack1),{\"name\":\"eachProperty\",\"hash\":{},\"fn\":this.program(1, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \" \\r\\n
\\r\\n Coverage Line\\r\\n \\r\\n  \\r\\n
\\r\\n
\\r\\n
\\r\\nAdd a Coverage Line \"\r\n + this.escapeExpression(((helper = (helper = helpers.GetAddCoverageLineSelectList || (depth0 != null ? depth0.GetAddCoverageLineSelectList : depth0)) != null ? helper : alias1),(typeof helper === \"function\" ? helper.call(depth0,{\"name\":\"GetAddCoverageLineSelectList\",\"hash\":{},\"data\":data}) : helper)));\r\n},\"useData\":true});","var Template_QuoteInfo_Payroll = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var helper, alias1=helpers.helperMissing, alias2=\"function\", alias3=this.escapeExpression;\r\n\r\n return \" \\r\\n \\r\\n
\"\r\n + alias3(((helper = (helper = helpers.State || (depth0 != null ? depth0.State : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"State\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"
\\r\\n \\r\\n \\r\\n
\"\r\n + alias3(((helper = (helper = helpers.ClassCode || (depth0 != null ? depth0.ClassCode : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"ClassCode\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"
\\r\\n \\r\\n \\r\\n
\"\r\n + alias3(((helper = (helper = helpers.AltClassCode || (depth0 != null ? depth0.AltClassCode : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"AltClassCode\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"
\\r\\n \\r\\n \\r\\n
\"\r\n + alias3(((helper = (helper = helpers.NumberOfEE || (depth0 != null ? depth0.NumberOfEE : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"NumberOfEE\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"
\\r\\n \\r\\n \\r\\n
\"\r\n + alias3(((helper = (helper = helpers.ClassCodeDescription || (depth0 != null ? depth0.ClassCodeDescription : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"ClassCodeDescription\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"
\\r\\n \\r\\n \\r\\n
\"\r\n + alias3(((helper = (helper = helpers.PayrollAmount || (depth0 != null ? depth0.PayrollAmount : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"PayrollAmount\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"
\\r\\n \\r\\n \\r\\n
\"\r\n + alias3(((helper = (helper = helpers.BaseRate || (depth0 != null ? depth0.BaseRate : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"BaseRate\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"
\\r\\n \\r\\n \\r\\n
\"\r\n + alias3(((helper = (helper = helpers.Rate || (depth0 != null ? depth0.Rate : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"Rate\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"
\\r\\n \\r\\n \\r\\n
\"\r\n + alias3((helpers.CalculateGrossPrem || (depth0 && depth0.CalculateGrossPrem) || alias1).call(depth0,(depth0 != null ? depth0.PayrollAmount : depth0),(depth0 != null ? depth0.BaseRate : depth0),{\"name\":\"CalculateGrossPrem\",\"hash\":{},\"data\":data}))\r\n + \"
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, alias1=this.lambda, alias2=this.escapeExpression;\r\n\r\n return \"

Estimated Annual Payroll

  
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\"\r\n + ((stack1 = helpers.each.call(depth0,(depth0 != null ? depth0.PayrollObject : depth0),{\"name\":\"each\",\"hash\":{},\"fn\":this.program(1, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \" \\r\\n
\\r\\n State\\r\\n \\r\\n Class Code\\r\\n \\r\\n Alt Class Code\\r\\n \\r\\n EEs\\r\\n \\r\\n Description\\r\\n \\r\\n Payroll\\r\\n \\r\\n BaseRate\\r\\n \\r\\n Rate\\r\\n \\r\\n Gross Prem\\r\\n \\r\\n  \\r\\n \\r\\n  \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n  \\r\\n \\r\\n  \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Total Employees \\r\\n
\\r\\n Total Payroll   \\r\\n Total Gross Prem \\r\\n
\\r\\n
\";\r\n},\"useData\":true});","var Template_QuoteInfo_QuoteDetails = Handlebars.template({\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, alias1=helpers.helperMissing, alias2=\"function\", alias3=this.escapeExpression;\r\n\r\n return \"

\\r\\n Quotes »\\r\\n \"\r\n + alias3(((helper = (helper = helpers.ClientName || (depth0 != null ? depth0.ClientName : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"ClientName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n

\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Quote Name:\\r\\n \\r\\n \"\r\n + alias3((helpers.GetQuotePropertyTextbox || (depth0 && depth0.GetQuotePropertyTextbox) || alias1).call(depth0,\"QuoteName\",{\"name\":\"GetQuotePropertyTextbox\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n \\r\\n Program Name:\\r\\n \\r\\n \"\r\n + alias3((helpers.GetQuotePropertyTextbox || (depth0 && depth0.GetQuotePropertyTextbox) || alias1).call(depth0,\"ProgramName\",{\"name\":\"GetQuotePropertyTextbox\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n
Quote Date: \\r\\n \"\r\n + alias3((helpers.GetQuotePropertyTextbox || (depth0 && depth0.GetQuotePropertyTextbox) || alias1).call(depth0,\"QuoteDate\",\"Date\",{\"name\":\"GetQuotePropertyTextbox\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n \\r\\n Policy Period:\\r\\n \\r\\n \"\r\n + alias3((helpers.GetQuotePropertyTextbox || (depth0 && depth0.GetQuotePropertyTextbox) || alias1).call(depth0,\"PolicyPeriod\",{\"name\":\"GetQuotePropertyTextbox\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n \\r\\n Current Status:\\r\\n \\r\\n \"\r\n + alias3((helpers.GetQuotePropertyTextbox || (depth0 && depth0.GetQuotePropertyTextbox) || alias1).call(depth0,\"Status\",{\"name\":\"GetQuotePropertyTextbox\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n
\\r\\n Effective Date:\\r\\n \\r\\n \"\r\n + alias3((helpers.GetQuotePropertyTextbox || (depth0 && depth0.GetQuotePropertyTextbox) || alias1).call(depth0,\"EffectiveDate\",\"Date\",{\"name\":\"GetQuotePropertyTextbox\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n \\r\\n Expiration Date:\\r\\n \\r\\n \"\r\n + alias3((helpers.GetQuotePropertyTextbox || (depth0 && depth0.GetQuotePropertyTextbox) || alias1).call(depth0,\"ExpirationDate\",\"Date\",{\"name\":\"GetQuotePropertyTextbox\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n \\r\\n Pro Rate Days:\\r\\n \\r\\n \\r\\n
\";\r\n},\"useData\":true});","var Template_QuoteNarrative = Handlebars.template({\"1\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1, helper, alias1=helpers.helperMissing, alias2=this.escapeExpression, alias3=this.lambda;\r\n\r\n return \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\"\r\n + alias2((helpers.AddNumber || (depth0 && depth0.AddNumber) || alias1).call(depth0,(data && data.index),1,{\"name\":\"AddNumber\",\"hash\":{},\"data\":data}))\r\n + \" - \"\r\n + alias2(((helper = (helper = helpers.NarrativeText || (depth0 != null ? depth0.NarrativeText : depth0)) != null ? helper : alias1),(typeof helper === \"function\" ? helper.call(depth0,{\"name\":\"NarrativeText\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\"\r\n + alias2(alias3(((stack1 = (depth0 != null ? depth0.Narrative : depth0)) != null ? stack1.UpdateUser : stack1), depth0))\r\n + \" - \"\r\n + alias2((helpers.CHSIDateTime || (depth0 && depth0.CHSIDateTime) || alias1).call(depth0,((stack1 = (depth0 != null ? depth0.Narrative : depth0)) != null ? stack1.UpdateTmsp : stack1),{\"name\":\"CHSIDateTime\",\"hash\":{},\"data\":data}))\r\n + \" 
\\r\\n \"\r\n + ((stack1 = alias3(((stack1 = (depth0 != null ? depth0.Narrative : depth0)) != null ? stack1.NarrativeValue : stack1), depth0)) != null ? stack1 : \"\")\r\n + \"\\r\\n
\\r\\n\"\r\n + ((stack1 = helpers['if'].call(depth0,(depth0 != null ? depth0.Narrative : depth0),{\"name\":\"if\",\"hash\":{},\"fn\":this.program(2, data, 0, blockParams, depths),\"inverse\":this.program(4, data, 0, blockParams, depths),\"data\":data})) != null ? stack1 : \"\")\r\n + \"
\\r\\n
\\r\\n\";\r\n},\"2\":function(depth0,helpers,partials,data) {\r\n var stack1, alias1=this.lambda, alias2=this.escapeExpression;\r\n\r\n return \" \\r\\n \\r\\n\";\r\n},\"4\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1, helper, alias1=this.escapeExpression;\r\n\r\n return \" \\r\\n\";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1;\r\n\r\n return \"\"\r\n + ((stack1 = helpers.each.call(depth0,(depth0 != null ? depth0.Narrative : depth0),{\"name\":\"each\",\"hash\":{},\"fn\":this.program(1, data, 0, blockParams, depths),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\");\r\n},\"useData\":true,\"useDepths\":true});","var Template_QuotePremium = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var stack1, alias1=helpers.helperMissing, alias2=this.escapeExpression;\r\n\r\n return \" \\r\\n \"\r\n + alias2((helpers.GetAppearanceTitle || (depth0 && depth0.GetAppearanceTitle) || alias1).call(depth0,\"Variables\",((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.VariableID : stack1),1,{\"name\":\"GetAppearanceTitle\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n \"\r\n + alias2((helpers.GetAppearanceControl || (depth0 && depth0.GetAppearanceControl) || alias1).call(depth0,\"Variables\",((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.VariableID : stack1),(depth0 != null ? depth0.value : depth0),1,1,{\"name\":\"GetAppearanceControl\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n \\r\\n\";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, alias1=helpers.helperMissing;\r\n\r\n return \"

Summary

\\r\\n
\\r\\n\\r\\n\"\r\n + ((stack1 = (helpers.eachProperty || (depth0 && depth0.eachProperty) || alias1).call(depth0,(depth0 != null ? depth0.Vars : depth0),{\"name\":\"eachProperty\",\"hash\":{},\"fn\":this.program(1, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \" \\r\\n \\r\\n \\r\\n
\\r\\n  \\r\\n
\\r\\n

Policy Total

\\r\\n
\\r\\n
\\r\\n Policy Total: \\r\\n
\";\r\n},\"useData\":true});","var Template_QuotePremium_Billing = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n return \" selected \";\r\n},\"3\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1, helper, alias1=helpers.helperMissing, alias2=\"function\", alias3=this.escapeExpression;\r\n\r\n return \" \\r\\n\";\r\n},\"4\":function(depth0,helpers,partials,data) {\r\n return \" selected\";\r\n},\"6\":function(depth0,helpers,partials,data) {\r\n return \" checked=\\\"checked\\\" \";\r\n},\"8\":function(depth0,helpers,partials,data) {\r\n return \"%\";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1, helper, alias1=helpers.helperMissing, alias2=\"function\", alias3=this.escapeExpression;\r\n\r\n return \"

Billing

\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Billing Type\\r\\n \\r\\n  \\r\\n \\r\\n
\\r\\n
Billing Period\\r\\n \\r\\n  
First Payment Date\\r\\n \\r\\n  
Billing Increment\\r\\n />\\r\\n  
Deposit Percent\\r\\n />\\r\\n
Number of Payments\\r\\n />\\r\\n
\\r\\n <%----%>\\r\\n
\";\r\n},\"useData\":true,\"useDepths\":true});","var Template_QuotePremium_BillingSchedule = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var alias1=this.escapeExpression;\r\n\r\n return \" \\r\\n \\r\\n\t \"\r\n + alias1((helpers.CHSIDate || (depth0 && depth0.CHSIDate) || helpers.helperMissing).call(depth0,(depth0 != null ? depth0.BillDate : depth0),{\"name\":\"CHSIDate\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n \\r\\n \\r\\n\t \"\r\n + alias1(this.lambda((depth0 != null ? depth0.BillAmount : depth0), depth0))\r\n + \"\\r\\n\t   \\r\\n\\r\\n\\r\\n\";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1;\r\n\r\n return \"\\r\\n \\r\\n \t \\r\\n\"\r\n + ((stack1 = helpers.each.call(depth0,(depth0 != null ? depth0.BillingSchedule : depth0),{\"name\":\"each\",\"hash\":{},\"fn\":this.program(1, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \"\\r\\n
\t\t\";\r\n},\"useData\":true});","var Template_QuotePremium_Premium = Handlebars.template({\"1\":function(depth0,helpers,partials,data) {\r\n var stack1;\r\n\r\n return \"\\r\\n\"\r\n + ((stack1 = helpers['with'].call(depth0,(depth0 != null ? depth0.value : depth0),{\"name\":\"with\",\"hash\":{},\"fn\":this.program(2, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \"
\\r\\n\\r\\n\";\r\n},\"2\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, alias1=helpers.helperMissing, alias2=\"function\", alias3=this.escapeExpression;\r\n\r\n return \"

\"\r\n + alias3(((helper = (helper = helpers.CoverageLineName || (depth0 != null ? depth0.CoverageLineName : depth0)) != null ? helper : alias1),(typeof helper === alias2 ? helper.call(depth0,{\"name\":\"CoverageLineName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"

\\r\\n \\r\\n
\\r\\n\"\r\n + ((stack1 = helpers.each.call(depth0,(depth0 != null ? depth0.Rates : depth0),{\"name\":\"each\",\"hash\":{},\"fn\":this.program(3, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \" \\r\\n\"\r\n + ((stack1 = (helpers.eachProperty || (depth0 && depth0.eachProperty) || alias1).call(depth0,(depth0 != null ? depth0.Vars : depth0),{\"name\":\"eachProperty\",\"hash\":{},\"fn\":this.program(12, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \"
\\r\\n\\r\\n\";\r\n},\"3\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, alias1=helpers.helperMissing;\r\n\r\n return \"
Rate: \"\r\n + this.escapeExpression(((helper = (helper = helpers.RateName || (depth0 != null ? depth0.RateName : depth0)) != null ? helper : alias1),(typeof helper === \"function\" ? helper.call(depth0,{\"name\":\"RateName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"
\\r\\n \\r\\n \\r\\n \\r\\n\"\r\n + ((stack1 = (helpers.firstProperty || (depth0 && depth0.firstProperty) || alias1).call(depth0,(depth0 != null ? depth0.RateTypes : depth0),{\"name\":\"firstProperty\",\"hash\":{},\"fn\":this.program(4, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \" \\r\\n \\r\\n \\r\\n\"\r\n + ((stack1 = (helpers.eachProperty || (depth0 && depth0.eachProperty) || alias1).call(depth0,(depth0 != null ? depth0.RateTypes : depth0),{\"name\":\"eachProperty\",\"hash\":{},\"fn\":this.program(8, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \" \\r\\n
\\r\\n\";\r\n},\"4\":function(depth0,helpers,partials,data) {\r\n var stack1;\r\n\r\n return ((stack1 = helpers['with'].call(depth0,(depth0 != null ? depth0.value : depth0),{\"name\":\"with\",\"hash\":{},\"fn\":this.program(5, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\");\r\n},\"5\":function(depth0,helpers,partials,data) {\r\n var stack1;\r\n\r\n return \" Rate Detail\\r\\n\"\r\n + ((stack1 = (helpers.eachProperty || (depth0 && depth0.eachProperty) || helpers.helperMissing).call(depth0,(depth0 != null ? depth0.Vars : depth0),{\"name\":\"eachProperty\",\"hash\":{},\"fn\":this.program(6, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \"\\r\\n\";\r\n},\"6\":function(depth0,helpers,partials,data) {\r\n var stack1;\r\n\r\n return \" \"\r\n + this.escapeExpression((helpers.GetAppearanceTitle || (depth0 && depth0.GetAppearanceTitle) || helpers.helperMissing).call(depth0,\"RateVariables\",((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.ProgramRateVariableID : stack1),1,{\"name\":\"GetAppearanceTitle\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n\\r\\n\";\r\n},\"8\":function(depth0,helpers,partials,data) {\r\n var stack1;\r\n\r\n return \" \\r\\n\"\r\n + ((stack1 = helpers['with'].call(depth0,(depth0 != null ? depth0.value : depth0),{\"name\":\"with\",\"hash\":{},\"fn\":this.program(9, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \" \\r\\n\";\r\n},\"9\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, alias1=helpers.helperMissing;\r\n\r\n return \" \"\r\n + this.escapeExpression(((helper = (helper = helpers.Title || (depth0 != null ? depth0.Title : depth0)) != null ? helper : alias1),(typeof helper === \"function\" ? helper.call(depth0,{\"name\":\"Title\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n\"\r\n + ((stack1 = (helpers.eachProperty || (depth0 && depth0.eachProperty) || alias1).call(depth0,(depth0 != null ? depth0.Vars : depth0),{\"name\":\"eachProperty\",\"hash\":{},\"fn\":this.program(10, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\");\r\n},\"10\":function(depth0,helpers,partials,data) {\r\n var stack1;\r\n\r\n return \" \"\r\n + this.escapeExpression((helpers.GetAppearanceControl || (depth0 && depth0.GetAppearanceControl) || helpers.helperMissing).call(depth0,\"RateVariables\",((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.ProgramRateVariableID : stack1),(depth0 != null ? depth0.value : depth0),1,{\"name\":\"GetAppearanceControl\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n\";\r\n},\"12\":function(depth0,helpers,partials,data) {\r\n var stack1, alias1=helpers.helperMissing, alias2=this.escapeExpression;\r\n\r\n return \" \\r\\n \"\r\n + alias2((helpers.GetAppearanceTitle || (depth0 && depth0.GetAppearanceTitle) || alias1).call(depth0,\"Variables\",((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.VariableID : stack1),1,{\"name\":\"GetAppearanceTitle\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n \"\r\n + alias2((helpers.GetAppearanceControl || (depth0 && depth0.GetAppearanceControl) || alias1).call(depth0,\"Variables\",((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.VariableID : stack1),(depth0 != null ? depth0.value : depth0),1,{\"name\":\"GetAppearanceControl\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n \\r\\n\";\r\n},\"14\":function(depth0,helpers,partials,data) {\r\n var stack1, alias1=helpers.helperMissing, alias2=this.escapeExpression;\r\n\r\n return \" \\r\\n \"\r\n + alias2((helpers.GetAppearanceTitle || (depth0 && depth0.GetAppearanceTitle) || alias1).call(depth0,\"Variables\",((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.VariableID : stack1),1,{\"name\":\"GetAppearanceTitle\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n \"\r\n + alias2((helpers.GetAppearanceControl || (depth0 && depth0.GetAppearanceControl) || alias1).call(depth0,\"Variables\",((stack1 = (depth0 != null ? depth0.value : depth0)) != null ? stack1.VariableID : stack1),(depth0 != null ? depth0.value : depth0),1,{\"name\":\"GetAppearanceControl\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n \\r\\n\";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, alias1=helpers.helperMissing;\r\n\r\n return \"

Quotes

\\r\\n
\\r\\n\"\r\n + ((stack1 = (helpers.eachProperty || (depth0 && depth0.eachProperty) || alias1).call(depth0,(depth0 != null ? depth0.CL : depth0),{\"name\":\"eachProperty\",\"hash\":{},\"fn\":this.program(1, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \"

Summary

\\r\\n \\r\\n\"\r\n + ((stack1 = (helpers.eachProperty || (depth0 && depth0.eachProperty) || alias1).call(depth0,(depth0 != null ? depth0.Vars : depth0),{\"name\":\"eachProperty\",\"hash\":{},\"fn\":this.program(14, data, 0),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \"
\\r\\n
\";\r\n},\"useData\":true});","var Template_QuotePremium_VariableHistory = Handlebars.template({\"1\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1, helper, alias1=helpers.helperMissing, alias2=this.escapeExpression, alias3=this.lambda;\r\n\r\n return \" \\r\\n \\r\\n \"\r\n + alias2(((helper = (helper = helpers.VariableName || (depth0 != null ? depth0.VariableName : depth0)) != null ? helper : alias1),(typeof helper === \"function\" ? helper.call(depth0,{\"name\":\"VariableName\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n \\r\\n \\r\\n \"\r\n + alias2((helpers.GetValueByDataType || (depth0 && depth0.GetValueByDataType) || alias1).call(depth0,(depth0 != null ? depth0.DataObject : depth0),{\"name\":\"GetValueByDataType\",\"hash\":{},\"data\":data}))\r\n + \"\\r\\n \\r\\n \\r\\n \"\r\n + alias2(alias3(((stack1 = (depth0 != null ? depth0.History : depth0)) != null ? stack1.Comments : stack1), depth0))\r\n + \"\\r\\n \\r\\n \\r\\n \"\r\n + alias2(alias3(((stack1 = (depth0 != null ? depth0.History : depth0)) != null ? stack1.CreateUser : stack1), depth0))\r\n + \"\\r\\n \\r\\n \\r\\n \"\r\n + alias2(alias3(((stack1 = (depth0 != null ? depth0.History : depth0)) != null ? stack1.CreateTmsp : stack1), depth0))\r\n + \"\\r\\n \\r\\n \\r\\n\"\r\n + ((stack1 = helpers['if'].call(depth0,((stack1 = (depths[1] != null ? depths[1].HistoryObj : depths[1])) != null ? stack1.EditMode : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":this.program(2, data, 0, blockParams, depths),\"inverse\":this.program(4, data, 0, blockParams, depths),\"data\":data})) != null ? stack1 : \"\")\r\n + \" \\r\\n \\r\\n\";\r\n},\"2\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1, helper, alias1=this.escapeExpression, alias2=helpers.helperMissing;\r\n\r\n return \" \\r\\n\";\r\n},\"4\":function(depth0,helpers,partials,data) {\r\n return \"  \\r\\n\";\r\n},\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data,blockParams,depths) {\r\n var stack1;\r\n\r\n return \"
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\"\r\n + ((stack1 = helpers.each.call(depth0,(depth0 != null ? depth0.HistoryObj : depth0),{\"name\":\"each\",\"hash\":{},\"fn\":this.program(1, data, 0, blockParams, depths),\"inverse\":this.noop,\"data\":data})) != null ? stack1 : \"\")\r\n + \" \\r\\n
Variable NameValueCommentsUserDate 
\\r\\n
\";\r\n},\"useData\":true,\"useDepths\":true});","var Template_ScheduleGroupGrid = Handlebars.template({\r\n \"1\": function (depth0, helpers, partials, data) {\r\n return \" checked=\\\"checked\\\" \";\r\n },\"compiler\":[6,\">= 2.0.0-beta.1\"],\"main\":function(depth0,helpers,partials,data) {\r\n var stack1, helper, functionType=\"function\", helperMissing=helpers.helperMissing, escapeExpression=this.escapeExpression, buffer = \" \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \"\r\n + escapeExpression(((helper = (helper = helpers.ScheduleCategory || (depth0 != null ? depth0.ScheduleCategory : depth0)) != null ? helper : helperMissing),(typeof helper === functionType ? helper.call(depth0, {\"name\":\"ScheduleCategory\",\"hash\":{},\"data\":data}) : helper)))\r\n + \"\\r\\n \\r\\n \\r\\n Active\\r\\n \\r\\n Pending Only\\r\\n \\r\\n Inactive\\r\\n \\r\\n All\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \";\r\n},\"useData\":true});","\r\n\r\nmodule GUI {\r\n\r\n export class DateTime {\r\n\r\n static date: Date;\r\n \r\n\r\n constructor() {\r\n \r\n }\r\n\r\n\r\n static getTodaysDate(): any { \r\n console.log(moment()); \r\n return moment(moment()).format('MM/DD/YYYY');\r\n }\r\n\r\n static formatDate(dateFormat: Date, format?: string): any { \r\n \r\n if (format == null || format == undefined) {\r\n format = 'MM/DD/YYYY';\r\n }\r\n\r\n return moment(dateFormat).format(format);\r\n\r\n }\r\n\r\n getMonthName(isFullMonthName: boolean): any {\r\n if (isFullMonthName == undefined) {\r\n isFullMonthName = true;\r\n }\r\n\r\n var month = [\r\n ['January', 'Jan'],\r\n ['February', 'Feb'],\r\n ['March', 'Mar'],\r\n ['April', 'Apr'],\r\n ['May', 'May'],\r\n ['June', 'June'],\r\n ['July', 'July'],\r\n ['August', 'Aug'],\r\n ['September', 'Sept'],\r\n ['October', 'Oct'],\r\n ['November', 'Nov'],\r\n ['December', 'Dec'], \r\n ];\r\n }\r\n\r\n static validateYear(yearValue: number): boolean {\r\n return moment().year(yearValue).isValid();\r\n }\r\n\r\n static yearRangeValidator(yearValue): boolean {\r\n var isYearValid = true;\r\n var oldestYear = 1900;\r\n if (yearValue < oldestYear) {\r\n isYearValid = false;\r\n }\r\n var greatestYear = new Date().getFullYear() + 10; // we can increase this year range but 10 seems realistic at this point.\r\n if (yearValue > greatestYear) {\r\n isYearValid = false;\r\n }\r\n return isYearValid;\r\n }\r\n\r\n static dateRangeValidator(startDate: string, endDate: string): boolean {\r\n var isValid = true;\r\n var regExp = /(\\d{1,2})\\/(\\d{1,2})\\/(\\d{2,4})/;\r\n if (parseInt(startDate.replace(regExp, \"$3$2$1\")) > parseInt(endDate.replace(regExp, \"$3$2$1\"))) { \r\n alert('The start date cannot be greater than the end date.');\r\n isValid = false;\r\n } \r\n return isValid;\r\n }\r\n }\r\n\r\n}","module GUI {\r\n export class Mustache {\r\n\r\n static SetupCommonHelpers(): void {\r\n ///This works equally well for selected, ratio and checkbox values.\r\n Handlebars.registerHelper('matchSelected', function (option, value, matchText) {\r\n if (option === value) {\r\n return ' ' + matchText;\r\n } else {\r\n return ''\r\n }\r\n });\r\n\r\n Handlebars.registerHelper('getAttachmentCategoryOptions', function (AttachmentCategories, selectedAttachmentCategoryID) {\r\n var Results = '';\r\n Results += CL.Common.Views.AttachmentCategoryDropDown.GetOptionHTML(AttachmentCategories, selectedAttachmentCategoryID, 0);\r\n\r\n return new Handlebars.SafeString(Results);\r\n });\r\n\r\n }\r\n\r\n static QuickBind(HTMLTemplate: string, Object: any, $container: JQuery, SuccessFunction?: () => any): void {\r\n var _self = this;\r\n var GenericTemplate: HandlebarsTemplateDelegate;\r\n\r\n GenericTemplate = Handlebars.compile(HTMLTemplate);\r\n\r\n $container.html(GenericTemplate(Object));\r\n\r\n if (SuccessFunction) {\r\n SuccessFunction();\r\n }\r\n }\r\n\r\n static quickBindPrecompiled(PrecompiledTemplate: any, Object: any, $container: JQuery, SuccessFunction?: () => any): void {\r\n\r\n $container.html(PrecompiledTemplate(Object));\r\n\r\n if (SuccessFunction) {\r\n SuccessFunction();\r\n }\r\n }\r\n\r\n public static success(successFunction?: () => any) {\r\n if (successFunction) {\r\n successFunction();\r\n } \r\n }\r\n }\r\n} ","\r\nclass Pagination {\r\n\r\n ViewPortID: string;\r\n $viewPort: JQuery;\r\n PageRenderLevel: number = 30;\r\n RowCount: number;\r\n AjaxBaseParameters: IO.AjaxBase;\r\n DataSet: any;\r\n\r\n constructor(viewPortID: string, setRowCount: number) {\r\n this.ViewPortID = viewPortID;\r\n this.$viewPort = $('#' + viewPortID);\r\n this.RowCount = setRowCount;\r\n if (this.RowCount == null) {\r\n this.RowCount = 10;\r\n }\r\n // make some call\r\n }\r\n\r\n getViewPortPosition(topPosition: number): number {\r\n var top: number = this.$viewPort.position().top; // make percentage based\r\n var _self = this;\r\n\r\n if (top > this.PageRenderLevel) {\r\n if (this.AjaxBaseParameters.Success == null) {\r\n this.AjaxBaseParameters.Success = function (data) {\r\n _self.DataSet = data;\r\n console.log('Retrieve set successful.');\r\n };\r\n }\r\n\r\n if (this.AjaxBaseParameters.Error == null) {\r\n this.AjaxBaseParameters.Error = function (data) {\r\n console.log('Failed to retrieve data.');\r\n };\r\n }\r\n\r\n if (this.AjaxBaseParameters.URL == null) {\r\n alert('No API to query');\r\n } else {\r\n this.getPagedDataSet(function (data) {\r\n _self.updateViewPort(data);\r\n });\r\n }\r\n \r\n }\r\n return top;\r\n }\r\n\r\n getPagedDataSet(success: any): any { \r\n var a = new IO.Ajax;\r\n var requestInfo = this.AjaxBaseParameters;\r\n\r\n var settings = {\r\n URL: requestInfo.URL,\r\n Success: requestInfo.Success(),\r\n Error: requestInfo.Error()\r\n };\r\n\r\n a.Get(settings);\r\n }\r\n\r\n updateViewPort(rederedData: any): void { \r\n this.$viewPort.html(rederedData);\r\n }\r\n\r\n\r\n} ","module GUI.Smart {\r\n\r\n export class SmartColumnObject {\r\n title: string;\r\n data: any;\r\n orderable: boolean;\r\n class: string;\r\n defaultContent: string;\r\n render: any;\r\n visible: boolean;\r\n targets: number;\r\n searchable: boolean;\r\n FieldName: string;\r\n isCurrency: boolean; \r\n tooltip: string;\r\n }\r\n\r\n export class SmartObject {\r\n Columns: GUI.Smart.SmartColumnObject[] = new Array < GUI.Smart.SmartColumnObject>();\r\n Values: string[] = new Array(); \r\n }\r\n}\r\n ","module GUI {\r\n export class Sortable {\r\n\r\n DropTargets: string;\r\n DragTarget: string;\r\n ConnectedClass: string;\r\n\r\n $dropTargets: JQuery;\r\n $dragTargets: JQuery;\r\n $listContainer: JQuery;\r\n\r\n\r\n static recalculateOrder(classList: any[], HTMLList: JQuery, sortIndexProp: string, IDProp: string): any[] { \r\n\r\n HTMLList.each(function (index, element) {\r\n var ID: number = $(element).data(IDProp.toLowerCase());\r\n \r\n for (var i = 0; i < classList.length; i++) {\r\n if (classList[i][IDProp] == ID) {\r\n classList[i][sortIndexProp] = +index;\r\n break;\r\n }\r\n }\r\n });\r\n \r\n return this.sortList(classList, sortIndexProp);\r\n }\r\n\r\n static sortList(classList: any[], sortIndexProp: string): any[] {\r\n\r\n var newList: any[] = new Array;\r\n\r\n for (var i = 0; i < classList.length; i++) {\r\n newList[+classList[i][sortIndexProp]] = classList[i];\r\n }\r\n return newList;\r\n }\r\n\r\n connectedLists(): void {\r\n\r\n }\r\n\r\n generateList(HTMLTemplate: HandlebarsTemplateDelegate, dataObject: any): any {\r\n var _self = this;\r\n var HTML = [];\r\n\r\n HTML.push('
    ');\r\n for (var index = 0; index < dataObject[index].length; index++) {\r\n HTML.push('
  • ' + HTMLTemplate +'
  • ');\r\n }\r\n HTML.push('
');\r\n\r\n return this.$listContainer.html(HTML.join(''));\r\n }\r\n\r\n generateNewListTile(tileHTML: string): void {\r\n\r\n }\r\n }\r\n}\r\n\r\n\r\n","module GUI.Tables {\r\n export class Helpers implements ITables {\r\n\r\n data: GUI.Smart.SmartObject = new GUI.Smart.SmartObject;\r\n containerName: string;\r\n $grid: any;\r\n $container: JQuery;\r\n $table: JQuery;\r\n\r\n masterDetailTemplate: (data: any) => any;\r\n\r\n editColumn(targetRow: number): void {\r\n var _self = this;\r\n var Column = new GUI.Smart.SmartColumnObject();\r\n //title: '',\r\n Column.data = null;\r\n Column.orderable = false;\r\n Column.class = 'details-control';\r\n Column.defaultContent = '[view]';\r\n Column.render = function (data, type, row) {\r\n return \"[Edit]\";\r\n }\r\n _self.data.Columns.push(Column);\r\n }\r\n\r\n addCustomColumn(columnName: string, columnNameAsHTML: string, columnDataIndex?: number): any {\r\n var _self = this;\r\n var Column = new GUI.Smart.SmartColumnObject();\r\n //title: '',\r\n Column.data = null;\r\n Column.orderable = false;\r\n Column.class = 'details-control';\r\n Column.defaultContent = '[view]';\r\n Column.render = function (data, type, row) {\r\n return columnNameAsHTML;\r\n }\r\n\r\n _self.data.Columns.push(Column);\r\n }\r\n\r\n clickColumn(columnName?: string, clickCallback?: (rowData) => any): void {\r\n var _self = this;\r\n\r\n $('#' + _self.containerName + ' tbody').on('click', 'tr',(e) => {\r\n if (clickCallback) {\r\n var rowData = _self.$grid.row(e.currentTarget).data();\r\n clickCallback(rowData);\r\n }\r\n });\r\n\r\n }\r\n\r\n openMasterDetail(clickEventName: string, HTML: string) {\r\n var _self = this;\r\n\r\n _self.$container.on('click',(e) => {\r\n var tr = $(e.target).closest('tr');\r\n var row = _self.$grid.row(tr);\r\n\r\n if (row.child.isShown()) {\r\n row.child.hide();\r\n tr.removeClass('ui-icon-triangle-1-n');\r\n } else {\r\n row.child(_self.masterDetailTemplate(row)).show();\r\n tr.addClass('ui-icon-triangle-1-s');\r\n }\r\n });\r\n\r\n // TODO \r\n\r\n // finish master detail method\r\n }\r\n\r\n //hasURL(URL: string): void {\r\n // var _self = this;\r\n // if (URL != null) {\r\n // $.get(URL).done(function (data) {\r\n // _self.data.Values = data.Values;\r\n // _self.data.Columns = data.Columns;\r\n // }).then(function () {\r\n // _self.buildTable();\r\n // });\r\n // } else {\r\n // _self.buildTable();\r\n // }\r\n //}\r\n\r\n //rebindTable(newData): void {\r\n // this.$table.remove();\r\n // this.data = newData;\r\n // this.buildTable();\r\n //}\r\n }\r\n} ",null,"module GUI.Tables {\r\n\r\n export class Settings2 {\r\n\r\n // remove the number 2 from \"Settings2\" when deleting out the settings class inside the Tables.ts\r\n \r\n createdRow: (row: any, data: any, index: any) => void = function (r, d, i) { if (r && d && i == null) { return null } };\r\n colDefCollection: ColumnDefinitions[] = new Array();\r\n colDef: ColumnDefinitions = new ColumnDefinitions;\r\n newColDef: ColumnDefinitions[] = new Array();\r\n colHeaderCollection: GUI.Smart.SmartColumnObject[] = new Array();\r\n colHeader: GUI.Smart.SmartColumnObject = new GUI.Smart.SmartColumnObject;\r\n stateSave: boolean = true;\r\n globalFilter: boolean = true;\r\n paging: boolean = true;\r\n }\r\n\r\n}","/// \r\n// CHSI DataTables (Tables)\r\nmodule GUI.Tables {\r\n\r\n export class TableEvents {\r\n eventName: string;\r\n eventAction: () => any;\r\n }\r\n\r\n export class ColumnDefinitions implements DataTables.ColumnDefsSettings {\r\n targets: any;\r\n aTargets: any;\r\n }\r\n\r\n export class Settings {\r\n createdRow: (row: any, data: any, index: any) => void = function (r, d, i) { if (r && d && i == null) { return null } };\r\n\r\n colDefCollection: any[];\r\n colDef: ColumnDefinitions = new ColumnDefinitions;\r\n newColDef: ColumnDefinitions[] = new Array();\r\n colHeaderCollection: GUI.Smart.SmartColumnObject[] = new Array();\r\n colHeader: GUI.Smart.SmartColumnObject = new GUI.Smart.SmartColumnObject;\r\n stateSave: boolean = true;\r\n globalFilter: boolean = true;\r\n paging: boolean = true;\r\n displayLength: number = 25;\r\n bFilter: boolean = true;\r\n showEntryDropDown: boolean = true;\r\n defaultSortColumn: any[];\r\n constructor() { }\r\n }\r\n\r\n\r\n\r\n export class DTables {\r\n\r\n URL: string;\r\n $grid: any;\r\n tableName: string;\r\n containerName: string;\r\n topSearch: boolean;\r\n columnSearch: boolean;\r\n data: GUI.Smart.SmartObject = new GUI.Smart.SmartObject;\r\n width: string = '100%';\r\n stateSave: boolean;\r\n masterDetailTemplate: (data: any) => any;\r\n tableEvents: TableEvents[] = new Array();\r\n\r\n private _$container: JQuery = $('#' + this.containerName);\r\n get $container(): JQuery {\r\n return $('#' + this.containerName);\r\n }\r\n set $container(containerName: JQuery) {\r\n this._$container = $('#' + this.containerName);\r\n }\r\n private _$table: JQuery = $('#' + this.tableName);\r\n get $table(): JQuery { return $('#' + this.tableName); }\r\n set $table(tableName: JQuery) {\r\n this._$table = $('#' + this.tableName);\r\n }\r\n private _dtObject: GUI.Tables.Settings = new GUI.Tables.Settings;\r\n get dtObject(): GUI.Tables.Settings {\r\n return this._dtObject;\r\n }\r\n set dtObject(dto: GUI.Tables.Settings) {\r\n this._dtObject = dto;\r\n }\r\n\r\n\r\n\r\n constructor() { }\r\n\r\n private addTableEvent(eventName: string, eventAction: any): void {\r\n this.tableEvents.push({ eventName, eventAction });\r\n }\r\n\r\n private executeTableEvents(eventName?: string): void {\r\n var _self = this;\r\n for (var i = 0; i < _self.tableEvents.length; i++) {\r\n _self.tableEvents[i].eventAction();\r\n }\r\n }\r\n\r\n editColumn(targetRow: number): void {\r\n var _self = this;\r\n\r\n //_self.addTableEvent('editColumn_' + targetRow, function () {\r\n var Column = new GUI.Smart.SmartColumnObject();\r\n //title: '',\r\n Column.data = null;\r\n Column.orderable = false;\r\n Column.class = 'details-control';\r\n Column.defaultContent = '[view]';\r\n Column.render = function (data, type, row) {\r\n return \"[Edit]\";\r\n }\r\n _self.data.Columns.push(Column);\r\n //});\r\n //_self.executeTableEvents('editColumn_' + targetRow);\r\n }\r\n\r\n addCustomColumn(columnName: string, columnNameAsHTML: string, columnDataIndex?: number): any {\r\n var _self = this;\r\n\r\n //_self.addTableEvent(columnName, function () {\r\n var Column = new GUI.Smart.SmartColumnObject();\r\n //title: '',\r\n Column.data = null;\r\n Column.orderable = false;\r\n Column.class = 'details-control';\r\n Column.defaultContent = '[view]';\r\n Column.render = function (data, type, row) {\r\n return columnNameAsHTML;\r\n }\r\n _self.data.Columns.push(Column);\r\n //});\r\n\r\n //_self.executeTableEvents(columnName);\r\n }\r\n\r\n clickColumn(columnName?: string, clickCallback?: (rowData) => any): void {\r\n var _self = this;\r\n\r\n //_self.addTableEvent(columnName, function () {\r\n $('#' + _self.containerName + ' tbody').on('click', 'tr', (e) => {\r\n if (clickCallback) {\r\n var rowData = _self.$grid.row(e.currentTarget).data();\r\n clickCallback(rowData);\r\n }\r\n });\r\n //});\r\n\r\n //_self.executeTableEvents(columnName);\r\n }\r\n\r\n openMasterDetail(clickEventName: string, HTML: string) {\r\n var _self = this;\r\n\r\n //_self.addTableEvent(clickEventName, function () {\r\n _self.$container.on('click', (e) => {\r\n var tr = $(e.target).closest('tr');\r\n var row = _self.$grid.row(tr);\r\n\r\n if (row.child.isShown()) {\r\n row.child.hide();\r\n tr.removeClass('ui-icon-triangle-1-n');\r\n } else {\r\n row.child(_self.masterDetailTemplate(row)).show();\r\n tr.addClass('ui-icon-triangle-1-s');\r\n }\r\n });\r\n //});\r\n\r\n //_self.executeTableEvents(clickEventName);\r\n }\r\n\r\n hasURL(URL: string): void {\r\n var _self = this;\r\n if (URL != null) {\r\n $.get(URL).done(function (data) {\r\n _self.data.Values = data.Values;\r\n _self.data.Columns = data.Columns;\r\n }).then(function () {\r\n _self.buildTable();\r\n });\r\n } else {\r\n _self.buildTable();\r\n }\r\n }\r\n\r\n reponses(responseCode: number): string {\r\n var _self = this;\r\n var response: string;\r\n switch (responseCode) {\r\n case 1:\r\n response = 'No results found.';\r\n break;\r\n case 2:\r\n break;\r\n case 3:\r\n break;\r\n case 4:\r\n break;\r\n case 5:\r\n break;\r\n default:\r\n\r\n }\r\n return response;\r\n }\r\n\r\n refreshTable(newData?: any, preExecutionCallback?: () => any, successFunction?: () => any): void {\r\n this.$table.remove();\r\n if (newData) {\r\n this.data = newData;\r\n }\r\n if (preExecutionCallback) {\r\n preExecutionCallback();\r\n }\r\n this.buildTable(function () {\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n });\r\n }\r\n\r\n newTable(): void {\r\n this.$table.remove();\r\n this.data = new GUI.Smart.SmartObject;\r\n this.buildTable();\r\n }\r\n\r\n buildTable(successFunction?: () => any): any {\r\n var _self = this;\r\n\r\n this.$container.html('
');\r\n\r\n if (!this.dtObject.colDef) {\r\n this.dtObject.colDef = null;\r\n }\r\n\r\n if (this.URL != null) {\r\n $.get(_self.URL).done(function (data) {\r\n _self.data = data;\r\n }).then(function () {\r\n beginBuildingTable();\r\n });\r\n } else {\r\n beginBuildingTable();\r\n }\r\n\r\n function beginBuildingTable() {\r\n if (_self.data != null || _self.data != undefined) {\r\n if (_self.data.Values != null || _self.data.Values != undefined) {\r\n if (_self.data.Values.length > 0) {\r\n _self.topSearch = _self.columnSearch ? false : true;\r\n\r\n _self.$grid = _self.$table.DataTable({\r\n data: _self.data.Values,\r\n columns: _self.data.Columns,\r\n columnDefs: _self.dtObject.colDefCollection,\r\n createdRow: function (row, data, index) {\r\n _self.dtObject.createdRow(row, data, index);\r\n },\r\n stateSave: _self.stateSave,\r\n searching: _self.columnSearch,\r\n paging: _self.dtObject.paging,\r\n pageLength: _self.dtObject.displayLength,\r\n order: _self.dtObject.defaultSortColumn,\r\n lengthChange: _self.dtObject.showEntryDropDown,\r\n dom: '<\"H\"l' + (_self.topSearch ? 'f' : '<\"dataTables_filter\">') + 'r>t<\"F\"ip>'\r\n\r\n // If you include a new property to data tables please update the \"Settings\" object within this page.\r\n });\r\n //Richard: commented this out to at least not error\r\n // _self.$grid = _self.$grid._('#' + _self.tableName);\r\n if (_self.columnSearch && !_self.topSearch) {\r\n // $('.dataTables_filter').html('Advanced Search');\r\n\r\n //build the footer search fields\r\n var HTML;\r\n var Columns = _self.data.Columns;\r\n\r\n for (var n = 0; n < Columns.length; n++) {\r\n if (_self.data.Columns[n].visible) {\r\n HTML += '';\r\n } else if (_self.data.Columns[n].title == '') {\r\n HTML += ' ';\r\n }\r\n }\r\n\r\n _self.$table.children('tfoot').html(HTML);\r\n $('#' + _self.tableName + '_wrapper').append('');\r\n\r\n _self.$grid.columns().eq(0).each(function (colIdx) {\r\n console.log('binding columns');\r\n $('input', _self.$grid.column(colIdx).footer()).on('keyup change', function () {\r\n\r\n var dataindex = $(this).data().columnindex;\r\n console.log('searching - ' + dataindex + ' for ' + this.value);\r\n _self.$grid.column(dataindex).search(this.value).draw();\r\n });\r\n });\r\n\r\n $('#' + _self.tableName + '_SearchLink').on('click', function () {\r\n $('#pageWrapper').scrollTop($('#AdvancedSearch').offset().top);\r\n });\r\n }\r\n } else {\r\n _self.$table.html('No results found.');\r\n }\r\n } else {\r\n _self.$table.html('An error occurred. Values is null.');\r\n }\r\n } else {\r\n _self.$table.html('An error occurred. No Data was received.');\r\n }\r\n\r\n if (successFunction) {\r\n successFunction();\r\n }\r\n }\r\n }\r\n\r\n\r\n\r\n }\r\n}",null,"\r\n// DO NOT ADD OR MAINTAIN THIS CLASS. See \"GUI.Windows.Popups\" for newer ShowPopup methods. \r\n\r\nmodule GUI.Utilities {\r\n export class Helpers {\r\n\r\n\r\n\r\n static ShowPopup(WindowID?: any, WinURL?: any, WinTitle?: any, width?: any, height?: any, CloseFunction?: any, ismodal?: any, isWindowLocked?: any, ShowHelp?: any, SuccessFunction?: any, panelContent?: any) {\r\n ShowPopup(WindowID, WinURL, WinTitle, width, height, CloseFunction, ismodal, isWindowLocked, ShowHelp, SuccessFunction, panelContent);\r\n }\r\n\r\n static closeThis(closeFunction) {\r\n closeThis(closeFunction);\r\n }\r\n\r\n static ShowInlinePopup(WindowID?: any, panelcontent?: any, WinTitle?: any, width?: any, height?: any, CloseFunction?: any, ismodal?: any) {\r\n ShowInlinePopup(WindowID, panelcontent, WinTitle, width, height, CloseFunction, ismodal);\r\n }\r\n\r\n static orderParentChildHierarchy(Object: any[], ParentChildPattern?: any): any[] {\r\n var orderedArray = [];\r\n var currentParentID = null;\r\n var iIndex = 0;\r\n var eIndex = 0;\r\n\r\n if (ParentChildPattern) {\r\n // update this to support any parent child structure\r\n }\r\n\r\n while (iIndex < Object.length) {\r\n\r\n // check if this is a parent item\r\n if (Object[iIndex].ParentID == 0 || Object[iIndex].ParentID == null) {\r\n // add to ordered array if it is\r\n orderedArray.push(Object[iIndex]);\r\n // set the current parentid \r\n currentParentID = Object[iIndex].Id;\r\n // remove from object array\r\n Object.splice(iIndex, 1); \r\n // check for children\r\n checkForChildElement(currentParentID, true);\r\n }\r\n iIndex++;\r\n }\r\n\r\n function checkForChildElement(ParentID: number, resetIndex?: boolean) {\r\n\r\n if (resetIndex) {\r\n eIndex = 0;\r\n }\r\n\r\n while (eIndex < Object.length) {\r\n\r\n if (ParentID == Object[eIndex].ParentID) {\r\n // add the child element right after it's parent\r\n orderedArray.push(Object[eIndex]);\r\n // set the current parentid as the child element, as we are going to check to see if the child has any children of it's own\r\n currentParentID = Object[eIndex].Id;\r\n // remove child element from the array\r\n Object.splice(eIndex, 1);\r\n // check currently select child element as a parent to see if it has children of it's own\r\n checkForChildElement(currentParentID, true);\r\n // reset iIndex back to 0\r\n iIndex = 0;\r\n }\r\n eIndex++;\r\n }\r\n iIndex = 0;\r\n }\r\n return orderedArray;\r\n }\r\n\r\n static generateHTMLList(obj: any[]): string {\r\n var currentParentID = null;\r\n var HTML: string[] = new Array();\r\n HTML.push('