{"version":3,"file":"main.d8b358614b67cde2.js","mappings":"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","names":["SearchFilterNumberSearchTypesEnum","ArchiveNumberContains","ArchiveNumberExactText","ArchiveAdvancedSearchService","BaseService","constructor","http","super","this","previousUrl","isBusy","baseURL","BERRY","hostName","getDocumentsConfidentialities","get","GetCanCreateArchivePermissions","GetArchives","filter","url","me","post","pipe","map","extractStringData","catchError","handleError","ClearArchiveRecentlyViewed","extractData","GetArchivesFolders","GetArchivesTags","GetArchiveClassifications","GetArchiveAllTypes","DoPost","Url","Params","res","JSON","parse","error","errMsg","message","status","statusText","console","throwError","static","t","i0","i1","_angular_core__WEBPACK_IMPORTED_MODULE_5__","Yz7","factory","ɵfac","$event","_r12","ctx_r11","fromDateSelected","ctx_r13","fromYearSelected","ctx_r14","onFromDateChanged","ctx_r15","applyFilters_click","ctx_r1","getText","datePickerOptions","_r18","ctx_r17","_r16","ctx_r19","setDate","value","ctx_r2","minSearchYear","maxSearchYear","_r22","ctx_r21","toDateSelected","ctx_r23","toYearSelected","ctx_r24","onToDateChanged","ctx_r25","ctx_r3","_r28","ctx_r27","_r26","ctx_r29","ctx_r4","ctx_r6","getSiteRootPath","_r37","entity_r31","$implicit","ctx_r35","SelectItem","Id","att_r40","_r43","ndx_r32","index","ctx_r42","SelectArchiveAttachment","i_r41","ctx_r39","ArchivesAttachmentQuery","AttachmentTitle","QuickSearchComponent_ng_container_45_div_2_div_6_div_1_Template","Attachments","QuickSearchComponent_ng_container_45_div_2_div_3_Template","QuickSearchComponent_ng_container_45_div_2_div_6_Template","ctx_r30","LinkWithPresentationMemoSummary","length","QuickSearchComponent_ng_container_45_div_2_Template","ctx_r7","Searchentities","_c3","PageSize","SelectedPage","total","qeurry_r48","_r50","ctx_r49","deletArchive","Title","QuickSearchComponent_ng_container_50_div_5_Template","ctx_r8","ArchivesQeury","_r53","ctx_r52","deletArchiveAttachment","ctx_r51","QuickSearchComponent_ng_container_51_div_5_Template","ctx_r9","QuickSearchComponent","BaseCmp","ngOnDestroy","isSubscribed","toastr","generalSettingSvc","zone","ref","svc","dialogs","dateHelper","DateFilterValue","validateFn","EventEmitter","addItemsFn","closePopupFn","quickSearchArchivePopupOptions","actions","text","type","event","ReturnQurey","closePopup","mode","dirtyFormCheck","startPartSize","linkWithPresentationMemoSummary","_minSearchYear","_maxSearchYear","start","archives","DateFilterOption","isByDate","dateFormat","appSettings","formats","defaultDatePickerFormatJs","isValidDateToSearch","isValidYearToSearch","ngSuperOnInit","getMinMaxYear","ngSuperAfterViewInit","val","QuickSearch","quickSearchArchivePopup","open","generalSettings","Array","SettingKey","SettingGroup","GetValues","takeWhile","subscribe","response","maxDatesObjString","maxDatesObj","minDatesObjString","x","Value","minDatesObj","ToFormattedCalendarDateString","Date","moment","add","primaryCalendar","CalendarTypeEnum","UMALQURA","MinHigriValue","toString","MaxHigriValue","GREGORIAN","MinGregorianValue","MaxGregorianValue","entity","button","document","getElementById","div","undefined","disabled","setAttribute","a","emit","attachment","archiveIndex","validateSuccess","push","addstyle","validateError","errorMsg","isAlert","archiveId","h4","createElement","span","createTextNode","appendChild","AllItemsAddedSuccessfully","enableTostar","success","loc","common","successMessage","close","detectChanges","AllItemsAddError","create","dialog","options","ConfirmationBoxOptions","ConfirmationBoxType","Danger","show","getArchives","searchDto","TextSearchType","isNaN","SearchFilterTextSearchTypes","resp","run","data","Count","List","setTimeout","forEach","q","doSearch","checkIfFromBeforeToDate","warning","collectParams","ArchiveSearchDto","SearchText","ArchiveNumber","SearchNumber","Importance","ImportanceTypes","None","OnlyArchivesHaveAttachments","ExecludedArchivesIds","LastViewedDate","DateFilters","All","LockedByType","SearchFilterLocked","OrderBy","SearchFilterOrderTypes","CreationDate","SearchByRegexExact","FromDate","ToDate","getMinDateBasedOnYearAndUserCalendar","getMaxDateBasedOnYearAndUserCalendar","Range","IsQuickSearch","qeurry","qeurryIndex","indexOf","splice","removeAttribute","getPage","PageNumber","searchTextPresss","keyCode","Reset","clearQuery","YearPropertyName","year","$","calendarsPicker","YearFrom","writeValue","ToYear","e","selectedDate","parseCDate","date","_day","slice","_month","_year","changeFilterDatesValuesBySelectedDateCriteria","resetYearsFields","resetDatesFields","i2","i3","i4","i5","_angular_core__WEBPACK_IMPORTED_MODULE_8__","Xpm","selectors","viewQuery","rf","ctx","DatePicker","generalSettingsSvc","decls","vars","consts","template","QuickSearchComponent_div_35_Template","QuickSearchComponent_div_36_Template","QuickSearchComponent_div_38_Template","QuickSearchComponent_div_39_Template","QuickSearchComponent_div_43_Template","QuickSearchComponent_div_44_Template","QuickSearchComponent_ng_container_45_Template","QuickSearchComponent_ng_container_50_Template","QuickSearchComponent_ng_container_51_Template","CommaSeparatedNumberPipe","transform","sep","toLocaleString","parts","split","replace","join","core","Yjl","pure","ctx_r10","Total","ArchivesListComponent_div_0_div_1_span_1_Template","ExternalContact","ExternalContactName","Entity","EntityName","item_r11","LockedByUserId","Important","ctx_r16","ctx_r18","ctx_r20","gotoArchiveItem","ArchivesListComponent_div_0_div_5_div_20_Template","ArchivesListComponent_div_0_div_5_div_21_Template","ctx_r28","ArchivesListComponent_div_0_div_5_div_37_Template","ArchivesListComponent_div_0_div_5_span_46_Template","ArchivesListComponent_div_0_div_5_span_47_Template","ArchivesListComponent_div_0_div_5_span_49_Template","ArchivesListComponent_div_0_div_5_span_50_Template","ArchivesListComponent_div_0_div_5_span_52_Template","ArchivesListComponent_div_0_div_5_span_53_Template","openAttachments","ChangeArchiveFavorite","ctx_r31","openViewFinalRecordPopup","CreatedByUserId","lang","ArchiveClassifications","TextAr","TextEn","LongInDateUi","CreatedByUser","ShortName","_c4","ArchiveType","getIcon","ConfidentialityId","getConfidentialityText","IsCanceled","IsPublished","AttachmentsCount","IsFavorite","_r35","ctx_r34","openAttachmentDialog","ctx_r32","ndx_r37","list_r36","groupName","restoredCtx","_r54","attachment_r44","ndx_r45","ctx_r53","selectedAttachmentId","RelatedAttachmentID","selectAttachment_click","MimeType","DmsFileId","Extension","IsSetAsFinalForm","IsSetAsDraftForm","ArchivesListComponent_div_0_div_7_div_12_div_6_ul_2_i_2_Template","ArchivesListComponent_div_0_div_7_div_12_div_6_ul_2_i_3_Template","ArchivesListComponent_div_0_div_7_div_12_div_6_ul_2_i_4_Template","ArchivesListComponent_div_0_div_7_div_12_div_6_ul_2_i_5_Template","ArchivesListComponent_div_0_div_7_div_12_div_6_ul_2_i_6_Template","ArchivesListComponent_div_0_div_7_div_12_div_6_ul_2_i_7_Template","ArchivesListComponent_div_0_div_7_div_12_div_6_ul_2_i_8_Template","UploadDateStr","ArchivesListComponent_div_0_div_7_div_12_div_6_ul_2_Template","attachments","_r57","ctx_r56","ChangeToggleDisplayCssMouseUp","ArchivesListComponent_div_0_div_7_div_12_span_4_Template","ArchivesListComponent_div_0_div_7_div_12_span_5_Template","ArchivesListComponent_div_0_div_7_div_12_div_6_Template","IsEmpty","ArchivesListComponent_div_0_div_7_a_5_Template","_r59","ctx_r58","closeAttachments","ArchivesListComponent_div_0_div_7_div_12_Template","EnableToAddAttachments","dto","_r62","ctx_r61","ArchivesListComponent_div_0_div_16_pagination_controls_1_Template","Records","ArchivesListComponent_div_0_div_1_Template","ArchivesListComponent_div_0_div_5_Template","ArchivesListComponent_div_0_div_7_Template","_r64","ctx_r63","IsPopUpClosed","ctx_r65","CheckAddedAttachmentArchive","ctx_r66","selectedArchiveID","ctx_r67","pdf","ArchivesListComponent_div_0_div_15_Template","ArchivesListComponent_div_0_div_16_Template","ctx_r0","HideTopPagination","_c5","IsAttachmentsOpened","_c6","SelectedPageChild","previewPopupOption","selectedAttachmentName","selectedAttachmentExtension","IsBusy","ctx_r68","singleRecord","ctx_r69","ctx_r70","ctx_r71","ctx_r72","ctx_r73","ctx_r74","_r76","ctx_r75","ArchivesListComponent_div_1_div_35_Template","ArchivesListComponent_div_1_span_44_Template","ArchivesListComponent_div_1_span_45_Template","ArchivesListComponent_div_1_span_47_Template","ArchivesListComponent_div_1_span_48_Template","ArchivesListComponent_div_1_span_50_Template","ArchivesListComponent_div_1_span_51_Template","ArchivesListComponent","bOEArchive","onOffFeatures","boeArchive","hideCorrespondenceImportance","keys","HideCorrespondenceImportance","canOpenCorrsInNewTab","hideArchiveImage","HideArchiveImage","hideTopPagination","IsSingleArchive","isSingleArchive","selectedPageChild","records","_total","TotalPages","smallerThanOne","_pages","Math","ceil","SingleRecord","toggleAdditionalFilters","hideAdditionalFilters","router","flowPaperBridgeService","_archiveItemSVC","detailsAttachmentSVC","webTwainSVC","detailsHeaderService","_dialogs","changeDetector","LookupHelpers","notifyPage","isClassificationCollapsed","bookedForReviewCollapsed","recentlySeenCollapsed","releaseDateCollapsed","model","height","LookupConfidentialitiesCss","previewAttachment","window","angularComponentRefAttachment","component","init","prviewTemplatesFlexViewer","IframeId","GetShowHideFlexPaperToolBars","showAnnotations","ShowFlexPaperAnnotations","SignatureBtn","StampBtn","NoteBtn","DeleteBtn","ShowAnnotationsBtn","DrawBtn","StrikeoutBtn","showFlexPaperTopBarActions","ShowFlexPaperTopBarActions","FitPageBtn","FitWidthBtn","FullScreenBtn","HandDragCursorBtn","NavigatePagesBtn","SelectTextBtn","SinglePagePortraitBtn","TileThumbsBtn","TwoPageBtn","ZoomFactorBtn","ZoomSliderBtn","ID","EXT","TITLE","showHideConfigs","AttachmentExtension","AttachmentID","previewPopup","vSetFrameSource","detailsAttachmentService","AttachmentParentID","getEditServiceURL","getURL","relatedType","RelatedTypeEnum","Archive","attachmentAdd","vShowModel","AttachmentTypesEnum","ArchiveAttachments","AppModulesEnum","Documents","item","Item","CheckIfUserCanAddAttachmentsToDocuments","GetArchiveAttachments","Data","each","removeClass","target","closest","addClass","navigate","page","id","archive","find","archiving","RemovefromFavorites","correspondence","FollowUp","modalTitle","btnOk","btnCancel","result","ConfirmationBoxResult","Yes","changeFavorite","sessionStorage","setItem","SelectedArciveId","getLastAttachmentForDocumentsGroup","Module","getAttachmentAnnotations","Warning","NoFinalDocumentToReview","Annotations","setMarksOnPreviewer","ndx","elmToggle","hasClass","getCount","NewAttachment","attachmentTitle","mimeType","dmsId","extension","relativePath","isSetAsFinalRecored","isCorrespondenceRecored","selectAttachment","attachmentId","isFirst","isSetAsFinalForm","isSetAsDraftForm","SelectedAttachment","selectedAttachmentTitle","selectedDmsId","selectedAttachmentMimeType","selectedAttachmentRelativePath","LookupDocumentConfidentialities","Confid","Text","i6","i7","i8","i9","ArchivesListComponent_div_0_Template","ArchivesListComponent_div_1_Template","ArchiveContains","NumberSearchType","ByMe","ByOthers","NoFilters","Today","Yesterday","LastWeek","LastMonth","IssuingDate","Relevance","ArchiveTitle","ArchiveDate","NotImportant","ConfidentialityIdEnum","NonConfidential","Confidential","VeryConfidential","TopConfidential","Level4","Level5","Level6","Level7","Level8","Level9","ArchiveStartsWith","ArchiveTextEqual","ArchiveExactText","ArchiveItemSVC","SystemModules","GetAllDeletedItems","Kw","GetRelateContact","ArchiveId","GetAllArchiveFieldValues","RestoreDeletedItems","SelectedIds","ArchiveID","DeleteRelatedContact","ArchiveRelatedContactId","SaveRelatedContact","IdContact","getArchiveSettings","_angular_core__WEBPACK_IMPORTED_MODULE_4__","ArchivesListModule","_angular_core__WEBPACK_IMPORTED_MODULE_3__","oAB","cJS","DetailsHeaderService","imports","SharedModule","ArchivesQuickSearchModule","_angular_core__WEBPACK_IMPORTED_MODULE_11__","YearPickerModule","i10","i11","ArchiveHeaderData","getArchiveDetailsHeader","ChangeArchiveLock","GetArchiveAttachmentswithoutGroups","_r5","openNewModal","tooltipAddButton","iconClass","_r7","onControlBlur","contact","contactText","setControlFocus","keydownEnter","ContactsBox_div_2_span_3_Template","dataAutomationId","isPreviewMode","comboboxOptions","placeholder","showAddButton","ContactsBox","ContactsSelectorBase","compOptions","_contact","contactChange","msgs","currentControl","contactsBox","canAddNewContact","_canAddNewContact","addContactWhenNotFound","vSetOptions","inputBlur","next","addContact","_contactText","_text","el","createExternalContact","IsProclamee","onAddClicked","newcontactforLazyLoaded","isAutocomplete","AllowFreetext","internalAddModal","newContact","DisplayName","DisplayNameAr","DisplayNameEn","Type","ContactItemTypeEnum","Organization","NationalIdentitiy","HasPhoto","DefaultEmail","CreateExternalContact","Individual","useInstance","jQuery","contactCombobox","nativeElement","dataSource","_data","combobox","onClosePopup","contactsBoxForm","trim","name","isNumber","Number","number","searchFor","ContactsSearchForEnum","Individuals","outlets","modal","queryParams","IndvName","OrgId","organizationID","skipLocationChange","Organizations","OrgName","CreateExterenlConact","vSetOrganizationId","vSetOptionalParams","isLazyLoaded","clear","ngOnInit","kendoCombobox","ContactsBox_div_2_Template","ContactsBox_div_3_Template","bindTemplate","Position","toLowerCase","organizationLink","internalSearch","externalSearch","committeeId","individualClassification","serverDatasource","enabled","searchField","method","dataTextField","dataValueField","autoBind","allowFreeText","autocomplete","multiselect","isMultiselect","displayTemplate","noDataAdditionalTemplate","obj","instance","$btn","btnAddPersonText","kendoLocalization","AddPerson","click","AddEntity","additionalParams","elements","getElementsByClassName","i","style","display","_angular_core__WEBPACK_IMPORTED_MODULE_1__","lG2","inputs","ContactAuthInfoEditModule","ContactAuthInfoEditCmp","userName","individualEmail","includes","domainName","fullDomainName","service","_toastr","individualEmailModelOption","saveIndividualEmail","isOperationsOfficersTab","IndividualId","onCancel","onSave","validateForm","isEdit","supportedAllowedDomains","GetValue","allowedDomains","domainsAllowedActive","IsChecked","AllowedDomains","showModel","individualId","IndividualEmail","externalEmail","checkEmailIndividualExistOnUserOrIndv","individualEmailModel","err","errorMessage","cancelIndividualEmailModel","validateIndividualEmail","pop","saveEmailIndividual","match","ContactsHelpers","EMAIL_REGEX","ContactAuthInfoEditCmp_div_3_Template","ContactAuthInfoEditCmp_div_4_Template","ContactAuthInfoEditCmp_div_14_Template","ShowDesign","UserImagePath","defaultComboBoxServerDatasourceOptions","defaultComboBoxServerSearchDatasourceOptions","defaultAutocompleteOptions","defaultDropdownlistOptions","allowSearch","defaultCountriesAutocompleteOptions","Object","assign","defaultStatesAutocompleteOptions","defaultCitiesAutocompleteOptions","defaultExactCitiesAutocompleteOptions","SHOW_IND_QUICK_ENTRY_MESSAGE","SHOW_ORG_QUICK_ENTRY_MESSAGE","MOBILE_REGEX","FAX_REGEX","PHONE_REGEX","PHONE_EXT_REGEX","WEB_REGEX","IPAddress_REGEX","RegExp","confirmDeletion","mgr","msg","confirmed","checkRegEx","regexPattern","defaultRegex","validationMessageKey","defaultValidationMessageKey","regex","IndividualAuthenticationAccessDto","FullName","IsLoginUser","IndividualUserName","IsExternalUser","EntityId","CurrentTemplateRoleID","PrevTemplateRoleID","ScheduleTemplateId","ScheduleTeamTypeId","stillAsExternalInCreation","AuthenticationReasonEnum","Schedule","Committee","ScheduleTemplate","IndividualAuthenticationAccessSvc","createNewIndividualAccess","newAccess","confirmEmailIndividualAccess","confirmAllEmailIndividualAccess","generateExternalUsersInformation","ExportPasswords","memberId","_angular_core__WEBPACK_IMPORTED_MODULE_2__","_r24","visibleFileds","affixes","savePopover","_r27","ctx_r26","extraAffixes","_r30","Ar","ctx_r5","arLangPrefixAutocompleteOptions","_r33","_r38","ctx_r37","PositionArId","PositionAr","ctx_r40","IsHrSynced","arPositionAutocompleteOptions","_r42","ctx_r41","PositionEnId","ctx_r43","PositionEn","ctx_r44","ctx_r36","enPositionAutocompleteOptions","IndividualQuickEntryCmp_div_99_div_7_Template","IndividualQuickEntryCmp_div_99_div_8_Template","isEn","_r46","ctx_r45","_r48","ctx_r47","arLangSuffixAutocompleteOptions","ctx_r54","ctx_r12","IndividualQuickEntryCmp_div_139_label_4_Template","PhoneNumber","positionFieldEnabled","Email","ctx_r60","clearError","Fax","_r66","Landline","_r68","Religion","religionComboBoxOptions","religionTypes","Islam","Others","_r70","Notes","_r78","ctx_r77","En","ctx_r79","en","enLangPrefixAutocompleteOptions","_r81","ctx_r80","ctx_r82","_r84","ctx_r83","_r86","ctx_r85","_r88","ctx_r87","ctx_r89","enLangSuffixAutocompleteOptions","_r91","ctx_r90","ctx_r92","ctx_r76","IndividualQuickEntryCmp_div_146_div_1_Template","IndividualQuickEntryCmp_div_146_div_2_Template","_r94","ctx_r93","ctx_r95","ctx_r96","IndividualQuickEntryCmp_div_146_div_21_Template","IndividualQuickEntryCmp_div_146_div_22_Template","ctx_r97","IndividualQuickEntryCmp_div_146_div_29_Template","IndividualQuickEntryCmp_div_146_div_30_Template","extraNames","_r99","ctx_r98","saveAction","saveActions","Close","ctx_r100","Details","ctx_r101","New","IndividualQuickEntryCmp","route","sanitizer","localSt","toaster","lookuphelpers","helpers","urlChanged","_positionFieldEnabled","clientName","genderTypes","GenderEnum","SaveActionEnum","ReligionEnum","maxDate","popopOption","bind","save","title","onClose","ar","individualInfo","IndividualValidationModel","IndividualEntryModel","selectedCountry","isViewChild","isProclamee","isHistoryBack","duplicatePersonPopUpOptions","doSubmit","scrollOffset","onIndividualCreate","arPrefixAutocompleteOptions","freeTextMaxLength","arSuffixAutocompleteOptions","enPrefixAutocompleteOptions","enSuffixAutocompleteOptions","nationalityAutocompleteOptions","IndividualQuickEntryFields","documentElement","scrollTop","otherlang","showRecPopup","duplicatePersonPopUp","routerState","root","reset","ParentId","individualName","_isProclamee","setParentAndNameForIndividule","scroll","body","kendoPopup","saveDefaultOrganization","names","n","finalnames","FirstNameEn","SecondNameEn","ThirdNameEn","FourthNameEn","FifthNameEn","LastNameEn","FirstNameAr","SecondNameAr","ThirdNameAr","FourthNameAr","FifthNameAr","LastNameAr","_modalView","showfromLazyLoadedModel","onEndPromise","reject","history","back","errors","contacts","NationalityCountryId","DefaultCountryId","field","currentTarget","checked","store","PrefixAr","Prefix2Ar","SuffixAr","Suffix2Ar","PrefixArId","Prefix2ArId","SuffixArId","Suffix2ArId","PrefixEn","Prefix2En","SuffixEn","Suffix2En","PrefixEnId","Prefix2EnId","SuffixEnId","Suffix2EnId","phone","email","notes","religion","fax","nationality","land_lines","fillIndividualInfo","validate","checkDuplicationIndividualInfo","individuaFulllName","Name","createIndividual","ExceptionMessage","publish","resolve","saveDefaultIndividualPosition","o","navigateByUrl","MobileValidationRegex","MobileValidationMessage","FaxValidationRegex","FaxValidationMessage","PhoneValidationRegex","PhoneValidationMessage","_angular_core__WEBPACK_IMPORTED_MODULE_7__","IndividualQuickEntryCmp_span_12_Template","IndividualQuickEntryCmp_span_13_Template","IndividualQuickEntryCmp_li_21_Template","IndividualQuickEntryCmp_li_22_Template","Gender","Male","Female","IndividualQuickEntryCmp_div_97_Template","IndividualQuickEntryCmp_div_98_Template","IndividualQuickEntryCmp_div_99_Template","IndividualQuickEntryCmp_div_121_Template","IndividualQuickEntryCmp_div_122_Template","IndividualQuickEntryCmp_label_127_Template","IndividualQuickEntryCmp_div_130_Template","IndividualQuickEntryCmp_div_131_Template","DateOfBirth","IndividualQuickEntryCmp_div_139_Template","IndividualQuickEntryCmp_div_140_Template","IndividualQuickEntryCmp_div_141_Template","IndividualQuickEntryCmp_div_142_Template","IndividualQuickEntryCmp_div_143_Template","IndividualQuickEntryCmp_div_144_Template","IndividualQuickEntryCmp_div_145_Template","IndividualQuickEntryCmp_div_146_Template","IndividualQuickEntryCmp_div_147_Template","position","subscription_Number","IndividualQuickEntryModel","IndividualSVC","searchParams","BehaviorSubject","individualChangedTrigger","Subject","isEmptyPage","getIndividualsList","params","request","getExportData","IndividualFilter","isSearchedApplied","ExportInfoDto","Keyword","Positions","Countries","Orgs","getIndividualHeaderInfo","getIndividualPersonalInfo","json","getIndividualPositions","pos","saveIndividualPosition","linkId","deleteIndividualPosition","positionId","deleteIndividualPhoto","deleteIndividual","IsIndividualLinkedToUser","individual","getContactsInfo","saveContactsInfo","info","saveIndividualPersonalInfo","AuditTrail","getIndividualRoles","checkIndividualLinkedWithContact","checkCanIndividualBeEdited","ListSharedAttachmnet","IndividualPositionInfo","IndividualBaseInfo","IndividualSavePersonalInfoModel","IndividualPersonalInfo","OrganizationTypeEnum","Unspecified","Public","Private","Courts","OrganizationQuickEntryModel","QuickOrganizationParentParams","MessagePromise","Addresses","OrganizationBudgetDto","OrganizationId","Year","BudgetValue","OrganizationBudgetRecordDto","Budget","TotalBudget","TotalBranchesBudget","BranchesCount","Currency","EmployeesCount","OrganizationBranchesBudgets","OrganizationPredefinedRoles","OrganizationPredefinedRolesDto","OrganizationBudgetId","RoleId","OrganizationPredefinedRolesEnum","InternalReviewEmpolyeesCount","LegalAffairsSpecialistsCount","AdministrativeSpecialistsCount","SupervisionEngineersCount","RolesCountDto","TotalEmployees","OrganizationContractorDto","ClassificationId","FieldId","CommercialRegisterationDate","IncomeCertificateDate","ChamberOfCommerceCertificateDate","CommercialRegisterationDateFormatted","IncomeCertificateDateFormatted","ChamberOfCommerceCertificateDateFormatted","isIncomeCertificateExpired","isCommercialRegisterationExpired","isCommerceCertificateExpired","OrganizationSVC","organizationChangedTrigger","currentOrganizationInfo","externalEntityType","budgetBaseURL","contractorBaseURL","getOrganizationsList","isActive","IsActive","ExternalEntitesFilter","getAllOrganizations","DeleteOrganizationBranch","organizationId","getOrganizationBranches","getOrganizationChilds","DeleteOrganizationChild","getOrganizationEmployees","getOrganizationHeaderInfo","getOrganizationPersonalInfo","editOrganizationStatus","createOrganization","organization","saveOrganizationPersonalInfo","deleteOrganization","deleteOrganizationPhoto","absoluteHostName","deleteEmployeeFromOrganization","getOrganizationRoles","getStates","MergeOrganization","MergeOrganizationDto","GetOrganizationCurrency","AddNewOrganizationsBudget","GetOrganizationBudgets","EditOrganizationsBudget","DeleteOrganizationBudget","DeleteMergedOrganizationsBudgets","SaveOrganizationsBudgetRoles","GetContractorFields","GetContractorClassifications","SaveContractor","GetOrganizationContractorData","GetOrganizationContractorLight","PresidentDashbiardSvc","ShowCommitteStatistics","InitiativeAttachmentSvc","baseUrl","initiativeAttachmentsCount","signatureRequestsCount","markingRequestsCount","approvalRequestCount","CurrentStampRequestsCount","getInitiativeAttachmentsCount","getSignatureRequestsCount","getMarkingRequestsCount","getApprovalRequestsCount","InitiativeOverviewSvc","overviewUrl","_initiativeId","showInitiativeAndTeamEditForm","linkedSchedulesCount","onLinkedCorrespondenceChanged","InitiativeId","GetInitiativeDetails","GetInitiativeAndTeam","EditInitiative","GetInitialSuggestionInfo","GetGlobalAttachments","GetAllInitiativeObjectives","exportReport","initiativeId","reportType","GetAllInitiativeNotes","AddNote","EditNote","DeleteNote","GetNotesForOverview","getLatestMeetings","fromDateStr","toDateStr","timeZoneOffset","getTimezoneOffset","getLatestInitiativeMeeting","getMeetingInfo","deleteScheduleItem","scheduleItemId","getLinkedSchedulesCount","EditInitiativeObjectives","getMeetings","AddLinkedCorrespondence","CorrespondenceIds","getLinkedCorr","ValidaiteLinkedCorrespondence","CorrespondenceId","getLinkedCorrespondenceCount","deleteLinkCorr","GetCommitteesLinkedToInitiatives","providedIn","InitiativeLandingPageGuardService","messagingSvc","isLoggedIn","canActivate","state","navigateToDashboards","isImpersonated","User","ActualUserId","UserId","isFullyImpersonated","IsFullImpersonation","isUserManager","IsManager","IsCommitteeManager","userHasInitiativeModule","UserModules","Initiatives","InitiativesHanlderSvc","SuggestionGeneralPermissions","_SuggestionGeneralPermissions","InitiativeGeneralPermissions","_InitiativeGeneralPermissions","GeneralHandlerPermissions","_GeneralHandlerPermissions","HasFullPermissions","_hasFullPermissions","GetInitiativeGeneralHandler","hanlderType","GetInitiativeEntitiesHirarechyGeneralHandler","GetSuggestionGeneralHandler","suggestionId","GetGeneralHandler","redirectToNotPermittedPage","logInfo","InitiativeLogicHandlerTypeEnum","GeneralHandler","InitiativeGeneralHandler","InitiativeLogicHandler","SuggestionsGeneralHandler","_states","datasource","Lookups","IsDeleted","States","isDeleted","CountryId","CountryID","Cities","StateId","RegionId","defaultArPrefixAutocompleteOptions","ArabicPrefixes","defaultEnPrefixAutocompleteOptions","EnglishPrefixes","defaultArSuffixAutocompleteOptions","ArabicSuffixes","defaultEnSuffixAutocompleteOptions","EnglishSuffixes","_CountryId","_RegionId","getCountryLight","CountryLight","LongNameEn","NameEn","LongNameAr","NameAr","getConfidentialities","isAll","Confidentialities","c","TextEN","TextAR","DocumentConfidentialities","s","getUrgencies","Urgencies","getSchedualeCategories","SchedualeCategoriesFilter","ScheduleLKPCategories","TitleEn","TitleAr","getSchedualeImportances","SchedualeImportancesFilter","ScheduleLKPImportances","getSchedualeLocationsTypes","chedualeLocationsTypeFilter","ScheduleLKPLocationTypes","getCorrespondanceKeyWords","CorrespondanceKeyWords","getCorrespondanceKeyWordsWithUnActive","CorrespondanceKeyWordss","getCorrespondenceCategories","CorrespondenceCategories","getCorrespondenceTypes","CorrespondenceTypes","getClassificationsTypes","ClassificationsTypes","getCorrespondenceClassifications","CorrespondenceClassifications","getCorrespondenceTypesAndClassifications","types","allClassifications","typeClassification","CorrespondenceTypeClassificationItems","CorrespondenceTypeId","CorrespondenceClassificationId","getAccompanyingDocuments","AccompanyingDocuments","AccompanyingDocument","getReceivingModes","ReceivingModes","FriendlyTextEn","FriendlyTextAr","ExternalContactResponseDto","errormsg","Contact","ExternalContactDto","ContactsSvc","debounceInterval","searchFilter","Working","LinkedContactMapper","LinkedContactDefaultEmailAndPhone","NewContact","ExternalContactSearchQueryDto","currentOrder","paginateOptions","itemsPerPage","currentPage","totalItems","OnUpdate","OnCreate","OnDelete","isSubmited","Search","Remove","ExternalContactID","Create","Update","getOrganizationPoistions","mappedWithInternalPosition","searchByText","debounceTimeoutTimer","clearTimeout","PageIndex","Order","Contacts","Page","uniqueTime","getTime","ImageUrl","ExternalContactsImagesDirectoryUrl","ImageExist","TotalRecords","CreateContact","ExternalContactNameEn","ExternalContactNameAr","cloneContact","clone","unshift","FailResponse","UpdateContact","SelectedContact","RemoveContact","Response","getSubAttachmentGroups","GetExternalContactVisibility","pageId","searchText","orderBy","searchNo","sortDepartmant","allEntites","SetExternalContactVisibility","subSetting","RemoveExternalContactVisibilty","entityId","visibility","Visibility","CheckIfExternalContactIsUsed","AppModuleSVC","getUserTypeAppModules","userTypeId","getUserAppModules","userId","updateUserAppModules","enabledModules","disabledModules","substr","EditTypeEnum","OnlyOneMeeting","EntireSeries","MeetingStatusesEnum","Planned","InProgress","Skipped","Done","Canceled","Deleted","Draft","WaitingForReview","Rejected","Archived","ScheduleItemDto","ScheduleStatusEnum","ActivateAttendance","RemindersBeforeMeeting","CanDelete","EditAllChilds","DeleteAllChilds","IsHidden","CategoryId","LookAndFeel","IndividualsRoles","AttendeesRoles","ParentScheduleItemId","Guid","EMPTY","isInvitationSent","ScheduleItemOptions","ScheduleItemRepetitionModel","IsDisplayedForInterestedUser","MeetingMinutesAttachments","MeetingMinutesAttachmentsCollapse","ShowAgendaTab","TopicsCounter","getInstanceFromJson","tmp","prepareAfterFetch","dtHelper","datetimeHelper","StartDate","ParseFromWebMethodParameter","StartDateStr","EndDate","EndDateStr","prepareBeforeSave","formatToWebMethodParamter","TemplateIcon","TemplateId","getScheduleTemplateIcon","ImportanceIcon","ImportanceId","getScheduleImportanceIcon","StartDateWithTime","d","StartTimeAsDate","hour","minute","toDate","EndDateWithTime","EndTimeAsDate","StartTime","StartTimeAsDateBasedOnTimeZone","StartTimeBasedOnTimeZone","EndTimeAsDateBasedOnTimeZone","EndTimeBasedOnTimeZone","EndTime","DurationInMinutesHumanize","DurationInMinutes","duration","humanize","DurationInMinutesReadable","format","scheduling","DurationInMinutesHour","DurationInMinutesMinute","DurationInMinutesAsHoursAndMinutesForDetailsPage","startTimeAsDate","endTimeAsDate","sh","getHours","sm","getMinutes","eh","em","sdate","edate","newStartDate","setHours","setMinutes","newEndDate","startDateTime","momentStartTime","momentEndTime","diff","DurationInMinutesAsHoursAndMinutes","StartTimeFormatted","getFormattedTime","StartDateTime","EndTimeFormatted","EndDateTime","dateTime","time","toLocaleTimeString","StartTimeFormattedBasedOnTimeZone","EndTimeFormattedBasedOnTimeZone","MeetingPeriodStartTimeFormatted","MeetingPeriod","MeetingPeriodEndTimeFormatted","MeetingPeriodStartTimeBasedOnTimeZoneFormatted","StartTimeBasedInTimeZone","MeetingPeriodEndTimeBasedOnTimeZoneFormatted","EndTimeBasedInTimeZone","scheduleTemplatesEnum","event_fast","public","meeting","travel","ReceivingDelegation","EconomyandDevelopmentMeeting","GeneralCommitteeMeeting","StandingCommitteeMeeting","scheduleItemImportanceEnum","normal","low_importance","high_importance","templateType","importanceId","ScheduleItemExtraInfoDto","schedulingSVC","onReloadScheduleItem","scheduleItemDataLoaded","loadSupportStaffRoleHandler","permission","scheduleItemTopicBaseURL","CanManageSupportStaff","SelectedDate","refreshPermissionHandler","refreshAllPermissionHandlers","refreshAllPresentationAttachments","checkIfMeetingHasTopics","getScheduleItemPermission","pageType","getMeetingMinutes","schedualeId","count","getMeetingTopics","getLatestMeetingTasks","GetMeetingTasks","getScheduleItemLogicHandler","templateId","GetAttachmentTopicInfo","scheduleattachmentid","getNewCommitteesMembers","GetInitiativeMembers","ScheduleOverviewReleatedCorrespondence","ScheduleItemId","getScheduleItem","schedualItemId","getScheduleItemExtraInfo","getScheduleItemTasksCount","CheckIfMeetingHasAuthenticatedExternalUsers","getCalendarDate","getDailyView","viewDate","viewToDate","activeMeetingsOnly","ViewDateStr","shortDateFormatFromURL","ViewToDateStr","getMeetingsTopicsCounter","scheduleItemIds","exportMeetingsReport","exportInfoDto","createScheduleItem","scheduleDto","autoSignAttachments","attachmentIds","inviteParticipants","participants","sendScheduleToReview","checkCanSendScheduleToReview","resendAttendanceRequest","scheduleItemParticipantId","canPublishMeeting","publishSchedule","rejectSchedule","rejectReason","unPublishSchedule","UnpublishReason","CheckScheduleRepitition","checkMeetingConflictTime","deleteScheduleItemWithChilds","editScheduleItem","CheckLinkedContactsEmailIfExist","linkedContactsIDs","getCorrespondenceAttachementCanLinkeToScheduleTopic","schedulItemId","scheduleItemTopicId","getScheduleAttachmentsCanLinkeToScheduleTopic","validationStartEndTime","scheduleItem","GetCorrespondenceAuthorityMeeting","CorrId","GetDefaultAttendees","corrId","GetOrganizer","cancelMeeting","scheduleItemDto","reActivateCanceledMeeting","skipMeeting","startMeeting","endMeeting","archiveMeeting","checkIfAnyTopicsNotPresented","GetIndividualsOrganizationByIds","IndividualIds","baseURLIndividual","checkIfIndividualIsHrUser","checkIfScheduleItemHasTopics","checkIfIndividualsAsHrUser","individualIds","GetDefaultAttendeesForAuthorityMeeting","getOrganizersAdvanceInfo","scheduleId","getAllMeetingPeriod","canSendSMSFromGeneralSetting","GetChatRoomInfo","refId","chatRoomReferenceType","kickOutForLoggedInUser","localStorage","getItem","getCommitteeEndDate","getUserPreference","setUserPreference","getMeeting","includeDeleted","getMeetingsForAssistant","ChatRoomInfoDto","ScheduleItemPageType","AgendaCategoryHandler","AgendaItem","AgendaItemAttachmentHandler","AgendaItemConversationHandler","AttachmentHandler","AttachmentItemHandler","AttendanceRequestsHandler","AttendanceRequestItem","AttendeesHandler","DetailHandler","MinuteOfMmeetingHandler","MinuteOfMmeetingItemHandler","OverviewHandler","PrivateScheduleHandler","PrivateScheduleItemsHandler","RelatedCorrespondenceHandler","ScheduleItemCreationHandler","ExternalUserHandler","ScheduleItemGeneralHandler","ScheduleItemLogicHandler","SignatureItemRequestHandler","SignatureRequestHandler","SupportStaffRoleHandler","SupportTeamHandler","TaskItemHandler","TaskItemsHandler","TopicVotingHandler","VotingHandler","AgendaHandler","GeneralScheduleHandler","ScheduleNoteHandler","ImportantLinkHandler","schedulingDetailsSharedSVC","showOrganizersModal","participantsCount","AttendedParticipantsCount","ScheduleTopicsCount","attachmentsCount","linkedCorrespondenceCount","InvitationLetterCount","AttendanceRequestCount","ScheduleNoteCount","tasksCount","hasExternalUsers","isconfirm","updateTopicsAfterChangeStatus","meetingChatDiv","topicChatDiv","IsOverView","ResourceTypeEnum","MyTeam","EmployeesTasks","ExternalResources","DashboardDto","TaskTypesEnum","GeneralTask","CorrespondenceTask","ScheduleItemTask","ScheduleTopicTask","ScheduleItemAndTopicsTask","CommitteeTask","MAppTasks","InitiativeTask","FilterEnum","inProgress","late","withoutDeadline","notlate","completedtask","upcoming","TasksDeadlineTypeEnum","Duration","TaskItemService","onTasksChanged","SelectedId","AllowedUsers","AllowedUsersTypes","IsDetailedOpened","SelectedTask","baseUrlImproved","TaskItemId","loadCorrespondenceAttachments","checkCanViewTaskModuleForCommittee","getLinkedTypes","getLinkedTasks","taskId","recurringSettingId","saveLinkedTasks","linkedTasksDto","addTaskTodoContainer","taskTodoContainerDto","updateTaskTodoContainer","taskToDoContainerDto","removeTaskTodoContainer","addTaskTodo","containerId","taskTodoDto","updateTaskTodo","taskToDoDto","removeTaskTodo","unLinkedTasks","liteLinkedTaskDto","LinkedTaskId","TasksIds","getCCes","updateCCes","taskTitle","taskCarbonCopyDto","setTaskAsSeen","taskIds","getTaskDetails","referenceKey","getTaskHandler","taskType","refrenceId","getCommitteeLogicHandler","CreateTask","taskPopupDto","tasksDto","GetTaskPopupDetails","EditTask","GetGeneralTasks","isCommitteesDashboardTasks","isMeetingsDashboardTasks","doneTasks","filterType","FilteredTypeEnum","pageIndex","filterByStatus","tasksFilter","taskFilter","DoneTasks","FilterType","FilterByStatus","IsCommitteesDashboardTasks","IsMeetingsDashboardTasks","TaskType","GetTabsTasksCounts","GetIndividualTasksWithoutGeneralTasks","linkedItemId","taskGroupType","LinkedItemId","saveTaskNote","taskDetailsDto","SaveTaskPagesNo","pageNo","linkedItemIdPart","getLinkedItemIdUrlPart","SaveTaskDeadLine","hours","minutes","SaveTaskReminder","SaveTaskEmployeeReminder","SaveTaskAssignedTo","AssignedToId","SaveTaskTitle","DeleteTask","Ids","GetTaskComments","AddTaskComment","taskComment","DoneTask","exportType","TasksFilterDto","resourceType","exportActionName","TasksFilter","UnDoneTask","ConfirmCancelTaskCompletion","IsConfirm","GetTaskLinkedAttachments","GetLinkedTaskAttachments","GetAllMeetingsTask","SaveTaskDescription","description","encodeURIComponent","saveTaskClassification","taskClassificationId","saveTaskImportance","taskImportanceId","SaveTasksReminder","LinkAttachmentsListWithTask","list","SaveTaskType","TaskTypeId","SaveTaskMeetings","GetLinkedMeetingsWithTask","GetLinkedMeeting","saveTaskAttachmentToCorrespondence","checkUserHaveVacation","deadlineDate","GetAllMeetingsTasks","DeleteLinkedMeetingOfTask","DeleteLinkedAttachmentsOfTask","taskID","AttachmentId","GetAllTasks","assignTaskSearchDto","saveTaskEmployeeReminder","SaveTaskNote","note","IsAllowedOnlyByManagers","GetAllowedUsers","GetAllowedUsersTypes","GetTaskTypes","AddFollowUpDate","SaveFollowUpDate","SendTaskUrgentRequestNotificationAndEmail","isEmailEnabled","isSmsEnabled","moduleID","TaskId","SendEmail","SendSMS","ModuleID","GetUrgentRequestUserData","userLinkedContactId","changeTaskStatus","selectedTaskId","statusId","completionRate","taskFromMApp","nextStep","prevSteps","latenessReason","connStatusTextAr","connStatusTextEn","cssColor","isConfirmCompletedTaskEnabled","isRestored","assignedToIndividualId","multipleTaskIds","recurrenceId","SelectedTaskId","StatusId","CompletionRate","TaskFromMApp","NextStep","PrevSteps","LatenessReason","ConnStatusTextAr","ConnStatusTextEn","CssColor","IsConfirmCompletedTaskEnabled","IsRestored","AssignedToIndividualId","SelectedTaskIds","RecurrenceId","getStatuses","taskStatusFilterDto","getCompletedAndInProgressStatusesObjs","reassignedTaskHistoryLogs","getTasksActivitiesSummary","getTasksActivitiesDetails","addTasksActivity","editTasksActivity","deleteTasksActivity","activityId","hasTaskActivities","TaskItemTargetHandler","General","DoneLateTasks","LateTasks","ExpiresToday","ExpiresThisWeek","BoxTypeEnum","AssignToMeInProgressTasks","AssignByMeInProgressTasks","AssignToMeDoneTasks","AssignByMeDoneTasks","RemovedTasks","CCesTasks","SortByColumnNameEnum","Job","TaskCount","LateTaskCount","PositionName","CorrespondenceTasksCount","CorrespondenceTasksLateCount","ScheduleTasksCount","CommitteeTasksCount","CommitteeLateTasksCount","ScheduleTasksLateCount","GeneralTasksCount","GeneralTasksLateCount","InitiativeTasksCount","InitiativeTasksLateCount","BoxType","AssignedToUsersIds","EntitiesIds","CommitteesIds","Status","IsForMyTasks","IsResourcesTab","TaskGroupType","SortBy","SortType","Descending","HasFullPermissionsOnInitiatives","SelectedTasksIds","SortByColumnName","ResourceType","OnlyHaveTasks","AssignedToUserIds","GetIndividualDefaultEmail","lc","ContactEmails","DefaultContactEmails","ContactEmail","isDefault","DefaultContactEmail","GetIndividualDefaultPhone","ContactPhones","DefaulContactPhones","ContactPhone","DefaultContactPhone","GetIndividualPickedContact","FullNameAr","FullNameEn","Photo","GetOrganizationDefaultEmail","GetOrganizationDefaultPhone","GetOrganizationPickedContact","AuthenticateAttachmentSvc","httpclient","getAttachmentDigitalState","attID","changeAttachmentDigitalState","prepareAttachment","tempAttID","annotations","signatureType","SignatureTypes","Signature","Sign","uploadTempAttachment","attchId","dmsServerUrl","ScheduleItemTopicAttachmentTypeEnum","Topic_Attachment","Archive_Attachment","Private_Attachment","Presentation_Attachment","CorrespondenceUserRelationEnum","Admin","Personal","MeAsManager","MyEntitiesEmployeesInboxes","Ownership","MyDraft","PublicInboxAccess","PersonalCc","MeAsManagerCc","HasDivertCoursePermission","UserInFarwaringLog","MeAsManagerInFarwaringLog","MyEntitiesEmployeesInFarwaringLog","PublicInboxAccessCc","UserInForwardingLogCc","MeAsManagerInForwardingLogCc","AllMyEntitiesInboxes","BelongsToSenderMyEntity","HasViewEntityInboxPermission","MeAsConsultant","MeAsParticipant","MeAsFollower","ViewMyCommitteeInbox","SystemAttachmentGroupEnum","AccumulatedReport","SelectedTempFileName","DetailsAttachmentsAddCmp_div_10_img_2_Template","DetailsAttachmentsAddCmp_div_10_i_3_Template","DetailsAttachmentsAddCmp_div_10_i_4_Template","Extinsion","DetailsAttachmentsAddCmp_div_11_i_1_Template","DetailsAttachmentsAddCmp_div_11_i_2_Template","DetailsAttachmentsAddCmp_div_11_i_3_Template","DetailsAttachmentsAddCmp_div_11_i_4_Template","DetailsAttachmentsAddCmp_div_11_i_5_Template","DetailsAttachmentsAddCmp_div_11_i_6_Template","DetailsAttachmentsAddCmp_div_11_i_7_Template","DetailsAttachmentsAddCmp_div_11_i_8_Template","_r32","reloadScanners","getAutomationId","changeColor","DetailsAttachmentsAddCmp_div_13_option_11_Template","DetailsAttachmentsAddCmp_div_13_option_12_Template","DetailsAttachmentsAddCmp_div_13_option_13_Template","Sources","scanBlack","scanGray","scanColor","_r40","acquireImage","SelectedScanner","canScanAttachment","maxFileSizeCanBeUpload","supportedFileExtensions","ctx_r64","item_r71","att_r42","SelectedAttachmentGroup","_r75","changeAttachmentGroup","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_25_div_7_option_3_Template","CanChangeAttachmentGroupOnEdit","attachmentsGroup","RequiredString","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_25_div_1_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_25_div_2_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_25_div_3_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_25_div_7_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_25_div_8_Template","ctx_r55","fromNewCorrespondeceScreen","RelatedType","hideAttachmentsGroup","AllowCustomNumbering","ctx_r57","hideExtraControls","president_r84","i_r43","removePresidentFromList","XCPresidentID","XCPresidentEmploymentNumber","ExecutiveName","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_34_div_9_div_1_Template","xcPresidentsMultiple","_r90","selectedXCPresidentId","ctx_r91","selectedXCPresidentName","selectedXCPresident","addPresidentToList","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_34_div_9_Template","executivesAutoCompleteOptions","_r98","AttachmentNumber","ctx_r99","changeAttachmentNumber","TemporaryAttachmentId","ctx_r59","isSupportNumbering","ctx_r102","_r106","AttachmentSummary","ctx_r103","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_49_label_1_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_49_textarea_2_Template","addAttachmentSummary","editAttachmentSummary","ctx_r108","_r112","ctx_r109","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_50_label_1_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_50_textarea_2_Template","ctx_r62","ctx_r115","ctx_r116","ctx_r118","ctx_r119","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_51_span_3_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_51_span_6_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_51_span_7_Template","_r121","_r117","ctx_r122","ctx_r120","changePrivacy","addCurrentUser","isApplySecurity","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_51_span_14_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_51_span_15_Template","permittedUser","HideUsers","canChangePrivacy","_c7","_c8","permitteAutocomplete","_r129","ctx_r128","changeToggleStatus","selectedAttachmentsFromDrive","DetailsAttachmentsAddCmp_div_23_ng_container_1_i_6_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_i_7_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_i_8_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_i_9_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_i_10_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_i_11_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_i_12_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_i_13_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_i_14_Template","ctx_r130","viewAttachmentOnClick","ctx_r131","deleteAttachment","DetailsAttachmentsAddCmp_div_23_ng_container_1_span_21_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_span_22_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_25_Template","ctx_r132","NoName","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_31_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_h4_32_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_34_Template","AttachmentSubject","ctx_r135","changeAttachmentSubject","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_39_Template","ctx_r138","changeAttachmentExternalContactName","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_49_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_50_Template","DetailsAttachmentsAddCmp_div_23_ng_container_1_div_51_Template","_c9","isPreviewing","concat","_c10","isAttachmentCollapsed","isOverSize","isFileExtensionValid","IsMultiMedia","addNewGuidanceNote","validation","fileNameRequired","IsSupportAutoNaming","_allowCustomNaming","canChangeAttachmentTitle","_c11","hasViewMoreDetailsForWopi","_c12","IsMultimediaModal","externalFromAutoCompleteOptions","isNew","EnabelPermittedUser","AttachmentConfidentiality","isOpen","DetailsAttachmentsAddCmp_div_23_ng_container_1_Template","reverse","_r150","ctx_r149","ctx_r151","item_r156","ctx_r155","selectedGroupId","_r158","ctx_r157","ctx_r159","DetailsAttachmentsAddCmp_div_24_div_2_div_5_option_3_Template","ctx_r152","automationId","ctx_r153","DetailsAttachmentsAddCmp_div_24_div_2_div_1_Template","DetailsAttachmentsAddCmp_div_24_div_2_div_5_Template","DetailsAttachmentsAddCmp_div_24_div_2_div_6_Template","ctx_r140","ctx_r141","president_r163","_r165","ctx_r164","ctx_r162","DetailsAttachmentsAddCmp_div_24_div_9_div_9_div_1_Template","ctx_r161","_r167","ctx_r166","ctx_r168","ctx_r169","ctx_r170","DetailsAttachmentsAddCmp_div_24_div_9_div_9_Template","ctx_r142","ctx_r143","_r172","ctx_r171","attachmentNumber","ctx_r173","ctx_r144","ctx_r174","_r177","ctx_r176","attachmentSummary","ctx_r175","DetailsAttachmentsAddCmp_div_24_div_26_label_1_Template","DetailsAttachmentsAddCmp_div_24_div_26_textarea_2_Template","ctx_r146","ctx_r178","_r181","ctx_r180","ctx_r179","DetailsAttachmentsAddCmp_div_24_div_27_label_1_Template","DetailsAttachmentsAddCmp_div_24_div_27_textarea_2_Template","ctx_r147","ctx_r183","ctx_r184","ctx_r186","ctx_r187","DetailsAttachmentsAddCmp_div_24_div_28_span_3_Template","DetailsAttachmentsAddCmp_div_24_div_28_span_6_Template","DetailsAttachmentsAddCmp_div_24_div_28_span_7_Template","_r189","_r185","ctx_r188","ctx_r190","DetailsAttachmentsAddCmp_div_24_div_28_span_14_Template","DetailsAttachmentsAddCmp_div_24_div_28_span_15_Template","ctx_r191","ctx_r148","canSetAttachmentConfidentiality","DetailsAttachmentsAddCmp_div_24_div_1_Template","DetailsAttachmentsAddCmp_div_24_div_2_Template","_r193","ctx_r192","ctx_r194","selectedFileName","DetailsAttachmentsAddCmp_div_24_div_8_Template","DetailsAttachmentsAddCmp_div_24_div_9_Template","DetailsAttachmentsAddCmp_div_24_h4_10_Template","ctx_r195","attachmentSubject","ctx_r196","DetailsAttachmentsAddCmp_div_24_div_16_Template","ctx_r197","externalContact","ctx_r198","externalContactID","ctx_r199","DetailsAttachmentsAddCmp_div_24_div_26_Template","DetailsAttachmentsAddCmp_div_24_div_27_Template","DetailsAttachmentsAddCmp_div_24_div_28_Template","AllowCustomNaming","canShowAttachmentsMoreCollapse","checkIfImagesInBuffer","currentImageIndexInBuffer","extinsion","FileType","ctx_r203","webTwainFile","ctx_r204","_r206","ctx_r205","hideScanerInstallAlert","DetailsAttachmentsAddCmp_div_62_div_1_span_16_Template","DetailsAttachmentsAddCmp_div_62_div_1_span_17_Template","ctx_r202","isCanDownloadService","DetailsAttachmentsAddCmp_div_62_div_1_Template","DWObject","hideScanerAlert","DetailsAttachmentsAddCmp","size","collapsed","expandItem","AttachmentType","_attachmentType","attachmentType","hideUsers","_allowCustomNumbering","isFromUploader","_isFromUploader","showA4SizeWarning","a4InstructionVideoURL","isMultipleAttachments","itemId","PageAutomationId","detailsSVC","extensionSettings","committeesSvc","isUpload","addNewAttachmentPopupOption","DisabledSaveButton","vHideModel","isAttachmentUploadBusy","_uploadActionUrl","IsRecommendationModal","SelectedMultimediaGroupId","SelectedRecommendationGroupId","IsCorrOwner","IsDraft","FromMeetingMinuts","isAccumulatedReport","CheckAttachmentSummaryAfterEdit","SelectFirstAttachment","AttachmentscountAfterAdd","OnCompleteItem","refreshXCGuidanceNotes","progressBarOption","ddlServiceUrl","isSupportedExtensions","isMeetingPresentationAttachment","isCorrespondenceRecord","uploadFileProgressPercentage","file_srcs","operationResult","selectedTempFileName","scannerAllowed","isFileSelected","isFileScanned","hasImage","selectedColor","defaultGroupId","isOwner","hideAttachmentGroup","_allowMultimedia","moduleSize","notRelated","DdlEntitiesAndUsersClearValue","AutoCompleteOptions","serviceQueryParameterName","serviceMethod","serviceDataSchema","serviceDataType","minLength","caseSensitive","select","change","UsersMultiSelectOptions","serviceUrl","returnValueAsText","selectedUsers","UsersInitValues","fileMustBeSelected","fileExtensionRestricted","fileType","resultsField","isPrivacy","_canSetAttachmentConfidentiality","_EditAttachmentSummary","_canUpdateAttachmentConfidentiality","preAttachmentName","progressBarCount","linkedAttachmentId","xcPresidents","throughUploadingNewFile","getAllPresidents","uploadedAttachmentHasDigitalSignature","uploadedAttachments","closeAfterUpload","scannedAttachments","filesCount","responseUploadedFiles","maxIIsSize","clonedSelectedAttachmentsFromDrive","comboBoxServerSearchDatasourceDefaultOptions","autocompleteDefaultOption","displaytemplate","b64File","categoriesSettingsValuesList","isAttachmentNumberingSettingforCategoryExist","addFileToUploader","output","splittedFileName","file","ScheduleItemTopicAttachmentType","vResetModel","fileUploaderElm","uploadImg","getSelectedFileName","getAttachmentNameBaseOnGroupId","setReferenceId","Dynamsoft","isServiceDownloaded","DWT","ProductKey","WebTwainEnvProductKey","entityStatus","getCanSetAttachmentConfidentiality","getCanUpdateAttachmentConfidentiality","getEditAttachmentSummary","IsSupportNumbering","viewMoreDetailsForWopi","requiredField","RestrictedExtensions","Permissions","ScanBlack","ScanGray","ScanColor","scanPermissions","AddAttachmentSummary","EditAttachmentSummary","setAttachmentConfidentiality","SetAttachmentConfidentiality","updateAttachmentConfidentiality","UpdateAttachmentConfidentiality","ShowSetAsFinalForm","showSetAsFinalForm","IsCorrespondenceRecord","isEditMode","hdbIsEdit","hasScanFile","hasPermittedUser","toggle","hasUploadFile","hasValidFileName","hasSelectedGruop","hasValidExtension","hasAttachmentGroup","appModuleId","Tasks","Announcement","Scheduling","Correspondences","isMultimediaFileExtensionValid","isMultimediaFileExtension","GetRequiredFiledsIndexes","indexes","element","hasValidSize","hasMultimediaFileExtensionNotValid","CanChangeAttachmentTitleOnEdit","editSelectedAttachment","__sourceName","HowManyImagesInBuffer","SetEditAttachmentSummary","canUpdateAttachmentConfidentiality","OperationResult","getImagesInBuffer","CurrentImageIndexInBuffer","_source","selectedIndex","PermittedUser","SelectedColor","EditSelectedAttachment","onInitSuccess","objFileUploader","fileUploaderManager","onInitFailure","errorCode","errorString","alert","vFileChange","fileName","fReader","FileReader","fileInput","imageUpload","isReplyAttachment","selectedSingleFile","DWObjectLargeViewer","ClearAllHTTPFormField","RemoveAllImages","log","ErrorCode","ErrorString","FitWindowType","files","AttachmentDto","splittedSingleFileName","checkFileValidationBeforeUpload","preventUploading","setPreviousFileTypeAndExtensionAfterError","GuidUtil","newGuidAsString","isOversize","isMultiMedia","readAsDataURL","setValueForAttachmentNumber","onloadend","img","privewImage","attr","SignleFile","fileExtension","fileSize","isGroupSupportMultimedia","module","DeliveryReport","selectedGroup","IsSupportMultiMedia","validateFileSize","canUploadCompilationReport","isAllowedExtensionsForDeliveryReports","validateFileExtension","AttachmentExtensionNotValid","lastFileUploaded","b64","extFileAllowedByDefault","fileExtensions","RestrictedFileExtensions","SupportedFileExtensions","isSingleAttachmentForm","CommonDbRes","DeleteConfirmation","No","attachmentIndex","isDeletedPreviewing","vResetPopupData","uploadFileComplete","resetModel","selectedAttachmentGroupId","vGetCorrespondence","vGetScheduleAttachments","Committees","vGetCommitteeAttachments","vGetAnnouncementAttachments","vGetArchiveAttachments","vGetInitiativesAttachments","getAttachmentsCount","CorrespondenceAttachments","UserRelationToCorrespondence","HasViewAttachmentPermission","clearRelatedId","storeDWTcontrolContainer","addNewAttachmentPopup","deliveryAttachmentsUploaded","uploadFileProgress","progress","setInterval","parent","uploadFileError","headers","errorMsgs","UNAUTHORIZED","onSaveCompleted","operation","HasDigitalSignature","ResourceId","ResourceSet","getRelatedId","getAttachments","DataOther","otherAttachment","OtherAttachments","attachmentsList","removeCurrentUser","getScheduleAttachments","getAnnouncementAttachments","getCommitteeAttachments","GetInitiativesAttachments","xcPresidentsMultipleLength","getXCPresidentsMultipleLength","some","every","saveMultipleAttachments","saveAttachment","extensionsSupportConversionToPDF","generalSettingList","RelatedId","_strHTTPServer","strActionPage","addEditUrl","p","XCAttachmentLinkedTypeEnum","MaxUploadImageSize","endsWith","btnUpload_onclick","responseObj","loIDs","hdncorrAttachId","txt_attachmentsummary","getIDs","j","Dbid","Announcements","RelatedAttachmentUsersID","ExtractFromAttachmentId","RelatedID","Privacy","IsAccumulatedReport","IsCorrespondenceRecored","ExternalRecipentId","AttachmentUserIds","LinkedItemType","valueOf","saveEditAttachmentMetaData","relatedEnum","getAttachmentRelatedEnum","getAttachmentSummary","Proclamation","fileUploaderData","newSelectedAttachmentsFromDrive","startedUploading","ProgressBar","dbid","recursiveUploadAttachments","uploadMultipleAttachments","OnMultipleAttachmentsUploadCompleted","AttachmentModuleType","Correspondence","selectedArray","selectedAttachment","getAttachmentNumberBaseOnGroupId","canEditAttachmentTitle","getAttachmentsGroups","attachmentAccessLevelType","AttachmentAccessLevelTypesEnum","Edit","AddNew","SelectedGroup","AccessLevelType","IsSupportReportGenerator","GroupId","IsSupportMultimedia","CommitteePageType","CanAddAttachment","UserHasAccess","checkSelectedAttachmentGroup","getCurrentClientFileExtensions","CurrentClientFileExtensions","extensions","supportedextensions","splittedExtensionsSupportConversionToPDF","toLocaleLowerCase","splittedSupportedExtensions","intersectionExtensions","GetMaxFileSizeCanBeUpload","iisSize","outputFile","oldVersionId","imgFile","src","detectChangeAfterLoading","y","__sourceCount","SourceCount","remove","Option","GetSourceNameItems","clicked","isLoading","WebTwainEnv","Load","isAllowShowServiceDownloadMsg","checkAfterLoad","triggerResize","documentMode","evt","createEvent","initUIEvent","dispatchEvent","Event","parentNode","insertBefore","webTwainService","callbackMethod","HasToggleElementInHtml","PermittedUsers","ArchiveAttachmentUsers","CommitteeAttachmentUser","Version","addCurrentUserIfCanUpdateAttachmentConfidentiality","DefaultCorrespendenceGroupId","isUserInRole","UserRoles","CanChangeAttachmentTitle","r","getUserDefaultAttachmentGroup","AttachmentsGroups","OnAcquireImageSuccess","OnAcquireImageFailure","CloseSource","SelectSourceByIndex","OpenSource","PixelType","IfShowUI","webTwainIfShowUI","EnumDWT_CapSupportedSizes","TWSS_A4","Resolution","webTwainResolution","AcquireImage","ex","_errorCode","_errorString","attachmentGroupId","_type","_relatedIntId","NoOfAttachmentSelected","relatedId","attachmentNameDto","AttachmentGroupId","AttachmentTypeId","RelatedIntId","systemModule","attachmentNumberDto","isChecked","multiSelect","enable","att","hide","pushCurrentUserToPermittedUser","currentUser","param","addCurrentUserHtml","listbox","html","prepend","removeDeleteIconFromPrivacyUsers","attachmentParentID","isCountAvailable","ListofAttachmentTypesHaveCount","_countAttachmentsRecord","parseInt","moveCurrentImage","step","ext","SaveAnnotationsBtn","isCategorySupportDefaultAttachmentNumbering","BaseCorrespondenceCategoryId","corrCategoryID","GetCorrespondencesCategoriesSettings","Categories","AllCategoriesChecked","CorrespondenceCategoryIdEnum","Incoming","PrivateIncoming","ExternalCorrespondenceNumber","Outgoing","PrivateOutgoing","Internal","Decision","CorrespondenceNumber","Committess","ScheduleAttachments","advanced_Meeting","MultimediaExtensions","xcPresident","exists","president","rowIndex","isMultiple","urlForUpload","getUploadUrl","onFileChoosen","isAllowedSize","IsValid","onFileUploaded","len","canShowSupportExtensions","DetailsAttachmentsAddCmp_div_10_Template","DetailsAttachmentsAddCmp_div_11_Template","DetailsAttachmentsAddCmp_div_12_Template","DetailsAttachmentsAddCmp_div_13_Template","DetailsAttachmentsAddCmp_button_17_Template","DetailsAttachmentsAddCmp_span_18_Template","DetailsAttachmentsAddCmp_span_19_Template","DetailsAttachmentsAddCmp_br_20_Template","DetailsAttachmentsAddCmp_span_21_Template","DetailsAttachmentsAddCmp_div_22_Template","DetailsAttachmentsAddCmp_div_23_Template","DetailsAttachmentsAddCmp_div_24_Template","DetailsAttachmentsAddCmp_div_39_Template","DetailsAttachmentsAddCmp_div_59_Template","DetailsAttachmentsAddCmp_div_62_Template","DetailsAttachmentsFlextViewer","confirm","cb","iframeAttachment","iframeId","FlexpaperDefaultHeight","DataAutomationId","DefaultViewerHeight","defaultViewerHeight","annotationsAsJsonString","stringify","localstorageShowAnnotationKey","localstorageShowTopBatActionsKey","ShowSignatureBtn","showSignatureBtn","SignatureNoteBtn","refreshLocalstorageData","ShowStampBtn","showStampBtn","DigitalStamps","ShowMarkingSignatureBtn","showMarkingSignatureBtn","MarkingSignature","LoadDocUponRequest","loadDocUponRequest","loadAndEmit","RelativePath","attachmentExtension","IsValidForView","isValidForView","ViewerHeight","LinkedTo","linkedTo","documentId","hideSignature","hideSaveDelete","EnableQRCode","AllowUserToEditInArchivedMood","isArchivedStudy","hideNoteSignature","viewImageMergeField","showPrintField","HideSignatureMergeField","isDeliveryAttachmentsPreview","DownloadRemovedFile","showReadyWordsBtn","showQrCodeWithOptionsBtn","isReplayTemplate","primaryId","AttachmentIDChange","AttachmentExtensionChange","onValidateAttachment","supportedPdfViewerExtentions","bIsValidForViewSubject","onShowDevicePopup","SaveAtattachment","saveAtattachmentWithAnnotations","SaveAtattachmentWithAnnotations","delayTime","showHideAllTopBarActions","isShow","vShowAnnotations","PrinterBtn","FlipRotateBtn","SearchBtn","BlockAreaBtn","BlockDiv","deleteBtnDropDown","readyWordsBtn","locateSignature","locateMarking","locationQRCode","SelectBtn","btnDropDownSignature","btnDropDownQRCode","xcLocateSignature","deviceSignature","signatureItem","locateQrCode","hideActionBar","vSetAnnotations","GetAndAllAnnotations","bIsValidForView","isValid","contains","call","showFlexPaperAnnotations","iframeSrc","ignorePrinterBtnPermissions","correspondenceId","PrintAndDownloadSubAndAcumulatedReport","PrintAndDownloadSubAndAcumulatedReportWithoutTheWatermark","frame","iframeUrl","hideSignatureAuthor","contentWindow","location","refreshSource","onIframeLoad","setDeviceSignatureCallback","base64Signature","outputs","DetailsAttachmentSVC","attchDto","HttpHeaders","Authorization","forgeryToken","withCredentials","formData","getFormData","object","FormData","key","append","onDeliveryAttachmentsUploaded","AttachmentRecommendation","isExactAnnotations","isReplyLetter","LinkedCorrespondencesAttachments","SubsequentAttachment","selectedAttachmentNumber","IsFinalCopyAttachment","selectedOriginalAttachmentId","canSignSelectedAttachment","canSignMarkSelectedAttachment","showReplyTemplateBtn","Users","ExternalId","FolderNumber","CorrespondencletterId","CorrespondenceRecord","CorrespondenceLetters","ArchivedCorrespondence","Incident","SchedulingTopic","CasefileCommunication","Suggestions","officeSupportedTypes","onDeliveryAttachmentsUploaded$","asObservable","RecommendationAttachmentApi","baseTemplateURL","PrintDoc","responseType","LinkScheduleCorrespondecesAttachments","AttachmentIds","downloadAttachmentBasedOnURL","saveBlobResponseAsFile","attachemntTitle","link","href","URL","createObjectURL","replaceAll","download","isInRecommendationTabs","correspondenceAttachmentID","getAttachmentsHistory","deleteSubAccumulatedReport","sendUploadAccumulatedReportNotification","CheckIsShowOrignalName","RecommendationGroupId","IsMultimedia","attType","getAttachmentsForendByEmail","getGlobalAttachments","WithoutSettlementAttachments","Error","getFollowUpSignatureAttachmentCount","createNewWordFile","CreateNewRecommendation","fillFilterWithModuleId","moduleType","SystemModulesEnum","AssignTasks","ModuleType","getAttachmentGroupsPermissions","getUserAccessLevel","GetUserAttachmentsGroups","getUserAttachmentDefaultGroups","SaveDefaultAttachmnetsGroups","DefaultAttachmnetGroups","getUserAttachmentSettings","Manage","getAdministrationLetterType","annouId","schId","getQRPlaceholder","getQRCode","templateDmsId","getCorrQRCode","getUserPreDefinedSignatureAnnotation","getAttachmentGroupById","isDraftCorrespondence","isGuid","editAttachment","setAsIsFinalRecord","isFinalAttachment","setAsIsDraftRecord","setAsDraftRecord","SendDetailsAndAttachmentByEmail","isSendDetailsAndAttachment","Body","AttachFile","ToMembers","CcMembers","ToMembersEmail","ToMembersCC","copyAttachmentList","CorrespondenceAttachment","editCopyAttachment","selectedAttachmentToEditVersionId","CreateMSWordAddinDownloadLink","sourceId","DmsId","SourceId","getSupportNumberingAttachmentsGroups","getFilteredAttachmentsList","AttGroupId","canUserSignOrMark","correspondenceAttachmentId","signUrl","setAttachmentAnnotations","saveSignatureAnnotationsAlso","secondPassword","annotation","setAttachmentAnnotationsMarking","Marking","AddRecommendation","Recommendation","SelectedRecommendations","EditRecommendation","RecommendationId","DeleteRecommendation","GetRecommendationsByAttachmentId","exportNewCopy","sortRecommendationList","sortableList","doRecommendationAsposeMarge","GetPredefinedRecommendationsByGroupId","moduleId","getAttachmentAnnotationscertified","SaveAttachmentLetterAsAttachmentCorrespondence","commitFile","wopiUrl","discardFile","getRecommendationAttachmentBySubEntityId","corrID","getRecommendationAttachmentBySubExternalContactId","externalContactId","SendToXCList","xcSendFileParamsDto","newLinkAttachment","linkDtos","GetAttachmentLinkItems","attchID","appModule","removeAttachmentLink","GetAllNonLinkedAttachment","parentId","GetScannedImagesCount","dmsFileId","getAttachmentsWithoutGrouping","corrLinkType","isCorrespondenceTask","attachmentModuleType","ShareAttachmentWithIndividual","shareDto","checkIndividual","indvId","SharedIndividuaList","unShareAttachmentWithIndividual","TemplateHasQRCodePlaceHolderAnnotation","PrintAllAttachments","printCorrData","totalSelectedAnnotationTypes","postBlob","printAccumulatedReport","AddAttachment","sourceType","GetSubjectOfParentAttachment","GetPublishedAnnouncementHistory","GetAnnouncementGeneralHandler","getSharedAnnotationUsersList","getFilterCounts","isPaperSizeA4","getBasicAttachmentDetailsById","selectedAttachmentID","CheckUserSignatureMergeFieldsDetails","GetUserStampMergeFieldsDetails","CheckFileHasSignature","SignFileWithMergeField","base64","annotationId","CheckAttachmentHasBlockImageAndSignatureMerge","setTheAttachmentAsMeetingMinutes","isMeetingMinutes","isMeetingMinutesUrl","GetXCGuidanceNotes","GetXCGuidanceNotesPermissions","GetExistingAttachments","AddGuidanceNoteFromExistingFile","newGuidanceNote","selectedFileId","DeleteGuidanceNote","guidanceNoteId","getGuidanceNoteByXCUserId","ModifyGuidanceNotePresidents","newPresidentsIds","GetXCGuidanceNotesHistory","GetClientModules","getAdoptionAttachmentList","canUserAddCorrespondenceAttachments","categoryId","GetUserAnnotatios","convertAttachmentAsWord","downloadOCRReport","jobId","canHideAnnotationAndWatermarkOnDownloadSpecificFiles","LinkedSubCorrespondenceAttachmentsWithParentCorrespondence","parentCorrespondenceId","DmsAttachmentId","HideSubCorrespondenceAttachmentsFromParentCorrespondence","GetCorrespondenceLinkedAttachments","GetAttachmentIdsSharedWithParentCorrespondence","_angular_core__WEBPACK_IMPORTED_MODULE_12__","Read","Delete","ExportCopy","EditCopy","SelectEnum","BerryButtonTypeEnum","correspondenceCategoryIdEnum","appModulesEnum","ngAfterViewInit","getAPIURL","getBerry","set","formatString","str","getSigWebURL","isExternalUser","downloadURL","downloadReportURL","downloadWithSignatureURL","uploadURL","betaSignModule","moduleName","BetaSignModule","stringToBoolean","stringValue","AvatarTypeEnum","user","AvatarComponent","v","setHeader","_size","authService","imgType","isSquare","originImageSource","imagesDictionary","image","xhr","XMLHttpRequest","onreadystatechange","readyState","DONE","imageUrl","setRequestHeader","token","send","features","_c0","_c1","primary","secondary","danger","empty","outline","BerryButtonComponent","_disabled","parentElement","onclick","preventDefault","values","isComponentLoaded","isSubmit","_dataAutomationId","onClick","ButtonType","_angular_core__WEBPACK_IMPORTED_MODULE_0__","width","form","textAreaValue","maxLength","BerryTextAreaComponent","showCounter","onChange","onTouch","registerOnChange","fn","registerOnTouched","provide","NG_VALUE_ACCESSOR","useExisting","forwardRef","multi","BerryTextAreaComponent_div_3_Template","ExecutiveOfficeSVC","executiveOfficebaseUrl","getCorrespondenceAttachments","getUserExecutiveOfficeAutoComplete","checkIfUserCanSkipDraftForTheSelectedOffice","sendXCOfficeItems","linkItemId","changeXCOfficeItemsStatus","loader","noDataFound","querySelector","className","classList","heading","icon","hasClearButton","noDataFound_button_7_Template","FlowPaperBridgeService","marks","getFlexPaperWindow","hasSignatuere","getAllMarksOnPreviewer","f","authorId","author","HeaderDto","ActualLoggedInUserName","ActualLoggedInUserPosition","getAllMarks","getAllMarksForSaving","vShowAndHideAnnotations","showHideUserAnnotationsWithoutSignature","showMarks","showHideUserAnnotationsWithoutPersonal","showPersonalMarks","showHideUserAnnotationsWithoutBlocks","marksStr","setMarks","resetIframeCache","reMark","clearMarks","documentLoadedCallback","drawReadyWordsImages","readyWords","noDataMsg","iframeElement","readyWordsBtnDropDownDiv","innerHTML","childElement","cursor","ReadyWordImageUrl","readyWordImage","selectedReadyWordImage","onSelectReadyWordEvent","removeSelectedRemark","goToPage","pgNumber","gotoPage","getViewerPages","StampsRequestsSvc","getStamRequests","annotationType","Stamp","getStamOtherReques","getScheduleOtherAnnotation","getScheduleAnnotation","getAuthorizedEntityIds","getCountRequestedAnnotatios","getOtherCountRequestedAnnotatios","Add","group","requests","Group","Requests","ReferanceAttachmentAppModule","deleteRequest","delete","getNotAddedStampRequestGroups","withOtherRequest","getNotAddedTopicAttachment","keywordFilter","_r10","authUser_r7","ndx_r8","deleteAuthorizedUser","EmployeeNumber","EmployeeName","_r13","stamp_r2","edit","deleteStamp","StampsCmp_ng_container_9_div_9_Template","addStampUser","StampsCmp_ng_container_9_ul_16_Template","autoCompleteWidth","AuthorizedAnnotationUsers","userEntityAutoComplete","selectedId","StampsCmp","stampsSvc","presidentUserId","imageURL","IsCommittee","addStamp","uploadImage","PhotoVersion","GetEntityStamps","getAllStamp","stamps","ImageData","objectURL","stamp","AnnotationId","entityName","AuthorUser","ClearComboBox","deleteStampUsers","reloadStamps","_url","StampsCmp_ng_container_9_Template","StampsSvc","referenceId","isAdminPage","getStampById","stampId","modifyStamp","createStamp","getStampUsers","authorizedAnnotationId","UserProfileSvc","applicationURL","GetUserProfile","checkIfClientHasMeetingModule","checkIfClientHasCorrespondenceModule","updatePassword","addedUserSyncAccountDto","addUserSyncAccount","validateAccount","AccountEmail","AccountPassword","cancelAddUserSyncAccount","generateOutlookAuthenticationURL","generateGoogleAuthenticationURL","getMicrosoftAuthenticationConfigs","SyncAccountTypeEnum","getUserSyncAccount","insertEvents","deleteUserSyncAccount","AddFollowupUser","RemoveFollowupUser","GetFollowupUsers","GetAttachmentTypesForProfile","GetTimeZones","SetTimeZone","saveCorrSortType","EditForwardingUser","GetForwardingUser","GetUserPreferences","SaveUserFilterSearchCriteria","SetUserPreferences","GetUserPreferencesByKey","ShowOrHideUserNotificationInformativeMessage","SetShowUserNotificationInformativeMessageSetting","showInformativeMessage","ShowInformativeMessage","isCommitteeManager","observableThrowError","_r8","Export","_r11","OrderByAsc","AudittraillistComponent_div_4_ul_6_Template","item_r15","ActualUserDetail","AudittraillistComponent_table_17_tr_28_h5_2_a_2_Template","AudittraillistComponent_table_17_tr_28_h5_2_span_3_Template","Impersonated","UserDetail","AudittraillistComponent_table_17_tr_28_h5_2_Template","ChangeDescription","Message","AppClientTypeName","AuditTrailDateFormatted","_r23","ctx_r22","UserSearch","GetNewAuditTrailDate","AuditTrailType","AudittraillistComponent_table_17_tr_28_Template","UserAutocompleteOption","NewAuditTrailTypeAutocompleteOption","maxDateOptions","entities","_c2","item_r30","AudittraillistComponent_div_18_div_19_h5_9_a_2_Template","AudittraillistComponent_div_18_div_19_h5_9_span_3_Template","AudittraillistComponent_div_18_div_19_h5_9_Template","ChangeDate","MachineIPAddress","AudittraillistComponent_div_18_div_19_Template","AudittraillistComponent","isDbAuditEnabled","IsDbAuditEnabled","isLegacyAuditEnabled","IsLegacyAuditEnabled","isShowBothAuditsUI","ShowLegacyAndNewAuditsUI","toggleTableOrVisible","isAsc","autocompleteDefaultOptions","exportingInProgress","EntityNameType","entityNameType","MainPkValue","pkValue","PageId","IsAsc","AuditTrailTemplate","From","OrderByColumn","getNewAuditTrailDate","column","doPost","AudittraillistComponent_button_3_Template","AudittraillistComponent_div_4_Template","AudittraillistComponent_table_17_Template","AudittraillistComponent_div_18_Template","AudittraillistComponent_div_19_Template","AudittraillistComponent_div_20_Template","AudittraillistComponent_div_21_Template","EntityNameTypesEnum","ScheduleItem","ArchiveItem","Initiative","CaseFile","AudittraillistModule","_angular_core__WEBPACK_IMPORTED_MODULE_9__","AuditTrailListSvc","RequestMethod","Get","Post","BerryDropdownComponent","setDisabledState","extraSearchFields","_extraSearchField","externalQuery","_externalQueryValue","cdr","searchTerm","emptyList","loading","initialDatasource","appendTo","noDataTemplate","NoData","dataSourceRequestMethod","notFoundText","allowQueryParams","onChangeEmmiter","onSearchChangeEmmiter","clearAllText","onAddExternalEmitter","allowExternalAdd","groupBy","disableSelect","isAPIHasLimit","onChangeCallback","_","onTouchedCallback","ngOnChanges","changes","currentValue","fetchData","dataSoruce$","Observable","query","dataSourceRequestMethodBody","checkDataAutomationId","selectedItems","item1","item2","searchFn","items","selected","onSearchChange","term","constructNoDataFound","createButton","createNoDataFoundText","innerText","addEventListener","ev","onSelectionChange","selectedValue","isDisabled","onClear","buildQueryParam","onOpenList","divElements","querySelectorAll","closeList","onCloseList","removeEventListener","contentQueries","dirIndex","BerryDropdownMultiSelectComponent_2_ng_template_0_ng_container_0_Template","labelTemplate","item_r4","BerryDropdownMultiSelectComponent_2_ng_template_0_Template","BerryDropdownMultiSelectComponent_3_ng_template_0_ng_container_0_Template","optionTemplate","item_r7","BerryDropdownMultiSelectComponent_3_ng_template_0_Template","BerryDropdownMultiSelectComponent","BerryDropdownMultiSelectComponent_2_Template","BerryDropdownMultiSelectComponent_3_Template","backClicked","_r15","_r17","search","searchPlaceholder","searchAutomationId","SideBarComponent_ng_container_2_ng_container_1_ng_container_3_Template","SideBarComponent_ng_container_2_ng_container_1_ng_container_4_Template","SideBarComponent_ng_container_2_ng_container_1_ng_container_5_Template","enableBackButton","enableBackLabel","onSearch","SideBarComponent_ng_container_2_ng_container_1_Template","getValue","item_r20","unread","checkCounteMoreThanOneHundred","SideBarComponent_ng_container_4_ng_container_2_ng_container_1_div_1_ng_container_3_div_3_div_1_Template","isDangerNumber","SideBarComponent_ng_container_4_ng_container_2_ng_container_1_div_1_ng_container_3_div_3_Template","_r36","i_r21","onClickItem","SideBarComponent_ng_container_4_ng_container_2_ng_container_1_div_1_ng_container_2_Template","SideBarComponent_ng_container_4_ng_container_2_ng_container_1_div_1_ng_container_3_Template","selectedButton","routeTo","enableIconNumber","isCollapse","SideBarComponent_ng_container_4_ng_container_2_ng_container_1_div_1_Template","SideBarComponent_ng_container_4_ng_container_2_ng_container_2_div_1_i_1_Template","SideBarComponent_ng_container_4_ng_container_2_ng_container_2_div_1_Template","ctx_r48","SideBarComponent_ng_container_4_ng_container_2_ng_container_3_div_1_ng_container_3_div_3_div_1_Template","SideBarComponent_ng_container_4_ng_container_2_ng_container_3_div_1_ng_container_3_div_3_Template","subItem_r52","SideBarComponent_ng_container_4_ng_container_2_ng_container_3_div_1_ng_container_9_div_1_div_4_div_1_Template","idx_r53","SideBarComponent_ng_container_4_ng_container_2_ng_container_3_div_1_ng_container_9_div_1_div_4_Template","getCurrentLink","exactRoute","subChild_r66","SideBarComponent_ng_container_4_ng_container_2_ng_container_3_div_1_ng_container_9_div_3_div_4_div_1_Template","_r73","k_r67","SideBarComponent_ng_container_4_ng_container_2_ng_container_3_div_1_ng_container_9_div_3_div_4_Template","SideBarComponent_ng_container_4_ng_container_2_ng_container_3_div_1_ng_container_9_div_1_Template","SideBarComponent_ng_container_4_ng_container_2_ng_container_3_div_1_ng_container_9_div_3_Template","ctx_r46","children","_r80","ctx_r78","collapseMenu","collapsibleSubMenu","SideBarComponent_ng_container_4_ng_container_2_ng_container_3_div_1_ng_container_3_Template","ctx_r81","onCloseMenuContent","SideBarComponent_ng_container_4_ng_container_2_ng_container_3_div_1_ng_container_9_Template","getMenuHeight","openMenus","checkResize","_c13","isSubMenuGreaterThanSidebar","sidebarOffsetTop","addClassBottomViewStyleOnMenuContent","_c14","closeMenuContent","_c15","itemActiveCount","SideBarComponent_ng_container_4_ng_container_2_ng_container_3_div_1_Template","SideBarComponent_ng_container_4_ng_container_2_ng_container_1_Template","SideBarComponent_ng_container_4_ng_container_2_ng_container_2_Template","SideBarComponent_ng_container_4_ng_container_2_ng_container_3_Template","isHideAllChildren","SideBarComponent_ng_container_4_ng_container_2_Template","navItems","collapseSidebar","SideBarComponent_ng_container_9_ng_container_2_Template","SideBarComponent_ng_container_9_ng_container_3_Template","SideBarComponent","onScroll","srcElement","sidebarEl","offsetTop","isContentExternalHeader","externalHeader","childNodes","isContentExternalFooter","externalFooter","isContent","externalContent","viewInternalFooter","isLoaded","disableResize","collapsible","isContentInternalHeader","sum","isResponsiveStyle","disableResponsiveFromOptions","disableResponsive","setOpenSubmenu","subItem","addCondition","isDisable","navagationBased","subItems","reduce","accumulator","currentIndex","array","scrollToActiveItem","scrollIntoView","_location","onPressBack","innerWidth","initSelectedItem","events","NavigationEnd","fillActiveSideBar","itemIndex","totalAvailableItemsHeight","isTotalAvailableItemsHeightGreaterThanScreen","innerHeight","child","MenuHeight","offsetHeight","getSearchTextFromURL","searchUrlParam","taskName","decodeURIComponent","SideBarComponent_ng_container_2_Template","SideBarComponent_ng_container_4_Template","SideBarComponent_ng_container_8_Template","SideBarComponent_ng_container_9_Template","_c17","SignatureSVC","declineAttachmentAnnotations","pin","Headers","RequestOptions","SaveLettersAnnotations","setAttachmentAnnotationsWithAnnoution","signatureTypes","setAttachmentAnnotationsWithAnnoutionMarking","getUserSignatureToSignAttachment","isCorrScheduleLinkedAttachment","isMarkingRequest","getAllLettersAttachmentsOfRelatedCorrespondece","RelatedCorrespondenceId","LetterTemplatesType","SelectedExternalRecipients","letterIDs","isCalledFromPreviewLetters","GetattachmentIdsByPageIndex","isStampRequest","selectedTab","EntityCardComponent_div_6_div_2_div_6_div_1_div_6_Template","entity_r12","imageType","indx_r13","committee","CommitteeName","entityManagerId","entityManagerName","EntityCardComponent_div_6_div_2_div_6_div_1_Template","EntityCardComponent_div_6_div_2_div_6_div_2_Template","EntityCardComponent_div_6_div_2_div_6_div_3_Template","entitiesList","isCommittee","emp_r16","EntityCardComponent_div_6_div_2_div_7_div_3_berry_avatar_2_Template","EntityCardComponent_div_6_div_2_div_7_div_3_berry_avatar_3_Template","UserName","userRole","EntityCardComponent_div_6_div_2_div_7_div_3_Template","empolyeesCount","committeeMembersList","entityEmployeesList","EntityCardComponent_div_6_div_2_div_5_Template","EntityCardComponent_div_6_div_2_div_6_Template","EntityCardComponent_div_6_div_2_div_7_Template","canViewMembersTab","_r25","mouseEnterPopup","mouseleavePopup","stopPropagation","EntityCardComponent_div_6_div_1_Template","EntityCardComponent_div_6_div_2_Template","EntityCardComponent","_entityCardService","cssClass","floor","random","disableHover","listItemLength","canViewCommitteeInfo","cardsList","dropdown","onHidden","mouseEnterContent","hideDropdownTimeout","timeIn","mouseleaveContent","timeOut","GetEntityCardDetails","openDDL","onMouseOver","relocate","content","getElementsByTagName","emp","RoleName","managerInfo","EntitiesList","EntityEmployeesList","CommitteeMembersList","IsPresident","CanViewCommitteeInfo","CanViewMembersTab","BsDropdownDirective","EntityCardComponent_div_6_Template","EntityCardService","FileUploadService","upload","FileUploaderComponent","_isMultiple","fileUploadService","viewAsButton","inputDataAutomationId","hasBaseDropZoneOver","hasAnotherDropZoneOver","shortLink","triggerFileUploadClick","fileOverBase","fileOverAnother","reader","onload","_event","imageChoosen","removeSelectedFile","acceptType","noTagsClick","noTagsFlag","i_r10","reBuildJson","isdisabled","hijriAttachmentDate","item_r9","AttachmentDate","OrganizationValue","CorrFilesLocation","_r34","IsOwnerContact","fbAccompanyingDocumentComponent_ng_container_11_div_3_div_8_Template","fbAccompanyingDocumentComponent_ng_container_11_div_3_div_9_Template","fbAccompanyingDocumentComponent_ng_container_11_div_3_div_10_Template","fbAccompanyingDocumentComponent_ng_container_11_div_3_div_11_Template","hasDate","hasNumber","hasOrganization","correspondenceCategory","fbAccompanyingDocumentComponent_ng_container_11_div_3_Template","selectedAccopanies","fbAccompanyingDocumentComponent","CorrespondenceCategory","enableSelecterAccopanies","enableMulti","attachmentDate","initialValue","sort","b","DispalyOrder","AccompanyingDocumentId","ExterContactId","valuesChange","accompanyingAttachmentsCombobox","input","on","accompanyingAutoComplateName","keyPressed","onSelectChange","controlName","Alternative","ISODate","clearFrom","onNoTagsClick","isMultiValueCtrlMappedToDb","enbleNoTags","datePickersSlideUp","ngShortDateFormat","DateTimePipeFormatEnum","displayShortDateFormatNg","accompanyingDocumentLinks","IComboboxOptions","accompanyingAutoComplate","accompanyingDocumentId","buildForm","getJsonValue","setValue","getFieldsElasticSearchProperties","getAccompanyingDocumentById","fbAccompanyingDocumentComponent_div_2_Template","fbAccompanyingDocumentComponent_span_7_Template","fbAccompanyingDocumentComponent_ng_container_11_Template","fbDocsRalatedTagsComponent","onDocsRalatedTagsSelected","DocsRalatedTags","KWSelectOptions","docsRalatedTags","InitialValues","attachmentExists","hasEvidencesChanged","item_r14","OnSelectRadio","i_r15","deleteSelectedAttachment","fbAttachmentListComponent_li_3_input_3_Template","fbAttachmentListComponent_li_3_span_4_Template","fbAttachmentListComponent_li_3_i_5_Template","fbAttachmentListComponent_li_3_i_6_Template","fbAttachmentListComponent_li_3_i_7_Template","fbAttachmentListComponent_li_3_i_8_Template","fbAttachmentListComponent_li_3_i_9_Template","fbAttachmentListComponent_li_3_i_10_Template","fbAttachmentListComponent_li_3_i_11_Template","fbAttachmentListComponent_li_3_div_18_Template","ShowSetAsFinalFormRadioButton","isFromYesser","isSuported","CreatedOnString","CanDeleteDraftAttachment","ctx_r33","showAddAttachmentModal","getYesserAttachmentList","_r39","ctx_r38","vShowAttachmentList","fbAttachmentListComponent_li_6_div_7_Template","onCompleteItem","IsOwner","isHideAttachmentsGroup","item_r47","fbAttachmentListComponent_ng_container_18_li_3_span_5_Template","fbAttachmentListComponent_ng_container_18_li_3_i_6_Template","fbAttachmentListComponent_ng_container_18_li_3_i_7_Template","fbAttachmentListComponent_ng_container_18_li_3_i_8_Template","fbAttachmentListComponent_ng_container_18_li_3_i_9_Template","fbAttachmentListComponent_ng_container_18_li_3_i_10_Template","fbAttachmentListComponent_ng_container_18_li_3_i_11_Template","fbAttachmentListComponent_ng_container_18_li_3_i_12_Template","AttachmentContentType","AttachmentFilename","fbAttachmentListComponent_ng_container_18_li_3_Template","yesserAttachmentList","fbAttachmentListComponent","EGovCorrId","_EGovCorrId","_AttachmentGroupId","IsFromYesser","ShowAddBtn","printQrCodeWhenAddAttachments","CanAddDraftAttachment","showCheckBox","_showCheckBox","InputAttachments","AppModuleId","_categoryId","assignService","initiativeSvc","EnableAddOptions","DeleteUrl","ConstUrls","DeleteServiceURL","hideAttachmentComponent","YesserAttachmentPopuppOption","selectedAttachmentsIds","boeNewCorrespondences","correspondenceAttachmentsPopupOption","vSaveAttachments","SelectedAttachmentsIds","unSelectedAttachmentIds","popupAttachment","attacmentItems","GroupModuleTypeId","GroupName","GroupType","animate","dtmHelper","CreatedOn","GetEGovAttachments","findIndex","addSelectedAttachments","yesserAttachmentPopup","relatedAttachmentID","selectedAtt","AttachmentsGroupId","CreatedDate","deleteUrl","PrimaryId","checkboxes","GetTaskAttachments","attachmentCmp","SelectedAttachmentIds","correspondenceAttachmentsPopup","relatedGuidId","relatedTypeId","relatedIntId","CommitteeId","bIsDisabledAttachments","GetSelectedAttachmentsId","UploadDateShortFormat","array_ids","i12","i13","_angular_core__WEBPACK_IMPORTED_MODULE_15__","fbAttachmentListComponent_label_0_Template","fbAttachmentListComponent_li_3_Template","fbAttachmentListComponent_li_4_Template","fbAttachmentListComponent_li_5_Template","fbAttachmentListComponent_li_6_Template","fbAttachmentListComponent_div_13_Template","fbAttachmentListComponent_div_17_Template","fbAttachmentListComponent_ng_container_18_Template","InitiativeUserDto","i_r2","_r4","removeItem","contact_r1","fbIndividualContactsControlComponent","defaults","autocompleteDefaultOptionsForUser","comboBoxServerSearchDatasourceDefaultOptionsForUser","userAutocompleteOptions","selectedItem","selectItemToList","addItemToList","initiativeUser","UserID","State","ObjectState","Added","fbIndividualContactsControlComponent_div_2_Template","InitiativeOrganizationDto","fbOrganizationContactsControlComponent","comboBoxServerSearchDatasourceDefaultOptions2","organizationsAutocompleteOptions","openAddContactsModal","initiativeOrg","OrganizationID","fbOrganizationContactsControlComponent_div_2_Template","fbCorrespondenceCountryComponent","lookupHelpers","countrySelectOptions","itemTemplate","tagTemplate","correspondenceContry","KeywordTagsControl","onCountriesSelected","CountryCodeISO2","_r2","collapseOnClick","hideCorrespondencesShelvingSection","showBasicCorrespondenceShelving","isPrivate","Confidentiality","importance","filingStorageSvc","fbCorrespondenceFilingFeatures","CorrespondenceFilingFeatures","newCorrespondenceSvc","borrowRequestsvc","categoryTypeClassificationSvc","formBuilderApiSvc","storageShelvesSvc","isHideShelvingSection","rawUrlTree","segments","path","catId","showCorrespondanceFilingFeatures","ShowCorrespondanceShelvingFeatures","filingLocationGroup","_angular_core__WEBPACK_IMPORTED_MODULE_10__","fbCorrespondenceFilingFeatures_div_0_Template","fbCorrespondenceKeywordComponent","correspondenceKeyword","onKeywordsTagsSelected","CorrespondenceKeywordLinkedItem","correspondenceKeywordId","CorrespondenceKeywordId","_r21","additionalExternalRecipient_r11","openCorrespondenceUnattachedPopup","CorrespondenceUnattacheds","fbExternalRecipientAsCopyComponent_div_0_div_4_div_15_div_12_span_2_Template","fbExternalRecipientAsCopyComponent_div_0_div_4_div_15_div_12_a_3_Template","fbExternalRecipientAsCopyComponent_div_0_div_4_div_15_div_12_span_4_Template","fbExternalRecipientAsCopyComponent_div_0_div_4_div_15_div_12_span_5_Template","fbExternalRecipientAsCopyComponent_div_0_div_4_div_15_div_12_a_6_Template","Unattached","NumberOfUnattached","_r29","checkForDuplicatedAndSupportElectronic","ItemIndex","LetterTypeId","fbExternalRecipientAsCopyComponent_div_0_div_4_div_15_div_12_Template","RemoveExternalRow","correspondenceExternalRecipientsAutocompleteOptions","isReadonly","index_r12","IsForCommunications","enableAdvancedTangibleItems","correspondenceExternalRecipientGroupObj","checkIfExternalRecipientExisit","addNewExternalRecipientsFromGroup","getAllExternalRecipients","_r9","focus","fbExternalRecipientAsCopyComponent_div_0_div_4_div_15_Template","IsWhiteColor","allExternalRecipientGroupsWithExternalContactAutocompleteOptions","isGroupListDisabled","selectedCorrespondenceExternalRecipientsTemp","_r41","fbExternalRecipientAsCopyComponent_div_0_label_3_Template","fbExternalRecipientAsCopyComponent_div_0_div_4_Template","fbExternalRecipientAsCopyComponent_div_0_div_5_Template","RegularFormsUsage","EnableAddExternalRecipientAsCopy","isPaginationAvailable","ExternalRecipientUnattached","tangable_r43","UnattachedTypeId","UnattachedName","ValidateNumber","preventNegativeNumber","Description","UpdateExternalRecipientUnattached","UnattachedTypesCombo","idx_r44","correspondenceUnattachedInList","RowId","fbExternalRecipientAsCopyComponent_div_19_ng_container_1_Template","AddNewUnattachedRow","UnattachedArray","_r56","ValidateIsIntNumber","fbExternalRecipientAsCopyComponent","isEngilsh","flag","_regularFormsUsage","ExternalRecipientId","_ExternalRecipientId","isCustomDesign","_isCustomDesign","externalContacts","_externalContacts","parentSaved","_parentSaved","externalContactAdded","correspondenceExternalRecipients","NationalCode","fb","isMaxLength","notValidNumber","numberOfCorrespondenceExternalRecipients","IExternalRecipientGroupDto","filteredItems","IsEditMode","_additionalExternalrecipiens","_additionalExternalRecipientEntity","comboBoxServerSearchDatasourceDefaultOptionsRecipientGroups","selectedPage","CorrespondenceExternalRecipientDto","tangibleItems","rowId","RemoveUnattachedFromAllExternalRecipients","settingValue","getAddExternalRecipientAsCopySetting","getAdvancedTangibleItemsSetting","resetData","externalIds","externalEntityIds","_index","_indexTemp","IsSupportElectronic","ExternalRecipientEntity","isExist","ExternalContacts","ids","ExternalContactId","selectedExternal","_maxIndex","max","selectedRecipient","ExternalRecipientid","getExternalRecipients","externalRecipient","correspondenceUnattachedPopup","closeCorrespondenceUnattachedPopup","tangibleItem","RemoveUnattachedFromExternalRecipient","AddUnattachedToExternalRecipient","u","ctrlKey","metaKey","shiftKey","fbExternalRecipientAsCopyComponent_div_0_Template","fbExternalRecipientAsCopyComponent_span_16_Template","fbExternalRecipientAsCopyComponent_span_17_Template","fbExternalRecipientAsCopyComponent_div_19_Template","fbExternalRecipientAsCopyComponent_div_20_Template","LetterTypeIdEnum","Original","Copy","RepeatedOriginal","CopyFromOriginal","_r3","deleteInternalRecipient","addInternalRecipient","internalRecipientdbId","internalRecipient","additionalParamsTo","FbForwardedToRecipientComponent","isOutoingCategory","getCorrespondenceBaseCategory","baseCategoryId","InternalForPresident","isAddressedToType","category","FbForwardedToRecipientComponent_ng_container_0_Template","FbForwardedToRecipientComponent_ng_container_1_Template","index_r2","onAddionalInternalRecipient","correspondenceRecipient_r1","checkIfDuplicated","removeRecipient","onDeleteButtonPermission","letterType","fbInternalRecipientComponent","numberOfCorrespondenceRecipients","correspondenceRecipients","entitiesAndUsersInfo","addNewRecipients","CorrespondenceInternalRecipientDto","Index","ContactID","DuplicatedAdditionalInternal","recipients","fbInternalRecipientComponent_div_1_Template","andAlsoToEntitiesAndUsersInfo","AddionalInternalRecipient_r1","RemoveInternalRow","letterTypeIdEnum","fblInternalRecipientsAsCopyComponent","DraftMode","isDraftMode","CorrespondenceInternalRecipients","selectedAdditionalInternalRecipients","selectedEntities","selectedRecipients","FromBuilderAdditionalInternalRecipients","AdditionalInternalRowId","AdditionalInternalRecipientsRowId","AddNewInternalRow","draftMode","isForCommunications","isInternalRecipientsAsCopy","getAdditionalInternalEntitiesAndUsers","MapInternalRecipientsToDto","RecipientType","Unchanged","InternalRecipientDto","getUsers","getEntities","fblInternalRecipientsAsCopyComponent_div_1_Template","fbDeadLineDateComponent","changeDeadlineDate","deadlineDatePicker","days","getDateDifference","DeadlineAfterDays","isFirstDatePickerLoad","changeDeadlineDateDuration","onDeadlineAfterDaysBlur","CorrespondenceDeadlineLimitation","noDeadlineClick","noDeadline","noDeadlineFlag","DeadLineInDate","SelectedUrgency","LookupUrgencies","urgencyObj","isOnlyCalssification","deliveryDateType","eq","css","changeDeadlineDateType","date1","date2","timeDiff","abs","DateHelper","correspondenceFormStatusService","isExport","onlyCalssification","isCopy","minDateOptions","minDate","Urgency","DeliveryDate","finalDate","_correspondenceId","optionFields","messageId","ChangeUrgency_click","unSubscribe","pareseStringToJsDate","ControlIdName","Enabled","calculatedTime","ms","prototype","IsGeorgian","actionDeadlinePeriodChangeValue","daysNum","daysNo","changedDate","periodChangeValue","current","now","CorrespondenceFormStatusService","_r0","_r1","fbDiwanNotificationNumberComponent","diwanNumber","keyPress","MonitoredInformationDto","LookupSourceType","IsAuthenticatedAccount","MonitoredInformationCreatorSourceType","MonitoredInformationCreatorSourceTypeEnum","Annonymous","CommunicatingWithInformationSource","CommunicationResult","NeedReward","RewardIndividualId","RejectRewardReason","UrgencyLevel","lstLookupInformationSourceCategory","lstLookupInformationSourceSubCategory","InformationSourceCategoryId","UserAtOrganization","IndividualUser","UrgencyLevelEnum","External","NotConfidential","type_r4","subType_r5","fbInformationSourceComponent","_infoSvc","isIndividual","IsUserAtOrganization","IsKnownPerson","AnyOtherPersonInfoSourceType","IsSocialMedia","isUser","isConfidential","isExternal","isNotConfidential","_monitoredInformationDto","individualAutocompleteOptions","isNeedReward","GetLookupByCaetegory","IndividualContact","IndividualDisplayName","getInformationSourceLookupLst","LookupTypeEnum","InformationSourceCategory","getUserInfo","SelectedUserName","CloneSelectedUserName","Lookupid","getInformationSourceSubCatrgories","InformationSourceCategoryType","getSourceIdChange","isInformationSourceContacted","AgreeResult","RejectResult","OnSelectRadioUrgencyLevel","_r6","fbInformationSourceComponent_option_7_Template","fbInformationSourceComponent_option_17_Template","InformationSourceService","lookupType","selectedTypeId","publicEmployees","employeeName","_employeeName","others","details","_details","deleteProclamedEntityType","_r20","proclamedEntityTypesRadio","onRadioChange","SetCityAndStateDefaultValuesForPublicContacts","publicContacts","proclamedEntityType_r1","controls","_publicContactGroup","hfArea","markAsTouched","SetCityAndStateDefaultValuesForPublicComponies","publicComponies","_publicComponyGroup","fbproclamedEntityTypesComponent_div_2_input_52_Template","fbproclamedEntityTypesComponent_div_2_input_53_Template","fbproclamedEntityTypesComponent_div_2_input_60_Template","fbproclamedEntityTypesComponent_div_2_input_61_Template","area","_publicEmployeeGroup","_otherGroup","city","ctx_r50","hfCity","fbproclamedEntityTypesComponent_div_2_a_131_Template","_proclamedEntityTypesRadioGroup","_currentRadioValue","hfCurrentRadioValue","_externalContact","externalContactAutoCompleteOptions","hfExternalContact","_area","statesAutocompleteOptions","_city","cityAutocompleteOptions","numberOfProclamedEntityTypes","fbproclamedEntityTypesComponent","formService","contactHelpers","publicContact","publicCompony","publicEmployee","other","_proclamedEntities","_publicContact","_publicCompony","_publicEmployee","_other","_proclamedEntityTypesRadio","radioButtonCurrentValue","addAnotherproclamedEntityType","proclamedEntityTypeFrm","entityTypes","publicContactGroup","getValidators","proclamedEntityTypes","PublicContact","publicComponyGroup","PublicCompony","publicEmployeeGroup","PublicEmployee","otherGroup","Other","proclamedEntityType","Validators","required","addControl","proclamedEntities","ElasticSearchPropertyType","Integer_type","String_text_type","markFormAsTouched","ProclamedEntitiesSelected","valid","addNewCollection","updateValueAndValidity","proclamedEntityTypePublicContactPublicCompony","proclamedEntityTypePublicEmployee","proclamedEntityTypeOther","resetPublicContactsValues","resetPublicCompanyValues","resetPublicEmployeeValues","resetOtherValues","ContactAddresses","address","StateID","CityID","fbproclamedEntityTypesComponent_div_2_Template","fbProclameeCountry","ProclameeCountryId","ProclameeTypeIsIndividual","countriesAutoComplete","ClientCountryId","getClientCountryId","countryChange","fbProclameeCountry_div_4_Template","fbProclameeState","LookupHelper","SearchSvc","showProclameeState","ProclameeStateId","ProclameeStateName","stateAutocompleteOptions","getStatesBasedOnGeneralSetting","stateId","StatesElement","userOptions","updateDataSource","states","StateNameAr","fbProclameeState_div_7_Template","proclameeType","SupervisoryAuthorityType","OutsideOrganizationType","outSidePositionId","OutsidePosition","onOutsidePositionChange","OrganizationPoistionsOptions","ProclameeTypeSourceType","ProclameeType","ProclamatorIndividualId","ProclamatorUserlId","FromInsideCompanyPositionArId","FromInsideCompanyPositionEnId","FromOutsideCompanyPositionArId","FromOutsideCompanyPositionEnId","fbproclameeTypeComponent","checkProclemeeType","withReset","tempOrganizationType","emptyPositionValues","InsidePosition","InsidePositionText","resetPositions","autoCompleteOptions","individualOptions","organizersOptions","RoleIsDisabled","positions","changeOutsiderProclameeType","onInsidePositionChange","setInsidePositionId","insidePositionId","setOutsidePositionId","OutsiderProclameeTypeEnum","fbproclameeTypeComponent_div_29_Template","fbproclameeTypeComponent_div_35_Template","HighLevel","MoralePerson","SupervisoryAuthority","InsideTheEntity","UpdateOrganizationRoles","fbproclameeComponent_div_0_div_9_Template","organizer","fbproclameeComponent","isUnknownProclamee","_isUnknownProclamee","aRoute","resolver","messageSubscribeIds","loadIndividualInformations","PrimaryEmail","individualQuickEntryCmp","individualQuickEntryCmpFactory","resolveComponentFactory","componentRef","createComponent","ViewContainerRef","fbproclameeComponent_div_0_Template","ForwardToDocumentCenter","DocumentCenterEntityId","documentCentersAutocomplete","fbSendProclamationDocumentCenter","lookupSvc","ShowForwardToDocumentCenter","sourceTypes","sourceTypeId","selectedSourceTypeId","getLookups","GetLookups","ProclamationSourceType","isSourceTypeValid","TargetEnumTypeId","LookupSvc","fbSendProclamationDocumentCenter_div_0_Template","tangibleItemsComponent_div_0_label_2_span_2_Template","isAttachmentNumberRequired","idx_r9","onAddAdditionalAttachmentsDesc","tangable_r8","_r19","tangibleItemsComponent_div_0_ng_container_4_ng_container_6_input_8_Template","tangibleItemsComponent_div_0_ng_container_4_ng_container_6_input_9_Template","tangibleItemsComponent_div_0_ng_container_4_ng_container_7_input_4_Template","tangibleItemsComponent_div_0_ng_container_4_ng_container_7_input_5_Template","_r31","tangibleItemsComponent_div_0_ng_container_4_ng_container_6_Template","tangibleItemsComponent_div_0_ng_container_4_ng_container_7_Template","DeleteCurrentUnattachedRow","ShowDescriptionBeforeNumberForPhysicalAttachmentsfield","tangibleItemsComponent_div_0_label_2_Template","tangibleItemsComponent_div_0_ng_container_4_Template","tangibleItemsComponent_div_0_a_5_Template","tangibleItemsComponent_div_0_a_6_Template","EnableAdvancedTangibleItems","tangibleItemsComponent_div_1_div_1_span_3_Template","_r49","AttachmentsNumber","tangibleItemsComponent_div_1_div_1_span_5_Template","tangibleItemsComponent_div_1_div_1_div_6_Template","tangibleItemsComponent_div_1_div_1_Template","AttachmentsDesc","EnableAttachmentsNumber","tangibleItemsComponent_div_2_div_6_span_3_Template","tangibleItemsComponent_div_2_div_6_span_5_Template","tangibleItemsComponent_div_2_div_6_div_6_Template","_r63","tangibleItemsComponent_div_2_div_6_Template","tangibleItemsComponent","_enableAdvancedTangibleItems","basic","isCustomInternalDesign","_isCustomInternalDesign","_enableAttachmentsNumber","isDetailsHeaderEdit","_isDetailsHeaderEdit","isAttachmentsNumberRequiredField","hideUnattachedNumberFromBasicTangibleItems","basicUnattached","BasicUnattached","UnattachedRowNumber","AdditionalAttachmentsNumber","AdditionalAttachmentsDesc","UnattachedCount","getDescriptionBeforeNumberForPhysicalAttachmentsfieldSetting","getIsHideUnattachedNumberFromBasicTangibleItems","ngAfterContentChecked","AdditionalUnattached","getRowIds","getMaxRowIds","row","AdditionaUnattached","CheckIfTangableDuplicated","tangibleItemsFrm","numericValue","ValidAttachmentsNumber","ValidateUnattachedArray","tangibleItemsComponent_div_0_Template","tangibleItemsComponent_div_1_Template","tangibleItemsComponent_div_2_Template","String_keyword_type","Short_type","Long_type","Double_type","Float_type","Byte_type","Boolean_type","Binary_type","Date_type","Integer_range_type","Float_range_type","Long_range_type","Double_range_type","Date_range_type","Nested_type","FormBuilderApiSvc","FormService","markFormGroupAsTouched","formGroup","control","formControl","childJsonValue","updateValue","itemChange","comboboxBowsValue","comboboxText","onComboboxBlur","disabledInput","comboboxValue","comboboxItem","noDropdownArrow","dependsOn","kItemEvent","kTextEvent","onBlure","Extraparamet","kUrl","clearValue","kInitial","sendToAutoComplete","getImgId","item_r17","ForwardList_div_0_ng_container_5_div_1_ng_container_1_berry_avatar_1_Template","ForwardList_div_0_ng_container_5_div_1_ng_container_1_berry_avatar_2_Template","tRole","parentPrefered","tUserEntityName","getEntityId","tImmediateStandAlonEntityName","ndx_r18","deleteSenderTo","SelectSender","ForwardList_div_0_ng_container_5_div_1_ng_container_1_Template","ForwardList_div_0_ng_container_5_div_1_ng_container_2_Template","ForwardList_div_0_ng_container_5_div_1_span_8_Template","ForwardList_div_0_ng_container_5_div_1_div_9_Template","ForwardList_div_0_ng_container_5_div_1_span_11_Template","ForwardList_div_0_ng_container_5_div_1_ng_container_12_Template","ForwardList_div_0_ng_container_5_div_1_berry_button_16_Template","ForwardList_div_0_ng_container_5_div_1_input_17_Template","tNameTooltip","tName","isAssignmentsEnabled","getParentPreferedPermission","isEntityStandAloneEnabled","tNumber","deleteButtonPermission","tId","selectButtonPermission","_r60","ForwardList_div_0_ng_container_5_div_2_berry_avatar_6_Template","ForwardList_div_0_ng_container_5_div_2_berry_avatar_7_Template","ForwardList_div_0_ng_container_5_div_2_span_12_Template","ForwardList_div_0_ng_container_5_div_2_span_14_Template","ForwardList_div_0_ng_container_5_div_2_ng_container_15_Template","ForwardList_div_0_ng_container_5_div_2_berry_button_16_Template","ForwardList_div_0_ng_container_5_div_2_input_17_Template","isEntity","ForwardList_div_0_ng_container_5_div_1_Template","ForwardList_div_0_ng_container_5_div_2_Template","isMini","ForwardList_div_0_ng_container_2_Template","ForwardList_div_0_ng_container_3_Template","ForwardList_div_0_ng_container_5_Template","Items","isCombobox","enableScroll","ForwardList","comboboxBlur","deleteButtonPermissionWithOutPrm","blur","isAlreadyItemPushed","kItem","autoCompleteElm","itemC","comboboxElm","kText","indx","isCustomDelete","deleteItem","sender","selectItem","componentIsloaded","_toaster","forwardListService","showEntityParentPreferedInCombobox","httpMethod","tImageSrc","tValue","dataItem","IsOnVacation","IsResearcherForward","entityStandAlone","Assignments","forwardListImage","backgroundImage","UserEntityName","ImmediateStandAlonEntityName","VacationDuration","ForwardList_div_0_Template","ForwardListService","imageSource","AccessGuard","_isLoggedIn","haveAccess","landingPageGuardSVC","LandingPageGuardService","$user","LocalizationService","triggered","getLocalization","locKey","LocDictionary","toUpperCase","disableBtns","btn_r16","PopupComponent_ng_container_24_ng_container_2_button_1_Template","btn_r23","actionHandler","PopupComponent_ng_container_24_ng_container_4_button_1_Template","closeBtn","btn_r33","isForm","PopupComponent_ng_container_24_ng_container_6_button_1_i_2_Template","disableSubmit","PopupComponent_ng_container_24_ng_container_6_button_1_Template","PopupComponent_ng_container_24_ng_container_2_Template","PopupComponent_ng_container_24_ng_container_4_Template","PopupComponent_ng_container_24_button_5_Template","PopupComponent_ng_container_24_ng_container_6_Template","isMiniMode","isLightMode","otherBtns","dangerBtns","isEmptyAction","submitBtns","PopupComponent","popupService","closePopupMsg","ClosePopupMsg","isBodyContentHeader","isHeaderContentTail","headerTail","isBodySplited","startArea","isDirtyForm","submitForm","submitButtons","last","isConfirmationMessageOpen","focusTrapDeactivate","focusTrapActivate","closeFromTemplate","confirmationMessage","pureClose","fullscreenElement","exitFullscreen","enableBodyScrolling","resetScroll","overflow","popup","navigator","userAgent","focusTrap","createFocusTrap","onActivate","onDeactivate","allowOutsideClick","activate","deactivate","endArea","btn","PopupComponent_i_4_Template","PopupComponent_button_11_Template","PopupComponent_div_20_Template","PopupComponent_ng_container_24_Template","PopupService","_popupList","lastPopup","isEmpty","closeLastPopup","submitLastPopup","SecondPasswordService","IsSecondPasswordSecurityEnabled","addSecondPassword","secondPasswordDto","resetPassword","UploadImage","reloadImages","allowedSizeMB","photoPopupOptions","headerInfo","HeaderInfo","PhotoPopup","uploadInputModel","currentFile","UploadImage_img_20_Template","UploadImage_div_21_Template","popupTitle","userDetails","_r14","copyToClipboard","changeIcon","MobileNumber","ParentEntityName","ParentEntityManagerId","ParentEntityManagerName","showCopyEmail","UserCardComponent_div_6_div_2_label_11_Template","UserCardComponent_div_6_div_2_label_12_Template","UserCardComponent_div_6_div_2_i_13_Template","UserCardComponent_div_6_div_2_i_14_Template","showCopyPhone","UserCardComponent_div_6_div_2_label_17_Template","UserCardComponent_div_6_div_2_label_18_Template","UserCardComponent_div_6_div_2_i_19_Template","UserCardComponent_div_6_div_2_i_20_Template","UserCardComponent_div_6_div_2_ng_container_21_Template","isHasEmail","isEMailCopied","isHasPhoneNumber","isPhoneCopied","UserCardComponent_div_6_div_1_Template","UserCardComponent_div_6_div_2_Template","UserCardComponent","userCardService","GetUserCardDetails","listener","clipboardData","setData","execCommand","cachedRoles","userRoles","isDataFresh","lastUpdate","userData","toISOString","currentTime","lastUpdateDate","UserCardComponent_div_6_Template","UserCardService","Link","LinkTitle","ControlMessagesComponent_div_0_span_1_Template","ControlMessagesComponent_div_0_span_2_Template","classMessage","HasLink","ControlMessagesComponent","onTouched","AlertClass","validationMessage","NodeMustbeRolse","ValidationMessage","NodeMustbeEntityOrUse","AlreadyExist","alreadyExist","InvalidMobileNumber","nameFollowContactIsRequired","followerNameRequired","TitleArOrTitleEnAtLeastRequired","ParticipantGroupAlreadyExist","senderMustNotEqual","IsForwardToRequired","OrganizerAlreadyExist","ParticipantAlreadyExist","AtlestoneNode","SameUserInNode","HaveToBeEntity","HaveNodeWithoutRecepient","HaveSameTitle","validateEqual","equalCompareValidator","validatePositiveNumber","invalideNumberValidationMessage","validateNotDefaultAttachmentGroup","invalideDefaultAttachmentGroupValidationMessage","validateCapacityGreatThanInitial","invalideShelveCapacityValue","IsValidEmailSource","InvalidNumber","MaxLengthValidation","hasLink","linkTitle","propertyName","touched","getValidatorErrorMessage","validatorName","validatorValue","validationMessageCallback","MaxLength","requiredLength","MinLength","stringFormat","OutgoingDuplicate","InternalSenderEntity","ExternalSenderEntityTitle","DuplicateCorrespondenceId","DuplicateYearAndSequence","requiredPattern","IpValidation","ControlMessagesComponent_div_0_Template","noop","YearPickerComponent","innerValue","onBlur","valueChanged","years","yearAutocompleteOptions","minValue","maxValue","defaultItem","getCurrentYearBasedOnCulture","valueChange","yearpicker","specialDates","_dateFormat","_defaultOptions","_el","_options","tempList","Month","Day","calendar","parseDate","limitYears","LimitYears","PassValue","_PassValue","Initilized","ChangeValue","setPassValue","changeTrigger","PassValue2","_PassValue2","ChangeValue2","PassCommand","propagateChange","weekendDays","IsChangeTriggeredByValuePass","OldDate","defaultCalender","secondaryCalendar","localNumbers","onSelect","onShow","weekendClass","yearRange","_calenders","gregorian","UmmAlQura","_defaultOptionsByLang","isRTL","showTrigger","prevText","currentText","nextText","todayText","closeText","clearText","defaultStatus","setTodayAsDefault","OnValueChange","OnLoadToday","OnTextChange","OnValueHover","OnTextHover","OnClear","OnInitialValueLoaded","OnInitialTextLoaded","OnShow","OnClose","onSetTodayAsDefault","triggerClearEvent","calendars","getFullYear","setTodayDate","_selectedDate","getCalendarDates","getStringCalendarDate","CustomMapping","formatDate","toJSDate","getAlternativeDate","alternativeCalendar","fromJD","toJD","isGeorgian","fromJSDate","W3C","nextDay","previousDay","ClearValue","markHolidaysOnDatepicker","Holidays","Weekends","GetDatepickerHolidays","weekend","holidays","op","dateToday","today","onHover","selectable","scrollHandler","calendarsCloseBtn","picker","inst","isTR","renderer","selectedClass","drawDate","insertAfter","daySelector","hover","MainDate","AltDate","AltDateFormatted","isSelectable","mouseout","dates","off","strGregorianDate","onDate","customDate","customDateSettings","DateConverted","dayOfWeek","dateClass","CssClass","nodeName","exportAs","_noDropdownArrow","_dependsOn","setDataSource","updateItems","updateItem","updateText","_value","trigger","comboBoxType","ComboBoxType","kendoAutoComplete","otherExpectedFields","textChange","_item","isEmptyObject","_items","mapItem","m","warn","itemsChange","_placeholder","savedOptions","$element","sComboBoxType","_enable","enableCtlr","attributeName","previousSibling","removeAttr","that","popupHeight","cascadeFrom","cascadeFromField","suggest","kendoMultiSelect","kendoComboBox","kendoDropDownList","header","languages","OnBehalfUserId","serverFiltering","transport","read","dataType","xhrFields","parameterMap","filters","filterFor","schema","dataItems","minId","$template","additional","isFunction","kendoOptions","valuetemplate","noDatatemplate","comp","handleBlurEmitterForComboxAndAutoComplete","hideDropDownArrowIfEnabled","onClearHandler","parentElem","OnSelect","OnChange","_selectedItem","_InitialValue","_initilized","loadInitialValue","ElemnetName","getAttribute","validSubject","serviceQueryJsonParameters","templateUrl","highlightFirst","OnEnter","selectItemById","objDataSource","kendo","DataSource","contentType","serviceQueryExtraParameterName","serviceQueryExtraParameterValue","requestStart","fnOnSelect","fnOnOpen","fnOnClose","fnOnFiltering","cloneFunc","_valid","dsItem","at","dataToReturn","AutoCompleteText","view","DataItemText","vitem","filtering","_secondaryOptions","ajax","kw","byId","newItem","ClearSelectedValue","Header","_InitialValues","_initialized","loadInitialValues","refresh","ReturnSelectedItemEventEmitter","clearValues","doEmitt","itemtemplate","tagtemplate","withoutTriggerChange","hasDataSource","setDefaultOptions","setDefaultDataSource","setDefaultChangeFn","ObjectToReturn","SelectedItems","defaultChangeFn","addAutomationId","multiSelectForKeyword","dataAutomationIdValue","doc","openMenu","setValues","AutomationLogService","SetActions","Actions","DataAutomationIDdirective","stopPropagationCounter","tabId","objLogs","limitArray","NumOfUserRecommendationActionsToBeLogged","logSVC","elementRef","includeELements","getModuleById","ExecutiveCommunication","Reports","FollowupTeam","RecommendedActions","automationLog","FromUrl","ToUrl","AutomationId","Path","getPath","ActionDate","TabId","ModuleId","subscreption","unsubscribe","getParentsIds","hostBindings","LazyImgDirective","HTMLImageElement","NumericDirective","min","allowNegative","onInputChange","initalValue","test","startsWith","TooltipDirective","srv","viewAsHtml","reverseDirection","onMouseOut","IGNORE","TooltipService","isRtl","viewMode","tooltip","textContent","elmnt","getBoundingClientRect","windowInnerWidth","windowInnerHeight","tltip","bottom","right","left","top","GAP","loadTooltip","nullReplacer","replaceWith","SurroundWith","surroundWith","dateFormatter","HtmlizerPipe","dateFormatterMoment","locale","TruncatePipe","limit","trail","substring","args","todatetime","dbDateFormatJs","seconds","setSeconds","formatedDate","shortDateFormatMomentJs","longDateTimeFormatMomentJs","timeFormat","ImgDirective","GateOfficerList","DocumentCenter","getModuleIdByURL","collapse","HasImageMergeField","KeepUsersAccessAsIs","FromScanner","VoiceDurationInSeconds","AnnouncementSourceType","Task","Meeting","DocumentItem","ExternalContactUse","TempImageUrl","GettingSettingSignatureStatusEnum","CannotRetrieveSignatureIfImperonated","NoSignatureAvailableForUser","Success","UnAuthorized","SignatureViolationExceptionRaised","RequiresVerification","SendingPinCodeFailed","InvalidPinCodeText","PinCodeExpired","PinCodeMaxFailedCount","UserSignatureDto","UserStampDto","Templates","IncidentProclmation","ExternalContactsTotalCount","ExternalContactsIds","AddedExternalContacts","DeletedExternalContactsIds","MeetingStatus","ReminderMethod","ReceivingMode","InitialClassificationOfCorresspondence","NotificationType","PredefinedDateFilterOptions","ReplySubCorrespondenceOptions","IncidentClassifications","IncidentImportance","IncidentSpeciality","ProclamatorType","CurrencyType","IncidentStudyRecommendationType","SocialNetwork","CorruptionSuspicionInfoSourceType","PersonInfoSourceType","ConfidentialitySourceInformationId","ScheduleItemCompletionStatus","UncooperativeType","ScheduleItemApprovalStatus","ProclamationPhoneCallInfo","CommunicationType","CommunicationClassification","CommunicationEntityTypes","Cuurency","VisitType","ManadateType","TravelWay","HousingCosts","HousingClass","OutsiderCommitteeSubject","ProclamationExaminationCommitteeRecommendation","ProclamedEntityTypeRelatedOrganization","StudiesClassification","StudiesSavedReason","CrimeMainClassification","CrimeSubClassification","CrimeDetailedClassification","RewardsCommitteeDecision","CommitteeContributionType","CooperationType","MainPurpose","MainSubject","SubSubject","CommunicationsImportance","CaseFileCrimesCommitteeDecision","CaseFileCrimesIncidentSpeciality","PunishmentPeriod","DocumentConfidentiality","PeriodType","ContractType","OrderType","CommitmentLevel","ProjectState","ProjectWorkArea","ContractDuration","Obstacle","StampNoteBtn","multiSignature","AttQRCodeBtn","CertifyAnnotationsBtn","CorrQRCodeBtn","UserPreDefinedSignatureInfo","TaskCommentDto","Ascending","Modified","PendingActionsService","otherURL","getUserPendingActions","getPendingActionsCount","getUserSignutureORMarking","approveRequest","String","getExtensionIcon","UserPermissionService","userPermissions","roleId","permissions","IsCalled","observer","IsInRole","complete","newUserPermission","UserPermission","ReviewArchivedCorrespondence","CancelReviewArchivedCorrespondence","ViewAllMeetingList","AttachmentsRecord","ShowUrgentNotification","ViewSubCorrespondences","CreateSubCorrespondence","ViewSubsequentCorrespondences","CreateSubsequentCorrespondence","RecallCorrespondence","CanViewEmailNotificationSection","canViewCorrespondenceLetters","FullSignMarkPower","SignMarkRequest","Sendcorrespondencedetailsandattachmentsbyemail","authorityToEditPermissions","CompleteCorrespondence","ForwardCompletedCorrespondence","ChangeStatusOfCorrespondenceFromInProgressToCompleted","AddFieldVisit","DeleteMarkRequest","ViewMarkRequest","LinkingCorrs","ApproveFieldVisit","AccreditedFieldVisit","MapIncidentToCaseFile","AddIncident","AddStudyRecommendation","EditIncidentStudy","AddIncidentStudy","ViewAuditTrail","ForwardingLog","BreakCorrespondenceWorkflow","ViewDocumentCenter","DocumentApprovalScreen","CorrespondenceDeliveryScreen","DocumentFollowUp","ArchiveScreen","DocumentAdvanceSearch","DocumentBranchScreen","AddingMovingRequest","AddingFolder","EditIncidentStudyImportance","CreateCorrInternal","ActivityLog","FinalizeSubCorrespondence","ShowComplatedCorrespondenceInbox","SaveIncidents","ViewNazahaEmplyeePerformanceTab","RequestFromRecipientToSign","SharedAttachmentWithIndividual","ReceiveFyiCorrImplicitly","CorrLinking","PrivateCorrLinking","EditDeleteLinkedCorrespondence","SendSMSWhenGrievance","CommitteeAdvanceSearch","CloseAndArchive","ViewArchivingExpiredCorrespondencesDetails","UserGuidServices","UserGuid","GetUserGuidUrlByCurrentUrl","orginalUrl","UserGuideDictionary","UserGuidDto","UserGuidResult","temp","hasOwnProperty","isActiveClone","ContentType","EnableSerialization","put","urlWithQueryString","getWithQueryString","constructUrl","toQueryString","URLSearchParams","queryObject","prefixChar","alert_r2","ccemailText","txtccemailText","UrgentConfirmationBox_alert_4_div_6_div_1_div_7_Template","emailText","setting","isMobileAvailable","NoMobileNumberStr","smsText","UrgentConfirmationBox_alert_4_div_6_div_1_Template","UrgentConfirmationBox_alert_4_div_6_div_2_Template","UrgentConfirmationBox_alert_4_div_6_div_3_Template","emailCheck","smsCheck","canSendSMSFeature","ShowDeactivateNotificationControl","yes","yesText","no","noText","ok","okText","UrgentConfirmationBox_alert_4_h4_1_Template","UrgentConfirmationBox_alert_4_div_6_Template","UrgentConfirmationBox_alert_4_button_9_Template","UrgentConfirmationBox_alert_4_button_10_Template","UrgentConfirmationBox_alert_4_button_11_Template","UrgentConfirmationBox","CanSendSMSFromGeneralSetting","config","alerts","UrgentConfirmationBoxResult","Cancel","CanSendSMS","IsEmailEnabled","isCcEmailEnabled","ccEmail","sms","IsDeactivateNotificationEnabled","isDeactivateNotificationEnabled","_modal","done","UrgentConfirmationBoxOptions","UrgentConfirmationBoxType","Info","onDone","Ok","UrgentConfirmationBox_alert_4_Template","UrgentDialogManager","injector","appRef","components","_rootViewContainerRef","viewContainerRef","confirmationBoxCmpFactory","container","confirmationComp","destroy","onChecked","checkBox","hyperLink","ConfirmationBox_alert_4_h4_1_Template","ConfirmationBox_alert_4_div_3_Template","ConfirmationBox_alert_4_div_4_Template","ConfirmationBox_alert_4_div_5_Template","ConfirmationBox_alert_4_button_8_Template","ConfirmationBox_alert_4_button_9_Template","ConfirmationBox_alert_4_button_10_Template","ConfirmationBox","checkChanged","hideModal","isAddAttachmentPopup","_isAddAttachmentPopup","_isChecked","ConfirmationBox_alert_4_Template","isAttachmentPopup","DialogManager","eventService","_emitter","emitter","HttpInterceptor","ItemDeleted","itemDeleted","ErrorMsg","toastrMgr","myHttpCall","setMyHttpCall","methodName","intercept","httpCallInfo","allowGenerateTokenByRefreshTokene","isRefreshTokenExpired","logout","source","isConnectedToInternet","onUnauthorizedStatus","httpCall","getRequestOptionArgs","k","has","HttpStatusCodeErrorHandledByCmp","isCorrespondenceDetailsApiCall","isScheduleItemAdvanceSearch","isCommitteesAdvanceSearch","isVerfiyApprovalProcess","HttpStatusCodeGone","HttpStatusCodeForbidden","ResourceNotFound","HttpStatusCodeUnauthorized","_angular_core__WEBPACK_IMPORTED_MODULE_6__","importantLinkSvc","_id","referanceTypeId","_referanceTypeId","onCommitteeIdFilled","GetImportantLinksOverviewTab","GetImportantLinks","AddImportantLink","importantLinkDto","EditImportantLink","DeleteImportantLinks","MessagingService","messages","subscriptions","subscriberId","messageKey","subscribers","checkIfNameIsAlreadyExisted","allMessages","handler","NavigationService","startSaveHistory","urlAfterRedirects","rest","getHistory","goBack","numberOfPages","historyGo","getPreviousUrl","NotificationsService","announcements","NewNotificationAnnouncement$","announcementsOnlineUser","updateUnreadTasksCount","updateTasksCount","newAnnouncement","onlineUsersCount","onSuccess","onFail","PageCount","NotificationChannelsIds","UnreadCount","Dismiss","idsList","DismissAll","AnnounceNewNotification","GetOnlineUsersCount","AnnounceNewOnlineUserNotification","AnnounceNewTaskNotification","AnnounceNewTask","AnnounceNewAnnouncement","snoozeReminder","newDate","fail","submitParticipantConfirmAttendance","MarkAsRead","notificationId","processScheduleItemNotificationRecords","ApproveOrRejectOtpRequestFromWeb","GetUserHighLevelPermissions","roleNames","downloadBasedOnURL","selectedScanner","SourcesCount","ScannerExists","OnReady","OnPostTransfer","OnPostLoadfunction","OnPostAllTransfers","OnMouseClick","OnImageAreaSelected","OnImageAreaDeselected","OnTopImageInTheViewChanged","OnReadyCallback","OnReadyCallback$","Parent","RegisterEvent","BerryScannerOnReadyLoad","MoveImage","checkErrorString","checkErrorStringWithErrorCode","responseString","StoreManager","sessionStorageSetItem","sessionStorageGetItem","JSonTryParse","clearSessionStorageByKey","needle","findNaN","copy","func","exec","conf","Function","apply","Calendar","AlternativeCalendar","alternativeCalenderName","primaryCalenderName","alternativeCalenderDisplayName","primaryCalenderDisplayName","alternativeCalenderDisplayNameAr","primaryCalenderDisplayNameAr","alternativeCalenderAbbr","alternativeCalenderAbbrAr","primaryCalenderAbbr","primaryCalenderAbbrAr","isHijriSettedAsPrimaryCalendar","jsDate","formatStr","getCalendarFromJsDate","dateStr","defaultValue","ParseFromWebMethodParameterWithTime","shortDateTimeFormatFromURL","ToFormattedString","ToFormattedDateTimeString","fromJSDateTime","convertDateStringFromFormatToAnotherFormat","fromFormatStr","toFormatStr","jSDate","pareseStringToDate","getAlterCalendarFromJsDate","getAlternativeCalendarFromJsData","getCalendarJDFromJsData","getCalendarFromJd","jd","newCDate","month","day","getSchedulingCurrentDayDateForRoute","getCDateFromJSDate","regionalOptions","epochs","monthNames","monthNamesShort","dayNames","dayNamesShort","dayNamesMin","firstDay","julian","ummalqura","defaultRenderer","prevStatus","prevJumpText","prevJumpStatus","nextStatus","nextJumpText","nextJumpStatus","currentStatus","todayStatus","clearStatus","closeStatus","yearStatus","monthStatus","weekText","weekStatus","dayStatus","setDefaults","displayName","abbr","getTodayDate","checkIsPreviuosDate","componentElementRef","dateNow","getMonth","getDate","dateOfInputDate","timepicker","meridian","date24HourArray","convertTo24Hour","dateInput","fromDate","isSpecialFromDate29","isSpecialFromDate30","isSpecialToDate29","isSpecialToDate30","fromDateHas29InDayNotYear","fromDateHas30InDayNotYear","toDateHas29InDayNotYear","toDateHas30InDayNotYear","fromDateHas2InDayOrMonthNotYear","toDateHas2InDayOrMonthNotYear","fromDateArray","toDateArray","dateFrom","startDate","dateTo","endDate","getDateFromCalender","calenderId","dateValueStr","splitedDateFormat","resultDate","isDashUsed","currentDateMonth","currentDateDay","currentDateYear","_calendar","local","toFormat","tempDate","tempFormat","dateObj","EnumExtensions","getNamesAndValues","getNames","Translation","eval","getObjValues","getValues","getFileIcon","docx","xlsx","xls","txt","pptx","png","jpg","getConfidentialityIcon","getUrgencyIcon","newGuid","gap","allArgs","prop","AnnouncementDetailsSVC","_announcementId","announcementId","getAnnouncementHeaderDetails","GetAnnouncementStatus","CancelAnnouncement","cancellationReason","PublishAnnouncement","GetAnnouncementActionHistories","updateAnnoucementStatus","announcementStatusDto","AnnouncementsSvc","AnnouncementGeneralHandlerPermissions","_AnnouncementGeneralHandlerPermissions","getAnnouncementTypes","getAnnouncementClassifications","getAnnouncementTags","getAnnouncementUserRoles","getAnnouncementEntities","getAnnouncementRecipientGroup","addNewAnnouncement","editAnnouncement","GetInboxData","GetAdvanceSearchData","getAnnouncementInfo","getAnnouncementTrackingInfo","setAnnouncementAsOpen","setAnnouncementAsRead","announcementTrackingId","getAnnouncementAttachment","getAnnouncementInboxes","AnnouncementLogicHandlerTypeEnum","AnnouncementGeneralHandler","AnnouncementLogicHandler","logOut","AppComponent","_authService","_router","login","localizationServive","appService","httpStatusCodeUserInactive","isThemeLoaded","showLoader","subscription","Subscription","loadTheme","localizationServiveStatic","TabUtils","OnBroadcastMessage","TokenInfo","UserEmail","AccessToken","loadSession","then","settingsUrls","SettingVersion","fetch","Promise","allSettled","settings","newUsersession","doneAndFireApplication","loadAppDetailsAfterValidateSession","showOflineImage","showInactiveUserMessage","catch","signinSilent","loadLookups","getUserDetails","IsCommitteesEnabled","lookupUrls","LookupVersion","lookups","helperUrls","urls","toRgb","color","aRgbHex","themeSettings","theme","setProperty","LoginTheme","LoginButtonPrimaryBackgroundColor","LoginButtonPrimaryTextColor","nextSibling","tagName","ThemeFontSize","SystemTheme","entries","cssValue","camelCase","kebabCase","styleScript","loadStyleTheme","head","word","replaceState","startVisibilityCheck","initLogin","initStorageListener","initConnectionListener","fromEvent","first","getManageTrustedIps","AuthenticationMode","LandingLoginMode","SSO","storageArea","instantiateLogin","forkJoin","tap","GetCurrentUser","GetClientAppModules","ClientAppModules","language","styleLink","rel","LocalizationsAr","LocalizationsEn","require","islookupsLoaded","isBERRYLookupLoaded","viewMainLoader","AppComponent_div_0_Template","AppComponent_div_1_Template","AppComponent_ng_template_2_Template","AppComponent_div_4_Template","defaultModule","AppState","berryOfflineEnabled","_berryOfflineEnabled","berryOfflineEnabledChanged","UserSessionStateEnum","Valid","Expired","tooltipService","moduleChanged","searchChanged","RefreshApllicationHistory","stopRefreshingCorrespondenceDashboard","isCookiesCleared","_state","isLoggedBy","_routerEventsSubscriber","modalOpened","currentModule","RouteChange","BerryOfflineEnabled","_ActivatedRoute","DetectRouteChange","CalculateScreenResolution","onResize","screenResolution","Width","Height","OnRouteChange","snapshot","NProgress","NavigationStart","_clone","_NavigationEnd","_routerStateSnapshot","currentURLParent","currentURLFirstChild","currentURLSecondChild","_routerStateSnapshotSplit","_routerStateSnapshotSplit2","secondPartOfUrl","changeParams","RouteChangeParams","_root","ChangeLang","CalendarType","impersonation","userID","from","flatMap","eventName","visibilityState","__decorate","HmrState","AllowRepetition","RepetitionEvery","RepetitionType","RepetitionEndType","RepetitionEndDate","RepetitionEndAfter","recurrencePatternValue","IsSunday","IsMonday","IsTuesday","IsWednesday","isThursday","IsFriday","IsSaturday","DayNumberOfMonth","WeekOfMonth","DayOfMonth","MonthlyRepetitionType","RepetitionEndDateString","EndDateString","AlternativeText","RepetitionTypeText","CorrActionsSvc","changeActionDeadLine","ActionSubmit","isTherePendingFiles","wopiId","getSavedData","actionId","actionTypeID","ActionId","ActionTypeID","CheckForwardFromInboxEntityToMyInboxOrOpposite","senderUserId","senderEntityId","changeCorrespondenceStateToSaved","CorrespondecenceSaveValidation","CorrespondenceID","MiniActionSubmit","getCommunicationCCUsers","ValidateSendingCopyToParentEntityManager","entityIdForwardedTo","readUnreadCorrespondence","isRead","CorrespondenceHeaderModule","chooseBestShelf","loadingBestClass","disableEditStorage","onFilingOptionChange","correspondenceFilingEnum","IsCompletelyElectronicShelving","selectOptionValue","StorageLocation","StorageLocationId","onFilingLocationChange","LocationId","LocationSelectOptions","centralAdministrationBuilding","StorageRoom","onFilingRoomChange","CurrentRoomsSelectOptions","StorageCabinet","onFilingCabinetChange","CurrentCabinetSelectOptions","StorageShelve","onFilingShelveChange","CurrentShelvesSelectOptions","StorageFolder","getFolderName","CurrentFoldersSelectOptions","CorrespondenceFilingFeatures_ng_container_1_ng_container_1_div_6_ng_container_8_ng_container_1_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_1_div_6_ng_container_8_ng_container_2_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_1_div_6_ng_container_8_ng_container_3_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_1_div_6_ng_container_8_ng_container_4_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_1_div_6_ng_container_8_ng_container_5_Template","orderId_r15","ShowStorageFolderDesc","showForwardToDocumentCenter","IsCentralAdministrationBuildingShelving","CorrespondenceFilingFeatures_ng_container_1_ng_container_1_div_6_ng_container_8_Template","partOrders","IsForwardDocumentsToOtherEntityShelving","filingStorageEntityIdChange","CorrespondenceFilingFeatures_ng_container_1_ng_container_1_div_17_div_9_Template","disableforwardFilesToEntity","filingStorageComboBoxOptions","InvalidFilingStorageEntity","IsForwardToDocumentsCenterShelving","corrAssetsAutoCompleteOptions","disableforwardToDocumentCenter","CorrespondenceFilingFeatures_ng_container_1_ng_container_1_div_4_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_1_div_5_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_1_div_6_Template","_r52","IsOtherStorageLocationShelving","StorageAsDescription","CorrespondenceFilingFeatures_ng_container_1_ng_container_1_div_16_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_1_div_17_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_1_div_18_Template","showFileStorageChooseBestButton","isDocumentCenter","ShowCorrespondenceFilesLocationField","StorageOtherLocationDescNested","InvalidStorageAsDescription","enableForwardOriginalFiles","_r65","ShelveInformation","_r67","_r77","_r82","CorrespondenceFilingFeatures_ng_container_1_ng_container_2_div_8_ng_container_1_div_1_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_2_div_8_ng_container_1_div_2_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_2_div_8_ng_container_1_div_3_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_2_div_8_ng_container_1_div_4_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_2_div_8_ng_container_1_div_5_Template","orderId_r69","CorrespondenceFilingFeatures_ng_container_1_ng_container_2_div_8_ng_container_1_Template","FilesStorageEntityId","CorrespondenceFilingFeatures_ng_container_1_ng_container_2_div_22_div_7_Template","_r102","CorrespondenceFilingFeatures_ng_container_1_ng_container_2_div_4_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_2_div_5_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_2_ng_container_7_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_2_div_8_Template","_r105","ctx_r104","ctx_r106","ctx_r107","CorrespondenceFilingFeatures_ng_container_1_ng_container_2_div_21_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_2_div_22_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_2_div_23_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_1_Template","CorrespondenceFilingFeatures_ng_container_1_ng_container_2_Template","NewDesign","_r109","Shelf","ctx_r110","ShelvingClassification","_newDesign","_showBasicCorrespondenceShelving","_isDocumentCenter","_corrisPrivate","_corrConfidentiality","_corrImportance","_baseCategoryId","_filingStorageSvc","InDetailsHeaderEditComponent","_inDetailsHeaderEditComponent","ShelveInformationDto","_filingFeatures","modifyTheShelvingInformation","internalEntities","documentCenters","containerColumn","GetDefaultOptions","CorrespondenceFilingFeaturesEnum","CorrespondenceFilingEnum","isForwardingToDocumentCenterEnabled","autocompleteDefaultOptionsForParty","corrAssetscomboBoxServerSearchDatasourceDefaultOptions","onValidCorrespondenceCallback","_showCorrespondenceFilesLocationField","isCommitteesModule","urlTree","getCorrespondencesCategoriesSettings","isCorrespondenceClassificationTab","loadLocationInfo","refreshFilingInformations","getAllShelveData","locationsElement","StorageRoomId","RoomId","StorageCabinetId","CabinetId","StorageShelveId","ShelveId","LocationDescription","isLoadDataForTheFirstTime","currentRoomsElement","RoomName","currentCabinetsElement","CabinetName","currentShelvesElement","ShelveName","currentFoldersElement","loadFreeShleves","LocationName","EnableForwardOriginalFiles","IsDocumentCenterManagementEnabled","hideCentralAdministrationBuilding","HideCentralAdministrationBuilding","Correspondance","getEntityStorageFile","isDataValid","locationOfCorrespondenceFiles","getStandaloneDocumentCenter","BranchName","getIsForwardingToDocumentCenterEnabled","categoriesSettingsValues","CorrespondenceCategoryId","setCorrespondencesFilingFeaturesValues","isLoadDocumentCenterEntity","CallUpdateRooms","currentRooms","CallUpdateCabinets","currentCabinets","CallUpdateShelves","currentShelves","CallUpdateFolders","currentFolders","FilingStorageSvc","CorrespondenceFilingFeatures_ng_container_1_Template","CorrespondenceFilingFeatures_ng_container_2_Template","NewCorrespondenceSvc","httpInterceptor","countriesUrl","filterByPermission","getAutoSelectedEntityValues","getUserEntity","getClassificationType","getDetailedClasificationsByClassificationId","ClassificationTypeId","isElectronic","getSubCorrespondenceType","correspondenceTypeId","getinitialCorrespondenceClassification","checkCorrespondenceHavePendingSignature","getSettlementData","getPurpose","getPurposeByCorrTypeId","corrTypeId","validateCorrespondence","checkCorrespondenceHasCombinedCorrespodnencesWithSameCategory","getMaxSequencegetPurpose","getCorrespondancePhysicalAttachmentLinkByCorrId","getInternalEntities","getStorageFolders","getCorrespondenceTypesByCategoryId","IsExternalContactLinkedWithEgov","getcorrespondenceApplicants","deleteCorrespondenceApplicants","CheckSelectedInternalRecipientsCanContactWith","InternalRecipients","addCorrespondenceApplicant","applicantId","checkIfCorrespondenceLinkedWithAuthorityMeeting","apiUrl","checkIfUserPermittedToEditDeadline","confidentialityId","CreateNewCorrespondencePopup","openCreateCorrespondence","openEditCreateCorrespondence","poptype","ExportMode","EditMode","shelves","_shelves","rooms","_rooms","cabinets","_cabinets","locations","_locations","folders","_folders","AllowForwardToDocumentCenter","StorageFolderId","isCustomLocation","sub","optionNumber","BranchEntityId","firstFireMethodOnFilingOptionChange","fillPartOrders","filingOptionNumber","CorrespondencesLocation","OriginalsReceiptReportDto","filingPartOrderArray","isDescriptionRequired","CheckOnOffFeature","setFolders","FolderName","shelveId","StorageShelves","StorageCabinets","getRooms","Locations","chooseBestCallback","Rooms","StorageRooms","Room","NameResourceId","NameResourceSet","important","chooseBestShelfLocation","_cabinet","_room","getLocationName","setRooms","getRoomName","setCabinets","CabinetNumber","getCabineteNumber","setShelves","ShelveNumber","getShelveNumber","locationId","roomId","cabinetId","clearCentralAdministrationBuilding","MatchShelveIdValue","locationValue","l","storageId","bindStorageEntityId","StorageShelvesSvc","getAllAvaliableShelves","getAllFilingStorages","branchId","deleteStorageShelve","confirmDeletionShelve","saveStorageShelve","getNewCabinetName","getAllFreeShelvesData","saveStorageFolder","deleteStorageFolder","folderId","AccompanyingDocumentSvc","CorrespondanceRecordSVC","Follow","GetExternalEntities","AssignFollow","markAsSeenInInbox","recipientId","RecipientId","dismiss","snoozeSpan","CorrID","CorrespondenceActionID","CorrespondenceRecipientId","ReminderSpan","saveDeliveryReportBarCode","deliveryReportSubId","barCodeString","PinCorrespondence","isPinned","inboxes","isAttachmentSelected","attachment_r3","item_r16","getSelectedGroup","SelectedGroupId","AttachmentslistCmp_div_2_ul_1_li_11_div_1_option_3_Template","AttachmentslistCmp_div_2_ul_1_li_11_div_1_Template","AttachmentslistCmp_div_2_ul_1_span_2_Template","AttachmentslistCmp_div_2_ul_1_span_3_Template","AttachmentslistCmp_div_2_ul_1_li_11_Template","AttachmentslistCmp_div_2_ul_1_Template","AttachmentslistCmp","groupId","SourceAttachment","loadAttachmentGroups","linkedCorrespondencesAttachments","SelectedCorrespondence","selectedAttachmentIds","selectedCorrespondence","LinkedCorrespondenceId","linkedCorrespondenceId","SelectedSchedule","selectedSchedule","AttachmentsDataSource","CorrespondenceLinkType","correspondenceLinkType","CorrespondenceAttachmentsSVC","LINK_TYPE_ENUM","LinkTypeIdEnum","selectedAttachments","vInit","getSelectedAttachments","returnList","AttachmentsGroup","SubModuleId","BundledCorrespondence","GetCorrespondeceAttachments","GetBundleAttachments","GetLinkedCorrespondeceScheduleAttachments","linkedCorrId","getBundleAttachmentsFromBaseCorrespondenc","getLinkedCorrespondeceScheduleAttachments","AttachmentslistCmp_div_1_Template","AttachmentslistCmp_div_2_Template","getUserLinkedAttachments","ScheduleId","corrLinkId","CorrespondencefollowUpSvc","InteranalAndOutGoing","InternalGeneralization","proclamation","CorrespondenceDashboardSectionEnum","CurrentCorrespondence","InternalEntity","CorrespondenceType","ExternalEntity","CorrespondenceDynamicFiledsDto","StagesToShow","OnlyStageZero","AllExceptStageZero","CorrespondenceAdhocDynamicFormDto","CorrespondenceClonedCategoryId","Settlement","Commentary","Append","SpeechResponse","ApplicationReferredTo","Without","LinkStudy","SubCorrespondence","SubsequentCorrespondence","SettlementSubCorrespondence","MergedCorrespondence","StatementCorrespondence","IntimationCorrespondence","InitiativeFile","SearchFilterTextSearchTypesEnum","CorrContains","CorrStartsWith","CorrTextEqual","CorrTextIsNumber","CorrExactText","CorrPercentageText","CorrTextIsFixedNumber","Attachment","IncomingDateFilterOptionEnum","IncomingDate","IncomingYear","OutgoingDateFilterOptionEnum","OutgoingDate","OutgoingYear","SearchFilterDateEnum","SentDate","DateDone","DeadlineDate","ActionDeadlineDate","SearchFilterOrderByTypesEnum","DateDesc","DateAsc","UrgentFirst","DeadlineDesc","DeadlineAsc","LastActionDesc","FollowUpDate","PeopleOrEntitiesOptionsEnum","People","SearchFilterSomeoneEnum","CreatedIt","MovedTo","CurrentlyWith","DidActionOnIt","OwnedBy","CurrentlyWithAndOwnedBy","ForwardedFrom","PreparedEntityToSpeech","ForwardFromTo","SearchTypeEnum","Quick","Advanced","NumberSearchTextEnum","BarCode","CorrespondenceExternalNumber","CorrespondenceSubject","AccopanyingAttachmentNumber","SortTypeEnum","Newest","Oldest","SignatureURL","DataServiceURL","RecommedationDataServiceURL","MultimediaDataServiceURL","MultimediaCommitteeDataServiceURL","GetEditServiceURL","HistoryServiceURL","StampURL","BundleCorrespondenceAttachmentsServiceURL","CorrespondenceRecordAttachments","CorrespondenceLettersAttachments","TaskAttachments","FromEmailCorrespondanceAttachements","ScheduleItemTopicAttachments","procIncidentAttachments","procCaseFileAttachments","procCommunicationAttachments","procOutsiderCommitteeAttachment","procCrimeExecutionStageAttachment","procCrimeInvestigationStageAttachment","procCrimeTrialStageAttachment","XCAttachments","ReplyTemplateAttachments","PostOfficeDeliveryReport","TempAttachment","CorrespondenceSortTypeEnum","Urgent","Distinct","PrioritylevelDESC","PrioritylevelASC","InboxItemTypes","PublicInbox","RemindersInbox","ImportantUrgent","Late","EntityEmployeesApplicationsInbox","CC","Followup","Outbox","ExternalEmail","Letter","SignatureRequests","MyTasks","ReplyRequests","ConfidentialToMe","IncomingFromRoyalCourt","MyEntityInbox","CompletedCorrespondence","FieldVisitApprove","DivisionApplicationsInbox","CommitteInbox","EntityInbox","CaseFileFilter","CorrespondencesSentToSpecializedEntities","CasefilesProcessedByImportantSubjectsCommittee","EGovInbox","AllInboxes","CustomCategory","EntitySentbox","SharedInboxes","FilterInboxes","Approval","Adoption","OrderTypeEnum","Asc","Desc","OtherInboxesCountDto","CorrespondenceCategoriesSvc","correspondenceCategories","allCategories","refreshCorrespondenceCategories","canCreateCorrespondences","getAllCategories","getAppModuleCategories","getIncomingElectronicCategories","typeId","isOutgoingCategoriesSupportYesser","IsEGov","refreshAllCategories","getCategoryUrl","categoryBackground","background","UpdateQrCodeIsRequiredForCategories","qrCodeSettingsDto","SignaturesRequestsSvc","initiativeApiUrl","signatureRequestGroups","pendingSignatureRequestGroups","pendingStampRequestGroups","OtherSignatureRequestGroups","notAddedSignatureRequestGroups","stampRequestGroups","otherStampRequestGroups","correspondenceIdSubject","buildJsonHeader","AnyPendingSignatureRequestsForLoggedInUser","AnyPendingSignatureMarkingRequestsForLoggedInUser","getCorrespondenceSignatureRequests","getCurrentUserId","getOtherCorrespondenceSignatureRequests","actionName","getNotAddedSignatureRequestGroups","deleteCommitteeRequest","addNewRequests","checkNewRequests","SignatureType","checkDuplicatedSignatureRequestInitiative","checkRequest","getInitiativeSignatureRequests","getInitiativeOtherSignatureRequests","deleteInitiativeSignatureRequest","getNotAddedInitiativeSignatureRequestGroups","addNewInitiativeSignatureRequest","CorrespondenceAssignService","taskURL","ConfidentialityService","activatedRoute","_baseUrl","usersCountSubject","getConfidentialityUsersCount","getModel","addConfidentialUser","deleteConfidentialUser","ConsultantsSvc","CurrentUserSignatureRequestsCount","GetCorrespondenceParticipants","ApproveCorrespondenceParticipants","NewParticipants","Weight","ApproveCorrespondenceParticipants2","AllConsulatantsWeightsInThreePeriodsByRelationTypeId","_participantRelationTypeId","GetAllConsulatantsWeightsInThreePeriods","isConsultantAvailableForCorrespondence","DetailsSidebarSvc","CurrentUserStampRequestsCount","CurrentUserSignatureMarkerRequestsCount","CurrentUserAprovalRequestsCount","OtherCurrentStampRequestsCount","NotesCount","CorrespondenceIsForwarded","GetCurrentUserSignatureRequestsCount","GetCurrentUserApprovalRequestsCount","GetCurrentUserSignatureMarkingRequestsCount","isCurrentUserManager","GetCurrentUserStampRequestsCount","GetCorrLettersCount","GetNotesCount","getRelatedInitiativeFilesByCaseFileId","CaseFileId","procApi","QrCodeTypesEnum","QrCodeCreator","QrCodeCC","DetailsSVC","CountAttachmentsRecord","hideFollowUpCorrespondence","CurrentUserRecipient","IsHasBeenForwarededByPresedent","CanUserExportCorrespondence","isCreatingWindow","IsCorrespondenceSaved","IsSaved","isMeredCorrespondence","MergeCorrespondenceId","showAttachmentActionsArchived","recallRequest","getDirections","getOverviewDirections","getParticipantsRelationTypeId","GetCorrespondencesTabs","GetAttachmentsGroupsChildrenTabs","GetRecommedationAttachmentCount","BackCorrespondenceToInProgress","GetDelivaryReportState","reloadCorrData","requestReloadCorrData","canDoCreateSubCorrespondence","canDoViewSubCorrespondences","canDoCreateSubsequentCorrespondence","canDoViewSubsequentCorrespondences","userPermissionService","ActionDeadlineDateForward","QrCodeType","isCorrespondenceRead","isDetailedPage","CanFinalizeSubCorrespondence","onValidAttachmentCorrespondenceCallback","refreshCorrespondenceDeadline","onAdditionalInfoLoaded","RefreshSlideBar","isMergedWithEntity","isReplySub","hideForwardAction","isBundledCorr","showDelivrySetting","correspondenceLetterText","EnableIncommingFromIndividuals","incidentId","isCorrespondenceBundled","hasForward","ExternalRecipentCount","CorrLettersCount","ConsultantURL","bundleService","correspondenceApplicationHistoryOrderType","lateTaskCount","DataEdit","CorrrespondenceId","EntitiesAndUsers","ViewAttachmentPermission","RelatedData","undoneData","CanPrintQrCode","DataDoneLoading","DirectionsList","overviewTypeId","OverviewType","BasicOverview","CompanyingDocument","isReplyAction","IsQRPrint","GettingCorrespondenceInProgress","IsParent","ParentID","ChildRecipents","weight","weightOriginal","CanForwardToIndividualUponFirstAction","FollowUpGroupUsers","canManageArchived","canCreateSubCorrespondence","canCreateSubsequentCorrespondence","viewSubCorrespondences","canHaveSubCorrespondence","viewSubsequentCorrespondences","openCorrespondenceByOtp","lastHistoryActionId","confirmReceiptTheOriginalCorrespondence","loaderWhileActionTaken","onExternalEntityChange","onTabStepCounterChanged","DataLoaded","onDataChanged","GetOverviewData","_dataNotifierObsrvSubject","correspondenceActiveUsersChanged","_isLinkedDocumentsAndCountServiceCalled","linkedDocumentsAndCountEvent","_isApplicationRemindersServiceCalled","applicationRemindersService","_isGeneralDirectionsServiceCalled","generalDirectionsServiceCalled","personalDirections","_isActionCcRecipientsServiceCalled","actionCcRecipients","_isExternalRecipientsServiceCalled","externalRecipients","_isSaveActionServiceCalled","saveActionLoadEvent","_isLinkTypesServiceCalled","linkTypesLoadEvent","_isRelatedCorrespondencesServiceCalled","relatedCorrespondencesLoadEvent","_isScheduleItemsServiceCalled","scheduleItemsLoadEvent","_isNonDeletedLatestAttachmentsServiceCalled","nonDeletedLatestAttachmentsLoadEvent","loadGeneralDirections","loadPersonalDirections","checkCanHaveSubCorrespondence","RefereshCorrespondenceActiveUsers","trackingDetails","IsSuccess","GetCorrespondenceParentNumber","subcorrespondenceIds","getPrivateOfficePresident","GetPresident","isInDeliveryReportCategories","DeliveryReportCategoriesList","getCorrespondenceDeliveryCreateURL","SetArchivedStudyAsReviewed","SaveSubCorrespondenceAndCopyAttachmet","subCorrespondence","SaveSubCorrespondenceAction","GetArchivedStudyAsReviewedStatusWithPermissions","LinkAttachmentsWithNewCorrespondence","IsCorrespondenceLinked","linkType","HasMemberRequest","CorrespondenceHasFinalRecord","getCorrespondenceState","GetCorrespondencePrintingState","getLinkedDocumentsAndCount","linkedDocumentCount","LinkedDocumentCount","LinkedDocuments","getApplicationReminders","ActionReminder","loadApplicationReminders","getGeneralDirections","GeneralDirection","getCorrespondenceGeneralDirections","copyId","GeneralDirectionDto","getPersonalDirections","MyPersonalDirections","getCorrespondencePersonalDirections","getActionCcRecipients","ActionCcRecipients","loadActionCcRecipients","ExternalRecipients","loadExternalRecipients","getSaveAction","SaveAction","loadSaveAction","getLinkTypes","LinkTypes","loadLinkTypes","getRelatedStudyCorrespondences","RelatedStudyMainCorrespondence","RelatedStudyCorrespondences","getRelatedCorrespondences","RelatedCorrespondences","getScheduleItems","ScheduleItems","loadScheduleItems","resetAttachmentLoad","getNonDeletedLatestAttachments","loadAttachments","OriginalAttachments","loadNonDeletedLatestAttachments","loadRecomendationAttachments","refreshAttachments","canStatementCorrespondence","correspondenceID","corespondenceId","canCreateSequentCorrespondence","IsInReminderInbox","getFollower","getForwardConfirmationInfo","SaveHeaderApp","SaveDetailApp","CorrespondenceCountries","SelectedReceivingMode","isInteger","getCorrespondanceDetailsEdit","loadUrgenciesAndConfidentialities","MultiSelectAndSave","CorrespondencesIds","copyCorrespondence","isForSettledSearchByYearAndCorrNumber","getCorrespondanceEditModel","getCorrespondanceTitle","GetSettedCorrespondenceById","getCorrForSettlement","isCorrespondenceReadByRecipient","updateDirections","getRelatedScheduleItemInfo","getCorrAdditionalDetailsInfo","additionalData","additionalDataResult","isMonitoredInfo","IsCaseFile","IsLate","BundledCorrespondenceCount","RelatedCorrespondencesCount","LinkedCorrespondencesCount","LinkedProclamationCount","LinkedInitiativeFileCount","ArchiveCorrsCount","ParentArchiveCorrsCount","ParentLinkedCorrespondencesCount","ParentRelatedCorrespondencesCount","MainAndSubArchiveCorrsCount","MainAndSubLinkedCorrespondencesCount","MainAndSubRelatedCorrespondencesCount","SubCorrespondencesCount","SubcorrespondencesCount","IntimationCorrespondenceCount","StatementCorrespondenceCount","SubsequentcorrespondencesCount","SubCorrespondenceParentId","SubCorrespondenceCategoryId","isReplySubCorrespondenceForFinalize","MergeCorrespondenceDate","IsSequentCorrespondence","SequentCorrespondenceID","SequentCorrespondenceNumber","MergeCorrespondenceNumber","MergedCorrespondencesCount","ParentCorrespondenceCategoryId","ParentCorrespondenceTypeId","InitiatorExternalEntityId","InitiatorExternalEntityName","IsAutoGenerateCorrespondenceDeadLine","AccompanyingDocumentLinks","setParentSettlementCount","PresentationMemosCount","IntimationNumber","IntimationDateFormatted","getcorrespondenceForCopy","recipientID","linkedToPram","isRecipientIdNumber","getApplicationActions","ApplicationActions","fillDataFromCorrespondence","ChildRecipentsCached","IsSubCorrespondence","SubcorrespondenceIds","getCanPrintQrCode","CreatedByUserID","PrintQrCode","getCorrespondance","paramCanBeNull","isOtpEnable","ProtectConfidentialCorrespondence","HasTheOriginalBeenReceived","CorrespondenceExternalRecipients","arr","BorrowedByUserId","fillcorrespondenceParticipants","OverviewTypeId","setSettlementCount","assign_Followup","SetFollowUpCount","getCorrespondanceLight","CalculatedOwnerShip","correspondence_Ownership","ownershipConfirmMessage","ownershipWarningMessage","ConfirmMessage","WarningMessage","getCorrespondenceParticipants","Participants","participantsOriginal","setRecommendationCount","OriginalAttachmentsCounts","getSettlmentsCount","SettlmentCount","ParentSettlmentCount","MainAndSubSettlmentCount","getFollowUpCount","setFollowUpCount","ValidateLink","isCorrespondenceHasWorkflow","getWorkFlow","AddCorrespondenceArchiveLinked","arg","deleteLink","archiveIds","saveSubsequentCorrespondence","subsequentCorrespondence","getAllArchiveLink","CorssId","getAllParentArchiveLink","getAllOtherArchiveLink","CreateExternalRecipient","getAllUserTypes","CreateExternalRecipientRepresentativeLetter","isLetterSigned","checkTheLatestVersionForLetter","letterId","SendSignatureRequestNotification","letterID","originalCorrID","sendEditletterNotification","CreateCorrespondenceExternalLetters","editExternalRecipient","addExternalContact","getStatusAndPermission","GetCorrespondenceInternalRecipients","GetPersonToolTip","ChangeImportance","ChangeUrgency","urgencyId","isFromFollowupTeam","GetApllicationHistory","orderType","withDetails","isFromForwardingLog","isCorrespondenceParentActions","IsFromForwardingLog","WithDetails","IsCorrespondenceParentActions","getForwordApplicationHistory","withSaveAction","isIdInAvailableCommittees","GetActionsBasicDetails","sortType","GetlastForward","generatePdf","generatePdfForSignature","deleteAction","isLast","confirmReciveCorr","DeleteEvent","AddEvent","EventDate","Eventtxt","PrintQr","isShowSendToExecutiveOffice","checkIfSentToExecutiveOffice","getCorrNotes","addNote","deleteNote","noteId","editNote","txtNote","noteText","addLinkCorrespondeces","oCorrespondenceLink","updateLinkCorrespondeces","currentCorrespondenceId","GetCorrespondencesLinkedTypes","deleteUnLinkCorrespondece","deleteSubCorrespondance","editLinkCorrespondeces","LinkType","GetRelatedStudyCorrespondence","orderby","GetUnLinkBundleCorrespondence","GetParentRelatedStudyCorrespondence","CorrespondenceParentId","getRelatedCorrespondence","targetModuleId","checkCanShowParticipantDetails","getParentRelatedCorrespondence","GetSettlmentCorrespondenceHierarchy","getSubCorrespondence","getSubCorrespondencesRefactory","getSubsequentCorrespondence","GetDirectionsList","UndoneJson","UndoneUsers","getSettlmentsList","getParentSettlmentsList","getSettlmentsListorld","editLinkType","relid","oldTypeId","relTypeId","oldRelTypeId","addSettlment","deleteSettlment","settlmentId","currentCorrId","DeleteAttachments","ValidateSettelmentAndReturnFilledError","AddRelatedCorrespondences","CorrespondanceId","LinkTypeID","RelatedCorrespondencesIds","AddRelatedCorrespondanceCheckValidation","AddIntimationCorrespondences","AddIntimationCorrespondanceCheckValidation","DeleteApplication","DeleteCorrespondences","GetChildCorrespondences","IsUserLastRecipient","GetChildsDirections","GetCompanyingDocument","Toggledocument","CurrentState","GetDelegatedUsers","ItemDto","changeTabStepNumber","currentStepCounter","isCorrespondenceVaildToForward","isCorrespondenceVaildToFinish","getUrgentData","SendUrgentNotification","getCorrespondenceUrgentRequests","reviewArchivedCorrespondence","reviewed","getCorrReminder","GetSubCorrespondenceImportantAttachments","GetSubCorrespondenceOtherImportantAttachments","GetDashboardImportantAttachments","GetCorrespondenceDescription","GetOverviewSubCorrespondencesByCorrespondenceID","getClassificationDetails","getMergedData","mergeCorrespondenceId","MergeCorrespondence","mergeCorrespondenceDTO","getMergedCorrespondence","getLatestAttachmentByCorrespondenceId","separationCorrespondence","deleteSequenceCorrPhysicalAttaLinks","sequence","Sequence","Recipient","Relation","SaveclassificationClick","ExternalEntityId","getEntityManagerByEntityID","entityID","getByYearAndCorrNumber","corrNumber","getIntimationCorrespondence","getCorrespondenceInitialClassificationId","getCorrespondenceInitialClassification","allowCaseFileForwardMethod","caseFileId","getGeneralSettings","GetSettings","GetCanUserSelectForwardingAsValue","isForSave","IsInMyOutBoxAndNotInMyInboxes","isFromFollowupInbox","GetProcAttachmentsCount","GetCorrespondenceFollowers","IsUserCanPublishForAnyOffice","checkIfSubsequentCorrespondenceLinking","getAllLinkedCorrswithSubsequentLinkType","getInitialForwardedAsEntity","isCorrBundled","RePrepearCorrespondencesToArchive","printPdf","getCorrespondenceLetterText","getCanMergeSubCorrespondence","subCorrId","getMyEntityForwardingSettings","currentRecipient","EntityID","getAllowedDurationToViewCorrespondence","saveModuleActiveUsers","getModuleActiveUsers","removeModuleActiveUser","checkIfPresidentOverviewEnabled","getCorrespondenceReadStatus","getEntitiesAndUsersByRolesAutoComplete","isFromSendToCombo","ReassignedTaskDto","DetailsFollowUpTeamSVC","getInitialExecutiveFollowupTeam","isForForward","forwardedAsEntityId","addCorrespondenceToFollowupTeam","executiveFollowupTeamId","GetXcUserId","ChangeCorrImportant","GetImportantCorr","getAllFollowUpTeamAdded","deleteSelectedFollowupTeams","selectedIds","FollowUpStatusEnum","UnderFollowUp","UnderAppointment","Finished","DeadlinesService","correspondenceActionApiUrl","correspondenceApiUrl","formattingDate","NewDate","ActionReminderDateCleared","ActionReminderDateChanged","ActionDeadlineDateCleared","ActionDeadlineDateChanged","isShowTime","IsFromFollowupTeam","CorrespondenceReminderDateCleared","CorrespondenceReminderDateChanged","CorrespondenceDeadlineDateCleared","CorrespondenceDeadlineDateChanged","UpdateCorrespondenceWithActionReminderDeadlineDates","actionReminderDate","actionDeadlineDate","correspondenceReminderDate","correspondenceDeadlineDate","ActionReminderDate","CorrespondenceReminderDate","CorrespondenceDeadlineDate","UpdateActionReminderDate","UpdateRemidersDismiss","UpdateRemidersSnooze","GetCurrentUserReminders","AllRemindersDateChanged","BorrowRequestsvc","saveBorrowRequest","getEntityNameStorageFile","BorrowRequestDto","DetailsFilingCmp_div_0_div_3_div_1_div_29_Template","ShowStorageFolder","DetailsFilingCmp_div_0_div_3_div_4_div_1_Template","DetailsFilingCmp_div_0_div_3_div_4_div_2_Template","isProcmlation","DetailsFilingCmp_div_0_div_3_div_6_h6_8_Template","DetailsFilingCmp_div_0_div_3_div_6_h6_16_Template","showPopup","borrowRequestDto","BorrowedByUser","BorrowerAutocompleteOptions","borrowRequestForm","DetailsFilingCmp_div_0_div_3_berry_popup_8_div_2_div_6_Template","BorrowEndDate","isAvailableForBorrowing","ApprovedByDocumentCenter","DetailsFilingCmp_div_0_div_3_berry_popup_8_div_2_Template","staticPopupOption","DetailsFilingCmp_div_0_div_3_div_1_Template","DetailsFilingCmp_div_0_div_3_div_2_Template","DetailsFilingCmp_div_0_div_3_div_3_Template","DetailsFilingCmp_div_0_div_3_div_4_Template","DetailsFilingCmp_div_0_div_3_div_5_Template","DetailsFilingCmp_div_0_div_3_div_6_Template","DetailsFilingCmp_div_0_div_3_button_7_Template","DetailsFilingCmp_div_0_div_3_berry_popup_8_Template","IsLightCorrespondenceShelving","DetailsFilingCmp_div_0_div_3_Template","DetailsFilingCmp","appState","comboBoxServerSearchDatasourceDefaultOptions3","SaveBorrowRequest","prepareInit","refreshInfo","FillUserId","FillUserFullname","DocumentCenterEntityName","Category","staticPopup","self","DetailsFilingCmp_div_0_Template","ReplyRequestResponseSvc","GetReplyRequestsForCurrentResponderUser","CanUserSaveCorrespondence","AnyCorrespondenceReplyRequestResponse","AnyActionReplyRequestResponse","SubCorrespondenceShared","SubCorrespondenceSVC","isCorrInMyInbox","subCorrespondenceApi","CreateSubCorrespondenceAction","getReplySubCorrespondenceActionDirections","replySubCorrespondenceAction","replySubCorrespondenceActionDto","saveFinalizeSubCorrespondence","getCorrespondenceAttachmentsCanBeOutOfSubCorrespondence","getLinkedDataForSubCorrespondences","getOutOfSubCorrespondenceAttachments","CheckIfCorrIsInMyInbox","ManagerialInternalOverview","ManagerialIncomingOverview","ManagerialOutgoingOverview","MultipleOutgoingOverview","ExternalEmailsService","recordsPerPage","GetBasic","GetPermission","userid","OnSuccess","OnFail","_map","AttachementsCount","ReciveDateStr","FromDisplayString","HasAttachements","ExternalEntityID","ContactType","ContactName","IsImportant","IsProcessed","IsRead","RecieveDate","ReciveDateAsInt","EGovCorrespondencesService","GetInboxList","pageNumber","isRejected","order","GetInboxDetail","GetGovCorrDetailForCreate","rejectIncoming","reason","RejectionMessage","sendCorrespondenceToYesser","externalId","unlockEGovCorrespondence","LockEGovCorrespondence","RequestExceedsTheLimit","IsCategoryValidWithoutAttachment","GetElectronicExternalContacts","FooterSvc","getAttachmentsLight","GetCorrespondenceAttachments","isDefaultAttachmentOverview","numberOfAttachments","InboxesCmp","inboxesSVC","subscribeId","unsubscribeRouter","_isPersonalDelegationAvailable","IsPersonalDelegationAvailable","_isFullImpersonation","_isOwnershipDelegationAvailable","IsOwnershipDelegationAvailable","getBusinessUserTypeId","BusinessUserTypeId","presidenentTypeID","letterFeature","isFeatureSharedInboxesEnabled","hasTasksModule","hideCorrespondenceOwnershipInbox","correspondence_Followup","BERRY_FILTERS","BERRY_FILTERS_IMPORTANT_URGENT","BERRY_FILTERS_LATE","BERRY_FILTERS_COMPLETED_CORRESPONDENCES","BERRY_FILTERS_SIGNATURE_REQUESTS","BERRY_FILTERS_MYTASKS","FILTER_FromRoyalCourt","isProclemationModel","isCorrespondenceModel","royalCourtInboxTab","showInboxEntitiesEmployeeCounter","ShowInboxEntitiesEmployeeCounter","IsImpersonatedHasOwnerShipInbox","IsImpersonatedHasOwnershipInbox","IsUserPermittedToViewEntitySentbox","IsUserHasSharedInboxes","fieldVisitApproveTab","defaultInboxFilterVals","inboxFilter","defaultInboxFilters","SearchFilter","UrgencyIds","ConfidentialityIds","CorrespondenceCategoryIds","CCEntitiyIds","myCCEntityIds","IsIncludePersonalCopy","CorrespondenceTypeIds","IsFromDashboard","asCopy","veryUrgent","urgent","normalSpecific","notUrgent","topSecret","verySecret","secret","notSecret","notImportant","isSaved","OnlyLate","selectAllFilter","immediately","follwupDateFillter","prohibited","asOriginal","Confid_Level5","Confid_Level6","Confid_Level7","Confid_Level8","Confid_Level9","IsCompleted","FolderId","headerLogo","footerLogo","selectedInboxId","isPersonalDelegationAvailable","isOwnershipDelegationAvailable","isEntityDelegationAvailable","IsEntityDelegationAvailable","isOwnershipDelegationOnly","IsImpersonated","hideProclamationImportance","HideProclamationImportance","IsPersonalInbox","InboxItemType","roleService","userProfileSvc","sharedInboxesSVC","sidebarOptions","sidebarTabId","filterInboxes","inboxIndex","sidebar","showAllInbox","InboxId","hasSearched","showConfidentialCorrespondencesInboxTab","dashboardCorrespondenceTypesIds","isGeneralSecretaryOfProclamationExamination","ProclamationsImportantSubjectsCommittee","isUserResercher","IsSentToSpecializedEntities","canRefreshInboxes","approveFieldVisitPermission","remindersInboxCount","totalApplicationsCountAll","totalApplicationsCount","_isFilterClick","isPrintBusy","GetDashboardCorrespondenceTypes","subscribeToGlobalRoute","subscribeAdd","getInboxes","selectedInbox","pathname","lastIndexOf","splitAfterStr","selectInbox_click","inboxItemType","isFromDashboard","setIsFromDashboaredParam","getEnableCompletedCorrespondencesStatusSettings","enableCompletedCorrespondencesStatusSettings","CheckCurrentUserIsManager","CheckGeneralSecretaryOfProclamationExamination","CheckCurrentUserIsResercher","resetDefaultParameters","sortAsc","EntityIdInbox","sSetSearchUrl","bSeachQueryParams","vNavigateToStorageSearchUrl","ConsultanteDashBoardFilter","SearchType","setParamsFromQueryParams","getProclamationsImportantSubjectsCommittee","collectSelectedInbox","setPage","inboxClicked","sortByQualitativeWeight","onPageChanged","changeURL","FollowChange","Followed","duplicateObject","otherInboxCounts","followupCounterInt","followUpInboxCount","followupCounter","getShowConfidentialCorrespondences","sidebarWidth","setSidebarWidth","fillCustomCategoryInboxes","toggleSidebarFilterLists","sidebarFilteringIndex","saveSidebarFilterPreference","windowWidth","clientWidth","pageX","corrListSidebar","corrListContainer","EgovListContainer","navfilterContainer","eGovNavfilterContainer","footerContainer","eGovfooterContainer","inboxItemList","inboxItems","inbox","Icon","UnSeenCount","selectInbox","FillInboxChildren","identfire","FillOtherInboxCounts","CanEditCommittee","IsSharedInbox","isExpanded","Children","childInbox","getOtherInboxesCounts","setNavItemCounts","externalInboxs","emailData","Num","CustomCategoryInboxCountList","fillCustomCategoryInboxesCount","counts","ownershipInboxCount","UnSeenOwnership","EntitySentboxCount","UnSeenEntitySentboxCount","importantUrgentInboxCount","UnSeenImportantAndUrgent","UrgentInboxCount","UnSeenUrgent","lateInboxCount","UnSeenLate","ComplatedCorrespondenceInboxCount","UnSeenCompleted","UnSeenSignatureRequests","myTasksCount","UnSeenMyTasks","letterInboxCount","UnSeenFollowUp","ConfidentialToMeInboxCount","UnSeenConfidentialToMeInboxCount","RoyalCourtInboxCount","ReminderCount","draftInboxCount","getCustomCategoriesInboxes","customCategoriesInboxes","getCustomCategoriesInboxItems","InboxCount","isInboxBusy","canBrowseWhileLoading","canEditCommittee","refreshInboxes","isSharedInbox","isCorrBackClicked","isInboxClicked","isEditCommittee","InboxSharedFromUserId","checkIfInboxSharingIsEnabled","sortingText","inboxType","getCorrespondenceCategoryParams","ImportantSubjectsCommitteeId","sortQualitativeWeightAsc","sortProcDateAsc","sortCaseDateAsc","getQueryParamsFromParams","isfromdashboard","sortDir","sortByProcDate","sortByCaseDate","setIsImportantParam","setUrgencyIdsParam","setOnlyLateParam","BranchEntities","ResearcherId","IsPrivate","Tick","FromOverview","QueryParams","fixQueryParamValue","getCategoryIdsFromQueryParamValue","moduleUrl","exportCorrList","OnlyTheseCorrespondenceIds","clearSearchStorage","_ShowSearchQueryParams","searchQueryParmas","clearSearchParams","encodeURI","savedSearchQueryParams","isInboxSharingEnabled","getSharedInboxDetail","SharedInboxUsers","sharedWithUserList","checkIfSentEntityInboxEnabled","isForSharedWithUser","SharedInboxesSVC","InboxesCmp_div_4_Template","InboxesCmp_div_6_Template","opacity","transition","InboxDto","AppModuleIdService","InboxesSVC","resetFilter","CallId","ReceivingDuration","ClosedAndArchived","SenderEntityAndCommittee","IsMonitoredInbox","CaseFileStatus","ShowCorrespondencesForwardedtoExternalEntity","ShowExportedSubCorrespondences","NumberSearchText","NumberSearchTextType","TextSearch","IgnoreSpecificSearch","SearchByAttachmentNumber","SearchCount","SearchInInboxAndItsFolders","getModuleUrl","isExternalResource","ccInboxCount","UnSeenCC","correspondenceFolderUrl","isOnlyLate","getConfidentialitiesUsed","getCorrespondencesLastStepHsitory","idsParam","getCorrespondencesHasPendingSignatureRequest","getCorrespondencesAdditionalInfo","recipientIdIdsParam","getEntitiesWithParams","withParamsObj","GetMyCCEntityIds","markAllAsSeenInInbox","dismissAll","localParams","extend","UnfollowAll","GetRecipients","GetRecipientId","getCorrespondancePhysicalAttachmentLinkByCorrIds","corrIds","getAllBranches","AllowMutipleForward","getCorrSortType","extractDataSpecial","getCorrespondenceInboxFolders","parentInbox","getCorrespondenceFolder","selectedFolderId","addCorrespondenceInboxFolders","correspondenceFolder","editCorrespondenceInboxFolders","deleteCorrespondenceInboxFolders","moveCorrespondenceInboxFolder","toFolderId","returnToBox","inboxDto","getUsersForAutoComplete","saveSharedInboxesDetail","sharedInbox","deativateInboxSharing","sharedInboxUser","ActionsDeadlineSvc","CorrActionDeadline","saveUrgencyDeadline","wholeObject","ReminderPeriod","ReminderPeriodType","ReminderRepeat","getUrgenciesDeadlines","getCorrActionDeadline","CorrActionDeadlineByid","corrid","SettlementSettingSVC","GetCorrespondenceSettlementSettingByCategoryId","AddOrUpdate","correspondenceSettlementSettingDTO","IsHaveSettlementSetting","GetSettlementSetting","CategoryTypeClassificationSvc","generalSettingBaseUrl","GetCorrespondenceCategories","GetCorrespondenceTypes","GetCorrespondenceClassifications","GetCategoryCorrespondenceTypes","GetTypeCorrespondenceClassifications","saveClassification","classificationId","isDelete","UpdateCategory","isEGov","saveType","SaveCategoryTypes","categoryID","typeIds","SaveCorrespondencesCategoriesSettings","GetApplicationFeatures","ScheduleTemplatesSvc","baseURL2","baseURL3","memoSummariesBaseUrl","memoProceduresBaseUrl","getAllScheduleTemplates","GetAllScheduleTemplates","withPagin","templateName","UpdateScheduleTemplate","SelectedScheduleTemplate","UpdateScheduleTemplateRole","scheduleTemplateRoleDTO","refreshGeneralAndPrivateSchedule","getTemplateRoles","canDeleteScheduleTemplateRole","scheduleTemplateId","saveOrderList","listOrderIds","GetAllowedTemplatesForGenralScheduleDashboard","GetAllowedTemplatesForGenralSchedule","canShowGeneralScheduleTab","GetScheduleTemplateById","GetTabs","AddUserToScheduleTeam","SelectedUserID","scheduleTeamTypeId","GetInteristedTeam","DeleteTeamMember","GetMemoSummariesByTemplateId","SaveMemoSummaries","scheduleTemplateMemoSummaries","DeleteMemoSummaries","deletedMemoSummaries","GetMemoProceduresByTemplateId","SaveMemoProcedures","scheduleTemplateMemoProcedures","DeleteMemoProcedures","deletedMemoProcedures","GetTopicsGroup","AddNewTopic","topicsGroupDto","EditTopic","DeleteTopic","topicId","UserFavoritesSvc","getUserFavorites","UpdateUserFavorites","userFavorites","activateParentCommitteeOnly","deactivateParentCommitteeAndSubCommittees","ResetOption","CanMakeActionsOnAllSubCommittees","CommitteStatusPopupCmp_ng_container_4_div_14_Template","canMakeActionsOnAllSubCommittees","deleteParentCommitteeAndSubCommittees","CommitteStatusPopupCmp_ng_container_5_div_14_Template","CommitteStatusPopupCmp","_svc","_subCommitteesSVC","ChangeCommitteesStatus","DeleteCommittee","activeCommittee","deactivateCommittee","deleteCommittee","committeeStatusPopupOption","getTitle","completeProcess","resetPopupValue","parentCommitteeId","openCommitteeStatusPopup","committeeStatusPopup","closeCommitteeStatusPopup","isCommitteeActivation","CommitteStatusPopupCmp_ng_container_3_Template","CommitteStatusPopupCmp_ng_container_4_Template","CommitteStatusPopupCmp_ng_container_5_Template","_changeCommitteeStatus","getElapsedTemporaryCommitteeTooltip","CommitteeDto","IsCommitteeTemporaryAndExpired","openAuditTrialPopup","openMergePopup","AddEditCommitteeCmp_div_7_div_4_Template","AddEditCommitteeCmp_div_7_div_5_Template","AddEditCommitteeCmp_div_7_button_7_Template","isEditPopupMode","canViewAuditTrail","cat_r41","CommitteeMeetingTemplateNameAr","_r45","CommitteeMeetingTemplateNameEn","_r47","selectedCategoryText","onStartDateChange","CommitteeForm","setRegulatoryDocumentCodeValue","RegulatoryDocumentCodeId","RegulatoryDocumentCode","setOrganizationCodeValue","OrganizationCodeId","OrganizationCode","RegulatoryDocumentCodeAutoComplete","OrganizationCodeAutoComplete","item_r65","deleteArchive","AddEditCommitteeCmp_div_110_div_3_tr_12_Template","archiveItems","AddEditCommitteeCmp_div_110_div_3_Template","AddEditCommitteeCmp_div_110_div_4_Template","member_r75","ExternalUser","markMemberAsExternalUserChanged","ctx_r84","markMemberAsExternalUserTooltip","enableAddExternalMemberSetting","AddEditCommitteeCmp_div_112_table_3_tr_14_ng_container_23_div_1_Template","isMarkAsExternalUserEnable","_r95","IsEmailConfirmed","confirmEmail","_r101","openEditMemberPermissionsPopup","deleteCommitteeMember","ChangeManager","AddEditCommitteeCmp_div_112_table_3_tr_14_berry_avatar_6_Template","AddEditCommitteeCmp_div_112_table_3_tr_14_berry_avatar_7_Template","AddEditCommitteeCmp_div_112_table_3_tr_14_span_11_Template","openEditMembersPopup","AddEditCommitteeCmp_div_112_table_3_tr_14_ng_container_23_Template","AddEditCommitteeCmp_div_112_table_3_tr_14_div_25_Template","AddEditCommitteeCmp_div_112_table_3_tr_14_ul_30_Template","fromInbox","CommitteeRoleName","anyExternalUserWithNoAccess","showEmailConfirm","AddEditCommitteeCmp_div_112_table_3_span_9_Template","AddEditCommitteeCmp_div_112_table_3_span_11_Template","AddEditCommitteeCmp_div_112_table_3_tr_14_Template","CheckIfAnyUserShouldNotConfirmEmail","committeeMembers","_r108","openAddNewExternalCommitteeMember","_r110","confirmAllEmail","AddEditCommitteeCmp_div_112_table_3_Template","AddEditCommitteeCmp_div_112_div_4_Template","ctx_r111","openAddNewCommitteeMember","AddEditCommitteeCmp_div_112_input_6_Template","AddEditCommitteeCmp_div_112_input_7_Template","advancedCommittee","anyExternalUserWithNoConfirmedEmail","committeeIdStr","_r118","ctx_r117","getActionURL","UsersCommitteeDto","UserText","ctx_r114","userAutoComplete","_r123","ctx_r124","ctx_r125","ctx_r126","individualsNotLinkedWithUsersAutoComplete","AddEditCommitteeCmp_ng_container_126_div_7_Template","AddEditCommitteeCmp_ng_container_126_div_8_Template","_r128","ctx_r127","committeeMemberDto","ctx_r129","CommitteeRoleId","externalCommitteeMember","rolesAutoComplete","item_r132","_r134","ctx_r133","deleteArchiveTemp","AddEditCommitteeCmp_ng_container_127_div_5_tr_13_Template","archiveItemAddMemberTemplateDto","AddEditCommitteeCmp_ng_container_127_div_5_Template","_r136","AddEditCommitteeCmp","enableEntityArchiveItem","savedisabled","IsTemporary","_showRDOrganizationFields","ParentEntityID","isAdvancedCommitteeEnabled","advanced_Committee","isCommitteeGoalsOptional","_isCommitteeGoalsOptional","IsCommitteeExpired","_route","individualAuthSvc","cdRef","showGoBack","showToggle","CommitteeStatusBusy","externalCommitteeMemberMarkedAsUser","isAdmin","Numbering","isAutoNumbering","committeeCategories","_isR2Client","showCommitteeAuditTrialCmp","exportIFrameSRC","bypassSecurityTrustResourceUrl","UserMeetinRoles","archiveItemRemoveMemberTemplateDto","archiveItemMergeTemplateDto","ScheduleRoles","initialDateValue","_isMangerExist","DynamicCommitteeMeetings","dynamicCommitteeMeetings","IsManagerChecked","TempRoles","isEditCommitteeMode","PublicInboxDto","RDOrganizationCodeDto","EntityNameAR","EntityNameEn","CommitteeNumber","ShortEntityName","ShortEntityNameEn","ParentEntity","CommitteeTypeId","CommitteeMangerId","TypeOfCommittee","CommitteeTypeName","CommitteeType","EntityTypeID","corrsCount","ArchiveItems","CommitteeTypeEnum","CommitteeCategoryId","CommitteeGoals","ParentCommitteeId","HasSubCommittees","ScheduleRoleDto","RoleEnumId","returnIndividualId","AutoCompEntitiesOptions","RecipientsAutocomplete","withoutCommittees","CommitteeTypesAutocomplete","withoutExternal","archiveItemType","EnitiyArchiveType","isEdite","EntityArchiveItems","PublicInboxType","isPresedent","EditRolePopUpOption","AddUserToCommitteePublicInbox","AuditTrailOption","HasAnyCorrespondence","isAuto","RDOrganizationFieldsEnabled","addLinked_ValidateCallback","entityToAdd","Merge","isAlreadyLinked","AddMember","RemoveMember","mergeCommitteeModal","archiveItemMerge","ALREADY_Linked","quickSearch","addLinked_SelectCallback","linkToAdd","enitiyArchiveItemDTO","execludedArchivesIds","EditMember","RemoveCommitteeMember","GetCommitteeMembers","addLinked_ClosePopup","loadData","_GetCommitteeInfo","GetArchiveItems","getArchiveItems","getCommitteeCategories","committeeIdPopup","getIsAddExternalContactsSettingEnabled","initialDate","controller","routeValue","ShowNameOfTheMeetingTemplate","isAdvancedMeeting","AddNewCommittee","ValidateCommitteeNumber","dataResult","isPresident","PleaseAddMembers","exception","changeParentEntity","EditCommittee","Worning","deleteEntityArchiveItem","getCommitteeTypeValidator","getCommitteeTypeValidatorForAllClients","CommitteeCategory","ExternalPublicInbox","_validateDuplicateMember","ThisMemberIsAlreadyExist","AddUserToCommitteeMembers","_hideAddNewCommitteeMember","CreateIndividualAccessForAddedUser","userInfo","AuthenticationReason","LinkedItemID","AddAccessIfHasUserId","EditMemberPermissions","action","newValue","CanSave","CanForward","CanshowInbox","changeManger","EnumID","EditRolePopUp","isOnInit","AddMoreMember","manger","MangerNotDetermine","member","isMangerEnabled","NoMembersAndManger","GetCommitteeInfo","SecheduleTemplateInfo","CommitteeCategoryChanged","committeesGoalsAddModifyCmp","committeeGoalsList","_AddOrEditCommittee","isAllDeleted","goal","CanNotDeletePresident","DeleteMember","isActivateCommittee","CommitteStatusPopup","ChangeCommitteeStatusProcess","changeCommitteeStatus","selectedCommitteId","hasSubCommittees","MergeCommitteeModalOptions","EditMemberSchedulePermissions","SetUserScheduleRole","EditMemberTempRoles","showAddNewCommitteeMemberModal","selectedMember","scrollTo","behavior","Allowed_External_Users_To_Access_the_System","anyExternalUser","markAsExternalUserChanged","newMemberContactsAuthInfoEdit","editMemberContactsAuthInfoEdit","onNewMemberContactsAuthInfoEditCancel","onNewMemberContactsAuthInfoEditSaved","onEditMemberContactsAuthInfoEditCancel","onEditMemberContactsAuthInfoEditSaved","isNewMember","newExternalUsers","printExternalUsersAccessPermission","fileUrl","memberInfo","ChangeCommitteeManager","onMergeSave","isSave","IfUserHasArchiveModule","committeeMemberId","editMemberPermissionsPopup","committeeMember","getRoleAndMemberPermissions","editMemberPopupOption","openPopup","editMembers","editMode","CommitteeCategoryName","openMembersPopup","addEditMember","addEditCommitteeMember","editMembersPopup","ChangeCommitteeTemplateNameAr","newVal","ChangeCommitteeTemplateNameEn","getCommitteesDefaultNumberingFormula","CommitteesDefaultNumberingFormula","ChangeCommitteeNumber","selectedCategory","IsDigitalStampsFeatureEnabled","AddEditCommitteeCmp_div_1_Template","AddEditCommitteeCmp_div_7_Template","AddEditCommitteeCmp_option_19_Template","AddEditCommitteeCmp_span_34_Template","AddEditCommitteeCmp_span_95_Template","AddEditCommitteeCmp_div_99_Template","AddEditCommitteeCmp_div_100_Template","AddEditCommitteeCmp_div_101_Template","AddEditCommitteeCmp_div_102_Template","AddEditCommitteeCmp_div_104_Template","AddEditCommitteeCmp_div_105_Template","AddEditCommitteeCmp_div_109_Template","AddEditCommitteeCmp_div_110_Template","AddEditCommitteeCmp_div_111_Template","AddEditCommitteeCmp_div_112_Template","AddEditCommitteeCmp_stamp_113_Template","AddEditCommitteeCmp_div_116_Template","AddEditCommitteeCmp_ng_container_126_Template","AddEditCommitteeCmp_ng_container_127_Template","CommitteesSvc","CommitteeApiURL","RolePermissionsURL","GetcommitteesByID","GetCommittees","committeeName","committeeNumber","ScheduleRole","ScheduleRoleEnum_ID","Committee_ID","GetUserMeetinRoles","CommitteId","entityArchiveItems","IsCommitteeActivation","ActivateParentCommitteeOnly","DeactivateParentCommitteeAndSubCommittees","MergeCommitee","MergeCommitteeDto","AddAccessUserIfHasUserId","committeeMemberType","CommitteeMemberType","Member","MemberId","getCommitteePermissions","CommitteeModule","_angular_core__WEBPACK_IMPORTED_MODULE_27__","SubCommitteesSVC","MembersSharedModule","CommitteesGoalsModule","i14","i15","i16","i17","i18","i19","MergeCommitteeModalCmp","i20","item_r6","MergeCommitteeModalCmp_div_15_div_5_tr_13_a_9_Template","MergeCommitteeModalCmp_div_15_div_5_tr_13_Template","addArchive","MergeCommitteeModalCmp_div_15_div_5_Template","mergeSubCommittees","hasArchiveModule","mergecommitteeSupmit","onAddArchive","onDeleteArchive","reloadCommitteeInfo","internalEntitiesAutoCompleteOptions","MergeSubCommittees","MergeCommitteeForm","EntityIdControl","MergeConfirmation","selectedEntity","managerName","SendFromCommitteeModule","MergeCommitteeModalCmp_div_15_Template","MergeCommitteeModalCmp_div_16_Template","enableArchive","saveOption","correspondenceFormStatusOption","saveFields","correspondenceFormStatusOptionField","saveFieldsInBulk","fields","deleteOption","recordId","deleteField","getAllOptions","getAllField","optionId","getFormFieldStatus","getFormFieldStatusForFormPurpose","getOptions","controlId","isFormControlStatusEnabled","enableCorrespondenceFormControlStatus","defaultValidators","validatorGroup","controlExists","AllowNull","XCbaseUrl","AMbaseUrl","ManageRolesUrl","CorrTypeUrl","XCUrl","userURL","dashboardCorrespondenceTypes","getCommitteesRemindersIntervals","getSettingsByGroup","settingGroup","GetUserAppModules","GetMeetingSettings","UpdateSettings","of","isEmailToSendMeetingRequestExists","SaveEmailToSendMeetingRequestSetting","password","Password","DeleteEmailToSendMeetingRequestSetting","GetSettingsByGroupName","GetTaskMandatoryFields","GetXCPresidentsList","GetXCUsersBySelectedPresidentId","xcUserDto","GetXCUserEntity","XCUserId","AddSelectedXCPresidentUsers","newUserForXCSelectedPresident","DeleteAllSelectedXCPresidentUsers","SelectedXCPresidentID","DeleteXCUserByXCPresidentID","xcPresidentID","DeleteSelectedXCUserEntity","deleteUserFromList","XCUserID","AddSelectedXCPresident","newXCSelectedPresident","AddSelectedFollowupUser","newSelectedFollowupUser","AddSelectedXCUserEntity","newXCSelectedEntity","GetOrganizationsByUserId","SelectedXCUserId","getAllPresidentOrganizations","GetClientAppModuleFilesize","SetMaxFileSize","templateSize","GetTemplateMaxSizeFromGeneralSetting","GetIISMaxSizeFromDMS","UpdatePermissionbyRoleId","UpdateListOfRolesForUsers","InvalidateCCUsers","UpdateExtensions","restrictedFileExtensions","getClientId","GetHolidaysWeekends","UpdateHolidaysWeekends","weekends","GetSearchDates","GetDeliveryReportTemplates","SaveDeliveryReportSetting","deliveryReportSettingsListAsJson","GetdeliveryReportSettings","GetFirstDateInYear","GetAdvanceSearchStartDate","GetDateNowInYear","GetFirstDateInYearString","GetDateNowInYearString","CheckCorrespondencesModuleSupport","GetClientAppModulesSettings","UpdateClientAppModulsOrder","GetXCPresidentsListByUserId","GetArchiveSettings","UpdateArchiveSettings","UpdateXCUserEntitiesOrder","xcUserEntitiesDto","UpdateUserApprovalPermissionSettings","userIds","GetPermissionApprovalSettingUsers","CheckUnderReviewAnnoucements","AddProtocolToUrl","isUrlWithinAllowedDomains","SwitchTab","i_r8","reportId","item_r26","CheckAllCorrClassification","OnCorrClassificationSelected","CorrClassificationItems","ReportSettingsCmp_ng_container_2_div_1_div_13_div_9_Template","CheckedAllClassifications","CorrTypeItems","CheckedAllTypes","Classifications","isValidCorrClassification","item_r32","u_r33","UserTypeID","UserTypeName","item_r34","ActivateParty","i_r35","item_r38","i_r39","CheckAllCorrType","OnCorrTypeSelected","ReportSettingsCmp_ng_container_2_div_1_option_11_Template","ReportSettingsCmp_ng_container_2_div_1_div_12_Template","ReportSettingsCmp_ng_container_2_div_1_div_13_Template","CheckAllConfidentiality","OnConfidentialitySelected","ReportSettingsCmp_ng_container_2_div_1_option_24_Template","ReportSettingsCmp_ng_container_2_div_1_div_25_Template","onUserTypeSelected","ReportSettingsCmp_ng_container_2_div_1_option_33_Template","ReportSettingsCmp_ng_container_2_div_1_div_34_Template","ShowInactiveUserInSystem","ResetOrder","ReportSettingsCmp_ng_container_2_div_1_ng_container_49_Template","ReportSettingsCmp_ng_container_2_div_1_ng_container_50_Template","ReportSettingsCmp_ng_container_2_div_1_div_51_Template","Types","isValidCorrType","ReportList","CheckedAllConfid","ConfidentialityItems","isValidConfid","UserTypeItems","UserTypes","isValidUserType","NoUsersFound","ActiveTap","showInactiveUsers","ActiveConsultantItems","InactiveConsultantItems","item_r57","TimeFrame","ReportSettingsCmp_ng_container_2_div_2_tr_28_span_5_Template","ReportSettingsCmp_ng_container_2_div_2_tr_28_span_6_Template","openEditPopup","ReportSettingsCmp_ng_container_2_div_2_label_3_Template","ReportSettingsCmp_ng_container_2_div_2_label_4_Template","onToSelectedEntitySelected","daysNumber","ReportSettingsCmp_ng_container_2_div_2_div_10_Template","AddSettingMangment","ReportSettingsCmp_ng_container_2_div_2_td_17_Template","ReportSettingsCmp_ng_container_2_div_2_td_18_Template","ReportSettingsCmp_ng_container_2_div_2_tr_28_Template","ReportSettingType","ForwardingDepartments","ForwardingEmployees","EntitiesAutoCompleteOptions","entityIdSelected","IsDaysNumberWithinPeriod","checkValidations","Entities","ReportSettingsCmp_ng_container_2_div_1_Template","ReportSettingsCmp_ng_container_2_div_2_Template","isEmployeeUnit","ReportSettingsCmp","isUserBusy","AllClassifications","editPopupOption","IsTimeFrameWithinPeriod","updateSettingManagement","entityIds","EntityIds","StaffReportSettings","GetReportList","GetReportSettings","activeTap","WorkFlow","deleteSettingManagement","GeSettings","CriteriaId","GetEntitys","EnitiyNames","Criterias","ReportConfiguration","ItemId","IsAllItemsSelected","classification","CorrespondenceClassification","confid","roles","UserType","GetEntityInfo","DoSortable","maxOrder","DeleteCorrespondenceModal","btnYes","btnNo","allClassification","CorrClassificationControl","classificationSelected","allClassificationByTypes","CorrTypeControl","IsFromEntityReport","EntityidUpdate","editPopup","typeItem","itemFound","entityid","filteredCriteriasEntity","ConfidentialityControl","sortable","axis","stop","ui","idArr","counter","classificationItem","confidItem","roleItem","UserReportDtos","FilterUsers","GetUserReports","ReportId","LoadInactiveUser","ReportSettingsSvc","ReportSettingsCmp_div_1_Template","ReportSettingsCmp_ng_container_2_Template","ReportSettingsCmp_div_3_Template","ReportSettingsCmp_label_8_Template","ReportSettingsCmp_label_9_Template","ReportSettingsCmp_div_17_Template","Consultant","AnnualReports","Portfolio","GetEntities","UserService","USERS","getMasterGridUIData","saveUserRolePermission","oChangedValueDto","deleteDocumentsPermittedUserAndUserType","partCanBeNull","UserTypeId","generateUsersDetailsReport","updateSendNotifications","sendNotificationsToBoth","SendNotificationsToBoth","updateMFASetting","MFASetting","TwoFactorAuthenticationSetting","active","syncUser","getUserRolesList","getUserProfileInfo","HttpParams","getUserTypesAndRecipients","getUserManagerOfEntities","getUserDelegationsPerEntity","getImpersonationPossibilitiesForLoggedInUser","getAssignments","getUnreadNotificationsCount","getCurrentUserInfo","getUserDelegationsInformation","getCustomRecipients","txtSearch","submitChanges","addCustomRecipient","addedUserId","addedUserName","updateUserDelegates","UserDelegate","savePermissions","userTypeID","changedValues","forceSync","generateUserPermissionsReport","getUserTypesPermissions","selectedUserTypeID","getUserTypesDocumentRoles","getUserDocumentRoles","getByUserTypeDocumentRoles","getUserRoles","getApplicationRoleGroup","getDocumentApplicationRoleGroup","getDocumentsPermittedUserAndUserType","getUserTypes","CustomRecipientsAutoComplete","GetAllRecipientsForUser","SaveSingleRecipientsForUser","recipientUserId","SaveSingleRecipientEntityForUser","recipientEntityId","DeleteSingleRecipientsForUser","CustomRecipientUserId","DeleteSingleRecipientEntityForUser","CustomRecipientEntityId","saveEmployeeCode","employeeCode","EmployeeCode","GetuserTypes","GetIndividualByUserId","GetScheduleIndividualByUserId","getUsersUnderUserType","isUserInOtherGroup","ChangeUserTypeForUser","code","Code","getAuthenticatedAccessesUserIds","updateUserPassword","updateBranchResearcherMapping","UpdateUserDigitalInfo","sendEmailConfirmation","getLandingPage","StuckByEnum","none","AdministrativeCommunicationsOffice","PresidentOffice","SharedReportsservice","ProgressStatus","ProgressStatuses","stuckByType","ReportFilters","CreateDate","Start","End","FinalActionDate","FinishDate","InternalEntityId","UserEntity","SomeoneId","SomeoneName","AsCopy","AsOriginal","Properities","OnlyParent","StuckBy","Consultants","ActionType","CorrespondenceYear","UrgencyType","IsSettle","TargetEntityType","TargetEntityId","PrinceTotalDashboard","ReferralStatus","CorrespondenceStatus","ExportDest","userHasCorrespondences","UserIds","ReportType","ReportSettings","RecordsPerPage","ReportData","TotalRecordsCount","PagesCount","FirstSearch","OtherData","ExportFilter","ReportDisplayDetails","DatePeriod","InternalEntityName","PrepareAllParameters","allParameters","TextSearchTypeEnum","Someone","SearchFilterSomeone","ExternalCorrNumber","FilterDateType","SearchFilterDate","CorrespondenceClassificationIds","SearchInDocumentContent","SearchFilterOrderByTypes","SearchInFirstForward","SearchInAllForwards","OnlyMyInbox","UserTimeZone","UserHasCorrespondences","PrepareMainParameters","PrepareDatesParameters","PrepareProperitiesParameters","prms","prefixs","confidentialityValuesCounter","urgencyValuesCounter","importantValuesCounter","NotSpecifiedt","ActionDeadLineFromDate","ActionDeadLineToDate","ActionDeadLineDatePeriodID","ActionDeadLineDatePeriod","CorrDeadLineFromDate","CorrDeadLineToDate","CorrDeadLineDatePeriodID","CorrDeadLineDatePeriod","CorrTextIsBarcode","PeriodEnum","Week","NotStartedYet","ClosedArchived","Stucked","Completed","NotUrgent","VeryUrgent","NormalSpecific","Immediately","CommitteesGoalsSVC","CommitteesGoalsAddModifyComponent","CommitteeGoalDto","CompletionPercentage","CommitteesGoalsAddModifyComponent_label_0_span_3_Template","newGoalText","AddNewGoalRecord","disableAdd","indx_r8","DeleteGoalRecord","CommitteesGoalsAddModifyComponent_ng_container_3_div_1_button_3_Template","goal_r7","canManageCommitteesGoals","CommitteesGoalsAddModifyComponent_ng_container_3_div_1_Template","AllCommitteeHandlers","CommitteeGeneralHandler","CanManageCommitteesGoals","isAdministrationPage","committeesGoalsSVC","committeeGoal","GetAllGoals","goalIndex","CommitteesGoalsAddModifyComponent_label_0_Template","CommitteesGoalsAddModifyComponent_div_2_Template","CommitteesGoalsAddModifyComponent_ng_container_3_Template","GetOverviewTabGoals","AddGoals","committeeGoalDtos","UpdateGoals","committeeGoalDto","DeleteGoals","committeeGoalId","iitem_r8","EditMemberPermissionsComponent_div_2_div_28_div_1_div_10_span_6_Template","EditMemberPermissionsComponent_div_2_div_28_div_1_div_10_button_7_Template","ifCurrentUSerIfManagerOrPresident","PermissionEnum","DescriptionDetailsValue","EditMemberPermissionsComponent_div_2_div_28_div_1_div_10_Template","iP_r6","item_r5","getRoles","EditMemberPermissionsComponent_div_2_div_28_div_1_Template","getPermissions","searchPermissions","searchPermissionsKeyword","keyDownSearchPermissions","CheckAllPermissions","onCheckDefaultRoles","defaultRolesChecked","EditMemberPermissionsComponent_div_2_div_28_Template","ExternalMember","isCheckAll","Permssions","EditMemberPermissionsComponent","saveMemberPermissions","CommitteeMemberPermission","rolePermissions","memberPermissions","allPermissions","NewRole","RolePermissionDto","selectedRole","CommitteeRoleDto","committeeManager","isAdminSide","defaultRolesList","getCommitteeRoles","getCommitteePermission","prepareDefaultRolesForCommitteeMember","members","viewManageApplication","ViewManageApplication","editMemberPopup","committeeRoles","RolePermissionDTO","memberPermissionsDto","CommitteeMemberPermissionsDto","entry","committeePermissions","PermissionsIds","CommitteeMemberId","saveCommitteeMemberPermissions","closeCreateModal","showModifyModal","role","getCommitteeRolePermissions","getCommitteeRolePermission","CommitteePermissionId","getCommitteeMemberPermissions","getCommitteeMemberPermission","isSelected","DefaultRolesForCommitteeMember","ViewOverviewTab","ViewMembersTab","ViewAttachmentsTab","ViewTasksTab","ViewNotesTab","ViewLinkedInitiativeTab","ViewLinkedDocumentsTab","EditMemberPermissionsComponent_div_2_Template","IsExternal","IndividualName","MemberForm","MemberName","onChangeExternalUser","searchContactsOptions","canAddNewIndividual","EditMembersComponent_div_4_div_3_div_1_Template","EditMembersComponent_div_4_div_3_div_2_Template","EditMembersComponent_div_4_div_4_div_4_Template","EditMembersComponent_div_4_div_4_div_5_Template","EditMembersComponent_div_4_div_5_div_11_Template","MemberEmail","MemberUserName","EditMembersComponent_div_4_div_2_Template","EditMembersComponent_div_4_div_3_Template","EditMembersComponent_div_4_div_4_Template","EditMembersComponent_div_4_div_5_Template","isCommitteeOperationsOfficersTab","MemberRole","item_r39","EditMembersComponent_ng_container_5_table_7_tr_11_Template","EditMembersComponent_ng_container_5_table_7_Template","EditMembersComponent","editMemberspopupOptions","resetMemberInfo","AddEditMember","CommitteeMemberDataDto","_committeeId","AddContact","getCommitteeArchiveItems","changeManager","isSupportStaff","editMember","addMember","userText","dbRes","getArchiveItemsByMember","EditMembersComponent_div_4_Template","EditMembersComponent_ng_container_5_Template","CommitteeAttachmentService","currentUserSignatureRequestsCount","currentUserSignatureMarkingRequestsCount","currentUserApprovalRequestsCount","getCurrentUserSignatureRequestsCount","getCurrentUserApprovalRequestsCount","getCurrentUserSignatureMarkingRequestsCount","hasAddCommitteeAttachmentsPermission","GetSubCommittees","ModifySubCommitteesLinking","subCommitteesIds","isDeactivation","isDeletion","SupportStaff","CommitteeMemberDto","CommitteeRoleType","ListOrder","CommitteeMemberStatus","Active","StatusDesc","AddedDate","Suspended","AuditTrailDataCount","archiveItemsForOverview","dashboardDto","series","chartPerc","hasViewPermission","scheduleItems","userPermission","userPermissionViewMeetings","commonMethodeUrl","hasAuthorized","working","validateCommitteeNumber","exportCommitte","objFlterDto","getCommitteesAdvancedSearch","committeesFilterParameters","getUserCommittees","pageSize","filterText","filterIsTemp","filterNotTemp","selectedCommitteetStatuses","selectedCommitteeCategories","selectedCommitteeTypes","getCommitteeTypes","getCommitteesDashboardStatistics","getCommitteesBasicInfoDashboard","committeeStatusId","getUserCommitteesInfo","committeeIds","getArchiveList","getLatestCommitteeTasks","addArchiveItem","getCommitteeInfo","loadMeetingAccess","getCommitteeUserPermissions","addNewCommittee","editCommittee","getScheduleRoles","getUserMeetinRoles","getCommitteesMembers","editMemberPermissions","getCommitteeDashboardInfo","createIndividualAccessForAddedUser","getAuditTrailData","addUserToCommitteePublicInbox","setUserScheduleRole","unAuthorized","getLatestCommitteemeeting","getCorrItems","corrCount","checHasPermissionToViewInbox","committeId","getCommitteesTags","getAuditTrailDataForOverview","createCommitteeNote","getCommitteeNotes","deleteCommitteeNote","CommiteeId","editCommitteeNote","getCommitteeMembers","SelectedMemberPermissions","GetLinkedInitiatives","GetCommitteesDashboardSettings","GetCommitteesMeetingsDashboard","committeeTypesIds","GetCommitteesMeetingsTasksDashboard","taskTypesIds","GetMeetingsDetails","detailsType","orderDirection","getScheduleTemplate","ArchiveItemHandler","CommitteeHandler","CommitteeMemberHandler","CommitteeRoleHandler","CommitteeCorrespondencesHandler","NoteHandler","ScheduleItemHandler","ScheduleRoleHandler","CommitteeLogicHandler","CorrespondenceSharedModule","CorrespondenceDocumentCenterStorageDto","OriginalsReceiptFormDto","CorrespondenceRecoveryDto","BorrowReminderDto","FollowUpTeamSvc","SelectedFollowUpTeam","FollowUpTeam","selectedExecutiveFollowupTeamId","selectedExecutiveFollowupTeamName","selectedExecutiveFollowupTeamPosition","selectedCorrespondenceIds","IsSelectAllFilters","isFromDashboardLate","confidentialitiesFilter","urgenciesFilter","ImportancesFilter","getItems","IfCorrInUnderFollowUpOrInMyInbox","getFirstSelectedExecutiveFollowupTeam","getFollowupTeamUsersAndPermissions","getFollowupExecutiveUserPermissions","getFollowUpTeamDashboardCounters","executiveId","setTheFollowup","followerId","correspondenceIds","endTheFollowup","getCorrespondenceActionRecipient","getCorrespondenceDeadlineDate","getPermissionsRelatedToFollowupTeamsAddedToCorrespondencebyUserId","endTheFollowupByExecutiveIds","executiveIds","FollowupTeamSearchDto","UserIsFollowupLeader","LoginStatuses","Lockout","RequiresTwoFactor","Failed","NeedResetPassword","InternalUserWithSSO","Blocked","Forms","FormsWithSSO","LoginService","httpClient","forgotPassword","confirmForExternal","getResetPasswordToken","resetPasswordSubmit","Username","FirstLogin","ShowUserName","confirmEmailChange","getProviders","sendCode","generateTokenAfterValidateCode","AuthService","userManager","_userManager","idpSettings","IsOAuthProviderEnabled","authority","environment","idpAuthority","client_id","clientId","redirect_uri","clientRoot","loginCallback","scope","loadUserInfo","automaticSilentRenew","OAuthClientSecret","client_secret","OAuthResponseType","response_type","OAuthCustomMetaDataUrl","metadataUrl","_user","_loginChangedSubject","$signinSilent","expired","loginChanged","signinRedirect","UserManager","_token","getAccessToken","getUser","id_token","isAuthenticated","checkUser","finishLogin","signinCallback","signinRedirectCallback","loginViaSSOScreen","loginStatuses","signoutRedirect","cbF","clearData","clearStaleState","clearUserData","finishLogout","signoutRedirectCallback","addAccessTokenExpired","loginform","makeRequest","opts","onerror","refreshTokenValue","refresh_token","jwt_decode","exp","authorization","auth","session_state","access_token","RefreshToken","token_type","isloginViaSSOScreen","refreshToken","OAuthScopes","reload","sessionKey","checkIfUserIsInRole","profile","AccessModulesGuard","activatedroute","modules","clientAppModules","userLandingPage","LandingPageRoute","enableManagerDashboard","IsOnAnActiveCommittee","refreshDashboard","getClientAppModulesSetting","landingPageRoute","userAppModules","userAppModuleids","userAppModuleidsRemoveXCModule","showXCModule","routing","entityManagerRouting","landingPage","viewExecutiveCommunication","executive_Communication","CorrespondencePageGuardService","ArchiveStudiesPageGuardService","ImportanceEnum","VeryImportant","NotificationCenterImportanceService","getImportanceColor","enumValue","NotificationCenterSVC","selectUserTypeId","UserPreferencesId","UserPreferencesName","GetSystemDefaults","notificationCenterDto","GetRoleDefaults","updateSystemDefaultFlag","updateSystemDefaultImportance","updateRoleFlag","updateUserTypeImportance","reseltRoleFlag","notificationCenterFilterDto","UpdateUserFlag","NotificationCenterUpdateDto","updateUserImportance","ResetUserTypeFlags","UpdateChannelSystemFlags","UpdateChannelUserTypeFlags","UpdateChannelUserFlags","UpdateUserFlagForNotificationChannels","SessionTimeoutService","baseLoginURL","baseSendCodeURL","baseVerifyCodeURL","baseGetFactorsURL","Login","SendCode","provider","VerifyCode","GetFactors","CustomReportsGuardService","RequestedReportsGuardService","CanViewExtractedReports","PaginationService","LocalStorageService","ToastrService","AlertConfig","CommonModule","FormsModule","ReactiveFormsModule","RouterModule","AlertModule","ModalModule","forRoot","BsDropdownModule","TimepickerModule","NgxPaginationModule","CollapseModule","InfiniteScrollModule","NgSelectModule","routes","SigninRedirectCallbackComponent","baseURI","loadChildren","__webpack_require__","MasterModule","all","ExternalModule","GoogleAuthModule","MicrosoftAuthModule","redirectTo","pathMatch","LoginLandingPageModule","onSameUrlNavigation","AppConfig","env","getConfig","getEnv","getLookup","ConfidentialitiesUsed","CorrespondenceSubTypes","PredefinedDirections","Purposes","TaskTypes","GeneralSettings","UserCustomDirections","ScheduleTemplates","CommitteesTags","getGeneralSetttings","Animations","keyframes","ToastrComponent_ng_container_7_span_1_Template","ToastrComponent_ng_container_7_span_2_Template","ToastTypes","ToastrComponent","Toast","toastrService","toastPackage","toastTypes","toastCurrentType","toastType","isErrorToast","isInfoToast","isSuccessToast","isWarningToast","ResourceID","closeToastMsg","ToastrComponent_ng_container_6_Template","ToastrComponent_ng_container_7_Template","ToastrComponent_ng_container_8_Template","ToastrComponent_ng_container_9_Template","ToastModule","ToastrModule","preventDuplicates","toastComponent","Interceptor","interceptHandler","Map","whiteList","ConnectWhiteListConfig","Intl","DateTimeFormat","resolvedOptions","timeZone","setHeaders","fromEntries","mergeMap","sharedRefreshToken","share","handle","HttpResponse","AppModule","bootstrap","APP_INITIALIZER","useFactory","deps","HTTP_INTERCEPTORS","useClass","BrowserModule","HammerModule","BrowserAnimationsModule","HttpClientModule","AsyncSubject","production","enableProdMode","__NgCli_bootstrap_1","bootstrapModule","LocalizationDicVersion","LocalizationArVersion","LocalizationEnVersion","LocalizationDictionary","angularBaseUrl","apiUpstreamPathTemplate","idsUpstreamPathTemplate","gatewayUrl","version","npm_package_version","OAuthAuthority","OAuthClientId","logoutCallback","SITE_ROOT_PATH","culture","DropDownList","ComboBox","Grid","MultiSelect","AutoComplete","FEK","validator","addMethod","regexp","re","optional","__WEBPACK_AMD_DEFINE_RESULT__","connectionserver","RTCMultiConnection","audio","video","screen","peersBackup","extra","sessionid","socketMessageEvent","socketCustomEvent","autoCloseEntireSession","session","broadcast","maxParticipantsAllowed","enableScalableBroadcast","maxRelayLimitPerUser","socketCustomParameters","io","sockets","socketURL","enableLogs","origin","socket","connect","socketOptions","multiPeersHandler","peers","onExtraDataUpdated","h","remoteUserId","streamSyncNeeded","streamEvents","streamid","stream","onstreamended","deletePeer","allParticipants","localPeerSdpConstraints","OfferToReceiveAudio","sdpConstraints","mandatory","OfferToReceiveVideo","remotePeerSdpConstraints","oneway","isOneWay","direction","isDataOnly","newParticipant","createNewPeer","userPreferences","readyForOffer","attachStreams","waitingForLocalMedia","newParticipationRequest","dontGetRemoteStream","dontAttachLocalStream","connectionDescription","successCallback","onNewParticipant","changedUUID","oldUUID","newUUID","userLeft","onUserLeft","leave","addNegotiatedMessage","resetProps","onSocketDisconnect","onSocketError","onUserStatusChanged","onEntireSessionClosed","onUserIdAlreadyTaken","debug","onNumberOfBroadcastViewersUpdated","isInitiator","ht","fbr","FileBufferReader","onProgress","onFileProgress","onBegin","onFileStart","onEnd","onFileEnd","getLength","selectFirst","getAllParticipants","enableFileSharing","shareFile","ArrayBuffer","DataView","channels","createDataChannel","renegotiate","wt","channel","connection","uuid","getLocalConfig","streamsToShare","rtcMultiConnection","renegotiatingPeer","peerRef","onLocalSdp","onNegotiationNeeded","onLocalCandidate","ut","processCandidates","remoteSdp","onDataChannelMessage","convertToObject","readyForNextChunk","getNextChunk","chunkMissing","addChunk","peer","onDataChannelError","onDataChannelOpened","onDataChannelClosed","onRemoteStream","streams","onGettingRemoteMedia","onRemoteStreamRemoved","onRemovingRemoteMedia","onPeerStateChanged","iceConnectionState","onNegotiationStarted","onNegotiationCompleted","disconnectWith","enableMedia","setUserPreferences","w","createAnsweringPeer","renegotiatePeer","replaceTrack","getSenders","track","kind","lastVideoTrack","lastAudioTrack","sdp","addRemoteSdp","candidate","addRemoteCandidate","isAudio","isVideo","isScreen","onReadyForOffer","onGettingLocalMedia","onLocalMediaError","onMediaError","readAsArrayBuffer","chunkSize","DetectRTC","browser","pt","receive","onclose","onopen","getRemoteStreams","CustomEvent","arguments","__exposedProps__","muteType","onmute","unmuteType","onunmute","crypto","getRandomValues","Uint32Array","g","autoCreateMediaElement","srcObject","currentUserMediaRequest","idInstance","onSyncNeeded","removeChild","play","nt","tt","getTracks","it","cordova","plugins","iosrtc","webkitRTCPeerConnection","RTCPeerConnection","RTCSessionDescription","RTCIceCandidate","MediaStream","MediaStreamTrack","getUserMedia","webkitGetUserMedia","selectAudioOutput","iOSDefaultAudioOutputDevice","registerGlobals","binaryType","onmessage","internalSend","processSdp","setLocalDescription","trickleIce","onSettingLocalDescription","mozRTCPeerConnection","mozRTCSessionDescription","rt","mozRTCIceCandidate","addStream","removeStream","candidates","turn","relay","stun","reflexive","host","iceServers","iceTransportPolicy","iceCandidatePoolSize","bundlePolicy","rtcpMuxPolicy","sdpSemantics","optionalArgument","getReceivers","addTrack","getLocalStreams","onicecandidate","sdpMid","sdpMLineIndex","localDescription","beforeAddingStream","oniceconnectionstatechange","onsignalingstatechange","signalingState","iceGatheringState","ontrack","onended","onremovestream","onremovetrack","removeTrack","addIceCandidate","setRemoteDescription","ondatachannel","enableDisableVideoEncoding","getParameters","encodings","setParameters","nativeClose","yt","chromeMediaSource","mozMediaSource","mediaSource","localMediaConstraints","mutex","queueRequests","shift","mediaDevices","mozGetUserMedia","getDisplayMedia","isobject","latency","sendingTime","autoTranslateText","original","Translator","TranslateText","ft","global","captureStream","mozCaptureStream","getContext","pause","drawImage","toDataURL","HTMLVideoElement","HTMLMediaElement","protocol","hash","revokeObjectURL","dt","clearInterval","ct","lt","vt","et","ot","process","versions","node","bt","msSaveOrOpenBlob","msSaveBlob","kt","opera","fi","InstallTrigger","st","chrome","ei","Android","BlackBerry","iOS","Opera","Windows","any","getOsName","ci","appVersion","osName","osVersion","li","gt","ai","vi","enumerateDevices","oi","appName","parseFloat","fullVersion","isPrivateBrowsing","hi","webkitRequestFileSystem","TEMPORARY","indexedDB","si","isWebRTCSupported","isORTCSupported","RTCIceGatherer","isChrome","isFirefox","isEdge","domain","isOpera","isScreenCapturingSupported","isSupported","isCreateMediaStreamSourceSupported","isAudioContextSupported","isRtpDataChannelsSupported","isSctpDataChannelsSupported","isMobileDevice","isGetUserMediaSupported","displayResolution","displayAspectRatio","bi","toFixed","isCanvasSupportsStreamCapturing","isVideoSupportsStreamCapturing","DetectLocalIPAddress","yi","pi","RtpDataChannels","isPromisesSupported","createOffer","isWebSocketsSupported","WebSocket","CLOSING","isWebSocketsBlocked","checkWebSocketsSupport","WebsocketLatency","load","ni","getSources","deviceId","label","isCustomLabel","MediaDevices","hasMicrophone","hasSpeakers","hasWebcam","isWebsiteHasWebcamPermissions","isWebsiteHasMicrophonePermissions","audioInputDevices","audioOutputDevices","videoInputDevices","isSetSinkIdSupported","isRTPSenderReplaceTracksSupported","isRemoteStreamProcessingSupported","isApplyConstraintsSupported","isMultiMonitorScreenCapturingSupported","webkitMediaStream","exports","attachEvent","attachEventListener","videoCodecNumbers","vp8LineNumber","vp9LineNumber","h264LineNumber","videoCodecNumbersOriginal","removeVPX","disableNACK","prioritize","codecs","removeNonG722","setApplicationSpecificBandwidth","setVideoBitrates","setOpusAttributes","stereo","maxaveragebitrate","maxplaybackrate","cbr","useinbandfec","usedtx","maxptime","preferVP9","preferCodec","forceStereoAudio","extractSdp","BandwidthHandler","iceProtocols","udp","tcp","getIceServers","currentUserMediaRequestOptions","setHandlers","mediaElement","volume","mute","isAudioMuted","unmute","packets","chunkInterval","filesContainer","firstChild","maxChunks","currentPosition","googKey","translations","translatedText","getListOfLanguages","responseText","socketAutoReConnect","FirebaseConnection","SocketConnection","PubNubConnection","mediaConstraints","identifier","publicRoomIdentifier","selectAll","tracks","dontCaptureUserMedia","invokeGetUserMedia","applyConstraints","useDefaultDevices","setStreamEndHandler","muted","onspeaking","onsilence","hark","onvolumechange","merge","threshold","onstream","openOrJoin","checkPresence","captureUserMedia","onleave","rejoin","onReConnecting","onbeforeunload","closeBeforeUnload","closeSocket","ignoreBeforeUnload","changeUserId","bandwidth","RTCRtpTransceiver","addTransceiver","getConfiguration","CodecsHandler","facingMode","VoiceActivityDetection","DtlsSrtpKeyAgreement","googImprovedWifiBwe","googScreencastMinBitrate","googIPv6","googDscp","googCpuUnderuseThreshold","googCpuOveruseThreshold","googSuspendBelowMinBitrate","googCpuOveruseDetection","disconnect","closeEntireSession","videosContainer","streamCallback","resetTrack","alreadySetEndHandler","acceptParticipationRequest","StreamsHandler","invokeSelectFileDialog","FileSelector","accept","selectSingleFile","poster","connectSocket","getSocket","remote","setCustomSocketEvent","getNumberOfBroadcastViewers","broadcastId","numberOfBroadcastViewers","getUserMediaHandler","setCustomSocketHandler","SSEConnection","dontAttachStream","updateExtraData","beforeRemovingStream","isChromeExtensionAvailable","checkIfChromeExtensionAvailable","isFirefoxExtensionAvailable","getChromeExtensionStatus","modifyScreenConstraints","isOnline","isLowBandwidth","getExtraData","autoOpenOrJoin","resetScreen","setPassword","ROOM_NOT_AVAILABLE","INVALID_PASSWORD","USERID_NOT_AVAILABLE","ROOM_PERMISSION_DENIED","ROOM_FULL","DID_NOT_JOIN_ANY_ROOM","INVALID_SOCKET","PUBLIC_IDENTIFIER_MISSING","INVALID_ADMIN_CREDENTIAL","adapterFactory","__esModule","default","defineProperty","shimChrome","shimFirefox","shimEdge","shimSafari","detectBrowser","browserDetails","commonShim","extractVersion","disableLog","disableWarnings","shimPeerConnection","browserShim","shimGetUserMedia","shimMediaStream","shimOnTrack","shimAddTrackRemoveTrack","shimGetSendersWithDtmf","shimGetStats","shimSenderReceiverGetStats","fixNegotiationNeeded","shimRTCIceCandidate","shimConnectionState","shimMaxMessageSize","shimSendThrowTypeError","removeAllowExtmapMixed","shimRemoveStream","shimSenderGetStats","shimReceiverGetStats","shimRTCDataChannel","shimAddTransceiver","shimGetParameters","shimCreateOffer","shimCreateAnswer","shimGetDisplayMedia","shimReplaceTrack","shimRTCIceServerUrls","shimCreateOfferLegacy","shimCallbacksAPI","shimLocalStreamsAPI","shimRemoteStreamsAPI","shimTrackEventTransceiver","shimAudioContext","enumerable","configurable","writable","_shimmedLocalStreams","DOMException","Symbol","iterator","wrapPeerConnectionEvent","transceiver","receiver","_ontrack","_ontrackpoly","dtmf","_dtmf","createDTMFSender","_pc","_senders","RTCRtpSender","getStats","timestamp","localcandidate","remotecandidate","stat","RTCRtpReceiver","filterStats","shimAddTrackRemoveTrackWithNative","_reverseStreams","_streams","getOwnPropertyDescriptor","chromeMediaSourceId","maxFrameRate","frameRate","maxWidth","maxHeight","ideal","exact","charAt","advanced","getSupportedConstraints","PermissionDeniedError","PermissionDismissedError","InvalidStateError","DevicesNotFoundError","ConstraintNotSatisfiedError","TrackStartError","MediaDeviceFailedDueToShutdown","MediaDeviceKillSwitchOn","TabCaptureError","ScreenCaptureError","DeviceCaptureError","constraint","constraintName","getAudioTracks","getVideoTracks","parseCandidate","toJSON","usernameFragment","_sctp","splitSections","parseMLine","matchPrefix","POSITIVE_INFINITY","sctp","byteLength","maxMessageSize","TypeError","completed","checking","_onconnectionstatechange","_connectionstatechangepoly","_lastConnectionState","connectionState","RTCDtmfSender","RTCDTMFSender","filterIceServers","setTrack","deprecated","RTCTrackEvent","inboundrtp","outboundrtp","candidatepair","DataChannel","RTCDataChannel","setParametersPromises","sendEncodings","rid","scaleResolutionDownBy","RangeError","maxFramerate","finally","createAnswer","getSettings","compactObject","_localStreams","_remoteStreams","_onaddstream","_onaddstreampoly","shimConstraints","generateCertificate","offerToReceiveAudio","getTransceivers","setDirection","offerToReceiveVideo","AudioContext","webkitAudioContext","handleEvent","_eventMap","isSecureContext","supportsUnifiedPlan","walkStats","trackIdentifier","trackId","writeRtpDescription","writeIceParameters","iceGatherer","getLocalParameters","writeDtlsParameters","dtlsTransport","mid","rtpSender","rtpReceiver","_initialTrackId","sendEncodingParameters","ssrc","rtx","localCName","headerExtensions","fecMechanisms","payloadType","preferredPayloadType","parameters","apt","clockRate","numChannels","rtcpFeedback","parameter","uri","offer","answer","getRemoteCandidates","foundation","ip","port","priority","NotSupportedError","InvalidAccessError","OperationError","MediaStreamTrackEvent","_dispatchEvent","createDocumentFragment","canTrickleIceCandidates","needNegotiation","localStreams","remoteStreams","_localDescription","_remoteDescription","usingBundle","_iceGatherers","gatherPolicy","_config","transceivers","_sdpSessionId","generateSessionId","_sdpSessionVersion","_dtlsRole","_isClosed","onaddstream","onconnectionstatechange","onicegatheringstatechange","onnegotiationneeded","_emitGatheringStateChange","_createTransceiver","iceTransport","localCapabilities","remoteCapabilities","recvEncodingParameters","associatedRemoteMediaStreams","wantReceive","_createIceAndDtlsTransports","_maybeFireNegotiationNeeded","_createIceGatherer","bufferedCandidateEvents","bufferCandidates","_gather","onlocalcandidate","ufrag","writeCandidate","getMediaSections","getDescription","RTCIceTransport","onicestatechange","_updateIceConnectionState","_updateConnectionState","RTCDtlsTransport","ondtlsstatechange","_disposeIceAndDtlsTransports","_transceive","rtcp","cname","compound","rtcpParameters","parseRtpParameters","rejected","getIceParameters","getDtlsParameters","_updateSignalingState","splitLines","getKind","getDirection","parseMsid","getMid","generateIdentifier","parseRtpEncodingParameters","parseRtcpParameters","setTransport","setRemoteCandidates","getCapabilities","new","closed","connected","disconnected","failed","connecting","writeSessionBoilerplate","getLocalCandidates","reducedSize","relatedAddress","relatedPort","tcpType","parseIceOptions","parseRtpMap","writeRtpMap","parseExtmap","writeExtmap","preferredId","parseFmtp","writeFmtp","parseRtcpFb","writeRtcpFb","parseSsrcMedia","attribute","parseSsrcGroup","semantics","ssrcs","parseFingerprint","algorithm","fingerprints","parseCryptoLine","tag","cryptoSuite","keyParams","sessionParams","writeCryptoLine","writeCryptoKeyParams","parseCryptoKeyParams","keyMethod","keySalt","lifeTime","mkiValue","mkiLength","getCryptoParameters","codecPayloadType","fec","mechanism","maxBitrate","mux","parseSctpDescription","fmt","writeSctpDescription","writeMediaSection","parseOLine","username","sessionId","sessionVersion","netType","addressType","isValidSDP"],"sourceRoot":"webpack:///","sources":["./src/app/Archives/AdvancedSearch/SearchFilterNumberSearchTypesEnum.ts","./src/app/Archives/AdvancedSearch/archive-advancedSearch-svc.ts","./src/app/Archives/Modals/QuickSearch/quickSearch.html","./src/app/Archives/Modals/QuickSearch/quickSearch.ts","./src/app/_common/directives/commaSeparatedNumber.ts","./src/app/Archives/_comon/ArchiveList/archives-list-ng.html","./src/app/Archives/_comon/ArchiveList/archives-list.component.ts","./src/app/Archives/_models/archive-search-dto.ts","./src/app/Archives/_services/archive-item-svc.ts","./src/app/Archives/archives-list/archives-list.module.ts","./src/app/Archives/archives-quick-search/archives-quick-search.module.ts","./src/app/Archives/details/header/details-header-svc.ts","./src/app/Contacts/comps/contacts-box.ts","./src/app/Contacts/comps/contacts-dtos.ts","./src/app/Contacts/comps/contacts-selector.ts","./src/app/Contacts/contact-auth-info-edit/contact-auth-info-edit.module.ts","./src/app/Contacts/contact-auth-info-edit/contact-auth-info-edit-ng.html","./src/app/Contacts/contact-auth-info-edit/contact-auth-info-edit.ts","./src/app/Contacts/helpers.ts","./src/app/Contacts/individuals/AuthenticationAccess/individual-authentication-access-dto.ts","./src/app/Contacts/individuals/AuthenticationAccess/individual-authentication-access-svc.ts","./src/app/Contacts/individuals/individual-quick-entry.html","./src/app/Contacts/individuals/individual-quick-entry-cmp.ts","./src/app/Contacts/individuals/individuals-svc.ts","./src/app/Contacts/models/individual-dtos.ts","./src/app/Contacts/models/organization-dtos.ts","./src/app/Contacts/organizations/organizations-svc.ts","./src/app/Dashboards/PresidentManager/president-dashboard-svc.ts","./src/app/Initiative/components/initiative-attachments/initiative-attachment-svc.ts","./src/app/Initiative/components/initiative-overview/initiative-overview-landing-page/initiative-overview-svc.ts","./src/app/Initiative/guards/InitiativeLandingPageGuardService.ts","./src/app/Initiative/shared/services/initiative-handler-svc.ts","./src/app/Lookups/LookupHelpers.ts","./src/app/_common/models/ExternalContactResponseDto.ts","./src/app/Manage/Contacts/contacts-svc.ts","./src/app/Manage/UserAppModule/AppModule-svc.ts","./src/app/Scheduling/_models/ScheduleItem-Dto.ts","./src/app/Scheduling/_models/enums/schedule-template-enum.ts","./src/app/Scheduling/_models/lookups/ScheduleItemExtraInfoDto.ts","./src/app/Scheduling/_services/scheduling-svc.ts","./src/app/Scheduling/details/scheduling-details-shared-svc.ts","./src/app/Tasks/Resources/ResourceTypeEnum.ts","./src/app/Tasks/models/DashboardDto.ts","./src/app/Tasks/models/TaskTypesEnum.ts","./src/app/Tasks/services/taskItem.service.ts","./src/app/_common/BusinessHelpers/LinkedContactDefaultEmailAndPhone.ts","./src/app/_common/components/Attachment/authenticate-attachment/authenticate-attachment-svc.ts","./src/app/berry/correspondences/_models/enums/ScheduleItemTopicAttachmentTypeEnum.ts","./src/app/berry/correspondences/_models/CorrespondenceUserRelation-Enum.ts","./src/app/_common/enums/system-attachment-group.enum.ts","./src/app/_common/components/Attachment/details-attachment-add-ng.html","./src/app/_common/components/Attachment/details-attachment-add-cmp.ts","./src/app/_common/components/Attachment/details-attachment-flexViewer-cmp.ts","./src/app/_common/components/Attachment/details-attachment-flexViewer-ng.html","./src/app/_common/components/Attachment/details-attachment-svc.ts","./src/app/_common/components/Attachment/dto/attachmentGroup-dto.ts","./src/app/_common/components/BaseComponent.ts","./src/app/_common/components/BerryAvatar/enumAvatarType.ts","./src/app/_common/components/BerryAvatar/Avatar.component.ts","./src/app/_common/components/BerryAvatar/Avatar-ng.html","./src/app/_common/components/BerryButton/Berry-Button.component.ts","./src/app/_common/components/BerryButton/BerryButton-ng.html","./src/app/_common/components/BerryTextArea/BerryTextArea-ng.html","./src/app/_common/components/BerryTextArea/Berry-TextArea.component.ts","./src/app/_common/components/ExecutiveOffice/executive-office-svc.ts","./src/app/_common/components/Loader/loader.component.ts","./src/app/_common/components/Loader/loader.component.html","./src/app/_common/components/NoDataFound/noDataFound.component.ts","./src/app/_common/components/PdfViewer251/flowpaper-bridge-svc.ts","./src/app/_common/components/Stamp/stamps-Requests-svc.ts","./src/app/_common/components/Stamp/stamps-ng.html","./src/app/_common/components/Stamp/stamps-cmp.ts","./src/app/_common/components/Stamp/stamps-svc.ts","./src/app/_common/components/UserProfile/userProfile-Svc.ts","./src/app/_common/components/audittraillist/audittraillist.component.html","./src/app/_common/components/audittraillist/audittraillist.component.ts","./src/app/_common/components/audittraillist/audittraillist.models.ts","./src/app/_common/components/audittraillist/audittraillist.module.ts","./src/app/_common/components/audittraillist/audittraillist.service.ts","./src/app/_common/components/berry-dropdown/enums/request-method.enum.ts","./src/app/_common/components/berry-dropdown/berry-dropdown.component.ts","./src/app/_common/components/berry-dropdown/components/multi-select/multi-select.component.html","./src/app/_common/components/berry-dropdown/components/multi-select/multi-select.component.ts","./src/app/_common/components/berrySidebar/sidebar.component.html","./src/app/_common/components/berrySidebar/sidebar.component.ts","./src/app/_common/components/eSignature/signature-svc.ts","./src/app/_common/components/entity-card/entity-card.component.html","./src/app/_common/components/entity-card/entity-card.component.ts","./src/app/_common/components/entity-card/entity-card.service.ts","./src/app/_common/components/file-uploader/file-uploader-service/file-uploader.service.ts","./src/app/_common/components/file-uploader/file-uploader.component.ts","./src/app/_common/components/file-uploader/file-uploader-ng.html","./src/app/_common/components/form-builder/components/accompanying-document/fb-accompanying-document.html","./src/app/_common/components/form-builder/components/accompanying-document/fb-accompanying-document.ts","./src/app/_common/components/form-builder/components/accompanying-document/fb-docs-related-tag.ts","./src/app/_common/components/form-builder/components/accompanying-document/fb-docs-related-tag.html","./src/app/_common/components/form-builder/components/attachment-list/fb-attachment-list.html","./src/app/_common/components/form-builder/components/attachment-list/fb-attachment-list.ts","./src/app/_common/components/form-builder/components/contacts-control/InitiativeUserDto.ts","./src/app/_common/components/form-builder/components/contacts-control/fb-individual-contacts-control.html","./src/app/_common/components/form-builder/components/contacts-control/fb-individual-contacts-control.ts","./src/app/_common/components/form-builder/components/contacts-control/InitiativeOrganizationDto.ts","./src/app/_common/components/form-builder/components/contacts-control/fb-organization-contacts-control.html","./src/app/_common/components/form-builder/components/contacts-control/fb-organization-contacts-control.ts","./src/app/_common/components/form-builder/components/correspondence-countries/fb-correspondence-country.ts","./src/app/_common/components/form-builder/components/correspondence-countries/fb-correspondence-country.html","./src/app/_common/components/form-builder/components/correspondence-file-storge/fb-correspondence-filing-features.html","./src/app/_common/components/form-builder/components/correspondence-file-storge/fb-correspondence-filing-features.ts","./src/app/_common/components/form-builder/components/correspondence-keyword/fb-correspondence-keyword.ts","./src/app/_common/components/form-builder/components/correspondence-keyword/fb-correspondence-keyword.html","./src/app/_common/components/form-builder/components/correspondence-recipient/fb-external-recipient-as-copy.html","./src/app/_common/components/form-builder/components/correspondence-recipient/fb-external-recipient-as-copy.ts","./src/app/_common/components/form-builder/components/correspondence-recipient/fb-forwarded-to-recipient.html","./src/app/_common/components/form-builder/components/correspondence-recipient/fb-forwarded-to-recipient.ts","./src/app/_common/components/form-builder/components/correspondence-recipient/fb-internal-recipient.html","./src/app/_common/components/form-builder/components/correspondence-recipient/fb-internal-recipient.ts","./src/app/_common/components/form-builder/components/correspondence-recipient/fb-internal-recipients-as-copy.html","./src/app/_common/components/form-builder/components/correspondence-recipient/fb-internal-recipients-as-copy.ts","./src/app/_common/components/form-builder/components/deadline-date/fb-deadline-date.ts","./src/app/_common/components/form-builder/components/deadline-date/fb-deadline-date.html","./src/app/_common/components/form-builder/components/diwan-notification-number/fb-diwan-notification-number.ts","./src/app/_common/components/form-builder/components/diwan-notification-number/fb-diwan-notification-number.html","./src/app/_common/components/form-builder/components/information-source/MonitoredInformationDto.ts","./src/app/_common/components/form-builder/components/information-source/fb-information-source.html","./src/app/_common/components/form-builder/components/information-source/fb-information-source.ts","./src/app/_common/components/form-builder/components/information-source/information-source-service.ts","./src/app/_common/components/form-builder/components/proclamed-entity-types/fb-proclamed-entity-types.html","./src/app/_common/components/form-builder/components/proclamed-entity-types/fb-proclamed-entity-types.ts","./src/app/_common/components/form-builder/components/proclamee-country/fb-proclamee-country.html","./src/app/_common/components/form-builder/components/proclamee-country/fb-proclamee-country.ts","./src/app/_common/components/form-builder/components/proclamee-state/fb-proclamee-state.html","./src/app/_common/components/form-builder/components/proclamee-state/fb-proclamee-state.ts","./src/app/_common/components/form-builder/components/proclamee-type/fb-proclamee-type.html","./src/app/_common/components/form-builder/components/proclamee-type/fb-proclamee-type.ts","./src/app/_common/components/form-builder/components/proclamee/fb-proclamee.html","./src/app/_common/components/form-builder/components/proclamee/fb-proclamee.ts","./src/app/_common/components/form-builder/components/send-proclamation-document-center/fb-send-proclamation-document-center.html","./src/app/_common/components/form-builder/components/send-proclamation-document-center/fb-send-proclamation-document-center-cmp.ts","./src/app/_common/components/form-builder/components/tangible-items/fb-tangible-items.html","./src/app/_common/components/form-builder/components/tangible-items/fb-tangible-items.ts","./src/app/_common/components/form-builder/enums/elastic-search-property-type.ts","./src/app/_common/components/form-builder/formBuilder-api-svc.ts","./src/app/_common/components/form-builder/formService .ts","./src/app/_common/components/forward-list/forwardList-ng.html","./src/app/_common/components/forward-list/forward-list.component.ts","./src/app/_common/components/forward-list/services/forward-list.service.ts","./src/app/_common/components/guards/access.guards.ts","./src/app/_common/components/localization/localization-service.ts","./src/app/_common/components/popup/popup-component.html","./src/app/_common/components/popup/popup-component.ts","./src/app/_common/components/popup/service/popup.service.ts","./src/app/_common/components/second-password/services/second-password.service.ts","./src/app/_common/components/uploadImagePopup/uploadImagePopup-component.html","./src/app/_common/components/uploadImagePopup/uploadImagePopup-component.ts","./src/app/_common/components/user-card/user-card.component.html","./src/app/_common/components/user-card/user-card.component.ts","./src/app/_common/components/user-card/user-card.service.ts","./src/app/_common/components/validator/control-error-messages.component.ts","./src/app/_common/components/year-picker/yearpicker.component.ts","./src/app/_common/components/year-picker/yearpicker.module.ts","./src/app/_common/directives/DatePicker.ts","./src/app/_common/directives/KendoUI-wrappers/kendo-combobox.ts","./src/app/_common/directives/KendoUI-wrappers/kendoAutoComplete.ts","./src/app/_common/directives/KendoUI-wrappers/kendoMultiSelect.ts","./src/app/_common/directives/automation-id-logs/service/automation-log-service.ts","./src/app/_common/directives/automation-id-logs/automationid-logs .directive.ts","./src/app/_common/directives/lazy-img-directive.ts","./src/app/_common/directives/numeric.directive.ts","./src/app/_common/directives/tooltip/toolTip.directive.ts","./src/app/_common/directives/tooltip/tooltip.service.ts","./src/app/_common/filters/custom-pipes.ts","./src/app/_common/filters/todatetime-filter.ts","./src/app/_common/img.directive.ts","./src/app/_common/models/AppModulesEnum.ts","./src/app/_common/models/AttachmentDto.ts","./src/app/_common/models/CalendarTypeEnum.ts","./src/app/_common/models/ExternalContactDto.ts","./src/app/_common/models/GetUserSignatureDto.ts","./src/app/_common/models/IExternalRecipientGroupDto.ts","./src/app/_common/models/IGlobalSettings.ts","./src/app/_common/models/ShowFlexPaperAnnotations.ts","./src/app/_common/models/ShowFlexPaperTopBarActions.ts","./src/app/_common/models/Tasks Panel/CorrespondenceTaskDto.ts","./src/app/_common/models/objectstate.ts","./src/app/_common/services/PendingActions/pending-actions.service.ts","./src/app/_common/services/Permissions/user-permission-service.ts","./src/app/_common/services/UserGuid-svc.ts","./src/app/_common/services/administration/lookup/lookup-service.ts","./src/app/_common/services/baseService.ts","./src/app/_common/services/dialog-Urgent.ts","./src/app/_common/services/dialog-manager.ts","./src/app/_common/services/eventService.ts","./src/app/_common/services/http-interceptor.ts","./src/app/_common/services/importantLinkService.ts","./src/app/_common/services/messaging-service.ts","./src/app/_common/services/navigate.service.ts","./src/app/_common/services/notifications-service.ts","./src/app/_common/services/webTwain.wrapper.ts","./src/app/_common/utils/StoreManager.ts","./src/app/_common/utils/array-contains.ts","./src/app/_common/utils/clone.ts","./src/app/_common/utils/datetimeHelper.ts","./src/app/_common/utils/enums.extensions.ts","./src/app/_common/utils/guid.ts","./src/app/_common/utils/relocate-element-position.utils.ts","./src/app/_common/utils/stringFormat.ts","./src/app/announcements/components/details/details-svc.ts","./src/app/announcements/components/services/announcements-svc.ts","./src/app/app.component.html","./src/app/app.component.ts","./src/app/app.service.ts","./src/app/berry/ScheduledItems/ScheduleRepetition/schedule-item-repetition-model.ts","./src/app/berry/correspondences/CorrespondenceActions/CorrActions-svc.ts","./src/app/berry/correspondences/CorrespondenceActions/correspondence-header-modal.ts","./src/app/berry/correspondences/NewCorrespondence/CorrespondenceFilingFeatures.html","./src/app/berry/correspondences/NewCorrespondence/CorrespondenceFilingFeatures-cmp.ts","./src/app/berry/correspondences/NewCorrespondence/New-Correspondence-svc.ts","./src/app/berry/correspondences/NewCorrespondence/new-component-implement.ts","./src/app/berry/correspondences/NewCorrespondence/storage/filing-storage-svc.ts","./src/app/berry/correspondences/NewCorrespondence/storage/storage-shelve-svc.ts","./src/app/berry/correspondences/_common/AccompanyingDocuments/accompanyingDocument.svc.ts","./src/app/berry/correspondences/_common/CorrespondanceRecord-svc.ts","./src/app/berry/correspondences/_common/CorrespondenceAttachments/CorrespondenceAttachments.html","./src/app/berry/correspondences/_common/CorrespondenceAttachments/CorrespondenceAttachments-cmp.ts","./src/app/berry/correspondences/_common/CorrespondenceAttachments/CorrespondenceAttachments-svc.ts","./src/app/berry/correspondences/_common/CorrespondenceFollowUp/CorrespondenceFollowUp-svc.ts","./src/app/berry/correspondences/_models/CorrespondenceCategoryId-Enum.ts","./src/app/berry/correspondences/_models/CorrespondenceDynamicForms/CorrespondenceDynamicFormsDto.ts","./src/app/berry/correspondences/_models/LinkTypeId-Enum.ts","./src/app/berry/correspondences/_models/SearchFilterTextSearchTypesEnum.ts","./src/app/berry/correspondences/_models/const/Urls.ts","./src/app/berry/correspondences/_models/enums/AttachmentTypesEnum.ts","./src/app/berry/correspondences/_models/enums/CorrespondenceFilingFeaturesEnum.ts","./src/app/berry/correspondences/_models/enums/CorrespondenceSortType.ts","./src/app/berry/correspondences/_models/enums/InboxItemTypes.ts","./src/app/berry/correspondences/_models/enums/SignatureTypes.ts","./src/app/berry/correspondences/_models/order-type-enum.ts","./src/app/berry/correspondences/_models/other-Inboxes-Counts-dto.ts","./src/app/berry/correspondences/correspondence-categories-svc.ts","./src/app/berry/correspondences/details/SignaturesRequests/signaturesRequests-svc.ts","./src/app/berry/correspondences/details/assign-tasks/assign-tasks-svc.ts","./src/app/berry/correspondences/details/confidentiality/confidentiality-svc.ts","./src/app/berry/correspondences/details/correspondence-participants/Consultants-svc.ts","./src/app/berry/correspondences/details/details-sidebar-svc.ts","./src/app/berry/correspondences/CorrespondenceActions/enums/QrCodeTypesEnum.ts","./src/app/berry/correspondences/details/details-svc.ts","./src/app/berry/correspondences/details/followUp-team/details-followUp-team-svc.ts","./src/app/berry/correspondences/details/info/Deadlines/Deadlines-svc.ts","./src/app/berry/correspondences/details/info/DetailsFiling/borrowRequest-svc.ts","./src/app/berry/correspondences/details/info/DetailsFiling/borrowRequestDto.ts","./src/app/berry/correspondences/details/info/DetailsFiling/DetailsInfoFiling-ng.html","./src/app/berry/correspondences/details/info/DetailsFiling/filing-cmp.ts","./src/app/berry/correspondences/details/info/ReplyRequestResponse/ReplyRequestResponse-svc.ts","./src/app/berry/correspondences/details/sub-correspondnece/sub-correspondence-shared.ts","./src/app/berry/correspondences/details/sub-correspondnece/sub-correspondence-svc.ts","./src/app/berry/correspondences/enums/overviewType.enum.ts","./src/app/berry/correspondences/inboxes/Emails/ExternalEmails.Service.ts","./src/app/berry/correspondences/inboxes/eGovCorrespondences/services/eGovCorrespondences.Service.ts","./src/app/berry/correspondences/inboxes/footer-svc.ts","./src/app/berry/correspondences/inboxes/inboxes-ng.html","./src/app/berry/correspondences/inboxes/inboxes-cmp.ts","./src/app/berry/correspondences/_models/inboxes-dto.ts","./src/app/berry/correspondences/inboxes/inboxes-svc.ts","./src/app/berry/correspondences/inboxes/shared-inboxes-svc.ts","./src/app/berry/correspondences/manage/Actions-Deadlines/action-deadline-svc.ts","./src/app/berry/correspondences/manage/Category-Type-Classification/SettlementSetting/settlement-setting-svc.ts","./src/app/berry/correspondences/manage/Category-Type-Classification/category-type-classification-svc.ts","./src/app/berry/correspondences/manage/ScheduleTemplates/schedule-templates-svc.ts","./src/app/berry/correspondences/manage/UserFavorites/user-favorites-svc.ts","./src/app/berry/correspondences/manage/committees-management/CommitteStatusPopup/committe-status-popup-ng.html","./src/app/berry/correspondences/manage/committees-management/CommitteStatusPopup/committe-status-popup-cmp.ts","./src/app/berry/correspondences/manage/committees-management/add-edit-committee-ng.html","./src/app/berry/correspondences/manage/committees-management/add-edit-committee-cmp.ts","./src/app/berry/correspondences/manage/committees-management/committees-Svc.ts","./src/app/berry/correspondences/manage/committees-management/committees.module.ts","./src/app/berry/correspondences/manage/committees-management/merge-committee-modal-ng.html","./src/app/berry/correspondences/manage/committees-management/merge-committee-modal-cmp.ts","./src/app/berry/correspondences/manage/committees-management/models/publicInboxDto.ts","./src/app/berry/correspondences/manage/correspondence-form-status/correspondence-form-status-service.ts","./src/app/berry/correspondences/manage/generalSettings/general-settings-svc.ts","./src/app/berry/correspondences/manage/report/report-settings.html","./src/app/berry/correspondences/manage/report/report-settings-cmp.ts","./src/app/berry/correspondences/manage/report/report-settings-svc.ts","./src/app/berry/correspondences/manage/users/user-service.ts","./src/app/berry/correspondences/reports/SharedReportsService.ts","./src/app/berry/correspondences/reports/enum/TextSearchTypeEnum.ts","./src/app/committees/committees-goals.module.ts","./src/app/committees/components/details/Goals/committee-goal-dto.ts","./src/app/committees/components/details/Goals/committees-goals-add-modify-ng.html","./src/app/committees/components/details/Goals/committees-goals-add-modify-cmp.ts","./src/app/committees/components/details/Goals/committees-goals-svc.ts","./src/app/committees/components/details/MembersNew/edit-member-permissions/edit-member-permissions.design.html","./src/app/committees/components/details/MembersNew/edit-member-permissions/edit-member-permissions-cmp.ts","./src/app/committees/components/details/MembersNew/edit-members/edit-members.html","./src/app/committees/components/details/MembersNew/edit-members/edit-members-cmp.ts","./src/app/committees/components/details/attachments/committee-attachment-srv.ts","./src/app/committees/components/details/subcommittees/sub-committees-svc.ts","./src/app/committees/components/enums/committee-member-type.ts","./src/app/committees/members-shared.module.ts","./src/app/committees/models/committee-member-dto.ts","./src/app/committees/services/committees-svc.ts","./src/app/correspondence-shared-module/correspondence-shared.module.ts","./src/app/documents-center/models/document-center-dtos.ts","./src/app/follow-up-team/services/follow-up-team-svc.ts","./src/app/framework/components/login-landing-page/enums/Login-statuses.enum.ts","./src/app/framework/components/login-landing-page/services/login.service.ts","./src/app/framework/services/auth.service.ts","./src/app/gurads/access-modules.guards.ts","./src/app/gurads/landing-page-guard.service.ts","./src/app/notification-center/enums/Importance.enum.ts","./src/app/notification-center/services/notification-center-importance.service.ts","./src/app/notification-center/services/notification-center-svc.ts","./src/app/_common/services/sessionTimeout-service.ts","./src/app/custom-reports/Custom-Reports-Guard-Service.ts","./src/app/custom-reports/RequestedReports/requested-reports-guard-service.ts","./src/app/shared/shared.module.ts","./src/app/app.routing.ts","./src/app/framework/components/signin-redirect-callback.component.ts","./src/app/app.config.ts","./src/app/_common/components/toastr/toastr.animation.ts","./src/app/_common/components/toastr/toastr.component.html","./src/app/_common/components/toastr/toastr.component.ts","./src/app/_common/components/toastr/toastr.module.ts","./src/app/framework/interceptor/http.interceptor.ts","./src/app/app.module.ts","./src/main.ts","./assets/js/index.js","./assets/js/share-screen-bundle.min.js"],"sourcesContent":["export enum SearchFilterNumberSearchTypesEnum {\r\n ArchiveNumberContains,\r\n ArchiveNumberExactText\r\n}","import { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { IGlobalSettings } from \"../../_common/models/IGlobalSettings\";\r\nimport { Response } from \"@angular/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { Observable, throwError } from \"rxjs\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class ArchiveAdvancedSearchService extends BaseService {\r\n public SearchParams: any;\r\n\r\n public previousUrl: string = null;\r\n public isBusy: boolean = false;\r\n\r\n baseURL = BERRY.hostName + \"api/ArchiveApi\";\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n public getDocumentsConfidentialities(): Observable {\r\n return super.get(\r\n BERRY.hostName + \"api/CorrespondenceApi/getlockupConfidentialities\"\r\n );\r\n }\r\n\r\n GetCanCreateArchivePermissions(): Observable {\r\n let me = this;\r\n\r\n var url = me.baseURL + \"/GetCanCreateArchivePermissions\";\r\n\r\n return me.http.get(url);\r\n \r\n }\r\n\r\n public GetArchives(filter: any): Observable {\r\n var url = BERRY.hostName + \"api/ArchiveSearchApi/GetArchives\";\r\n let me = this;\r\n return me.http.post(url, filter).pipe(\r\n map(me.extractStringData),\r\n catchError(me.handleError)\r\n );\r\n }\r\n\r\n public ClearArchiveRecentlyViewed() {\r\n let me = this;\r\n var url =\r\n BERRY.hostName + \"api/ArchiveSearchApi/ClearArchiveRecentlyViewed\";\r\n\r\n return me.http.post(url, null).pipe(\r\n map(me.extractData),\r\n catchError(me.handleError)\r\n );\r\n }\r\n public GetArchivesFolders(): Observable {\r\n var me = this;\r\n\r\n var url = BERRY.hostName + \"api/ArchiveSearchApi/GetArchivesFolders\";\r\n\r\n return me.http.post(url, null).pipe(\r\n map(me.extractData),\r\n catchError(me.handleError)\r\n );\r\n }\r\n\r\n public GetArchivesTags(): Observable {\r\n var me = this;\r\n\r\n var url = BERRY.hostName + \"api/ArchiveSearchApi/GetArchivesTags\";\r\n\r\n return me.http.post(url, null).pipe(\r\n map(me.extractData),\r\n catchError(me.handleError)\r\n );\r\n }\r\n\r\n public GetArchiveClassifications(): Observable {\r\n var me = this;\r\n var url =\r\n BERRY.hostName + \"api/ArchiveSearchApi/GetArchiveClassifications\";\r\n\r\n return me.http.post(url, null).pipe(\r\n map(me.extractData),\r\n catchError(me.handleError)\r\n );\r\n }\r\n\r\n public GetArchiveAllTypes(): Observable {\r\n var me = this;\r\n var url = BERRY.hostName + \"api/ArchiveSearchApi/GetArchiveAllTypes\";\r\n\r\n return me.http.post(url, null).pipe(\r\n map(me.extractData),\r\n catchError(me.handleError)\r\n );\r\n }\r\n\r\n public DoPost(Url: string, Params: any): Observable {\r\n return super.post(Url, Params);\r\n // CallBack();\r\n }\r\n \r\n extractData(res: Response) {\r\n let body = res;\r\n return body || {};\r\n }\r\n\r\n extractStringData(res: Response) {\r\n let body = res;\r\n return JSON.parse(body) || {};\r\n }\r\n\r\n handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n return throwError(errMsg);\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\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
0)\"\r\n style=\"background: #cccccc36;margin: 20px;margin-top:0px;margin-bottom:0px;padding-top:10px;border-radius: 4px;position:relative;display: flex;flex-direction: column;\">\r\n
\r\n \r\n \r\n
{{att.AttachmentTitle}}
\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 {{getText('ThisItemswillbeLinkedTo', 'ArchiveQuicSearch')}}\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n x\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 {{getText('ThisItemswillbeLinkedTo', 'ArchiveQuicSearch')}}\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n x\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { ArchiveItemDto } from \"../../_models/ArchiveDto\";\r\nimport {\r\n ArchiveSearchDto,\r\n DateFilters,\r\n SearchFilterLocked,\r\n SearchFilterOrderTypes,\r\n SearchFilterTextSearchTypes,\r\n ImportanceTypes\r\n} from \"../../_models/archive-search-dto\";\r\nimport { ArchiveAdvancedSearchService } from \"../../AdvancedSearch/archive-advancedSearch-svc\";\r\nimport {\r\n Component,\r\n ViewChild,\r\n NgZone,\r\n ChangeDetectorRef,\r\n Output,\r\n EventEmitter,\r\n Input\r\n} from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../../../_common/models/IGlobalSettings\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport {\r\n DialogManager,\r\n ConfirmationBoxOptions,\r\n ConfirmationBoxType\r\n} from \"src/app/_common/services/dialog-manager\";\r\nimport { datetimeHelper } from \"../../../_common/utils/datetimeHelper\";\r\nimport { DatePicker } from \"src/app/_common/directives/DatePicker\";\r\nimport { IPopup, PopupComponent } from \"src/app/_common/components/popup/popup-component\";\r\nimport { YearPickerComponent } from \"../../../_common/components/year-picker/yearpicker.component\";\r\nimport { generalSettingsSvc } from \"../../../berry/correspondences/manage/generalSettings/general-settings-svc\";\r\nimport { minDateValues } from \"./minDateValues\";\r\nimport { CalendarTypeEnum } from \"../../../_common/models/CalendarTypeEnum\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\ndeclare let moment: any;\r\n\r\n@Component({\r\n selector: \"QuickSearchArchive-cmp\",\r\n templateUrl: \"./quickSearch.html\",\r\n providers: [\r\n generalSettingsSvc\r\n ]\r\n})\r\nexport class QuickSearchComponent extends BaseCmp {\r\n isSubscribed: boolean = true;\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n \r\n @Input() DateFilterValue: string =\"DateFilterValue\";\r\n @Input() ExecludedArchivesIds: any[];\r\n @Output() public validateFn = new EventEmitter();\r\n @Output() public addItemsFn = new EventEmitter();\r\n @Output() public closePopupFn = new EventEmitter();\r\n @ViewChild(\"quickSearchArchivePopup\") public quickSearchArchivePopup: PopupComponent;\r\n quickSearchArchivePopupOptions: IPopup = {\r\n\r\n actions: [\r\n { text: this.getText('Add', 'ArchiveQuicSearch'), type: 'submit', event: () => this.ReturnQurey() },\r\n { text: this.getText(\"Cancel\", \"GeneralSchedule\"), type: 'close', event: () => this.closePopup() }\r\n ],\r\n mode: 'large',\r\n isBusy: () => this.isBusy,\r\n dirtyFormCheck: () => true,\r\n startPartSize: 'twoThird'\r\n }\r\n // \r\n\r\n @ViewChild(DatePicker) DateFrom: DatePicker;\r\n @ViewChild(DatePicker) DateTo: DatePicker;\r\n\r\n @ViewChild(\"YearFrom\") YearFrom: YearPickerComponent;\r\n @ViewChild(\"YearTo\") ToYear: YearPickerComponent;\r\n @Input(\"linkWithPresentationMemoSummary\") linkWithPresentationMemoSummary: boolean = false;\r\n\r\n constructor(\r\n public toastr: ToastrService,\r\n public generalSettingSvc: generalSettingsSvc,\r\n public zone: NgZone,\r\n public ref: ChangeDetectorRef,\r\n public svc: ArchiveAdvancedSearchService,\r\n public dialogs: DialogManager,\r\n public dateHelper: datetimeHelper\r\n ) {\r\n super(); \r\n }\r\n\r\n ngSuperOnInit() {\r\n this.getMinMaxYear();\r\n }\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n _minSearchYear: string = '0';\r\n _maxSearchYear: string = '0';\r\n\r\n get minSearchYear() {\r\n return this._minSearchYear;\r\n }\r\n set minSearchYear(val) {\r\n this._minSearchYear = val;\r\n }\r\n\r\n get maxSearchYear() {\r\n return this._maxSearchYear;\r\n }\r\n\r\n set maxSearchYear(val) {\r\n this._maxSearchYear = val;\r\n }\r\n\r\n total: number = 0;\r\n SelectedPage = 1;\r\n SearchText;\r\n SearchNumber;\r\n folders;\r\n start = false;\r\n Searchentities: ArchiveItemDto[] = [];\r\n archives: any = [];\r\n ArchivesQeury: ArchiveItemDto[] = [];\r\n ArchivesAttachmentQuery: any = null;\r\n _ID;\r\n searchDto: ArchiveSearchDto;\r\n public DateFilterOption = \"ByDate\";\r\n public fromDateSelected: any = null;\r\n public toDateSelected: any = null;\r\n public fromYearSelected: any = null;\r\n public toYearSelected: any = null;\r\n public isByDate: boolean = true;\r\n public get LinkWithPresentationMemoSummary() {\r\n return this.linkWithPresentationMemoSummary;\r\n }\r\n\r\n public QuickSearch(): void {\r\n let me = this;\r\n me.start = true;\r\n me.ArchivesAttachmentQuery = null;\r\n this.ArchivesQeury = [] ;\r\n me.quickSearchArchivePopup.open(); \r\n me.applyFilters_click();\r\n }\r\n\r\n getMinMaxYear() {\r\n let me = this;\r\n var generalSettings = new Array({ SettingKey: \"MinDateValue\", SettingGroup: \"CorrespondencesSetting\" },\r\n { SettingKey: \"MaxDateValue\", SettingGroup: \"CorrespondencesSetting\" });\r\n this.generalSettingSvc\r\n .GetValues(generalSettings)\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(response => {\r\n if (response && response.length > 0) {\r\n var minDatesObjString = response.filter(x => x.SettingKey == \"MinDateValue\")[0].Value;\r\n var minDatesObj = JSON.parse(minDatesObjString);\r\n\r\n var maxDatesObjString;\r\n var maxDatesObj;\r\n if (this.linkWithPresentationMemoSummary)\r\n {\r\n me.maxSearchYear = this.dateHelper.ToFormattedCalendarDateString((new Date(moment(new Date()).add(+1, \"y\"))), \"yyyy\");\r\n }\r\n else\r\n {\r\n maxDatesObjString = response.filter(x => x.SettingKey == \"MaxDateValue\")[0].Value;\r\n maxDatesObj = JSON.parse(maxDatesObjString);\r\n }\r\n \r\n\r\n if (BERRY.primaryCalendar == CalendarTypeEnum.UMALQURA) {\r\n me.minSearchYear = minDatesObj.MinHigriValue.toString();\r\n me.maxSearchYear = this.linkWithPresentationMemoSummary ? me.maxSearchYear : maxDatesObj.MaxHigriValue.toString();\r\n }\r\n else if (BERRY.primaryCalendar == CalendarTypeEnum.GREGORIAN) {\r\n me.minSearchYear = minDatesObj.MinGregorianValue.toString();\r\n me.maxSearchYear = this.linkWithPresentationMemoSummary ? me.maxSearchYear : maxDatesObj.MaxGregorianValue.toString();\r\n }\r\n\r\n \r\n }\r\n });\r\n }\r\n\r\n SelectItem(entity) {\r\n let me = this;\r\n\r\n var button: any = document.getElementById(\"btnarc\" + entity.Id);\r\n var div: any = document.getElementById(\"arc\" + entity.Id);\r\n if (button != undefined) {\r\n button.disabled = true;\r\n }\r\n if (div != undefined) {\r\n div.setAttribute(\"class\", \"Addcroo\");\r\n }\r\n\r\n if (me.ArchivesQeury.filter(a => a.Id == entity.Id).length == 0) {\r\n me.validateFn.emit(entity);\r\n }\r\n }\r\n\r\n SelectArchiveAttachment(attachment, archiveIndex) {\r\n let me = this;\r\n me.ArchivesAttachmentQuery = attachment;\r\n }\r\n\r\n public validateSuccess(entity) {\r\n var me = this;\r\n me.ArchivesQeury.push(entity);\r\n me.addstyle(false, \"\", entity.Id);\r\n }\r\n\r\n public validateError(entity, errorMsg) {\r\n var me = this;\r\n me.addstyle(true, errorMsg, entity.Id);\r\n }\r\n\r\n public datePickerOptions = {\r\n dateFormat: BERRY.appSettings.formats.defaultDatePickerFormatJs\r\n };\r\n\r\n addstyle(isAlert, message, archiveId) {\r\n if (!isAlert) {\r\n var button: any = document.getElementById(\"btnarc\" + archiveId);\r\n var div: any = document.getElementById(\"arc\" + archiveId);\r\n if (button != undefined) {\r\n button.disabled = true;\r\n }\r\n if (div != undefined) {\r\n div.setAttribute(\"class\", \"Addcroo\");\r\n }\r\n } else {\r\n var button: any = document.getElementById(\"btnarc\" + archiveId);\r\n var div: any = document.getElementById(\"arc\" + archiveId);\r\n if (button != undefined) {\r\n button.disabled = true;\r\n }\r\n if (div != undefined) {\r\n div.setAttribute(\"class\", \"Addcroo\");\r\n var h4 = document.createElement(\"h4\");\r\n h4.setAttribute(\"class\", \"text-center col-md-12 zIndexMax \");\r\n var span = document.createElement(\"span\");\r\n span.setAttribute(\"class\", \"label label-primary\");\r\n var t = document.createTextNode(message);\r\n span.appendChild(t);\r\n h4.appendChild(span);\r\n div.appendChild(h4);\r\n }\r\n }\r\n }\r\n\r\n AllItemsAddedSuccessfully(enableTostar = true) {\r\n let me = this;\r\n if (enableTostar)\r\n me.toastr.success(BERRY.loc.common.successMessage);\r\n me.quickSearchArchivePopup.close();\r\n me.ref.detectChanges();\r\n }\r\n\r\n AllItemsAddError(errorMsg) {\r\n let me = this;\r\n me.toastr.error(errorMsg);\r\n me.ref.detectChanges();\r\n }\r\n\r\n ReturnQurey() {\r\n let me = this;\r\n if ((this.ArchivesQeury == null || this.ArchivesQeury.length == 0)\r\n && (this.ArchivesAttachmentQuery == null || this.ArchivesAttachmentQuery.length == 0)) {\r\n me.dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n BERRY.getText('QuickSearchValidationMessage', 'QuickSearchCommon')\r\n );\r\n dialog.show(options);\r\n }\r\n });\r\n return null;\r\n }\r\n\r\n if (me.LinkWithPresentationMemoSummary) {\r\n me.addItemsFn.emit(me.ArchivesAttachmentQuery);\r\n }\r\n else {\r\n me.addItemsFn.emit(me.ArchivesQeury);\r\n }\r\n }\r\n\r\n getArchives() {\r\n var me = this;\r\n me.Searchentities = [];\r\n me.start = true;\r\n me.svc.isBusy = true;\r\n me.searchDto.TextSearchType = +(isNaN(+me.searchDto.TextSearchType) ? SearchFilterTextSearchTypes[me.searchDto.TextSearchType] : me.searchDto.TextSearchType);\r\n\r\n me.svc\r\n .GetArchives(me.searchDto)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(resp => {\r\n this.zone.run(() => {\r\n me.total = +resp.data.Count;\r\n me.Searchentities = resp.data.List;\r\n me.archives = resp.data.List;\r\n setTimeout(() => {\r\n if (me.archives && me.archives.length > 0) {\r\n me.archives.forEach(a => {\r\n if (me.ArchivesQeury.filter(q => q.Id == a.Id).length > 0) {\r\n me.addstyle(false, \"\", a.Id);\r\n }\r\n });\r\n }\r\n }, 100);\r\n\r\n me.svc.isBusy = false;\r\n });\r\n });\r\n }\r\n\r\n applyFilters_click() {\r\n let me = this;\r\n me.SelectedPage = 1;\r\n me.doSearch();\r\n }\r\n public isValidDateToSearch: boolean = true;\r\n public isValidYearToSearch: boolean = true;\r\n doSearch() {\r\n let me = this;\r\n if (me.isByDate && me.fromDateSelected && me.toDateSelected) {\r\n var isStartDateBeforeEndDate = me.dateHelper.checkIfFromBeforeToDate(me.fromDateSelected, me.toDateSelected);\r\n if (!isStartDateBeforeEndDate) {\r\n me.toastr.warning(me.getText(\"ToDateBeforeFromDateValidation\", \"ValidationMessage\"));\r\n me.isValidDateToSearch = false;\r\n //me.resetDatesFields();\r\n }\r\n else\r\n me.isValidDateToSearch = true;\r\n }\r\n else\r\n me.isValidDateToSearch = true;\r\n\r\n if (!me.isByDate && me.fromYearSelected && me.toYearSelected) {\r\n if (me.toYearSelected < me.fromYearSelected) {\r\n me.toastr.warning(me.getText(\"ToYearBeforeFromYearValidation\", \"ValidationMessage\"));\r\n me.isValidYearToSearch = false;\r\n //me.resetYearsFields();\r\n }\r\n else\r\n me.isValidYearToSearch = true;\r\n }\r\n else\r\n me.isValidYearToSearch = true;\r\n if ((me.isByDate && me.isValidDateToSearch) || (!me.isByDate && me.isValidYearToSearch)) {\r\n this.svc.isBusy = true;\r\n me.collectParams();\r\n me.getArchives();\r\n }\r\n\r\n }\r\n\r\n collectParams() {\r\n let me = this;\r\n me.searchDto = new ArchiveSearchDto();\r\n me.searchDto.SelectedPage = this.SelectedPage;\r\n me.searchDto.SearchText = this.SearchText;\r\n me.searchDto.ArchiveNumber = this.SearchNumber;\r\n me.searchDto.PageSize = BERRY.PageSize;\r\n me.searchDto.Importance = ImportanceTypes.None;\r\n me.searchDto.OnlyArchivesHaveAttachments = me.LinkWithPresentationMemoSummary;\r\n me.searchDto.ExecludedArchivesIds=me.ExecludedArchivesIds;\r\n me.searchDto.LastViewedDate = DateFilters.All;\r\n me.searchDto.LockedByType = SearchFilterLocked.All;\r\n me.searchDto.OrderBy = SearchFilterOrderTypes.CreationDate;\r\n me.searchDto.SearchByRegexExact = false;\r\n\r\n me.searchDto.FromDate = this.fromDateSelected;\r\n me.searchDto.ToDate = this.toDateSelected;\r\n if (me.searchDto.FromDate == null && me.fromYearSelected != null && me.fromYearSelected.length == 4)\r\n me.searchDto.FromDate = me.dateHelper.getMinDateBasedOnYearAndUserCalendar(me.fromYearSelected);\r\n if (me.searchDto.ToDate == null && me.toYearSelected != null && me.toYearSelected.length == 4)\r\n me.searchDto.ToDate = me.dateHelper.getMaxDateBasedOnYearAndUserCalendar(me.toYearSelected)\r\n me.searchDto.CreationDate = DateFilters.All;\r\n if (\r\n me.fromDateSelected != null ||\r\n me.toDateSelected != null ||\r\n me.fromYearSelected != null ||\r\n me.toYearSelected != null\r\n )\r\n me.searchDto.CreationDate = DateFilters.Range;\r\n me.searchDto.IsQuickSearch = true;\r\n }\r\n\r\n deletArchive(qeurry: ArchiveItemDto) {\r\n let me = this;\r\n if (me.ArchivesQeury.filter(a => a.Id == qeurry.Id).length != 0) {\r\n var qeurryIndex = me.ArchivesQeury.indexOf(qeurry);\r\n me.ArchivesQeury.splice(qeurryIndex, 1);\r\n var button: any = document.getElementById(\"btnarc\" + qeurry.Id);\r\n var div: any = document.getElementById(\"arc\" + qeurry.Id);\r\n if (button != undefined) {\r\n button.disabled = false;\r\n }\r\n if (div != undefined) {\r\n div.removeAttribute(\"class\");\r\n }\r\n }\r\n }\r\n\r\n deletArchiveAttachment() {\r\n let me = this;\r\n\r\n me.ArchivesAttachmentQuery = null;\r\n }\r\n\r\n\r\n getPage(PageNumber: number) {\r\n let me = this;\r\n me.SelectedPage = PageNumber;\r\n me.doSearch();\r\n }\r\n\r\n public get isBusy() {\r\n let me = this;\r\n return me.svc.isBusy;\r\n }\r\n\r\n searchTextPresss(event) {\r\n let me = this;\r\n if (event.keyCode == 13) {\r\n me.applyFilters_click();\r\n }\r\n }\r\n\r\n Reset() {\r\n let me = this;\r\n me.zone.run(() => {\r\n me.ArchivesQeury = [];\r\n me.Searchentities = [];\r\n me.total = 0;\r\n });\r\n }\r\n\r\n closePopup() {\r\n var me = this;\r\n me.closePopupFn.emit(true);\r\n // me.quickSearchArchivePopup.close();\r\n me.clearQuery();\r\n me.Reset();\r\n\r\n }\r\n\r\n\r\n setDate(YearPropertyName: string, year: any) {\r\n //if (year != null && year != \"\")\r\n this[YearPropertyName] = year;\r\n this.applyFilters_click();\r\n }\r\n\r\n clearQuery() {\r\n let me = this;\r\n me.zone.run(() => { \r\n me.SearchText = null;\r\n me.SearchNumber = null;\r\n $(\"#DateFrom\").calendarsPicker(\"setDate\", null);\r\n $(\"#DateTo\").calendarsPicker(\"setDate\", null);\r\n me.fromDateSelected = null;\r\n me.toDateSelected = null;\r\n me.fromYearSelected = null;\r\n me.toYearSelected = null;\r\n me.YearFrom?.writeValue(null);\r\n me.ToYear?.writeValue(null);\r\n me.DateFilterOption = \"ByDate\"\r\n });\r\n }\r\n\r\n onFromDateChanged(e: any) {\r\n var selectedDate = this.dateHelper.parseCDate(\r\n e,\r\n BERRY.appSettings.formats.defaultDatePickerFormatJs\r\n );\r\n this.fromDateSelected = null;\r\n if (selectedDate) {\r\n var date =\r\n (\"0\" + selectedDate._day).slice(-2) +\r\n \"/\" +\r\n (\"0\" + selectedDate._month).slice(-2) +\r\n \"/\" +\r\n selectedDate._year;\r\n this.fromDateSelected = date;\r\n }\r\n }\r\n\r\n onToDateChanged(e: any) {\r\n var selectedDate = this.dateHelper.parseCDate(\r\n e,\r\n BERRY.appSettings.formats.defaultDatePickerFormatJs\r\n );\r\n this.toDateSelected = null;\r\n if (selectedDate) {\r\n var date =\r\n (\"0\" + selectedDate._day).slice(-2) +\r\n \"/\" +\r\n (\"0\" + selectedDate._month).slice(-2) +\r\n \"/\" +\r\n selectedDate._year;\r\n this.toDateSelected = date;\r\n }\r\n }\r\n\r\n changeFilterDatesValuesBySelectedDateCriteria(isByDate) {\r\n let me = this;\r\n me.isByDate = isByDate;\r\n if (isByDate) {\r\n me.resetYearsFields();\r\n\r\n }\r\n else {\r\n me.resetDatesFields();\r\n }\r\n }\r\n\r\n resetDatesFields() {\r\n let me = this;\r\n me.fromDateSelected = null;\r\n me.toDateSelected = null;\r\n $(\"#DateFrom\").calendarsPicker(\"setDate\", null);\r\n $(\"#DateTo\").calendarsPicker(\"setDate\", null);\r\n me.applyFilters_click();\r\n }\r\n\r\n resetYearsFields() {\r\n let me = this;\r\n me.fromYearSelected = null;\r\n me.toYearSelected = null;\r\n me.setDate('fromYearSelected', null);\r\n me.setDate('toYearSelected', null);\r\n me.YearFrom?.writeValue(null);\r\n me.ToYear?.writeValue(null);\r\n $('yearpicker#YearTo').val('');\r\n }\r\n}","import { Pipe, PipeTransform } from \"@angular/core\";\r\n\r\n@Pipe({ name: \"commaSeparatedNumber\" })\r\nexport class CommaSeparatedNumberPipe implements PipeTransform {\r\n transform(val: number, sep: string = \",\"): string {\r\n let value = val.toString();\r\n\r\n if (sep == null) {\r\n sep = \",\";\r\n }\r\n // check if it needs formatting\r\n if (value.toString() === value.toLocaleString()) {\r\n // split decimals\r\n var parts = value.toString().split(\".\");\r\n // format whole numbers\r\n parts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, sep);\r\n // put them back together\r\n value = parts[1] ? parts.join(\".\") : parts[0];\r\n } else {\r\n value = value.toLocaleString();\r\n }\r\n return value;\r\n }\r\n}\r\n","\r\n\r\n
\r\n
\r\n 0\" class=\"margin-v-5 display-block padding-20\">\r\n {{getText('Total', 'ReportsHome')}}\r\n {{Total | commaSeparatedNumber}}\r\n {{getText('Archive', 'Global_Header')}}\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 {{lang == 'ar'? item.ArchiveClassifications?.TextAr : item.ArchiveClassifications?.TextEn }}\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{getText('ArchiveNumber', 'ArchiveList')}} \r\n {{ item.ArchiveNumber }}\r\n
\r\n\r\n
\r\n {{getText('From', 'CSHTML/Areas/Archives/Details/header')}}\r\n {{ ExternalContact?.ExternalContactName }}\r\n
\r\n
\r\n {{getText('From', 'CSHTML/Areas/Archives/Details/header')}}\r\n {{ Entity?.EntityName }} \r\n
\r\n \r\n {{getText('ArchiveDate', 'NewArchive')}} {{item.LongInDateUi}}\r\n \r\n
\r\n\r\n
\r\n {{getText('CreatedBy', 'CommonKeyWords')}}\r\n \r\n {{item.CreatedByUser?.ShortName}}\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 {{lang == 'ar' ? item.ArchiveType?.TextAr : item.ArchiveType?.TextEn }}\r\n \r\n
\r\n\r\n
\r\n \r\n {{getConfidentialityText(item?.ConfidentialityId)}}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n {{getText('Important', 'CSHTML/Areas/Archives/Details/header')}}\r\n \r\n \r\n \r\n {{getText('UnImportant', 'CSHTML/Areas/Archives/Details/header')}}\r\n \r\n
\r\n\r\n
\r\n \r\n {{getText('CanceledDocumentStatus', 'ArchivingDetailsMasterNg')}}\r\n \r\n \r\n {{getText('ActiveDocumentStatus', 'ArchivingDetailsMasterNg')}}\r\n \r\n
\r\n\r\n
\r\n \r\n {{getText('ArchiveCancelPublishedStatus', 'ArchivingDetailsMasterNg')}}\r\n \r\n \r\n {{getText('ArchivePublishedStatus', 'ArchivingDetailsMasterNg')}}\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n {{ item.AttachmentsCount}} \r\n {{getText('Files', 'CommonKeyWords')}}\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
{{getText('Files', 'CommonKeyWords')}}
\r\n
\r\n
\r\n \r\n \r\n \r\n
0 && list.attachments[0].IsEmpty == false\">\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 {{getText('NoData', 'CSHTML/Areas/Archives/Common/SearchFilters/Search')}}\r\n

\r\n
\r\n\r\n
\r\n 1)\" directionLinks=\"true\" autoHide=\"false\">\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 {{lang == 'ar'? singleRecord.ArchiveClassifications?.TextAr : singleRecord.ArchiveClassifications?.TextEn }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{getText('ArchiveNumber', 'ArchiveList')}} \r\n {{ singleRecord.ArchiveNumber }}\r\n
\r\n \r\n {{getText('ArchiveDate', 'NewArchive')}} {{singleRecord.LongInDateUi}}\r\n \r\n
\r\n\r\n
\r\n {{getText('CreatedBy', 'CommonKeyWords')}}\r\n \r\n {{singleRecord.CreatedByUser?.ShortName}}\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 {{lang == 'ar' ? singleRecord.ArchiveType?.TextAr : singleRecord.ArchiveType?.TextEn }}\r\n \r\n
\r\n\r\n
\r\n \r\n {{getConfidentialityText(singleRecord?.ConfidentialityId)}}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n {{getText('Important', 'CSHTML/Areas/Archives/Details/header')}}\r\n \r\n \r\n \r\n {{getText('UnImportant', 'CSHTML/Areas/Archives/Details/header')}}\r\n \r\n
\r\n\r\n
\r\n \r\n {{getText('CanceledDocumentStatus', 'ArchivingDetailsMasterNg')}}\r\n \r\n \r\n {{getText('ActiveDocumentStatus', 'ArchivingDetailsMasterNg')}}\r\n \r\n
\r\n\r\n
\r\n \r\n {{getText('ArchiveCancelPublishedStatus', 'ArchivingDetailsMasterNg')}}\r\n \r\n \r\n {{getText('ArchivePublishedStatus', 'ArchivingDetailsMasterNg')}}\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n {{ singleRecord.AttachmentsCount}} \r\n {{getText('Files', 'CommonKeyWords')}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { ArchiveItemSVC } from \"./../../_services/archive-item-svc\";\r\nimport { DetailsAttachmentsFlextViewer } from \"../../../_common/components/Attachment/details-attachment-flexViewer-cmp\";\r\nimport {\r\n Component,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n ViewChild,\r\n NgZone,\r\n\r\n ChangeDetectorRef\r\n} from \"@angular/core\";\r\nimport { DetailsAttachmentSVC } from \"../../../_common/components/Attachment/details-attachment-svc\";\r\nimport { FlowPaperBridgeService } from \"../../../_common/components/PdfViewer251/flowpaper-bridge-svc\";\r\nimport { Router } from \"@angular/router\";\r\nimport { ShowFlexPaperTopBarActions } from \"../../../_common/models/ShowFlexPaperTopBarActions\";\r\nimport { ShowFlexPaperAnnotations } from \"../../../_common/models/ShowFlexPaperAnnotations\";\r\nimport { DetailsHeaderService } from \"../../details/header/details-header-svc\";\r\nimport { IGlobalSettings } from \"../../../_common/models/IGlobalSettings\";\r\nimport { ArchiveSearchDto } from \"../../_models/archive-search-dto\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { webTwainSVC } from \"../../../_common/services/webTwain.wrapper\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport {\r\n DialogManager,\r\n ConfirmationBoxOptions,\r\n ConfirmationBoxType,\r\n ConfirmationBoxResult\r\n} from \"src/app/_common/services/dialog-manager\";\r\nimport { Annotation } from \"src/app/_common/models/Annotation\";\r\nimport { DetailsAttachmentsAddCmp } from \"src/app/_common/components/Attachment/details-attachment-add-cmp\";\r\nimport { AttachmentTypesEnum } from \"src/app/berry/correspondences/_models/enums/AttachmentTypesEnum\";\r\nimport { AppModulesEnum } from \"src/app/_common/models/AppModulesEnum\";\r\nimport { LookupHelpers } from \"../../../Lookups/LookupHelpers\";\r\nimport { PopupComponent, IPopup } from \"../../../_common/components/popup/popup-component\";\r\n\r\ndeclare var $: any;\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"archives-list-component\",\r\n templateUrl: \"./archives-list-ng.html\",\r\n providers: [LookupHelpers]\r\n})\r\nexport class ArchivesListComponent extends BaseCmp {\r\n ngSuperOnInit() { }\r\n\r\n isSubscribed: boolean = true;\r\n EnableToAddAttachments: boolean = false;\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n \r\n\r\n\r\n\r\n public bOEArchive() {\r\n return BERRY.onOffFeatures.boeArchive;\r\n }\r\n\r\n public hideCorrespondenceImportance() {\r\n return BERRY.appSettings.keys.HideCorrespondenceImportance;\r\n }\r\n\r\n public canOpenCorrsInNewTab() {\r\n return BERRY.appSettings.keys.canOpenCorrsInNewTab;\r\n }\r\n\r\n get hideArchiveImage() {\r\n return BERRY.appSettings.keys.HideArchiveImage;\r\n }\r\n //#region ViewChild and Output\r\n\r\n @Output() notifyPage: EventEmitter = new EventEmitter();\r\n @ViewChild(\"prviewTemplatesFlexViewer\")\r\n prviewTemplatesFlexViewer: DetailsAttachmentsFlextViewer;\r\n\r\n @ViewChild(\"attachmentAdd\") public attachmentAdd: DetailsAttachmentsAddCmp;\r\n @Output(\"GetArchives\") GetArchives = new EventEmitter();\r\n //#endregion\r\n\r\n //#region Inputs\r\n\r\n @Input()\r\n public get HideTopPagination() {\r\n return this.hideTopPagination;\r\n }\r\n\r\n public set HideTopPagination(value) {\r\n this.hideTopPagination = value;\r\n }\r\n\r\n @Input()\r\n public get IsSingleArchive() {\r\n return this.isSingleArchive;\r\n }\r\n\r\n public set IsSingleArchive(value) {\r\n this.isSingleArchive = value;\r\n }\r\n\r\n @Input()\r\n public get SelectedPageChild() {\r\n return this.selectedPageChild;\r\n }\r\n\r\n public set SelectedPageChild(value) {\r\n this.selectedPageChild = value;\r\n }\r\n\r\n @Input()\r\n public get Records() {\r\n return this.records;\r\n }\r\n\r\n public set Records(value) {\r\n this.records = value;\r\n }\r\n\r\n @Input()\r\n public get Total() {\r\n return this._total;\r\n }\r\n\r\n public set Total(value) {\r\n //if (value <= BERRY.PageSize)\r\n // this._total = 1;\r\n //else\r\n // this._total = value ;\r\n this._total = value;\r\n }\r\n\r\n public set TotalPages(value) {\r\n var smallerThanOne = value / BERRY.PageSize < 1;\r\n if (smallerThanOne) this._pages = 1;\r\n else this._pages = Math.ceil(value / BERRY.PageSize);\r\n }\r\n\r\n @Input()\r\n public get SingleRecord() {\r\n return this.singleRecord;\r\n }\r\n\r\n public set SingleRecord(value) {\r\n this.singleRecord = value;\r\n }\r\n\r\n //#endregion\r\n\r\n //#region Proeprties\r\n\r\n isClassificationCollapsed: boolean = true;\r\n bookedForReviewCollapsed: boolean = true;\r\n recentlySeenCollapsed: boolean = true;\r\n releaseDateCollapsed: boolean = true;\r\n IsAttachmentsOpened: boolean = false;\r\n model = new ArchiveSearchDto();\r\n selectedPageChild: number = 1;\r\n selectedAttachmentExtension;\r\n hideTopPagination = false;\r\n isSingleArchive = false;\r\n selectedAttachmentName;\r\n selectedAttachmentID;\r\n singleRecord = [];\r\n selectedArchiveID;\r\n Attachments = [];\r\n _total: number;\r\n _pages: number;\r\n records = [];\r\n IsFavorite;\r\n SelectedArciveId;\r\n Item: any;\r\n\r\n hideAdditionalFilters: boolean;\r\n\r\n toggleAdditionalFilters() {\r\n this.hideAdditionalFilters = !this.hideAdditionalFilters;\r\n }\r\n searchTextPresss(event) {\r\n if (event.keyCode == 13) {\r\n //this.Search();\r\n }\r\n }\r\n\r\n //#endregion\r\n\r\n constructor(\r\n public router: Router,\r\n public flowPaperBridgeService: FlowPaperBridgeService,\r\n public _archiveItemSVC: ArchiveItemSVC,\r\n public detailsAttachmentSVC: DetailsAttachmentSVC,\r\n public webTwainSVC: webTwainSVC,\r\n public detailsHeaderService: DetailsHeaderService,\r\n public toastr: ToastrService,\r\n public _dialogs: DialogManager,\r\n public zone: NgZone,\r\n public changeDetector: ChangeDetectorRef,\r\n public LookupHelpers: LookupHelpers\r\n ) {\r\n super();\r\n }\r\n\r\n public get lang() {\r\n return BERRY.lang;\r\n }\r\n\r\n ngSuperAfterViewInit() {\r\n if (this.previewAttachment == undefined) {\r\n window[\"angularComponentRefAttachment\"] = {\r\n component: this,\r\n zone: this.zone\r\n };\r\n this.flowPaperBridgeService.init(\r\n this.prviewTemplatesFlexViewer.IframeId,\r\n () => { }\r\n );\r\n }\r\n }\r\n\r\n GetShowHideFlexPaperToolBars(): [\r\n ShowFlexPaperAnnotations,\r\n ShowFlexPaperTopBarActions\r\n ] {\r\n let showAnnotations = new ShowFlexPaperAnnotations();\r\n showAnnotations.SignatureBtn = false;\r\n showAnnotations.StampBtn = false;\r\n showAnnotations.NoteBtn = false;\r\n showAnnotations.DeleteBtn = false;\r\n showAnnotations.ShowAnnotationsBtn = false;\r\n showAnnotations.DrawBtn = false;\r\n showAnnotations.StrikeoutBtn = false;\r\n\r\n let showFlexPaperTopBarActions = new ShowFlexPaperTopBarActions();\r\n showFlexPaperTopBarActions.FitPageBtn = true;\r\n showFlexPaperTopBarActions.FitWidthBtn = true;\r\n showFlexPaperTopBarActions.FullScreenBtn = true;\r\n showFlexPaperTopBarActions.HandDragCursorBtn = true;\r\n showFlexPaperTopBarActions.NavigatePagesBtn = true;\r\n showFlexPaperTopBarActions.SelectTextBtn = true;\r\n showFlexPaperTopBarActions.SinglePagePortraitBtn = true;\r\n showFlexPaperTopBarActions.TileThumbsBtn = true;\r\n showFlexPaperTopBarActions.TwoPageBtn = true;\r\n showFlexPaperTopBarActions.ZoomFactorBtn = true;\r\n showFlexPaperTopBarActions.ZoomSliderBtn = true;\r\n\r\n return [showAnnotations, showFlexPaperTopBarActions];\r\n }\r\n\r\n previewAttachment(ID, EXT, TITLE) {\r\n var showHideConfigs = this.GetShowHideFlexPaperToolBars();\r\n this.prviewTemplatesFlexViewer.AttachmentExtension = EXT;\r\n\r\n this.selectedAttachmentName = TITLE;\r\n this.selectedAttachmentExtension = EXT;\r\n\r\n this.prviewTemplatesFlexViewer.AttachmentID = ID;\r\n this.previewPopup.open();\r\n this.prviewTemplatesFlexViewer.ShowFlexPaperAnnotations = null;\r\n this.prviewTemplatesFlexViewer.vSetFrameSource(\r\n 0,\r\n showHideConfigs[0],\r\n showHideConfigs[1],\r\n ID\r\n );\r\n }\r\n\r\n openAttachmentDialog() {\r\n var me = this;\r\n var detailsAttachmentService = me.detailsAttachmentSVC;\r\n detailsAttachmentService.AttachmentParentID = me.selectedArchiveID;\r\n\r\n detailsAttachmentService.getEditServiceURL = \"Archives/Attachments/Edit\";\r\n detailsAttachmentService.getURL =\r\n \"api/ArchiveApi/GetArchiveAttachmentsWithoutGruops\";\r\n me.detailsAttachmentSVC.relatedType = me.detailsAttachmentSVC.RelatedTypeEnum.Archive;\r\n me.attachmentAdd.vShowModel(AttachmentTypesEnum.ArchiveAttachments, null, me.detailsAttachmentSVC, me.webTwainSVC, false, false, false, AppModulesEnum.Documents);\r\n }\r\n\r\n openAttachments(item, event) {\r\n var me = this;\r\n this.Item = item;\r\n me.selectedArchiveID = this.Item.Id;\r\n me.detailsHeaderService.CheckIfUserCanAddAttachmentsToDocuments(this.Item.Id)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(response => {\r\n if (response[1].Value) {\r\n me.detailsHeaderService\r\n .GetArchiveAttachments(this.Item.Id)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(response => {\r\n var Data = response;\r\n this.Attachments = Data;\r\n });\r\n\r\n $(\".inbox-item\").each(function () {\r\n $(this).removeClass(\"attachments-opened\");\r\n });\r\n me.IsAttachmentsOpened = true;\r\n if (event != null)\r\n $(event.target)\r\n .closest(\".inbox-item\")\r\n .addClass(\"attachments-opened\");\r\n\r\n if (response[15].Value) {\r\n this.EnableToAddAttachments = response[15].Value;\r\n }\r\n else {\r\n this.EnableToAddAttachments = false;\r\n }\r\n }\r\n else {\r\n me.router.navigate([\"/no-content\"]);\r\n }\r\n });\r\n }\r\n\r\n IsPopUpClosed(value) {\r\n if (value == \"closed\") {\r\n this.openAttachments(this.Item, null);\r\n }\r\n }\r\n\r\n closeAttachments() {\r\n var me = this;\r\n me.IsAttachmentsOpened = false;\r\n $(\".inbox-item\").each(function () {\r\n $(this).removeClass(\"attachments-opened\");\r\n });\r\n }\r\n\r\n getPage(page: number) {\r\n var me = this;\r\n me.notifyPage.emit(page.toString());\r\n }\r\n\r\n ChangeArchiveFavorite(id) {\r\n var me = this;\r\n let archive = me.Records.find(a => a.Id == id);\r\n\r\n if (archive.IsFavorite) { // remove favorite\r\n this._dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n BERRY.loc.archiving.RemovefromFavorites,\r\n BERRY.loc.correspondence.FollowUp.modalTitle,\r\n BERRY.loc.correspondence.FollowUp.btnOk,\r\n BERRY.loc.correspondence.FollowUp.btnCancel\r\n );\r\n dialog.show(options, result => {\r\n if (result == ConfirmationBoxResult.Yes) {\r\n me.changeFavorite(archive);\r\n }\r\n });\r\n }\r\n });\r\n }\r\n else { // add as favorite\r\n me.changeFavorite(archive);\r\n }\r\n }\r\n\r\n changeFavorite(archive) {\r\n let me = this;\r\n me.detailsHeaderService\r\n .ChangeArchiveFavorite(archive.Id)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(response => {\r\n if (archive.IsFavorite) {\r\n archive.IsFavorite = false;\r\n }\r\n else { // added as favorite\r\n archive.IsFavorite = true;\r\n }\r\n me.toastr.success(BERRY.loc.common.successMessage);\r\n });\r\n }\r\n\r\n gotoArchiveItem(id) {\r\n sessionStorage.setItem(\"Data_BackButtonInDocumentHeader_Url\", this.router.url);\r\n }\r\n\r\n openViewFinalRecordPopup(SelectedArciveId: string) {\r\n var me = this;\r\n me.SelectedArciveId = SelectedArciveId;\r\n this._archiveItemSVC.getLastAttachmentForDocumentsGroup(SelectedArciveId).pipe(takeWhile(() => me.isSubscribed)).subscribe(\r\n result => {\r\n if (result.DmsFileId == undefined) {\r\n me._dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Warning,\r\n BERRY.loc.correspondence.NoFinalDocumentToReview,\r\n \"\",\r\n BERRY.loc.correspondence.FollowUp.btnOk\r\n );\r\n dialog.show(options, result => { });\r\n }\r\n });\r\n return;\r\n }\r\n var showHideConfigs = me.GetShowHideFlexPaperToolBars();\r\n me.prviewTemplatesFlexViewer.AttachmentExtension = result.Extension;\r\n me.selectedAttachmentName = result.AttachmentTitle;\r\n me.selectedAttachmentExtension = result.Extension;\r\n me.prviewTemplatesFlexViewer.AttachmentID = result.DmsFileId;\r\n me.prviewTemplatesFlexViewer.Module = 1;\r\n me.previewPopup.open();\r\n window[\"angularComponentRefAttachment\"] = { component: me, zone: me.zone };\r\n me.flowPaperBridgeService.init(this.prviewTemplatesFlexViewer.IframeId, () => {\r\n me.getAttachmentAnnotations(me.prviewTemplatesFlexViewer.AttachmentID);\r\n });\r\n me.prviewTemplatesFlexViewer.ShowFlexPaperAnnotations = null;\r\n me.prviewTemplatesFlexViewer.vSetFrameSource(\r\n 0,\r\n showHideConfigs[0],\r\n showHideConfigs[1],\r\n result.DmsFileId\r\n );\r\n });\r\n }\r\n getAttachmentAnnotations(selectedAttachmentId) {\r\n let me = this;\r\n me._archiveItemSVC.getAttachmentAnnotations(selectedAttachmentId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.prviewTemplatesFlexViewer.Annotations = data;\r\n me.flowPaperBridgeService.setMarksOnPreviewer(\r\n me.prviewTemplatesFlexViewer.IframeId\r\n );\r\n });\r\n }\r\n ChangeToggleDisplayCssMouseUp(ndx) {\r\n var elmToggle = $(\"#toggleAttachmentIcon\" + ndx);\r\n var elmParent = $(\"#toggleAttachmentIcon\" + ndx)\r\n .closest(\"a\")\r\n .hasClass(\"collapsed\");\r\n\r\n if (elmParent) {\r\n elmToggle.addClass(\"evicon-chevron-down\");\r\n elmToggle.removeClass(\"evicon-chevron-left\");\r\n } else {\r\n elmToggle.removeClass(\"evicon-chevron-down\");\r\n elmToggle.addClass(\"evicon-chevron-left\");\r\n }\r\n }\r\n\r\n @ViewChild('previewPopup') previewPopup: PopupComponent;\r\n previewPopupOption: IPopup = {\r\n actions: [\r\n {\r\n text: this.getText('cancel', 'CSHTML/Areas/Correspondences/NewApp/NewOutgoing'), type: 'close'\r\n }\r\n ],\r\n mode: 'small',\r\n height: 1000\r\n }\r\n\r\n CheckAddedAttachmentArchive(e) {\r\n let me = this;\r\n me.detailsAttachmentSVC.getCount(this.selectedArchiveID, 'Archive')\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.zone.run(() => {\r\n this.Records[this.records.indexOf(this.Item)].Attachments.push(\r\n data.NewAttachment\r\n );\r\n this.Records[this.records.indexOf(this.Item)].AttachmentsCount = data;\r\n });\r\n });\r\n }\r\n\r\n selectAttachment_click(attachment, RelatedAttachmentID, attachmentTitle, mimeType, dmsId, extension, relativePath, isSetAsFinalRecored, isCorrespondenceRecored = false) {\r\n this.selectAttachment(\r\n attachment,\r\n RelatedAttachmentID,\r\n attachmentTitle,\r\n mimeType,\r\n dmsId,\r\n extension,\r\n relativePath,\r\n false\r\n );\r\n return false;\r\n }\r\n\r\n selectAttachment(\r\n attachment,\r\n attachmentId,\r\n attachmentTitle,\r\n mimeType,\r\n dmsId,\r\n extension,\r\n relativePath,\r\n isFirst: Boolean = false,\r\n isSetAsFinalForm = false,\r\n isSetAsDraftForm = false\r\n ) {\r\n var me = this;\r\n me.detailsAttachmentSVC.SelectedAttachment = attachment;\r\n\r\n var svc = me.detailsAttachmentSVC;\r\n svc.selectedAttachmentTitle = attachmentTitle;\r\n svc.selectedDmsId = dmsId;\r\n svc.selectedAttachmentId = attachmentId;\r\n svc.selectedAttachmentTitle = attachmentTitle;\r\n svc.selectedAttachmentMimeType = mimeType;\r\n svc.selectedAttachmentExtension = extension;\r\n svc.selectedAttachmentRelativePath = relativePath;\r\n this.previewAttachment(dmsId, extension, attachmentTitle);\r\n }\r\n get LookupDocumentConfidentialities() {\r\n return this.LookupHelpers.getDocumentsConfidentialities();\r\n }\r\n getConfidentialityText(value) {\r\n var Confid = this.LookupDocumentConfidentialities.filter(e => e.Id == value)[0];\r\n if (Confid != undefined)\r\n return Confid.Text;\r\n }\r\n getIcon(Id) {\r\n return this.LookupConfidentialitiesCss[Id];\r\n }\r\n\r\n public LookupConfidentialitiesCss = [\r\n \"evicon-lock evicon-default\",\r\n \"evicon-lock evicon-success\",\r\n \"evicon-lock evicon-warning\",\r\n \"evicon-lock evicon-danger\",\r\n \"evicon-lock evicon-extreme\",\r\n \"evicon-lock evicon-danger\",\r\n \"evicon-lock evicon-danger\",\r\n \"evicon-lock evicon-danger\",\r\n \"evicon-lock evicon-danger\",\r\n \"evicon-lock evicon-danger\"\r\n ];\r\n}\r\n","import { SearchFilterNumberSearchTypesEnum } from \"../AdvancedSearch/SearchFilterNumberSearchTypesEnum\";\r\nimport { ArchiveClassfication, ArchiveType } from \"./ArchiveDto\";\r\n\r\nexport class ArchiveSearchDto {\r\n public ReceivingDate: string; // تاريخ التبليغ\r\n public DecreeDate: string; // تاريخ التبليغ\r\n public ArchiveNumber: string;\r\n public ArchiveNotes: string;\r\n public SearchText: string;\r\n public Category: number[];\r\n public CreationDate: DateFilters;\r\n public LockedByType: SearchFilterLocked;\r\n public LockedBy: any;\r\n public LastViewedDate: DateFilters;\r\n public LatestViewedAttachments: any[];\r\n public SearchByRegexExact: boolean;\r\n public SelectedPage: number;\r\n public ExecludedArchivesIds: any[];\r\n public PageSize: number;\r\n public OrderBy: SearchFilterOrderTypes;\r\n public IsEnglish: boolean;\r\n public FromDate: string;\r\n public ToDate: string;\r\n public Importance: ImportanceTypes;\r\n public ExternalContactId: string;\r\n public DocumentReceivingNumber: string;\r\n public FileNumber: string;\r\n public SearchInContent: boolean;\r\n public Tags: any[];\r\n public TextSearchType: SearchFilterTextSearchTypes = SearchFilterTextSearchTypes.ArchiveContains;\r\n public NumberSearchType: SearchFilterNumberSearchTypesEnum = SearchFilterNumberSearchTypesEnum.ArchiveNumberContains;\r\n public Types: ArchiveType[];\r\n public Folders: any[];\r\n public Classifications: ArchiveClassfication[];\r\n public SelectFavorites: boolean;\r\n public IsOrderByAsc?: boolean;\r\n public IsCanceled?: boolean;\r\n public IsPublished?: boolean;\r\n public Confidentialities: number[];\r\n public SelectLastSeen: boolean;\r\n public externalContact: any;\r\n public allFolders: any;\r\n public CreationDateRadio: DateFilters;\r\n public ArchiveYear: any;\r\n public DecreeNumber: string;\r\n public IsAdvanceSearch: boolean;\r\n public OnlyArchivesHaveAttachments: boolean = false;\r\n public IsQuickSearch: boolean = false;\r\n}\r\n\r\nexport enum SearchFilterLocked {\r\n All,\r\n ByMe,\r\n ByOthers,\r\n NoFilters\r\n}\r\nexport enum DateFilters {\r\n Range = -2,\r\n All = -1,\r\n Today = 0,\r\n Yesterday = 1,\r\n LastWeek = 7,\r\n LastMonth = 30\r\n}\r\nexport enum SearchFilterOrderTypes {\r\n CreationDate,\r\n IssuingDate,\r\n ArchiveNumber,\r\n Relevance,\r\n ArchiveTitle,\r\n ArchiveDate// should be removed\r\n}\r\n\r\nexport enum ImportanceTypes {\r\n None = -1,\r\n NotImportant = 0,\r\n Important = 1 \r\n}\r\n\r\nexport enum ConfidentialityIdEnum {\r\n NonConfidential = 0,\r\n Confidential = 1,\r\n VeryConfidential = 2,\r\n TopConfidential = 3,\r\n Level4 = 4,\r\n Level5 = 5,\r\n Level6 = 6,\r\n Level7 = 7,\r\n Level8 = 8,\r\n Level9 = 9\r\n}\r\n\r\nexport enum SearchFilterTextSearchTypes {\r\n ArchiveContains,\r\n ArchiveStartsWith,\r\n ArchiveTextEqual,\r\n ArchiveExactText\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { IGlobalSettings } from \"../../_common/models/IGlobalSettings\";\r\nimport { HttpInterceptor } from \"../../_common/services/http-interceptor\";\r\nimport { BaseService } from \"../../_common/services/baseService\";\r\nimport { SystemModules } from \"src/app/_common/models/GetUserSignatureDto\";\r\nimport { catchError } from \"rxjs/operators\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class ArchiveItemSVC extends BaseService {\r\n\r\n baseURL = BERRY.hostName + \"api/ArchiveItemApi\"; // URL to web API\r\n public data: any;\r\n public Module: SystemModules = SystemModules.Archive;\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n public GetAllDeletedItems(PageNumber, PageSize, Kw = \"\"): Observable {\r\n return super.get(\r\n this.baseURL +\r\n \"/GetAllDeletedItems?PageNumber=\" +\r\n PageNumber +\r\n \"&PageSize=\" +\r\n PageSize +\r\n \"&Kw=\" +\r\n Kw\r\n );\r\n }\r\n\r\n public GetRelateContact(ArchiveId): Observable {\r\n let me = this;\r\n\r\n return super.get(\r\n BERRY.hostName +\r\n `api/ArchiveItemApi/GetRelateContact?ArchiveId=${ArchiveId}`\r\n );\r\n }\r\n public GetAllArchiveFieldValues(ArchiveId): Observable {\r\n let me = this;\r\n return super.get(\r\n BERRY.hostName +\r\n `api/ArchiveItemApi/GetAllArchiveFieldValues?ArchiveId=${ArchiveId}`\r\n );\r\n }\r\n public RestoreDeletedItems(SelectedIds) {\r\n return super.post(this.baseURL + \"/RestoreDeletedItems\", SelectedIds);\r\n }\r\n\r\n public getLastAttachmentForDocumentsGroup(ArchiveID): Observable {\r\n return super.get(\r\n BERRY.hostName +\r\n \"api/ArchiveItemApi/getLastAttachmentForDocumentsGroup?ArchiveID=\" +\r\n ArchiveID\r\n );\r\n }\r\n\r\n public DeleteRelatedContact(ArchiveRelatedContactId): Observable {\r\n return super.post(\r\n BERRY.hostName +\r\n `api/ArchiveItemApi/DeleteRelatedContact?ArchiveRelatedContactId=${ArchiveRelatedContactId}`,\r\n {\r\n ArchiveRelatedContactId\r\n }\r\n );\r\n }\r\n\r\n public SaveRelatedContact(IdContact, ArchiveId): Observable {\r\n return this.http.post(\r\n BERRY.hostName +\r\n `api/ArchiveItemApi/SaveRelatedContact?IdContact=${IdContact}&ArchiveId=${ArchiveId}`,\r\n {\r\n IdContact,\r\n ArchiveId\r\n }).pipe(catchError(this.handleError));\r\n }\r\n\r\n getAttachmentAnnotations(selectedAttachmentId: string) {\r\n var signUrl = \"api/correspondence-signatures/\";\r\n let url = `${BERRY.hostName}${signUrl}get-user-attachment-annotations/${selectedAttachmentId}/${this.Module}`;\r\n return super.get(url);\r\n }\r\n\r\n getArchiveSettings(): Observable {\r\n return super.get(BERRY.hostName + \"api/ArchiveApi/GetArchiveSettings\");\r\n }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { SharedModule } from \"src/app/shared/shared.module\";\r\nimport { ArchivesListComponent } from \"../_comon/ArchiveList/archives-list.component\";\r\nimport { DetailsHeaderService } from \"../details/header/details-header-svc\";\r\nimport { ArchiveItemSVC } from \"../_services/archive-item-svc\";\r\nimport { CommaSeparatedNumberPipe } from \"src/app/_common/directives/commaSeparatedNumber\";\r\n\r\n@NgModule({\r\n imports: [\r\n SharedModule\r\n ],\r\n declarations: [\r\n ArchivesListComponent,\r\n CommaSeparatedNumberPipe\r\n ],\r\n exports: [\r\n ArchivesListComponent,\r\n CommaSeparatedNumberPipe\r\n ],\r\n providers: [\r\n DetailsHeaderService,\r\n ArchiveItemSVC\r\n ]\r\n})\r\nexport class ArchivesListModule { }\r\n","import { NgModule } from \"@angular/core\";\r\nimport { ArchivesListModule } from \"../archives-list/archives-list.module\";\r\nimport { SharedModule } from \"src/app/shared/shared.module\";\r\nimport { QuickSearchComponent } from \"../Modals/QuickSearch/quickSearch\";\r\nimport { ArchiveAdvancedSearchService } from \"../AdvancedSearch/archive-advancedSearch-svc\";\r\nimport { YearPickerModule } from \"src/app/_common/components/year-picker/yearpicker.module\";\r\n\r\n@NgModule({\r\n imports: [\r\n SharedModule,\r\n ArchivesListModule,\r\n YearPickerModule\r\n ],\r\n declarations: [\r\n QuickSearchComponent\r\n ],\r\n exports: [\r\n QuickSearchComponent\r\n ],\r\n providers: [\r\n ArchiveAdvancedSearchService\r\n ]\r\n})\r\nexport class ArchivesQuickSearchModule { }\r\n","import { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Response } from \"@angular/http\";\r\nimport { throwError} from \"rxjs\";;\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from \"../../../_common/models/IGlobalSettings\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class DetailsHeaderService extends BaseService {\r\n baseURL: any = BERRY.hostName + \"api/ArchiveDetailHeaderApi\";\r\n public ArchiveHeaderData = null;\r\n public attachmentsCount: number;\r\n\r\n public Data: any = null;\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n getArchiveDetailsHeader(id: string) {\r\n return this.http\r\n .post(this.baseURL + \"/GetArchiveItemData?archiveID=\" + id, id)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n ChangeArchiveLock(id: string) {\r\n return this.http\r\n .post(this.baseURL + \"/ChangeArchiveLock?archiveID=\" + id, id)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n ChangeArchiveFavorite(id: string) {\r\n return this.http\r\n .post(this.baseURL + \"/ChangeArchiveFavorite?archiveID=\" + id, id)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n GetArchiveAttachments(id: string) {\r\n return this.http\r\n .get(BERRY.hostName + \"api/ArchiveApi/GetArchiveAttachments?id=\" + id)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n GetArchiveAttachmentswithoutGroups(id: string) {\r\n return this.http\r\n .get(\r\n BERRY.hostName +\r\n \"api/ArchiveApi/GetArchiveAttachmentsWithoutGruops?id=\" +\r\n id\r\n )\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n extractData(res: Response) {\r\n let body = res;\r\n return body || {};\r\n }\r\n\r\n handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n return throwError(errMsg);\r\n }\r\n\r\n CheckIfUserCanAddAttachmentsToDocuments(id: string) {\r\n return this.http\r\n .get(BERRY.hostName + \"api/ArchiveApi/CheckIfUserCanAddAttachmentsToDocuments?ArchiveItemId=\" + id)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n}\r\n","import {\r\n Component,\r\n ElementRef,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n ViewChild\r\n} from \"@angular/core\";\r\nimport { ContactsSelectorBase } from \"./contacts-selector\";\r\nimport { kendoCombobox } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport {\r\n IContactsCompsOptions,\r\n ContactsSearchForEnum,\r\n ContactItemTypeEnum,\r\n IContactProclameeItem\r\n} from \"./contacts-dtos\";\r\nimport { MessagingService } from \"src/app/_common/services/messaging-service\";\r\nimport { Router } from \"@angular/router\";\r\n\r\ndeclare var jQuery: any;\r\n\r\n@Component({\r\n selector: 'contacts-box',\r\n template: `\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\nexport class ContactsBox extends ContactsSelectorBase {\r\n @ViewChild(kendoCombobox) combobox: kendoCombobox;\r\n @ViewChild(\"contactCombobox\") contactCombobox: any;\r\n @Input(\"options\") set compOptions(val: IContactsCompsOptions) {\r\n this.options = val;\r\n }\r\n @Input(\"isPreviewMode\") public isPreviewMode: boolean = false;\r\n @Input() placeholder: string;\r\n\r\n @Input(\"dataAutomationId\") dataAutomationId: string;\r\n @Input() iconClass: string;\r\n @Input() tooltipAddButton: string;\r\n @Input(\"createExternalContact\") createExternalContact: boolean = true;\r\n @Input(\"IsProclamee\") IsProclamee: boolean = null;\r\n\r\n\r\n _contact: IContactProclameeItem = null;\r\n _canAddNewContact: boolean = true;\r\n\r\n get contact(): IContactProclameeItem {\r\n return this._contact;\r\n }\r\n\r\n @Input('contact')\r\n set contact(val: IContactProclameeItem) {\r\n if (this._contact == val) return;\r\n this._contact = val;\r\n\r\n this.contactChange.emit(this._contact);\r\n }\r\n\r\n setControlFocus() {\r\n this.msgs.currentControl = this;\r\n (document as any).contactsBox = this;\r\n }\r\n\r\n @Output() onAddClicked = new EventEmitter();\r\n @Output() contactChange = new EventEmitter();\r\n @Output() inputBlur = new EventEmitter();\r\n @Output() newcontactforLazyLoaded = new EventEmitter();\r\n\r\n @Input()\r\n public set canAddNewContact(val: boolean) {\r\n this._canAddNewContact = val;\r\n this.addContactWhenNotFound = val;\r\n this.vSetOptions();\r\n }\r\n\r\n get showAddButton() {\r\n if (typeof this.addContactWhenNotFound != \"undefined\")\r\n return this.addContactWhenNotFound;\r\n else return true;\r\n }\r\n\r\n onControlBlur() {\r\n if (this.inputBlur != null) this.inputBlur.next(null);\r\n }\r\n\r\n openNewModal() {\r\n this.addContact(this._contactText);\r\n }\r\n\r\n _text: string;\r\n get text() {\r\n return this._text;\r\n }\r\n\r\n set text(val: string) {\r\n this._text = val;\r\n }\r\n\r\n constructor(el: ElementRef, public msgs: MessagingService, public router: Router) {\r\n super(el, router);\r\n this.isAutocomplete = false;\r\n this.AllowFreetext = true;\r\n this.addContactWhenNotFound = this._canAddNewContact;\r\n var me = this;\r\n if (!me.options || !me.options.internalAddModal) {\r\n this.msgs.subscribe(\"NewOrgContactCreated\", newContact => {\r\n let contact: IContactProclameeItem = {\r\n Id: newContact.Id,\r\n DisplayName: newContact.DisplayName,\r\n DisplayNameAr: newContact.DisplayNameAr,\r\n DisplayNameEn: newContact.DisplayNameEn,\r\n Type: ContactItemTypeEnum.Organization,\r\n NationalIdentitiy: newContact.NationalIdentitiy,\r\n HasPhoto: false,\r\n DefaultEmail: null,\r\n CreateExternalContact: false\r\n };\r\n if (me.msgs.currentControl && me.msgs.currentControl == me)\r\n me.contact = contact;\r\n });\r\n this.msgs.subscribe(\"NewIndvContactCreated\", newContact => {\r\n let contact: IContactProclameeItem = {\r\n Id: newContact.Id,\r\n DisplayName: newContact.DisplayName,\r\n DisplayNameAr: newContact.DisplayNameAr,\r\n DisplayNameEn: newContact.DisplayNameEn,\r\n Type: ContactItemTypeEnum.Individual,\r\n NationalIdentitiy: newContact.NationalIdentitiy,\r\n HasPhoto: false,\r\n DefaultEmail: newContact.DefaultEmail,\r\n CreateExternalContact: false\r\n };\r\n if (me.msgs.currentControl && me.msgs.currentControl == me)\r\n me.contact = contact;\r\n });\r\n this.msgs.subscribe(\"IndividualCreate\", newContact => {\r\n let contact: IContactProclameeItem = {\r\n Id: newContact.Id,\r\n DisplayName: newContact.DisplayName,\r\n DisplayNameAr: newContact.DisplayNameAr,\r\n DisplayNameEn: newContact.DisplayNameEn,\r\n Type: ContactItemTypeEnum.Individual,\r\n NationalIdentitiy: newContact.NationalIdentitiy,\r\n HasPhoto: false,\r\n DefaultEmail: newContact.DefaultEmail,\r\n CreateExternalContact: false\r\n };\r\n\r\n if (this.useInstance) {\r\n setTimeout(() => {\r\n const el = (document as any).contactsBox as ContactsBox;\r\n if (!!el) {\r\n jQuery(el.contactCombobox.nativeElement)?.data(\"kendoComboBox\")?.dataSource?._data?.push?.(contact);\r\n el.combobox.value = contact.Id;\r\n el.contactCombobox.nativeElement.value = contact.Id;\r\n }\r\n\r\n // me.contact = contact;\r\n\r\n }, 1500);\r\n }\r\n\r\n\r\n if (me.msgs.currentControl && me.msgs.currentControl == me) {\r\n me.contact = contact;\r\n }\r\n const el = (document as any).contactsBox as ContactsBox;\r\n if (!!el) {\r\n el.contact = contact;\r\n }\r\n\r\n // me.contact = contact; \r\n });\r\n\r\n\r\n }\r\n\r\n (document as any).onClosePopup = () => {\r\n if (this.useInstance) {\r\n me.contactsBoxForm = true;\r\n setTimeout(() => {\r\n (document as any).contactsBox = this;\r\n }, 300);\r\n \r\n }\r\n }\r\n\r\n\r\n }\r\n\r\n _contactText: string;\r\n get contactText(): string {\r\n return this._contactText;\r\n }\r\n @Input()\r\n set contactText(text: string) {\r\n this._contactText = text;\r\n\r\n // clear the text if no contact was actually selected\r\n if (!this.contact && text && text.trim().length > 0)\r\n setTimeout(() => (this.contactText = null), 50); // we have to use the timeout to make sure that we clear it after all other events\r\n }\r\n\r\n addContact(name: string) {\r\n this.combobox.close();\r\n let isNumber = !isNaN(Number(name));\r\n let number = null;\r\n this.contact = null;\r\n this.contactText = null;\r\n if (isNumber) {\r\n number = Number(name)\r\n name = \"\";\r\n }\r\n\r\n\r\n if (this.options.internalAddModal) {\r\n this.onAddClicked.emit(name);\r\n }\r\n else {\r\n if (this.options.searchFor == ContactsSearchForEnum.Individuals) {\r\n this.router.navigate([{ outlets: { 'modal': ['add-new-individual'] } }], {\r\n queryParams: {\r\n 'IndvName': name,\r\n 'OrgId': this.organizationID,\r\n 'NationalIdentitiy': number,\r\n 'IsProclamee': this.IsProclamee,\r\n\r\n }, skipLocationChange:false\r\n });\r\n\r\n } else if (this.options.searchFor == ContactsSearchForEnum.Organizations) {\r\n this.router.navigate([{ outlets: { 'modal': ['add-new-organization'] } }], {\r\n queryParams: {\r\n 'OrgName': name,\r\n 'CreateExterenlConact': this.createExternalContact\r\n }, skipLocationChange:false\r\n });\r\n }\r\n }\r\n }\r\n\r\n //optional\r\n vSetOrganizationId(organizationID: string): void {\r\n this.organizationID = organizationID;\r\n this.vSetOptionalParams();\r\n }\r\n\r\n keydownEnter() {\r\n let me = this;\r\n\r\n let ds = jQuery(me.contactCombobox.nativeElement).data(\"kendoAutoComplete\")\r\n .dataSource;\r\n let value = me.contactCombobox.nativeElement.value;\r\n let data = ds[\"_data\"];\r\n\r\n if (data.length === 0) {\r\n if (this.options.isLazyLoaded) {\r\n me.newcontactforLazyLoaded.emit(me.contactCombobox.nativeElement.value);\r\n }\r\n else {\r\n me.addContact(me.contactCombobox.nativeElement.value);\r\n }\r\n }\r\n }\r\n\r\n clear() {\r\n setTimeout(() => {\r\n this.contactText = null;\r\n this.contactCombobox.nativeElement.value = \"\";\r\n }, 50);\r\n }\r\n ngOnInit() {\r\n super.ngOnInit();\r\n if (this.useInstance) {\r\n (document as any).contactsBox = this;\r\n\r\n }\r\n }\r\n}\r\n\r\n","export enum ContactsSearchForEnum {\r\n Individuals = 1,\r\n Organizations = 2\r\n}\r\n\r\nexport enum ContactItemTypeEnum {\r\n Individual = 1,\r\n Organization = 2\r\n}\r\n\r\n//export enum AttendeesTypeEnum {\r\n// Internal = 1,\r\n// External = 2,\r\n// All = 3,\r\n//}\r\n\r\nexport interface IContactItem {\r\n Id: number;\r\n DisplayName: string;\r\n DisplayNameAr: string;\r\n DisplayNameEn: string;\r\n DefaultEmail: string;\r\n HasPhoto: boolean;\r\n Type: ContactItemTypeEnum;\r\n CreateExternalContact: boolean;\r\n}\r\nexport interface IContactProclameeItem {\r\n Id: number;\r\n DisplayName: string;\r\n DisplayNameAr: string;\r\n DisplayNameEn: string;\r\n DefaultEmail: string;\r\n NationalIdentitiy: string;\r\n HasPhoto: boolean;\r\n Type: ContactItemTypeEnum;\r\n CreateExternalContact: boolean;\r\n}\r\nexport interface IContactsCompsOptions {\r\n searchFor: ContactsSearchForEnum;\r\n organizationLink?: string;\r\n internalSearch?: boolean;\r\n externalSearch?: boolean;\r\n isLazyLoaded?: boolean;\r\n individualClassification?: number;\r\n isNeedElementToRemove?: boolean;\r\n internalAddModal?: boolean;\r\n btnAddPersonText?: string;\r\n committeeId?: number;\r\n //attendeesType: AttendeesTypeEnum;\r\n}\r\n\r\nexport interface IHallReservedTimes {\r\n Date: Date;\r\n HallID: number;\r\n ReservedTimesList: IReservedTimes[];\r\n}\r\nexport interface IReservedTimes {\r\n StartTime: string;\r\n EndTime: string;\r\n}\r\n","import { ElementRef, OnInit, Directive, Input } from \"@angular/core\";\r\nimport { IContactsCompsOptions, ContactsSearchForEnum } from \"./contacts-dtos\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { IComboboxOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { Router } from \"@angular/router\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n\r\n@Directive()\r\nexport abstract class ContactsSelectorBase implements OnInit {\r\n options: IContactsCompsOptions;\r\n comboboxOptions: IComboboxOptions;\r\n isMultiselect: boolean;\r\n isAutocomplete: boolean;\r\n AllowFreetext: boolean;\r\n addContactWhenNotFound: boolean;\r\n addEntityWhenNotFound: boolean;\r\n public organizationID: string = null; //optional\r\n\r\n contactsBoxForm: boolean = true;\r\n @Input(\"useInstance\") useInstance: boolean;\r\n constructor(el: ElementRef,\r\n public router: Router,) {\r\n\r\n //this.element = el.nativeElement;\r\n }\r\n\r\n ngOnInit() {\r\n if (!this.options || !this.options.searchFor)\r\n throw \"[Options] are not specified for [contacts-box] or [contacts-tags]\";\r\n\r\n this.vSetOptions();\r\n }\r\n\r\n bindTemplate(data) {\r\n if (!!data.Position) {\r\n return `${data.Id} - ${data.DisplayName} (${data.Position})`;\r\n }\r\n\r\n return `${data.Id} - ${data.DisplayName}`;\r\n }\r\n\r\n vSetOptions(): void {\r\n let type = ContactsSearchForEnum[this.options.searchFor].toLowerCase();\r\n\r\n if (this.options && this.options.organizationLink) {\r\n type = type + \"/\" + this.options.organizationLink;\r\n }\r\n if (this.options && this.options.internalSearch) {\r\n type = type + \"?isInternal=\" + this.options.internalSearch;\r\n }\r\n if (this.options && this.options.externalSearch) {\r\n let committeeId = this.options.committeeId ? this.options.committeeId : '';\r\n type = type + \"?isExternal=\" + this.options.externalSearch + \"&CommitteeId=\" + committeeId;\r\n }\r\n if (this.options && this.options.individualClassification) {\r\n type = type + \"?individualClassification=\" + this.options.individualClassification;\r\n }\r\n var me = this;\r\n var addText = BERRY.loc.kendoLocalization.create;\r\n this.comboboxOptions = {\r\n serverDatasource: {\r\n enabled: true,\r\n searchField: \"keyword\",\r\n method: \"GET\",\r\n url: `${BERRY.hostName}api/contacts/search/${type}`\r\n },\r\n dataTextField: \"NameWithPosition\",\r\n dataValueField: \"Id\",\r\n autoBind: true,\r\n allowFreeText: this.AllowFreetext,\r\n autocomplete: this.isAutocomplete,\r\n multiselect: this.isMultiselect,\r\n displayTemplate: this.bindTemplate\r\n };\r\n\r\n if (this.addContactWhenNotFound) {\r\n let that = this;\r\n\r\n if (this.options.searchFor == ContactsSearchForEnum.Individuals) {\r\n this.comboboxOptions.noDataAdditionalTemplate = obj => {\r\n let text = obj.instance.text();\r\n var $btn = $(\r\n ``\r\n );\r\n $btn.click(() => {\r\n this.addContact(text);\r\n if (this.useInstance) {\r\n this.contactsBoxForm = false;\r\n }\r\n (document as any).onClosePopup = () => {\r\n if (this.useInstance) {\r\n me.contactsBoxForm = true;\r\n }\r\n }\r\n });\r\n return $btn;\r\n };\r\n }\r\n else {\r\n this.comboboxOptions.noDataAdditionalTemplate = obj => {\r\n let text = obj.instance.text();\r\n var $btn = $(\r\n ``\r\n );\r\n $btn.click(() => this.addContact(text));\r\n return $btn;\r\n };\r\n }\r\n }\r\n }\r\n\r\n vSetOptionalParams() {\r\n let organizationID = this.organizationID;\r\n this.comboboxOptions.serverDatasource.additionalParams = () => {\r\n return { organizationID: organizationID };\r\n };\r\n }\r\n\r\n addContact(name: string): void {\r\n let me = this;\r\n let elements: any = document.getElementsByClassName(\"k-animation-container\");\r\n if (elements != null && typeof (elements) != \"undefined\" && elements.length > 0) {\r\n for (var i = 0; i < elements.length; i++) {\r\n elements[i].style.display = \"none\";\r\n }\r\n }\r\n\r\n me.router.navigate([{ outlets: { 'modal': ['add-new-individual'] } }], {\r\n skipLocationChange:false\r\n });\r\n }\r\n keydownEnter() {\r\n throw \"[addContact] is not implemented while [canAddContact] is true\";\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { SharedModule } from 'src/app/shared/shared.module';\r\nimport { ContactAuthInfoEditCmp } from './contact-auth-info-edit';\r\n\r\n@NgModule({\r\n imports: [\r\n SharedModule\r\n ],\r\n declarations: [\r\n ContactAuthInfoEditCmp\r\n ],\r\n exports: [\r\n ContactAuthInfoEditCmp\r\n ]\r\n})\r\nexport class ContactAuthInfoEditModule { }","\r\n\r\n
\r\n
\r\n {{getText(\"NewEmailDesc\", \"ExternalUser\")}}\r\n
\r\n
\r\n {{getText(\"UpdateEmailDesc\", \"ExternalUser\")}}\r\n
\r\n
\r\n
\r\n {{getText(\"email\", \"Contacts_ContactsInfoNg\")}}\r\n \r\n
\r\n
\r\n {{getText(\"EmailAddress\", \"CSHTML/Account/Login\")}}\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n {{getText('enter_valid_email', 'Contacts_js')}}\r\n
\r\n
\r\n
\r\n
\r\n\r\n ","import { Component, ViewChild, EventEmitter, Output, Input } from \"@angular/core\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { IndividualSVC } from \"../individuals/individuals-svc\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { ContactsHelpers } from \"../helpers\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { PopupComponent, IPopup } from \"src/app/_common/components/popup/popup-component\";\r\nimport { DialogManager, ConfirmationBoxOptions, ConfirmationBoxType } from \"src/app/_common/services/dialog-manager\";\r\nimport { generalSettingsSvc } from \"../../berry/correspondences/manage/generalSettings/general-settings-svc\";\r\n\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"contacts-auth-info-edit\",\r\n templateUrl: \"./contact-auth-info-edit-ng.html\"\r\n})\r\nexport class ContactAuthInfoEditCmp extends BaseCmp {\r\n\r\n @ViewChild(\"individualEmailModel\") individualEmailModel: PopupComponent;\r\n individualEmailModelOption: IPopup = {\r\n\r\n actions: [\r\n { text: this.getText(\"Save\", \"CreateScheduale\"), type: 'submit', event: () => this.saveIndividualEmail(this.isOperationsOfficersTab) },\r\n {\r\n text: this.getText(\"Cancel\", \"CSHTML/Areas/Correspondences/Applications/ConfirmFirstForwardAction\"), type: 'close',\r\n event: () => {\r\n this.IndividualId = null;\r\n this.onCancel.emit(false);\r\n }\r\n },\r\n ],\r\n mode: 'small',\r\n isBusy: () => this.isBusy\r\n\r\n }\r\n @Output() onCancel = new EventEmitter();\r\n @Output() onSave = new EventEmitter();\r\n isBusy: boolean;\r\n\r\n isSubscribed: boolean = true;\r\n validateForm: boolean = false;\r\n isOperationsOfficersTab: boolean = false;\r\n\r\n isEdit: boolean = false;\r\n\r\n IndividualId: number;\r\n individualEmail: string = \"\";\r\n allowedDomains: string;\r\n domainsAllowedActive: boolean;\r\n supportedAllowedDomains: string[] = [];\r\n\r\n get userName(): string {\r\n if (this.individualEmail != null) {\r\n if (this.individualEmail.includes('@')) {\r\n var userName = this.individualEmail.split('@')[0];\r\n var domainName = '';\r\n var fullDomainName = this.individualEmail.split('@')[1];\r\n if (fullDomainName.includes('.'))\r\n domainName = \"-\" + fullDomainName.split('.')[0];\r\n else {\r\n if (fullDomainName.length > 0)\r\n domainName = \"-\" + fullDomainName;\r\n }\r\n return userName + domainName;\r\n }\r\n else\r\n return this.individualEmail;\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n constructor(public service: IndividualSVC,\r\n public dialogs: DialogManager,\r\n public _toastr: ToastrService,\r\n private generalSettingSvc: generalSettingsSvc) {\r\n super();\r\n }\r\n\r\n ngSuperOnInit() {\r\n\r\n this.generalSettingSvc.GetValue('GeneralConfiguration', 'ExternalUsersAllowedDomains').pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(response => {\r\n this.allowedDomains = response;\r\n if (this.allowedDomains) {\r\n var obj = JSON.parse(this.allowedDomains);\r\n this.domainsAllowedActive = obj.IsChecked;\r\n this.supportedAllowedDomains = obj.AllowedDomains;\r\n } else {\r\n this.domainsAllowedActive = false;\r\n this.supportedAllowedDomains = [];\r\n } \r\n });\r\n}\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n showModel(individualId: any, IndividualEmail: any, externalEmail: any = \"\", isOperationsOfficersTab: boolean = false) {\r\n this.isOperationsOfficersTab = isOperationsOfficersTab;\r\n this.IndividualId = individualId;\r\n this.validateForm = false;\r\n if (IndividualEmail && IndividualEmail != \"\") {\r\n this.service\r\n .checkEmailIndividualExistOnUserOrIndv(individualId, IndividualEmail)\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(\r\n res => {\r\n if (res) {\r\n this.isEdit = true;\r\n this.individualEmail = IndividualEmail;\r\n this.individualEmailModel.open();\r\n }\r\n else {\r\n this.individualEmail = IndividualEmail;\r\n this.onSave.emit(this.individualEmail);\r\n this.individualEmailModel.close();\r\n }\r\n },\r\n err => (this.errorMessage = err)\r\n );\r\n\r\n\r\n }\r\n else {\r\n this.isEdit = false\r\n this.individualEmail = externalEmail;\r\n this.individualEmailModel.open();\r\n }\r\n }\r\n\r\n cancelIndividualEmailModel() {\r\n this.IndividualId = null;\r\n this.onCancel.emit(false);\r\n this.individualEmailModel.close();\r\n }\r\n\r\n saveIndividualEmail(isOperationsOfficersTab = false) {\r\n // call svc to edit the Email for selected Indv\r\n\r\n const me = this;\r\n if (!this.individualEmail) {\r\n me.dialogs.create(dialog => {\r\n\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n BERRY.getText('FormsValidationMessage', 'Common')\r\n );\r\n dialog.show(options);\r\n\r\n }\r\n\r\n });\r\n return;\r\n }\r\n\r\n me.validateForm = true;\r\n if (!me.validateIndividualEmail()) return;\r\n if (this.validateForm && this.individualEmail && this.domainsAllowedActive && !this.supportedAllowedDomains?.includes(this.individualEmail.split(\"@\").pop().toLowerCase())) {\r\n this._toastr.warning(BERRY.getText('TheEmailOfAddedUserIsNotAmongAllowedDomains', 'General-Setting') + this.supportedAllowedDomains?.join(', '))\r\n return false;\r\n }\r\n me.isBusy = true;\r\n me.service.saveEmailIndividual(me.IndividualId, me.individualEmail)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n res => {\r\n me.isBusy = false;\r\n\r\n if (isOperationsOfficersTab) {\r\n me._toastr.success(BERRY.loc.common.successMessage);\r\n me.individualEmailModel.close();\r\n return;\r\n }\r\n if (res) {\r\n me.onSave.emit(me.individualEmail);\r\n me.individualEmailModel.close();\r\n }\r\n else {\r\n me._toastr.warning(this.getText(\"DuplicateEmail\", \"ExternalUser\"));\r\n }\r\n },\r\n err => (me.errorMessage = err)\r\n );\r\n }\r\n\r\n validateIndividualEmail() {\r\n this.errorMessage = \"\";\r\n if (this.validateForm && this.individualEmail && !this.individualEmail.match(ContactsHelpers.EMAIL_REGEX)) {\r\n this.errorMessage = BERRY.getText(\"enter_valid_email\", 'Contacts_js');\r\n return false;\r\n }\r\n return true;\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../_common/models/IGlobalSettings\";\r\nimport {\r\n DialogManager,\r\n ConfirmationBoxOptions,\r\n ConfirmationBoxType,\r\n ConfirmationBoxResult\r\n} from \"../_common/services/dialog-manager\";\r\nimport {\r\n IComboboxServerDatasourceOptions,\r\n IComboboxOptions\r\n} from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\"\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class ContactsHelpers {\r\n public static SHOW_IND_QUICK_ENTRY_MESSAGE = \"showindividualsquickentry\";\r\n public static SHOW_ORG_QUICK_ENTRY_MESSAGE = \"showorganizationsquickentry\";\r\n public static MOBILE_REGEX: RegExp = /^(\\+|00|0)?([1-9]{1})([0-9]{7,70})$/;\r\n public static FAX_REGEX: RegExp = ContactsHelpers?.MOBILE_REGEX;\r\n public static PHONE_REGEX: RegExp = ContactsHelpers?.MOBILE_REGEX;\r\n public static PHONE_EXT_REGEX: RegExp = /^[0-9]{1,5}$/;\r\n public static EMAIL_REGEX: RegExp = /^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,6}$/i;\r\n public static WEB_REGEX: RegExp = /^(http|ftp|https)?(\\:\\/\\/)?([a-zA-Z0-9\\u0600-\\u06FF\\uFB50-\\uFDFF\\uFE70-\\uFEFF.-]+)(\\.[a-zA-Z0-9\\u0600-\\u06FF\\uFB50-\\uFDFF\\uFE70-\\uFEFF.-]+)+([a-zA-Z0-9.,@?^=%&;:/~+#-]*[a-zA-Z0-9@?^=%&;/~+#-])+$/; // https://regex101.com/r/eN9vI3/1\r\n public baseURL = BERRY.hostName;\r\n public static IPAddress_REGEX: RegExp = new RegExp(\"^([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\\\\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}$\");\r\n\r\n confirmDeletion(\r\n mgr: DialogManager,\r\n msg: string,\r\n confirmed: () => void,\r\n error?: (error: any) => void\r\n ) {\r\n mgr.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n msg,\r\n BERRY.getText(\"attention\", 'Contacts_js'),\r\n BERRY.getText(\"yes\", 'Contacts_js'),\r\n BERRY.getText(\"no\", 'Contacts_js')\r\n );\r\n dialog.show(options, result => {\r\n if (result == ConfirmationBoxResult.Yes) {\r\n confirmed();\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n checkRegEx(\r\n text: string,\r\n regexPattern: string,\r\n defaultRegex: RegExp,\r\n validationMessageKey: string,\r\n defaultValidationMessageKey: string\r\n ) {\r\n let regex =\r\n regexPattern && regexPattern.trim().length > 0\r\n ? new RegExp(regexPattern)\r\n : defaultRegex;\r\n if (!text || !text.match(regex)) {\r\n if (!validationMessageKey || validationMessageKey.trim().length == 0)\r\n validationMessageKey = defaultValidationMessageKey;\r\n return BERRY.getText(validationMessageKey, 'Contacts_js');\r\n }\r\n return null;\r\n }\r\n\r\n ShowDesign = true;\r\n\r\n UserImagePath = BERRY.hostName + \"App_Data/defaultIndividual.jpg\";\r\n\r\n defaultComboBoxServerDatasourceOptions: IComboboxServerDatasourceOptions = {\r\n enabled: true\r\n };\r\n\r\n defaultComboBoxServerSearchDatasourceOptions: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n searchField: \"keyword\"\r\n };\r\n\r\n defaultAutocompleteOptions: IComboboxOptions = {\r\n dataTextField: \"Title\",\r\n dataValueField: \"Id\",\r\n allowFreeText: true\r\n };\r\n\r\n defaultDropdownlistOptions: IComboboxOptions = {\r\n allowSearch: false\r\n };\r\n\r\n defaultCountriesAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.defaultComboBoxServerDatasourceOptions,\r\n {\r\n url: BERRY.hostName + \"api/contacts/lookups/autocompletecountries\"\r\n }\r\n ),\r\n allowFreeText: false\r\n }\r\n );\r\n defaultStatesAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.defaultComboBoxServerDatasourceOptions,\r\n {\r\n url: BERRY.hostName + \"api/contacts/lookups/autocompletestates\"\r\n }\r\n ),\r\n allowFreeText: false\r\n }\r\n );\r\n defaultCitiesAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.defaultComboBoxServerDatasourceOptions,\r\n {\r\n url: BERRY.hostName + \"api/contacts/lookups/autocompletecities\"\r\n }\r\n ),\r\n allowFreeText: false,\r\n autoBind: false\r\n }\r\n );\r\n defaultExactCitiesAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.defaultComboBoxServerDatasourceOptions,\r\n {\r\n url: BERRY.hostName + \"api/contacts/lookups/GetExactAutocompleteCities\"\r\n }\r\n ),\r\n allowFreeText: false,\r\n autoBind: false\r\n }\r\n );\r\n}\r\n","import { Guid } from \"guid-typescript\";\r\nimport { IContactItem } from \"../../comps/contacts-dtos\";\r\n\r\nexport class IndividualAuthenticationAccessDto {\r\n Id?: number = 0;\r\n TempId: number;\r\n IndividualId: number = 0;\r\n DisplayName: string = \"\";\r\n FullName: string = \"\";\r\n IsLoginUser: boolean = false;\r\n IndividualEmail: string = \"\";\r\n IndividualUserName: string = \"\";\r\n ExternalUserId: Guid;\r\n IsExternalUser: boolean = false;\r\n AccessStartDate: Date;\r\n AccessEndDate: Date;\r\n LinkedItemID: string;\r\n AuthenticationReason: AuthenticationReasonEnum;\r\n EntityId: string = \"\";\r\n CurrentTemplateRoleID: number = 0;\r\n PrevTemplateRoleID: number = 0;\r\n Individual: IContactItem;\r\n ScheduleTemplateId: number = 0;\r\n ScheduleTeamTypeId: number = 0;\r\n stillAsExternalInCreation: boolean = false;\r\n UserId?: string;\r\n ScheduleTemplateRoles?: string;\r\n Position: string;\r\n}\r\n\r\n\r\nexport enum AuthenticationReasonEnum {\r\n Schedule = 1,\r\n Committee = 2,\r\n ScheduleTemplate = 3\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { IndividualAuthenticationAccessDto } from \"./individual-authentication-access-dto\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { Observable } from \"rxjs\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class IndividualAuthenticationAccessSvc extends BaseService {\r\n\r\n constructor(http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n baseURL = BERRY.hostName + \"api/contacts/AuthenticationAccess/\";\r\n\r\n createNewIndividualAccess(newAccess: IndividualAuthenticationAccessDto[]): Observable {\r\n return super.post(this.baseURL + \"create\", newAccess);\r\n }\r\n\r\n confirmEmailIndividualAccess(newAccess: IndividualAuthenticationAccessDto): Observable {\r\n\r\n return super.post(this.baseURL + \"confirmEmail\", newAccess);\r\n }\r\n\r\n confirmAllEmailIndividualAccess(newAccess: IndividualAuthenticationAccessDto): Observable {\r\n\r\n return super.post(this.baseURL + \"confirmAllEmail\", newAccess);\r\n }\r\n\r\n generateExternalUsersInformation(newAccess: IndividualAuthenticationAccessDto): Observable {\r\n return super.post(this.baseURL + 'generateExternalUsersInformation', newAccess);\r\n }\r\n ExportPasswords(memberId: any): Observable {\r\n return super.post(this.baseURL + 'ExportPasswords', memberId);\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
\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 \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
\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 \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 {{individuaFulllName}}\r\n \r\n
\r\n
","import {\r\n Component,\r\n ViewChild,\r\n Output,\r\n EventEmitter\r\n} from \"@angular/core\";\r\nimport { Router, ActivatedRoute } from \"@angular/router\";\r\nimport { IGlobalSettings } from \"./../../_common/models/IGlobalSettings\";\r\nimport { DomSanitizer } from \"@angular/platform-browser\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { LocalStorage, LocalStorageService } from \"ngx-webstorage\";\r\nimport { IComboboxOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { BaseCmp } from \"../../_common/components/BaseComponent\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { LookupHelpers } from \"../../Lookups/LookupHelpers\";\r\nimport {\r\n GenderEnum,\r\n ReligionEnum,\r\n IndividualQuickEntryModel,\r\n IIndividualQuickEntryResult,\r\n IndividualValidationModel\r\n} from \"../models/individual-dtos\";\r\nimport { CountryAutoCompleteDto } from \"../models/contacts-info-dtos\";\r\nimport {\r\n MessagePromise,\r\n MessagingService\r\n} from \"src/app/_common/services/messaging-service\";\r\nimport { IndividualSVC } from \"./individuals-svc\";\r\nimport { ContactsHelpers } from \"../helpers\";\r\nimport { DialogManager } from \"src/app/_common/services/dialog-manager\";\r\nimport { PopupComponent, IPopup } from \"src/app/_common/components/popup/popup-component\";\r\nimport { generalSettingsSvc } from \"src/app/berry/correspondences/manage/generalSettings/general-settings-svc\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"contacts-individual-quick-entry\",\r\n templateUrl: \"./individual-quick-entry.html\"\r\n})\r\nexport class IndividualQuickEntryCmp extends BaseCmp {\r\n\r\n isSubscribed: boolean = true;\r\n urlChanged: boolean = false;\r\n _positionFieldEnabled: boolean = false;\r\n clientName: string = BERRY.clientName;\r\n genderTypes = GenderEnum;\r\n saveActions = SaveActionEnum;\r\n religionTypes = ReligionEnum;\r\n\r\n datePickerOptions = {\r\n maxDate: 0\r\n };\r\n\r\n @ViewChild(\"IndividualQuickEntryModal\",{static:true})\r\n public _modalView: PopupComponent;\r\n popopOption: IPopup = {\r\n actions: [\r\n { text: this.getText(\"cancel\", \"Contacts_General\"), type: 'close', event: this.close.bind(this) },\r\n { text: this.getText(\"save\", \"Contacts_General\"), type: 'submit', event: this.save.bind(this) },\r\n ],\r\n dirtyFormCheck: () => true,\r\n\r\n mode: 'small',\r\n title: this.getText(\"quick_entry_individual\", \"Individuals_QuickEntryNg\")\r\n }\r\n visibleFileds: IndividualQuickEntryFields;\r\n @Output() onClose = new EventEmitter();\r\n\r\n Ar: string = BERRY.isEn ? \"En\" : \"Ar\";\r\n En: string = BERRY.isEn ? \"Ar\" : \"En\";\r\n ar: string = BERRY.isEn ? \"en\" : \"ar\";\r\n en: string = BERRY.isEn ? \"ar\" : \"en\";\r\n individualId: number;\r\n individuaFulllName: string;\r\n individualInfo = new IndividualValidationModel();\r\n model = new IndividualEntryModel();\r\n selectedCountry: CountryAutoCompleteDto = null;\r\n onEndPromise: MessagePromise;\r\n saveDefaultOrganization: boolean;\r\n errors: string;\r\n organizationID: string;\r\n saveAction = SaveActionEnum.Close;\r\n Countries: CountryAutoCompleteDto[];\r\n isViewChild: boolean = false;\r\n isProclamee: any = false;\r\n isHistoryBack: any = true;\r\n\r\n constructor(\r\n public service: IndividualSVC,\r\n public readonly route: ActivatedRoute,\r\n public readonly router: Router,\r\n public readonly sanitizer: DomSanitizer,\r\n public readonly localSt: LocalStorageService,\r\n public readonly toaster: ToastrService,\r\n public readonly lookuphelpers: LookupHelpers,\r\n public readonly helpers: ContactsHelpers,\r\n public readonly msgs: MessagingService,\r\n public readonly dialogs: DialogManager,\r\n private generalSettingSvc: generalSettingsSvc,\r\n ) {\r\n super();\r\n this.visibleFileds = new IndividualQuickEntryFields();\r\n this.scrollOffset = document.documentElement.scrollTop;\r\n if (!this.visibleFileds || !this.visibleFileds.otherlang) {\r\n this.visibleFileds = new IndividualQuickEntryFields();\r\n if (this.clientName == 'Nazaha') {\r\n this.visibleFileds.affixes.value = false;\r\n }\r\n }\r\n\r\n this.generalSettingSvc\r\n .GetValue('AddPositionInQuickContactCreate', 'AddPositionInQuickContactCreateEnabled', 'false')\r\n .subscribe(data => {\r\n if(data == 'true')\r\n this._positionFieldEnabled = true;\r\n });\r\n }\r\n @ViewChild('duplicatePersonPopUp') duplicatePersonPopUp: PopupComponent;\r\n duplicatePersonPopUpOptions: IPopup = {\r\n mode: 'small',\r\n title: this.getText('Duplicate', 'DuplicateIndividual'),\r\n actions: [\r\n {\r\n text: this.getText('No', '_common'), type: 'close'\r\n },\r\n {\r\n text: this.getText('Yes', '_Common'), type: 'submit', event: this.doSubmit.bind(this)\r\n }\r\n ],\r\n }\r\n\r\n showRecPopup() {\r\n this.duplicatePersonPopUp.open();\r\n }\r\n ngSuperOnInit() {\r\n\r\n const me = this;\r\n //this.service.data.pipe(takeWhile(() => this.isSubscribed)).subscribe(data => {\r\n // if (data != null)\r\n // this.service.individualAdded = data;\r\n //});\r\n me.urlChanged = false;\r\n me.router.routerState.root.queryParams\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(() => {\r\n if (!me.isViewChild) {\r\n me.show();\r\n }\r\n });\r\n\r\n me.route.queryParams\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe((queryParams: any) => {\r\n\r\n me.reset();\r\n\r\n let ParentId = queryParams['OrgId'];\r\n let individualName = queryParams['IndvName'];\r\n let NationalIdentitiy = queryParams['NationalIdentitiy'];\r\n let _isProclamee = queryParams['IsProclamee'];\r\n if (_isProclamee != undefined)\r\n me.isProclamee = _isProclamee;\r\n\r\n\r\n me.setParentAndNameForIndividule(ParentId, individualName, NationalIdentitiy);\r\n });\r\n\r\n // This is used to close all popups/dropdowns when the container\r\n // This section is used to fix issue #6897\r\n $(\r\n \"contacts-individual-quick-entry > div[aria-labelledby=IndividualQuickEntryModalLabel]\"\r\n ).scroll(function () {\r\n $(document.body)\r\n .find(\"[data-role=popup]\")\r\n .kendoPopup(\"close\");\r\n });\r\n }\r\n\r\n ngSuperAfterViewInit() {\r\n\r\n }\r\n\r\n setParentAndNameForIndividule(ParentId, individualName, NationalIdentitiy = null) {\r\n if (ParentId) {\r\n this.organizationID = ParentId;\r\n this.model.organizationID = ParentId;\r\n this.saveDefaultOrganization = true;\r\n } else {\r\n this.saveDefaultOrganization = false;\r\n }\r\n if (individualName) {\r\n let names = individualName.trim()\r\n .split(\" \")\r\n .map(n => n.trim())\r\n .filter(n => n.length > 0);\r\n if (names.length > 0) {\r\n let finalnames: Array = [];\r\n\r\n //set all names except the last name\r\n for (let i = 0; i < names.length - 1; i++) {\r\n finalnames[i] = names[i];\r\n }\r\n if (names.length === 1) {\r\n finalnames[0] = names[0];\r\n } else if (names.length > 5) {\r\n finalnames[5] = names.slice(5).join(\" \");\r\n } else {\r\n finalnames[5] = names[names.length - 1];\r\n }\r\n\r\n if (BERRY.isEn) {\r\n this.model.FirstNameEn = finalnames[0];\r\n this.model.SecondNameEn = finalnames[1];\r\n this.model.ThirdNameEn = finalnames[2];\r\n this.model.FourthNameEn = finalnames[3];\r\n this.model.FifthNameEn = finalnames[4];\r\n this.model.LastNameEn = finalnames[5];\r\n } else {\r\n this.model.FirstNameAr = finalnames[0];\r\n this.model.SecondNameAr = finalnames[1];\r\n this.model.ThirdNameAr = finalnames[2];\r\n this.model.FourthNameAr = finalnames[3];\r\n this.model.FifthNameAr = finalnames[4];\r\n this.model.LastNameAr = finalnames[5];\r\n }\r\n }\r\n }\r\n\r\n if (NationalIdentitiy && NationalIdentitiy != \"0\") {\r\n this.model.NationalIdentitiy = NationalIdentitiy;\r\n }\r\n else {\r\n this.model.NationalIdentitiy = null;\r\n }\r\n\r\n }\r\n scrollOffset: number = 0;\r\n private show() {\r\n try {\r\n document.documentElement.scroll(0, this.scrollOffset)\r\n\r\n } catch (error) {\r\n\r\n }\r\n\r\n this._modalView.open();\r\n\r\n }\r\n\r\n showfromLazyLoadedModel(ParentId, individualName) {\r\n let me = this;\r\n\r\n\r\n\r\n this.show();\r\n me.setParentAndNameForIndividule(ParentId, individualName);\r\n }\r\n\r\n\r\n close() {\r\n\r\n\r\n if (this.onEndPromise && this.onEndPromise.reject) {\r\n this.onEndPromise.reject(\"canceled\");\r\n }\r\n\r\n if (!this.isViewChild && !this.urlChanged && this.isHistoryBack) {\r\n history.back();\r\n }\r\n this.onClose.emit(true);\r\n\r\n this.reset();\r\n\r\n if((document as any).onClosePopup) {\r\n (document as any).onClosePopup()\r\n }\r\n\r\n }\r\n\r\n reset() {\r\n this.errors = null;\r\n this.model = new IndividualEntryModel();\r\n if (BERRY.appSettings.contacts) {\r\n this.model.NationalityCountryId =\r\n BERRY.appSettings.contacts.DefaultCountryId;\r\n }\r\n\r\n this.onEndPromise = null;\r\n setTimeout(() => {\r\n try {\r\n document.documentElement.scroll(0, this.scrollOffset)\r\n\r\n } catch (error) {\r\n\r\n }\r\n\r\n }, 175);\r\n }\r\n\r\n\r\n clearError() {\r\n this.errors = null;\r\n }\r\n\r\n savePopover(event, field: string) {\r\n this.visibleFileds[field].value = event.currentTarget.checked;\r\n\r\n this.localSt.store(\"IndividualQuickEntryFields\", this.visibleFileds);\r\n\r\n switch (field) {\r\n case \"otherlang\":\r\n if (!this.visibleFileds.otherlang.value) {\r\n if (BERRY.isEn) {\r\n this.model.FirstNameAr = null;\r\n this.model.SecondNameAr = null;\r\n this.model.ThirdNameAr = null;\r\n this.model.FourthNameAr = null;\r\n this.model.FifthNameAr = null;\r\n this.model.LastNameAr = null;\r\n\r\n this.model.PrefixAr = null;\r\n this.model.Prefix2Ar = null;\r\n this.model.SuffixAr = null;\r\n this.model.Suffix2Ar = null;\r\n\r\n this.model.PrefixArId = null;\r\n this.model.Prefix2ArId = null;\r\n this.model.SuffixArId = null;\r\n this.model.Suffix2ArId = null;\r\n } else {\r\n this.model.FirstNameEn = null;\r\n this.model.SecondNameEn = null;\r\n this.model.ThirdNameEn = null;\r\n this.model.FourthNameEn = null;\r\n this.model.FifthNameEn = null;\r\n this.model.LastNameEn = null;\r\n\r\n this.model.PrefixEn = null;\r\n this.model.Prefix2En = null;\r\n this.model.SuffixEn = null;\r\n this.model.Suffix2En = null;\r\n\r\n this.model.PrefixEnId = null;\r\n this.model.Prefix2EnId = null;\r\n this.model.SuffixEnId = null;\r\n this.model.Suffix2EnId = null;\r\n }\r\n }\r\n break;\r\n case \"affixes\":\r\n if (!this.visibleFileds.affixes.value) {\r\n this.model.PrefixAr = null;\r\n this.model.PrefixEn = null;\r\n this.model.SuffixAr = null;\r\n this.model.SuffixEn = null;\r\n\r\n this.model.PrefixArId = null;\r\n this.model.PrefixEnId = null;\r\n this.model.SuffixArId = null;\r\n this.model.SuffixEnId = null;\r\n this.visibleFileds.extraAffixes.value = false;\r\n }\r\n break;\r\n case \"extraAffixes\":\r\n if (!this.visibleFileds.extraAffixes.value) {\r\n this.model.Prefix2Ar = null;\r\n this.model.Prefix2En = null;\r\n this.model.Suffix2Ar = null;\r\n this.model.Suffix2En = null;\r\n\r\n this.model.Prefix2ArId = null;\r\n this.model.Prefix2EnId = null;\r\n this.model.Suffix2ArId = null;\r\n this.model.Suffix2EnId = null;\r\n }\r\n break;\r\n case \"extraNames\":\r\n if (!this.visibleFileds.extraNames.value) {\r\n this.model.FourthNameAr = null;\r\n this.model.FifthNameAr = null;\r\n\r\n this.model.FourthNameEn = null;\r\n this.model.FifthNameEn = null;\r\n }\r\n break;\r\n case \"phone\":\r\n if (!this.visibleFileds.phone.value) {\r\n this.model.PhoneNumber = null;\r\n }\r\n break;\r\n case \"email\":\r\n if (!this.visibleFileds.email.value) {\r\n this.model.Email = null;\r\n }\r\n break;\r\n case \"notes\":\r\n if (!this.visibleFileds.notes.value) {\r\n this.model.Notes = null;\r\n }\r\n break;\r\n case \"religion\":\r\n if (!this.visibleFileds.religion.value) {\r\n this.model.Religion = ReligionEnum.Islam;\r\n }\r\n case \"fax\":\r\n if (!this.visibleFileds.fax.value) {\r\n this.model.Fax = null;\r\n }\r\n break;\r\n case \"nationality\":\r\n if (!this.visibleFileds.nationality.value) {\r\n this.model.NationalIdentitiy = null;\r\n }\r\n break;\r\n case \"land_lines\":\r\n if (!this.visibleFileds.land_lines.value) {\r\n this.model.Landline = null;\r\n }\r\n break;\r\n }\r\n }\r\n\r\n fillIndividualInfo(model) {\r\n this.individualInfo.FirstNameAr = model.FirstNameAr;\r\n this.individualInfo.FirstNameEn = model.FirstNameEn;\r\n this.individualInfo.SecondNameAr = model.SecondNameAr;\r\n this.individualInfo.SecondNameEn = model.SecondNameEn;\r\n this.individualInfo.ThirdNameAr = model.ThirdNameAr;\r\n this.individualInfo.ThirdNameEn = model.ThirdNameEn;\r\n this.individualInfo.LastNameAr = model.LastNameAr;\r\n this.individualInfo.LastNameEn = model.LastNameEn;\r\n this.individualInfo.PhoneNumber = model.PhoneNumber;\r\n this.individualInfo.NationalIdentitiy = model.NationalIdentitiy;\r\n }\r\n @Output(\"onIndividualCreate\") onIndividualCreate: EventEmitter = new EventEmitter();\r\n save() {\r\n const me = this;\r\n me.model.isProclamee = me.isProclamee;\r\n this.fillIndividualInfo(this.model);\r\n\r\n if (!this.validate())\r\n return;\r\n this.service.checkDuplicationIndividualInfo(this.individualInfo).pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(res => {\r\n if (res) {\r\n this.individualId = res.Id;\r\n this.individuaFulllName = res.Name;\r\n this.showRecPopup();\r\n }\r\n else\r\n this.doSubmit()\r\n });\r\n }\r\n doSubmit() {\r\n var me = this;\r\n this.service\r\n .createIndividual(this.model)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n res => {\r\n\r\n if (res.ExceptionMessage != null && res.ExceptionMessage != \"\") {\r\n this.toaster.warning(res.ExceptionMessage);\r\n this.errors = res.ExceptionMessage;\r\n }\r\n else {\r\n this.toaster.success(BERRY.loc.common.successMessage);\r\n }\r\n\r\n if (res.Id > 0) {\r\n var me = this;\r\n me.msgs.publish(\"IndividualCreate\", res);\r\n if (this.onEndPromise) {\r\n if (this.onEndPromise.resolve) {\r\n const result = res as IIndividualQuickEntryResult;\r\n result.DefaultEmail = this.model.Email;\r\n this.onEndPromise.resolve(result);\r\n\r\n if (me.saveDefaultOrganization)\r\n this.service\r\n .saveDefaultIndividualPosition(res.Id, me.organizationID)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n o => { },\r\n error => {\r\n this.errors = \"Error\";\r\n }\r\n );\r\n }\r\n // this.close();\r\n this._modalView.close();\r\n }\r\n else if (me.saveDefaultOrganization) {\r\n this.service\r\n .saveDefaultIndividualPosition(res.Id, me.organizationID)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n o => {\r\n me.msgs.publish(\"NewIndvContactCreated\", res);\r\n //this.close();\r\n this._modalView.close();\r\n },\r\n error => {\r\n this.errors = \"Error\";\r\n }\r\n );\r\n\r\n }\r\n else {\r\n switch (this.saveAction) {\r\n case SaveActionEnum.Close:\r\n // this.close();\r\n this._modalView.close();\r\n break;\r\n case SaveActionEnum.Details:\r\n me.urlChanged = true;\r\n me.router.navigateByUrl(\"/contacts/individuals/\" + res.Id);\r\n // this.close();\r\n this._modalView.close();\r\n break;\r\n case SaveActionEnum.New:\r\n this.reset();\r\n break;\r\n }\r\n }\r\n }\r\n },\r\n error => {\r\n this.errors = \"\";\r\n }\r\n );\r\n }\r\n validate() {\r\n if (!BERRY.isEn) {\r\n if ((this.model.FirstNameAr || \"\").trim().length === 0 ||\r\n ((this.model.SecondNameAr || \"\") + (this.model.ThirdNameAr || \"\") + (this.model.FourthNameAr || \"\") +\r\n (this.model.FifthNameEn || \"\") + (this.model.LastNameAr || \"\")).trim().length === 0 ) {\r\n this.errors = BERRY.getText(\"enter_ind_first_name_rule\", 'Contacts_js');\r\n this.toaster.warning(this.errors);\r\n return false;\r\n }\r\n }\r\n else {\r\n if ((this.model.FirstNameEn || \"\").trim().length === 0 ||\r\n ((this.model.SecondNameEn || \"\") + (this.model.ThirdNameEn || \"\") + (this.model.FourthNameEn || \"\") +\r\n (this.model.FifthNameEn || \"\") + (this.model.LastNameEn || \"\")).trim().length === 0) {\r\n this.errors = BERRY.getText(\"enter_ind_first_name_rule\", 'Contacts_js');\r\n this.toaster.warning(this.errors);\r\n return false;\r\n }\r\n }\r\n\r\n if(BERRY.isEn){\r\n if (this.positionFieldEnabled &&\r\n ((this.model.LastNameEn == null || this.model.LastNameEn == '') ||\r\n (this.model.PhoneNumber == null || this.model.PhoneNumber == '') ||\r\n (this.model.PositionEnId == null || this.model.PositionEnId == 0))) {\r\n this.errors = this.getText('FormsValidationMessage', 'Common');\r\n this.toaster.warning(this.errors);\r\n return false;\r\n }\r\n }\r\n else {\r\n if (this.positionFieldEnabled &&\r\n ((this.model.LastNameAr == null || this.model.LastNameAr == '') ||\r\n (this.model.PhoneNumber == null || this.model.PhoneNumber == '') ||\r\n (this.model.PositionArId == null || this.model.PositionArId == 0))) {\r\n this.errors = this.getText('FormsValidationMessage', 'Common');\r\n this.toaster.warning(this.errors);\r\n return false;\r\n }\r\n }\r\n\r\n if (this.visibleFileds.phone.value && this.model.PhoneNumber) {\r\n let regexPattern = this.selectedCountry\r\n ? this.selectedCountry.MobileValidationRegex\r\n : null;\r\n let validationMessageKey = this.selectedCountry\r\n ? this.selectedCountry.MobileValidationMessage\r\n : null;\r\n\r\n let error = this.helpers.checkRegEx(\r\n this.model.PhoneNumber,\r\n regexPattern,\r\n ContactsHelpers.MOBILE_REGEX,\r\n validationMessageKey,\r\n \"enter_valid_mobile\"\r\n );\r\n if (error) {\r\n this.errors = error;\r\n this.toaster.warning(this.errors);\r\n return false;\r\n }\r\n }\r\n if (this.visibleFileds.fax.value && this.model.Fax) {\r\n let regexPattern = this.selectedCountry\r\n ? this.selectedCountry.FaxValidationRegex\r\n : null;\r\n let validationMessageKey = this.selectedCountry\r\n ? this.selectedCountry.FaxValidationMessage\r\n : null;\r\n\r\n let error = this.helpers.checkRegEx(\r\n this.model.Fax,\r\n regexPattern,\r\n ContactsHelpers.FAX_REGEX,\r\n validationMessageKey,\r\n \"enter_valid_fax\"\r\n );\r\n if (error) {\r\n this.errors = error;\r\n this.toaster.warning(this.errors);\r\n return false;\r\n }\r\n }\r\n\r\n if (this.visibleFileds.land_lines.value && this.model.Landline) {\r\n let regexPattern = this.selectedCountry\r\n ? this.selectedCountry.PhoneValidationRegex\r\n : null;\r\n let validationMessageKey = this.selectedCountry\r\n ? this.selectedCountry.PhoneValidationMessage\r\n : null;\r\n\r\n let error = this.helpers.checkRegEx(\r\n this.model.Landline,\r\n regexPattern,\r\n ContactsHelpers.PHONE_REGEX,\r\n validationMessageKey,\r\n \"enter_valid_phone\"\r\n );\r\n if (error) {\r\n this.errors = error;\r\n this.toaster.warning(this.errors);\r\n return false;\r\n }\r\n }\r\n\r\n\r\n\r\n if (\r\n this.visibleFileds.email.value &&\r\n this.model.Email &&\r\n !this.model.Email.match(ContactsHelpers.EMAIL_REGEX)\r\n ) {\r\n this.errors = BERRY.getText(\"enter_valid_email\", 'Contacts_js');\r\n this.toaster.warning(this.errors);\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n get isEn() {\r\n return BERRY.isEn;\r\n }\r\n\r\n get positionFieldEnabled(){\r\n return this._positionFieldEnabled;\r\n }\r\n get arLangPrefixAutocompleteOptions() {\r\n return BERRY.isEn\r\n ? this.enPrefixAutocompleteOptions\r\n : this.arPrefixAutocompleteOptions;\r\n }\r\n get arLangSuffixAutocompleteOptions() {\r\n return BERRY.isEn\r\n ? this.enSuffixAutocompleteOptions\r\n : this.arSuffixAutocompleteOptions;\r\n }\r\n\r\n get enLangPrefixAutocompleteOptions() {\r\n return BERRY.isEn\r\n ? this.arPrefixAutocompleteOptions\r\n : this.enPrefixAutocompleteOptions;\r\n }\r\n get enLangSuffixAutocompleteOptions() {\r\n return BERRY.isEn\r\n ? this.arSuffixAutocompleteOptions\r\n : this.enSuffixAutocompleteOptions;\r\n }\r\n\r\n public arPrefixAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.helpers.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.helpers.defaultComboBoxServerSearchDatasourceOptions,\r\n {\r\n url: BERRY.hostName + \"api/contacts/lookups/autocompletearprefixes\"\r\n }\r\n ),\r\n freeTextMaxLength: 50\r\n }\r\n );\r\n\r\n public arSuffixAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.helpers.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.helpers.defaultComboBoxServerSearchDatasourceOptions,\r\n {\r\n url: BERRY.hostName + \"api/contacts/lookups/autocompletearsuffixes\"\r\n }\r\n ),\r\n freeTextMaxLength: 50\r\n }\r\n );\r\n\r\n public enPrefixAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.helpers.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.helpers.defaultComboBoxServerSearchDatasourceOptions,\r\n {\r\n url: BERRY.hostName + \"api/contacts/lookups/autocompleteenprefixes\"\r\n }\r\n ),\r\n freeTextMaxLength: 50\r\n }\r\n );\r\n\r\n public enSuffixAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.helpers.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.helpers.defaultComboBoxServerSearchDatasourceOptions,\r\n {\r\n url: BERRY.hostName + \"api/contacts/lookups/autocompleteensuffixes\"\r\n }\r\n ),\r\n freeTextMaxLength: 50\r\n }\r\n );\r\n\r\n public nationalityAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.lookuphelpers.defaultCountriesAutocompleteOptions,\r\n {} as IComboboxOptions\r\n );\r\n\r\n religionComboBoxOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.lookuphelpers.defaultDropdownlistOptions,\r\n {} as IComboboxOptions\r\n );\r\n\r\n public arPositionAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.helpers.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.helpers.defaultComboBoxServerSearchDatasourceOptions,\r\n {\r\n url: BERRY.hostName + \"api/contacts/lookups/autocompletearpositions\"\r\n }\r\n ),\r\n freeTextMaxLength: 50\r\n }\r\n );\r\n\r\n public enPositionAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.helpers.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.helpers.defaultComboBoxServerSearchDatasourceOptions,\r\n {\r\n url: BERRY.hostName + \"api/contacts/lookups/autocompleteenositions\"\r\n }\r\n ),\r\n freeTextMaxLength: 50\r\n }\r\n );\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n}\r\n\r\ninterface IVisibleField {\r\n value: boolean;\r\n}\r\n\r\nclass IndividualQuickEntryFields {\r\n constructor() {\r\n this.otherlang = { value: false };\r\n this.position = { value: false };\r\n this.extraNames = { value: false };\r\n this.affixes = { value: true };\r\n this.extraAffixes = { value: false };\r\n this.phone = { value: true };\r\n this.email = { value: true };\r\n this.religion = { value: false };\r\n this.notes = { value: false };\r\n this.fax = { value: true };\r\n this.land_lines = { value: true };\r\n this.nationality = { value: true };\r\n this.subscription_Number = { value: true };\r\n }\r\n\r\n otherlang: IVisibleField;\r\n position: IVisibleField;\r\n extraNames: IVisibleField;\r\n affixes: IVisibleField;\r\n extraAffixes: IVisibleField;\r\n phone: IVisibleField;\r\n email: IVisibleField;\r\n religion: IVisibleField;\r\n notes: IVisibleField;\r\n fax: IVisibleField;\r\n land_lines: IVisibleField;\r\n nationality: IVisibleField;\r\n subscription_Number: IVisibleField;\r\n}\r\n\r\nenum SaveActionEnum {\r\n Close = 1,\r\n Details = 2,\r\n New = 3\r\n}\r\n\r\nclass IndividualEntryModel extends IndividualQuickEntryModel {\r\n constructor() {\r\n super();\r\n this.reset();\r\n }\r\n\r\n reset() {\r\n this.Gender = GenderEnum.Male;\r\n this.Religion = ReligionEnum.Islam;\r\n\r\n this.NationalityCountryId = null;\r\n\r\n this.FirstNameAr = null;\r\n this.FirstNameEn = null;\r\n this.SecondNameAr = null;\r\n this.SecondNameEn = null;\r\n this.ThirdNameAr = null;\r\n this.ThirdNameEn = null;\r\n this.FourthNameAr = null;\r\n this.FourthNameEn = null;\r\n this.FifthNameAr = null;\r\n this.FifthNameEn = null;\r\n this.LastNameAr = null;\r\n this.LastNameEn = null;\r\n\r\n this.PrefixAr = null;\r\n this.PrefixEn = null;\r\n this.Prefix2Ar = null;\r\n this.Prefix2En = null;\r\n this.SuffixAr = null;\r\n this.SuffixEn = null;\r\n this.Suffix2Ar = null;\r\n this.Suffix2En = null;\r\n\r\n this.PrefixArId = null;\r\n this.PrefixEnId = null;\r\n this.Prefix2ArId = null;\r\n this.Prefix2EnId = null;\r\n this.SuffixArId = null;\r\n this.SuffixEnId = null;\r\n this.Suffix2ArId = null;\r\n this.Suffix2EnId = null;\r\n\r\n this.PhoneNumber = null;\r\n this.Email = null;\r\n this.Notes = null;\r\n\r\n this.Fax = null;\r\n this.Landline = null;\r\n this.NationalIdentitiy = null;\r\n this.DateOfBirth = null;\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Observable, Subject, BehaviorSubject, throwError } from \"rxjs\";\r\n\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { Response } from \"@angular/http\";\r\nimport { IGlobalSettings } from \"./../../_common/models/IGlobalSettings\";\r\nimport { AuditTrailLogDto } from \"./../../_common/models/AuditTrailLogDto\";\r\nimport { HttpInterceptor } from \"./../../_common/services/http-interceptor\";\r\nimport {\r\n IIndividualSearchParams,\r\n IndividualRolesDto,\r\n IGetIndividualsListResponse,\r\n IndividualHeaderInfo,\r\n IndividualPersonalInfo,\r\n IndividualPositionInfo,\r\n IndividualQuickEntryModel,\r\n ICreateIndividualResponse,\r\n IndividualContactsInfoDto,\r\n IndividualSavePersonalInfoModel,\r\n IndividualListItemDto,\r\n IndividualValidationModel\r\n} from \"../models/individual-dtos\";\r\nimport { ContactsHelpers } from \"../helpers\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class IndividualSVC {\r\n //shared objects\r\n searchParams = new BehaviorSubject(null);\r\n individualChangedTrigger = new Subject();\r\n public individualRoles: IndividualRolesDto;\r\n ListCachedIndividual: IndividualListItemDto;\r\n selectedInboxId: string;\r\n individualId: number;\r\n individualAuditTrails: AuditTrailLogDto[];\r\n isEmptyPage: boolean = false;\r\n\r\n baseURL = BERRY.hostName + \"api/contacts/individuals\";\r\n\r\n constructor(public http: HttpInterceptor, public helpers: ContactsHelpers) { }\r\n\r\n getIndividualsList(page: number, params: IIndividualSearchParams): Observable {\r\n params = params || {};\r\n let request: Observable = null;\r\n \r\n let body = Object.assign(params, { page: page });\r\n request = this.http.post(`${this.baseURL}/search`, body);\r\n \r\n return request.pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getExportData(IndividualFilter: IIndividualSearchParams, isSearchedApplied: boolean, ExportInfoDto) {\r\n\r\n if(!isSearchedApplied)\r\n IndividualFilter = {\r\n Keyword: '',\r\n Positions: [],\r\n Countries: [],\r\n Orgs: [],\r\n individualClassification: null\r\n }\r\n\r\n let params = {\r\n IndividualFilter: IndividualFilter,\r\n ExportInfoDto: ExportInfoDto\r\n };\r\n\r\n const url = `${this.baseURL}/GenerateReport`;\r\n\r\n return this.http.post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getIndividualHeaderInfo(id: number): Observable {\r\n return this.http.get(this.baseURL + \"/individualheaderinfo/\" + id).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n getIndividualPersonalInfo(id: number): Observable {\r\n return this.http.get(this.baseURL + \"/individualpersonalinfo/\" + id).pipe(\r\n map(res => res),\r\n map(json => {\r\n return json;\r\n }),\r\n catchError(this.handleError)\r\n );\r\n }\r\n getIndividualPositions(id: number): Observable {\r\n return this.http.get(this.baseURL + \"/individualpositions/\" + id).pipe(\r\n map(res => res),\r\n map(json => {\r\n json.forEach(pos => {\r\n if (pos.FromDate) pos.FromDate = new Date(pos.FromDate);\r\n if (pos.ToDate) pos.ToDate = new Date(pos.ToDate);\r\n });\r\n return json;\r\n }),\r\n catchError(this.handleError)\r\n );\r\n }\r\n saveIndividualPosition(\r\n individualId: number,\r\n position: IndividualPositionInfo\r\n ): Observable {\r\n return this.http\r\n .post(this.baseURL + \"/saveindividualposition/\" + individualId, position)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n saveDefaultIndividualPosition(\r\n individualId: number,\r\n linkId: string\r\n ): Observable {\r\n return this.http\r\n .post(\r\n this.baseURL +\r\n \"/savedefaultindividualposition/\" +\r\n individualId +\r\n \"/\" +\r\n linkId,\r\n null\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n deleteIndividualPosition(positionId: number): Observable {\r\n return this.http\r\n .post(this.baseURL + \"/deleteindividualposition/\" + positionId, null)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n deleteIndividualPhoto(individualId: number): Observable {\r\n return this.http\r\n .post(this.baseURL + \"/deletephoto/\" + individualId, null)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n deleteIndividual(individualId: number): Observable {\r\n return this.http\r\n .post(this.baseURL + \"/deleteindividual/\" + individualId, null)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n IsIndividualLinkedToUser(individualId: number): Observable {\r\n return this.http\r\n .get(this.baseURL + \"/IsIndividualLinkedToUser/\" + individualId, null)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n createIndividual(\r\n individual: IndividualQuickEntryModel\r\n ): Observable {\r\n return this.http.post(this.baseURL + \"/create\", individual).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public checkDuplicationIndividualInfo( individual : IndividualValidationModel): Observable \r\n { \r\n var url = this.baseURL + \"/checkDuplicationIndividualInfo\";\r\n return this.http.post(url,individual).pipe(\r\n map(res => res),\r\n catchError(this.handleError));\r\n }\r\n getContactsInfo(id: number): Observable {\r\n return this.http.get(this.baseURL + \"/contactsinfo/\" + id).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n saveContactsInfo(info: IndividualContactsInfoDto): Observable {\r\n var url = this.baseURL + \"/savecontactsinfo\";\r\n\r\n return this.http.post(url, info).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n saveIndividualPersonalInfo(\r\n individual: IndividualSavePersonalInfoModel\r\n ): Observable {\r\n individual.Religion = individual.Religion ? +individual.Religion : individual.Religion;\r\n return this.http\r\n .post(this.baseURL + \"/saveindividualpersonalinfo\", individual)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n AuditTrail(ID: string): Observable {\r\n return this.http\r\n .get(BERRY.hostName + \"AuditTrail/GetAuditTrail?id=\" + ID)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getIndividualRoles(): Observable {\r\n return this.http.get(this.baseURL + \"/GetIndividualRoles\").pipe(\r\n map(res => res),\r\n map(json => {\r\n return json;\r\n }),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n checkIndividualLinkedWithContact(individualId: number): Observable {\r\n return this.http\r\n .get(\r\n this.baseURL + \"/CheckIndividualLinkedWithContact/\" + individualId,\r\n null\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n checkCanIndividualBeEdited(individualId: number): Observable {\r\n return this.http\r\n .get(\r\n this.baseURL + \"/CanIndividualBeEdited/\" + individualId,\r\n null\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public saveEmailIndividual(individualId: number, email: string): Observable {\r\n var baseURLIndividual = this.baseURL + \"/UpdateIndividualEmailInfo/\" + individualId + \"/\" + email;\r\n\r\n return this.http\r\n .post(\r\n baseURLIndividual,\r\n null\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public checkEmailIndividualExistOnUserOrIndv(individualId: number,email: string): Observable {\r\n var baseURLIndividual = this.baseURL + \"/checkEmailIndividualExistOnUser/\" + individualId + \"/\" + email;\r\n\r\n return this.http\r\n .get(\r\n baseURLIndividual,\r\n null\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n ListSharedAttachmnet(individualId: number): Observable {\r\n return this.http\r\n .get(\r\n this.baseURL + \"/ListSharedAttachmnet/\" + individualId,\r\n null\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n\r\n extractData(res: Response) {\r\n let body = res;\r\n return body || {};\r\n }\r\n\r\n handleError(error: any) {\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n return throwError(errMsg);\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { ContactsInfoDto } from \"./contacts-info-dtos\";\r\nimport { UserLiteDto } from \"../individuals/internal/user-lite-dto\";\r\nimport { MessagePromise } from \"src/app/_common/services/messaging-service\";\r\n\r\nexport interface IIndividualSearchParams {\r\n Keyword?: string;\r\n Positions?: Array;\r\n Orgs?: Array;\r\n Countries?: Array;\r\n individualClassification?: number;\r\n}\r\n\r\n@Injectable()\r\nexport class IndividualHeaderInfo {\r\n Id: number;\r\n DisplayNameAr: string;\r\n DisplayNameEn: string;\r\n PrefixAr: string;\r\n PrefixEn: string;\r\n Position: string;\r\n Organization: string;\r\n NationalityCountryIsoCode: string;\r\n NationalityCountry: string;\r\n PrimaryPhone: string;\r\n PrimaryMobile: string;\r\n PrimaryEmail: string;\r\n HasPhoto: boolean;\r\n PhotoVersion: number;\r\n NationalIdentitiy: string;\r\n}\r\n\r\nexport class IndividualListItemDto {\r\n Id: number;\r\n DisplayNameAr: string;\r\n DisplayNameEn: string;\r\n PrefixAr: string;\r\n PrefixEn: string;\r\n NationalityCountryIsoCode: string;\r\n NationalityCountry: string;\r\n Position: string;\r\n Organization: string;\r\n HasPhoto: boolean;\r\n}\r\n\r\nexport interface IGetIndividualsListResponse {\r\n items: IndividualListItemDto[];\r\n total: number;\r\n}\r\n\r\nexport interface IGetUserListResponse {\r\n items: UserLiteDto[];\r\n total: number;\r\n}\r\n\r\nexport class IndividualPositionInfo {\r\n PositionId: number;\r\n PositionArId: number;\r\n PositionAr: string;\r\n PositionEnId: number;\r\n PositionEn: string;\r\n OrganizationId: number;\r\n OrganizationAr: string;\r\n OrganizationEn: string;\r\n OrganizationUnitId: number;\r\n OrganizationUnit: string;\r\n FromDate: Date;\r\n ToDate: Date;\r\n IsPrimary: boolean;\r\n FromDateStr: string;\r\n ToDateStr: string;\r\n CurrentJob: boolean;\r\n IsHrSynced: boolean;\r\n}\r\n\r\nexport interface ICreateIndividualResponse {\r\n Id: number;\r\n DisplayName: string;\r\n DisplayNameAr: string;\r\n DisplayNameEn: string;\r\n ExceptionMessage: string;\r\n}\r\n\r\nexport interface IIndividualQuickEntryResult extends ICreateIndividualResponse {\r\n DefaultEmail: string;\r\n}\r\n\r\nexport interface IAffixModel {\r\n Id: number;\r\n Title: string;\r\n}\r\n\r\nexport enum GenderEnum {\r\n Male = 1,\r\n Female = 2\r\n}\r\n\r\nexport enum ReligionEnum {\r\n Others = 0,\r\n Islam = 1\r\n}\r\n\r\nexport abstract class IndividualBaseInfo {\r\n NationalityCountryId: number;\r\n Religion: ReligionEnum;\r\n Gender: GenderEnum;\r\n Notes: string;\r\n\r\n FirstNameAr: string;\r\n FirstNameEn: string;\r\n SecondNameAr: string;\r\n SecondNameEn: string;\r\n ThirdNameAr: string;\r\n ThirdNameEn: string;\r\n FourthNameAr: string;\r\n FourthNameEn: string;\r\n FifthNameAr: string;\r\n FifthNameEn: string;\r\n LastNameAr: string;\r\n LastNameEn: string;\r\n\r\n PrefixAr: string;\r\n PrefixArId: number;\r\n PrefixEn: string;\r\n PrefixEnId: number;\r\n Prefix2Ar: string;\r\n Prefix2ArId: number;\r\n Prefix2En: string;\r\n Prefix2EnId: number;\r\n SuffixAr: string;\r\n SuffixArId: number;\r\n SuffixEn: string;\r\n SuffixEnId: number;\r\n Suffix2Ar: string;\r\n Suffix2ArId: number;\r\n Suffix2En: string;\r\n Suffix2EnId: number;\r\n\r\n organizationID: string;\r\n Landline: string;\r\n Fax: string;\r\n NationalIdentitiy: string;\r\n isProclamee?: boolean = null;\r\n DateOfBirth?: string;\r\n IsHrSynced: boolean;\r\n \r\n constructor() {\r\n this.isProclamee = null;\r\n }\r\n}\r\n\r\nexport class IndividualQuickEntryModel extends IndividualBaseInfo {\r\n PhoneNumber: string;\r\n Email: string;\r\n\r\n PositionId: number;\r\n PositionArId: number;\r\n PositionAr: string;\r\n PositionEnId: number;\r\n PositionEn: string;\r\n}\r\nexport class IndividualValidationModel{\r\n FirstNameAr: string;\r\n FirstNameEn: string;\r\n SecondNameAr: string;\r\n SecondNameEn: string;\r\n ThirdNameAr: string;\r\n ThirdNameEn: string;\r\n LastNameAr: string;\r\n LastNameEn: string;\r\n PhoneNumber: string;\r\n NationalIdentitiy: string;\r\n}\r\n\r\nexport class IndividualSavePersonalInfoModel extends IndividualBaseInfo {\r\n IndividualId: number;\r\n BirthDate: string;\r\n}\r\n\r\nexport class IndividualPersonalInfo extends IndividualSavePersonalInfoModel {\r\n Nationality: string;\r\n}\r\n\r\nexport interface IndividualContactsInfoDto extends ContactsInfoDto {\r\n IndividualId: number;\r\n}\r\n\r\nexport class QuickIndividualParams extends MessagePromise {\r\n Name: string;\r\n organizationID: string;\r\n}\r\n\r\nexport class IndividualRolesDto {\r\n ReviewAndEditContacts: boolean;\r\n ViewContactsList: boolean;\r\n ViewContactDetails: boolean;\r\n AddContact: boolean;\r\n EditContact: boolean;\r\n DeleteContact: boolean;\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { ContactsInfoDto } from \"./contacts-info-dtos\";\r\nimport { MessagePromise } from \"src/app/_common/services/messaging-service\";\r\n\r\n@Injectable()\r\nexport class OrganizationHeaderInfo {\r\n Id: number;\r\n DisplayNameAr: string;\r\n DisplayNameEn: string;\r\n Type: OrganizationTypeEnum;\r\n CountryCode: string; \r\n Country: string;\r\n PrimaryPhone: string;\r\n PrimaryMobile: string;\r\n PrimaryEmail: string;\r\n PrimaryWebsite: string;\r\n HasPhoto: boolean;\r\n PhotoVersion: number;\r\n IsChild: boolean;\r\n IsBranch: boolean;\r\n IsActive: boolean;\r\n ParentName: string;\r\n}\r\n\r\nexport class OrganizationEmployeeItemDto {\r\n IndividualId: number;\r\n Name: string;\r\n Position: string;\r\n Unit: string;\r\n HasPhoto: boolean;\r\n positionId: number;\r\n}\r\n\r\nexport interface IOrganizationSearchParams {\r\n Keyword?: string;\r\n Countries?: Array;\r\n Type?: OrganizationTypeEnum;\r\n IsActive?: boolean;\r\n}\r\n\r\nexport enum OrganizationTypeEnum {\r\n Unspecified = 0,\r\n Public = 1,\r\n Private = 2,\r\n Courts = 3\r\n}\r\n\r\nexport class OrganizationListItemDto {\r\n Id: number;\r\n DisplayNameAr: string;\r\n DisplayNameEn: string;\r\n Type: OrganizationTypeEnum;\r\n Country: string;\r\n CountryCode: string;\r\n HasPhoto: boolean;\r\n IsBranch: boolean;\r\n PrimaryPhone: string;\r\n PrimaryMobile: string;\r\n PrimaryEmail: string;\r\n PrimaryAddress: string;\r\n ParentName: string;\r\n ParentId: string;\r\n IsChild: boolean;\r\n}\r\n\r\nexport interface IGetOrganizationsListResponse {\r\n items: OrganizationListItemDto[];\r\n total: number;\r\n}\r\n\r\nexport interface ICreateOrganizationResponse {\r\n Id: number;\r\n DisplayName: string;\r\n DisplayNameAr: string;\r\n DisplayNameEn: string;\r\n}\r\n\r\nexport abstract class OrganizationQuickEntryModel {\r\n NationalityCountryId: number;\r\n CityId: number;\r\n CountryId: number;\r\n StateId: number;\r\n NameAr: string;\r\n NameEn: string;\r\n Website: string;\r\n Type: OrganizationTypeEnum;\r\n ParentOrganization: string;\r\n ParentOrganizationId: number;\r\n OrganizationSector: string;\r\n OrganizationSectorId: number;\r\n CreateExterenlConact: boolean;\r\n HeadOfExternalEntityName: string;\r\n HeadOfExternalEntityId: number;\r\n IsBranch: boolean;\r\n NationalCode: string; \r\n\r\n}\r\n\r\nexport interface OrganizationPersonalInfo {\r\n OrganizationId: number;\r\n NationalityCountryId?: number;\r\n Nationality: string;\r\n NameAr: string;\r\n NameEn: string;\r\n Type: OrganizationTypeEnum;\r\n HeadOfExternalEntityName: string;\r\n HeadOfExternalEntityId?: number;\r\n Addresses: Addresses;\r\n NationalCode: string; \r\n IsEGov: boolean;\r\n ElectronicTooltipMsg: string;\r\n IsChild: boolean;\r\n IsBranch: boolean;\r\n Sector: Sector;\r\n OrganizationSector: string;\r\n OrganizationSectorId?: number;\r\n HeadOfExternalEntityUserId?: string;\r\n}\r\n\r\nexport interface OrganizationContactsInfoDto extends ContactsInfoDto {\r\n OrganizationId: number;\r\n}\r\n\r\nexport class QuickOrganizationParams extends MessagePromise {\r\n Name: string;\r\n CreateExterenlConact: boolean;\r\n}\r\n\r\nexport class QuickOrganizationParentParams extends MessagePromise {\r\n ParentOrg: { Id: number; Name: string };\r\n}\r\n\r\nexport class OrganizationRolesDto {\r\n ReviewAndEditOrganizations: boolean;\r\n ViewOrganizationsList: boolean;\r\n ViewOrganizationDetails: boolean;\r\n AddOrganization: boolean;\r\n EditOrganization: boolean;\r\n DeleteOrganization: boolean;\r\n}\r\n\r\nexport class Sector {\r\n Id: number;\r\n Title: string;\r\n}\r\nexport class Addresses {\r\n CityNameAr: string;\r\n CityNameEn: string;\r\n CountryNameAr: string;\r\n CountryNameEn: string;\r\n StateNameAr: string;\r\n StateNameEn: string;\r\n CityId?: number;\r\n StateId?: number;\r\n CountryId?: number;\r\n}\r\n\r\n\r\nexport class OrganizationBudgetDto {\r\n Id: number = 0;\r\n OrganizationId: number = null;\r\n Year: number = null;\r\n BudgetValue: number = null;\r\n}\r\n\r\nexport class OrganizationBudgetRecordDto {\r\n Id: number = 0;\r\n OrganizationId: number = null;\r\n Year: number = null;\r\n Budget: number = null;\r\n TotalBudget: number = null;\r\n TotalBranchesBudget: number = null;\r\n BranchesCount: number = null;\r\n Currency: string = '';\r\n EmployeesCount: number = null;\r\n OrganizationBranchesBudgets: Array = null;\r\n OrganizationPredefinedRoles: Array = null;\r\n}\r\n\r\nexport class OrganizationBranchesBudgetDto {\r\n Id: number = 0;\r\n OrganizationId: number = null;\r\n Year: number = null;\r\n Budget: number = null;\r\n Currency: string = '';\r\n OrganizationName: string = '';\r\n IsBranch: boolean = false;\r\n EmployeesCount: number = null;\r\n}\r\n\r\n\r\nexport class OrganizationPredefinedRolesDto {\r\n Id: number = 0;\r\n OrganizationId: number = 0;\r\n OrganizationBudgetId: number = 0;\r\n EmployeesCount: number = 0;\r\n RoleId: OrganizationPredefinedRolesEnum;\r\n\r\n constructor(OrganizationId, OrganizationBudgetId, EmployeesCount, RoleId) {\r\n this.OrganizationId = OrganizationId;\r\n this.OrganizationBudgetId = OrganizationBudgetId;\r\n this.EmployeesCount = EmployeesCount;\r\n this.RoleId = RoleId;\r\n }\r\n}\r\n\r\n\r\nexport enum OrganizationPredefinedRolesEnum {\r\n InternalReviewEmpolyeesCount = 1,\r\n LegalAffairsSpecialistsCount = 2,\r\n AdministrativeSpecialistsCount = 3,\r\n SupervisionEngineersCount = 4\r\n}\r\n\r\n\r\nexport class RolesCountDto {\r\n InternalReviewEmpolyeesCount: number = 0;\r\n LegalAffairsSpecialistsCount: number = 0;\r\n AdministrativeSpecialistsCount: number = 0;\r\n SupervisionEngineersCount: number = 0;\r\n TotalEmployees: number = 0;\r\n}\r\n\r\nexport class ContractorFieldsDto {\r\n Id: number;\r\n Title: string;\r\n}\r\n\r\nexport class ContractorClassificationsDto {\r\n Id: number;\r\n Title: string;\r\n}\r\n\r\nexport class OrganizationContractorDto {\r\n Id: number = 0;\r\n OrganizationId: number = 0;\r\n ClassificationId: number = 0;\r\n FieldId: number = 0;\r\n CommercialRegisterationDate: string = null;\r\n IncomeCertificateDate: string = null;\r\n ChamberOfCommerceCertificateDate: string = null;\r\n CommercialRegisterationDateFormatted: string = null;\r\n IncomeCertificateDateFormatted: string = null;\r\n ChamberOfCommerceCertificateDateFormatted: string = null;\r\n isIncomeCertificateExpired: boolean = false;\r\n isCommercialRegisterationExpired: boolean = false;\r\n isCommerceCertificateExpired: boolean = false;\r\n}\r\n\r\nexport class OrganizationContractorLightDto {\r\n Id: number;\r\n OrganizationId: number = 0;\r\n ClassificationName: string = \"\";\r\n FieldName: string = \"\";\r\n CommercialRegisterName: string = \"\";\r\n CertificateZakatIncomeName: string = \"\"; \r\n ChamberCommerceCertificateName: string = \"\";\r\n\r\n CommercialRegisterationDate: string = null;\r\n IncomeCertificateDate: string = null;\r\n ChamberOfCommerceCertificateDate: string = null;\r\n\r\n CommercialRegisterationDateFormatted: string = null;\r\n IncomeCertificateDateFormatted: string = null;\r\n ChamberOfCommerceCertificateDateFormatted: string = null;\r\n\r\n isIncomeCertificateExpired: boolean = false;\r\n isCommercialRegisterationExpired: boolean = false;\r\n isCommerceCertificateExpired: boolean = false;\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Observable, Subject, BehaviorSubject } from \"rxjs\";\r\nimport { IGlobalSettings } from \"./../../_common/models/IGlobalSettings\";\r\nimport { AuditTrailLogDto } from \"./../../_common/models/AuditTrailLogDto\";\r\nimport { HttpInterceptor } from \"./../../_common/services/http-interceptor\";\r\nimport {\r\n IOrganizationSearchParams,\r\n OrganizationHeaderInfo,\r\n OrganizationRolesDto,\r\n IGetOrganizationsListResponse,\r\n ICreateOrganizationResponse,\r\n OrganizationListItemDto,\r\n OrganizationEmployeeItemDto,\r\n OrganizationPersonalInfo,\r\n OrganizationQuickEntryModel,\r\n OrganizationContactsInfoDto,\r\n OrganizationTypeEnum\r\n} from \"../models/organization-dtos\";\r\nimport { ContactsHelpers } from \"../helpers\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { catchError, map } from \"rxjs/operators\";\r\n \r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class OrganizationSVC extends BaseService {\r\n\r\n searchParams = new BehaviorSubject(null);\r\n organizationChangedTrigger = new Subject();\r\n currentOrganizationInfo = new BehaviorSubject(null);\r\n externalEntityType: OrganizationTypeEnum = OrganizationTypeEnum.Unspecified;\r\n baseURL = BERRY.hostName + \"api/contacts/organizations\";\r\n isEmptyPage: boolean = false;\r\n public organizationRoles: OrganizationRolesDto;\r\n\r\n constructor(public http: HttpInterceptor, public helpers: ContactsHelpers) {\r\n super(http);\r\n }\r\n\r\n getOrganizationsList(page: number, params: IOrganizationSearchParams): Observable {\r\n params = params || {};\r\n let isEmptySearchParams = (!params.Type) && (!params.Countries || params.Countries.length === 0);\r\n\r\n if (!isEmptySearchParams) {\r\n let body = Object.assign(params, { page: page });\r\n\r\n return super.post(`${this.baseURL}/search`, body);\r\n }\r\n else {\r\n var isActive = \"\";\r\n if (params.IsActive != null)\r\n isActive = `&isActive=${params.IsActive}`;\r\n return super.get(`${this.baseURL}/list?page=${page}&keyword=${params.Keyword || \"\"}${isActive}`);\r\n }\r\n }\r\n\r\n getExportData(ExternalEntitesFilter: IOrganizationSearchParams, isSearchedApplied: boolean, ExportInfoDto) {\r\n\r\n if(!isSearchedApplied)\r\n ExternalEntitesFilter = {\r\n Keyword: '',\r\n Countries: [],\r\n Type: this.externalEntityType,\r\n IsActive: null\r\n }\r\n else\r\n this.externalEntityType = OrganizationTypeEnum.Unspecified;\r\n\r\n let params = {\r\n ExternalEntitesFilter: ExternalEntitesFilter,\r\n ExportInfoDto: ExportInfoDto\r\n };\r\n\r\n const url = `${this.baseURL}/GenerateReport?organizationType=${this.externalEntityType}`;\r\n\r\n return this.http.post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getAllOrganizations(): Observable {\r\n return super.get(`${this.baseURL}/All`);\r\n }\r\n\r\n DeleteOrganizationBranch(organizationId: number): Observable {\r\n return super\r\n .post(this.baseURL + \"/DeleteOrganizationBranch/\" + organizationId, null);\r\n }\r\n\r\n getOrganizationBranches(organizationId: number): Observable {\r\n return super.get(`${this.baseURL}/organizationbranches/${organizationId}`);\r\n }\r\n\r\n getOrganizationChilds(organizationId: number): Observable {\r\n return super.get(`${this.baseURL}/organizationchilds/${organizationId}`);\r\n }\r\n\r\n DeleteOrganizationChild(organizationId: number): Observable {\r\n return super\r\n .post(this.baseURL + \"/DeleteOrganizationChild/\" + organizationId, null);\r\n }\r\n\r\n getOrganizationEmployees(organizationId: number): Observable {\r\n return super.get(`${this.baseURL}/organizationemployees/${organizationId}`);\r\n }\r\n\r\n getOrganizationHeaderInfo(id: number): Observable {\r\n return super.get(this.baseURL + \"/organizationheaderinfo/\" + id);\r\n }\r\n\r\n getOrganizationPersonalInfo(id: number): Observable {\r\n return super.get(this.baseURL + \"/organizationpersonalinfo/\" + id);\r\n }\r\n\r\n editOrganizationStatus(id: number, isActive: boolean): Observable {\r\n return super.post(`${this.baseURL}/editOrganizationStatus?id=${id}&isActive=${isActive}`);\r\n }\r\n\r\n createOrganization(organization: OrganizationQuickEntryModel): Observable {\r\n organization.Type = +organization.Type;\r\n return super.post(this.baseURL + \"/create\", organization);\r\n }\r\n\r\n saveOrganizationPersonalInfo(organization: OrganizationPersonalInfo): Observable {\r\n return super.post(this.baseURL + \"/saveorganizationpersonalinfo\", organization);\r\n }\r\n\r\n getContactsInfo(id: number): Observable {\r\n return super.get(this.baseURL + \"/contactsinfo/\" + id);\r\n }\r\n\r\n saveContactsInfo(info: OrganizationContactsInfoDto): Observable {\r\n var url = this.baseURL + \"/savecontactsinfo\";\r\n\r\n return super.post(url, info);\r\n }\r\n\r\n deleteOrganization(organizationId: number): Observable {\r\n return super\r\n .post(this.baseURL + \"/deleteorganization/\" + organizationId, null);\r\n }\r\n\r\n deleteOrganizationPhoto(organizationId: number): Observable {\r\n var url = BERRY.absoluteHostName + \"ContactsViews/Organizations/deletephoto/\" + organizationId;\r\n return super\r\n .post(url, null);\r\n }\r\n\r\n deleteEmployeeFromOrganization(positionId: number): Observable {\r\n return super.post(this.baseURL + \"/deleteEmployeeFromOrganization/\" + positionId, null);\r\n }\r\n\r\n AuditTrail(ID: string): Observable {\r\n return super.get(BERRY.hostName + \"AuditTrail/GetAuditTrail?id=\" + ID);\r\n }\r\n\r\n getOrganizationRoles(): Observable {\r\n return super.get(this.baseURL + \"/GetOrganizationRoles\");\r\n }\r\n\r\n getStates() {\r\n let url = `${BERRY.hostName}api/AccusationListApi/GetStates`;\r\n\r\n return super.get(url);\r\n }\r\n\r\n MergeOrganization(MergeOrganizationDto): Observable {\r\n var url = this.baseURL + '/MergeOrganization';\r\n return super.post(url, MergeOrganizationDto);\r\n }\r\n\r\n // Organizations budget\r\n budgetBaseURL = BERRY.hostName + \"api/OrganizationsBudget\";\r\n\r\n GetOrganizationCurrency(id: number): Observable {\r\n return super.get(this.budgetBaseURL + \"/OrganizationCurrency/\" + id);\r\n }\r\n\r\n AddNewOrganizationsBudget(params): Observable {\r\n return this.http.post(this.budgetBaseURL + \"/AddNewOrganizationsBudget\", params);\r\n }\r\n\r\n GetOrganizationBudgets(id: number): Observable {\r\n return super.get(this.budgetBaseURL + \"/GetOrganizationBudgets/\" + id);\r\n }\r\n\r\n EditOrganizationsBudget(params): Observable {\r\n return this.http.post(this.budgetBaseURL + \"/EditOrganizationsBudget\", params);\r\n }\r\n\r\n DeleteOrganizationBudget(id: number): Observable {\r\n return super.post(this.budgetBaseURL + \"/DeleteOrganizationBudget/\" + id);\r\n }\r\n\r\n DeleteMergedOrganizationsBudgets(params): Observable {\r\n return super.post(this.budgetBaseURL + \"/DeleteMergedOrganizationsBudgets\", params);\r\n }\r\n\r\n SaveOrganizationsBudgetRoles(params): Observable {\r\n return this.http.post(this.budgetBaseURL + \"/SaveOrganizationsBudgetRoles\", params);\r\n }\r\n\r\n // Organizations Contractor\r\n contractorBaseURL = BERRY.hostName + \"api/OrganizationContractor\";\r\n\r\n GetContractorFields(): Observable {\r\n return super.get(this.contractorBaseURL + \"/GetContractorFields\");\r\n }\r\n\r\n GetContractorClassifications(): Observable {\r\n return super.get(this.contractorBaseURL + \"/GetContractorClassifications\");\r\n }\r\n\r\n SaveContractor(params): Observable {\r\n return this.http.post(this.contractorBaseURL + \"/SaveContractor\", params);\r\n }\r\n\r\n GetOrganizationContractorData(Id: number): Observable {\r\n return super.get(this.contractorBaseURL + \"/GetOrganizationContractorData/\" + Id);\r\n }\r\n GetOrganizationContractorLight(Id: number): Observable {\r\n return super.get(this.contractorBaseURL + \"/GetOrganizationContractorLight/\" + Id);\r\n }\r\n \r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../../_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"../../_common/services/baseService\";\r\nimport { HttpInterceptor } from \"../../_common/services/http-interceptor\";\r\nimport { Observable } from \"rxjs\";\r\n\r\n\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\n\r\nexport class PresidentDashbiardSvc extends BaseService {\r\n public baseURL: string = BERRY.hostName + \"api/SimplePresidentDashboardApi\";\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n ShowCommitteStatistics(): Observable {\r\n let url = `${this.baseURL}/ShowCommitteStatistics`;\r\n return this.http.get(url);\r\n }\r\n\r\n}\r\n\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { IGlobalSettings } from \"../../../_common/models/IGlobalSettings\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n@Injectable()\r\nexport class InitiativeAttachmentSvc extends BaseService {\r\n baseUrl = BERRY.hostName + \"api/InitiativeAttachment\";\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n initiativeAttachmentsCount: number = 0;\r\n signatureRequestsCount: number = 0;\r\n markingRequestsCount: number = 0;\r\n approvalRequestCount: number = 0;\r\n CurrentStampRequestsCount: number = 0;\r\n getInitiativeAttachmentsCount(id): Observable {\r\n return this.http.get(this.baseUrl + \"/InitiativeAttachmentsCount?initiativeId=\" + id);\r\n }\r\n getSignatureRequestsCount(id): Observable {\r\n return this.http.get(this.baseUrl + \"/InitiativeSignatureRequestsCount?initiativeId=\" + id + \"&SignatureType=0\");\r\n }\r\n getMarkingRequestsCount(id): Observable {\r\n return this.http.get(this.baseUrl + \"/InitiativeSignatureRequestsCount?initiativeId=\" + id + \"&SignatureType=1\");\r\n }\r\n\r\n getApprovalRequestsCount(id): Observable {\r\n return this.http.get(this.baseUrl + \"/InitiativeApprovalRequestsCount?initiativeId=\" + id);\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Observable, Subject } from \"rxjs\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from \"../../../../_common/models/IGlobalSettings\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class InitiativeOverviewSvc extends BaseService {\r\n baseUrl = BERRY.hostName + \"api/initiatives\";\r\n overviewUrl = BERRY.hostName + \"api/InitiativesOverview\";\r\n _initiativeId: number = null;\r\n showInitiativeAndTeamEditForm: boolean = false;\r\n linkedSchedulesCount: number = 0;\r\n\r\n public onLinkedCorrespondenceChanged: Subject = new Subject();\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n public get InitiativeId(): number {\r\n return this._initiativeId;\r\n }\r\n\r\n public set InitiativeId(value: number) {\r\n this._initiativeId = value;\r\n }\r\n\r\n GetInitiativeDetails(Id): Observable {\r\n return this.http.get(this.baseUrl + \"/GetInitiativeDetails?Id=\" + Id).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n GetInitiativeAndTeam(Id): Observable {\r\n return this.http.get(this.baseUrl + \"/GetInitiativeAndTeam?Id=\" + Id).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n EditInitiative(params): Observable {\r\n return this.http.post(this.baseUrl + \"/EditInitiative\", params);\r\n }\r\n\r\n GetInitialSuggestionInfo(Id: number): Observable {\r\n return this.http\r\n .get(this.baseUrl + \"/GetInitialSuggestionInfo?Id=\" + Id).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n GetGlobalAttachments(Id: number): Observable {\r\n return this.http\r\n .get(BERRY.hostName + \"api/suggestions/GetGlobalAttachments/\" + Id).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n \r\n GetAllInitiativeObjectives(Id): Observable {\r\n return this.http.get(this.baseUrl + \"/GetAllInitiativeObjectives/\" + Id).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n exportReport(initiativeId, reportType): Observable {\r\n return this.http.post(this.baseUrl + \"/ExportInitiativeBudgetAndObjectives?initiativeId=\" + initiativeId + \"&reportType=\" + reportType, {});\r\n }\r\n\r\n GetAllInitiativeNotes(Id): Observable {\r\n return this.http.get(this.baseUrl + \"/GetAllInitiativeNotes/\" + Id).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n AddNote(params): Observable {\r\n return this.http.post(this.baseUrl + \"/AddNote\", params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );;\r\n }\r\n\r\n EditNote(params): Observable {\r\n return this.http.post(this.baseUrl + \"/EditNote\", params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );;\r\n }\r\n\r\n DeleteNote(Id): Observable {\r\n return this.http.post(this.baseUrl + \"/DeleteNote/\" + Id, {}).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );;\r\n }\r\n\r\n GetNotesForOverview(Id: number): Observable {\r\n return this.http\r\n .get(this.overviewUrl + \"/GetNotesForOverview/\" + Id).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public getLatestMeetings(initiativeId, fromDateStr, toDateStr): Observable {\r\n let timeZoneOffset = new Date().getTimezoneOffset();\r\n return this.http.get(this.overviewUrl + `/GetLatestInitiativeMeeting?initiativeId=${initiativeId}&&from=${fromDateStr}&&to=${toDateStr}&&timeZoneOffset=${timeZoneOffset}`);\r\n }\r\n\r\n public getLatestInitiativeMeeting(initiativeId): Observable {\r\n\r\n let timeZoneOffset = new Date().getTimezoneOffset();\r\n return this.http.get(this.overviewUrl + `/GetLatestInitiativeMeeting?initiativeId=${initiativeId}&&timeZoneOffset=${timeZoneOffset}`);\r\n }\r\n\r\n public getMeetingInfo(initiativeId: number) {\r\n return this.http\r\n .get(this.overviewUrl + \"/GetMeetingInfo?initiativeId=\" + initiativeId)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n deleteScheduleItem(scheduleItemId) {\r\n return this.http\r\n .post(this.overviewUrl + `/DeleteScheduleItem?scheduleItemId=${scheduleItemId}&&InitiativeId=${this.InitiativeId}`, \"\")\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getLinkedSchedulesCount(id): Observable {\r\n return this.http.get(this.overviewUrl + \"/GetLinkedSchedulesCount?initiativeId=\" + id);\r\n }\r\n\r\n EditInitiativeObjectives(params): Observable {\r\n return this.http.post(this.baseUrl + \"/EditInitiativeObjectives\", params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );;\r\n }\r\n\r\n public getMeetings(initiativeId, fromDateStr, toDateStr): Observable {\r\n let timeZoneOffset = new Date().getTimezoneOffset();\r\n return this.http.get(this.overviewUrl + `/GetMeetings?initiativeId=${initiativeId}&&from=${fromDateStr}&&to=${toDateStr}&&timeZoneOffset=${timeZoneOffset}`);\r\n }\r\n\r\n public AddLinkedCorrespondence(CorrespondenceIds: any[], InitiativeId): Observable {\r\n return this.http.get(this.overviewUrl +\r\n `/AddLinkedCorrespondence?CorrespondenceIds=${CorrespondenceIds}&InitiativeId=${InitiativeId}`\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public getLinkedCorr(initiativeId): Observable {\r\n return this.http\r\n .get(this.overviewUrl + `/getLinkedCorrespondences?InitiativeId=${initiativeId}`)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public ValidaiteLinkedCorrespondence(CorrespondenceId, InitiativeId): Observable {\r\n return this.http.get(this.overviewUrl + `/ValidaiteLinkedCorrespondence?CorrespondenceId=${CorrespondenceId}&InitiativeId=${InitiativeId}`)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public getLinkedCorrespondenceCount(InitiativeId): Observable {\r\n return this.http\r\n .get(this.overviewUrl + `/GetLinkedCorrespondencesCount?InitiativeId=${InitiativeId}`)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public deleteLinkCorr(\r\n CorrespondenceIds: any[], InitiativeId): Observable {\r\n return this.http\r\n .get(\r\n this.overviewUrl +\r\n `/deleteLinkCorrespondence?InitiativeId=${InitiativeId}&CorrespondenceIds=${CorrespondenceIds}`\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n GetCommitteesLinkedToInitiatives(Id): Observable {\r\n return this.http.get(this.baseUrl + \"/GetCommitteesLinkedToInitiatives/\" + Id).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n}\r\n\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Router, ActivatedRouteSnapshot, RouterStateSnapshot } from \"@angular/router\";\r\nimport { IGlobalSettings } from \"../../_common/models/IGlobalSettings\";\r\nimport { MessagingService } from \"../../_common/services/messaging-service\";\r\nimport { AppModulesEnum } from \"../../_common/models/AppModulesEnum\";\r\n\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var NProgress: any;\r\n\r\n@Injectable()\r\nexport class InitiativeLandingPageGuardService {\r\n isLoggedIn: boolean = false;\r\n\r\n constructor(public router: Router, public messagingSvc: MessagingService) { }\r\n\r\n canActivate(\r\n route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot\r\n ): boolean {\r\n let navigateToDashboards: boolean = false;\r\n let isImpersonated = BERRY.User.ActualUserId != BERRY.User.UserId;\r\n let isFullyImpersonated = BERRY.User.IsFullImpersonation;\r\n const isUserManager = BERRY.User.IsManager == \"true\";\r\n const IsCommitteeManager: boolean = BERRY.User.IsCommitteeManager && BERRY.User.IsCommitteeManager == \"true\";\r\n const userHasInitiativeModule = BERRY.User.UserModules.find(x => x.Id == AppModulesEnum.Initiatives);\r\n\r\n if (!isImpersonated || (isImpersonated && isFullyImpersonated)) {\r\n if ((userHasInitiativeModule && (isUserManager || IsCommitteeManager))) {\r\n navigateToDashboards = true;\r\n }\r\n }\r\n\r\n if (userHasInitiativeModule) {\r\n if (navigateToDashboards) {\r\n this.router.navigate(['/Initiatives/Dashboard']);\r\n }\r\n else {\r\n this.router.navigate(['/Initiatives/SuggestionsList/Inbox/1']);\r\n\r\n }\r\n }\r\n else {\r\n this.router.navigate([\"/no-content\"]);\r\n }\r\n return false;\r\n } \r\n\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { HttpInterceptor } from \"../../../_common/services/http-interceptor\";\r\nimport { Observable } from \"rxjs\";\r\nimport { Router } from \"@angular/router\";\r\nimport { IGlobalSettings } from \"../../../_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"../../../_common/services/baseService\";\r\nimport { GeneralPermissions, InitiativeGeneralPermissions, SuggestionGeneralPermissions } from \"../models/initiative-permissions-dto\";\r\n\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class InitiativesHanlderSvc extends BaseService {\r\n\r\n baseUrl = BERRY.hostName + \"api/InitiativesHanlder\";\r\n\r\n SuggestionGeneralHandler: any;\r\n InitiativeGeneralHandler: any;\r\n GeneralHandler: any;\r\n\r\n _SuggestionGeneralPermissions: SuggestionGeneralPermissions;\r\n public get SuggestionGeneralPermissions(): SuggestionGeneralPermissions {\r\n return this._SuggestionGeneralPermissions;\r\n }\r\n\r\n public set SuggestionGeneralPermissions(value: SuggestionGeneralPermissions) {\r\n this._SuggestionGeneralPermissions = value;\r\n }\r\n\r\n _InitiativeGeneralPermissions: InitiativeGeneralPermissions;\r\n public get InitiativeGeneralPermissions(): InitiativeGeneralPermissions {\r\n return this._InitiativeGeneralPermissions;\r\n }\r\n\r\n public set InitiativeGeneralPermissions(value: InitiativeGeneralPermissions) {\r\n this._InitiativeGeneralPermissions = value;\r\n }\r\n\r\n _GeneralHandlerPermissions: GeneralPermissions;\r\n public get GeneralHandlerPermissions(): GeneralPermissions {\r\n return this._GeneralHandlerPermissions;\r\n }\r\n\r\n public set GeneralHandlerPermissions(value: GeneralPermissions) {\r\n this._GeneralHandlerPermissions = value;\r\n }\r\n\r\n public _hasFullPermissions: boolean = false;\r\n public get HasFullPermissions(): boolean {\r\n return this._hasFullPermissions;\r\n }\r\n\r\n public set HasFullPermissions(value: boolean) {\r\n this._hasFullPermissions = value;\r\n }\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n public GetInitiativeGeneralHandler(initiativeId: any, hanlderType: InitiativeLogicHandlerTypeEnum): Observable {\r\n //let url = `${BERRY.hostName}api/InitiativesHanlder/GetInitiativeGeneralHandler?initiativeId=${initiativeId}&type=${hanlderType}`;\r\n return super.get(this.baseUrl + \"/GetInitiativeGeneralHandler?initiativeId=\" + initiativeId + \"&type=\" + hanlderType);\r\n }\r\n public GetInitiativeEntitiesHirarechyGeneralHandler(initiativeId: any, hanlderType: InitiativeLogicHandlerTypeEnum): Observable {\r\n return super.get(this.baseUrl + \"/GetInitiativeEntitiesHirarechyGeneralHandler?initiativeId=\" + initiativeId + \"&type=\" + hanlderType);\r\n }\r\n public GetSuggestionGeneralHandler(suggestionId: any, hanlderType: InitiativeLogicHandlerTypeEnum): Observable {\r\n //let url = `${BERRY.hostName}api/InitiativesHanlder/GetSuggestionGeneralHandler?suggestionId=${suggestionId}&type=${hanlderType}`;\r\n return super.get(this.baseUrl + \"/GetSuggestionGeneralHandler?suggestionId=\" + suggestionId + \"&type=\" + hanlderType);\r\n }\r\n\r\n public GetGeneralHandler(hanlderType: InitiativeLogicHandlerTypeEnum): Observable {\r\n return this.http.get(this.baseUrl + \"/GetGeneralHandler?type=\" + hanlderType);\r\n }\r\n\r\n public static redirectToNotPermittedPage(router: Router, Id: number, logInfo: any) {\r\n var errorMsg = `This user \"${BERRY.User.UserId}\" is not permitted to read this initiative ${Id}`;\r\n router.navigate([\"/no-content\"]);\r\n }\r\n\r\n}\r\n\r\nexport enum InitiativeLogicHandlerTypeEnum {\r\n All = 1,\r\n GeneralHandler = 2,\r\n InitiativeGeneralHandler = 3,\r\n InitiativeLogicHandler = 4,\r\n SuggestionsGeneralHandler = 5\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../_common/models/IGlobalSettings\";\r\nimport { IComboboxOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { countryDto } from \"../berry/correspondences/_models/contacts/countryDto\";\r\nimport { stateDto } from \"../berry/correspondences/_models/contacts/stateDto\";\r\nimport { BaseService } from \"../_common/services/baseService\";\r\nimport { HttpInterceptor } from \"../_common/services/http-interceptor\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class LookupHelpers extends BaseService {\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n\r\n }\r\n\r\n\r\n _CountryId: number;\r\n _RegionId: number;\r\n\r\n _states: stateDto[] = [];\r\n public get States(): any {\r\n return this._states;\r\n }\r\n\r\n public get CountryID(): number {\r\n if (this._CountryId == null) return 0;\r\n return this._CountryId;\r\n }\r\n\r\n public set CountryID(val) {\r\n this._CountryId = val;\r\n }\r\n\r\n public get RegionId(): number {\r\n if (this._RegionId == null) return 0;\r\n return this._RegionId;\r\n }\r\n\r\n public set RegionId(val) {\r\n this._RegionId = val;\r\n }\r\n\r\n\r\n defaultAutocompleteOptions: IComboboxOptions = {\r\n dataTextField: \"Title\",\r\n dataValueField: \"Id\",\r\n allowFreeText: true\r\n };\r\n\r\n defaultDropdownlistOptions: IComboboxOptions = {\r\n allowSearch: false\r\n };\r\n\r\n defaultCountriesAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaultAutocompleteOptions,\r\n {\r\n datasource: BERRY.Lookups.Countries.filter(a => !a.IsDeleted),\r\n dataTextField: BERRY.isEn ? \"NameEn\" : \"NameAr\",\r\n dataValueField: \"CountryId\",\r\n allowFreeText: false\r\n } as IComboboxOptions\r\n );\r\n\r\n defaultStatesAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaultAutocompleteOptions,\r\n {\r\n datasource: this.States.filter(\r\n a => !a.isDeleted && a.CountryId == this.CountryID\r\n ),\r\n dataTextField: BERRY.isEn ? \"StateNameEn\" : \"StateNameAr\",\r\n dataValueField: \"StateId\",\r\n allowFreeText: false,\r\n autoBind: true\r\n } as IComboboxOptions\r\n );\r\n\r\n defaultCitiesAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaultAutocompleteOptions,\r\n {\r\n datasource: BERRY.Lookups.Cities.filter(\r\n a => !a.isDeleted && a.StateId == this.RegionId\r\n ),\r\n dataTextField: BERRY.isEn ? \"CityNameEn\" : \"CityNameAr\",\r\n dataValueField: \"CityId\",\r\n allowFreeText: false,\r\n autoBind: true\r\n } as IComboboxOptions\r\n );\r\n\r\n defaultArPrefixAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaultAutocompleteOptions,\r\n {\r\n datasource: BERRY.Lookups.ArabicPrefixes.filter(a => !a.isDeleted),\r\n dataTextField: \"PrefixTitle\",\r\n dataValueField: \"PrefixId\"\r\n } as IComboboxOptions\r\n );\r\n\r\n defaultEnPrefixAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaultAutocompleteOptions,\r\n {\r\n datasource: BERRY.Lookups.EnglishPrefixes.filter(a => !a.isDeleted),\r\n dataTextField: \"PrefixTitle\",\r\n dataValueField: \"PrefixId\"\r\n } as IComboboxOptions\r\n );\r\n\r\n defaultArSuffixAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaultAutocompleteOptions,\r\n {\r\n datasource: BERRY.Lookups.ArabicSuffixes.filter(a => !a.isDeleted),\r\n dataTextField: \"SuffixTitle\",\r\n dataValueField: \"SuffixId\"\r\n } as IComboboxOptions\r\n );\r\n\r\n defaultEnSuffixAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaultAutocompleteOptions,\r\n {\r\n datasource: BERRY.Lookups.EnglishSuffixes.filter(a => !a.isDeleted),\r\n dataTextField: \"SuffixTitle\",\r\n dataValueField: \"SuffixId\"\r\n } as IComboboxOptions\r\n );\r\n\r\n getCountryLight(): countryDto[] {\r\n let CountryLight: countryDto[] = BERRY.Lookups.Countries.filter(\r\n a => !a.IsDeleted && a.IsActive\r\n );\r\n\r\n CountryLight.forEach(function (e) {\r\n if (BERRY.isEn) {\r\n if (!!e.LongNameEn) {\r\n e.Name = e.LongNameEn\r\n }\r\n else {\r\n e.Name = e.NameEn\r\n }\r\n }\r\n else {\r\n if (!!e.LongNameAr) {\r\n e.Name = e.LongNameAr\r\n }\r\n else {\r\n e.Name = e.NameAr\r\n }\r\n }\r\n });\r\n return CountryLight;\r\n }\r\n\r\n getConfidentialities(isAll: boolean = false): any {\r\n\r\n let Confidentialities: any = isAll ? BERRY.Lookups.Confidentialities : BERRY.Lookups.Confidentialities.filter(c => c.IsActive);\r\n\r\n Confidentialities.forEach(function (e) {\r\n e.Text = BERRY.isEn ? e.TextEN : e.TextAR;\r\n });\r\n return Confidentialities;\r\n }\r\n\r\n getDocumentsConfidentialities(isAll: boolean = false, item: any = 0): any {\r\n\r\n let Confidentialities: any = BERRY.Lookups.DocumentConfidentialities\r\n\r\n if (!isAll)\r\n Confidentialities.filter(c => c.IsActive);\r\n else\r\n Confidentialities = [...Confidentialities.filter(s => s.IsActive), Confidentialities.filter(c => c.Id == item && !c.IsActive && c.Id != 0)]\r\n\r\n Confidentialities.forEach(function (e) {\r\n e.Text = BERRY.isEn ? e.TextEn : e.TextAr;\r\n });\r\n return Confidentialities;\r\n }\r\n\r\n getUrgencies(): any {\r\n let Urgencies: any = BERRY.Lookups.Urgencies;\r\n\r\n Urgencies.forEach(function (e) {\r\n e.Text = BERRY.isEn ? e.TextEN : e.TextAR;\r\n });\r\n return Urgencies;\r\n }\r\n\r\n getSchedualeCategories(): any {\r\n const SchedualeCategories: any = BERRY.Lookups.ScheduleLKPCategories;\r\n let SchedualeCategoriesFilter = SchedualeCategories.filter(\r\n x => x.IsActive == true && x.isDeleted == false\r\n );\r\n\r\n SchedualeCategoriesFilter.forEach(function (e) {\r\n e.Title = BERRY.isEn ? e.TitleEn : e.TitleAr;\r\n });\r\n\r\n return SchedualeCategoriesFilter;\r\n }\r\n\r\n getSchedualeImportances(): any {\r\n const SchedualeImportances: any = BERRY.Lookups.ScheduleLKPImportances;\r\n\r\n let SchedualeImportancesFilter = SchedualeImportances.filter(\r\n x => x.IsActive == true && x.isDeleted == false\r\n );\r\n\r\n SchedualeImportancesFilter.forEach(function (e) {\r\n e.Title = BERRY.isEn ? e.TitleEn : e.TitleAr;\r\n });\r\n\r\n return SchedualeImportancesFilter;\r\n }\r\n\r\n getSchedualeLocationsTypes(): any {\r\n const chedualeLocationsTypes: any[] =\r\n BERRY.Lookups.ScheduleLKPLocationTypes;\r\n\r\n let chedualeLocationsTypeFilter = chedualeLocationsTypes.filter(\r\n x => x.IsActive == true && x.isDeleted == false\r\n );\r\n\r\n chedualeLocationsTypeFilter.forEach(function (e) {\r\n e.Title = BERRY.isEn ? e.TitleEn : e.TitleAr;\r\n });\r\n\r\n return chedualeLocationsTypeFilter;\r\n }\r\n\r\n getCorrespondanceKeyWords(): any {\r\n const CorrespondanceKeyWords: any[] = BERRY.Lookups.CorrespondanceKeyWords.filter(\r\n x => x.IsActive == true\r\n );\r\n\r\n CorrespondanceKeyWords.forEach(function (e) {\r\n e.Text = BERRY.isEn ? e.TextEN : e.TextAR;\r\n });\r\n\r\n return CorrespondanceKeyWords;\r\n }\r\n getCorrespondanceKeyWordsWithUnActive(): any {\r\n const CorrespondanceKeyWordss: any[] = BERRY.Lookups.CorrespondanceKeyWords;\r\n\r\n CorrespondanceKeyWordss.forEach(function (e) {\r\n e.Text = BERRY.isEn ? e.TextEN : e.TextAR;\r\n });\r\n\r\n return CorrespondanceKeyWordss;\r\n }\r\n\r\n getCorrespondenceCategories(): any {\r\n const CorrespondenceCategories: any[] =\r\n BERRY.Lookups.CorrespondenceCategories;\r\n\r\n CorrespondenceCategories.forEach(function (e) {\r\n e.Text = BERRY.isEn ? e.TextEN : e.TextAR;\r\n });\r\n\r\n return CorrespondenceCategories;\r\n }\r\n\r\n getCorrespondenceTypes(): any {\r\n const CorrespondenceTypes: any[] = BERRY.Lookups.CorrespondenceTypes.filter(\r\n x => x.IsActive == true\r\n );\r\n\r\n CorrespondenceTypes.forEach(function (e) {\r\n e.Text = BERRY.isEn ? e.TextEN : e.TextAR;\r\n });\r\n\r\n return CorrespondenceTypes;\r\n }\r\n\r\n getClassificationsTypes(): any {\r\n const ClassificationsTypes: any[] = BERRY.Lookups.ClassificationsTypes.filter(\r\n x => x.IsDeleted == false\r\n );\r\n\r\n ClassificationsTypes.forEach(function (e) {\r\n e.Text = BERRY.isEn ? e.TextEN : e.TextAR;\r\n });\r\n\r\n return ClassificationsTypes;\r\n }\r\n\r\n getCorrespondenceClassifications(): any {\r\n const CorrespondenceClassifications: any[] = BERRY.Lookups.CorrespondenceClassifications.filter(\r\n x => x.IsDeleted == false\r\n );\r\n\r\n CorrespondenceClassifications.forEach(function (e) {\r\n e.Text = BERRY.isEn ? e.TextEN : e.TextAR;\r\n });\r\n\r\n return CorrespondenceClassifications;\r\n }\r\n getCorrespondenceTypesAndClassifications(types): any {\r\n var allClassifications = this.getCorrespondenceClassifications().filter(a => a.ID > 0);\r\n var typeClassification = BERRY.Lookups.CorrespondenceTypeClassificationItems;\r\n let classification = allClassifications.filter(({ ID }) => typeClassification.filter(({ CorrespondenceTypeId }) =>\r\n types.includes(CorrespondenceTypeId.toString())).find(a => a.CorrespondenceClassificationId == ID));\r\n return classification\r\n }\r\n\r\n getAccompanyingDocuments(): any {\r\n const AccompanyingDocuments: any[] = BERRY.Lookups.AccompanyingDocument.filter(\r\n x => x.IsActive == true\r\n );\r\n\r\n AccompanyingDocuments.forEach(function (e) {\r\n e.Text = BERRY.isEn ? e.TextEN : e.TextAR;\r\n });\r\n\r\n return AccompanyingDocuments;\r\n }\r\n\r\n getReceivingModes(): any {\r\n const ReceivingModes: any[] = BERRY.Lookups.ReceivingModes;\r\n\r\n ReceivingModes.forEach(function (e) {\r\n e.Text = BERRY.isEn ? e.FriendlyTextEn : e.FriendlyTextAr;\r\n });\r\n\r\n return ReceivingModes;\r\n }\r\n}\r\n","import { ExternalContactDto } from \"./ExternalContactDto\";\r\nexport class ExternalContactResponseDto {\r\n constructor() {\r\n this.success = false;\r\n this.errormsg = \"\";\r\n this.Contact = new ExternalContactDto();\r\n }\r\n success: boolean;\r\n errormsg: string;\r\n Contact: ExternalContactDto;\r\n}\r\n","\r\nimport { catchError, map, takeWhile } from 'rxjs/operators';\r\nimport { LinkedContactDefaultEmailAndPhone } from \"../../_common/BusinessHelpers/LinkedContactDefaultEmailAndPhone\";\r\nimport { ExternalContactDto, ExternalContactSearchQueryDto } from \"../../_common/models/ExternalContactDto\";\r\nimport { IGlobalSettings } from \"../../_common/models/IGlobalSettings\";\r\nimport { Injectable, NgZone } from \"@angular/core\";\r\nimport { Subject, Observable } from \"rxjs\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { ExternalContactResponseDto } from \"src/app/_common/models/ExternalContactResponseDto\";\r\nimport { PaginationResult } from \"../../_common/models/PaginationResult\";\r\nimport { DialogManager, ConfirmationBoxOptions, ConfirmationBoxType } from \"../../_common/services/dialog-manager\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class ContactsSvc extends BaseService {\r\n isSubscribed: boolean = true;\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n Url = BERRY.hostName + \"api/ContactsApi\";\r\n debounceTimeoutTimer: any;\r\n debounceInterval: number = 1000;\r\n public searchFilter = {\r\n Text: \"\"\r\n };\r\n public Working: boolean = false;\r\n public Contacts: ExternalContactDto[];\r\n public LinkedContactMapper = new LinkedContactDefaultEmailAndPhone();\r\n public SelectedContact: ExternalContactDto;\r\n public NewContact: ExternalContactDto = new ExternalContactDto();\r\n public ExternalContactSearchQueryDto = new ExternalContactSearchQueryDto()\r\n public currentOrder: string = \"\";\r\n\r\n paginateOptions = {\r\n id: \"server\",\r\n itemsPerPage: BERRY.PageSize,\r\n currentPage: 1,\r\n totalItems: 0\r\n };\r\n\r\n public OnUpdate: Subject = new Subject<\r\n ExternalContactResponseDto\r\n >();\r\n public OnCreate: Subject = new Subject<\r\n ExternalContactResponseDto\r\n >();\r\n public OnDelete: Subject = new Subject<\r\n ExternalContactResponseDto\r\n >();\r\n\r\n constructor(http: HttpInterceptor, public zone: NgZone, public dialogs: DialogManager,) {\r\n super(http);\r\n }\r\n Search(params): Observable> {\r\n let url = this.Url + `/Search`;\r\n return super.post(url, params);\r\n }\r\n Remove(ExternalContactID): Observable {\r\n let url = this.Url + `/Remove?ExternalContactID=` + ExternalContactID;\r\n return super.post(url);\r\n }\r\n Create(ExternalContactDto): Observable {\r\n let url = this.Url + `/Create`;\r\n return super.post(url, ExternalContactDto);\r\n }\r\n Update(ExternalContactDto): Observable {\r\n let url = this.Url + `/Update`;\r\n return super.post(url, ExternalContactDto);\r\n }\r\n public getOrganizationPoistions(mappedWithInternalPosition: boolean = false) {\r\n let url = `${BERRY.hostName}api/contacts/lookups/GetAllPositionWithInternalEnum?mappedWithInternalPosition=${mappedWithInternalPosition}`;\r\n return this.http.get(url).pipe(map(this.extractData), catchError(this.handleError),);\r\n }\r\n public getStates() {\r\n let url = `${BERRY.hostName}api/AccusationListApi/GetStates`;\r\n return super.get(url);\r\n }\r\n public searchByText() {\r\n let me = this;\r\n if (me.debounceTimeoutTimer == null) {\r\n me.debounceTimeoutTimer = setTimeout(() => {\r\n me.getPage(1);\r\n }, me.debounceInterval);\r\n } else {\r\n clearTimeout(me.debounceTimeoutTimer);\r\n me.debounceTimeoutTimer = setTimeout(() => {\r\n me.getPage(1);\r\n }, me.debounceInterval);\r\n }\r\n }\r\n public getPage(page: number) {\r\n let me = this;\r\n me.Working = true;\r\n me.paginateOptions.currentPage = page;\r\n me.ExternalContactSearchQueryDto.PageIndex = me.paginateOptions.currentPage;\r\n me.ExternalContactSearchQueryDto.Order = this.currentOrder;\r\n me.ExternalContactSearchQueryDto.Text = me.searchFilter.Text\r\n me.Search(me.ExternalContactSearchQueryDto).pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe((data) => {\r\n me.Contacts = data.Page;\r\n let uniqueTime = new Date().getTime();\r\n me.Contacts.forEach(i => {\r\n i.ImageUrl = `${BERRY.ExternalContactsImagesDirectoryUrl}/${i.ExternalContactID}.png?${uniqueTime}`;\r\n i.ImageExist = true;\r\n //me.LinkedContactMapper.GetOrganizationDefaultEmail(i.LinkedContact);\r\n //me.LinkedContactMapper.GetOrganizationDefaultPhone(i.LinkedContact);\r\n });\r\n me.paginateOptions.totalItems = data.TotalRecords;\r\n me.Working = false;\r\n }, (err) => {\r\n me.Working = false;\r\n });\r\n\r\n }\r\n isSubmited = false;\r\n public CreateContact() {\r\n let me = this;\r\n me.isSubmited = true;\r\n if (\r\n me.NewContact.ExternalContactNameEn.length == 0 || me.NewContact.ExternalContactNameAr.length == 0\r\n ) {\r\n this.dialogs.create(dialog => {\r\n if (dialog) {\r\n dialog.show(new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Warning,\r\n BERRY.getText('FormsValidationMessage', 'Common'),\r\n ));\r\n }\r\n });\r\n return;\r\n }\r\n me.Working = true;\r\n let cloneContact = me.clone(me.NewContact);\r\n this.Create(cloneContact)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data.success) {\r\n let uniqueTime = new Date().getTime();\r\n data.Contact.ImageUrl = `${BERRY.ExternalContactsImagesDirectoryUrl}/${data.Contact.ExternalContactID}.png?${uniqueTime}`;\r\n data.Contact.ImageExist = true;\r\n me.Contacts.unshift(data.Contact);\r\n }\r\n me.OnCreate.next(data);\r\n me.Working = false;\r\n }, (err) => {\r\n let FailResponse = new ExternalContactResponseDto();\r\n FailResponse.errormsg = \"could not connect to server!\";\r\n me.OnCreate.next(FailResponse);\r\n me.Working = false;\r\n })\r\n }\r\n public UpdateContact() {\r\n let me = this;\r\n me.Working = true;\r\n me.isSubmited = true;\r\n let cloneContact = me.clone(me.SelectedContact);\r\n this.Update(cloneContact)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data.success) {\r\n let uniqueTime = new Date().getTime();\r\n data.Contact.ImageUrl = `${BERRY.ExternalContactsImagesDirectoryUrl}/${data.Contact.ExternalContactID}.png?${uniqueTime}`;\r\n data.Contact.ImageExist = true;\r\n let ndx = me.Contacts.indexOf(me.SelectedContact);\r\n me.Contacts[ndx] = data.Contact;\r\n }\r\n me.OnUpdate.next(data);\r\n me.Working = false;\r\n this.getPage(1);\r\n }, (err) => {\r\n let FailResponse = new ExternalContactResponseDto();\r\n FailResponse.errormsg = \"could not connect to server!\";\r\n me.OnUpdate.next(FailResponse);\r\n me.Working = false;\r\n })\r\n }\r\n public RemoveContact() {\r\n let me = this;\r\n me.Working = true;\r\n this.Remove(me.SelectedContact.ExternalContactID)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(Response => {\r\n if (Response.success) {\r\n me.getPage(1);\r\n }\r\n me.OnDelete.next(Response);\r\n me.Working = false;\r\n }, (err) => {\r\n let FailResponse = new ExternalContactResponseDto();\r\n FailResponse.errormsg = \"could not connect to server!\";\r\n me.OnDelete.next(FailResponse);\r\n me.Working = false;\r\n })\r\n }\r\n public getSubAttachmentGroups() {\r\n const url =\r\n BERRY.hostName + `api/DepartmentApi/GetSubAttachmentGroupAutocomplete`;\r\n return super.get(url);\r\n }\r\n public GetExternalContactVisibility(\r\n pageId,\r\n searchText,\r\n orderBy,\r\n searchNo,\r\n sortDepartmant,\r\n allEntites: boolean = null\r\n ): Observable {\r\n let url =\r\n BERRY.hostName +\r\n `api/ContactsApi/GetExternalContactVisibility?pageId=${pageId}&searchText=${searchText}&orderBy=${orderBy}&searchNo=${searchNo}&sortDepartmant=${sortDepartmant}&allEntites=${allEntites}`;\r\n return super.get(url);\r\n }\r\n public SetExternalContactVisibility(subSetting): Observable {\r\n let url =\r\n BERRY.hostName + `api/ContactsApi/SetExternalContactVisibility`;\r\n return super.post(url, subSetting);\r\n }\r\n public RemoveExternalContactVisibilty(entityId, visibility): Observable {\r\n let model = {\r\n ExternalContactID: entityId,\r\n Visibility: visibility\r\n };\r\n let url =\r\n BERRY.hostName + `api/ContactsApi/RemoveExternalContactVisibilty`;\r\n return super.post(url, model);\r\n }\r\n public CheckIfExternalContactIsUsed(entityId): Observable {\r\n let model = {\r\n ExternalContactID: entityId\r\n };\r\n let url =\r\n BERRY.hostName + `api/ContactsApi/CheckIfExternalContactIsUsed`;\r\n return super.post(url, model);\r\n }\r\n\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Response } from \"@angular/http\";\r\nimport { IGlobalSettings } from \"../../_common/models/IGlobalSettings\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { Observable ,throwError} from \"rxjs\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class AppModuleSVC {\r\n baseURL = BERRY.hostName + \"api/AppModulesApi\";\r\n\r\n constructor(public http: HttpInterceptor) {}\r\n\r\n public getUserTypeAppModules(userTypeId): Observable {\r\n return this.http\r\n .get(this.baseURL + \"/GetUserTypeAppModules?businessUserTypeId=\" + userTypeId)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public getUserAppModules(userId): Observable {\r\n return this.http\r\n .get(this.baseURL + \"/get-user-appmodules?userId=\" + userId)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public updateUserAppModules(\r\n userId,\r\n enabledModules,\r\n disabledModules\r\n ): Observable {\r\n if (enabledModules.length > 2)\r\n enabledModules = enabledModules.substr(1, enabledModules.length - 2);\r\n else enabledModules = \"\";\r\n\r\n if (disabledModules.length > 2)\r\n disabledModules = disabledModules.substr(1, disabledModules.length - 2);\r\n else disabledModules = \"\";\r\n\r\n let url = `${\r\n this.baseURL\r\n }/update-user-appmodules?userId=${userId}&enabledModules=${enabledModules}&disabledModules=${disabledModules}`;\r\n return this.http.get(url).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n extractData(res: Response) {\r\n let body = res;\r\n return body || {};\r\n }\r\n\r\n handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n return throwError(errMsg);\r\n }\r\n}\r\n","import { HallDto } from \"./lookups/Hall-Dto\";\r\nimport { LocationDto } from \"./lookups/Location-Dto\";\r\nimport { MeetingPeriodDto } from \"./lookups/MeetingPeriod-Dto\";\r\nimport { ScheduleLKPCategoryDto } from \"./lookups/ScheduleLKP-Category-Dto\";\r\nimport { ScheduleLKPImportanceDto } from \"./lookups/ScheduleLKP-Importance-Dto\";\r\nimport { ScheduleLKPLocationTypeDto } from \"./lookups/ScheduleLKP-LocationType-Dto\";\r\nimport { IGlobalSettings } from \"../../_common/models/IGlobalSettings\";\r\nimport { ScheduleLKPTypeDto } from \"./lookups/ScheduleLKP-Type-Dto\";\r\nimport { getScheduleTemplateIcon, getScheduleImportanceIcon } from \"./enums/schedule-template-enum\";\r\nimport { datetimeHelper } from \"../../_common/utils/datetimeHelper\";\r\nimport { ScheduleItemOrganizerDto } from \"./ScheduleItemOrganizer-Dto\";\r\nimport { LightRelatedCorrespondanceDto } from \"./LightRelatedCorrespondance-Dto\";\r\nimport { ScheduleItemOptionDto } from \"./ScheduleItemOption-Dto\";\r\nimport { ScheduleItemRepetitionModel } from \"src/app/berry/ScheduledItems/ScheduleRepetition/schedule-item-repetition-model\";\r\nimport { IndividualRoleDTO } from \"../create/scheduling-create-cmp\";\r\nimport { ScheduleItemStatusEnum } from \"./enums/schedule-item-status\";\r\nimport { MeetingMinutesAttachmentsDto } from \"./meeting-minutes-attachments-dto\";\r\nimport { Guid } from \"guid-typescript\";\r\n\r\n\r\ndeclare let moment: any;\r\ndeclare let BERRY: IGlobalSettings;\r\n\r\nexport enum EditTypeEnum {\r\n OnlyOneMeeting = 1,\r\n EntireSeries = 2\r\n}\r\n\r\nexport enum MeetingStatusesEnum {\r\n Planned = 0,\r\n InProgress = 1,\r\n Skipped = 2,\r\n Done = 3,\r\n Canceled = 4,\r\n Deleted = 5,\r\n Draft = 6,\r\n WaitingForReview = 7,\r\n Rejected = 8,\r\n Archived = 9\r\n}\r\n\r\n\r\nexport class ScheduleItemDto {\r\n Participants: any[];\r\n public static getInstanceFromJson(json) {\r\n let tmp = Object.assign(new ScheduleItemDto(), json);\r\n tmp.prepareAfterFetch();\r\n return tmp;\r\n }\r\n\r\n public ScheduleStatusEnum: number = -1;\r\n public ActivateAttendance: boolean = false;\r\n public RemindersBeforeMeeting: boolean = false;\r\n public CanDelete: boolean = false;\r\n public prepareAfterFetch() {\r\n let dtHelper: datetimeHelper = new datetimeHelper();\r\n this.StartDate = dtHelper.ParseFromWebMethodParameter(\r\n this.StartDateStr,\r\n new Date()\r\n );\r\n this.EndDate = dtHelper.ParseFromWebMethodParameter(\r\n this.EndDateStr,\r\n new Date()\r\n );\r\n }\r\n\r\n public prepareBeforeSave() {\r\n let dtHelper: datetimeHelper = new datetimeHelper();\r\n this.StartDateStr = dtHelper.formatToWebMethodParamter(this.StartDate);\r\n this.EndDateStr = dtHelper.formatToWebMethodParamter(this.EndDate);\r\n }\r\n public EndDateWithoutFormatAndTime: any;\r\n public EditAllChilds: boolean = false;\r\n public DeleteAllChilds: boolean = false;\r\n public ScheduleItemId: string;\r\n public IsPublished: boolean = false;\r\n public TitleAr: string = \"\";\r\n public TitleEn: string = \"\";\r\n public Title: string;\r\n public FullTitleAr: string;\r\n public FullTitleEn: string;\r\n public FullTitle: string;\r\n public IsTitleClickable: boolean;\r\n public IsAutomaticTitle: boolean;\r\n public IsHidden: boolean = false;\r\n public Sequence: number;\r\n public Code: string;\r\n public ScheduleStatus: number;\r\n public CanbeActivated: boolean;\r\n public ScheduleStatusText: string;\r\n public ScheduleStatusColor: string;\r\n public TypeId: number;\r\n public Type: ScheduleLKPTypeDto;\r\n public CategoryId?: number = null;\r\n public Category: ScheduleLKPCategoryDto;\r\n public ImportanceId: number;\r\n public ImportanceName: string;\r\n public LookAndFeel: any = null;\r\n public Importance: ScheduleLKPImportanceDto;\r\n public ImportanceTitle: string;\r\n public LocationTypeId: number;\r\n public InternalLocationTypeId: number;\r\n public LocationType: ScheduleLKPLocationTypeDto;\r\n public DateStatusId: number;\r\n public DateStatus: any; //ScheduleLKPDateStatusDto\r\n public DateNote: string;\r\n public StartDate: Date;\r\n public EndDate: Date;\r\n public EndDateTime: Date;\r\n public StartDateTime: Date;\r\n public StartDateStr: string;\r\n public EndDateStr: string;\r\n public StartDateWithoutFormatAndTime: string;\r\n public StartTime: string;\r\n public EndTime: string;\r\n public StartTimeBasedOnTimeZone: string;\r\n public EndTimeBasedOnTimeZone: string;\r\n public IsAllDay: boolean;\r\n public DurationInMinutes: number;\r\n public CityId: number;\r\n public City: any;\r\n public CountryId: number;\r\n public Country: any;\r\n public LocationId: number;\r\n public LocationUrl: string;\r\n public Location: LocationDto;\r\n public LocationHallID: number | null;\r\n public LocationHall: HallDto;\r\n public RelatedCorrespondanceId: string;\r\n public MeetingPeriodId: number;\r\n public MeetingPeriod: MeetingPeriodDto;\r\n public LightRelatedCorrespondance: LightRelatedCorrespondanceDto;\r\n public TemplateId: number;\r\n public Template: any; //ScheduleTemplateDto\r\n public DateCreated: Date;\r\n public DateModified: Date;\r\n public CreatedByUserId: string;\r\n public ModifiedByUserId: string;\r\n public Organizers: ScheduleItemOrganizerDto[];\r\n public IndividualsRoles: IndividualRoleDTO[] = [];\r\n public OfficerUserID: string;\r\n public OfficerUserName: string;\r\n public IsSecured: boolean;\r\n public IsRejected: boolean;\r\n public IsOverNight: boolean;\r\n public IsArchived: boolean;\r\n public IsDisplayedInMainCalender: boolean;\r\n public Status: string;\r\n public IsDeleted: boolean = true;\r\n public FormattedLocation: string;\r\n public ParticipantsCount: string;\r\n public AttachmentsCount: number;\r\n public LinkedCorrespondenceCount: number;\r\n public ScheduleNoteCount: number;\r\n public InvitationLetterCount: number;\r\n public AttendanceRequestCount: number;\r\n public AttendedParticipantsCount: number;\r\n public CurrentUserScheduleSignatureRequestsCount: number;\r\n public CurrentUserScheduleMarkingRequestsCount: number;\r\n public AttachmentsGroupsCount: number;\r\n public Permissions: any;\r\n public HasExternalUsers: boolean;\r\n public IsConfirmedExternalUsers: boolean;\r\n public LocationText: string;\r\n public OrganizersIDs: string[];\r\n public AttendeesIDs: string[];\r\n public ScheduleItemWorkflowStatusText: any;\r\n public AttendeesRoles: any[] = [];\r\n public ParentScheduleItemId: string = Guid.EMPTY;\r\n public isInvitationSent: boolean = false;\r\n public ScheduleItemStatus: ScheduleItemStatusEnum;\r\n public DurationForMeetingStart: string;\r\n public virtualConference: boolean;\r\n public IsMeetingStartedManually: boolean;\r\n public IsMeetingEndedManually: boolean;\r\n public HasScheduleItemOptions: boolean;\r\n public CssClass: string;\r\n public TemplateName: string;\r\n public PurposeText: string;\r\n\r\n\r\n public get TemplateIcon() {\r\n if (!this.TemplateId) return null;\r\n return getScheduleTemplateIcon(this.TemplateId);\r\n }\r\n\r\n public get ImportanceIcon() {\r\n if (!this.ImportanceId) return null;\r\n return getScheduleImportanceIcon(this.ImportanceId);\r\n }\r\n\r\n public get StartDateWithTime() {\r\n if (!this.StartDate) return null;\r\n var d = moment(this.StartDate);\r\n var t = moment(this.StartTimeAsDate);\r\n d.hour(t.hour());\r\n d.minute(t.minute());\r\n return d.toDate();\r\n }\r\n\r\n public get EndDateWithTime() {\r\n if (!this.EndDate) return null;\r\n\r\n var d = moment(this.EndDate);\r\n var t = moment(this.EndTimeAsDate);\r\n d.hour(t.hour());\r\n d.minute(t.minute());\r\n return d.toDate();\r\n }\r\n\r\n public get StartTimeAsDate() {\r\n if (!this.StartTime) return null;\r\n var m = moment(this.StartTime, \"HH:mm\");\r\n return m.toDate();\r\n }\r\n\r\n public get StartTimeAsDateBasedOnTimeZone() {\r\n if (!this.StartTimeBasedOnTimeZone) return null;\r\n var m = moment(this.StartTimeBasedOnTimeZone, \"HH:mm\");\r\n return m.toDate();\r\n }\r\n\r\n public get EndTimeAsDateBasedOnTimeZone() {\r\n if (!this.EndTimeBasedOnTimeZone) return null;\r\n var m = moment(this.EndTimeBasedOnTimeZone, \"HH:mm\");\r\n return m.toDate();\r\n }\r\n\r\n public get EndTimeAsDate() {\r\n if (!this.EndTime) return null;\r\n var m = moment(this.EndTime, \"HH:mm\");\r\n return m.toDate();\r\n }\r\n\r\n public get DurationInMinutesHumanize() {\r\n if (!this.DurationInMinutes) return null;\r\n var i = moment.duration(this.DurationInMinutes, \"minutes\").humanize();\r\n return i;\r\n }\r\n\r\n\r\n public get DurationInMinutesReadable() {\r\n if (!this.DurationInMinutes) return null;\r\n\r\n var i;\r\n if (this.DurationInMinutes % 60 == 0)\r\n i = moment\r\n .duration(this.DurationInMinutes, \"minutes\")\r\n .format(`h [${BERRY.loc.scheduling.DurationInMinutesHour}]`);\r\n else\r\n i = moment\r\n .duration(this.DurationInMinutes, \"minutes\")\r\n .format(\r\n `h [${BERRY.loc.scheduling.DurationInMinutesHour}], m [${BERRY.loc.scheduling.DurationInMinutesMinute\r\n }]`\r\n );\r\n\r\n return i;\r\n }\r\n\r\n public get DurationInMinutesAsHoursAndMinutesForDetailsPage() {\r\n if (this.DurationInMinutes == undefined) return null;\r\n\r\n\r\n var startTimeAsDate = new Date(this.StartTimeAsDate);\r\n var endTimeAsDate = new Date(this.EndTimeAsDate);\r\n\r\n let sh = startTimeAsDate.getHours();\r\n let sm = startTimeAsDate.getMinutes();\r\n\r\n let eh = endTimeAsDate.getHours();\r\n let em = endTimeAsDate.getMinutes();\r\n\r\n var sdate = new Date(this.StartDate);\r\n var edate = new Date(this.EndDate);\r\n\r\n let newStartDate = sdate.setHours(sh);\r\n newStartDate = sdate.setMinutes(sm);\r\n\r\n let newEndDate = edate.setHours(eh);\r\n newEndDate = edate.setMinutes(em);\r\n\r\n let startDateTime = new Date(newStartDate);\r\n let endDateTime = new Date(newEndDate);\r\n\r\n var fromDate = startDateTime;\r\n var toDate = endDateTime;\r\n\r\n let momentStartTime = moment(fromDate);\r\n let momentEndTime = moment(toDate);\r\n this.DurationInMinutes = momentEndTime.diff(\r\n momentStartTime,\r\n \"minutes\"\r\n );\r\n\r\n var i = moment\r\n .duration(this.DurationInMinutes, \"minutes\")\r\n .format(\"hh:mm\", { trim: false });\r\n return i;\r\n }\r\n\r\n\r\n\r\n public get DurationInMinutesAsHoursAndMinutes() {\r\n if (this.DurationInMinutes == undefined) return null;\r\n\r\n // if (Math.sign(this.DurationInMinutes) == -1)\r\n // this.DurationInMinutes = +(12*60);\r\n\r\n var i = moment\r\n .duration(this.DurationInMinutes, \"minutes\")\r\n .format(\"hh:mm\", { trim: false });\r\n return i;\r\n }\r\n\r\n public get StartTimeFormatted() {\r\n return this.getFormattedTime(this.StartDateTime, this.StartTime);\r\n }\r\n public get EndTimeFormatted() {\r\n return this.getFormattedTime(this.EndDateTime, this.EndTime);\r\n }\r\n\r\n public getFormattedTime(dateTime, time) {\r\n if (!dateTime) return;\r\n if (!time) return;\r\n\r\n return BERRY.isEn ? new Date(dateTime).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' })\r\n : moment(time, \"HH:mm\").format(\"hh:mm a\");\r\n }\r\n\r\n public get StartTimeFormattedBasedOnTimeZone() {\r\n if (!this.StartTimeBasedOnTimeZone) return;\r\n\r\n return moment(this.StartTimeBasedOnTimeZone, \"HH:mm\").format(\"hh:mm a\");\r\n }\r\n public get EndTimeFormattedBasedOnTimeZone() {\r\n if (!this.EndTimeBasedOnTimeZone) return;\r\n\r\n return moment(this.EndTimeBasedOnTimeZone, \"HH:mm\").format(\"hh:mm a\");\r\n }\r\n\r\n public get MeetingPeriodStartTimeFormatted() {\r\n if (this.MeetingPeriod != null) {\r\n if (!this.MeetingPeriod.StartTime) return;\r\n\r\n return moment(this.MeetingPeriod.StartTime, \"HH:mm\").format(\"hh:mm a\");\r\n }\r\n }\r\n public get MeetingPeriodEndTimeFormatted() {\r\n if (this.MeetingPeriod != null) {\r\n if (!this.MeetingPeriod.EndTime) return;\r\n\r\n return moment(this.MeetingPeriod.EndTime, \"HH:mm\").format(\"hh:mm a\");\r\n }\r\n }\r\n\r\n public get MeetingPeriodStartTimeBasedOnTimeZoneFormatted() {\r\n if (this.MeetingPeriod != null) {\r\n if (!this.MeetingPeriod.StartTimeBasedInTimeZone) return;\r\n\r\n return moment(this.MeetingPeriod.StartTimeBasedInTimeZone, \"HH:mm\").format(\"hh:mm a\");\r\n }\r\n }\r\n public get MeetingPeriodEndTimeBasedOnTimeZoneFormatted() {\r\n if (this.MeetingPeriod != null) {\r\n if (!this.MeetingPeriod.EndTimeBasedInTimeZone) return;\r\n\r\n return moment(this.MeetingPeriod.EndTimeBasedInTimeZone, \"HH:mm\").format(\"hh:mm a\");\r\n }\r\n }\r\n\r\n \r\n\r\n public ScheduleItemOptions: ScheduleItemOptionDto[] = [];\r\n\r\n public ScheduleItemRepetitionModel: ScheduleItemRepetitionModel = new ScheduleItemRepetitionModel();\r\n\r\n public IsDisplayedForInterestedUser: boolean = false;\r\n public ScheduleTasksCount: number;\r\n\r\n public SharedByConnectionId: string;\r\n public SharedByUserId: string;\r\n public CanJoinSharedPresention: boolean;\r\n public InitiativeId: number = 0;\r\n\r\n MeetingMinutesAttachments: MeetingMinutesAttachmentsDto[] = [];\r\n MeetingMinutesAttachmentsCollapse: boolean = false;\r\n ShowAgendaTab: boolean = false;\r\n TopicsCounter: boolean = false;\r\n}\r\n","export enum scheduleTemplatesEnum {\r\n event_fast = 1, //مناسبة (سريع)\r\n public = 2, // جماهيري\r\n meeting = 3, // اجتماع\r\n travel = 4, // سفر\r\n ReceivingDelegation = 5, // استضافة وفد\r\n //HostingOnFood = 6, // استضافة على طعام\r\n EconomyandDevelopmentMeeting = 6,\r\n GeneralCommitteeMeeting = 7,\r\n StandingCommitteeMeeting = 8\r\n}\r\n\r\nexport enum scheduleItemImportanceEnum {\r\n normal = 1, //عادي\r\n low_importance = 2, // مهم\r\n high_importance = 3 // مهم جدا\r\n}\r\n\r\nexport function getScheduleTemplateIcon(templateType: scheduleTemplatesEnum) {\r\n //var n: scheduleTemplatesEnum = scheduleTemplatesEnum[templateType.toString()];\r\n let result = \"\";\r\n switch (templateType) {\r\n case scheduleTemplatesEnum.event_fast:\r\n result = \"evicon-calendar\";\r\n break;\r\n case scheduleTemplatesEnum.public:\r\n result = \"evicon-person-two\";\r\n break;\r\n case scheduleTemplatesEnum.meeting:\r\n result = \"evicon-person-three-stand\";\r\n break;\r\n case scheduleTemplatesEnum.travel:\r\n result = \"evicon-plane-top-left\";\r\n break;\r\n case scheduleTemplatesEnum.ReceivingDelegation:\r\n result = \"evicon-plane-bottom-left\";\r\n break;\r\n //case scheduleTemplatesEnum.HostingOnFood:\r\n // result = \"\";\r\n // break;\r\n case scheduleTemplatesEnum.EconomyandDevelopmentMeeting:\r\n result = \"evicon-person-three-stand\";\r\n break;\r\n case scheduleTemplatesEnum.GeneralCommitteeMeeting:\r\n result = \"evicon-person-three-stand\";\r\n break;\r\n case scheduleTemplatesEnum.StandingCommitteeMeeting:\r\n result = \"evicon-person-three-stand\";\r\n break;\r\n default:\r\n result = \"evicon-person-three-stand\";\r\n break;\r\n }\r\n return result;\r\n}\r\n\r\nexport function getScheduleImportanceIcon(\r\n importanceId: scheduleItemImportanceEnum\r\n) {\r\n //var n: scheduleTemplatesEnum = scheduleTemplatesEnum[templateType.toString()];\r\n let result = \"\";\r\n switch (importanceId) {\r\n case scheduleItemImportanceEnum.normal:\r\n result = \"evicon-success\";\r\n break;\r\n case scheduleItemImportanceEnum.low_importance:\r\n result = \"evicon-warning\";\r\n break;\r\n case scheduleItemImportanceEnum.high_importance:\r\n result = \"evicon-danger\";\r\n break;\r\n }\r\n return result;\r\n}\r\n","import { ScheduleItemParticipantDto } from \"../ScheduleItemParticipant-Dto\";\r\n\r\nexport class ScheduleItemExtraInfoDto {\r\n public AttendedParticipantsCount: number;\r\n public ParticipantsCount: number;\r\n public AttachmentsCount: number;\r\n public LinkedCorrespondenceCount: number;\r\n public ScheduleTasksCount: number;\r\n public ScheduleNoteCount: number;\r\n public InvitationLetterCount: number;\r\n public AttendanceRequestCount: number;\r\n public CurrentUserScheduleSignatureRequestsCount: number;\r\n public CurrentUserScheduleMarkingRequestsCount: number;\r\n public CurrentUserScheduleAprovalRequestsCount: number;\r\n public isHasAttachemntGroup: boolean;\r\n public HasExternalUsers: boolean;\r\n public IsConfirmedExternalUsers: boolean;\r\n public IsClientHaveTaskModule: boolean;\r\n public Permissions: any;\r\n public Participants: ScheduleItemParticipantDto[];\r\n public TopicCurrentStampRequestsCount: number;\r\n public CurrentStampRequestsCount: number;\r\n}\r\n\r\n\r\n","import { EventEmitter, Injectable, Output } from \"@angular/core\";\r\nimport { Response } from \"@angular/http\";\r\nimport { Guid } from \"guid-typescript\";\r\nimport { Observable, of, Subject } from \"rxjs\";\r\nimport { catchError, map } from \"rxjs/operators\";\r\nimport { IContactItem } from \"src/app/Contacts/comps/contacts-dtos\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { ScheduleItemReviewStatusEnum, ScheduleItemStatusEnum } from \"../_models/enums/schedule-item-status\";\r\nimport { ScheduleItemExtraInfoDto } from \"../_models/lookups/ScheduleItemExtraInfoDto\";\r\nimport { ScheduleItemDto } from \"../_models/ScheduleItem-Dto\";\r\n\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare let moment: any;\r\n\r\n@Injectable()\r\n\r\nexport class schedulingSVC extends BaseService {\r\n onReloadScheduleItem: EventEmitter = new EventEmitter();\r\n scheduleItemDataLoaded: EventEmitter = new EventEmitter();\r\n loadSupportStaffRoleHandler: EventEmitter = new EventEmitter();\r\n permission: any = {};\r\n baseURL = BERRY.hostName + \"api/schedule/\";\r\n readonly scheduleItemTopicBaseURL: string = BERRY.hostName + \"api/ScheduleItemTopicApi\";\r\n OnUpdate: Subject = new Subject();\r\n CanManageSupportStaff: boolean = false;\r\n viewDateStr: string;\r\n isBusy: boolean;\r\n corrId: string;\r\n SelectedDate: any = moment().format();\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n checkIfMeetingHasTopics(scheduleItemId: any): Observable {\r\n let url = `${BERRY.hostName}api/schedule/ScheduleItemAPI/CheckIfMeetingHasTopics?scheduleItemId=${scheduleItemId}`;\r\n return super.get(url);\r\n }\r\n\r\n getScheduleItemPermission(scheduleItemId: any, pageType: ScheduleItemPageType = null): Observable {\r\n let pageTypePart = pageType ? `&type=${pageType}` : \"\";\r\n let url = `${BERRY.hostName}api/schedule/ScheduleItemAPI/GetScheduleItemLogicHandler?scheduleId=${scheduleItemId}${pageTypePart}`;\r\n return super.get(url);\r\n }\r\n\r\n getMeetingMinutes(schedualeId: any, count: number): Observable {\r\n let url = `${BERRY.hostName}api/schedule/ScheduleItemAPI/GetMeetingMinutes?schedualeId=${schedualeId}&count=${count}`;\r\n return super.get(url);\r\n }\r\n getMeetingTopics(schedualeId: any, count: number): Observable {\r\n let url = `${BERRY.hostName}api/schedule/ScheduleItemAPI/GetMeetingTopics?schedualeId=${schedualeId}&count=${count}`;\r\n return super.get(url);\r\n }\r\n getLatestMeetingTasks(schedualeId: any): Observable {\r\n let url = `${BERRY.hostName}api/schedule/ScheduleItemAPI/getLatestMeetingTasks?schedualeId=${schedualeId}`;\r\n return super.get(url);\r\n }\r\n GetMeetingTasks(schedualeId: any): Observable {\r\n let url = `${BERRY.hostName}api/schedule/ScheduleItemAPI/GetMeetingTasks?schedualeId=${schedualeId}`;\r\n return super.get(url);\r\n }\r\n\r\n getScheduleItemLogicHandler(templateId: any, pageType: ScheduleItemPageType, scheduleItemId: any = Guid.EMPTY): Observable {\r\n\r\n let url = `${BERRY.hostName}api/schedule/ScheduleItemAPI/GetScheduleItemLogicHandlerByTemplate?templateId=${templateId}&type=${pageType}&scheduleItemId=${scheduleItemId}`;\r\n return super.get(url);\r\n }\r\n\r\n GetAttachmentTopicInfo(scheduleattachmentid: any): Observable {\r\n const me = this;\r\n\r\n let url = me.baseURL + \"GetAttachmentTopicInfo?scheduleattachmentid=\" + scheduleattachmentid;\r\n return super.get(url);\r\n }\r\n\r\n getNewCommitteesMembers(id: number): Observable {\r\n var url = BERRY.hostName + `api/committees/GetCommitteeMembers?committeeId=${id}&count=0`;\r\n return this.http.get(url).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n GetInitiativeMembers(id: number): Observable {\r\n\r\n return this.http\r\n .get(`${BERRY.hostName}api/InitiativesOverview/GetInitiativeMembers/${id}`).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n\r\n ScheduleOverviewReleatedCorrespondence(ScheduleItemId) {\r\n var url =\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi\" +\r\n \"/ScheduleOverviewReleatedCorrespondence?ScheduleItemId=\" +\r\n ScheduleItemId;\r\n return super.get(url);\r\n }\r\n\r\n getScheduleItem(schedualItemId: string): Observable {\r\n let timeZoneOffset = new Date().getTimezoneOffset();\r\n\r\n let url = `${BERRY.hostName}api/schedule/ScheduleItemAPI/scheduleItem/${schedualItemId}/${timeZoneOffset}`;\r\n return this.http.get(url)\r\n .pipe(\r\n map(function (res: Response) {\r\n let tmp = (\r\n Object.assign(new ScheduleItemDto(), res)\r\n );\r\n tmp.prepareAfterFetch();\r\n return tmp;\r\n }),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getScheduleItemExtraInfo(schedualItemId: string): Observable {\r\n\r\n let url = `${BERRY.hostName}api/schedule/ScheduleItemAPI/GetScheduleItemExtraInfoById/${schedualItemId}`;\r\n return this.http.get(url)\r\n .pipe(\r\n map(function (res: Response) {\r\n let tmp = (\r\n Object.assign(new ScheduleItemExtraInfoDto(), res)\r\n );\r\n return tmp;\r\n }),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getScheduleItemTasksCount(schedualItemId: string): Observable {\r\n\r\n let url = `${BERRY.hostName}api/schedule/ScheduleItemAPI/GetScheduleItemTasksCount/${schedualItemId}`;\r\n return this.http.get(url)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n CheckIfMeetingHasAuthenticatedExternalUsers(schedualItemId: string): Observable {\r\n return this.http\r\n .get(this.baseURL + `CheckIfMeetingHasAuthenticatedExternalUsers/${schedualItemId}`).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCalendarDate(): Observable {\r\n let url = BERRY.hostName + \"api/schedule/ScheduleItemAPI/Dates\";\r\n return this.http\r\n .get(url)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getDailyView(viewDate, viewToDate, activeMeetingsOnly: boolean = false): Observable {\r\n var ViewDateStr = moment(viewDate).format(BERRY.shortDateFormatFromURL);\r\n var ViewToDateStr = moment(viewToDate).format(BERRY.shortDateFormatFromURL);\r\n let timeZoneOffset = new Date().getTimezoneOffset();\r\n return this.http.get(BERRY.hostName + `api/schedule/ScheduleItemAPI/dailyView?ViewDate=${ViewDateStr}&toDate=${ViewToDateStr}&timeZoneOffset=${timeZoneOffset}&activeMeetingsOnly=${activeMeetingsOnly}`)\r\n .pipe(\r\n map(function (res: Response) {\r\n let body: ScheduleItemDto[] = res;\r\n let result = body.map(function (value) {\r\n let tmp = (\r\n Object.assign(new ScheduleItemDto(), value)\r\n );\r\n tmp.prepareAfterFetch();\r\n return tmp;\r\n });\r\n return result;\r\n }),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n\r\n getMeetingsTopicsCounter(scheduleItemIds: string[]): Observable {\r\n let url = `${this.scheduleItemTopicBaseURL}/GetMeetingsTopicsCounter`;\r\n return super.post(url, scheduleItemIds);\r\n }\r\n\r\n exportMeetingsReport(exportInfoDto): Observable {\r\n return this.http.post(BERRY.hostName + `api/schedule/ScheduleItemAPI/ExportMeetingsReport`, exportInfoDto);\r\n }\r\n\r\n createScheduleItem(scheduleDto: ScheduleItemDto): Observable {\r\n let timeZoneOffset = new Date().getTimezoneOffset();\r\n let url = this.baseURL + \"create?timeZoneOffset=\" + timeZoneOffset;\r\n return super.post(url, scheduleDto);\r\n }\r\n\r\n autoSignAttachments(scheduleItemId, attachmentIds): Observable {\r\n let url = BERRY.hostName + \"api/schedule/ScheduleItemAPI/AutoSignAttachments?scheduleId=\" + scheduleItemId;\r\n return super.post(url, attachmentIds);\r\n }\r\n\r\n inviteParticipants(scheduleItemId: string, participants: number[]): Observable {\r\n return super.post(this.baseURL + `inviteParticipants/${scheduleItemId}`, participants);\r\n }\r\n\r\n sendScheduleToReview(scheduleItemId: string): Observable {\r\n return super.post(this.baseURL + `sendScheduleToReview/${scheduleItemId}`, \"\");\r\n }\r\n\r\n checkCanSendScheduleToReview(scheduleItemId: string): Observable {\r\n return super.post(this.baseURL + `CheckCanSendScheduleToReview/${scheduleItemId}`, \"\");\r\n }\r\n\r\n resendAttendanceRequest(scheduleItemParticipantId: string): Observable {\r\n return super.post(this.baseURL + `resendAttendanceRequest/${scheduleItemParticipantId}`, \"\");\r\n }\r\n\r\n @Output(\"refreshPermissionHandler\") refreshPermissionHandler: EventEmitter = new EventEmitter();\r\n @Output(\"refreshAllPermissionHandlers\") refreshAllPermissionHandlers: EventEmitter = new EventEmitter();\r\n @Output(\"refreshAllPresentationAttachments\") refreshAllPresentationAttachments: EventEmitter = new EventEmitter();\r\n\r\n canPublishMeeting(scheduleItemId: string): Observable {\r\n let timeZoneOffset = new Date().getTimezoneOffset();\r\n return super.get(this.baseURL + `CanPublishMeeting/${scheduleItemId}?timeZoneOffset=${timeZoneOffset}`);\r\n }\r\n\r\n publishSchedule(scheduleItemId: string): Observable {\r\n let timeZoneOffset = new Date().getTimezoneOffset();\r\n return super.post(this.baseURL + `publishSchedule/${scheduleItemId}?timeZoneOffset=${timeZoneOffset}`);\r\n }\r\n\r\n rejectSchedule(scheduleItemId: string, rejectReason: string): Observable {\r\n let timeZoneOffset = new Date().getTimezoneOffset();\r\n return super.post(this.baseURL + `RejectSchedule/${scheduleItemId}?timeZoneOffset=${timeZoneOffset}&rejectReason=${rejectReason}`);\r\n }\r\n\r\n unPublishSchedule(scheduleItemId: string, UnpublishReason: string): Observable {\r\n return super.post(this.baseURL + `unPublishSchedule?scheduleItemId=${scheduleItemId}&scheduleItemId=${scheduleItemId}&reason=${UnpublishReason}`, \"\");\r\n }\r\n\r\n CheckScheduleRepitition(scheduleDto: ScheduleItemDto): Observable {\r\n return super.post(this.baseURL + \"CheckScheduleRepitition\", scheduleDto);\r\n }\r\n\r\n checkMeetingConflictTime(model: any): Observable {\r\n return super.post(this.baseURL + \"checkMeetingConflictTime\", model);\r\n }\r\n\r\n deleteScheduleItem(schedualItemId: string): Observable {\r\n return super.post(this.baseURL + `delete/${schedualItemId}`, \"\");\r\n }\r\n\r\n deleteScheduleItemWithChilds(schedualItemId: string): Observable {\r\n return super.post(this.baseURL + `DeleteWithChilds/${schedualItemId}`, \"\");\r\n }\r\n\r\n editScheduleItem(scheduleDto: ScheduleItemDto): Observable {\r\n let timeZoneOffset = new Date().getTimezoneOffset();\r\n var url = this.baseURL + `edit?timeZoneOffset=${timeZoneOffset}`;\r\n return super.post(url, scheduleDto);\r\n }\r\n\r\n\r\n\r\n CheckLinkedContactsEmailIfExist(linkedContactsIDs: number[]): Observable {\r\n var url =\r\n this.baseURL +\r\n `CheckLinkedContactsEmailIfExist?linkedContactsIDs=${linkedContactsIDs}`;\r\n return super.get(url);\r\n }\r\n\r\n getCorrespondenceAttachementCanLinkeToScheduleTopic(schedulItemId, scheduleItemTopicId) {\r\n const url =\r\n `${BERRY.hostName}api/Schedule/GetCorrespondenceAttachementCanLinkeToScheduleTopic?scheduleItemId=${schedulItemId}&&scheduleItemTopicId=${scheduleItemTopicId}`;\r\n return super.get(url);\r\n }\r\n\r\n getScheduleAttachmentsCanLinkeToScheduleTopic(schedulItemId, scheduleItemTopicId) {\r\n const url =\r\n `${BERRY.hostName}api/Schedule/GetScheduleAttachmentsCanLinkeToScheduleTopic?scheduleItemId=${schedulItemId}&&scheduleItemTopicId=${scheduleItemTopicId}`;\r\n return super.get(url);\r\n }\r\n\r\n validationStartEndTime(scheduleItem: any): Observable {\r\n let timeZoneOffset = new Date().getTimezoneOffset();\r\n var url = this.baseURL + `ValidationStartEndTime?timeZoneOffset=${timeZoneOffset}`;\r\n\r\n return super.post(url, scheduleItem);\r\n }\r\n\r\n GetCorrespondenceAuthorityMeeting(CorrId: string) {\r\n var url = this.baseURL + `GetCorrespondenceAuthorityMeeting/${CorrId}`;\r\n return super.get(url);\r\n }\r\n\r\n GetDefaultAttendees(corrId: string): Observable {\r\n var url = this.baseURL + `GetDefaultAttendees/${corrId}`;\r\n return super.get(url);\r\n }\r\n\r\n GetOrganizer(corrId: string) {\r\n var url = this.baseURL + `GetOrganizer/${corrId}`;\r\n return super.get(url);\r\n }\r\n\r\n cancelMeeting(scheduleItemDto): Observable {\r\n return super.post(this.baseURL + \"CancelMeeting\", scheduleItemDto);\r\n }\r\n\r\n reActivateCanceledMeeting(scheduleItemDto): Observable {\r\n let timeZoneOffset = new Date().getTimezoneOffset();\r\n\r\n return super.post(\r\n `${this.baseURL}ReactivateCanceledMeeting?timeZoneOffset=${timeZoneOffset}`,\r\n scheduleItemDto\r\n );\r\n }\r\n\r\n skipMeeting(scheduleItemDto): Observable {\r\n return super.post(this.baseURL + \"SkipMeeting\", scheduleItemDto);\r\n }\r\n\r\n startMeeting(scheduleItemDto): Observable {\r\n return super.post(this.baseURL + \"StartMeeting\", scheduleItemDto);\r\n }\r\n\r\n endMeeting(scheduleItemDto): Observable {\r\n return super.post(this.baseURL + \"EndMeeting\", scheduleItemDto);\r\n }\r\n\r\n archiveMeeting(scheduleItemDto): Observable {\r\n return super.post(this.baseURL + \"ArchiveMeeting\", scheduleItemDto);\r\n }\r\n\r\n checkIfAnyTopicsNotPresented(scheduleItemId): Observable {\r\n let url = `${BERRY.hostName}api/schedule/ScheduleItemAPI/CheckIfAnyTopicsNotPresented?scheduleItemId=${scheduleItemId}`;\r\n return super.get(url);\r\n }\r\n\r\n GetIndividualsOrganizationByIds(IndividualIds): Observable {\r\n var baseURLIndividual = BERRY.hostName + \"api/contacts/individuals/\";\r\n var url = baseURLIndividual + `GetIndividualsOrganizationByIds`;\r\n return super.post(url, IndividualIds);\r\n }\r\n\r\n checkIfIndividualIsHrUser(individualId: number): Observable {\r\n var baseURLIndividual = BERRY.hostName + \"api/contacts/individuals\";\r\n return super.get(baseURLIndividual + \"/CheckIndividualLinkedWithContact/\" + individualId);\r\n }\r\n\r\n\r\n checkIfScheduleItemHasTopics(scheduleItemId, newStartDate, newEndDate): Observable {\r\n var url = this.baseURL + `CheckIfScheduleItemHasTopics?scheduleItemId=${scheduleItemId}&newStartDate=${newStartDate}&newEndDate=${newEndDate}`;\r\n return super.post(url);\r\n }\r\n\r\n checkIfIndividualsAsHrUser(individualIds: number[]): Observable {\r\n var baseURLIndividual = BERRY.hostName + \"api/contacts/individuals\";\r\n return super.get(baseURLIndividual + \"/CheckIndividualsLinkedWithContact?individualIDsString=\" + individualIds.toString());\r\n }\r\n\r\n GetDefaultAttendeesForAuthorityMeeting(): Observable {\r\n var baseURLIndividual = BERRY.hostName + \"api/contacts/search\";\r\n return super.get(baseURLIndividual + \"/DefaultIndividuals\");\r\n }\r\n\r\n getOrganizersAdvanceInfo(scheduleId: any): Observable {\r\n var url = this.baseURL + `OrganizersAdvanceInfo/${scheduleId}`;\r\n return super.get(url);\r\n }\r\n\r\n getAllMeetingPeriod() {\r\n var url = `${this.baseURL}getAllMeetingPeriods`;\r\n return super.get(url);\r\n }\r\n\r\n canSendSMSFromGeneralSetting(): any {\r\n let url = BERRY.hostName + \"Correspondences/Applications/GetIfCanSendSMSFromGeneralSetting\";\r\n return this.http.get(url);\r\n }\r\n\r\n GetChatRoomInfo(refId, chatRoomReferenceType, scheduleItemId = null): Observable {\r\n let url = BERRY.hostName + \"api/chat/ChatRoomInfo?refId=\" + refId + \"&refType=\" + chatRoomReferenceType + \"&scheduleItemId=\" + scheduleItemId;\r\n return super.get(url);\r\n }\r\n\r\n\r\n kickOutForLoggedInUser(): any {\r\n let url = BERRY.hostName + \"api/chat/KickOutForLoggedInUser?userId=\" + localStorage.getItem('__userId') + \"&authToken=\" + localStorage.getItem('__userToken');\r\n return super.get(url);\r\n }\r\n\r\n getCommitteeEndDate(id: number): Observable {\r\n var url = BERRY.hostName + `api/committees/GetCommitteeEndDate?Id=${id}`;\r\n return this.http.get(url).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getUserPreference(): Observable {\r\n\r\n let url = `${BERRY.hostName}api/users-api/user-preferences`;\r\n return super.get(url);\r\n\r\n }\r\n\r\n setUserPreference(data): Observable {\r\n return this.http.post(`${BERRY.hostName}api/users-api/SetUserPreferencesList`,data);\r\n }\r\n\r\n getMeeting(id: string, includeDeleted: boolean): Observable {\r\n let url = `${BERRY.hostName}api/schedule/GetDetails/${id}?includeDeleted=${includeDeleted}`;\r\n return super.get(url);\r\n }\r\n\r\n getMeetingsForAssistant(data): Observable {\r\n return this.http.post(`${BERRY.hostName}api/schedule/ScheduledMeetingsForAssistant`,data);\r\n }\r\n\r\n}\r\n\r\n\r\nexport class ChatRoomInfoDto {\r\n ProviderRoomId: string;\r\n ProviderRoomName: string;\r\n AuthToken: string;\r\n RChatServerUrl: string;\r\n OriginalRoomName: string;\r\n UserId: string;\r\n}\r\n\r\n\r\nexport enum ScheduleItemPageType {\r\n AgendaCategoryHandler = 1,\r\n AgendaItem = 2,\r\n AgendaItemAttachmentHandler = 3,\r\n AgendaItemConversationHandler = 4,\r\n AttachmentHandler = 5,\r\n AttachmentItemHandler = 6,\r\n AttendanceRequestsHandler = 7,\r\n AttendanceRequestItem = 8,\r\n AttendeesHandler = 9,\r\n DetailHandler = 10,\r\n MinuteOfMmeetingHandler = 11,\r\n MinuteOfMmeetingItemHandler = 12,\r\n OverviewHandler = 13,\r\n PrivateScheduleHandler = 14,\r\n PrivateScheduleItemsHandler = 15,\r\n RelatedCorrespondenceHandler = 16,\r\n ScheduleItemCreationHandler = 17,\r\n ExternalUserHandler = 18,\r\n ScheduleItemGeneralHandler = 19,\r\n ScheduleItemLogicHandler = 20,\r\n SignatureItemRequestHandler = 21,\r\n SignatureRequestHandler = 22,\r\n SupportStaffRoleHandler = 23,\r\n SupportTeamHandler = 24,\r\n TaskItemHandler = 25,\r\n TaskItemsHandler = 26,\r\n TopicVotingHandler = 27,\r\n VotingHandler = 28,\r\n AgendaHandler = 29,\r\n All = 30,\r\n GeneralScheduleHandler = 31,\r\n ScheduleNoteHandler = 32,\r\n ImportantLinkHandler = 35\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Subject } from \"rxjs\";\r\nimport { ScheduleTemplateRoleDTO } from \"../../berry/correspondences/manage/ScheduleTemplates/schedule-templates-cmp\";\r\nimport { ScheduleItemDto } from \"../_models/ScheduleItem-Dto\";\r\nimport { scheduleViewTypeEnum } from \"../_models/enums/schedule-viewtype-enum\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class schedulingDetailsSharedSVC {\r\n public isBusy: boolean = false;\r\n public RelatedCorrespondanceId: any;\r\n public scheduleItem: ScheduleItemDto;\r\n public scheduleViewActivePage: scheduleViewTypeEnum;\r\n public showOrganizersModal: Subject = new Subject();\r\n public participantsCount: number = 0;\r\n public AttendedParticipantsCount: number = 0;\r\n public ScheduleTopicsCount: number = 0;\r\n public attachmentsCount: number = 0;\r\n public linkedCorrespondenceCount: number = 0;\r\n public InvitationLetterCount: number = 0;\r\n public AttendanceRequestCount: number = 0;\r\n public ScheduleNoteCount: number = 0;\r\n public tasksCount: number = 0;\r\n public ScheduleTemplateRoles: ScheduleTemplateRoleDTO[];\r\n public hasExternalUsers: boolean = false;\r\n public isconfirm: boolean = false;\r\n public updateTopicsAfterChangeStatus: Subject = new Subject();\r\n public meetingChatDiv: boolean = false;\r\n public topicChatDiv: boolean = false;\r\n public IsOverView: boolean = false;\r\n constructor() { }\r\n}\r\n","export enum ResourceTypeEnum {\r\n MyTeam = 0,\r\n EmployeesTasks = 1,\r\n ExternalResources = 2\r\n}","export class DashboardDto {\r\n EmpHaveTasksCount: number;\r\n AllTasksCount: number;\r\n TasksWithMeetingsCount: number;\r\n TasksWithIndividualsCount: number;\r\n TasksWithCorrespondenceCount: number;\r\n TasksWithCommitteeCount: number;\r\n TasksWithInitiativesCount: number;\r\n MyTeamCount: number;\r\n IndirectEmployeesCount: number;\r\n TaskStatusColors: Array;\r\n TaskStatusLegends: Array;\r\n TaskStatusCounts: Array;\r\n AllTaskStatusesCount: number;\r\n MappTasksCount: number;\r\n OfficeName: string;\r\n ExternalResourcesCount: number;\r\n}","\r\nexport enum TaskTypesEnum {\r\n GeneralTask,\r\n CorrespondenceTask,\r\n ScheduleItemTask,\r\n ScheduleTopicTask,\r\n ScheduleItemAndTopicsTask,\r\n CommitteeTask,\r\n None,\r\n MAppTasks,\r\n InitiativeTask\r\n} \r\n\r\nexport enum FilterEnum {\r\n total,\r\n inProgress,\r\n late,\r\n withoutDeadline,\r\n notlate,\r\n completedtask,\r\n upcoming\r\n}\r\n\r\nexport enum TasksDeadlineTypeEnum {\r\n Date=0,\r\n Duration=1\r\n}","import { LiteLinkedTaskDto } from './../models/LinkedTaskDto';\r\nimport { catchError, map } from 'rxjs/operators';\r\nimport { Injectable } from \"@angular/core\";\r\nimport { HttpInterceptor } from \"../../_common/services/http-interceptor\";\r\nimport { IGlobalSettings } from \"../../_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { TaskPopupDto } from \"../models/TaskPopupDto\";\r\nimport { CorrespondenceTaskDto, SortType } from \"src/app/_common/models/Tasks Panel/CorrespondenceTaskDto\";\r\nimport { TaskUploadAttachmentDto } from \"src/app/berry/correspondences/details/assign-tasks/assign-task-model\";\r\nimport { TaskTypesEnum } from \"../models/TaskTypesEnum\";\r\nimport { TaskLinkedAttachmentDto } from \"../models/TaskLinkedAttachmentDto\";\r\nimport { CommitteePageType } from \"../../committees/services/committees-svc\";\r\nimport { Observable, Subject } from \"rxjs\";\r\nimport { TaskCarbonCopyDto } from '../models/TaskCarbonCopyDto';\r\nimport { ResourceTypeEnum } from '../Resources/ResourceTypeEnum';\r\nimport { TaskStatusFilterDto } from '../models/TaskStatusFilterDto';\r\nimport { TaskToDoDto } from '../models/TaskToDoDto';\r\nimport { TaskToDoContainerDto } from '../models/TaskToDoContainerDto';\r\n\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class TaskItemService extends BaseService {\r\n\r\n public onTasksChanged: Subject = new Subject();\r\n\r\n isBusy = false;\r\n SelectedId = null;\r\n AllowedUsers = [];\r\n AllowedUsersTypes = [];\r\n IsDetailedOpened = false;\r\n IsAllowedAsManager: Boolean;\r\n SelectedTask: CorrespondenceTaskDto = null;\r\n baseURL: string;\r\n\r\n private readonly baseUrlImproved: string = `${BERRY.hostName}api/ImprovedTaskItems`;\r\n\r\n constructor(http: HttpInterceptor) {\r\n super(http);\r\n this.baseURL = `${BERRY.hostName}api/TaskItems`;\r\n }\r\n\r\n public params: TasksParameters = {\r\n\r\n PageIndex: 1,\r\n PageSize: BERRY.PageSize,\r\n };\r\n\r\n public getLinkedCorr(TaskItemId): Observable {\r\n let url = `${this.baseURL}/getLinkedCorrespondeces?TaskItemId=` + TaskItemId;\r\n return super.get(url);\r\n }\r\n\r\n loadCorrespondenceAttachments(corrId) {\r\n let url = `${BERRY.hostName}api/CorrespondenceApi/GetCorrespondenceAttachments?id=${corrId}&gropupId=-1&ignoreViewRecommendationTabsPermission=true`;\r\n return super.get(url);\r\n }\r\n\r\n checkCanViewTaskModuleForCommittee(entityId: any) {\r\n let url = `${BERRY.hostName}api/committees/GetCommitteeUserPermissions?id=` + entityId;\r\n return super.get(url);\r\n }\r\n\r\n //#region Linked Tasks\r\n getLinkedTypes(): Observable {\r\n let url = `${BERRY.hostName}api/TasksLinkedTypes/Get`;\r\n return this.http.get(url);\r\n }\r\n\r\n getLinkedTasks(taskId, recurringSettingId) {\r\n let url = `${this.baseUrlImproved}/GetLinkedTasks?taskId=${taskId}&recurringSettingId=${recurringSettingId}`;\r\n let params: any = {\r\n taskId: taskId,\r\n recurringSettingId: recurringSettingId\r\n };\r\n\r\n return super.get(url, params);\r\n }\r\n\r\n saveLinkedTasks(linkedTasksDto): Observable {\r\n let url = `${this.baseUrlImproved}/SaveLinkedTasks`;\r\n return super.post(url, linkedTasksDto);\r\n }\r\n\r\n addTaskTodoContainer(taskTodoContainerDto: TaskToDoContainerDto): Observable {\r\n let url = `${this.baseUrlImproved}/AddTaskTodoContainer`;\r\n return super.post(url, taskTodoContainerDto);\r\n }\r\n\r\n updateTaskTodoContainer(taskToDoContainerDto: TaskToDoContainerDto): Observable {\r\n let url = `${this.baseUrlImproved}/UpdateTaskTodoContainer`;\r\n return super.post(url, taskToDoContainerDto);\r\n }\r\n\r\n removeTaskTodoContainer(taskToDoContainerDto: TaskToDoContainerDto): Observable {\r\n let url = `${this.baseUrlImproved}/RemoveTaskTodoContainer`;\r\n return super.post(url, taskToDoContainerDto);\r\n }\r\n\r\n addTaskTodo(containerId: number, taskId: number, taskTodoDto: TaskToDoDto): Observable {\r\n let url = `${this.baseUrlImproved}/AddTaskTodo?containerId=${containerId}&taskId=${taskId}`;\r\n return super.post(url, taskTodoDto);\r\n }\r\n\r\n updateTaskTodo(containerId: number, taskId: number, taskToDoDto: TaskToDoDto): Observable {\r\n let url = `${this.baseUrlImproved}/UpdateTaskTodo?containerId=${containerId}&taskId=${taskId}`;\r\n return super.post(url, taskToDoDto);\r\n }\r\n\r\n removeTaskTodo(containerId: number, taskId: number, taskToDoDto: TaskToDoDto): Observable {\r\n let url = `${this.baseUrlImproved}/RemoveTaskTodo?containerId=${containerId}&taskId=${taskId}`;\r\n return super.post(url, taskToDoDto);\r\n }\r\n\r\n unLinkedTasks(liteLinkedTaskDto: LiteLinkedTaskDto): Observable {\r\n let url = `${this.baseUrlImproved}/UnLinkedTasks?linkedTaskId=${liteLinkedTaskDto.LinkedTaskId}`;\r\n return this.http.post(url, liteLinkedTaskDto.TasksIds);\r\n }\r\n //#endregion\r\n\r\n //#region Carbon Copies \r\n getCCes(taskId): Observable {\r\n let url = `${this.baseUrlImproved}/GetCCes?taskId=${taskId}`;\r\n return super.get(url);\r\n }\r\n\r\n updateCCes(taskId, taskTitle, taskCarbonCopyDto: TaskCarbonCopyDto[]=[]) {\r\n let me = this;\r\n let url = `${me.baseUrlImproved}/UpdateCCes?taskId=${taskId}&taskTitle=${taskTitle}`;\r\n return super.post(url, taskCarbonCopyDto);\r\n }\r\n\r\n setTaskAsSeen(taskIds: number[] = null): Observable {\r\n if (taskIds == null){\r\n taskIds = [];\r\n }\r\n\r\n let url = `${this.baseUrlImproved}/SetTaskAsSeen?taskIds=${taskIds}`;\r\n\r\n return this.http.post(url, taskIds);\r\n }\r\n //#endregion\r\n\r\n\r\n getTaskDetails(referenceKey) {\r\n let url = `${this.baseUrlImproved}?id=${referenceKey}`;\r\n return super.get(url);\r\n }\r\n\r\n //#region Improved Actions\r\n getTaskHandler(id, taskType = 0, pageType: TaskItemTargetHandler, refrenceId = \"\") {\r\n let url = \"\";\r\n id != null ?\r\n url = `${this.baseURL}/GetTaskItemHandler?taskId=${id}&type=${taskType}&pageType=${pageType}&referenceId=${refrenceId}`\r\n :\r\n url = `${this.baseURL}/GetTaskItemHandler?&type=${taskType}&pageType=${pageType}&referenceId=${refrenceId}`;\r\n\r\n return super.get(url);\r\n }\r\n\r\n getCommitteeLogicHandler(committeeId: any, pageType: CommitteePageType): Observable {\r\n let url = `${this.baseURL}/GetCommitteeLogicHandler?committeeId=${committeeId}&type=${pageType}`;\r\n return super.get(url);\r\n }\r\n\r\n CreateTask(taskPopupDto: TaskPopupDto) {\r\n let me = this;\r\n let tasksDto = new Array();\r\n tasksDto.push(taskPopupDto);\r\n let url = `${me.baseUrlImproved}/Create`;\r\n return super.post(url, tasksDto);\r\n }\r\n\r\n GetTaskPopupDetails(referenceKey) {\r\n let url = `${this.baseUrlImproved}?id=${referenceKey}`;\r\n return super.get(url);\r\n }\r\n\r\n EditTask(taskPopupDto: TaskPopupDto) {\r\n let me = this;\r\n let url = `${me.baseUrlImproved}/Edit`;\r\n return super.post(url, taskPopupDto);\r\n }\r\n\r\n GetGeneralTasks(individualId: number, isCommitteesDashboardTasks: boolean = false, isMeetingsDashboardTasks: boolean = false, doneTasks: boolean = false, filterType: FilteredTypeEnum = FilteredTypeEnum.None,\r\n pageIndex: number = 1, filterByStatus: number = -1, tasksFilter: TasksFilterDto) {\r\n const taskFilter = { ...tasksFilter };\r\n taskFilter.IndividualId = individualId;\r\n taskFilter.DoneTasks = doneTasks;\r\n taskFilter.FilterType = filterType;\r\n taskFilter.PageIndex = pageIndex;\r\n taskFilter.FilterByStatus = filterByStatus;\r\n taskFilter.IsCommitteesDashboardTasks = isCommitteesDashboardTasks;\r\n taskFilter.IsMeetingsDashboardTasks = isMeetingsDashboardTasks;\r\n taskFilter.TaskType = [TaskTypesEnum.GeneralTask];\r\n return super.post(`${this.baseUrlImproved}/GetTasks`, taskFilter);\r\n }\r\n\r\n GetTabsTasksCounts(individualId: number, isCommitteesDashboardTasks: boolean = false, isMeetingsDashboardTasks: boolean = false, tasksFilter: TasksFilterDto) {\r\n const taskFilter = { ...tasksFilter };\r\n taskFilter.IndividualId = individualId;\r\n taskFilter.IsCommitteesDashboardTasks = isCommitteesDashboardTasks;\r\n taskFilter.IsMeetingsDashboardTasks = isMeetingsDashboardTasks;\r\n taskFilter.TaskType = [TaskTypesEnum.GeneralTask, TaskTypesEnum.None];\r\n return super.post(`${this.baseUrlImproved}/GetTabsTasksCounts`, taskFilter);\r\n }\r\n\r\n GetIndividualTasksWithoutGeneralTasks(individualId: number, isCommitteesDashboardTasks: boolean = false, isMeetingsDashboardTasks: boolean = false, linkedItemId = null, doneTasks: boolean = false,\r\n filterType: FilteredTypeEnum = FilteredTypeEnum.None,\r\n taskGroupType: TaskTypesEnum[] = [TaskTypesEnum.None], tasksFilter: TasksFilterDto) {\r\n\r\n const taskFilter = { ...tasksFilter };\r\n taskFilter.IndividualId = individualId;\r\n taskFilter.DoneTasks = doneTasks;\r\n taskFilter.FilterType = filterType;\r\n taskFilter.IsCommitteesDashboardTasks = isCommitteesDashboardTasks;\r\n taskFilter.IsMeetingsDashboardTasks = isMeetingsDashboardTasks;\r\n taskFilter.LinkedItemId = linkedItemId;\r\n taskFilter.TaskType = taskGroupType;\r\n return super.post(`${this.baseUrlImproved}/GetTasks`, taskFilter);\r\n }\r\n\r\n\r\n\r\n //#endregion\r\n\r\n saveTaskNote(taskDetailsDto) {\r\n let url = `${this.baseURL}/SaveTaskNote`;\r\n\r\n return this.http\r\n .post(url, taskDetailsDto).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n SaveTaskPagesNo(Id, pageNo, TaskType = 0, LinkedItemId = 0) {\r\n let linkedItemIdPart = this.getLinkedItemIdUrlPart(LinkedItemId);\r\n let url = `${this.baseURL}/SaveTaskPagesNo?Id=${Id}&pageNo=${pageNo}&TaskType=${TaskType}${linkedItemIdPart}`;\r\n let params = {\r\n Id: Id,\r\n pageNo: pageNo\r\n };\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n SaveTaskDeadLine(Id, date, hours, minutes, TaskType = 0, LinkedItemId = 0) {\r\n let linkedItemIdPart = this.getLinkedItemIdUrlPart(LinkedItemId);\r\n let url = `${this.baseURL}/SaveTaskDeadLine?Id=${Id}&date=${date}&hours=${hours}&minutes=${minutes}&TaskType=${TaskType == null ? 0 : TaskType}${linkedItemIdPart}`;\r\n let params = {\r\n Id: Id,\r\n date: date,\r\n hours: hours,\r\n minutes: minutes\r\n };\r\n\r\n return this.http\r\n .post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n SaveTaskReminder(Id, date, hours, minutes, TaskType = 0, LinkedItemId = 0) {\r\n let linkedItemIdPart = this.getLinkedItemIdUrlPart(LinkedItemId);\r\n let url = `${this.baseURL}/SaveTaskRemindere?Id=${Id}&date=${date}&hours=${hours}&minutes=${minutes}&TaskType=${TaskType == null ? 0 : TaskType}${linkedItemIdPart}`;\r\n let params = {\r\n Id: Id,\r\n date: date,\r\n hours: hours,\r\n minutes: minutes\r\n };\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n SaveTaskEmployeeReminder(Id, date, hours, minutes, TaskType = 0, LinkedItemId = 0) {\r\n let linkedItemIdPart = this.getLinkedItemIdUrlPart(LinkedItemId);\r\n let url = `${this.baseURL}/SaveTaskEmployeeReminder?Id=${Id}&date=${date}&hours=${hours}&minutes=${minutes}&TaskType=${TaskType}${linkedItemIdPart}`;\r\n let params = {\r\n Id: Id,\r\n date: date,\r\n hours: hours,\r\n minutes: minutes\r\n };\r\n return super.post(url, params);\r\n }\r\n\r\n SaveTaskAssignedTo(Id, AssignedToId, TaskType = 0, LinkedItemId = 0) {\r\n let linkedItemIdPart = this.getLinkedItemIdUrlPart(LinkedItemId);\r\n let url = `${this.baseURL}/SaveTaskAssignedTo?Id=${Id}&AssignedToId=${AssignedToId}&TaskType=${TaskType}${linkedItemIdPart}`;\r\n let params = {\r\n Id: Id,\r\n AssignedToId: AssignedToId\r\n };\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n SaveTaskTitle(Id, title, TaskType = 0, LinkedItemId = null) {\r\n let linkedItemIdPart = this.getLinkedItemIdUrlPart(LinkedItemId);\r\n let url = `${this.baseURL}/SaveTaskTitle?id=${Id}&title=${title}&taskType=${TaskType}${linkedItemIdPart}`;\r\n return super.post(url);\r\n }\r\n\r\n DeleteTask(Ids, taskType = 0, linkedItemId: any = 0) {\r\n if (Ids == null)\r\n Ids = 0;\r\n\r\n let linkedItemIdPart = linkedItemId != null ? `&linkedItemId=${linkedItemId}` : \"\";\r\n let url = `${this.baseURL}/DeleteTask?Ids=${Ids}&taskType=${taskType}${linkedItemIdPart}`;\r\n\r\n let params = {\r\n Ids: Ids\r\n };\r\n return this.http\r\n .post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n GetTaskComments(taskId) {\r\n let url = `${this.baseURL}/GetTaskComments?taskId=${taskId}`;\r\n let params = {\r\n taskId: taskId\r\n };\r\n\r\n return this.http\r\n .post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n AddTaskComment(taskComment: any) {\r\n let url = `${this.baseURL}/AddTaskComment?taskComment=${taskComment}`;\r\n\r\n return this.http\r\n .post(url, taskComment).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n DoneTask(Ids, linkedItemId = 0) {\r\n\r\n if (Ids == null)\r\n Ids = 0;\r\n\r\n let linkedItemIdPart = this.getLinkedItemIdUrlPart(linkedItemId);\r\n let url = `${this.baseURL}/DoneTask?Ids=${Ids}${linkedItemIdPart}`;\r\n let params = {\r\n Ids: Ids\r\n };\r\n\r\n return super.post(url, params);\r\n\r\n\r\n }\r\n\r\n getExportData(exportType, TasksFilterDto: TasksFilterDto, exportInfoDto, resourceType = null) {\r\n var exportActionName: string = \"pdf\";\r\n switch (exportType) {\r\n case \"pdf\":\r\n exportActionName = \"GenerateTaskItemsReportPdf\";\r\n break;\r\n case \"excel\":\r\n exportActionName = \"GenerateTaskItemsReportExcel\";\r\n break;\r\n case \"ppt\":\r\n exportActionName = \"GenerateTaskItemsReportPPT\";\r\n break;\r\n default:\r\n exportActionName = \"GenerateTaskItemsReportPdf\";\r\n break;\r\n }\r\n\r\n let params = {\r\n TasksFilter: TasksFilterDto,\r\n exportInfoDto: exportInfoDto\r\n };\r\n let resourceTypePart = resourceType != null ? `?resourceType=${resourceType}` : \"\";\r\n var url = `${BERRY.hostName}api/TaskItemReports/${exportActionName}${resourceTypePart}`;\r\n return this.http.post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n\r\n UnDoneTask(Ids) {\r\n let url = `${this.baseURL}/UnDoneTask?Ids=${Ids}`;\r\n let params = {\r\n Ids: Ids\r\n };\r\n\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n ConfirmCancelTaskCompletion(Id, IsConfirm) {\r\n let url = `${this.baseURL}/ConfirmCancelTaskCompletion?Id=${Id}&IsConfirm=${IsConfirm}`;\r\n return super.post(url);\r\n }\r\n\r\n GetTaskLinkedAttachments(Id: Number, type: TaskTypesEnum) {\r\n let url = `${this.baseURL}/GetTaskLinkedAttachments?Id=${Id}&type=${type}`;\r\n let params = {\r\n Id: Id\r\n };\r\n //CorrId: CorrId\r\n\r\n return this.http\r\n .post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n GetLinkedTaskAttachments(Id: Number, taskType: TaskTypesEnum) {\r\n let url = `${this.baseURL}/GetLinkedTaskAttachments?Id=${Id}&taskType=${taskType}`;\r\n let params = {\r\n Id: Id\r\n };\r\n //CorrId: CorrId\r\n\r\n return this.http\r\n .post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n GetAllMeetingsTask(Id: Number) {//, CorrId: any\r\n let url = `${this.baseURL}/GetMeetingsTask?Id=${Id}`;//&CorrId=${CorrId}\r\n let params = {\r\n Id: Id,\r\n\r\n };\r\n // CorrId: CorrId\r\n\r\n return this.http\r\n .post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n SaveTaskDescription(Id, description, TaskType, LinkedItemId) {\r\n description = encodeURIComponent(description);\r\n let linkedItemIdPart = this.getLinkedItemIdUrlPart(LinkedItemId);\r\n let url = `${this.baseURL}/SaveTaskDescription?Id=${Id}&description=${description}&TaskType=${TaskType}${linkedItemIdPart}`;\r\n let params: any = {\r\n Id: Id,\r\n description: description\r\n };\r\n\r\n return super.get(url, params);\r\n }\r\n\r\n saveTaskClassification(id: number, taskClassificationId: any) {\r\n let url = `${this.baseURL}/SaveTaskClassification?taskId=${id}&classificationId=${taskClassificationId}`;\r\n return super.post(url, {});\r\n }\r\n\r\n saveTaskImportance(id: number, taskImportanceId: any) {\r\n let url = `${this.baseURL}/SaveTaskImportance?taskId=${id}&importanceId=${taskImportanceId}`;\r\n return super.post(url, {});\r\n }\r\n\r\n SaveTasksReminder(Ids, date, hours, minutes) {\r\n let url = `${this.baseURL}/SaveTasksRemindere?Ids=${Ids}&date=${date}&hours=${hours}&minutes=${minutes}`;\r\n let params = {\r\n Ids: Ids,\r\n date: date,\r\n hours: hours,\r\n minutes: minutes\r\n };\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n LinkAttachmentsListWithTask(list: TaskLinkedAttachmentDto[], TaskType, LinkedItemId) {\r\n let linkedItemIdPart = this.getLinkedItemIdUrlPart(LinkedItemId);\r\n let url = `${this.baseURL}/SaveAttachmentsListTask?TaskType=${TaskType}${linkedItemIdPart}`;\r\n return super.post(url, list);\r\n }\r\n\r\n SaveTaskType(Id, TaskTypeId, TaskType = 0, LinkedItemId = 0) {\r\n let linkedItemIdPart = this.getLinkedItemIdUrlPart(LinkedItemId);\r\n let url = `${this.baseURL}/SaveTaskType?Id=${Id}&TaskTypeId=${TaskTypeId}&TaskType=${TaskType}${linkedItemIdPart}`;\r\n let params = {\r\n Id: Id,\r\n TaskTypeId: TaskTypeId\r\n };\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n SaveTaskMeetings(Id, Ids) {\r\n let url = `${this.baseURL}/SaveTaskMeetings?Id=${Id}&Ids=${Ids}`;\r\n let params = {\r\n Id: Id,\r\n Ids: Ids\r\n };\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n GetLinkedMeetingsWithTask(taskId) {\r\n let url = `${this.baseURL}/GetLinkedMeetingsWithTask?taskId=${taskId}`;\r\n let params: any = {\r\n taskId: taskId\r\n };\r\n\r\n return super.get(url, params);\r\n }\r\n\r\n GetLinkedMeeting(taskId, taskType) {\r\n let url = `${this.baseURL}/GetLinkedMeeting?taskId=${taskId}&taskType=${taskType}`;\r\n let params: any = {\r\n taskId: taskId\r\n };\r\n\r\n return super.get(url, params);\r\n }\r\n\r\n //======================================================\r\n saveTaskAttachmentToCorrespondence(obj: TaskUploadAttachmentDto) {\r\n let url = `${this.baseURL}/SaveTaskAttachmentToCorrespondence?obj=${obj}`;\r\n return super.post(url, obj);\r\n }\r\n\r\n checkUserHaveVacation(userId: string, deadlineDate) {\r\n let url = `${this.baseURL}/checkUserHaveVacation?userId=${userId}&deadlineDate=${deadlineDate}`;\r\n let params: any = {\r\n userId: userId,\r\n deadlineDate: deadlineDate\r\n };\r\n\r\n return super.get(url, params);\r\n }\r\n\r\n GetAllMeetingsTasks(Id: Number, CorrId: any) {\r\n let url = `${BERRY.hostName}api/correspondenceAssignTasks/get-meetings-task?Id=${Id}&CorrId=${CorrId}`;\r\n let params = {\r\n Id: Id,\r\n CorrId: CorrId\r\n };\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n DeleteLinkedMeetingOfTask(Id: Number, ScheduleItemId: any) {\r\n let url = `${this.baseURL}/delete-linked-Meeting?Id=${Id}&ScheduleItemId=${ScheduleItemId}`;\r\n let params = {\r\n Id: Id,\r\n ScheduleItemId: ScheduleItemId\r\n };\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n DeleteLinkedAttachmentsOfTask(taskID: Number, AttachmentId: any, type: string) {\r\n let url = `${this.baseURL}/delete-linked-attachments?Id=${taskID}&AttachmentId=${AttachmentId}&type=${type}`;\r\n let params = {\r\n Id: taskID,\r\n AttachmentId: AttachmentId,\r\n type: type\r\n };\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n GetAllTasks(assignTaskSearchDto: TasksFilterDto) {\r\n let url = `${this.baseUrlImproved}/GetTasks`;\r\n return super.post(url, assignTaskSearchDto);\r\n }\r\n\r\n saveTaskEmployeeReminder(Id, date, hours, minutes) {\r\n let url = `${this.baseURL}/save-employee-reminder?Id=${Id}&date=${date}&hours=${hours}&minutes=${minutes}`;\r\n let params = {\r\n Id: Id,\r\n date: date,\r\n hours: hours,\r\n minutes: minutes\r\n };\r\n return super.post(url, params);\r\n }\r\n\r\n SaveTaskNote(Id, note) {\r\n let url = `${this.baseURL}/save-note?Id=${Id}¬e=${note}`;\r\n let params = {\r\n Id: Id,\r\n note: note\r\n };\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n IsAllowedOnlyByManagers() {\r\n let url = `${this.baseURL}/is-allowed-manager`;\r\n\r\n return super.get(url, null);\r\n }\r\n\r\n GetAllowedUsers(Id) {\r\n let url = `${this.baseURL}/get-allowed-users?Id=${Id}`;\r\n let params = {\r\n Id: Id\r\n };\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n GetAllowedUsersTypes() {\r\n let url = `${this.baseURL}/get-allowed-users-types`;\r\n let params = {};\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n GetTaskTypes() {\r\n let url = `${BERRY.hostName}api/correspondenceAssignTasks/get-task-types`;\r\n let params = {};\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n public isUserManager(): Observable {\r\n this.IsBusy = true;\r\n return super.get(BERRY.hostName + \"api/Dashboard/isManager\");\r\n }\r\n\r\n AddFollowUpDate(Ids, date, hours, minutes, TaskType = 0, LinkedItemId = 0) {\r\n let linkedItemIdPart = this.getLinkedItemIdUrlPart(LinkedItemId);\r\n let url = `${this.baseURL}/AddFollowUpDate?Ids=${Ids}&date=${date}&hours=${hours}&minutes=${minutes}&TaskType=${TaskType}${linkedItemIdPart}`;\r\n let params = {\r\n Ids: Ids\r\n };\r\n return this.http\r\n .post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n SaveFollowUpDate(Id, date, hours, minutes, TaskType = 0, LinkedItemId = 0) {\r\n let linkedItemIdPart = this.getLinkedItemIdUrlPart(LinkedItemId);\r\n let url = `${this.baseURL}/SaveFollowUpDate?Id=${Id}&date=${date}&hours=${hours}&minutes=${minutes}&TaskType=${TaskType == null ? 0 : TaskType}${linkedItemIdPart}`;\r\n let params = {\r\n Id: Id\r\n };\r\n return this.http\r\n .post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n SendTaskUrgentRequestNotificationAndEmail(taskId, isEmailEnabled, isSmsEnabled, moduleID, TaskType = 0, LinkedItemId = 0) {\r\n let linkedItemIdPart = +LinkedItemId;\r\n linkedItemIdPart = LinkedItemId ? LinkedItemId : 0;\r\n let url = `${this.baseURL}/SendTaskUrgentRequestNotificationAndEmail`;\r\n let params = {\r\n TaskId: taskId,\r\n SendEmail: isEmailEnabled,\r\n SendSMS: isSmsEnabled,\r\n ModuleID: moduleID,\r\n TaskType: TaskType,\r\n LinkedItemId: linkedItemIdPart\r\n };\r\n return this.http\r\n .post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n GetUrgentRequestUserData(userLinkedContactId) {\r\n let url = `${this.baseURL}/GetMobileNumberByIndividualId?individualId=${userLinkedContactId}`;\r\n let params = {\r\n individualId: userLinkedContactId,\r\n };\r\n return this.http\r\n .post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n changeTaskStatus(selectedTaskId: any, statusId: number, completionRate: number, taskFromMApp: boolean = false, nextStep: string = \"\",\r\n prevSteps: string = \"\", latenessReason: string = \"\", connStatusTextAr: string = \"\", connStatusTextEn: string = \"\", cssColor: string = \"\",\r\n isConfirmCompletedTaskEnabled: boolean = false, isRestored: boolean = false, assignedToIndividualId: number = 0, multipleTaskIds: any = [], recurrenceId: string = \"\") {\r\n const body = {\r\n SelectedTaskId: selectedTaskId,\r\n StatusId: statusId,\r\n CompletionRate: completionRate,\r\n TaskFromMApp: taskFromMApp,\r\n NextStep: nextStep,\r\n PrevSteps: prevSteps,\r\n LatenessReason: latenessReason,\r\n ConnStatusTextAr: connStatusTextAr,\r\n ConnStatusTextEn: connStatusTextEn,\r\n CssColor: cssColor,\r\n IsConfirmCompletedTaskEnabled: isConfirmCompletedTaskEnabled,\r\n IsRestored: isRestored,\r\n AssignedToIndividualId: assignedToIndividualId,\r\n SelectedTaskIds: multipleTaskIds,\r\n RecurrenceId: recurrenceId\r\n };\r\n\r\n const url = `${this.baseURL}/ChangeTaskStatus`;\r\n return super.post(url, body);\r\n }\r\n\r\n getStatuses(taskStatusFilterDto: TaskStatusFilterDto) {\r\n const url = `${BERRY.hostName}api/TasksStatuses/GetTasksStatuses`;\r\n return super.post(url, taskStatusFilterDto);\r\n }\r\n\r\n getCompletedAndInProgressStatusesObjs() {\r\n const url = `${this.baseURL}/CompletedAndInProgressStatuses`;\r\n return super.get(url);\r\n }\r\n\r\n reassignedTaskHistoryLogs(taskId): Observable {\r\n const url = `${this.baseURL}/ReassignedTaskHistoryLogs?TaskId=${taskId}&IsInTaskDetail=${true}`;\r\n return super.get(url);\r\n }\r\n\r\n getTasksActivitiesSummary(taskId: number) {\r\n const url = `${BERRY.hostName}api/TasksActivity/GetTasksActivitiesSummary?taskId=${taskId}`;\r\n return super.get(url);\r\n }\r\n\r\n getTasksActivitiesDetails(taskId: number) {\r\n const url = `${BERRY.hostName}api/TasksActivity/GetTasksActivitiesDetails?taskId=${taskId}`;\r\n return super.get(url);\r\n }\r\n\r\n addTasksActivity(dto) {\r\n let url = `${BERRY.hostName}api/TasksActivity/AddTasksActivity`;\r\n return super.post(url, dto);\r\n }\r\n\r\n editTasksActivity(dto) {\r\n let url = `${BERRY.hostName}api/TasksActivity/EditTasksActivity`;\r\n return super.post(url, dto);\r\n }\r\n\r\n deleteTasksActivity(activityId: number) {\r\n let url = `${BERRY.hostName}api/TasksActivity/DeleteTasksActivity?activityId=${activityId}`;\r\n return super.post(url);\r\n }\r\n\r\n hasTaskActivities(taskId: number) {\r\n const url = `${BERRY.hostName}api/TasksActivity/HasTaskActivities?taskId=${taskId}`;\r\n return this.http\r\n .get(url)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getLinkedItemIdUrlPart(linkedItemId) {\r\n linkedItemId = +linkedItemId;\r\n linkedItemId = linkedItemId ? linkedItemId : 0;\r\n return linkedItemId ? `&LinkedItemId=${linkedItemId}` : \"\";\r\n }\r\n}\r\n\r\nexport enum TaskItemTargetHandler {\r\n All = 1,\r\n General = 2,\r\n Details = 3\r\n}\r\n\r\nexport interface TasksParameters {\r\n PageIndex: number;\r\n PageSize: number;\r\n}\r\n\r\n\r\nexport enum FilteredTypeEnum {\r\n None = 0,\r\n DoneLateTasks = 1,\r\n LateTasks = 2,\r\n ExpiresToday = 3,\r\n ExpiresThisWeek = 4,\r\n DoneTasks = 5,\r\n InProgress = 6\r\n}\r\n\r\nexport enum BoxTypeEnum {\r\n AssignToMeInProgressTasks,\r\n AssignByMeInProgressTasks,\r\n AssignToMeDoneTasks,\r\n AssignByMeDoneTasks,\r\n RemovedTasks,\r\n CCesTasks,\r\n All\r\n}\r\n\r\nexport enum SortByColumnNameEnum {\r\n Name,\r\n Organization,\r\n Job,\r\n TaskCount,\r\n LateTaskCount,\r\n FullName,\r\n PositionName,\r\n EntityName,\r\n CorrespondenceTasksCount,\r\n CorrespondenceTasksLateCount,\r\n ScheduleTasksCount,\r\n CommitteeTasksCount,\r\n CommitteeLateTasksCount,\r\n ScheduleTasksLateCount,\r\n GeneralTasksCount,\r\n GeneralTasksLateCount,\r\n InitiativeTasksCount,\r\n InitiativeTasksLateCount\r\n}\r\n\r\nexport class TasksFilterDto {\r\n BoxType?: BoxTypeEnum = null;\r\n AssignedToUsersIds?: number[] = [];\r\n EntitiesIds?: number[] = [];\r\n CommitteesIds?: number[] = [];\r\n TaskType?: TaskTypesEnum[] = [TaskTypesEnum.None];\r\n Status?: FilteredTypeEnum = FilteredTypeEnum.None;\r\n SearchText?: string = \"\";\r\n IsForMyTasks?: boolean = true;\r\n IsResourcesTab?: boolean = false;\r\n IndividualId?: number = 0;\r\n PageIndex?: number = 1;\r\n PageSize?: number = 20;\r\n DoneTasks?: boolean = false;\r\n FilterType?: number = 0;\r\n FilterByStatus?: number = -1;\r\n IsCommitteesDashboardTasks?: boolean = false;\r\n IsMeetingsDashboardTasks?: boolean = false;\r\n TaskGroupType?: number = 6;\r\n SortBy?: SortType = SortType.Descending;\r\n LinkedItemId?: string = null;\r\n HasFullPermissionsOnInitiatives?: boolean = false;\r\n SelectedTasksIds?: any[] = [];\r\n SortByColumnName?: SortByColumnNameEnum = SortByColumnNameEnum.Name;\r\n ResourceType?: ResourceTypeEnum = ResourceTypeEnum.MyTeam;\r\n OnlyHaveTasks?: boolean = false;\r\n AssignedToUserIds?: string = \"\";\r\n}\r\n","import { IGlobalSettings } from \"../models/IGlobalSettings\";\r\nimport { IndividualContactDto, OrganizationContactDto } from \"../models/contact-dtos\";\r\nimport { IContactItem, ContactItemTypeEnum } from \"src/app/Contacts/comps/contacts-dtos\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\nexport class LinkedContactDefaultEmailAndPhone {\r\n public GetIndividualDefaultEmail(lc: IndividualContactDto) {\r\n if (!lc) return;\r\n\r\n if (lc.ContactEmails.length > 0) {\r\n let DefaultContactEmails = lc.ContactEmails.filter(\r\n ContactEmail => ContactEmail.isDefault === true\r\n );\r\n\r\n if (DefaultContactEmails.length > 0)\r\n lc.DefaultContactEmail = DefaultContactEmails[0];\r\n else lc.DefaultContactEmail = lc.ContactEmails[0];\r\n }\r\n }\r\n\r\n public GetIndividualDefaultPhone(lc: IndividualContactDto) {\r\n if (!lc) return;\r\n\r\n if (lc.ContactPhones.length > 0) {\r\n let DefaulContactPhones = lc.ContactPhones.filter(\r\n ContactPhone => ContactPhone.isDefault === true\r\n );\r\n\r\n if (DefaulContactPhones.length > 0)\r\n lc.DefaultContactPhone = DefaulContactPhones[0];\r\n else lc.DefaultContactPhone = lc.ContactPhones[0];\r\n }\r\n }\r\n\r\n public GetIndividualPickedContact(lc: IndividualContactDto) {\r\n if (!lc) return null;\r\n\r\n this.GetIndividualDefaultEmail(lc);\r\n this.GetIndividualDefaultPhone(lc);\r\n\r\n let PickedContact = {\r\n DisplayNameAr: lc.FullNameAr,\r\n DisplayNameEn: lc.FullNameEn,\r\n Id: lc.IndividualId,\r\n Type: ContactItemTypeEnum.Individual,\r\n DisplayName: BERRY.isEn ? lc.FullNameEn : lc.FullNameAr,\r\n HasPhoto: lc.Photo && !lc.Photo.isDeleted,\r\n DefaultEmail: lc.DefaultContactEmail ? lc.DefaultContactEmail.Email : \"\"\r\n };\r\n\r\n return PickedContact;\r\n }\r\n\r\n //OrganizationContactDto\r\n public GetOrganizationDefaultEmail(lc: OrganizationContactDto) {\r\n if (!lc) return;\r\n\r\n if (lc.ContactEmails.length > 0) {\r\n let DefaultContactEmails = lc.ContactEmails.filter(\r\n ContactEmail => ContactEmail.isDefault === true\r\n );\r\n\r\n if (DefaultContactEmails.length > 0)\r\n lc.DefaultContactEmail = DefaultContactEmails[0];\r\n else lc.DefaultContactEmail = lc.ContactEmails[0];\r\n }\r\n }\r\n\r\n public GetOrganizationDefaultPhone(lc: OrganizationContactDto) {\r\n if (!lc) return;\r\n\r\n if (lc.ContactPhones.length > 0) {\r\n let DefaulContactPhones = lc.ContactPhones.filter(\r\n ContactPhone => ContactPhone.isDefault === true\r\n );\r\n\r\n if (DefaulContactPhones.length > 0)\r\n lc.DefaultContactPhone = DefaulContactPhones[0];\r\n else lc.DefaultContactPhone = lc.ContactPhones[0];\r\n }\r\n }\r\n\r\n public GetOrganizationPickedContact(lc: OrganizationContactDto) {\r\n if (!lc) return null;\r\n this.GetOrganizationDefaultEmail(lc);\r\n this.GetOrganizationDefaultPhone(lc);\r\n\r\n let PickedContact = {\r\n DisplayNameAr: lc.NameAr,\r\n DisplayNameEn: lc.NameEn,\r\n Id: lc.OrganizationId,\r\n Type: ContactItemTypeEnum.Individual,\r\n DisplayName: BERRY.isEn ? lc.NameEn : lc.NameAr,\r\n HasPhoto: lc.Photo && !lc.Photo.isDeleted,\r\n DefaultEmail: lc.DefaultContactEmail ? lc.DefaultContactEmail.Email : \"\"\r\n };\r\n\r\n return PickedContact;\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../../../models/IGlobalSettings\";\r\nimport { BaseService } from \"../../../services/baseService\";\r\nimport { Observable } from \"rxjs\";\r\nimport { HttpInterceptor } from \"../../../../_common/services/http-interceptor\";\r\nimport { HttpClient} from \"@angular/common/http\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { SignatureTypes } from \"../../../../berry/correspondences/_models/enums/SignatureTypes\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class AuthenticateAttachmentSvc extends BaseService {\r\n baseURL = BERRY.hostName + \"api/digital-certificate-attachment/\";\r\n\r\n constructor(public readonly httpclient: HttpClient,\r\n http: HttpInterceptor) {\r\n super(http);\r\n }\r\n public getAttachmentDigitalState(attID): Observable {\r\n let url = this.baseURL + `get-digital-state/${attID}`;\r\n return super.get(url);\r\n }\r\n public changeAttachmentDigitalState(attID): Observable {\r\n let url = this.baseURL + `update-digital-state/${attID}`;\r\n return super.post(url);\r\n }\r\n public prepareAttachment(attID, tempAttID, annotations, signatureType = SignatureTypes.Signature): Observable {\r\n let url = this.baseURL + `prepare/${attID}/${tempAttID}?signatureTypes=${signatureType}`;\r\n\r\n return super.post(url, annotations);\r\n }\r\n\r\n public Sign(attID): Observable {\r\n let url = this.baseURL + `sign/${attID}`;\r\n return super.post(url);\r\n }\r\n\r\n public uploadTempAttachment(attchId): Observable {\r\n let url = BERRY.appSettings.keys.dmsServerUrl + `create-temp/${attchId}?withoutUserSignature=${BERRY.User.ActualUserId}`;\r\n\r\n return super.post(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n}","export enum ScheduleItemTopicAttachmentTypeEnum {\r\n Topic_Attachment = 0,\r\n Archive_Attachment = 1,\r\n Private_Attachment = 2,\r\n Presentation_Attachment = 3\r\n}\r\n\r\n","export enum CorrespondenceUserRelationEnum {\r\n Admin, // 0\r\n Personal, // 1\r\n MeAsManager, // 2\r\n MyEntitiesEmployeesInboxes, // 3 -- Only for Currently in TO & My Entities EMps\r\n Ownership, // 4\r\n MyDraft, // 5\r\n PublicInboxAccess, // 6\r\n PersonalCc, // 7\r\n MeAsManagerCc, // 8\r\n HasDivertCoursePermission, // 9\r\n UserInFarwaringLog, // 10\r\n MeAsManagerInFarwaringLog, // 11\r\n MyEntitiesEmployeesInFarwaringLog, // 12 -- In Forwarding Log & My Entiies Emps(To & Cc)\r\n PublicInboxAccessCc, // 13\r\n UserInForwardingLogCc, // 14\r\n MeAsManagerInForwardingLogCc, // 15\r\n AllMyEntitiesInboxes, // 16\r\n BelongsToSenderMyEntity, // 17\r\n HasViewEntityInboxPermission,//18\r\n MeAsConsultant,//19\r\n MeAsParticipant,//20\r\n MeAsFollower, // 21\r\n ViewMyCommitteeInbox, // 22\r\n}\r\n","export enum SystemAttachmentGroupEnum {\r\n AccumulatedReport = -1\r\n}","\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{getText('UploadFromComputer', 'CSHTML/Areas/Correspondences/Attachments/Index')}}\r\n
\r\n
\r\n {{SelectedTempFileName}}\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 {{getText('DoScan', 'CSHTML/Areas/Correspondences/Attachments/Index')}}\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 {{maxFileSizeCanBeUpload}}\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n {{supportedFileExtensions}}\r\n \r\n \r\n
\r\n \r\n \r\n\r\n {{getText('A4SizeWarning', 'Attachments')}}\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 {{getText('AttachmnetGroupMsg', 'AttachmnetGroups')}}\r\n
\r\n
\r\n {{getText('AttachmnetGroupMsgProc', 'AttachmnetGroups')}}\r\n
\r\n
\r\n {{getText('AttachmnetGroupValidationMessage', 'AttachmnetGroups')}}\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n {{RequiredString}}\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 {{RequiredString}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n

\r\n \r\n \r\n {{getText('MoreDetails','CSHTML/Areas/Correspondences/Attachments/Index')}}\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
0\"\r\n class=\"background-white padding-10 border-left border-right border-bottom\">\r\n\r\n
\r\n \r\n {{president.XCPresidentEmploymentNumber}}\r\n
\r\n {{president.ExecutiveName}}\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 {{getText('ToggleOn','CSHTML/Areas/Correspondences/Attachments/Index','en')}}\r\n \r\n \r\n {{getText('ToggleOn','CSHTML/Areas/Correspondences/Attachments/Index','ar')}}\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{getText('ToggleOff','CSHTML/Areas/Correspondences/Attachments/Index','en')}}\r\n \r\n \r\n {{getText('ToggleOff','CSHTML/Areas/Correspondences/Attachments/Index', 'ar')}}\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 {{getText('AttachmnetGroupMsg', 'AttachmnetGroups')}}\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n {{RequiredString}}\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 {{RequiredString}}\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
0\"\r\n class=\"background-white padding-10 border-left border-right border-bottom\">\r\n\r\n
\r\n \r\n {{president.XCPresidentEmploymentNumber}}\r\n
\r\n {{president.ExecutiveName}}\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n

\r\n \r\n {{\r\n getText('MoreDetails','CSHTML/Areas/Correspondences/Attachments/Index')\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 {{getText('ToggleOn', 'CSHTML/Areas/Correspondences/Attachments/Index','ar')}}\r\n \r\n \r\n {{getText('ToggleOn', 'CSHTML/Areas/Correspondences/Attachments/Index','en')}}\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{getText('ToggleOff', 'CSHTML/Areas/Correspondences/Attachments/Index','en')}}\r\n \r\n \r\n {{getText('ToggleOff', 'CSHTML/Areas/Correspondences/Attachments/Index','ar')}}\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 {{checkIfImagesInBuffer}} / {{currentImageIndexInBuffer}}\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 Error:\r\n

\r\n {{getText('Ifyouwanttouse', 'CSHTML/Areas/Correspondences/Attachments/Index')}}\r\n

\r\n
\r\n {{getText('Makesurethescannerconnection','CSHTML/Areas/Correspondences/Attachments/Index')}}\r\n
\r\n {{getText('Makesuretheinaugurationdefinition','CSHTML/Areas/Correspondences/Attachments/Index')}}\r\n {{getText('Canbeused', 'CSHTML/Areas/Correspondences/Attachments/Index')}}\r\n
\r\n {{getText('Pleasebesuretodownload',\r\n 'CSHTML/Areas/Correspondences/Attachments/Index')}}{{getText('AfterInstallingTheProgramMakeSureToReloadThePage','CSHTML/Areas/Correspondences/Attachments/Index')}}\r\n \r\n {{getText('clickheretodownload','CSHTML/Areas/Correspondences/Attachments/Index') }}\r\n \r\n {{getText('clickhere','CSHTML/Areas/Correspondences/Attachments/Index')}}\r\n \r\n\r\n \r\n \r\n {{getText('withOutLink','CSHTML/Areas/Correspondences/Attachments/Index')}}\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\nimport { takeWhile } from 'rxjs/operators';\r\nimport { Component, ChangeDetectorRef, ViewChild, NgZone, Output, Input, EventEmitter } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { IGlobalSettings } from \"../../../_common/models/IGlobalSettings\";\r\nimport { DetailsAttachmentSVC } from \"../../../_common/components/Attachment/details-attachment-svc\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { webTwainSVC } from \"../../../_common/services/webTwain.wrapper\";\r\nimport { DetailsSVC } from \"../../../berry/correspondences/details/details-svc\";\r\nimport { AttachmentsGroupsFilter, AttachmentAccessLevelTypesEnum } from \"./dto/attachmentGroup-dto\";\r\nimport { generalSettingsSvc } from \"../../../berry/correspondences/manage/generalSettings/general-settings-svc\";\r\nimport { FileExtensionDto } from \"../../../berry/correspondences/manage/generalSettings/prevented-extensions-cmp\";\r\nimport { BaseCmp } from \"../BaseComponent\";\r\nimport { DialogManager, ConfirmationBoxOptions, ConfirmationBoxType, ConfirmationBoxResult } from \"../../services/dialog-manager\";\r\nimport { IComboboxOptions, IComboboxServerDatasourceOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { AttachmentDto } from \"../../models/AttachmentDto\";\r\nimport { SystemModules } from \"../../models/GetUserSignatureDto\";\r\nimport { DetailsAttachmentsFlextViewer } from \"./details-attachment-flexViewer-cmp\";\r\nimport { ShowFlexPaperAnnotations } from \"../../models/ShowFlexPaperAnnotations\";\r\nimport { ShowFlexPaperTopBarActions } from \"../../models/ShowFlexPaperTopBarActions\";\r\nimport { AttachmentTypesEnum } from \"src/app/berry/correspondences/_models/enums/AttachmentTypesEnum\";\r\nimport { UserPermissionService, UserRoles } from \"../../services/Permissions/user-permission-service\";\r\nimport { CorrespondenceCategoryIdEnum } from \"../../../berry/correspondences/_models/CorrespondenceCategoryId-Enum\";\r\nimport { PopupComponent, IPopup } from \"../popup/popup-component\";\r\nimport { AppModulesEnum, XCAttachmentLinkedTypeEnum } from \"../../models/AppModulesEnum\";\r\nimport { ScheduleItemTopicAttachmentTypeEnum } from \"../../../berry/correspondences/_models/enums/ScheduleItemTopicAttachmentTypeEnum\";\r\nimport { CommitteePageType, CommitteesSvc } from \"src/app/committees/services/committees-svc\";\r\nimport { GuidUtil } from \"../../utils/guid\";\r\nimport { XCUserDto } from \"../../../berry/correspondences/manage/generalSettings/mobile-settings-cmp\";\r\nimport { Guid } from 'guid-typescript';\r\nimport { CorrespondenceUserRelationEnum } from '../../../berry/correspondences/_models/CorrespondenceUserRelation-Enum';\r\nimport { FileUploaderComponent } from '../file-uploader/file-uploader.component';\r\nimport { SystemAttachmentGroupEnum } from '../../enums/system-attachment-group.enum';\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var btnUpload_onclick: any;\r\ndeclare var Dynamsoft: any;\r\ndeclare var DWObject: any;\r\ndeclare var DWObjectLargeViewer: any;\r\ndeclare var $: any;\r\ndeclare var jQuery: any;\r\n\r\n@Component({\r\n selector: \"details-attachment-add\",\r\n templateUrl: \"./details-attachment-add-ng.html\",\r\n styles: [\r\n `\r\n a.CustomLinkCss:link {\r\n color: red;\r\n }\r\n \r\n a.CustomLinkCss:visited {\r\n color: green;\r\n }\r\n \r\n a.CustomLinkCss:hover {\r\n color: hotpink;\r\n }\r\n \r\n a.CustomLinkCss:active {\r\n color: blue;\r\n }\r\n `\r\n ],\r\n providers: [\r\n generalSettingsSvc\r\n ]\r\n})\r\nexport class DetailsAttachmentsAddCmp extends BaseCmp {\r\n\r\n @ViewChild(\"fileUploaderElm\") fileUploaderElm: FileUploaderComponent;\r\n fileUploaderData: any;\r\n\r\n collapse: any;\r\n startedUploading: boolean;\r\n isUpload: boolean = false;\r\n changeToggleStatus(ndx, size) {\r\n if (size > 0) {\r\n (this.selectedAttachmentsFromDrive[ndx]).collapsed = jQuery(\"#panel-\" + ndx).hasClass(\"show\");\r\n setTimeout(() => {\r\n }, 100);\r\n }\r\n }\r\n expandItem(index, size) {\r\n if (size > 0) {\r\n if (!jQuery(\"#panel-\" + index).hasClass(\"show\")) {\r\n jQuery(\"#panel-\" + index).addClass(\"show\");\r\n (this.selectedAttachmentsFromDrive[index]).collapsed = false;\r\n }\r\n setTimeout(() => {\r\n }, 100);\r\n }\r\n }\r\n isAttachmentCollapsed(ndx) {\r\n return (this.selectedAttachmentsFromDrive[ndx]).collapsed;\r\n }\r\n @ViewChild('addNewAttachmentPopup') addNewAttachmentPopup: PopupComponent;\r\n addNewAttachmentPopupOption: IPopup = {\r\n actions: [\r\n { text: this.getText('btnSave', 'CSHTML/Areas/Correspondences/Applications/_DialogBox'), type: 'submit', event: () => this.save(this.DisabledSaveButton) },\r\n {\r\n text: this.getText('btnCancel', 'CSHTML/Areas/Correspondences/Applications/_DialogBox'), type: 'close', event: () => {\r\n this.vHideModel();\r\n }\r\n }\r\n ],\r\n mode: 'medium',\r\n dirtyFormCheck: () => true,\r\n height: 1000,\r\n isBusy: () => this.isAttachmentUploadBusy,\r\n }\r\n _attachmentType: AttachmentTypesEnum;\r\n set AttachmentType(value: AttachmentTypesEnum) {\r\n this._attachmentType = value;\r\n this.detailsAttachmentSVC.attachmentType = value;;\r\n }\r\n\r\n _uploadActionUrl: string = 'upload';\r\n\r\n @ViewChild(\"prviewTemplatesFlexViewer\") public prviewTemplatesFlexViewer: DetailsAttachmentsFlextViewer;\r\n public selectedAttachmentExtension;\r\n public selectedAttachmentName;\r\n\r\n formData: FormData;\r\n isOpen: boolean;\r\n humanizeBytes: Function;\r\n dragOver: boolean;\r\n\r\n @ViewChild(\"imgFile\") public imgFile: any;\r\n\r\n @Input() set HideUsers(value: boolean) {\r\n this.hideUsers = value;\r\n }\r\n //To hide Extra controls when upload delivery report attachments.\r\n @Input(\"HideExtraControls\") hideExtraControls: boolean = false;\r\n @Input() PageAutomationId: string = \"\";\r\n @Input() HideGroupingBy: boolean;\r\n @Input() EnabelPermittedUser: boolean = false;\r\n @Input() IsRecommendationModal: boolean = false;\r\n @Input() IsMultimediaModal: boolean = false;\r\n @Input() SelectedMultimediaGroupId: number = -1;\r\n @Input() SelectedRecommendationGroupId: number = -1;\r\n @Input() IsCorrOwner: boolean = false;\r\n @Input() IsDraft: boolean = false;\r\n @Input() hideAttachmentsGroup: boolean = false;\r\n @Input() automationId: string = \"attachments-dll-group\";\r\n @Input() FromMeetingMinuts: boolean = false;\r\n @Input() isAccumulatedReport: boolean = false;\r\n\r\n @Output() CheckAddedAttachmentArchive = new EventEmitter();\r\n @Output() CheckAttachmentSummaryAfterEdit = new EventEmitter();\r\n @Output() SelectFirstAttachment = new EventEmitter();\r\n @Output() AttachmentscountAfterAdd = new EventEmitter();\r\n @Output() IsPopUpClosed = new EventEmitter();\r\n @Output() OnCompleteItem = new EventEmitter();\r\n @Output() refreshXCGuidanceNotes = new EventEmitter();\r\n @Output() onClose = new EventEmitter();\r\n\r\n @ViewChild(\"ProgressBar\") ProgressBar: PopupComponent;\r\n\r\n progressBarOption: IPopup = {\r\n mode: 'mini',\r\n actions: [],\r\n }\r\n\r\n ddlServiceUrl = BERRY.hostName + \"api/CorrespondenceApi/GetUsers\";\r\n isSubscribed: boolean = true;\r\n isSupportedExtensions: boolean = false;\r\n fileExtensions: FileExtensionDto;\r\n supportedFileExtensions: string;\r\n isMeetingPresentationAttachment: boolean = false;\r\n hideUsers: boolean;\r\n showSetAsFinalForm: boolean;\r\n isCorrespondenceRecord: boolean = false;\r\n extinsion: string;\r\n DefaultCorrespendenceGroupId: any;\r\n permittedUser: any[] = [];\r\n uploadFileProgressPercentage = 0;\r\n file_srcs: string[] = [];\r\n operationResult = false;\r\n selectedFileName = \"\";\r\n attachmentSummary = \"\";\r\n selectedTempFileName = \"\";\r\n scannerAllowed = false;\r\n isFileSelected = false;\r\n isFileExtensionValid = false;\r\n editSelectedAttachment;\r\n isFileScanned = false;\r\n hasImage = false;\r\n currentUser: any;\r\n isBusy = false;\r\n isAttachmentUploadBusy = false;\r\n selectedColor = \"2\";\r\n SelectedAttachmentGroup = 1;\r\n attachmentsGroup = [];\r\n selectedGroupId = 1;\r\n defaultGroupId = 1;\r\n isOwner: boolean = true;\r\n public entityStatus: string;\r\n oldVersionId: string;\r\n public hideAttachmentGroup: boolean = false;\r\n //imagesInBuffer = 0;\r\n externalContact = null;\r\n externalContactID: number;\r\n attachmentSubject: string = null;\r\n attachmentNumber: string = null;\r\n isSupportNumbering: boolean = false;\r\n _allowCustomNumbering: boolean = false;\r\n _allowCustomNaming: boolean = false;\r\n _allowMultimedia: boolean = false;\r\n IsSupportAutoNaming: boolean = false;\r\n canChangeAttachmentTitle: boolean = true;\r\n moduleSize: number = 0;\r\n notRelated: boolean = false;\r\n DdlEntitiesAndUsersClearValue: number = 0; //DdlEntitiesAndUsersClearValue++;\r\n AutoCompleteOptions: any = {\r\n dataTextField: \"value\",\r\n serviceQueryParameterName: \"kw\", // ../Home/GetAutoCompleteSource?{{query}}=querytext\r\n serviceMethod: \"POST\", // POST,GET\r\n serviceDataSchema: \"d\", // data.d\r\n serviceDataType: \"json\", //json,xml,..\r\n filter: \"contains\", //startsWith or contains or equal\r\n minLength: 2,\r\n caseSensitive: true,\r\n select: null, //optional function\r\n change: null, //optional function\r\n dataSource: null //optional datasource\r\n };\r\n UsersMultiSelectOptions = {\r\n serviceUrl: this.ddlServiceUrl,\r\n serviceMethod: \"GET\", // POST,GET\r\n serviceQueryParameterName: \"kw\", // ../Home/GetAutoCompleteSource?{{query}}=querytext\r\n minLength: 2,\r\n returnValueAsText: false,\r\n serviceDataSchema: \"d\",\r\n dataTextField: \"Value\",\r\n dataValueField: \"Dbid\",\r\n autoBind: false\r\n };\r\n hideScanerAlert;\r\n selectedUsers = [];\r\n UsersInitValues = [];\r\n isApplySecurity = false;\r\n isCanDownloadService: boolean = false;\r\n validation = {\r\n fileNameRequired: false,\r\n fileMustBeSelected: false,\r\n fileExtensionRestricted: false\r\n };\r\n NoName: boolean = false;\r\n fileType = \"empty\";\r\n externalFromAutoCompleteOptions: IComboboxOptions = {\r\n serverDatasource: {\r\n enabled: true,\r\n method: \"post\",\r\n searchField: \"kw\",\r\n resultsField: \"\",\r\n url: BERRY.hostName + \"Correspondences/NewApp/GetExternalContacts\"\r\n },\r\n dataTextField: \"value\",\r\n dataValueField: \"dbid\",\r\n allowFreeText: false,\r\n displayTemplate: \"#: data.dbid # - #: data.value # \",\r\n minLength: 1,\r\n autoBind: false\r\n };\r\n isPrivacy = false;\r\n isNew = true;\r\n _canSetAttachmentConfidentiality = false;\r\n _EditAttachmentSummary = false;\r\n _canUpdateAttachmentConfidentiality = false;\r\n preAttachmentName = \"\";\r\n progressBarCount = 0;\r\n addNewGuidanceNote: boolean = false;\r\n linkedAttachmentId: string = null;\r\n selectedXCPresidentId: any = null;\r\n selectedXCPresidentName: any = null;\r\n selectedXCPresident: any = {};\r\n xcPresidents: XCUserDto[] = [];\r\n xcPresidentsMultiple: [XCUserDto[]] = [[]];\r\n throughUploadingNewFile: boolean = false;\r\n executivesAutoCompleteOptions: IComboboxOptions = {\r\n serverDatasource: {\r\n enabled: true,\r\n method: \"GET\",\r\n searchField: \"kw\",\r\n resultsField: \"items\",\r\n url: BERRY.hostName + \"api/XCAttachmentsLists/GetPublishAutoCompleteXCPresidentByUserId\",\r\n additionalParams: () => {\r\n return {\r\n getAllPresidents: \"true\"\r\n };\r\n }\r\n },\r\n dataTextField: \"ExecutiveName\",\r\n dataValueField: \"XCPresidentID\",\r\n allowFreeText: false,\r\n displayTemplate: \"#: data.XCPresidentEmploymentNumber # #: data.ExecutiveName #\",\r\n minLength: 1\r\n };\r\n get webTwainFile() {\r\n return BERRY.webTwainFile;\r\n }\r\n get AllowCustomNumbering() {\r\n return this._allowCustomNumbering;\r\n }\r\n get AllowCustomNaming() {\r\n return this._allowCustomNaming;\r\n }\r\n\r\n _isFromUploader = false;\r\n public get isFromUploader() {\r\n return this._isFromUploader;\r\n }\r\n\r\n\r\n get showA4SizeWarning() {\r\n return BERRY.appSettings.keys.showA4SizeWarning;\r\n }\r\n\r\n get a4InstructionVideoURL() {\r\n return BERRY.appSettings.keys.a4InstructionVideoURL;\r\n }\r\n get isMultipleAttachments() {\r\n if (this.selectedAttachmentsFromDrive.length > 1)\r\n return true;\r\n\r\n else return false;\r\n }\r\n getAutomationId(itemId: any) {\r\n return itemId + (this.PageAutomationId != \"\" ? \"-\" + this.PageAutomationId : \"\")\r\n }\r\n\r\n\r\n constructor(\r\n public zone: NgZone,\r\n public toastr: ToastrService,\r\n public router: Router,\r\n public dialogs: DialogManager,\r\n public detailsAttachmentSVC: DetailsAttachmentSVC,\r\n public webTwainSVC: webTwainSVC,\r\n public detailsSVC: DetailsSVC,\r\n public extensionSettings: generalSettingsSvc,\r\n public ref: ChangeDetectorRef,\r\n public permission: UserPermissionService,\r\n public committeesSvc: CommitteesSvc,\r\n public generalSettingSvc: generalSettingsSvc,\r\n ) {\r\n super();\r\n\r\n // this.uploadInput.pipe(takeWhile(() => this.isSubscribed)).subscribe(data => {\r\n // let me = this;\r\n // if (me.isUpload == false && me.detailsSVC && me.detailsSVC.Data) {\r\n // me.isUpload = true;\r\n // me.detailsSVC.RePrepearCorrespondencesToArchive(me.detailsSVC.CorrId).subscribe(response => { });\r\n // }\r\n // });\r\n }\r\n size = 0;\r\n dataa: any;\r\n\r\n outputFile;\r\n addFileToUploader(output) {\r\n const me = this;\r\n var splittedFileName = output.file.name.split('.');\r\n var type = splittedFileName[splittedFileName.length - 1];\r\n\r\n if (me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType == ScheduleItemTopicAttachmentTypeEnum.Presentation_Attachment &&\r\n type != \"pptx\") {\r\n me.isFileExtensionValid = false;\r\n me.toastr.error(me.getText(\"PowerPointValidationMessage\", \"TopicPresentation\"));\r\n me.vResetModel();\r\n this.fileUploaderElm.uploadImg();\r\n return;\r\n }\r\n\r\n me.selectedFileName = output.file.name.split('.')[0];\r\n me.selectedAttachmentExtension = type;\r\n\r\n if (splittedFileName.length > 2) {\r\n me.getSelectedFileName(splittedFileName);\r\n }\r\n if (me.selectedGroupId && !me.hideAttachmentsGroup && !me.addNewGuidanceNote) {\r\n me.getAttachmentNameBaseOnGroupId(+me.selectedGroupId);\r\n }\r\n\r\n me.isFileExtensionValid = true;\r\n me.scannerAllowed = false;\r\n me.isFileSelected = true;\r\n me.hasImage = true;\r\n }\r\n getSelectedFileName(splittedFileName) {\r\n var me = this;\r\n for (var i = 1; i < splittedFileName.length - 1; i++) {\r\n me.selectedFileName = me.selectedFileName + '.' + splittedFileName[i];\r\n\r\n }\r\n }\r\n\r\n public setReferenceId(refId) {\r\n this.detailsAttachmentSVC.AttachmentParentID = refId;\r\n }\r\n\r\n init() {\r\n this.hideScanerAlert = 'true';\r\n Dynamsoft.isServiceDownloaded = 'true';\r\n Dynamsoft.DWT.ProductKey = BERRY.WebTwainEnvProductKey;\r\n this.generalSettingSvc\r\n .GetValue(\"AttachmentsSettings\", \"ShowScannerDawnloadLink\", \"true\").pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(response => {\r\n if (response) {\r\n this.isCanDownloadService = response.toLowerCase() === 'true';\r\n }\r\n });\r\n this.detailsAttachmentSVC.ScheduleItemTopicAttachmentType = -1;\r\n\r\n this.router.routerState.root.queryParams.subscribe(params => {\r\n this.entityStatus = params[\"status\"];\r\n });\r\n this.getCanSetAttachmentConfidentiality();\r\n this.getCanUpdateAttachmentConfidentiality();\r\n this.getEditAttachmentSummary();\r\n }\r\n\r\n ngSuperOnInit() {\r\n this.init();\r\n }\r\n\r\n get HideUsers(): boolean {\r\n return this.hideUsers;\r\n }\r\n\r\n get IsSupportNumbering(): boolean {\r\n return this.isSupportNumbering;\r\n }\r\n\r\n ngSuperAfterViewInit() {\r\n\r\n }\r\n\r\n get hasViewMoreDetailsForWopi() {\r\n return BERRY.appSettings.keys.viewMoreDetailsForWopi;\r\n }\r\n\r\n get RequiredString() {\r\n return BERRY.loc.common.requiredField;\r\n }\r\n\r\n get RestrictedExtensions() {\r\n return BERRY.loc.common.requiredField;\r\n }\r\n\r\n scanBlack() {\r\n return BERRY.User.Permissions.ScanBlack;\r\n }\r\n\r\n scanGray() {\r\n return BERRY.User.Permissions.ScanGray;\r\n }\r\n\r\n scanColor() {\r\n return BERRY.User.Permissions.ScanColor;\r\n }\r\n\r\n scanPermissions() {\r\n return (BERRY.User.Permissions.ScanBlack || BERRY.User.Permissions.ScanGray || BERRY.User.Permissions.ScanColor)\r\n && this.detailsAttachmentSVC.ScheduleItemTopicAttachmentType != ScheduleItemTopicAttachmentTypeEnum.Presentation_Attachment;\r\n }\r\n\r\n addAttachmentSummary() {\r\n return BERRY.User.Permissions.AddAttachmentSummary;\r\n }\r\n\r\n editAttachmentSummary() {\r\n return BERRY.User.Permissions.EditAttachmentSummary;\r\n }\r\n\r\n isEn() {\r\n return BERRY.isEn;\r\n }\r\n\r\n setAttachmentConfidentiality() {\r\n return BERRY.User.Permissions.SetAttachmentConfidentiality;\r\n }\r\n updateAttachmentConfidentiality() {\r\n return BERRY.User.Permissions.UpdateAttachmentConfidentiality;\r\n }\r\n\r\n get ShowSetAsFinalForm() {\r\n return this.showSetAsFinalForm;\r\n }\r\n\r\n set ShowSetAsFinalForm(value: any) {\r\n this.showSetAsFinalForm;\r\n }\r\n\r\n get IsCorrespondenceRecord() {\r\n return this.isCorrespondenceRecord;\r\n }\r\n\r\n get SelectedTempFileName() {\r\n return this.selectedTempFileName;\r\n }\r\n\r\n get Extinsion() {\r\n return this.extinsion;\r\n }\r\n\r\n get FileType() {\r\n return this.fileType;\r\n }\r\n\r\n get isEditMode() {\r\n let hdbIsEdit = document.getElementById(\"hdbIsEdit\");\r\n let isEditMode = false;\r\n if (hdbIsEdit)\r\n isEditMode = hdbIsEdit.value == \"true\";\r\n return isEditMode;\r\n }\r\n\r\n get DisabledSaveButton() {\r\n let me = this;\r\n let hdbIsEdit = document.getElementById(\"hdbIsEdit\");\r\n\r\n let isEditMode = false;\r\n\r\n if (hdbIsEdit)\r\n isEditMode = hdbIsEdit.value == \"true\";\r\n\r\n let result: boolean = false;\r\n let hasScanFile = me.SelectedScanner && me.checkIfImagesInBuffer != 0;\r\n let hasPermittedUser = true;\r\n\r\n if (!me.isMultipleAttachments) {\r\n let toggle = document.getElementById(\"toggle\");\r\n if (toggle)\r\n hasPermittedUser = !me.EnabelPermittedUser || (me.EnabelPermittedUser && !toggle.checked) || (me.EnabelPermittedUser && toggle.checked && me.permittedUser.length != 0);\r\n }\r\n\r\n let isOverSize = false;\r\n if (me.selectedAttachmentsFromDrive.length > 0)\r\n isOverSize = me.selectedAttachmentsFromDrive[0].isOverSize;\r\n\r\n let hasUploadFile = me.selectedTempFileName != \"\" && me.checkIfImagesInBuffer == 0;\r\n\r\n let hasValidFileName = !!me.selectedFileName && me.selectedFileName != \"\" && me.selectedFileName.trim() != \"\";\r\n\r\n let hasSelectedGruop = me.selectedGroupId && me.selectedGroupId != 1;\r\n let hasValidExtension = me.isFileExtensionValid;\r\n\r\n let hasAttachmentGroup = true;\r\n\r\n if (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Tasks\r\n ||\r\n me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Announcement\r\n ||\r\n (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Scheduling && me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType == ScheduleItemTopicAttachmentTypeEnum.Presentation_Attachment)\r\n ||\r\n (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Scheduling && me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType == ScheduleItemTopicAttachmentTypeEnum.Archive_Attachment)\r\n ||\r\n (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Scheduling && me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType == ScheduleItemTopicAttachmentTypeEnum.Topic_Attachment)\r\n ||\r\n (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Scheduling && me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType == ScheduleItemTopicAttachmentTypeEnum.Private_Attachment)\r\n ||\r\n (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Correspondences && me.isAccumulatedReport)) {\r\n\r\n hasAttachmentGroup = false;\r\n }\r\n\r\n let isMultimediaFileExtensionValid = true;\r\n if (me.isMultimediaFileExtension(me.selectedAttachmentExtension) && !this._allowMultimedia && hasAttachmentGroup) {\r\n isMultimediaFileExtensionValid = false;\r\n }\r\n\r\n result =\r\n (isEditMode || (hasScanFile || (hasUploadFile && hasValidExtension))) &&\r\n hasPermittedUser &&\r\n hasValidFileName &&\r\n isMultimediaFileExtensionValid &&\r\n !isOverSize;\r\n\r\n if (!me.hideAttachmentsGroup && !me.addNewGuidanceNote) {\r\n result = result && (hasAttachmentGroup ? hasSelectedGruop : !hasAttachmentGroup);\r\n }\r\n return !result;\r\n }\r\n get GetRequiredFiledsIndexes() {\r\n let me = this;\r\n var indexes: any[] = [];\r\n for (let i = 0; i < this.selectedAttachmentsFromDrive.length; i++) {\r\n const element = this.selectedAttachmentsFromDrive[i];\r\n\r\n\r\n let toggle = document.getElementById(\"toggle\" + (this.selectedAttachmentsFromDrive.length - (i + 1)));\r\n let result: boolean = false;\r\n let hasPermittedUser = true;\r\n\r\n if (toggle)\r\n hasPermittedUser = !me.EnabelPermittedUser || (me.EnabelPermittedUser && !toggle.checked) || (me.EnabelPermittedUser && toggle.checked && element.permittedUser.length != 0);\r\n\r\n let hasUploadFile = element.file != null && me.checkIfImagesInBuffer == 0;\r\n\r\n let hasValidFileName = element.AttachmentTitle && element.AttachmentTitle != \"\" && element.AttachmentTitle.trim() != \"\";\r\n\r\n let hasSelectedGruop = element.SelectedAttachmentGroup && element.SelectedAttachmentGroup != 1;\r\n let hasValidExtension = element.isFileExtensionValid;\r\n let hasValidSize = !element.isOverSize;\r\n let hasAttachmentGroup = true;\r\n\r\n if (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Tasks\r\n ||\r\n me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Announcement\r\n ||\r\n (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Scheduling && me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType == ScheduleItemTopicAttachmentTypeEnum.Presentation_Attachment)\r\n ||\r\n (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Scheduling && me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType == ScheduleItemTopicAttachmentTypeEnum.Archive_Attachment)\r\n ||\r\n (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Scheduling && me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType == ScheduleItemTopicAttachmentTypeEnum.Topic_Attachment)\r\n ||\r\n (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Scheduling && me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType == ScheduleItemTopicAttachmentTypeEnum.Private_Attachment)) {\r\n\r\n hasAttachmentGroup = false;\r\n }\r\n\r\n let hasMultimediaFileExtensionNotValid = false;\r\n if (!element._allowMultimedia)\r\n hasMultimediaFileExtensionNotValid = me.isMultimediaFileExtension(element.Extension);\r\n\r\n\r\n result =\r\n ((hasUploadFile && hasValidExtension)) &&\r\n hasPermittedUser &&\r\n hasValidFileName &&\r\n !hasMultimediaFileExtensionNotValid &&\r\n hasValidSize;\r\n\r\n if (!me.hideAttachmentsGroup && !me.addNewGuidanceNote) {\r\n result = result && (hasAttachmentGroup ? hasSelectedGruop : !hasAttachmentGroup);\r\n }\r\n\r\n if (!result) {\r\n indexes.push(i);\r\n }\r\n else {\r\n indexes.splice(i, 1);\r\n }\r\n }\r\n return indexes;\r\n }\r\n get CanChangeAttachmentTitleOnEdit() {\r\n let me = this;\r\n let hdbIsEdit = document.getElementById(\"hdbIsEdit\");\r\n if (hdbIsEdit && hdbIsEdit.value == \"true\") {\r\n if (me.editSelectedAttachment)\r\n return !me.editSelectedAttachment.CanChangeAttachmentTitleOnEdit;\r\n return false;\r\n } else return false;\r\n }\r\n\r\n get AttachmentConfidentiality() {\r\n return BERRY.onOffFeatures.AttachmentConfidentiality;\r\n }\r\n \r\n get CanChangeAttachmentGroupOnEdit() {\r\n let me = this;\r\n let hdbIsEdit = document.getElementById(\"hdbIsEdit\");\r\n if (hdbIsEdit && hdbIsEdit.value == \"true\") {\r\n if (me.editSelectedAttachment)\r\n return !me.editSelectedAttachment.CanChangeAttachmentGroupOnEdit;\r\n return false;\r\n } else return false;\r\n }\r\n\r\n public get Sources() {\r\n if (DWObject) return DWObject.__sourceName;\r\n else return [];\r\n }\r\n\r\n public get checkIfImagesInBuffer() {\r\n if (DWObject) return DWObject.HowManyImagesInBuffer;\r\n return 0;\r\n }\r\n\r\n get canSetAttachmentConfidentiality(): boolean {\r\n if (this.IsCorrOwner) {\r\n return true;\r\n }\r\n return this._canSetAttachmentConfidentiality;\r\n }\r\n set canSetAttachmentConfidentiality(value) {\r\n this._canSetAttachmentConfidentiality = value;\r\n }\r\n\r\n getCanSetAttachmentConfidentiality() {\r\n var me = this;\r\n if (me.IsCorrOwner) {\r\n me.canSetAttachmentConfidentiality = true;\r\n } else {\r\n me.canSetAttachmentConfidentiality = me.setAttachmentConfidentiality();\r\n }\r\n }\r\n\r\n get EditAttachmentSummary(): boolean {\r\n return this._EditAttachmentSummary;\r\n }\r\n set SetEditAttachmentSummary(value) {\r\n this._EditAttachmentSummary = value;\r\n }\r\n\r\n getEditAttachmentSummary() {\r\n var me = this;\r\n me._EditAttachmentSummary = me.editAttachmentSummary();\r\n }\r\n\r\n get canUpdateAttachmentConfidentiality(): boolean {\r\n if (this.IsCorrOwner) {\r\n return true;\r\n }\r\n return this._canUpdateAttachmentConfidentiality;\r\n }\r\n set canUpdateAttachmentConfidentiality(value) {\r\n this._canUpdateAttachmentConfidentiality = value;\r\n }\r\n\r\n getCanUpdateAttachmentConfidentiality() {\r\n var me = this;\r\n if (me.IsCorrOwner) {\r\n me.canUpdateAttachmentConfidentiality = true;\r\n } else {\r\n me.canUpdateAttachmentConfidentiality = me.updateAttachmentConfidentiality();\r\n }\r\n }\r\n\r\n get canChangePrivacy(): boolean {\r\n if (this.canSetAttachmentConfidentiality && (!this.isPrivacy || this.isNew))\r\n return true;\r\n\r\n if (this.canUpdateAttachmentConfidentiality) return true;\r\n\r\n return false;\r\n }\r\n\r\n public get Data() {\r\n return this.detailsAttachmentSVC.Attachments;\r\n }\r\n\r\n public get OperationResult() {\r\n return this.operationResult;\r\n }\r\n\r\n public get AttachmentSummary() {\r\n if (this.attachmentSummary === undefined) this.attachmentSummary = \"\";\r\n return this.attachmentSummary;\r\n }\r\n\r\n public get RelatedType() {\r\n if (this.detailsAttachmentSVC != undefined)\r\n return this.detailsAttachmentSVC.relatedType;\r\n return null;\r\n }\r\n\r\n public get getImagesInBuffer() {\r\n if (DWObject) return DWObject.HowManyImagesInBuffer;\r\n return null;\r\n }\r\n\r\n public get currentImageIndexInBuffer() {\r\n if (DWObject) return DWObject.CurrentImageIndexInBuffer + 1;\r\n return 0;\r\n }\r\n\r\n public get SelectedScanner() {\r\n var _source: any = document.getElementById(\"source\");\r\n if (_source && _source.selectedIndex != 0) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n public get PermittedUser() {\r\n return this.permittedUser;\r\n }\r\n\r\n public get SelectedColor() {\r\n return this.selectedColor;\r\n }\r\n\r\n public get EditSelectedAttachment() {\r\n return this.editSelectedAttachment;\r\n }\r\n\r\n changeColor(index) {\r\n this.selectedColor = index;\r\n }\r\n\r\n fileUploaderManager: any;\r\n onInitSuccess(objFileUploader) {\r\n this.fileUploaderManager = objFileUploader;\r\n }\r\n\r\n onInitFailure(errorCode, errorString) {\r\n alert('Init failed: ' + errorString);\r\n };\r\n selectedAttachmentsFromDrive: AttachmentDto[] = [];\r\n selectedSingleFile: AttachmentDto;\r\n vFileChange() {\r\n var me = this;\r\n var fReader = new FileReader();\r\n var fileName: string;\r\n var fileType: string;\r\n var fileInput: any = this.fileUploaderElm.imageUpload.nativeElement;\r\n\r\n if (me.detailsAttachmentSVC.isReplyAttachment ||\r\n (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Scheduling\r\n && me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType == ScheduleItemTopicAttachmentTypeEnum.Presentation_Attachment)\r\n || me.isEditMode) {\r\n me.isUpload = false;\r\n me.selectedSingleFile = null;\r\n }\r\n if (DWObjectLargeViewer) {\r\n DWObjectLargeViewer.ClearAllHTTPFormField();\r\n if (!DWObjectLargeViewer.RemoveAllImages()) {\r\n console.log(\r\n \"DWObjectLargeViewer.ErrorCode : \" + DWObjectLargeViewer.ErrorCode\r\n );\r\n console.log(\r\n \"DWObjectLargeViewer.ErrorString : \" + DWObjectLargeViewer.ErrorString\r\n );\r\n }\r\n DWObjectLargeViewer.FitWindowType = 1;\r\n }\r\n\r\n if (DWObject) {\r\n DWObject.ClearAllHTTPFormField();\r\n if (!DWObject.RemoveAllImages()) {\r\n console.log(\"DWObject.ErrorCode : \" + DWObject.ErrorCode);\r\n console.log(\"DWObject.ErrorString : \" + DWObject.ErrorString);\r\n }\r\n DWObject.CurrentImageIndexInBuffer = 0;\r\n }\r\n\r\n me.hasImage = true;\r\n\r\n if (this.closeAfterUpload == true && (fileInput.files.length > 10 || (fileInput.files.length + me.selectedAttachmentsFromDrive.length > 10))) {\r\n me.toastr.warning(this.getText(\"NoMoreThanTenFiles\", \"AddAttachmentPopup\"));\r\n return;\r\n }\r\n\r\n //if one file then pass the list\r\n if (me.isMultipleAttachments || me.selectedSingleFile || fileInput.files.length > 1) {\r\n me.throughUploadingNewFile = true;\r\n for (const item of fileInput.files) {\r\n let attachment = new AttachmentDto();\r\n let type = item.type.split(\"/\")[0];\r\n me.isFileExtensionValid = true;\r\n me.fileType = type;\r\n fileName = item.name.split(\".\")[0];\r\n fileType = item.name.split(\".\")[1];\r\n\r\n var splittedSingleFileName = item.name.split(\".\");\r\n if (splittedSingleFileName.length > 2) {\r\n for (var i = 1; i < splittedSingleFileName.length - 1; i++) {\r\n fileName = fileName + '.' + splittedSingleFileName[i];\r\n\r\n }\r\n }\r\n\r\n me.extinsion = splittedSingleFileName[splittedSingleFileName.length - 1];\r\n\r\n let data = me.checkFileValidationBeforeUpload(me.extinsion, item.size, me.defaultGroupId);\r\n if (data.preventUploading && fileInput.files.length == 1 && this.closeAfterUpload == true) {\r\n me.setPreviousFileTypeAndExtensionAfterError();\r\n return;\r\n }\r\n\r\n attachment.AttachmentType = me._attachmentType;\r\n attachment.fileType = type;\r\n attachment.Extension = me.extinsion;\r\n attachment.AttachmentTitle = fileName;\r\n attachment.TemporaryAttachmentId = GuidUtil.newGuidAsString();\r\n //attachment.AttachmentNumber = me.attachmentNumber;\r\n attachment.SelectedAttachmentGroup = me.defaultGroupId;\r\n attachment.file = item;\r\n attachment.isFileExtensionValid = me.isFileExtensionValid;\r\n attachment.SelectedTempFileName = fileName;\r\n attachment.isOverSize = data.isOversize;\r\n attachment.IsMultiMedia = data.isMultiMedia;\r\n me.selectedAttachmentsFromDrive.push(attachment);\r\n me.xcPresidentsMultiple.unshift([]);\r\n me.changeAttachmentGroup(attachment.SelectedAttachmentGroup, attachment);\r\n }\r\n fReader.readAsDataURL(me.selectedAttachmentsFromDrive[me.selectedAttachmentsFromDrive.length - 1].file);\r\n me.selectedAttachmentsFromDrive.forEach(element => {\r\n element.isPreviewing = false;\r\n });\r\n me.selectedAttachmentsFromDrive[me.selectedAttachmentsFromDrive.length - 1].isPreviewing = true; //Preview the first file by default\r\n me.selectedSingleFile = null;\r\n me.throughUploadingNewFile = false;\r\n\r\n }\r\n else if (!me.selectedSingleFile && !me.isMultipleAttachments) {\r\n let file = fileInput.files[0];\r\n if (!!file) {\r\n me.isFileExtensionValid = true;\r\n me.fileType = file.type.split(\"/\")[0];\r\n fileName = file.name.split(\".\")[0];\r\n fileType = file.name.split(\".\")[1];\r\n var splittedSingleFileName = file.name.split(\".\");\r\n if (splittedSingleFileName.length > 2) {\r\n for (var i = 1; i < splittedSingleFileName.length - 1; i++) {\r\n fileName = fileName + '.' + splittedSingleFileName[i];\r\n\r\n }\r\n }\r\n\r\n me.extinsion = splittedSingleFileName[splittedSingleFileName.length - 1];\r\n if (file != undefined) {\r\n\r\n let data = me.checkFileValidationBeforeUpload(me.extinsion, file.size, me.selectedGroupId);\r\n if (data.preventUploading) {\r\n me.vResetModel();\r\n if (this.closeAfterUpload == true) {\r\n return;\r\n }\r\n }\r\n\r\n fReader.readAsDataURL(file);\r\n\r\n me.setValueForAttachmentNumber();\r\n\r\n me.selectedSingleFile = new AttachmentDto();\r\n me.selectedSingleFile.AttachmentType = me._attachmentType;\r\n me.selectedSingleFile.AttachmentTitle = fileName;\r\n me.selectedSingleFile.TemporaryAttachmentId = GuidUtil.newGuidAsString();\r\n me.selectedSingleFile.AttachmentNumber = me.attachmentNumber;\r\n me.selectedSingleFile.SelectedAttachmentGroup = me.selectedGroupId;\r\n me.selectedSingleFile.Extension = splittedSingleFileName[splittedSingleFileName.length - 1];\r\n me.selectedSingleFile.file = file;\r\n me.selectedSingleFile.isPreviewing = true;\r\n me.selectedFileName = fileName;\r\n me.selectedTempFileName = fileName;\r\n me.selectedSingleFile.SelectedTempFileName = fileName;\r\n me.selectedSingleFile.isFileExtensionValid = me.isFileExtensionValid;\r\n if (!me.detailsAttachmentSVC.isReplyAttachment &&\r\n !(me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Scheduling\r\n && me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType == ScheduleItemTopicAttachmentTypeEnum.Presentation_Attachment)\r\n && !me.isEditMode) {\r\n this.selectedAttachmentsFromDrive.push(me.selectedSingleFile);\r\n }\r\n me.changeAttachmentGroup(me.selectedGroupId, me.selectedSingleFile);\r\n\r\n }\r\n }\r\n }\r\n\r\n fReader.onloadend = function (event: any) {\r\n\r\n me._isFromUploader = true;\r\n setTimeout(() => {\r\n let img: any = $(\"#imgFile\");\r\n let privewImage: any = $(\"#privewImage\");\r\n\r\n if (event.target.result.indexOf(\"data:image\") > -1) {\r\n\r\n img.attr(\"src\", event.target.result);\r\n privewImage.attr(\"src\", event.target.result);\r\n\r\n } else {\r\n img.attr(\"src\", \"\");\r\n privewImage.attr(\"src\", \"\");\r\n }\r\n\r\n if (me.extinsion == \"pdf\") {\r\n let b64 = event.target.result;\r\n me.previewAttachment(b64, fileName, me.extinsion);\r\n }\r\n\r\n if (fileInput && fileInput.files.length > 0)\r\n me.selectedTempFileName = fileName;\r\n\r\n if (me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType == ScheduleItemTopicAttachmentTypeEnum.Presentation_Attachment &&\r\n fileType != \"pptx\")\r\n me.selectedTempFileName = \"\";\r\n if (me.selectedFileName != \"\") {\r\n me.selectedFileName = fileName;\r\n }\r\n }, 100);\r\n\r\n };\r\n }\r\n SignleFile(file) {\r\n if (!!file) {\r\n let me = this;\r\n var fileName = \"\";\r\n var fReader = new FileReader();\r\n me.fileType = file.type.split(\"/\")[0];\r\n fileName = file.name.split(\".\")[0];\r\n var splittedSingleFileName = file.name.split(\".\");\r\n if (splittedSingleFileName.length > 2) {\r\n for (var i = 1; i < splittedSingleFileName.length - 1; i++) {\r\n fileName = fileName + '.' + splittedSingleFileName[i];\r\n\r\n }\r\n }\r\n\r\n me.extinsion = splittedSingleFileName[splittedSingleFileName.length - 1];\r\n me.selectedAttachmentExtension = splittedSingleFileName[splittedSingleFileName.length - 1];\r\n\r\n let data = me.checkFileValidationBeforeUpload(me.extinsion, file.size, me.selectedGroupId);\r\n if (data.preventUploading) {\r\n me.vResetModel();\r\n return;\r\n }\r\n\r\n fReader.readAsDataURL(file);\r\n\r\n me.selectedSingleFile = new AttachmentDto();\r\n me.selectedSingleFile.AttachmentType = me._attachmentType;\r\n me.selectedSingleFile.AttachmentTitle = fileName;\r\n me.selectedSingleFile.AttachmentNumber = me.attachmentNumber;\r\n if (me.selectedAttachmentsFromDrive.length == 0)\r\n me.selectedSingleFile.SelectedAttachmentGroup = me.selectedGroupId;\r\n else\r\n me.selectedSingleFile.SelectedAttachmentGroup = me.selectedAttachmentsFromDrive[0].SelectedAttachmentGroup;\r\n me.selectedFileName = fileName;\r\n me.selectedTempFileName = fileName;\r\n me.selectedSingleFile.SelectedTempFileName = fileName;\r\n\r\n if (this.selectedAttachmentsFromDrive.length == 0)\r\n this.selectedAttachmentsFromDrive.push(me.selectedSingleFile);\r\n me.changeAttachmentGroup(me.selectedSingleFile.SelectedAttachmentGroup);\r\n }\r\n }\r\n\r\n checkFileValidationBeforeUpload(fileExtension, fileSize, selectedGroupId) {\r\n let data = { preventUploading: false, isOversize: false, isMultiMedia: false };\r\n let isGroupSupportMultimedia = false;\r\n\r\n var module = this.detailsAttachmentSVC.appModuleId;\r\n if (module == AppModulesEnum.DeliveryReport) {\r\n module = AppModulesEnum.Correspondences;\r\n }\r\n\r\n let selectedGroup = this.attachmentsGroup.filter(x => x.Id == selectedGroupId);\r\n if (selectedGroup && selectedGroup.length > 0) {\r\n isGroupSupportMultimedia = selectedGroup[0].IsSupportMultiMedia;\r\n }\r\n\r\n let error = this.validateFileSize(fileSize);\r\n if (error) {\r\n data.preventUploading = true;\r\n\r\n if (error == \"FileUploadedIsSmall\") {\r\n this.toastr.warning(this.getText(\"FileUploadedIsSmall\", \"AttachmentsResources\"));\r\n } else {\r\n this.toastr.warning(this.getText(error, \"CSHTML/Areas/Correspondences/Attachments/Index\"));\r\n data.isOversize = true;\r\n }\r\n }\r\n\r\n if (this.isAccumulatedReport) {\r\n if (this.canUploadCompilationReport(fileExtension) == false) {\r\n data.preventUploading = true;\r\n this.toastr.warning(BERRY.getText('TheFileYouUploadedIsNotSupported', 'correspondence_details_attachments'));\r\n }\r\n }\r\n else {\r\n if ((!this.closeAfterUpload && !this.isAllowedExtensionsForDeliveryReports(fileExtension))\r\n || (this.closeAfterUpload && !this.validateFileExtension(fileExtension))) {\r\n data.preventUploading = true;\r\n this.isFileExtensionValid = false;\r\n this.toastr.warning(BERRY.loc.common.AttachmentExtensionNotValid);\r\n }\r\n\r\n if (this.isMultimediaFileExtension(fileExtension) && !isGroupSupportMultimedia) {\r\n data.preventUploading = true;\r\n data.isMultiMedia = true;\r\n this.toastr.warning(this.getText(\"MediaGroupWarningMessage\", \"details_attachments\"));\r\n }\r\n }\r\n\r\n return data;\r\n }\r\n\r\n setPreviousFileTypeAndExtensionAfterError() {\r\n if (this.selectedAttachmentsFromDrive.length > 0) {\r\n let lastFileUploaded = this.selectedAttachmentsFromDrive[this.selectedAttachmentsFromDrive.length - 1];\r\n this.fileType = lastFileUploaded.file ? lastFileUploaded.file.type : lastFileUploaded.fileType;\r\n this.extinsion = lastFileUploaded.Extension;\r\n this.selectedFileName = lastFileUploaded.AttachmentTitle;\r\n this.isFileExtensionValid = lastFileUploaded.isFileExtensionValid;\r\n }\r\n this.throughUploadingNewFile = false;\r\n this.fileUploaderElm.imageUpload.nativeElement.value = \"\";\r\n\r\n }\r\n\r\n viewAttachmentOnClick(attachment) {\r\n if (attachment.isPreviewing == true) {\r\n return;\r\n }\r\n\r\n let me = this;\r\n var fReader = new FileReader();\r\n fReader.readAsDataURL(attachment.file);\r\n fReader.onloadend = function (event: any) {\r\n\r\n me._isFromUploader = true;\r\n setTimeout(() => {\r\n let img: any = $(\"#imgFile\");\r\n let privewImage: any = $(\"#privewImage\");\r\n\r\n if (event.target.result.indexOf(\"data:image\") > -1 && attachment.Extension != 'pdf') {\r\n me.extinsion = \"\";\r\n me.fileType = \"image\";\r\n img.attr(\"src\", event.target.result);\r\n privewImage.attr(\"src\", event.target.result);\r\n me.selectedAttachmentsFromDrive.forEach(element => {\r\n if (element.TemporaryAttachmentId == attachment.TemporaryAttachmentId) {\r\n element.isPreviewing = true;\r\n }\r\n else {\r\n element.isPreviewing = false;\r\n }\r\n });\r\n\r\n } else {\r\n img.attr(\"src\", \"\");\r\n privewImage.attr(\"src\", \"\");\r\n }\r\n\r\n if (attachment.Extension == \"pdf\" || event.target.result.indexOf(\"data:image\") < 0) {\r\n let b64 = event.target.result;\r\n me.extinsion = attachment.Extension;\r\n me.fileType = \"application\";\r\n //if (attachment.Extension != \"pdf\") {\r\n // me.fileType = \"image\";\r\n //}\r\n\r\n me.previewAttachment(b64, attachment.AttachmentTitle, attachment.Extension);\r\n me.selectedAttachmentsFromDrive.forEach(element => {\r\n if (element.TemporaryAttachmentId == attachment.TemporaryAttachmentId) {\r\n element.isPreviewing = true;\r\n }\r\n else {\r\n element.isPreviewing = false;\r\n }\r\n });\r\n }\r\n me.selectedTempFileName = attachment.AttachmentTitle;\r\n }, 100);\r\n\r\n };\r\n }\r\n\r\n validateFileSize(size): string {\r\n if (size != 0) {\r\n if (size <= this.moduleSize) // check module size setting\r\n {\r\n if (size <= this.maxIIsSize) // check iis size setting\r\n {\r\n return null;\r\n }\r\n else\r\n return \"moreThanIISSize\";\r\n }\r\n else\r\n return \"moreThaneSetting\";\r\n } else\r\n return \"FileUploadedIsSmall\";\r\n }\r\n\r\n validateFileExtension(type): boolean {\r\n var me = this;\r\n type = type.toLowerCase();\r\n\r\n if (BERRY.appSettings.keys.extFileAllowedByDefault.split(',').includes(type.trim()))\r\n return true;\r\n\r\n if (!me.isSupportedExtensions && me.fileExtensions.RestrictedFileExtensions.toLowerCase().split(',').includes(type.trim())) {\r\n return false;\r\n }\r\n else if (me.isSupportedExtensions && !(me.fileExtensions.SupportedFileExtensions.toLowerCase().split(',').includes(type.trim()))) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n deleteAttachment(index, isSingleAttachmentForm: boolean = false) {\r\n let me = this;\r\n me.dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n BERRY.loc.CommonDbRes.DeleteConfirmation,\r\n \"\",\r\n BERRY.loc.CommonDbRes.Yes,\r\n BERRY.loc.CommonDbRes.No\r\n );\r\n dialog.show(options, result => {\r\n if (result == ConfirmationBoxResult.Yes) {\r\n var attachmentIndex = me.selectedAttachmentsFromDrive.length - (index + 1);\r\n\r\n let isDeletedPreviewing = me.selectedAttachmentsFromDrive[attachmentIndex].isPreviewing == true;\r\n me.isUpload = false;\r\n\r\n me.uploadedAttachments = me.uploadedAttachments.filter(x => x.RelatedAttachmentID != me.selectedAttachmentsFromDrive[attachmentIndex].AttachmentId)\r\n\r\n me.selectedAttachmentsFromDrive.splice(attachmentIndex, 1);\r\n if (me.selectedAttachmentsFromDrive.length == 1) {\r\n me.attachmentNumber = me.selectedAttachmentsFromDrive[0].AttachmentNumber ? me.selectedAttachmentsFromDrive[0].AttachmentNumber : \"\";\r\n me.attachmentSubject = me.selectedAttachmentsFromDrive[0].AttachmentSubject ? me.selectedAttachmentsFromDrive[0].AttachmentSubject : \"\";\r\n me.SignleFile(me.selectedAttachmentsFromDrive[0].file);\r\n }\r\n if (isDeletedPreviewing && me.isMultipleAttachments)\r\n me.viewAttachmentOnClick(me.selectedAttachmentsFromDrive[me.selectedAttachmentsFromDrive.length - 1]);\r\n else if (me.selectedAttachmentsFromDrive.length == 1) {\r\n me.viewAttachmentOnClick(me.selectedAttachmentsFromDrive[0]);\r\n }\r\n\r\n if (me.addNewGuidanceNote) {\r\n me.xcPresidentsMultiple.splice(attachmentIndex, 1);\r\n }\r\n\r\n if (isSingleAttachmentForm) {\r\n me.SelectedAttachmentGroup = me.selectedGroupId = 0;\r\n me.vResetPopupData();\r\n }\r\n }\r\n });\r\n }\r\n });\r\n }\r\n uploadFileComplete(resetModel: boolean = true) {\r\n this.isBusy = false;\r\n this.uploadFileProgressPercentage = 0;\r\n if (!this.addNewGuidanceNote) {\r\n this.isFileSelected = false;\r\n\r\n if (!this.detailsAttachmentSVC.selectedAttachmentGroupId) {\r\n this.detailsAttachmentSVC.selectedAttachmentGroupId = this.selectedGroupId;\r\n }\r\n if (this.detailsAttachmentSVC.appModuleId == AppModulesEnum.Correspondences) {\r\n this.vGetCorrespondence();\r\n }\r\n if (this.detailsAttachmentSVC.appModuleId == AppModulesEnum.Scheduling) {\r\n if (this.detailsAttachmentSVC.AttachmentParentID) {\r\n this.vGetScheduleAttachments();\r\n }\r\n }\r\n if (this.detailsAttachmentSVC.appModuleId == AppModulesEnum.Committees) {\r\n if (this.detailsAttachmentSVC.AttachmentParentID) {\r\n this.vGetCommitteeAttachments();\r\n }\r\n }\r\n if (this.detailsAttachmentSVC.appModuleId == AppModulesEnum.Announcement) {\r\n if (this.detailsAttachmentSVC.AttachmentParentID) {\r\n this.vGetAnnouncementAttachments();\r\n }\r\n }\r\n if (this.detailsAttachmentSVC.appModuleId == AppModulesEnum.Archive) {\r\n if (this.detailsAttachmentSVC.AttachmentParentID) {\r\n this.vGetArchiveAttachments();\r\n }\r\n }\r\n if (this.detailsAttachmentSVC.appModuleId == AppModulesEnum.Initiatives) {\r\n if (this.detailsAttachmentSVC.AttachmentParentID) {\r\n this.vGetInitiativesAttachments();\r\n }\r\n } \r\n this.getAttachmentsCount();\r\n if (this.detailsAttachmentSVC.appModuleId == AppModulesEnum.Correspondences\r\n && this._attachmentType == AttachmentTypesEnum.CorrespondenceAttachments\r\n && this.detailsSVC.Data\r\n && (this.detailsSVC.Data.UserRelationToCorrespondence == CorrespondenceUserRelationEnum.HasViewEntityInboxPermission\r\n || this.detailsSVC.Data.UserRelationToCorrespondence == CorrespondenceUserRelationEnum.ViewMyCommitteeInbox)) {\r\n this.detailsSVC.Data.HasViewAttachmentPermission = true; // the user is the creator of the attachment & has one of these relations with the correspondence\r\n }\r\n }\r\n else {\r\n this.refreshXCGuidanceNotes.emit(true);\r\n }\r\n\r\n if (this.uploadedAttachmentHasDigitalSignature) {\r\n this.toastr.warning(this.getText(\"UploadedAttachmentContainDigitalSignature\", \"Attachments\"));\r\n }\r\n else {\r\n this.toastr.success(BERRY.loc.common.successMessage);\r\n }\r\n\r\n this.isFileSelected = false;\r\n this.isOpen = true;\r\n this.isAttachmentUploadBusy = false;\r\n this.isBusy = false;\r\n this.IsPopUpClosed.emit(\"closed\");\r\n\r\n this.operationResult = false;\r\n\r\n if (resetModel) {\r\n if (this.closeAfterUpload == true) {\r\n this.selectedFileName = \"\";\r\n }\r\n this.attachmentSummary = \"\";\r\n this.vResetModel();\r\n }\r\n\r\n this.clearRelatedId();\r\n this.uploadedAttachmentHasDigitalSignature = false;\r\n\r\n if (this.closeAfterUpload == true) {\r\n this.storeDWTcontrolContainer();\r\n this.addNewAttachmentPopup.close();\r\n } else {\r\n this.detailsAttachmentSVC.deliveryAttachmentsUploaded();\r\n }\r\n }\r\n\r\n uploadFileProgress(progress) {\r\n var me = this;\r\n setInterval(function () {\r\n me[\"parent\"].uploadFileProgressPercentage = progress;\r\n }, 0);\r\n }\r\n\r\n uploadFileError(item, response, status, headers) {\r\n\r\n this.toastr.error(BERRY.errorMsgs.UNAUTHORIZED);\r\n }\r\n\r\n uploadedAttachmentHasDigitalSignature: boolean = false;\r\n uploadedAttachments: any[] = [];\r\n\r\n onSaveCompleted(data, operation) {\r\n const me = this;\r\n if (!data) {\r\n console.error('onUploadCompleted method: data is undefined');\r\n me.toastr.error(BERRY.loc.common.errorMessage);\r\n }\r\n else if (data) {\r\n if (operation == \"InEdit\") {\r\n me.uploadedAttachmentHasDigitalSignature = data?.attachment?.HasDigitalSignature;\r\n }\r\n\r\n if (this.closeAfterUpload == true) {\r\n me.uploadFileComplete();\r\n me.OnCompleteItem.emit(data);\r\n me.CheckAddedAttachmentArchive.emit(true);\r\n }\r\n else {\r\n this.uploadedAttachments.push(data.attachment)\r\n me.uploadFileComplete(false);\r\n }\r\n }\r\n else {\r\n me.isBusy = false;\r\n me.operationResult = false;\r\n me.isFileSelected = false;\r\n me.isOpen = true;\r\n me.isAttachmentUploadBusy = false;\r\n\r\n if (data.error && data.error.ResourceId && data.error.ResourceSet) {\r\n let err = me.getText(data.error.ResourceId, data.error.ResourceSet);\r\n me.toastr.warning(err);\r\n }\r\n else if (data.error && data.error != \"\") {\r\n me.toastr.error(data.error);\r\n }\r\n else if (data.ResourceId && data.ResourceSet) {\r\n let err = me.getText(data.ResourceId, data.ResourceSet);\r\n me.toastr.error(err);\r\n }\r\n else if (typeof data == 'string') {\r\n let err = data;\r\n me.toastr.error(err);\r\n }\r\n else {\r\n me.toastr.error(BERRY.loc.common.errorMessage);\r\n }\r\n }\r\n }\r\n\r\n getRelatedId(): string {\r\n const me = this;\r\n let relatedId = me.detailsAttachmentSVC.AttachmentParentID;\r\n return relatedId;\r\n }\r\n\r\n attachments: any[] = [];\r\n vGetCorrespondence() {\r\n const me = this;\r\n if (me.detailsAttachmentSVC.getURL != undefined && me.RelatedType != \"CorrespondenceTask\" && me.RelatedType != \"SchedulingTopic\") {\r\n me.detailsAttachmentSVC.getAttachments(null, me.IsMultimediaModal, me._attachmentType)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(response => {\r\n var Data = response.dto;\r\n var DataOther = response.otherAttachment;\r\n me.detailsAttachmentSVC.Attachments = Data;\r\n me.detailsAttachmentSVC.OtherAttachments = DataOther;\r\n me.attachments = [];\r\n\r\n Data.forEach(item => {\r\n if (item[\"attachments\"]) {\r\n item[\"attachments\"].forEach(item => {\r\n if (!item.IsEmpty) {\r\n me.attachments.push(item);\r\n }\r\n });\r\n }\r\n });\r\n if (DataOther)\r\n DataOther.forEach(item => {\r\n if (item[\"attachments\"]) {\r\n item[\"attachments\"].forEach(item => {\r\n if (!item.IsEmpty) {\r\n me.attachments.push(item);\r\n }\r\n });\r\n }\r\n });\r\n me.detailsAttachmentSVC.attachmentsList = me.attachments;\r\n\r\n me.SelectFirstAttachment.emit(true);\r\n\r\n if (me.closeAfterUpload) {\r\n me.addNewAttachmentPopup.close();\r\n me.storeDWTcontrolContainer();\r\n }\r\n\r\n me.removeCurrentUser();\r\n });\r\n }\r\n else {\r\n if (me.closeAfterUpload) {\r\n me.addNewAttachmentPopup.close();\r\n me.storeDWTcontrolContainer();\r\n }\r\n me.removeCurrentUser();\r\n }\r\n }\r\n vGetScheduleAttachments() {\r\n const me = this;\r\n this.detailsAttachmentSVC.getScheduleAttachments(this.detailsAttachmentSVC.AttachmentParentID)\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(response => {\r\n var Data = response.dto;\r\n var DataOther = response.otherAttachment;\r\n me.detailsAttachmentSVC.Attachments = Data;\r\n me.detailsAttachmentSVC.OtherAttachments = DataOther;\r\n me.attachments = [];\r\n\r\n Data.forEach(item => {\r\n if (item[\"attachments\"]) {\r\n item[\"attachments\"].forEach(item => {\r\n if (!item.IsEmpty) {\r\n me.attachments.push(item);\r\n }\r\n });\r\n }\r\n });\r\n if (DataOther)\r\n DataOther.forEach(item => {\r\n if (item[\"attachments\"]) {\r\n item[\"attachments\"].forEach(item => {\r\n if (!item.IsEmpty) {\r\n me.attachments.push(item);\r\n }\r\n });\r\n }\r\n });\r\n me.detailsAttachmentSVC.attachmentsList = me.attachments;\r\n\r\n me.SelectFirstAttachment.emit(true);\r\n me.addNewAttachmentPopup.close();\r\n me.storeDWTcontrolContainer();\r\n me.removeCurrentUser();\r\n });\r\n }\r\n vGetAnnouncementAttachments() {\r\n const me = this;\r\n this.detailsAttachmentSVC.getAnnouncementAttachments(this.detailsAttachmentSVC.AttachmentParentID)\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(response => {\r\n var Data = response.dto;\r\n var DataOther = response.otherAttachment;\r\n me.detailsAttachmentSVC.Attachments = Data;\r\n me.detailsAttachmentSVC.OtherAttachments = DataOther;\r\n me.attachments = [];\r\n\r\n Data.forEach(item => {\r\n if (item[\"attachments\"]) {\r\n item[\"attachments\"].forEach(item => {\r\n if (!item.IsEmpty) {\r\n me.attachments.push(item);\r\n }\r\n });\r\n }\r\n });\r\n if (DataOther)\r\n DataOther.forEach(item => {\r\n if (item[\"attachments\"]) {\r\n item[\"attachments\"].forEach(item => {\r\n if (!item.IsEmpty) {\r\n me.attachments.push(item);\r\n }\r\n });\r\n }\r\n });\r\n me.detailsAttachmentSVC.attachmentsList = me.attachments;\r\n\r\n me.SelectFirstAttachment.emit(true);\r\n me.addNewAttachmentPopup.close();\r\n me.storeDWTcontrolContainer();\r\n me.removeCurrentUser();\r\n });\r\n }\r\n vGetCommitteeAttachments() {\r\n const me = this;\r\n this.detailsAttachmentSVC.getCommitteeAttachments(this.detailsAttachmentSVC.AttachmentParentID)\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(response => {\r\n var Data = response.dto;\r\n var DataOther = response.otherAttachment;\r\n me.detailsAttachmentSVC.Attachments = Data;\r\n me.detailsAttachmentSVC.OtherAttachments = DataOther;\r\n me.attachments = [];\r\n\r\n Data.forEach(item => {\r\n if (item[\"attachments\"]) {\r\n item[\"attachments\"].forEach(item => {\r\n if (!item.IsEmpty) {\r\n me.attachments.push(item);\r\n }\r\n });\r\n }\r\n });\r\n if (DataOther)\r\n DataOther.forEach(item => {\r\n if (item[\"attachments\"]) {\r\n item[\"attachments\"].forEach(item => {\r\n if (!item.IsEmpty) {\r\n me.attachments.push(item);\r\n }\r\n });\r\n }\r\n });\r\n me.detailsAttachmentSVC.attachmentsList = me.attachments;\r\n\r\n me.SelectFirstAttachment.emit(true);\r\n me.addNewAttachmentPopup.close();\r\n me.storeDWTcontrolContainer();\r\n me.removeCurrentUser();\r\n });\r\n }\r\n vGetArchiveAttachments() {\r\n const me = this;\r\n this.detailsAttachmentSVC.GetArchiveAttachments(this.detailsAttachmentSVC.AttachmentParentID)\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(response => {\r\n var Data = response.dto;\r\n var DataOther = response.otherAttachment;\r\n me.detailsAttachmentSVC.Attachments = Data;\r\n me.detailsAttachmentSVC.OtherAttachments = DataOther;\r\n me.attachments = [];\r\n\r\n Data.forEach(item => {\r\n if (item[\"attachments\"]) {\r\n item[\"attachments\"].forEach(item => {\r\n if (!item.IsEmpty) {\r\n me.attachments.push(item);\r\n }\r\n });\r\n }\r\n });\r\n if (DataOther)\r\n DataOther.forEach(item => {\r\n if (item[\"attachments\"]) {\r\n item[\"attachments\"].forEach(item => {\r\n if (!item.IsEmpty) {\r\n me.attachments.push(item);\r\n }\r\n });\r\n }\r\n });\r\n me.detailsAttachmentSVC.attachmentsList = me.attachments;\r\n\r\n me.SelectFirstAttachment.emit(true);\r\n me.addNewAttachmentPopup.close();\r\n me.storeDWTcontrolContainer();\r\n me.removeCurrentUser();\r\n });\r\n }\r\n\r\n vGetInitiativesAttachments() {\r\n const me = this;\r\n this.detailsAttachmentSVC.GetInitiativesAttachments(this.detailsAttachmentSVC.AttachmentParentID)\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(response => {\r\n var Data = response.dto;\r\n var DataOther = response.otherAttachment;\r\n me.detailsAttachmentSVC.Attachments = Data;\r\n me.detailsAttachmentSVC.OtherAttachments = DataOther;\r\n me.attachments = [];\r\n\r\n Data.forEach(item => {\r\n if (item[\"attachments\"]) {\r\n item[\"attachments\"].forEach(item => {\r\n if (!item.IsEmpty) {\r\n me.attachments.push(item);\r\n }\r\n });\r\n }\r\n });\r\n if (DataOther)\r\n DataOther.forEach(item => {\r\n if (item[\"attachments\"]) {\r\n item[\"attachments\"].forEach(item => {\r\n if (!item.IsEmpty) {\r\n me.attachments.push(item);\r\n }\r\n });\r\n }\r\n });\r\n me.detailsAttachmentSVC.attachmentsList = me.attachments;\r\n\r\n me.SelectFirstAttachment.emit(true);\r\n me.addNewAttachmentPopup.close();\r\n me.storeDWTcontrolContainer();\r\n me.removeCurrentUser();\r\n });\r\n }\r\n\r\n closeAfterUpload: boolean = true;\r\n\r\n save(DisabledSaveButton) {\r\n const me = this;\r\n let xcPresidentsMultipleLength = me.getXCPresidentsMultipleLength();\r\n\r\n if (this.isAccumulatedReport) {\r\n if (this.canUploadCompilationReport() == false) {\r\n me.dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n BERRY.getText('TheFileYouUploadedIsNotSupported', 'correspondence_details_attachments'),\r\n null,\r\n null,\r\n null,\r\n null,\r\n null,\r\n true,\r\n\r\n );\r\n dialog.show(options);\r\n }\r\n });\r\n return;\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n if (this.closeAfterUpload == false && me.selectedAttachmentsFromDrive.some(x => !x.isFileExtensionValid)) {\r\n me.dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n BERRY.loc.common.AttachmentExtensionNotValid,\r\n null,\r\n null,\r\n null,\r\n null,\r\n null,\r\n true,\r\n\r\n );\r\n dialog.show(options);\r\n }\r\n });\r\n\r\n return;\r\n }\r\n\r\n if (DisabledSaveButton || (this.GetRequiredFiledsIndexes.length > 0 && this.isMultipleAttachments)) {\r\n me.dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n BERRY.getText('FormsValidationMessage', 'Common'),\r\n null,\r\n null,\r\n null,\r\n null,\r\n null,\r\n true,\r\n\r\n );\r\n dialog.show(options, result => {\r\n if (this.GetRequiredFiledsIndexes.length > 0) {\r\n for (let i = 0; i < this.GetRequiredFiledsIndexes.length; i++) {\r\n me.expandItem(this.GetRequiredFiledsIndexes[i], this.GetRequiredFiledsIndexes.length);\r\n }\r\n }\r\n });\r\n }\r\n });\r\n\r\n }\r\n else if (me.addNewGuidanceNote && xcPresidentsMultipleLength !== me.selectedAttachmentsFromDrive.length) {\r\n me.toastr.warning(me.getText(\"SelectPresidentWarning\", \"ManagerialCommunication\"))\r\n }\r\n else {\r\n\r\n if (this.isEditMode == false) {\r\n if (me.selectedAttachmentsFromDrive.every(x => x.AttachmentId != undefined) && me.checkIfImagesInBuffer == 0) {\r\n this.detailsAttachmentSVC.deliveryAttachmentsUploaded();\r\n return;\r\n }\r\n\r\n if (me.selectedAttachmentsFromDrive.every(x => x.AttachmentId != undefined) && me.scannedAttachments.length > 0) {\r\n this.detailsAttachmentSVC.deliveryAttachmentsUploaded();\r\n return;\r\n }\r\n }\r\n\r\n me.isAttachmentUploadBusy = true;\r\n if (me.isMultipleAttachments) {\r\n me.saveMultipleAttachments();\r\n }\r\n else {\r\n me.saveAttachment();\r\n }\r\n }\r\n }\r\n\r\n canUploadCompilationReport(fileExtension: string = null): boolean {\r\n let extensionsSupportConversionToPDF = BERRY.generalSettingList?.find(s => s.SettingGroup == 'CorrespondencesSetting' && s.SettingKey == 'ExtensionsSupportConversionToPDF')?.Value?.split(',');\r\n\r\n if (!!fileExtension) {\r\n if (!!extensionsSupportConversionToPDF.find(s => s.toLowerCase() == fileExtension.toLowerCase())) {\r\n return true;\r\n }\r\n }\r\n else {\r\n if (!!extensionsSupportConversionToPDF.find(s => s.toLowerCase() == this.selectedAttachmentExtension?.toLowerCase())) {\r\n return true;\r\n }\r\n }\r\n\r\n return false;\r\n }\r\n\r\n\r\n scannedAttachments: any[] = [];\r\n saveAttachment() {\r\n const me = this;\r\n me.isOpen = false;\r\n me.operationResult = true;\r\n let RelatedId = 0;\r\n if (me.notRelated == false && me.detailsAttachmentSVC.AttachmentParentID)\r\n RelatedId = me.detailsAttachmentSVC.AttachmentParentID;\r\n\r\n if (!me.selectedFileName || me.selectedFileName == \"\")\r\n me.selectedFileName = BERRY.loc.common.NewAttachment;\r\n\r\n try {\r\n if (!me.hideAttachmentsGroup && !me.addNewGuidanceNote)\r\n this.detailsAttachmentSVC.selectedAttachmentGroupId = this.SelectedAttachmentGroup;\r\n else\r\n this.SelectedAttachmentGroup = 1;\r\n\r\n let _strHTTPServer = BERRY.appSettings.keys.dmsServerUrl;\r\n let strActionPage = me._uploadActionUrl;\r\n\r\n if (me.detailsAttachmentSVC.addEditUrl && me.detailsAttachmentSVC.addEditUrl != \"\") {\r\n _strHTTPServer = null;\r\n strActionPage = me.detailsAttachmentSVC.addEditUrl;\r\n }\r\n var dto: AttachmentDto = new AttachmentDto();\r\n // #1 - save scanner\r\n if (this.SelectedScanner && this.checkIfImagesInBuffer > 0) {\r\n\r\n if (me.addNewGuidanceNote) {\r\n var hdnxcGuidanceNotePresidents: any = document.getElementById(\"hdnxcGuidanceNotePresidents\");\r\n hdnxcGuidanceNotePresidents.value = me.xcPresidentsMultiple[0].map(p => p.XCPresidentID);\r\n var hdnxcGuidanceNoteLinkedItemType: any = document.getElementById(\"hdnxcGuidanceNoteLinkedItemType\");\r\n hdnxcGuidanceNoteLinkedItemType.value = me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Correspondences ? XCAttachmentLinkedTypeEnum.Correspondences : XCAttachmentLinkedTypeEnum.Scheduling;\r\n var hdnCorrespondenceID: any = document.getElementById(\"hdnCorrespondenceID\");\r\n hdnCorrespondenceID.value = me.linkedAttachmentId;\r\n }\r\n\r\n DWObject.MaxUploadImageSize = me.maxIIsSize;\r\n\r\n if (_strHTTPServer.endsWith(\"/\"))\r\n _strHTTPServer = _strHTTPServer.slice(0, -1);\r\n\r\n\r\n if (this.hideAttachmentsGroup == true && this.isAccumulatedReport) {\r\n me.SelectedAttachmentGroup = SystemAttachmentGroupEnum.AccumulatedReport;\r\n }\r\n\r\n btnUpload_onclick(\r\n strActionPage,\r\n me._attachmentType,\r\n me.attachmentNumber,\r\n me.attachmentSummary,\r\n me.SelectedAttachmentGroup,\r\n me.IsDraft,\r\n _strHTTPServer,\r\n function (response) {\r\n let responseObj;\r\n try {\r\n responseObj = JSON.parse(response);\r\n }\r\n catch {\r\n responseObj = response;\r\n }\r\n if (responseObj) {\r\n if (responseObj.result) {\r\n if (me.closeAfterUpload) {\r\n me.OnCompleteItem.emit(responseObj);\r\n me.IsPopUpClosed.emit(\"closed\");\r\n }\r\n else {\r\n me.uploadedAttachments.push(responseObj.attachment)\r\n me.scannedAttachments.push(responseObj.attachment);\r\n me.uploadFileComplete(false);\r\n }\r\n\r\n if (!me.addNewGuidanceNote) {\r\n me.vGetCorrespondence();\r\n me.getAttachmentsCount();\r\n }\r\n else {\r\n if (me.closeAfterUpload) {\r\n me.addNewAttachmentPopup.close();\r\n me.storeDWTcontrolContainer();\r\n }\r\n me.refreshXCGuidanceNotes.emit(true);\r\n }\r\n me.toastr.success(BERRY.loc.common.successMessage);\r\n }\r\n else {\r\n if (responseObj.errorCode == -2313)// Mean Size Error from WebTwin\r\n me.toastr.warning(me.getText('moreThanIISSize', 'CSHTML/Areas/Correspondences/Attachments/Index'));\r\n else {\r\n me.toastr.warning(responseObj);\r\n }\r\n }\r\n }\r\n else {\r\n me.toastr.error(BERRY.loc.common.errorMessage);\r\n }\r\n }\r\n , me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType,\r\n me.SelectedAttachmentGroup == SystemAttachmentGroupEnum.AccumulatedReport);\r\n }\r\n else {\r\n var loIDs = [];\r\n let hdbIsEdit = document.getElementById(\"hdbIsEdit\");\r\n let isEdit = hdbIsEdit.value === \"true\";\r\n\r\n var hdncorrAttachId: any = document.getElementById(\"hdncorrAttachId\");\r\n var txt_attachmentsummary: any = document.getElementById(\"txt_attachmentsummary\");\r\n var toggle: any = document.getElementById(\"toggle\");\r\n let HasToggleElementInHtml: boolean = !!toggle;\r\n if (HasToggleElementInHtml && toggle.checked) {\r\n if (me.permittedUser != null) {\r\n var getIDs = me.permittedUser;\r\n for (var j = 0; j < getIDs.length; j++) {\r\n loIDs.push(getIDs[j].Dbid);\r\n }\r\n }\r\n }\r\n else if (me.addNewGuidanceNote) {\r\n if (me.xcPresidentsMultiple && me.xcPresidentsMultiple.length > 0) {\r\n loIDs = me.xcPresidentsMultiple[0].map(p => p.XCPresidentID);\r\n }\r\n }\r\n\r\n dto.FromMeetingMinuts = me.FromMeetingMinuts;\r\n dto.AttachmentType = me._attachmentType;\r\n dto.AttachmentTitle = me.selectedFileName;\r\n if (txt_attachmentsummary && txt_attachmentsummary.value && txt_attachmentsummary.value.trim()) {\r\n dto.AttachmentSummary = txt_attachmentsummary.value.trim();\r\n }\r\n dto.AttachmentSummary = me.attachmentSummary;\r\n if (dto.AttachmentType == AttachmentTypesEnum.Announcements) {\r\n dto.AttachmentSummary = this.attachmentSummary\r\n }\r\n dto.RelatedAttachmentID = hdncorrAttachId.value == '' ? Guid.EMPTY : hdncorrAttachId.value;\r\n\r\n if (loIDs.length == 0)\r\n dto.RelatedAttachmentUsersID == null ? [] : dto.RelatedAttachmentUsersID;\r\n else\r\n dto.RelatedAttachmentUsersID = loIDs;\r\n dto.ExtractFromAttachmentId = \"\";\r\n dto.RelatedID = RelatedId\r\n dto.Privacy = me.isApplySecurity === true ? 1 : 0;\r\n\r\n if (this.hideAttachmentsGroup == true && this.isAccumulatedReport) {\r\n dto.SelectedAttachmentGroup = SystemAttachmentGroupEnum.AccumulatedReport;\r\n dto.IsAccumulatedReport = true;\r\n }\r\n else {\r\n dto.SelectedAttachmentGroup = me.SelectedAttachmentGroup;\r\n }\r\n\r\n dto.IsCorrespondenceRecored = me.IsCorrespondenceRecord;\r\n dto.ExternalRecipentId = me.detailsAttachmentSVC.ExternalRecipentId;\r\n dto.IsDraft = me.IsDraft;\r\n dto.ExternalContactID = me.externalContactID == null ? 0 : me.externalContactID;\r\n dto.AttachmentSubject = me.attachmentSubject;\r\n dto.AttachmentNumber = me.attachmentNumber != null ? me.attachmentNumber : \"\";\r\n dto.AttachmentUserIds = loIDs;\r\n dto.ScheduleItemTopicAttachmentType = me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType;\r\n if (me.addNewGuidanceNote) {\r\n dto.LinkedItemType = me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Correspondences ? XCAttachmentLinkedTypeEnum.Correspondences : XCAttachmentLinkedTypeEnum.Scheduling;\r\n dto.RelatedID = me.linkedAttachmentId;\r\n }\r\n\r\n var fileInput = me.fileUploaderElm.imageUpload.nativeElement.files[0];\r\n\r\n if (isEdit && !fileInput) {\r\n // #2 - Edit Attachment meta-data\r\n dto.ExtractFromAttachmentId = Guid.EMPTY.valueOf();\r\n dto.Extension = me.detailsAttachmentSVC.selectedAttachmentExtension;\r\n me.detailsAttachmentSVC.saveEditAttachmentMetaData(dto)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(Data => {\r\n if (hdncorrAttachId.value != null) {\r\n var relatedEnum = me.getAttachmentRelatedEnum(null);\r\n me.detailsAttachmentSVC.getAttachmentSummary(hdncorrAttachId.value, relatedEnum)\r\n .pipe(takeWhile(() => me.isSubscribed)).subscribe(Data => {\r\n me.CheckAttachmentSummaryAfterEdit.emit(Data);\r\n });\r\n }\r\n this.onSaveCompleted(Data, \"InEdit\");\r\n });\r\n }\r\n else {\r\n // #3 - New Attachment\r\n if (this.detailsAttachmentSVC.appModuleId == AppModulesEnum.Correspondences && dto.RelatedID == 0)\r\n dto.RelatedID = undefined;\r\n if (this.detailsAttachmentSVC.appModuleId == AppModulesEnum.Proclamation && dto.RelatedID == 0)\r\n dto.RelatedID = undefined;\r\n\r\n\r\n this.fileUploaderData = dto;\r\n setTimeout(() => {\r\n if (fileInput != null) {\r\n this.fileUploaderElm.uploadImg();\r\n } else {\r\n me.uploadFileComplete(me.closeAfterUpload == true);\r\n }\r\n\r\n }, 100);\r\n }\r\n }\r\n }\r\n catch (ex) {\r\n me.toastr.error(BERRY.loc.common.errorMessage);\r\n me.operationResult = false;\r\n }\r\n }\r\n AttachmentsCount: number = 0;\r\n\r\n saveMultipleAttachments() {\r\n const me = this;\r\n\r\n let newSelectedAttachmentsFromDrive = me.selectedAttachmentsFromDrive.filter(x => x.AttachmentId == undefined);\r\n\r\n me.startedUploading = true;\r\n me.isOpen = false;\r\n me.AttachmentsCount = newSelectedAttachmentsFromDrive.length;\r\n me.ProgressBar.open();\r\n me.operationResult = true;\r\n me.filesCount = 0;\r\n me.progressBarCount = 0;\r\n\r\n me.isUpload = false;\r\n\r\n let RelatedId = 0;\r\n if (me.notRelated == false && me.detailsAttachmentSVC.AttachmentParentID)\r\n RelatedId = me.detailsAttachmentSVC.AttachmentParentID;\r\n\r\n var loIDs = [];\r\n let index = me.xcPresidentsMultiple.length - 1;\r\n for (const dto of newSelectedAttachmentsFromDrive) {\r\n loIDs = [];\r\n var hdncorrAttachId: any = document.getElementById(\"hdncorrAttachId\");\r\n\r\n if (dto.isApplySecurity) {\r\n if (dto.permittedUser != null) {\r\n var getIDs = dto.permittedUser;\r\n for (var j = 0; j < getIDs.length; j++) {\r\n loIDs.push(getIDs[j].dbid);\r\n }\r\n }\r\n }\r\n\r\n if (me.addNewGuidanceNote) {\r\n if (me.xcPresidentsMultiple && me.xcPresidentsMultiple.length > 0) {\r\n loIDs = me.xcPresidentsMultiple[index].map(p => p.XCPresidentID);\r\n }\r\n }\r\n\r\n dto.Extension = \".\" + dto.Extension; //In fb-attachments-list component the checks for '.pdf' not 'pdf'\r\n dto.AttachmentType = me._attachmentType;\r\n // if (txt_attachmentsummary && txt_attachmentsummary.value && txt_attachmentsummary.value.trim()) {\r\n // dto.AttachmentSummary = txt_attachmentsummary.value.trim();\r\n // }\r\n\r\n if (dto.AttachmentType == AttachmentTypesEnum.Announcements) {\r\n dto.AttachmentSummary = this.attachmentSummary\r\n }\r\n dto.RelatedAttachmentID = hdncorrAttachId.value;\r\n\r\n if (loIDs.length == 0)\r\n dto.RelatedAttachmentUsersID = null;\r\n else\r\n dto.RelatedAttachmentUsersID = loIDs;\r\n\r\n if (me.addNewGuidanceNote) {\r\n dto.LinkedItemType = me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Correspondences ? XCAttachmentLinkedTypeEnum.Correspondences : XCAttachmentLinkedTypeEnum.Scheduling;\r\n dto.RelatedID = me.linkedAttachmentId;\r\n } else {\r\n dto.RelatedID = RelatedId\r\n }\r\n dto.IsCorrespondenceRecored = me.IsCorrespondenceRecord;\r\n dto.ExternalRecipentId = me.detailsAttachmentSVC.ExternalRecipentId;\r\n dto.IsDraft = me.IsDraft;\r\n dto.AttachmentUserIds = loIDs;\r\n dto.ScheduleItemTopicAttachmentType = me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType;\r\n if (this.detailsAttachmentSVC.appModuleId == AppModulesEnum.Correspondences && dto.RelatedID == 0)\r\n dto.RelatedID = undefined;\r\n if (this.detailsAttachmentSVC.appModuleId == AppModulesEnum.Proclamation && dto.RelatedID == 0)\r\n dto.RelatedID = undefined;\r\n\r\n index--;\r\n }\r\n me.recursiveUploadAttachments();\r\n }\r\n filesCount = 0;\r\n recursiveUploadAttachments() {\r\n let me = this;\r\n let newSelectedAttachmentsFromDrive = me.selectedAttachmentsFromDrive.filter(x => x.AttachmentId == undefined);\r\n me.detailsAttachmentSVC.uploadMultipleAttachments(newSelectedAttachmentsFromDrive[me.filesCount]).subscribe(data => {\r\n me.responseUploadedFiles.push(data);\r\n me.filesCount++; //When subscrbed define files index\r\n if (data.attachment.HasDigitalSignature) {\r\n this.uploadedAttachmentHasDigitalSignature = true;\r\n }\r\n }, e => {\r\n if (e.error && e.error.ResourceId && e.error.ResourceSet) {\r\n let err = me.getText(e.error.ResourceId, e.error.ResourceSet);\r\n me.toastr.error(err);\r\n }\r\n else if (e.error && e.error != \"\") {\r\n me.toastr.error(e.error);\r\n }\r\n else {\r\n me.toastr.error(BERRY.loc.common.errorMessage);\r\n }\r\n\r\n me.startedUploading = false;\r\n me.operationResult = false;\r\n me.isAttachmentUploadBusy = false;\r\n me.ProgressBar.close();\r\n },\r\n () => {\r\n if (this.progressBarCount < newSelectedAttachmentsFromDrive.length) {\r\n me.progressBarCount = me.progressBarCount < me.AttachmentsCount ? ++me.progressBarCount : me.progressBarCount; // after Complete increase Progress bar\r\n\r\n if (me.filesCount < newSelectedAttachmentsFromDrive.length)\r\n this.recursiveUploadAttachments();\r\n }\r\n if (me.filesCount == newSelectedAttachmentsFromDrive.length) {\r\n me.startedUploading = false;\r\n me.ProgressBar.close();\r\n me.OnMultipleAttachmentsUploadCompleted();\r\n me.uploadFileComplete(me.closeAfterUpload == true);\r\n }\r\n\r\n });\r\n }\r\n responseUploadedFiles: any[] = [];\r\n OnMultipleAttachmentsUploadCompleted() {\r\n const me = this;\r\n me.responseUploadedFiles.forEach(file => {\r\n if (!me.uploadedAttachments.some(x => x.RelatedAttachmentID == file.id)) {\r\n me.uploadedAttachments.push(file.attachment)\r\n file.Extension = \".\" + file.Extension;\r\n me.OnCompleteItem.emit(file);\r\n }\r\n });\r\n }\r\n getAttachmentRelatedEnum(attachment): number {\r\n const me = this;\r\n\r\n let relatedEnum = 0;\r\n if (attachment && attachment.AttachmentModuleType)\r\n relatedEnum = attachment.AttachmentModuleType;\r\n else if (me.detailsAttachmentSVC.Module === SystemModules.Correspondence)\r\n relatedEnum = SystemModules.Correspondence;\r\n else if (me.detailsAttachmentSVC.Module === SystemModules.Scheduling)\r\n relatedEnum = SystemModules.Scheduling;\r\n else if (me.detailsAttachmentSVC.Module === SystemModules.Archive)\r\n relatedEnum = SystemModules.Archive;\r\n\r\n return relatedEnum;\r\n }\r\n\r\n changeAttachmentGroup(value, attachment = null) {\r\n const me = this;\r\n if (!me.editSelectedAttachment) {\r\n me.attachmentNumber = \"\";\r\n }\r\n var selectedArray = me.attachmentsGroup.filter(x => x.Id == +value);\r\n this.SelectedAttachmentGroup = this.selectedGroupId = +value;\r\n me.isSupportNumbering = false;\r\n me.IsSupportAutoNaming = false;\r\n me._allowCustomNumbering = false;\r\n me._allowCustomNaming = false;\r\n me._allowMultimedia = false;\r\n\r\n if (selectedArray.length) {\r\n var selectedGroup = me.attachmentsGroup.filter(x => x.Id == +value)[0];\r\n me.isSupportNumbering = selectedGroup.IsSupportNumbering;\r\n me.IsSupportAutoNaming = selectedGroup.IsSupportAutoNaming;\r\n me._allowCustomNumbering = selectedGroup.AllowCustomNumbering;\r\n me._allowCustomNaming = selectedGroup.AllowCustomNaming;\r\n me._allowMultimedia = selectedGroup.IsSupportMultiMedia;\r\n\r\n //for selected Attachment if attachments\r\n if (me.selectedAttachmentsFromDrive.length > 0 && attachment != null) {\r\n var selectedAttachment = me.selectedAttachmentsFromDrive.find(e => e.TemporaryAttachmentId == attachment.TemporaryAttachmentId);\r\n selectedAttachment.isSupportNumbering = selectedGroup.IsSupportNumbering;\r\n selectedAttachment.IsSupportAutoNaming = selectedGroup.IsSupportAutoNaming;\r\n selectedAttachment.AllowCustomNumbering = selectedGroup.AllowCustomNumbering;\r\n selectedAttachment._allowCustomNaming = selectedGroup.AllowCustomNaming;\r\n selectedAttachment._allowMultimedia = selectedGroup.IsSupportMultiMedia;\r\n selectedAttachment.SelectedAttachmentGroup = value;\r\n me.selectedAttachmentsFromDrive.forEach(element => {\r\n if (!element.isSupportNumbering)\r\n element.AttachmentNumber = \"\";\r\n })\r\n }\r\n if (me.selectedAttachmentsFromDrive.length > 0 && attachment == null) {\r\n var selectedAttachment = me.selectedAttachmentsFromDrive[0];\r\n selectedAttachment.isSupportNumbering = selectedGroup.IsSupportNumbering;\r\n selectedAttachment.IsSupportAutoNaming = selectedGroup.IsSupportAutoNaming;\r\n selectedAttachment.AllowCustomNumbering = selectedGroup.AllowCustomNumbering;\r\n selectedAttachment._allowCustomNaming = selectedGroup.AllowCustomNaming;\r\n selectedAttachment._allowMultimedia = selectedGroup.IsSupportMultiMedia;\r\n selectedAttachment.SelectedAttachmentGroup = value;\r\n me.selectedAttachmentsFromDrive.forEach(element => {\r\n if (!element.isSupportNumbering)\r\n element.AttachmentNumber = \"\";\r\n })\r\n }\r\n }\r\n if (attachment != null) {\r\n if (me.isMultimediaFileExtension(attachment.Extension) && !attachment._allowMultimedia) {\r\n me.toastr.error(me.getText(\"MediaGroupWarningMessage\", \"details_attachments\"));\r\n return;\r\n }\r\n }\r\n else {\r\n if (me.isMultimediaFileExtension(me.selectedAttachmentExtension) && !me._allowMultimedia) {\r\n me.toastr.error(me.getText(\"MediaGroupWarningMessage\", \"details_attachments\"));\r\n return;\r\n }\r\n }\r\n\r\n\r\n if (!me.isEditMode) {\r\n if (me.isSupportNumbering) {\r\n if (me.AllowCustomNumbering)\r\n me.getAttachmentNumberBaseOnGroupId(+value, selectedAttachment);\r\n }\r\n else {\r\n me.setValueForAttachmentNumber();\r\n }\r\n\r\n if (me.IsSupportAutoNaming) {\r\n me.getAttachmentNameBaseOnGroupId(+value, selectedAttachment);\r\n }\r\n else {\r\n if (selectedAttachment)\r\n selectedAttachment.AttachmentTitle = selectedAttachment.SelectedTempFileName;\r\n me.selectedFileName = me.SelectedTempFileName;\r\n }\r\n\r\n }\r\n }\r\n\r\n changeAttachmentSubject(event, attachmentId = null) {\r\n const me = this;\r\n if (attachmentId == null && me.selectedAttachmentsFromDrive.length > 0) {\r\n me.selectedAttachmentsFromDrive[0].AttachmentSubject = event;\r\n }\r\n //for selected Attachment if attachments\r\n if (me.selectedAttachmentsFromDrive.length > 0 && attachmentId != null) {\r\n var selectedAttachment = me.selectedAttachmentsFromDrive.find(e => e.TemporaryAttachmentId == attachmentId);\r\n selectedAttachment.AttachmentSubject = event;\r\n }\r\n //else {\r\n // me.attachmentSubject = event;\r\n\r\n //}\r\n }\r\n\r\n changeAttachmentNumber(event, attachmentId = null) {\r\n const me = this;\r\n if (attachmentId == null && me.selectedAttachmentsFromDrive.length > 0) {\r\n me.selectedAttachmentsFromDrive[0].AttachmentNumber = event;\r\n }\r\n //for selected Attachment if attachments\r\n if (me.selectedAttachmentsFromDrive.length > 0 && attachmentId != null) {\r\n var selectedAttachment = me.selectedAttachmentsFromDrive.find(e => e.TemporaryAttachmentId == attachmentId);\r\n selectedAttachment.AttachmentNumber = event;\r\n }\r\n //else {\r\n // me.attachmentNumber = event;\r\n\r\n //}\r\n }\r\n changeAttachmentExternalContactName(event, attachmentId = null) {\r\n const me = this;\r\n if (attachmentId == null && me.selectedAttachmentsFromDrive.length > 0) {\r\n me.selectedAttachmentsFromDrive[0].ExternalContactID = event.dbid;\r\n me.selectedAttachmentsFromDrive[0].ExternalContactName = event.value;\r\n }\r\n //for selected Attachment if attachments\r\n if (me.selectedAttachmentsFromDrive.length > 0 && attachmentId != null) {\r\n var selectedAttachment = me.selectedAttachmentsFromDrive.find(e => e.TemporaryAttachmentId == attachmentId);\r\n selectedAttachment.ExternalContactID = event.dbid;\r\n selectedAttachment.ExternalContactName = event.value;\r\n }\r\n //else {\r\n // me.externalContactID = event.dbid;\r\n\r\n //}\r\n }\r\n\r\n get canEditAttachmentTitle() {\r\n if (this.detailsAttachmentSVC.appModuleId != 3) {\r\n !this.canChangeAttachmentTitle || this.CanChangeAttachmentTitleOnEdit\r\n }\r\n else return false;\r\n }\r\n\r\n fromNewCorrespondeceScreen: boolean = false;\r\n getAttachmentsGroups(fromNewCorrespondeceScreen: boolean = false) {\r\n const me = this;\r\n let attachmentAccessLevelType = AttachmentAccessLevelTypesEnum.None;\r\n const hdbIsEdit: HTMLInputElement = (\r\n document.getElementById(\"hdbIsEdit\")\r\n );\r\n if (hdbIsEdit.value == \"true\") {\r\n attachmentAccessLevelType = AttachmentAccessLevelTypesEnum.Edit;\r\n } else {\r\n attachmentAccessLevelType = AttachmentAccessLevelTypesEnum.AddNew;\r\n }\r\n\r\n let SelectedGroup = null;\r\n if (me.IsRecommendationModal)\r\n SelectedGroup = me.SelectedRecommendationGroupId;\r\n else if (me.IsMultimediaModal)\r\n SelectedGroup = me.SelectedMultimediaGroupId;\r\n\r\n let filter: AttachmentsGroupsFilter = {\r\n AccessLevelType: attachmentAccessLevelType,\r\n IsSupportReportGenerator: me.IsRecommendationModal,\r\n GroupId: SelectedGroup,\r\n IsSupportAutoNaming: fromNewCorrespondeceScreen ? false : null,\r\n IsSupportNumbering: fromNewCorrespondeceScreen ? false : null,\r\n IsSupportMultimedia: me.IsMultimediaModal\r\n };\r\n\r\n let relatedType = me.RelatedType;\r\n\r\n me.detailsAttachmentSVC\r\n .getAttachmentsGroups(relatedType, filter)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(Data => {\r\n me.attachmentsGroup = Data;\r\n if (me.IsRecommendationModal) {\r\n me.attachmentsGroup = Data.filter(i => {\r\n return i.Id == me.selectedGroupId;\r\n });\r\n }\r\n\r\n if (me.RelatedType == \"Committee\") {\r\n if (me.getRelatedId() != null || me.getRelatedId() != undefined) {\r\n me.committeesSvc.getCommitteeLogicHandler(me.getRelatedId(), CommitteePageType.AttachmentHandler)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (!(data.AttachmentHandler && data.AttachmentHandler.CanAddAttachment)) {\r\n me.attachmentsGroup = me.attachmentsGroup.filter(a => a.UserHasAccess || a.Id == 1);\r\n }\r\n });\r\n }\r\n\r\n }\r\n me.checkSelectedAttachmentGroup();\r\n });\r\n }\r\n\r\n maxFileSizeCanBeUpload: string = null;\r\n maxIIsSize: number = 0;\r\n getCurrentClientFileExtensions() {\r\n const me = this;\r\n\r\n me.extensionSettings\r\n .CurrentClientFileExtensions()\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(response => {\r\n me.fileExtensions = response;\r\n if (me.isMeetingPresentationAttachment) {\r\n me.fileExtensions.SupportedFileExtensions = \"ppt,pptx\";\r\n me.supportedFileExtensions = me.getText(\"ExtensionsAllowdByDefault\", \"General-Setting\").replace(\"{extensions}\", \"ppt,pptx\");\r\n me.supportedFileExtensions = me.supportedFileExtensions.split(',').join(', ');\r\n me.isSupportedExtensions = JSON.parse(me.fileExtensions.isSupportedExtensions);\r\n }\r\n else {\r\n if (this.closeAfterUpload == false) {\r\n let extensions = \"pdf, png, jpeg, jpg, jfif, bmp, tiff\";\r\n me.supportedFileExtensions = me.getText(\"ExtensionsAllowdByDefault\", \"General-Setting\").replace(\"{extensions}\", extensions);\r\n } else {\r\n var extensionsAllowedByDefault = BERRY.appSettings.keys.extFileAllowedByDefault;\r\n var supportedextensions = extensionsAllowedByDefault;\r\n if (me.fileExtensions.SupportedFileExtensions)\r\n supportedextensions += ',' + me.fileExtensions.SupportedFileExtensions;\r\n me.supportedFileExtensions = me.getText(\"ExtensionsAllowdByDefault\", \"General-Setting\").replace(\"{extensions}\", supportedextensions);\r\n }\r\n\r\n me.supportedFileExtensions = me.supportedFileExtensions.split(',').join(', ');\r\n me.isSupportedExtensions = JSON.parse(me.fileExtensions.isSupportedExtensions);\r\n\r\n if (this.isAccumulatedReport) {\r\n let extensionsSupportConversionToPDF = BERRY.generalSettingList?.find(s => s.SettingGroup == 'CorrespondencesSetting' && s.SettingKey == 'ExtensionsSupportConversionToPDF')?.Value;\r\n \r\n var splittedExtensionsSupportConversionToPDF = extensionsSupportConversionToPDF.toLocaleLowerCase().split(',');\r\n var splittedSupportedExtensions = supportedextensions.toLocaleLowerCase().split(',');\r\n\r\n var intersectionExtensions = splittedExtensionsSupportConversionToPDF.filter(extension => {\r\n return splittedSupportedExtensions.includes(extension);\r\n });\r\n \r\n me.supportedFileExtensions = me.getText(\"ExtensionsAllowdByDefault\", \"General-Setting\").replace(\"{extensions}\", intersectionExtensions.join(','));\r\n me.supportedFileExtensions = me.supportedFileExtensions.split(',').join(', ');\r\n me.isSupportedExtensions = true;\r\n }\r\n\r\n }\r\n });\r\n }\r\n GetMaxFileSizeCanBeUpload() {\r\n const me = this;\r\n if (me.detailsAttachmentSVC.appModuleId) {\r\n var module = me.detailsAttachmentSVC.appModuleId;\r\n if (module == AppModulesEnum.DeliveryReport) {\r\n module = AppModulesEnum.Correspondences;\r\n }\r\n me.detailsAttachmentSVC.GetMaxFileSizeCanBeUpload(module).pipe(takeWhile(() => me.isSubscribed)).subscribe((data) => {\r\n me.maxFileSizeCanBeUpload = me.getText(\"MaxFileSizeWarningMsg\", \"DMSResources\").replace(\"{size}\", data.moduleSize);\r\n me.maxIIsSize = data.iisSize;\r\n me.moduleSize = data.moduleSize * 1024 * 1024;\r\n });\r\n }\r\n }\r\n\r\n getAttachments() {\r\n let me = this;\r\n\r\n if (\r\n this.detailsAttachmentSVC.Attachments == null &&\r\n this.detailsAttachmentSVC.AttachmentParentID != undefined\r\n )\r\n this.detailsAttachmentSVC\r\n .getAttachments()\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n this.toastr.success(BERRY.loc.common.successMessage);\r\n this.addNewAttachmentPopup.close();\r\n this.storeDWTcontrolContainer();\r\n });\r\n }\r\n\r\n validate() {\r\n if (!this.isFileSelected && !this.isFileScanned) {\r\n this.validation.fileMustBeSelected = true;\r\n return false;\r\n }\r\n\r\n if (this.isFileSelected && this.selectedFileName.trim() == \"\") {\r\n this.validation.fileNameRequired = true;\r\n return false;\r\n }\r\n return true;\r\n }\r\n clonedSelectedAttachmentsFromDrive: AttachmentDto[] = [];\r\n vResetModel() {\r\n this.zone.run(() => {\r\n this.outputFile = null;\r\n this.fileUploaderElm.imageUpload.nativeElement.value = \"\";\r\n if (DWObjectLargeViewer) {\r\n DWObjectLargeViewer.ClearAllHTTPFormField();\r\n if (!DWObjectLargeViewer.RemoveAllImages()) {\r\n console.log(\r\n \"DWObjectLargeViewer.ErrorCode : \" + DWObjectLargeViewer.ErrorCode\r\n );\r\n console.log(\r\n \"DWObjectLargeViewer.ErrorString : \" +\r\n DWObjectLargeViewer.ErrorString\r\n );\r\n }\r\n DWObjectLargeViewer.FitWindowType = 1;\r\n }\r\n\r\n if (DWObject) {\r\n DWObject.ClearAllHTTPFormField();\r\n if (!DWObject.RemoveAllImages()) {\r\n console.log(\"DWObject.ErrorCode : \" + DWObject.ErrorCode);\r\n console.log(\"DWObject.ErrorString : \" + DWObject.ErrorString);\r\n }\r\n DWObject.CurrentImageIndexInBuffer = 0;\r\n }\r\n\r\n var hdbIsEdit: any = document.getElementById(\"hdbIsEdit\");\r\n var hdncorrAttachId: any = document.getElementById(\"hdncorrAttachId\");\r\n var txt_attachmentsummary: any = document.getElementById(\r\n \"txt_attachmentsummary\"\r\n );\r\n var oldVersionId: any = document.getElementById(\"oldVersionId\");\r\n var fileInput: any = this.fileUploaderElm.imageUpload.nativeElement;\r\n var imgFile: any = document.getElementById(\"imgFile\");\r\n\r\n this.isBusy = false\r\n //to clear values when re-open model\r\n this.attachmentSubject = \"\";\r\n this.attachmentNumber = \"\";\r\n\r\n this.IsSupportAutoNaming = false;\r\n this.selectedSingleFile = null;\r\n\r\n this.b64File = null;\r\n\r\n this.externalContact = null;\r\n this.externalContactID = 0;\r\n\r\n this._isFromUploader = false;\r\n this.isFileExtensionValid = false;\r\n\r\n this.selectedAttachmentsFromDrive = [];\r\n hdbIsEdit.value = false;\r\n this.hasImage = false;\r\n this.selectedTempFileName = \"\";\r\n this.fileType = \"empty\";\r\n if (hdncorrAttachId != null) hdncorrAttachId.value = \"\";\r\n if (oldVersionId != null) oldVersionId.value = \"\";\r\n if (fileInput != null) fileInput.value = \"\";\r\n if (imgFile != null) imgFile.src = \"\";\r\n this.selectedFileName = \"\";\r\n this.extinsion = null;\r\n\r\n if (this.IsRecommendationModal)\r\n this.selectedGroupId = this.SelectedRecommendationGroupId;\r\n else if (this.IsMultimediaModal)\r\n this.selectedGroupId = this.SelectedMultimediaGroupId;\r\n else this.selectedGroupId = 1;\r\n\r\n var txt_attachmentsummary: any = document.getElementById(\r\n \"txt_attachmentsummary\"\r\n );\r\n if (txt_attachmentsummary != null) {\r\n txt_attachmentsummary.value = \"\";\r\n }\r\n this.removeCurrentUser();\r\n this.zone.run(() => {\r\n this.permittedUser = [];\r\n this.selectedFileName = \"\";\r\n this.attachmentSummary = \"\";\r\n });\r\n });\r\n\r\n this.isFileSelected = false;\r\n }\r\n\r\n vHideModel() {\r\n this.onClose.emit();\r\n this.zone.run(() => {\r\n this.isOpen = false;\r\n this.vResetPopupData();\r\n });\r\n }\r\n\r\n vResetPopupData() {\r\n this.vResetModel();\r\n this.selectedFileName = \"\";\r\n this.attachmentSummary = \"\";\r\n this.selectedAttachmentExtension = \"\";\r\n this.storeDWTcontrolContainer();\r\n this.removeCurrentUser();\r\n }\r\n\r\n detectChangeAfterLoading(y) {\r\n const me = this;\r\n if ((!DWObject || DWObject.__sourceCount < 1) && y < 50) {\r\n setTimeout(() => {\r\n me.detectChangeAfterLoading(++y);\r\n }, 100);\r\n } else {\r\n if (DWObject && DWObject.__sourceCount > 0) {\r\n var count = DWObject.SourceCount;\r\n var _source = document.getElementById(\"source\");\r\n if (_source) {\r\n while (_source.options[1] != undefined) _source.options[1].remove();\r\n for (var i = 0; i < count; i++)\r\n _source.options.add(\r\n new Option(DWObject.GetSourceNameItems(i), i.toString())\r\n ); // Add the sources in a drop-down list\r\n _source.options.selectedIndex = 1;\r\n me.ref.detectChanges();\r\n }\r\n }\r\n }\r\n }\r\n\r\n reloadScanners(clicked: any = false) {\r\n if (Dynamsoft) {\r\n var me = this;\r\n if (DWObject && me.checkIfImagesInBuffer > 0) {\r\n me.dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Warning,\r\n me.getText(\r\n \"reloadScannersConfirmation\",\r\n \"CSHTML/Areas/Correspondences/Attachments/Index\"\r\n ),\r\n \"\",\r\n BERRY.loc.CommonDbRes.Yes,\r\n BERRY.loc.CommonDbRes.No\r\n );\r\n dialog.show(options, result => {\r\n if (result == ConfirmationBoxResult.Yes) {\r\n Dynamsoft.isLoading = true;\r\n Dynamsoft.WebTwainEnv.Load();\r\n me.detectChangeAfterLoading(0);\r\n }\r\n });\r\n }\r\n });\r\n } else {\r\n Dynamsoft.isLoading = true;\r\n if (clicked) Dynamsoft.isAllowShowServiceDownloadMsg = true;\r\n Dynamsoft.WebTwainEnv.Load();\r\n this.checkAfterLoad(0);\r\n this.detectChangeAfterLoading(0);\r\n }\r\n } else {\r\n this.toastr.error(BERRY.loc.common.errorMessage);\r\n }\r\n }\r\n checkAfterLoad(y) {\r\n const me = this;\r\n if ((!DWObject || DWObject.__sourceCount < 1) && y < 10) {\r\n setTimeout(() => {\r\n me.checkAfterLoad(++y);\r\n }, 600);\r\n } else {\r\n if (!Dynamsoft.isServiceDownloaded) {\r\n this.hideScanerAlert = 'false';\r\n }\r\n else {\r\n //the scanners are loaded\r\n this.hideScanerAlert = 'true';\r\n }\r\n }\r\n }\r\n\r\n triggerResize() {\r\n // Internet Explorer 6-11\r\n var isIE = /*@cc_on!@*/ false || !!(document).documentMode;\r\n\r\n if (isIE) {\r\n var evt: any = window.document.createEvent(\"UIEvents\");\r\n evt.initUIEvent(\"resize\", true, false, window, 0);\r\n window.dispatchEvent(evt);\r\n } else {\r\n window.dispatchEvent(new Event(\"resize\"));\r\n }\r\n }\r\n\r\n public storeDWTcontrolContainer() {\r\n if (this.scanPermissions) {\r\n if (\r\n $(\"#dwtcontrolContainer\").length > 0 &&\r\n $(\"#dwtcontrolContainerLargeViewer\").length > 0 &&\r\n (document).getElementById(\"dwtcontrolContainer\").parentNode.id ==\r\n \"dwtcontrolContainerLocalParent\"\r\n ) {\r\n document\r\n .getElementById(\"dwtcontrolContainerGlobalParent\")\r\n .insertBefore(\r\n document.getElementById(\"dwtcontrolContainerLargeViewer\"),\r\n document.getElementById(\"dwtcontrolContainerBrother\")\r\n );\r\n document\r\n .getElementById(\"dwtcontrolContainerGlobalParent\")\r\n .insertBefore(\r\n document.getElementById(\"dwtcontrolContainer\"),\r\n document.getElementById(\"dwtcontrolContainerBrother\")\r\n );\r\n }\r\n }\r\n }\r\n\r\n public vShowModel(\r\n attachmentType: AttachmentTypesEnum,\r\n editSelectedAttachment: any,\r\n detailsAttachmentSVC,\r\n webTwainService,\r\n isOwner: boolean = false,\r\n showSetAsFinalForm = false,\r\n isCorrespondenceRecord = false,\r\n appModuleId: number = null,\r\n fromNewCorrespondeceScreen: boolean = false,\r\n addNewGuidanceNote: boolean = false,\r\n linkedAttachmentId: string = null,\r\n isReplyAttachment: boolean = false,\r\n callbackMethod: any = null,\r\n notRelated: boolean = false\r\n ) {\r\n this.isOpen = true;\r\n this.isAttachmentUploadBusy = false;\r\n const me = this;\r\n me.fromNewCorrespondeceScreen = fromNewCorrespondeceScreen;\r\n me.vResetModel();\r\n me.detailsAttachmentSVC.isReplyAttachment = isReplyAttachment;\r\n me.addNewGuidanceNote = addNewGuidanceNote;\r\n me.linkedAttachmentId = linkedAttachmentId;\r\n me.xcPresidents = [];\r\n me.xcPresidentsMultiple = [[]];\r\n me.notRelated = notRelated\r\n if (appModuleId != null)\r\n me.detailsAttachmentSVC.appModuleId = appModuleId;\r\n\r\n me.AttachmentType = attachmentType;\r\n me.operationResult = false;\r\n if (me.scanPermissions) {\r\n if (\r\n $(\"#dwtcontrolContainer\").length > 0 &&\r\n $(\"#dwtcontrolContainerLargeViewer\").length > 0 &&\r\n (document).getElementById(\"dwtcontrolContainer\").parentNode.id == \"dwtcontrolContainerGlobalParent\"\r\n ) {\r\n document\r\n .getElementById(\"dwtcontrolContainerLocalParent\")\r\n .insertBefore(\r\n document.getElementById(\"dwtcontrolContainer\"),\r\n document.getElementById(\"dwtcontrolContainerChild\")\r\n );\r\n document\r\n .getElementById(\"dwtcontrolContainerLargeViewerLocalParent\")\r\n .insertBefore(\r\n document.getElementById(\"dwtcontrolContainerLargeViewer\"),\r\n document.getElementById(\"dwtcontrolContainerLargeViewerChild\")\r\n );\r\n me.triggerResize();//this is for css error happen after inserBefore\r\n }\r\n if (Dynamsoft && Dynamsoft.isServiceDownloaded && !DWObject)\r\n me.reloadScanners();\r\n else if (Dynamsoft && Dynamsoft.isServiceDownloaded && DWObject)\r\n me.detectChangeAfterLoading(0);\r\n }\r\n\r\n me.isPrivacy = false;\r\n me.isNew = true;\r\n\r\n const hdbIsEdit: any = document.getElementById(\"hdbIsEdit\");\r\n\r\n if (hdbIsEdit != null) {\r\n hdbIsEdit.value = false;\r\n }\r\n me.attachmentsGroup = null;\r\n me.showSetAsFinalForm = showSetAsFinalForm;\r\n me.isCorrespondenceRecord = isCorrespondenceRecord;\r\n me.addNewAttachmentPopup.open();\r\n me.webTwainSVC = webTwainService;\r\n\r\n this.selectedGroupId = 0;\r\n\r\n if (!!detailsAttachmentSVC) {\r\n me.detailsAttachmentSVC = detailsAttachmentSVC;\r\n }\r\n me.editSelectedAttachment = editSelectedAttachment;\r\n if (editSelectedAttachment) {\r\n me.attachmentNumber = me.editSelectedAttachment.AttachmentNumber;\r\n me.attachmentSubject = me.editSelectedAttachment.AttachmentSubject;\r\n me.externalContactID = me.editSelectedAttachment.ExternalContactID;\r\n me.externalContact = me.editSelectedAttachment.ExternalContactName;\r\n this.selectedGroupId = editSelectedAttachment.SelectedAttachmentGroup;\r\n this.SelectedAttachmentGroup = editSelectedAttachment.SelectedAttachmentGroup;\r\n\r\n if (hdbIsEdit != null) {\r\n hdbIsEdit.value = true;\r\n }\r\n }\r\n me.getAttachmentsGroups(fromNewCorrespondeceScreen);\r\n me.GetMaxFileSizeCanBeUpload();\r\n me.getCurrentClientFileExtensions()\r\n const hdncorrAttachId: any = document.getElementById(\"hdncorrAttachId\");\r\n const txt_attachmentsummary: any = document.getElementById(\"txt_attachmentsummary\");\r\n const fileInput: any = document.getElementById(\"fileInput\");\r\n const imgFile: any = document.getElementById(\"imgFile\");\r\n const toggle: any = document.getElementById(\"toggle\");\r\n let HasToggleElementInHtml: boolean = !!toggle;\r\n if (HasToggleElementInHtml) {\r\n this.changePrivacy(toggle.checked);\r\n }\r\n\r\n me.isApplySecurity = false;\r\n me.changePrivacy(false);\r\n\r\n\r\n if (editSelectedAttachment != null && editSelectedAttachment != undefined) {\r\n this.isNew = false;\r\n this.selectedGroupId = editSelectedAttachment.SelectedAttachmentGroup;\r\n this.SelectedAttachmentGroup = editSelectedAttachment.SelectedAttachmentGroup;\r\n\r\n var getIDs: any = null;\r\n if (editSelectedAttachment.PermittedUsers != null) {\r\n getIDs = editSelectedAttachment.PermittedUsers;\r\n }\r\n if (editSelectedAttachment.ArchiveAttachmentUsers != null) {\r\n getIDs = editSelectedAttachment.ArchiveAttachmentUsers;\r\n }\r\n if (editSelectedAttachment.CommitteeAttachmentUser != null) {\r\n getIDs = editSelectedAttachment.CommitteeAttachmentUser;\r\n }\r\n\r\n me.removeCurrentUser();\r\n if (getIDs != null && getIDs.length > 0) {\r\n getIDs.forEach((item, index) => {\r\n if (BERRY.User.UserId !== item.UserId) {\r\n let param = {\r\n dbid: item.UserId,\r\n value: item.ShortName\r\n };\r\n me.permittedUser.push(param);\r\n }\r\n });\r\n }\r\n\r\n if (getIDs != null && getIDs.length > 0) {\r\n me.changePrivacy(true);\r\n me.isApplySecurity = true;\r\n me.isPrivacy = true;\r\n if (HasToggleElementInHtml) toggle.checked = true;\r\n } else {\r\n me.changePrivacy(false);\r\n me.isApplySecurity = false;\r\n if (HasToggleElementInHtml) toggle.checked = false;\r\n }\r\n\r\n if (hdncorrAttachId != null) {\r\n hdncorrAttachId.value = editSelectedAttachment.RelatedAttachmentID;\r\n }\r\n me.selectedFileName = editSelectedAttachment.AttachmentTitle;\r\n if (txt_attachmentsummary != null) {\r\n me.attachmentSummary = editSelectedAttachment.AttachmentSummary;\r\n txt_attachmentsummary.value = editSelectedAttachment.AttachmentSummary;\r\n }\r\n\r\n me.oldVersionId = editSelectedAttachment.Version;\r\n\r\n //me.removeDeleteIconFromPrivacyUsers();\r\n me.addCurrentUserIfCanUpdateAttachmentConfidentiality();\r\n }\r\n else {\r\n me.oldVersionId = null;\r\n if (!me.IsRecommendationModal) {\r\n setTimeout(() => {\r\n me.DefaultCorrespendenceGroupId = me.selectedGroupId;\r\n me.SelectedAttachmentGroup = me.DefaultCorrespendenceGroupId;\r\n }, 1000);\r\n }\r\n else {\r\n me.DefaultCorrespendenceGroupId = me.SelectedRecommendationGroupId;\r\n this.selectedGroupId = me.SelectedRecommendationGroupId;\r\n this.SelectedAttachmentGroup = me.SelectedRecommendationGroupId;\r\n this.hideAttachmentsGroup == true;\r\n }\r\n }\r\n\r\n if (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Tasks\r\n ||\r\n me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Announcement\r\n ||\r\n (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Scheduling && me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType == ScheduleItemTopicAttachmentTypeEnum.Presentation_Attachment)\r\n ||\r\n (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Scheduling && me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType == ScheduleItemTopicAttachmentTypeEnum.Archive_Attachment)\r\n ||\r\n (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Scheduling && me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType == ScheduleItemTopicAttachmentTypeEnum.Topic_Attachment)\r\n ||\r\n (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Scheduling && me.detailsAttachmentSVC.ScheduleItemTopicAttachmentType == ScheduleItemTopicAttachmentTypeEnum.Private_Attachment)) {\r\n me.hideAttachmentsGroup = true;\r\n }\r\n me.isUpload = false;\r\n\r\n me.permission.isUserInRole(UserRoles.CanChangeAttachmentTitle)\r\n .pipe(takeWhile(() => me.isSubscribed)).subscribe(r => {\r\n me.canChangeAttachmentTitle = r;\r\n\r\n if (callbackMethod && callbackMethod != null)\r\n callbackMethod();\r\n });\r\n }\r\n\r\n checkSelectedAttachmentGroup() {\r\n const me = this;\r\n let filter: AttachmentsGroupsFilter = {\r\n IsSupportReportGenerator: me.IsRecommendationModal,\r\n GroupId: me.IsRecommendationModal ? me.SelectedRecommendationGroupId : null\r\n };\r\n let relatedType = me.RelatedType;\r\n if (!me.isEditMode) {\r\n me.detailsAttachmentSVC.getUserDefaultAttachmentGroup(relatedType, filter)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data && data.AttachmentsGroups && me.attachmentsGroup.some(r => r.Id == data.AttachmentsGroups.Id)) {\r\n me.selectedGroupId = data.AttachmentsGroups.Id;\r\n me.SelectedAttachmentGroup = data.AttachmentsGroups.Id;\r\n me.defaultGroupId = data.AttachmentsGroups.Id;\r\n me.changeAttachmentGroup(me.selectedGroupId);\r\n }\r\n else {\r\n if (me.attachmentsGroup.length > 0) {\r\n if (me.attachmentsGroup.filter(x => x.Id == me.selectedGroupId).length == 0) {\r\n //var defaultGroup = me.attachmentsGroup.filter(x => x.IsDefault == true);\r\n //if (defaultGroup.length > 0) {\r\n // me.selectedGroupId = defaultGroup[0].Id;\r\n // me.SelectedAttachmentGroup = defaultGroup[0].Id;\r\n //}\r\n //else if (me.attachmentsGroup.length > 1) {\r\n me.selectedGroupId = me.attachmentsGroup[0].Id;\r\n me.defaultGroupId = me.attachmentsGroup[0].Id;\r\n me.SelectedAttachmentGroup = me.attachmentsGroup[0].Id;\r\n //}\r\n }\r\n me.changeAttachmentGroup(me.selectedGroupId);\r\n }\r\n }\r\n });\r\n }\r\n else {\r\n me.changeAttachmentGroup(me.selectedGroupId);\r\n }\r\n }\r\n\r\n acquireImage() {\r\n const me = this;\r\n\r\n var img: any = document.getElementById(\"imgFile\");\r\n var fileInput: any = document.getElementById(\"fileInput\");\r\n\r\n if (img != null)\r\n img.src = \"\";\r\n\r\n if (fileInput != null)\r\n fileInput.value = \"\";\r\n\r\n me.hasImage = false;\r\n\r\n if (DWObject) {\r\n try {\r\n var OnAcquireImageSuccess, OnAcquireImageFailure;\r\n OnAcquireImageSuccess = OnAcquireImageFailure = function (e) {\r\n if (DWObject.HowManyImagesInBuffer > 0) {\r\n me.selectedAttachmentExtension = \"pdf\";\r\n me.changeAttachmentGroup(+me.SelectedAttachmentGroup);\r\n }\r\n DWObject.CloseSource();\r\n\r\n if (e == -1001) {\r\n me.reloadScanners();\r\n me.toastr.error(me.getText(\"DisconnectedScanner\", \"Attacments\"));\r\n }\r\n if (e == -1032 && me.checkIfImagesInBuffer == 0) { // this code means: the scanner does not have papers\r\n me.reloadScanners();\r\n }\r\n };\r\n\r\n DWObject.SelectSourceByIndex(\r\n (document.getElementById(\"source\")).value\r\n );\r\n DWObject.OpenSource();\r\n //DWObject.AllowMultiSelect = true;\r\n\r\n DWObject.PixelType = (document).getElementById(\r\n \"btnColors\"\r\n ).selectedIndex;\r\n DWObject.IfShowUI = BERRY.webTwainIfShowUI;\r\n if (DWObject.IfShowUI == false)\r\n DWObject.PageSize = Dynamsoft.WebTwainEnv.EnumDWT_CapSupportedSizes.TWSS_A4;\r\n\r\n DWObject.Resolution = BERRY.webTwainResolution;\r\n DWObject.AcquireImage(OnAcquireImageSuccess, OnAcquireImageFailure);\r\n }\r\n catch (ex) {\r\n if (ex && ex.message) console.log(ex.message);\r\n console.log(\"\" + DWObject._errorCode + \" | \" + DWObject._errorString);\r\n this.toastr.error(BERRY.loc.common.errorMessage);\r\n }\r\n }\r\n\r\n return false;\r\n }\r\n\r\n getAttachmentNameBaseOnGroupId(attachmentGroupId: number, attachment = null) {\r\n const me = this;\r\n if (!me.isEditMode) {\r\n var _type = me.RelatedType;\r\n var _relatedIntId = null;\r\n if (me.RelatedType == \"CorrespondenceTask\") {\r\n _type = \"Task\";\r\n _relatedIntId = me.getRelatedId();\r\n }\r\n if (me.RelatedType == \"Committee\") {\r\n _type = \"Committee\";\r\n _relatedIntId = me.getRelatedId();\r\n }\r\n if (me.RelatedType == \"SchedulingTopic\")\r\n _relatedIntId = me.getRelatedId();\r\n if (me.RelatedType == \"Proclamation\")\r\n _type = \"IncidentProclmation\";\r\n if (me.RelatedType == \"CorrespondenceRecord\")\r\n _type = \"Correspondence\"\r\n if (me.RelatedType == \"Announcement\") {\r\n _type = \"Announcement\";\r\n _relatedIntId = me.getRelatedId();\r\n }\r\n if (me.RelatedType == \"Initiatives\" || me.RelatedType == \"Suggestions\") {\r\n _type = \"Initiatives\";\r\n _relatedIntId = me.getRelatedId();\r\n }\r\n var NoOfAttachmentSelected = 0;\r\n if (me.isMultipleAttachments)\r\n NoOfAttachmentSelected = me.selectedAttachmentsFromDrive.filter(a => a.SelectedAttachmentGroup == attachmentGroupId).length;\r\n\r\n NoOfAttachmentSelected = NoOfAttachmentSelected == 0 ? 0 : NoOfAttachmentSelected - 1;\r\n let relatedId = _relatedIntId ? Guid.EMPTY : me.getRelatedId();\r\n\r\n const attachmentNameDto = {\r\n AttachmentGroupId: +attachmentGroupId,\r\n RelatedId: relatedId,\r\n AttachmentExtension: \".\" + me.selectedAttachmentExtension,\r\n AttachmentTypeId: _type,\r\n RelatedIntId: _relatedIntId,\r\n NoOfAttachmentSelected: NoOfAttachmentSelected\r\n };\r\n me.isBusy = true;\r\n me.detailsAttachmentSVC.getAttachmentNameBaseOnGroupId(attachmentNameDto).pipe(\r\n takeWhile(() => me.isSubscribed))\r\n .subscribe(r => {\r\n if (!!r.AttachmentTitle) {\r\n me.selectedFileName = r.AttachmentTitle;\r\n if (attachment != null) {\r\n attachment.AttachmentTitle = r.AttachmentTitle;\r\n }\r\n }\r\n me.isBusy = false;\r\n });\r\n }\r\n else {\r\n me.selectedFileName = me.detailsAttachmentSVC.selectedAttachmentTitle;\r\n }\r\n }\r\n getAttachmentNumberBaseOnGroupId(attachmentGroupId: number, attachment = null) {\r\n const me = this;\r\n if (!me.isEditMode) {\r\n var _relatedIntId = null;\r\n var _type: string = me.RelatedType;\r\n var systemModule: number = SystemModules[_type];\r\n if (me.RelatedType == \"CorrespondenceTask\") {\r\n _relatedIntId = me.getRelatedId();\r\n }\r\n if (me.RelatedType == \"Committee\") {\r\n _relatedIntId = me.getRelatedId();\r\n }\r\n if (me.RelatedType == \"SchedulingTopic\")\r\n _relatedIntId = me.getRelatedId();\r\n if (me.RelatedType == \"Announcement\") {\r\n _relatedIntId = me.getRelatedId();\r\n }\r\n if (me.RelatedType == \"Initiatives\") {\r\n _relatedIntId = me.getRelatedId();\r\n }\r\n\r\n var NoOfAttachmentSelected = 0;\r\n if (me.isMultipleAttachments)\r\n NoOfAttachmentSelected = me.selectedAttachmentsFromDrive.filter(a => a.SelectedAttachmentGroup == attachmentGroupId).length;\r\n\r\n NoOfAttachmentSelected = NoOfAttachmentSelected == 0 ? 0 : NoOfAttachmentSelected - 1;\r\n let relatedId = _relatedIntId ? Guid.EMPTY : me.getRelatedId();\r\n const attachmentNumberDto = {\r\n AttachmentGroupId: +attachmentGroupId,\r\n RelatedId: relatedId,\r\n AttachmentExtension: \".\" + me.selectedAttachmentExtension,\r\n AttachmentTypeId: systemModule,\r\n RelatedIntId: _relatedIntId,\r\n NoOfAttachmentSelected: NoOfAttachmentSelected\r\n };\r\n me.isBusy = true;\r\n me.detailsAttachmentSVC.getAttachmentNumberBaseOnGroupId(attachmentNumberDto).pipe(\r\n takeWhile(() => me.isSubscribed))\r\n .subscribe(attachmentNumber => {\r\n if (!!attachmentNumber)\r\n me.attachmentNumber = attachmentNumber;\r\n if (attachment != null) {\r\n attachment.AttachmentNumber = attachmentNumber;\r\n }\r\n me.isBusy = false;\r\n });\r\n }\r\n else {\r\n me.attachmentNumber = \"\";\r\n }\r\n }\r\n changePrivacy(isChecked: boolean = false, index = null) {\r\n var multiSelect: any = index == null ? $(\"#ddlEntitiesAndUsersData\").data(\"kendoMultiSelect\") : $(\"#ddlEntitiesAndUsersData\" + index).data(\"kendoMultiSelect\");\r\n\r\n if (multiSelect != null) multiSelect.enable(isChecked);\r\n }\r\n\r\n public addCurrentUser(isChecked: boolean = false, index = null, att = null) {\r\n const me = this;\r\n if (isChecked && (!this.isPrivacy || this.isNew)) {\r\n me.pushCurrentUserToPermittedUser(index, att);\r\n if (index == null)\r\n $('.k-button').show();\r\n else {\r\n $('.div' + index + ' .k-button').show();\r\n }\r\n }\r\n else {\r\n if (index == null)\r\n $('.k-button').hide();\r\n else {\r\n $('.div' + index + ' .k-button').hide();\r\n }\r\n }\r\n }\r\n\r\n\r\n pushCurrentUserToPermittedUser(index = null, att = null) {\r\n const me = this;\r\n var currentUser = null;\r\n if (index != null) {\r\n currentUser = att.permittedUser.filter(function (item) {\r\n return (item.dbid = BERRY.User.UserId);\r\n });\r\n }\r\n else {\r\n if (me.permittedUser) {\r\n currentUser = me.permittedUser.filter(function (item) {\r\n return (item.dbid = BERRY.User.UserId);\r\n });\r\n }\r\n }\r\n if (currentUser != null) {\r\n if (currentUser.length == 0) {\r\n let param = {\r\n dbid: BERRY.User.UserId,\r\n value: (!BERRY.isEn ? BERRY.User.FullName : BERRY.User.FullNameEn)\r\n };\r\n if (index == null) {\r\n me.permittedUser.push(param);\r\n }\r\n else {\r\n att.permittedUser.push(param);\r\n }\r\n\r\n me.removeCurrentUser(index);\r\n me.addCurrentUserHtml(index);\r\n }\r\n }\r\n }\r\n\r\n public removeCurrentUser(index = null) {\r\n if (index == null)\r\n $(\"#liCurrentUser\").remove();\r\n else\r\n $(\"#liCurrentUser\" + index).remove();\r\n }\r\n\r\n public addCurrentUserHtml(index = null) {\r\n var listbox: any = index == null ? $(\".permitte-auto-complete\") :\r\n $(\".permitteAutocomplete\" + index + \" .permitte-auto-complete\");\r\n var html = index == null ?\r\n \"
  • \" +\r\n (!BERRY.isEn ? BERRY.User.FullName : BERRY.User.FullNameEn) +\r\n \"
  • \"\r\n : \"
  • \" +\r\n (!BERRY.isEn ? BERRY.User.FullName : BERRY.User.FullNameEn) +\r\n \"
  • \";\r\n listbox.prepend(html);\r\n }\r\n\r\n removeDeleteIconFromPrivacyUsers() {\r\n const me = this;\r\n if (!me.canChangePrivacy) {\r\n me.zone.run(() => {\r\n setTimeout(() => {\r\n $(\".permitteAutocomplete\")\r\n .find(\"span.k-select\")\r\n .remove();\r\n }, 10);\r\n });\r\n }\r\n }\r\n\r\n addCurrentUserIfCanUpdateAttachmentConfidentiality() {\r\n const me = this;\r\n setTimeout(() => {\r\n if (me.getCanUpdateAttachmentConfidentiality && this.isPrivacy) {\r\n me.removeCurrentUser();\r\n me.addCurrentUserHtml();\r\n }\r\n }, 10);\r\n }\r\n\r\n getAttachmentsCount() {\r\n const me = this;\r\n const attachmentParentID = this.detailsAttachmentSVC.AttachmentParentID;\r\n const isCountAvailable = me.detailsAttachmentSVC.ListofAttachmentTypesHaveCount.some(r => r === me.RelatedType);\r\n if (attachmentParentID && isCountAvailable) {\r\n me.detailsAttachmentSVC.getCount(attachmentParentID, me.RelatedType)\r\n .pipe(takeWhile(() => me.isSubscribed)).subscribe(\r\n data => {\r\n if (me.RelatedType == \"CorrespondenceRecord\") {\r\n let attchmentCount = parseInt(data);\r\n if (attchmentCount) me.detailsSVC._countAttachmentsRecord = data;\r\n else me.detailsSVC._countAttachmentsRecord = 0;\r\n }\r\n else {\r\n let attchmentCount = parseInt(data);\r\n if (attchmentCount) me.AttachmentscountAfterAdd.emit(data);\r\n else me.AttachmentscountAfterAdd.emit(0);\r\n }\r\n });\r\n }\r\n\r\n }\r\n\r\n public moveCurrentImage(step) {\r\n this.webTwainSVC.moveCurrentImage(step);\r\n }\r\n\r\n hideScanerInstallAlert() {\r\n localStorage.setItem(\"hideScanerInstallAlert\", \"true\");\r\n }\r\n\r\n comboBoxServerSearchDatasourceDefaultOptions: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"get\",\r\n resultsField: \"\",\r\n searchField: \"kw\"\r\n };\r\n\r\n autocompleteDefaultOption: IComboboxOptions = {\r\n allowFreeText: false,\r\n multiselect: true,\r\n autoBind: false\r\n };\r\n\r\n permitteAutocomplete: IComboboxOptions = Object.assign(\r\n {},\r\n this.autocompleteDefaultOption,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.comboBoxServerSearchDatasourceDefaultOptions,\r\n {\r\n url: this.ddlServiceUrl\r\n }\r\n ),\r\n dataTextField: \"Value\",\r\n dataValueField: \"Dbid\",\r\n allowFreeText: false,\r\n autoBind: true,\r\n displaytemplate: \"#: data.number # - #: data.value #\"\r\n }\r\n );\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n clearRelatedId() {\r\n let me = this;\r\n me.editSelectedAttachment = null;\r\n }\r\n\r\n b64File: any = null;\r\n previewAttachment(b64, fileName, ext) {\r\n if (this.detailsAttachmentSVC.ScheduleItemTopicAttachmentType == ScheduleItemTopicAttachmentTypeEnum.Presentation_Attachment)\r\n return;\r\n\r\n window[\"details-attachments-add\"] = { component: this, zone: this.zone };\r\n this.b64File = b64;\r\n //window[\"details-attachments-add-b64File\"] = b64;\r\n let showHideConfigs = this.GetShowHideFlexPaperToolBars();\r\n if (this.prviewTemplatesFlexViewer) {\r\n this.prviewTemplatesFlexViewer.AttachmentExtension = ext;\r\n }\r\n\r\n this.selectedAttachmentName = fileName;\r\n this.selectedAttachmentExtension = ext;\r\n\r\n this.prviewTemplatesFlexViewer.ShowFlexPaperAnnotations = showHideConfigs[0];\r\n this.prviewTemplatesFlexViewer.vSetFrameSource(\r\n 0,\r\n showHideConfigs[0],\r\n showHideConfigs[1],\r\n null,\r\n fileName,\r\n b64\r\n );\r\n }\r\n\r\n GetShowHideFlexPaperToolBars(): [ShowFlexPaperAnnotations, ShowFlexPaperTopBarActions] {\r\n let showAnnotations = new ShowFlexPaperAnnotations();\r\n showAnnotations.SignatureBtn = false;\r\n showAnnotations.StampBtn = false;\r\n showAnnotations.NoteBtn = false;\r\n showAnnotations.DeleteBtn = false;\r\n showAnnotations.ShowAnnotationsBtn = false;\r\n showAnnotations.DrawBtn = false;\r\n showAnnotations.StrikeoutBtn = false;\r\n showAnnotations.SaveAnnotationsBtn = false;\r\n\r\n let showFlexPaperTopBarActions = new ShowFlexPaperTopBarActions();\r\n showFlexPaperTopBarActions.FitPageBtn = true;\r\n showFlexPaperTopBarActions.FitWidthBtn = true;\r\n showFlexPaperTopBarActions.FullScreenBtn = true;\r\n showFlexPaperTopBarActions.HandDragCursorBtn = true;\r\n showFlexPaperTopBarActions.NavigatePagesBtn = true;\r\n showFlexPaperTopBarActions.SelectTextBtn = true;\r\n showFlexPaperTopBarActions.SinglePagePortraitBtn = true;\r\n showFlexPaperTopBarActions.TileThumbsBtn = true;\r\n showFlexPaperTopBarActions.TwoPageBtn = true;\r\n showFlexPaperTopBarActions.ZoomFactorBtn = true;\r\n showFlexPaperTopBarActions.ZoomSliderBtn = true;\r\n return [showAnnotations, showFlexPaperTopBarActions];\r\n }\r\n\r\n setValueForAttachmentNumber() {\r\n let me = this;\r\n if ((me.attachmentNumber == null || me.attachmentNumber == \"\") && !me.isSupportNumbering && me.detailsSVC.Data\r\n && (me.IsDraft || (me.detailsSVC.Data.IsDraft && me.detailsSVC.AttachmentsCount == 0))\r\n && (me.extinsion || me.checkIfImagesInBuffer > 0)\r\n ) {\r\n let corrCategoryID = me.detailsSVC.Data.Correspondence.BaseCorrespondenceCategoryId;\r\n me.isCategorySupportDefaultAttachmentNumbering(corrCategoryID);\r\n }\r\n }\r\n\r\n categoriesSettingsValuesList: any = [];\r\n isAttachmentNumberingSettingforCategoryExist: boolean = false;\r\n isCategorySupportDefaultAttachmentNumbering(corrCategoryID) {\r\n let me = this;\r\n me.extensionSettings.\r\n GetCorrespondencesCategoriesSettings()\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data && data.Value) {\r\n me.categoriesSettingsValuesList = JSON.parse(data.Value);\r\n if (me.categoriesSettingsValuesList) {\r\n me.isAttachmentNumberingSettingforCategoryExist = ((me.categoriesSettingsValuesList.filter(x => x.SettingKey == \"AttachmentNumbering\" && (x.Categories.filter(y => y == corrCategoryID).length > 0)).length > 0)\r\n || (me.categoriesSettingsValuesList.filter(x => x.SettingKey == \"AttachmentNumbering\" && x.AllCategoriesChecked).length > 0));\r\n if (me.isAttachmentNumberingSettingforCategoryExist) {\r\n if ((corrCategoryID == CorrespondenceCategoryIdEnum.Incoming || corrCategoryID == CorrespondenceCategoryIdEnum.PrivateIncoming) && me.detailsSVC.Data.Correspondence.ExternalCorrespondenceNumber)\r\n me.attachmentNumber = me.detailsSVC.Data.Correspondence.ExternalCorrespondenceNumber;\r\n else if ((corrCategoryID == CorrespondenceCategoryIdEnum.Outgoing || corrCategoryID == CorrespondenceCategoryIdEnum.PrivateOutgoing || corrCategoryID == CorrespondenceCategoryIdEnum.Internal || corrCategoryID == CorrespondenceCategoryIdEnum.Decision) && me.detailsSVC.Data.Correspondence.CorrespondenceNumber)\r\n me.attachmentNumber = me.detailsSVC.Data.Correspondence.CorrespondenceNumber;\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n //the validation will be depend on the upload file fom multimedia group or not\r\n isMultimediaFileExtension(type): boolean {\r\n if (type && type != \"\") {\r\n if (this._attachmentType == AttachmentTypesEnum.CorrespondenceAttachments ||\r\n this._attachmentType == AttachmentTypesEnum.Committess ||\r\n (this._attachmentType == AttachmentTypesEnum.ScheduleAttachments && BERRY.onOffFeatures.advanced_Meeting)) {\r\n var extension = '.' + type.trim();\r\n var MultimediaFileExtension = BERRY.appSettings.keys.MultimediaExtensions.split(',');\r\n var isMultimediaType = MultimediaFileExtension.some(x => x.trim() === extension.toLowerCase());\r\n\r\n return isMultimediaType;\r\n }\r\n }\r\n\r\n return false;\r\n }\r\n\r\n addPresidentToList(index: number) {\r\n let me = this;\r\n\r\n if (me.selectedXCPresident === null || !me.selectedXCPresident.XCPresidentID) {\r\n return;\r\n }\r\n\r\n var xcPresident = me.xcPresidentsMultiple[index];\r\n if (xcPresident == null) {\r\n return;\r\n }\r\n\r\n var exists = xcPresident.filter(x => {\r\n return (me.selectedXCPresident.XCPresidentID == x.XCPresidentID);\r\n });\r\n\r\n if (exists && exists.length > 0) {\r\n me.toastr.error(me.getText(\"PresidentAlreadyAdded\", \"ManagerialCommunication\"));\r\n } else {\r\n xcPresident.push(me.selectedXCPresident);\r\n me.selectedXCPresidentName = null;\r\n me.selectedXCPresidentId = null;\r\n me.selectedXCPresident = null;\r\n }\r\n\r\n me.selectedXCPresidentName = '';\r\n me.selectedXCPresidentId = '';\r\n me.selectedXCPresident = '';\r\n }\r\n\r\n removePresidentFromList(president: XCUserDto, rowIndex: number) {\r\n let me = this;\r\n\r\n var xcPresident = me.xcPresidentsMultiple[rowIndex];\r\n if (xcPresident == null) {\r\n return;\r\n }\r\n\r\n var index = xcPresident.indexOf(president, 0);\r\n if (index > -1) {\r\n xcPresident.splice(index, 1);\r\n }\r\n }\r\n\r\n get isMultiple() {\r\n if (!this.isEditMode) {\r\n return true\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n get data() {\r\n return this.fileUploaderData;\r\n }\r\n\r\n get urlForUpload() {\r\n return this.detailsAttachmentSVC.getUploadUrl\r\n }\r\n get canScanAttachment(): boolean {\r\n return this.Sources?.length == 0 || !this.SelectedScanner || this.hasImage || this.maxFileSizeCanBeUpload == null || (this.closeAfterUpload == false && this.selectedAttachmentsFromDrive.length > 0);\r\n }\r\n\r\n onFileChoosen(data) {\r\n this.vFileChange();\r\n if (typeof data.file !== 'undefined') {\r\n var me = this;\r\n me.outputFile = data.file;\r\n me.size = data.file.size;\r\n var module = me.detailsAttachmentSVC.appModuleId;\r\n if (module == AppModulesEnum.DeliveryReport) {\r\n module = AppModulesEnum.Correspondences;\r\n }\r\n\r\n me.detailsAttachmentSVC.isAllowedSize(me.size, module).pipe(takeWhile(() => me.isSubscribed)).subscribe(\r\n (res) => {\r\n if (res.IsValid) {\r\n me.addFileToUploader(data);\r\n } else {\r\n if (me.isMultipleAttachments) {\r\n }\r\n }\r\n }\r\n );\r\n }\r\n }\r\n onFileUploaded(e) {\r\n if (e == false) {\r\n } else {\r\n this.onSaveCompleted(e, \"InSave\")\r\n }\r\n }\r\n\r\n getXCPresidentsMultipleLength() {\r\n const me = this;\r\n let len = 0;\r\n for (var i = 0; i < me.xcPresidentsMultiple.length; i++) {\r\n if (me.xcPresidentsMultiple[i].length > 0)\r\n len++;\r\n }\r\n return len;\r\n\r\n }\r\n\r\n isAllowedExtensionsForDeliveryReports(extension: string) {\r\n let extensions = \"png,jpeg,jpg,jfif,bmp,tiff,pdf\".split(\",\");\r\n return extensions.some(x => x == extension);\r\n }\r\n\r\n get canShowSupportExtensions(): boolean {\r\n return this.isSupportedExtensions || this.isMeetingPresentationAttachment || this.isAccumulatedReport;\r\n }\r\n\r\n get canShowAttachmentsMoreCollapse(): boolean {\r\n return this.hasViewMoreDetailsForWopi && this.addNewGuidanceNote == false && this.isAccumulatedReport == false;\r\n }\r\n}\r\n\r\nexport class AttachmentListModel {\r\n\r\n}\r\n","import {\r\n Component,\r\n Output,\r\n Input,\r\n EventEmitter,\r\n OnDestroy,\r\n OnInit\r\n} from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../../../_common/models/IGlobalSettings\";\r\nimport { contains } from \"../../utils/array-contains\";\r\nimport { Subject } from \"rxjs\";\r\nimport { Annotation } from \"../../models/Annotation\";\r\nimport { ShowFlexPaperAnnotations } from \"../../models/ShowFlexPaperAnnotations\";\r\nimport { FlowPaperBridgeService } from \"../PdfViewer251/flowpaper-bridge-svc\";\r\nimport { ShowFlexPaperTopBarActions } from \"../../models/ShowFlexPaperTopBarActions\";\r\nimport { generalSettingsSvc } from \"../../../berry/correspondences/manage/generalSettings/general-settings-svc\";\r\nimport {\r\n DialogManager,\r\n ConfirmationBoxOptions,\r\n ConfirmationBoxResult,\r\n ConfirmationBoxType\r\n} from \"../../services/dialog-manager\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n\r\nconst FLEXPAPER_DEFAULT_HEIGHT = 740;\r\n\r\n@Component({\r\n selector: \"details-attachment-flexViewer-cmp\",\r\n templateUrl: \"./details-attachment-flexViewer-ng.html\"\r\n})\r\nexport class DetailsAttachmentsFlextViewer implements OnDestroy, OnInit {\r\n\r\n ngOnInit(): void {\r\n\r\n const doc: any = document;\r\n doc.confirm = (msg, cb) => {\r\n\r\n this.dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n msg,\r\n \"\",\r\n BERRY.loc.CommonDbRes.Yes,\r\n BERRY.loc.CommonDbRes.No\r\n );\r\n dialog.show(options, result => {\r\n if (result == ConfirmationBoxResult.Yes) {\r\n cb(true);\r\n }\r\n else if (result == ConfirmationBoxResult.No) {\r\n cb(false);\r\n }\r\n });\r\n }\r\n });\r\n\r\n }\r\n\r\n }\r\n\r\n ngOnDestroy() {\r\n var iframeAttachment: any = document.getElementById(this.iframeId);\r\n if (iframeAttachment != undefined) {\r\n iframeAttachment.src = `about:blank`;\r\n }\r\n }\r\n\r\n public static get FlexpaperDefaultHeight(): number {\r\n return FLEXPAPER_DEFAULT_HEIGHT;\r\n }\r\n\r\n public extension = null;\r\n public relativePath = null;\r\n public documentId = null;\r\n\r\n public Module = 3; //by default its correspondece module\r\n defaultViewerHeight = 740;\r\n isValidForView = null;\r\n attachmentId: any;\r\n attachmentExtension: string;\r\n linkedTo: string;\r\n iframeId: string;\r\n loadDocUponRequest: boolean = false;\r\n annotations: Annotation[] = [];\r\n annotationsAsJsonString: string;\r\n public hideSignature: boolean = false;\r\n public hideSaveDelete: boolean = false;\r\n public EnableQRCode: boolean = false;\r\n public AllowUserToEditInArchivedMood: boolean = false;\r\n public isArchivedStudy: boolean = false;\r\n localstorageShowAnnotationKey: string;\r\n localstorageShowTopBatActionsKey: string;\r\n ShowFlexPaperAnnotations: ShowFlexPaperAnnotations;\r\n ShowFlexPaperTopBarActions: ShowFlexPaperTopBarActions;\r\n hideNoteSignature: boolean = BERRY.appSettings.keys.hideNoteSignature;\r\n @Input() viewImageMergeField: boolean = false;\r\n @Input() showPrintField: boolean = true;\r\n @Input() HideSignatureMergeField: boolean = false;\r\n @Input() isDeliveryAttachmentsPreview: boolean = false;\r\n @Input() DownloadRemovedFile: boolean = false;\r\n dataAutomationId: string;\r\n @Input()\r\n get DataAutomationId() {\r\n if (this.dataAutomationId == '' || this.dataAutomationId == null || this.dataAutomationId == undefined) {\r\n return this.iframeId;\r\n }\r\n else\r\n return this.dataAutomationId;\r\n }\r\n set DataAutomationId(value) {\r\n if (value == '' || value == null || value == undefined) {\r\n this.dataAutomationId = this.iframeId;\r\n }\r\n else\r\n this.dataAutomationId = value;\r\n }\r\n\r\n public get DefaultViewerHeight() {\r\n return this.defaultViewerHeight + \"px !Important\";\r\n }\r\n\r\n get Annotations() {\r\n return this.annotations;\r\n }\r\n set Annotations(value) {\r\n var me = this;\r\n this.annotations = value;\r\n this.annotationsAsJsonString = JSON.stringify(value);\r\n $(\"#\" + this.iframeId + \"_annotations\").val(this.annotationsAsJsonString);\r\n }\r\n\r\n @Input()\r\n get IframeId() {\r\n return this.iframeId;\r\n }\r\n set IframeId(value) {\r\n this.iframeId = value;\r\n this.localstorageShowAnnotationKey =\r\n \"showFlexPaperAnnotations\" + this.iframeId;\r\n this.localstorageShowTopBatActionsKey =\r\n \"showFlexPaperTopBarActions\" + this.iframeId;\r\n }\r\n\r\n showSignatureBtn: boolean;\r\n @Input()\r\n get ShowSignatureBtn() {\r\n return this.showSignatureBtn;\r\n }\r\n set ShowSignatureBtn(value) {\r\n this.showSignatureBtn = value;\r\n if (this.ShowFlexPaperAnnotations != null && this.ShowFlexPaperAnnotations != undefined) {\r\n this.ShowFlexPaperAnnotations.SignatureBtn = value;\r\n this.ShowFlexPaperAnnotations.SignatureNoteBtn = value;\r\n }\r\n this.refreshLocalstorageData();\r\n }\r\n\r\n showReadyWordsBtn: boolean = true;\r\n showQrCodeWithOptionsBtn: boolean = true;\r\n\r\n showStampBtn: boolean;\r\n @Input()\r\n get ShowStampBtn() {\r\n return this.showStampBtn;\r\n }\r\n set ShowStampBtn(value) {\r\n this.showStampBtn = value;\r\n if (this.ShowFlexPaperAnnotations != null && this.ShowFlexPaperAnnotations != undefined && BERRY.onOffFeatures.DigitalStamps) {\r\n this.ShowFlexPaperAnnotations.StampBtn = value;\r\n }\r\n this.refreshLocalstorageData();\r\n }\r\n\r\n showMarkingSignatureBtn: boolean;\r\n @Input()\r\n get ShowMarkingSignatureBtn() {\r\n return this.showMarkingSignatureBtn;\r\n }\r\n set ShowMarkingSignatureBtn(value) {\r\n this.showMarkingSignatureBtn = value;\r\n if (this.ShowFlexPaperAnnotations != null && this.ShowFlexPaperAnnotations != undefined) {\r\n this.ShowFlexPaperAnnotations.MarkingSignature = value;\r\n }\r\n this.refreshLocalstorageData();\r\n }\r\n\r\n /*\r\n It means that PDF document will be loaded automatically if this value is 'false'.\r\n but if it's true, the dev need to call vSetFrameSource explicitly to load the PDF document\r\n */\r\n @Input()\r\n get LoadDocUponRequest() {\r\n return this.loadDocUponRequest;\r\n }\r\n set LoadDocUponRequest(value: boolean) {\r\n this.loadDocUponRequest = value;\r\n }\r\n\r\n @Input()\r\n get AttachmentID() {\r\n return this.attachmentId;\r\n }\r\n set AttachmentID(value) {\r\n if (value != null) {\r\n this.attachmentId = value;\r\n this.loadAndEmit(true, 100);\r\n }\r\n }\r\n\r\n @Input()\r\n get RelativePath() {\r\n if (this.relativePath === null || this.relativePath === undefined) {\r\n return \"\";\r\n } else {\r\n return this.relativePath;\r\n }\r\n }\r\n set RelativePath(value) {\r\n this.relativePath = value;\r\n this.loadAndEmit(true, 100);\r\n }\r\n\r\n @Input()\r\n get AttachmentExtension() {\r\n return this.attachmentExtension;\r\n }\r\n get IsValidForView() {\r\n return this.isValidForView;\r\n }\r\n\r\n @Input()\r\n get ViewerHeight() {\r\n return this.defaultViewerHeight;\r\n }\r\n set ViewerHeight(value) {\r\n this.defaultViewerHeight = value;\r\n }\r\n\r\n set AttachmentExtension(value) {\r\n this.attachmentExtension = value;\r\n }\r\n\r\n @Input()\r\n get LinkedTo() {\r\n return this.linkedTo;\r\n }\r\n set LinkedTo(value) {\r\n this.linkedTo = value;\r\n }\r\n\r\n //#endregion\r\n\r\n\r\n @Input() isReplayTemplate: boolean = false;\r\n\r\n @Input() primaryId: string = null;\r\n\r\n @Input() templateId: string = null;\r\n\r\n\r\n @Output() AttachmentIDChange = new EventEmitter();\r\n @Output() AttachmentExtensionChange = new EventEmitter();\r\n @Output() public onValidateAttachment = new EventEmitter();\r\n\r\n constructor(public flowPaperBridgeService: FlowPaperBridgeService,\r\n public dialogs: DialogManager,\r\n public generalSettingsSvc: generalSettingsSvc) {\r\n this.init();\r\n }\r\n\r\n public saveAttachment() {\r\n return BERRY.User.Permissions.SaveAtattachment;\r\n }\r\n public saveAtattachmentWithAnnotations() {\r\n return BERRY.User.Permissions.SaveAtattachmentWithAnnotations;\r\n }\r\n\r\n init() {\r\n if (this.ShowFlexPaperAnnotations == null)\r\n this.ShowFlexPaperAnnotations = new ShowFlexPaperAnnotations();\r\n\r\n if (this.ShowFlexPaperTopBarActions == null)\r\n this.ShowFlexPaperTopBarActions = new ShowFlexPaperTopBarActions();\r\n\r\n this.refreshLocalstorageData();\r\n }\r\n\r\n public loadAndEmit(emit: boolean, delayTime: number) {\r\n if (this.loadDocUponRequest === false) {\r\n this.vSetFrameSource(delayTime);\r\n if (emit === true) {\r\n this.AttachmentIDChange.emit(this.AttachmentID);\r\n }\r\n }\r\n }\r\n\r\n public showHideAllTopBarActions(isShow: boolean) {\r\n if (isShow) {\r\n if (this.isArchivedStudy) {\r\n if (this.AllowUserToEditInArchivedMood) {\r\n this.vShowAnnotations(isShow);\r\n } else {\r\n this.vShowAnnotations(false);\r\n }\r\n } else {\r\n this.vShowAnnotations(isShow);\r\n }\r\n } else {\r\n this.vShowAnnotations(false);\r\n }\r\n\r\n this.refreshLocalstorageData();\r\n }\r\n\r\n vShowAnnotations(isShow) {\r\n if (this.ShowFlexPaperAnnotations == null)\r\n this.ShowFlexPaperAnnotations = new ShowFlexPaperAnnotations();\r\n\r\n if (this.ShowFlexPaperTopBarActions == null)\r\n this.ShowFlexPaperTopBarActions = new ShowFlexPaperTopBarActions();\r\n\r\n this.ShowFlexPaperTopBarActions.PrinterBtn = BERRY.User.Permissions.SaveAtattachmentWithAnnotations && BERRY.User.Permissions.SaveAtattachment;\r\n this.ShowFlexPaperTopBarActions.SinglePagePortraitBtn = isShow;\r\n this.ShowFlexPaperTopBarActions.TwoPageBtn = isShow;\r\n this.ShowFlexPaperTopBarActions.TileThumbsBtn = isShow;\r\n this.ShowFlexPaperTopBarActions.FitWidthBtn = isShow;\r\n this.ShowFlexPaperTopBarActions.FitPageBtn = isShow;\r\n this.ShowFlexPaperTopBarActions.FlipRotateBtn = isShow;\r\n this.ShowFlexPaperTopBarActions.ZoomSliderBtn = isShow;\r\n this.ShowFlexPaperTopBarActions.ZoomFactorBtn = isShow;\r\n this.ShowFlexPaperTopBarActions.FullScreenBtn = isShow;\r\n this.ShowFlexPaperTopBarActions.NavigatePagesBtn = isShow;\r\n this.ShowFlexPaperTopBarActions.SelectTextBtn = isShow;\r\n this.ShowFlexPaperTopBarActions.HandDragCursorBtn = isShow;\r\n this.ShowFlexPaperTopBarActions.SearchBtn = isShow;\r\n\r\n this.ShowFlexPaperAnnotations.BlockAreaBtn = isShow && this.ShowFlexPaperAnnotations.BlockAreaBtn;\r\n this.ShowFlexPaperAnnotations.BlockDiv = isShow && this.ShowFlexPaperAnnotations.BlockDiv;\r\n\r\n this.ShowFlexPaperAnnotations.DeleteBtn = isShow;\r\n this.ShowFlexPaperAnnotations.deleteBtnDropDown = isShow;\r\n this.ShowFlexPaperAnnotations.readyWordsBtn = isShow && this.showReadyWordsBtn;\r\n this.ShowFlexPaperAnnotations.DrawBtn = isShow;\r\n this.ShowFlexPaperAnnotations.NoteBtn = isShow;\r\n this.ShowFlexPaperAnnotations.ShowAnnotationsBtn = isShow;\r\n this.ShowFlexPaperAnnotations.StrikeoutBtn = isShow;\r\n this.ShowFlexPaperAnnotations.locateSignature = isShow;\r\n this.ShowFlexPaperAnnotations.locateMarking = isShow;\r\n this.ShowFlexPaperAnnotations.locationQRCode = isShow;\r\n //omar alterawi\r\n this.ShowFlexPaperAnnotations.SignatureBtn = isShow && this.ShowSignatureBtn;\r\n this.ShowFlexPaperAnnotations.SignatureNoteBtn = isShow && this.ShowSignatureBtn;\r\n this.ShowFlexPaperAnnotations.MarkingSignature = !isShow;\r\n this.ShowFlexPaperAnnotations.SelectBtn = isShow;\r\n //this.ShowFlexPaperAnnotations.locateQrCode = isShow;\r\n this.ShowFlexPaperAnnotations.btnDropDownSignature = isShow && this.ShowSignatureBtn;\r\n this.ShowFlexPaperAnnotations.btnDropDownQRCode = isShow && this.showQrCodeWithOptionsBtn;\r\n this.ShowFlexPaperAnnotations.xcLocateSignature = isShow;\r\n this.ShowFlexPaperAnnotations.showMarkingSignatureBtn = this.ShowMarkingSignatureBtn && !this.ShowSignatureBtn;\r\n\r\n\r\n if (this.hideSaveDelete) {\r\n this.ShowFlexPaperAnnotations.SaveAnnotationsBtn = false;\r\n this.ShowFlexPaperAnnotations.DeleteBtn = false;\r\n this.ShowFlexPaperAnnotations.deleteBtnDropDown = false;\r\n } else this.ShowFlexPaperAnnotations.SaveAnnotationsBtn = true;\r\n\r\n if (this.hideSignature) {\r\n this.ShowFlexPaperAnnotations.SignatureBtn = false;\r\n this.ShowFlexPaperAnnotations.deviceSignature = false;\r\n this.ShowFlexPaperAnnotations.SignatureNoteBtn = false;\r\n this.ShowFlexPaperAnnotations.signatureItem = false;\r\n } else {\r\n this.ShowFlexPaperAnnotations.SignatureBtn = this.ShowSignatureBtn;\r\n this.ShowFlexPaperAnnotations.SignatureNoteBtn = !this.hideNoteSignature && this.ShowSignatureBtn;\r\n this.ShowFlexPaperAnnotations.deviceSignature = this.ShowSignatureBtn;\r\n this.ShowFlexPaperAnnotations.signatureItem = this.ShowSignatureBtn;\r\n }\r\n\r\n if (this.EnableQRCode)\r\n this.ShowFlexPaperAnnotations.locateQrCode = true;\r\n else\r\n this.ShowFlexPaperAnnotations.locateQrCode = false;\r\n\r\n this.ShowFlexPaperAnnotations.StampBtn = typeof this.ShowStampBtn !== 'undefined' && this.ShowStampBtn;\r\n this.ShowFlexPaperAnnotations.MarkingSignature = this.ShowMarkingSignatureBtn;\r\n }\r\n\r\n public hideActionBar() {\r\n this.hideSignature = true;\r\n this.hideSaveDelete = true;\r\n this.showHideAllTopBarActions(false);\r\n }\r\n\r\n public supportedPdfViewerExtentions = [\r\n \"aaf\",\r\n \"doc\",\r\n \"docx\",\r\n \"eml\",\r\n \"msg\",\r\n \"pptx\",\r\n \"xlsx\",\r\n \"xls\",\r\n \"rtf\",\r\n \"ccitt\",\r\n \"gif\",\r\n \"jpeg\",\r\n \"jpg\",\r\n \"png\",\r\n \"tiff\",\r\n \"bmp\",\r\n \"emf\",\r\n \"exif\",\r\n \"icon\",\r\n \"wmf\",\r\n \"memorybmp\",\r\n \"tif\",\r\n \"txt\",\r\n \"pdf\",\r\n \"jfif\"\r\n ];\r\n\r\n public bIsValidForViewSubject = new Subject();\r\n\r\n public vSetAnnotations(value) {\r\n var me = this;\r\n this.annotations = value;\r\n this.annotationsAsJsonString = JSON.stringify(value);\r\n $(\"#\" + this.iframeId + \"_annotations\").val(this.annotationsAsJsonString);\r\n }\r\n\r\n //get new and old Annotations\r\n public GetAndAllAnnotations(value) {\r\n var _annotations = $(\"#\" + this.iframeId + \"_annotations\").val();\r\n return _annotations;\r\n }\r\n\r\n public bIsValidForView(ext: string = null) {\r\n if (ext) {\r\n this.attachmentExtension = ext;\r\n }\r\n if (this.attachmentExtension != null && this.attachmentExtension != \"\") {\r\n var extension = this.attachmentExtension.toLowerCase().replace(\".\", \"\");\r\n }\r\n\r\n let isValid = contains.call(this.supportedPdfViewerExtentions, extension);\r\n this.bIsValidForViewSubject.next(isValid);\r\n this.onValidateAttachment.emit(isValid);\r\n return isValid;\r\n }\r\n\r\n\r\n public vSetFrameSource(\r\n delayTime: number,\r\n showFlexPaperAnnotations: ShowFlexPaperAnnotations = null,\r\n showFlexPaperTopBarActions: ShowFlexPaperTopBarActions = null,\r\n attachmentId = null,\r\n fileName = null,\r\n iframeSrc = null,\r\n ignorePrinterBtnPermissions = false,\r\n isAccumulatedReport = false,\r\n correspondenceId = null\r\n ) {\r\n let me = this;\r\n if (!!attachmentId) {\r\n me.attachmentId = attachmentId;\r\n }\r\n\r\n if (!!showFlexPaperAnnotations)\r\n me.ShowFlexPaperAnnotations = showFlexPaperAnnotations;\r\n\r\n if (!!showFlexPaperTopBarActions)\r\n me.ShowFlexPaperTopBarActions = showFlexPaperTopBarActions;\r\n\r\n if (!ignorePrinterBtnPermissions) {\r\n me.ShowFlexPaperTopBarActions.PrinterBtn = (me.saveAttachment() || me.saveAtattachmentWithAnnotations()) && me.showPrintField;\r\n }\r\n\r\n if (isAccumulatedReport) {\r\n me.ShowFlexPaperTopBarActions.PrinterBtn = BERRY.User.Permissions.PrintAndDownloadSubAndAcumulatedReport || BERRY.User.Permissions.PrintAndDownloadSubAndAcumulatedReportWithoutTheWatermark;\r\n\r\n }\r\n\r\n\r\n me.refreshLocalstorageData();\r\n\r\n let frame = $(`#${me.iframeId}`)[0];\r\n if (frame) {\r\n let iframeUrl = '';\r\n\r\n setTimeout(() => {\r\n if (iframeSrc && !isAccumulatedReport) {\r\n iframeUrl = `${BERRY.absoluteHostName\r\n }src/app/_common/components/pdfviewer251/index_dataSrc.html?extension=${me.attachmentExtension}&fileName=${fileName}`;\r\n }\r\n else {\r\n if (me.isReplayTemplate && !isAccumulatedReport) {\r\n iframeUrl = `${BERRY.absoluteHostName\r\n }src/app/_common/components/pdfviewer251/index_replay_template.html?primaryId=${me.primaryId}&templateId=${me.templateId}&isValid=${true}&Module=${me.Module}&DocumentId=${me.documentId || \"\"}&HideSignatureAuthor=${BERRY.appSettings.keys.hideSignatureAuthor}`;\r\n }\r\n else {\r\n iframeUrl = `${BERRY.absoluteHostName\r\n }src/app/_common/components/pdfviewer251/index.html?ID=${me.AttachmentID}&isValid=${me.bIsValidForView()}&Module=${me.Module}&RelativePath=${me.RelativePath}&Extension=${me.attachmentExtension}&DocumentId=${me.documentId || \"\"}&HideSignatureAuthor=${BERRY.appSettings.keys.hideSignatureAuthor} &isAccumulatedReport=${isAccumulatedReport} &accumulatedReportUrl=${iframeSrc}`;\r\n if (this.viewImageMergeField)\r\n iframeUrl += `&viewImageMergeField=${me.viewImageMergeField}`;\r\n if (this.HideSignatureMergeField)\r\n iframeUrl += `&HideSignatureMerge=${me.HideSignatureMergeField}`;\r\n if (this.DownloadRemovedFile)\r\n iframeUrl += `&DownloadRemovedFile=${me.DownloadRemovedFile}`;\r\n if (this.LinkedTo)\r\n iframeUrl += `&linkedTo=${me.LinkedTo}`;\r\n if (this.isDeliveryAttachmentsPreview)\r\n iframeUrl += `&isDeliveryAttachmentsPreview=${me.isDeliveryAttachmentsPreview}`;\r\n if (correspondenceId != null)\r\n iframeUrl += `&correspondenceId=${correspondenceId}`;\r\n }\r\n }\r\n\r\n frame.contentWindow.location.replace(iframeUrl);\r\n\r\n }, delayTime);\r\n }\r\n }\r\n refreshSource() {\r\n var iframeAttachment: any = document.getElementById(this.iframeId);\r\n iframeAttachment.src = \"\";\r\n }\r\n public refreshLocalstorageData() {\r\n localStorage.setItem(\r\n this.localstorageShowAnnotationKey,\r\n JSON.stringify(this.ShowFlexPaperAnnotations)\r\n );\r\n localStorage.setItem(\r\n this.localstorageShowTopBatActionsKey,\r\n JSON.stringify(this.ShowFlexPaperTopBarActions)\r\n );\r\n }\r\n\r\n onIframeLoad(value) {\r\n\r\n }\r\n\r\n @Output()\r\n public onShowDevicePopup: EventEmitter = new EventEmitter();\r\n\r\n //@Output()\r\n //public onShowMarkingPopup: EventEmitter = new EventEmitter();\r\n\r\n @Input()\r\n public setDeviceSignatureCallback(base64Signature: any) {\r\n alert(\"data returned\");\r\n }\r\n}\r\n","\r\n\r\n\r\n","\r\nimport { map, catchError } from 'rxjs/operators';\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable, Subject } from \"rxjs\";\r\nimport { IGlobalSettings } from \"../../../_common/models/IGlobalSettings\";\r\nimport { HttpInterceptor } from \"../../services/http-interceptor\";\r\nimport { SignatureTypes } from \"../../../berry/correspondences/_models/enums/SignatureTypes\";\r\nimport { CorrespondenceDetailsDto } from \"src/app/berry/correspondences/_models/CorrespondenceDetails-dto\";\r\nimport { BaseService } from \"../../services/baseService\";\r\nimport { Annotation } from \"../../models/Annotation\";\r\nimport { AttachmentsGroupsFilter, SystemModulesEnum } from \"./dto/attachmentGroup-dto\";\r\nimport { AppModulesEnum } from \"../../models/AppModulesEnum\";\r\nimport { SystemModules } from \"../../models/GetUserSignatureDto\";\r\nimport { AttachmentTypesEnum } from \"src/app/berry/correspondences/_models/enums/AttachmentTypesEnum\";\r\nimport { AnnouncementLogicHandlerTypeEnum } from \"../../../announcements/components/services/announcements-svc\";\r\nimport { AnnouncementSourceType, AttachmentDto } from \"../../models/AttachmentDto\";\r\nimport { PaperSizeDto } from \"./dto/paperSizeDto\";\r\nimport { HttpHeaders, HttpClient } from \"@angular/common/http\";\r\nimport { ScheduleItemPageType } from \"../../../Scheduling/_services/scheduling-svc\";\r\nimport { Guid } from 'guid-typescript';\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class DetailsAttachmentSVC extends BaseService {\r\n baseURL = BERRY.hostName + \"api/CorrespondenceApi\";\r\n baseUrl = BERRY.hostName + \"api/AttachmentsGroups\";\r\n //#region public members\r\n attachmentType: AttachmentTypesEnum;\r\n public AttachmentRecommendation: any[] = [];\r\n public isExactAnnotations = false;\r\n public AttachmentParentID;\r\n public Data: CorrespondenceDetailsDto = null;\r\n public Attachments = [];\r\n public isReplyLetter = false;\r\n public OtherAttachments = [];\r\n public LinkedCorrespondencesAttachments = [];\r\n public SubsequentAttachment = [];\r\n public SelectedAttachment = [];\r\n public selectedAttachmentId = null;\r\n public attachmentModuleType;\r\n public selectedAttachmentNumber = \"\";\r\n public selectedAttachmentUploadDate: Date;\r\n public IsFinalCopyAttachment: boolean = false;\r\n public selectedOriginalAttachmentId = null;\r\n public canSignSelectedAttachment: boolean = false;\r\n public canSignMarkSelectedAttachment: boolean = false;\r\n public showReplyTemplateBtn: boolean = true;\r\n public selectedAttachmentTitle = null;\r\n public selectedAttachmentMimeType = null;\r\n public selectedAttachmentExtension = null;\r\n public selectedAttachmentRelativePath = null;\r\n public selectedAttachmentGroupId = null;\r\n public Users: any = null;\r\n public SelectedAttachmentTitle;\r\n public selectedDmsId = null;\r\n public ExternalRecipentId = null;\r\n public IsCorrespondenceRecored = false;\r\n public ExternalId = null;\r\n public Number = null;\r\n public FolderNumber = null;\r\n public attachmentBody;\r\n public CorrespondencletterId = null;\r\n public getURL;\r\n public addEditUrl = null;\r\n public signUrl;\r\n public getEditServiceURL;\r\n public relatedType;\r\n public appModuleId: AppModulesEnum;\r\n public IsDraft: boolean = false;\r\n public Module;\r\n public WopiFileId;\r\n public MSWordAddinDownloadLink;\r\n public ScheduleItemTopicAttachmentType: number = 0;\r\n public attachmentsList: any[] = [];\r\n public isReplyAttachment: boolean = false;\r\n //#endregion \"public members\"\r\n\r\n public RelatedTypeEnum = {\r\n Correspondence: \"Correspondence\",\r\n Proclamation: \"Proclamation\",\r\n CorrespondenceRecord: \"CorrespondenceRecord\",\r\n CorrespondenceLetters: \"CorrespondenceLetters\",\r\n Archive: \"Archive\",\r\n Schedule: \"Scheduling\",\r\n ArchivedCorrespondence: \"ArchivedCorrespondence\",\r\n CorrespondenceTask: \"CorrespondenceTask\",\r\n Committee: \"Committee\",\r\n Incident: \"Incident\",\r\n SchedulingTopic: \"SchedulingTopic\",\r\n Announcement: \"Announcement\",\r\n CasefileCommunication: \"CasefileCommunication\",\r\n Suggestions: \"Suggestions\",\r\n Initiatives: \"Initiatives\"\r\n };\r\n\r\n get getUploadUrl(): string {\r\n const me = this;\r\n\r\n let url = BERRY.appSettings.keys.dmsServerUrl + \"upload\";\r\n\r\n if (me.addEditUrl && me.addEditUrl != \"\")\r\n url = `${BERRY.hostName}${me.addEditUrl}`;\r\n\r\n return url;\r\n }\r\n public uploadMultipleAttachments(attchDto: AttachmentDto): Observable {\r\n let url = BERRY.appSettings.keys.dmsServerUrl + \"upload\";\r\n\r\n let httpHeaders = new HttpHeaders({\r\n \"Authorization\": BERRY.forgeryToken\r\n });\r\n\r\n let options = {\r\n headers: httpHeaders,\r\n withCredentials: true\r\n };\r\n\r\n let formData = this.getFormData(attchDto);\r\n\r\n return this.httpclient.post(url, formData, options).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getFormData(object) {\r\n const formData = new FormData();\r\n Object.keys(object).forEach(key => formData.append(key, object[key]));\r\n return formData;\r\n }\r\n public officeSupportedTypes: Array = [\r\n \"docx\"\r\n ];\r\n\r\n public onLinkedCorrespondenceChanged: Subject = new Subject();\r\n private onDeliveryAttachmentsUploaded: Subject = new Subject();\r\n public onDeliveryAttachmentsUploaded$ = this.onDeliveryAttachmentsUploaded.asObservable();\r\n\r\n deliveryAttachmentsUploaded() {\r\n this.onDeliveryAttachmentsUploaded.next();\r\n }\r\n\r\n constructor(public http: HttpInterceptor,\r\n public httpclient: HttpClient) {\r\n super(http);\r\n\r\n }\r\n\r\n public getAttachmentNameBaseOnGroupId(attachmentNameDto) {\r\n attachmentNameDto.AttachmentTypeId = SystemModules[attachmentNameDto.AttachmentTypeId];\r\n let url = `${BERRY.hostName\r\n }api/AttachmentApi/CorrespondenceAttachmentAutoNaming`;\r\n return super.post(url, attachmentNameDto);\r\n }\r\n\r\n public PrintDoc(url): Observable {\r\n return this.http.get(url, { responseType: 'blob' });\r\n }\r\n\r\n public getAttachmentNumberBaseOnGroupId(attachmentNameDto) {\r\n let url = `${BERRY.hostName\r\n }api/AttachmentApi/CorrespondenceAttachmentAutoNumbering`;\r\n return super.post(url, attachmentNameDto);\r\n }\r\n\r\n public LinkScheduleCorrespondecesAttachments(ScheduleItemId, AttachmentIds) {\r\n let url = `${this.baseURL\r\n }/LinkScheduleCorrespondecesAttachments?ScheduleItemId=${ScheduleItemId}&AttachmentIds=${AttachmentIds}`;\r\n let params = {\r\n ScheduleItemId: ScheduleItemId,\r\n AttachmentIds: AttachmentIds\r\n };\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n public downloadAttachmentBasedOnURL(url) {\r\n return this.http.get(url, { responseType: 'blob' });\r\n }\r\n\r\n public saveBlobResponseAsFile(response, attachemntTitle) {\r\n const link = document.createElement('a');\r\n link.href = URL.createObjectURL(response);\r\n attachemntTitle = attachemntTitle.replaceAll(\".\", \"\");\r\n link.download = attachemntTitle;\r\n link.click();\r\n link.remove();\r\n }\r\n\r\n isInRecommendationTabs(correspondenceAttachmentID, correspondenceId) {\r\n return this.http.get(\r\n this.baseURL +\r\n \"/isInRecommendationTabs?correspondenceAttachmentID=\" + correspondenceAttachmentID + \"&correspondenceId=\" + correspondenceId\r\n );\r\n }\r\n\r\n getAttachmentsHistory(id: string, url: string): any {\r\n return super.get(BERRY.hostName + url + \"?id=\" + id);\r\n }\r\n\r\n deleteSubAccumulatedReport(id): any {\r\n return super.get(BERRY.hostName + \"Correspondences/Attachments/DeleteSubAccumulatedReport?id=\" + id);\r\n }\r\n\r\n sendUploadAccumulatedReportNotification(id): Observable {\r\n return this.http.get(\r\n BERRY.hostName +\r\n \"Correspondences/Attachments/SendUploadAccumulatedReportNotification?id=\"+ id\r\n );\r\n }\r\n\r\n getAttachmentSummary(id: string, RelatedType): any {\r\n return super.get(\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/AttachmentSummary?id=\" +\r\n id +\r\n \"&relatedtype=\" +\r\n RelatedType\r\n );\r\n }\r\n\r\n CheckIsShowOrignalName(corrId) {\r\n var url =\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/CheckIsOrignalName/\" +\r\n \"?correspondenceID=\" +\r\n corrId;\r\n return this.http.get(url);\r\n }\r\n\r\n getAttachments(RecommendationGroupId = null, IsMultimedia = false, attType: AttachmentTypesEnum = AttachmentTypesEnum.CorrespondenceAttachments): any {\r\n let url = \"\";\r\n if (IsMultimedia) {\r\n url =\r\n BERRY.hostName +\r\n this.getURL +\r\n \"?id=\" +\r\n this.AttachmentParentID +\r\n \"&gropupId=\" + this.selectedAttachmentGroupId;\r\n if (attType != AttachmentTypesEnum.Committess)\r\n url = url + \"&attachmentType=\" + attType;\r\n }\r\n else if (RecommendationGroupId == null) {\r\n url =\r\n BERRY.hostName +\r\n this.getURL +\r\n \"?id=\" +\r\n this.AttachmentParentID +\r\n \"&gropupId=\" +\r\n this.selectedAttachmentGroupId;\r\n } else {\r\n url =\r\n BERRY.hostName +\r\n this.getURL +\r\n \"?id=\" +\r\n this.AttachmentParentID +\r\n \"&gropupId=\" +\r\n RecommendationGroupId;\r\n }\r\n return super.get(url);\r\n }\r\n\r\n getAttachmentsForendByEmail(RecommendationGroupId = null): any {\r\n let url = \"\";\r\n if (RecommendationGroupId == null) {\r\n url =\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/GetCorrespondenceAttachmentsForSendByEmail\" +\r\n\r\n \"?id=\" +\r\n this.AttachmentParentID +\r\n \"&gropupId=\" +\r\n this.selectedAttachmentGroupId;\r\n } else {\r\n url =\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/GetCorrespondenceAttachmentsForSendByEmail\" +\r\n \"?id=\" +\r\n this.AttachmentParentID +\r\n \"&gropupId=\" +\r\n RecommendationGroupId;\r\n }\r\n return super.get(url);\r\n }\r\n\r\n getGlobalAttachments(RecommendationGroupId = null, WithoutSettlementAttachments = false, IsMultimedia = false,\r\n attType: AttachmentTypesEnum = AttachmentTypesEnum.CorrespondenceAttachments): any {\r\n\r\n let url = \"\";\r\n if (IsMultimedia) {\r\n url =\r\n BERRY.hostName +\r\n this.getURL +\r\n \"?id=\" +\r\n this.AttachmentParentID +\r\n \"&gropupId=\" +\r\n RecommendationGroupId;\r\n if (attType != AttachmentTypesEnum.Committess)\r\n url = url + \"&attachmentType=\" + attType;\r\n }\r\n else if (RecommendationGroupId == null) {\r\n url =\r\n BERRY.hostName +\r\n this.getURL +\r\n \"?id=\" +\r\n this.AttachmentParentID +\r\n \"&gropupId=\" +\r\n this.selectedAttachmentGroupId +\r\n \"&withoutSettlementAttachments=\" +\r\n WithoutSettlementAttachments;\r\n } else {\r\n url =\r\n BERRY.hostName +\r\n this.getURL +\r\n \"?id=\" +\r\n this.AttachmentParentID +\r\n \"&gropupId=\" +\r\n RecommendationGroupId +\r\n \"&withoutSettlementAttachments=\" +\r\n WithoutSettlementAttachments;\r\n }\r\n return super.get(url);\r\n }\r\n\r\n get ListofAttachmentTypesHaveCount(): string[] {\r\n return [\"Scheduling\", \"Correspondence\",\r\n \"CorrespondenceRecord\",\r\n \"ArchivedCorrespondence\",\r\n \"Proclamation\",\r\n \"Archive\",\r\n \"IncigetLastIncidentAttachmentAndCountdent\",\r\n \"Incident\",\r\n \"Announcement\",\r\n \"Committee\",\r\n \"Initiatives\"\r\n ]\r\n }\r\n getCount(attachmentParentID, relatedType) {\r\n let url: string = null;\r\n switch (relatedType) {\r\n case \"Scheduling\":\r\n url = BERRY.hostName + \"Correspondences/Attachments/ScheduleAttachmentsCount?scheduleItemId=\" + attachmentParentID;\r\n break;\r\n case \"Correspondence\":\r\n case \"ArchivedCorrespondence\":\r\n case \"Proclamation\":\r\n url = BERRY.hostName + \"Correspondences/Attachments/CorrespondenceAttachmentsCount?id=\" + attachmentParentID;\r\n break;\r\n case \"CorrespondenceRecord\":\r\n url = BERRY.hostName + \"Correspondences/Attachments/CorrespondenceAttachmentsRecordCount?id=\" + attachmentParentID;\r\n break;\r\n case \"CorrespondenceBundleLink\":\r\n url = BERRY.hostName + \"api/BundleAttachmentApi/CorrespondenceBundleLinkAttachmentsCount?id=\" + attachmentParentID;\r\n break;\r\n case \"Archive\":\r\n url = BERRY.hostName + \"api/ArchiveApi/ArchiveAttachmentsCount?ArchiveItemId=\" + attachmentParentID;\r\n break;\r\n case \"IncigetLastIncidentAttachmentAndCountdent\":\r\n case \"Incident\":\r\n url = BERRY.hostName + \"Correspondences/Attachments/IncidentAttachmentsCount?id=\" + attachmentParentID;\r\n break;\r\n case \"Committee\":\r\n url = BERRY.hostName + \"Correspondences/Attachments/CommitteeAttachmentsCount?entityId=\" + attachmentParentID;\r\n break;\r\n case \"Announcement\":\r\n url = BERRY.hostName + \"api/AnnouncementAttachments/AnnouncementAttachmentsCount?announcementId=\" + attachmentParentID;\r\n break;\r\n case \"Initiatives\":\r\n url = BERRY.hostName + \"api/InitiativeAttachment/InitiativeAttachmentsCount?initiativeId=\" + attachmentParentID;\r\n break;\r\n default:\r\n console.error(`//TODO => me.RelatedType == '${relatedType}'`);\r\n throw new Error(`//TODO => me.RelatedType == '${relatedType}'`);\r\n }\r\n\r\n return super.get(url);\r\n }\r\n\r\n getFollowUpSignatureAttachmentCount(correspondenceId) {\r\n return super.get(\r\n BERRY.hostName +\r\n \"Correspondences/Attachments/GetFollowUpSignatureAttachmentCount\" +\r\n \"?correspondenceId=\" +\r\n correspondenceId\r\n );\r\n }\r\n\r\n createNewWordFile(params) {\r\n return super.post(\r\n BERRY.hostName + `api/CorrespondenceApi/CreateNewWordFile`,\r\n params\r\n );\r\n }\r\n\r\n CreateNewRecommendation(dto) {\r\n return super.post(\r\n BERRY.hostName + `api/CorrespondenceApi/CreateNewRecommendation`,\r\n dto\r\n );\r\n }\r\n\r\n getAttachmentsGroups(RelatedType, filter: AttachmentsGroupsFilter): Observable {\r\n this.fillFilterWithModuleId(RelatedType, filter);\r\n return super.post(\r\n BERRY.hostName + `api/AttachmentsGroups/GetAttachmentsGroups`,\r\n filter\r\n );\r\n }\r\n\r\n getUserDefaultAttachmentGroup(RelatedType, filter): Observable {\r\n this.fillFilterWithModuleId(RelatedType, filter);\r\n return super.post(\r\n BERRY.hostName + `api/AttachmentsGroups/GetUserDefaultAttachmentGroup`, filter);\r\n }\r\n\r\n private fillFilterWithModuleId(RelatedType: any, filter: any) {\r\n let moduleType: SystemModulesEnum[] = [-1];\r\n if (RelatedType == this.RelatedTypeEnum.Correspondence || RelatedType == this.RelatedTypeEnum.CasefileCommunication) {\r\n moduleType = [...moduleType, SystemModulesEnum.Correspondence];\r\n }\r\n else if (RelatedType == this.RelatedTypeEnum.Proclamation\r\n || RelatedType == this.RelatedTypeEnum.Incident) {\r\n moduleType = [...moduleType, SystemModulesEnum.Proclamation];\r\n }\r\n else if (RelatedType == this.RelatedTypeEnum.Schedule) {\r\n moduleType = [...moduleType, SystemModulesEnum.Scheduling];\r\n }\r\n else if (RelatedType == this.RelatedTypeEnum.SchedulingTopic) {\r\n moduleType = [...moduleType, SystemModulesEnum.Scheduling];\r\n }\r\n else if (RelatedType == this.RelatedTypeEnum.Archive) {\r\n moduleType = [...moduleType, SystemModulesEnum.Archive];\r\n }\r\n else if (RelatedType == this.RelatedTypeEnum.CorrespondenceLetters) {\r\n moduleType = [...moduleType, SystemModulesEnum.CorrespondenceLetters];\r\n }\r\n else if (RelatedType == this.RelatedTypeEnum.CorrespondenceRecord) {\r\n moduleType = [...moduleType, SystemModulesEnum.CorrespondenceRecord];\r\n }\r\n else if (RelatedType == this.RelatedTypeEnum.ArchivedCorrespondence) {\r\n moduleType = [...moduleType, SystemModulesEnum.Correspondence];\r\n }\r\n else if (RelatedType == this.RelatedTypeEnum.CorrespondenceTask) {\r\n moduleType = [...moduleType, SystemModulesEnum.AssignTasks];\r\n }\r\n else if (RelatedType == this.RelatedTypeEnum.Committee) {\r\n moduleType = [...moduleType, SystemModulesEnum.Committee];\r\n } else if (RelatedType == this.RelatedTypeEnum.Announcement) {\r\n moduleType = [...moduleType, SystemModulesEnum.Announcement];\r\n } else if (RelatedType == this.RelatedTypeEnum.Suggestions) {\r\n moduleType = [...moduleType, SystemModulesEnum.Initiatives];\r\n filter.AttachmentType = 25;\r\n }\r\n else if (RelatedType == this.RelatedTypeEnum.Initiatives) {\r\n moduleType = [...moduleType, SystemModulesEnum.Initiatives];\r\n filter.AttachmentType = AttachmentTypesEnum.Initiatives;\r\n }\r\n filter.ModuleType = moduleType;\r\n return moduleType;\r\n }\r\n\r\n getAttachmentGroupsPermissions(relatedType, filter: AttachmentsGroupsFilter): Observable {\r\n const me = this;\r\n let moduleType: SystemModulesEnum[] = [0];\r\n if (relatedType == me.RelatedTypeEnum.Correspondence || relatedType == me.RelatedTypeEnum.Proclamation) {\r\n moduleType = [...moduleType, SystemModulesEnum.Correspondence];\r\n } else if (relatedType == me.RelatedTypeEnum.Schedule) {\r\n moduleType = [...moduleType, SystemModulesEnum.Scheduling];\r\n } else if (relatedType == me.RelatedTypeEnum.SchedulingTopic) {\r\n moduleType = [...moduleType, SystemModulesEnum.Scheduling];\r\n } else if (relatedType == me.RelatedTypeEnum.Archive) {\r\n moduleType = [...moduleType, SystemModulesEnum.Archive];\r\n } else if (relatedType == me.RelatedTypeEnum.CorrespondenceLetters) {\r\n moduleType = [...moduleType, SystemModulesEnum.CorrespondenceLetters];\r\n } else if (relatedType == me.RelatedTypeEnum.CorrespondenceRecord) {\r\n moduleType = [...moduleType, SystemModulesEnum.CorrespondenceRecord];\r\n } else if (relatedType == me.RelatedTypeEnum.ArchivedCorrespondence) {\r\n moduleType = [...moduleType, SystemModulesEnum.Correspondence];\r\n } else if (relatedType == me.RelatedTypeEnum.CorrespondenceTask) {\r\n moduleType = [...moduleType, SystemModulesEnum.AssignTasks];\r\n } else if (relatedType == me.RelatedTypeEnum.Committee) {\r\n moduleType = [...moduleType, SystemModulesEnum.Committee];\r\n }\r\n else if (relatedType == me.RelatedTypeEnum.Announcement) {\r\n moduleType = [...moduleType, SystemModulesEnum.Announcement];\r\n } else if (relatedType == me.RelatedTypeEnum.Suggestions) {\r\n moduleType = [...moduleType, SystemModulesEnum.Initiatives];\r\n }\r\n else if (relatedType == me.RelatedTypeEnum.Initiatives) {\r\n moduleType = [...moduleType, SystemModulesEnum.Initiatives];\r\n filter.AttachmentType = AttachmentTypesEnum.Initiatives;\r\n }\r\n filter.ModuleType = moduleType;\r\n filter.RelatedId = filter.RelatedId.toString();\r\n return super.post(\r\n BERRY.hostName + `api/AttachmentsGroups/GetAttachmentGroupsPermissions`,\r\n filter\r\n );\r\n }\r\n\r\n getUserAccessLevel(id) {\r\n return super.get(`${this.baseUrl}/GetUserAccessLevel/${id}`);\r\n }\r\n GetUserAttachmentsGroups(RelatedType,\r\n filter: AttachmentsGroupsFilter\r\n ): Observable {\r\n const me = this;\r\n let moduleType: SystemModulesEnum[] = [0, -1];\r\n if (RelatedType == me.RelatedTypeEnum.Correspondence) {\r\n moduleType = [...moduleType, SystemModulesEnum.Correspondence];\r\n } else if (RelatedType == me.RelatedTypeEnum.Schedule) {\r\n moduleType = [...moduleType, SystemModulesEnum.Scheduling];\r\n } else if (RelatedType == me.RelatedTypeEnum.Archive) {\r\n moduleType = [...moduleType, SystemModulesEnum.Archive];\r\n } else if (RelatedType == me.RelatedTypeEnum.CorrespondenceLetters) {\r\n moduleType = [...moduleType, SystemModulesEnum.CorrespondenceLetters];\r\n } else if (RelatedType == me.RelatedTypeEnum.CorrespondenceRecord) {\r\n moduleType = [...moduleType, SystemModulesEnum.CorrespondenceRecord];\r\n } else if (RelatedType == me.RelatedTypeEnum.ArchivedCorrespondence) {\r\n moduleType = [...moduleType, SystemModulesEnum.Correspondence];\r\n } else if (RelatedType == me.RelatedTypeEnum.CorrespondenceTask) {\r\n moduleType = [...moduleType, SystemModulesEnum.AssignTasks];\r\n } else if (RelatedType == me.RelatedTypeEnum.Suggestions) {\r\n moduleType = [...moduleType, SystemModulesEnum.Initiatives];\r\n }\r\n else if (RelatedType == me.RelatedTypeEnum.Initiatives) {\r\n moduleType = [...moduleType, SystemModulesEnum.Initiatives];\r\n }\r\n filter.ModuleType = moduleType;\r\n return super.post(\r\n BERRY.hostName + `api/AttachmentsGroups/GetUserAttachmentsGroups`,\r\n filter\r\n );\r\n }\r\n\r\n getUserAttachmentDefaultGroups() {\r\n return super.post(BERRY.hostName + `api/AttachmentsGroups/GetUserAttachmentDefaultGroups`);\r\n }\r\n\r\n SaveDefaultAttachmnetsGroups(DefaultAttachmnetGroups) {\r\n return super.post(BERRY.hostName + `api/AttachmentsGroups/SaveDefaultAttachmnetsGroups`, DefaultAttachmnetGroups);\r\n }\r\n\r\n getUserAttachmentSettings(module = AppModulesEnum.Manage) {\r\n return super.get(\r\n BERRY.hostName + `api/CorrespondenceApi/GetUserAttachmentSettings?module=${module}`\r\n );\r\n }\r\n\r\n getAdministrationLetterType() {\r\n let url =\r\n `${BERRY.hostName\r\n }api/AdvancedScheduleItemApi/GetAdministrationLetterType`;\r\n return this.http\r\n .get(url).pipe(\r\n map(res => res),\r\n catchError(this.handleError));\r\n }\r\n\r\n public getAnnouncementAttachments(annouId: string) {\r\n let url =\r\n `${BERRY.hostName}api/AnnouncementAttachments/GetAnnouncementAttachments?id=` + annouId;\r\n return super.get(url);\r\n }\r\n public getCommitteeAttachments(annouId: string) {\r\n let url =\r\n `${BERRY.hostName}api/committees/GetCommitteeAttachments?id=` + annouId;\r\n return super.get(url);\r\n }\r\n public GetArchiveAttachments(id: string) {\r\n return this.http\r\n .get(BERRY.hostName + \"api/ArchiveApi/GetArchiveAttachments?id=\" + id)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetInitiativesAttachments(initiativeId){\r\n let url = `${BERRY.hostName}api/InitiativeAttachment/GetAttachments?id=` + initiativeId;\r\n return super.get(url);\r\n }\r\n\r\n public getScheduleAttachments(schId: string) {\r\n let url =\r\n `${BERRY.hostName}api/scheduleattachments/attachment?id=` + schId;\r\n return super.get(url);\r\n }\r\n getQRPlaceholder() {\r\n return super.get(\r\n BERRY.hostName + `api/CorrespondenceApi/GetQRPlaceholder`\r\n );\r\n }\r\n\r\n getQRCode(corrId, templateDmsId, id, module) {\r\n\r\n let url = this.baseURL + \"/GetQRCode?corrId=\" + corrId + \"&templateDmsId=\" + templateDmsId + \"&attachmentId=\" + id + \"&module=\" + module;\r\n return super.get(url);\r\n }\r\n\r\n getCorrQRCode(corrId, templateDmsId, attachmentId, relatedType) {\r\n\r\n let url = this.baseURL + \"/GetCorrQRCode?corrId=\" + corrId + \"&templateDmsId=\" + templateDmsId + \"&attachmentId=\" + attachmentId + \"&relatedType=\" + relatedType;\r\n return super.get(url);\r\n }\r\n\r\n getUserPreDefinedSignatureAnnotation(attachmentId, systemModule) {\r\n\r\n\r\n return super.get(\r\n BERRY.hostName + \"api/CorrespondenceApi/GetUserPreDefinedSignatureAnnotation?attachmentId=\" + attachmentId + \"&systemModule=\" + systemModule\r\n );\r\n }\r\n\r\n\r\n getAttachmentGroupById(id: number) {\r\n let url =\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/getAttachmentGroupById?id=\" +\r\n id;\r\n return super.get(url);\r\n }\r\n isDraftCorrespondence() {\r\n return super.get(\r\n BERRY.hostName + `api/CorrespondenceApi/IsDraftCorrespondence`\r\n );\r\n }\r\n\r\n deleteAttachment(id: any, RelatedId: any, url: string) {\r\n let relatedIdPart = RelatedId ? `&RelatedId=${RelatedId}` : \"\";\r\n var params = {\r\n id: id,\r\n RelatedId: RelatedId\r\n };\r\n var url = BERRY.hostName + url + \"?id=\" + id + relatedIdPart;\r\n return super.post(url, params);\r\n }\r\n isAllowedSize(size: any, appModuleId: any) {\r\n var url = BERRY.appSettings.keys.dmsServerUrl + \"isAllowedSize?fileSize=\" + size + \"&appModuleId=\" + appModuleId;\r\n return super.get(url);\r\n }\r\n\r\n saveEditAttachmentMetaData(data: AttachmentDto) {\r\n let url = BERRY.hostName + \"api/AttachmentApi/UpdateAttachmentGuid\";\r\n if (!Guid.isGuid(data.RelatedID)) {\r\n url = BERRY.hostName + \"api/AttachmentApi/UpdateAttachmentInt\";\r\n }\r\n return super.post(url, data);\r\n }\r\n\r\n editAttachment(id: any, RelatedId: any) {\r\n var params = {\r\n id: id,\r\n RelatedId: RelatedId\r\n };\r\n var url =\r\n BERRY.hostName +\r\n this.getEditServiceURL +\r\n \"?id=\" +\r\n id +\r\n \"&RelatedId=\" +\r\n RelatedId;\r\n return super.post(url, params);\r\n }\r\n\r\n setAsIsFinalRecord(attachmentId: string, isFinalAttachment: boolean): Observable {\r\n const url = `${this.baseURL}/SetAsIsFinalRecord?attachmentId=${attachmentId}&isFinalAttachment=${isFinalAttachment}`;\r\n return super.post(url, {});\r\n }\r\n\r\n setAsIsDraftRecord(id, setAsDraftRecord) {\r\n var url =\r\n this.baseURL +\r\n \"/SetAsIsDraftRecord\" +\r\n \"?id=\" +\r\n id +\r\n \"&setAsDraftRecord=\" +\r\n setAsDraftRecord;\r\n\r\n var params = {\r\n id: id,\r\n setAsDraftRecord: setAsDraftRecord\r\n };\r\n return this.http.post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n SendDetailsAndAttachmentByEmail(dto, isSendDetailsAndAttachment) {\r\n var url =\r\n this.baseURL +\r\n `/SendDetailsAndAttachmentByEmail?AttachmentIds=\" ${dto.AttachmentIds} \r\n\t \t&Subject=${dto.Subject}\r\n\t \t&Body=${dto.Body}\r\n\t \t&AttachFile=${dto.AttachFile}\r\n\t \t&ToMembers=${dto.ToMembers}\r\n\t \t&CcMembers=${dto.CcMembers}\r\n\t \t&isSendDetailsAndAttachment=${isSendDetailsAndAttachment}\r\n &ToMembersEmail=${dto.ToMembersEmail}\r\n &ToMembersCC=${dto.ToMembersCC}`;\r\n var params = {\r\n CorrespondenceId: dto.CorrespondenceId,\r\n AttachmentIds: dto.AttachmentIds,\r\n Subject: dto.Subject,\r\n Body: dto.Body,\r\n AttachFile: dto.AttachFile,\r\n ToMembers: dto.ToMembers,\r\n CcMembers: dto.CcMembers,\r\n isSendDetailsAndAttachment: isSendDetailsAndAttachment\r\n };\r\n return super.post(url, params);\r\n }\r\n\r\n copyAttachmentList(corrId, CorrespondenceAttachment): Observable {\r\n let url = BERRY.hostName + \"Correspondences/Attachments/CopyAttachmentList?corrId=\" + corrId;\r\n return super.post(url, CorrespondenceAttachment);\r\n }\r\n\r\n editCopyAttachment(\r\n selectedAttachmentToEditVersionId,\r\n selectedAttachmentId\r\n ): Observable {\r\n let url = BERRY.hostName + \"Correspondences/Attachments/EditCopyAttachment\";\r\n var params = {\r\n selectedAttachmentToEditVersionId: selectedAttachmentToEditVersionId,\r\n selectedAttachmentId: selectedAttachmentId\r\n };\r\n return super.post(url, params);\r\n }\r\n\r\n CreateMSWordAddinDownloadLink(selectedAttachmentToEditVersionId, sourceId, id): Observable {\r\n let url = BERRY.hostName + 'api/addin/MSWordAddinDownloadLink';\r\n var params = {\r\n DmsId: selectedAttachmentToEditVersionId,\r\n SourceId: sourceId,\r\n Id: id\r\n };\r\n return super.post(url, params);\r\n }\r\n\r\n getSupportNumberingAttachmentsGroups(): Observable {\r\n return this.http\r\n .get(\r\n BERRY.hostName +\r\n `api/CorrespondenceApi/GetSupportNumberingAttachmentsGroups`\r\n ).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n getFilteredAttachmentsList(AttGroupId, CorrId): Observable {\r\n return this.http\r\n .get(\r\n this.baseURL +\r\n \"/GetFilteredAttachmentsList?AttGroupId=\" +\r\n AttGroupId +\r\n \"&CorrId=\" +\r\n CorrId\r\n ).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n //#region Attachment annotations & Signatures \r\n\r\n canUserSignOrMark(correspondenceAttachmentId: string) {\r\n if (typeof this.signUrl == \"undefined\") {\r\n this.signUrl = \"api/correspondence-signatures/\";\r\n }\r\n let url = `${BERRY.hostName}${this.signUrl\r\n }can-user-sign-mark-attachment/${correspondenceAttachmentId}`;\r\n return super.get(url);\r\n }\r\n\r\n setAttachmentAnnotations(\r\n correspondenceAttachmentId: string,\r\n annotations: Annotation[],\r\n saveSignatureAnnotationsAlso: boolean = true,\r\n secondPassword: string = null\r\n ) {\r\n if (saveSignatureAnnotationsAlso === false) {\r\n annotations = annotations.filter(annotation => {\r\n return (annotation.type !== \"signatureImage\");\r\n });\r\n }\r\n\r\n var params = JSON.stringify(annotations);\r\n if (typeof this.signUrl == \"undefined\") {\r\n this.signUrl = \"api/correspondence-signatures/\";\r\n }\r\n let url = `${BERRY.hostName}${this.signUrl\r\n }set-user-attachment-annotations/${correspondenceAttachmentId}/${this.Module}/null/?&signatureTypes=${SignatureTypes.Signature}&secondPassword=${secondPassword}`;\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n setAttachmentAnnotationsMarking(\r\n correspondenceAttachmentId: string,\r\n annotations: Annotation[],\r\n saveSignatureAnnotationsAlso: boolean = true\r\n\r\n ) {\r\n if (saveSignatureAnnotationsAlso === false) {\r\n annotations = annotations.filter(annotation => {\r\n return (annotation.type !== \"signatureImage\");\r\n });\r\n }\r\n\r\n var params = JSON.stringify(annotations);\r\n if (typeof this.signUrl == \"undefined\") {\r\n this.signUrl = \"api/correspondence-signatures/\";\r\n }\r\n let url = `${BERRY.hostName}${this.signUrl\r\n }set-user-attachment-annotations/${correspondenceAttachmentId}/${this.Module}/null/?signatureTypes=${SignatureTypes.Marking}`;\r\n\r\n return super.post(url, params);\r\n }\r\n RecommendationAttachmentApi = `${BERRY.hostName\r\n }api/AttachmentRecommendationApi/`;\r\n\r\n AddRecommendation(\r\n AttachmentId,\r\n Recommendation,\r\n SelectedRecommendations,\r\n Order\r\n ): Observable {\r\n let me = this;\r\n let url = me.RecommendationAttachmentApi + \"AddRecommendation\";\r\n let modal = {\r\n AttachmentId: AttachmentId,\r\n Recommendation: Recommendation,\r\n SelectedRecommendations: SelectedRecommendations,\r\n Order: Order\r\n };\r\n return super.post(url, modal);\r\n }\r\n EditRecommendation(\r\n RecommendationId,\r\n AttachmentId,\r\n Recommendation,\r\n Order\r\n ): Observable {\r\n let me = this;\r\n let url = me.RecommendationAttachmentApi + \"EditRecommendation\";\r\n let modal = {\r\n Id: RecommendationId,\r\n AttachmentId,\r\n Recommendation,\r\n Order\r\n };\r\n return super.post(url, modal);\r\n }\r\n\r\n DeleteRecommendation(RecommendationId): Observable {\r\n let me = this;\r\n let url = me.RecommendationAttachmentApi + \"DeleteRecommendation\";\r\n let modal = {\r\n Id: RecommendationId\r\n };\r\n return super.post(url, modal);\r\n }\r\n GetRecommendationsByAttachmentId(AttachmentId): Observable {\r\n let me = this;\r\n let url =\r\n me.RecommendationAttachmentApi +\r\n \"GetRecommendationsByAttachmentId?AttachmentId=\" +\r\n AttachmentId;\r\n return super.get(url);\r\n }\r\n\r\n exportNewCopy(attachmentId) {\r\n let me = this;\r\n let url =\r\n me.RecommendationAttachmentApi +\r\n \"ExportNewCopy?attachmentId=\" +\r\n attachmentId;\r\n return super.post(url, attachmentId);\r\n }\r\n\r\n sortRecommendationList(sortableList) {\r\n let me = this;\r\n let url =\r\n me.RecommendationAttachmentApi +\r\n \"SortRecommendationList?sortableList=\" +\r\n sortableList;\r\n return super.post(url, sortableList);\r\n }\r\n\r\n\r\n doRecommendationAsposeMarge(attachmentId) {\r\n let me = this;\r\n let url =\r\n me.RecommendationAttachmentApi +\r\n \"DoRecommendationAsposeMarge?attachmentId=\" +\r\n attachmentId;\r\n return super.post(url, attachmentId);\r\n }\r\n\r\n GetPredefinedRecommendationsByGroupId(GroupId): Observable {\r\n let me = this;\r\n let url =\r\n me.RecommendationAttachmentApi +\r\n \"GetPredefinedRecommendationsByGroupId?GroupId=\" +\r\n GroupId;\r\n return super.get(url);\r\n }\r\n\r\n getAttachmentAnnotations(correspondenceAttachmentId: string, moduleId = null) {\r\n var signUrl = this.signUrl;\r\n if (typeof signUrl == \"undefined\")\r\n signUrl = \"api/correspondence-signatures/\";\r\n if (!moduleId && this.Module)\r\n moduleId = this.Module;\r\n\r\n let url = `${BERRY.hostName}${signUrl}get-user-attachment-annotations/${correspondenceAttachmentId}/` + (moduleId != null ? `${moduleId}` : SystemModules.Correspondence);\r\n return super.get(url);\r\n }\r\n getAttachmentAnnotationscertified(correspondenceAttachmentId: string, moduleId = null) {\r\n var signUrl = this.signUrl;\r\n if (typeof signUrl == \"undefined\")\r\n signUrl = \"api/correspondence-signatures/\";\r\n if (!moduleId)\r\n moduleId = this.Module;\r\n let url = `${BERRY.hostName}${signUrl}get-user-attachment-annotations-certified/${correspondenceAttachmentId}/${moduleId}`;\r\n return super.get(url);\r\n }\r\n baseTemplateURL = BERRY.hostName + \"api/CorrespondenceApi\";\r\n\r\n SaveAttachmentLetterAsAttachmentCorrespondence(dto): Observable {\r\n let url = this.baseTemplateURL + \"/SaveLetterAsAttachmentCorrespondence\";\r\n return super.post(url, dto);\r\n }\r\n\r\n commitFile(id): Observable {\r\n let url = BERRY.wopiUrl + \"/wopi/CommitFile?id=\" + id;\r\n return super.post(url, null);\r\n }\r\n\r\n discardFile(id): Observable {\r\n let url = BERRY.wopiUrl + \"/wopi/DiscardFile?Id=\" + id;\r\n return super.post(url, null);\r\n }\r\n\r\n getRecommendationAttachmentBySubEntityId(\r\n entityId,\r\n corrID\r\n ): Observable {\r\n let url =\r\n this.RecommendationAttachmentApi +\r\n `GetRecommendationAttachmentBySubEntityId?entityId=${entityId}&corrspondenceId=${corrID}`;\r\n return super.get(url);\r\n }\r\n getRecommendationAttachmentBySubExternalContactId(\r\n externalContactId,\r\n corrID\r\n ): Observable {\r\n let url =\r\n this.RecommendationAttachmentApi +\r\n `GetRecommendationAttachmentBySubExternalContactId?externalContactId=${externalContactId}&corrspondenceId=${corrID}`;\r\n return super.get(url);\r\n }\r\n\r\n SendToXCList(xcSendFileParamsDto) {\r\n let url = `${BERRY.hostName}api/XCAttachmentsLists/SendAttachmentToXCList`;\r\n\r\n return super.post(url, xcSendFileParamsDto);\r\n }\r\n\r\n GetMaxFileSizeCanBeUpload(appModuleId: AppModulesEnum): Observable {\r\n return super.get(BERRY.appSettings.keys.dmsServerUrl + `fileSize?appmodule=${appModuleId.toString()}`);\r\n\r\n }\r\n\r\n CurrentClientFileExtensions(): Observable {\r\n let url =\r\n this.baseURL +\r\n `/GetCurrentClientFileExtensions`;\r\n return this.http\r\n .get(url).pipe(\r\n map(res => res),\r\n catchError(this.handleError));\r\n }\r\n\r\n\r\n newLinkAttachment(linkDtos) {\r\n let url = `${BERRY.hostName}api/AttachmentLinkApi/newAttachmentLink`;\r\n\r\n return super.post(url, linkDtos);\r\n }\r\n GetAttachmentLinkItems(attchID: string, appModule: SystemModules): Observable {\r\n return super.get(BERRY.hostName + `api/AttachmentLinkApi/GetAttachmentLinkItems?attchID=${attchID}&appModule=${appModule}`);\r\n }\r\n removeAttachmentLink(attchID: number) {\r\n let url = `${BERRY.hostName}api/AttachmentLinkApi/removeAttachmentLink?ID=${attchID}`;\r\n let params = {\r\n ID: attchID\r\n };\r\n return super.get(url);\r\n }\r\n\r\n GetAllNonLinkedAttachment(parentId: string, attchID: string, appModule: SystemModules): Observable {\r\n return super.get(BERRY.hostName + `api/AttachmentLinkApi/GetAllNonLinkedAttachment?parentId=${parentId}&attchID=${attchID}&appModule=${appModule}`);\r\n }\r\n\r\n GetScannedImagesCount(dmsFileId) {\r\n return super.get(\r\n BERRY.hostName + \"Correspondences/Attachments/GetScannedImagesCount?dmsFileId=\" + dmsFileId\r\n );\r\n }\r\n\r\n getAttachmentsWithoutGrouping(corrId, corrLinkType = null, isCorrespondenceTask = false, attachmentModuleType: SystemModulesEnum = SystemModulesEnum.Correspondence): any {\r\n var url = \"api/CorrespondenceApi/GetCorrespondenceAttachmentsWithoutGrouping\";\r\n corrLinkType = corrLinkType ? corrLinkType : \"\";\r\n return this.http\r\n .get(\r\n BERRY.hostName +\r\n url +\r\n \"?id=\" +\r\n corrId +\r\n \"&corrLinkType=\" +\r\n corrLinkType +\r\n \"&isCorrespondenceTask=\" +\r\n isCorrespondenceTask\r\n ).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n ShareAttachmentWithIndividual(shareDto) {\r\n let url = `${BERRY.hostName}api/AttachmentApi/ShareAttachmentWithIndividual`;\r\n\r\n return super.post(url, shareDto);\r\n }\r\n\r\n checkIndividual(indvId): Observable {\r\n return super.get(`${BERRY.hostName}api/contacts/individuals/CheckIndividualNumber?id=${indvId}`);\r\n }\r\n\r\n SharedIndividuaList(attchID: string): Observable {\r\n return super.get(BERRY.hostName + `api/AttachmentApi/SharedIndividuaList?dmsid=${attchID}`);\r\n }\r\n\r\n unShareAttachmentWithIndividual(id) {\r\n let url = `${BERRY.hostName}api/AttachmentApi/UnshareAttachmentWithIndividual`;\r\n\r\n return super.post(url, id);\r\n }\r\n\r\n TemplateHasQRCodePlaceHolderAnnotation(templateDmsId): Observable {\r\n let url = `${this.baseTemplateURL}/TemplateHasQRCodePlaceHolderAnnotation?templateDmsId=${templateDmsId}`;\r\n return this.http.get(url);\r\n }\r\n\r\n PrintAllAttachments(attachmentIds, printCorrData, totalSelectedAnnotationTypes) {\r\n let url = `${BERRY.appSettings.keys.dmsServerUrl}print-all-pdf?WithCorrData=${printCorrData}&SaveWithAnnotationTypes=${totalSelectedAnnotationTypes}`;\r\n return this.postBlob(url, attachmentIds);\r\n }\r\n postBlob(url: string, Params = {}): Observable {\r\n return this.http.post(url, Params, { responseType: 'blob' });\r\n }\r\n printAccumulatedReport(id): Observable {\r\n let url = `${BERRY.appSettings.keys.dmsServerUrl}print-accumulated-report/${id}`;\r\n return this.http.get(url);\r\n }\r\n\r\n AddAttachment(id: any, sourceType: AnnouncementSourceType, module: any): Observable {\r\n var url = `${BERRY.hostName}api/announcements/AddAttachment?id=` + id + \"&sourceType=\" + sourceType + \"&module=\" + module;\r\n return this.http.post(url, null);\r\n }\r\n GetSubjectOfParentAttachment(id: any, sourceType: AnnouncementSourceType) {\r\n var url = `${BERRY.hostName}api/announcements/AddAttachment?id=` + id + \"&sourceType=\" + sourceType;\r\n return this.http.post(url, null);\r\n }\r\n GetPublishedAnnouncementHistory(id: any) {\r\n var url = `${BERRY.hostName}api/announcements/GetPublishedAnnouncements?attachmentId=` + id;\r\n return this.http.get(url);\r\n }\r\n\r\n GetAnnouncementGeneralHandler(pageType: AnnouncementLogicHandlerTypeEnum): Observable {\r\n let url = `${BERRY.hostName}api/announcements/GetGeneralHandler?type=${pageType}`;\r\n return super.get(url);\r\n }\r\n getSharedAnnotationUsersList(attachmentId, attachmentType): Observable {\r\n let url = BERRY.hostName + \"api/shared-annotation/list?attachmentId=\" + attachmentId + \"&attachmentType=\" + attachmentType;\r\n\r\n return super.get(url);\r\n }\r\n\r\n getFilterCounts(attachmentId, attachmentType): Observable {\r\n let url = BERRY.hostName + \"api/shared-annotation/filter-counts?attachmentId=\" + attachmentId + \"&attachmentType=\" + attachmentType;\r\n return super.get(url);\r\n }\r\n\r\n //#endregion\r\n\r\n isPaperSizeA4(id: string): Observable {\r\n let url = `${BERRY.appSettings.keys.dmsServerUrl}is-paper-size-a4/${id}`;\r\n return super.get(url);\r\n }\r\n\r\n getBasicAttachmentDetailsById(selectedAttachmentID: any): Observable {\r\n let url = `${BERRY.hostName}Correspondences/Attachments/GetBasicAttachmentDetailsById?attachmentId=${selectedAttachmentID}`;\r\n return super.get(url);\r\n }\r\n\r\n\r\n CheckUserSignatureMergeFieldsDetails(attachmentId) {\r\n let url = `${BERRY.hostName}api/AttachmentApi/CheckUserSignatureMergeFieldsDetails?Id=${attachmentId}`;\r\n\r\n return super.get(url);\r\n }\r\n\r\n GetUserStampMergeFieldsDetails(attachmentId) {\r\n let url = `${BERRY.hostName}api/AttachmentApi/GetUserStampMergeFieldsDetails?Id=${attachmentId}`;\r\n\r\n return super.get(url);\r\n }\r\n\r\n CheckFileHasSignature(attachmentId) {\r\n let url = `${BERRY.hostName}api/AttachmentApi/CheckHasSignature?Id=${attachmentId}`;\r\n\r\n return super.get(url);\r\n }\r\n\r\n SignFileWithMergeField(attID, type, base64, annotationId = null, secondPassword: string = null): Observable {\r\n let url = BERRY.appSettings.keys.dmsServerUrl + `sign-attachment/${attID}?type=${type}`;\r\n\r\n const formData = new FormData();\r\n formData.append(\"image\", base64);\r\n formData.append(\"annotationId\", annotationId == null ? \"\" : annotationId);\r\n formData.append(\"secondPassword\", secondPassword);\r\n\r\n let httpHeaders = new HttpHeaders({\r\n \"Authorization\": BERRY.forgeryToken\r\n });\r\n\r\n let options = {\r\n headers: httpHeaders,\r\n withCredentials: true\r\n };\r\n\r\n\r\n return this.httpclient.post(url, formData, options).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n CheckAttachmentHasBlockImageAndSignatureMerge(attachmentId) {\r\n let url = `${BERRY.hostName}api/AttachmentApi/CheckAttachmentHasBlockImageAndMappSignature?Id=${attachmentId}`;\r\n\r\n return super.get(url);\r\n }\r\n\r\n getScheduleItemPermission(scheduleItemId: any, pageType: ScheduleItemPageType = null): Observable {\r\n let url = `${BERRY.hostName}api/schedule/ScheduleItemAPI/GetScheduleItemLogicHandler?scheduleId=${scheduleItemId}&type=${pageType}`;\r\n return super.get(url);\r\n }\r\n\r\n setTheAttachmentAsMeetingMinutes(AttachmentId: any, AttachmentParentID: any, isMeetingMinutes: any) {\r\n let isMeetingMinutesUrl = \"\";\r\n if (isMeetingMinutes)\r\n isMeetingMinutesUrl = `&value=${isMeetingMinutes}`;\r\n let url = `${BERRY.hostName}api/scheduleattachments/SetTheAttachmentAsMeetingMinutes?attachmentId=${AttachmentId}&attachmentParentID=${AttachmentParentID}${isMeetingMinutesUrl}`;\r\n return super.get(url);\r\n }\r\n\r\n GetXCGuidanceNotes(linkedAttachmentId: string, systemModule: SystemModules, attachmentGroupId: number): Observable {\r\n return super.get(`${BERRY.hostName}api/XCGuidanceNotes/GetXCGuidanceNotes?linkedAttachmentId=${linkedAttachmentId}&systemModule=${systemModule}&attachmentGroupId=${attachmentGroupId}`);\r\n }\r\n\r\n GetXCGuidanceNotesPermissions(attachmentGroupId: number): Observable {\r\n return super.get(`${BERRY.hostName}api/XCGuidanceNotes/GetXCGuidanceNotesPermissions?attachmentGroupId=${attachmentGroupId}`);\r\n }\r\n\r\n GetExistingAttachments(linkedAttachmentId: string, systemModule: SystemModules, parentId: string): Observable {\r\n return super.get(`${BERRY.hostName}api/XCGuidanceNotes/GetExistingAttachments?linkedAttachmentId=${linkedAttachmentId}&systemModule=${systemModule}&parentId=${parentId}`);\r\n }\r\n\r\n AddGuidanceNoteFromExistingFile(newGuidanceNote, selectedFileId: string): Observable {\r\n let url = `${BERRY.hostName}api/XCGuidanceNotes/AddGuidanceNoteFromExistingFile?selectedFileId=${selectedFileId}`;\r\n return super.post(url, newGuidanceNote);\r\n }\r\n\r\n DeleteGuidanceNote(guidanceNoteId: string): Observable {\r\n let url = `${BERRY.hostName}api/XCGuidanceNotes/DeleteGuidanceNote?guidanceNoteId=${guidanceNoteId}`;\r\n return super.post(url);\r\n }\r\n\r\n getGuidanceNoteByXCUserId(selectedAttachmentId: any, systemModule, selectedXCPresidentId: any): Observable {\r\n var selectedXCPresidentIdUrlPart = selectedXCPresidentId ? `&selectedXCPresidentId=${selectedXCPresidentId}` : \"\";\r\n let url = `${BERRY.hostName}api/XCGuidanceNotes/GetGuidanceNoteByXCUserId?parentAttachmentId=${selectedAttachmentId}&systemModule=${systemModule}${selectedXCPresidentIdUrlPart}`;\r\n return super.get(url);\r\n }\r\n\r\n ModifyGuidanceNotePresidents(guidanceNoteId: string, newPresidentsIds: string[]): Observable {\r\n let url = `${BERRY.hostName}api/XCGuidanceNotes/ModifyGuidanceNotePresidents?guidanceNoteId=${guidanceNoteId}`;\r\n return super.post(url, newPresidentsIds);\r\n }\r\n \r\n GetXCGuidanceNotesHistory(guidanceNoteId: string): Observable {\r\n return super.get(`${BERRY.hostName}api/XCGuidanceNotes/GetXCGuidanceNotesHistory?guidanceNoteId=${guidanceNoteId}`);\r\n }\r\n GetClientModules(): Observable {\r\n return super.get(this.baseURL + \"/GetClientModules\");\r\n }\r\n getAdoptionAttachmentList(\r\n parentId: string,\r\n moduleId): Observable {\r\n let url = BERRY.hostName + `api/attachment-operation/adoption-attachment-ids/${parentId}/${moduleId}`;\r\n return super.get(url);\r\n }\r\n\r\n canUserAddCorrespondenceAttachments(correspondenceId, categoryId): Observable {\r\n return super.get(`${BERRY.hostName}api/AttachmentsGroups/CanUserAddCorrespondenceReplyTemplates?correspondenceId=${correspondenceId}&categoryId=${categoryId}`);\r\n }\r\n GetUserAnnotatios(): Observable {\r\n return super.get(`${BERRY.hostName}api/StampRequests/GetAuthorizeAnnotations`);\r\n }\r\n\r\n convertAttachmentAsWord(selectedAttachmentId): Observable {\r\n return this.http.post(`${BERRY.hostName}api/AttachmentQuoteApi/convert-attachment-as-word/${selectedAttachmentId}`, {});\r\n }\r\n\r\n downloadOCRReport(jobId): Observable {\r\n return this.http.get(`${BERRY.hostName}api/AttachmentQuoteApi/download-attachment/${jobId}`, { responseType: 'blob' });\r\n }\r\n\r\n canHideAnnotationAndWatermarkOnDownloadSpecificFiles(sourceType, selectedAttachmentId): Observable {\r\n return this.http.get(`${BERRY.hostName}api/internalapis/dms/attachments/CanHideAnnotationAndWatermark/${selectedAttachmentId}?sourceType=${sourceType}`);\r\n }\r\n\r\n LinkedSubCorrespondenceAttachmentsWithParentCorrespondence(parentCorrespondenceId: any, attachmentId: any) {\r\n var params = {\r\n CorrespondenceId: parentCorrespondenceId,\r\n DmsAttachmentId: attachmentId\r\n };\r\n var url = BERRY.hostName + `api/CorrespondenceApi/LinkedSubCorrespondenceAttachmentsWithParentCorrespondence`;\r\n return super.post(url, params);\r\n }\r\n\r\n HideSubCorrespondenceAttachmentsFromParentCorrespondence(parentCorrespondenceId: any, attachmentId: any) {\r\n var params = {\r\n CorrespondenceId: parentCorrespondenceId,\r\n DmsAttachmentId: attachmentId\r\n };\r\n var url = BERRY.hostName + `api/CorrespondenceApi/HideSubCorrespondenceAttachmentsFromParentCorrespondence`;\r\n return super.post(url, params);\r\n }\r\n\r\n GetCorrespondenceLinkedAttachments(correspondenceId: any, attachmentId: any){\r\n return super.get(BERRY.hostName + `api/CorrespondenceApi/GetCorrespondenceLinkedAttachments?correspondenceId=${correspondenceId}&attachmentId=${attachmentId}`);\r\n }\r\n\r\n GetAttachmentIdsSharedWithParentCorrespondence(parentCorrespondenceId: any){\r\n return super.get(BERRY.hostName + `api/CorrespondenceApi/GetAttachmentIdsSharedWithParentCorrespondence?parentCorrespondenceId=${parentCorrespondenceId}`);\r\n }\r\n}\r\n","export interface AttachmentsGroupsFilter {\r\n AccessLevelType?: AttachmentAccessLevelTypesEnum;\r\n GroupId?: number;\r\n RelatedId?: string;\r\n ModuleType?: SystemModulesEnum[];\r\n IsSupportNumbering?: boolean;\r\n IsSupportReportGenerator?: boolean;\r\n IsSupportAutoNaming?: boolean;\r\n IsSupportMultimedia?: boolean;\r\n AttachmentType?: number;\r\n GetAllPermittedGroups?: boolean;\r\n}\r\n\r\nexport enum AttachmentAccessLevelTypesEnum {\r\n None = 0,\r\n Read = 1,\r\n Edit = 2,\r\n Delete = 4,\r\n AddNew = 8,\r\n ExportCopy = 16,\r\n EditCopy = 32\r\n}\r\n\r\nexport enum SystemModulesEnum {\r\n SelectEnum = -1,\r\n All = 0,\r\n Archive = 1,\r\n Scheduling = 2,\r\n AssignTasks = 3,\r\n Correspondence = 4,\r\n CorrespondenceRecord = 5,\r\n CorrespondenceLetters = 6,\r\n Proclamation = 9,\r\n Committee = 13,\r\n Announcement = 16,\r\n Initiatives = 17\r\n}\r\n","import { OnInit, AfterViewInit, OnDestroy, Directive } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../models/IGlobalSettings\";\r\nimport { AppModulesEnum } from \"../models/AppModulesEnum\";\r\nimport { CorrespondenceCategoryIdEnum } from \"src/app/berry/correspondences/_models/CorrespondenceCategoryId-Enum\";\r\nimport { BerryButtonTypeEnum } from \"./BerryButton/Berry-Button.component\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var SITE_ROOT_PATH: any;\r\n\r\n@Directive()\r\nexport abstract class BaseCmp implements OnInit, AfterViewInit, OnDestroy {\r\n BerryButtonTypeEnum = BerryButtonTypeEnum;\r\n errorMessage: string;\r\n PageSize = BERRY.PageSize;\r\n correspondenceCategoryIdEnum: any = CorrespondenceCategoryIdEnum;\r\n appModulesEnum: any = AppModulesEnum;\r\n\r\n ngOnInit() {\r\n this.ngSuperOnInit();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.ngSuperAfterViewInit();\r\n }\r\n\r\n abstract ngSuperOnInit(): any;\r\n abstract ngSuperAfterViewInit(): any;\r\n\r\n ngOnDestroy(): any { }\r\n\r\n getSiteRootPath() {\r\n return BERRY.absoluteHostName;\r\n }\r\n\r\n getAPIURL() {\r\n return BERRY.hostName;\r\n }\r\n\r\n get getBerry(): IGlobalSettings {\r\n return BERRY;\r\n }\r\n\r\n getText(key, set, lang?: string) {\r\n return this.getBerry.getText(key, set, lang);\r\n }\r\n\r\n formatString(str: string, ...val: any) { \r\n str = str.replace(`{0}`, val); \r\n return str;\r\n }\r\n\r\n getURL(url) {\r\n return BERRY.hostName + url;\r\n }\r\n\r\n getSigWebURL(url) {\r\n return BERRY.absoluteHostName + url;\r\n }\r\n\r\n get isExternalUser(): boolean {\r\n return BERRY.User.IsExternalUser;\r\n }\r\n\r\n get downloadURL() {\r\n return `${BERRY.appSettings.keys.dmsServerUrl}download`;\r\n }\r\n get downloadReportURL() {\r\n return `${BERRY.appSettings.keys.dmsServerUrl}download-report`;\r\n }\r\n\r\n get downloadWithSignatureURL() {\r\n return `${BERRY.appSettings.keys.dmsServerUrl}download-pdf-signature`;\r\n }\r\n\r\n get uploadURL() {\r\n return `${BERRY.appSettings.keys.dmsServerUrl}upload`;\r\n }\r\n\r\n betaSignModule(moduleName: string) {\r\n return BERRY.appSettings.keys.BetaSignModule.includes(moduleName);\r\n }\r\n\r\n stringToBoolean(stringValue: string): boolean | undefined {\r\n try {\r\n var result = JSON.parse(stringValue);\r\n return result == 0 || result == false ? false : true;\r\n }\r\n catch (e) {\r\n return undefined;\r\n }\r\n }\r\n}\r\n","export enum AvatarTypeEnum {\r\n individual = 'individual',\r\n user = 'user',\r\n organization = 'organization',\r\n externalContact = 'externalContact'\r\n}","import {\r\n Component, Input\r\n} from \"@angular/core\";\r\nimport { AuthService } from \"src/app/framework/services/auth.service\";\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\nimport { BaseCmp } from \"../BaseComponent\";\r\nimport { AvatarTypeEnum } from \"./enumAvatarType\";\r\n\r\ndeclare let BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"berry-avatar\",\r\n templateUrl: \"./Avatar-ng.html\",\r\n styleUrls: ['./Avatar.scss']\r\n})\r\nexport class AvatarComponent extends BaseCmp {\r\n\r\n @Input('imgType') imgType = AvatarTypeEnum.individual;\r\n\r\n image: any;\r\n @Input('isSquare') isSquare: boolean = false;\r\n\r\n @Input('src') set value(v: string) {\r\n this.setHeader(v)\r\n }\r\n\r\n\r\n size: number = 35\r\n @Input('size') set _size(val: number) {\r\n\r\n this.size = val;\r\n if (this.size <= 20 || this.size >= 200) {\r\n throw (new Error(\"The size avatar should be more than 20 and less 120\"))\r\n }\r\n\r\n }\r\n\r\n constructor(private authService: AuthService) {\r\n super();\r\n }\r\n\r\n ngSuperAfterViewInit(): void { }\r\n\r\n ngSuperOnInit(): void {\r\n }\r\n\r\n setHeader(originImageSource): void {\r\n if (!originImageSource) return null;\r\n \r\n if (BERRY.imagesDictionary.get(originImageSource)) {\r\n this.image = BERRY.imagesDictionary.get(originImageSource);\r\n return null;\r\n }\r\n else {\r\n BERRY.imagesDictionary.set(originImageSource ,originImageSource)\r\n var xhr = new XMLHttpRequest();\r\n xhr.responseType = 'blob';\r\n xhr.onreadystatechange = () => {\r\n if (xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {\r\n this.image = URL.createObjectURL(xhr.response);\r\n BERRY.imagesDictionary.set(originImageSource, this.image)\r\n }\r\n };\r\n\r\n var imageUrl = '';\r\n\r\n switch (this.imgType) {\r\n case AvatarTypeEnum.individual:\r\n imageUrl = BERRY.appSettings.keys.dmsServerUrl + 'ContactsViews/Individuals/Photo/' + originImageSource;\r\n break;\r\n case AvatarTypeEnum.user:\r\n imageUrl = BERRY.appSettings.keys.dmsServerUrl + 'user-image/image/' + originImageSource;\r\n break;\r\n case AvatarTypeEnum.organization:\r\n imageUrl = BERRY.hostName + 'ContactsViews/Organizations/Photo/' + originImageSource;\r\n break;\r\n case AvatarTypeEnum.externalContact:\r\n imageUrl = BERRY.hostName + 'external-contacts/image/' + originImageSource;\r\n break;\r\n }\r\n\r\n xhr.open('GET', imageUrl, true);\r\n xhr.setRequestHeader('Authorization', `Bearer ${this.authService.token}`);\r\n xhr.send();\r\n }\r\n\r\n }\r\n}","
    \r\n
    \r\n
    ","import {\r\n Component, ElementRef, EventEmitter, Input, Output, ViewChild\r\n} from \"@angular/core\";\r\n\r\n/*\r\n - For ex:\r\n\r\n \r\n {{ Text here }}\r\n \r\n \r\n\r\n*/\r\n \r\nexport enum BerryButtonTypeEnum {\r\n primary = 'primary',\r\n secondary = 'secondary',\r\n success = 'success',\r\n danger = 'danger',\r\n warning = 'warning',\r\n empty = 'empty',\r\n outline = 'outline',\r\n placeholder = 'placeholder'\r\n}\r\n\r\n@Component({\r\n selector: \"berry-button\",\r\n templateUrl: \"./BerryButton-ng.html\",\r\n styleUrls: ['./BerryButton.scss'],\r\n})\r\n\r\nexport class BerryButtonComponent {\r\n\r\n @ViewChild(\"button\") button: ElementRef;\r\n\r\n isComponentLoaded: boolean = false;\r\n\r\n @Input('disabled') set _disabled(val) {\r\n this.disabled = val;\r\n const parent = this.button?.nativeElement?.parentElement;\r\n\r\n if(!parent) return ;\r\n if (val ) {\r\n parent.onclick = (e) => { e.preventDefault() }\r\n \r\n } else{\r\n parent.onclick =null;\r\n }\r\n \r\n }\r\n\r\n disabled: boolean = false;\r\n\r\n @Input('isSubmit') isSubmit: boolean = false;\r\n\r\n @Input('form') form: string;\r\n\r\n @Input('data-automation-id') _dataAutomationId: string = null;\r\n \r\n @Input('dataAutomationId') dataAutomationId: string = null;\r\n\r\n @Input('width') width : string;\r\n \r\n @Input('height') height : string;\r\n\r\n @Output('click') click: EventEmitter = new EventEmitter();\r\n\r\n type: string = BerryButtonTypeEnum.primary;\r\n\r\n @Input('type') set _type(val: string) {\r\n\r\n if ((Object.values(BerryButtonTypeEnum) as Array).includes(val)) {\r\n this.type = val;\r\n } else {\r\n throw (new Error(\"You must use Ex: BerryButtonTypeEnum.praimary\"))\r\n } \r\n\r\n }\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n\r\n if (!this.dataAutomationId && !this._dataAutomationId) {\r\n throw (new Error(\"Please add data-automation-id\"));\r\n }\r\n\r\n this.isComponentLoaded = true;\r\n\r\n }\r\n onClick(e): void {\r\n this.click.emit(e);\r\n }\r\n\r\n get ButtonType() {\r\n if (this.isSubmit) {\r\n return 'submit'\r\n } else {\r\n return 'button'\r\n }\r\n }\r\n\r\n}","\r\n","
    \r\n\r\n \r\n
    \r\n {{textAreaValue ? textAreaValue?.length : 0}} / {{maxLength}}\r\n
    \r\n\r\n
    ","import {\r\n Component, Input, forwardRef\r\n} from \"@angular/core\";\r\nimport {ControlValueAccessor, NG_VALUE_ACCESSOR} from '@angular/forms';\r\n\r\n@Component({\r\n selector: \"berry-textArea\",\r\n templateUrl: \"./BerryTextArea-ng.html\",\r\n styleUrls: ['./BerryTextArea.scss'],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => BerryTextAreaComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class BerryTextAreaComponent implements ControlValueAccessor {\r\n\r\n @Input('dataAutomationId') dataAutomationId : any;\r\n \r\n @Input() maxLength : number;\r\n @Input(\"placeholder\") placeholder : string='';\r\n @Input() showCounter : boolean = true;\r\n @Input('disabled') disabled : boolean = false;\r\n\r\n textAreaValue: string = '';\r\n \r\n constructor() {\r\n \r\n }\r\n\r\n onChange: any = () => {}\r\n onTouch: any = () => {}\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouch = fn;\r\n }\r\n\r\n writeValue(textAreaValue) {\r\n this.textAreaValue = textAreaValue;\r\n }\r\n\r\n}\r\n\r\n","import { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../../../_common/models/IGlobalSettings\";\r\nimport { HttpInterceptor } from \"../../services/http-interceptor\";\r\nimport { BaseService } from \"../../services/baseService\";\r\nimport { Observable } from \"rxjs\";\r\nimport { XCAttachmentStatusEnum } from \"../../../executive-communication/models/xcattachmentstatusenum\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class ExecutiveOfficeSVC extends BaseService {\r\n executiveOfficebaseUrl = BERRY.hostName + \"api/ExecutiveOfficeApi\";\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n public send(attachmentNameDto): Observable {\r\n let url = `${\r\n this.executiveOfficebaseUrl\r\n }/Send`;\r\n return super.post(url, attachmentNameDto);\r\n }\r\n\r\n public getCorrespondenceAttachments(correspondenceId): Observable {\r\n let url = `${\r\n this.executiveOfficebaseUrl\r\n }/GetCorrespondenceAttachments?correspondenceId=${correspondenceId}`;\r\n return super.get(url);\r\n }\r\n\r\n public getUserExecutiveOfficeAutoComplete(): Observable {\r\n let url = this.executiveOfficebaseUrl + `/GetUserExecutiveOfficeAutoComplete`;\r\n return super.get(url);\r\n }\r\n\r\n public checkIfUserCanSkipDraftForTheSelectedOffice(Id): Observable {\r\n let url = this.executiveOfficebaseUrl + `/CheckIfUserCanSkipDraftForTheSelectedOffice?officeId=${Id}`;\r\n return super.post(url, Id)\r\n }\r\n\r\n\r\n public sendXCOfficeItems(linkItemId): Observable {\r\n let url = `${this.executiveOfficebaseUrl}/SendXCOfficeItems?linkItemId=${linkItemId}`;\r\n return super.post(url, linkItemId);\r\n }\r\n \r\n public changeXCOfficeItemsStatus(linkItemId: string, status: XCAttachmentStatusEnum): Observable {\r\n let param = {\r\n linkItemId: linkItemId,\r\n status: status\r\n };\r\n\r\n let url = `${this.executiveOfficebaseUrl}/ChangeXCOfficeItemsStatus?linkItemId=${linkItemId}&status=${status}`;\r\n return super.post(url, param);\r\n }\r\n}\r\n","import { Component, Input } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"loader\",\r\n templateUrl: \"./loader.component.html\",\r\n})\r\nexport class loader {\r\n @Input(\"size\") size; \r\n}\r\n//class=\"bb-loader-container\"","
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, Input } from \"@angular/core\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\n\r\n@Component({\r\n selector: \"no-data-found\",\r\n template: `\r\n
    \r\n
    \r\n \"\"\r\n
    \r\n

    {{ heading }}

    \r\n
    {{ text }}
    \r\n \r\n {{ getText(\"_ClearSearchKeyword\", \"Resources\") }}\r\n \r\n
    \r\n `,\r\n inputs: [\"heading\", \"text\", \"icon\", \"hasClearButton\"]\r\n})\r\nexport class noDataFound extends BaseCmp {\r\n @Input() heading: string;\r\n @Input() text: string;\r\n @Input() icon: string;\r\n @Input() hasClearButton: boolean;\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n ngSuperOnInit() {\r\n const wrapper = document.querySelector(\".wrapper\");\r\n wrapper.className += \" no-data-found\";\r\n }\r\n\r\n ngSuperAfterViewInit() {}\r\n\r\n ngOnDestroy() {\r\n const wrapper = document.querySelector(\".wrapper\");\r\n wrapper?.classList?.remove(\"no-data-found\");\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../../../_common/models/IGlobalSettings\";\r\nimport { Annotation } from \"../../models/Annotation\";\r\nimport { UserReadyWordDto } from \"src/app/berry/correspondences/_models/UserReadyWordDto\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n\r\n@Injectable()\r\nexport class FlowPaperBridgeService {\r\n public marks: Annotation[] = [];\r\n\r\n getFlexPaperWindow(iframeId: string): any {\r\n let iframe: any = document.getElementById(iframeId);\r\n let iframeWindow = iframe.contentWindow;\r\n return iframeWindow;\r\n }\r\n\r\n public hasSignatuere(iframeId: string): boolean {\r\n const _annotations = this.getAllMarksOnPreviewer(iframeId);\r\n const hasSignatures = _annotations.some(\r\n f =>\r\n (f.type == \"signatureImage\" ||\r\n f.type == \"deviceSignature\" ||\r\n f.type == \"SignatureNote\" ||\r\n f.type == \"stampImage\" ||\r\n f.type == \"markingSignature\") &&\r\n (f.authorId == BERRY.User.ActualUserId || (f.author &&\r\n (f.author.indexOf(BERRY.User.HeaderDto.ActualLoggedInUserName) > -1 || f.author.indexOf(BERRY.User.FullName) > -1 ||\r\n f.author.indexOf(BERRY.User.HeaderDto.ActualLoggedInUserPosition) > -1))));\r\n\r\n return hasSignatures;\r\n }\r\n\r\n public getAllMarksOnPreviewer(iframeId: string): Annotation[] {\r\n let iframeWindow = this.getFlexPaperWindow(iframeId);\r\n let marks = iframeWindow.getAllMarks();\r\n return marks;\r\n }\r\n\r\n public getAllMarksForSaving(iframeId: string): Annotation[] {\r\n let iframeWindow = this.getFlexPaperWindow(iframeId);\r\n let marks = iframeWindow.getAllMarksForSaving(iframeId);\r\n return marks;\r\n }\r\n\r\n public setDeviceSignatureCallback(iframeId: string, base64Signature: any) {\r\n let iframeWindow = this.getFlexPaperWindow(iframeId);\r\n iframeWindow.setDeviceSignatureCallback(base64Signature);\r\n }\r\n\r\n\r\n public vShowAndHideAnnotations(iframeId: string): void {\r\n let iframe: any = document.getElementById(iframeId);\r\n let iframeWindow = this.getFlexPaperWindow(iframeId);\r\n\r\n iframeWindow.vShowAndHideAnnotations(iframeId);\r\n }\r\n\r\n public showHideUserAnnotationsWithoutSignature(\r\n iframeId: string,\r\n showMarks: boolean\r\n ): void {\r\n let iframe: any = document.getElementById(iframeId);\r\n let iframeWindow = this.getFlexPaperWindow(iframeId);\r\n\r\n iframeWindow.showHideUserAnnotationsWithoutSignature(iframeId, showMarks);\r\n }\r\n\r\n public showHideUserAnnotationsWithoutPersonal(\r\n iframeId: string,\r\n showPersonalMarks: boolean\r\n ): void {\r\n let iframe: any = document.getElementById(iframeId);\r\n let iframeWindow = this.getFlexPaperWindow(iframeId);\r\n\r\n iframeWindow.showHideUserAnnotationsWithoutPersonal(\r\n iframeId,\r\n showPersonalMarks\r\n );\r\n }\r\n\r\n public showHideUserAnnotationsWithoutBlocks(\r\n iframeId: string,\r\n showMarks: boolean\r\n ): void {\r\n let iframe: any = document.getElementById(iframeId);\r\n let iframeWindow = this.getFlexPaperWindow(iframeId);\r\n\r\n iframeWindow.showHideUserAnnotationsWithoutBlocks(iframeId, showMarks);\r\n }\r\n\r\n public setMarksOnPreviewer(iframeId: string): void {\r\n var me = this;\r\n var iframe: any = document.getElementById(iframeId);\r\n\r\n var marksStr = $(\"#\" + iframeId + \"_annotations\").val();\r\n\r\n if (marksStr === \"\" || marksStr === \"[]\") return;\r\n\r\n var marks = JSON.parse(marksStr);\r\n me.marks = marks;\r\n\r\n var iframeWindow = me.getFlexPaperWindow(iframeId);\r\n iframeWindow.setMarks(marks);\r\n }\r\n\r\n public resetIframeCache(iframeId: string): void {\r\n var me = this;\r\n var iframeWindow = me.getFlexPaperWindow(iframeId);\r\n iframeWindow.resetIframeCache(iframeId);\r\n }\r\n\r\n public reMark(iframeId: string): void {\r\n var me = this;\r\n var iframeWindow = me.getFlexPaperWindow(iframeId);\r\n iframeWindow.clearMarks();\r\n this.setMarksOnPreviewer(iframeId);\r\n }\r\n\r\n public init(iframeId, documentLoadedCallback: () => void) {\r\n (window)[\"pdfDocumentLoaded_\" + iframeId] = () => {\r\n documentLoadedCallback();\r\n };\r\n }\r\n\r\n public drawReadyWordsImages(IframeId: string, readyWords: Array, noDataMsg = \"\") {\r\n let me = this;\r\n var iframeElement = me.getFlexPaperWindow(IframeId);\r\n var readyWordsBtnDropDownDiv = $(iframeElement.document).find(\"#readyWordsDropDownUL\");\r\n readyWordsBtnDropDownDiv[0].innerHTML = \"\";\r\n if (readyWords && readyWords.length > 0) {\r\n for (var i = 0; i < readyWords.length; i++) {\r\n var childElement = document.createElement('li');\r\n childElement.style.cursor = \"pointer\";\r\n childElement.innerHTML = `\"\"`;\r\n let readyWordImage = readyWords[i].ReadyWordImageUrl\r\n childElement.onclick = function () {\r\n iframeElement.selectedReadyWordImage = readyWordImage;\r\n iframeElement.onSelectReadyWordEvent()\r\n };\r\n readyWordsBtnDropDownDiv[0].appendChild(childElement);\r\n }\r\n /* $(iframeElement.document).find(\"#readyWordsBtn\").show();*/\r\n }\r\n else {\r\n readyWordsBtnDropDownDiv[0].innerHTML = noDataMsg;\r\n }\r\n }\r\n\r\n public removeSelectedRemark(iframeId: string): void {\r\n var me = this;\r\n var iframeWindow = me.getFlexPaperWindow(iframeId);\r\n iframeWindow.removeSelectedRemark(iframeId);\r\n }\r\n\r\n public goToPage(iframeId: string, pgNumber: number): void {\r\n var me = this;\r\n var iframeWindow = me.getFlexPaperWindow(iframeId);\r\n iframeWindow.gotoPage(pgNumber);\r\n }\r\n\r\n public getViewerPages(iframeId: string): any {\r\n var me = this;\r\n var iframeWindow = me.getFlexPaperWindow(iframeId);\r\n return iframeWindow.getViewerPages();\r\n }\r\n\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { throwError } from \"rxjs\";\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\nimport { SignatureRequestGroupDto } from \"../../../berry/correspondences/_models/eSignatures/SignatureRequestGroupDto\";\r\nimport { SignatureRequestDto } from \"../../../berry/correspondences/_models/eSignatures/SignatureRequestDto\";\r\nimport { SignatureTypes } from \"../../../berry/correspondences/_models/enums/SignatureTypes\";\r\n\r\nimport { BaseService } from \"../../services/baseService\";\r\nimport { AppModulesEnum } from \"../../models/AppModulesEnum\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class StampsRequestsSvc extends BaseService {\r\n baseURL = BERRY.hostName + \"api/StampRequests\"; // URL to web API\r\n\r\n public getStamRequests(correspondenceId: string, annotationType: SignatureTypes = SignatureTypes.Stamp, appModule: AppModulesEnum) {\r\n let url = `${this.baseURL}/GetAll?referenceId=${correspondenceId}&annotationType=${annotationType}&appModulesEnum=${appModule}`;\r\n return super.get(url);\r\n }\r\n\r\n public getStamOtherReques(correspondenceId: string, annotationType: SignatureTypes = SignatureTypes.Stamp, appModule: AppModulesEnum) {\r\n let url = `${this.baseURL}/GetAllOtherRequest?referenceId=${correspondenceId}&annotationType=${annotationType}&appModulesEnum=${appModule}`;\r\n return super.get(url);\r\n }\r\n public getScheduleOtherAnnotation(correspondenceId: string, annotationType: SignatureTypes = SignatureTypes.Stamp, appModule: AppModulesEnum) {\r\n let url = `${this.baseURL}/GetAllScheduleOtherAnnotation?referenceId=${correspondenceId}&annotationType=${annotationType}&appModulesEnum=${appModule}`;\r\n return super.get(url);\r\n }\r\n public getScheduleAnnotation(correspondenceId: string, annotationType: SignatureTypes = SignatureTypes.Stamp, appModule: AppModulesEnum) {\r\n let url = `${this.baseURL}/GetAllScheduleAnnotation?referenceId=${correspondenceId}&annotationType=${annotationType}&appModulesEnum=${appModule}`;\r\n return super.get(url);\r\n }\r\n\r\n public getAuthorizedEntityIds() {\r\n let url = `${this.baseURL}/GetAuthorizedEntityIds`;\r\n return super.get(url);\r\n }\r\n\r\n public getCountRequestedAnnotatios(relatedId: string, appModule: AppModulesEnum) {\r\n let url = `${this.baseURL}/GetCountRequestedAnnotatios?relatedId=${relatedId}&appModule=${appModule}`;\r\n return super.get(url);\r\n }\r\n public getOtherCountRequestedAnnotatios(relatedId: string, appModule: AppModulesEnum) {\r\n let url = `${this.baseURL}/GetOtherCountRequestedAnnotatios?relatedId=${relatedId}&appModule=${appModule}`;\r\n return super.get(url);\r\n }\r\n public Add(relatedId: string, group: SignatureRequestGroupDto, requests: SignatureRequestDto[], signatureType: SignatureTypes = SignatureTypes.Stamp, moduleId = 3): Observable {\r\n var params = {\r\n RelatedId: relatedId,\r\n Group: group,\r\n Requests: requests,\r\n ReferanceAttachmentAppModule: moduleId\r\n };\r\n return super.post(this.baseURL + \"/Add\", params).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public deleteRequest(request: SignatureRequestDto) {\r\n // Correspondences\r\n let url = `${this.baseURL}/Remove?id=${request.Id}`;\r\n return super.delete(url);\r\n }\r\n\r\n public getNotAddedStampRequestGroups(correspondenceId: string, annotationType: SignatureTypes = SignatureTypes.Stamp, appModule: AppModulesEnum, withOtherRequest = true) {\r\n let url = `${this.baseURL}/GetNotAddedStampRequestGroups?referenceId=${correspondenceId}&annotationType=${annotationType}&appModulesEnum=${appModule}&withOtherRequest=${withOtherRequest}`;\r\n return super.get(url);\r\n }\r\n public getNotAddedTopicAttachment(correspondenceId: string, annotationType: SignatureTypes = SignatureTypes.Stamp, appModule: AppModulesEnum, withOtherRequest = true, keywordFilter = \"\") {\r\n let url = `${this.baseURL}/GetNotAddedTopicAttachment?referenceId=${correspondenceId}&annotationType=${annotationType}&appModulesEnum=${appModule}&withOtherRequest=${withOtherRequest}&keywordFilter=${keywordFilter}`;\r\n return super.get(url);\r\n }\r\n\r\n\r\n handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n \r\n return throwError(errMsg);\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    {{entityName}}

    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n

    {{getText('UsersAllowedToUseStamp', 'Stamp')}}

    \r\n\r\n\r\n
    \r\n\r\n
    \r\n \r\n
    {{authUser.EmployeeNumber}}
    \r\n
    {{authUser.EmployeeName}}
    \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
    ","import { Component, EventEmitter, Input, Output, ViewChild } from \"@angular/core\";\r\nimport { Router, ActivatedRoute } from \"@angular/router\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport {\r\n DialogManager,\r\n ConfirmationBoxType,\r\n ConfirmationBoxOptions,\r\n ConfirmationBoxResult\r\n} from \"src/app/_common/services/dialog-manager\";\r\nimport { UploadImage } from \"src/app/_common/components/uploadImagePopup/uploadImagePopup-component\";\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\nimport { AnnotationDto } from \"../../models/Annotations/AnnotationDto\";\r\nimport { StampsSvc } from \"./stamps-svc\";\r\nimport { AuthorizedAnnotationUserDto } from \"../../models/Annotations/AuthorizedAnnotationUserDto\";\r\nimport { MessagingService } from \"../../services/messaging-service\";\r\n\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"stamp\",\r\n templateUrl: \"./stamps-ng.html\"\r\n})\r\nexport class StampsCmp extends BaseCmp {\r\n @ViewChild('uploadImage') uploadImage: UploadImage;\r\n @Input(\"selectedId\") selectedId;\r\n @Input(\"autoCompleteWidth\") autoCompleteWidth=\"100%\";\r\n @Input(\"presidentUserId\") presidentUserId = \"\";\r\n @Input(\"entityName\") entityName: string;\r\n public isSubscribed: boolean = true;\r\n imageURL: string = '';\r\n stampUrl: string;\r\n stamps: AnnotationDto[];\r\n isBusy: boolean = true;\r\n IsCommittee: boolean = false;\r\n constructor(\r\n public route: ActivatedRoute,\r\n public router: Router,\r\n public toaster: ToastrService,\r\n public dialogs: DialogManager,\r\n public stampsSvc: StampsSvc,\r\n public msgs: MessagingService,\r\n \r\n ) {\r\n super();\r\n\r\n }\r\n addStamp(): void {\r\n this.uploadImage.show({ PhotoVersion: 0 })\r\n }\r\n ngSuperOnInit() {\r\n var me = this;\r\n me.GetEntityStamps();\r\n this.msgs.subscribe(\"updateAuthorizedStampUsers\", data => {\r\n if (data) {\r\n this.GetEntityStamps();\r\n }\r\n });\r\n \r\n }\r\n\r\n GetEntityStamps() {\r\n let me = this;\r\n me.isBusy = true;\r\n if (me.selectedId != null) {\r\n me.stampsSvc.getAllStamp(me.selectedId,true)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.isBusy = false;\r\n me.stamps = data;\r\n me.stamps.map(item => {\r\n let objectURL = 'data:image/png;base64,' + item.ImageData;\r\n item.ImageUrl = objectURL;\r\n });\r\n },\r\n error => {\r\n me.toaster.error(BERRY.loc.common.errorMessage);\r\n me.isBusy = false;\r\n }\r\n );\r\n }\r\n }\r\n\r\n userEntityAutoComplete = {\r\n serviceQueryParameterName: \"kw\",\r\n serviceMethod: \"GET\",\r\n serviceUrl: `${BERRY.hostName}api/stamps/GetUserEntity`,\r\n height: 200,\r\n serviceDataSchema: \"\",\r\n dataTextField: \"value\",\r\n autoBind: false,\r\n template: \"#: data.number # - #: data.value #\",\r\n };\r\n\r\n addStampUser(user, stamp: AnnotationDto) {\r\n let me = this;\r\n if (!user) return;\r\n var data: AuthorizedAnnotationUserDto = {\r\n AnnotationId: stamp.Id,\r\n EmployeeNumber: user.number,\r\n UserId: user.dbid,\r\n EmployeeName: user.value,\r\n EntityName: this.entityName,\r\n IsCommittee : this.IsCommittee\r\n };\r\n if (me.selectedId != null) {\r\n var isUserAddedToStamp = stamp.AuthorizedAnnotationUsers.some(AuthorUser => AuthorUser.UserId === data.UserId);\r\n if (isUserAddedToStamp) {\r\n me.toaster.error(this.getText(\"AuthorizedUseralreadyExist\", \"Stamp\"));\r\n\r\n me.ClearComboBox(`ddlUserInEntity${stamp.Id}`);\r\n return;\r\n }\r\n me.stampsSvc.addStampUser(data)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe((data: AuthorizedAnnotationUserDto) => {\r\n me.toaster.success(BERRY.loc.common.successMessage);\r\n me.ClearComboBox(`ddlUserInEntity${stamp.Id}`);\r\n me.stamps.map(el => el.Id == stamp.Id ? el.AuthorizedAnnotationUsers.push(data) : el);\r\n },\r\n error => {\r\n me.toaster.error(BERRY.loc.common.errorMessage);\r\n me.ClearComboBox(`ddlUserInEntity${stamp.Id}`);\r\n }\r\n );\r\n }\r\n }\r\n\r\n deleteAuthorizedUser(data: AuthorizedAnnotationUserDto, ndx: number) {\r\n let me = this;\r\n if (me.selectedId != null) {\r\n\r\n this.dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n this.getText(\"DeleteAuthorizedUserConfirmation\", \"Stamp\"),\r\n this.getText(\"DeleteConfirmationTitle\", \"Stamp\"),\r\n this.getText(\"Yes\", \"_common\"),\r\n this.getText(\"No\", \"_common\")\r\n );\r\n dialog.show(options, result => {\r\n if (result === ConfirmationBoxResult.Yes) {\r\n me.stampsSvc.deleteStampUsers(data.Id, data.AnnotationId, data.UserId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(response => {\r\n me.toaster.success(BERRY.loc.common.successMessage);\r\n me.stamps.forEach(el => el.Id == data.AnnotationId ? el.AuthorizedAnnotationUsers.splice(ndx,1) : el);\r\n },\r\n error => {\r\n me.toaster.error(BERRY.loc.common.errorMessage);\r\n }\r\n );\r\n }\r\n });\r\n }\r\n });\r\n \r\n }\r\n }\r\n\r\n ngSuperAfterViewInit() { }\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n deleteStamp(id: Number) {\r\n var me = this;\r\n\r\n this.dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n this.getText(\"DeleteConfirmation\", \"Stamp\"),\r\n this.getText(\"DeleteConfirmationTitle\", \"Stamp\"),\r\n this.getText(\"Yes\", \"_common\"),\r\n this.getText(\"No\", \"_common\")\r\n );\r\n dialog.show(options, result => {\r\n if (result === ConfirmationBoxResult.Yes) {\r\n me.stampsSvc.deleteStamp(id).pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.toaster.success(BERRY.loc.common.successMessage);\r\n me.GetEntityStamps();\r\n },\r\n error => {\r\n me.toaster.error(BERRY.loc.common.errorMessage);\r\n }\r\n );\r\n }\r\n });\r\n }\r\n });\r\n }\r\n reloadStamps() {\r\n this.GetEntityStamps();\r\n }\r\n edit(stamp: AnnotationDto) {\r\n var me = this;\r\n me.imageURL = stamp.ImageUrl;\r\n this.uploadImage.imageURL = stamp.ImageUrl;\r\n this.uploadImage._url = \"api/stamps/ModifyStamp\";\r\n this.uploadImage.Id = stamp.Id;\r\n this.uploadImage.show({ PhotoVersion: 1 });\r\n }\r\n\r\n private ClearComboBox(id) {\r\n var userEntityAutoComplete: any = document.getElementById(id);\r\n userEntityAutoComplete.value = \"\";\r\n userEntityAutoComplete.text = \"\";\r\n $(`#${id}`).data(\"kendoAutoComplete\").value('')\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Response } from \"@angular/http\";\r\nimport { Observable } from \"rxjs\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { throwError } from \"rxjs\";\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\nimport { HttpInterceptor } from \"../../services/http-interceptor\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class StampsSvc {\r\n baseURL = BERRY.hostName + \"api/stamps\"; // URL to web API\r\n\r\n constructor(public http: HttpInterceptor) { }\r\n\r\n public getAllStamp(referenceId: string, isAdminPage = false): Observable {\r\n return this.http.get(this.baseURL + \"/GetAll\" + \"?referenceId=\" + referenceId + \"&isAdminPage=\"+isAdminPage).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public getStampById(stampId): Observable {\r\n return this.http.get(this.baseURL + \"/GetStamp\" + \"?id=\" + stampId).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public modifyStamp(data): Observable {\r\n return this.http.post(this.baseURL + \"/ModifyStamp\", data).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public createStamp(data): Observable {\r\n return this.http.post(this.baseURL + \"/CreateStamp\", data).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public deleteStamp(id: Number): Observable {\r\n return this.http.delete(this.baseURL + \"/RemoveStamp?Id=\" + id).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public getStampUsers(stampId): Observable {\r\n return this.http\r\n .get(this.baseURL + \"/get-stamp-users\" + \"?stampId=\" + stampId)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public addStampUser(data): Observable {\r\n return this.http.post(this.baseURL + \"/AddAuthorizedStampUser\", data).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public deleteStampUsers(authorizedAnnotationId, stampId, userId): Observable {\r\n return this.http\r\n .delete(\r\n this.baseURL + \"/RemoveAuthorizedStampUser?authorizedAnnotationId=\" + authorizedAnnotationId + \"&stampId=\" + stampId\r\n + \"&userId=\" + userId\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n extractData(res: Response) {\r\n let body = res;\r\n return body || {};\r\n }\r\n handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n return throwError(errMsg);\r\n }\r\n}\r\n","\r\nimport { throwError as observableThrowError, Observable } from 'rxjs';\r\n\r\nimport { catchError, map } from 'rxjs/operators';\r\nimport { HttpInterceptor } from \"../../../_common/services/http-interceptor\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../../../_common/models/IGlobalSettings\";\r\nimport { Response } from \"@angular/http\";\r\nimport { CorrespondenceSortTypeEnum } from \"../../../berry/correspondences/_models/enums/CorrespondenceSortType\";\r\nimport { BaseService } from '../../services/baseService';\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class UserProfileSvc extends BaseService {\r\n\r\n public baseURL: string = BERRY.hostName + \"api/UserSyncAccountApi\";\r\n public applicationURL = BERRY.hostName + \"api/CorrespondenceApi\";\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n GetUserProfile(): any {\r\n return this.http\r\n .get(`${BERRY.hostName}api/users-api/profile`).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n checkIfClientHasMeetingModule(): Observable {\r\n let url = `${this.baseURL}/CheckIfClientHasMeetingModule`;\r\n return this.http.get(url);\r\n }\r\n\r\n checkIfClientHasCorrespondenceModule(): Observable {\r\n let url = `${this.baseURL}/CheckIfClientHasCorrespondenceModule`;\r\n return this.http.get(url);\r\n }\r\n\r\n\r\n\r\n\r\n public updatePassword(addedUserSyncAccountDto: any): Observable {\r\n let url = this.baseURL + \"/UpdatePassword\";\r\n return this.http.post(url, addedUserSyncAccountDto);\r\n }\r\n\r\n public addUserSyncAccount(addedUserSyncAccountDto: any): Observable {\r\n let url = this.baseURL + \"/SaveUserSyncAccount\";\r\n return this.http.post(url, addedUserSyncAccountDto);\r\n }\r\n\r\n public validateAccount(AccountEmail: string, AccountPassword: string): Observable {\r\n var me = this;\r\n let url = `${this.baseURL}/ValidateAccount?AccountEmail=${AccountEmail}&AccountPassword=${AccountPassword}`;\r\n return me.http.get(url);\r\n }\r\n\r\n public cancelAddUserSyncAccount(token: any): Observable {\r\n let url = `${this.baseURL}/CancelAddUserSyncAccount?token=${token}`;\r\n return this.http.post(url, token);\r\n }\r\n\r\n public generateOutlookAuthenticationURL(): Observable {\r\n var me = this;\r\n let url = me.baseURL + \"/GenerateOutlookAuthenticationURL\";\r\n return me.http.get(url).pipe(map(me.extractData), catchError(me.handleError),);\r\n }\r\n\r\n public generateGoogleAuthenticationURL(): Observable {\r\n var me = this;\r\n let url = me.baseURL + \"/GenerateGoogleAuthenticationURL\";\r\n return me.http.get(url).pipe(map(me.extractData), catchError(me.handleError),);\r\n }\r\n\r\n public getMicrosoftAuthenticationConfigs(SyncAccountTypeEnum): Observable {\r\n var me = this;\r\n let url = `${this.baseURL}/getMicrosoftAuthenticationConfigs?SyncAccountType=${SyncAccountTypeEnum}`;\r\n return me.http.get(url).pipe(map(me.extractData), catchError(me.handleError),);\r\n }\r\n\r\n getUserSyncAccount(UserId): Observable {\r\n let url = `${this.baseURL}/GetUserSyncAccount?UserId=${UserId}`;\r\n return this.http.get(url);\r\n }\r\n\r\n public insertEvents(UserId, AccountEmail): Observable {\r\n var me = this;\r\n let url = `${this.baseURL}/InsertEvents?UserId=${UserId}&AccountEmail=${AccountEmail}`;\r\n return me.http.post(url, null).pipe(\r\n map(me.extractData),\r\n catchError(me.handleError));\r\n }\r\n\r\n public deleteUserSyncAccount(Id: any): Observable {\r\n let url = `${this.baseURL}/DeleteUserSyncAccount?Id=${Id}`;\r\n return this.http.post(url, Id);\r\n }\r\n\r\n public AddFollowupUser(id) {\r\n var url = BERRY.hostName + \"Common/Components/AddFollowupUser?id=\" + id;\r\n return this.http\r\n .post(url, null)\r\n .pipe(map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n public RemoveFollowupUser(user) {\r\n var userId = user[0].Id;\r\n var url = BERRY.hostName + \"Common/Components/DeleteFollowupUser?id=\" + userId;\r\n return this.http\r\n .post(url, null)\r\n .pipe(map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n public GetFollowupUsers() {\r\n return this.http\r\n .get(BERRY.hostName + \"Common/Components/GetFollowupUsers\").pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n public GetAttachmentTypesForProfile(): any {\r\n return this.http\r\n .get(`${BERRY.hostName}api/AttachmentsGroups/AttachmentTypes`).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n GetTimeZones(): Observable {\r\n const me = this;\r\n let url = `${BERRY.hostName}api/users-api/GetTimeZones`;\r\n\r\n return me.http.get(url).pipe(\r\n map(me.extractData),\r\n catchError(me.handleError));\r\n }\r\n\r\n SetTimeZone(key: any): any {\r\n const me = this;\r\n let url = `${BERRY.hostName}api/users-api/SetTimeZone`;\r\n\r\n return me.http.post(url, { key: key }).pipe(\r\n map(me.extractData),\r\n catchError(me.handleError));\r\n }\r\n\r\n saveCorrSortType(type: CorrespondenceSortTypeEnum) {\r\n const me = this;\r\n let url = `${BERRY.hostName}api/users-api/SaveCorrSortType?type=${type}`;\r\n return me.http.post(url, null).pipe(\r\n map(me.extractData),\r\n catchError(me.handleError));\r\n }\r\n EditForwardingUser(dto) {\r\n return super.post(\r\n this.applicationURL + \"/EditForwardingUserSettings\",\r\n dto\r\n );\r\n }\r\n\r\n GetForwardingUser() {\r\n return super.get(\r\n this.applicationURL + \"/GetForwardingUserSettings\"\r\n );\r\n }\r\n\r\n GetUserPreferences(): any {\r\n return this.http\r\n .get(`${BERRY.hostName}api/users-api/user-preferences`).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n SaveUserFilterSearchCriteria(key: string, value: string) {\r\n let url = BERRY.hostName + \"api/users-api/SaveUserFilterSearchCriteria?key=\" + key;\r\n return this.http.post(url, value).pipe(map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n SetUserPreferences(key, value) {\r\n let url = BERRY.hostName + \"api/users-api/SetUserPreferences?key=\" + key + \"&value=\" + value;\r\n return this.http.post(url, \"\").pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n GetUserPreferencesByKey(key): Observable {\r\n let url = BERRY.hostName + \"api/users-api/GetUserPreferencesByKey?key=\" + key;\r\n return this.http.get(url);\r\n }\r\n ShowOrHideUserNotificationInformativeMessage(userId): Observable {\r\n let url = BERRY.hostName + \"api/users-api/GetShowUserNotificationInformativeMessageSetting\";\r\n if (userId != null)\r\n url += \"?userId=\" + userId\r\n return super.get(url, \"application/json\", false);\r\n }\r\n\r\n SetShowUserNotificationInformativeMessageSetting(showInformativeMessage, userId = null): Observable {\r\n\r\n let param = {\r\n UserId: userId,\r\n ShowInformativeMessage: showInformativeMessage\r\n };\r\n let url = BERRY.hostName + \"api/users-api/SetShowUserNotificationInformativeMessageSetting\";\r\n return super.post(url, param);\r\n }\r\n\r\n isCommitteeManager(): Observable {\r\n return super.get(`${BERRY.hostName}api/users-api/IsCommitteeManager`);\r\n }\r\n\r\n extractData(res: Response) {\r\n let body = res;\r\n return body || {};\r\n }\r\n handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n return observableThrowError(errMsg);\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 {{getText('AuditTrailVisible', 'AuditTrail')}}\r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n {{getText('AuditTrailTable', 'AuditTrail')}}\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 {{getText('User', 'ArchiveFolderManagment')}}\r\n \r\n
    \r\n \r\n \r\n\r\n
    \r\n\r\n
    \r\n\r\n \r\n {{getText('Action', 'AuditTrail')}}\r\n \r\n
    \r\n \r\n \r\n\r\n
    \r\n\r\n
    \r\n\r\n \r\n {{getText('ActionDetails', 'AuditTrail')}}\r\n \r\n\r\n\r\n \r\n\r\n \r\n {{getText('Notification.Date', 'AuditDesc')}}\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n {{item.ActualUserDetail?.ShortName}} \r\n \r\n {{getText(\"Onbehalfof\", \"AuditTrail/GenericTemplate\")}} \r\n \r\n \r\n \r\n {{item.UserDetail?.ShortName}}\r\n \r\n
    \r\n
    \r\n {{item.ChangeDescription}}\r\n \r\n

    \r\n

    \r\n \r\n {{getText('AppClientType', 'AuditTrailAppClientType')}} {{item.AppClientTypeName}}\r\n \r\n

    \r\n
    \r\n {{item.AuditTrailDateFormatted}}\r\n
    \r\n\r\n
    0 && toggleTableOrVisible\">\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    \r\n {{getText('AuditTrail', 'CSHTML/AuditTrail/Index')}}\r\n

    \r\n
    \r\n
    \r\n
    \r\n {{ item.ChangeDate }}\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 {{item.ActualUserDetail?.ShortName}} \r\n \r\n {{getText(\"Onbehalfof\", \"AuditTrail/GenericTemplate\")}} \r\n \r\n \r\n {{item.UserDetail?.ShortName}}\r\n \r\n
    \r\n\r\n

    {{getText('UserAddress', 'CSHTML/AuditTrail/Index')}}: {{item.MachineIPAddress}}

    \r\n\r\n

    {{item.AuditTrailDateFormatted}}

    \r\n\r\n
    \r\n

    {{item.ChangeDescription}}

    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n \r\n

    \r\n

    \r\n \r\n {{getText('AppClientType', 'AuditTrailAppClientType')}} {{item.AppClientTypeName}}\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
    {{getText('NoData', 'CSHTML/Areas/Archives/Common/SearchFilters/Search')}}
    \r\n
    \r\n
    \r\n\r\n
    0 && total > PageSize\">\r\n \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\r\nimport { BaseCmp } from '../BaseComponent';\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from '../../models/IGlobalSettings';\r\nimport { EntityNameTypesEnum } from './audittraillist.models';\r\nimport { AuditTrailListSvc } from './audittraillist.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { IComboboxOptions, IComboboxServerDatasourceOptions, kendoCombobox } from '../../directives/KendoUI-wrappers/kendo-combobox';\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: 'audittrail-list',\r\n templateUrl: './audittraillist.component.html',\r\n styleUrls: ['./audittraillist.component.scss']\r\n})\r\nexport class AudittraillistComponent extends BaseCmp {\r\n\r\n isBusy = false;\r\n isSubscribed = true;\r\n totalDataCount: number;\r\n total = 0;\r\n SelectedPage = 1;\r\n paginateOptions = {\r\n id: \"auditTrialPagination\",\r\n itemsPerPage: BERRY.PageSize,\r\n currentPage: 1,\r\n totalItems: 0\r\n };\r\n entities = [];\r\n\r\n \r\n get isDbAuditEnabled() {\r\n return BERRY.appSettings.keys.IsDbAuditEnabled;\r\n }\r\n\r\n get isLegacyAuditEnabled() {\r\n return BERRY.appSettings.keys.IsLegacyAuditEnabled;\r\n }\r\n\r\n get isShowBothAuditsUI() {\r\n return (\r\n BERRY.appSettings.keys.ShowLegacyAndNewAuditsUI &&\r\n (BERRY.appSettings.keys.IsDbAuditEnabled || BERRY.appSettings.keys.IsLegacyAuditEnabled)\r\n );\r\n }\r\n\r\n @Input('entityNameType')\r\n entityNameType: EntityNameTypesEnum;\r\n toggleTableOrVisible: boolean = true;\r\n \r\n\r\n @Input()\r\n pkValue: string;\r\n\r\n ngSuperOnInit() {\r\n \r\n }\r\n ngSuperAfterViewInit() { }\r\n\r\n constructor(public svc: AuditTrailListSvc, public toastr: ToastrService) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.getPage(1);\r\n }\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n AuditTrailType = null;\r\n UserSearch = null;\r\n @ViewChild(\"cboxAuditTrailType\", { read: kendoCombobox })\r\n cboxAuditTrailType: kendoCombobox;\r\n GetNewAuditTrailDate(pageId) {\r\n const params = {\r\n EntityNameType: this.entityNameType,\r\n MainPkValue: this.pkValue.toString(),\r\n PageId: pageId,\r\n PageSize: this.PageSize,\r\n UserSearch: this.UserSearch != \"\" && this.UserSearch != null\r\n ? this.UserSearch.UserId\r\n : null,\r\n IsAsc: this.isAsc,\r\n AuditTrailTemplate: this.AuditTrailType != null ? this.AuditTrailType.Id : null,\r\n From: this.toDate,\r\n OrderByColumn: 1\r\n }\r\n const me = this;\r\n me.isBusy = true;\r\n me.svc.getNewAuditTrailDate(params)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.isBusy = false;\r\n this.entities = data.Page;\r\n this.total = data.TotalRecords;\r\n }, err => {\r\n me.isBusy = false;\r\n this.entities = [];\r\n this.total = 0;\r\n console.error(err);\r\n });\r\n }\r\n maxDateOptions = {\r\n maxDate: 0\r\n };\r\n Reset() {\r\n const me = this;\r\n me.AuditTrailType = null;\r\n me.UserSearch = null;\r\n me.isAsc = false;\r\n me.toDate = null;\r\n me.column = null;\r\n this.toggleTableOrVisible = true;\r\n this.GetNewAuditTrailDate(this.SelectedPage);\r\n }\r\n OrderByAsc(isAsc) {\r\n this.isAsc = isAsc;\r\n this.GetNewAuditTrailDate(this.SelectedPage);\r\n }\r\n\r\n getPage(PageId) {\r\n this.SelectedPage = PageId;\r\n this.GetNewAuditTrailDate(PageId);\r\n }\r\n \r\n isAsc: boolean = false;\r\n toDate: null;\r\n column: 'Date';\r\n autocompleteDefaultOptions: IComboboxOptions = {\r\n allowFreeText: false,\r\n multiselect: false,\r\n autoBind: true\r\n };\r\n comboBoxServerSearchDatasourceDefaultOptions: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"get\",\r\n resultsField: \"\",\r\n searchField: \"kw\"\r\n };\r\n NewAuditTrailTypeAutocompleteOption: IComboboxOptions = Object.assign(\r\n {},\r\n this.autocompleteDefaultOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.comboBoxServerSearchDatasourceDefaultOptions,\r\n {\r\n url:\r\n BERRY.hostName +\r\n \"api/AuditTrailApi/AutoComplateAuditrailTemplat?enableNewAudit=true\"\r\n }\r\n ),\r\n dataTextField: \"Title\",\r\n dataValueField: \"Id\",\r\n allowFreeText: false,\r\n autoBind: false\r\n }\r\n );\r\n UserAutocompleteOption: IComboboxOptions = Object.assign(\r\n {},\r\n this.autocompleteDefaultOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.comboBoxServerSearchDatasourceDefaultOptions,\r\n {\r\n url:\r\n BERRY.hostName + \"api/AuditTrailApi/AutoComplateUser\"\r\n }\r\n ),\r\n dataTextField: \"UserName\",\r\n dataValueField: \"UserId\",\r\n allowFreeText: false,\r\n autoBind: false\r\n }\r\n );\r\n\r\n exportingInProgress: boolean = false;\r\n @ViewChild(\"exportingDropdown\") exportingDropdown: ElementRef;\r\n Export(exportType: string) {\r\n const me = this;\r\n me.exportingInProgress = true;\r\n\r\n if (exportType !== \"\") {\r\n let exportActionName: string;\r\n\r\n switch (exportType) {\r\n case \"word\":\r\n exportActionName = \"GenerateWord/\";\r\n break;\r\n default:\r\n return;\r\n }\r\n\r\n const url = BERRY.hostName + \"api/AuditTrailApi/\" + exportActionName;\r\n const params = {\r\n EntityNameType: this.entityNameType,\r\n MainPkValue: this.pkValue,\r\n PageId: this.SelectedPage,\r\n PageSize: this.PageSize,\r\n UserSearch: this.UserSearch != \"\" && this.UserSearch != null\r\n ? this.UserSearch.UserId\r\n : null,\r\n IsAsc: this.isAsc,\r\n AuditTrailTemplate: this.AuditTrailType != null ? this.AuditTrailType.Id : null,\r\n From: this.toDate,\r\n OrderByColumn: 1\r\n };\r\n\r\n this.svc.doPost(url, params)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n data => {\r\n me.toastr.success(me.getText('RequestedReportMessage', 'DeliveryReports'));\r\n me.exportingInProgress = false;\r\n },\r\n err => {\r\n me.exportingInProgress = false;\r\n }\r\n );\r\n }\r\n }\r\n}","import { UserDto } from '../../models/User-dto';\r\n\r\nexport enum EntityNameTypesEnum {\r\n Correspondence = 0,\r\n ScheduleItem = 1,\r\n Entity = 2,\r\n ArchiveItem = 3,\r\n Announcement = 4,\r\n Initiative = 5,\r\n CaseFile = \"CaseFile\",\r\n Proclamation = \"Proclamation\"\r\n}\r\n\r\nexport enum AppClientTypes {\r\n None,\r\n Mobile,\r\n Web\r\n}\r\n\r\nexport class AuditTrailDTO {\r\n public Id: number;\r\n public ChangeDescription: string;\r\n public UserId: string;\r\n public UserDetail: UserDto;\r\n public Message: string;\r\n public ChangeDate: string;\r\n public AuditTrailDate: any;\r\n public MachineIPAddress: string;\r\n public AppClientType: AppClientTypes;\r\n public AppClientTypeName: string;\r\n}","import { NgModule } from \"@angular/core\";\r\nimport { AudittraillistComponent } from './audittraillist.component';\r\nimport { SharedModule } from \"../../../shared/shared.module\";\r\nimport { AuditTrailListSvc } from \"./audittraillist.service\";\r\n\r\n@NgModule({\r\n imports: [\r\n SharedModule\r\n ],\r\n declarations: [\r\n AudittraillistComponent\r\n ],\r\n exports: [\r\n AudittraillistComponent\r\n ],\r\n providers: [\r\n AuditTrailListSvc\r\n ]\r\n})\r\nexport class AudittraillistModule { }","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { IGlobalSettings } from \"../../../_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"../../../_common/services/baseService\";\r\nimport { HttpInterceptor } from \"../../../_common/services/http-interceptor\";\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class AuditTrailListSvc extends BaseService {\r\n\r\n readonly baseUrl = BERRY.hostName + \"api/AuditTrailApi/\";\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n public getNewAuditTrailDate(params): Observable {\r\n return this.http.post(`${this.baseUrl}AuditrailLogs`, params);\r\n }\r\n}","export enum RequestMethod {\r\n Get = \"GET\",\r\n Post = \"POST\",\r\n}","import { AfterViewInit, ChangeDetectorRef, ContentChild, Directive, EventEmitter, Input, OnChanges, OnDestroy, Output, SimpleChanges, TemplateRef, ViewChild } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { BaseCmp } from \"../BaseComponent\";\r\nimport { RequestMethod } from \"./enums/request-method.enum\";\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\nimport { Observable, throwError } from \"rxjs\";\r\nimport { NgSelectComponent } from \"@ng-select/ng-select\";\r\ndeclare var BERRY: IGlobalSettings\r\n\r\n \r\n\r\n@Directive()\r\nexport abstract class BerryDropdownComponent extends BaseCmp implements OnDestroy, OnChanges {\r\n searchTerm: string = '';\r\n selectedValue: any;\r\n emptyList: boolean = false;\r\n loading: boolean = false;\r\n @Input('serverDataSource') url?: any;\r\n @Input() datasource: Array = [];\r\n @Input() initialDatasource: Array = [];\r\n @Input('appendTo') appendTo: string = null;\r\n @Input() dataTextField: string = 'text';\r\n @Input() dataValueField: string = 'value';\r\n @Input() displayTemplate: string | ((arg: any) => any) | null = null;\r\n @Input() placeholder: string | null = null;\r\n @Input() noDataTemplate: string | ((arg: any) => any) | null = BERRY?.loc?.kendoLocalization?.NoData;\r\n @Input() multiselect: boolean = true;\r\n @Input() minLength: number = 0;\r\n @Input() ngModelValue: any;\r\n @Input() dataSourceRequestMethod: RequestMethod = RequestMethod.Post\r\n @Input() dataSourceRequestMethodBody: any;\r\n @Input() notFoundText: string = this.getText('NoUserType', 'General');\r\n @Input() searchField: string = '';\r\n @Input() allowQueryParams:boolean = false; //If this property is set to true, by default the fielf you are searching for is the dataTextField, unless searchField is provided. \r\n @Input('data-automation-id') dataAutomationId: string = ''\r\n @Output('onChange') onChangeEmmiter: EventEmitter = new EventEmitter();\r\n @Output('onSearchChange') onSearchChangeEmmiter: EventEmitter = new EventEmitter();\r\n @Input() clearAllText: string = this.getText('Clear', 'kendoLocalization')\r\n @ContentChild('labelTemplate') labelTemplate: TemplateRef;\r\n @ContentChild('optionTemplate') optionTemplate: TemplateRef;\r\n @ContentChild('groupByTemplate') groupByTemplate: TemplateRef;\r\n @Output('onAddExternal') onAddExternalEmitter: EventEmitter = new EventEmitter();\r\n @Input('allowExternalAdd') allowExternalAdd: boolean = false;\r\n @ViewChild('select') select: NgSelectComponent\r\n @Input('groupBy') groupBy:string= null;\r\n disableSelect:boolean = false;\r\n @Input('disabled') set disabled(value: boolean) {\r\n this.setDisabledState(value)\r\n }\r\n @Input('isAPIHasLimit') isAPIHasLimit:boolean = false;\r\n\r\n @Input('extraSearchFields') set extraSearchFields(val: any) {\r\n if (val) {\r\n this._extraSearchField = val;\r\n }\r\n }\r\n\r\n @Input('externalQuery') set externalQuery(val:any){\r\n if(val)\r\n this._externalQueryValue = val;\r\n }\r\n\r\n _externalQueryValue:string = null;\r\n _extraSearchField:string = null;\r\n constructor(private http: HttpClient,private cdr:ChangeDetectorRef) {\r\n super();\r\n }\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.disableSelect = changes['disabled']?.currentValue; \r\n this.fetchData()\r\n }\r\n\r\n fetchData() {\r\n if (!this.url) return\r\n if(!!this.disabled)\r\n this.loading = true;\r\n const baseURL = BERRY.hostName;\r\n let dataSoruce$: Observable = new Observable();\r\n const searchField = this.searchField || this.dataTextField;\r\n let query;\r\n if (this._externalQueryValue)\r\n query = this.allowQueryParams && this._externalQueryValue ? `?${searchField}=${this._externalQueryValue}` : '';\r\n else\r\n query = this.allowQueryParams && this.searchTerm? `?${searchField}=${this.searchTerm}`: ''\r\n \r\n\r\n switch (this.dataSourceRequestMethod) {\r\n case RequestMethod.Get:\r\n dataSoruce$ = this.http.get(baseURL + this.url + query)\r\n break;\r\n case RequestMethod.Post:\r\n dataSoruce$ = this.http.post(baseURL + this.url, {\r\n ...this.dataSourceRequestMethodBody,\r\n [this.searchField || this.dataTextField]: this.searchTerm\r\n });\r\n break;\r\n default:\r\n break;\r\n }\r\n dataSoruce$.subscribe((data: any) => {\r\n if (this.initialDatasource.length) {\r\n this.datasource = [...this.initialDatasource, ...data];\r\n this.initialDatasource = [];\r\n\r\n } else {\r\n this.datasource = data;\r\n }\r\n\r\n this.loading = false;\r\n });\r\n }\r\n\r\n ngSuperOnInit() {\r\n // this.select.clearModel();\r\n this.checkDataAutomationId()\r\n }\r\n\r\n ngSuperAfterViewInit() {\r\n this.fetchData();\r\n if(!this.isAPIHasLimit){\r\n this.select.selectedItems.filter(item1=>this.datasource.some(item2=>item1.value[this.dataValueField]==item2[this.dataValueField]))\r\n }\r\n if(!!this._extraSearchField && !!this.select){\r\n this.select.searchFn = (items,selected)=> {\r\n return selected?.[this._extraSearchField].toLocaleLowerCase().includes(items.toLocaleLowerCase()) || selected?.[this.dataTextField].toLocaleLowerCase().includes(items.toLocaleLowerCase())\r\n }\r\n }\r\n // this.select.ngOnDestroy = () => {\r\n // //ng-select model not being cleared after closing popup, the problem is caused by popup component :) to do abdullah.\r\n // this.select.clearModel();\r\n // this.select.handleClearClick()\r\n // }\r\n }\r\n\r\n onSearchChange(event) {\r\n this.searchTerm = event.term.trim();\r\n this.fetchData();\r\n this.onSearchChangeEmmiter.emit(event)\r\n if (!event.items.length && this.allowExternalAdd) {\r\n this.constructNoDataFound();\r\n }\r\n }\r\n\r\n constructNoDataFound() {\r\n setTimeout(() => {\r\n if (!!document.querySelector('.ng-option-disabled')) {\r\n document.querySelector('.ng-option-disabled').innerHTML = ''\r\n this.emptyList = true\r\n const createButton = document.createElement('button')\r\n createButton.setAttribute('class', 'btn btn-primary btn-lng')\r\n const createNoDataFoundText = document.createElement('div');\r\n createNoDataFoundText.innerText = this.getText('NoUserType', 'General')\r\n createButton.innerText = 'اضافة شخص'\r\n createButton.addEventListener('click', (ev) => { this.onAddExternalEmitter.emit(true); this.select.close() }, false)\r\n document.querySelector('.ng-option-disabled').appendChild(createNoDataFoundText);\r\n document.querySelector('.ng-option-disabled').appendChild(createButton);\r\n }\r\n }, 350);\r\n }\r\n\r\n onSelectionChange(event: any) {\r\n this.selectedValue = event;\r\n this.onChangeEmmiter.emit(event);\r\n this.onChangeCallback(this.selectedValue);\r\n this.searchTerm = null;\r\n this.fetchData();\r\n }\r\n\r\n checkDataAutomationId() {\r\n if (!this.dataAutomationId) {\r\n throwError('Please consider adding data automation id')\r\n }\r\n }\r\n registerOnChange(fn: any): void {\r\n this.onChangeCallback = fn;\r\n\r\n\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouchedCallback = fn;\r\n }\r\n\r\n setDisabledState(isDisabled: boolean): void {\r\n this.disableSelect = isDisabled;\r\n // this.cdr.detectChanges()\r\n }\r\n\r\n writeValue(val: any): void {\r\n this.selectedValue = val;\r\n }\r\n\r\n onClear($event) {\r\n this.searchTerm = null;\r\n this.fetchData(); \r\n }\r\n\r\n buildQueryParam(): string {\r\n if(this.searchTerm)\r\n return `${this.searchField}=${this.searchTerm}`\r\n return `${this.searchField}`\r\n }\r\n private onChangeCallback = (_: any) => { };\r\n private onTouchedCallback = () => { };\r\n\r\n onOpenList(): void {\r\n var divElements = document.querySelectorAll('div, body, form');\r\n const me = this;\r\n divElements.forEach((div) => {\r\n div.addEventListener('scroll', me.closeList.bind(me));\r\n });\r\n }\r\n\r\n onCloseList(): void {\r\n var divElements = document.querySelectorAll('div, body, form');\r\n const me = this;\r\n divElements.forEach((div) => {\r\n div.removeEventListener('scroll', me.closeList.bind(me));\r\n });\r\n }\r\n\r\n closeList(): void {\r\n this.select.close();\r\n }\r\n\r\n ngOnDestroy() {\r\n // this.select.handleClearClick(); to be implemented\r\n }\r\n}","\r\n\r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n\r\n","import { Component, OnChanges } from \"@angular/core\";\r\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\r\nimport { BerryDropdownComponent } from \"../../berry-dropdown.component\";\r\n\r\n@Component({\r\n selector: \"berry-dropdown-multi-select\",\r\n templateUrl: \"./multi-select.component.html\",\r\n styleUrls: ['./multi-select.component.scss'],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: BerryDropdownMultiSelectComponent,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class BerryDropdownMultiSelectComponent extends BerryDropdownComponent{\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// import { Component, OnChanges, ViewChild } from \"@angular/core\";\r\n// import { ControlValueAccessor, NG_VALUE_ACCESSOR } from \"@angular/forms\";\r\n\r\n// import { NgSelectComponent } from \"@ng-select/ng-select\";\r\n// import { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\n// import { BerryDropdownComponent } from \"../../berry-dropdown.component\";\r\n// declare var BERRY: IGlobalSettings\r\n\r\n// @Component({\r\n// selector: \"berry-dropdown-multi-select\",\r\n// templateUrl: \"./multi-select.component.html\",\r\n// styleUrls: ['./multi-select.component.scss'],\r\n// providers: [\r\n// {\r\n// provide: NG_VALUE_ACCESSOR,\r\n// useExisting: BerryDropdownMultiSelectComponent,\r\n// multi: true,\r\n// },\r\n// ],\r\n// })\r\n// export class BerryDropdownMultiSelectComponent implements ControlValueAccessor {\r\n// value: string;\r\n\r\n// disabled = false;\r\n \r\n// private valueChanges ;\r\n \r\n// private touches;\r\n \r\n// registerOnChange(fn: any) {\r\n// this.valueChanges=fn\r\n// }\r\n \r\n// registerOnTouched(fn: any) {\r\n// this.touches.subscribe(fn);\r\n// }\r\n \r\n// setDisabledState(isDisabled: boolean) {\r\n// this.disabled = isDisabled;\r\n// }\r\n \r\n// writeValue(value: string) {\r\n// this.value = value;\r\n// }\r\n \r\n// updateValue(value: string) {\r\n// this.value = value;\r\n// this.valueChanges.next(value);\r\n// }\r\n \r\n// touch() {\r\n// this.touches.next();\r\n// }\r\n\r\n// x(){\r\n// this.value\r\n// this.valueChanges(this.value)\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 {{!!getValue(item.unread)?getValue(item.unread):getValue(item.number)}}\r\n
    \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    {{item.text}}
    \r\n\r\n
    \r\n
    \r\n {{checkCounteMoreThanOneHundred(getValue(item.unread))}} \r\n
    \r\n {{getValue(item.number)}}\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 {{item.text}}\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
    {{item.text}}
    \r\n
    \r\n
    \r\n {{checkCounteMoreThanOneHundred(getValue(item.unread))}} \r\n
    \r\n {{getValue(item.number)}}\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n {{item.text}}\r\n
    \r\n\r\n
    1\">\r\n \r\n
    \r\n
    \r\n\r\n
    {{subItem.text}}
    \r\n\r\n
    \r\n
    \r\n {{checkCounteMoreThanOneHundred(getValue(subItem.unread))}} \r\n
    \r\n {{getValue(subItem.number)}}\r\n
    \r\n\r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    {{subChild.text}}
    \r\n \r\n
    \r\n
    \r\n {{checkCounteMoreThanOneHundred(getValue(subChild.unread))}}\r\n
    \r\n {{getValue(subChild.number)}}\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
    ","import { Component, ViewChild, ElementRef, Input, Output, EventEmitter } from \"@angular/core\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { Location } from '@angular/common';\r\nimport { Router, ActivatedRoute, NavigationEnd } from \"@angular/router\";\r\nimport { filter } from 'rxjs/operators';\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\nexport interface INavItem {\r\n text: string,\r\n icon?: string,\r\n disabled?: boolean | Function,\r\n hide?: boolean | Function,\r\n number?: number | Function,\r\n isDangerNumber?: boolean,\r\n unread?: number | Function,\r\n routeTo?: string | Function,\r\n type: 'divider' | 'item';\r\n event?(): any,\r\n children?: INavItem[],\r\n collapsibleSubMenu?: boolean,\r\n automationId?: string | number,\r\n queryParams?: any | Function,\r\n exactRoute?: boolean,\r\n identfire?: number | string\r\n}\r\n\r\nexport interface ISidebar {\r\n collapsible?: boolean,\r\n enableBackButton?: boolean,\r\n navagationBased: 'router' | 'button' | 'template'\r\n onSearch?(result: string): any,\r\n disableResponsive?: boolean,\r\n navItems: INavItem[],\r\n searchPlaceholder?: string,\r\n searchUrlParam?: string,\r\n searchAutomationId?: string,\r\n initSelectedItem?: string | number | Function\r\n enableBackLabel?: boolean,\r\n width?:number,\r\n \r\n}\r\n@Component({\r\n selector: \"berry-sidebar\",\r\n templateUrl: \"./sidebar.component.html\",\r\n // styleUrls: ['./sidebar.style.scss']\r\n})\r\n\r\n\r\nexport class SideBarComponent extends BaseCmp {\r\n\r\n\r\n scrollOffset = 0;\r\n onScroll(e) {\r\n this.scrollOffset = e.srcElement.scrollTop;\r\n }\r\n\r\n @Input('options')\r\n options: ISidebar = { navItems: [], navagationBased: 'router', initSelectedItem: null };\r\n\r\n @Output(\"onPressBack\") onPressBack = new EventEmitter();\r\n\r\n @ViewChild('sidebar', { static: true })\r\n sidebarEl: ElementRef;\r\n @ViewChild('header', { static: true })\r\n externalHeader: ElementRef;\r\n\r\n @ViewChild('footer', { static: true })\r\n externalFooter: ElementRef;\r\n\r\n @ViewChild('content', { static: true })\r\n externalContent: ElementRef;\r\n\r\n @ViewChild('internalHeader', { static: true })\r\n internalHeader: ElementRef;\r\n\r\n get sidebarOffsetTop(): number {\r\n if (this.sidebarEl && this.sidebarEl?.nativeElement)\r\n return this.sidebarEl?.nativeElement.offsetTop;\r\n return null\r\n }\r\n get isContentExternalHeader(): boolean {\r\n return !!this.externalHeader ?\r\n this.externalHeader?.nativeElement.childNodes.length > 0 :\r\n false;\r\n }\r\n get isContentExternalFooter(): boolean {\r\n return !!this.externalFooter ?\r\n this.externalFooter?.nativeElement.childNodes.length > 0 :\r\n false;\r\n }\r\n get isContent(): boolean {\r\n return !!this.externalContent ?\r\n this.externalContent?.nativeElement.childNodes.length > 0 :\r\n false;\r\n }\r\n get viewInternalFooter(): boolean {\r\n\r\n return this.isLoaded && this.disableResize && this.options.collapsible;\r\n }\r\n get isContentInternalHeader(): boolean {\r\n return this.options.enableBackButton || !!this.options.onSearch;\r\n }\r\n\r\n get itemActiveCount() {\r\n\r\n let sum: number = 0;\r\n this.options.navItems.map((i) => {\r\n if (!this.getValue(i.hide)) {\r\n sum += 1;\r\n }\r\n })\r\n return sum;\r\n\r\n }\r\n\r\n get isResponsiveStyle(): boolean {\r\n\r\n if (this.disableResponsiveFromOptions || this.options.collapsible == true) return false;\r\n return !this.disableResponsiveFromOptions && this.disableResize;\r\n }\r\n\r\n get disableResponsiveFromOptions(): boolean {\r\n if (this.options.collapsible) return true;\r\n return this.options.disableResponsive;\r\n }\r\n isCollapse: boolean = false;\r\n\r\n searchText: string = '';\r\n\r\n isLoaded: boolean = false;\r\n\r\n selectedButton: string = null;\r\n\r\n\r\n openMenus = [];\r\n closeMenuContent = false;\r\n search = (e) => this.options.onSearch(e);\r\n\r\n collapseSidebar() {\r\n this.isCollapse = !this.isCollapse;\r\n\r\n }\r\n collapseMenu(isCollapse, id) {\r\n if (!isCollapse || this.checkResize) return null;\r\n if (this.openMenus.includes(id)) {\r\n this.openMenus = this.openMenus.filter((item) => item !== id);\r\n } else {\r\n this.openMenus = [...this.openMenus, id];\r\n }\r\n\r\n }\r\n setOpenSubmenu() {\r\n this.options.navItems.map((item: INavItem, i) => {\r\n if (!!item.children) {\r\n item.children.map((subItem: INavItem) => {\r\n const routeTo = this.getValue(subItem.routeTo);\r\n const addCondition = ((routeTo || \"\") as string)\r\n .includes(\"/\") ?\r\n this.router.url.includes(routeTo) :\r\n this.router.url.split(\"/\").includes(routeTo);\r\n if (!!routeTo && addCondition) {\r\n this.openMenus = [...this.openMenus, i];\r\n }\r\n })\r\n };\r\n\r\n\r\n })\r\n\r\n }\r\n onClickItem(isDisable, event, type, index) {\r\n if (!isDisable) {\r\n if (this.options.navagationBased == 'button') {\r\n this.selectedButton = index.toString();\r\n } else {\r\n this.selectedButton = null;\r\n }\r\n\r\n if (!!event) {\r\n event();\r\n }\r\n }\r\n\r\n }\r\n getValue(target) {\r\n if (typeof (target) === 'function')\r\n return target();\r\n return target;\r\n }\r\n\r\n checkCounteMoreThanOneHundred(number) {\r\n if(number > 99) \r\n return '+'+99\r\n return number\r\n }\r\n\r\n getCurrentLink() {\r\n return this.router.url;\r\n }\r\n\r\n getMenuHeight(subItems: INavItem[], isOpen: boolean): Number {\r\n\r\n if (!isOpen) return null;\r\n return subItems.reduce((accumulator, item: INavItem, currentIndex, array) => {\r\n if (!this.getValue(item.hide)) {\r\n return accumulator + 52;\r\n }\r\n return accumulator;\r\n }, 52);\r\n\r\n }\r\n\r\n scrollToActiveItem() {\r\n const element = document.getElementById(\"bb-nav-item__active\");\r\n if(element) {\r\n setTimeout(() => {\r\n element.scrollIntoView();\r\n }, 0);\r\n }\r\n }\r\n\r\n backClicked() {\r\n this._location.back();\r\n this.onPressBack.emit();\r\n }\r\n get disableResize(): boolean {\r\n\r\n if (this.options.collapsible == true) return true;\r\n return !this.isContentExternalHeader &&\r\n !this.isContentExternalFooter &&\r\n !this.isContent &&\r\n !this.isContentInternalHeader;\r\n }\r\n get checkResize(): boolean {\r\n return (this.isCollapse || (window.innerWidth <= 1200 && (!this.disableResponsiveFromOptions && this.disableResize)));\r\n }\r\n\r\n onCloseMenuContent() {\r\n\r\n if (this.checkResize) {\r\n this.closeMenuContent = true;\r\n\r\n }\r\n setTimeout(() => this.closeMenuContent = false, 0)\r\n }\r\n get searchPlaceholder(): string {\r\n return !!this.options.searchPlaceholder ? this.options.searchPlaceholder : ''\r\n }\r\n\r\n constructor(\r\n private _location: Location,\r\n public router: Router,\r\n private route: ActivatedRoute,\r\n ) {\r\n super();\r\n router.events\r\n .pipe(filter(e => e instanceof NavigationEnd))\r\n .subscribe((e) => {\r\n this.setOpenSubmenu();\r\n });\r\n\r\n\r\n }\r\n\r\n public fillActiveSideBar() {\r\n return BERRY.appSettings.keys.fillActiveSideBar;\r\n }\r\n\r\n addClassBottomViewStyleOnMenuContent(itemIndex: number): boolean {\r\n const totalAvailableItemsHeight = this.options.navItems.reduce((accumulator, item: INavItem, currentIndex) => {\r\n if (currentIndex < itemIndex) {\r\n if (!this.getValue(item.hide)) {\r\n return accumulator + 53;\r\n }\r\n } else if (currentIndex == itemIndex) {\r\n const countAvailableSubItems = item.children.filter((subItem: INavItem) => !this.getValue(subItem.hide)).length;\r\n return accumulator + countAvailableSubItems * 52;\r\n }\r\n return accumulator;\r\n }, 55);\r\n const sidebarOffsetTop = this.sidebarEl?.nativeElement.offsetTop;\r\n const isTotalAvailableItemsHeightGreaterThanScreen = totalAvailableItemsHeight + sidebarOffsetTop - this.scrollOffset >= window.innerHeight;\r\n return (this.checkResize || this.isCollapse) && isTotalAvailableItemsHeightGreaterThanScreen;\r\n }\r\n\r\n isHideAllChildren(children) {\r\n if(children) {\r\n return children.some((child) =>{\r\n return this.getValue(child.hide) === false || this.getValue(child.hide)== undefined\r\n });\r\n } else {\r\n return true\r\n }\r\n }\r\n \r\n isSubMenuGreaterThanSidebar(itemIndex: number) {\r\n const MenuHeight = this.getMenuHeight(this.options.navItems[itemIndex].children, true);\r\n if (!MenuHeight) return false;\r\n return MenuHeight > this.sidebarEl?.nativeElement.offsetHeight;\r\n\r\n\r\n }\r\n ngSuperAfterViewInit() {\r\n setTimeout(() => this.isLoaded = true, 0)\r\n }\r\n getSearchTextFromURL() {\r\n\r\n if (!!this.options.searchUrlParam) {\r\n this.route.params.subscribe(params => {\r\n var param = params[this.options.searchUrlParam];\r\n if (param) {\r\n var taskName = decodeURIComponent(param).trim();\r\n this.searchText = taskName;\r\n }\r\n });\r\n }\r\n\r\n }\r\n enableIconNumber(item): boolean {\r\n return ((!!this.getValue(item.unread) || !!this.getValue(item.number)) && this.checkResize) || ((!!this.getValue(item.unread) || !!this.getValue(item.number)) && this.isCollapse)\r\n }\r\n ngSuperOnInit() {\r\n\r\n if (this.options.navagationBased == 'button') {\r\n this.selectedButton = '0';\r\n if (!!this.options.initSelectedItem)\r\n this.selectedButton = this.getValue(this.options.initSelectedItem) || this.isCollapse;\r\n }\r\n this.getSearchTextFromURL();\r\n this.setOpenSubmenu();\r\n }\r\n}","\r\nimport { Observable, throwError as observableThrowError } from 'rxjs';\r\n\r\nimport { Injectable } from \"@angular/core\";\r\nimport {\r\n Headers,\r\n RequestOptions,\r\n Response\r\n} from \"@angular/http\";\r\nimport { Guid } from 'guid-typescript';\r\nimport { catchError, map } from 'rxjs/operators';\r\nimport { SignatureTypes } from \"src/app/berry/correspondences/_models/enums/SignatureTypes\";\r\nimport { IGlobalSettings } from \"../../../_common/models/IGlobalSettings\";\r\nimport { Annotation } from \"../../models/Annotation\";\r\nimport { SystemModules } from '../../models/GetUserSignatureDto';\r\nimport { BaseService } from '../../services/baseService';\r\nimport { HttpInterceptor } from \"../../services/http-interceptor\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class SignatureSVC extends BaseService {\r\n public signUrl;\r\n public Module;\r\n public selectedDmsId = null;\r\n public selectedAttachmentId = null;\r\n public isMarkingRequest = null;\r\n public isStampRequest = null;\r\n public selectedEntityId?: number;\r\n public selectedAttachmentExtension = null;\r\n public iframeId = \"corrSignAttachment\"; // defult value to not make any explosion\r\n\r\n getAttachmentAnnotations(correspondenceAttachmentId: string): Observable {\r\n let moduleParam = this.Module ? `&Module=${this.Module}` : '';\r\n let url = `${BERRY.hostName}${\r\n this.signUrl\r\n }get-user-attachment-annotations-post?correspondenceAttachmentId=${correspondenceAttachmentId}${moduleParam}`;\r\n let params = { correspondenceAttachmentId: correspondenceAttachmentId };\r\n return this.http\r\n .post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError),);\r\n }\r\n\r\n declineAttachmentAnnotations(\r\n correspondenceAttachmentId: string,\r\n correspondenceId: string,\r\n annotations: Annotation[],\r\n pin: string = null,\r\n saveSignatureAnnotationsAlso: boolean = true\r\n ) {\r\n if (saveSignatureAnnotationsAlso === false) {\r\n annotations = annotations.filter(annotation => {\r\n return annotation.type !== \"signatureImage\";\r\n });\r\n }\r\n\r\n let headers = new Headers({ \"Content-Type\": \"application/json\" });\r\n let options = new RequestOptions({ headers: headers });\r\n\r\n var params = JSON.stringify(annotations);\r\n\r\n let url = `${BERRY.hostName}${\r\n this.signUrl\r\n }decline-signature/${correspondenceAttachmentId}/${correspondenceId}/${\r\n pin === null ? \"null\" : pin\r\n }`;\r\n\r\n return this.http\r\n .post(url, params, options).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError),);\r\n }\r\n\r\n SaveLettersAnnotations(\r\n correspondenceAttachmentId: string,\r\n correspondenceId: string,\r\n annotations: Annotation[],\r\n pin: string = null,\r\n saveSignatureAnnotationsAlso: boolean = true\r\n ) {\r\n if (saveSignatureAnnotationsAlso === false) {\r\n annotations = annotations.filter(annotation => {\r\n return annotation.type !== \"signatureImage\";\r\n });\r\n }\r\n\r\n let headers = new Headers({ \"Content-Type\": \"application/json\" });\r\n let options = new RequestOptions({ headers: headers });\r\n\r\n var params = JSON.stringify(annotations);\r\n\r\n let url = `${BERRY.hostName}${\r\n this.signUrl\r\n }save-letters-annotations/${correspondenceAttachmentId}/${correspondenceId}/${\r\n pin === null ? \"null\" : pin\r\n }`;\r\n\r\n return this.http\r\n .post(url, params, options).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError),);\r\n }\r\n\r\n setAttachmentAnnotationsWithAnnoution(\r\n correspondenceAttachmentId: string,\r\n annotations: Annotation[],\r\n pin: string = null,\r\n saveSignatureAnnotationsAlso: boolean = true,\r\n signatureTypes: SignatureTypes.Signature,\r\n secondPassword: string = null\r\n ): Observable {\r\n if (this.Module == undefined) {\r\n this.Module = SystemModules.Correspondence\r\n }\r\n if (saveSignatureAnnotationsAlso === false) {\r\n annotations = annotations.filter(annotation => {\r\n return annotation.type !== \"signatureImage\";\r\n });\r\n }\r\n\r\n var params = JSON.stringify(annotations);\r\n\r\n let url = `${BERRY.hostName}${\r\n this.signUrl\r\n }set-user-attachment-annotations/${correspondenceAttachmentId}/${\r\n this.Module\r\n }/${pin === null || pin === \"\" ? \"null\" : pin}?signatureTypes=${\r\n SignatureTypes.Signature\r\n }&secondPassword=${secondPassword}`;\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n setAttachmentAnnotationsWithAnnoutionMarking(\r\n correspondenceAttachmentId: string,\r\n annotations: Annotation[],\r\n pin: string = null,\r\n saveSignatureAnnotationsAlso: boolean = true,\r\n signatureTypes: SignatureTypes.Marking\r\n ) {\r\n if (saveSignatureAnnotationsAlso === false) {\r\n annotations = annotations.filter(annotation => {\r\n return annotation.type !== \"markingSignature\";\r\n });\r\n }\r\n let headers = new Headers({ 'Content-Type': 'application/json' });\r\n let options = new RequestOptions({ headers: headers });\r\n var params = JSON.stringify(annotations);\r\n let url = `${BERRY.hostName}${\r\n this.signUrl\r\n }set-user-attachment-annotations/${correspondenceAttachmentId}/${\r\n this.Module\r\n }/${pin === null || pin === \"\" ? \"null\" : pin}?signatureTypes=${\r\n SignatureTypes.Marking\r\n }`;\r\n return this.http\r\n .post(url, params, options).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError),);\r\n }\r\n\r\n setAttachmentAnnotations(\r\n correspondenceAttachmentId: string,\r\n annotations: Annotation[],\r\n pin: string = null,\r\n saveSignatureAnnotationsAlso: boolean = true,\r\n secondPassword: string = null\r\n ) {\r\n if (saveSignatureAnnotationsAlso === false) {\r\n annotations = annotations.filter(annotation => {\r\n return annotation.type !== \"signatureImage\";\r\n });\r\n }\r\n\r\n let params = {\r\n correspondenceAttachmentId: correspondenceAttachmentId,\r\n annotations: JSON.stringify(annotations)\r\n };\r\n let url = `${BERRY.hostName}${this.signUrl}set-user-attachment-annotations-post?correspondenceAttachmentId=${correspondenceAttachmentId}&secondPassword=${secondPassword}`;\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n getUserSignatureToSignAttachment(attachmentId: string, systemModule: number = 0, isCorrScheduleLinkedAttachment: boolean = false) {\r\n let signatureType = this.isMarkingRequest == true ? SignatureTypes.Marking : SignatureTypes.Signature;\r\n let url = `${BERRY.hostName}${\r\n this.signUrl\r\n }attachment-user-signature-post?attachmentId=${attachmentId}&systemModule=${systemModule}&isCorrScheduleLinkedAttachment=${isCorrScheduleLinkedAttachment}&signatureTypes=${\r\n signatureType\r\n }`;\r\n var params = {\r\n attachmentId: attachmentId,\r\n systemModule: systemModule,\r\n isCorrScheduleLinkedAttachment: isCorrScheduleLinkedAttachment,\r\n signatureTypes: signatureType\r\n };\r\n return this.http\r\n .post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError),);\r\n }\r\n\r\n getAllLettersAttachmentsOfRelatedCorrespondece(\r\n RelatedCorrespondenceId,\r\n ScheduleItemId,\r\n LetterTemplatesType,\r\n SelectedExternalRecipients: any = null,\r\n letterIDs: any = null,\r\n isCalledFromPreviewLetters: boolean = false\r\n ) {\r\n if (!ScheduleItemId) ScheduleItemId = Guid.EMPTY;\r\n let url = `${BERRY.hostName}${\r\n this.signUrl\r\n }get-all-letters-attachments-of-related-correspondece?RelatedCorrespondenceId=${RelatedCorrespondenceId}&ScheduleItemId=${ScheduleItemId}&LetterTemplatesType=${LetterTemplatesType}&SelectedExternalRecipients=${SelectedExternalRecipients}&letterIDs=${letterIDs}&isCalledFromPreviewLetters=${isCalledFromPreviewLetters}`;\r\n return this.http\r\n .get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError),);\r\n }\r\n\r\n GetattachmentIdsByPageIndex(attachmentIds): Observable {\r\n\r\n let url = `${BERRY.hostName}${this.signUrl}get-attachmentIds-by-page-index?attachmentIds=${attachmentIds}`;\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError),);\r\n }\r\n //#endregion DB Methods\r\n\r\n //#region Setting Methods\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n public extractData(res: Response) {\r\n let body = res;\r\n return body || {};\r\n }\r\n\r\n public handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n return observableThrowError(errMsg);\r\n }\r\n\r\n //#endregion Setting Methods\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 {{entityName}} \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 {{userRole(emp)}} \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { BaseCmp } from 'src/app/_common/components/BaseComponent';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AfterViewInit, Component, ElementRef, HostListener, Input, OnDestroy, ViewChild } from '@angular/core';\r\nimport { IGlobalSettings } from '../../models/IGlobalSettings';\r\nimport { BsDropdownDirective, } from 'ngx-bootstrap/dropdown';\r\nimport { relocate } from '../../utils/relocate-element-position.utils';\r\nimport { EntityCardService } from './entity-card.service';\r\nimport { takeWhile } from 'rxjs/operators';\r\nimport { CommitteesSvc } from 'src/app/committees/services/committees-svc';\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: 'berry-entity-card',\r\n templateUrl: './entity-card.component.html',\r\n styles: [`\r\n .user-card-container {\r\n position: absolute;\r\n z-index:20;\r\n background:white;\r\n min-width:200px;\r\n border-radius:5px;\r\n min-width:300px;\r\n max-width:350px;\r\n animation-delay:0.5;\r\n animation-duration: 0.4s;\r\n animation-name: user-card-container;\r\n \r\n }\r\n\r\n @keyframes user-card-container {\r\n from { \r\n opacity:0; \r\n }\r\n to {\r\n opacity:1;\r\n }\r\n }\r\n .tab button{\r\n background-color: inherit;\r\n float: left;\r\n border: none;\r\n outline: none;\r\n cursor: pointer;\r\n padding: 14px 16px;\r\n transition: 0.3s;\r\n font-size: 17px;\r\n}\r\n.tab {\r\n overflow: hidden;\r\n border-bottom: 1px solid #ccc;\r\n background-color: #ffffff;\r\n }\r\n .active {\r\n border-bottom: 2px solid var(--baseColor) !important;\r\n }\r\n .tree-connector{\r\n flex: 0 0 10px;\r\n width: 2px;\r\n background: #D8D8D8;\r\n }\r\n .active-card{\r\n border: 1px solid var(--baseColor);\r\n\r\n }\r\n ` ]\r\n})\r\n\r\nexport class EntityCardComponent extends BaseCmp implements AfterViewInit, OnDestroy {\r\n\r\n @Input() entityId: string = '';\r\n @Input() cssClass: string = '';\r\n id = Math.floor(Math.random() * 100000000000);\r\n disableHover: boolean = false;\r\n selectedTab: 'managmentData' | 'managmentEmployees' = 'managmentData';\r\n @ViewChild(BsDropdownDirective) dropdown!: BsDropdownDirective;\r\n @ViewChild('content') content!: ElementRef;\r\n\r\n isSubscribed: boolean = true;\r\n isBusy: boolean = false;\r\n private hideDropdownTimeout: any;\r\n listItemLength: number = 0;\r\n constructor(private _entityCardService: EntityCardService,\r\n public committeesSvc: CommitteesSvc) {\r\n super();\r\n }\r\n\r\n ngSuperOnInit() {\r\n\r\n }\r\n\r\n ngSuperAfterViewInit() {\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.isSubscribed = false;\r\n delete this._entityCardService.cardsList[this.id];\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.dropdown.onHidden.subscribe(() => {\r\n this.disableHover = false;\r\n });\r\n }\r\n\r\n mouseEnterContent(): void {\r\n\r\n clearTimeout(this.hideDropdownTimeout);\r\n this.hideDropdownTimeout = this.timeIn\r\n }\r\n\r\n mouseleaveContent(): void {\r\n clearTimeout(this.hideDropdownTimeout);\r\n this.hideDropdownTimeout = this.timeOut;\r\n }\r\n\r\n mouseEnterPopup(): void {\r\n clearTimeout(this.hideDropdownTimeout);\r\n }\r\n\r\n mouseleavePopup(): void {\r\n clearTimeout(this.hideDropdownTimeout);\r\n this.hideDropdownTimeout = this.timeOut;\r\n }\r\n\r\n public get timeIn(): any {\r\n return setTimeout(() => {\r\n this.GetEntityCardDetails();\r\n this.openDDL();\r\n this.disableHover = true;\r\n }, 1000);\r\n }\r\n\r\n public get timeOut(): any {\r\n return setTimeout(() => {\r\n this.dropdown.hide();\r\n this.disableHover = false;\r\n }, 1000);\r\n }\r\n\r\n empolyeesCount: number = 0;\r\n entitiesList: any = {};\r\n committee: any;\r\n isCommittee: boolean = false;\r\n entityEmployeesList: any = {};\r\n committeeMembersList: any = {};\r\n entityManagerId: number;\r\n entityManagerName: string;\r\n entityName: string;\r\n imageType = 'user';\r\n canViewMembersTab: boolean = true;\r\n canViewCommitteeInfo: boolean = true;\r\n\r\n @HostListener('mouseover') onMouseOver() {\r\n if (this.canViewCommitteeInfo == false) {\r\n this.dropdown.hide();\r\n }\r\n }\r\n\r\n openDDL() {\r\n this._entityCardService.cardsList[this.id] = this.dropdown;\r\n if (!this.disableHover) {\r\n Object.values(this._entityCardService.cardsList).map((dropdown: BsDropdownDirective) => {\r\n dropdown.hide();\r\n\r\n })\r\n this.dropdown.show();\r\n }\r\n\r\n setTimeout(() => {\r\n relocate(this.content.nativeElement, document.getElementsByTagName('bs-dropdown-container')[0].querySelector('.user-card-bs-dropdown'));\r\n\r\n }, 10)\r\n }\r\n\r\n userRole(emp): string {\r\n return this.isCommittee ? emp.RoleName : emp.Position;\r\n }\r\n\r\n GetEntityCardDetails() {\r\n if (this.entityId) {\r\n this._entityCardService.GetEntityCardDetails(this.entityId)\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(data => {\r\n this.entitiesList = data?.EntitiesList;\r\n this.isCommittee = data?.Committee ? true : false;\r\n this.entityEmployeesList = data?.EntityEmployeesList;\r\n this.committeeMembersList = data?.CommitteeMembersList;\r\n this.committee = data?.Committee;\r\n\r\n let managerInfo;\r\n if (this.isCommittee == true) {\r\n managerInfo = this.committeeMembersList.find(x => x.IsPresident == true);\r\n this.entityManagerId = managerInfo?.IndividualId;\r\n this.entityManagerName = managerInfo?.UserName;\r\n this.entityName = this.committee?.CommitteeName;\r\n this.empolyeesCount = this.committeeMembersList?.length;\r\n this.canViewCommitteeInfo = this.committee?.CanViewCommitteeInfo;\r\n this.canViewMembersTab = this.committee?.CanViewMembersTab;\r\n }\r\n else {\r\n managerInfo = this.entityEmployeesList.find(x => x.IsManager == true);\r\n this.entityManagerId = managerInfo?.UserId;\r\n this.entityManagerName = managerInfo?.UserName;\r\n this.entityName = this.entitiesList.find(x => x.EntityId == this.entityId)?.EntityName;\r\n this.empolyeesCount = this.entityEmployeesList?.length;\r\n }\r\n });\r\n }\r\n }\r\n}","import { Injectable, TemplateRef } from \"@angular/core\";\r\nimport { HttpInterceptor } from \"../../services/http-interceptor\";\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { Observable } from \"rxjs\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EntityCardService extends BaseService {\r\n cardsList = {};\r\n template: TemplateRef;\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n GetEntityCardDetails(entityId): Observable {\r\n return super.get(`${BERRY.hostName}Manage/Departments/GetEntityCardDetails?id=${entityId}`);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport {HttpClient} from '@angular/common/http';3\r\nimport {Observable} from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FileUploadService {\r\n \r\n url: string;\r\n \r\n constructor(private http:HttpClient) { }\r\n \r\n upload(file):Observable {\r\n return this.http.post(this.url, file)\r\n }\r\n \r\n}","import {\r\n Component, ElementRef, EventEmitter, Input, Output, ViewChild,\r\n} from \"@angular/core\";\r\nimport { BaseCmp } from \"../BaseComponent\";\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\nimport { FileUploadService } from \"./file-uploader-service/file-uploader.service\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"file-uploader\",\r\n templateUrl: \"./file-uploader-ng.html\",\r\n styleUrls: ['./file-uploader.scss'],\r\n})\r\n\r\nexport class FileUploaderComponent extends BaseCmp {\r\n \r\n @ViewChild('imageUpload') imageUpload: ElementRef;\r\n @Input(\"data\") data: any = {};\r\n @Input(\"acceptType\") acceptType: string;\r\n @Input(\"url\") url: string;\r\n @Input(\"viewAsButton\") viewAsButton: boolean = true;\r\n @Input(\"data-automation-id\") dataAutomationId: string;\r\n @Input(\"input-data-automation-id\") inputDataAutomationId: string = '';\r\n @Output(\"onFileChoosen\") onFileChoosen = new EventEmitter();\r\n @Output(\"onFileUploaded\") onFileUploaded = new EventEmitter();\r\n @Input(\"disabled\") disabled: boolean = false;\r\n\r\n @Input(\"icon\") icon: string = 'evicon-upload';\r\n @Input(\"text\") text: string = this.getText('choose_file', 'Contacts_PhotoAttachmentNg');\r\n\r\n _isMultiple: boolean;\r\n get isMultiple(): boolean {\r\n return this._isMultiple;\r\n }\r\n @Input('isMultiple') set isMultiple(value: boolean) {\r\n this._isMultiple = value;\r\n }\r\n\r\n \r\n public hasBaseDropZoneOver: boolean = false;\r\n public hasAnotherDropZoneOver: boolean = false;\r\n\r\n fileObject: any;\r\n imageChoosen: any;\r\n shortLink: string = \"\";\r\n file: File = null;\r\n\r\n ngSuperOnInit() {\r\n \r\n }\r\n\r\n ngSuperAfterViewInit() {\r\n\r\n }\r\n\r\n constructor(private fileUploadService:FileUploadService) {\r\n super();\r\n }\r\n\r\n triggerFileUploadClick() {\r\n if(this.isMultiple) {\r\n this.imageUpload.nativeElement.setAttribute('multiple','true');\r\n } else {\r\n this.imageUpload.nativeElement.removeAttribute('multiple');\r\n }\r\n this.imageUpload.nativeElement.click();\r\n }\r\n\r\n public fileOverBase(e: any): void {\r\n this.hasBaseDropZoneOver = e;\r\n }\r\n\r\n public fileOverAnother(e: any): void {\r\n this.hasAnotherDropZoneOver = e;\r\n }\r\n\r\n onChange(event) {\r\n this.file = event.target.files[0];\r\n var reader = new FileReader();\r\n reader.readAsDataURL(event.target.files[0]);\r\n reader.onload = (_event) => {\r\n this.imageChoosen = reader.result;\r\n this.onFileChoosen.emit({ file: this.file, imageChoosen: this.imageChoosen });\r\n }\r\n\r\n }\r\n\r\n uploadImg() {\r\n\r\n const body = this.data;\r\n let formData = new FormData();\r\n\r\n formData.append('file', this.file);\r\n\r\n for (let index = 0; index < Object.keys(body).length; index++) {\r\n formData.append(Object.keys(body)[index], body[Object.keys(body)[index]] );\r\n }\r\n\r\n this.fileUploadService.url = this.url;\r\n\r\n this.fileUploadService.upload(formData).subscribe({\r\n next: (res) => this.onFileUploaded.emit(res),\r\n error: (err) => this.onFileUploaded.emit(err)\r\n })\r\n\r\n }\r\n\r\n removeSelectedFile() {\r\n this.imageUpload.nativeElement.value = \"\";\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 0\">\r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n {{item.Text}}\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 X\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, EventEmitter, Output, Input, NgZone, ViewChild } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { datetimeHelper } from \"src/app/_common/utils/datetimeHelper\";\r\nimport { DateTimePipeFormatEnum } from '../../../../filters/todatetime-filter';\r\nimport { AccompanyingDocumentSvc } from '../../../../../berry/correspondences/_common/AccompanyingDocuments/accompanyingDocument.svc';\r\nimport { IComboboxOptions, IComboboxServerDatasourceOptions } from '../../../../directives/KendoUI-wrappers/kendo-combobox';\r\nimport { Router } from \"@angular/router\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var moment: any;\r\ndeclare var $: any\r\n\r\n@Component({\r\n selector: \"accompanying-document\",\r\n templateUrl: \"./fb-accompanying-document.html\"\r\n})\r\nexport class fbAccompanyingDocumentComponent extends BaseCmp implements IFormBuilderComponent {\r\n isMultiValueCtrlMappedToDb: boolean = false;\r\n @Output() valuesChange: EventEmitter = new EventEmitter();\r\n values: any[] = [];\r\n @Input() enableMulti: boolean = true;\r\n @Input() disabled: boolean = false;\r\n @Input() CorrespondenceCategory: string;\r\n @Input() enbleNoTags: boolean = true;\r\n @Input() noTagsFlag: boolean = false;\r\n @Output() onNoTagsClick: EventEmitter = new EventEmitter();\r\n @Input(\"datePickersSlideUp\") datePickersSlideUp: boolean = false;\r\n keyPressed;\r\n\r\n ngShortDateFormat: DateTimePipeFormatEnum =\r\n DateTimePipeFormatEnum.displayShortDateFormatNg;\r\n\r\n get isdisabled() {\r\n return this.disabled;\r\n }\r\n\r\n get correspondenceCategory() {\r\n return this.CorrespondenceCategory;\r\n }\r\n\r\n get enableSelecterAccopanies() {\r\n if (this.enableMulti) return true;\r\n if (this.selectedAccopanies.length == 0) return true;\r\n return false;\r\n }\r\n\r\n public hijriAttachmentDate(attachmentDate) {\r\n if (attachmentDate) {\r\n attachmentDate = this.dateHelper.ToFormattedCalendarDateString(new Date(attachmentDate), \"YYYY/mm/dd\");\r\n return attachmentDate;\r\n }\r\n else {\r\n return null;\r\n }\r\n }\r\n public initialValue(value) {\r\n let me = this;\r\n me.values = [];\r\n if (value) me.selectedAccopanies = value;\r\n if (me.selectedAccopanies.length <= 0) {\r\n me.values = [];\r\n } else {\r\n me.selectedAccopanies = me.selectedAccopanies.sort((a, b) => {\r\n if (a.DispalyOrder && b.DispalyOrder) {\r\n if (a.DispalyOrder < b.DispalyOrder)\r\n return -1;\r\n }\r\n return 1;\r\n });\r\n }\r\n me.selectedAccopanies.forEach(r => {\r\n me.values = [\r\n ...me.values,\r\n {\r\n Id: r.Id,\r\n AccompanyingDocumentId: r.AccompanyingDocumentId,\r\n AttachmentNumber: r.AttachmentNumber,\r\n AttachmentDate: r.AttachmentDate,\r\n ExterContactId: r.OrganizationValue ? r.OrganizationValue.dbid : null,\r\n IsOwnerContact: r.IsOwnerContact,\r\n DispalyOrder: r.DispalyOrder\r\n }\r\n ];\r\n });\r\n if (me.values.length > 0) {\r\n me.values = me.values.sort((a, b) => {\r\n if (a.DispalyOrder && b.DispalyOrder) {\r\n if (a.DispalyOrder < b.DispalyOrder)\r\n return -1;\r\n }\r\n return 1;\r\n });\r\n }\r\n me.valuesChange.emit(this.values);\r\n }\r\n\r\n ngSuperAfterViewInit() {\r\n let me = this;\r\n this.valuesChange.emit(this.values);\r\n this.router.routerState.root.queryParams.subscribe(params => {\r\n let isEdit = params[\"isEdit\"];\r\n if (isEdit == \"true\") {\r\n if (me.selectedAccopanies.length == 0)\r\n me.noTagsFlag = true;\r\n }\r\n });\r\n let accompanyingAttachmentsCombobox = $('#accompanyingAutoComplate') ? $('#accompanyingAutoComplate').data(\"kendoComboBox\") : null;\r\n if (accompanyingAttachmentsCombobox) {\r\n accompanyingAttachmentsCombobox.input.on(\"keydown\", function (e) {\r\n let selectedValue = me.accompanyingAutoComplateName ? me.accompanyingAutoComplateName.ID : null;\r\n if (e.keyCode == 13 && (me.keyPressed == 40 || me.keyPressed == 38) && selectedValue) {\r\n e.preventDefault();\r\n me.keyPressed = e.keyCode;\r\n me.onSelectChange(selectedValue);\r\n }\r\n me.keyPressed = e.keyCode;\r\n });\r\n accompanyingAttachmentsCombobox.list.on(\"mouseup\", function (e) {\r\n me.keyPressed = null;\r\n });\r\n }\r\n }\r\n\r\n reBuildJson(i, value, controlName) {\r\n let me = this;\r\n if (controlName === \"AttachmentDate\") {\r\n if (value && value.Alternative)\r\n me.values[i].AttachmentDate = moment(\r\n value.Alternative.ISODate\r\n ).format();\r\n else me.values[i].AttachmentDate = null;\r\n }\r\n else if (controlName === \"AttachmentNumber\") {\r\n if (value)\r\n me.values[i].AttachmentNumber = value;\r\n else\r\n me.values[i].AttachmentNumber = null;\r\n }\r\n else if (controlName === \"ExterContactId\") {\r\n if (value != null) {\r\n me.values[i].ExterContactId = value.dbid;\r\n if (me.values.filter(e => e.IsOwnerContact == true).length == 0)\r\n me.values[i].IsOwnerContact = true;\r\n if (me.selectedAccopanies.filter(e => e.IsOwnerContact == true).length == 0)\r\n me.selectedAccopanies[i].IsOwnerContact = true;\r\n } else {\r\n me.values[i].ExterContactId = null;\r\n }\r\n }\r\n else if (controlName === \"IsOwnerContact\") {\r\n me.values.forEach(e => {\r\n e.IsOwnerContact = false;\r\n });\r\n me.values[i].IsOwnerContact = value;\r\n }\r\n me.valuesChange.emit(me.values);\r\n }\r\n\r\n ngSuperOnInit() { }\r\n\r\n noTagsClick() {\r\n this.noTagsFlag = !this.noTagsFlag;\r\n if (this.noTagsFlag) {\r\n this.clearFrom();\r\n }\r\n this.onNoTagsClick.emit(this.noTagsFlag);\r\n }\r\n\r\n constructor(public svc: AccompanyingDocumentSvc, public dateHelper: datetimeHelper, public router: Router) {\r\n super();\r\n }\r\n\r\n buildForm(): void {\r\n }\r\n\r\n public accompanyingDocumentLinks: any[] = [];\r\n\r\n getJsonValue(): string {\r\n let me = this;\r\n me.accompanyingDocumentLinks = [];\r\n if (me.values) {\r\n me.values.forEach(r => {\r\n me.accompanyingDocumentLinks = [\r\n ...me.accompanyingDocumentLinks,\r\n {\r\n AccompanyingDocumentId: r.AccompanyingDocumentId\r\n && r.AccompanyingDocumentId != undefined ? r.AccompanyingDocumentId : r.ID,\r\n ExterContactId: r.ExterContactId,\r\n AttachmentNumber: r.AttachmentNumber,\r\n AttachmentDate: r.AttachmentDate,\r\n IsOwnerContact: r.IsOwnerContact,\r\n }\r\n ];\r\n });\r\n }\r\n return JSON.stringify(this.accompanyingDocumentLinks);\r\n }\r\n\r\n setValue(json: string): void {\r\n this.initialValue(JSON.parse(json));\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n if (!this.noTagsFlag) {\r\n if (this.values.length > 0)\r\n return true;\r\n else\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n }\r\n\r\n maxDateOptions = {\r\n maxDate: 0\r\n };\r\n\r\n IComboboxOptions = {\r\n dataTextField: \"Title\",\r\n dataValueField: \"Id\",\r\n allowFreeText: true\r\n };\r\n accompanyingAutoComplateName: any;\r\n comboBoxServerSearchDatasourceDefaultOptions: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"post\",\r\n searchField: \"kw\",\r\n resultsField: \"d\"\r\n };\r\n\r\n defaultAutocompleteOptions: IComboboxOptions = {\r\n dataTextField: \"Title\",\r\n dataValueField: \"Id\",\r\n allowFreeText: true\r\n };\r\n\r\n public accompanyingAutoComplate: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n {\r\n enabled: true,\r\n method: \"post\",\r\n searchField: \"kw\",\r\n resultsField: \"\"\r\n },\r\n {\r\n url: BERRY.hostName + \"Correspondences/NewApp/GetAccompanyingDocument\"\r\n }\r\n ),\r\n\r\n dataTextField: \"Text\",\r\n dataValueField: \"ID\",\r\n allowFreeText: false,\r\n displayTemplate: \"#: data.Text #\",\r\n minLength: 1,\r\n autoBind: false\r\n }\r\n );\r\n public externalFromAutoCompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n {\r\n enabled: true,\r\n method: \"post\",\r\n searchField: \"kw\",\r\n resultsField: \"\"\r\n },\r\n {\r\n url: BERRY.hostName + \"Correspondences/NewApp/GetExternalContacts\"\r\n }\r\n ),\r\n\r\n dataTextField: \"value\",\r\n dataValueField: \"dbid\",\r\n allowFreeText: false,\r\n displayTemplate: \"#: data.dbid # - #: data.NationalCode? data.NationalCode + ' - ': '' # #: data.value #\",\r\n minLength: 1\r\n }\r\n );\r\n\r\n public clearFrom() {\r\n this.selectedAccopanies = [];\r\n this.initialValue(this.selectedAccopanies);\r\n }\r\n\r\n public accompanyingDocumentId = -1;\r\n public selectedAccopanies: any[] = [];\r\n onSelectChange(accompanyingDocumentId) {\r\n let me = this;\r\n if (me.keyPressed == 38 || me.keyPressed == 40) {\r\n return;\r\n }\r\n if (\r\n me.accompanyingDocumentId === accompanyingDocumentId ||\r\n accompanyingDocumentId == null\r\n ) {\r\n me.accompanyingDocumentId = -1;\r\n } else {\r\n me.noTagsFlag = false;\r\n me.accompanyingDocumentId = accompanyingDocumentId;\r\n me.svc\r\n .getAccompanyingDocumentById(accompanyingDocumentId)\r\n .subscribe(r => {\r\n me.selectedAccopanies = [...me.selectedAccopanies, r];\r\n me.selectedAccopanies = me.selectedAccopanies.sort((a, b) => {\r\n if (a.DispalyOrder && b.DispalyOrder) {\r\n if (a.DispalyOrder < b.DispalyOrder)\r\n return -1;\r\n }\r\n return 1;\r\n });\r\n me.values = [\r\n ...me.values,\r\n {\r\n Id: null,\r\n AccompanyingDocumentId: accompanyingDocumentId,\r\n AttachmentNumber: \"\",\r\n AttachmentDate: null,\r\n ExterContactId: null,\r\n IsOwnerContact: false,\r\n DispalyOrder: r.DispalyOrder\r\n }\r\n ];\r\n me.values = me.values.sort((a, b) => {\r\n if (a.DispalyOrder && b.DispalyOrder) {\r\n if (a.DispalyOrder < b.DispalyOrder)\r\n return -1;\r\n }\r\n return 1;\r\n });\r\n if (me.values.length > 0) {\r\n if (me.values.filter(i => i.IsOwnerContact == true).length == 0) {\r\n for (var x = 0; x < me.values.length; x++) {\r\n if (me.values[x].ExterContactId != null && me.values[x].ExterContactId != \"\") {\r\n me.values[x].IsOwnerContact = true;\r\n x = me.values.length;\r\n }\r\n }\r\n }\r\n }\r\n if (me.selectedAccopanies.length > 0) {\r\n if (me.selectedAccopanies.filter(i => i.IsOwnerContact == true).length == 0) {\r\n for (var x = 0; x < me.selectedAccopanies.length; x++) {\r\n if (me.selectedAccopanies[x].OrganizationValue != null\r\n && me.selectedAccopanies[x].OrganizationValue.dbid != null\r\n && me.selectedAccopanies[x].OrganizationValue.dbid != \"\"\r\n ) {\r\n me.selectedAccopanies[x].IsOwnerContact = true;\r\n x = me.selectedAccopanies.length;\r\n }\r\n }\r\n }\r\n\r\n }\r\n\r\n me.valuesChange.emit(me.values);\r\n setTimeout(() => {\r\n me.accompanyingAutoComplateName = null;\r\n }, 1);\r\n });\r\n }\r\n }\r\n\r\n remove(i) {\r\n let me = this;\r\n\r\n if (me.values[i].IsOwnerContact == true) {\r\n for (var x = 0; x < me.values.length; x++) {\r\n if (x != i && me.values[x].ExterContactId != null && me.values[x].ExterContactId != \"\") {\r\n me.values[x].IsOwnerContact = true;\r\n x = me.values.length;\r\n }\r\n }\r\n }\r\n\r\n if (me.selectedAccopanies[i].IsOwnerContact == true) {\r\n for (var x = 0; x < me.selectedAccopanies.length; x++) {\r\n if (x != i && me.selectedAccopanies[x].OrganizationValue != null\r\n && me.selectedAccopanies[x].OrganizationValue.dbid != null\r\n && me.selectedAccopanies[x].OrganizationValue.dbid != \"\"\r\n ) {\r\n me.selectedAccopanies[x].IsOwnerContact = true;\r\n x = me.selectedAccopanies.length;\r\n }\r\n }\r\n }\r\n\r\n me.selectedAccopanies.splice(i, 1);\r\n me.values.splice(i, 1);\r\n me.valuesChange.emit(me.values);\r\n }\r\n\r\n}","import { Component, ElementRef, ViewChild } from \"@angular/core\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { kendoMultiSelect } from \"src/app/_common/directives/KendoUI-wrappers/kendoMultiSelect\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"docs-related-tag\",\r\n templateUrl: \"./fb-docs-related-tag.html\"\r\n})\r\nexport class fbDocsRalatedTagsComponent extends BaseCmp implements IFormBuilderComponent {\r\n\r\n KWSelectOptions = {\r\n dataSource: BERRY.Lookups.AccompanyingDocument.filter(a => a.IsActive),\r\n dataTextField: \"Text\",\r\n dataValueField: \"ID\",\r\n returnValueAsText: false\r\n };\r\n\r\n DocsRalatedTags: any[] = [];\r\n values: any[];\r\n accompanyingDocumentLinks: any[];\r\n\r\n onDocsRalatedTagsSelected(e) {\r\n if (e == null) {\r\n this.DocsRalatedTags = [];\r\n } else {\r\n this.DocsRalatedTags = [];\r\n this.DocsRalatedTags = e.sort((a, b) => {\r\n if (a.DispalyOrder && b.DispalyOrder) {\r\n if (a.DispalyOrder < b.DispalyOrder)\r\n return -1;\r\n }\r\n return 1;\r\n }).map(item => {\r\n return item.ID\r\n });\r\n \r\n }\r\n }\r\n\r\n @ViewChild(\"DocsRalatedTags\") public docsRalatedTags: kendoMultiSelect;\r\n\r\n isMultiValueCtrlMappedToDb: boolean = false;\r\n\r\n constructor(public element: ElementRef) {\r\n super();\r\n }\r\n\r\n ngSuperOnInit() { }\r\n\r\n ngSuperAfterViewInit() {\r\n if (this.DocsRalatedTags.length > 0)\r\n this.docsRalatedTags.InitialValues = this.DocsRalatedTags;\r\n }\r\n\r\n buildForm(): void { }\r\n\r\n public getJsonValue(): string {\r\n let me = this;\r\n me.accompanyingDocumentLinks = [];\r\n if (me.DocsRalatedTags) {\r\n me.DocsRalatedTags.forEach(r => {\r\n me.accompanyingDocumentLinks = [\r\n ...me.accompanyingDocumentLinks,\r\n {\r\n AccompanyingDocumentId: r,\r\n ExterContactId: null,\r\n AttachmentNumber: null,\r\n AttachmentDate: null,\r\n IsOwnerContact: false,\r\n }\r\n ];\r\n });\r\n }\r\n return JSON.stringify(this.accompanyingDocumentLinks);\r\n }\r\n\r\n setValue(json: string): void {\r\n this.DocsRalatedTags = JSON.parse(json).map(item => {\r\n return item.AccompanyingDocumentId\r\n });\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n return true;\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 {{getText(\"NoAttachmentsToAdd\",\"eGovCorrespondence\")}}\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\nimport { takeWhile } from 'rxjs/operators';\r\nimport { Component, EventEmitter, Output, Input, NgZone, ViewChild } from \"@angular/core\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { DialogManager, ConfirmationBoxOptions, ConfirmationBoxType, ConfirmationBoxResult } from \"src/app/_common/services/dialog-manager\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { DetailsAttachmentsAddCmp } from \"../../../Attachment/details-attachment-add-cmp\";\r\nimport { ConstUrls } from \"src/app/berry/correspondences/_models/const/Urls\";\r\nimport { DetailsAttachmentSVC } from \"../../../Attachment/details-attachment-svc\";\r\nimport { AttachmentDto } from \"src/app/_common/models/AttachmentDto\";\r\nimport { webTwainSVC } from \"src/app/_common/services/webTwain.wrapper\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { LookupHelpers } from \"../../../../../Lookups/LookupHelpers\";\r\nimport { AppModulesEnum } from \"../../../../models/AppModulesEnum\";\r\nimport { MessagingService } from \"src/app/_common/services/messaging-service\";\r\nimport { AttachmentTypesEnum } from \"src/app/berry/correspondences/_models/enums/AttachmentTypesEnum\";\r\nimport { datetimeHelper } from \"src/app/_common/utils/datetimeHelper\";\r\nimport { IPopup, PopupComponent, Action } from \"../../../popup/popup-component\";\r\nimport { EGovCorrespondencesService } from \"../../../../../berry/correspondences/inboxes/eGovCorrespondences/services/eGovCorrespondences.Service\";\r\nimport { AttachmentslistCmp } from '../../../../../berry/correspondences/_common/CorrespondenceAttachments/CorrespondenceAttachments-cmp';\r\nimport { CorrespondenceAssignService } from '../../../../../berry/correspondences/details/assign-tasks/assign-tasks-svc';\r\nimport { DetailsSVC } from '../../../../../berry/correspondences/details/details-svc';\r\nimport { schedulingDetailsSharedSVC } from '../../../../../Scheduling/details/scheduling-details-shared-svc';\r\nimport { TaskTypesEnum } from '../../../../../Tasks/models/TaskTypesEnum';\r\nimport { CommitteesSvc } from '../../../../../committees/services/committees-svc';\r\nimport { InitiativeOverviewSvc } from '../../../../../Initiative/components/initiative-overview/initiative-overview-landing-page/initiative-overview-svc';\r\nimport { Guid } from 'guid-typescript';\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var jQuery: any;\r\n\r\n@Component({\r\n selector: \"attachment-list\",\r\n templateUrl: \"./fb-attachment-list.html\",\r\n styles: ['a.disabled {color: gray;cursor: not - allowed;}'],\r\n})\r\nexport class fbAttachmentListComponent extends BaseCmp implements IFormBuilderComponent {\r\n\r\n isSubscribed = true;\r\n isMultiValueCtrlMappedToDb = false;\r\n\r\n @ViewChild(\"attachmentAdd\") attachmentAdd: DetailsAttachmentsAddCmp;\r\n\r\n @Input() EnabelPermittedUser = false;\r\n @Input() EnableAddOptions = false;\r\n @Input() IsOwner = false;\r\n @Input() CanDeleteDraftAttachment = true;\r\n @Input() CanAddDraftAttachment = true;\r\n @Input() DeleteUrl = ConstUrls.DeleteServiceURL;\r\n @Input() ShowSetAsFinalFormRadioButton = false;\r\n @Input() hideAttachmentComponent: boolean = false;\r\n @Input() notRelated: boolean = false;\r\n\r\n @Output() AttachmentscountAfterAdd: any = new EventEmitter();\r\n @Output() CheckAttachmentSummaryAfterEdit: any = new EventEmitter();\r\n\r\n @ViewChild('yesserAttachmentPopup') yesserAttachmentPopup: PopupComponent;\r\n YesserAttachmentPopuppOption: IPopup = {\r\n title: BERRY.getText(\"EGovAttachmentPopupTitle\", \"eGovCorrespondence\"),\r\n actions: [\r\n { text: BERRY.getText(\"Cancel\", \"_common\"), type: 'close' }\r\n ],\r\n mode: 'small',\r\n }\r\n\r\n _attachmentType: AttachmentTypesEnum = null;\r\n @Input()\r\n get AttachmentType() {\r\n return this._attachmentType;\r\n }\r\n set AttachmentType(value: AttachmentTypesEnum) {\r\n this._attachmentType = value;\r\n }\r\n\r\n yesserAttachmentList = [];\r\n selectedAttachmentsIds = [];\r\n _EGovCorrId = -1;\r\n @Input()\r\n get EGovCorrId() {\r\n return this._EGovCorrId;\r\n }\r\n set EGovCorrId(value: number) {\r\n this._EGovCorrId = value;\r\n }\r\n _AttachmentGroupId = -1;\r\n @Input()\r\n get AttachmentGroupId() {\r\n return this._AttachmentGroupId;\r\n }\r\n set AttachmentGroupId(value: number) {\r\n this._AttachmentGroupId = value;\r\n }\r\n get IsFromYesser() {\r\n return this._EGovCorrId != -1;\r\n }\r\n get ShowAddBtn() {\r\n const me = this;\r\n\r\n return (!BERRY.appSettings.keys.printQrCodeWhenAddAttachments\r\n || me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Announcement\r\n || me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Committees\r\n || me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Tasks)\r\n\r\n && me.CanAddDraftAttachment;\r\n }\r\n\r\n _showCheckBox: boolean = true;\r\n automationId = 'attachments-dll-group-list';\r\n @Input(\"showCheckBox\") public get showCheckBox() {\r\n return this._showCheckBox;\r\n }\r\n public set showCheckBox(value: boolean) {\r\n if (!value) {\r\n this.attachmentExists = true;\r\n }\r\n this._showCheckBox = value;\r\n }\r\n\r\n @Input(\"InputAttachments\") public get InputAttachments() {\r\n return this.attachments;\r\n }\r\n public set InputAttachments(values: any[]) {\r\n this.attachments = values;\r\n }\r\n\r\n @Input()\r\n set AppModuleId(value: any) {\r\n this.detailsAttachmentSVC.appModuleId = value;\r\n }\r\n\r\n\r\n _categoryId: number;\r\n public get categoryId() {\r\n return this._categoryId;\r\n }\r\n public set categoryId(value: number) {\r\n let me = this;\r\n\r\n me._categoryId = value;\r\n let correspondenceCategory = me.LookupHelpers.getCorrespondenceCategories().find(x => x.ID == me.categoryId);\r\n me.AppModuleId = correspondenceCategory.AppModuleId;\r\n\r\n if (correspondenceCategory.AppModuleId == AppModulesEnum.Correspondences) {\r\n me.RelatedType = me.detailsAttachmentSVC.RelatedTypeEnum.Correspondence;\r\n me.showCheckBox = false;\r\n me.AttachmentType = AttachmentTypesEnum.CorrespondenceAttachments;\r\n }\r\n else if (correspondenceCategory.AppModuleId == AppModulesEnum.Proclamation) {\r\n me.RelatedType = me.detailsAttachmentSVC.RelatedTypeEnum.Proclamation;\r\n me.AttachmentType = AttachmentTypesEnum.CorrespondenceAttachments;\r\n }\r\n\r\n me.EnabelPermittedUser = true;\r\n }\r\n\r\n @Input(\"RelatedType\") public get RelatedType() {\r\n return this.detailsAttachmentSVC.relatedType;\r\n }\r\n public set RelatedType(value) {\r\n this.detailsAttachmentSVC.relatedType = value;\r\n }\r\n\r\n showSetAsFinalForm: boolean = false;\r\n isCorrespondenceRecord: boolean = false;\r\n attachmentExists: boolean = false;\r\n\r\n attachments: any = [];\r\n\r\n constructor(\r\n public readonly detailsAttachmentSVC: DetailsAttachmentSVC,\r\n public readonly webTwainSVC: webTwainSVC,\r\n public readonly toastr: ToastrService,\r\n public readonly dialogs: DialogManager,\r\n public LookupHelpers: LookupHelpers,\r\n public zone: NgZone,\r\n public messagingSvc: MessagingService,\r\n public service: EGovCorrespondencesService,\r\n public assignService: CorrespondenceAssignService,\r\n public detailsSVC: DetailsSVC,\r\n public schedulingSVC: schedulingDetailsSharedSVC,\r\n public committeesSvc: CommitteesSvc,\r\n public initiativeSvc: InitiativeOverviewSvc,\r\n public dateHelper: datetimeHelper,\r\n ) {\r\n super();\r\n\r\n this.buildForm();\r\n }\r\n\r\n ngSuperOnInit() {\r\n let me = this;\r\n me.attachmentAdd.clearRelatedId();\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.messagingSvc.subscribe(\r\n \"corrAttachments\",\r\n attacmentItems => {\r\n this.attachments = attacmentItems;\r\n this.attachments.forEach(obj => {\r\n obj[\"GroupId\"] = null;\r\n obj[\"GroupModuleTypeId\"] = null;\r\n obj[\"GroupName\"] = null;\r\n obj[\"GroupType\"] = 0;\r\n\r\n\r\n });\r\n\r\n if (this.attachments.length > 0)\r\n this.attachmentExists = true;\r\n }\r\n )\r\n\r\n this.messagingSvc.subscribe(\r\n \"ConvertedInternalCorrespondenceAttachments\",\r\n attacmentItems => {\r\n this.attachments = attacmentItems;\r\n this.attachments.forEach(obj => {\r\n obj[\"GroupId\"] = null;\r\n obj[\"GroupModuleTypeId\"] = null;\r\n obj[\"GroupName\"] = null;\r\n obj[\"GroupType\"] = 0;\r\n\r\n\r\n });\r\n\r\n if (this.attachments.length > 0)\r\n this.attachmentExists = true;\r\n }\r\n )\r\n\r\n }\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n buildForm(): void { }\r\n\r\n getJsonValue(): string {\r\n return null;\r\n }\r\n\r\n setValue(json: string): void { }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n if (this.showCheckBox == true && this.attachmentExists && this.attachments.length <= 0) {\r\n this.toastr.warning(\"يجب إضافة مرفق واحد على الأقل في المؤيدات\");\r\n }\r\n return this.showCheckBox && this.attachmentExists ? this.attachments.length > 0 : true;\r\n }\r\n\r\n showAddAttachmentModal(event) {\r\n let me = this;\r\n event.stopPropagation();\r\n\r\n jQuery(\"#newCorrespondenceModal\").animate({ scrollTop: 0 });\r\n\r\n me.attachmentAdd.vShowModel(me.AttachmentType,\r\n null,\r\n me.detailsAttachmentSVC,\r\n me.webTwainSVC,\r\n me.IsOwner,\r\n me.showSetAsFinalForm,\r\n me.isCorrespondenceRecord,\r\n me.detailsAttachmentSVC.appModuleId,\r\n true,\r\n false,\r\n null,\r\n false,\r\n null,\r\n this.notRelated\r\n );\r\n }\r\n\r\n onCompleteItem(e) {\r\n\r\n if ((!e.attachment.CreatedOnString || e.attachment.CreatedOnString == \"\") && BERRY.appSettings.keys.dmsServerUrl && BERRY.appSettings.keys.dmsServerUrl != \"\") {\r\n let dtmHelper: datetimeHelper = new datetimeHelper();\r\n e.attachment.CreatedOnString = dtmHelper.ToFormattedCalendarDateString(new Date(e.attachment.CreatedOn), \"yyyy/mm/dd\");\r\n }\r\n\r\n this.attachments.push(e.attachment);\r\n this.AttachmentscountAfterAdd.emit(e);\r\n }\r\n\r\n getAttachments() {\r\n var attachmentIds = this.attachments.map(a => {\r\n return (a).attachment ? (a).attachment.RelatedAttachmentID : a.RelatedAttachmentID;\r\n });\r\n\r\n return attachmentIds;\r\n }\r\n\r\n deleteSelectedAttachment(attachment: any, index: number) {\r\n const me = this;\r\n me.dialogs.create(dialog => {\r\n if (dialog) {\r\n const options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n BERRY.loc.CommonDbRes.DeleteConfirmation,\r\n \"\",\r\n BERRY.loc.CommonDbRes.Yes,\r\n BERRY.loc.CommonDbRes.No\r\n );\r\n dialog.show(options, result => {\r\n if (result === ConfirmationBoxResult.Yes) {\r\n if (attachment.isFromYesser) {\r\n me.attachments = me.attachments.filter(a => a != attachment);\r\n }\r\n else {\r\n me.deleteAttachment(attachment);\r\n me.CheckAttachmentSummaryAfterEdit.emit(attachment);\r\n }\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n getYesserAttachmentList() {\r\n let me = this;\r\n me.service.GetEGovAttachments(me.EGovCorrId).pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(result => {\r\n if (result)\r\n me.yesserAttachmentList = result.filter(a => me.attachments.findIndex(att => att.RelatedAttachmentID == a.AttachmentId) == -1)\r\n this.YesserAttachmentPopuppOption.actions = this.YesserAttachmentPopuppOption.actions.filter(({ type }) => type == 'close');\r\n if (me.yesserAttachmentList != null && me.yesserAttachmentList.length != 0) {\r\n var actions: Action[] = [\r\n { text: BERRY.getText(\"Add\", \"Common\"), type: 'submit', event: () => this.addSelectedAttachments() }];\r\n this.YesserAttachmentPopuppOption.actions.push(...actions);\r\n }\r\n me.yesserAttachmentPopup.open();\r\n });\r\n }\r\n\r\n onSelectionChange(relatedAttachmentID, checked: boolean) {\r\n if (checked) {\r\n this.selectedAttachmentsIds = [\r\n ...this.selectedAttachmentsIds,\r\n relatedAttachmentID\r\n ];\r\n } else {\r\n this.selectedAttachmentsIds = this.selectedAttachmentsIds.filter(\r\n x => x != relatedAttachmentID\r\n );\r\n }\r\n }\r\n\r\n addSelectedAttachments() {\r\n let me = this;\r\n var selectedAtt = me.yesserAttachmentList.filter(a => me.selectedAttachmentsIds.findIndex(att => att == a.AttachmentId) > -1);\r\n if (selectedAtt) {\r\n if (selectedAtt.length == 0) {\r\n me.dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n BERRY.getText('SelectOneAtLeast', 'SelectAttachmentPopup')\r\n );\r\n dialog.show(options);\r\n }\r\n });\r\n }\r\n else {\r\n let dtmHelper: datetimeHelper = new datetimeHelper();\r\n selectedAtt.forEach(obj => {\r\n var dto = new AttachmentDto();\r\n dto.AttachmentSubject = obj.AttachmentFilename;\r\n dto.AttachmentTitle = obj.AttachmentFilename;\r\n dto.DmsFileId = obj.AttachmentId;\r\n dto.Extension = obj.AttachmentContentType;\r\n dto.RelatedAttachmentID = obj.AttachmentId;\r\n dto.AttachmentsGroupId = me.AttachmentGroupId;\r\n dto.isSuported = obj.isSuported;\r\n dto.isFromYesser = true;\r\n dto.CreatedOnString = dtmHelper.ToFormattedCalendarDateString(new Date(obj.CreatedDate), \"yyyy/mm/dd\");\r\n me.attachments.push(dto);\r\n });\r\n me.selectedAttachmentsIds = [];\r\n me.yesserAttachmentPopup.close();\r\n }\r\n }\r\n }\r\n\r\n private deleteAttachment(attachment) {\r\n const me = this;\r\n\r\n let deleteUrl = me.DeleteUrl;\r\n\r\n if (me.AttachmentType == AttachmentTypesEnum.Committess)\r\n deleteUrl = `api/committees/DeleteCommitteeAttachment`;\r\n\r\n me.detailsAttachmentSVC\r\n .deleteAttachment(\r\n attachment.RelatedAttachmentID ? attachment.RelatedAttachmentID : (attachment).PrimaryId,\r\n attachment.RelatedID ? attachment.RelatedID : (attachment).PrimaryId,\r\n deleteUrl\r\n ).pipe(\r\n takeWhile(() => me.isSubscribed))\r\n .subscribe(Data => {\r\n if (!Data.error) {\r\n if (attachment.RelatedAttachmentID)\r\n me.attachments = me.attachments.filter(\r\n a =>\r\n (\r\n a.RelatedAttachmentID !=\r\n attachment.RelatedAttachmentID\r\n )\r\n &&\r\n (\r\n !(a).attachment\r\n ||\r\n (\r\n (a).attachment &&\r\n (a).attachment.RelatedAttachmentID !=\r\n attachment.RelatedAttachmentID\r\n )\r\n )\r\n );\r\n if ((attachment).PrimaryId)\r\n me.attachments = me.attachments.filter(\r\n a =>\r\n (\r\n (a).PrimaryId !=\r\n (attachment).PrimaryId\r\n )\r\n &&\r\n (\r\n !(a).attachment ||\r\n (\r\n (a).attachment &&\r\n (a).attachment.PrimaryId !=\r\n (attachment).PrimaryId\r\n )\r\n )\r\n );\r\n me.SelectedAttachmentsIds = me.selectedAttachmentsIds.filter(a => a != attachment);\r\n me.toastr.success(BERRY.loc.common.successMessage);\r\n } else me.toastr.error(Data.error);\r\n });\r\n }\r\n\r\n hasEvidencesChanged() {\r\n let me = this;\r\n\r\n if (!me.attachmentExists)\r\n me.attachments = [];\r\n }\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n OnSelectRadio(attachment: any) {\r\n this.attachments.forEach(obj => {\r\n obj[\"IsSetAsFinalForm\"] = false;\r\n });\r\n if (attachment != null) {\r\n attachment.IsSetAsFinalForm = true;\r\n }\r\n }\r\n\r\n @ViewChild(\"attachmentCmp\") attachmentCmp: AttachmentslistCmp;\r\n\r\n hideAttachmentGroup: boolean = BERRY.onOffFeatures.boeNewCorrespondences;\r\n\r\n @ViewChild('correspondenceAttachmentsPopup') correspondenceAttachmentsPopup: PopupComponent;\r\n correspondenceAttachmentsPopupOption: IPopup = {\r\n actions: [\r\n {\r\n text: this.getText('Save', 'CSHTML/Areas/Correspondences/NewApp/NewOutgoing'), type: 'submit', event: () => this.vSaveAttachments()\r\n },\r\n {\r\n text: this.getText('cancel', 'CSHTML/Areas/Correspondences/NewApp/NewOutgoing'), type: 'close'\r\n }\r\n ],\r\n mode: 'small',\r\n dirtyFormCheck: () => true,\r\n }\r\n\r\n SelectedAttachmentsIds = [];\r\n vShowAttachmentList() {\r\n var checkboxes: any = this.unSelectedAttachmentIds;\r\n for (var i = 0, n = checkboxes.length; i < n; i++) {\r\n checkboxes[i].checked = false;\r\n }\r\n\r\n this.GetTaskAttachments();\r\n\r\n this.attachments.forEach((item) => {\r\n this.SelectedAttachmentsIds.push(item.RelatedAttachmentID);\r\n });\r\n\r\n this.attachmentCmp.SelectedAttachmentIds = this.SelectedAttachmentsIds;\r\n\r\n this.correspondenceAttachmentsPopup.open();\r\n }\r\n\r\n unSelectedAttachmentIds = [];\r\n popupAttachment = [];\r\n GetTaskAttachments() {\r\n var me = this;\r\n me.assignService.isBusy = true;\r\n\r\n me.assignService\r\n .GetTaskAttachments(me.relatedGuidId, me.relatedTypeId, me.relatedIntId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(response => {\r\n me.unSelectedAttachmentIds = response.attachments;\r\n me.attachmentCmp.Attachments = response.attachments;\r\n me.assignService.isBusy = false;\r\n });\r\n }\r\n\r\n get hideAttachmentsGroup() {\r\n return true;\r\n }\r\n\r\n @Input() isHideAttachmentsGroup: boolean = false;\r\n\r\n get relatedIntId() {\r\n if (this.detailsAttachmentSVC.appModuleId == AppModulesEnum.Committees)\r\n return this.committeesSvc.CommitteeId;\r\n else if (this.detailsAttachmentSVC.appModuleId == AppModulesEnum.Initiatives)\r\n return this.initiativeSvc.InitiativeId;\r\n else\r\n return 0;\r\n }\r\n\r\n get relatedGuidId() {\r\n let me = this;\r\n if (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Correspondences)\r\n return this.detailsSVC.CorrId;\r\n else if (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Scheduling)\r\n return this.schedulingSVC.scheduleItem.ScheduleItemId;\r\n else if (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Tasks)\r\n return this.detailsSVC.CorrId;\r\n else\r\n return Guid.EMPTY;\r\n }\r\n\r\n get relatedTypeId() {\r\n let me = this;\r\n\r\n if (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Correspondences)\r\n return TaskTypesEnum.CorrespondenceTask;\r\n else if (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Scheduling)\r\n return TaskTypesEnum.ScheduleItemTask;\r\n else if (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Committees)\r\n return TaskTypesEnum.CommitteeTask;\r\n else if (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Initiatives)\r\n return TaskTypesEnum.InitiativeTask;\r\n else if (me.detailsAttachmentSVC.appModuleId == AppModulesEnum.Tasks)\r\n return TaskTypesEnum.CorrespondenceTask;\r\n }\r\n\r\n get bIsDisabledAttachments(): boolean {\r\n const checkboxes: any = document.getElementsByClassName(\r\n \"cbTaskAttachmentList\"\r\n );\r\n for (var i = 0, n = checkboxes.length; i < n; i++) {\r\n if (checkboxes[i].checked) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n vSaveAttachments(): void {\r\n var me = this;\r\n\r\n if (\r\n !this.bIsDisabledAttachments\r\n ) {\r\n\r\n var SelectedAttachmentsIds = me.GetSelectedAttachmentsId();\r\n\r\n me.attachmentCmp.Attachments.forEach(item => {\r\n\r\n SelectedAttachmentsIds.forEach(selectedAttachment => {\r\n\r\n if (item.DmsFileId == selectedAttachment && !me.attachments.some(obj => obj.DmsFileId === selectedAttachment)) {\r\n\r\n let taskLinkedAttachment = {\r\n AttachmentTitle: item.AttachmentTitle,\r\n DmsFileId: item.RelatedAttachmentID,\r\n Extension: item.Extension,\r\n CreatedOnString: item.UploadDateShortFormat,\r\n RelatedAttachmentID: item.RelatedAttachmentID\r\n }\r\n me.attachments.push(taskLinkedAttachment);\r\n }\r\n\r\n });\r\n });\r\n }\r\n\r\n this.correspondenceAttachmentsPopup.close();\r\n }\r\n\r\n GetSelectedAttachmentsId() {\r\n var array_ids = [];\r\n var checkboxes: any = document.getElementsByClassName(\r\n \"cbTaskAttachmentList\"\r\n );\r\n\r\n for (var i = 0, n = checkboxes.length; i < n; i++) {\r\n if (checkboxes[i].checked) {\r\n array_ids.push(checkboxes[i].id);\r\n checkboxes[i].checked = false;\r\n }\r\n }\r\n\r\n this.SelectedAttachmentsIds = array_ids;\r\n return array_ids;\r\n }\r\n\r\n}\r\n","import { ObjectState } from \"src/app/_common/models/objectstate\";\r\n\r\nexport class InitiativeUserDto {\r\n name: string;\r\n UserID: number;\r\n State: ObjectState;\r\n}","
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n {{contact.name}}\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","import { Component } from \"@angular/core\";\r\nimport { ContactsHelpers } from \"src/app/Contacts/helpers\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { IComboboxServerDatasourceOptions, IComboboxOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { InitiativeUserDto } from \"./InitiativeUserDto\";\r\nimport { ObjectState } from \"src/app/_common/models/objectstate\";\r\nimport { Router, ActivatedRoute } from \"@angular/router\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"individual-contacts-control\",\r\n templateUrl: \"./fb-individual-contacts-control.html\"\r\n})\r\nexport class fbIndividualContactsControlComponent extends BaseCmp implements IFormBuilderComponent {\r\n\r\n\r\n isMultiValueCtrlMappedToDb: boolean = false;\r\n\r\n contacts: InitiativeUserDto[] = [];\r\n\r\n autocompleteDefaultOptionsForUser: IComboboxOptions = {\r\n dataTextField: 'Value',\r\n dataValueField: 'dbid',\r\n allowFreeText: false,\r\n minLength: 1\r\n };\r\n\r\n comboBoxServerSearchDatasourceDefaultOptionsForUser: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"GET\",\r\n resultsField: 'd',\r\n searchField: 'kw'\r\n };\r\n\r\n userAutocompleteOptions = Object.assign({}, this.autocompleteDefaultOptionsForUser, {\r\n serverDatasource: Object.assign({}, this.comboBoxServerSearchDatasourceDefaultOptionsForUser, {\r\n url: `${BERRY.hostName}api/ConfidentialityApi/ConfidentialUserAutoComplete`\r\n }),\r\n dataTextField: 'value',\r\n dataValueField: 'dbid',\r\n allowFreeText: false,\r\n displayTemplate: \"#: data.number # - #: data.value #   #:data.sector#\",\r\n autoBind: false\r\n });\r\n\r\n\r\n constructor(public defaults: ContactsHelpers, public router: Router, public route: ActivatedRoute) {\r\n super();\r\n\r\n this.buildForm();\r\n }\r\n\r\n ngSuperOnInit() {\r\n }\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n buildForm(): void { }\r\n\r\n getJsonValue(): string {\r\n var me = this;\r\n const result = JSON.stringify(me.contacts);\r\n return result;\r\n }\r\n\r\n setValue(json: string): void {\r\n this.contacts = JSON.parse(json);\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n return true;\r\n }\r\n\r\n selectedItem: any = null;\r\n\r\n selectItemToList(obj) {\r\n this.selectedItem = obj;\r\n }\r\n addItemToList() {\r\n var initiativeUser = new InitiativeUserDto();\r\n if (this.selectedItem) {\r\n initiativeUser.name = this.selectedItem.value;\r\n initiativeUser.UserID = this.selectedItem.dbid;\r\n initiativeUser.State = ObjectState.Added;\r\n this.contacts.push(initiativeUser);\r\n $(\"#individualAutocomplete\").data(\"kendoComboBox\").value(\"\");\r\n //clear current selected after adding\r\n this.selectedItem = null;\r\n }\r\n }\r\n\r\n removeItem(index: number): void {\r\n this.contacts.splice(index, 1);\r\n }\r\n}\r\n","import { ObjectState } from \"src/app/_common/models/objectstate\";\r\n\r\nexport class InitiativeOrganizationDto {\r\n name: string;\r\n OrganizationID: number;\r\n State: ObjectState;\r\n}","
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n {{contact.name}}\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","import { Component } from \"@angular/core\";\r\nimport { ContactsHelpers } from \"src/app/Contacts/helpers\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { IComboboxServerDatasourceOptions, IComboboxOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\n//import { OrganizationQuickEntryCmp } from \"src/app/Contacts/organizations/organization-quick-entry-cmp\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { InitiativeOrganizationDto } from \"./InitiativeOrganizationDto\";\r\nimport { ObjectState } from \"src/app/_common/models/objectstate\";\r\nimport { Router } from \"@angular/router\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"organization-contacts-control\",\r\n templateUrl: \"./fb-organization-contacts-control.html\"\r\n})\r\nexport class fbOrganizationContactsControlComponent extends BaseCmp implements IFormBuilderComponent {\r\n\r\n isMultiValueCtrlMappedToDb: boolean = false;\r\n\r\n contacts: InitiativeOrganizationDto[] = [];\r\n\r\n autocompleteDefaultOptions: IComboboxOptions = {\r\n allowFreeText: false\r\n };\r\n\r\n comboBoxServerSearchDatasourceDefaultOptions2: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"get\",\r\n resultsField: \"items\",\r\n searchField: \"keyword\"\r\n };\r\n\r\n organizationsAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.autocompleteDefaultOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.comboBoxServerSearchDatasourceDefaultOptions2,\r\n {\r\n url: BERRY.hostName + \"api/contacts/search/organizations\"\r\n }\r\n ),\r\n minLength: 1,\r\n dataTextField: \"DisplayName\",\r\n dataValueField: \"Id\",\r\n allowFreeText: false,\r\n displayTemplate: \"#: !data.NationalCode? data.dbid + ' - ': '' # #: data.NationalCode? data.NationalCode + ' - ': '' # #: data.value #\",\r\n }\r\n );\r\n\r\n //@ViewChild(\"ContactsOrganizationQuickEntryContainer\") OrganizationQuickEntry: OrganizationQuickEntryCmp;\r\n\r\n constructor(public defaults: ContactsHelpers, public router: Router) {\r\n super();\r\n\r\n this.buildForm();\r\n }\r\n\r\n ngSuperOnInit() { }\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n buildForm(): void { }\r\n\r\n getJsonValue(): string {\r\n var me = this;\r\n const result = JSON.stringify(me.contacts);\r\n return result;\r\n }\r\n\r\n setValue(json: string): void {\r\n this.contacts = JSON.parse(json);\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n return true;\r\n }\r\n\r\n openAddContactsModal() {\r\n // this.OrganizationQuickEntry.show();\r\n this.router.navigate([{ outlets: { 'modal': ['add-new-organization'] } }],{ skipLocationChange:false});\r\n }\r\n\r\n addItemToList(obj) {\r\n var initiativeOrg = new InitiativeOrganizationDto();\r\n if (obj) {\r\n initiativeOrg.name = obj.DisplayName;\r\n initiativeOrg.OrganizationID = obj.Id;\r\n initiativeOrg.State = ObjectState.Added;\r\n this.contacts.push(initiativeOrg);\r\n $(\"#externalContactAutoComplete\").data(\"kendoComboBox\").value(\"\");\r\n }\r\n }\r\n\r\n removeItem(index: number): void {\r\n this.contacts.splice(index, 1);\r\n }\r\n}\r\n","import { Component, ViewChild } from \"@angular/core\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { kendoMultiSelect } from \"src/app/_common/directives/KendoUI-wrappers/kendoMultiSelect\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { LookupHelpers } from \"src/app/Lookups/LookupHelpers\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"correspondence-country\",\r\n templateUrl: \"./fb-correspondence-country.html\"\r\n})\r\nexport class fbCorrespondenceCountryComponent extends BaseCmp implements IFormBuilderComponent {\r\n\r\n countrySelectOptions = {\r\n serviceQueryParameterName: \"keyword\",\r\n dataSource: this.lookupHelpers.getCountryLight(),\r\n dataTextField: \"Name\",\r\n dataValueField: \"CountryId\",\r\n returnValueAsText: false,\r\n itemTemplate:\r\n ' #: data.Name #',\r\n tagTemplate:\r\n ' #: data.Name #',\r\n minLength: 1\r\n };\r\n\r\n @ViewChild(\"countryTagsControl\") public KeywordTagsControl: kendoMultiSelect;\r\n\r\n isMultiValueCtrlMappedToDb: boolean = false;\r\n public correspondenceContry: any = [];\r\n\r\n constructor(public lookupHelpers: LookupHelpers) {\r\n super();\r\n }\r\n\r\n ngSuperOnInit() { }\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n buildForm(): void { }\r\n\r\n public getJsonValue(): string {\r\n return JSON.stringify(this.correspondenceContry);\r\n }\r\n\r\n setValue(json: string): void {\r\n this.KeywordTagsControl.InitialValues = JSON.parse(json);\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n return true;\r\n }\r\n\r\n onCountriesSelected(e) {\r\n if (e == null) this.correspondenceContry = [];\r\n else\r\n this.correspondenceContry = e.map(item => {\r\n return {\r\n CountryId: item.CountryId,\r\n Name: item.Name,\r\n CountryCodeISO2: item.CountryCodeISO2\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
    ","import { Component, NgZone } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { LookupHelpers } from \"src/app/Lookups/LookupHelpers\";\r\nimport { CorrespondenceFilingFeatures } from \"../../../../../berry/correspondences/NewCorrespondence/CorrespondenceFilingFeatures-cmp\";\r\nimport { FormBuilderApiSvc } from \"../../formBuilder-api-svc\";\r\nimport { DetailsSVC } from \"../../../../../berry/correspondences/details/details-svc\";\r\nimport { CategoryTypeClassificationSvc } from \"../../../../../berry/correspondences/manage/Category-Type-Classification/category-type-classification-svc\";\r\nimport { BorrowRequestsvc } from \"../../../../../berry/correspondences/details/info/DetailsFiling/borrowRequest-svc\";\r\nimport { generalSettingsSvc } from \"../../../../../berry/correspondences/manage/generalSettings/general-settings-svc\";\r\nimport { NewCorrespondenceSvc } from \"../../../../../berry/correspondences/NewCorrespondence/New-Correspondence-svc\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { ContactsHelpers } from \"../../../../../Contacts/helpers\";\r\nimport { StorageShelvesSvc } from \"../../../../../berry/correspondences/NewCorrespondence/storage/storage-shelve-svc\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"correspondence-filing-features\",\r\n templateUrl: \"./fb-correspondence-filing-features.html\"\r\n})\r\nexport class fbCorrespondenceFilingFeatures extends CorrespondenceFilingFeatures implements IFormBuilderComponent {\r\n filingLocationGroup: any;\r\n constructor(\r\n public newCorrespondenceSvc: NewCorrespondenceSvc,\r\n public generalSettingsSvc: generalSettingsSvc,\r\n public borrowRequestsvc: BorrowRequestsvc,\r\n public categoryTypeClassificationSvc: CategoryTypeClassificationSvc,\r\n public detailsSVC: DetailsSVC,\r\n public router: Router,\r\n public LookupHelpers: LookupHelpers,\r\n \r\n public formBuilderApiSvc: FormBuilderApiSvc,\r\n public storageShelvesSvc: StorageShelvesSvc,\r\n public zone: NgZone,\r\n public defaults: ContactsHelpers,\r\n public route: ActivatedRoute ) {\r\n super(\r\n newCorrespondenceSvc,\r\n generalSettingsSvc,\r\n borrowRequestsvc,\r\n categoryTypeClassificationSvc,\r\n detailsSVC,\r\n storageShelvesSvc,\r\n zone,\r\n defaults,\r\n router,\r\n route\r\n );\r\n }\r\n init() {\r\n this.buildForm();\r\n }\r\n\r\n ngSuperOnInit(): any {\r\n let me = this;\r\n me.isHideShelvingSection();\r\n if ((this.router).rawUrlTree.root.children.primary.segments[1] && (this.router).rawUrlTree.root.children.primary.segments[1].path == \"Create\") \r\n me.categoryId = +(this.router).rawUrlTree.root.children.primary.segments[2].path\r\n this.detailsSVC.catId = me.categoryId;\r\n \r\n }\r\n\r\n showCorrespondanceFilingFeatures() {\r\n return BERRY.onOffFeatures.ShowCorrespondanceShelvingFeatures;\r\n }\r\n\r\n isMultiValueCtrlMappedToDb: boolean = false;\r\n\r\n buildForm(): void { }\r\n\r\n getJsonValue(): string {\r\n return JSON.stringify(this.filingLocationGroup);\r\n }\r\n setValue(json: string): void {\r\n this.filingLocationGroup = JSON.parse(json);\r\n }\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n validate(): boolean {\r\n return true;\r\n }\r\n\r\n get showBasicCorrespondenceShelving() {\r\n return BERRY.appSettings.keys.showBasicCorrespondenceShelving;\r\n }\r\n\r\n hideCorrespondencesShelvingSection = false;\r\n isHideShelvingSection() {\r\n let me = this;\r\n me.generalSettingsSvc\r\n .GetValue(\"CorrespondencesSetting\"\r\n , \"HideCorrespondencesShelvingSectionOnCreateCorrespondenceScreen\")\r\n .subscribe(data => {\r\n me.hideCorrespondencesShelvingSection = data == \"true\";\r\n });\r\n }\r\n\r\n collapseOnClick() {\r\n this.hideCorrespondencesShelvingSection = !this.hideCorrespondencesShelvingSection\r\n }\r\n\r\n //get ShowCorrespondenceFilesLocationField() {\r\n // return this._showCorrespondenceFilesLocationField;\r\n //}\r\n\r\n //_showCorrespondenceFilesLocationField: boolean = false;\r\n //getCorrespondencesCategoriesSettings() {\r\n // let me = this;\r\n // me.categoryTypeClassificationSvc.\r\n // GetCorrespondencesCategoriesSettings()\r\n // .subscribe(data => {\r\n // if (data && data.Value) {\r\n // JSON.parse(data.Value);\r\n // var categoriesSettingsValues = JSON.parse(data.Value).filter(x => x.SettingKey == \"FilesLocationFieldShows\")[0];\r\n // if (categoriesSettingsValues.Categories.find(e => e == me.categoryId) != undefined\r\n // || categoriesSettingsValues.AllCategoriesChecked == true)\r\n // me._showCorrespondenceFilesLocationField = true;\r\n // }\r\n // });\r\n //}\r\n}\r\n\r\n","import { Component, ViewChild } from \"@angular/core\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { kendoMultiSelect } from \"src/app/_common/directives/KendoUI-wrappers/kendoMultiSelect\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"correspondence-keyword\",\r\n templateUrl: \"./fb-correspondence-keyword.html\"\r\n})\r\nexport class fbCorrespondenceKeywordComponent extends BaseCmp implements IFormBuilderComponent {\r\n\r\n KWSelectOptions = {\r\n dataSource: BERRY.Lookups.CorrespondanceKeyWords.filter(a => a.IsActive),\r\n dataTextField: BERRY.isEn ? \"TextEN\" : \"TextAR\",\r\n dataValueField: \"ID\",\r\n returnValueAsText: false\r\n };\r\n\r\n @ViewChild(\"KeywordTagsControl\") public KeywordTagsControl: kendoMultiSelect;\r\n\r\n isMultiValueCtrlMappedToDb: boolean = false;\r\n public correspondenceKeyword: CorrespondenceKeywordLinkedItem[] = [];\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n ngSuperOnInit() { }\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n buildForm(): void { }\r\n\r\n public getJsonValue(): string {\r\n return JSON.stringify(this.correspondenceKeyword);\r\n }\r\n\r\n setValue(json: string): void {\r\n this.KeywordTagsControl.InitialValues = JSON.parse(json);\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n return true;\r\n }\r\n\r\n onKeywordsTagsSelected(e) {\r\n if (e == null) this.correspondenceKeyword = [];\r\n else\r\n this.correspondenceKeyword = e.map(item => {\r\n return new CorrespondenceKeywordLinkedItem(item.ID);\r\n });\r\n }\r\n}\r\n\r\nexport class CorrespondenceKeywordLinkedItem {\r\n constructor(\r\n correspondenceKeywordId: number,\r\n correspondenceId: string = null\r\n ) {\r\n this.CorrespondenceKeywordId = correspondenceKeywordId;\r\n this.CorrespondenceId = correspondenceId;\r\n }\r\n\r\n public CorrespondenceKeywordId: number;\r\n public CorrespondenceId: string;\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 {{getText('NotlinkedWithTangibleItems','CorrespondenceNew')}}\r\n \r\n\r\n \r\n {{getText('linkWithTangibleItems','CorrespondenceNew')}}\r\n \r\n\r\n 1 && !additionalExternalRecipient.Unattached && !additionalExternalRecipient.NumberOfUnattached\"\r\n class=\"pull-right\">\r\n {{getText('linkedWithTangibleItems','CorrespondenceNew')}}\r\n {{additionalExternalRecipient?.CorrespondenceUnattacheds?.length}}\r\n {{getText('Unattached','MergeCorrespondence')}}\r\n \r\n\r\n \r\n {{getText('SingleTangibleItem','CorrespondenceNew')}}\r\n \r\n 0 || additionalExternalRecipient.Unattached || additionalExternalRecipient.NumberOfUnattached\"\r\n class=\"pull-left\" href=\"javascript:void(0)\"\r\n data-automation-id=\"Edit-link-with-tangible-items-automation-id\"\r\n (click)=\"openCorrespondenceUnattachedPopup(additionalExternalRecipient)\">\r\n {{getText('EditlinkWithTangibleItems','CorrespondenceNew')}}\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 {{getText('LinkWith','CorrespondenceNew')}}\r\n {{ExternalRecipientUnattached?.Name}}\r\n
    \r\n\r\n
    \r\n 0\">({{ExternalRecipientUnattached?.CorrespondenceUnattacheds?.length}})\r\n (1)\r\n {{getText('Unattached','MergeCorrespondence')}}\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 {{getText(\"AddNewUnattached\",\"CorrespondenceNew\")}}\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
    ","import { Component, Output, EventEmitter, Input, ViewChild } from \"@angular/core\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { FormGroup, FormBuilder } from \"@angular/forms\";\r\nimport { ContactsHelpers } from \"src/app/Contacts/helpers\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { IComboboxServerDatasourceOptions, IComboboxOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { MessagingService } from \"src/app/_common/services/messaging-service\";\r\nimport { AdditionaUnattached } from \"src/app/berry/correspondences/_models/CorrespondenceDynamicForms/CorrespondenceDynamicFormsDto\";\r\nimport { ObjectState } from \"src/app/_common/models/objectstate\";\r\nimport { generalSettingsSvc } from \"src/app/berry/correspondences/manage/generalSettings/general-settings-svc\";\r\nimport { IExternalRecipientGroupDto } from \"../../../../models/IExternalRecipientGroupDto\";\r\nimport { FilingStorageSvc } from \"src/app/berry/correspondences/NewCorrespondence/storage/filing-storage-svc\";\r\n\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n\r\n\r\n@Component({\r\n selector: \"external-recipient-as-copy\",\r\n templateUrl: \"./fb-external-recipient-as-copy.html\"\r\n})\r\nexport class fbExternalRecipientAsCopyComponent extends BaseCmp implements IFormBuilderComponent {\r\n\r\n\r\n get isEngilsh() {\r\n\r\n return BERRY.isEn;\r\n }\r\n\r\n @ViewChild(\"correspondenceUnattachedPopup\") correspondenceUnattachedPopup: any;\r\n @Input(\"IsWhiteColor\") IsWhiteColor: boolean = false;\r\n\r\n isMultiValueCtrlMappedToDb: boolean = false;\r\n isMaxLength: boolean = false;\r\n notValidNumber: boolean = false;\r\n\r\n additionalExternalRecipientFrm: FormGroup;\r\n numberOfCorrespondenceExternalRecipients: number = 0;\r\n correspondenceExternalRecipientGroupObj: IExternalRecipientGroupDto = new IExternalRecipientGroupDto();\r\n\r\n correspondenceExternalRecipients: CorrespondenceExternalRecipientDto[] = [];\r\n\r\n selectedCorrespondenceExternalRecipientsTemp: CorrespondenceExternalRecipientDto[] = [];\r\n filteredItems: CorrespondenceExternalRecipientDto[] = [];\r\n\r\n _regularFormsUsage: boolean = false;\r\n _isCustomDesign: boolean = false;\r\n EnableAddExternalRecipientAsCopy: boolean = false;\r\n\r\n @Input(\"IsForCommunications\") IsForCommunications: boolean = false;\r\n @Input(\"isReadonly\") isReadonly: boolean = false;\r\n\r\n @Output() externalContactAdded = new EventEmitter();\r\n\r\n @Input(\"IsEditMode\") IsEditMode: boolean = false;\r\n\r\n @Input()\r\n set RegularFormsUsage(flag: boolean) {\r\n this._regularFormsUsage = flag;\r\n }\r\n\r\n get RegularFormsUsage() {\r\n return this._regularFormsUsage;\r\n }\r\n _ExternalRecipientId: any = null;\r\n @Input()\r\n set ExternalRecipientId(flag: any) {\r\n this._ExternalRecipientId = flag;\r\n }\r\n\r\n get ExternalRecipientId() {\r\n return this._ExternalRecipientId;\r\n }\r\n\r\n @Input()\r\n set isCustomDesign(flag: boolean) {\r\n this._isCustomDesign = flag;\r\n }\r\n\r\n get isCustomDesign() {\r\n return this._isCustomDesign;\r\n }\r\n public _externalContacts: any[] = [];\r\n public get externalContacts(): any {\r\n let me = this;\r\n me._externalContacts.forEach(element => {\r\n\r\n });\r\n return this._externalContacts;\r\n }\r\n\r\n\r\n private _parentSaved: boolean;\r\n @Input(\"parentSaved\") public get parentSaved(): boolean {\r\n return this._parentSaved;\r\n }\r\n public set parentSaved(v: boolean) {\r\n if (v == true) {\r\n this.externalContactAdded.emit(this.correspondenceExternalRecipients);\r\n }\r\n this._parentSaved = v;\r\n }\r\n\r\n\r\n //Costant form controls names\r\n readonly _additionalExternalrecipiens = \"additionalExternalrecipients\";\r\n readonly _additionalExternalRecipientEntity = \"ExternalContactID\";\r\n\r\n ExternalRecipientUnattached: CorrespondenceExternalRecipientDto;\r\n UnattachedArray: AdditionaUnattached[] = [];\r\n\r\n comboBoxServerSearchDatasourceDefaultOptions: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"post\",\r\n searchField: \"kw\",\r\n resultsField: \"d\"\r\n };\r\n\r\n comboBoxServerSearchDatasourceDefaultOptionsRecipientGroups: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"GET\",\r\n searchField: \"kw\",\r\n resultsField: \"\"\r\n };\r\n\r\n correspondenceExternalRecipientsAutocompleteOptions = {\r\n serviceQueryParameterName: \"kw\",\r\n serviceMethod: \"post\",\r\n height: 200,\r\n serviceDataSchema: \"\",\r\n template: \"#: data.dbid # - #: data.value #\",\r\n dataTextField: \"value\",\r\n dataValueField: \"dbid\",\r\n autoBind: true,\r\n serviceUrl:\r\n BERRY.hostName + \"Correspondences/NewApp/GetExternalContacts\"\r\n\r\n };\r\n\r\n public allExternalRecipientGroupsWithExternalContactAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaults.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.comboBoxServerSearchDatasourceDefaultOptionsRecipientGroups,\r\n {\r\n url: BERRY.hostName +\r\n \"api/DepartmentApi/GetAllExternalRecipientGroupsWithExternalContact?includeEgovText=true\"\r\n }\r\n ),\r\n dataTextField: BERRY.isEn ? 'NameEn' : 'NameAr',\r\n dataValueField: \"Id\",\r\n allowFreeText: false,\r\n displayTemplate: this.bindTemplate,\r\n autoBind: true,\r\n minLength: 1\r\n }\r\n );\r\n\r\n bindTemplate(data) {\r\n var Id = data.Id;\r\n if (!!data.NationalCode)\r\n Id = data.NationalCode;\r\n if (BERRY.isEn) {\r\n return \"\" + Id + \" - \" + data.NameEn + \"\"\r\n }\r\n else {\r\n return \"\" + Id + \" - \" + data.NameAr + \"\"\r\n }\r\n\r\n\r\n }\r\n\r\n private UnattachedTypesCombo: IComboboxOptions = Object.assign({}, this.defaults.defaultAutocompleteOptions, {\r\n serverDatasource: Object.assign({}, \r\n {\r\n enabled: true,\r\n method: \"get\",\r\n searchField: \"kw\",\r\n resultsField: \"\"\r\n },\r\n {\r\n url: BERRY.hostName + 'api/CorrespondenceUnattachedApi/GetComboBoxes'\r\n }),\r\n dataTextField: 'Text',\r\n dataValueField: 'Id',\r\n allowFreeText: false,\r\n displayTemplate: \"#: data.Id # - #: data.Text # \",\r\n autoBind: false,\r\n minLength: 1\r\n });\r\n\r\n constructor(\r\n public readonly messagingSvc: MessagingService,\r\n public defaults: ContactsHelpers,\r\n public toastr: ToastrService,\r\n public filingStorageSvc: FilingStorageSvc,\r\n public fb: FormBuilder,\r\n public generalSettingsSvc: generalSettingsSvc\r\n ) {\r\n super();\r\n\r\n\r\n if (!this.IsEditMode) {\r\n this.ExternalRecipientUnattached = new CorrespondenceExternalRecipientDto();\r\n }\r\n\r\n this.messagingSvc.subscribe(\r\n \"TangibleItems\",\r\n tangibleItems => {\r\n this.UnattachedArray = tangibleItems\r\n });\r\n\r\n this.messagingSvc.subscribe(\r\n \"RemoveTangibleItemFromAllExternalRecipients\",\r\n rowId => {\r\n this.RemoveUnattachedFromAllExternalRecipients(rowId);\r\n });\r\n\r\n this.messagingSvc.subscribe(\r\n \"AdvancedTangibleItemsSetting\",\r\n settingValue => {\r\n this.enableAdvancedTangibleItems = settingValue;\r\n });\r\n }\r\n\r\n ngSuperOnInit() { }\r\n\r\n ngSuperAfterViewInit() {\r\n this.getAddExternalRecipientAsCopySetting();\r\n this.getAdvancedTangibleItemsSetting();\r\n }\r\n\r\n resetData() {\r\n let me = this;\r\n me.correspondenceExternalRecipients = [];\r\n me.searchText = \"\";\r\n if ($(\"#ExternalRecipientGroupAutocomplete\").data(\"kendoComboBox\")) {\r\n $(\"#ExternalRecipientGroupAutocomplete\").data(\"kendoComboBox\").text(\"\");\r\n $(\"#ExternalRecipientGroupAutocomplete\").data(\"kendoComboBox\").value(\"\");\r\n }\r\n }\r\n\r\n enableAdvancedTangibleItems: boolean;\r\n getAdvancedTangibleItemsSetting() {\r\n this.generalSettingsSvc.GetValue(\"CorrespondencesSetting\", \"EnableAdvancedTangibleItems\")\r\n .subscribe(\r\n settingValue => {\r\n this.enableAdvancedTangibleItems = settingValue == \"true\";\r\n });\r\n }\r\n\r\n RemoveExternalRow(item) {\r\n let me = this;\r\n\r\n const itemIndex = item.ItemIndex;\r\n const itemExtContId = item.ExternalContactID;\r\n let externalIds = me.filingStorageSvc.externalEntityIds;\r\n \r\n const index = externalIds.indexOf(+itemExtContId); \r\n if (index > -1) {\r\n externalIds.splice(index, 1);\r\n }\r\n\r\n const _index = me.correspondenceExternalRecipients.findIndex(x => x.ItemIndex == itemIndex);\r\n const _indexTemp = me.selectedCorrespondenceExternalRecipientsTemp.findIndex(x => x.ItemIndex == itemIndex);\r\n\r\n me.correspondenceExternalRecipients.splice(_index, 1);\r\n me.selectedCorrespondenceExternalRecipientsTemp.splice(_indexTemp, 1);\r\n\r\n if (me.paginateOptions.totalItems > 10)\r\n me.getAllExternalRecipients(me.paginateOptions.currentPage);\r\n\r\n me.numberOfCorrespondenceExternalRecipients--;\r\n\r\n var exists = me.correspondenceExternalRecipients.filter(x => x.IsSupportElectronic == true);\r\n if (exists && exists.length == 0) {\r\n this.messagingSvc.publish(\"AfterSelectCopyElectronicExternalEntity\", false);\r\n }\r\n }\r\n\r\n checkForDuplicatedAndSupportElectronic(Contact, itemIndex, e) {\r\n let me = this;\r\n\r\n const _index = me.correspondenceExternalRecipients.findIndex(x => x.ItemIndex == itemIndex);\r\n const _indexTemp = me.selectedCorrespondenceExternalRecipientsTemp.findIndex(x => x.ItemIndex == itemIndex);\r\n\r\n if (me.correspondenceExternalRecipients.length >= 1 && e && e.dbid != null) {\r\n\r\n if (me.correspondenceExternalRecipients.filter(x => x.ExternalContactID == e.dbid && x.ItemIndex != itemIndex).length > 0) {\r\n let ExternalRecipientEntity = new CorrespondenceExternalRecipientDto();\r\n ExternalRecipientEntity.ItemIndex = itemIndex;\r\n me.correspondenceExternalRecipients.splice(_index, 1, ExternalRecipientEntity);\r\n me.selectedCorrespondenceExternalRecipientsTemp.splice(_indexTemp, 1, ExternalRecipientEntity);\r\n me.toastr.warning(this.getText('ThisEntityHasAlreadyBeenAdded', 'fb-external-recipient-as-copy'));\r\n }\r\n else {\r\n Contact.ExternalContactID = e.dbid;\r\n Contact.Name = e.value;\r\n Contact.IsSupportElectronic = e.IsSupportElectronic;\r\n if (e.IsSupportElectronic) {\r\n this.messagingSvc.publish(\"AfterSelectCopyElectronicExternalEntity\", true);\r\n }\r\n else {\r\n let isSupportElectronicExist = me.correspondenceExternalRecipients.findIndex(x => x.IsSupportElectronic == true) > -1;\r\n if (!isSupportElectronicExist) {\r\n this.messagingSvc.publish(\"AfterSelectCopyElectronicExternalEntity\", false);\r\n }\r\n }\r\n }\r\n }\r\n if ($(\"#ExternalRecipient_\" + itemIndex).data(\"kendoAutoComplete\").value().trim() == \"\" && e == null) {\r\n let ExternalRecipientEntity = new CorrespondenceExternalRecipientDto();\r\n ExternalRecipientEntity.ItemIndex = itemIndex;\r\n me.correspondenceExternalRecipients.splice(_index, 1, ExternalRecipientEntity);\r\n me.selectedCorrespondenceExternalRecipientsTemp.splice(_indexTemp, 1, ExternalRecipientEntity);\r\n }\r\n }\r\n\r\n addNewExternalRecipientsFromGroup() {\r\n let me = this;\r\n let isExist = false;\r\n me.disabled = true;\r\n if (me.correspondenceExternalRecipientGroupObj) {\r\n let externalContacts = me.correspondenceExternalRecipientGroupObj.ExternalContacts;\r\n const ids = externalContacts.map(x => x.ExternalContactId);\r\n me.filingStorageSvc.externalEntityIds.push(...ids); \r\n\r\n if (me.checkIfExternalRecipientExisit) {\r\n this.messagingSvc.selectedExternal = me.correspondenceExternalRecipientGroupObj.ExternalContactName\r\n let obj: CorrespondenceExternalRecipientDto = new CorrespondenceExternalRecipientDto();\r\n externalContacts.forEach(c => {\r\n const _maxIndex = me.correspondenceExternalRecipients.length > 0 ? Math.max(...me.correspondenceExternalRecipients.map(c => c.ItemIndex)) + 1 : 0;\r\n obj.ExternalContactID = c.ExternalContactId;\r\n obj.ExternalContactName = c.Name;\r\n obj.IsSupportElectronic = c.IsSupportElectronic;\r\n if ((me.correspondenceExternalRecipients.length > 0 && me.correspondenceExternalRecipients.find(x => x.ExternalContactID == obj.ExternalContactID)) || me._ExternalRecipientId == obj.ExternalContactID) {\r\n isExist = true;\r\n }\r\n if (this.messagingSvc.selectedRecipient == me.correspondenceExternalRecipientGroupObj.ExternalContactName || this.filingStorageSvc.ExternalRecipientid == this.correspondenceExternalRecipientGroupObj.Id) {\r\n isExist = true;\r\n me.toastr.warning(me.getText('ThisEntityHasAlreadyBeenAdded', 'fb-external-recipient-as-copy'));\r\n }\r\n if (!isExist) {\r\n obj.ItemIndex = _maxIndex;\r\n me.correspondenceExternalRecipients.push(obj);\r\n me.toastr.success(this.getText('successMessage', 'fb-external-recipient-as-copy'));\r\n }\r\n obj = new CorrespondenceExternalRecipientDto();\r\n isExist = false;\r\n\r\n });\r\n\r\n me.disabled = false;\r\n\r\n me.getAllExternalRecipients(me.paginateOptions.currentPage);\r\n\r\n\r\n me.correspondenceExternalRecipientGroupObj = new IExternalRecipientGroupDto();\r\n if ($(\"#ExternalRecipientGroupAutocomplete\").data(\"kendoComboBox\")) {\r\n $(\"#ExternalRecipientGroupAutocomplete\").data(\"kendoComboBox\").text(\"\");\r\n $(\"#ExternalRecipientGroupAutocomplete\").data(\"kendoComboBox\").value(\"\");\r\n }\r\n\r\n if (me.correspondenceExternalRecipients.findIndex(a => a.IsSupportElectronic == true) > -1) {\r\n this.messagingSvc.publish(\"AfterSelectCopyElectronicExternalEntity\", true);\r\n }\r\n }\r\n else {\r\n this.toastr.warning(this.getText('ThisEntityHasAlreadyBeenAddedRecepGroup', 'externalrecep'));\r\n }\r\n }\r\n\r\n }\r\n checkIfExternalRecipientExisit() {\r\n if (this.correspondenceExternalRecipientGroupObj) {\r\n if (this.messagingSvc.selectedRecipient == this.correspondenceExternalRecipientGroupObj.ExternalContactName)\r\n this.toastr.warning(this.getText('ThisEntityHasAlreadyBeenAddedRecep', 'externalrecep'));\r\n if (this.filingStorageSvc.ExternalRecipientid == this.correspondenceExternalRecipientGroupObj.Id)\r\n this.toastr.warning(this.getText('ThisEntityHasAlreadyBeenAddedRecep', 'externalrecep'));\r\n\r\n }\r\n }\r\n get isGroupListDisabled() {\r\n let me = this;\r\n if (me.correspondenceExternalRecipientGroupObj && me.correspondenceExternalRecipientGroupObj.Id != null && me.correspondenceExternalRecipientGroupObj.Id != undefined && !me.disabled) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n\r\n buildForm(): void {\r\n let me = this;\r\n }\r\n\r\n getExternalRecipients(): CorrespondenceExternalRecipientDto[] {\r\n const me = this;\r\n\r\n let recipients = me.correspondenceExternalRecipients.filter(r => r.ExternalContactID);\r\n\r\n return recipients;\r\n }\r\n\r\n getJsonValue(): string {\r\n const me = this;\r\n return JSON.stringify(me.getExternalRecipients());\r\n }\r\n\r\n setValue(value: string): void {\r\n let me = this;\r\n me.correspondenceExternalRecipients = JSON.parse(value);\r\n this.getAllExternalRecipients(1);\r\n\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n return true;\r\n }\r\n\r\n openCorrespondenceUnattachedPopup(externalRecipient: CorrespondenceExternalRecipientDto): void {\r\n let me = this;\r\n me.ExternalRecipientUnattached = externalRecipient;\r\n me.correspondenceUnattachedPopup.show();\r\n }\r\n\r\n closeCorrespondenceUnattachedPopup(): void {\r\n this.ExternalRecipientUnattached = new CorrespondenceExternalRecipientDto();\r\n this.correspondenceUnattachedPopup.hide();\r\n }\r\n\r\n correspondenceUnattachedInList(rowId: number): boolean {\r\n let me = this;\r\n\r\n let list = [];\r\n if (me.ExternalRecipientUnattached.CorrespondenceUnattacheds)\r\n list = me.ExternalRecipientUnattached.CorrespondenceUnattacheds;\r\n\r\n for (let i = 0; i < list.length; i++) {\r\n if (list[i].RowId == rowId)\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n\r\n UpdateExternalRecipientUnattached(tangibleItem: AdditionaUnattached): void {\r\n if (!this.correspondenceUnattachedInList(tangibleItem.RowId))\r\n this.AddUnattachedToExternalRecipient(tangibleItem);\r\n else\r\n this.RemoveUnattachedFromExternalRecipient(tangibleItem.RowId);\r\n }\r\n\r\n\r\n AddUnattachedToExternalRecipient(tangibleItem: AdditionaUnattached): void {\r\n let me = this;\r\n let mappingObj = {\r\n Description: tangibleItem.Description,\r\n Id: tangibleItem.Id,\r\n RowId: tangibleItem.RowId,\r\n UnattachedName: tangibleItem.UnattachedName,\r\n UnattachedTypeId: tangibleItem.UnattachedTypeId,\r\n Count: tangibleItem.Count,\r\n };\r\n\r\n me.ExternalRecipientUnattached.CorrespondenceUnattacheds.push(mappingObj);\r\n }\r\n\r\n RemoveUnattachedFromExternalRecipient(rowId: number): void {\r\n let me = this;\r\n\r\n let list = [];\r\n\r\n list = me.ExternalRecipientUnattached.CorrespondenceUnattacheds.filter(u => u.RowId != rowId);\r\n\r\n me.ExternalRecipientUnattached.CorrespondenceUnattacheds = list;\r\n }\r\n\r\n RemoveUnattachedFromAllExternalRecipients(rowId: number) {\r\n for (let i = 0; i < this.correspondenceExternalRecipients.length; i++) {\r\n this.ExternalRecipientUnattached = this.correspondenceExternalRecipients[i];\r\n this.RemoveUnattachedFromExternalRecipient(rowId);\r\n }\r\n }\r\n\r\n public AddNewUnattachedRow() {\r\n let me = this;\r\n me.messagingSvc.publish(\"AddNewTangibleItem\");\r\n }\r\n\r\n getAddExternalRecipientAsCopySetting(): void {\r\n this.generalSettingsSvc.GetValue(\"CorrespondencesSetting\", \"EnableAddExternalRecipientAsCopy\").subscribe(\r\n settingValue => {\r\n this.EnableAddExternalRecipientAsCopy = settingValue == \"true\";\r\n this.messagingSvc.publish(\"AddExternalRecipientAsCopySetting\", this.EnableAddExternalRecipientAsCopy);\r\n }\r\n );\r\n }\r\n\r\n public ValidateIsIntNumber(e) {\r\n var array = [46, 8, 9, 27, 13, 110, 190];\r\n if (\r\n array.filter(x => x == e.keyCode).length > 0 ||\r\n // Allow: Ctrl/cmd+A\r\n (e.keyCode == 65 && (e.ctrlKey === true || e.metaKey === true)) ||\r\n // Allow: Ctrl/cmd+C\r\n (e.keyCode == 67 && (e.ctrlKey === true || e.metaKey === true)) ||\r\n // Allow: Ctrl/cmd+X\r\n (e.keyCode == 88 && (e.ctrlKey === true || e.metaKey === true)) ||\r\n // Allow: home, end, left, right\r\n (e.keyCode >= 35 && e.keyCode <= 39)\r\n ) {\r\n // let it happen, don't do anything\r\n return;\r\n }\r\n // Ensure that it is a number and stop the keypress\r\n if (\r\n (e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) &&\r\n (e.keyCode < 96 || e.keyCode > 105)\r\n ) {\r\n e.preventDefault();\r\n }\r\n }\r\n\r\n ValidateNumber(e) {\r\n this.isMaxLength = false;\r\n\r\n if (e.keyCode == 110)\r\n e.target.value = \"\";\r\n\r\n this.ValidateIsIntNumber(e);\r\n\r\n this.notValidNumber = true;\r\n if (e.target.value) {\r\n this.notValidNumber = false;\r\n if (e.target.value.length > e.target.maxLength) {\r\n this.isMaxLength = true;\r\n e.target.value = e.target.value.slice(0, e.target.maxLength);\r\n }\r\n }\r\n }\r\n\r\n preventNegativeNumber(e) {\r\n if (!((e.keyCode > 95 && e.keyCode < 106)\r\n || (e.keyCode > 47 && e.keyCode < 58)\r\n || e.keyCode == 8)) {\r\n return false;\r\n }\r\n }\r\n\r\n searchText: string = \"\";\r\n\r\n\r\n public paginateOptions = {\r\n id: \"server\",\r\n itemsPerPage: 10,\r\n currentPage: 1,\r\n totalItems: 0\r\n };\r\n\r\n selectedPage: number = 1;\r\n disabled = false;\r\n isSubscribed: boolean = true;\r\n\r\n\r\n\r\n\r\n getAllExternalRecipients(page: number = 1) {\r\n let me = this;\r\n\r\n me.paginateOptions.currentPage = page;\r\n if (me.searchText && me.searchText.trim() != \"\") {\r\n me.filteredItems = me.correspondenceExternalRecipients.filter(x => x.Name && x.Name.toLowerCase().includes(me.searchText.toLowerCase()));\r\n me.paginateOptions.totalItems = me.filteredItems.length;\r\n me.selectedCorrespondenceExternalRecipientsTemp = me.filteredItems.map(function (obj) {\r\n return obj;\r\n });\r\n\r\n if (me.filteredItems.length > 10) {\r\n\r\n me.selectedCorrespondenceExternalRecipientsTemp = me.selectedCorrespondenceExternalRecipientsTemp.splice((page - 1) * 10, 10)\r\n }\r\n else if (page == 2 && me.filteredItems.length <= 10) {\r\n me.getAllExternalRecipients(1);\r\n\r\n }\r\n }\r\n else {\r\n\r\n me.paginateOptions.totalItems = me.correspondenceExternalRecipients.length;\r\n me.selectedCorrespondenceExternalRecipientsTemp = me.correspondenceExternalRecipients.map(function (obj) {\r\n return obj;\r\n });\r\n if (me.correspondenceExternalRecipients.length > 10) {\r\n me.selectedCorrespondenceExternalRecipientsTemp = me.selectedCorrespondenceExternalRecipientsTemp.splice((page - 1) * 10, 10)\r\n }\r\n else if (page == 2 && me.correspondenceExternalRecipients.length <= 10) {\r\n me.getAllExternalRecipients(1);\r\n\r\n }\r\n }\r\n\r\n\r\n\r\n }\r\n isPaginationAvailable() {\r\n let me = this;\r\n\r\n if (me.searchText && me.searchText.trim() != \"\" && me.filteredItems.length > 10) {\r\n return true;\r\n }\r\n else if (me.searchText == \"\" && me.searchText.trim() == \"\" && me.correspondenceExternalRecipients.length > 10) {\r\n return true;\r\n }\r\n else\r\n return false;\r\n\r\n }\r\n}\r\n\r\nexport class CorrespondenceExternalRecipientDto {\r\n Index;\r\n ExternalContactID;\r\n ExternalContactId;\r\n Name;\r\n LetterTypeId;\r\n State: ObjectState;\r\n NumberOfUnattached;\r\n Unattached;\r\n CorrespondenceUnattacheds: AdditionaUnattached[] = [];\r\n ItemIndex;\r\n IsSupportElectronic = false;\r\n ExternalContactName;\r\n}\r\n\r\nexport enum LetterTypeIdEnum {\r\n None = 0,\r\n Original = 1, // 1\tأصل\r\n Copy = 2, // 2\tصورة\r\n RepeatedOriginal = 3, // 3\tأصل مكرّر\r\n CopyFromOriginal = 4 // 4\tنسخة من الأصل\r\n}\r\n","\r\n \r\n \r\n\r\n\r\n\r\n \r\n\r\n\r\n","import { Component } from \"@angular/core\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { FormBuilder } from \"@angular/forms\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { DetailsSVC } from \"../../../../../berry/correspondences/details/details-svc\";\r\nimport { CorrespondenceCategoryIdEnum } from \"../../../../../berry/correspondences/_models/CorrespondenceCategoryId-Enum\";\r\nimport { IComboboxOptions } from \"../../../../directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { ContactsHelpers } from \"../../../../../Contacts/helpers\";\r\nimport { IGlobalSettings } from \"../../../../models/IGlobalSettings\";\r\n\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"fb-forwarded-to-recipient\",\r\n templateUrl: \"./fb-forwarded-to-recipient.html\"\r\n})\r\nexport class FbForwardedToRecipientComponent extends BaseCmp implements IFormBuilderComponent {\r\n\r\n isMultiValueCtrlMappedToDb: boolean = false;\r\n internalRecipient = null;\r\n internalRecipientdbId = null;\r\n\r\n get isOutoingCategory() {\r\n return this.getCorrespondenceBaseCategory() == CorrespondenceCategoryIdEnum.Outgoing\r\n }\r\n\r\n constructor(\r\n public toastr: ToastrService,\r\n public fb: FormBuilder,\r\n public detailsSVC: DetailsSVC,\r\n public defaults: ContactsHelpers\r\n ) {\r\n super();\r\n this.buildForm();\r\n }\r\n\r\n ngSuperOnInit() { }\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n buildForm(): void { }\r\n\r\n getJsonValue(): string {\r\n return this.internalRecipientdbId;\r\n }\r\n\r\n setValue(json: string): void {\r\n this.internalRecipientdbId = json;\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n return true;\r\n }\r\n\r\n //This method return base category for example if correspondence type is Incoming or PrivateIncoming returned value will be Incoming\r\n getCorrespondenceBaseCategory(baseCategoryId = null): CorrespondenceCategoryIdEnum {\r\n let me = this;\r\n\r\n if (!baseCategoryId)\r\n baseCategoryId = me.detailsSVC.baseCategoryId;\r\n\r\n switch (baseCategoryId) {\r\n case CorrespondenceCategoryIdEnum.Incoming:\r\n case CorrespondenceCategoryIdEnum.PrivateIncoming:\r\n case \"Incoming\":\r\n case \"PrivateIncoming\":\r\n return CorrespondenceCategoryIdEnum.Incoming;\r\n case CorrespondenceCategoryIdEnum.Outgoing:\r\n case CorrespondenceCategoryIdEnum.PrivateOutgoing:\r\n case \"Outgoing\":\r\n case \"PrivateOutgoing\":\r\n return CorrespondenceCategoryIdEnum.Outgoing;\r\n case CorrespondenceCategoryIdEnum.Internal:\r\n case CorrespondenceCategoryIdEnum.InternalForPresident:\r\n case CorrespondenceCategoryIdEnum.Decision:\r\n case \"Internal\":\r\n case \"InternalForPresident\":\r\n case \"Decision\":\r\n return CorrespondenceCategoryIdEnum.Internal;\r\n }\r\n }\r\n\r\n get additionalParamsTo(): any {\r\n let me = this;\r\n if (me.getCorrespondenceBaseCategory() == CorrespondenceCategoryIdEnum.Incoming ||\r\n me.getCorrespondenceBaseCategory() == CorrespondenceCategoryIdEnum.Internal)\r\n return { isAddressedToType: true, category: me.detailsSVC.categoryId };\r\n }\r\n\r\n deleteInternalRecipient() {\r\n this.internalRecipientdbId = null;\r\n this.internalRecipient = null;\r\n }\r\n\r\n addInternalRecipient(e) {\r\n if (e) {\r\n this.internalRecipientdbId = e.dbid;\r\n this.internalRecipient = e.value;\r\n }\r\n else {\r\n this.internalRecipientdbId = null;\r\n this.internalRecipient = null;\r\n }\r\n }\r\n\r\n externalFromAutoCompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaults.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n {\r\n enabled: true,\r\n method: \"post\",\r\n searchField: \"kw\",\r\n resultsField: \"\"\r\n },\r\n {\r\n url: BERRY.hostName + \"Correspondences/NewApp/GetExternalContacts\"\r\n }\r\n ),\r\n dataTextField: \"value\",\r\n dataValueField: \"dbid\",\r\n allowFreeText: false,\r\n displayTemplate: \"#: !data.NationalCode? data.dbid + ' - ': '' # #: data.NationalCode? data.NationalCode + ' - ': '' # #: data.value #\",\r\n minLength: 1\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 +{{getText('AddAdditionalInternalRecipientEntitie', 'NewIncoming')}}\r\n \r\n\r\n\r\n\r\n
    ","import { Component } from \"@angular/core\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { FormBuilder } from \"@angular/forms\";\r\nimport { ContactsHelpers } from \"src/app/Contacts/helpers\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { IComboboxServerDatasourceOptions, IComboboxOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { LetterTypeIdEnum } from \"./fb-external-recipient-as-copy\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"internal-recipient\",\r\n templateUrl: \"./fb-internal-recipient.html\"\r\n})\r\nexport class fbInternalRecipientComponent extends BaseCmp implements IFormBuilderComponent {\r\n\r\n isMultiValueCtrlMappedToDb: boolean = false;\r\n\r\n letterType: any = LetterTypeIdEnum;\r\n\r\n numberOfCorrespondenceRecipients: number = 0;\r\n correspondenceRecipients: CorrespondenceInternalRecipientDto[] = [];\r\n public entitiesAndUsersInfo: any[] = [];\r\n isExist: boolean = false; \r\n\r\n\r\n constructor(\r\n public defaults: ContactsHelpers,\r\n public toastr: ToastrService,\r\n public fb: FormBuilder\r\n ) {\r\n super();\r\n\r\n this.addNewRecipients();\r\n this.buildForm();\r\n }\r\n\r\n ngSuperOnInit() { }\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n addNewRecipients() {\r\n let me = this;\r\n let obj = new CorrespondenceInternalRecipientDto();\r\n obj.Index = me.numberOfCorrespondenceRecipients;\r\n obj.EntityId = null;\r\n obj.LetterTypeId = LetterTypeIdEnum.Copy;\r\n obj.Name = null;\r\n me.correspondenceRecipients.push(obj);\r\n me.numberOfCorrespondenceRecipients++;\r\n }\r\n\r\n removeRecipient(index) {\r\n let me = this;\r\n\r\n me.correspondenceRecipients.splice(index, 1);\r\n\r\n me.numberOfCorrespondenceRecipients--;\r\n }\r\n\r\n checkIfDuplicated(ContactID, index) {\r\n let me = this;\r\n\r\n if (me.correspondenceRecipients.length > 1 && ContactID != null) {\r\n for (var i = 0; i < me.correspondenceRecipients.length; i++) {\r\n if (me.correspondenceRecipients[i].EntityId == ContactID && index != i) {\r\n let ExternalRecipientEntity = new CorrespondenceInternalRecipientDto();\r\n me.correspondenceRecipients.splice(index, 1, ExternalRecipientEntity);\r\n me.toastr.warning(BERRY.loc.correspondence.DuplicatedAdditionalInternal);\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n\r\n buildForm(): void { }\r\n\r\n getJsonValue(): string {\r\n const me = this;\r\n\r\n let recipients = me.correspondenceRecipients.filter(r => r.EntityId);\r\n\r\n return JSON.stringify(recipients);\r\n }\r\n\r\n setValue(value: string): void {\r\n let me = this;\r\n const correspondenceExternalRecipients: CorrespondenceInternalRecipientDto[] = JSON.parse(value);\r\n me.correspondenceRecipients = correspondenceExternalRecipients;\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n return true;\r\n }\r\n\r\n onAddionalInternalRecipient(e, i) {\r\n let me = this;\r\n if (e) {\r\n if (me.correspondenceRecipients.length >= 1 && e.dbid != null) {\r\n var currentIndex = me.correspondenceRecipients.findIndex(n => n.EntityId == e.dbid);\r\n if (me.correspondenceRecipients.filter(x => x.EntityId == e.dbid && i != currentIndex).length > 0) {\r\n me.correspondenceRecipients.splice(i, 1);\r\n me.toastr.warning(BERRY.loc.correspondence.DuplicatedAdditionalInternal);\r\n me.isExist = true;\r\n }\r\n else\r\n me.isExist = false;\r\n }\r\n if (!me.isExist) {\r\n me.correspondenceRecipients[i].EntityId = e.dbid;\r\n me.correspondenceRecipients[i].Name = e.value;\r\n me.correspondenceRecipients[i].LetterTypeId = +LetterTypeIdEnum.Copy;\r\n me.correspondenceRecipients[i].LetterTypeId = e.type;\r\n me.correspondenceRecipients[i].Index = i;\r\n }\r\n }\r\n }\r\n\r\n onDeleteButtonPermission() {\r\n return true;\r\n }\r\n\r\n}\r\n\r\nexport class CorrespondenceInternalRecipientDto {\r\n Index;\r\n EntityId;\r\n Name;\r\n LetterTypeId;\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 +{{getText('AddInternalRecipeientRow', 'InternalRecipients')}}\r\n \r\n\r\n
    ","import { Component, Input, ViewChild } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { LookupHelpers } from \"src/app/Lookups/LookupHelpers\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { ContactsHelpers } from \"src/app/Contacts/helpers\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { ObjectState } from \"src/app/_common/models/objectstate\";\r\nimport { LetterTypeIdEnum } from \"./fb-external-recipient-as-copy\";\r\n \r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"fb-internal-recipients-as-copy\",\r\n templateUrl: \"./fb-internal-recipients-as-copy.html\"\r\n})\r\nexport class fblInternalRecipientsAsCopyComponent extends BaseCmp implements IFormBuilderComponent {\r\n\r\n public andAlsoToEntitiesAndUsersInfo: any[] = [];\r\n\r\n isMultiValueCtrlMappedToDb: boolean = false;\r\n isExist: boolean = false;\r\n value: number = null;\r\n isSubscribed: boolean = true;\r\n selectedEntities: any[] = [];\r\n selectedUsers: any[] = [];\r\n selectedRecipients: any[] = [];\r\n isDraftMode: boolean = false;\r\n letterTypeIdEnum = LetterTypeIdEnum;\r\n @Input(\"IsForCommunications\") IsForCommunications: boolean = false;\r\n @Input(\"IsEditMode\") IsEditMode: boolean = false;\r\n @Input(\"isReadonly\") isReadonly: boolean = false;\r\n \r\n @Input()\r\n get DraftMode() {\r\n return this.isDraftMode;\r\n }\r\n set DraftMode(value: any) {\r\n this.isDraftMode = value;\r\n }\r\n\r\n @Input()\r\n set CorrespondenceInternalRecipients(value) {\r\n if (value != null && value != undefined) {\r\n this.selectedAdditionalInternalRecipients = value;\r\n }\r\n }\r\n\r\n FromBuilderAdditionalInternalRecipients: InternalRowDto[] = [];// Users And Entities for formbuilder usage\r\n AdditionalInternalRowId: number = 0;\r\n\r\n selectedAdditionalInternalRecipients: InternalRecipientDto[] = [];\r\n\r\n AdditionalInternalRecipientsRowId: number = 0;\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n constructor(public LookupHelpers: LookupHelpers,\r\n public defaults: ContactsHelpers,\r\n public toastr: ToastrService\r\n ) {\r\n super();\r\n }\r\n\r\n onDeleteButtonPermission() {\r\n return true;\r\n }\r\n\r\n init() {\r\n let me = this;\r\n me.buildForm();\r\n\r\n if (!me.IsForCommunications && me.selectedAdditionalInternalRecipients.length == 0)\r\n me.AddNewInternalRow();\r\n }\r\n\r\n ngSuperOnInit() {\r\n let me = this;\r\n me.init();\r\n }\r\n ngSuperAfterViewInit() { }\r\n\r\n buildForm() { }\r\n\r\n public get additionalParams(): any {\r\n return { draftMode: this.isDraftMode, isForCommunications: this.IsForCommunications, isInternalRecipientsAsCopy: true };\r\n }\r\n\r\n getAdditionalInternalEntitiesAndUsers(): any {\r\n let me = this;\r\n return me.selectedAdditionalInternalRecipients.length > 0 ? me.selectedAdditionalInternalRecipients : [];\r\n }\r\n\r\n MapInternalRecipientsToDto() {\r\n let me = this;\r\n\r\n me.FromBuilderAdditionalInternalRecipients = [];\r\n\r\n for (let item of me.selectedAdditionalInternalRecipients) {\r\n\r\n if (item.Type == 1) {\r\n\r\n let user: InternalRowDto =\r\n {\r\n Id: null,\r\n EntityId: null,\r\n LetterTypeId: item.LetterTypeId,\r\n Name: item.Name,\r\n number: item.number,\r\n RowId: item.RowId,\r\n UserId: item.dbid,\r\n value: item.Name\r\n }\r\n\r\n me.FromBuilderAdditionalInternalRecipients.push(user);\r\n }\r\n\r\n else if (item.Type == 2) {\r\n\r\n let entity: InternalRowDto =\r\n {\r\n Id: null,\r\n EntityId: item.dbid,\r\n LetterTypeId: +item.LetterTypeId,\r\n Name: item.Name,\r\n number: item.number,\r\n RowId: item.RowId,\r\n UserId: null,\r\n value: item.Name\r\n }\r\n\r\n me.FromBuilderAdditionalInternalRecipients.push(entity);\r\n }\r\n }\r\n }\r\n\r\n getJsonValue(): string {\r\n let me = this;\r\n me.MapInternalRecipientsToDto();\r\n const result = JSON.stringify(me.FromBuilderAdditionalInternalRecipients);\r\n return result;\r\n }\r\n\r\n setValue(value: string): void {\r\n let me = this;\r\n me.FromBuilderAdditionalInternalRecipients = JSON.parse(value);\r\n me.selectedAdditionalInternalRecipients = me.FromBuilderAdditionalInternalRecipients.map(r => ({\r\n Id: r.UserId == null ? r.EntityId : r.UserId,\r\n value: r.Name,\r\n dbid: r.UserId == null ? r.EntityId : r.UserId,\r\n Name: r.Name,\r\n RowId: 0,\r\n number: null,\r\n Type: r.UserId == null ? RecipientType.Entity : RecipientType.User,\r\n State: ObjectState.Unchanged,\r\n LetterTypeId: r.LetterTypeId\r\n }));\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n return true;\r\n }\r\n\r\n AddNewInternalRow() {\r\n let me = this;\r\n\r\n let obj = new InternalRecipientDto();\r\n obj.RowId = me.AdditionalInternalRecipientsRowId++;\r\n obj.Id = null;\r\n obj.Name = \"\";\r\n obj.LetterTypeId = +LetterTypeIdEnum.Copy;\r\n me.selectedAdditionalInternalRecipients = [...me.selectedAdditionalInternalRecipients, obj];\r\n me.onDeleteButtonPermission();\r\n }\r\n\r\n RemoveInternalRow(index: number) {\r\n let me = this;\r\n\r\n if (me.IsForCommunications && me.IsEditMode) {\r\n\r\n if (me.selectedAdditionalInternalRecipients[index].State == ObjectState.Unchanged)\r\n me.selectedAdditionalInternalRecipients[index].State = ObjectState.Deleted;\r\n else\r\n if (me.selectedAdditionalInternalRecipients[index].State == ObjectState.Added)\r\n me.selectedAdditionalInternalRecipients = me.selectedAdditionalInternalRecipients.filter(el => el.Id != me.selectedAdditionalInternalRecipients[index].Id);\r\n\r\n me.selectedAdditionalInternalRecipients.splice(index, 1);\r\n }\r\n\r\n else {\r\n me.selectedAdditionalInternalRecipients.splice(index, 1);\r\n }\r\n\r\n this.andAlsoToEntitiesAndUsersInfo = this.andAlsoToEntitiesAndUsersInfo.filter((item, i) => i != index);\r\n me.AdditionalInternalRecipientsRowId--;\r\n }\r\n\r\n onAddionalInternalRecipient(e, i) {\r\n let me = this;\r\n if (e) {\r\n if (me.selectedAdditionalInternalRecipients.length >= 1 && e.dbid != null) {\r\n var currentIndex = me.selectedAdditionalInternalRecipients.findIndex(n => n.Id == e.dbid);\r\n if (me.selectedAdditionalInternalRecipients.filter(x => x.Id == e.dbid && i != currentIndex).length > 0) {\r\n me.toastr.warning(BERRY.loc.correspondence.DuplicatedAdditionalInternal);\r\n me.isExist = true;\r\n setTimeout(() => {\r\n this.andAlsoToEntitiesAndUsersInfo.splice(i, 1);\r\n me.selectedAdditionalInternalRecipients.splice(i, 1);\r\n }, 10);\r\n }\r\n else\r\n me.isExist = false;\r\n }\r\n if (!me.isExist) {\r\n me.selectedAdditionalInternalRecipients[i].Id = e.dbid;\r\n me.selectedAdditionalInternalRecipients[i].Name = e.value;\r\n me.selectedAdditionalInternalRecipients[i].dbid = e.dbid;\r\n me.selectedAdditionalInternalRecipients[i].State = ObjectState.Added;\r\n me.selectedAdditionalInternalRecipients[i].value = e.value;\r\n me.selectedAdditionalInternalRecipients[i].LetterTypeId = +LetterTypeIdEnum.Copy;\r\n me.selectedAdditionalInternalRecipients[i].Type = e.type;\r\n me.selectedAdditionalInternalRecipients[i].number = e.number;\r\n me.selectedAdditionalInternalRecipients[i].RowId = i;\r\n }\r\n }\r\n }\r\n\r\n getUsers(): any {\r\n let me = this;\r\n return me.selectedUsers;\r\n }\r\n\r\n getEntities(): any {\r\n let me = this;\r\n return me.selectedEntities;\r\n }\r\n}\r\n\r\n\r\nexport class InternalRowDto {\r\n RowId = 0;\r\n EntityId = \"\";\r\n Id = \"\";\r\n number = null;\r\n UserId = \"\";\r\n value = null;\r\n Name = \"\";\r\n LetterTypeId: number = +LetterTypeIdEnum.Copy;\r\n}\r\n\r\nexport class InternalRecipientDto {\r\n Id = \"\";\r\n value = null;\r\n dbid = \"\";\r\n Name = \"\";\r\n RowId = 0;\r\n number = null;\r\n Type: RecipientType;\r\n State: ObjectState;\r\n LetterTypeId: number = +LetterTypeIdEnum.Copy;\r\n}\r\n\r\nexport enum RecipientType {\r\n User = 1,\r\n Entity = 2\r\n}\r\n","import { Component, ElementRef, ViewChild } from \"@angular/core\";\r\nimport { FormBuilder, FormGroup } from \"@angular/forms\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { kendoMultiSelect } from \"src/app/_common/directives/KendoUI-wrappers/kendoMultiSelect\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { CorrespondenceFormStatusOptionField } from \"../../../../../berry/correspondences/manage/correspondence-form-status/correspondence-form-status-models\";\r\nimport { CorrespondenceFormStatusService } from \"../../../../../berry/correspondences/manage/correspondence-form-status/correspondence-form-status-service\";\r\nimport { LookupHelpers } from \"../../../../../Lookups/LookupHelpers\";\r\nimport { DatePicker } from \"../../../../directives/DatePicker\";\r\nimport { MessagingService } from \"../../../../services/messaging-service\";\r\nimport { datetimeHelper } from \"../../../../utils/datetimeHelper\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var jQuery: any;\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"deadline-date\",\r\n templateUrl: \"./fb-deadline-date.html\",\r\n providers: [\r\n LookupHelpers,\r\n CorrespondenceFormStatusService,\r\n \r\n ]\r\n})\r\nexport class fbDeadLineDateComponent extends BaseCmp implements IFormBuilderComponent {\r\n\r\n value: Date = null;\r\n messageId: number;\r\n isExport: boolean = false;\r\n onlyCalssification: boolean = false;\r\n public isCopy: boolean = false;\r\n deliveryDateType: number = 1;\r\n DeadlineAfterDays: number = 30;\r\n noDeadlineFlag: boolean = false;\r\n incomeForm: FormGroup;\r\n LookupUrgencies = [];\r\n maxDateOptions = {\r\n maxDate: 0\r\n };\r\n minDateOptions = {\r\n minDate: 0\r\n };\r\n Urgency = 0;\r\n DeliveryDate = null;\r\n @ViewChild(\"deadlineDatePicker\") deadlineDatePicker: DatePicker;\r\n isFirstDatePickerLoad = false;\r\n changeDeadlineDate(obj) {\r\n if (this.deadlineDatePicker) {\r\n if (obj && obj.Alternative.ISODate) {\r\n var days = this.getDateDifference(obj.Alternative.ISODate);\r\n if (days) {\r\n this.DeadlineAfterDays = days;\r\n if (!this.isFirstDatePickerLoad) {\r\n this.isFirstDatePickerLoad = true;\r\n this.changeDeadlineDateDuration(days);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n onDeadlineAfterDaysBlur() {\r\n if (BERRY.CorrespondenceDeadlineLimitation == \"true\") {\r\n if (this.DeadlineAfterDays > 90) this.DeadlineAfterDays = 90;\r\n else if (this.DeadlineAfterDays < 30) this.DeadlineAfterDays = 30;\r\n } else {\r\n if (this.DeadlineAfterDays < 1) {\r\n this.DeadlineAfterDays = 1;\r\n this.changeDeadlineDateDuration(this.DeadlineAfterDays);\r\n }\r\n }\r\n }\r\n finalDate = \"ByDateCount\";\r\n\r\n \r\n SelectedUrgency: any\r\n noDeadlineClick(noDeadline: boolean) {\r\n let me = this;\r\n this.noDeadlineFlag = noDeadline;\r\n if (noDeadline) {\r\n this.DeadlineAfterDays = null;\r\n this.DeadLineInDate = null;\r\n $(this.element.nativeElement).find(\"#ReceiveDate_field\").find(\"input\").calendarsPicker(\"clear\");\r\n }\r\n else {\r\n if (!me.SelectedUrgency)\r\n me.SelectedUrgency = me.LookupUrgencies[0];\r\n const urgencyObj = me.LookupUrgencies.filter(x => x.ID.toString() == me.SelectedUrgency.ID);\r\n if (urgencyObj) {\r\n me.DeadlineAfterDays = urgencyObj[0].DeadlineAfterDays;\r\n me.changeDeadlineDateDuration(me.DeadlineAfterDays);\r\n }\r\n }\r\n setTimeout(() => {\r\n if (this.noDeadlineFlag || this.isDisabled('DeadLine') || this.isOnlyCalssification || this.deliveryDateType == 1) {\r\n jQuery(\"#ReceiveDate_field\").find(\"span.btn-default\").eq(0).css(\"cursor\", \"not-allowed\");\r\n }\r\n else {\r\n jQuery(\"#ReceiveDate_field\").find(\"span.btn-default\").eq(0).css(\"cursor\", \"pointer\");\r\n }\r\n }, 500);\r\n }\r\n changeDeadlineDateType(value: number) {\r\n this.deliveryDateType = value;\r\n setTimeout(() => {\r\n if (this.noDeadlineFlag || this.isDisabled('DeadLine') || this.deliveryDateType == 1) {\r\n jQuery(\"#ReceiveDate_field\").find(\"span.btn-default\").eq(0).css(\"cursor\", \"not-allowed\");\r\n }\r\n else {\r\n jQuery(\"#ReceiveDate_field\").find(\"span.btn-default\").eq(0).css(\"cursor\", \"pointer\");\r\n }\r\n }, 500);\r\n }\r\n getDateDifference(date) {\r\n var date1 = new Date();\r\n var date2 = new Date(date);\r\n var timeDiff = Math.abs(date2.getTime() - date1.getTime());\r\n if (timeDiff > 0) {\r\n var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24));\r\n return diffDays;\r\n }\r\n return -1;\r\n }\r\n\r\n constructor(public DateHelper: datetimeHelper,\r\n public LookupHelpers: LookupHelpers,\r\n public element: ElementRef,\r\n public fb: FormBuilder,\r\n public correspondenceFormStatusService: CorrespondenceFormStatusService,\r\n public messagingSvc: MessagingService) {\r\n super();\r\n\r\n this.LookupUrgencies = this.LookupHelpers.getUrgencies();\r\n\r\n this.messageId = this.messagingSvc.subscribe(\r\n \"UpdateDeadLineAsUrgentIsChanged\", data => {\r\n if (data) {\r\n this.ChangeUrgency_click(data);\r\n }\r\n });\r\n \r\n }\r\n\r\n\r\n ngOnDestroy() {\r\n this.messagingSvc.unSubscribe(this.messageId);\r\n }\r\n\r\n buildForm(): void {\r\n \r\n }\r\n\r\n\r\n isMultiValueCtrlMappedToDb: boolean;\r\n getJsonValue(): string {\r\n if (this.DeadLineInDate != null) {\r\n return this.DateHelper.format(this.DateHelper.pareseStringToJsDate(\r\n this.DeadLineInDate,\r\n \"yyyy-mm-dd\"\r\n ),\r\n \"yyyymmdd000000\"\r\n );\r\n } else { return null; }\r\n \r\n }\r\n\r\n public ChangeUrgency_click(val) {\r\n const me = this;\r\n const urgencyObj = me.LookupUrgencies.filter(x => x.ID.toString() == val.ID);\r\n if (urgencyObj) {\r\n me.SelectedUrgency = urgencyObj[0];\r\n me.Urgency = urgencyObj[0].ID;\r\n me.DeadlineAfterDays = urgencyObj[0].DeadlineAfterDays;\r\n if (me.DeadlineAfterDays == null) {\r\n if (this.noDeadlineFlag == false)\r\n if ($(this.element.nativeElement).find(\"input[name='finalDateParent']\").length > 0)\r\n $(this.element.nativeElement).find(\"input[name='finalDateParent']\")[0].click();\r\n } else {\r\n me.changeDeadlineDateDuration(me.DeadlineAfterDays);\r\n this.noDeadlineFlag = false;\r\n }\r\n if ($(this.element.nativeElement).find(\"input[name='finalDate']\").length > 0)\r\n setTimeout(() => {\r\n $(this.element.nativeElement).find(\"input[name='finalDate']\")[0].click();\r\n }, 10)\r\n }\r\n }\r\n\r\n\r\n setValue(json: string): void {\r\n this.value = JSON.parse(json);\r\n }\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n validate(): boolean {\r\n return true;\r\n }\r\n\r\n _correspondenceId: string = null;\r\n public get correspondenceId() {\r\n return this._correspondenceId;\r\n }\r\n\r\n public get isOnlyCalssification() {\r\n return this._correspondenceId && !this.isExport && !this.isCopy && this.onlyCalssification;\r\n }\r\n\r\n ngSuperOnInit() {\r\n \r\n }\r\n\r\n ngSuperAfterViewInit() {\r\n this.changeDeadlineDateDuration(this.DeadlineAfterDays);\r\n }\r\n\r\n optionFields: CorrespondenceFormStatusOptionField[] = [];\r\n\r\n isDisabled(controlName: string) {\r\n const isDisabled = this.optionFields.some(r => r.ControlIdName == controlName && !r.Enabled)\r\n return isDisabled;\r\n }\r\n\r\n changeDeadlineDateDuration(value) {\r\n if (this.deadlineDatePicker) {\r\n var calculatedTime = 86400000 * value;\r\n var ms = new Date().getTime() + calculatedTime;\r\n var date = new Date(ms);\r\n (Date).prototype.IsGeorgian = false;\r\n (date).IsGeorgian = true;\r\n this.DeadLineInDate = date;\r\n }\r\n \r\n setTimeout(() => {\r\n if (this.noDeadlineFlag || this.isDisabled('DeadLine') || this.isOnlyCalssification || this.deliveryDateType == 1) {\r\n jQuery(\"#ReceiveDate_field\").find(\"span.btn-default\").eq(0).css(\"cursor\", \"not-allowed\");\r\n }\r\n else {\r\n jQuery(\"#ReceiveDate_field\").find(\"span.btn-default\").eq(0).css(\"cursor\", \"pointer\");\r\n }\r\n }, 500);\r\n }\r\n\r\n \r\n\r\n daysNo;\r\n DeadLineInDate = null;\r\n actionDeadlinePeriodChangeValue(daysNum: number) {\r\n if (daysNum < 1) {\r\n this.daysNo = 1;\r\n return;\r\n }\r\n this.DeadlineAfterDays = daysNum;\r\n var changedDate = this.periodChangeValue(daysNum);\r\n this.DeadLineInDate = changedDate;\r\n }\r\n\r\n periodChangeValue(val: number): any {\r\n let current = this.DateHelper.format(\r\n new Date(new Date(Date.now()).getTime() + 24 * 60 * 60 * 1000 * val),\r\n BERRY.appSettings.formats.defaultDatePickerFormatJs\r\n ).split(\"/\");\r\n var selectedDate =\r\n current[2] +\r\n \"-\" +\r\n (\"0\" + current[1]).slice(-2) +\r\n \"-\" +\r\n (\"0\" + current[0]).slice(-2);\r\n return selectedDate;\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 {{getText('Days', 'CorrespondenceNew')}}\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\nimport { Component, ElementRef } from \"@angular/core\";\r\nimport { FormBuilder } from \"@angular/forms\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { MessagingService } from \"../../../../services/messaging-service\";\r\nimport { datetimeHelper } from \"../../../../utils/datetimeHelper\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\n \r\n\r\n@Component({\r\n selector: \"diwan-notification-number\", \r\n templateUrl: \"./fb-diwan-notification-number.html\",\r\n providers: [\r\n\r\n ]\r\n})\r\nexport class fbDiwanNotificationNumberComponent extends BaseCmp implements IFormBuilderComponent {\r\n\r\n\r\n messageId: number;\r\n\r\n value: any = null;\r\n diwanNumber: string = \"\";\r\n //@Input() ShowDiwanComponent: boolean = false;\r\n\r\n constructor(public DateHelper: datetimeHelper,\r\n public element: ElementRef,\r\n public toastr: ToastrService,\r\n public fb: FormBuilder,\r\n public messagingSvc: MessagingService) {\r\n super();\r\n }\r\n\r\n\r\n ngOnDestroy() {\r\n this.messagingSvc.unSubscribe(this.messageId);\r\n }\r\n\r\n buildForm(): void {\r\n\r\n }\r\n\r\n isMultiValueCtrlMappedToDb: boolean;\r\n getJsonValue(): string {\r\n return this.diwanNumber;\r\n }\r\n\r\n keyPress(e) {\r\n if (e) {\r\n var textLength = e.target.value.length;\r\n if (textLength >= 50) {\r\n this.toastr.warning(this.getText(\"DiwanNotificationNumberShouldNotExceed50characters\", \"DiwanNumber\"));\r\n }\r\n }\r\n }\r\n\r\n\r\n setValue(json: any): void {\r\n this.diwanNumber = json;\r\n }\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n validate(): boolean {\r\n if (this.diwanNumber.length > 50) {\r\n this.toastr.warning(this.getText(\"DiwanNotificationNumberShouldNotExceed50characters\", \"DiwanNumber\"));\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n ngSuperOnInit() {\r\n this.getJsonValue();\r\n }\r\n\r\n ngSuperAfterViewInit() {\r\n }\r\n\r\n\r\n}"," \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","\r\nexport class MonitoredInformationDto {\r\n CorrespondenceId: string = null;\r\n LookupSourceType: number = null;\r\n IsAuthenticatedAccount: boolean = false;\r\n MonitoredInformationCreatorSourceType: MonitoredInformationCreatorSourceTypeEnum = MonitoredInformationCreatorSourceTypeEnum.Annonymous;\r\n IndividualId: number = null;\r\n UserId: string = null;\r\n CommunicatingWithInformationSource: boolean = false;\r\n CommunicationResult: string = null;;\r\n NeedReward: boolean = false;\r\n RewardIndividualId: string = null;;\r\n RejectRewardReason: string = null;;\r\n UrgencyLevel: UrgencyLevelEnum = null;\r\n lstLookupInformationSourceCategory: any[] = null;;\r\n lstLookupInformationSourceSubCategory: any[] = null;;\r\n InformationSourceCategoryId: number = null;\r\n}\r\n\r\n\r\nexport enum MonitoredInformationCreatorSourceTypeEnum {\r\n /// 1. شخص مجهول\r\n /// 2. موظف في الهيئة\r\n /// 3. شخص معروف\r\n\r\n Annonymous = 1,\r\n UserAtOrganization = 2,\r\n IndividualUser = 3\r\n}\r\n\r\nexport enum UrgencyLevelEnum {\r\n\r\n /// 1. تامة\r\n /// 2. خارجية\r\n /// 3. غير سرية\r\n\r\n Confidential = 1,\r\n External = 2,\r\n NotConfidential = 3\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
    \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 {{getText(\"AttendanceAbsenseReason\", \"AdvancedMeetings\")}}\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 ","import { Component } from \"@angular/core\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { LookupTypeEnum, IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { MonitoredInformationCreatorSourceTypeEnum, MonitoredInformationDto, UrgencyLevelEnum } from \"./MonitoredInformationDto\";\r\nimport { IComboboxOptions, IComboboxServerDatasourceOptions, } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { InformationSourceService } from \"./information-source-service\";\r\nimport { Router } from \"@angular/router\";\r\nimport { MessagingService } from \"src/app/_common/services/messaging-service\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"information-source\",\r\n templateUrl: \"./fb-information-source.html\"\r\n})\r\nexport class fbInformationSourceComponent extends BaseCmp implements IFormBuilderComponent {\r\n\r\n isMultiValueCtrlMappedToDb: boolean = true;\r\n\r\n isIndividual: boolean = false;\r\n IndividualContact: any;\r\n IndividualDisplayName: string;\r\n IsUserAtOrganization: boolean = false;\r\n IsKnownPerson: boolean = false;\r\n AnyOtherPersonInfoSourceType: boolean = false;\r\n IsSocialMedia: boolean = true;\r\n isUser: boolean = false;\r\n isConfidential: boolean = false;\r\n isExternal: boolean = false;\r\n isNotConfidential: boolean = false;\r\n AgreeResult: string;\r\n RejectResult: string;\r\n SelectedUserName: string;\r\n CloneSelectedUserName: string;\r\n\r\n _monitoredInformationDto: MonitoredInformationDto = new MonitoredInformationDto();\r\n\r\n ngOnInit() {\r\n var me = this;\r\n \r\n }\r\n\r\n\r\n constructor(public _infoSvc: InformationSourceService,\r\n public router: Router,\r\n public msgs: MessagingService\r\n ) {\r\n super();\r\n\r\n this.buildForm();\r\n this.OnSelectRadio(1);\r\n this.isNeedReward(true);\r\n this.GetLookupByCaetegory();\r\n\r\n this.msgs.subscribe(\"IndividualCreate\", data => {\r\n if (data != null) {\r\n this.IndividualContact = data;\r\n this._monitoredInformationDto.IndividualId = data.Id;\r\n }\r\n });\r\n\r\n this.msgs.subscribe(\"MonitoredInformationIndividualName\", DisplayName => {\r\n this.IndividualDisplayName = DisplayName;\r\n });\r\n }\r\n\r\n ngSuperOnInit() { }\r\n\r\n buildForm(): void { }\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n ngAfterViewInit() {\r\n this.msgs.publish(\"InformationSourceFinishedLoading\",true);\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n return true;\r\n }\r\n\r\n openAddContactsModal() {\r\n this.router.navigate([{ outlets: { 'modal': ['add-new-individual'] } }],{ skipLocationChange:false});\r\n }\r\n\r\n GetLookupByCaetegory() {\r\n this._infoSvc.getInformationSourceLookupLst(LookupTypeEnum.InformationSourceCategory).pipe().subscribe(\r\n response => {\r\n this._monitoredInformationDto.lstLookupInformationSourceCategory = response;\r\n this.onChange(response[0].Id);\r\n }\r\n );\r\n }\r\n\r\n autocompleteDefaultOptions: IComboboxOptions = {\r\n allowFreeText: false,\r\n };\r\n\r\n comboBoxServerSearchDatasourceDefaultOptions: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"get\",\r\n resultsField: 'items',\r\n searchField: 'keyword'\r\n }\r\n\r\n individualAutocompleteOptions: IComboboxOptions = Object.assign({}, this.autocompleteDefaultOptions, {\r\n serverDatasource: Object.assign({}, this.comboBoxServerSearchDatasourceDefaultOptions, {\r\n url: BERRY.hostName + 'api/contacts/search/individuals'\r\n }),\r\n minLength: 1,\r\n dataTextField: 'DisplayName',\r\n dataValueField: 'Id',\r\n allowFreeText: false,\r\n displayTemplate: \"#: data.DisplayName #\",\r\n });\r\n \r\n autocompleteDefaultOptionsForUser: IComboboxOptions = {\r\n dataTextField: 'Value',\r\n dataValueField: 'dbid',\r\n allowFreeText: false,\r\n minLength: 1\r\n };\r\n\r\n comboBoxServerSearchDatasourceDefaultOptionsForUser: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"GET\",\r\n resultsField: 'd',\r\n searchField: 'kw'\r\n };\r\n\r\n userAutocompleteOptions = Object.assign({}, this.autocompleteDefaultOptionsForUser, {\r\n serverDatasource: Object.assign({}, this.comboBoxServerSearchDatasourceDefaultOptionsForUser, {\r\n url: `${BERRY.hostName}api/ConfidentialityApi/ConfidentialUserAutoComplete`\r\n }),\r\n dataTextField: 'value',\r\n dataValueField: 'dbid',\r\n allowFreeText: false,\r\n displayTemplate: \"#: data.number # - #: data.value #   #:data.sector#\",\r\n autoBind: false\r\n });\r\n\r\n getUserInfo($event, index) {\r\n if ($event) { \r\n if (index == 2)\r\n this.SelectedUserName = $event.DisplayName;\r\n else\r\n this.SelectedUserName = $event.value;\r\n\r\n this.CloneSelectedUserName = this.SelectedUserName;\r\n }\r\n\r\n else {\r\n this.SelectedUserName = null;\r\n this.CloneSelectedUserName = null;\r\n }\r\n }\r\n\r\n onChange(Lookupid) {\r\n\r\n this._infoSvc.getInformationSourceSubCatrgories(LookupTypeEnum.InformationSourceCategoryType, Lookupid).subscribe(\r\n response => {\r\n this._monitoredInformationDto.lstLookupInformationSourceSubCategory = response;\r\n if (this._monitoredInformationDto.lstLookupInformationSourceCategory[6].Id == Lookupid) {\r\n this.OnSelectRadio(2);\r\n this.IsUserAtOrganization = true;\r\n this.IsKnownPerson = false;\r\n this.AnyOtherPersonInfoSourceType = false;\r\n this.IsSocialMedia = false;\r\n this._monitoredInformationDto.IndividualId = null;\r\n }\r\n else if (this._monitoredInformationDto.lstLookupInformationSourceCategory[5].Id == Lookupid) {\r\n this.IsKnownPerson = true;\r\n this.IsUserAtOrganization = false;\r\n this.AnyOtherPersonInfoSourceType = false;\r\n this.IsSocialMedia = false;\r\n this._monitoredInformationDto.UserId = null;\r\n }\r\n else if (this._monitoredInformationDto.lstLookupInformationSourceCategory[0].Id == Lookupid) {\r\n this.IsKnownPerson = false;\r\n this.IsUserAtOrganization = false;\r\n this.AnyOtherPersonInfoSourceType = false;\r\n this.IsSocialMedia = true;\r\n this._monitoredInformationDto.IndividualId = null;\r\n this._monitoredInformationDto.UserId = null;\r\n }\r\n else {\r\n this.IsKnownPerson = false;\r\n this.IsUserAtOrganization = false;\r\n this.AnyOtherPersonInfoSourceType = true;\r\n this.IsSocialMedia = false;\r\n this._monitoredInformationDto.IndividualId = null;\r\n this._monitoredInformationDto.UserId = null;\r\n \r\n\r\n }\r\n this._monitoredInformationDto.InformationSourceCategoryId = Lookupid;\r\n }\r\n );\r\n\r\n }\r\n\r\n getSourceIdChange(id) {\r\n this._monitoredInformationDto.LookupSourceType = id;\r\n }\r\n\r\n OnSelectRadio(type) {\r\n if (type == 1) {\r\n this.isUser = false;\r\n this.isIndividual = false;\r\n this._monitoredInformationDto.MonitoredInformationCreatorSourceType = MonitoredInformationCreatorSourceTypeEnum.Annonymous;\r\n if ($(\"#userCombo\").data(\"kendoComboBox\") != null)\r\n $(\"#userCombo\").data(\"kendoComboBox\").value(\"\");\r\n if ($(\"#individualCombo\").data(\"kendoComboBox\") != null)\r\n $(\"#individualCombo\").data(\"kendoComboBox\").value(\"\");\r\n }\r\n else if (type == 2) {\r\n this.isUser = true;\r\n this.isIndividual = false;\r\n this._monitoredInformationDto.MonitoredInformationCreatorSourceType = MonitoredInformationCreatorSourceTypeEnum.UserAtOrganization;\r\n if ($(\"#individualCombo\").data(\"kendoComboBox\") != null)\r\n $(\"#individualCombo\").data(\"kendoComboBox\").value(\"\");\r\n }\r\n else {\r\n this.isIndividual = true;\r\n this.isUser = false;\r\n this._monitoredInformationDto.MonitoredInformationCreatorSourceType = MonitoredInformationCreatorSourceTypeEnum.IndividualUser;\r\n if ($(\"#userCombo\").data(\"kendoComboBox\") != null)\r\n $(\"#userCombo\").data(\"kendoComboBox\").value(\"\");\r\n }\r\n\r\n }\r\n\r\n isInformationSourceContacted(val) {\r\n this._monitoredInformationDto.CommunicatingWithInformationSource = val;\r\n if (val) {\r\n this._monitoredInformationDto.CommunicationResult = this.AgreeResult;\r\n this.RejectResult = \"\";\r\n }\r\n else {\r\n this._monitoredInformationDto.CommunicationResult = this.RejectResult;\r\n this.AgreeResult = \"\";\r\n }\r\n\r\n }\r\n\r\n isNeedReward(val) {\r\n this._monitoredInformationDto.NeedReward = val;\r\n if (val == true)\r\n this.CloneSelectedUserName = this.SelectedUserName;\r\n else\r\n this.CloneSelectedUserName = null;\r\n }\r\n\r\n OnSelectRadioUrgencyLevel(value) {\r\n if (value == 1)\r\n this._monitoredInformationDto.UrgencyLevel = UrgencyLevelEnum.Confidential;\r\n\r\n else if (value == 2)\r\n this._monitoredInformationDto.UrgencyLevel = UrgencyLevelEnum.External;\r\n\r\n else\r\n this._monitoredInformationDto.UrgencyLevel = UrgencyLevelEnum.NotConfidential;\r\n\r\n }\r\n\r\n getJsonValue(): string {\r\n var me = this;\r\n\r\n if (me._monitoredInformationDto.CommunicatingWithInformationSource) {\r\n me._monitoredInformationDto.CommunicationResult = me.AgreeResult;\r\n }\r\n else {\r\n me._monitoredInformationDto.CommunicationResult = me.RejectResult;\r\n }\r\n if (!me._monitoredInformationDto.CommunicationResult)\r\n me._monitoredInformationDto.CommunicationResult = '';\r\n\r\n if (me._monitoredInformationDto.InformationSourceCategoryId != null && me._monitoredInformationDto.lstLookupInformationSourceCategory != null) {\r\n if (me._monitoredInformationDto.InformationSourceCategoryId != me._monitoredInformationDto.lstLookupInformationSourceCategory[0].Id) {\r\n me._monitoredInformationDto.LookupSourceType = me._monitoredInformationDto.InformationSourceCategoryId;\r\n } else {\r\n me._monitoredInformationDto.MonitoredInformationCreatorSourceType = 1;\r\n }\r\n }\r\n\r\n const result = JSON.stringify(me._monitoredInformationDto);\r\n return result;\r\n }\r\n\r\n setValue(json: string): void {\r\n const me = this;\r\n\r\n me._infoSvc.getInformationSourceLookupLst(LookupTypeEnum.InformationSourceCategory).pipe().subscribe(\r\n response => {\r\n me._monitoredInformationDto = JSON.parse(json);\r\n me._monitoredInformationDto.lstLookupInformationSourceCategory = response;\r\n\r\n if (me._monitoredInformationDto.MonitoredInformationCreatorSourceType == 1) {\r\n //me._monitoredInformationDto.InformationSourceCategoryId == null || me._monitoredInformationDto.InformationSourceCategoryId == me._monitoredInformationDto.lstLookupInformationSourceCategory[0].Id) {\r\n me.onChange(response[0].Id);\r\n }\r\n\r\n if (me._monitoredInformationDto.CommunicatingWithInformationSource) {\r\n me.AgreeResult = me._monitoredInformationDto.CommunicationResult;\r\n }\r\n else {\r\n me.RejectResult = me._monitoredInformationDto.CommunicationResult;\r\n }\r\n\r\n if (me._monitoredInformationDto.MonitoredInformationCreatorSourceType == 1) {\r\n me.OnSelectRadio(1);\r\n }\r\n else if (me._monitoredInformationDto.MonitoredInformationCreatorSourceType == 2) {\r\n me.OnSelectRadio(2);\r\n me.IsUserAtOrganization = true;\r\n me.IsKnownPerson = false;\r\n me.AnyOtherPersonInfoSourceType = false;\r\n me.IsSocialMedia = false;\r\n me._monitoredInformationDto.IndividualId = null;\r\n //me.onChange(me._monitoredInformationDto.InformationSourceCategoryId);\r\n }\r\n else if (me._monitoredInformationDto.MonitoredInformationCreatorSourceType == 3) {\r\n me.OnSelectRadio(3);\r\n }\r\n\r\n if (me._monitoredInformationDto.UrgencyLevel == 1)\r\n me.isConfidential = true;\r\n else if (me._monitoredInformationDto.UrgencyLevel == 2)\r\n me.isExternal =\r\n true;\r\n else\r\n me.isNotConfidential = true;\r\n\r\n if (this.IsSocialMedia) {\r\n me._monitoredInformationDto.InformationSourceCategoryId = me._monitoredInformationDto.lstLookupInformationSourceCategory[0].Id;\r\n } else {\r\n me._monitoredInformationDto.InformationSourceCategoryId = me._monitoredInformationDto.LookupSourceType;\r\n }\r\n\r\n }\r\n );\r\n }\r\n}\r\n\r\n\r\n//export enum IdEnum {\r\n// Social media = 205,\r\n// Incoming = 1,\r\n// Outgoing = 2,\r\n// Internal = 3,\r\n// PrivateIncoming = 5,\r\n// PrivateOutgoing = 6,\r\n// InternalForPresident = 7,\r\n// InteranalAndOutGoing = 8\r\n//}\r\n","\r\nimport {catchError, map} from 'rxjs/operators';\r\nimport { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings, LookupTypeEnum } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class InformationSourceService extends BaseService {\r\n baseUrl: string;\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n\r\n this.baseUrl = `${BERRY.hostName}`;\r\n }\r\n\r\n public getInformationSourceLookupLst(lookupType: LookupTypeEnum) {\r\n let getUrl = `${\r\n this.baseUrl\r\n }api/LookupAPI/LookupAPI-GetLookups?lookupType=${lookupType}`;\r\n return super.get(getUrl);\r\n\r\n //return super.get(\r\n // this.baseUrl + \"LookupAPI-GetLookups?lookupType=\" + lookupType\r\n //);\r\n }\r\n\r\n public getInformationSourceSubCatrgories(id: number, selectedTypeId: number) {\r\n let url = `${\r\n this.baseUrl\r\n }api/CommunicationApi/GetTypeOrClassificationBySystemGroupId?id=${id}&TypeId=${selectedTypeId}`;\r\n return this.http\r\n .get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError),);\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
    \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
    \r\n
    \r\n
    \r\n\r\n
    \r\n 1\" class=\"link-delete bb-col-1 text-center margin-top-25\" href=\"javascript:void(0);\"\r\n (click)=\"deleteProclamedEntityType(index)\">×\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { Component } from \"@angular/core\";\r\nimport { BaseCmp } from \"../../../BaseComponent\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { FormGroup, FormBuilder, Validators } from \"@angular/forms\";\r\nimport { IComboboxServerDatasourceOptions, IComboboxOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { FormService } from \"../../formService \";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { ContactsHelpers } from \"src/app/Contacts/helpers\";\r\nimport { ElasticSearchPropertyType } from \"../../enums/elastic-search-property-type\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\n\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"proclamed-entity-types\",\r\n templateUrl: \"./fb-proclamed-entity-types.html\",\r\n})\r\nexport class fbproclamedEntityTypesComponent extends BaseCmp implements IFormBuilderComponent {\r\n\r\n isMultiValueCtrlMappedToDb: boolean = false;\r\n\r\n //#region members\r\n proclamedEntityTypeFrm: FormGroup;\r\n numberOfProclamedEntityTypes = 0;\r\n OrganizationId: number = null;\r\n publicContact: number[] = [];\r\n publicCompony: number[] = [];\r\n publicEmployee: number[] = [];\r\n other: number[] = [];\r\n proclamedEntityTypesRadio: number[] = [];\r\n\r\n publicContacts: proclamedEntityTypePublicContactPublicCompony[] = [];\r\n publicComponies: proclamedEntityTypePublicContactPublicCompony[] = [];\r\n publicEmployees: proclamedEntityTypePublicEmployee[] = [];\r\n others: proclamedEntityTypeOther[] = [];\r\n\r\n //Costant form controls names\r\n readonly _proclamedEntities = \"proclamedEntities\";\r\n readonly _publicContact = \"PublicContact\";\r\n readonly _publicContactGroup = \"PublicContactGroup\";\r\n readonly _publicCompony = \"PublicCompony\";\r\n readonly _publicComponyGroup = \"PublicComponyGroup\";\r\n readonly _publicEmployee = \"PublicEmployee\";\r\n readonly _publicEmployeeGroup = \"PublicEmployeeGroup\";\r\n readonly _other = \"Other\";\r\n readonly _otherGroup = \"OtherGroup\";\r\n readonly _proclamedEntityTypesRadio = \"ProclamedEntityTypesRadio\";\r\n readonly _proclamedEntityTypesRadioGroup = \"ProclamedEntityTypesRadioGroup\";\r\n\r\n\r\n readonly _externalContact = \"externalContact\";\r\n readonly _employeeName = \"employeeName\";\r\n readonly _details = \"details\";\r\n readonly _area = \"area\";\r\n readonly _city = \"city\";\r\n readonly _currentRadioValue = \"currentRadioValue\";\r\n //Costant form controls names\r\n\r\n //#endregion\r\n\r\n externalContactAutoCompleteOptions: IComboboxOptions = {\r\n serverDatasource: {\r\n enabled: true,\r\n method: \"post\",\r\n searchField: \"kw\",\r\n additionalParams: this.OrganizationId != null ? () => {\r\n return { Id: this.OrganizationId.toString() };\r\n } : undefined,\r\n resultsField: \"\",\r\n url: BERRY.hostName + \"Correspondences/NewApp/GetIncidentStudyOrganizations\"\r\n },\r\n dataTextField: \"ExternalContactName\",\r\n dataValueField: \"ExternalContactID\",\r\n allowFreeText: false,\r\n displayTemplate: \"#: data.ExternalContactID # - #: data.ExternalContactName # \",\r\n minLength: 1\r\n };\r\n \r\n statesAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.contactHelpers.defaultStatesAutocompleteOptions,\r\n {}\r\n );\r\n\r\n defaultAutocompleteOptions: IComboboxOptions = {\r\n dataTextField: \"Title\",\r\n dataValueField: \"Id\",\r\n allowFreeText: false\r\n };\r\n\r\n\r\n defaultComboBoxServerDatasourceOptions: IComboboxServerDatasourceOptions = {\r\n enabled: true\r\n };\r\n\r\n\r\n defaultExactCitiesAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.defaultComboBoxServerDatasourceOptions,\r\n {\r\n url: BERRY.hostName + \"api/contacts/lookups/GetExactAutocompleteCities\"\r\n }\r\n ),\r\n allowFreeText: false,\r\n autoBind: true\r\n }\r\n );\r\n\r\n cityAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaultExactCitiesAutocompleteOptions,\r\n {}\r\n );\r\n\r\n\r\n\r\n constructor(public fb: FormBuilder,\r\n public formService: FormService,\r\n public contactHelpers: ContactsHelpers,\r\n public toastr: ToastrService\r\n ) {\r\n super();\r\n\r\n this.buildForm();\r\n }\r\n\r\n ngSuperOnInit() { }\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n buildForm(): void {\r\n let me = this;\r\n\r\n if (me.numberOfProclamedEntityTypes == 0)\r\n me.addAnotherproclamedEntityType(false);\r\n\r\n me.proclamedEntityTypeFrm = me.fb.group({});\r\n let entityTypes = me.fb.array([]);\r\n\r\n for (let index = 0; index < me.numberOfProclamedEntityTypes; index++) {\r\n this.OrganizationId = me.publicContacts[index].externalContact;\r\n let publicContactGroup = {\r\n [me._externalContact]: [me.publicContacts[index].externalContact],\r\n [\"hfExternalContact\"]: [\r\n me.publicContacts[index].externalContact,\r\n me.getValidators(proclamedEntityTypes.PublicContact, index)\r\n ],\r\n [me._area]: [me.publicContacts[index].area],\r\n [\"hfArea\"]: [\r\n me.publicContacts[index].area,\r\n me.getValidators(proclamedEntityTypes.PublicContact, index)\r\n ],\r\n [me._city]: [me.publicContacts[index].city],\r\n [\"hfCity\"]: [\r\n me.publicContacts[index].city,\r\n me.getValidators(proclamedEntityTypes.PublicContact, index)\r\n ]\r\n };\r\n\r\n let publicComponyGroup = {\r\n [me._externalContact]: [me.publicComponies[index].externalContact],\r\n [\"hfExternalContact\"]: [\r\n me.publicComponies[index].externalContact,\r\n me.getValidators(proclamedEntityTypes.PublicCompony, index)\r\n ],\r\n [me._area]: [me.publicComponies[index].area],\r\n [\"hfArea\"]: [\r\n me.publicComponies[index].area,\r\n me.getValidators(proclamedEntityTypes.PublicCompony, index)\r\n ],\r\n [me._city]: [me.publicComponies[index].city],\r\n [\"hfCity\"]: [\r\n me.publicComponies[index].city,\r\n me.getValidators(proclamedEntityTypes.PublicCompony, index)\r\n ]\r\n };\r\n\r\n let publicEmployeeGroup = {\r\n [me._employeeName]: [\r\n me.publicEmployees[index].employeeName,\r\n me.getValidators(proclamedEntityTypes.PublicEmployee, index)\r\n ],\r\n [me._area]: [me.publicEmployees[index].area],\r\n [\"hfArea\"]: [\r\n me.publicEmployees[index].area,\r\n me.getValidators(proclamedEntityTypes.PublicEmployee, index)\r\n ],\r\n [me._city]: [me.publicEmployees[index].city],\r\n [\"hfCity\"]: [\r\n me.publicEmployees[index].city,\r\n me.getValidators(proclamedEntityTypes.PublicEmployee, index)\r\n ]\r\n };\r\n\r\n let otherGroup = {\r\n [me._details]: [\r\n me.others[index].details,\r\n me.getValidators(proclamedEntityTypes.Other, index)\r\n ],\r\n [me._area]: [me.others[index].area],\r\n [\"hfArea\"]: [\r\n me.others[index].area,\r\n me.getValidators(proclamedEntityTypes.Other, index)\r\n ],\r\n [me._city]: [me.others[index].city],\r\n [\"hfCity\"]: [\r\n me.others[index].city,\r\n me.getValidators(proclamedEntityTypes.Other, index)\r\n ]\r\n };\r\n\r\n let proclamedEntityTypesRadioGroup = {\r\n [me._currentRadioValue]: me.proclamedEntityTypesRadio[index],\r\n [\"hfCurrentRadioValue\"]: [me.proclamedEntityTypesRadio[index], Validators.required],\r\n\r\n };\r\n\r\n let proclamedEntityType = me.fb.group({\r\n [me._proclamedEntityTypesRadio]: [me.proclamedEntityTypesRadio[index]],\r\n [me._proclamedEntityTypesRadioGroup]: me.fb.group(proclamedEntityTypesRadioGroup),\r\n [me._publicContact]: [me.publicContact[index]],\r\n [me._publicContactGroup]: me.fb.group(publicContactGroup),\r\n [me._publicCompony]: [me.publicCompony[index]],\r\n [me._publicComponyGroup]: me.fb.group(publicComponyGroup),\r\n [me._publicEmployee]: [me.publicEmployee[index]],\r\n [me._publicEmployeeGroup]: me.fb.group(publicEmployeeGroup),\r\n [me._other]: [me.other[index]],\r\n [me._otherGroup]: me.fb.group(otherGroup)\r\n });\r\n\r\n entityTypes.push(proclamedEntityType as any);\r\n }\r\n\r\n me.proclamedEntityTypeFrm.addControl(me._proclamedEntities, entityTypes);\r\n me.externalContactAutoCompleteOptions.serverDatasource = {\r\n enabled: true,\r\n method: \"post\",\r\n searchField: \"kw\",\r\n additionalParams: this.OrganizationId != null ? () => {\r\n return { Id: this.OrganizationId.toString() };\r\n } : undefined,\r\n resultsField: \"\",\r\n url: BERRY.hostName + \"Correspondences/NewApp/GetIncidentStudyOrganizations\"\r\n }\r\n }\r\n \r\n\r\n getJsonValue(): string {\r\n const me = this;\r\n\r\n let proclamedEntities: proclamedEntityType[] = [];\r\n\r\n for (let index = 0; index < me.numberOfProclamedEntityTypes; index++) {\r\n if (me.proclamedEntityTypesRadio[index] == 1) {\r\n let proclamedEntity: proclamedEntityType = {\r\n type: proclamedEntityTypes.PublicContact,\r\n index: index,\r\n\r\n externalContact: me.publicContacts[index].externalContact,\r\n employeeName: \"\",\r\n details: \"\",\r\n area: me.publicContacts[index].area,\r\n city: me.publicContacts[index].city\r\n };\r\n\r\n proclamedEntities.push(proclamedEntity);\r\n }\r\n\r\n else if (me.proclamedEntityTypesRadio[index] == 2) {\r\n let proclamedEntity: proclamedEntityType = {\r\n type: proclamedEntityTypes.PublicCompony,\r\n index: index,\r\n\r\n externalContact: me.publicComponies[index].externalContact,\r\n employeeName: \"\",\r\n details: \"\",\r\n area: me.publicComponies[index].area,\r\n city: me.publicComponies[index].city\r\n };\r\n\r\n proclamedEntities.push(proclamedEntity);\r\n }\r\n\r\n else if (me.proclamedEntityTypesRadio[index] == 3) {\r\n let proclamedEntity: proclamedEntityType = {\r\n type: proclamedEntityTypes.PublicEmployee,\r\n index: index,\r\n\r\n externalContact: \"\",\r\n employeeName: me.publicEmployees[index].employeeName,\r\n details: \"\",\r\n area: me.publicEmployees[index].area,\r\n city: me.publicEmployees[index].city\r\n };\r\n\r\n proclamedEntities.push(proclamedEntity);\r\n }\r\n\r\n else if (me.proclamedEntityTypesRadio[index] == 4) {\r\n let proclamedEntity: proclamedEntityType = {\r\n type: proclamedEntityTypes.Other,\r\n index: index,\r\n\r\n externalContact: \"\",\r\n employeeName: \"\",\r\n details: me.others[index].details,\r\n area: me.others[index].area,\r\n city: me.others[index].city\r\n };\r\n\r\n proclamedEntities.push(proclamedEntity);\r\n }\r\n }\r\n\r\n const result = JSON.stringify(proclamedEntities);\r\n\r\n return result;\r\n }\r\n\r\n setValue(value: string): void {\r\n const me = this;\r\n\r\n const proclamedEntities: proclamedEntityType[] = JSON.parse(value);\r\n const length = proclamedEntities.length;\r\n\r\n for (let index = 0; index < length; index++) {\r\n if (proclamedEntities[index].index >= me.numberOfProclamedEntityTypes)\r\n me.addAnotherproclamedEntityType(false);\r\n\r\n if (proclamedEntities[index].type == proclamedEntityTypes.PublicContact) {\r\n me.proclamedEntityTypesRadio[index] = 1;\r\n me.publicContact[proclamedEntities[index].index] = 1;\r\n me.publicContacts[proclamedEntities[index].index].externalContact =\r\n proclamedEntities[index].externalContact;\r\n me.publicContacts[proclamedEntities[index].index].area =\r\n proclamedEntities[index].area;\r\n me.publicContacts[proclamedEntities[index].index].city =\r\n proclamedEntities[index].city;\r\n } else if (\r\n proclamedEntities[index].type == proclamedEntityTypes.PublicCompony\r\n ) {\r\n me.proclamedEntityTypesRadio[index] = 2;\r\n me.publicCompony[proclamedEntities[index].index] = 2;\r\n me.publicComponies[proclamedEntities[index].index].externalContact =\r\n proclamedEntities[index].externalContact;\r\n me.publicComponies[proclamedEntities[index].index].area =\r\n proclamedEntities[index].area;\r\n me.publicComponies[proclamedEntities[index].index].city =\r\n proclamedEntities[index].city;\r\n } else if (\r\n proclamedEntities[index].type == proclamedEntityTypes.PublicEmployee\r\n ) {\r\n me.proclamedEntityTypesRadio[index] = 3;\r\n me.publicEmployee[proclamedEntities[index].index] = 3;\r\n me.publicEmployees[proclamedEntities[index].index].employeeName =\r\n proclamedEntities[index].employeeName;\r\n me.publicEmployees[proclamedEntities[index].index].area =\r\n proclamedEntities[index].area;\r\n me.publicEmployees[proclamedEntities[index].index].city =\r\n proclamedEntities[index].city;\r\n } else if (proclamedEntities[index].type == proclamedEntityTypes.Other) {\r\n me.proclamedEntityTypesRadio[index] = 4;\r\n me.other[proclamedEntities[index].index] = 4;\r\n me.others[proclamedEntities[index].index].details =\r\n proclamedEntities[index].details;\r\n me.others[proclamedEntities[index].index].area =\r\n proclamedEntities[index].area;\r\n me.others[proclamedEntities[index].index].city =\r\n proclamedEntities[index].city;\r\n }\r\n }\r\n\r\n me.buildForm();\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n let properties = {\r\n type: ElasticSearchPropertyType.Integer_type,\r\n index: ElasticSearchPropertyType.Integer_type,\r\n externalContact: ElasticSearchPropertyType.Integer_type,\r\n employeeName: ElasticSearchPropertyType.String_text_type,\r\n details: ElasticSearchPropertyType.String_text_type,\r\n area: ElasticSearchPropertyType.Integer_type,\r\n city: ElasticSearchPropertyType.Integer_type\r\n };\r\n\r\n return JSON.stringify(properties);\r\n }\r\n\r\n validate(): boolean {\r\n let me = this;\r\n //me.buildForm();\r\n me.formService.markFormAsTouched(me.proclamedEntityTypeFrm);\r\n\r\n return me.ProclamedEntitiesSelected() && me.proclamedEntityTypeFrm.valid;\r\n }\r\n\r\n ProclamedEntitiesSelected(): boolean {\r\n let me = this;\r\n for (let index = 0; index < me.numberOfProclamedEntityTypes; index++) {\r\n if (me.proclamedEntityTypesRadio[index] == 1 || me.proclamedEntityTypesRadio[index] == 2\r\n || me.proclamedEntityTypesRadio[index] == 3 || me.proclamedEntityTypesRadio[index] == 4)\r\n continue;\r\n else {\r\n me.toastr.warning(me.getText(\"DynamicForm\", \"noProclamedEntitiesWarning\"));\r\n return false;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n getValidators(proclamedEntityType: proclamedEntityTypes, index: number) {\r\n let me = this;\r\n\r\n switch (proclamedEntityType) {\r\n case proclamedEntityTypes.PublicContact:\r\n if (me.proclamedEntityTypesRadio[index] == 1) {\r\n return me.proclamedEntityTypesRadio[index] == 1 ? [Validators.required] : [];\r\n } else return [];\r\n case proclamedEntityTypes.PublicCompony:\r\n if (me.proclamedEntityTypesRadio[index] == 2) {\r\n return me.proclamedEntityTypesRadio[index] == 2 ? [Validators.required] : [];\r\n } else return [];\r\n case proclamedEntityTypes.PublicEmployee:\r\n if (me.proclamedEntityTypesRadio[index] == 3) {\r\n return me.proclamedEntityTypesRadio[index] ? [Validators.required] : [];\r\n } else return [];\r\n case proclamedEntityTypes.Other:\r\n if (me.proclamedEntityTypesRadio[index] == 4) {\r\n return me.proclamedEntityTypesRadio[index] ? [Validators.required] : [];\r\n } else return [];\r\n }\r\n }\r\n\r\n addNewCollection() {\r\n var me = this;\r\n let entityTypes = me.fb.array([]);\r\n this.addAnotherproclamedEntityType(false);\r\n var index = me.publicContact.length - 1;\r\n let publicContactGroup = {\r\n [me._externalContact]: [me.publicContacts[index].externalContact],\r\n [\"hfExternalContact\"]: [\r\n me.publicContacts[index].externalContact,\r\n me.getValidators(proclamedEntityTypes.PublicContact, index)\r\n ],\r\n [me._area]: [me.publicContacts[index].area],\r\n [\"hfArea\"]: [\r\n me.publicContacts[index].area,\r\n me.getValidators(proclamedEntityTypes.PublicContact, index)\r\n ],\r\n [me._city]: [me.publicContacts[index].city],\r\n [\"hfCity\"]: [\r\n me.publicContacts[index].city,\r\n me.getValidators(proclamedEntityTypes.PublicContact, index)\r\n ]\r\n };\r\n\r\n let publicComponyGroup = {\r\n [me._externalContact]: [me.publicComponies[index].externalContact],\r\n [\"hfExternalContact\"]: [\r\n me.publicComponies[index].externalContact,\r\n me.getValidators(proclamedEntityTypes.PublicCompony, index)\r\n ],\r\n [me._area]: [me.publicComponies[index].area],\r\n [\"hfArea\"]: [\r\n me.publicComponies[index].area,\r\n me.getValidators(proclamedEntityTypes.PublicCompony, index)\r\n ],\r\n [me._city]: [me.publicComponies[index].city],\r\n [\"hfCity\"]: [\r\n me.publicComponies[index].city,\r\n me.getValidators(proclamedEntityTypes.PublicCompony, index)\r\n ]\r\n };\r\n\r\n let publicEmployeeGroup = {\r\n [me._employeeName]: [\r\n me.publicEmployees[index].employeeName,\r\n me.getValidators(proclamedEntityTypes.PublicEmployee, index),\r\n ],\r\n [me._area]: [me.publicEmployees[index].area],\r\n [\"hfArea\"]: [\r\n me.publicEmployees[index].area,\r\n me.getValidators(proclamedEntityTypes.PublicEmployee, index)\r\n ],\r\n [me._city]: [me.publicEmployees[index].city],\r\n [\"hfCity\"]: [\r\n me.publicEmployees[index].city,\r\n me.getValidators(proclamedEntityTypes.PublicEmployee, index)\r\n ]\r\n };\r\n\r\n let otherGroup = {\r\n [me._details]: [\r\n me.others[index].details,\r\n me.getValidators(proclamedEntityTypes.Other, index)\r\n ],\r\n [me._area]: [me.others[index].area],\r\n [\"hfArea\"]: [\r\n me.others[index].area,\r\n me.getValidators(proclamedEntityTypes.Other, index)\r\n ],\r\n [me._city]: [me.others[index].city],\r\n [\"hfCity\"]: [\r\n me.others[index].city,\r\n me.getValidators(proclamedEntityTypes.Other, index)\r\n ]\r\n };\r\n let proclamedEntityTypesRadioGroup = {\r\n [me._currentRadioValue]: me.proclamedEntityTypesRadio[index],\r\n [\"hfCurrentRadioValue\"]: me.proclamedEntityTypesRadio[index],\r\n };\r\n let proclamedEntityType = me.fb.group({\r\n [me._proclamedEntityTypesRadio]: [me.proclamedEntityTypesRadio[index]],\r\n [me._proclamedEntityTypesRadioGroup]: me.fb.group(proclamedEntityTypesRadioGroup),\r\n [me._publicContact]: [me.publicContact[index]],\r\n [me._publicContactGroup]: me.fb.group(publicContactGroup),\r\n [me._publicCompony]: [me.publicCompony[index]],\r\n [me._publicComponyGroup]: me.fb.group(publicComponyGroup),\r\n [me._publicEmployee]: [me.publicEmployee[index]],\r\n [me._publicEmployeeGroup]: me.fb.group(publicEmployeeGroup),\r\n [me._other]: [me.other[index]],\r\n [me._otherGroup]: me.fb.group(otherGroup)\r\n });\r\n entityTypes = this.proclamedEntityTypeFrm.controls[this._proclamedEntities][\"controls\"];\r\n entityTypes.push(proclamedEntityType as any);\r\n\r\n\r\n this.proclamedEntityTypeFrm.updateValueAndValidity();\r\n }\r\n\r\n addAnotherproclamedEntityType(buildForm: boolean = true) {\r\n let me = this;\r\n\r\n me.numberOfProclamedEntityTypes++;\r\n\r\n me.publicContact.push(0);\r\n me.publicCompony.push(0);\r\n me.publicEmployee.push(0);\r\n me.other.push(0);\r\n\r\n me.publicContacts.push(new proclamedEntityTypePublicContactPublicCompony());\r\n me.publicComponies.push(\r\n new proclamedEntityTypePublicContactPublicCompony()\r\n );\r\n me.publicEmployees.push(new proclamedEntityTypePublicEmployee());\r\n me.others.push(new proclamedEntityTypeOther());\r\n\r\n if (buildForm) me.buildForm();\r\n }\r\n\r\n deleteProclamedEntityType(index: number) {\r\n let me = this;\r\n\r\n me.numberOfProclamedEntityTypes--;\r\n\r\n me.publicContact.splice(index, 1);\r\n me.publicCompony.splice(index, 1);\r\n me.publicEmployee.splice(index, 1);\r\n me.other.splice(index, 1);\r\n\r\n me.publicContacts.splice(index, 1);\r\n me.publicComponies.splice(index, 1);\r\n me.publicEmployees.splice(index, 1);\r\n me.others.splice(index, 1);\r\n\r\n me.proclamedEntityTypeFrm.controls[me._proclamedEntities][\r\n \"controls\"\r\n ].splice(index, 1);\r\n }\r\n\r\n resetPublicContactsValues(index: number): void {\r\n this.publicContacts[index].externalContact = null;\r\n this.publicContacts[index].area = null;\r\n this.publicContacts[index].city = null;\r\n }\r\n\r\n resetPublicCompanyValues(index: number): void {\r\n this.publicComponies[index].externalContact = null;\r\n this.publicComponies[index].area = null;\r\n this.publicComponies[index].city = null;\r\n }\r\n\r\n resetPublicEmployeeValues(index: number): void {\r\n this.publicEmployees[index].employeeName = null;\r\n this.publicEmployees[index].area = null;\r\n this.publicEmployees[index].city = null;\r\n }\r\n\r\n resetOtherValues(index: number): void {\r\n this.others[index].details = null;\r\n this.others[index].area = null;\r\n this.others[index].city = null;\r\n }\r\n\r\n radioButtonCurrentValue: number = 0;\r\n\r\n onRadioChange(index: number, value: number) {\r\n let me = this;\r\n this.radioButtonCurrentValue = value;\r\n me.resetPublicContactsValues(index);\r\n me.resetPublicCompanyValues(index);\r\n me.resetPublicEmployeeValues(index);\r\n me.resetOtherValues(index);\r\n me.proclamedEntityTypesRadio[index] = value;\r\n\r\n me.buildForm();\r\n me.formService.markFormAsTouched(me.proclamedEntityTypeFrm);\r\n }\r\n\r\n SetCityAndStateDefaultValuesForPublicContacts(event: any, index: number): void {\r\n\r\n if (event && event.ContactAddresses.length > 0) {\r\n\r\n let address = event.ContactAddresses[0];\r\n\r\n if (address.StateID && address.CityID) {\r\n this.publicContacts[index].area = address.StateID;\r\n setTimeout(() => { this.publicContacts[index].city = address.CityID; }, 500)\r\n }\r\n\r\n }\r\n }\r\n\r\n SetCityAndStateDefaultValuesForPublicComponies(event: any, index: number): void {\r\n\r\n if (event && event.ContactAddresses.length > 0) {\r\n\r\n let address = event.ContactAddresses[0];\r\n\r\n if (address.StateID && address.CityID) {\r\n this.publicComponies[index].area = address.StateID;\r\n setTimeout(() => { this.publicComponies[index].city = address.CityID; }, 500)\r\n }\r\n\r\n }\r\n }\r\n}\r\n\r\nenum proclamedEntityTypes {\r\n PublicContact,\r\n PublicCompony,\r\n PublicEmployee,\r\n Other\r\n}\r\n\r\nclass proclamedEntityTypePublicContactPublicCompony {\r\n constructor() {\r\n this.externalContact = \"\";\r\n this.area = \"\";\r\n this.city = \"\";\r\n }\r\n\r\n externalContact: any;\r\n area: any;\r\n city: any;\r\n // radioButtonCurrentValue: proclamedEntityTypes = 0;\r\n}\r\n\r\nclass proclamedEntityTypePublicEmployee {\r\n constructor() {\r\n this.employeeName = \"\";\r\n this.area = \"\";\r\n this.city = \"\";\r\n }\r\n\r\n employeeName: any;\r\n area: any;\r\n city: any;\r\n // radioButtonCurrentValue: proclamedEntityTypes = 0;\r\n}\r\n\r\nclass proclamedEntityTypeOther {\r\n constructor() {\r\n this.details = \"\";\r\n this.area = \"\";\r\n this.city = \"\";\r\n }\r\n\r\n details: any;\r\n area: any;\r\n city: any;\r\n // radioButtonCurrentValue: proclamedEntityTypes = 0\r\n}\r\n\r\nclass proclamedEntityType {\r\n type: proclamedEntityTypes;\r\n index: number;\r\n\r\n externalContact: any;\r\n employeeName: any;\r\n details: any;\r\n area: any;\r\n city: any;\r\n}","
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n {{getText(\"requiredField\",\"Javascript/Common\")}}\r\n
    \r\n
    ","import { Component } from \"@angular/core\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { MessagingService } from \"src/app/_common/services/messaging-service\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { IComboboxOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { generalSettingsSvc } from \"src/app/berry/correspondences/manage/generalSettings/general-settings-svc\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"proclamee-country\",\r\n templateUrl: \"./fb-proclamee-country.html\"\r\n})\r\n\r\nexport class fbProclameeCountry extends BaseCmp implements IFormBuilderComponent {\r\n\r\n ProclameeCountryId: string = \"\";\r\n ProclameeTypeIsIndividual: boolean = false;\r\n\r\n hostName = BERRY.hostName;\r\n\r\n ClientCountryId: number;\r\n\r\n constructor(public messagingSvc: MessagingService, public generalSettingsSvc: generalSettingsSvc) {\r\n super();\r\n\r\n this.messagingSvc.subscribe(\"ProclameeTypeIsIndividual\", flag => {\r\n this.ProclameeTypeIsIndividual = flag;\r\n });\r\n }\r\n\r\n ngSuperOnInit() {\r\n if (!this.ClientCountryId)\r\n this.getClientCountryId();\r\n }\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n isMultiValueCtrlMappedToDb: boolean;\r\n\r\n buildForm(): void { }\r\n\r\n getJsonValue(): string {\r\n return this.ProclameeCountryId;\r\n }\r\n\r\n setValue(json: string): void {\r\n this.ProclameeCountryId = json;\r\n this.messagingSvc.publish(\"RequestForProclameeIsIndividual\");\r\n this.countryChange(this.ProclameeCountryId);\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n if (this.ProclameeTypeIsIndividual && !this.ProclameeCountryId)\r\n return false;\r\n\r\n return true;\r\n }\r\n\r\n public countriesAutoComplete: IComboboxOptions = {\r\n serverDatasource: {\r\n enabled: true,\r\n searchField: \"keyword\",\r\n url:\r\n BERRY.hostName + \"api/contacts/lookups/autocompletecountries\"\r\n },\r\n dataTextField: \"Title\",\r\n dataValueField: \"Id\",\r\n allowFreeText: false,\r\n displayTemplate: \"#: data.Id # - #: data.Title # \",\r\n minLength: 0\r\n };\r\n\r\n\r\n getClientCountryId(e = null): void {\r\n let me = this;\r\n\r\n me.generalSettingsSvc.GetValue(\"GeneralConfiguration\", \"setting:ClientCountryId\").subscribe(\r\n settingValue => {\r\n\r\n me.ClientCountryId = +settingValue;\r\n\r\n if (e)\r\n me.countryChange(e);\r\n }\r\n );\r\n }\r\n\r\n countryChange(e): void {\r\n if (this.ClientCountryId) {\r\n if (e == this.ClientCountryId)\r\n this.messagingSvc.publish(\"ShowProclameeState\", true);\r\n else\r\n this.messagingSvc.publish(\"ShowProclameeState\", false);\r\n }\r\n else\r\n this.getClientCountryId(e);\r\n }\r\n}","
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n {{getText(\"requiredField\",\"Javascript/Common\")}}\r\n
    \r\n
    ","import { Component, ViewChild } from \"@angular/core\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { MessagingService } from \"src/app/_common/services/messaging-service\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { IComboboxOptions, kendoCombobox } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { LookupHelpers } from \"src/app/Lookups/LookupHelpers\";\r\nimport { generalSettingsSvc } from \"src/app/berry/correspondences/manage/generalSettings/general-settings-svc\";\r\nimport { ContactsSvc } from \"src/app/Manage/Contacts/contacts-svc\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"proclamee-state\",\r\n templateUrl: \"./fb-proclamee-state.html\"\r\n})\r\n\r\nexport class fbProclameeState extends BaseCmp implements IFormBuilderComponent {\r\n\r\n @ViewChild(\"StatesElement\") StatesElement: kendoCombobox;\r\n\r\n showProclameeState: boolean = false;\r\n\r\n ProclameeStateId: string = \"\";\r\n ProclameeStateName: string = \"\";\r\n\r\n ProclameeTypeIsIndividual: boolean = false;\r\n\r\n hostName = BERRY.hostName;\r\n\r\n ClientCountryId: number;\r\n\r\n constructor(public LookupHelper: LookupHelpers,\r\n public messagingSvc: MessagingService,\r\n public SearchSvc: ContactsSvc,\r\n public generalSettingsSvc: generalSettingsSvc\r\n ) {\r\n super();\r\n\r\n this.messagingSvc.subscribe('ShowProclameeState', flag => {\r\n this.showProclameeState = flag;\r\n });\r\n\r\n this.messagingSvc.subscribe(\"ProclameeTypeIsIndividual\", flag => {\r\n this.ProclameeTypeIsIndividual = flag;\r\n });\r\n }\r\n\r\n ngSuperOnInit() {\r\n let me = this;\r\n me.getStatesBasedOnGeneralSetting();\r\n }\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n getStatesBasedOnGeneralSetting(): void {\r\n let me = this;\r\n\r\n me.generalSettingsSvc.GetValue(\"GeneralConfiguration\", \"setting:ClientCountryId\").subscribe(\r\n settingValue => {\r\n me.ClientCountryId = +settingValue;\r\n me.getStates();\r\n }\r\n );\r\n }\r\n\r\n getStates(): void {\r\n let me = this;\r\n\r\n let stateId = this.ProclameeStateId;\r\n\r\n me.SearchSvc.getStates().subscribe(\r\n data => {\r\n me.LookupHelper._states = data;\r\n\r\n me.StatesElement.userOptions.datasource = me.LookupHelper.States.filter(\r\n a => !a.isDeleted && a.CountryId == me.ClientCountryId\r\n );\r\n\r\n this.StatesElement.updateDataSource();\r\n\r\n if (stateId) {\r\n let states = me.LookupHelper.States;\r\n for (let i = 0; i < states.length; i++) {\r\n if (states[i].StateId == stateId)\r\n this.ProclameeStateName = states[i].StateNameAr;\r\n }\r\n }\r\n }\r\n );\r\n }\r\n\r\n isMultiValueCtrlMappedToDb: boolean;\r\n\r\n buildForm(): void { }\r\n\r\n getJsonValue(): string {\r\n return this.ProclameeStateId;\r\n }\r\n\r\n setValue(json: string): void {\r\n this.ProclameeStateId = json;\r\n this.messagingSvc.publish(\"RequestForProclameeIsIndividual\");\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n if (this.ProclameeTypeIsIndividual && this.showProclameeState && !this.ProclameeStateId)\r\n return false;\r\n\r\n return true;\r\n }\r\n\r\n public stateAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.LookupHelper.defaultStatesAutocompleteOptions,\r\n {} as IComboboxOptions\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","import { Component } from \"@angular/core\";\r\nimport { BaseCmp } from \"../../../BaseComponent\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { IComboboxServerDatasourceOptions, IComboboxOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { IContactItem, ContactsSearchForEnum, IContactsCompsOptions } from \"src/app/Contacts/comps/contacts-dtos\";\r\nimport { ContactsHelpers } from \"src/app/Contacts/helpers\";\r\nimport { ContactsSvc } from \"src/app/Manage/Contacts/contacts-svc\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { MessagingService } from \"src/app/_common/services/messaging-service\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n\r\nexport class ProclameeType {\r\n public ProclameeTypeSourceType: number = 1;\r\n public OutsideOrganizationType: number = 1;\r\n public SupervisoryAuthorityType: number = 1;\r\n\r\n public ProclamatorIndividualId: number = null;\r\n public ProclamatorUserlId: string = null;\r\n public FromInsideCompanyPositionArId: number = null;\r\n public FromInsideCompanyPositionEnId: number = null;\r\n public FromOutsideCompanyPositionArId: number = null;\r\n public FromOutsideCompanyPositionEnId: number = null;\r\n}\r\n\r\n@Component({\r\n selector: 'proclamee-type',\r\n templateUrl: './fb-proclamee-type.html',\r\n})\r\nexport class fbproclameeTypeComponent extends BaseCmp implements IFormBuilderComponent {\r\n\r\n isMultiValueCtrlMappedToDb: boolean = true;\r\n\r\n OutsidePosition: any;\r\n InsidePosition: any;\r\n InsidePositionText: any = \"\";\r\n\r\n public proclameeType: ProclameeType = new ProclameeType();\r\n public autoCompleteOptions = {\r\n dataTextField: \"value\",\r\n dataValueField: \"dbid\",\r\n allowFreeText: false,\r\n displayTemplate: \"#: data.dbid # - #: data.value #\",\r\n minLength: 1\r\n };\r\n\r\n comboBoxServerSearchDatasourceDefaultOptions: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"get\",\r\n searchField: \"kw\",\r\n resultsField: \"\"\r\n };\r\n\r\n private tempOrganizationType: number;\r\n public checkProclemeeType(withReset: boolean = false) {\r\n var me = this;\r\n setTimeout(() => {\r\n var val = me.proclameeType.ProclameeTypeSourceType;\r\n this.messagingSvc.publish(\"fromUnknownProclamee\", val);\r\n if (val == 1 && me.tempOrganizationType != 5) {\r\n me.emptyPositionValues();\r\n }\r\n if (val != 2) {\r\n\r\n this.InsidePosition = '';\r\n this.OutsidePosition = '';\r\n this.InsidePositionText = '';\r\n }\r\n if (val != 1) {\r\n if (me.proclameeType.OutsideOrganizationType) {\r\n me.tempOrganizationType = me.proclameeType.OutsideOrganizationType;\r\n me.proclameeType.OutsideOrganizationType = null;\r\n }\r\n }\r\n else if (val == 1 && me.tempOrganizationType) {\r\n me.proclameeType.OutsideOrganizationType = me.tempOrganizationType;\r\n }\r\n\r\n if (val == 3) {\r\n $(\"#pnlProclemee\").hide();\r\n $(\".fb-fbproclamee\").hide();\r\n me.emptyPositionValues();\r\n } else {\r\n $(\"#pnlProclemee\").show();\r\n $(\".fb-fbproclamee\").show();\r\n }\r\n\r\n if (withReset && val == 2) {\r\n me.resetPositions();\r\n }\r\n }, 50);\r\n }\r\n\r\n public OrganizationPoistionsOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaults.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.comboBoxServerSearchDatasourceDefaultOptions,\r\n {\r\n url:\r\n BERRY.hostName +\r\n \"api/contacts/lookups/GetAllPositions\"\r\n }\r\n ),\r\n dataTextField: \"Name\",\r\n dataValueField: \"Id\",\r\n allowFreeText: false,\r\n displayTemplate: \"#: data.Id # - #: data.Name #\",\r\n minLength: 1\r\n }\r\n );\r\n\r\n organizer: IContactItem;\r\n individualOptions: IContactsCompsOptions = {\r\n searchFor: ContactsSearchForEnum.Individuals\r\n };\r\n organizersOptions: IContactsCompsOptions = {\r\n searchFor: ContactsSearchForEnum.Organizations\r\n };\r\n\r\n RoleIsDisabled: boolean = true;\r\n\r\n public ngSuperOnInit() {\r\n this.getOrganizationPoistions();\r\n }\r\n\r\n public ngSuperAfterViewInit() { }\r\n\r\n constructor(public defaults: ContactsHelpers,\r\n public service: ContactsSvc,\r\n public messagingSvc: MessagingService) {\r\n super();\r\n\r\n this.messagingSvc.subscribe(\"RequestForProclameeIsIndividual\", flag => {\r\n this.changeOutsiderProclameeType();\r\n });\r\n }\r\n\r\n public positions: any[] = [];\r\n public isSubscribed: boolean = true;\r\n\r\n public getOrganizationPoistions() {\r\n var me = this;\r\n me.service.getOrganizationPoistions(true).pipe(takeWhile(() => me.isSubscribed)).subscribe(data => {\r\n me.positions = data;\r\n me.resetPositions();\r\n });\r\n }\r\n\r\n public outSidePositionId: any;\r\n public onOutsidePositionChange(selectedItem: any) {\r\n if (selectedItem && selectedItem != \"\") {\r\n if (selectedItem.Type == 1) {\r\n this.proclameeType.FromOutsideCompanyPositionEnId = selectedItem.Id;\r\n this.proclameeType.FromOutsideCompanyPositionArId = null;\r\n this.proclameeType.FromInsideCompanyPositionArId = null;\r\n this.proclameeType.FromInsideCompanyPositionEnId = null;\r\n }\r\n else {\r\n this.proclameeType.FromOutsideCompanyPositionEnId = null;\r\n this.proclameeType.FromOutsideCompanyPositionArId = selectedItem.Id;\r\n this.proclameeType.FromInsideCompanyPositionArId = null;\r\n this.proclameeType.FromInsideCompanyPositionEnId = null;\r\n }\r\n }\r\n else {\r\n this.proclameeType.FromOutsideCompanyPositionEnId = null;\r\n this.proclameeType.FromOutsideCompanyPositionArId = null;\r\n }\r\n }\r\n\r\n public insidePositionId: any;\r\n public onInsidePositionChange(selectedItem: any) {\r\n if (selectedItem && selectedItem != \"\") {\r\n if (selectedItem.Type == 1) {\r\n this.proclameeType.FromInsideCompanyPositionEnId = selectedItem.Id;\r\n this.proclameeType.FromInsideCompanyPositionArId = null;\r\n this.proclameeType.FromOutsideCompanyPositionEnId = null;\r\n this.proclameeType.FromOutsideCompanyPositionArId = null;\r\n }\r\n else {\r\n this.proclameeType.FromInsideCompanyPositionEnId = null;\r\n this.proclameeType.FromInsideCompanyPositionArId = selectedItem.Id;\r\n this.proclameeType.FromOutsideCompanyPositionEnId = null;\r\n this.proclameeType.FromOutsideCompanyPositionArId = null;\r\n }\r\n }\r\n else {\r\n this.proclameeType.FromInsideCompanyPositionEnId = null;\r\n this.proclameeType.FromInsideCompanyPositionArId = null;\r\n }\r\n }\r\n\r\n public emptyPositionValues() {\r\n this.proclameeType.FromInsideCompanyPositionEnId = null;\r\n this.proclameeType.FromInsideCompanyPositionArId = null;\r\n }\r\n\r\n public resetPositions() {\r\n if (this.proclameeType) {\r\n\r\n if ((this.proclameeType.FromInsideCompanyPositionEnId || this.proclameeType.FromInsideCompanyPositionArId) && this.proclameeType.ProclameeTypeSourceType == 2)\r\n this.setInsidePositionId();\r\n else\r\n if (this.proclameeType.ProclameeTypeSourceType == 2)\r\n this.onInsidePositionChange(this.insidePositionId);\r\n\r\n if ((this.proclameeType.FromOutsideCompanyPositionEnId || this.proclameeType.FromOutsideCompanyPositionArId) && this.proclameeType.ProclameeTypeSourceType == 1)\r\n this.setOutsidePositionId();\r\n else\r\n if (this.proclameeType.ProclameeTypeSourceType == 1)\r\n this.onOutsidePositionChange(this.outSidePositionId);\r\n }\r\n }\r\n\r\n setInsidePositionId() {\r\n\r\n this.outSidePositionId = null;\r\n\r\n if (this.proclameeType.FromInsideCompanyPositionArId) {\r\n let positionId = this.proclameeType.FromInsideCompanyPositionArId;\r\n this.insidePositionId = positionId;\r\n this.InsidePosition = this.positions.find(position => position.Id == positionId && position.Type == 2);\r\n }\r\n else\r\n if (this.proclameeType.FromInsideCompanyPositionEnId) {\r\n let positionId = this.proclameeType.FromInsideCompanyPositionEnId;\r\n this.insidePositionId = positionId;\r\n this.InsidePosition = this.positions.find(position => position.Id == positionId && position.Type == 1);\r\n }\r\n\r\n }\r\n\r\n setOutsidePositionId() {\r\n\r\n this.insidePositionId = null;\r\n\r\n if (this.proclameeType.FromOutsideCompanyPositionArId) {\r\n let positionId = this.proclameeType.FromOutsideCompanyPositionArId;\r\n this.outSidePositionId = positionId;\r\n this.OutsidePosition = this.positions.find(position => position.Id == positionId && position.Type == 2);\r\n }\r\n else\r\n if (this.proclameeType.FromOutsideCompanyPositionEnId) {\r\n let positionId = this.proclameeType.FromOutsideCompanyPositionEnId;\r\n this.outSidePositionId = positionId;\r\n this.OutsidePosition = this.positions.find(position => position.Id == positionId && position.Type == 1);\r\n }\r\n\r\n }\r\n\r\n buildForm(): void { }\r\n\r\n getJsonValue(): string {\r\n var me = this;\r\n const result = JSON.stringify(me.proclameeType);\r\n return result;\r\n }\r\n\r\n setValue(json: string): void {\r\n const me = this;\r\n\r\n me.proclameeType = JSON.parse(json);\r\n me.checkProclemeeType();\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n return true;\r\n }\r\n\r\n changeOutsiderProclameeType(): void {\r\n let me = this;\r\n\r\n if (this.proclameeType.OutsideOrganizationType == OutsiderProclameeTypeEnum.Individual)\r\n me.messagingSvc.publish(\"ProclameeTypeIsIndividual\", true);\r\n else\r\n me.messagingSvc.publish(\"ProclameeTypeIsIndividual\", false);\r\n }\r\n}\r\n\r\nenum OutsiderProclameeTypeEnum {\r\n HighLevel = 1,\r\n MoralePerson = 2,\r\n Individual = 3,\r\n SupervisoryAuthority = 4,\r\n InsideTheEntity = 5\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 {{getText(\"requiredField\",\"Javascript/Common\")}}\r\n
    \r\n
    \r\n\r\n
    \r\n","\r\nimport {takeWhile } from 'rxjs/operators';\r\nimport { Component, ViewChild, ViewContainerRef, ComponentFactoryResolver } from \"@angular/core\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { MessagingService } from \"src/app/_common/services/messaging-service\";\r\nimport { ContactItemTypeEnum, IContactsCompsOptions, ContactsSearchForEnum, IContactProclameeItem } from \"src/app/Contacts/comps/contacts-dtos\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { IndividualSVC } from \"src/app/Contacts/individuals/individuals-svc\";\r\nimport { Router, ActivatedRoute } from \"@angular/router\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { IndividualQuickEntryCmp } from \"../../../../../Contacts/individuals/individual-quick-entry-cmp\";\r\n\r\n@Component({\r\n selector: \"proclaimee\",\r\n templateUrl: \"./fb-proclamee.html\"\r\n})\r\nexport class fbproclameeComponent extends BaseCmp\r\n implements IFormBuilderComponent {\r\n\r\n\r\n messageSubscribeIds: any[] = [];\r\n\r\n ProclameeTypeIsIndividual: boolean = false;\r\n\r\n private _isUnknownProclamee: boolean = false;\r\n public get isUnknownProclamee(): boolean {\r\n this.msgs.subscribe(\r\n \"fromUnknownProclamee\",\r\n x => {\r\n if (x == 3) {\r\n this._isUnknownProclamee = true;\r\n this.individualId = null;\r\n }\r\n else\r\n this._isUnknownProclamee = false;\r\n }\r\n )\r\n return this._isUnknownProclamee;\r\n }\r\n\r\n private isSubscribed: boolean = true;\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n isMultiValueCtrlMappedToDb: boolean = false;\r\n\r\n constructor(public msgs: MessagingService,\r\n public service: IndividualSVC,\r\n public router: Router,\r\n public aRoute: ActivatedRoute,\r\n public toastr: ToastrService,\r\n private resolver: ComponentFactoryResolver\r\n ) {\r\n super();\r\n\r\n this.msgs.subscribe(\"ProclameeTypeIsIndividual\", flag => {\r\n this.ProclameeTypeIsIndividual = flag;\r\n });\r\n }\r\n\r\n onIndividualCreate(e) {\r\n this.individualId = e.Id;\r\n this.organizer = {\r\n Id: e.Id,\r\n DisplayName: e.DisplayName,\r\n DisplayNameAr: e.DisplayName,\r\n DisplayNameEn: e.DisplayName,\r\n DefaultEmail: e.DisplayName,\r\n HasPhoto: false,\r\n NationalIdentitiy: e.NationalIdentitiy,\r\n Type: ContactItemTypeEnum.Individual,\r\n CreateExternalContact: false\r\n };\r\n }\r\n\r\n organizer: any = {};\r\n organizersOptions: IContactsCompsOptions = {\r\n searchFor: ContactsSearchForEnum.Individuals,\r\n individualClassification: 1\r\n };\r\n individualId: string = \"\";\r\n UpdateOrganizationRoles(e) {\r\n if (e != null) {\r\n this.individualId = e.Id;\r\n if (e.Id != null) {\r\n if (e.NationalIdentitiy == null) {\r\n this.toastr.warning(this.getText('attention_proclamee_no_identity', 'Contacts_js'));\r\n }\r\n }\r\n }\r\n else this.individualId = null;\r\n }\r\n\r\n ngSuperOnInit() {\r\n\r\n this.msgs.subscribe(\"IndividualCreate\", data => {\r\n if (data != null)\r\n this.onIndividualCreate(data);\r\n });\r\n\r\n }\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n buildForm(): void { }\r\n\r\n private loadIndividualInformations() {\r\n if (this.individualId && this.individualId != \"\") {\r\n var me = this;\r\n me.service\r\n .getIndividualHeaderInfo((me.individualId)).pipe(\r\n takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n res => {\r\n me.organizer = {\r\n Id: res.Id,\r\n DisplayName: res.DisplayNameAr,\r\n DisplayNameAr: res.DisplayNameAr,\r\n DisplayNameEn: res.DisplayNameEn,\r\n DefaultEmail: res.PrimaryEmail,\r\n NationalIdentitiy: res.NationalIdentitiy,\r\n HasPhoto: res.HasPhoto,\r\n Type: ContactItemTypeEnum.Individual,\r\n CreateExternalContact: false\r\n };\r\n },\r\n error => (this.errorMessage = error)\r\n );\r\n }\r\n }\r\n\r\n public getJsonValue(): string {\r\n return this.individualId;\r\n }\r\n\r\n setValue(json: string): void {\r\n this.individualId = json;\r\n this.loadIndividualInformations();\r\n this.msgs.publish(\"RequestForProclameeIsIndividual\");\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n if (this.ProclameeTypeIsIndividual && !this.individualId)\r\n return false;\r\n\r\n return true;\r\n }\r\n\r\n componentRef;\r\n @ViewChild('IndividualQuickEntryCmp', { read: ViewContainerRef,static:true })\r\n individualQuickEntryCmp: ViewContainerRef;\r\n\r\n openAddContactsModal() {\r\n const me = this;\r\n me.individualQuickEntryCmp.clear();\r\n const individualQuickEntryCmpFactory = me.resolver.resolveComponentFactory(IndividualQuickEntryCmp);\r\n const componentRef = me.individualQuickEntryCmp.createComponent(individualQuickEntryCmpFactory);\r\n componentRef.instance.isProclamee = true;\r\n componentRef.instance.isHistoryBack = false;\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
    ","import { Component } from \"@angular/core\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { MessagingService } from \"src/app/_common/services/messaging-service\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { IComboboxOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { IGlobalSettings, LookupTypeEnum } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { LookupSvc } from \"../../../../services/administration/lookup/lookup-service\";\r\n \r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"fb-send-proclamation-document-center\",\r\n templateUrl: \"./fb-send-proclamation-document-center.html\",\r\n providers: [LookupSvc]\r\n})\r\n\r\nexport class fbSendProclamationDocumentCenter extends BaseCmp implements IFormBuilderComponent {\r\n\r\n hostName = BERRY.hostName;\r\n ForwardToDocumentCenter: boolean = false;\r\n DocumentCenterEntityId: string = \"\";\r\n ShowForwardToDocumentCenter: boolean = true;\r\n selectedSourceTypeId;\r\n sourceTypes: any[] = [];\r\n\r\n constructor(public messagingSvc: MessagingService,\r\n public lookupSvc: LookupSvc) {\r\n super();\r\n this.messagingSvc.subscribe(\"ShowDocumentCenterFlag\", sourceTypeId => {\r\n this.selectedSourceTypeId = sourceTypeId;\r\n this.getLookups();\r\n });\r\n\r\n }\r\n\r\n ngSuperOnInit() {\r\n let me = this;\r\n me.getLookups();\r\n }\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n isMultiValueCtrlMappedToDb: boolean;\r\n\r\n buildForm(): void { }\r\n\r\n getJsonValue(): string {\r\n return this.DocumentCenterEntityId;\r\n }\r\n\r\n setValue(json: string): void {\r\n this.DocumentCenterEntityId = json;\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n return true;\r\n }\r\n getLookups() {\r\n let me = this;\r\n me.lookupSvc.GetLookups(LookupTypeEnum.ProclamationSourceType).subscribe(data => {\r\n me.sourceTypes = data;\r\n me.isSourceTypeValid();\r\n });\r\n }\r\n isSourceTypeValid() {\r\n let me = this;\r\n for (let type of this.sourceTypes) {\r\n if (type.Id == me.selectedSourceTypeId) {\r\n if (type.TargetEnumTypeId == 1 || type.TargetEnumTypeId == 4) {\r\n me.ShowForwardToDocumentCenter = false;\r\n me.DocumentCenterEntityId = \"\";\r\n break;\r\n }\r\n else {\r\n me.ShowForwardToDocumentCenter = true;\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n public documentCentersAutocomplete: IComboboxOptions = {\r\n serverDatasource: {\r\n enabled: true,\r\n method: \"get\",\r\n searchField: \"text\",\r\n resultsField: \"DocumentCenters\",\r\n url:\r\n BERRY.hostName + \"api/DepartmentApi/GetDocumentCenters\"\r\n },\r\n dataTextField: \"EntityNameAR\",\r\n dataValueField: \"EntityID\",\r\n allowFreeText: false,\r\n displayTemplate: \"#: data.EntityID # - #: data.EntityNameAR # \",\r\n minLength: 0\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 {{getText(\"AddNewUnattached\",\"CorrespondenceNew\")}}\r\n \r\n 0\"\r\n href=\"javascript:void(0)\"\r\n class=\"ltr_padding_left_10\"\r\n (click)=\"AddNewUnattachedRow()\" \r\n style=\"padding-right: 10px;\"\r\n data-automation-id=\"add-extra-enclosure\">\r\n \r\n {{getText(\"AddExtraEnclosure\",\"Common\")}}\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n {{getText('MaxLengthValidation', 'CSHTML/Areas/Correspondences/NewApp/NewIncoming')}}\r\n \r\n
    \r\n {{getText(\"requiredField\",\"Javascript/Common\")}}\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 {{getText('MaxLengthValidation', 'CSHTML/Areas/Correspondences/NewApp/NewIncoming')}}\r\n \r\n
    \r\n {{getText(\"requiredField\",\"Javascript/Common\")}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n","import { Component, Input } from \"@angular/core\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { FormBuilder, FormGroup } from \"@angular/forms\";\r\nimport { AdditionaUnattached, BasicUnattached } from \"../../../../../berry/correspondences/_models/CorrespondenceDynamicForms/CorrespondenceDynamicFormsDto\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { ContactsHelpers } from \"src/app/Contacts/helpers\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { IComboboxServerDatasourceOptions, IComboboxOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { IFormBuilderComponent } from \"../../models/form-builder-component\";\r\nimport { MessagingService } from \"src/app/_common/services/messaging-service\";\r\nimport { generalSettingsSvc } from \"src/app/berry/correspondences/manage/generalSettings/general-settings-svc\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"tangible-items\",\r\n templateUrl: \"./fb-tangible-items.html\"\r\n})\r\nexport class tangibleItemsComponent extends BaseCmp implements IFormBuilderComponent {\r\n\r\n isMultiValueCtrlMappedToDb: boolean = false;\r\n isSubscribed: boolean = true;\r\n ShowDescriptionBeforeNumberForPhysicalAttachmentsfield: boolean = false;\r\n isMaxLength: boolean = false;\r\n clientName: string = BERRY.clientName.toLowerCase();\r\n hideUnattachedNumberFromBasicTangibleItems: boolean = false;\r\n AttachmentsNumber: any;\r\n AttachmentsDesc: any;\r\n _enableAdvancedTangibleItems: boolean = false;\r\n \r\n get EnableAdvancedTangibleItems(): boolean {\r\n return this._enableAdvancedTangibleItems;\r\n }\r\n\r\n set EnableAdvancedTangibleItems(value: boolean) {\r\n this._enableAdvancedTangibleItems = value;\r\n this.isMultiValueCtrlMappedToDb = !value;\r\n }\r\n\r\n public tangibleItemsFrm: FormGroup;\r\n\r\n _regularFormsUsage: boolean = false;\r\n _isCustomDesign: boolean = false;\r\n _isCustomInternalDesign: boolean = false;\r\n _enableAttachmentsNumber: boolean = true;\r\n _isDetailsHeaderEdit: boolean = false;\r\n\r\n public static basic: boolean = false;\r\n\r\n @Input()\r\n set RegularFormsUsage(flag: boolean) {\r\n this._regularFormsUsage = flag;\r\n }\r\n\r\n get RegularFormsUsage() {\r\n return this._regularFormsUsage;\r\n }\r\n\r\n @Input()\r\n set isCustomDesign(flag: boolean) {\r\n this._isCustomDesign = flag;\r\n }\r\n\r\n get isCustomDesign() {\r\n return this._isCustomDesign;\r\n }\r\n @Input()\r\n set isCustomInternalDesign(flag: boolean) {\r\n this._isCustomInternalDesign = flag;\r\n }\r\n\r\n get isCustomInternalDesign() {\r\n return this._isCustomInternalDesign;\r\n }\r\n\r\n @Input()\r\n set EnableAttachmentsNumber(flag: boolean) {\r\n this._enableAttachmentsNumber = flag;\r\n }\r\n\r\n get EnableAttachmentsNumber() {\r\n return this._enableAttachmentsNumber;\r\n }\r\n\r\n @Input()\r\n set isDetailsHeaderEdit(flag: boolean) {\r\n this._isDetailsHeaderEdit = flag;\r\n }\r\n @Input(\"isAttachmentNumberRequired\") isAttachmentNumberRequired: boolean = false;\r\n get isDetailsHeaderEdit() {\r\n return this._isDetailsHeaderEdit;\r\n }\r\n\r\n get isAttachmentsNumberRequiredField() {\r\n return BERRY.appSettings.keys.isAttachmentsNumberRequiredField;\r\n }\r\n\r\n notValidNumber: boolean = false;\r\n\r\n constructor(\r\n public defaults: ContactsHelpers,\r\n public toastr: ToastrService,\r\n public fb: FormBuilder,\r\n public messagingSvc: MessagingService,\r\n public generalSettingsSvc: generalSettingsSvc\r\n ) {\r\n super();\r\n this.buildForm();\r\n\r\n this.messagingSvc.subscribe(\r\n \"AddNewTangibleItem\",\r\n flag => {\r\n this.AddNewUnattachedRow();\r\n }\r\n )\r\n }\r\n\r\n ngSuperOnInit() { \r\n this.getDescriptionBeforeNumberForPhysicalAttachmentsfieldSetting();\r\n }\r\n\r\n ngSuperAfterViewInit() {\r\n this.getAdvancedTangibleItemsSetting();\r\n this.getIsHideUnattachedNumberFromBasicTangibleItems();\r\n }\r\n\r\n basicUnattached: BasicUnattached = new BasicUnattached();\r\n UnattachedArray: AdditionaUnattached[] = [];\r\n public UnattachedRowNumber: number = 0;\r\n public AdditionalAttachmentsNumber = null;\r\n public AdditionalAttachmentsDesc = null;\r\n public UnattachedCount: number = 0;\r\n\r\n ngAfterContentChecked() {\r\n\r\n\r\n this.messagingSvc.subscribe(\r\n \"correspondenceData\",\r\n obj => {\r\n this.UnattachedArray = obj.AdditionalUnattached;\r\n\r\n }\r\n )\r\n }\r\n\r\n getDescriptionBeforeNumberForPhysicalAttachmentsfieldSetting(){\r\n this.generalSettingsSvc.GetValue(\"PhysicalAttachments\", \"ShowDescriptionBeforeNumberForPhysicalAttachmentsfield\")\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(response => {\r\n this.ShowDescriptionBeforeNumberForPhysicalAttachmentsfield= response===\"true\" ? true : false;\r\n });\r\n }\r\n\r\n\r\n comboBoxServerSearchDatasourceDefaultOptions: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"get\",\r\n searchField: \"kw\",\r\n resultsField: \"\"\r\n };\r\n\r\n public UnattachedTypesCombo: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaults.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.comboBoxServerSearchDatasourceDefaultOptions,\r\n {\r\n url: BERRY.hostName + \"api/CorrespondenceUnattachedApi/GetComboBoxes\"\r\n }\r\n ),\r\n dataTextField: \"Text\",\r\n dataValueField: \"Id\",\r\n allowFreeText: false,\r\n displaytemplate:\r\n \"#: data.Id # - #: data.Text # \",\r\n autoBind: false,\r\n minLength: 1\r\n }\r\n );\r\n\r\n getIsHideUnattachedNumberFromBasicTangibleItems(): void {\r\n this.generalSettingsSvc.GetValue(\"GeneralConfiguration\", \"setting:HideUnattachedNumberFromBasicTangibleItems\").subscribe(\r\n value => {\r\n this.hideUnattachedNumberFromBasicTangibleItems = value == \"true\";\r\n this.EnableAttachmentsNumber = !this.hideUnattachedNumberFromBasicTangibleItems;\r\n }\r\n );\r\n }\r\n\r\n getAdvancedTangibleItemsSetting(): void {\r\n this.generalSettingsSvc.GetValue(\"CorrespondencesSetting\", \"EnableAdvancedTangibleItems\").subscribe(\r\n settingValue => {\r\n this.EnableAdvancedTangibleItems = settingValue == \"true\";\r\n this.messagingSvc.publish(\"AdvancedTangibleItemsSetting\", this.EnableAdvancedTangibleItems);\r\n }\r\n );\r\n }\r\n\r\n public getRowIds() {\r\n let me = this;\r\n return me.UnattachedArray.map(c => c.RowId);\r\n }\r\n\r\n public getMaxRowIds() {\r\n let me = this;\r\n if (me.UnattachedArray.length > 0) {\r\n return Math.max(...me.getRowIds());\r\n } else {\r\n return 0;\r\n }\r\n }\r\n\r\n public AddNewUnattachedRow() {\r\n let me = this;\r\n\r\n let row = new AdditionaUnattached();\r\n row.RowId = this.getMaxRowIds() + 1;\r\n row.UnattachedName = \"\";\r\n row.Description = \"\";\r\n row.Count = 0;\r\n\r\n me.UnattachedArray = [...me.UnattachedArray, row];\r\n\r\n me.messagingSvc.publish(\"TangibleItems\", me.UnattachedArray);\r\n }\r\n\r\n onAddAdditionalAttachmentsDesc(i, value) {\r\n let me = this;\r\n if (value) me.UnattachedArray[i].Description = value;\r\n else me.UnattachedArray[i].Description = null;\r\n }\r\n\r\n public CheckIfTangableDuplicated(Id) {\r\n let me = this;\r\n var checkme = me.UnattachedArray.filter(x => x.UnattachedTypeId == Id);\r\n if (checkme) {\r\n me.toastr.warning(BERRY.loc.correspondence.DuplicatedAdditionalInternal);\r\n }\r\n }\r\n\r\n public DeleteCurrentUnattachedRow(rowId) {\r\n let me = this;\r\n\r\n me.UnattachedArray = me.UnattachedArray.filter(x => x.RowId != rowId);\r\n\r\n me.messagingSvc.publish(\"TangibleItems\", me.UnattachedArray);\r\n me.messagingSvc.publish(\"RemoveTangibleItemFromAllExternalRecipients\", rowId);\r\n }\r\n\r\n buildForm(): void {\r\n let me = this;\r\n me.tangibleItemsFrm = me.fb.group({});\r\n }\r\n\r\n getJsonValue(): string {\r\n const me = this;\r\n\r\n me.UnattachedArray = me.UnattachedArray.filter(e => e.UnattachedTypeId != null)\r\n\r\n if (me.EnableAdvancedTangibleItems)\r\n return JSON.stringify(me.UnattachedArray);\r\n else {\r\n me.basicUnattached = new BasicUnattached();\r\n\r\n me.basicUnattached.NumberOfUnattached = me.AttachmentsNumber;\r\n me.basicUnattached.Unattached = me.AttachmentsDesc;\r\n\r\n return JSON.stringify(me.basicUnattached);\r\n }\r\n }\r\n\r\n setValue(value: string): void {\r\n const me = this;\r\n\r\n this.generalSettingsSvc.GetValue(\"CorrespondencesSetting\", \"EnableAdvancedTangibleItems\").subscribe(\r\n settingValue => {\r\n this.EnableAdvancedTangibleItems = settingValue == \"true\";\r\n\r\n if (me.EnableAdvancedTangibleItems) {\r\n me.UnattachedArray = JSON.parse(value);\r\n me.messagingSvc.publish(\"TangibleItems\", me.UnattachedArray);\r\n }\r\n else {\r\n me.basicUnattached = JSON.parse(value)[0];\r\n\r\n me.AttachmentsNumber = me.basicUnattached.NumberOfUnattached;\r\n me.AttachmentsDesc = me.basicUnattached.Unattached;\r\n }\r\n }\r\n );\r\n\r\n }\r\n\r\n getFieldsElasticSearchProperties(): string {\r\n return null;\r\n }\r\n\r\n validate(): boolean {\r\n const me = this;\r\n if (me.UnattachedArray) {\r\n if (me.UnattachedArray.length == 0\r\n || (me.UnattachedArray.filter(e => e.UnattachedTypeId == null).length == me.UnattachedArray.length\r\n || me.UnattachedArray.filter(e => e.Count == null).length == me.UnattachedArray.length)) {\r\n return false;\r\n\r\n }\r\n else\r\n return true;\r\n }\r\n }\r\n\r\n public ValidateIsIntNumber(e) {\r\n this.isMaxLength = false;\r\n const me = this;\r\n \r\n if (e.target.value) {\r\n if (e.target.value.length > 3) {\r\n me.isMaxLength = true;\r\n e.target.value = e.target.value.slice(0, 4);\r\n }\r\n else\r\n me.isMaxLength = false;\r\n me.AttachmentsNumber = e.target.value;\r\n }\r\n const inputElement = (e.target as HTMLInputElement);\r\n let numericValue = parseInt(inputElement.value, 10);\r\n if (!isNaN(numericValue)) {\r\n e.target.value = numericValue.toString();\r\n }\r\n this.UnattachedArray.forEach(e => {\r\n if (e.Count == null) {\r\n e.Count = 0;\r\n }\r\n });\r\n }\r\n preventNegativeNumber(e) {\r\n if (!((e.keyCode > 95 && e.keyCode < 106)\r\n || (e.keyCode > 47 && e.keyCode < 58)\r\n || e.keyCode == 8)) {\r\n return false;\r\n }\r\n\r\n }\r\n\r\n public ValidAttachmentsNumber(): boolean {\r\n\r\n if (this.isAttachmentsNumberRequiredField && !this.EnableAdvancedTangibleItems && !this.AttachmentsNumber) {\r\n if (this.AttachmentsNumber < 0 || this.AttachmentsNumber == null || this.AttachmentsNumber == undefined) {\r\n this.notValidNumber = true;\r\n return false;\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n\r\n public ValidateUnattachedArray() {\r\n const me = this;\r\n if (me.isAttachmentNumberRequired\r\n && me.EnableAdvancedTangibleItems\r\n && me.UnattachedArray\r\n && (me.UnattachedArray.length == 0\r\n || (me.UnattachedArray.filter(e => e.UnattachedTypeId == null).length == me.UnattachedArray.length\r\n || me.UnattachedArray.filter(e => e.Count == null).length == me.UnattachedArray.length)\r\n )\r\n )\r\n return true;\r\n }\r\n\r\n}\r\n ","export enum ElasticSearchPropertyType {\r\n None = 0,\r\n String_text_type = 1,\r\n String_keyword_type = 2,\r\n\r\n Integer_type = 3,\r\n Short_type = 4,\r\n Long_type = 5,\r\n Double_type = 6,\r\n Float_type = 7,\r\n\r\n Byte_type = 8,\r\n Boolean_type = 9,\r\n Binary_type = 10,\r\n\r\n Date_type = 11,\r\n\r\n Integer_range_type = 12,\r\n Float_range_type = 13,\r\n Long_range_type = 14,\r\n Double_range_type = 15,\r\n Date_range_type = 16,\r\n\r\n Nested_type = 17\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { IGlobalSettings, LookupTypeEnum } from \"../../models/IGlobalSettings\";\r\nimport { BaseService } from \"../../services/baseService\";\r\nimport { HttpInterceptor } from \"../../services/http-interceptor\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class FormBuilderApiSvc extends BaseService {\r\n baseURL = BERRY.hostName;\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n public GetLookups(lookupType: LookupTypeEnum): Observable {\r\n this.IsBusy = true;\r\n return super.get(\r\n this.baseURL + \"api/LookupAPI/LookupAPI-GetLookups?lookupType=\" + lookupType\r\n );\r\n }\r\n\r\n public getDocumentsConfidentialities(): Observable {\r\n return super.get(\r\n this.baseURL + \"api/CorrespondenceApi/getlockupConfidentialities\"\r\n );\r\n }\r\n}\r\n","import { FormGroup } from \"@angular/forms\";\r\nimport { Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class FormService {\r\n //mark each field of the formGroup, as touched\r\n public markFormGroupAsTouched(formGroup: FormGroup) {\r\n (Object).values(formGroup.controls).forEach(control => {\r\n control.markAsTouched();\r\n\r\n if (control.controls) {\r\n this.markFormGroupAsTouched(control);\r\n }\r\n });\r\n }\r\n\r\n public markFormAsTouched(formControl: any) {\r\n formControl.markAsTouched();\r\n\r\n if (formControl.controls) {\r\n (Object).values(formControl.controls).forEach(control => {\r\n control.markAsTouched();\r\n\r\n if (control.controls) this.markFormAsTouched(control);\r\n });\r\n }\r\n }\r\n\r\n public setValue(formGroup: any, value: string): void {\r\n const json = JSON.parse(value);\r\n\r\n Object.keys(json).forEach(key => {\r\n let control = formGroup.controls[key];\r\n\r\n if (!control.controls) control.updateValue(json[key]);\r\n else {\r\n let childJsonValue = JSON.stringify(json[key]);\r\n this.setValue(control, childJsonValue);\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 {{item[tRole]}}\r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n\r\n
    \r\n {{item[tUserEntityName]}}\r\n \r\n {{getText(\"BelongsTo\", \"Resources\")}} \r\n \r\n {{item[tImmediateStandAlonEntityName]}}\r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n \r\n {{item[tNumber]}}\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 {{item[tNumber]}}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{item[tRole]}}\r\n \r\n
    \r\n
    \r\n
    \r\n {{item[tUserEntityName]}} \r\n \r\n {{getText(\"BelongsTo\", \"Resources\")}}\r\n {{item[tImmediateStandAlonEntityName]}}\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 ","import {\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n Output,\r\n ViewChild,\r\n forwardRef,\r\n} from \"@angular/core\";\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from \"@angular/forms\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { BaseCmp } from \"../BaseComponent\";\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\nimport {\r\n DialogManager,\r\n} from \"../../services/dialog-manager\";\r\nimport { kendoAutoComplete } from \"../../directives/KendoUI-wrappers/kendoAutoComplete\";\r\nimport { IComboboxOptions, IComboboxServerDatasourceOptions, kendoCombobox } from \"../../directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { ContactsHelpers } from \"src/app/Contacts/helpers\";\r\nimport { ForwardListService } from \"./services/forward-list.service\";\r\nimport { CommitteesSvc } from \"src/app/committees/services/committees-svc\";\r\nimport { Guid } from \"guid-typescript\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"forward-list\",\r\n templateUrl: \"./forwardList-ng.html\",\r\n styleUrls: [\"./forwardList.scss\"],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => ForwardList),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class ForwardList\r\n extends BaseCmp\r\n implements ControlValueAccessor {\r\n\r\n @ViewChild('autoCompleteElm') autoCompleteElm: ElementRef;\r\n @ViewChild('comboboxElm') comboboxElm: kendoCombobox;\r\n\r\n @ViewChild(\"autocompletekendo\") autocompletekendo: kendoAutoComplete;\r\n\r\n @Input(\"isCombobox\") isCombobox: boolean = false;\r\n\r\n @Input(\"showEntityParentPreferedInCombobox\") showEntityParentPreferedInCombobox: boolean = false;\r\n\r\n @Input(\"comboboxItem\") comboboxItem: any;\r\n @Input(\"noDropdownArrow\") noDropdownArrow: boolean = false;\r\n\r\n @Input(\"dataAutomationId\") dataAutomationId: string = null;\r\n @Input(\"placeholder\") placeholder: string = null;\r\n @Input(\"disabledInput\") disabledInput: boolean; //boe edit\r\n\r\n @Input(\"additionalParams\") additionalParams: any;\r\n @Input(\"extraparamet\") Extraparamet: any;\r\n @Input(\"isCustomDelete\") isCustomDelete: boolean = false;\r\n\r\n @Input(\"kUrl\") kUrl: any;\r\n @Input(\"clearValue\") clearValue: number;\r\n @Input(\"enable\") enable: boolean;\r\n @Input(\"kInitial\") kInitial: any;\r\n @Input(\"url\") url: string = '';\r\n @Input(\"httpMethod\") httpMethod: string = 'POST';\r\n @Input(\"multiSelect\") multiSelect: boolean = true;\r\n @Input(\"isMini\") isMini: boolean = false;\r\n @Input(\"isEntity\") isEntity: boolean = false;\r\n @Input(\"tName\") tName: string = \"Name\";\r\n @Input(\"tImageSrc\") tImageSrc: string = \"UserOrManagerId\";\r\n @Input(\"tRole\") tRole: string = \"Role\";\r\n @Input(\"tValue\") tValue: string = \"value\";\r\n @Input(\"tNumber\") tNumber: string = \"number\";\r\n @Input(\"tId\") tId: string = \"Id\";\r\n @Input(\"tImmediateStandAlonEntityName\") tImmediateStandAlonEntityName: string = \"ImmediateStandAlonEntityName\";\r\n\r\n //related to the user entity only and in the entity case this input should be empty string\r\n @Input(\"tUserEntityName\") tUserEntityName: string = \"UserEntityName\";\r\n\r\n //By Jamal\r\n @Input(\"isAlreadyItemPushed\") isAlreadyItemPushed: boolean = false;\r\n\r\n @Input(\"deleteButtonPermissionWitoutPrm\") deleteButtonPermissionWitoutPrm: any;\r\n\r\n @Input(\"deleteButtonPermissionWithOutPrm\") deleteButtonPermissionWithOutPrm: boolean = false;\r\n\r\n @Input(\"dependsOn\") dependsOn: any;\r\n @Input(\"comboboxValue\") comboboxValue: any;\r\n @Input(\"comboboxBowsValue\") comboboxBowsValue: any;\r\n @Input(\"comboboxText\") comboboxText: any;\r\n @Input(\"resultsField\") resultsField: string = \"d\"; // for combobox\r\n @Input(\"searchField\") searchField: string = \"kw\"; // for combobox\r\n @Input(\"serviceDataSchema\") serviceDataSchema: string = \"d\"; // for autocomplete\r\n @Input('enableScroll') enableScroll:boolean = true;\r\n @Input(\"tNameTooltip\") tNameTooltip: string = \"NameTooltip\";\r\n\r\n @Output() comboboxBlur = new EventEmitter();\r\n\r\n\r\n onComboboxBlur(e) {\r\n this.comboboxBlur.emit(e);\r\n }\r\n\r\n deleteButtonPermission(ndx, id) {\r\n\r\n if (this.deleteButtonPermissionWithOutPrm) {\r\n return this.deleteButtonPermissionWithOutPrm;\r\n }\r\n return false\r\n } \r\n\r\n selectButtonPermission() {\r\n return false\r\n }\r\n\r\n @Output() kItem = new EventEmitter();\r\n @Output() kText = new EventEmitter();\r\n @Output() itemC = new EventEmitter();\r\n @Output() blur = new EventEmitter();\r\n @Output() deleteItem = new EventEmitter();\r\n @Output() selectItem = new EventEmitter();\r\n\r\n componentIsloaded: boolean = false;\r\n\r\n Items: any[] = [];\r\n\r\n onBlure() {\r\n this.blur.emit()\r\n }\r\n\r\n kItemEvent(e) {\r\n if (!!e) {\r\n if (!this.isAlreadyItemPushed) {\r\n this.Items.push(e)\r\n }\r\n this.kItem.emit(e);\r\n this.onChange(this.Items)\r\n this.autoCompleteElm.nativeElement.value = '';\r\n }\r\n // this.autoCompleteElm?.nativeElement?.blur();\r\n }\r\n\r\n itemChange(e) {\r\n if (!!e) {\r\n if (!this.isAlreadyItemPushed) {\r\n this.Items.push(e)\r\n }\r\n this.itemC.emit(e);\r\n this.onChange(this.Items);\r\n\r\n this.comboboxElm.component.text(\"\");\r\n this.comboboxElm.component.value(\"\");\r\n }\r\n }\r\n\r\n\r\n kTextEvent(e) {\r\n this.kText.emit(e)\r\n }\r\n\r\n deleteSenderTo(indx) {\r\n if (!this.isCustomDelete) {\r\n this.Items.splice(indx, 1);\r\n }\r\n this.deleteItem.emit(indx);\r\n }\r\n\r\n SelectSender(sender) {\r\n this.selectItem.emit(sender);\r\n }\r\n\r\n getImgId(i) {\r\n return \"berry-avatar.png\"\r\n }\r\n\r\n ngSuperOnInit() {\r\n if (this.dataAutomationId == null) {\r\n throw new Error(\"Please add data-automation-id\");\r\n }\r\n }\r\n\r\n ngSuperAfterViewInit() {\r\n this.componentIsloaded = true;\r\n }\r\n\r\n constructor(public _toaster: ToastrService,\r\n public dialogs: DialogManager,\r\n public defaults: ContactsHelpers,\r\n private forwardListService: ForwardListService,\r\n public committeesSvc: CommitteesSvc) {\r\n super();\r\n }\r\n\r\n onChange: any = () => { };\r\n onTouch: any = () => { };\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouch = fn;\r\n }\r\n\r\n writeValue(obj) {\r\n if (!!obj) {\r\n this.Items = obj;\r\n }\r\n }\r\n\r\n get getParentPreferedPermission() {\r\n return BERRY.appSettings.keys.showEntityParentPreferedInCombobox === true && this.showEntityParentPreferedInCombobox\r\n }\r\n\r\n get comboBoxServerSearchDatasourceDefaultOptions(): IComboboxServerDatasourceOptions {\r\n return {\r\n enabled: true,\r\n method: this.httpMethod,\r\n searchField: this.searchField,\r\n resultsField: this.resultsField\r\n }\r\n };\r\n\r\n\r\n get comboboxOptions(): IComboboxOptions {\r\n return Object.assign(\r\n {},\r\n this.defaults.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.comboBoxServerSearchDatasourceDefaultOptions,\r\n {\r\n url:\r\n BERRY.hostName + this.url,\r\n additionalParams: () => {\r\n return this.additionalParams;\r\n }\r\n }\r\n ),\r\n dataTextField: this.tValue,\r\n dataValueField: \"dbid\",\r\n allowFreeText: false,\r\n displayTemplate: this.bindTemplate.bind(this),\r\n autoBind: true,\r\n minLength: 1\r\n }\r\n )\r\n }\r\n\r\n get sendToAutoComplete() {\r\n return {\r\n serviceQueryParameterName: \"kw\",\r\n serviceMethod: this.httpMethod,\r\n serviceUrl: BERRY.hostName + this.url,\r\n height: 200,\r\n serviceDataSchema: this.serviceDataSchema,\r\n template: this.bindTemplate.bind(this),\r\n dataTextField: \"value\",\r\n autoBind: false,\r\n select: function (e) {\r\n if (e.dataItem.IsOnVacation && !e.dataItem.IsResearcherForward) {\r\n e.preventDefault();\r\n }\r\n },\r\n noDataTemplate: () => {\r\n return \"
    \" + BERRY?.loc?.kendoLocalization?.NoData + \"
    \"\r\n }\r\n };\r\n }\r\n\r\n get isEntityStandAloneEnabled(): boolean {\r\n return BERRY.onOffFeatures.entityStandAlone;\r\n }\r\n\r\n get isAssignmentsEnabled() {\r\n return BERRY.onOffFeatures.Assignments;\r\n }\r\n\r\n getEntityId(item) {\r\n if ((item?.Id && !Guid.isGuid(item?.Id)) || (item?.dbid && !Guid.isGuid(item?.dbid))) {\r\n return item?.Id ?? item?.dbid ?? null;\r\n }\r\n else {\r\n return null;\r\n }\r\n }\r\n\r\n bindTemplate(data?) {\r\n\r\n data.Type = data.type;\r\n var isEntityStandAloneEnabled = BERRY.onOffFeatures.entityStandAlone;\r\n if (!BERRY.imagesDictionary.get(data[this.tImageSrc]) && data[this.tImageSrc]) {\r\n this.forwardListService.forwardListImage('user-image/image/' + data[this.tImageSrc], (res) => {\r\n document.querySelectorAll(`[imageId='${data[this.tImageSrc]}']`).forEach(element => {\r\n (element as any).style.backgroundImage = `url(${res})` ;\r\n })\r\n BERRY.imagesDictionary.set(data[this.tImageSrc],res)\r\n\r\n })\r\n } else {\r\n setTimeout(()=>{\r\n document.querySelectorAll(`[imageId='${data[this.tImageSrc]}']`).forEach(element => {\r\n (element as any).style.backgroundImage = `url(${BERRY.imagesDictionary.get(data[this.tImageSrc])})`;\r\n })\r\n\r\n },10)\r\n }\r\n\r\n if (!this.isMini) {\r\n\r\n return (\r\n \"' : \">\") +\r\n\r\n `
    `\r\n\r\n +\r\n (!!data[this.tImageSrc] ?\r\n `
    \r\n
    \r\n
    `\r\n :\r\n `${\r\n\r\n data?.Type!=4?\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 (!!data[this.tRole] && this.isAssignmentsEnabled ? ` \r\n \r\n ${data[this.tRole]}\r\n ` : '') +\r\n `\r\n
    \r\n \r\n ${BERRY.appSettings.keys.showEntityParentPreferedInCombobox === true && this.showEntityParentPreferedInCombobox ?\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 (!!data.UserEntityName ?\r\n '' + data.UserEntityName + \"\" : \"\")\r\n +\r\n\r\n\r\n\r\n (isEntityStandAloneEnabled && !!data.ImmediateStandAlonEntityName ? ' ' + BERRY.getText('BelongsTo', 'Resources') + ' '\r\n + data.ImmediateStandAlonEntityName + \"\"\r\n : \"\")\r\n\r\n\r\n\r\n\r\n +\r\n `\r\n
    \r\n \r\n
    \r\n `\r\n + (data[this.tNumber] != 0 ?\r\n\r\n `\r\n
    \r\n \r\n ${data[this.tNumber]}\r\n \r\n
    \r\n `\r\n\r\n\r\n : '')\r\n +\r\n (data.IsOnVacation && !data.IsResearcherForward\r\n ? ' ' + data.VacationDuration + \"\"\r\n : \"\") +\r\n\r\n \"\" +\r\n\r\n (data.IsFavorite && !data.IsResearcherForward\r\n ? '
    '\r\n : \"\")\r\n );\r\n\r\n } else {\r\n\r\n return (\r\n \"' : \">\") +\r\n\r\n \"
    \" +\r\n\r\n \"
    \" +\r\n\r\n \"
    \" +\r\n\r\n (data[this.tNumber] != 0 ?\r\n\r\n `\r\n
    \r\n \r\n ${data[this.tNumber]}\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 (!!data[this.tRole] && this.isAssignmentsEnabled ? ` \r\n \r\n ${data[this.tRole]}\r\n ` : '')\r\n + `\r\n
    `\r\n +\r\n\r\n \"
    \" +\r\n\r\n ` \r\n
    \r\n \r\n ${!!data.UserEntityName && !this.isEntity ?\r\n\r\n `\r\n \r\n \r\n ${data.UserEntityName}\r\n \r\n \r\n\r\n `\r\n\r\n : ' '}\r\n `\r\n +\r\n\r\n (isEntityStandAloneEnabled && !!data.ImmediateStandAlonEntityName ?\r\n ' تابعة ل'\r\n + data.ImmediateStandAlonEntityName + \"\"\r\n : ' ')\r\n\r\n +\r\n \"
    \"\r\n\r\n +\r\n (data.IsOnVacation && !data.IsResearcherForward\r\n ? ' ' + data.VacationDuration + \"\"\r\n : \"\") +\r\n\r\n \"\" +\r\n\r\n (data.IsFavorite && !data.IsResearcherForward\r\n ? '
    '\r\n : \"
    \")\r\n );\r\n\r\n }\r\n\r\n }\r\n\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { AuthService } from 'src/app/framework/services/auth.service';\r\nimport { IGlobalSettings } from 'src/app/_common/models/IGlobalSettings';\r\ndeclare var BERRY :IGlobalSettings\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ForwardListService {\r\n\r\n constructor(private authService:AuthService,private http:HttpClient) { }\r\n\r\n forwardListImage(imageSource:string,cb):any{\r\n imageSource = BERRY.absoluteHostName+imageSource\r\n if (!imageSource.includes('assets/')) { \r\n var xhr = new XMLHttpRequest();\r\n xhr.responseType = 'blob';\r\n xhr.onreadystatechange = () => {\r\n if (xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {\r\n \r\n imageSource = URL.createObjectURL(xhr.response);\r\n cb(imageSource);\r\n } else{\r\n cb('assets/img/berry-avatar.png');\r\n }\r\n };\r\n var imageUrl = imageSource;\r\n if (imageUrl.includes('user-image') ||\r\n imageUrl.includes('ContactsViews/Individuals'))\r\n imageUrl = imageUrl.replace(BERRY.absoluteHostName, BERRY.appSettings.keys.dmsServerUrl);\r\n else\r\n imageUrl = imageUrl.replace(BERRY.absoluteHostName, BERRY.hostName);\r\n\r\n xhr.open('GET', imageUrl, true);\r\n xhr.setRequestHeader('authorization', `Bearer ${this.authService.token}`);\r\n xhr.send();\r\n return imageSource\r\n }\r\n }\r\n}\r\n","\r\nimport { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Router } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { AuthService } from 'src/app/framework/services/auth.service';\r\nimport { LandingPageGuardService } from 'src/app/gurads/landing-page-guard.service';\r\nimport { IGlobalSettings } from 'src/app/_common/models/IGlobalSettings';\r\nimport { MessagingService } from '../../services/messaging-service';\r\nimport { generalSettingsSvc } from \"../../../berry/correspondences/manage/generalSettings/general-settings-svc\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AccessGuard {\r\n _isLoggedIn: boolean = false;\r\n constructor(public router: Router, public messagingSvc: MessagingService,\r\n public generalSettingsSvc: generalSettingsSvc, public authService: AuthService) {\r\n\r\n }\r\n haveAccess(permission) {\r\n\r\n return BERRY.User.Permissions[permission];\r\n\r\n }\r\n canActivate(\r\n route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot)\r\n : Observable | Promise | boolean | UrlTree {\r\n const { permission, accessGuardEndPoint } = route.data;\r\n let landingPageGuardSVC: LandingPageGuardService = new LandingPageGuardService(this.router, this.messagingSvc, this.generalSettingsSvc, this.authService);\r\n return BERRY.$user.pipe(map(() => {\r\n if (!this.haveAccess(permission)) {\r\n landingPageGuardSVC.isLoggedIn = this._isLoggedIn;\r\n landingPageGuardSVC.canActivate(route, state);\r\n }\r\n else {\r\n return true;\r\n }\r\n }))\r\n\r\n\r\n }\r\n\r\n\r\n}\r\n// Example \r\n// { path: \"saved-document\", canActivate: [AccessGuards], data: { permission: \"ViewManageApplication\", accessGuardEndPoint: \"/documents-center/advance-search\" }, component: SavedDocumentComponent },","import { BaseService } from \"../../services/baseService\";\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\nimport { HttpInterceptor } from \"../../services/http-interceptor\";\r\nimport { Injectable } from \"@angular/core\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class LocalizationService extends BaseService {\r\n triggered: boolean = false;\r\n isSubscribed: boolean = true;\r\n baseURL = BERRY.hostName + \"Correspondences/Applications/\";\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n ngOnInit() { }\r\n ngAfterViewInit() { }\r\n ngOnDestroy(): any { }\r\n\r\n getText(key: string, set: string): string {\r\n return \"\";\r\n }\r\n\r\n getLocalization(key: string, set: string, lang?: string): string {\r\n const locKey = `${key}_${set}`;\r\n var text = null;\r\n if (lang === undefined || lang === null) {\r\n lang = BERRY.isEn ? \"en\" : \"ar\";\r\n }\r\n\r\n let locDictionaryLangAr = BERRY.LocDictionary.ar;\r\n let locDictionaryLangEn = BERRY.LocDictionary.en;\r\n\r\n if (lang === \"ar\") {\r\n text = BERRY.LocDictionary.ar[locKey.toUpperCase()] || BERRY.LocDictionary.en[locKey.toUpperCase()];\r\n } else {\r\n text = BERRY.LocDictionary.en[locKey.toUpperCase()] || BERRY.LocDictionary.ar[locKey.toUpperCase()];\r\n }\r\n\r\n if (text === undefined || text === null) {\r\n text = key;\r\n }\r\n\r\n return text;\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n\r\n \r\n\r\n
    \r\n
    \r\n {{title || options.title}}\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
    ","import { Component, ViewChild, ElementRef, Input, ViewChildren } from \"@angular/core\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { DialogManager, ConfirmationBoxResult, ConfirmationBoxType, ConfirmationBoxOptions } from \"../../services/dialog-manager\";\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\nimport { PopupService } from \"./service/popup.service\";\r\nimport { createFocusTrap } from 'focus-trap';\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n// export enum actionType {\r\n// submit,\r\n// danger,\r\n// close,\r\n// other,\r\n// }\r\n\r\nexport interface Action {\r\n type: 'submit' | 'danger' | 'close' | 'other';\r\n text: string;\r\n event?();\r\n hide?(): boolean;\r\n icon?: string;\r\n automationId?: string;\r\n}\r\n\r\nexport interface IPopup {\r\n title?: string;\r\n icon?: string;\r\n isForm?: boolean;\r\n startPartSize?: 'half' | 'oneThird' | 'quarter' | 'twoThird';\r\n draggable?: boolean;\r\n actions: Action[];\r\n height?: number;\r\n mode: 'mini' | 'small' | 'standard' | 'medium' | 'large';\r\n dirtyFormCheck?(): boolean;\r\n isBusy?(): boolean;\r\n isLightMode?: boolean;\r\n disableSubmit?(): boolean;\r\n}\r\n\r\n@Component({\r\n selector: \"berry-popup\",\r\n templateUrl: \"./popup-component.html\",\r\n styleUrls: ['./popup.style.scss']\r\n})\r\n\r\nexport class PopupComponent extends BaseCmp {\r\n\r\n @ViewChild('popup', { static: true })\r\n popup: ElementRef;\r\n\r\n @ViewChild('headerTail', { static: true })\r\n headerTail: ElementRef;\r\n\r\n @ViewChild('header', { static: true })\r\n externalHeader: ElementRef;\r\n\r\n @ViewChild('startArea', { static: true })\r\n startArea: ElementRef;\r\n\r\n @ViewChild('endArea', { static: true })\r\n endArea: ElementRef;\r\n\r\n @ViewChildren('submitButtons') submitButtons;\r\n @Input('options')\r\n options: IPopup;\r\n\r\n @Input('title')\r\n title: string;\r\n\r\n @Input('icon')\r\n icon: string;\r\n isOpen: boolean;\r\n index: number = 0;\r\n closePopupMsg: string = BERRY?.loc?.CommonDbRes?.ClosePopupMsg;\r\n constructor(\r\n public dialogs: DialogManager,\r\n public popupService: PopupService\r\n ) {\r\n super();\r\n\r\n }\r\n isConfirmationMessageOpen: boolean;\r\n focusTrap: any;\r\n get submitBtns(): Action[] {\r\n return this.options.actions.filter(({ type }) => type === 'submit');\r\n }\r\n\r\n get closeBtn(): Action | undefined {\r\n return this.options.actions.find(({ type }) => type === 'close');\r\n }\r\n\r\n get dangerBtns(): Action[] {\r\n return this.options.actions.filter(({ type }) => type === 'danger');\r\n }\r\n\r\n get otherBtns(): Action[] {\r\n return this.options.actions.filter(({ type }) => type === 'other');\r\n }\r\n\r\n get isBodyContentHeader(): boolean {\r\n return this.externalHeader?.nativeElement.childNodes.length > 0;\r\n }\r\n\r\n get isHeaderContentTail(): boolean {\r\n return this.headerTail?.nativeElement.childNodes.length > 0;\r\n }\r\n get isBodySplited(): boolean {\r\n return this.startArea?.nativeElement.childNodes.length > 0;\r\n }\r\n\r\n get isDirtyForm(): boolean {\r\n if (!!this.options.dirtyFormCheck)\r\n return this.options.dirtyFormCheck();\r\n return false;\r\n }\r\n\r\n get isEmptyAction(): boolean {\r\n return this.options.actions.length === 0;\r\n }\r\n\r\n get isMiniMode(): boolean {\r\n return this.options.mode === 'mini';\r\n }\r\n\r\n\r\n get isLightMode(): boolean {\r\n return this.options.isLightMode;\r\n }\r\n\r\n get disableSubmit(): boolean {\r\n if (this.options.disableSubmit && this.options.disableSubmit())\r\n return true;\r\n return false;\r\n }\r\n\r\n get disableBtns(): boolean {\r\n if (!!this.options.isBusy) {\r\n if (this.options.isBusy()) {\r\n return true;\r\n }\r\n else\r\n return false;\r\n } else {\r\n return false;\r\n }\r\n\r\n }\r\n\r\n submitForm() {\r\n\r\n if (this.submitButtons.last && !document.getElementsByTagName('message-box').length && !document.querySelector(\"bs-dropdown-container\")) {\r\n this.submitButtons.last?.nativeElement.click()\r\n }\r\n this.isConfirmationMessageOpen = false;\r\n\r\n }\r\n\r\n actionHandler(cb) {\r\n if (!cb) return null;\r\n this.focusTrapDeactivate();\r\n cb();\r\n setTimeout(() => {\r\n if (document.getElementById(\"btnNo\")) {\r\n document.getElementById(\"btnNo\").addEventListener(\"click\", () => {\r\n this.focusTrapActivate();\r\n });\r\n }\r\n\r\n if (document.getElementById(\"btnOk\")) {\r\n document.getElementById(\"btnOk\").addEventListener(\"click\", () => {\r\n this.focusTrapActivate();\r\n });\r\n }\r\n\r\n\r\n }, 300);\r\n\r\n\r\n }\r\n\r\n getValue(target) {\r\n if (typeof (target) === 'function')\r\n return target();\r\n return target;\r\n }\r\n close(closeFromTemplate: boolean = false): void {\r\n\r\n if (this.isDirtyForm && closeFromTemplate) {\r\n this.focusTrapDeactivate();\r\n this.confirmationMessage(() => this.pureClose());\r\n } else {\r\n this.pureClose();\r\n }\r\n\r\n var element = document.getElementsByClassName(\"accessFromFlowPaper-panelAttachment-popup\")[0];\r\n if (element != null) {\r\n element.classList.remove(\"accessFromFlowPaper-panelAttachment-popup\");\r\n }\r\n if(document.fullscreenElement) document.exitFullscreen(); \r\n \r\n }\r\n\r\n private pureClose(): void {\r\n this.isOpen = false;\r\n this.isConfirmationMessageOpen = false;\r\n\r\n this.enableBodyScrolling();\r\n\r\n if (this.closeBtn && !!this.closeBtn.event) {\r\n this.closeBtn.event();\r\n }\r\n this.resetScroll();\r\n this.popupService.remove();\r\n this.index = 0;\r\n\r\n }\r\n\r\n enableBodyScrolling() {\r\n setTimeout(() => {\r\n if (this.popupService.length < 1)\r\n document.documentElement.style.overflow = \"unset\";\r\n this.popup.nativeElement.style.display = 'none';\r\n }, 300);\r\n }\r\n\r\n open(): void {\r\n try {\r\n this.popup.nativeElement.style.display = 'flex';\r\n } catch (error) {\r\n\r\n }\r\n\r\n document.documentElement.style.overflow = \"hidden\";\r\n setTimeout(() => {\r\n this.isOpen = true;\r\n this.focusTrapActivate();\r\n this.index = this.popupService.length;\r\n }, 10);\r\n this.popupService.add(this);\r\n\r\n }\r\n\r\n focusTrapActivate() {\r\n try {\r\n\r\n if (!window.navigator.userAgent.includes('Firefox')) {\r\n this.focusTrap = createFocusTrap(this.popup?.nativeElement, {\r\n onActivate: () => {\r\n },\r\n onDeactivate: () => {\r\n },\r\n allowOutsideClick: true\r\n });\r\n this.focusTrap.activate();\r\n }\r\n\r\n } catch (error) {\r\n\r\n }\r\n\r\n\r\n\r\n }\r\n\r\n focusTrapDeactivate() {\r\n if (!!this.focusTrap) {\r\n try {\r\n if (!window.navigator.userAgent.includes('Firefox')) {\r\n this.focusTrap.deactivate();\r\n }\r\n } catch (error) { }\r\n\r\n }\r\n\r\n }\r\n resetScroll(): void {\r\n this.startArea.nativeElement.scrollTop = 0;\r\n this.endArea.nativeElement.scrollTop = 0;\r\n }\r\n\r\n\r\n\r\n ngSuperOnInit() {\r\n\r\n if (this.options === undefined) {\r\n this.options = {\r\n mode: 'mini',\r\n actions: [],\r\n title: 'N/A',\r\n }\r\n }\r\n //if (!this.title && !this.options.title && !this.isMiniMode) {\r\n //}\r\n }\r\n private confirmationMessage(cb) {\r\n\r\n if (!this.isConfirmationMessageOpen && this.isOpen) {\r\n this.dialogs.create(dialog => {\r\n if (dialog) {\r\n const options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Warning,\r\n this.closePopupMsg,\r\n \"\",\r\n BERRY.loc.CommonDbRes.Yes,\r\n BERRY.loc.CommonDbRes.No\r\n );\r\n dialog.show(options, result => {\r\n if (result === ConfirmationBoxResult.Yes) {\r\n cb();\r\n } else {\r\n this.focusTrapActivate();\r\n }\r\n this.isConfirmationMessageOpen = false;\r\n });\r\n }\r\n });\r\n\r\n }\r\n\r\n this.isConfirmationMessageOpen = true;\r\n }\r\n\r\n ngSuperAfterViewInit() {\r\n\r\n }\r\n\r\n ngOnDestroy() {\r\n // this.enableBodyScrolling();\r\n document.documentElement.style.overflow = \"unset\";\r\n if (this.isOpen) {\r\n this.close();\r\n }\r\n }\r\n getAutomationId(btn: any) {\r\n return btn.automationId != null && btn.automationId != '' && btn.automationId != undefined ? btn.automationId : 'popup-primary-button'\r\n }\r\n\r\n // to disable Body Sctolling\r\n // disableBodySctolling() {\r\n // if (document.querySelectorAll(\".bb-popupGeneric__enabled\").length < 1) {\r\n // document.documentElement.style.overflow = \"unset\";\r\n // }\r\n // }\r\n}\r\n\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { PopupComponent } from '../popup-component';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PopupService {\r\n _popupList: PopupComponent[] = [];\r\n\r\n constructor() {\r\n }\r\n\r\n add(popup: PopupComponent) {\r\n this._popupList.map(popup => {\r\n popup.focusTrapDeactivate();\r\n })\r\n this._popupList.push(popup);\r\n\r\n }\r\n\r\n public get lastPopup() {\r\n return this._popupList[this.length - 1]\r\n }\r\n remove() {\r\n this._popupList.map(popup => {\r\n popup.focusTrapDeactivate();\r\n })\r\n this._popupList.pop();\r\n if (this.length > 0) {\r\n this._popupList[this.length - 1].focusTrapActivate();\r\n }\r\n\r\n\r\n }\r\n\r\n get isEmpty(): boolean {\r\n return !this._popupList.length;\r\n }\r\n\r\n get length(): number {\r\n return this._popupList.length;\r\n }\r\n\r\n closeLastPopup() {\r\n if (!this.isEmpty && !document.getElementsByTagName('message-box').length) {\r\n this._popupList[this.length - 1].close(true);\r\n }\r\n }\r\n\r\n submitLastPopup() {\r\n if (!this.isEmpty) {\r\n this._popupList[this.length - 1].submitForm();\r\n }\r\n }\r\n\r\n focusTrapDeactivate() {\r\n if (this.lastPopup) {\r\n this.lastPopup.focusTrapDeactivate();\r\n }\r\n }\r\n focusTrapActivate() {\r\n if (this.lastPopup) {\r\n this.lastPopup.focusTrapActivate();\r\n }\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { IGlobalSettings } from 'src/app/_common/models/IGlobalSettings';\r\nimport { BaseService } from 'src/app/_common/services/baseService';\r\nimport { HttpInterceptor } from 'src/app/_common/services/http-interceptor';\r\nimport { SecondPasswordDto } from '../dtos/second-password-dto';\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class SecondPasswordService extends BaseService {\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n private readonly baseUrl = `${BERRY.hostName}api/SecondPasswordApi/`;\r\n\r\n IsSecondPasswordSecurityEnabled(): Observable {\r\n return this.http.get(`${this.baseUrl}IsSecondPasswordSecurityEnabled`);\r\n }\r\n\r\n addSecondPassword(secondPasswordDto: SecondPasswordDto) {\r\n return this.http.post(`${this.baseUrl}Add`, secondPasswordDto);\r\n }\r\n\r\n resetPassword(userId: string) {\r\n return this.http.post(`${this.baseUrl}Reset?userId=${userId}`, {});\r\n }\r\n}\r\n","\r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n {{msg}}\r\n\r\n \r\n
    \r\n\r\n \r\n {{getText('ChooseFile', 'Stamp')}}\r\n
    \r\n {{getText('AllowedExtension', 'Stamp')}}\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
    ","import { Component, ViewChild, EventEmitter, ElementRef, Input, Output } from \"@angular/core\";\r\nimport { Router, ActivatedRoute } from \"@angular/router\";\r\nimport { DomSanitizer } from \"@angular/platform-browser\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\n\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\n\r\nimport { DialogManager, ConfirmationBoxOptions, ConfirmationBoxType } from \"src/app/_common/services/dialog-manager\";\r\n\r\nimport { DetailsSVC } from \"src/app/berry/correspondences/details/details-svc\";\r\n\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\nimport { PopupComponent, IPopup } from \"../popup/popup-component\";\r\nimport { ContactsHelpers } from \"src/app/Contacts/helpers\";\r\nimport { FileUploaderComponent } from \"../file-uploader/file-uploader.component\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"upload-image-popup\",\r\n templateUrl: \"./uploadImagePopup-component.html\"\r\n})\r\n\r\nexport class UploadImage extends BaseCmp {\r\n \r\n @ViewChild(\"fileUploaderElm\") fileUploaderElm : FileUploaderComponent;\r\n\r\n @Input(\"msg\") msg: string;\r\n @Input(\"popupTitle\") popupTitle: string;\r\n @Input(\"imageURL\") imageURL: string;\r\n @Input(\"id\") referenceId: any;\r\n @Input(\"url\") _url: string;\r\n\r\n @Output(\"reloadImages\") reloadImages: EventEmitter = new EventEmitter();\r\n\r\n ngSuperOnInit() {\r\n }\r\n ngSuperAfterViewInit() { }\r\n uploadInputModel: any;\r\n isSubscribed: boolean = true;\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n @ViewChild(\"selectedFile\") public selectedFile: any;\r\n @ViewChild('imageUpload') imageUpload: ElementRef;\r\n selectedFileName = \"\";\r\n currentUser: any;\r\n allowedSizeMB: number = 2;\r\n HeaderInfo: IHeaderInfo;\r\n\r\n formData: FormData;\r\n\r\n currentFile: File;\r\n humanizeBytes: Function;\r\n dragOver: boolean;\r\n\r\n scannerAllowed = false;\r\n isFileSelected = false;\r\n isFileScanned = false;\r\n isBusy = false;\r\n\r\n //URL: string; \r\n Id: any;\r\n\r\n selectedUsers = [];\r\n UsersInitValues = [];\r\n isApplySecurity = false;\r\n uploadFileProgressPercentage = 0;\r\n errors: string;\r\n\r\n validation = {\r\n fileNameRequired: false,\r\n fileMustBeSelected: false\r\n };\r\n\r\n constructor(\r\n public route: ActivatedRoute,\r\n public router: Router,\r\n public sanitizer: DomSanitizer,\r\n public toaster: ToastrService,\r\n public dialogs: DialogManager,\r\n public helpers: ContactsHelpers,\r\n public detailsSVC: DetailsSVC\r\n ) {\r\n super();\r\n }\r\n\r\n\r\n validate() {\r\n if (!this.isFileSelected && !this.isFileScanned) {\r\n this.validation.fileMustBeSelected = true;\r\n return false;\r\n }\r\n\r\n if (this.isFileSelected && this.selectedFileName.trim() == \"\") {\r\n this.validation.fileNameRequired = true;\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n @ViewChild('photoPopup') PhotoPopup: PopupComponent;\r\n photoPopupOptions: IPopup = {\r\n title: '',\r\n actions: [\r\n { text: this.getText('save', 'Contacts_General'), type: \"submit\", event: () => this.save() },\r\n {\r\n text: this.getText('cancel', 'Contacts_General'), type: \"close\", event: () => {\r\n this.reset();\r\n }\r\n }\r\n ],\r\n \r\n mode: 'small',\r\n isBusy: () => this.isBusy\r\n }\r\n\r\n save() {\r\n let me = this;\r\n \r\n if (!this.isFileSelected) {\r\n this.dialogs.create(dialog => {\r\n if (dialog) {\r\n dialog.show(new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Warning,\r\n BERRY.getText('FormsValidationMessage', 'Common'),\r\n ));\r\n }\r\n });\r\n return;\r\n }\r\n me.isBusy = true;\r\n this.fileUploaderElm.uploadImg()\r\n me.isBusy = false;\r\n this.hide();\r\n }\r\n\r\n\r\n show(headerInfo: IHeaderInfo) {\r\n this.HeaderInfo = headerInfo;\r\n if (this.HeaderInfo.HasPhoto) {\r\n if (this.photoPopupOptions.actions.filter((item) => item.type == 'danger').length == 0) {\r\n }\r\n } else {\r\n this.photoPopupOptions.actions = this.photoPopupOptions.actions.filter((item) => item.type != 'danger')\r\n }\r\n this.PhotoPopup.open();\r\n }\r\n\r\n triggerFileUploadClick() {\r\n let me = this;\r\n me.imageUpload.nativeElement.click();\r\n }\r\n\r\n hide() {\r\n this.PhotoPopup.close();\r\n this.reset();\r\n \r\n }\r\n reset() {\r\n this.uploadInputModel = null;\r\n this.currentFile = null;\r\n this.imageURL = null;\r\n this.isFileSelected = false;\r\n }\r\n \r\n get data() {\r\n return {\r\n referenceId: this.referenceId,\r\n id : this.Id\r\n }\r\n\r\n }\r\n\r\n get urlForUpload() {\r\n return BERRY.hostName + this._url\r\n }\r\n\r\n onFileChoosen(data) {\r\n\r\n let currentFilesizeInMB = (data.file.size) /1024/1024;\r\n if (currentFilesizeInMB > this.allowedSizeMB) {\r\n this.toaster.warning(this.getText(\"TheSizeOfTheImageLargerThanTheSizeSpecified\", 'Stamp'));\r\n this.isFileSelected = false;\r\n return;\r\n }\r\n this.isFileSelected = true;\r\n this.scannerAllowed = true;\r\n this.isFileScanned = true;\r\n this.imageURL = data.imageChoosen;\r\n\r\n }\r\n\r\n onFileUploaded(e) {\r\n this.isBusy = false;\r\n this.uploadFileProgressPercentage = 0;\r\n\r\n if (e == false) {\r\n this.errors = BERRY.getText(\"invalid_photo\", 'Contacts_js'); //;'الصورة غير مناسبة';\r\n } else {\r\n this.reloadImages.emit();\r\n this.isFileSelected = false;\r\n this.HeaderInfo.PhotoVersion += 1;\r\n this.HeaderInfo.HasPhoto = true;\r\n }\r\n\r\n }\r\n\r\n \r\n}\r\n\r\n\r\ninterface IHeaderInfo {\r\n HasPhoto?: boolean;\r\n Id?: number;\r\n PhotoVersion?: number;\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 {{userDetails.PositionName}} \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 {{getText('ReportTo', 'BerryUserCard')}} \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { BaseCmp } from 'src/app/_common/components/BaseComponent';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AfterViewInit, Component, ElementRef, Input, OnDestroy, ViewChild } from '@angular/core';\r\nimport { IGlobalSettings } from '../../models/IGlobalSettings';\r\nimport { BsDropdownDirective, } from 'ngx-bootstrap/dropdown';\r\nimport { UserCardService } from './user-card.service';\r\nimport { relocate } from '../../utils/relocate-element-position.utils';\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: 'berry-user-card',\r\n templateUrl: './user-card.component.html',\r\n styles: [`\r\n .user-card-container {\r\n position: absolute;\r\n z-index:20;\r\n background:white;\r\n min-width:200px;\r\n border-radius:5px;\r\n min-width:300px;\r\n max-width:350px;\r\n animation-delay:0.5;\r\n animation-duration: 0.4s;\r\n animation-name: user-card-container;\r\n \r\n }\r\n\r\n @keyframes user-card-container {\r\n from { \r\n opacity:0; \r\n }\r\n to {\r\n opacity:1;\r\n }\r\n }\r\n `]\r\n})\r\n\r\nexport class UserCardComponent extends BaseCmp implements AfterViewInit, OnDestroy {\r\n\r\n @Input() userId: string = '';\r\n @Input() cssClass: string = '';\r\n id = Math.floor(Math.random() * 100000000000);\r\n disableHover: boolean = false;\r\n showCopyEmail: boolean = false;\r\n showCopyPhone: boolean = false;\r\n @ViewChild(BsDropdownDirective) dropdown!: BsDropdownDirective;\r\n @ViewChild('content') content!: ElementRef;\r\n\r\n isBusy: boolean = false;\r\n private hideDropdownTimeout: any;\r\n listItemLength: number = 0;\r\n constructor(private http: HttpClient, private userCardService: UserCardService) {\r\n super();\r\n }\r\n\r\n ngSuperOnInit() {\r\n }\r\n ngSuperAfterViewInit() {\r\n }\r\n\r\n ngOnDestroy(): void {\r\n delete this.userCardService.cardsList[this.id];\r\n }\r\n ngAfterViewInit(): void {\r\n this.dropdown.onHidden.subscribe(() => {\r\n this.disableHover = false;\r\n })\r\n\r\n }\r\n\r\n mouseEnterContent(): void {\r\n\r\n\r\n clearTimeout(this.hideDropdownTimeout);\r\n this.hideDropdownTimeout = this.timeIn\r\n\r\n }\r\n\r\n mouseleaveContent(): void {\r\n clearTimeout(this.hideDropdownTimeout);\r\n this.hideDropdownTimeout = this.timeOut;\r\n }\r\n\r\n\r\n mouseEnterPopup(): void {\r\n clearTimeout(this.hideDropdownTimeout);\r\n }\r\n\r\n\r\n mouseleavePopup(): void {\r\n clearTimeout(this.hideDropdownTimeout);\r\n this.hideDropdownTimeout = this.timeOut;\r\n }\r\n public get timeIn(): any {\r\n return setTimeout(() => {\r\n this.GetUserCardDetails();\r\n this.openDDL();\r\n this.disableHover = true;\r\n }, 1000);\r\n }\r\n public get timeOut(): any {\r\n return setTimeout(() => {\r\n this.dropdown.hide();\r\n this.disableHover = false;\r\n }, 1000);\r\n }\r\n\r\n copyToClipboard(item): void {\r\n console.log(item)\r\n let listener = (e: ClipboardEvent) => {\r\n e.clipboardData.setData('text/plain', (item));\r\n e.preventDefault();\r\n };\r\n\r\n document.addEventListener('copy', listener);\r\n document.execCommand('copy');\r\n document.removeEventListener('copy', listener);\r\n }\r\n\r\n userDetails: any = {};\r\n imageType = 'user';\r\n\r\n openDDL() {\r\n this.userCardService.cardsList[this.id] = this.dropdown;\r\n if (!this.disableHover) {\r\n Object.values(this.userCardService.cardsList).map((dropdown: BsDropdownDirective) => {\r\n dropdown.hide()\r\n\r\n })\r\n this.dropdown.show();\r\n }\r\n\r\n\r\n\r\n setTimeout(() => {\r\n relocate(this.content.nativeElement, document.getElementsByTagName('bs-dropdown-container')[0].querySelector('.user-card-bs-dropdown'));\r\n\r\n }, 10)\r\n }\r\n\r\n isEMailCopied: boolean = false;\r\n isPhoneCopied: boolean = false;\r\n\r\n changeIcon(type: 'email' | 'phonenumber') {\r\n switch (type) {\r\n case 'email':\r\n this.isEMailCopied = true;\r\n setTimeout(() => {\r\n this.isEMailCopied = false;\r\n }, 3000);\r\n break;\r\n\r\n case 'phonenumber':\r\n this.isPhoneCopied = true;\r\n setTimeout(() => {\r\n this.isPhoneCopied = false;\r\n }, 3000);\r\n break;\r\n }\r\n }\r\n\r\n GetUserCardDetails() {\r\n this.isBusy = true;\r\n const cachedRoles = localStorage.getItem('userInfo');\r\n const userRoles = cachedRoles ? JSON.parse(cachedRoles) : {};\r\n\r\n if (userRoles[this.userId] && this.isDataFresh(userRoles[this.userId].lastUpdate)) {\r\n this.userDetails = userRoles[this.userId].data;\r\n this.isBusy = false;\r\n } else {\r\n this.http.get(`${BERRY.hostName}Manage/Users/GetUserCardDetails?userId=${this.userId}`).subscribe(userData => {\r\n this.userDetails = userData;\r\n this.isBusy = false;\r\n userRoles[this.userId] = {\r\n data: userData,\r\n lastUpdate: new Date().toISOString(),\r\n };\r\n\r\n localStorage.setItem('userInfo', JSON.stringify(userRoles));\r\n });\r\n }\r\n }\r\n\r\n isDataFresh(lastUpdate) {\r\n const currentTime = new Date();\r\n const lastUpdateDate = new Date(lastUpdate);\r\n return currentTime.getTime() - lastUpdateDate.getTime() < 3600000;\r\n }\r\n get isHasEmail(): boolean {\r\n return this.userDetails?.Email;\r\n }\r\n\r\n get isHasPhoneNumber(): boolean {\r\n return this.userDetails?.MobileNumber;\r\n }\r\n}","import { Injectable, TemplateRef } from \"@angular/core\";\r\n \r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UserCardService {\r\n cardsList = {};\r\n template: TemplateRef;\r\n}","import { stringFormat } from \"../../utils/stringFormat\";\r\nimport { Component, Input } from \"@angular/core\";\r\nimport { FormControl } from \"@angular/forms\";\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\nimport { ContactsHelpers } from \"../../../Contacts/helpers\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"control-messages\",\r\n template: `\r\n
    \r\n \r\n {{ errorMessage }}\r\n \r\n \r\n {{ Message }}{{ LinkTitle }}\r\n \r\n
    \r\n `\r\n})\r\nexport class ControlMessagesComponent {\r\n @Input() control: FormControl;\r\n @Input() onTouched: boolean = true;\r\n\r\n @Input() AlertClass: boolean = false;\r\n validationMessage: any;\r\n \r\n constructor() {\r\n this.validationMessage = {\r\n \"NodeMustbeRolse\": BERRY?.loc?.ValidationMessage?.NodeMustbeRolse,\r\n \"NodeMustbeEntityOrUse\": BERRY?.loc?.ValidationMessage?.NodeMustbeEntityOrUse,\r\n \"AlreadyExist\": BERRY?.loc?.ValidationMessage?.alreadyExist,\r\n \"InvalidMobileNumber\": BERRY?.loc?.common?.InvalidMobileNumber,\r\n \"required\": BERRY?.loc?.common?.requiredField,\r\n \"nameFollowContactIsRequired\": BERRY?.loc?.common?.followerNameRequired,\r\n \"TitleArOrTitleEnAtLeastRequired\": BERRY?.loc?.scheduling?.TitleArOrTitleEnAtLeastRequired,\r\n \"ParticipantGroupAlreadyExist\": BERRY?.loc?.scheduling?.ParticipantGroupAlreadyExist,\r\n \"senderMustNotEqual\": BERRY?.loc?.common?.senderMustNotEqual,\r\n \"IsForwardToRequired\": BERRY?.loc?.common?.requiredField,\r\n \"OrganizerAlreadyExist\": BERRY?.loc?.scheduling?.OrganizerAlreadyExist,\r\n \"ParticipantAlreadyExist\": BERRY?.loc?.scheduling?.ParticipantAlreadyExist,\r\n \"AtlestoneNode\": BERRY?.loc?.ValidationMessage?.AtlestoneNode,\r\n \"SameUserInNode\": BERRY?.loc?.ValidationMessage?.SameUserInNode,\r\n \"HaveToBeEntity\": BERRY?.loc?.ValidationMessage?.HaveToBeEntity,\r\n \"HaveNodeWithoutRecepient\": BERRY?.loc?.ValidationMessage?.HaveNodeWithoutRecepient,\r\n \"HaveSameTitle\": BERRY?.loc?.ValidationMessage?.HaveSameTitle,\r\n \"validateEqual\": BERRY?.loc?.common?.equalCompareValidator,\r\n \"validatePositiveNumber\": BERRY?.loc?.common?.invalideNumberValidationMessage,\r\n \"validateNotDefaultAttachmentGroup\": BERRY?.loc?.common?.invalideDefaultAttachmentGroupValidationMessage,\r\n \"validateCapacityGreatThanInitial\": BERRY?.loc?.common?.invalideShelveCapacityValue,\r\n \"IsValidEmailSource\": BERRY?.loc?.ValidationMessage?.IsValidEmailSource,\r\n \"InvalidNumber\": BERRY?.loc?.ValidationMessage?.InvalidNumber,\r\n \"MaxLengthValidation\": BERRY?.loc?.ValidationMessage?.MaxLengthValidation,\r\n \"email\": BERRY?.loc?.ValidationMessage?.Email\r\n }\r\n }\r\n\r\n @Input() ValidationMessage: any;\r\n\r\n hasLink;\r\n public get HasLink() {\r\n return this.hasLink;\r\n }\r\n\r\n link;\r\n public get Link() {\r\n return this.link;\r\n }\r\n message;\r\n public get Message() {\r\n return this.message;\r\n }\r\n linkTitle;\r\n public get LinkTitle() {\r\n return this.linkTitle;\r\n }\r\n\r\n private _dataAutomationId: string;\r\n get dataAutomationId(){\r\n return this._dataAutomationId;\r\n }\r\n\r\n set dataAutomationId(value){\r\n switch(value){\r\n case 'required':\r\n this._dataAutomationId = 'required-field';\r\n break;\r\n default: \r\n this._dataAutomationId = '';\r\n }\r\n }\r\n\r\n get errorMessage() {\r\n if (!this.control) return null;\r\n\r\n for (let propertyName in this.control.errors) {\r\n if (!this.onTouched || this.control.touched) {\r\n let value = this.control.errors[propertyName];\r\n var message = this.getValidatorErrorMessage(\r\n propertyName,\r\n this.control.errors[propertyName],\r\n value,\r\n this.ValidationMessage\r\n );\r\n\r\n if (message && message.indexOf(\"$\") > -1) {\r\n var list = message.split(\"$\");\r\n this.message = list[0];\r\n this.link = BERRY.hostName + list[1];\r\n this.linkTitle = list[2];\r\n this.hasLink = true;\r\n }\r\n this.dataAutomationId = propertyName;\r\n return message;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n get classMessage() {\r\n if (this.AlertClass) {\r\n return \"alert alert-danger\";\r\n } else {\r\n return \"text-danger\";\r\n }\r\n }\r\n\r\n getValidatorErrorMessage(validatorName: string, validatorValue?: any, value?: any, validationMessageCallback?: any) {\r\n if (validationMessageCallback !== undefined && validationMessageCallback !== null) {\r\n return validationMessageCallback(value);\r\n }\r\n let result: any;\r\n if (validatorName == \"maxlength\") {\r\n result = BERRY?.loc?.ValidationMessage?.MaxLength + \" \" + validatorValue.requiredLength;\r\n }\r\n else if (validatorName == \"minlength\") {\r\n result = BERRY?.loc?.ValidationMessage?.MinLength + \" \" + validatorValue.requiredLength;\r\n }\r\n else if (validatorName == 'OutgoingDuplicate') {\r\n result = stringFormat(\r\n BERRY?.loc?.common.OutgoingDuplicate, value.Subject, value.DeliveryDate, value.InternalSenderEntity.EntityName, value.ExternalSenderEntityTitle, \"$correspondence/details/\" + value.DuplicateCorrespondenceId + \"$\" + value.DuplicateYearAndSequence + \"$\"\r\n );\r\n }\r\n else if (validatorName == 'pattern') {\r\n\r\n let Pattern = validatorValue.requiredPattern;\r\n if (Pattern == ContactsHelpers.IPAddress_REGEX) {\r\n result = BERRY?.loc?.ValidationMessage?.IpValidation;\r\n }\r\n }\r\n else {\r\n result = this.validationMessage[validatorName];\r\n result = result ? result : validatorName;\r\n }\r\n return result;\r\n }\r\n}\r\n","import { Component, Input, Output, ViewChild, forwardRef, EventEmitter } from \"@angular/core\";\r\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from \"@angular/forms\";\r\nimport { kendoCombobox, IComboboxOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { datetimeHelper } from \"../../utils/datetimeHelper\";\r\n\r\nconst noop = () => { };\r\n\r\nexport const CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR: any = {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => YearPickerComponent),\r\n multi: true\r\n};\r\n\r\n@Component({\r\n selector: \"yearpicker\",\r\n template: ``\r\n})\r\nexport class YearPickerComponent extends BaseCmp implements ControlValueAccessor {\r\n\r\n @Output() valueChanged: EventEmitter = new EventEmitter();\r\n @Input(\"minValue\") minValue: number;\r\n @Input(\"maxValue\") maxValue: number;\r\n @Input(\"disabled\") disabled: boolean;\r\n @Input(\"defaultItem\") defaultItem: any;\r\n\r\n @ViewChild(kendoCombobox) yearpicker: kendoCombobox;\r\n\r\n // This should act as the NgModel for the yearpicker\r\n innerValue: any = \"\";\r\n\r\n // From ControlValueAccessor\r\n onTouchedCallback: () => void = noop;\r\n onChangeCallback: (_: any) => void = noop;\r\n\r\n get value(): any {\r\n return this.innerValue;\r\n }\r\n\r\n set value(v: any) {\r\n if (v !== this.innerValue) {\r\n this.innerValue = v;\r\n this.onChangeCallback(v);\r\n }\r\n }\r\n\r\n //Set touched on blur\r\n onBlur() {\r\n this.onTouchedCallback();\r\n }\r\n\r\n writeValue(value: any) {\r\n if (value !== this.innerValue) {\r\n this.innerValue = value;\r\n }\r\n }\r\n\r\n registerOnChange(fn: any) {\r\n this.onChangeCallback = fn;\r\n }\r\n\r\n registerOnTouched(fn: any) {\r\n this.onTouchedCallback = fn;\r\n }\r\n\r\n constructor(public dateHelper: datetimeHelper) {\r\n super();\r\n }\r\n\r\n ngSuperAfterViewInit() {\r\n\r\n }\r\n item;\r\n ngSuperOnInit() {\r\n for (let i = this.minValue; i < this.maxValue; i++) {\r\n let year: yearDto = {\r\n text: i.toString(),\r\n value: i\r\n };\r\n this.years.push(year);\r\n }\r\n this.years = this.years.sort((x, y) => this.minValue - this.maxValue);\r\n this.defaultItem = (typeof this.defaultItem == 'undefined' ? this.dateHelper.getCurrentYearBasedOnCulture() : this.defaultItem);\r\n this.item = this.years.filter(y => y.text == this.defaultItem)[0];\r\n }\r\n\r\n valueChange() {\r\n this.valueChanged.emit(this.innerValue);\r\n }\r\n\r\n clear() {\r\n this.yearpicker.value = null;\r\n }\r\n\r\n years: Array = new Array();\r\n\r\n autocompleteDefaultOptions: IComboboxOptions = {\r\n allowFreeText: false,\r\n serverDatasource: {\r\n enabled: false\r\n },\r\n datasource: this.years,\r\n autoBind: false\r\n };\r\n\r\n yearAutocompleteOptions = Object.assign({}, this.autocompleteDefaultOptions, {\r\n dataSource: this.years\r\n });\r\n}\r\n\r\nexport class yearDto {\r\n text: string;\r\n value: number\r\n}","import { NgModule } from \"@angular/core\";\r\nimport { SharedModule } from \"src/app/shared/shared.module\";\r\nimport { YearPickerComponent } from \"./yearpicker.component\";\r\n\r\n@NgModule({\r\n imports: [\r\n SharedModule\r\n ],\r\n declarations: [\r\n YearPickerComponent\r\n ],\r\n exports: [\r\n YearPickerComponent\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class YearPickerModule { }\r\n","import { Directive, ElementRef, Input, Output, AfterViewInit, EventEmitter, forwardRef } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"./../models/IGlobalSettings\";\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from \"@angular/forms\";\r\nimport { SpecialCalendarDate } from \"../models/SpecialCalendarDate\";\r\nimport { generalSettingsSvc } from \"src/app/berry/correspondences/manage/generalSettings/general-settings-svc\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\n\r\ndeclare var $: any;\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n/**\r\njquery plugin files from htt-keith-wood.name/calendars.html\r\n\r\n\r\ncss:\r\n \r\n\r\njs:\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\nexample: \r\nput this in a component\r\n MyOptions: any = {\r\n defaultCalender: { name: 'UmmAlQura', lang: 'ar', title: 'Umm Al Qura' },\r\n alternativeCalendar: { name: 'gregorian', lang: 'en', title: 'Gregorian' },\r\n dateFormat: '[dateFormat]',\r\n prevText: 'السابق',\r\n localNumbers: false,\r\n currentText: 'الحالي',\r\n nextText: 'التالي',\r\n todayText: 'اليوم',\r\n onSelect: null,\r\n onShow: null\r\n };\r\n\r\nput this in a view\r\n */\r\n\r\n@Directive({\r\n selector: \"[DatePicker]\",\r\n exportAs: \"DatePicker\",\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => DatePicker),\r\n multi: true\r\n },\r\n generalSettingsSvc\r\n ]\r\n})\r\nexport class DatePicker implements ControlValueAccessor, AfterViewInit {\r\n\r\n static specialDates = [];\r\n\r\n _el: HTMLElement;\r\n // static defaultDateFormat = BERRY?.appSettings?.formats?.defaultDatePickerFormatJs;\r\n propagateChange: any = () => { };\r\n isSubscribed: boolean = true;\r\n weekendDays: number[] = [];\r\n IsChangeTriggeredByValuePass = false;\r\n OldDate = null;\r\n Initilized = false;\r\n\r\n _dateFormat = BERRY.appSettings.formats.defaultDatePickerFormatJs;\r\n _selectedDate: any;\r\n _options: any;\r\n _PassValue = null;\r\n _PassValue2 = null;\r\n\r\n _defaultOptions: any = {\r\n defaultCalender:\r\n BERRY.primaryCalendar === \"umalqura\" ? \"UmmAlQura\" : \"gregorian\",\r\n secondaryCalendar:\r\n BERRY.primaryCalendar === \"umalqura\" ? \"gregorian\" : \"UmmAlQura\",\r\n dateFormat: BERRY.appSettings.formats.defaultDatePickerFormatJs,\r\n localNumbers: false,\r\n onSelect: null,\r\n onShow: null,\r\n lang: BERRY.lang,\r\n specialDates: [], //TODO: inforce concrete type,\r\n weekendClass: \"\",\r\n yearRange: \"c-\" + 20 + \":c+8\" // Changed by Karim AG: to display 24 years per one set of years (instead of 20) [A Fix For Issue #6957]\r\n };\r\n\r\n _calenders = {\r\n gregorian: {\r\n title: { en: \"Gregorian\", ar: \"ميلادي\" }\r\n },\r\n UmmAlQura: {\r\n title: { en: \"Umm Al Qura\", ar: \"ام القرى\" }\r\n }\r\n };\r\n\r\n _defaultOptionsByLang = {\r\n en: {\r\n isRTL: true,\r\n showTrigger: \"#DatePickerIcon\"\r\n },\r\n ar: {\r\n isRTL: true,\r\n prevText: \"السابق\",\r\n currentText: \"الحالي\",\r\n nextText: \"التالي\",\r\n todayText: \"الشهر الحالي\",\r\n closeText: \"إغلاق\",\r\n clearText: \"مسح\",\r\n defaultStatus: \"اختر تاريخ\",\r\n showTrigger: \"#DatePickerIcon\"\r\n }\r\n };\r\n\r\n @Input(\"dateFormat\") set dateFormat(val: string) {\r\n this._dateFormat = val;\r\n this._defaultOptions.dateFormat = val;\r\n }\r\n @Input() setTodayAsDefault: boolean = false;\r\n @Input(\"disabled\") set disabled(value: boolean) {\r\n //$(this._el).attr(\"disabled\", value);\r\n setTimeout(() => {\r\n $(this._el).calendarsPicker(value ? \"disable\" : \"enable\");\r\n }, 0);\r\n\r\n //let prevElment = $(this._el).prev();\r\n //if (prevElment && prevElment[0]) {\r\n // $(prevElment[0]).attr(\"hidden\", value);\r\n //}\r\n }\r\n @Input(\"DatePicker\")\r\n get DatePicker() {\r\n return this._options;\r\n }\r\n set DatePicker(value) {\r\n if (value && value.specialDates && value.specialDates.length > 0) {\r\n let dateList = value.specialDates;\r\n var tempList: any[] = [];\r\n dateList.forEach(x => {\r\n try {\r\n if (\r\n x.Year &&\r\n x.Month &&\r\n x.Day &&\r\n x.Text &&\r\n x.Text != null &&\r\n x.Text != \"\"\r\n ) {\r\n var date = this._defaultOptions.calendar.parseDate(\r\n \"yyyymmdd\",\r\n x.Text\r\n );\r\n var limitYears = false;\r\n if (value.LimitYears) {\r\n limitYears = true;\r\n }\r\n if (\r\n tempList.filter(y => y.Text == x.Text).length == 0 &&\r\n (!limitYears || (limitYears && x.Year <= value.LimitYears))\r\n )\r\n tempList.push(x);\r\n }\r\n } catch (e) { }\r\n });\r\n value.specialDates = tempList;\r\n this._options = value;\r\n } else this._options = value;\r\n }\r\n @Input() set PassValue(val: any) {\r\n this._PassValue = val;\r\n if (this.Initilized) {\r\n this.ChangeValue(val);\r\n }\r\n }\r\n\r\n\r\n setPassValue(val: any, changeTrigger: boolean = true) {\r\n this._PassValue = val;\r\n if (this.Initilized) {\r\n this.ChangeValue(val, changeTrigger);\r\n }\r\n }\r\n @Input() set PassValue2(val: any) {\r\n this._PassValue2 = val;\r\n if (this.Initilized) {\r\n this.ChangeValue2(val);\r\n }\r\n }\r\n @Input() set PassCommand(val: any) {\r\n let me = this;\r\n if (me.Initilized) {\r\n if (val) $(me._el).calendarsPicker(val);\r\n }\r\n }\r\n\r\n @Output(\"c-value-change\") OnValueChange = new EventEmitter();\r\n @Output(\"c-today\") OnLoadToday = new EventEmitter();\r\n @Output(\"c-text-change\") OnTextChange = new EventEmitter();\r\n @Output(\"c-value-hover\") OnValueHover = new EventEmitter();\r\n @Output(\"c-text-hover\") OnTextHover = new EventEmitter();\r\n @Output(\"OnClear\") OnClear = new EventEmitter();\r\n @Output(\"initial-value-loaded\") OnInitialValueLoaded = new EventEmitter();\r\n @Output(\"initial-text-loaded\") OnInitialTextLoaded = new EventEmitter();\r\n @Output(\"OnShow\") OnShow = new EventEmitter();\r\n @Output(\"OnClose\") OnClose = new EventEmitter();\r\n @Output(\"onSetTodayAsDefault\") onSetTodayAsDefault = new EventEmitter();\r\n\r\n constructor(public el: ElementRef, public svc: generalSettingsSvc) {\r\n let me = this;\r\n me._el = el.nativeElement;\r\n // me._defaultOptions.popupContainer = $(me._el).closest(\r\n // \".datepicker-container\"\r\n // );\r\n me._defaultOptions[\"calendar\"] = $.calendars.instance(\r\n me._defaultOptions.defaultCalender,\r\n me._defaultOptions.lang\r\n );\r\n\r\n\r\n }\r\n\r\n triggerClearEvent: boolean = true;\r\n\r\n writeValue(value) {\r\n setTimeout(() => {\r\n if (value && value !== this.selectedDate) {\r\n try {\r\n if ((value).getFullYear() > 1900) {\r\n (value).IsGeorgian = true;\r\n }\r\n } catch (e) { }\r\n this.ChangeValue(value);\r\n } else {\r\n if (this.setTodayAsDefault === true) {\r\n this.setTodayDate();\r\n } else {\r\n let me = this;\r\n me.triggerClearEvent = false;\r\n $(me._el).calendarsPicker(\"setDate\", null);\r\n }\r\n }\r\n }, 10);\r\n }\r\n\r\n registerOnChange(fn) {\r\n this.propagateChange = fn;\r\n }\r\n\r\n registerOnTouched() { }\r\n\r\n get selectedDate() {\r\n return this._selectedDate;\r\n }\r\n\r\n set selectedDate(val) {\r\n this._selectedDate = val;\r\n this.propagateChange(val);\r\n }\r\n\r\n getCalendarDates() {\r\n var dates = $(this._el).calendarsPicker(\"getDate\");\r\n return dates;\r\n }\r\n\r\n getStringCalendarDate() {\r\n var dates = $(this._el).calendarsPicker(\"getDate\");\r\n return dates[0].toString();\r\n }\r\n\r\n //date helpers -----------------------------------------------------------------\r\n //convert return object to our custom object\r\n CustomMapping(date) {\r\n if (date)\r\n return {\r\n Year: date._year,\r\n Month: date._month,\r\n Day: date._day,\r\n Original: date,\r\n Text: this.formatDate(date),\r\n ISODate: date.toJSDate().toISOString()\r\n };\r\n else return null;\r\n }\r\n\r\n getAlternativeDate(date) {\r\n return this._defaultOptions.alternativeCalendar.instance.fromJD(\r\n date.toJD()\r\n );\r\n }\r\n\r\n formatDate(date) {\r\n return date.formatDate(this._defaultOptions.dateFormat);\r\n }\r\n\r\n ChangeValue(val: any, changeTrigger: boolean = true) {\r\n var me = this;\r\n\r\n if (changeTrigger)\r\n me.IsChangeTriggeredByValuePass = true;\r\n var isGeorgian = false;\r\n\r\n if (val) {\r\n if (typeof val.IsGeorgian != \"undefined\" && val.IsGeorgian === true)\r\n isGeorgian = true;\r\n val = val.toString();\r\n if (\r\n isGeorgian ||\r\n val.length == \"2018-08-09T13:32:00.000\".length ||\r\n val.length == \"2018-01-22T10:20:46.881Z\".length ||\r\n val.length ==\r\n \"Thu Aug 02 2018 16:18:49 GMT+0300 (Eastern European Summer Time)\"\r\n .length\r\n ) {\r\n var date = me._defaultOptions.calendar.fromJSDate(new Date(val));\r\n $(me._el).calendarsPicker(\"setDate\", date);\r\n } else if (val.length == \"14371114000000\".length) {\r\n var date = me._defaultOptions.calendar.parseDate(\r\n \"yyyymmdd\",\r\n val.substr(0, 8)\r\n );\r\n $(me._el).calendarsPicker(\"setDate\", date);\r\n } else if (val.length == \"14371114\".length) {\r\n var date = me._defaultOptions.calendar.parseDate(\"yyyymmdd\", val);\r\n $(me._el).calendarsPicker(\"setDate\", date);\r\n } else if (val.length == \"1437-11-14\".length) {\r\n var date = me._defaultOptions.calendar.parseDate(\r\n me._defaultOptions.calendar.W3C,\r\n val\r\n );\r\n $(me._el).calendarsPicker(\"setDate\", date);\r\n } else {\r\n $(me._el).calendarsPicker(\"setDate\", val);\r\n }\r\n } else {\r\n $(me._el).val(\"\");\r\n }\r\n }\r\n\r\n ChangeValue2(val: Date) {\r\n var me = this;\r\n $(me._el).calendarsPicker(\"setDate\", val);\r\n }\r\n\r\n nextDay() {\r\n var me = this;\r\n\r\n me.IsChangeTriggeredByValuePass = true;\r\n let date = $(me._el).calendarsPicker(\"getDate\");\r\n let nextDay = me._defaultOptions.calendar\r\n .parseDate(me._defaultOptions.calendar.W3C, date)\r\n .add(1, \"d\");\r\n $(me._el).calendarsPicker(\"setDate\", nextDay);\r\n }\r\n\r\n previousDay() {\r\n var me = this;\r\n\r\n me.IsChangeTriggeredByValuePass = true;\r\n let date = $(me._el).calendarsPicker(\"getDate\");\r\n let previousDay = me._defaultOptions.calendar\r\n .parseDate(me._defaultOptions.calendar.W3C, date)\r\n .add(-1, \"d\");\r\n $(me._el).calendarsPicker(\"setDate\", previousDay);\r\n }\r\n\r\n ClearValue() {\r\n var me = this;\r\n $(me._el).calendarsPicker(\"clear\");\r\n }\r\n\r\n ngAfterViewInit() {\r\n var me = this;\r\n if (BERRY.appSettings.keys.markHolidaysOnDatepicker && (!BERRY.Lookups.Holidays || !BERRY.Lookups.Weekends)) {\r\n me.svc\r\n .GetDatepickerHolidays()\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data != null && data.result == true) {\r\n if (data.weekend.Value != null) {\r\n BERRY.Lookups.Weekends[0].Value = data.weekend.Value;\r\n me.weekendDays = BERRY.Lookups.Weekends[0].Value.split(',').map(Number);\r\n }\r\n if (data.holidays != null) {\r\n BERRY.Lookups.Holidays = data.holidays;\r\n me._defaultOptions.specialDates.push(...BERRY.Lookups.Holidays);\r\n }\r\n }\r\n });\r\n }\r\n else {\r\n if (BERRY.Lookups.Weekends && BERRY.Lookups.Weekends.length > 0)\r\n me.weekendDays = !!BERRY.Lookups.Weekends[0].Value ? BERRY.Lookups.Weekends[0].Value.split(',').map(Number) : [];\r\n\r\n if (BERRY.Lookups.Holidays && BERRY.Lookups.Holidays.length > 0)\r\n me._defaultOptions.specialDates.push(...BERRY.Lookups.Holidays);\r\n }\r\n\r\n\r\n //load custom and default options-------------------------------------------\r\n\r\n //adding custom options to default options\r\n for (let op in me._defaultOptionsByLang[me._defaultOptions.lang]) {\r\n me._defaultOptions[op] =\r\n me._defaultOptionsByLang[me._defaultOptions.lang][op];\r\n }\r\n\r\n for (let op in me._options) {\r\n me._defaultOptions[op] = me._options[op];\r\n }\r\n\r\n if (me._defaultOptions.secondaryCalendar) {\r\n me._defaultOptions.alternativeCalendar = {};\r\n me._defaultOptions.alternativeCalendar.instance = $.calendars.instance(\r\n me._defaultOptions.secondaryCalendar,\r\n me._defaultOptions.lang\r\n );\r\n }\r\n //to paypass angular exception : \"expression has changed after it was checked. Previous value\"\r\n /*\r\n That's exactly it. In development mode the change detection runs a second time and compares the current value with the first run.\r\n If the value differs, then it \"thinks\" that the change was caused by itself. That's why it throws. However this doesn't happen in production mode with enableProdMode().\r\n \r\n */\r\n\r\n setTimeout(() => {\r\n var dateToday = this._defaultOptions.calendar.today();\r\n var today = null;\r\n today = this.CustomMapping(dateToday);\r\n\r\n if (this._defaultOptions.alternativeCalendar)\r\n today.Alternative = this.CustomMapping(\r\n this.getAlternativeDate(dateToday)\r\n );\r\n\r\n this.OnLoadToday.emit(today);\r\n }, 100);\r\n //events-----------------------------------------------------------\r\n //events-----------------------------------------------------------\r\n //return selected value and text , called by onShow\r\n var onSelect = dates => {\r\n var item = null;\r\n var text = \"\";\r\n\r\n if (dates.length > 0) {\r\n var date = dates[0];\r\n\r\n item = this.CustomMapping(date);\r\n text = item.Text;\r\n\r\n if (this.OldDate) item.OldDate = item;\r\n\r\n if (this._defaultOptions.alternativeCalendar) {\r\n item.Alternative = this.CustomMapping(this.getAlternativeDate(date));\r\n $(me._el).data(\"calendarsPicker\").strGregorianDate =\r\n item.Alternative.Text;\r\n }\r\n }\r\n\r\n if (!item && this.triggerClearEvent) {\r\n this.OnClear.emit(null);\r\n } else if (!item) {\r\n //do nothing\r\n }\r\n else if (!this.IsChangeTriggeredByValuePass) {\r\n this.OnTextChange.emit(text);\r\n this.OnValueChange.emit(item);\r\n } else {\r\n this.IsChangeTriggeredByValuePass = false;\r\n this.OnInitialTextLoaded.emit(text);\r\n this.OnInitialValueLoaded.emit(item);\r\n }\r\n this.triggerClearEvent = true;\r\n this.OldDate = item;\r\n\r\n if (!item) {\r\n this.selectedDate = null;\r\n } else {\r\n this.selectedDate = this.getStringCalendarDate();\r\n }\r\n };\r\n\r\n //return hover value and text\r\n var onHover = (date, selectable) => {\r\n var item = null;\r\n var text = \"\";\r\n\r\n if (selectable) {\r\n item = this.CustomMapping(date);\r\n text = item.Text;\r\n\r\n if (this._defaultOptions.alternativeCalendar)\r\n item.Alternative = this.CustomMapping(this.getAlternativeDate(date));\r\n }\r\n\r\n this.OnTextHover.emit(text);\r\n this.OnValueHover.emit(item);\r\n };\r\n\r\n let onScroll = false;\r\n let scrollHandler = function (s) {\r\n if (onScroll) {\r\n const calendarsCloseBtn: any = document.querySelector(\".calendars-cmd-close\");\r\n if (!!calendarsCloseBtn) {\r\n calendarsCloseBtn.focus();\r\n calendarsCloseBtn.click();\r\n (document.querySelector('.calendars') as any).style.visibility = \"hidden\";\r\n }\r\n onScroll = false;\r\n }\r\n\r\n\r\n };\r\n //clear hover data\r\n var onClose = dates => {\r\n this.OnTextHover.emit(null);\r\n this.OnValueHover.emit(null);\r\n this.OnClose.emit({});\r\n onScroll = false;\r\n $('div').off(\"scroll\", scrollHandler);\r\n };\r\n\r\n\r\n\r\n\r\n //custom rendering for showing hover date in altranetive calender\r\n var onShow = function (picker, calendar, inst) {\r\n onScroll = true;\r\n $(\"div:not(.calendars-popup)\").scroll(scrollHandler);\r\n me.OnShow.emit({});\r\n var isTR = inst.options.renderer.selectedClass === \"ui-state-active\";\r\n\r\n let altCalendarTitle = me._calenders[me._defaultOptions.secondaryCalendar].title[me._defaultOptions.lang];\r\n let defaultStatus = altCalendarTitle + \": \" + me.CustomMapping(me.getAlternativeDate(inst.drawDate)).Text;\r\n\r\n let status = $('
    ' + defaultStatus + \"
    \").insertAfter(picker.find(\".calendars-month-row:last,.ui-datepicker-row-break:last\"));\r\n\r\n let target = this;\r\n let renderer = inst.options.renderer;\r\n picker.find(renderer.daySelector + \" a\").hover(function () { \r\n let MainDate = $(target).calendarsPicker(\"retrieveDate\", this);\r\n if (me._defaultOptions.alternativeCalendar) {\r\n let AltDate = me.getAlternativeDate(MainDate);\r\n let AltDateFormatted = me.formatDate(AltDate);\r\n\r\n let altCalendarTitle = me._calenders[me._defaultOptions.secondaryCalendar].title[me._defaultOptions.lang];\r\n status.text(altCalendarTitle + \": \" + AltDateFormatted);\r\n }\r\n let isSelectable = $(target).calendarsPicker(\"isSelectable\", MainDate);\r\n onHover(MainDate, isSelectable);\r\n });\r\n\r\n picker.find(renderer.daySelector + \" a\").mouseout(function () {\r\n \r\n let MainDate = inst.drawDate\r\n if (me._defaultOptions.alternativeCalendar) {\r\n let AltDate = me.getAlternativeDate(MainDate);\r\n let AltDateFormatted = me.formatDate(AltDate);\r\n\r\n let altCalendarTitle = me._calenders[me._defaultOptions.secondaryCalendar].title[me._defaultOptions.lang];\r\n status.text(altCalendarTitle + \": \" + AltDateFormatted );\r\n }\r\n });\r\n\r\n };\r\n\r\n me._defaultOptions.onShow = onShow;\r\n me._defaultOptions.onClose = onClose;\r\n me._defaultOptions.onSelect = onSelect;\r\n\r\n //calendar supposes that the values are static on initialization\r\n //to insure that these dates are filled properly add\r\n //the datepicker component dynamically to the view\r\n me._defaultOptions.onDate = (date, current): any => {//no concrete type : htt-keith-wood.name/datepickRef.html#onDate\r\n if (\r\n this._defaultOptions.specialDates &&\r\n this._defaultOptions.specialDates.length > 0\r\n ) {\r\n var customDate = this.CustomMapping(date);\r\n var customDateSettings: SpecialCalendarDate = this._defaultOptions.specialDates.find(\r\n e => {\r\n let FirstCheck =\r\n e.Day === customDate.Day &&\r\n e.Month === customDate.Month &&\r\n e.Year === customDate.Year;\r\n if (!FirstCheck) {\r\n let DateConverted = me._defaultOptions.calendar.parseDate(\r\n \"yyyymmdd\",\r\n e.Text\r\n );\r\n let FirstCheck2 =\r\n DateConverted._day === customDate.Day &&\r\n DateConverted._month === customDate.Month &&\r\n DateConverted._year === customDate.Year;\r\n return FirstCheck2;\r\n } else {\r\n return true;\r\n }\r\n }\r\n );\r\n if (customDateSettings && current) {\r\n if (me.weekendDays.indexOf(date.dayOfWeek()) > -1)\r\n return { dateClass: customDateSettings.CssClass + \" calendars-weekend\" }\r\n else\r\n return { dateClass: customDateSettings.CssClass };\r\n }\r\n }\r\n if (me.weekendDays.indexOf(date.dayOfWeek()) > -1 && current) {\r\n return { dateClass: \"calendars-weekend\" };\r\n }\r\n return {}; //do nothing\r\n };\r\n\r\n //me._defaultOptions.onShow = $.calendarsPicker.hoverCallback(onHover);\r\n\r\n //detect text change\r\n $(me._el).change(() => { });\r\n\r\n //html element attr----------------------------------------------------------\r\n //set textbox as readonly to prevent user changing text manually\r\n\r\n $(me._el).attr(\"readonly\", \"readonly\");\r\n $(me._el).calendarsPicker(me._defaultOptions);\r\n\r\n if (me._PassValue) {\r\n me.ChangeValue(me._PassValue);\r\n }\r\n if (me._PassValue2) {\r\n me.ChangeValue2(me._PassValue2);\r\n }\r\n me.Initilized = true;\r\n //me.svc.GetWeekends().pipe(takeWhile(() => me.IsSubscribed)).subscribe(data => {\r\n // me.selectedWeekendDays = data.Value.split(',');\r\n //});\r\n\r\n $(me._el).click(function () {\r\n try {\r\n if (me._el.nodeName != \"DIV\") {\r\n $(me._el).calendarsPicker('show');\r\n }\r\n\r\n } catch (error) {\r\n }\r\n\r\n });\r\n }\r\n\r\n setTodayDate() {\r\n let me = this;\r\n var dateToday = me._defaultOptions.calendar.today();\r\n this.ChangeValue(dateToday);\r\n this.onSetTodayAsDefault.emit(dateToday);\r\n //$(me._el).calendarsPicker(\"setDate\", dateToday);\r\n }\r\n}","import {\r\n Directive,\r\n ElementRef,\r\n Input,\r\n Output,\r\n AfterViewInit,\r\n EventEmitter\r\n} from \"@angular/core\";\r\nimport { AuthService } from \"src/app/framework/services/auth.service\";\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\n\r\n\r\ndeclare var $: any;\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Directive({\r\n selector: \"[combobox]\",\r\n exportAs: \"kendoCombobox\"\r\n})\r\nexport class kendoCombobox implements AfterViewInit {\r\n @Output() blur = new EventEmitter();\r\n @Output() focus = new EventEmitter();\r\n\r\n public _noDropdownArrow: boolean = false;\r\n @Input(\"no-dropdown-arrow\") set noDropdownArrow(value: boolean) {\r\n this._noDropdownArrow = value;\r\n }\r\n get noDropdownArrow(): boolean {\r\n return this._noDropdownArrow;\r\n }\r\n\r\n public _dependsOn = null;\r\n\r\n @Input(\"dependsOn\") set dependsOn(val) {\r\n if (this._dependsOn == val) return;\r\n this._dependsOn = val;\r\n if (this.component) {\r\n this.component.value(null);\r\n this.component.setDataSource(this.datasource);\r\n setTimeout(() => {\r\n this.updateValue(null)\r\n if (this.options.multiselect) this.updateItems(null);\r\n else {\r\n this.updateItem(null);\r\n if (!this.options.autocomplete) this.updateText(null);\r\n }\r\n }, 100);\r\n }\r\n }\r\n\r\n get dependsOn() {\r\n return this._dependsOn;\r\n }\r\n\r\n public _value = null;\r\n\r\n @Output() valueChange = new EventEmitter();\r\n\r\n @Input()\r\n set value(val) {\r\n if (this._value == val) return;\r\n this._value = val;\r\n if (this.component) {\r\n this.component.value(val);\r\n setTimeout(() => this.component.trigger(\"change\"), 100); //timeout is needed, otherwise the change event will recall this method and cause troubles\r\n }\r\n }\r\n\r\n updateValue(val) {\r\n this._value = val;\r\n this.valueChange.emit(this._value);\r\n }\r\n\r\n get value() {\r\n return this._value;\r\n }\r\n\r\n public _text = null;\r\n\r\n @Output() textChange = new EventEmitter();\r\n\r\n @Input()\r\n set text(val) {\r\n if (this.options && this.options.multiselect)\r\n throw \"Property [text] can't be used when option multiselect is enabled\";\r\n\r\n if (this._text == val) return;\r\n this._text = val;\r\n if (this.component && !this.options.multiselect) {\r\n if (this.comboBoxType == ComboBoxType.kendoAutoComplete) {\r\n this.component.value(val);\r\n } else if (this.value) {\r\n let item = {};\r\n item[this.options.dataValueField] = this.value;\r\n item[this.options.dataTextField] = val;\r\n if (this.options.otherExpectedFields) {\r\n for (let f in this.options.otherExpectedFields) {\r\n item[this.options.otherExpectedFields[f]] = null;\r\n }\r\n }\r\n this.item = item;\r\n } else this.component.text(val);\r\n }\r\n }\r\n\r\n updateText(val) {\r\n if (this.options && this.options.multiselect)\r\n throw \"Property [text] can't be used when option multiselect is enabled\";\r\n\r\n this._text = val;\r\n this.textChange.emit(this._text);\r\n }\r\n\r\n get text() {\r\n return this._text;\r\n }\r\n\r\n public _item = null;\r\n\r\n get item() {\r\n return this._item;\r\n }\r\n\r\n @Output() itemChange = new EventEmitter();\r\n\r\n @Input()\r\n set item(val) {\r\n var me = this;\r\n setTimeout(() => {\r\n\r\n if (me.options && me.options.multiselect)\r\n throw \"Property [item] can't be used when option multiselect is enabled, use [items] instead\";\r\n\r\n if (me._item == val) return;\r\n\r\n if (me.options && me.component) {\r\n\r\n if (!val || $.isEmptyObject(val)) {\r\n me.component.value(null);\r\n } else {\r\n\r\n var data: Array = me.component.dataSource.data();\r\n\r\n var index = data.indexOf(\r\n data.find(\r\n e =>\r\n e[me.options.dataValueField] == val[me.options.dataValueField]\r\n )\r\n );\r\n\r\n if (index < 0) {\r\n me.component.dataSource.add(val);\r\n index = data.length - 1;\r\n }\r\n\r\n if (val[me.options.dataValueField]) {\r\n me._item = val;\r\n me.component.value(val[me.options.dataValueField]);\r\n me.component.select(index);\r\n }\r\n }\r\n }\r\n }, 10);\r\n }\r\n\r\n updateItem(val) {\r\n if (this.options.multiselect)\r\n throw \"Property [item] can't be used when option multiselect is enabled, use [items] instead\";\r\n\r\n this._item = val;\r\n this.itemChange.emit(this._item);\r\n }\r\n\r\n public _items = null;\r\n\r\n get items() {\r\n return this._items;\r\n }\r\n\r\n @Output() itemsChange = new EventEmitter();\r\n\r\n @Input()\r\n set items(val: Array) {\r\n if (this.options && !this.options.multiselect)\r\n throw \"Property [items] can't be used when option multiselect is disabled, use [item] instead\";\r\n\r\n if (this._items == val) return;\r\n this._items = val;\r\n if (this.component) {\r\n if (val && val.length) {\r\n val = val.map(i => this.mapItem(i));\r\n }\r\n this.component.dataSource.data([]);\r\n\r\n for (let m in val) {\r\n this.component.dataSource.add(val[m]);\r\n }\r\n\r\n if (val != null && val.length == 0) {\r\n try {\r\n this.component.value(null);\r\n } catch (e) {\r\n console.warn(\r\n \"Trying to clear kendo field but internal Exception happened!\"\r\n );\r\n console.warn(e);\r\n }\r\n } else this.component.value(val);\r\n }\r\n }\r\n\r\n public mapItem(value) {\r\n let result = {};\r\n\r\n if (this.options.dataValueField)\r\n result[this.options.dataValueField] = `${value[this.options.dataValueField]\r\n }`;\r\n\r\n if (this.options.dataTextField)\r\n result[this.options.dataTextField] = value[this.options.dataTextField];\r\n\r\n return result;\r\n }\r\n\r\n updateItems(val) {\r\n if (this.options && !this.options.multiselect)\r\n throw \"Property [items] can't be used when option multiselect is disabled, use [item] instead\";\r\n\r\n this._items = val;\r\n this.itemsChange.emit(this._items);\r\n }\r\n\r\n public element: HTMLElement;\r\n public component: any;\r\n public comboBoxType: ComboBoxType;\r\n @Input(\"combobox\") userOptions: IComboboxOptions;\r\n\r\n public _placeholder: string = \"\";\r\n @Input(\"placeholder\")\r\n public get placeholder() {\r\n return this._placeholder;\r\n }\r\n public set placeholder(value: string) {\r\n try {\r\n if (this._placeholder != value) {\r\n if (this.savedOptions != null) {\r\n this.savedOptions.placeholder = value;\r\n let $element = $(this.element);\r\n var sComboBoxType = ComboBoxType[this.comboBoxType];\r\n this.component = $element[sComboBoxType](this.savedOptions).data(\r\n sComboBoxType\r\n );\r\n }\r\n }\r\n } catch (e) { }\r\n this._placeholder = value;\r\n }\r\n\r\n public options: IComboboxOptions;\r\n constructor(el: ElementRef, private authService: AuthService) {\r\n this.element = el.nativeElement;\r\n }\r\n\r\n public datasource: any;\r\n\r\n public _enable: boolean = true;\r\n @Input(\"enable\") set enableCtlr(val) {\r\n setTimeout(() => {\r\n this._enable = val;\r\n var autocomplete = $(this.element).data(\"kendoComboBox\");\r\n if (autocomplete) autocomplete.enable(val);\r\n }, 0);\r\n }\r\n get enable(): boolean {\r\n var isDisabled = $(this.element)\r\n .parent()\r\n .hasClass(\"k-state-disabled\");\r\n return !isDisabled;\r\n }\r\n\r\n @Input(\"Enabled\") set Enabled(status: boolean) {\r\n setTimeout(() => {\r\n this._enable = status;\r\n var autocomplete = $(this.element).data(\"kendoComboBox\");\r\n if (this.options.multiselect)\r\n autocomplete = $(this.element).data(\"kendoMultiSelect\");\r\n if (autocomplete) autocomplete.enable(status);\r\n if (!status)\r\n $(this.element)\r\n .parent()\r\n .addClass(\"k-state-disabled\");\r\n else\r\n $(this.element)\r\n .parent()\r\n .removeClass(\"k-state-disabled\");\r\n }, 0);\r\n }\r\n\r\n setAttribute(attributeName: string) {\r\n\r\n setTimeout(() => {\r\n let Value = $(this.element).attr(attributeName);\r\n if (!!Value) {\r\n let doc: any = document;\r\n let previousSibling = doc\r\n\r\n .querySelector(`[${attributeName}=\"${Value}\"]`)\r\n\r\n ?.previousSibling;\r\n\r\n if (!!previousSibling?.querySelector('input')) {\r\n\r\n previousSibling.querySelector(\"input\")\r\n\r\n .setAttribute(attributeName, Value);\r\n\r\n $(this.element).removeAttr(attributeName)\r\n\r\n }\r\n }\r\n }, 500);\r\n\r\n }\r\n ngAfterViewInit() {\r\n let that = this;\r\n\r\n this.setAttribute('data-automation-id');\r\n\r\n\r\n that.options = {\r\n allowFreeText: true,\r\n freeTextMaxLength: -1,\r\n allowSearch: true,\r\n dataTextField: \"text\",\r\n dataValueField: \"value\",\r\n datasource: null,\r\n displaytemplate: null,\r\n popupHeight: 200,\r\n serverDatasource: {\r\n enabled: false,\r\n url: null,\r\n method: \"GET\",\r\n resultsField: \"items\",\r\n searchField: null,\r\n additionalParams: null\r\n },\r\n placeholder: null,\r\n cascadeFrom: null,\r\n cascadeFromField: null,\r\n autoBind: true,\r\n suggest: false,\r\n multiselect: false,\r\n autocomplete: false,\r\n enable: that._enable\r\n };\r\n\r\n if (that.userOptions) {\r\n if (that.userOptions.serverDatasource) {\r\n Object.assign(\r\n that.options.serverDatasource,\r\n that.userOptions.serverDatasource\r\n );\r\n Object.assign(\r\n that.userOptions.serverDatasource,\r\n that.options.serverDatasource\r\n );\r\n }\r\n\r\n Object.assign(that.options, that.userOptions);\r\n }\r\n\r\n if (that.placeholder) that.options.placeholder = that.placeholder;\r\n\r\n //determine the component type\r\n if (!that.options.allowSearch)\r\n that.comboBoxType = ComboBoxType.kendoDropDownList;\r\n else if (that.options.multiselect)\r\n that.comboBoxType = ComboBoxType.kendoMultiSelect;\r\n else if (that.options.autocomplete)\r\n that.comboBoxType = ComboBoxType.kendoAutoComplete;\r\n else that.comboBoxType = ComboBoxType.kendoComboBox;\r\n var header: any = {}\r\n if (!!localStorage.getItem('OnBehalfUserId')) {\r\n header = {\r\n 'Authorization': `Bearer ${this.authService.token}`,\r\n 'Accept-Language': BERRY?.languages[BERRY?.lang || localStorage.getItem('lang') || 'ar']?.toLowerCase(),\r\n 'OnBehalfUserId': localStorage.getItem('OnBehalfUserId')\r\n };\r\n }\r\n else {\r\n header = {\r\n 'Authorization': `Bearer ${this.authService.token}`,\r\n 'Accept-Language': BERRY?.languages[BERRY?.lang || localStorage.getItem('lang') || 'ar']?.toLowerCase()\r\n };\r\n }\r\n\r\n if (BERRY?.onOffFeatures?.Assignments && !!localStorage.getItem('AssignmentUserId')) {\r\n header['Assignment-User-Id'] = localStorage.getItem('AssignmentUserId');\r\n }\r\n\r\n // if server-side datasource is enabled\r\n if (that.options.serverDatasource.enabled) {\r\n that.datasource = {\r\n serverFiltering: that.options.serverDatasource.searchField != null,\r\n transport: {\r\n read: {\r\n url: that.options.serverDatasource.url,\r\n type: that.options.serverDatasource.method,\r\n dataType: \"json\",\r\n headers: header,\r\n xhrFields: {\r\n withCredentials: true\r\n }\r\n\r\n },\r\n parameterMap: function (data, type) {\r\n let query: { [key: string]: string } = {};\r\n if (\r\n that.options.serverDatasource.searchField &&\r\n data &&\r\n data.filter &&\r\n data.filter.filters &&\r\n data.filter.filters.length > 0\r\n ) {\r\n let filterFor = data.filter.filters[0];\r\n if (filterFor) {\r\n let key = that.options.serverDatasource.searchField;\r\n query[key] = filterFor.value;\r\n }\r\n }\r\n\r\n if (that.options.serverDatasource.additionalParams) {\r\n var params = that.options.serverDatasource.additionalParams();\r\n Object.assign(query, params);\r\n }\r\n\r\n if (that.dependsOn && typeof that.dependsOn == \"object\") {\r\n Object.assign(query, that.dependsOn);\r\n }\r\n\r\n return query;\r\n }\r\n },\r\n schema: {\r\n data: function (data) {\r\n if (that.options.serverDatasource.resultsField)\r\n data = data[that.options.serverDatasource.resultsField];\r\n if (that.options.allowFreeText) {\r\n //hack to allow adding new items if returned from server with negative Id\r\n let dataItems: Array = that.component.dataItems();\r\n var minId = 0;\r\n dataItems.forEach(item => {\r\n if (item[that.options.dataValueField] < minId) {\r\n minId = item[that.options.dataValueField];\r\n }\r\n });\r\n\r\n minId -= 1;\r\n\r\n data.forEach(item => {\r\n if (item[that.options.dataValueField] < 0) {\r\n item[that.options.dataValueField] = minId--;\r\n }\r\n });\r\n }\r\n\r\n return data;\r\n }\r\n }\r\n };\r\n } else {\r\n that.datasource = that.options.datasource;\r\n }\r\n\r\n let noDataTemplate = `
    ${BERRY?.loc?.kendoLocalization?.NoData}
    `;\r\n\r\n if (that.options.noDataTemplate) {\r\n noDataTemplate = that.options.noDataTemplate;\r\n } else if (that.options.noDataAdditionalTemplate) {\r\n let $template = $(noDataTemplate);\r\n\r\n noDataTemplate = (obj => {\r\n let template = $template;\r\n\r\n let additional: any = that.options.noDataAdditionalTemplate;\r\n\r\n if ($.isFunction(additional)) additional = additional(obj);\r\n\r\n if (typeof additional === \"string\") additional = $(additional);\r\n\r\n template = template.add(\"
    \").add(additional);\r\n\r\n return template;\r\n });\r\n }\r\n\r\n let kendoOptions = {\r\n dataTextField: that.options.dataTextField,\r\n dataValueField: that.options.dataValueField,\r\n dataSource: that.datasource,\r\n filter: that.options.allowSearch ? \"contains\" : \"none\",\r\n suggest: that.options.suggest, //similar to autocomplete\r\n minLength: that.options.multiselect\r\n ? 0\r\n : that.options.serverDatasource.enabled &&\r\n that.options.serverDatasource.searchField != null\r\n ? that.options.minLength || 2\r\n : 0,\r\n caseSensitive: false,\r\n template: that.options.displayTemplate,\r\n valuetemplate: that.options.displayTemplate,\r\n height: that.options.popupHeight,\r\n cascadeFrom: that.options.cascadeFrom,\r\n cascadeFromField: that.options.cascadeFromField,\r\n autoBind: that.options.autoBind,\r\n placeholder: that.options.placeholder,\r\n noDatatemplate: noDataTemplate,\r\n noDataTemplate: noDataTemplate,\r\n value: null,\r\n change: () => {\r\n var comp = that.component; //this is the componenet\r\n\r\n let value = comp.value();\r\n\r\n if (that.comboBoxType == ComboBoxType.kendoMultiSelect) {\r\n let dataItems: Array = comp.dataItems();\r\n that.updateValue(value);\r\n that.updateItems(dataItems);\r\n //that.component.input.blur();\r\n } else {\r\n let text: string = null;\r\n if (that.comboBoxType == ComboBoxType.kendoAutoComplete) {\r\n text = value;\r\n } else {\r\n text = comp.text();\r\n }\r\n\r\n let dataItem = comp.dataItem();\r\n if (dataItem != null) {\r\n that.updateValue(value);\r\n that.updateItem(dataItem);\r\n that.updateText(text);\r\n } else {\r\n // we have entered free text\r\n that.updateValue(null);\r\n that.updateItem(null);\r\n if (!that.options.allowFreeText) {\r\n that.updateText(null);\r\n comp.value(null);\r\n } else {\r\n if (\r\n that.options.freeTextMaxLength > 0 &&\r\n text.length > that.options.freeTextMaxLength\r\n ) {\r\n text = text.substr(0, that.options.freeTextMaxLength);\r\n }\r\n that.updateText(text);\r\n }\r\n }\r\n }\r\n }\r\n };\r\n that.savedOptions = kendoOptions;\r\n let $element = $(that.element);\r\n setTimeout(() => {\r\n\r\n $element.parent().find(\".k-i-close\").attr(\"title\", BERRY.getText('Clear', 'kendoLocalization'))\r\n }, 0);\r\n\r\n if (that.comboBoxType == ComboBoxType.kendoMultiSelect && that.items) {\r\n var values = that.items.map(i => that.mapItem(i));\r\n kendoOptions.value = values;\r\n }\r\n\r\n var sComboBoxType = ComboBoxType[that.comboBoxType];\r\n that.component = $element[sComboBoxType](kendoOptions).data(sComboBoxType);\r\n //that.component.refresh();\r\n kendoCombobox.handleBlurEmitterForComboxAndAutoComplete(that, $element);\r\n\r\n var widget = $(that.component.input);\r\n widget.on(\"focus\", function (e) {\r\n that.focus.emit(that.component);\r\n });\r\n\r\n if (that.value != null) {\r\n if (that.text && !that.options.multiselect) {\r\n let item = {};\r\n item[this.options.dataValueField] = that.value;\r\n item[this.options.dataTextField] = that.text;\r\n if (this.options.otherExpectedFields) {\r\n for (let f in this.options.otherExpectedFields) {\r\n item[this.options.otherExpectedFields[f]] = null;\r\n }\r\n }\r\n that.item = item;\r\n\r\n var data: Array = that.component.dataSource.data();\r\n\r\n var found =\r\n data.indexOf(\r\n data.find(e => e[this.options.dataValueField] == that.value)\r\n ) >= 0;\r\n\r\n if (!found) that.component.dataSource.add(that.item);\r\n }\r\n that.component.value(that.value);\r\n } else if (that.item && !that.options.multiselect) {\r\n var data: Array = that.component.dataSource.data();\r\n var index = data.indexOf(\r\n data.find(\r\n e =>\r\n e[that.options.dataValueField] ==\r\n that.item[that.options.dataValueField]\r\n )\r\n );\r\n if (index < 0) {\r\n that.component.dataSource.add(that.item);\r\n index = data.length - 1;\r\n }\r\n that.component.value(that.item[that.options.dataValueField]);\r\n that.component.select(index);\r\n } else if (that.items && that.options.multiselect) {\r\n //that.component.value(that.item);\r\n //var values = that.items.map((i) => that.mapItem(i));\r\n //that.component.value(values);\r\n } else if (that.text && !that.options.multiselect) {\r\n that.component.text(that.text);\r\n }\r\n\r\n this.hideDropDownArrowIfEnabled();\r\n this.onClearHandler();\r\n }\r\n\r\n private onClearHandler(): void {\r\n $(this.element)\r\n .parent()\r\n .find(\".k-i-close\").click(() => {\r\n const combobox = $(this.element).data(\"kendoComboBox\");\r\n combobox.close();\r\n })\r\n }\r\n\r\n public savedOptions: any = null;\r\n public static handleBlurEmitterForComboxAndAutoComplete(that, $element) {\r\n if (that.comboBoxType !== ComboBoxType.kendoMultiSelect) {\r\n $element.on(\"focus blur\", function (e) {\r\n that.blur.emit(e);\r\n });\r\n }\r\n }\r\n\r\n public hideDropDownArrowIfEnabled() {\r\n if (this.noDropdownArrow === true) {\r\n let parentElem = $(this.element).parent();\r\n parentElem.find(\".k-select\").remove();\r\n parentElem.addClass(\"no-dropdown-arrow\");\r\n }\r\n }\r\n\r\n close() {\r\n this.component.close();\r\n }\r\n\r\n updateDataSource() {\r\n if (this.component) {\r\n this.component.value(null);\r\n this.component.setDataSource(this.userOptions.datasource);\r\n\r\n this.updateValue(null);\r\n if (this.options.multiselect) this.updateItems(null);\r\n else {\r\n this.updateItem(null);\r\n if (!this.options.autocomplete) this.updateText(null);\r\n }\r\n }\r\n }\r\n\r\n clear() {\r\n if (this.options.multiselect) {\r\n this.component.value(\"\");\r\n this.component.dataSource.data([]);\r\n } else {\r\n this.component.dataSource.data([]);\r\n this.component.text(\"\"); // clears visible text\r\n this.component.value(\"\");\r\n }\r\n }\r\n}\r\n\r\nenum ComboBoxType {\r\n kendoMultiSelect,\r\n kendoComboBox,\r\n kendoAutoComplete,\r\n kendoDropDownList\r\n}\r\n\r\nexport interface IComboboxServerDatasourceOptions {\r\n enabled?: boolean; //false\r\n url?: string; //null\r\n method?: string; //GET\r\n searchField?: string; //null\r\n resultsField?: string; //items\r\n additionalParams?: () => { [key: string]: string }; //null\r\n}\r\n\r\nexport interface IComboboxOptions {\r\n serverDatasource?: IComboboxServerDatasourceOptions;\r\n datasource?: Array; //[]\r\n dataTextField?: string; //text\r\n dataValueField?: string; //value\r\n otherExpectedFields?: Array;\r\n allowSearch?: boolean; //true\r\n allowFreeText?: boolean; //false\r\n freeTextMaxLength?: number; //-1\r\n displayTemplate?: string | ((arg: any) => any); //null\r\n popupHeight?: number; //200\r\n cascadeFrom?: string; //null\r\n cascadeFromField?: string; //null\r\n autoBind?: boolean; //true\r\n placeholder?: string; //null\r\n noDataTemplate?: string | ((arg: any) => any); //null\r\n noDataAdditionalTemplate?: string | ((arg: any) => any); //null\r\n suggest?: boolean; //false, //buggy, prefer to keep it false\r\n multiselect?: boolean; //false\r\n autocomplete?: boolean; //true\r\n minLength?: number;\r\n}\r\n","import { cloneFunc } from \"../../utils/clone\";\r\nimport {\r\n Directive,\r\n ElementRef,\r\n Input,\r\n Output,\r\n AfterViewInit,\r\n EventEmitter\r\n} from \"@angular/core\";\r\nimport { Subject } from \"rxjs\";\r\nimport { AuthService } from \"src/app/framework/services/auth.service\";\r\n\r\ndeclare var $: any;\r\ndeclare var kendo: any;\r\ndeclare var BERRY: any;\r\n\r\n//example:\r\n/**\r\nadd this to component directives\r\n@Component({\r\n \r\n directives: [ kendoAutoComplete],\r\n \r\n})\r\n\r\n*****\r\nput this in a component\r\n MyOptions: any = {\r\n dataTextField: \"Name\",\r\n serviceUrl: \"Home/GetAutoCompleteSource\",// {{../Home/GetAutoCompleteSource}}\r\n serviceQueryParameterName: \"query\",// ../Home/GetAutoCompleteSource?{{query}}=querytext\r\n serviceMethod: \"POST\",// POST,GET\r\n serviceDataType: \"json\", //json,xml,..\r\n serviceDataSchema: 'd',// data.d read data from ...\r\n filter: \"contains\",//startsWith or contains or equal\r\n minLength: 2,\r\n caseSensitive: true,\r\n select: null,//optional function\r\n change: null,//optional function\r\n dataSource: null//optional datasource\r\n };\r\n\r\n*********\r\n\r\nput this in a view\r\n */\r\n\r\n@Directive({\r\n selector: \"[auto-complete]\",\r\n exportAs: \"kendoAutoComplete\"\r\n})\r\nexport class kendoAutoComplete implements AfterViewInit {\r\n public _el: HTMLElement;\r\n public _selectedItem: any = null;\r\n public _initilized = false;\r\n public _valid: boolean;\r\n public validSubject: Subject = new Subject();\r\n public _defaultOptions: any = {\r\n dataTextField: null, //\"Name\"\r\n serviceUrl: \"Home/GetAutoCompleteSource\", // ../Home/GetAutoCompleteSource , Optional if prop exist : (k-item)=\"myitem=$event\"\r\n serviceQueryParameterName: \"query\", // ../Home/GetAutoCompleteSource?query=querytext,\r\n serviceQueryJsonParameters: false,\r\n serviceDataSchema: \"d\", // data.d Optional\r\n serviceMethod: \"POST\", // ../Home/GetAutoCompleteSource?query=querytext\r\n serviceDataType: \"json\",\r\n filter: \"contains\",\r\n minLength: 1,\r\n caseSensitive: true,\r\n select: null, //optional function(e)\r\n change: null, //optional function(e)\r\n dataSource: null,\r\n templateUrl: null, //Optional like '#: data.number # - #: data.value #',\r\n height: null, // 400 //Optional for templating,\r\n autoBind: false,\r\n header: { 'Authorization': BERRY.forgeryToken },\r\n noDatatemplate:\r\n '' +\r\n BERRY.loc.kendoLocalization.NoData +\r\n \"\",\r\n highlightFirst: true\r\n };\r\n public _InitialValue: any;\r\n public _enable: boolean = true;\r\n\r\n @Input(\"auto-complete\") _options: any;\r\n @Input(\"secondary-options\") _secondaryOptions: any;\r\n @Input(\"k-url\") Url: string;\r\n @Input(\"k-header\") Header: string;\r\n @Output(\"k-item\") OnSelect = new EventEmitter();\r\n @Output(\"k-text\") OnChange = new EventEmitter();\r\n @Input(\"ExtraParameterName\") serviceQueryExtraParameterName: string;\r\n @Input(\"ExtraParameterValue\") serviceQueryExtraParameterValue: string;\r\n @Input() set ClearValue(val: any) {\r\n if (val === 0) return;\r\n let me = this;\r\n $(me._el).val(\"\");\r\n me.OnSelect.emit(null);\r\n me.OnChange.emit(null);\r\n me._selectedItem = null;\r\n }\r\n @Input(\"k-initial\") set initialValue(val: any) {\r\n let me = this;\r\n me._InitialValue = val;\r\n if (me._initilized) {\r\n if (me._InitialValue != undefined) me.loadInitialValue();\r\n else {\r\n $(me._el).val(\"\");\r\n me.OnSelect.emit(null);\r\n me.OnChange.emit(null);\r\n me._selectedItem = null;\r\n }\r\n }\r\n }\r\n\r\n @Output(\"k-Enter\") OnEnter = new EventEmitter();\r\n\r\n @Input(\"enable\") set enable(val: boolean) {\r\n this._enable = val;\r\n var autocomplete = $(this._el).data(\"kendoAutoComplete\");\r\n if (autocomplete) autocomplete.enable(val);\r\n }\r\n get enable(): boolean {\r\n var isDisabled = $(this._el)\r\n .parent()\r\n .hasClass(\"k-state-disabled\");\r\n return !isDisabled;\r\n }\r\n get ElemnetName(): string {\r\n return this._el.getAttribute(\"name\");\r\n }\r\n\r\n constructor(el: ElementRef, private authService: AuthService) {\r\n this._el = el.nativeElement;\r\n }\r\n\r\n ngAfterViewInit() {\r\n var me = this;\r\n\r\n me._defaultOptions.enable = this._enable;\r\n\r\n Object.assign(me._defaultOptions, me._options);\r\n var header: any = {}\r\n if (!!localStorage.getItem('OnBehalfUserId')) {\r\n header = {\r\n 'Authorization': `Bearer ${this.authService.token}`,\r\n 'Accept-Language': BERRY?.languages[BERRY?.lang || localStorage.getItem('lang') || 'ar']?.toLowerCase(),\r\n 'OnBehalfUserId': localStorage.getItem('OnBehalfUserId')\r\n };\r\n }\r\n else {\r\n header = {\r\n 'Authorization': `Bearer ${this.authService.token}`,\r\n 'Accept-Language': BERRY?.languages[BERRY?.lang || localStorage.getItem('lang') || 'ar']?.toLowerCase()\r\n };\r\n }\r\n\r\n if (BERRY?.onOffFeatures?.Assignments && !!localStorage.getItem('AssignmentUserId')) {\r\n header['Assignment-User-Id'] = localStorage.getItem('AssignmentUserId');\r\n }\r\n\r\n let objDataSource = new kendo.data.DataSource({\r\n serverFiltering: true,\r\n transport: {\r\n read: {\r\n url: me.Url ? me.Url : me._defaultOptions.serviceUrl,\r\n type: me._defaultOptions.serviceMethod,\r\n dataType: me._defaultOptions.serviceDataType,\r\n contentType:\r\n me._defaultOptions.serviceQueryJsonParameters === true\r\n ? \"application/json\"\r\n : undefined,\r\n headers: header,\r\n xhrFields: {\r\n withCredentials: true\r\n }\r\n },\r\n parameterMap: function (data, type) {\r\n var query = {};\r\n if (data.filter.filters[0]) {\r\n query[me._defaultOptions.serviceQueryParameterName] =\r\n data.filter.filters[0] && data.filter.filters[0].value;\r\n }\r\n else {\r\n query[me._defaultOptions.serviceQueryParameterName] = \"\";\r\n }\r\n if (me.serviceQueryExtraParameterName) {\r\n query[me.serviceQueryExtraParameterName] =\r\n me.serviceQueryExtraParameterValue;\r\n }\r\n if (me._defaultOptions.serviceQueryJsonParameters === true)\r\n return JSON.stringify(query);\r\n else return query;\r\n }\r\n },\r\n requestStart: function (e) {\r\n if (\r\n $(me._el).data(\"kendoAutoComplete\").options.autoBind == false &&\r\n $(me._el).val() == \"\"\r\n )\r\n e.preventDefault();\r\n },\r\n schema: {\r\n data: function (data) {\r\n if (me._defaultOptions.serviceDataSchema)\r\n return data[me._defaultOptions.serviceDataSchema];\r\n else return data;\r\n }\r\n }\r\n });\r\n\r\n var fnOnChange = function (e) {\r\n if (!this.options.dataTextField) {\r\n console.error(\"dataTextField required\");\r\n return;\r\n }\r\n let DataSource = me._defaultOptions.dataSource;\r\n if (!DataSource) DataSource = objDataSource;\r\n //convert text to object as k-item\r\n //return text as k-text\r\n\r\n var dsItem = DataSource.at(0);\r\n\r\n var dataToReturn = null;\r\n var AutoCompleteText = this.value();\r\n\r\n if (dsItem && AutoCompleteText) {\r\n var caseSensitive = me._defaultOptions.caseSensitive;\r\n\r\n var view = DataSource.view();\r\n\r\n //more than one item in datasource\r\n if (view.length > 1) {\r\n for (var i = 0; i < view.length; i++) {\r\n var vitem = view[i];\r\n var DataItemText = vitem[this.options.dataTextField];\r\n if (DataItemText == AutoCompleteText) {\r\n dataToReturn = vitem;\r\n break;\r\n } else if (\r\n !caseSensitive &&\r\n DataItemText.toString().toLowerCase() ==\r\n AutoCompleteText.toString().toLowerCase()\r\n ) {\r\n dataToReturn = vitem;\r\n break;\r\n }\r\n }\r\n\r\n if (!dataToReturn)\r\n for (var i = 0; i < view.length; i++) {\r\n var vitem = view[i];\r\n var DataItemText = vitem[this.options.dataTextField];\r\n\r\n if (\r\n !caseSensitive &&\r\n DataItemText.toString()\r\n .toLowerCase()\r\n .indexOf(AutoCompleteText.toString().toLowerCase()) > -1\r\n ) {\r\n dataToReturn = vitem;\r\n AutoCompleteText = DataItemText.toString();\r\n break;\r\n } else if (\r\n DataItemText.toString().indexOf(AutoCompleteText.toString()) >\r\n -1\r\n ) {\r\n dataToReturn = vitem;\r\n AutoCompleteText = DataItemText.toString();\r\n break;\r\n }\r\n }\r\n } else {\r\n //just on item in datasource\r\n var DataItemText = dsItem[this.options.dataTextField];\r\n\r\n if (DataItemText.trim() == AutoCompleteText.trim()) {\r\n dataToReturn = dsItem;\r\n } else if (\r\n !caseSensitive &&\r\n DataItemText.toString().toLowerCase() ==\r\n AutoCompleteText.toString().toLowerCase()\r\n ) {\r\n dataToReturn = dsItem;\r\n } else if (\r\n !caseSensitive &&\r\n DataItemText.toString()\r\n .toLowerCase()\r\n .indexOf(AutoCompleteText.toString().toLowerCase()) > -1\r\n ) {\r\n dataToReturn = vitem;\r\n AutoCompleteText = DataItemText.toString();\r\n } else if (\r\n caseSensitive &&\r\n DataItemText.toString().indexOf(AutoCompleteText.toString()) > -1\r\n ) {\r\n dataToReturn = vitem;\r\n AutoCompleteText = DataItemText.toString();\r\n }\r\n }\r\n }\r\n else {\r\n me.OnEnter.emit(AutoCompleteText);\r\n }\r\n\r\n me.OnSelect.emit(dataToReturn);\r\n me.OnChange.emit(AutoCompleteText);\r\n };\r\n var fnOnSelect = function (e) { };\r\n var fnOnOpen = function (e) { };\r\n var fnOnClose = function (e) { };\r\n var fnOnFiltering = function (e) { };\r\n\r\n if (!me._defaultOptions.dataSource)\r\n me._defaultOptions.dataSource = objDataSource;\r\n\r\n let $element = $(me._el);\r\n setTimeout(() => {\r\n $element.parent().find(\".k-i-close\").attr(\"title\", BERRY.getText('Clear', 'kendoLocalization'))\r\n }, 0);\r\n\r\n //#region select event\r\n\r\n if (!me._defaultOptions.select) {\r\n me._defaultOptions.select = function (e) {\r\n me._valid = true;\r\n me.validSubject.next(me._valid);\r\n };\r\n } else {\r\n fnOnSelect = cloneFunc(me._defaultOptions.select);\r\n me._defaultOptions.select = function (e) {\r\n me._valid = true;\r\n me.validSubject.next(me._valid);\r\n fnOnSelect(e);\r\n };\r\n }\r\n\r\n //#endregion\r\n\r\n //#region change event\r\n\r\n if (!me._defaultOptions.change) me._defaultOptions.change = fnOnChange;\r\n\r\n //#endregion\r\n\r\n //#region open event\r\n\r\n if (!me._defaultOptions.open) {\r\n me._defaultOptions.open = function (e) {\r\n me._valid = false;\r\n me.validSubject.next(me._valid);\r\n fnOnOpen(e);\r\n };\r\n } else {\r\n fnOnOpen = cloneFunc(me._defaultOptions.open);\r\n me._defaultOptions.open = function (e) {\r\n me._valid = false;\r\n me.validSubject.next(me._valid);\r\n fnOnOpen(e);\r\n };\r\n }\r\n\r\n //#endregion\r\n\r\n //#region close event\r\n\r\n if (!me._defaultOptions.close) {\r\n me._defaultOptions.close = function (e) {\r\n if (me._valid === false) {\r\n \r\n me.OnSelect.emit(null);\r\n me.OnChange.emit(null);\r\n $(me._el)\r\n .data(\"kendoAutoComplete\")\r\n .value(null);\r\n }\r\n };\r\n } else {\r\n fnOnClose = cloneFunc(me._defaultOptions.close);\r\n me._defaultOptions.close = function (e) {\r\n me._valid = false;\r\n me.validSubject.next(me._valid);\r\n fnOnClose(e);\r\n };\r\n }\r\n\r\n //#endregion\r\n\r\n //#region filtering event\r\n\r\n if (!me._defaultOptions.filtering) {\r\n me._defaultOptions.filtering = function (e) {\r\n me._valid = false;\r\n me.validSubject.next(me._valid);\r\n };\r\n } else {\r\n fnOnFiltering = cloneFunc(me._defaultOptions.filtering);\r\n me._defaultOptions.filtering = function (e) {\r\n me._valid = false;\r\n me.validSubject.next(me._valid);\r\n fnOnFiltering(e);\r\n };\r\n }\r\n\r\n //#endregion\r\n\r\n if (this._secondaryOptions && this._secondaryOptions != null) {\r\n Object.assign(me._defaultOptions, this._secondaryOptions);\r\n }\r\n\r\n $(this._el).kendoAutoComplete(me._defaultOptions);\r\n $(this._el)\r\n .parent()\r\n .css(\"width\", \"100%\");\r\n $(this._el).blur(() => {\r\n setTimeout(() => {\r\n if (me._valid === false) {\r\n $(me._el)\r\n .data(\"kendoAutoComplete\")\r\n .value(null);\r\n }\r\n }, 100);\r\n });\r\n\r\n me._initilized = true;\r\n\r\n me.loadInitialValue();\r\n\r\n\r\n \r\n }\r\n\r\n public selectItemById(id: any) {\r\n var me = this;\r\n $.ajax({\r\n url: me.Url,\r\n type: 'POST',\r\n data: { kw: id, byId: true },\r\n headers: {\r\n 'Authorization': BERRY.forgeryToken,\r\n 'Accept-Language': BERRY.languages[localStorage.getItem('lang') || BERRY.lang]\r\n \r\n // Add more custom headers as needed\r\n },\r\n success: function(e) {\r\n // Handle the success response\r\n let newItem = null;\r\n if (me._defaultOptions.serviceDataSchema) {\r\n newItem = e[me._defaultOptions.serviceDataSchema];\r\n } else {\r\n newItem = e;\r\n }\r\n \r\n if (newItem != undefined && newItem.length > 0) {\r\n newItem = newItem[0];\r\n \r\n if (me._selectedItem != newItem) {\r\n me.OnSelect.emit(newItem);\r\n me.OnChange.emit(newItem.value);\r\n $(me._el).val(newItem.value);\r\n \r\n me._selectedItem = newItem;\r\n }\r\n } else {\r\n console.warn(\"Initial value: \" + me._InitialValue + \" does not have a value in server!\");\r\n }\r\n },\r\n error: function(xhr, status, error) {\r\n // Handle the error response\r\n console.error(\"Error:\", status, error);\r\n }\r\n });\r\n }\r\n\r\n public ClearSelectedValue() {\r\n let me = this;\r\n $(me._el).val(\"\");\r\n me.OnSelect.emit(null);\r\n me.OnChange.emit(null);\r\n me._selectedItem = null;\r\n }\r\n\r\n public loadInitialValue = () => {\r\n let me = this;\r\n if (me._InitialValue != undefined) {\r\n if (me._InitialValue === null || me._InitialValue === \"\") {\r\n console.warn(\r\n \"KendoAutoComplete is trying to 'loadInitialValue' but 'me._InitialValue' is either null or empty string!\"\r\n );\r\n return;\r\n }\r\n\r\n let id = me._InitialValue;\r\n me.selectItemById(id);\r\n }\r\n };\r\n\r\n\r\n}\r\n","import {\r\n Directive,\r\n ElementRef,\r\n Input,\r\n Output,\r\n AfterViewInit,\r\n EventEmitter\r\n} from \"@angular/core\";\r\nimport { AuthService } from \"src/app/framework/services/auth.service\";\r\n\r\ndeclare var $: any;\r\ndeclare var kendo: any;\r\ndeclare var BERRY: any;\r\n\r\n@Directive({\r\n selector: \"[kendo-multi-select]\",\r\n exportAs: \"kendoMultiSelect\"\r\n})\r\nexport class kendoMultiSelect implements AfterViewInit {\r\n public _el: HTMLElement;\r\n public _defaultOptions = {\r\n filter: \"contains\",\r\n returnValueAsText: true,\r\n change: null,\r\n serviceUrl: null, // \"Home/GetAutoCompleteSource\",// {{../Home/GetAutoCompleteSource}}\r\n serviceQueryParameterName: null, // \"query\",// ../Home/GetAutoCompleteSource?{{query}}=querytext\r\n serviceMethod: \"GET\", // POST,GET\r\n serviceDataType: \"json\", //json,xml,..\r\n serviceDataSchema: null, // 'd',// data.d read data from ...,\r\n dataSource: null, //optional datasource,\r\n dataTextField: null,\r\n dataValueField: null,\r\n serviceQueryJsonParameters: false,\r\n noDatatemplate:\r\n '' +\r\n BERRY.loc.kendoLocalization.NoData +\r\n \"\",\r\n itemtemplate: null,\r\n tagtemplate: null,\r\n placeholder: \"\"\r\n };\r\n public withoutTriggerChange: boolean = false\r\n public _InitialValues: any;\r\n public _initialized = false;\r\n @Input(\"kendo-multi-select\") options: any;\r\n @Output(\"k-select\") ReturnSelectedItemEventEmitter = new EventEmitter<\r\n string[]\r\n >();\r\n @Input(\"k-initial\") set InitialValues(val: any) {\r\n this._InitialValues = val;\r\n if (this._initialized) {\r\n this.loadInitialValues();\r\n }\r\n }\r\n\r\n @Input(\"placeholder\") set placeholder(val: any) {\r\n this._defaultOptions.placeholder = val;\r\n }\r\n\r\n @Output(\"k-Enter\") OnEnter = new EventEmitter();\r\n\r\n public refresh(values: any) {\r\n let me = this;\r\n let multiselect = $(me._el).data(\"kendoMultiSelect\");\r\n\r\n multiselect.dataSource.read();\r\n // multiselect.trigger(\"change\");\r\n me.ReturnSelectedItemEventEmitter.emit(values);\r\n }\r\n\r\n @Input(\"k-url\") Url: string;\r\n @Input(\"k-source\") dataSource: string;\r\n @Input(\"secondary-options\") _secondaryOptions: any;\r\n @Input(\"ExtraParameterName\") serviceQueryExtraParameterName: string;\r\n @Input(\"ExtraParameterValue\") serviceQueryExtraParameterValue: string;\r\n @Input() set ClearValue(val: any) {\r\n if (val === 0) return;\r\n let me = this;\r\n //$(me._el).val('');\r\n //\r\n let multiselect = $(me._el).data(\"kendoMultiSelect\");\r\n\r\n if (multiselect === undefined) return; // hack: Bunjeeb, I'm not able to test!\r\n\r\n multiselect.value(null);\r\n\r\n multiselect.trigger(\"change\");\r\n me.ReturnSelectedItemEventEmitter.emit(null);\r\n }\r\n\r\n public clearValues(doEmitt: boolean) {\r\n let me = this;\r\n let multiselect = $(me._el).data(\"kendoMultiSelect\");\r\n if (multiselect === undefined) return;\r\n\r\n multiselect.value(null);\r\n multiselect.trigger(\"change\");\r\n\r\n if (doEmitt === true) {\r\n me.ReturnSelectedItemEventEmitter.emit(null);\r\n }\r\n }\r\n constructor(el: ElementRef, private authService: AuthService) {\r\n this._el = el.nativeElement;\r\n }\r\n\r\n public multiSelectForKeyword: any;\r\n ngAfterViewInit() {\r\n let me = this;\r\n this.addAutomationId();\r\n me.setDefaultOptions();\r\n\r\n if (this._secondaryOptions && this._secondaryOptions != null) {\r\n for (var o in this._secondaryOptions) {\r\n me._defaultOptions[o] = this._secondaryOptions[o];\r\n }\r\n }\r\n\r\n if (!me._defaultOptions.change) me.setDefaultChangeFn();\r\n\r\n if (!me._defaultOptions.dataSource || me._defaultOptions.dataSource == null) {\r\n me.setDefaultDataSource();\r\n }\r\n\r\n $(me._el).kendoMultiSelect(me._defaultOptions);\r\n\r\n me.multiSelectForKeyword = $(me._el).data(\"kendoMultiSelect\");\r\n\r\n //timeout used to bypass Expression \"has changed after it was checked.\"\r\n\r\n me._initialized = true;\r\n setTimeout(me.loadInitialValues, 10);\r\n }\r\n\r\n\r\n\r\n public addAutomationId() {\r\n\r\n let dataAutomationIdValue = $(this._el).attr('data-automation-id');\r\n if (!!dataAutomationIdValue) {\r\n let doc: any = document;\r\n setTimeout(() => {\r\n if (!!doc?.querySelector(`[data-automation-id=\"${dataAutomationIdValue}\"]`)) {\r\n let previousSibling = doc.querySelector(`[data-automation-id=\"${dataAutomationIdValue}\"]`)?.previousSibling;\r\n if (!!previousSibling && !!previousSibling.querySelector('input')) {\r\n previousSibling.querySelector('input')\r\n .parentElement //here to push automation-id to parent\r\n .setAttribute('data-automation-id', dataAutomationIdValue);\r\n $(this._el).removeAttr(\"data-automation-id\")\r\n }\r\n }\r\n }, 0);\r\n }\r\n }\r\n\r\n\r\n openMenu() {\r\n $(this._el).data(\"kendoMultiSelect\").open();\r\n }\r\n\r\n public hasDataSource = () => {\r\n let me = this;\r\n\r\n return me.dataSource != null;\r\n };\r\n\r\n public setDefaultOptions = () => {\r\n let me = this;\r\n\r\n for (var op in me.options) {\r\n me._defaultOptions[op] = me.options[op];\r\n }\r\n };\r\n\r\n public loadInitialValues = () => {\r\n let me = this;\r\n let multiselect = $(me._el).data(\"kendoMultiSelect\");\r\n if (multiselect.value().length < 1) {\r\n if (me._InitialValues && me._InitialValues.length) {\r\n multiselect.value(me._InitialValues);\r\n if (!me.withoutTriggerChange)\r\n multiselect.trigger(\"change\");\r\n me.withoutTriggerChange = false;\r\n }\r\n else {\r\n multiselect.value('');\r\n }\r\n }\r\n };\r\n public setValues(values) {\r\n let me = this;\r\n\r\n let multiselect = $(me._el).data(\"kendoMultiSelect\");\r\n multiselect.value(values);\r\n multiselect.trigger(\"change\");\r\n }\r\n\r\n public setDefaultDataSource: any = () => {\r\n let me = this;\r\n if (me.dataSource) {\r\n me._defaultOptions.dataSource = me.dataSource;\r\n } else {\r\n let Url = me.Url ? me.Url : me._defaultOptions.serviceUrl;\r\n\r\n if (!Url) return;\r\n var headers = {}\r\n if (!!localStorage.getItem('OnBehalfUserId')) {\r\n headers = {\r\n 'Authorization': `Bearer ${this.authService.token}`,\r\n 'Accept-Language': BERRY?.languages[BERRY?.lang || localStorage.getItem('lang') || 'ar']?.toLowerCase(),\r\n 'OnBehalfUserId': localStorage.getItem('OnBehalfUserId')\r\n };\r\n }\r\n else {\r\n headers = {\r\n 'Authorization': `Bearer ${this.authService.token}`,\r\n 'Accept-Language': BERRY?.languages[BERRY?.lang || localStorage.getItem('lang') || 'ar']?.toLowerCase()\r\n };\r\n }\r\n\r\n if (BERRY?.onOffFeatures?.Assignments && !!localStorage.getItem('AssignmentUserId')) {\r\n headers['Assignment-User-Id'] = localStorage.getItem('AssignmentUserId');\r\n }\r\n\r\n let objDataSource = new kendo.data.DataSource({\r\n serverFiltering: true,\r\n transport: {\r\n read: {\r\n url: Url,\r\n type: me._defaultOptions.serviceMethod,\r\n dataType: me._defaultOptions.serviceDataType,\r\n contentType: me._defaultOptions.serviceQueryJsonParameters === true ? \"application/json\" : \"\",\r\n headers: headers,\r\n xhrFields: {\r\n withCredentials: true\r\n },\r\n },\r\n\r\n parameterMap: function (data, type) {\r\n var query = {};\r\n\r\n if (\r\n me._defaultOptions.serviceQueryParameterName &&\r\n data &&\r\n data.filter &&\r\n data.filter.filters[0]\r\n ) {\r\n let filter = data.filter.filters[0];\r\n query[me._defaultOptions.serviceQueryParameterName] =\r\n filter && filter.value;\r\n }\r\n if (\r\n me.serviceQueryExtraParameterName &&\r\n typeof me.serviceQueryExtraParameterValue != \"undefined\"\r\n ) {\r\n query[me.serviceQueryExtraParameterName] =\r\n me.serviceQueryExtraParameterValue;\r\n }\r\n if (me._defaultOptions.serviceQueryJsonParameters === true)\r\n return JSON.stringify(query);\r\n else return query;\r\n }\r\n },\r\n schema: {\r\n data: function (data) {\r\n if (me._defaultOptions.serviceDataSchema)\r\n return data[me._defaultOptions.serviceDataSchema] || [];\r\n else return data;\r\n }\r\n }\r\n });\r\n me._defaultOptions.dataSource = objDataSource;\r\n }\r\n };\r\n\r\n public _enable: boolean = true;\r\n @Input(\"enable\") set enableCtlr(val) {\r\n setTimeout(() => {\r\n this._enable = val;\r\n var autocomplete = $(this._el).data(\"kendoMultiSelect\");\r\n if (autocomplete) autocomplete.enable(val);\r\n }, 10);\r\n }\r\n get enable(): boolean {\r\n var isDisabled = $(this._el)\r\n .parent()\r\n .hasClass(\"k-state-disabled\");\r\n return !isDisabled;\r\n }\r\n public setDefaultChangeFn: any = () => {\r\n let me = this;\r\n let defaultChangeFn = function (e) {\r\n let dataItems = this.dataItems();\r\n let ObjectToReturn = null;\r\n let SelectedItems = [];\r\n\r\n for (let i = 0; i < dataItems.length; i++) {\r\n let dataItem = dataItems[i];\r\n\r\n if (\r\n me._defaultOptions.returnValueAsText &&\r\n me._defaultOptions.dataTextField\r\n ) {\r\n SelectedItems.push(dataItem[me._defaultOptions.dataTextField]);\r\n } else {\r\n SelectedItems.push(dataItem);\r\n }\r\n }\r\n\r\n if (SelectedItems.length) ObjectToReturn = SelectedItems;\r\n\r\n me.ReturnSelectedItemEventEmitter.emit(ObjectToReturn);\r\n };\r\n\r\n me._defaultOptions.change = defaultChangeFn;\r\n };\r\n setDataSource(values) {\r\n $(this._el).data(\"kendoMultiSelect\").dataSource.data(values);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { IGlobalSettings } from 'src/app/_common/models/IGlobalSettings';\r\nimport { BaseService } from 'src/app/_common/services/baseService';\r\nimport { HttpInterceptor } from 'src/app/_common/services/http-interceptor';\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AutomationLogService extends BaseService{\r\n\r\n baseURL = BERRY.hostName + \"api/UserActionsApi\"; // URL to web API\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n}\r\n\r\n public SetActions(Actions :any[]): Observable {\r\n const url = `${this.baseURL}/SetActions`;\r\n return this.http.post(url,Actions);\r\n }\r\n}\r\n","import { Directive, ElementRef, HostListener, Input } from \"@angular/core\";\r\nimport { NavigationEnd, Router } from \"@angular/router\";\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\nimport { IAutomationLog } from \"./IAutomationLog\";\r\nimport { AutomationLogService } from \"./service/automation-log-service\";\r\nimport { BaseCmp } from \"../../components/BaseComponent\";\r\nimport { AppModulesEnum } from \"../../models/AppModulesEnum\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Directive({ selector: \"[data-automation-id] , [automation-id]\" })\r\nexport class DataAutomationIDdirective extends BaseCmp {\r\n\r\n @Input('data-automation-id') dataAutomationId;\r\n\r\n @Input(\"automation-id\") automationId: string;\r\n\r\n @Input('moduleId') moduleId;\r\n\r\n static stopPropagationCounter: number = 0;\r\n static tabId: string | number = 0;\r\n static objLogs: IAutomationLog[] = [];\r\n\r\n\r\n elements: any[] = [];\r\n\r\n public get limitArray(): number {\r\n return BERRY.appSettings.keys.NumOfUserRecommendationActionsToBeLogged || 30;\r\n }\r\n\r\n includeELements: string[] = ['button', 'div', 'a', 'berry-button'];\r\n constructor(\r\n private router: Router,\r\n private logSVC: AutomationLogService,\r\n private elementRef: ElementRef\r\n ) {\r\n super();\r\n }\r\n\r\n ngSuperOnInit() { }\r\n\r\n ngSuperAfterViewInit() {\r\n\r\n if (this.dataAutomationId) {\r\n //if (!this.includeELements.includes(this.elementRef.nativeElement.nodeName.toLowerCase())) return;\r\n this.elementRef.nativeElement.setAttribute('data-automation-id', this.dataAutomationId);\r\n }\r\n\r\n }\r\n\r\n getModuleById(url) {\r\n\r\n let moduleName = url.replace(/^\\/([^\\/]*).*$/, '$1');\r\n\r\n moduleName = moduleName.split('?')[0];\r\n\r\n switch (moduleName) {\r\n case \"correspondence\":\r\n return AppModulesEnum.Correspondences\r\n case \"Archived-studies\":\r\n return AppModulesEnum.Documents;\r\n case \"executive-communication\":\r\n return AppModulesEnum.ExecutiveCommunication;\r\n case \"contacts\":\r\n return AppModulesEnum.Contacts;\r\n case \"scheduling\":\r\n return AppModulesEnum.Scheduling;\r\n case \"committees\":\r\n return AppModulesEnum.Committees;\r\n case \"announcements\":\r\n return AppModulesEnum.Announcement;\r\n case \"Archive\":\r\n return AppModulesEnum.Archive;\r\n case \"reports\":\r\n return AppModulesEnum.Reports;\r\n case \"follow-up-team\":\r\n return AppModulesEnum.FollowupTeam;\r\n case \"tasks\":\r\n return AppModulesEnum.Tasks;\r\n case \"admin\":\r\n return AppModulesEnum.Manage;\r\n case \"Initiatives\":\r\n return AppModulesEnum.Initiatives;\r\n }\r\n\r\n }\r\n\r\n\r\n @HostListener(\"click\", [\"$event\"]) onClick(e) {\r\n if (DataAutomationIDdirective.stopPropagationCounter) {\r\n DataAutomationIDdirective.stopPropagationCounter--;\r\n return null;\r\n }\r\n if (BERRY.onOffFeatures.RecommendedActions) {\r\n\r\n if (!this.includeELements.includes(this.elementRef.nativeElement.nodeName.toLowerCase())) return null;\r\n\r\n const element: any = this.elementRef.nativeElement\r\n let automationLog: IAutomationLog = {\r\n OnBehalfUserId: BERRY.User.UserId,\r\n FromUrl: this.router.url,\r\n ToUrl: this.router.url,\r\n AutomationId: this.automationId || this.dataAutomationId,\r\n Path: this.getPath(element).reverse().join(','),\r\n ActionDate: new Date(),\r\n formData: \"\",\r\n TabId: BERRY.tabId.toString(),\r\n ModuleId: this.moduleId || this.getModuleById(this.router.url)\r\n }\r\n\r\n DataAutomationIDdirective.stopPropagationCounter = automationLog.Path.split(\",\").length - 1\r\n const subscreption = this.router.events\r\n .pipe().subscribe((res) => {\r\n if (res instanceof NavigationEnd) {\r\n automationLog.ToUrl = res.url;\r\n subscreption.unsubscribe();\r\n }\r\n\r\n });\r\n\r\n if (automationLog.AutomationId) {\r\n DataAutomationIDdirective.objLogs.push(automationLog);\r\n }\r\n if (DataAutomationIDdirective.objLogs.length >= this.limitArray) {\r\n this.logSVC.SetActions(DataAutomationIDdirective.objLogs).subscribe(() => { })\r\n DataAutomationIDdirective.objLogs = [];\r\n }\r\n\r\n }\r\n // e.stopPropagation();\r\n }\r\n\r\n getPath(element: HTMLElement) {\r\n this.elements = [];\r\n this.getParentsIds(element);\r\n return this.elements;\r\n }\r\n getParentsIds(element: HTMLElement) {\r\n const automationId = element.getAttribute('data-automation-id') || element.getAttribute('ng-reflect-data-automation-id');\r\n if (automationId) this.elements.push(automationId);\r\n if (element.nodeName.toLowerCase() == 'html') return;\r\n this.getParentsIds(element.parentElement);\r\n }\r\n\r\n}","import { Directive, ElementRef } from '@angular/core';\r\n\r\n@Directive({ selector: 'img' })\r\nexport class LazyImgDirective {\r\n constructor({ nativeElement }: ElementRef) {\r\n const supports = 'loading' in HTMLImageElement.prototype;\r\n\r\n if (supports) {\r\n nativeElement.setAttribute('loading', 'lazy');\r\n }\r\n }\r\n}","import { Directive, ElementRef, HostListener, Input, OnInit } from '@angular/core';\r\nimport { throwError } from 'rxjs';\r\n\r\n@Directive({\r\n selector: '[numeric]'\r\n})\r\nexport class NumericDirective implements OnInit {\r\n\r\n constructor(private _el: ElementRef) { }\r\n @Input('min') min: number = 0;\r\n @Input('max') max: number = null;\r\n @Input('allowNegative') allowNegative: boolean = false;\r\n ngOnInit(){\r\n if (this.allowNegative && this.min >= 0)\r\n throw 'Minimum number is bigger than 0'\r\n\r\n if (this.min > this.max && !!this.min && !!this.max)\r\n throw 'minimum number is higher than max'\r\n }\r\n @HostListener('input', ['$event']) onInputChange(event) {\r\n const initalValue = this._el.nativeElement.value;\r\n \r\n\r\n if (this.allowNegative) {\r\n this._el.nativeElement.value = initalValue.replace(/[^0-9-]*/g, '');\r\n }\r\n else {\r\n this._el.nativeElement.value = initalValue.replace(/[^0-9]*/g, '');\r\n }\r\n\r\n if (initalValue !== this._el.nativeElement.value) {\r\n event.stopPropagation();\r\n }\r\n if (parseInt(initalValue) > this.max && typeof this.max == 'number')\r\n this._el.nativeElement.value = this.max\r\n if (parseInt(initalValue) < this.min)\r\n this._el.nativeElement.value = this.min\r\n if (/^.*?[\\W_].*?[\\W_].*$/.test(this._el.nativeElement.value))\r\n this._el.nativeElement.value = this.min\r\n if (this._el.nativeElement.value.length > 1 && this._el.nativeElement.value.includes('-') && !this._el.nativeElement.value.startsWith('-'))\r\n this._el.nativeElement.value = this.min\r\n if (initalValue == \"\")\r\n this._el.nativeElement.value = this.min\r\n }\r\n\r\n}","import { Directive, ElementRef, HostListener, Input } from \"@angular/core\";\r\nimport { TooltipService } from \"./tooltip.service\";\r\n\r\n@Directive({ selector: \"[title]\", exportAs: 'title' })\r\nexport class TooltipDirective {\r\n\r\n @Input(\"title\") title: string;\r\n @Input(\"viewAsHtml\") viewAsHtml: boolean = false;\r\n @Input(\"reverseDirection\") reverseDirection: boolean = false;\r\n\r\n constructor(public el: ElementRef, public srv: TooltipService) { }\r\n\r\n @HostListener('mouseover') onMouseOver() {\r\n this.srv.view(this.el.nativeElement, this.title, this.viewAsHtml, this.reverseDirection);\r\n }\r\n\r\n @HostListener('mouseout') onMouseOut() {\r\n this.srv.hide();\r\n }\r\n @HostListener(\"click\") onClick() {\r\n this.srv.hide();\r\n }\r\n\r\n\r\n}\r\n\r\n","import { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\n\r\nconst IGNORE = [\"berry-popup\"];\r\ndeclare var BERRY: IGlobalSettings;\r\nconst GAP = 5;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TooltipService {\r\n private tooltip: any;\r\n\r\n public get isRtl(): boolean {\r\n return BERRY.lang == 'ar';\r\n }\r\n\r\n public view(el: any, title: string, viewMode: boolean, reverseDirection: boolean): void {\r\n if (IGNORE.includes(el.nodeName.toLowerCase()) || !title?.trim()) return;\r\n\r\n if (viewMode) {\r\n this.tooltip.innerHTML = title;\r\n } else {\r\n this.tooltip.textContent = title;\r\n }\r\n\r\n this.tooltip.show();\r\n this.relocate(el, reverseDirection);\r\n\r\n }\r\n public hide(): void {\r\n this.tooltip?.hide();\r\n }\r\n\r\n private relocate(elmnt: any, reverseDirection: boolean): void {\r\n const el = elmnt.getBoundingClientRect();\r\n const { style } = this.tooltip;\r\n const windowInnerWidth = window.innerWidth;\r\n const windowInnerHeight = window.innerHeight;\r\n const tltip = this.tooltip.getBoundingClientRect();\r\n\r\n // reset position\r\n style.bottom = 'unset';\r\n style.right = \"unset\";\r\n style.left = \"unset\";\r\n style.top = el.bottom + GAP + 'px';\r\n\r\n // if tooltip viewed out of screen from bottom\r\n if (windowInnerHeight - (el.height + tltip.height + GAP) <= el.bottom) {\r\n style.top = \"unset\";\r\n style.bottom = el.height + (windowInnerHeight - el.bottom) + 'px';\r\n }\r\n\r\n if ((this.isRtl && !reverseDirection) || !this.isRtl && reverseDirection) {\r\n if ((windowInnerWidth - el.right) + GAP + tltip.width < windowInnerWidth) {\r\n style.right = (windowInnerWidth - el.right) + GAP + 'px';\r\n } else {\r\n // if tooltip viewed out of screen from left\r\n style.right = \"unset\";\r\n style.left = GAP + 'px';\r\n }\r\n\r\n } else {\r\n if (el.x + tltip.width < window.innerWidth + GAP) {\r\n style.left = el.left + GAP + 'px';\r\n } else {\r\n // if tooltip viewed out of screen from right\r\n style.left = \"unset\";\r\n style.right = GAP + 'px';\r\n }\r\n\r\n }\r\n }\r\n\r\n public loadTooltip(): void {\r\n this.tooltip = document.createElement('div');\r\n this.tooltip.classList.add(\"tippy\");\r\n document.body.appendChild(this.tooltip);\r\n this.tooltip.show = function () {\r\n this.style.visibility = 'visible';\r\n }\r\n this.tooltip.hide = function () {\r\n this.style.visibility = 'hidden';\r\n }\r\n this.hide();\r\n }\r\n\r\n}\r\n","import { IGlobalSettings } from \"../models/IGlobalSettings\";\r\nimport { Pipe, PipeTransform } from \"@angular/core\";\r\nimport { datetimeHelper } from \"../utils/datetimeHelper\";\r\n\r\ndeclare let moment: any;\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Pipe({ name: \"nullReplacer\" })\r\nexport class nullReplacer implements PipeTransform {\r\n transform(value: any, replaceWith: string): number {\r\n if (\r\n value == null ||\r\n (typeof value == \"string\" && value.trim().length == 0)\r\n ) {\r\n if (!replaceWith) replaceWith = \"-\";\r\n\r\n value = replaceWith;\r\n }\r\n return value;\r\n }\r\n}\r\n\r\n@Pipe({ name: \"SurroundWith\" })\r\nexport class SurroundWith implements PipeTransform {\r\n transform(value: any, surroundWith: string): string {\r\n if (!value) return null;\r\n\r\n if (surroundWith) return surroundWith + value + surroundWith;\r\n\r\n return \"(\" + value + \")\";\r\n }\r\n}\r\n\r\n//Example : {{scheduleItem.StartDate | dateFormatter:\"dd/mm/yyyy\"}}\r\n@Pipe({ name: \"dateFormatter\" })\r\nexport class dateFormatter implements PipeTransform {\r\n transform(value: Date, format: string): string {\r\n if (!value) return \"\";\r\n else {\r\n if (!format) format = BERRY.appSettings.formats.defaultDatePickerFormatJs;\r\n\r\n let dtHelper: datetimeHelper = new datetimeHelper();\r\n return dtHelper.format(value, format);\r\n }\r\n }\r\n}\r\n\r\n@Pipe({ name: \"htmlizer\" })\r\nexport class HtmlizerPipe {\r\n transform(val) {\r\n if (!val) return null;\r\n return val //.replace(' ', ' ')\r\n .replace(\"\\n\", \"
    \");\r\n }\r\n}\r\n\r\n@Pipe({ name: \"dateFormatterMoment\" })\r\nexport class dateFormatterMoment implements PipeTransform {\r\n transform(value: Date, format: string): string {\r\n BERRY.isEn ? moment.locale('en') : moment.locale('ar');\r\n return moment(value).format(format);\r\n }\r\n}\r\n\r\n@Pipe({\r\n name: \"truncate\"\r\n})\r\nexport class TruncatePipe {\r\n transform(value: string, limit: any): string {\r\n if (value) {\r\n let trail = limit.length > 1 ? limit[1] : \"...\";\r\n return value.length > limit ? value.substring(0, limit) + trail : value;\r\n }\r\n else\r\n return value;\r\n }\r\n}\r\n\r\n@Pipe({ name: \"formatString\" })\r\nexport class formatString implements PipeTransform {\r\n transform(value: any, ...args: any[]): string {\r\n if (value == null || (typeof value == \"string\" && value.trim().length == 0))\r\n return null;\r\n value = value.replace(/\\{(\\d+)\\}/g, function (m, n) { return args[n]; })\r\n return value;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from \"@angular/core\";\r\nimport { datetimeHelper } from \"../utils/datetimeHelper\";\r\nimport { IGlobalSettings } from \"../models/IGlobalSettings\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare let moment: any;\r\n\r\nvar dtHelper = new datetimeHelper();\r\n\r\n@Pipe({ name: \"todatetime\" })\r\nexport class todatetime implements PipeTransform {\r\n transform(value: string, format: DateTimePipeFormatEnum): string {\r\n try {\r\n if (value) {\r\n var str = value + \"\";\r\n var date = new Date();\r\n if (str.indexOf(\"T\") != -1) {\r\n // ISO Date\r\n date = new Date(str);\r\n } else {\r\n // DB Date\r\n date = dtHelper.pareseStringToJsDate(\r\n str.substring(0, 8),\r\n BERRY.appSettings.formats.dbDateFormatJs\r\n );\r\n if (str.length > 8) {\r\n var hours = str.substring(8, 10);\r\n var minutes = str.substring(10, 12);\r\n var seconds = str.substring(12, 14);\r\n date.setHours(parseInt(hours));\r\n date.setMinutes(parseInt(minutes));\r\n date.setSeconds(parseInt(seconds));\r\n }\r\n }\r\n\r\n var formatedDate = \"\";\r\n switch (format) {\r\n case DateTimePipeFormatEnum.shortDateFormatMomentJs:\r\n formatedDate = dtHelper.format(\r\n date,\r\n BERRY.appSettings.formats.shortDateFormatMomentJs\r\n );\r\n break;\r\n case DateTimePipeFormatEnum.displayShortDateFormatNg:\r\n formatedDate = dtHelper.format(\r\n date,\r\n BERRY.appSettings.formats.displayShortDateFormatNg\r\n );\r\n break;\r\n case DateTimePipeFormatEnum.longDateTimeFormatMomentJs:\r\n formatedDate = dtHelper.format(\r\n date,\r\n BERRY.appSettings.formats.displayShortDateFormatNg\r\n );\r\n formatedDate =\r\n formatedDate.toString() + moment(date).format(\" - hh:mm a\");\r\n break;\r\n case DateTimePipeFormatEnum.timeFormat:\r\n formatedDate = moment(date).format(\"hh:mm a\");\r\n break;\r\n default:\r\n formatedDate = moment(date).format(format); // old implementation\r\n }\r\n\r\n return formatedDate;\r\n }\r\n return value;\r\n } catch (e) {\r\n return \"NaN\";\r\n }\r\n }\r\n}\r\n\r\nexport enum DateTimePipeFormatEnum {\r\n shortDateFormatMomentJs,\r\n displayShortDateFormatNg,\r\n longDateTimeFormatMomentJs,\r\n timeFormat\r\n}\r\n","import { Directive, ElementRef, OnInit } from '@angular/core';\r\nimport { AuthService } from 'src/app/framework/services/auth.service';\r\nimport { IGlobalSettings } from './models/IGlobalSettings';\r\ndeclare var BERRY: IGlobalSettings\r\n@Directive({\r\n selector: 'img',\r\n exportAs:'ImgDirective'\r\n})\r\nexport class ImgDirective implements OnInit {\r\n constructor(private el: ElementRef, private authService: AuthService) {\r\n\r\n\r\n }\r\n ngOnInit(): void {\r\n if (this.el?.nativeElement?.src != '' &&\r\n !this.el?.nativeElement?.src?.includes?.('assets/')) {\r\n if (BERRY.imagesDictionary.get[this.el.nativeElement.src]) {\r\n this.el.nativeElement.src = BERRY.imagesDictionary.get(this.el?.nativeElement?.src)\r\n }\r\n else {\r\n BERRY.imagesDictionary.set(this.el.nativeElement.src, '')\r\n this.setHeader(this.el?.nativeElement?.src)\r\n }\r\n }\r\n }\r\n\r\n\r\n setHeader(originImageSource): void {\r\n if(originImageSource.endsWith(\"/null\")) return null;\r\n var xhr = new XMLHttpRequest();\r\n xhr.responseType = 'blob';\r\n xhr.onreadystatechange = () => {\r\n if (xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {\r\n this.el.nativeElement.src = URL.createObjectURL(xhr.response);\r\n BERRY.imagesDictionary.set(originImageSource ,this.el.nativeElement.src)\r\n }\r\n };\r\n var imageUrl = this.el.nativeElement.src;\r\n if (imageUrl.includes('user-image') ||\r\n imageUrl.includes('ContactsViews/Individuals'))\r\n imageUrl = imageUrl.replace(BERRY.absoluteHostName, BERRY.appSettings.keys.dmsServerUrl);\r\n else\r\n imageUrl = imageUrl.replace(BERRY.absoluteHostName, BERRY.hostName);\r\n\r\n xhr.open('GET', imageUrl, true);\r\n xhr.setRequestHeader('Authorization', `Bearer ${this.authService.token}`);\r\n xhr.send();\r\n }\r\n}\r\n\r\n","export enum AppModulesEnum {\r\n Manage = 0,\r\n Correspondences = 1,\r\n Archive = 2,\r\n Documents = 3,\r\n Contacts = 4,\r\n Organizations = 5,\r\n Scheduling = 6,\r\n Reports = 7,\r\n GateOfficerList = 8,\r\n Proclamation = 9,\r\n ExecutiveCommunication = 10,\r\n Tasks = 11,\r\n DocumentCenter = 12,\r\n Committees = 13,\r\n DeliveryReport = 14,\r\n Announcement = 16,\r\n Initiatives = 17,\r\n FollowupTeam = 18,\r\n //Dashboard = 19\r\n}\r\n\r\nexport enum XCAttachmentLinkedTypeEnum {\r\n Attachments = 0,\r\n Correspondences = 1,\r\n Scheduling = 2\r\n}\r\n\r\nexport function getModuleIdByURL(url: string): number {\r\n\r\n let moduleName = url.replace(/^\\/([^\\/]*).*$/, '$1');\r\n\r\n moduleName = moduleName.split('?')[0];\r\n \r\n switch (moduleName) {\r\n case \"correspondence\":\r\n return AppModulesEnum.Correspondences\r\n case \"Archived-studies\":\r\n return AppModulesEnum.Documents;\r\n case \"executive-communication\":\r\n return AppModulesEnum.ExecutiveCommunication;\r\n case \"contacts\":\r\n return AppModulesEnum.Contacts;\r\n case \"scheduling\":\r\n return AppModulesEnum.Scheduling;\r\n case \"committees\":\r\n return AppModulesEnum.Committees;\r\n case \"announcements\":\r\n return AppModulesEnum.Announcement;\r\n case \"Archive\":\r\n return AppModulesEnum.Archive;\r\n case \"reports\":\r\n return AppModulesEnum.Reports;\r\n case \"follow-up-team\":\r\n return AppModulesEnum.FollowupTeam;\r\n case \"tasks\":\r\n return AppModulesEnum.Tasks;\r\n case \"admin\":\r\n return AppModulesEnum.Manage;\r\n case \"Initiatives\":\r\n return AppModulesEnum.Initiatives;\r\n }\r\n}","\r\nimport { AttachmentTypesEnum } from \"src/app/berry/correspondences/_models/enums/AttachmentTypesEnum\";\r\n\r\nexport class AttachmentDto {\r\n public RelatedAttachmentUsersID: string[];\r\n public AttachmentUserIds: string[];\r\n public RelatedAttachmentID: string;\r\n public AttachmentTitle: string;\r\n public AttachmentSummary: string;\r\n public MimeType: string;\r\n public RelatedID: any;\r\n public Privacy?: Number;\r\n public CorrespondenceAttachmentID: string;\r\n public CorrespondenceID: string;\r\n public DmsFileId;\r\n public SelectedAttachmentGroup;\r\n public IsCorrespondenceRecored: boolean;\r\n public IsSetAsFinalForm: boolean;\r\n public IsSetAsDraftForm: boolean;\r\n public ExternalRecipentId: any;\r\n public AttachmentsGroupId: number;\r\n public IsReplyLetter: boolean;\r\n public DocumentId: string;\r\n public RelativePath: string;\r\n public AttachmentNumber: string;\r\n public Extension: string = \"\";\r\n public externalEntity: string;\r\n public UploadDate: Date;\r\n public CreatedOnString: string;\r\n public TemplatedmsId: string;\r\n public IsDraft: boolean;\r\n public ExternalContactID: number;\r\n public AttachmentSubject: string;\r\n public IsFinalCopy: boolean;\r\n public users: string[];\r\n public ScheduleItemId: string;\r\n public AnnouncementId: number;\r\n public ScannedImagesCount: number;\r\n public ScheduleItemTopicAttachmentType: number;\r\n public AttachmentType: AttachmentTypesEnum;\r\n public isSuported: boolean = true;\r\n public isFromYesser: boolean = false;\r\n public IsMultiMedia: boolean = false;\r\n public FromPage: number;\r\n public ToPage: number;\r\n public ExtractFromAttachmentId: string = \"\";\r\n public collapse: boolean = false;\r\n public TemporaryAttachmentId: string;\r\n public isSupportNumbering: boolean;\r\n public IsSupportAutoNaming: boolean;\r\n public AllowCustomNumbering: boolean;\r\n public _allowCustomNaming: boolean;\r\n public _allowMultimedia: boolean;\r\n public file: any;\r\n public isPreviewing: boolean = false;\r\n public isApplySecurity: boolean = false;\r\n public ExternalContactName: string = \"\";\r\n public permittedUser: any[] = [];\r\n public isOverSize: boolean = false;\r\n public isFileExtensionValid: boolean = false;\r\n public fileType: string = \"\";\r\n public LinkedItemType: number = 0;\r\n public HasImageMergeField: boolean = false;\r\n public SelectedTempFileName: string = \"\";\r\n public KeepUsersAccessAsIs: boolean = false;\r\n public NewVersionFromLatest: boolean;\r\n FromMeetingMinuts: boolean = false;\r\n public FromScanner: boolean = false;\r\n public VoiceDurationInSeconds: Number = 0;\r\n public version: string;\r\n public AttachmentId: string;\r\n IsAccumulatedReport: boolean = false;\r\n}\r\n\r\nexport enum AnnouncementSourceType {\r\n None = 0,\r\n Correspondence = 1,\r\n Task = 2,\r\n Meeting = 3,\r\n Committee = 4,\r\n DocumentItem = 5,\r\n ArchiveItem = 6\r\n\r\n}","export enum CalendarTypeEnum {\r\n UMALQURA = \"umalqura\",\r\n GREGORIAN = \"gregorian\"\r\n}\r\n\r\n","import { OrganizationContactDto } from \"./contact-dtos\";\r\nimport { IContactItem } from \"../../Contacts/comps/contacts-dtos\";\r\n\r\nexport class ExternalContactDto {\r\n constructor() {\r\n let me = this;\r\n me.ExternalContactID = 0;\r\n me.ExternalContactNameAr = \"\";\r\n me.ExternalContactNameEn = \"\";\r\n me.ExternalContactUse = 0;\r\n me.IsActive = true;\r\n me.IsDeleted = false;\r\n me.Email = \"\";\r\n me.TempImageUrl = \"\";\r\n me.ImageUrl = \"\";\r\n me.ImageExist = true;\r\n }\r\n ExternalContactID: number;\r\n TempImageUrl: string;\r\n ImageUrl: string;\r\n ExternalContactNameAr: string;\r\n ExternalContactNameEn: string;\r\n ExternalContactUse: number;\r\n Email: string;\r\n IsActive: boolean;\r\n IsDeleted: boolean;\r\n ImageExist: boolean;\r\n PickedContact: IContactItem;\r\n LinkedContactId: number;\r\n LinkedContact: OrganizationContactDto;\r\n CountryId: number;\r\n CityId: number;\r\n\r\n}\r\n\r\nexport class ExternalContactSearchQueryDto {\r\n Text: string\r\n PageIndex: number;\r\n Order: string\r\n}","export enum GettingSettingSignatureStatusEnum {\r\n CannotRetrieveSignatureIfImperonated,\r\n NoSignatureAvailableForUser,\r\n Success,\r\n UnAuthorized,\r\n SignatureViolationExceptionRaised,\r\n RequiresVerification,\r\n SendingPinCodeFailed,\r\n InvalidPinCodeText,\r\n PinCodeExpired,\r\n PinCodeMaxFailedCount\r\n}\r\n\r\nexport class UserSignatureDto {\r\n public UserId: string;\r\n public AttachmentId: string;\r\n public HasSignRequest: boolean;\r\n public HasFullPowerToSign: boolean;\r\n public GettingSignatureStatus: GettingSettingSignatureStatusEnum;\r\n public SignatureBase64Image: string;\r\n public SignatureMarkingBase64Image: string;\r\n public CorrespondenceAttachmentId: any;\r\n}\r\n\r\nexport class UserStampDto {\r\n public UserId: string;\r\n public AttachmentId: string;\r\n public HasStampRequest: boolean;\r\n public HasFullPowerToSign: boolean;\r\n public GettingStampStatus: GettingSettingSignatureStatusEnum;\r\n public StampBase64Image: string;\r\n public StampName: string;\r\n}\r\n\r\nexport enum SystemModules {\r\n Archive = 1,\r\n Scheduling = 2,\r\n Correspondence = 3,\r\n Task = 4,\r\n Templates = 5,\r\n SchedulingTopic = 6,\r\n Incident = 7,\r\n ExecutiveCommunication = 8,\r\n IncidentProclmation = 9,\r\n Committee = 13,\r\n Announcement = 16,\r\n Initiatives= 26\r\n}\r\n","import { IExternalContactForRecipientGroupDto } from \"./IExternalContactForRecipientGroupDto\";\r\n\r\nexport class IExternalRecipientGroupDto {\r\n public Id: number = 0;\r\n public NameAr: string = '';\r\n public NameEn: string = '';\r\n public ExternalContactName?: string = '';\r\n public ExternalContactsTotalCount?: number = 0;\r\n public ExternalContactsIds?: Array = [];\r\n public ExternalContacts?: Array = [];\r\n public AddedExternalContacts?: Array = [];\r\n public DeletedExternalContactsIds?: Array = [];\r\n}\r\n\r\n","import { UserDto } from \"./User-dto\";\r\nimport { countryDto } from \"../../berry/correspondences/_models/contacts/countryDto\";\r\nimport { cityDto } from \"../../berry/correspondences/_models/contacts/cityDto\";\r\nimport { IFormBuilder } from \"../components/form-builder/IFormBuilder\";\r\nimport { HubConnection } from \"@microsoft/signalr\";\r\nimport { AsyncSubject } from \"rxjs\";\r\nimport { LandingLoginMode } from \"src/app/framework/components/login-landing-page/enums/Login-statuses.enum\";\r\n\r\nexport interface ILocalizedResourceSet {\r\n dbRes: (string) => string;\r\n}\r\n\r\nexport interface ILocalization {\r\n contacts: ILocalizedResourceSet;\r\n scheduling: any;\r\n common: any;\r\n correspondence: any;\r\n correspondenceReminder: any;\r\n ConfirmMessages: any;\r\n WorkFlow: any;\r\n ValidationMessage: any;\r\n archiving: any;\r\n NewIncoming: any;\r\n general: any;\r\n Committees: any;\r\n ReplyTemplates: any;\r\n kendoLocalization: any;\r\n correspondenceTypesAdmin: any;\r\n ScheduleTemplate: any;\r\n rangeFilterOptionsAdmin: any;\r\n correspondenceClassifications: any;\r\n Vactions: any;\r\n StudyActivities: any;\r\n LocationsAndHalls: any;\r\n ExternalEmail: any;\r\n ConsultantAutoSelect: any;\r\n CommonDbRes: any;\r\n GeneralSettings: any;\r\n eSignature: any;\r\n linkedCorrespondence: any;\r\n storage: any;\r\n logoutReasons: any;\r\n performanceReport: any;\r\n UserRecipientGroupsRes: any;\r\n UserAppModule: any;\r\n FormBuilder: any;\r\n DynamicForm: any;\r\n confirmReciveCorr: any;\r\n attachmentGroups: any;\r\n princeDashboard: any;\r\n princeDashboardReport: any;\r\n rangeFilterOptions: any;\r\n participantTypeAdmin: any;\r\n}\r\n\r\nexport interface IOnOffFeatures {\r\n actionDeadlineByReplyRequestResponse: boolean;\r\n boeNewCorrespondences: boolean;\r\n correspondencePublicInbox: boolean;\r\n splitSearchToAdvanceAndSimple: boolean;\r\n boeArchive: boolean;\r\n boeArchivingSearch: boolean;\r\n ReportsBuilder: boolean;\r\n EnableCorrespondencChild: boolean;\r\n boeHallsStaticLocation: boolean;\r\n SingleSelectFollowerCorrespondence: boolean;\r\n GrievanceCorrespondence: boolean;\r\n EnableReplayTemplate: boolean;\r\n assign_Followup: boolean;\r\n showTangibleItemsCheckboxes: boolean;\r\n AttachmentConfidentiality: boolean;\r\n ShowCorrespondanceShelvingFeatures: boolean;\r\n realTimeDetectionOnlineUsers: boolean;\r\n attachmentautoNaming: boolean;\r\n restrictedSettlement: boolean;\r\n CorrespondenceLinkStudy: boolean;\r\n MultiSelectFollowersCorrespondence: boolean;\r\n FormBuilder: boolean;\r\n Impersonation: boolean;\r\n ViewSubCorrespondences: boolean;\r\n viewStatementCorrespondences: boolean;\r\n ViewSubsequentCorrespondences: boolean;\r\n OwnershipPartners: boolean;\r\n supportedReportGenerator: boolean;\r\n correspondenceInfoWithWidgets: boolean;\r\n sendReminderBySMSNotification: boolean;\r\n confirmReceiptCorrespondence: boolean;\r\n saveForward: boolean;\r\n actions_DeliveryReport: boolean;\r\n showDocumentReportingNumberAndDateField: boolean;\r\n policyNumber: boolean;\r\n enableMultiClasifications: boolean;\r\n letterFeature: boolean;\r\n isConsultantFeatureEnabled: boolean;\r\n WordOnline: boolean;\r\n WordDesktop: boolean;\r\n recommendationsAttachment: boolean;\r\n upliftLetter: boolean;\r\n followUpAndSignatureLetter: boolean;\r\n correspondencesforPresidentOffice: boolean;\r\n useDraftOverview: boolean;\r\n allowMobileAccessFlag: boolean;\r\n correspondence_Ownership: boolean;\r\n advanced_Meeting: boolean;\r\n meetingSmartAssistant: boolean;\r\n actions_DeliveryPostOffice: boolean;\r\n CorrespondenceClassification: boolean;\r\n admin_RealTimeDetectionOnlineUsers: boolean;\r\n arabicLanguage: boolean;\r\n englishLanguage: boolean;\r\n attachment_OCR_Enabled: boolean;\r\n reports_InternalAuditReport: boolean;\r\n correspondence_Followup: boolean;\r\n showEmployeeInformationInbox: boolean;\r\n entityStandAlone: boolean;\r\n annotateSignature: boolean;\r\n showAccompaniedDocumentsFieldForCorrespondence: boolean;\r\n executive_Communication: boolean;\r\n advanced_Committee: boolean;\r\n IsDocumentCenterManagementEnabled: boolean;\r\n CanSendSMS: boolean;\r\n ArchivedClassification: boolean;\r\n SearchbydocumentNumberForLinkedCorrespondencePopup: boolean;\r\n AdvancedChatting: boolean;\r\n ExtractPagesFromAttachment: boolean\r\n light_Tasks: boolean;\r\n IntegratedWithGovernmentCorrespondences: boolean;\r\n IntegratedWithBerryHub: boolean;\r\n attachmentWatermark: boolean;\r\n screenSharing: boolean;\r\n ActivatePrintForSignatureButtonInForwardingLog: boolean;\r\n MAPPINTEGRATION: boolean;\r\n BERRY_FILTERS: boolean;\r\n BERRY_FILTERS_IMPORTANT_URGENT: boolean;\r\n BERRY_FILTERS_LATE: boolean;\r\n BERRY_FILTERS_SIGNATURE_REQUESTS: boolean;\r\n BERRY_FILTERS_MYTASKS: boolean;\r\n BERRY_FILTERS_CONFIDENTIAL_CORRESPONDENCES: boolean;\r\n BERRY_FILTERS_COMPLETED_CORRESPONDENCES: boolean;\r\n FILTER_FromRoyalCourt: boolean;\r\n BERRY_UPCOMING_TASKS_TAB: boolean;\r\n BERRY_CORRESPONDENCE_NOTES: boolean;\r\n BERRY_CORRESPONDENCE_KEYWORDS: boolean;\r\n BERRY_SEND_CORRESPONDENCE_ATTACHMENT_BY_EMAIL: boolean;\r\n BerryReportsGenerator: boolean;\r\n SingleFreeTextFollowerCorrespondence: boolean;\r\n MergedCorrespondences: boolean;\r\n CombinedCorrespondences: boolean;\r\n DigitalSignatures: boolean\r\n TasksActivityLog: boolean;\r\n CorrespondenceFollowupTeams: boolean;\r\n PostionsTabInsideIndividuals: boolean;\r\n IndividualsTabInsideEntities: boolean;\r\n EntityBranchesTab: boolean;\r\n SingleSignOn: boolean;\r\n BerryDefaultReport: boolean;\r\n ExternalArchivingOptions: boolean;\r\n AllowCorrespondenceRecall: boolean;\r\n ManageExternalEmails: boolean;\r\n AttachmentsApprovalsAndAuthorizations: boolean;\r\n ElectronicDeliveryReports: boolean;\r\n DigitalStamps: boolean;\r\n ProtectConfidentialCorrespondence: boolean;\r\n SecondPasswordSecurity: boolean;\r\n RecommendedActions: boolean;\r\n Assignments: boolean;\r\n WorkFlowManagement: boolean;\r\n SharedInboxes: boolean;\r\n AccumulatedReport: boolean;\r\n\r\n}\r\n\r\nexport interface IGlobalSettings {\r\n viewMainLoader:boolean,\r\n languages: {\r\n ar: string;\r\n en: string;\r\n }\r\n WebTwainEnvProductKey: string;\r\n ClientNameWithCopyrightAr: string,\r\n ClientNameWithCopyrightEn: string,\r\n IsShowSupportTeamInLogin: boolean;\r\n imagesDictionary: Map,\r\n isConnectedToInternet: boolean;\r\n $user: AsyncSubject,\r\n LocalizationsEn: object,\r\n tabId: number,\r\n LocalizationsAr: object,\r\n SignalRHubConnection: HubConnection;\r\n IUSearchView: boolean;\r\n islookupsLoaded: boolean;\r\n getPostOfficeDeliveryType: any;\r\n BaseUrl: string;\r\n environment: any;\r\n BerryOfflineEnabled: boolean;\r\n BaseHtmlView: string;\r\n disableDelegatedUserOnForward: string;\r\n firstDateInYear: any;\r\n lastDateInYear: any;\r\n firstDateInYearString: any;\r\n lastDateInYearString: any;\r\n hijriYear: any;\r\n hijriNowDate: any;\r\n SearchIntialValues: any;\r\n absoluteHostName: string;\r\n showSettlementOptions: string;\r\n IsPersonalAnnotation: boolean;\r\n IsAnnotationsAdded: boolean;\r\n RefreshToken: string;\r\n hostName: string;\r\n buildNumber: string;\r\n FontThemeSize: string;\r\n workingSite: string;\r\n liveVersion: string;\r\n username: string;\r\n PageSize: number;\r\n EnableExportCorrespondenceCategoryEnumValues: any;\r\n loc: ILocalization;\r\n metadata: string;\r\n rootDepartmentType: string;\r\n errorMsgs: any;\r\n primaryCalendar: string;\r\n lang: string;\r\n draftInternalForwardAsToBaseOnLetterTypes: string;\r\n EnableTestUsers: boolean;\r\n webTwainIfShowUI: string;\r\n webTwainResolution: string;\r\n isvalidMobileNumberRegex: string;\r\n shortDateFormat: string;\r\n ShortDateFormat_keithWood: string;\r\n shortDateFormatFromURL: string;\r\n shortDateTimeFormatFromURL: string;\r\n minHijriDate: string;\r\n maxHijriDate: string;\r\n isEn: boolean;\r\n User: UserDto;\r\n ExternalContactsImagesDirectoryUrl: string;\r\n ShowHierarchicalRelatedcorrespondences: boolean;\r\n ShowManageCommitteeOptionOnCommitteeInbox: string;\r\n onOffFeatures: IOnOffFeatures;\r\n ioc: IocServices;\r\n appSettings: IAppSettings;\r\n generalSettings: IGeneralSettings;\r\n generalSettingList: IGeneralSettingDto[];\r\n UserSessionCode: string;\r\n UserGuide: string;\r\n UrgentNotificationTypes: string;\r\n UserGuideDictionary: any;\r\n dmsSettings: IDmsSettings;\r\n defaultCorrespondanceType: string;\r\n noDeadlineOnCreate: string;\r\n defaultCorrespondenceDeadlineDuration: number;\r\n CorrespondenceDeadlineLimitation: string;\r\n showEstablishedandText: string;\r\n defaultDeliveryType: string;\r\n allowSchedulingRepetition: string;\r\n seenAndSendCopyWithAttachment: boolean;\r\n showMeetingOptionOnCorrespondance: string;\r\n deliveryPostOffice: string;\r\n defaultTaskTypeId: string;\r\n filingOptionNumber: string;\r\n recentlySeenArchive: number;\r\n deliveryReportGeneralCategories: string;\r\n EnableDecisionEnumValues: string;\r\n formBuilder: IFormBuilder;\r\n defaultSignatureWidth: number;\r\n staticSignatureWidth: number;\r\n staticSignatureHeight: number;\r\n typesStaticSize: string;\r\n recomendationTemplateLetterTypeId: number;\r\n filingPartOrderArray: string;\r\n getText: (key: string, set: string, lang?: string) => string;\r\n MaxDirectionCharsInForwardingLog: number;\r\n enableMultiLineDirection: boolean;\r\n showDetailsSummary: boolean;\r\n showDirectionsInQuickView: boolean;\r\n enableCorrespondenceFormControlStatus: string;\r\n enableRoleInFirstForward: boolean;\r\n adminMultiSignatureSupport: boolean;\r\n clientName: string;\r\n clientSystemAr: string;\r\n clientSystemEn: string\r\n LocDictionary: ILocalizationDictionary;\r\n Lookups: ILookup;\r\n validateScheduleDateBySP: string;\r\n defaultForwardExternalContactId: string;\r\n outgoingProjectCategoryId: string;\r\n proclmationCategoryId: string;\r\n CaseFileCategoryId: string;\r\n consultantTypeId: any;\r\n MonitoredInformationCategoryId: string;\r\n InitiativeFileCategoryId: string;\r\n webTwainFile: string;\r\n forgeryToken: any;\r\n AuthenticationMethod: any;\r\n IsOAuthProviderEnabled: boolean;\r\n AuthenticationMode: LandingLoginMode;\r\n enableCompletedCorrespondencesStatus: boolean;\r\n showMeetingsArabicTitleOnly: boolean;\r\n LookupVersion: string;\r\n IsActivateExternalUserLogin: boolean;\r\n wopiUrl: string;\r\n isgeneralSettingsLoaded: boolean;\r\n GeneralSettingsCachedVersion: string;\r\n ClientAppModules: any[];\r\n IsCommitteesEnabled: boolean;\r\n ShowResetPasswordInLoginPage: boolean;\r\n OAuthClientId: string;\r\n OAuthAuthority: string;\r\n OAuthScopes: string;\r\n OAuthClientSecret: string;\r\n OAuthResponseType: string;\r\n OAuthCustomMetaDataUrl: string;\r\n DomainConfig: string;\r\n ConnectWhiteListConfig: string;\r\n RedirectToSearchUponLogin: boolean;\r\n AllowMobileAccessFlag: boolean;\r\n SupportTeamEmail: string;\r\n LocalizationArVersion: string;\r\n LocalizationDicVersion: string;\r\n LocalizationEnVersion: string;\r\n SettingVersion: string;\r\n}\r\n\r\nexport interface ILocalizationDictionary {\r\n ar: any;\r\n en: any;\r\n}\r\nexport interface ILookup {\r\n Countries: countryDto[];\r\n Cities: cityDto[];\r\n ArabicPrefixes: any;\r\n EnglishPrefixes: any;\r\n ArabicSuffixes: any;\r\n EnglishSuffixes: any;\r\n Confidentialities: any;\r\n CorrespondenceTypeClassificationItems: any;\r\n ConfidentialitiesUsed: any;\r\n Urgencies: any;\r\n ReceivingModes: any;\r\n AccompanyingDocument: any;\r\n CorrespondanceKeyWords: any;\r\n CorrespondenceSubTypes: any;\r\n CorrespondenceTypes: any;\r\n ClassificationsTypes: any;\r\n Purposes: any;\r\n Locations: any;\r\n StorageRooms: any;\r\n StorageCabinets: any;\r\n StorageShelves: any;\r\n CorrespondenceCategories: any;\r\n LinkTypes: any;\r\n PredefinedDirections: any;\r\n ScheduleLKPCategories: any;\r\n ScheduleLKPImportances: any;\r\n ScheduleLKPLocationTypes: any;\r\n TaskTypes: any;\r\n UserTypes: any;\r\n GeneralSettings: any;\r\n UserCustomDirections: any;\r\n CorrespondenceClassifications: any;\r\n ScheduleTemplates: any;\r\n Holidays: any;\r\n Weekends: any;\r\n CommunicationsImportance: any;\r\n CommitteesTags: any;\r\n DocumentConfidentialities: any;\r\n}\r\n\r\nexport interface IDmsSettings {\r\n minBytesToUpload: number;\r\n maxBytesToUpload: number;\r\n}\r\n\r\nexport interface IAppSettings {\r\n formats: IAppFormats;\r\n keys: IAppKeys;\r\n contacts: IContactsKeys;\r\n}\r\n\r\nexport interface IGeneralSettings {\r\n CorrespondenceCategoriesSettings: string;\r\n AllowCorrespondenceRecall: boolean;\r\n EnableRequestUrgency: boolean;\r\n EnableUrgencyRequest: boolean; // امكانية تفعيل طلب استعجال\r\n EnableTheEditFeatureInLettersTemplatesToCreateCustomLetters: boolean;\r\n EnableAddExternalRecipientAsCopy: boolean;\r\n CorrCategoriesDeliveryData: string;\r\n signatureOrder: string[];\r\n AnotationOrder: string[];\r\n NumberofCorrespondences: number;\r\n MaxAllowedDrafts: boolean;\r\n HideCorrespondencesShelvingSectionOnCreateCorrespondenceScreen: boolean;\r\n AbilityToSendAnUrgentRequest: boolean;\r\n IsExternalCorrespondenceNumberEnabled: boolean;\r\n ShowCorrespondenceTypeAndClassificationForInboxes: boolean;\r\n ShowScannerDawnloadLink: boolean;\r\n ActivatingAnnouncementReviewFeature: boolean;\r\n EnableForwardingMainCorrespondence: boolean;\r\n}\r\n\r\nexport interface IGeneralSettingDto {\r\n Id: number\r\n SettingGroup: string,\r\n SettingKey: string\r\n SettingNameAr: string\r\n SettingNameEn: string\r\n Value: string\r\n}\r\n\r\nexport interface IAppFormats {\r\n dbDateFormatJs: string;\r\n displayShortDateFormatNg: string;\r\n defaultDatePickerFormatJs: string;\r\n schedulingLongDateFormatJs: string;\r\n shortDateFormatMomentJs: string;\r\n longDateFormatMomentJs: string;\r\n reminderDeadlineDatePickerFormat: string;\r\n longDateTimeFormatMomentJs: string;\r\n deliveryReportDateFormat: string;\r\n reminderDateFormattedJs: string;\r\n displayDateFormat: string;\r\n}\r\n\r\nexport interface IAppKeys {\r\n NumOfUserRecommendationActionsToBeLogged: number;\r\n fbDeadLineDateComponent: boolean;\r\n fbDocsRalatedTagsComp: boolean;\r\n fbAccomanyingDocumentComp: boolean;\r\n isNoWorkFlowAndLinkedCorrespondence: boolean;\r\n isOutgoingAutoFillforwardedTo: boolean;\r\n NotShowInNRRC: any;\r\n setConfidentialityAsEnumString: boolean;\r\n isNumberingEnabled: boolean;\r\n restrictRoles: any[];\r\n newActionslogs: boolean;\r\n enableEntityArchiveItem: boolean;\r\n headerLogo: boolean;\r\n footerLogo: boolean;\r\n enableSortingCorrespondencePath: boolean;\r\n customizedActionBar: boolean;\r\n isOwnerAndConsultantSeparated: boolean;\r\n createNewIncommingCorrespondnece: {\r\n initialClassification: boolean;\r\n subCorrespondenceType: boolean;\r\n daysNo: boolean;\r\n internalRecipient: boolean;\r\n finalDate: boolean;\r\n deadLineInDate: boolean;\r\n classificationsTypeId: boolean;\r\n detailesClassifications: boolean;\r\n hideAddressTo: boolean;\r\n };\r\n createNewOutCorrespondnece: {\r\n internalSender: boolean;\r\n hideAddressTo: boolean;\r\n\r\n }\r\n createNewInternalCorrespondnece: {\r\n hideAddressTo: boolean;\r\n }\r\n hideScheduleTable: string;\r\n showAmanahNewOutgoing: boolean;\r\n hijriCultureformatDate: boolean\r\n showExportPopup: boolean;\r\n locationOfCorrespondenceFiles: boolean;\r\n minSearchYear: number;\r\n setCurrentDateAsDefualtInSearch: string;\r\n maxSearchYear: number;\r\n ShowPrintDetailsPage: boolean;\r\n EnableInboxBulkSave: boolean;\r\n HealthStatusURL: string;\r\n quickviewCorrespondence: boolean;\r\n HideCorrespondenceImportance: boolean;\r\n HideCorrespondenceClassificationsFromSearch: boolean;\r\n HideProclamationImportance: boolean;\r\n HideArchiveImportance: boolean;\r\n ExternalSenderEntityOthersId: string;\r\n maximumEmailAttachmentSizeLimit: number;\r\n maximumEmailAttachmentSizeLimitForNonUsers: number;\r\n FirstScheduleTypeId: string;\r\n SigningupScheduleTypeId: string;\r\n showEntityParentPreferedInCombobox: boolean;\r\n maximumDirectionToRecipient: string;\r\n hideSignatureAuthor: boolean;\r\n expandDetailsSidebar: boolean;\r\n defaultActionDatePeriod: string;\r\n hasCorrespondenceProceedingsNumber: boolean;\r\n hasCorrespondenceMemoNumber: boolean;\r\n hasCorrespondenceRalatedDocs: boolean;\r\n showFileStorageChooseBestButton: boolean;\r\n hideActionbarButtonsText: boolean;\r\n importantExternalEntities: boolean;\r\n importantInternalEntities: boolean;\r\n hideNoteSignature: boolean;\r\n showDraftOptionalSteps: boolean;\r\n hasAttachmentRecords: boolean;\r\n linkedStudysSearchMinimumShouldMatch: number;\r\n linkedCorrsSearchMinimumShouldMatch: number;\r\n printQrCodeWhenAddAttachments: boolean;\r\n defaultFirstActionDatePeriod: number;\r\n hideSavedStatusInAdvancedSearchFilter: boolean;\r\n showPrintLargeBarcodeButton: boolean;\r\n searchByAccompanyingDocsDetails: string;\r\n useArchiveFileNumber: boolean;\r\n defaultPublicDirections: string;\r\n showCorrespondenceOwner: boolean;\r\n enableSelectionOfMultiOrSingleReciepient: boolean;\r\n enableSelectionOfEntityOrUserAsMainReciepient: boolean;\r\n enableMultiLineDirection: boolean;\r\n allowPastDateInCorrespondenceDeadLineValidation\r\n sendCorrespendenceDetailsandAttachmentbyEmail: boolean;\r\n extraSignatureDetails: boolean;\r\n hideSignatureOnDelegation: boolean;\r\n hideActionTypeText: boolean;\r\n dynamicCommitteeMeetings: boolean;\r\n UrgentNotificationCc: string;\r\n isBoeReminder: boolean;\r\n redirectToInboxAfterForward: boolean;\r\n initiatorEntityEnabled: boolean;\r\n isHTMLControlsClassification: boolean;\r\n enableManagerDashboard: boolean;\r\n managerDashboardLandingPage: string;\r\n requestAuthorityMeetingAtCreation: boolean;\r\n settlementInsideIncoming: boolean;\r\n enableMultiClasifications: boolean;\r\n showConfidType: string;\r\n hideDeniedUsersSectionInEditConfidentiality: boolean;\r\n forwardBySelectUserIcon: boolean;\r\n popupCreateNewCorrespondnece: boolean;\r\n //viewUserDelegationsForNotManagerUsers: boolean;\r\n hideCorsImportant: boolean;\r\n checkIfCorrespondenceCloseSetteledCorrespondenceOnFirstForward: boolean;\r\n defaultCorrespondenceAttachmentGroup: string;\r\n defaultReplyTemplateGroupId: number;\r\n ShowMessageToastInCorrespondenceSearch: any;\r\n editCorrespondencePropertiesFromDetailsHeaderAndForwardPopup: boolean;\r\n viewCorrLettersTab: boolean;\r\n hideFollowUpCorrespondence: boolean;\r\n hideForwardLogPage: boolean;\r\n defaultDraftCorrespendenceGroupId: boolean;\r\n defaultCorrespendenceGroupId: boolean;\r\n defaultScheduleGroupId: boolean;\r\n defaultArchiveAttachmentGroupId: boolean;\r\n principalGroupId: any;\r\n upliftLetterId: any;\r\n followUpAndSignatureLetterId: any;\r\n showLastActionAsTitle: boolean;\r\n isAutoGenerateCorrespondenceDeadLine: boolean;\r\n hideAddressedtoFromHeader: boolean;\r\n detailsHeaderShowReceivingMode: boolean;\r\n SidebarMenuLogoStyle: string;\r\n hideDetailsInfoGrievanceSms: boolean;\r\n enableFuncGetMyDescendantEntities: boolean;\r\n ShowSaveCorrespondenceConfirmationMessage: boolean;\r\n enableConsultantParticipantHeader: boolean;\r\n enableAddParticipantUsersToCC: boolean;\r\n enableCorrKeywords: boolean;\r\n showLogo: boolean;\r\n fillActiveSideBar: boolean;\r\n addYearToSearchAutoComplete: boolean;\r\n alwaysReplyToSenderUser: boolean;\r\n relatedTagsValidation: boolean;\r\n enableCCEditingInForwarding: boolean;\r\n physicalAttachmentSequances: boolean;\r\n disableSettlementTab: boolean;\r\n attachmentRequiredForSettlementCorrBeforeFirstForward: boolean;\r\n defaultSearchOrdering: string;\r\n viewMoreDetailsForWopi: boolean;\r\n wopiShowGenerateCopyActions: boolean;\r\n defaultInternalSenderValueForOutgoingCorrsCreation: boolean;\r\n hideGeneralScheduleTab: boolean;\r\n showCurrentDateOnHeader: boolean;\r\n hideForwardActionForCCInboxCorrs: boolean;\r\n showDesignerHTML: boolean;\r\n hideContactReviewAndEdit: boolean;\r\n devMode: boolean;\r\n offlineMode: boolean;\r\n searchByAttachmentNumber: boolean;\r\n searchByPurpose: boolean;\r\n searchBysubCorrespondenceType: boolean;\r\n searchByInitialCorrespondenceClassification: boolean;\r\n searchByClassificationType: boolean;\r\n searchByDetailesClassification: boolean;\r\n searchByAccompanyingDocsTitle: boolean;\r\n showFinishedFillterInBoe: boolean;\r\n hideFinishedFillterInBoe: boolean;\r\n hideCorrespondenceOwnershipInbox: boolean;\r\n canSelectAllPages: boolean;\r\n presidenentTypeID: any;\r\n showConfidentialCorrespondencesInboxTab: boolean;\r\n royalCourtInboxTab: boolean;\r\n fieldVisitApproveTab: boolean;\r\n boeCloumnsCorrespondenceTypes: any;\r\n externalEmailSourcePerEntity: boolean;\r\n hideCountryGridExtraColumns: boolean;\r\n allowDeleteCountry: boolean;\r\n hideSortingType: any;\r\n showSortDropdown: any;\r\n generalInboxDepartmentTypes: any;\r\n searchOnlyByCorrSavedByUser: any;\r\n canSearchByIncomingCorrNoInArchived: boolean;\r\n execFileExt: any;\r\n extFileAllowedByDefault: string;\r\n viewOutgoingArchivedCorrespondencesOnly: boolean;\r\n setSettledIncomingCorrespondenceStatusToSettled: boolean;\r\n AllowSameRecipientInTOandCC: boolean;\r\n showBasicCorrespondenceShelving: boolean;\r\n useInternalRecipientEntity: boolean;\r\n HideUpComingProclamationsTab: boolean;\r\n enableCCSaveDocument: boolean;\r\n RestrictSettlementWithIncoming: boolean;\r\n CorrespondencesDependOnClientCategories: boolean;\r\n hideLanguageLabelInAddMeetingPage: boolean;\r\n getFilterOptionInTeamPerformanceFromDatabase: boolean;\r\n archivesEntityID: any;\r\n businessUserTypeIDForArchivesEmployees: any;\r\n canOpenCorrsInNewTab: boolean;\r\n markHolidaysOnDatepicker: boolean;\r\n editOfficeDocumentsInWord: boolean;\r\n hasUnattachedManager: boolean;\r\n canAddReminderForTheSameDay: boolean;\r\n isAttachmentsNumberRequiredField: boolean;\r\n showAdvanceSettingInfo: boolean;\r\n moveSupportItemToLast: boolean;\r\n HideArchiveImage: boolean;\r\n isViewArciveinSmallpopup: boolean;\r\n showCustomDirection: boolean;\r\n ShowConfirmMsgBeforTheAction: boolean;\r\n WithinJurisdictionCommission: any;\r\n OutsideJurisdictionCommission: any;\r\n HideCorrespondenceFollowerData: boolean;\r\n IsHideEditSettlement: boolean;\r\n IsMultipleSettlementOptionsEnabled: boolean;\r\n ChangeTitleWhenConfidentialChangeIfTitleEmptyOnly: boolean;\r\n SignatureRequestOnMemosAndRecords: boolean;\r\n ShowAvailableNotificationOptions: boolean;\r\n ShowAccomplishmentStatus: boolean;\r\n HideSettlementStatus: boolean;\r\n ShowPresentItForConsultantsPopup: boolean;\r\n HideDeliveryDate: boolean;\r\n RequireExtraSearchInArchived: boolean;\r\n HasDefaultAttendees: boolean;\r\n ShowCustomFeildsOnCreateTaskForm: boolean;\r\n AuditTrailDefaultPageSize: number;\r\n ShowInboxEntitiesEmployeeCounter: boolean;\r\n ExportConfidentialToNonPrivate: boolean;\r\n IsDefaultSenderValid: boolean;\r\n ShowIsSupportReportGeneratorPermission: boolean;\r\n IsMultilineCorrespondenceSubject: boolean;\r\n IsSwappedBetweenForwardingHistoryWidget: boolean;\r\n CreateSubIsCorrTypeEditable: boolean;\r\n IsOwnerSectionShouldAppear: boolean;\r\n IsMultilineNotification: boolean;\r\n MaxSignatureWidth: number;\r\n MinSignatureHeight: number;\r\n MinSignatureWidth: number;\r\n ShowSubCorrespondeceHeaderInCLearFont: boolean;\r\n AdvanceSearchOrderBy: string;\r\n ShowBerrySystemNameOnLoginPage: boolean;\r\n BranchesGeneralDepartment: string;\r\n showNotificationEllipsis: boolean;\r\n IsDeliveryReportAttachmentsMandatory: boolean;\r\n ProclamationsImportantSubjectsCommittee: boolean;\r\n dmsServerUrl: string;\r\n ExternalCorrespondenceNumberEnabled: string;\r\n HideCentralAdministrationBuilding: boolean;\r\n ShowScheduleTypes: boolean;\r\n HideIncomingEntityListItem: boolean;\r\n DocumentsDefaultExpirationPeriodInYears: number;\r\n ShowStorageFolderDesc: boolean;\r\n supportTeamEmail: string;\r\n allowCaseFileForwardMethod: boolean;\r\n ShowFormBuilderDynamicFieldsSectionInOverview: boolean;\r\n ShowCommitteeStatus: boolean;\r\n CookieTimeoutIntervalToCheck: number;\r\n ShowCorrespondenceTypeAndClassificationForInboxes: boolean;\r\n Managecommittee: boolean;\r\n valueFormatTasdeed: string;\r\n BetaSignModule: string;\r\n ShowXCKeywordsInMultiControls: boolean;\r\n IsDbAuditEnabled: boolean;\r\n ShowOverviewUnattachedSection: boolean;\r\n ShowOverviewMultiFollowersSection: boolean;\r\n NazahaPortalSource: number;\r\n CreateDeliveryReportTypes: string;\r\n ShowNameOfTheMeetingTemplate: boolean;\r\n ShowAutoNumbering: boolean;\r\n ShowMeetings_Settings: boolean;\r\n RefreshDashboardsTimerInterval: number;\r\n IsLegacyAuditEnabled: boolean;\r\n IsCitizenVoiceEnabled: boolean;\r\n ShowCalenderSyncFeature: boolean;\r\n ShowLegacyAndNewAuditsUI: boolean;\r\n ShowCorrespondenceFollowerSection: boolean;\r\n showA4SizeWarning: boolean;\r\n a4InstructionVideoURL: string;\r\n HideDidActionOnIt: boolean;\r\n DisableDeliveryReportsReadyTemplatesFeature: any;\r\n SignatureDateOnlyAsDefaultFormat: boolean;\r\n IsPrivateOutgoingCorrAutoSaved: boolean;\r\n ShowClosedArchivedInReport: boolean;\r\n ShowHideCorrespondencesShelving: boolean;\r\n ShowRecommendationsReport: boolean;\r\n ShowGeneralCommitteeReport: boolean;\r\n showBerryUserManual: string;\r\n MultimediaExtensions: string;\r\n webrtcServer: {\r\n url: string;\r\n username: string;\r\n credential: string;\r\n };\r\n DefaultXCAreaSignatureWidth: number;\r\n DefaultXCAreaSignatureHeight: number;\r\n ShowMeetingBasicDashboard: boolean;\r\n DefaultInternalSenderAsCCInForward: boolean;\r\n IsEntityCorrespondenceReportEnabled: boolean;\r\n IsUnsentCorrespondenceReportEnabled: boolean;\r\n MakeClassificationAsRequiredField: boolean;\r\n AuthPasswordValidatorRequiredLength: number;\r\n ActivateIntimationNumberAndDateFields: boolean;\r\n ShowNumberSearchTypes: boolean;\r\n SearchByPercentageTextInLinkedStudy: boolean;\r\n DetermineCorrespondenceOwnerUserTypes: boolean;\r\n CustomCopy: boolean;\r\n ShowComponenetBasesOnCategory: boolean;\r\n MaximumAllowedBranchCorrespondences: number;\r\n CorrespondenceBarcodePrintingSettings: boolean;\r\n CorrespondanceDashboardSettings: boolean,\r\n WithoutDeadlineCorrespondance: boolean,\r\n ClosedArchivedCorrespondance: boolean,\r\n FailedLoginAttemptsCount: number,\r\n ChangeCorrespondenceSendToWhenConfidentialChange: boolean,\r\n AttachmentGroupsSupportSearching: boolean,\r\n CorrespondenceResponsibleFilter: boolean,\r\n WhatsNewFileLinkWeb: string\r\n}\r\n\r\nexport interface IContactsKeys {\r\n DefaultCountryId: number;\r\n}\r\n\r\nexport interface IocServices {\r\n appSettlementServices: IAppSettlementServices;\r\n CreateNewExtraValidationBaseService: ICreateNewExtraValidationBaseService;\r\n isConsultantFeatureEnabled: boolean;\r\n}\r\nexport interface IAppSettlementServices {\r\n isSettlementMandatoryForOutgoingUponCreation: boolean;\r\n}\r\nexport interface ICreateNewExtraValidationBaseService {\r\n EnableExternalCorrespondenceDateValidation: boolean;\r\n}\r\nexport const noop = () => { };\r\n\r\nexport enum LookupTypeEnum {\r\n None = 0,\r\n MeetingStatus = 1,\r\n ReminderMethod = 2,\r\n Urgency = 3,\r\n Confidentiality = 4,\r\n ReceivingMode = 5,\r\n InitialClassificationOfCorresspondence = 6,\r\n NotificationType = 7,\r\n PredefinedDateFilterOptions = 8,\r\n ReplySubCorrespondenceOptions = 9,\r\n IncidentClassifications = 10,\r\n IncidentImportance = 11,\r\n IncidentSpeciality = 12, // المجال او النطاق Used in Incident\r\n ProclamatorType = 13, // صفة المبلغ\r\n CurrencyType = 14, // Used in IncidentResponsibleBase\r\n IncidentStudyRecommendationType = 15, // توصية لجنة فحص البلاغات\r\n SocialNetwork = 16, // وسيلة أو اسم التواصل الاجتماعي ... فيس بوك ، تويتر ... الخ\r\n CorruptionSuspicionInfoSourceType = 17, // Check CorruptionSuspicion.SourceType\r\n\r\n /// مصدر المعلومة كشخص ، هل هو\r\n /// شخص معروف للموظف لا يرغب بإظهار بياناته\r\n /// موظف في الهيئة\r\n /// شخص معروف\r\n PersonInfoSourceType = 18,\r\n\r\n /// هل يرغب (مصدر المعلومة) أن يتم الحفاظ على سرية معلوماته\r\n /// تامة / خارجية / غير سرية\r\n /// Reference: htt-projects.invisionapp.com/d/main#/console/14786364/310225011/preview\r\n ConfidentialitySourceInformationId = 19,\r\n ScheduleItemCompletionStatus = 20,\r\n UncooperativeType = 21,\r\n\r\n /// الموافقة على الزيارة / رفض و تعليق\r\n ScheduleItemApprovalStatus = 22,\r\n\r\n ProclamationPhoneCallInfo = 23,\r\n /// \r\n /// Lookups in coomunications\r\n /// \r\n CommunicationType = 25, // أنواع المخاطبات في ملف القضية\r\n CommunicationClassification = 26, //تصنيفات المخاطبات في ملف القضية\r\n\r\n CommunicationEntityTypes = 27, //نوع الجهة الموجهة اليها المخاطبة\r\n Cuurency = 14,\r\n VisitType = 29,\r\n ManadateType = 30,\r\n TravelWay = 31,\r\n HousingCosts = 32,\r\n HousingClass = 33,\r\n OutsiderCommitteeSubject = 34,\r\n ProclamationSourceType = 35,\r\n ProclamationExaminationCommitteeRecommendation = 36, // توصية لجنة فحص البلاغات\r\n\r\n //الجهة التابعة - نوع الجهة المبلغ عنها\r\n ProclamedEntityTypeRelatedOrganization = 37,\r\n StudiesClassification = 48,\r\n StudiesSavedReason = 50,\r\n CrimeMainClassification = 52,\r\n CrimeSubClassification = 53,\r\n CrimeDetailedClassification = 54,\r\n\r\n RewardsCommitteeDecision = 59, // نوع قرار اللجنة في إقتراح المكافآت\r\n\r\n InformationSourceCategory = 63,\r\n InformationSourceCategoryType = 64,\r\n\r\n CommitteeContributionType = 68,\r\n CooperationType = 69,\r\n\r\n MainPurpose = 71, // الوظيفة الأساسية في تأكيد إستلام أصل المعاملة\r\n MainSubject = 72, // الموضوع الرئيسي في تأكيد استلام أصل المعاملة\r\n SubSubject = 73, // الموضوع الفرعي في تأكيد إستلام أصل المعاملة\r\n CommunicationsImportance = 76,\r\n CaseFileCrimesCommitteeDecision = 88,\r\n CaseFileCrimesIncidentSpeciality = 89,\r\n PunishmentPeriod = 92,\r\n DocumentConfidentiality = 93,\r\n\r\n PeriodType = 94,\r\n ContractType = 95,\r\n OrderType = 96,\r\n CommitmentLevel = 97,\r\n ProjectState = 98,\r\n ProjectWorkArea = 99,\r\n ContractDuration = 100,\r\n Obstacle = 101\r\n}\r\n","export class ShowFlexPaperAnnotations {\r\n public SignatureBtn: boolean = false;\r\n public SignatureNoteBtn: boolean = false;\r\n public signatureItem: boolean = true;\r\n public BlockAreaBtn: boolean = false;\r\n public deviceSignature: boolean = false;\r\n public NoteBtn: boolean = false;\r\n public StrikeoutBtn: boolean = false;\r\n public DrawBtn: boolean = false;\r\n public DeleteBtn: boolean = false;\r\n public BlockDiv: boolean = false;\r\n public StampBtn: boolean = false;\r\n public StampNoteBtn: boolean = false;\r\n public MarkingSignature: boolean = false;\r\n public readyWordsBtn:boolean=false;\r\n public ShowAnnotationsBtn: boolean = false;\r\n public showMarkingSignatureBtn: boolean = false;\r\n public locateSignature: boolean = false;\r\n public locateMarking: boolean = false;\r\n public deleteBtnDropDown: boolean = false;\r\n public SaveAnnotationsBtn: boolean = false;\r\n public multiSignature: boolean = false;\r\n public locationQRCode: boolean = false;\r\n public SelectBtn: boolean = false;\r\n public btnDropDownSignature: boolean = false;\r\n public locateQrCode: boolean = false;\r\n public AttQRCodeBtn: boolean = false;\r\n public btnDropDownQRCode: boolean = false;\r\n public xcLocateSignature: boolean = false;\r\n public CertifyAnnotationsBtn: boolean = false;\r\n public CorrQRCodeBtn : boolean = false;\r\n}\r\n","export class ShowFlexPaperTopBarActions {\r\n public PrinterBtn: boolean = false;\r\n public SinglePagePortraitBtn: boolean = false;\r\n public TwoPageBtn: boolean = false;\r\n public TileThumbsBtn: boolean = false;\r\n public FitWidthBtn: boolean = false;\r\n public FitPageBtn: boolean = false;\r\n public FlipRotateBtn: boolean = false;\r\n public ZoomSliderBtn: boolean = false;\r\n public ZoomFactorBtn: boolean = false;\r\n public FullScreenBtn: boolean = false;\r\n public NavigatePagesBtn: boolean = false;\r\n public SelectTextBtn: boolean = false;\r\n public HandDragCursorBtn: boolean = false;\r\n public SearchBtn: boolean = false;\r\n public UserPreDefinedSignatureInfo: any = null;\r\n}\r\n","import { TaskTypesEnum } from \"src/app/Tasks/models/TaskTypesEnum\";\r\nimport { TasksActivityDto } from \"../../../Tasks/models/TasksActivityDto\";\r\n\r\nexport class CorrespondenceTaskDto {\r\n CorrespondenceTaskComments: TaskCommentDto[];\r\n CompletnessStatus: CompletnessStatusEnum;\r\n CreatedByUserShortName: string;\r\n RemindersRemainedDays: number;\r\n EmployeeRemindersRemainedDays: number;\r\n CorrespondenceSubject: string;\r\n HasEditPermission: boolean;\r\n HasDonePermission: boolean;\r\n HasViewPermission: boolean;\r\n ReminderHangfireJobId: any;\r\n EmployeeReminderHangfireJobId: any;\r\n DeadlineFormated: Date;\r\n CorrespondenceId: any;\r\n AssignedToUserId: any;\r\n AssignedToIndividualId: any;\r\n ReminderDateTime: any;\r\n EmployeeReminderDateTime: any;\r\n RemainingDays: number;\r\n CreatedByUserId: any;\r\n TaskTypeName: string;\r\n AssignedToName: any;\r\n ReminderStr: string;\r\n EmployeeReminderStr: string;\r\n ShowPageNumber: any;\r\n DeadLineStringValue;\r\n Description: string;\r\n ConnAppId: number;\r\n ConnStatusTextAr: string;\r\n ConnStatusTextEn: string;\r\n ConnStatusColor: string;\r\n DeadLineDate: Date;\r\n ShortName: string;\r\n loggedUserID: any;\r\n ReminderDate: any;\r\n EmployeeReminderDate: any;\r\n TaskType: number;\r\n DeadlineStr: any;\r\n LateDays: number;\r\n IsDone: boolean;\r\n DoneByUserId: any;\r\n DoneByUserShortName: string;\r\n DoneOnFormated: string;\r\n IsLate: boolean;\r\n IsRead: boolean;\r\n IsPersonal: boolean;\r\n PagesNo: number;\r\n Deadline: Date;\r\n DateTimeNow: Date;\r\n DeadlineMinutes;\r\n CreatedOn: any;\r\n NoteStrip: any;\r\n DeadlineHours;\r\n Title: string;\r\n Note: string;\r\n Id: any;\r\n LinkedItemId: any;\r\n TaskStatus: any;\r\n CompletionPercentage: any;\r\n ActivitiesSummary: TasksActivityDto[] = [];\r\n ConfirmCompletionRequired: boolean = false;\r\n}\r\n\r\nexport class TaskCommentDto {\r\n TaskId: number;\r\n CreatedOn: Date;\r\n Comment: string;\r\n CreatedByUserId: any;\r\n AssignedToUserId: any;\r\n CreatedOnFormated: any;\r\n AssignedToIndividualId: any;\r\n TaskType: any;\r\n LinkedItemId: number;\r\n IsTaskDone: boolean;\r\n}\r\n\r\nexport enum CompletnessStatusEnum {\r\n InProgress = 0,\r\n Done = 1,\r\n InProgressButLate = 2,\r\n DoneButLate = 3\r\n}\r\n\r\nexport class AssignTaskSearchDto {\r\n TaskType: TaskTypesEnum;\r\n LinkedItemId: string;\r\n ByPerson?: boolean;\r\n SortBy: SortType;\r\n SearchText: string;\r\n TaskId?: number;\r\n UserId: string;\r\n \r\n ShowDone: boolean;\r\n PrimaryId?: string;\r\n HasFullPermissionsOnInitiatives?: boolean = false;\r\n}\r\n \r\nexport class PersonalTaskSearchDto {\r\n ByPerson: boolean;\r\n SortBy: SortType;\r\n SearchText: any;\r\n TaskId: number;\r\n UserId: any;\r\n Taskfilter: TaskFilterType;\r\n}\r\n\r\nexport enum SortType {\r\n Ascending = 0,\r\n Descending = 1\r\n}\r\n\r\nexport enum TaskFilterType {\r\n NoFilter = 0,\r\n Faourite = 1,\r\n Late = 2,\r\n FinishingToday = 3,\r\n FinishingInOneWeek = 4,\r\n Completed = 5\r\n}\r\n","export enum ObjectState {\r\n Unchanged,\r\n Added,\r\n Modified,\r\n Deleted \r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { BaseService } from \"../baseService\";\r\nimport { SignatureTypes } from \"../../../berry/correspondences/_models/enums/SignatureTypes\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class PendingActionsService extends BaseService {\r\n\r\n baseURL = BERRY.hostName;\r\n otherURL = BERRY.hostName + \"api/usersignature\";\r\n url = BERRY.hostName + \"api/attachment-operation/\";\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n getUserPendingActions(searchFilter: any): Observable {\r\n const url = this.baseURL + \"api/PendingActionsApi/GetUserPendingActions\";\r\n return super.post(url, searchFilter);\r\n }\r\n\r\n getPendingActionsCount(): Observable {\r\n const url = this.baseURL + \"api/PendingActionsApi/GetPendingActionsCount\";\r\n return this.http.get(url)\r\n }\r\n public getUserSignutureORMarking(userId: string, signatureType: SignatureTypes) {\r\n let url = `${this.otherURL // api/usersignature/view-signature/${me.selectedMark.UserId}?signatureType=Signature`\r\n }/view-signature/${userId}?signatureType=${signatureType}`;\r\n return super.get(url);\r\n }\r\n\r\n public approveRequest(\r\n parentId: string,\r\n attachmentId: any,\r\n signatureType: SignatureTypes): Observable {\r\n let url = this.url + \"approve-request\";\r\n\r\n let params = {\r\n AttachmentId: attachmentId,\r\n Type: signatureType,\r\n ParentId: String(parentId)\r\n };\r\n return super.post(url, params);\r\n }\r\n\r\n getExtensionIcon(extension: string): string {\r\n switch (extension) {\r\n case \".pdf\":\r\n return \"evicon-file-pdf\";\r\n\r\n case \".png\":\r\n case \".jpg\":\r\n case \".jpeg\":\r\n return \"evicon-file-image img-icon-color\";\r\n\r\n case \".docx\":\r\n case \".doc\":\r\n return \"evicon-file-word\";\r\n\r\n case \".xlsx\":\r\n return \"evicon-file-excel\";\r\n\r\n case \".txt\":\r\n return \"evicon-file-txt\";\r\n\r\n case \".pptx\":\r\n return \"evicon-file-powerpoint\";\r\n\r\n default:\r\n return \"evicon-file-generic\";\r\n }\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { HttpInterceptor } from \"../http-interceptor\";\r\nimport { BaseService } from \"../baseService\";\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class UserPermissionService extends BaseService {\r\n userPermissions: any[] = [];\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n public isUserInRole(roleId: any): Observable {\r\n var me = this;\r\n var permissions = this.userPermissions.filter(x => x.RoleId == roleId);\r\n if (permissions.length > 0 && permissions[0].IsCalled) {\r\n return Observable.create(observer => {\r\n observer.next(permissions[0].IsInRole);\r\n observer.complete();\r\n });\r\n } else if (permissions.length > 0 && !permissions[0].IsCalled) {\r\n return Observable.create(observer => {\r\n observer.next(false);\r\n observer.complete();\r\n });\r\n } else {\r\n var newUserPermission = new UserPermission();\r\n newUserPermission.IsInRole = false;\r\n newUserPermission.RoleId = roleId;\r\n newUserPermission.IsCalled = false;\r\n newUserPermission.RoleName = \"\";\r\n this.userPermissions.push(newUserPermission);\r\n return this.http\r\n .get(\r\n BERRY.hostName +\r\n \"Correspondences/Applications/IsUserInRole?roleId=\" +\r\n roleId\r\n )\r\n .pipe(\r\n map(data => {\r\n var permissions = this.userPermissions.filter(\r\n x => x.RoleId == roleId\r\n );\r\n if (permissions.length > 0) {\r\n permissions[0].IsInRole = data;\r\n permissions[0].IsCalled = true;\r\n }\r\n return data;\r\n }),\r\n catchError(this.handleError)\r\n );\r\n }\r\n }\r\n}\r\n\r\nexport enum UserRoles {\r\n ReviewArchivedCorrespondence = 309,\r\n CancelReviewArchivedCorrespondence = 310,\r\n ViewAllMeetingList = 257,\r\n AttachmentsRecord = 198,\r\n ShowUrgentNotification = 338,\r\n ViewSubCorrespondences = 343,\r\n CreateSubCorrespondence = 344,\r\n ViewSubsequentCorrespondences = 345,\r\n CreateSubsequentCorrespondence = 346,\r\n SetAttachmentConfidentiality = 353,\r\n UpdateAttachmentConfidentiality = 354,\r\n EditAttachmentSummary = 361,\r\n RecallCorrespondence = 369,\r\n ScanBlack = 3,\r\n ScanGray = 2,\r\n ScanColor = 1,\r\n CanViewEmailNotificationSection = 384,\r\n canViewCorrespondenceLetters = 446,\r\n FullSignMarkPower = 438,\r\n SignMarkRequest = 439,\r\n Sendcorrespondencedetailsandattachmentsbyemail = 450,\r\n authorityToEditPermissions = 452,\r\n CompleteCorrespondence = 453,\r\n ForwardCompletedCorrespondence = 454,\r\n ChangeStatusOfCorrespondenceFromInProgressToCompleted = 455,\r\n AddFieldVisit = 456,\r\n DeleteMarkRequest = 1651,\r\n ViewMarkRequest = 1652,\r\n LinkingCorrs = 204,\r\n // الموافقة على الزيارة الميدانيه\r\n ApproveFieldVisit = 457,\r\n\r\n // إعتماد الزيارة الميدانيه\r\n AccreditedFieldVisit = 907,\r\n\r\n MapIncidentToCaseFile = 458,\r\n AddIncident = 466,\r\n AddStudyRecommendation = 533,\r\n EditIncidentStudy = 525,\r\n AddIncidentStudy = 524,\r\n ViewAuditTrail = 156,\r\n ForwardingLog = 197,\r\n BreakCorrespondenceWorkflow = 186,\r\n ViewDocumentCenter = 720,\r\n DocumentApprovalScreen = 721,\r\n CorrespondenceDeliveryScreen = 722,\r\n DocumentFollowUp = 723,\r\n ArchiveScreen = 724,\r\n DocumentAdvanceSearch = 725,\r\n DocumentBranchScreen = 726,\r\n AddingMovingRequest = 727,\r\n AddingFolder = 728,\r\n EditIncidentStudyImportance = 731,\r\n CreateCorrInternal = 8,\r\n ActivityLog = 74,\r\n FinalizeSubCorrespondence = 462,\r\n CanChangeAttachmentTitle = 459,\r\n ShowComplatedCorrespondenceInbox = 523,\r\n SaveIncidents = 866,\r\n ViewNazahaEmplyeePerformanceTab = 735,\r\n RequestFromRecipientToSign = 183,\r\n SharedAttachmentWithIndividual = 906,\r\n ReceiveFyiCorrImplicitly = 150,\r\n CorrLinking = 127,//General correspondences\r\n PrivateCorrLinking = 131,//Private correspondences\r\n EditDeleteLinkedCorrespondence = 168,\r\n SendSMSWhenGrievance = 170,\r\n CommitteeAdvanceSearch = 1510,\r\n CloseAndArchive=157,\r\n\r\n ViewArchivingExpiredCorrespondencesDetails = 1845,\r\n}\r\n\r\nexport class UserPermission {\r\n constructor() { }\r\n public IsInRole: boolean = false;\r\n public IsCalled: boolean = false;\r\n public RoleId: number = 0;\r\n public RoleName: string = \"\";\r\n public ObservableCallBack: any;\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../models/IGlobalSettings\";\r\n\r\ndeclare let BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class UserGuidServices {\r\n UserGuid: UserGuidDto[] = [];\r\n\r\n constructor() {\r\n \r\n }\r\n\r\n public GetUserGuidUrlByCurrentUrl(url: string, orginalUrl: string): string {\r\n\r\n this.UserGuid = Object.keys(BERRY.UserGuideDictionary).map(item => {\r\n var dto = new UserGuidDto();\r\n dto.Url = item;\r\n dto.href = BERRY.UserGuideDictionary[item];\r\n return dto;\r\n })\r\n let UserGuidResult: UserGuidDto[] = [];\r\n\r\n UserGuidResult = this.UserGuid.filter(obj => {\r\n return (obj.Url.toLowerCase() == orginalUrl.toLowerCase());\r\n });\r\n if (UserGuidResult.length == 0) {\r\n UserGuidResult = this.UserGuid.filter(obj => {\r\n return (obj.Url.toLowerCase() == url.toLowerCase());\r\n });\r\n }\r\n if (UserGuidResult.length == 0 && !url.startsWith(\"/\")) {\r\n url = \"/\" + url.toLowerCase();\r\n UserGuidResult = this.UserGuid.filter(obj => {\r\n return (obj.Url.toLowerCase() == url);\r\n });\r\n }\r\n if (UserGuidResult.length == 0 && !orginalUrl.startsWith(\"/\")) {\r\n orginalUrl = \"/\" + orginalUrl.toLowerCase();\r\n UserGuidResult = this.UserGuid.filter(obj => {\r\n return (obj.Url.toLowerCase() == orginalUrl);\r\n });\r\n }\r\n if (UserGuidResult.length == 0) {\r\n console.warn(url + \">>>>not found\");\r\n return \"\";\r\n } else if (UserGuidResult.length == 1) {\r\n return UserGuidResult[0].href;\r\n } else {\r\n console.error(\"there are many link for this page\");\r\n return UserGuidResult[0].href;\r\n }\r\n }\r\n}\r\n\r\nexport class UserGuidDto {\r\n Url: string;\r\n href: string;\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport {\r\n IGlobalSettings,\r\n LookupTypeEnum\r\n} from \"../../../models/IGlobalSettings\";\r\nimport { BaseService } from \"../../baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class LookupSvc extends BaseService {\r\n baseURL = BERRY.hostName;\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n public GetLookups(lookupType: LookupTypeEnum): Observable {\r\n this.IsBusy = true;\r\n return super.get(\r\n this.baseURL + \"api/LookupAPI/LookupAPI-GetLookups?lookupType=\" + lookupType\r\n );\r\n }\r\n}\r\n","import { Observable, throwError } from \"rxjs\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport {\r\n Response,\r\n Headers,\r\n RequestOptions,\r\n URLSearchParams\r\n} from \"@angular/http\";\r\nimport { HttpInterceptor } from \"./http-interceptor\";\r\n\r\n@Injectable()\r\nexport abstract class BaseService {\r\n\r\n constructor(public http: HttpInterceptor) { }\r\n\r\n IsBusy: boolean = false;\r\n\r\n clone(obj) {\r\n let me = this;\r\n if (\r\n obj === null ||\r\n obj === \"\" ||\r\n obj?.length ==0 ||\r\n typeof obj !== \"object\" ||\r\n \"isActiveClone\" in obj\r\n )\r\n return obj;\r\n var temp;\r\n if (obj instanceof Date) temp = new Date(obj);\r\n //or new obj.constructor();\r\n else temp = new obj.constructor();\r\n\r\n for (var key in obj) {\r\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\r\n obj[\"isActiveClone\"] = null;\r\n temp[key] = me.clone(obj[key]);\r\n delete obj[\"isActiveClone\"];\r\n }\r\n }\r\n\r\n return temp;\r\n }\r\n\r\n post(url: string, Params = {}, ContentType = \"application/json\", EnableSerialization = true): Observable {\r\n let me = this;\r\n let headers = new Headers({ \"Content-Type\": ContentType });\r\n let options = new RequestOptions({ headers: headers });\r\n if (EnableSerialization)\r\n return this.http.post(url, Params, options).pipe(\r\n map(me.extractData),\r\n catchError(me.handleError)\r\n );\r\n else return this.http.post(url, Params, options);\r\n }\r\n\r\n put(url: string, Params = {}, ContentType = \"application/json\", EnableSerialization = true): Observable {\r\n let me = this;\r\n let headers = new Headers({ \"Content-Type\": ContentType });\r\n let options = new RequestOptions({ headers: headers });\r\n if (EnableSerialization)\r\n return this.http.put(url, Params, options).pipe(\r\n map(me.extractData),\r\n catchError(me.handleError)\r\n );\r\n else return this.http.put(url, Params, options);\r\n }\r\n\r\n get(urlWithQueryString: string, ContentType = \"application/json\", EnableSerialization = true ): Observable {\r\n let me = this;\r\n let headers = new Headers({ \"Content-Type\": ContentType });\r\n let options = new RequestOptions({ headers: headers });\r\n if (EnableSerialization)\r\n return this.http.get(urlWithQueryString, options).pipe(\r\n map(me.extractData),\r\n catchError(me.handleError)\r\n );\r\n else\r\n return this.http\r\n .get(urlWithQueryString, options)\r\n .pipe(catchError(me.handleError));\r\n }\r\n\r\n getWithQueryString(url: string, Params = {}, ContentType = \"application/json\"): Observable {\r\n let me = this;\r\n let headers = new Headers({ \"Content-Type\": ContentType });\r\n let options = new RequestOptions({ headers: headers });\r\n let urlWithQueryString = me.constructUrl(url, Params);\r\n return this.http.get(urlWithQueryString, options).pipe(\r\n map(me.extractData),\r\n catchError(me.handleError)\r\n );\r\n }\r\n\r\n delete(url: string, ContentType = \"application/json\", EnableSerialization: boolean = true ): Observable {\r\n let me = this;\r\n let headers = new Headers({ \"Content-Type\": ContentType });\r\n let options = new RequestOptions({ headers: headers });\r\n if (EnableSerialization)\r\n return this.http.delete(url, options).pipe(\r\n map(me.extractData),\r\n catchError(me.handleError)\r\n );\r\n else return this.http.delete(url, options);\r\n }\r\n\r\n doPost(Url: string, Params: any): Observable {\r\n return this.post(Url, Params);\r\n }\r\n\r\n extractData(res: Response): any {\r\n let body = res;\r\n this.IsBusy = false;\r\n return body || {};\r\n }\r\n\r\n handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n this.IsBusy = false;\r\n return throwError(error);\r\n }\r\n\r\n toQueryString(json: any): string {\r\n if (json != null && json != undefined) {\r\n var service: URLSearchParams = new URLSearchParams();\r\n Object.keys(json).forEach(function (key, index) {\r\n if (json[key] != null && json[key] != undefined)\r\n service.set(key, json[key]);\r\n });\r\n return service.toString();\r\n }\r\n return \"\";\r\n }\r\n\r\n constructUrl(baseUrl: string, queryObject: any): string {\r\n var query = this.toQueryString(queryObject);\r\n var prefixChar = baseUrl.indexOf(\"?\") > -1 ? \"&\" : \"?\";\r\n if (query != \"\") return baseUrl + prefixChar + query;\r\n return baseUrl;\r\n }\r\n}\r\n\r\nexport interface ApiResult {\r\n State: boolean;\r\n ErrorMessage: string;\r\n Result: T;\r\n}\r\n","import {\r\n Component,\r\n ViewChild,\r\n Injectable,\r\n ApplicationRef,\r\n ViewContainerRef,\r\n Injector,\r\n ComponentFactoryResolver\r\n} from \"@angular/core\";\r\nimport { ModalDirective } from \"ngx-bootstrap/modal\";\r\nimport { IGlobalSettings } from \"../models/IGlobalSettings\";\r\nimport { BaseCmp } from \"../components/BaseComponent\";\r\nimport { DetailsSVC } from \"src/app/berry/correspondences/details/details-svc\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"message-Urgent\",\r\n template: `\r\n \r\n
    \r\n
    \r\n \r\n

    {{ alert?.title }}

    \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 {{ alert?.txtccemailText }}\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 {{ alert?.yesText }}\r\n \r\n \r\n {{ alert?.noText }}\r\n \r\n \r\n {{ alert?.okText }}\r\n \r\n

    \r\n \r\n \r\n \r\n \r\n `\r\n})\r\nexport class UrgentConfirmationBox extends BaseCmp {\r\n ngSuperOnInit() {\r\n this.CanSendSMSFromGeneralSetting();\r\n }\r\n ngSuperAfterViewInit() { }\r\n isSubscribed: boolean = true;\r\n\r\n constructor(public detailsSVC: DetailsSVC) {\r\n super();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n @ViewChild(\"MessageBoxModal\",{static:true}) _modal: ModalDirective;\r\n @ViewChild(\"isSmsEnabled\") sms: any;\r\n @ViewChild(\"isCcEmailEnabled\") ccEmail: any;\r\n @ViewChild(\"isEmailEnabled\") email: any;\r\n @ViewChild(\"isDeactivateNotificationEnabled\") isDeactivateNotificationEnabled: any;\r\n\r\n get canSendSMSFeature() {\r\n return BERRY.onOffFeatures.CanSendSMS;\r\n }\r\n\r\n public get IsEmailEnabled() {\r\n return this.email ? this.email.nativeElement.checked : false;\r\n }\r\n\r\n public get isCcEmailEnabled() {\r\n return this.ccEmail ? this.ccEmail.nativeElement.checked : false;\r\n }\r\n\r\n public get NoMobileNumberStr() {\r\n return this.getText(\"NoMobileNumber\", \"DialogUrgent\");\r\n }\r\n\r\n public get isSmsEnabled() {\r\n return this.sms ? this.sms.nativeElement.checked : false;\r\n }\r\n\r\n public get IsDeactivateNotificationEnabled() {\r\n return this.isDeactivateNotificationEnabled ? this.isDeactivateNotificationEnabled.nativeElement.checked : false;\r\n }\r\n\r\n config: any = {};\r\n public get onHidden() {\r\n return this._modal.onHidden;\r\n }\r\n\r\n canSendSMSFromGeneralSetting: boolean = false;\r\n CanSendSMSFromGeneralSetting() {\r\n let me = this;\r\n me.canSendSMSFromGeneralSetting = BERRY.onOffFeatures.CanSendSMS;\r\n }\r\n\r\n alerts: Array = [];\r\n onDone: (result: UrgentConfirmationBoxResult) => void;\r\n result: UrgentConfirmationBoxResult = UrgentConfirmationBoxResult.Cancel;\r\n\r\n danger(\r\n message: string,\r\n title?: string,\r\n done?: (result: UrgentConfirmationBoxResult) => void\r\n ) {\r\n let options = new UrgentConfirmationBoxOptions(\r\n UrgentConfirmationBoxType.Danger,\r\n message,\r\n title\r\n );\r\n this.show(options, done);\r\n }\r\n\r\n info(\r\n message: string,\r\n title?: string,\r\n done?: (result: UrgentConfirmationBoxResult) => void\r\n ) {\r\n let options = new UrgentConfirmationBoxOptions(\r\n UrgentConfirmationBoxType.Info,\r\n message,\r\n title\r\n );\r\n this.show(options, done);\r\n }\r\n\r\n success(\r\n message: string,\r\n title?: string,\r\n done?: (result: UrgentConfirmationBoxResult) => void\r\n ) {\r\n let options = new UrgentConfirmationBoxOptions(\r\n UrgentConfirmationBoxType.Success,\r\n message,\r\n title\r\n );\r\n this.show(options, done);\r\n }\r\n\r\n warning(\r\n message: string,\r\n title?: string,\r\n done?: (result: UrgentConfirmationBoxResult) => void\r\n ) {\r\n let options = new UrgentConfirmationBoxOptions(\r\n UrgentConfirmationBoxType.Warning,\r\n message,\r\n title\r\n );\r\n this.show(options, done);\r\n }\r\n\r\n show(\r\n options: UrgentConfirmationBoxOptions,\r\n done?: (result: UrgentConfirmationBoxResult) => void\r\n ) {\r\n this.onDone = done;\r\n this.alerts.push(options);\r\n if (typeof this._modal.config == \"undefined\") {\r\n this._modal.config = this.config;\r\n }\r\n\r\n this._modal.show();\r\n }\r\n\r\n hide(): void {\r\n if (this.onDone) this.onDone(this.result);\r\n\r\n this._modal.hide();\r\n }\r\n\r\n yes() {\r\n this.result = UrgentConfirmationBoxResult.Yes;\r\n this.hide();\r\n }\r\n no() {\r\n this.result = UrgentConfirmationBoxResult.No;\r\n this.hide();\r\n }\r\n ok() {\r\n this.result = UrgentConfirmationBoxResult.Ok;\r\n this.hide();\r\n }\r\n}\r\n\r\nexport enum UrgentConfirmationBoxType {\r\n Danger,\r\n Info,\r\n Success,\r\n Warning\r\n}\r\n\r\nexport enum UrgentConfirmationBoxResult {\r\n Ok,\r\n Yes,\r\n No,\r\n Cancel\r\n}\r\n\r\nexport class UrgentConfirmationBoxOptions {\r\n type: string;\r\n constructor(\r\n type: UrgentConfirmationBoxType,\r\n public message: string,\r\n public title?: string,\r\n public emailText?: string,\r\n public ccemailText?: string,\r\n public txtccemailText?: string,\r\n public smsText?: string,\r\n public setting?: boolean,\r\n public emailCheck?: boolean,\r\n public smsCheck?: boolean,\r\n public yesText?: string,\r\n public noText?: string,\r\n public isMobileAvailable?: boolean,\r\n public okText?: string,\r\n public ShowDeactivateNotificationControl: boolean = false\r\n ) {\r\n if (!this.yesText && !this.noText && !this.okText) {\r\n this.okText = BERRY.loc.CommonDbRes.Ok;\r\n }\r\n this.type = UrgentConfirmationBoxType[type].toLocaleLowerCase();\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class UrgentDialogManager {\r\n _rootViewContainerRef: ViewContainerRef;\r\n\r\n constructor(\r\n public resolver: ComponentFactoryResolver,\r\n public injector: Injector,\r\n public appRef: ApplicationRef\r\n ) {}\r\n\r\n create(resolve: (dialog: UrgentConfirmationBox) => void) {\r\n if (!this.appRef[\"components\"].length) {\r\n const err = new Error(\r\n \"Application root component cannot be found. Try accessing application reference in the later life cycle of angular app.\"\r\n );\r\n console.error(err);\r\n }\r\n\r\n // get app root view component ref\r\n //if (!this._rootViewContainerRef) {\r\n // this._rootViewContainerRef = this.appRef[\"components\"][0][\r\n // \"_hostElement\"\r\n // ].vcRef;\r\n // }\r\n\r\n if (!this._rootViewContainerRef) {\r\n this._rootViewContainerRef = this.appRef[\"components\"][0].instance[\r\n \"viewContainerRef\"\r\n ];\r\n }\r\n\r\n // get options providers\r\n //let providers = ReflectiveInjector.resolve([\r\n // provide(optionsOptions, { useValue: this.options })\r\n //]);\r\n\r\n // if before RC4\r\n /*\r\n this.loader.loadNextToLocation(ConfirmationModalCmp, this._rootViewContainerRef, providers)\r\n .then((container) => {\r\n let confirmationComp = container.instance;\r\n \r\n confirmationComp.addHiddenCallback(() => {\r\n //dispose the container\r\n if (container) {\r\n container.destroy();\r\n }\r\n });\r\n \r\n resolve(confirmationComp);\r\n });\r\n */\r\n\r\n //Todo Pankaj Sharma: Used ComponentFactoryResolver instead of ComponentResolver\r\n //if RC4\r\n var confirmationBoxCmpFactory = this.resolver.resolveComponentFactory(\r\n UrgentConfirmationBox\r\n );\r\n var container = this._rootViewContainerRef.createComponent(\r\n confirmationBoxCmpFactory,\r\n 0,\r\n this.injector\r\n );\r\n\r\n let confirmationComp = container.instance;\r\n\r\n confirmationComp.onHidden.subscribe(() => {\r\n //dispose the container\r\n if (container) {\r\n container.destroy();\r\n }\r\n });\r\n\r\n // wait until the component is initialized\r\n setTimeout(() => {\r\n resolve(confirmationComp);\r\n }, 150);\r\n\r\n //if RC4\r\n /* this.compiler.resolveComponent(UrgentConfirmationBox).then((factory: ComponentFactory) => {\r\n var container = this._rootViewContainerRef.createComponent(factory, null, this.injector);\r\n var instance = (container.instance);\r\n if (instance._modal && instance._modal.isAnimated) instance._modal.isAnimated = false\r\n let confirmationComp = container.instance;\r\n \r\n confirmationComp.onHidden.subscribe(() => {\r\n //dispose the container\r\n if (container) {\r\n container.destroy();\r\n }\r\n });\r\n \r\n // wait until the component has been properly initialized\r\n setTimeout(() => {\r\n resolve(confirmationComp);\r\n }, 150);\r\n }); */\r\n\r\n /*\r\n //// if Angular 2 After RC4\r\n \r\n // create and load optionsContainer\r\n let dialogFactory = this.componentFactoryResolver.resolveComponentFactory(ConfirmationModalCmp);\r\n let childInjector = ReflectiveInjector.fromResolvedProviders(providers, this._rootViewContainerRef.parentInjector);\r\n \r\n let container = this._rootViewContainerRef.createComponent(dialogFactory, this._rootViewContainerRef.length, childInjector);\r\n \r\n let confirmationComp = container.instance;\r\n \r\n confirmationComp.addHiddenCallback(() => {\r\n //dispose the container\r\n if (container) {\r\n container.destroy();\r\n }\r\n });\r\n \r\n resolve(confirmationComp);\r\n */\r\n }\r\n}\r\n","import {\r\n Component,\r\n ViewChild,\r\n ApplicationRef,\r\n ViewContainerRef,\r\n Injector,\r\n ComponentFactoryResolver,\r\n Injectable,\r\n OnInit\r\n} from \"@angular/core\";\r\nimport { ModalDirective } from \"ngx-bootstrap/modal\";\r\nimport { IGlobalSettings } from \"../models/IGlobalSettings\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"message-box\",\r\n template: `
    \r\n
    \r\n
    \r\n \r\n

    {{ alert?.title }}

    \r\n

    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n

    \r\n \r\n {{ alert?.yesText }}\r\n \r\n \r\n \r\n {{ alert?.okText }}\r\n \r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n `\r\n})\r\nexport class ConfirmationBox implements OnInit {\r\n\r\n\r\n @ViewChild(\"MessageBoxModal\",{static:true}) _modal: ModalDirective;\r\n config: any = {};\r\n public get onHidden() {\r\n \r\n \r\n return this._modal.onHidden;\r\n }\r\n\r\n alerts: Array = [];\r\n onDone: (result: ConfirmationBoxResult) => void;\r\n result: ConfirmationBoxResult = ConfirmationBoxResult.Cancel;\r\n danger(\r\n message: string,\r\n title?: string,\r\n done?: (result: ConfirmationBoxResult) => void\r\n ) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n message,\r\n title\r\n );\r\n this.show(options, done);\r\n }\r\n\r\n info(\r\n message: string,\r\n title?: string,\r\n done?: (result: ConfirmationBoxResult) => void\r\n ) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Info,\r\n message,\r\n title\r\n );\r\n this.show(options, done);\r\n }\r\n\r\n success(\r\n message: string,\r\n title?: string,\r\n done?: (result: ConfirmationBoxResult) => void\r\n ) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Success,\r\n message,\r\n title\r\n );\r\n this.show(options, done);\r\n }\r\n\r\n warning(\r\n message: string,\r\n title?: string,\r\n done?: (result: ConfirmationBoxResult) => void\r\n ) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Warning,\r\n message,\r\n title\r\n );\r\n this.show(options, done);\r\n }\r\n\r\n show(\r\n options: ConfirmationBoxOptions,\r\n done?: (result: ConfirmationBoxResult) => void\r\n ) {\r\n this.onDone = done;\r\n this.alerts.push(options);\r\n if (typeof this._modal.config == \"undefined\") {\r\n this._modal.config = this.config;\r\n }\r\n\r\n this._modal.show();\r\n }\r\n\r\n hide(): void {\r\n if (checkChanged) {\r\n checkChanged = false;\r\n }\r\n else {\r\n if (this.onDone) this.onDone(this.result);\r\n this._modal.hide();\r\n (this._modal as any)?.hideModal()\r\n }\r\n }\r\n\r\n yes() {\r\n this.result = ConfirmationBoxResult.Yes;\r\n this.hide();\r\n }\r\n no() {\r\n this.result = ConfirmationBoxResult.No;\r\n this.hide();\r\n }\r\n ok() {\r\n this.result = ConfirmationBoxResult.Ok;\r\n this.hide();\r\n }\r\n\r\n get isAddAttachmentPopup() {\r\n return _isAddAttachmentPopup;\r\n }\r\n\r\n get isChecked() {\r\n return _isChecked;\r\n }\r\n\r\n onChecked(value) {\r\n if (value != null) {\r\n _isChecked = value;\r\n }\r\n checkChanged = true;\r\n }\r\n\r\n ngOnInit(): void {\r\n setTimeout(() => {\r\n if (document.getElementById('btnYes')) {\r\n document.getElementById('btnYes').focus()\r\n }\r\n }, 300);\r\n }\r\n}\r\n\r\nexport enum ConfirmationBoxType {\r\n Danger,\r\n Info,\r\n Success,\r\n Warning\r\n}\r\n\r\nexport enum ConfirmationBoxResult {\r\n Ok,\r\n Yes,\r\n No,\r\n Cancel\r\n}\r\n\r\nexport class ConfirmationBoxOptions {\r\n type: string;\r\n constructor(\r\n type: ConfirmationBoxType,\r\n public message: string,\r\n public title?: string,\r\n public yesText?: string,\r\n public noText?: string,\r\n public okText?: string,\r\n public image?: string,\r\n public isAttachmentPopup: boolean = false,\r\n public checkBox?: string,\r\n public hyperLink?: string\r\n ) {\r\n if (!this.yesText && !this.noText && !this.okText) {\r\n this.okText = BERRY.loc.CommonDbRes.Ok;\r\n }\r\n this.type = ConfirmationBoxType[type].toLocaleLowerCase();\r\n _isAddAttachmentPopup = isAttachmentPopup;\r\n _isChecked = true;\r\n }\r\n}\r\nvar _isAddAttachmentPopup = false;\r\nvar _isChecked = true;\r\nvar checkChanged = false;\r\n\r\n@Injectable()\r\nexport class DialogManager {\r\n _rootViewContainerRef: ViewContainerRef;\r\n\r\n constructor(\r\n public resolver: ComponentFactoryResolver,\r\n public injector: Injector,\r\n public appRef: ApplicationRef\r\n ) { }\r\n\r\n create(resolve: (dialog: ConfirmationBox) => void) {\r\n if (!this.appRef[\"components\"].length) {\r\n const err = new Error(\r\n \"Application root component cannot be found. Try accessing application reference in the later life cycle of angular app.\"\r\n );\r\n console.error(err);\r\n }\r\n\r\n // get app root view component ref\r\n if (!this._rootViewContainerRef) {\r\n this._rootViewContainerRef = this.appRef[\"components\"][0].instance[\r\n \"viewContainerRef\"\r\n ];\r\n }\r\n\r\n // get options providers\r\n //let providers = ReflectiveInjector.resolve([\r\n // provide(optionsOptions, { useValue: this.options })\r\n //]);\r\n\r\n // if before RC4\r\n /*\r\n this.loader.loadNextToLocation(ConfirmationModalCmp, this._rootViewContainerRef, providers)\r\n .then((container) => {\r\n let confirmationComp = container.instance;\r\n \r\n confirmationComp.addHiddenCallback(() => {\r\n //dispose the container\r\n if (container) {\r\n container.destroy();\r\n }\r\n });\r\n \r\n resolve(confirmationComp);\r\n });\r\n */\r\n\r\n // Used ComponentFactoryResolver instead of ComponentResolver\r\n //if RC4\r\n var confirmationBoxCmpFactory = this.resolver.resolveComponentFactory(\r\n ConfirmationBox\r\n );\r\n var container = this._rootViewContainerRef.createComponent(\r\n confirmationBoxCmpFactory,\r\n 0,\r\n this.injector\r\n );\r\n\r\n let confirmationComp = container.instance;\r\n \r\n confirmationComp.onHidden.subscribe(() => {\r\n //dispose the container\r\n if (container) {\r\n container.destroy();\r\n }\r\n });\r\n\r\n // wait until the component is initialized\r\n setTimeout(() => {\r\n resolve(confirmationComp);\r\n }, 0);\r\n\r\n /* this.compiler.resolveComponent(ConfirmationBox).then((factory: ComponentFactory) => {\r\n var container = this._rootViewContainerRef.createComponent(factory, null, this.injector);\r\n var instance = (container.instance);\r\n if (instance._modal && instance._modal.isAnimated) instance._modal.isAnimated = false;\r\n let confirmationComp = container.instance;\r\n \r\n confirmationComp.onHidden.subscribe(() => {\r\n //dispose the container\r\n if (container) {\r\n container.destroy();\r\n }\r\n //check after close modal -> if there is another modal open, keep scroll on another modal\r\n $(\".modal\").each(function(o, i) {\r\n if ($(this).css(\"display\") == \"block\") {\r\n $(\"body\").addClass(\"modal-open\");\r\n }\r\n });\r\n });\r\n \r\n // wait until the component has been properly initialized\r\n setTimeout(() => {\r\n resolve(confirmationComp);\r\n }, 150);\r\n }); */\r\n\r\n /*\r\n //// if Angular 2 After RC4\r\n \r\n // create and load optionsContainer\r\n let dialogFactory = this.componentFactoryResolver.resolveComponentFactory(ConfirmationModalCmp);\r\n let childInjector = ReflectiveInjector.fromResolvedProviders(providers, this._rootViewContainerRef.parentInjector);\r\n \r\n let container = this._rootViewContainerRef.createComponent(dialogFactory, this._rootViewContainerRef.length, childInjector);\r\n \r\n let confirmationComp = container.instance;\r\n \r\n confirmationComp.addHiddenCallback(() => {\r\n //dispose the container\r\n if (container) {\r\n container.destroy();\r\n }\r\n });\r\n \r\n resolve(confirmationComp);\r\n */\r\n }\r\n}\r\n","import { Injectable, EventEmitter } from \"@angular/core\";\r\n@Injectable()\r\nexport class eventService {\r\n static _emitter: EventEmitter = new EventEmitter();\r\n static emitter() {\r\n return this._emitter;\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Request, Response, RequestOptions, RequestOptionsArgs } from \"@angular/http\";\r\nimport { Router } from \"@angular/router\";\r\nimport { Observable, throwError } from \"rxjs\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { catchError } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from \"../models/IGlobalSettings\";\r\nimport { eventService } from \"./eventService\";\r\nimport { HttpClient, HttpHeaders, HttpParams } from \"@angular/common/http\";\r\nimport { AuthService } from \"src/app/framework/services/auth.service\";\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var jQuery: any;\r\n\r\n\r\ninterface NewRequestOptions {\r\n headers?: HttpHeaders | { [header: string]: string | string[] },\r\n observe?: 'body' | 'events' | 'response',\r\n params?: HttpParams | { [param: string]: string | number | boolean | ReadonlyArray },\r\n reportProgress?: boolean,\r\n responseType?: 'arraybuffer' | 'blob' | 'json' | 'text',\r\n withCredentials?: boolean,\r\n}\r\n\r\ninterface IHttpCallInfo {\r\n methodName: string;\r\n url: string | Request;\r\n options: RequestOptions | RequestOptionsArgs | NewRequestOptions;\r\n body: any;\r\n}\r\n\r\n@Injectable()\r\nexport class HttpInterceptor {\r\n\r\n myHttpCall: any = null;\r\n appModuleId: number = null;\r\n itemDeleted: boolean = false;\r\n errorMsg: boolean = false;\r\n\r\n get ItemDeleted() {\r\n return this.itemDeleted;\r\n }\r\n\r\n get ErrorMsg() {\r\n return this.errorMsg;\r\n }\r\n\r\n constructor(public readonly http: HttpClient,\r\n public readonly toastrMgr: ToastrService,\r\n public readonly router: Router, public readonly authService: AuthService) { }\r\n\r\n setMyHttpCall(methodName: string, url: string | Request, options: RequestOptions | RequestOptionsArgs | NewRequestOptions, body: any): IHttpCallInfo {\r\n return {\r\n methodName: methodName,\r\n url: url,\r\n options: options,\r\n body: body\r\n };\r\n }\r\n\r\n intercept(httpCallInfo: IHttpCallInfo): any {\r\n\r\n this.itemDeleted = false;\r\n this.errorMsg = null;\r\n if (this.authService.allowGenerateTokenByRefreshTokene) {\r\n try {\r\n if (this.authService.isRefreshTokenExpired) {\r\n this.authService.logout()\r\n return null;\r\n }\r\n } catch (error) {\r\n this.authService.logout()\r\n return null;\r\n }\r\n\r\n }\r\n\r\n return catchError((err, source) => {\r\n if (!BERRY.isConnectedToInternet) {\r\n this.toastrMgr.error(BERRY.getText('ConnectionError', 'InternetConnection'))\r\n }\r\n else if (err.status > 400 && err.status < 500) {\r\n this.onUnauthorizedStatus(\r\n err,\r\n this.http,\r\n this.toastrMgr,\r\n this.router\r\n );\r\n }\r\n // NOT business error, should be handled by the caller\r\n else if (err.status != 999) {\r\n // 900 status code means User inactive (this case for assignment users only)\r\n if (err.status == 900 && !!localStorage.getItem('AssignmentUserId')) { \r\n localStorage.removeItem('AssignmentUserId');\r\n location.href = BERRY.absoluteHostName;\r\n }\r\n else {\r\n console.error(err);\r\n this.toastrMgr.error(BERRY.loc.common.errorMessage);\r\n }\r\n }\r\n /// Please don't remove business error (999)\r\n else if (err.status == 999) {\r\n this.toastrMgr.warning(err.error || err.message || err.content);\r\n }\r\n return throwError(err);\r\n });\r\n }\r\n\r\n request(url: string, options?: RequestOptions | RequestOptionsArgs): Observable {\r\n let httpCall = this.setMyHttpCall(\"request\", url, options, null);\r\n return this.http\r\n .request(url, this.getRequestOptionArgs(options))\r\n .pipe(this.intercept(httpCall));\r\n }\r\n\r\n get(url: string, options?: RequestOptions | RequestOptionsArgs | NewRequestOptions): Observable {\r\n let httpCall = this.setMyHttpCall(\"get\", url, options, null);\r\n return this.http\r\n .get(url, this.getRequestOptionArgs(options))\r\n .pipe(this.intercept(httpCall));\r\n }\r\n\r\n post(url: string, body: any, options?: RequestOptions | RequestOptionsArgs | NewRequestOptions): Observable {\r\n let httpCall = this.setMyHttpCall(\"post\", url, options, body);\r\n return this.http\r\n .post(url, body, this.getRequestOptionArgs(options))\r\n .pipe(this.intercept(httpCall));\r\n }\r\n\r\n put(url: string, body: any, options?: RequestOptions | RequestOptionsArgs): Observable {\r\n let httpCall = this.setMyHttpCall(\"put\", url, options, body);\r\n return this.http\r\n .put(url, body, this.getRequestOptionArgs(options))\r\n .pipe(this.intercept(httpCall));\r\n }\r\n\r\n delete(url: string, options?: RequestOptions | RequestOptionsArgs): Observable {\r\n let httpCall = this.setMyHttpCall(\"delete\", url, options, null);\r\n return this.http\r\n .delete(url, this.getRequestOptionArgs(options))\r\n .pipe(this.intercept(httpCall));\r\n }\r\n\r\n getRequestOptionArgs(options): any {\r\n if (options == null) {\r\n options = new RequestOptions();\r\n }\r\n\r\n let headers = new HttpHeaders();\r\n\r\n if (options.headers == null) {\r\n options.headers = headers;\r\n }\r\n else {\r\n options.headers.forEach(k => {\r\n headers = headers.append(options.headers.keys(k).toString(), k.toString());\r\n });\r\n }\r\n\r\n if (!headers.has('Content-Type')) {\r\n headers = headers.append('Content-Type', 'application/json');\r\n }\r\n\r\n if (!headers.has('Accept')) {\r\n headers = headers.append('Accept', 'application/json');\r\n }\r\n\r\n if (this.appModuleId) {\r\n if (!headers.has('appModuleId')) {\r\n headers = headers.append('appModuleId', this.appModuleId.toString());\r\n }\r\n }\r\n\r\n //OHATTAB:TODO: Not needed anymore.. handled in Aspnetcore, should double check\r\n // if (typeof (BERRY.forgeryToken) != 'undefined') {\r\n // if (!headers.has('RequestVerificationToken')) {\r\n // headers = headers.append('RequestVerificationToken', BERRY.forgeryToken);\r\n // }\r\n // }\r\n\r\n options.headers = headers;\r\n\r\n //to allow sending credentials across apps\r\n options.withCredentials = true;\r\n\r\n return options;\r\n }\r\n\r\n onUnauthorizedStatus(err: any, http: HttpClient, toastrMgr: ToastrService, router: Router) {\r\n\r\n if (err.status === HttpStatusCodeErrorHandledByCmp)\r\n return;\r\n else if (this.isCorrespondenceDetailsApiCall(err) || this.isScheduleItemAdvanceSearch(err) || this.isCommitteesAdvanceSearch(err) || this.isVerfiyApprovalProcess(err))\r\n router.navigate([\"/no-content\"]);\r\n else if (err.status === HttpStatusCodeGone) {\r\n this.itemDeleted = true;\r\n this.errorMsg = err.error;\r\n }\r\n else if (err.status === HttpStatusCodeForbidden)\r\n toastrMgr.error(err.error);\r\n else if (err.status === ResourceNotFound) {\r\n }\r\n else if (err.status === HttpStatusCodeUnauthorized)\r\n eventService.emitter().emit({ type: \"SessionTimeout\" });\r\n else {\r\n toastrMgr.error(BERRY.errorMsgs.UNAUTHORIZED);\r\n }\r\n }\r\n\r\n isCorrespondenceDetailsApiCall(err: any) {\r\n return (\r\n err.url.indexOf(\"CorrespondenceDetailsOverviewApi\") > -1 || err.url.indexOf(\"scheduleItem\") > -1 || err.url.indexOf(\"ArchiveApi/GetArchiveBasicInfo\") > -1 || err.url.indexOf(\"GetCorrNotesWithType\") > -1\r\n || err.url.indexOf(\"CorrespondenceApi/GetCorrespondenceAttachments\") > -1 || err.url.indexOf(\"CorrespondenceApi/GetCorrespondenceRecordAttachments\") > -1 || err.url.indexOf(\"api/correspondence-signatures/requests/\") > -1\r\n || err.url.indexOf(\"api/DeliveryReportsApi\") > -1\r\n );\r\n }\r\n\r\n isScheduleItemAdvanceSearch(err: any) {\r\n return (\r\n err.url.indexOf(\"GetFilteredScheduleItems\") > -1\r\n ||\r\n err.url.indexOf(\"GetAdvanceScheduleItems\") > -1\r\n );\r\n }\r\n\r\n isCommitteesAdvanceSearch(err: any) {\r\n return (\r\n err.url.indexOf(\"GetCommitteesAdvancedSearch\") > -1\r\n );\r\n }\r\n\r\n isVerfiyApprovalProcess(err: any) {\r\n var route = this.router.url;\r\n return (err.status === HttpStatusCodeForbidden &&\r\n (route.includes(\"correspondence/details\") || route == \"/\") && err.url.indexOf(\"VerfiyApprovalProcess\") > -1\r\n );\r\n }\r\n}\r\n\r\nconst HttpStatusCodeErrorHandledByCmp = 412;\r\nconst HttpStatusCodeGone = 410;\r\nconst HttpStatusCodeForbidden = 403;\r\nconst HttpStatusCodeUnauthorized = 401;\r\nconst ResourceNotFound = 404;\r\n","import { Injectable, EventEmitter } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { ImportantLinkDto } from \"../models/ImportantLinkDto\";\r\nimport { ReferenceType } from \"../models/ReferenceTypeEnum\";\r\nimport { SortType } from \"../models/Tasks Panel/CorrespondenceTaskDto\";\r\nimport { ImportantLinkSearchFilterDto } from \"../models/ImportantLinkSearchFilterDto\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n@Injectable()\r\nexport class importantLinkSvc extends BaseService {\r\n baseURL = BERRY.hostName + \"api/ImportantLinks/\";\r\n private _id: string = \"\";\r\n private _referanceTypeId: number = 0;\r\n\r\n get id(): string {\r\n return this._id;\r\n }\r\n\r\n set id(id: string) {\r\n this._id = id;\r\n }\r\n\r\n get referanceTypeId() {\r\n return this._referanceTypeId;\r\n }\r\n\r\n set referanceTypeId(referanceTypeId: number) {\r\n this._referanceTypeId = referanceTypeId;\r\n }\r\n\r\n onCommitteeIdFilled: EventEmitter = new EventEmitter();\r\n\r\n paginateOptions = {\r\n id: \"server\",\r\n itemsPerPage: BERRY.PageSize,\r\n currentPage: 1,\r\n totalItems: 0\r\n };\r\n\r\n constructor(http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n GetImportantLinksOverviewTab(searchFilter: ImportantLinkSearchFilterDto): Observable {\r\n let url = this.baseURL + `GetImportantLinksOverviewTab`;\r\n \r\n return this.http\r\n .post(url, searchFilter)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n GetImportantLinks(searchFilter: ImportantLinkSearchFilterDto): Observable {\r\n let url = this.baseURL + `GetImportantLinks`;\r\n \r\n return this.http\r\n .post(url, searchFilter)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n AddImportantLink(importantLinkDto: ImportantLinkDto): Observable {\r\n let url = this.baseURL + `AddImportantLink`;\r\n\r\n return this.http\r\n .post(url, importantLinkDto)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n EditImportantLink(importantLinkDto: ImportantLinkDto): Observable {\r\n let url = this.baseURL + `EditImportantLink`;\r\n\r\n return this.http\r\n .post(url, importantLinkDto)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n DeleteImportantLinks(ids: any) {\r\n let url = this.baseURL + `DeleteImportantLinks`;\r\n\r\n return this.http.post(url, ids).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n}","\r\nimport { Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class MessagingService {\r\n currentControl: any;\r\n selectedRecipient:any;\r\n selectedExternal:any;\r\n messages: { [id: string]: { [id: number]: (message: any) => void } } = {};\r\n subscriptions: { [id: number]: string } = {};\r\n\r\n unSubscribe(subscriberId: number, messageKey?: string): void {\r\n if (!messageKey) messageKey = this.subscriptions[subscriberId];\r\n\r\n if (this.subscriptions[subscriberId])\r\n delete this.subscriptions[subscriberId];\r\n\r\n let subscribers = this.messages[messageKey];\r\n\r\n if (subscribers && subscribers[subscriberId])\r\n delete subscribers[subscriberId];\r\n }\r\n\r\n checkIfNameIsAlreadyExisted(messageKey) {\r\n var allMessages = [];\r\n for (var key in this.subscriptions) {\r\n allMessages.push(this.subscriptions[key]);\r\n }\r\n if (allMessages.includes(messageKey))\r\n return true\r\n return false;\r\n }\r\n\r\n subscribe(messageKey: string, handler: (message: any) => void): number {\r\n var isMessageKeyExisted = this.checkIfNameIsAlreadyExisted(messageKey);\r\n\r\n if (isMessageKeyExisted) return -1;\r\n\r\n let subscribers = this.messages[messageKey];\r\n\r\n if (!subscribers) {\r\n this.messages[messageKey] = subscribers = {};\r\n }\r\n\r\n let subscriberId = Date.now();\r\n while (subscribers[subscriberId] || this.subscriptions[subscriberId]) {\r\n subscriberId++;\r\n }\r\n\r\n this.subscriptions[subscriberId] = messageKey;\r\n subscribers[subscriberId] = handler;\r\n\r\n return subscriberId;\r\n }\r\n\r\n publish(key: string, message?: any) {\r\n let subscribers = this.messages[key];\r\n\r\n if (!subscribers) return;\r\n\r\n for (let subscriberId in subscribers) subscribers[subscriberId](message);\r\n }\r\n}\r\n\r\nexport class MessagePromise {\r\n resolve: (contact: any) => void;\r\n reject: (error: any) => void;\r\n}\r\n","import { Location } from '@angular/common';\r\nimport { Injectable } from '@angular/core';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\nconst HISTORY_LENGTH = 10;\r\n@Injectable()\r\nexport class NavigationService {\r\n private history: string[] = []\r\n\r\n constructor(private router: Router, private location: Location) { }\r\n\r\n public startSaveHistory(): void {\r\n this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n const url = event.urlAfterRedirects.split(\"(modal\")[0];\r\n this.history = [...this.history, url];\r\n if (this.length >= HISTORY_LENGTH) {\r\n const [, ...rest] = this.history;\r\n this.history = rest;\r\n }\r\n }\r\n })\r\n }\r\n\r\n public getHistory(): string[] {\r\n return this.history;\r\n }\r\n \r\n public get length() : number {\r\n return this.history.length;\r\n }\r\n \r\n\r\n public goBack(numberOfPages: number = 0): void {\r\n\r\n if (this.length > 0) {\r\n if (numberOfPages) {\r\n this.history.slice(0, numberOfPages)\r\n this.location.historyGo(numberOfPages)\r\n }\r\n\r\n else {\r\n this.history.pop();\r\n this.location.back()\r\n }\r\n\r\n } else {\r\n this.router.navigateByUrl(\"/\")\r\n }\r\n }\r\n\r\n public getPreviousUrl(): string {\r\n if (this.history.length > 0) {\r\n return this.history[this.history.length - 2];\r\n }\r\n\r\n return '';\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../models/IGlobalSettings\";\r\nimport { NotificationType } from \"./../models/Notifications/NotificationType\";\r\nimport { Observable, Subject } from \"rxjs\";\r\nimport { BaseService } from \"./baseService\";\r\nimport { HttpInterceptor } from \"./http-interceptor\";\r\nimport { takeWhile, map, catchError } from \"rxjs/operators\";\r\nimport { NotificationModel } from \"../models/Notifications/NotificationModel\";\r\nimport { NotificationFilter } from \"../models/Notifications/NotificationFilter\";\r\nimport { UnreadNotificationDto } from \"../models/Notifications/UnreadNotificationDto\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class NotificationsService extends BaseService {\r\n\r\n isSubscribed: boolean = true;\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n private readonly baseURL = BERRY.hostName + \"api/NotificationsApi/\";\r\n\r\n announcements: Subject = new Subject();\r\n NewNotificationAnnouncement$ = this.announcements.asObservable();\r\n announcementsOnlineUser = new Subject();\r\n updateUnreadTasksCount = new Subject();\r\n updateTasksCount = new Subject();\r\n newAnnouncement = new Subject();\r\n onlineUsersCount: number = 1;\r\n\r\n constructor(http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n List(onSuccess: (data: NotificationModel[], Count, PageCount, notificationChannelsIds) => void,\r\n onFail: (message: string) => void,\r\n filter?: NotificationFilter): void {\r\n\r\n const me = this;\r\n\r\n me.IsBusy = true;\r\n\r\n super.post(`${this.baseURL}Get`, filter)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n resp => {\r\n me.IsBusy = false;\r\n onSuccess(resp.result, resp.Count, resp.PageCount, resp.NotificationChannelsIds);\r\n },\r\n error => {\r\n onFail(error);\r\n }\r\n );\r\n }\r\n\r\n UnreadCount(type: NotificationType,\r\n onSuccess: (result: number) => void,\r\n onFail: (message: string) => void): void {\r\n this.IsBusy = true;\r\n var me = this;\r\n super\r\n .get(this.baseURL + \"UnreadCount?type=\" + type)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n count => {\r\n me.IsBusy = false;\r\n onSuccess(count);\r\n },\r\n error => {\r\n me.IsBusy = false;\r\n onFail(error);\r\n }\r\n );\r\n }\r\n\r\n Dismiss(\r\n idsList: any[],\r\n onSuccess: (result: boolean) => void,\r\n onFail: (message: string) => void): void {\r\n\r\n const me = this;\r\n\r\n super\r\n .post(this.baseURL + \"Dismiss\", idsList, undefined, false)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n result => {\r\n me.IsBusy = false;\r\n onSuccess(true);\r\n },\r\n error => {\r\n me.IsBusy = false;\r\n onFail(error);\r\n }\r\n );\r\n }\r\n\r\n DismissAll(\r\n filter: NotificationFilter,\r\n onSuccess: (result: boolean) => void,\r\n onFail: (message: string) => void\r\n ): void {\r\n\r\n const me = this;\r\n\r\n super.post(`${this.baseURL}DismissAll`, filter, undefined, false)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n result => {\r\n me.IsBusy = false;\r\n onSuccess(true);\r\n },\r\n error => {\r\n me.IsBusy = false;\r\n onFail(error);\r\n }\r\n );\r\n }\r\n\r\n AnnounceNewNotification(dto: UnreadNotificationDto): void {\r\n this.announcements.next(dto);\r\n }\r\n\r\n GetOnlineUsersCount(\r\n onSuccess: (data: any) => void,\r\n onFail: (message: string) => void): void {\r\n\r\n const me = this;\r\n\r\n super.get(`${BERRY.hostName}api/OnlineUsersPanelApi/GetOnlineUsersCount`)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n result => {\r\n onSuccess(result);\r\n },\r\n error => {\r\n onFail(error);\r\n }\r\n );\r\n }\r\n\r\n AnnounceNewOnlineUserNotification(count): void {\r\n this.onlineUsersCount = count;\r\n this.announcementsOnlineUser.next(count); //no data to send, the child component will re-fetch the counts from the server\r\n }\r\n\r\n AnnounceNewTaskNotification(count): void {\r\n this.updateUnreadTasksCount.next(count); //no data to send, the child component will re-fetch the counts from the server\r\n }\r\n\r\n AnnounceNewTask(): void {\r\n this.updateTasksCount.next(null)\r\n }\r\n\r\n AnnounceNewAnnouncement(object): void {\r\n this.newAnnouncement.next(object)\r\n }\r\n\r\n snoozeReminder(\r\n id,\r\n newDate,\r\n success: (result: any) => void,\r\n fail: (message: string) => void): any {\r\n\r\n const me = this;\r\n let url = `${me.baseURL}Snooze`;\r\n let param = {\r\n id: id,\r\n newDate: newDate.toString()\r\n };\r\n\r\n this.http\r\n .post(url, param)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n result => {\r\n me.IsBusy = false;\r\n success(result);\r\n },\r\n error => {\r\n me.IsBusy = false;\r\n fail(error);\r\n }\r\n );\r\n }\r\n\r\n public submitParticipantConfirmAttendance(model: any) {\r\n\r\n var url = BERRY.hostName + \"api/schedule/participantgroups/\";\r\n return this.http\r\n .post(url + `SubmitParticipantConfirmAttendance`, model)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public MarkAsRead(notificationId) {\r\n let url = `${BERRY.hostName}api/NotificationsApi/MarkAsRead?notificationId=${notificationId}`;\r\n return super.post(url);\r\n }\r\n\r\n public processScheduleItemNotificationRecords(list: any) {\r\n var url = BERRY.hostName + \"api/schedule/participantgroups/\";\r\n return this.http\r\n .post(url + `ProcessScheduleItemNotificationRecords`, list)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n ApproveOrRejectOtpRequestFromWeb(dto): Observable {\r\n let url = `${BERRY.hostName}api/PermissionApprovalRequestApi/ApproveOrRejectOtpRequestFromWeb`;\r\n return super.post(url, dto);\r\n }\r\n\r\n GetUserHighLevelPermissions(roleNames): Observable {\r\n let url = `${BERRY.hostName}api/PermissionApprovalRequestApi/GetGrantedUserHighLevelPermissions`;\r\n return super.post(url, roleNames);\r\n }\r\n\r\n downloadBasedOnURL(url) {\r\n return this.http.get(url, { responseType: 'blob' });\r\n }\r\n saveBlobResponseAsFile(response, attachemntTitle) {\r\n const link = document.createElement('a');\r\n link.href = URL.createObjectURL(response);\r\n link.download = attachemntTitle;\r\n link.click();\r\n link.remove();\r\n }\r\n}\r\n","import { Subject } from \"rxjs\";\r\nimport { Injectable } from \"@angular/core\";\r\n\r\ndeclare var Dynamsoft: any;\r\ndeclare var DWObject: any;\r\n\r\n@Injectable()\r\nexport class webTwainSVC {\r\n GetWebTwain: any;\r\n selectedScanner = false;\r\n Parent;\r\n _iLeft;\r\n _iTop;\r\n _iRight;\r\n _iBottom;\r\n\r\n public OnReady = new Subject();\r\n public OnPostTransfer = new Subject();\r\n public OnPostLoadfunction = new Subject();\r\n public OnPostAllTransfers = new Subject();\r\n public OnMouseClick = new Subject();\r\n public OnImageAreaSelected = new Subject();\r\n public OnImageAreaDeselected = new Subject();\r\n public OnTopImageInTheViewChanged = new Subject();\r\n\r\n OnReadyCallback = new Subject(); // Source\r\n OnReadyCallback$ = this.OnReadyCallback.asObservable(); // Stream\r\n\r\n public get SelectedScanner() {\r\n return this.selectedScanner;\r\n }\r\n\r\n public get SourcesCount(): number {\r\n if (DWObject) return DWObject.SourceCount;\r\n return 0;\r\n }\r\n\r\n public get ScannerExists() {\r\n return this.SourcesCount > 0;\r\n }\r\n\r\n public SelectSourceByIndex(ndx) {\r\n DWObject.SelectSourceByIndex(ndx);\r\n }\r\n\r\n public get HowManyImagesInBuffer() {\r\n if (DWObject) return DWObject.HowManyImagesInBuffer;\r\n else return null;\r\n }\r\n\r\n public get CurrentImageIndexInBuffer() {\r\n if (DWObject) return DWObject.CurrentImageIndexInBuffer;\r\n else return null;\r\n }\r\n\r\n public checkIfImagesInBuffer() {\r\n if (DWObject) return DWObject.HowManyImagesInBuffer != 0;\r\n else return null;\r\n }\r\n\r\n constructor() {\r\n Dynamsoft.WebTwainEnv.Parent = this;\r\n \r\n }\r\n\r\n public RegisterEvent() {\r\n if (Dynamsoft && Dynamsoft.WebTwainEnv) {\r\n Dynamsoft.WebTwainEnv.RegisterEvent(\r\n \"OnWebTwainReady\",\r\n Dynamsoft.BerryScannerOnReadyLoad\r\n );\r\n }\r\n }\r\n public moveCurrentImage(step) {\r\n if (this.checkIfImagesInBuffer()) {\r\n var currentIndex = this.CurrentImageIndexInBuffer;\r\n if (DWObject && currentIndex != null) {\r\n if (step == \"UP\") {\r\n DWObject.MoveImage(currentIndex, currentIndex - 1);\r\n if (currentIndex > 0)\r\n DWObject.CurrentImageIndexInBuffer = currentIndex - 1;\r\n } else {\r\n DWObject.MoveImage(currentIndex, currentIndex + 1);\r\n if (currentIndex < this.HowManyImagesInBuffer)\r\n DWObject.CurrentImageIndexInBuffer = currentIndex + 1;\r\n }\r\n }\r\n }\r\n }\r\n\r\n //Dynamsoft_OnImageAreaSelected(index, left, top, right, bottom) {\r\n // _iLeft = left;\r\n // _iTop = top;\r\n // _iRight = right;\r\n // _iBottom = bottom;\r\n //}\r\n\r\n //Dynamsoft_OnImageAreaDeselected(index, left, top, right, bottom) {\r\n // _iLeft = 0;\r\n // _iTop = 0;\r\n // _iRight = 0;\r\n // _iBottom = 0;\r\n //}\r\n\r\n //Dynamsoft_OnTopImageInTheViewChanged(index) {\r\n // _iLeft = 0;\r\n // _iTop = 0;\r\n // _iRight = 0;\r\n // _iBottom = 0;\r\n // var DWObject = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainer');\r\n // DWObject.CurrentImageIndexInBuffer = index;\r\n //}\r\n\r\n //Dynamsoft_OnMouseClick(index) {\r\n // var me = this;\r\n // DWObjectLargeViewer = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainerLargeViewer');\r\n // DWObject = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainer');\r\n // DWObject.CopyToClipboard(index);\r\n // DWObjectLargeViewer.LoadDibFromClipboard();\r\n //}\r\n //Dynamsoft_PreviewLastImage() {\r\n // var me = this;\r\n // DWObjectLargeViewer = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainerLargeViewer');\r\n // DWObject = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainer');\r\n // DWObject.CopyToClipboard(me.CurrentImageIndexInBuffer);\r\n // DWObjectLargeViewer.LoadDibFromClipboard();\r\n //}\r\n //refreshClickEvent() {\r\n // var me = this;\r\n // DWObjectLargeViewer = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainerLargeViewer');\r\n // DWObject = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainer');\r\n //}\r\n\r\n //Dynamsoft_OnReady() {\r\n\r\n // var me = this;\r\n // DWObjectLargeViewer = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainerLargeViewer');\r\n // DWObject = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainer');\r\n\r\n // if (DWObject && DWObjectLargeViewer && DWObjectLargeViewer != null) {\r\n\r\n // DWObject.RegisterEvent(\"OnMouseClick\", this.Dynamsoft_OnMouseClick);\r\n // DWObject.SetViewMode(1, 5);\r\n // DWObjectLargeViewer.SetViewMode(1, 1);\r\n // DWObjectLargeViewer.MaxImagesInBuffer = 1;\r\n // DWObjectLargeViewer = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainerLargeViewer');\r\n // DWObjectLargeViewer.RegisterEvent(\"OnImageAreaSelected\", this.Dynamsoft_OnImageAreaSelected);\r\n // DWObjectLargeViewer.RegisterEvent(\"OnImageAreaDeSelected\", this.Dynamsoft_OnImageAreaDeselected);\r\n // DWObjectLargeViewer.RegisterEvent(\"OnTopImageInTheViewChanged\", this.Dynamsoft_OnTopImageInTheViewChanged);\r\n // DWObjectLargeViewer.RegisterEvent(\"OnMouseClick\", this.Dynamsoft_OnTopImageInTheViewChanged);\r\n // DWObject.RegisterEvent(\"OnPostAllTransfers\", this.Dynamsoft_PreviewLastImage);\r\n // var count = DWObject.SourceCount;\r\n // if (count == 0 && Dynamsoft.Lib.env.bMac) {\r\n // DWObject.CloseSourceManager();\r\n // DWObject.ImageCaptureDriverType = 0;\r\n // DWObject.OpenSourceManager();\r\n // count = DWObject.SourceCount;\r\n // }\r\n\r\n // if (Dynamsoft.Lib.env.bWin) {\r\n // DWObject.MouseShape = false;\r\n // }\r\n // }\r\n // //this.OnReadyCallback.next(me.Sources);\r\n //}\r\n\r\n checkErrorString(errorCode) {\r\n if (errorCode === undefined)\r\n return this.checkErrorStringWithErrorCode(\r\n DWObject.ErrorCode,\r\n DWObject.ErrorString\r\n );\r\n else\r\n return this.checkErrorStringWithErrorCode(\r\n errorCode,\r\n DWObject.ErrorString\r\n );\r\n }\r\n\r\n checkErrorStringWithErrorCode(errorCode, errorString);\r\n\r\n checkErrorStringWithErrorCode(errorCode, errorString, responseString?) {\r\n if (errorCode == 0) {\r\n //appendMessage(errorString);\r\n return true;\r\n }\r\n if (errorCode == -2115)\r\n //Cancel file dialog\r\n return true;\r\n else {\r\n if (errorCode == -2003) {\r\n //appendMessage(responseString); //DWObject.HTTPPostResponseString);\r\n } else if (errorCode == -1032) {\r\n //appendMessage(errorString);\r\n return true;\r\n } else {\r\n //appendMessage(errorString);\r\n\r\n if (errorCode === \"SCAN_CROP_SELECT_FIRST\") {\r\n // $.BodyError(\"SCAN_CROP_SELECT_FIRST\", { css: \"gerrorbox\", sticky: true });\r\n } else {\r\n // $.BodyError(\"SCAN_ERROR\", { css: \"gerrorbox\", sticky: true });\r\n }\r\n }\r\n\r\n return false;\r\n }\r\n }\r\n}\r\n","export class StoreManager {\r\n public static sessionStorageSetItem(key: string, data: any) {\r\n sessionStorage.setItem(key, JSON.stringify(data));\r\n }\r\n\r\n public static sessionStorageGetItem(key: string) {\r\n return StoreManager.JSonTryParse(sessionStorage.getItem(key));\r\n }\r\n\r\n public static clearSessionStorageByKey(key: string) {\r\n sessionStorage.removeItem(key);\r\n }\r\n\r\n private static JSonTryParse(value: string) {\r\n try {\r\n return JSON.parse(value);\r\n }\r\n catch (e) {\r\n if (value === \"undefined\")\r\n return void 0;\r\n return value;\r\n }\r\n }\r\n}","/**\r\n * Sample: htt-codepen.io/anon/pen/mVRNaJ\r\n * Source: htt-stackoverflow.com/questions/1181575/determine-whether-an-array-contains-a-value\r\n */\r\nexport var contains = function(needle) {\r\n // Per spec, the way to identify NaN is that it is not equal to itself\r\n var findNaN = needle !== needle;\r\n var indexOf;\r\n\r\n if (!findNaN && typeof Array.prototype.indexOf === \"function\") {\r\n indexOf = Array.prototype.indexOf;\r\n } else {\r\n indexOf = function(needle) {\r\n var i = -1,\r\n index = -1;\r\n\r\n for (i = 0; i < this.length; i++) {\r\n var item = this[i];\r\n\r\n if ((findNaN && item !== item) || item === needle) {\r\n index = i;\r\n break;\r\n }\r\n }\r\n\r\n return index;\r\n };\r\n }\r\n\r\n return indexOf.call(this, needle) > -1;\r\n};\r\n","export function clone(obj) {\r\n if (null == obj || \"object\" != typeof obj) return obj;\r\n var copy = obj.constructor();\r\n for (var attr in obj) {\r\n if (obj.hasOwnProperty(attr)) {\r\n if (\"object\" === typeof obj[attr]) copy[attr] = this.clone(obj[attr]);\r\n else copy[attr] = obj[attr];\r\n }\r\n }\r\n return copy;\r\n}\r\n\r\nexport function cloneFunc(func) {\r\n var reFn = /^function\\s*([^\\s(]*)\\s*\\(([^)]*)\\)[^{]*\\{([^]*)\\}$/gi,\r\n s = func.toString().replace(/^\\s|\\s$/g, \"\"),\r\n m = reFn.exec(s);\r\n if (!m || !m.length) return;\r\n var conf = {\r\n name: m[1] || \"\",\r\n args: m[2].replace(/\\s+/g, \"\").split(\",\"),\r\n body: m[3] || \"\"\r\n };\r\n var clone = Function.prototype.constructor.apply(\r\n this,\r\n [].concat(conf.args, conf.body)\r\n );\r\n return clone;\r\n}\r\n","import { Injectable, ElementRef } from \"@angular/core\";\r\nimport { CalendarTypeEnum } from \"../models/CalendarTypeEnum\";\r\nimport { IGlobalSettings } from \"../models/IGlobalSettings\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $;\r\ndeclare let moment: any;\r\n\r\n@Injectable()\r\nexport class datetimeHelper {\r\n constructor() {\r\n this.init();\r\n }\r\n\r\n Calendar = null;\r\n AlternativeCalendar = null;\r\n\r\n alternativeCalenderName = \"gregorian\";\r\n primaryCalenderName = \"ummalqura\";\r\n alternativeCalenderDisplayName = \"Gregorian\";\r\n primaryCalenderDisplayName = \"Hijri\";\r\n alternativeCalenderDisplayNameAr = \"ميلادي\";\r\n primaryCalenderDisplayNameAr = \"هجري\";\r\n\r\n alternativeCalenderAbbr = \"Gr\";\r\n alternativeCalenderAbbrAr = \"م\";\r\n primaryCalenderAbbr = \"Hj\";\r\n primaryCalenderAbbrAr = \"هـ\";\r\n\r\n get isHijriSettedAsPrimaryCalendar() {\r\n\r\n if (BERRY.primaryCalendar == \"umalqura\")\r\n return true;\r\n return false;\r\n }\r\n\r\n public format(jsDate, formatStr) {\r\n var outDate = this.getCalendarFromJsDate(jsDate);\r\n var result = outDate.formatDate(formatStr);\r\n return result;\r\n }\r\n\r\n public ParseFromWebMethodParameter(\r\n dateStr: string,\r\n defaultValue?: Date\r\n ): Date {\r\n let value = new Date();\r\n if (dateStr) {\r\n //var tmpDate = this.dtHelper.pareseStringToJsDate(dateStr,\"dd-mm-yyyy\");\r\n var tmp = moment(dateStr, BERRY.shortDateFormatFromURL, true);\r\n if (tmp.isValid()) value = tmp.toDate();\r\n else {\r\n if (defaultValue) return defaultValue;\r\n else return null;\r\n }\r\n }\r\n return value;\r\n }\r\n public ParseFromWebMethodParameterWithTime(\r\n dateStr: string,\r\n defaultValue?: Date\r\n ): Date {\r\n let value = new Date();\r\n if (dateStr) {\r\n var tmp = moment(dateStr, BERRY.shortDateTimeFormatFromURL, true);\r\n if (tmp.isValid()) value = tmp.toDate();\r\n else {\r\n if (defaultValue) return defaultValue;\r\n else return null;\r\n }\r\n }\r\n return value;\r\n }\r\n\r\n public formatToWebMethodParamter(jsDate) {\r\n return this.ToFormattedString(jsDate, BERRY.shortDateFormatFromURL);\r\n }\r\n\r\n public ToFormattedString(date: Date, format: string): string {\r\n return moment(date).format(format);\r\n }\r\n\r\n public ToFormattedDateTimeString(date: Date): string {\r\n var fromJSDateTime = this.Calendar.fromJSDate(date);\r\n fromJSDateTime = fromJSDateTime.formatDate(\r\n BERRY.appSettings.formats.shortDateFormatMomentJs\r\n );\r\n fromJSDateTime =\r\n moment(date).format(\"hh:mm a \") + fromJSDateTime.toString();\r\n return fromJSDateTime;\r\n }\r\n\r\n public ToFormattedCalendarDateString(date: Date, format: string = \"\"): string {\r\n var fromJSDateTime = this.Calendar.fromJSDate(date);\r\n fromJSDateTime = fromJSDateTime.formatDate(\r\n (format && format != \"\") ? format : BERRY.appSettings.formats.shortDateFormatMomentJs\r\n );\r\n return fromJSDateTime.toString();\r\n }\r\n\r\n public pareseStringToJsDate(dateStr, formatStr) {\r\n var calender = this.Calendar;\r\n var date = calender.parseDate(formatStr, dateStr);\r\n return date.toJSDate();\r\n }\r\n\r\n public convertDateStringFromFormatToAnotherFormat(dateStr, fromFormatStr, toFormatStr) {\r\n if (dateStr && dateStr != \"\") {\r\n var jSDate = this.pareseStringToJsDate(dateStr, fromFormatStr);\r\n var dateStrTo = this.format(jSDate, toFormatStr);\r\n return dateStrTo\r\n }\r\n return dateStr\r\n\r\n }\r\n\r\n public pareseStringToDate(dateStr, formatStr) {\r\n var calender = this.Calendar;\r\n var date = calender.parseDate(formatStr, dateStr);\r\n return date\r\n }\r\n\r\n getCalendarFromJsDate(jsDate) {\r\n return this.Calendar.fromJSDate(jsDate);\r\n }\r\n\r\n getAlterCalendarFromJsDate(jsDate) {\r\n return this.AlternativeCalendar.fromJSDate(jsDate);\r\n }\r\n getAlternativeCalendarFromJsData(jsDate) {\r\n return this.AlternativeCalendar.fromJSDate(jsDate);\r\n }\r\n\r\n getCalendarJDFromJsData(jsDate) {\r\n var jd = this.Calendar.fromJSDate(jsDate).toJD();\r\n return jd;\r\n }\r\n\r\n getCalendarFromJd(jd) {\r\n var currentCalender = this.AlternativeCalendar.fromJD(jd);\r\n return currentCalender;\r\n }\r\n\r\n newCDate(year, month, day) {\r\n let dateVal = $.calendars.newDate(\r\n year,\r\n month,\r\n day,\r\n this.primaryCalenderName,\r\n BERRY.lang\r\n );\r\n return dateVal;\r\n }\r\n parseCDate(value: string, format: string) {\r\n let dateVal = this.Calendar.parseDate(format, value);\r\n return dateVal;\r\n }\r\n\r\n public getSchedulingCurrentDayDateForRoute() {\r\n return moment().format(\"DD-MM-YYYY\");\r\n }\r\n\r\n public getCDateFromJSDate(jsDate) {\r\n return this.Calendar.fromJSDate(jsDate);\r\n }\r\n\r\n init() {\r\n //------------------------------\r\n\r\n if (BERRY.primaryCalendar == \"umalqura\") {\r\n //UmAlQura\r\n this.primaryCalenderName = \"ummalqura\";\r\n this.alternativeCalenderName = \"gregorian\";\r\n\r\n this.primaryCalenderDisplayName = \"Hijri\";\r\n this.alternativeCalenderDisplayName = \"Gregorian\";\r\n this.primaryCalenderDisplayNameAr = \"هجري\";\r\n this.alternativeCalenderDisplayNameAr = \"ميلادي\";\r\n }\r\n else if (BERRY.primaryCalendar == \"gregorian\") {\r\n this.primaryCalenderName = \"gregorian\";\r\n this.alternativeCalenderName = \"ummalqura\";\r\n\r\n this.primaryCalenderDisplayName = \"Gregorian\";\r\n this.alternativeCalenderDisplayName = \"Hijri\";\r\n this.primaryCalenderDisplayNameAr = \"ميلادي\";\r\n this.alternativeCalenderDisplayNameAr = \"هجري\";\r\n }\r\n\r\n //------------------------------\r\n\r\n if (BERRY.lang == \"ar\") {\r\n $.calendars.calendars[\"gregorian\"].prototype.regionalOptions[\"ar\"] = {\r\n name: \"Gregorian\",\r\n epochs: [\"BCE\", \"CE\"],\r\n monthNames: [\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 monthNamesShort: ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],\r\n dayNames: [\r\n \"الأحد\",\r\n \"الاثنين\",\r\n \"الثلاثاء\",\r\n \"الأربعاء\",\r\n \"الخميس\",\r\n \"الجمعة\",\r\n \"السبت\"\r\n ],\r\n dayNamesShort: [\r\n \"الأحد\",\r\n \"الاثنين\",\r\n \"الثلاثاء\",\r\n \"الأربعاء\",\r\n \"الخميس\",\r\n \"الجمعة\",\r\n \"السبت\"\r\n ],\r\n dayNamesMin: [\"ح\", \"ن\", \"ث\", \"ع\", \"خ\", \"ج\", \"س\"],\r\n //digits: $.calendars.substituteDigits(['٠', '١', '٢', '٣', '٤', '٥', '٦', '٧', '٨', '٩']),\r\n dateFormat: BERRY.appSettings.formats.defaultDatePickerFormatJs,\r\n firstDay: 6,\r\n isRTL: true\r\n };\r\n if ($.calendars.calendars.julian) {\r\n $.calendars.calendars.julian.prototype.regionalOptions[\"ar\"] =\r\n $.calendars.calendars.gregorian.prototype.regionalOptions[\"ar\"];\r\n }\r\n $.calendars.calendars[\"ummalqura\"].prototype.regionalOptions[\"ar\"] = {\r\n name: \"Islamic\",\r\n epochs: [\"BAM\", \"AM\"],\r\n monthNames: [\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 monthNamesShort: [\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 dayNames: [\r\n \"الأحد\",\r\n \"الإثنين\",\r\n \"الثلاثاء\",\r\n \"الأربعاء\",\r\n \"الخميس\",\r\n \"الجمعة\",\r\n \"السبت\"\r\n ],\r\n dayNamesShort: [\r\n \"الأحد\",\r\n \"الإثنين\",\r\n \"الثلاثاء\",\r\n \"الأربعاء\",\r\n \"الخميس\",\r\n \"الجمعة\",\r\n \"السبت\"\r\n ],\r\n dayNamesMin: [\"ح\", \"ن\", \"ث\", \"ع\", \"خ\", \"ج\", \"س\"],\r\n dateFormat: BERRY.appSettings.formats.defaultDatePickerFormatJs,\r\n firstDay: 0,\r\n isRTL: true\r\n };\r\n $.calendarsPicker.regionalOptions[\"ar\"] = {\r\n renderer: $.calendarsPicker.defaultRenderer,\r\n prevText: \"\",\r\n prevStatus: \"الشهر السابق\",\r\n prevJumpText: \"<<\",\r\n prevJumpStatus: \"\",\r\n nextText: \"\",\r\n nextStatus: \"الشهر القادم\",\r\n nextJumpText: \">>\",\r\n nextJumpStatus: \"\",\r\n currentText: \"الشهر الحالي\",\r\n currentStatus: \"الشهر الحالي\",\r\n todayText: \"الشهر الحالي\",\r\n todayStatus: \"الشهر الحالي\",\r\n clearText: \"مسح\",\r\n clearStatus: \"امسح التاريخ الحالي\",\r\n closeText: \"إغلاق\",\r\n closeStatus: \"إغلاق بدون حفظ\",\r\n yearStatus: \"عرض سنة آخرى\",\r\n monthStatus: \"شهر آخر\",\r\n weekText: \"أسبوع\",\r\n weekStatus: \"أسبوع السنة\",\r\n dayStatus: \"اختر D, M d\",\r\n defaultStatus: \"اختر يوم\",\r\n isRTL: true\r\n };\r\n\r\n $.calendarsPicker.setDefaults($.calendarsPicker.regionalOptions[\"ar\"]);\r\n this.Calendar = $.calendars.instance(this.primaryCalenderName, \"ar\");\r\n this.AlternativeCalendar = $.calendars.instance(\r\n this.alternativeCalenderName,\r\n \"ar\"\r\n );\r\n this.Calendar.displayName = this.primaryCalenderDisplayNameAr;\r\n this.AlternativeCalendar.displayName = this.alternativeCalenderDisplayNameAr;\r\n\r\n this.Calendar.abbr = this.isHijriSettedAsPrimaryCalendar ? this.primaryCalenderAbbrAr : this.alternativeCalenderAbbrAr;\r\n this.AlternativeCalendar.abbr = this.isHijriSettedAsPrimaryCalendar ? this.alternativeCalenderAbbrAr : this.primaryCalenderAbbrAr;\r\n } else {\r\n $.calendarsPicker.setDefaults($.calendarsPicker.regionalOptions[\"en\"]);\r\n this.Calendar = $.calendars.instance(this.primaryCalenderName, \"en\");\r\n this.AlternativeCalendar = $.calendars.instance(\r\n this.alternativeCalenderName,\r\n \"en\"\r\n );\r\n this.Calendar.displayName = this.primaryCalenderDisplayName;\r\n this.AlternativeCalendar.displayName = this.alternativeCalenderDisplayName;\r\n\r\n this.Calendar.abbr = this.isHijriSettedAsPrimaryCalendar ? this.primaryCalenderAbbr : this.alternativeCalenderAbbr;\r\n this.AlternativeCalendar.abbr = this.isHijriSettedAsPrimaryCalendar ? this.alternativeCalenderAbbr : this.primaryCalenderAbbr;\r\n }\r\n }\r\n\r\n getTodayDate() {\r\n let me = this;\r\n var dateToday = me.Calendar.today();\r\n return dateToday;\r\n }\r\n\r\n /*\r\n * function checkIsPreviuosDate is to check if the date in the previuos or no when change date (in DatePicker) or time (in TimePicker)\r\n * Note: you cannot use it if your component has only DatePicker without TimePicker or only TimePicker without DatePicker, it has been made for DatePicker and TimePicker together\r\n * you can see component assign-task-dialog-cmp.ts for helping\r\n */\r\n\r\n public checkIsPreviuosDate(componentElementRef: ElementRef) {\r\n try {\r\n //get whole date from dateNow\r\n var dateNow = new Date();\r\n var date = new Date(\r\n dateNow.getFullYear(),\r\n dateNow.getMonth(),\r\n dateNow.getDate(),\r\n dateNow.getHours(),\r\n dateNow.getMinutes(),\r\n 0,\r\n 0\r\n );\r\n\r\n //Date of input date\r\n var strGregorianDate = $(componentElementRef.nativeElement)\r\n .find(\"input.is-calendarsPicker\")\r\n .data(\"calendarsPicker\").strGregorianDate;\r\n var dateOfInputDate = new Date(strGregorianDate);\r\n if (dateOfInputDate.toString() == \"Invalid Date\")\r\n dateOfInputDate = new Date(\r\n strGregorianDate\r\n .split(\"/\")\r\n .reverse()\r\n .join(\"/\")\r\n );\r\n\r\n //time of input date\r\n var timepicker = $(componentElementRef.nativeElement).find(\"timepicker\");\r\n var hours = timepicker\r\n .find(\"input\")\r\n .eq(0)\r\n .val();\r\n var minutes = timepicker\r\n .find(\"input\")\r\n .eq(1)\r\n .val();\r\n var meridian = timepicker.find(\"button\").text();\r\n var date24Hour = this.convertTo24Hour(hours, minutes, meridian);\r\n var date24HourArray = date24Hour.split(\":\");\r\n\r\n //get whole date from input\r\n var dateInput = new Date(\r\n dateOfInputDate.getFullYear(),\r\n dateOfInputDate.getMonth(),\r\n dateOfInputDate.getDate(),\r\n parseInt(date24HourArray[0]),\r\n parseInt(date24HourArray[1]),\r\n 0,\r\n 0\r\n );\r\n if (dateInput.toString() == \"Invalid Date\") return;\r\n //check if input date before date now\r\n if (dateInput < date) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n } catch (ex) {\r\n return false;\r\n }\r\n }\r\n\r\n public convertTo24Hour(hours, minutes, meridian) {\r\n hours = parseInt(hours);\r\n // letter 'ص' is \\u0635 and letter 'م' is \\u0645\r\n if (\r\n (meridian.toLowerCase().indexOf(\"am\") != -1 ||\r\n meridian.indexOf(\"\\u0635\") != -1) &&\r\n hours == 12\r\n ) {\r\n hours = \"0\";\r\n }\r\n if (\r\n (meridian.toLowerCase().indexOf(\"pm\") != -1 ||\r\n meridian.indexOf(\"\\u0645\") != -1) &&\r\n hours < 12\r\n ) {\r\n hours = (hours + 12).toString();\r\n }\r\n return hours + \":\" + minutes;\r\n }\r\n\r\n //fromDate and toDate are Hijri dates\r\n //Because of each client has different date format=> the Gregorian date is used to compare between From and To Dates\r\n public checkIfFromBeforeToDate(fromDate: string, toDate: string) {\r\n try {\r\n var isSpecialFromDate29 = false;\r\n var isSpecialFromDate30 = false;\r\n var isSpecialToDate29 = false;\r\n var isSpecialToDate30 = false;\r\n\r\n var fromDateHas29InDayNotYear = false;\r\n var fromDateHas30InDayNotYear = false;\r\n var toDateHas29InDayNotYear = false;\r\n var toDateHas30InDayNotYear = false;\r\n\r\n var fromDateHas2InDayOrMonthNotYear = false;\r\n var toDateHas2InDayOrMonthNotYear = false;\r\n\r\n var fromDateArray = fromDate.indexOf('/') != -1 ? fromDate.split('/') : fromDate.split('-');\r\n var toDateArray = toDate.indexOf('/') != -1 ? toDate.split('/') : toDate.split('-');\r\n for (var i = 0; i < 3; i++) {\r\n if (fromDateArray[i].length == 2 && fromDateArray[i] == \"29\")\r\n fromDateHas29InDayNotYear = true;\r\n\r\n if (fromDateArray[i].length == 2 && fromDateArray[i] == \"30\")\r\n fromDateHas30InDayNotYear = true;\r\n\r\n if (toDateArray[i].length == 2 && toDateArray[i] == \"29\")\r\n toDateHas29InDayNotYear = true;\r\n\r\n if (toDateArray[i].length == 2 && toDateArray[i] == \"30\")\r\n toDateHas30InDayNotYear = true;\r\n\r\n if (fromDateArray[i].length == 2 && fromDateArray[i] == \"02\")\r\n fromDateHas2InDayOrMonthNotYear = true;\r\n\r\n if (toDateArray[i].length == 2 && toDateArray[i] == \"02\")\r\n toDateHas2InDayOrMonthNotYear = true;\r\n }\r\n //Check if month = 2 and day = 29 or 30 => For From Date \r\n if (fromDateHas29InDayNotYear && fromDateHas2InDayOrMonthNotYear)\r\n isSpecialFromDate29 = true;\r\n if (fromDateHas30InDayNotYear && fromDateHas2InDayOrMonthNotYear)\r\n isSpecialFromDate30 = true;\r\n\r\n //Check if month = 2 and day = 29 or 30 => For To Date\r\n if (toDateHas29InDayNotYear && toDateHas2InDayOrMonthNotYear)\r\n isSpecialToDate29 = true;\r\n if (toDateHas30InDayNotYear && toDateHas2InDayOrMonthNotYear)\r\n isSpecialToDate30 = true;\r\n\r\n var dateFrom = new Date(fromDate);\r\n var startDate = new Date(\r\n dateFrom.getFullYear(),\r\n dateFrom.getMonth(),\r\n dateFrom.getDate(),\r\n dateFrom.getHours(),\r\n dateFrom.getMinutes(),\r\n 0,\r\n 0\r\n );\r\n if (isSpecialToDate29 && isSpecialFromDate29)\r\n return true;\r\n\r\n if (isSpecialToDate30 && isSpecialFromDate30)\r\n return true;\r\n\r\n\r\n //if (dateFrom.getDate() !== 29) {\r\n if (isSpecialToDate29 && dateFrom.getMonth() === 2 && dateFrom.getDate() === 1)\r\n return false;\r\n if (isSpecialToDate30 && dateFrom.getMonth() === 2 && dateFrom.getDate() === 2)\r\n return false;\r\n if (isSpecialToDate30 && dateFrom.getMonth() === 2 && dateFrom.getDate() === 1)\r\n return false;\r\n //}\r\n\r\n var dateTo = new Date(toDate);\r\n var endDate = new Date(\r\n dateTo.getFullYear(),\r\n dateTo.getMonth(),\r\n dateTo.getDate(),\r\n dateTo.getHours(),\r\n dateTo.getMinutes(),\r\n 0,\r\n 0\r\n );\r\n\r\n if (isSpecialToDate29 && isSpecialFromDate30 && dateFrom.getMonth() === 2 && dateTo.getMonth() === 2)\r\n return false;\r\n\r\n if ((isSpecialFromDate29 || isSpecialFromDate30) && dateTo.getMonth() === 2 && dateTo.getDate() === 1)\r\n return true;\r\n\r\n if (startDate.toString() == \"Invalid Date\" || endDate.toString() == \"Invalid Date\") return;\r\n //check if start date before end date\r\n if (startDate <= endDate) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n } catch (ex) {\r\n return false;\r\n }\r\n }\r\n\r\n //Get Date from the calender using html Id to return the value based on the format if the format contains MM\r\n // or return the defualt value as is\r\n public getDateFromCalender(calenderId: string, dateValueStr: string) {\r\n try {\r\n var resultDate: string = \"\";\r\n var splitedDateFormat: any[];\r\n var isDashUsed: boolean = false;\r\n if (BERRY.appSettings.formats.defaultDatePickerFormatJs.indexOf(\"MM\") != -1) {\r\n\r\n if (BERRY.appSettings.formats.defaultDatePickerFormatJs.indexOf(\"/\") != -1) {\r\n splitedDateFormat = BERRY.appSettings.formats.defaultDatePickerFormatJs.split('/');\r\n }\r\n if (BERRY.appSettings.formats.defaultDatePickerFormatJs.indexOf(\"-\") != -1) {\r\n splitedDateFormat = BERRY.appSettings.formats.defaultDatePickerFormatJs.split('-');\r\n isDashUsed = true;\r\n }\r\n\r\n var currentDateMonth = $(\"#\" + calenderId).data(\"calendarsPicker\").drawDate._month;\r\n var currentDateDay = $(\"#\" + calenderId).data(\"calendarsPicker\").drawDate._day;\r\n var currentDateYear = $(\"#\" + calenderId).data(\"calendarsPicker\").drawDate._year;\r\n\r\n if (splitedDateFormat != null && splitedDateFormat[0] == \"dd\")\r\n resultDate = currentDateDay.toString().length == 1 ? \"0\" + currentDateDay : currentDateDay;\r\n else\r\n resultDate = currentDateYear;\r\n\r\n if (isDashUsed)\r\n resultDate = resultDate + \"-\";\r\n else\r\n resultDate = resultDate + \"/\";\r\n\r\n resultDate = resultDate + $(\"#\" + calenderId).data(\"calendarsPicker\").drawDate._calendar.local.monthNames[currentDateMonth - 1]\r\n + (isDashUsed ? \"-\" : \"/\");\r\n\r\n if (splitedDateFormat != null && splitedDateFormat[2] == \"dd\")\r\n resultDate = currentDateDay.toString().length == 1 ? \"0\" + currentDateDay : currentDateDay;\r\n else\r\n resultDate = resultDate + currentDateYear;\r\n\r\n return resultDate;\r\n }\r\n return dateValueStr;\r\n\r\n } catch (ex) {\r\n return dateValueStr;\r\n }\r\n }\r\n\r\n public getMinDateBasedOnYearAndUserCalendar(year, toFormat = \"yyyy-mm-dd\") {\r\n var tempDate = [year, \"01\", \"01\"].join(\"-\");\r\n var tempFormat = [\"yyyy\", \"mm\", \"dd\"].join(\"-\");\r\n var minDate;\r\n\r\n if (tempFormat != toFormat) {\r\n var dateObj = this.pareseStringToDate(tempDate, tempFormat);\r\n minDate = this.Calendar.formatDate(toFormat, dateObj);\r\n }\r\n else {\r\n minDate = tempDate;\r\n }\r\n\r\n return minDate;\r\n }\r\n\r\n public getMaxDateBasedOnYearAndUserCalendar(year, toFormat = \"yyyy-mm-dd\") {\r\n var tempDate;\r\n var tempFormat = [\"yyyy\", \"mm\", \"dd\"].join(\"-\");\r\n var day;\r\n var month = 12;\r\n\r\n if (BERRY.primaryCalendar == CalendarTypeEnum.UMALQURA) {\r\n day = 30;\r\n tempDate = this.Calendar.isValid(year, month, day) ? [year, month, day].join(\"-\") : [year, month, day - 1].join(\"-\");\r\n }\r\n else if (BERRY.primaryCalendar == CalendarTypeEnum.GREGORIAN) {\r\n day = 31;\r\n tempDate = [year, month, day].join(\"-\");\r\n }\r\n\r\n var maxDate;\r\n if (tempFormat != toFormat) {\r\n var dateObj = this.pareseStringToDate(tempDate, tempFormat);\r\n maxDate = this.Calendar.formatDate(toFormat, dateObj);\r\n }\r\n else {\r\n maxDate = tempDate;\r\n }\r\n\r\n return maxDate;\r\n }\r\n\r\n public getCurrentYearBasedOnCulture() {\r\n return this.ToFormattedCalendarDateString((new Date(moment(new Date()))), \"yyyy\");\r\n }\r\n}\r\n","import { IEnumDescriptor } from \"../IEnumDescriptor\";\r\n\r\nexport class EnumExtensions {\r\n static getNamesAndValues(e: any): IEnumDescriptor[] {\r\n return EnumExtensions.getNames(e).map(\r\n n =>\r\n ({\r\n Name: n,\r\n Value: e[n] as T,\r\n Translation: eval(\"BERRY.loc.Enums.\" + n)\r\n } as IEnumDescriptor)\r\n );\r\n }\r\n\r\n static getNames(e: any) {\r\n return EnumExtensions.getObjValues(e).filter(\r\n v => typeof v === \"string\"\r\n ) as string[];\r\n }\r\n\r\n static getValues(e: any) {\r\n return EnumExtensions.getObjValues(e).filter(\r\n v => typeof v === \"number\"\r\n ) as T[];\r\n }\r\n\r\n public static getObjValues(e: any): (number | string)[] {\r\n return Object.keys(e).map(k => e[k]);\r\n }\r\n\r\n static getFileIcon(ext: string) {\r\n if (ext && ext.startsWith('.'))\r\n ext = ext.substr(1, ext.length).toLowerCase();\r\n var extensions = {\r\n pdf: \"evicon-file-pdf\",\r\n docx: \"evicon-file-word\",\r\n doc: \"evicon-file-word\",\r\n xlsx: \"evicon-file-excel\",\r\n xls: \"evicon-file-excel\",\r\n txt: \"evicon-file-txt evicon-info\",\r\n pptx: \"evicon-file-powerpoint\",\r\n png: \"evicon-file-image evicon-3x font-success\",\r\n jpg: \"evicon-file-image evicon-3x font-success\"\r\n };\r\n return extensions[ext] || \"evicon-file-generic blue-font\";\r\n } \r\n\r\n static getConfidentialityIcon(id: number) { \r\n let confidentialitiesCss = [\r\n \"evicon-lock evicon-default\",\r\n \"evicon-lock evicon-success\",\r\n \"evicon-lock evicon-warning\",\r\n \"evicon-lock evicon-danger\",\r\n \"evicon-lock evicon-extreme\",\r\n \"evicon-lock evicon-danger\",\r\n \"evicon-lock evicon-danger\",\r\n \"evicon-lock evicon-danger\",\r\n \"evicon-lock evicon-danger\",\r\n \"evicon-lock evicon-danger\"\r\n ];\r\n\r\n return confidentialitiesCss[id];\r\n }\r\n\r\n static getUrgencyIcon(id: number) {\r\n let urgencyIcons = [\r\n \"evicon-clock-2 evicon-default\",\r\n \"evicon-clock-2 evicon-warning\",\r\n \"evicon-clock-2 evicon-danger\",\r\n \"evicon-clock-2 evicon-success\",\r\n \"evicon-clock-2 evicon-danger\"\r\n ];\r\n\r\n return urgencyIcons[id];\r\n }\r\n}\r\n","export class GuidUtil {\r\n public static newGuid(): GuidUtil {\r\n let newGuidAsString = this.newGuidAsString();\r\n return new GuidUtil(newGuidAsString);\r\n }\r\n\r\n public static newGuidAsString(): string {\r\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, c => {\r\n const r = Math.random() * 16 | 0;\r\n const v = (c == 'x') ? r : (r & 0x3 | 0x8);\r\n return v.toString(16);\r\n });\r\n }\r\n\r\n public static get empty(): string {\r\n return '00000000-0000-0000-0000-000000000000';\r\n }\r\n public get empty(): string {\r\n return GuidUtil.empty;\r\n }\r\n public static isValid(str: string): boolean {\r\n const validRegex = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;\r\n return validRegex.test(str);\r\n }\r\n value: string = this.empty;\r\n constructor(value?: string) {\r\n if (value) {\r\n if (GuidUtil.isValid(value)) {\r\n this.value = value;\r\n }\r\n }\r\n }\r\n}\r\n\r\n","import { IGlobalSettings } from \"../models/IGlobalSettings\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\nexport function relocate(elmnt: any, tooltip: any, gap: number = 10): void {\r\n let isRtl = !BERRY.isEn;\r\n\r\n const el = elmnt.getBoundingClientRect();\r\n const { style } = tooltip as any;\r\n const windowInnerWidth = window.innerWidth;\r\n const windowInnerHeight = window.innerHeight;\r\n const tltip = tooltip.getBoundingClientRect();\r\n\r\n // reset position\r\n style.bottom = 'unset';\r\n style.right = \"unset\";\r\n style.left = \"unset\";\r\n style.top = el.bottom + gap + 'px';\r\n\r\n // if tooltip viewed out of screen from bottom\r\n if (windowInnerHeight - (el.height + tltip.height + gap) <= el.bottom) {\r\n style.top = \"unset\";\r\n style.bottom = el.height + (windowInnerHeight - el.bottom) + 'px';\r\n }\r\n\r\n if (isRtl) {\r\n if ((windowInnerWidth - el.right) + gap + tltip.width < windowInnerWidth) {\r\n style.right = (windowInnerWidth - el.right) + gap + 'px';\r\n } else {\r\n // if tooltip viewed out of screen from left\r\n style.right = \"unset\";\r\n style.left = gap + 'px';\r\n }\r\n\r\n } else {\r\n if (el.x + tltip.width < window.innerWidth + gap) {\r\n style.left = el.left + gap + 'px';\r\n } else {\r\n // if tooltip viewed out of screen from right\r\n style.left = \"unset\";\r\n style.right = gap + 'px';\r\n }\r\n\r\n }\r\n}","export function stringFormat(...params: any[]) {\r\n var allArgs = params;\r\n var format = allArgs[0];\r\n var result = format.substring(0, format.length);\r\n\r\n if (allArgs.length === 2 && typeof allArgs[1] === \"object\") {\r\n // object pass like two argument\r\n var obj = allArgs[1];\r\n for (var prop in obj) {\r\n if (obj.hasOwnProperty(prop)) {\r\n result = result.replace(\"{\" + prop + \"}\", obj[prop]);\r\n }\r\n }\r\n } else {\r\n // many args separate elements\r\n var args = allArgs.filter(function(item, i) {\r\n return i > 0;\r\n });\r\n\r\n for (var i = 0, len = args.length; i < len; i++) {\r\n result = result.replace(\"{\" + i + \"}\", args[i]);\r\n }\r\n }\r\n return result;\r\n}\r\n","import { Router } from \"@angular/router\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { IGlobalSettings } from \"../../../_common/models/IGlobalSettings\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class AnnouncementDetailsSVC extends BaseService {\r\n baseURL = BERRY.hostName + \"api/AnnouncementDetails\";\r\n _announcementId: number = null;\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n public get announcementId(): number {\r\n return this._announcementId;\r\n }\r\n\r\n public set announcementId(value: number) {\r\n this._announcementId = value;\r\n }\r\n\r\n getAnnouncementHeaderDetails(id: number) {\r\n return this.http\r\n .get(this.baseURL + \"/GetAnnouncementHeaderDetails?announcementId=\" + id)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n GetAnnouncementStatus(id: number) {\r\n return this.http\r\n .get(this.baseURL + \"/GetAnnouncementStatus?announcementId=\" + id)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n CancelAnnouncement(id: number, cancellationReason: string) {\r\n return this.http\r\n .get(this.baseURL + \"/CancelAnnouncement?announcementId=\" + id + \"&cancellationReason=\" + cancellationReason)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n PublishAnnouncement(id: number) {\r\n return this.http\r\n .get(this.baseURL + \"/PublishAnnouncement?announcementId=\" + id)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public static redirectToNotPermittedPage(router: Router, Id: number, logInfo: any) {\r\n var errorMsg = `This user \"${BERRY.User.UserId}\" is not permitted to read this announcement ${Id}`;\r\n router.navigate([\"/no-content\"]);\r\n }\r\n\r\n GetAnnouncementActionHistories(id: number) {\r\n return this.http\r\n .get(this.baseURL + \"/GetAnnouncementActionHistories?announcementId=\" + id)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n updateAnnoucementStatus(announcementStatusDto) {\r\n return this.http\r\n .post(this.baseURL + \"/updateAnnoucementStatus\", announcementStatusDto)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n}","import { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { IGlobalSettings } from \"../../../_common/models/IGlobalSettings\";\r\nimport { AnnouncementPermissions } from \"../models/announcement-permission-dto\";\r\nimport { Router } from \"@angular/router\";\r\nimport { GeneralPermissions } from \"../models/announcement-general-permission-dto\";\r\ndeclare var BERRY: IGlobalSettings;\r\n@Injectable()\r\n\r\nexport class AnnouncementsSvc extends BaseService {\r\n\r\n AnnouncementGeneralHandler: any;\r\n GeneralHandler: any;\r\n public CanAddEditAttachment: boolean;\r\n\r\n _AnnouncementGeneralHandlerPermissions: AnnouncementPermissions;\r\n public get AnnouncementGeneralHandlerPermissions(): AnnouncementPermissions {\r\n return this._AnnouncementGeneralHandlerPermissions;\r\n }\r\n\r\n public set AnnouncementGeneralHandlerPermissions(value: AnnouncementPermissions) {\r\n this._AnnouncementGeneralHandlerPermissions = value;\r\n }\r\n\r\n _GeneralHandlerPermissions: GeneralPermissions;\r\n public get GeneralHandlerPermissions(): GeneralPermissions {\r\n return this._GeneralHandlerPermissions;\r\n }\r\n\r\n public set GeneralHandlerPermissions(value: GeneralPermissions) {\r\n this._GeneralHandlerPermissions = value;\r\n }\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n baseUrl = BERRY.hostName + \"api/announcements\";\r\n\r\n getAnnouncementTypes() {\r\n var url = this.baseUrl + \"/GetAnnouncementTypes\";\r\n return this.http.get(url);\r\n }\r\n\r\n getAnnouncementClassifications() {\r\n var url = this.baseUrl + \"/GetAnnouncementClassifications\";\r\n return this.http.get(url);\r\n }\r\n\r\n getAnnouncementTags() {\r\n var url = this.baseUrl + \"/GetAnnouncementTags\";\r\n return this.http.get(url);\r\n }\r\n getAnnouncementUserRoles() {\r\n var url = this.baseUrl + \"/GetUserTypes\";\r\n return this.http.get(url);\r\n }\r\n\r\n getAnnouncementEntities() {\r\n var url = this.baseUrl + \"/GetEntitiesAndCommittess\";\r\n return this.http.get(url);\r\n }\r\n\r\n getAnnouncementRecipientGroup() {\r\n var url = this.baseUrl + \"/GetUserRecipientGroups\";\r\n return this.http.get(url);\r\n }\r\n\r\n addNewAnnouncement(params): Observable {\r\n return super.post(this.baseUrl + \"/AddAnnouncement\", params);\r\n }\r\n\r\n editAnnouncement(params): Observable {\r\n return super.post(this.baseUrl + \"/UpdateAnnouncement\", params);\r\n }\r\n\r\n GetInboxData(params): Observable {\r\n var url = this.baseUrl + \"/GetInboxData\";\r\n return this.http.post(url, params);\r\n }\r\n\r\n GetAdvanceSearchData(params): Observable {\r\n var url = this.baseUrl + \"/GetAdvanceSearchData\";\r\n return this.http.post(url, params);\r\n }\r\n\r\n public getAnnouncementInfo(id: number): Observable {\r\n var url = this.baseUrl + \"/GetAnnouncementInfo?id=\" + id;\r\n return this.http.get(url);\r\n }\r\n\r\n public getAnnouncementTrackingInfo(): Observable {\r\n var url = this.baseUrl + \"/GetAnnouncementTrackingInfo\";\r\n return this.http.get(url);\r\n }\r\n\r\n public setAnnouncementAsOpen(announcementId: number): Observable {\r\n var url = this.baseUrl + \"/SetAnnouncementAsOpen?announcementId=\" + announcementId;\r\n return this.http.get(url);\r\n }\r\n\r\n public setAnnouncementAsRead(announcementTrackingId: number): Observable {\r\n var url = this.baseUrl + \"/SetAnnouncementAsRead?announcementTrackingId=\" + announcementTrackingId;\r\n return this.http.post(url, announcementTrackingId);\r\n }\r\n\r\n public getAnnouncementAttachment(id: number): Observable {\r\n var url = this.baseUrl + \"/GetAttachments?id=\" + id;\r\n return this.http.get(url);\r\n }\r\n \r\n public GetAnnouncementGeneralHandler(announcementId: any, pageType: AnnouncementLogicHandlerTypeEnum): Observable {\r\n let url = `${BERRY.hostName}api/announcements/GetAnnouncementGeneralHandler?announcementId=${announcementId}&type=${pageType}`;\r\n return super.get(url);\r\n }\r\n\r\n public GetGeneralHandler(pageType: AnnouncementLogicHandlerTypeEnum): Observable {\r\n let url = `${BERRY.hostName}api/announcements/GetGeneralHandler?type=${pageType}`;\r\n return super.get(url);\r\n }\r\n public getAdministrationLetterType(): Observable {\r\n const url = this.baseUrl + \"/GetAdministrationLetterType\";\r\n return this.http.get(url);\r\n }\r\n\r\n public getAnnouncementInboxes() {\r\n var url = this.baseUrl + \"/GetAnnouncementInboxes\";\r\n return this.http.get(url);\r\n }\r\n\r\n public static redirectToNotPermittedPage(router: Router, logInfo: any) {\r\n var errorMsg = `This user \"${BERRY.User.UserId}\" is not permitted to read this announcement}`;\r\n router.navigate([\"/no-content\"]);\r\n }\r\n\r\n public DoPost(Url: string, Params: any): Observable {\r\n return this.postBlob(Url, Params);\r\n }\r\n\r\n postBlob(url: string, Params = {}): Observable {\r\n return this.http.post(url, Params, { responseType: 'blob' });\r\n }\r\n\r\n}\r\n\r\nexport enum AnnouncementLogicHandlerTypeEnum {\r\n All = 1,\r\n GeneralHandler = 2,\r\n AnnouncementGeneralHandler = 3,\r\n AnnouncementLogicHandler = 4\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 {{getText('YouDoNotHavePermissionsWithinTheSystem', 'DoNotHavePermission')}}\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","import { HttpClient } from \"@angular/common/http\";\r\nimport { AfterViewInit, Component, ViewContainerRef } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { Observable, forkJoin, fromEvent, Subscription } from \"rxjs\";\r\nimport { first, tap } from \"rxjs/operators\";\r\nimport { AuthService } from \"./framework/services/auth.service\";\r\nimport { LocalizationService } from \"./_common/components/localization/localization-service\";\r\nimport { IGlobalSettings } from \"./_common/models/IGlobalSettings\";\r\nimport { BaseCmp } from \"./_common/components/BaseComponent\";\r\nimport { LandingLoginMode } from \"./framework/components/login-landing-page/enums/Login-statuses.enum\";\r\nimport { LoginService } from \"./framework/components/login-landing-page/services/login.service\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { AppState } from \"./app.service\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\ndeclare var TabUtils: any;\r\n\r\n@Component({\r\n selector: \"app\",\r\n templateUrl: \"./app.component.html\"\r\n})\r\nexport class AppComponent extends BaseCmp implements AfterViewInit {\r\n\r\n private readonly httpStatusCodeUserInactive: number = 900;\r\n\r\n isThemeLoaded: boolean = false\r\n showOflineImage!: boolean;\r\n showInactiveUserMessage!: boolean;\r\n showLoader: boolean = true;\r\n static localizationServiveStatic: LocalizationService;\r\n subscription: Subscription = new Subscription()\r\n constructor(\r\n public _authService: AuthService,\r\n public _router: Router,\r\n private login: LoginService,\r\n public localizationServive: LocalizationService,\r\n public viewContainerRef: ViewContainerRef, private http: HttpClient, public _toastr: ToastrService, private appService: AppState) {\r\n super();\r\n this.loadTheme();\r\n\r\n AppComponent.localizationServiveStatic = this.localizationServive;\r\n BERRY.getText = AppComponent.getLocalization;\r\n\r\n TabUtils.OnBroadcastMessage(\"GetGoogleAuthenticationData\", function (data) {\r\n $('#UserSyncAccount_AuthSettingsJson').val(data.TokenInfo);\r\n $('#UserSyncAccount_AccountEmail').text(data.UserEmail);\r\n $('#UserSyncAccount_AccountToken').val(data.AccessToken);\r\n setTimeout(function () { $('#UserSyncAccount_AccountName').focus(); }, 20);\r\n });\r\n\r\n TabUtils.OnBroadcastMessage(\"GetMicrosoftAuthenticationData\", function (data) {\r\n $('#UserSyncAccount_AuthSettingsJson').val(data.TokenInfo);\r\n $('#UserSyncAccount_AccountEmail').text(data.UserEmail);\r\n $('#UserSyncAccount_AccountToken').val(data.AccessToken);\r\n setTimeout(function () { $('#UserSyncAccount_AccountName').focus(); }, 20);\r\n });\r\n }\r\n\r\n loadSession() {\r\n return this._authService.loadSession().then(() => {\r\n const settingsUrls = [`/AppData/settings.json?v=${BERRY?.SettingVersion}`]\r\n .map((url) => fetch(url).then(res => res.json()));\r\n Promise.allSettled(settingsUrls).then\r\n (\r\n ([\r\n { value: settings }\r\n ]: any) => {\r\n BERRY = {\r\n ...BERRY,\r\n ...settings,\r\n };\r\n\r\n if (localStorage.getItem(\"isUserSessionInitialize\") == null ||\r\n localStorage.getItem(\"isUserSessionInitialize\") == \"false\") {\r\n this.login.newUsersession().subscribe(\r\n data => {\r\n localStorage.setItem(\"SessionCode\", data);\r\n this.login.doneAndFireApplication()\r\n .subscribe(\r\n () => {\r\n localStorage.setItem(\"isUserSessionInitialize\", \"true\");\r\n this.loadAppDetailsAfterValidateSession();\r\n },\r\n () => {\r\n this.showOflineImage = true;\r\n }\r\n );\r\n },\r\n error => {\r\n if (!!error) {\r\n if (error.status == this.httpStatusCodeUserInactive) {\r\n this.showInactiveUserMessage = true;\r\n }\r\n else {\r\n this.showOflineImage = true;\r\n }\r\n }\r\n }\r\n );\r\n }\r\n else {\r\n this.loadAppDetailsAfterValidateSession();\r\n }\r\n }\r\n );\r\n }).catch((e) => {\r\n if (e == 0) {\r\n this._authService.signinSilent().then(res => {\r\n const settingsUrls = [`/AppData/settings.json?v=${BERRY?.SettingVersion}`]\r\n .map((url) => fetch(url).then(res => res.json()));\r\n Promise.allSettled(settingsUrls).then\r\n (\r\n ([\r\n { value: settings }\r\n ]: any) => {\r\n BERRY = {\r\n ...BERRY,\r\n ...settings,\r\n };\r\n this.loadLookups();\r\n this.getUserDetails();\r\n this.get(BERRY.hostName + 'api/GeneralSettingsApi/GetSettings').subscribe(data => {\r\n BERRY.generalSettingList = data\r\n });\r\n this.get(BERRY.hostName + 'api/AppModulesApi/IsCommitteesEnabled').subscribe(data => {\r\n BERRY.IsCommitteesEnabled = data;\r\n });\r\n });\r\n\r\n }).catch(res => {\r\n if (location.href.toLocaleLowerCase().replace(BERRY.absoluteHostName.toLocaleLowerCase(), '').split('/')[0] != 'at' ||\r\n location.href.toLocaleLowerCase().replace(BERRY.absoluteHostName.toLocaleLowerCase(), '').split('/')[0] != 'ExternalAuth') {\r\n if (!location.href.toLocaleLowerCase().includes(\"authentication\") && !location.href.toLocaleLowerCase().includes(\"signin-oidc\")) {\r\n localStorage.clear();\r\n localStorage.setItem(\"isUserSessionInitialize\", \"false\");\r\n this._router.navigate(['authentication']);\r\n }\r\n }\r\n })\r\n }\r\n if (e == 1) {\r\n if (location.href.toLocaleLowerCase().replace(BERRY.absoluteHostName.toLocaleLowerCase(), '').split('/')[0] != 'at' ||\r\n location.href.toLocaleLowerCase().replace(BERRY.absoluteHostName.toLocaleLowerCase(), '').split('/')[0] != 'ExternalAuth') {\r\n if (!location.href.toLocaleLowerCase().includes(\"authentication\") && !location.href.toLocaleLowerCase().includes(\"signin-oidc\")) {\r\n localStorage.clear();\r\n localStorage.setItem(\"isUserSessionInitialize\", \"false\");\r\n this._router.navigate(['authentication']);\r\n }\r\n }\r\n }\r\n })\r\n }\r\n\r\n loadLookups() {\r\n const lookupUrls = [`/AppData/Lookups.json?v=${BERRY.LookupVersion}`]\r\n .map((url) => fetch(url).then(res => res.json()));\r\n Promise.allSettled(lookupUrls).then((\r\n [\r\n { value: lookups }\r\n ]: any) => {\r\n BERRY.Lookups = lookups;\r\n });\r\n }\r\n loadAppDetailsAfterValidateSession() {\r\n\r\n this.loadLookups();\r\n\r\n this.getUserDetails();\r\n this.get(BERRY.hostName + 'api/GeneralSettingsApi/GetSettings').subscribe(data => {\r\n BERRY.generalSettingList = data;\r\n });\r\n\r\n this.get(BERRY.hostName + 'api/AppModulesApi/IsCommitteesEnabled').subscribe(data => {\r\n BERRY.IsCommitteesEnabled = data;\r\n });\r\n\r\n if (!BERRY.UserGuideDictionary) {\r\n const helperUrls = [\r\n '/guide/helpURLs.json'\r\n ].map((url) => fetch(url).then(res => res.json()));\r\n\r\n Promise.allSettled(helperUrls).then((\r\n [\r\n { value: urls }\r\n ]: any) => {\r\n BERRY.UserGuideDictionary = urls;\r\n });\r\n }\r\n }\r\n\r\n loadTheme() {\r\n\r\n function toRgb(color) {\r\n var aRgbHex = color.slice(1).match(/.{1,2}/g);\r\n var aRgb = [\r\n parseInt(aRgbHex[0], 16),\r\n parseInt(aRgbHex[1], 16),\r\n parseInt(aRgbHex[2], 16)\r\n ];\r\n return aRgb.join(\",\");\r\n }\r\n this.isThemeLoaded = true;\r\n\r\n const themeSettings = ['/AppData/ThemeSettings.json'].map((theme) => fetch(theme).then(res => res.json()));\r\n\r\n Promise.allSettled(themeSettings).then(([{ value: theme }]: any) => {\r\n document.documentElement.style.setProperty(\"--Berry-button-login-bg\", theme.LoginTheme.LoginButtonPrimaryBackgroundColor);\r\n document.documentElement.style.setProperty(\"--Berry-button-login-color\", theme.LoginTheme.LoginButtonPrimaryTextColor);\r\n\r\n document.querySelectorAll(\"link[href^='/dist/']\").forEach((link: HTMLLinkElement) => {\r\n\r\n if ((link?.nextSibling?.nextSibling as any).innerText.includes(\"@charset\")) {\r\n link.nextSibling?.nextSibling?.remove?.();\r\n }\r\n if (link.nextSibling.textContent.includes(\"/dist\") && (link.nextSibling as any).tagName.toLocaleLowerCase() == \"noscript\") {\r\n link.nextSibling.remove();\r\n }\r\n\r\n if (!link.href.includes(theme.ThemeFontSize)) {\r\n link.remove();\r\n }\r\n })\r\n\r\n let temp: any[] = [];\r\n const modules = Object.keys(theme.SystemTheme)\r\n temp = modules.map(module => {\r\n let style = '';\r\n for (const [key, value] of Object.entries(theme.SystemTheme[module])) {\r\n let cssValue = value as string;\r\n if (cssValue.includes(\"assets\")) {\r\n cssValue = `url(/${cssValue})`;\r\n }\r\n style += `--${this.camelCase(key)}: ${cssValue};`\r\n if (key == \"BaseColor\") {\r\n style += `--${this.camelCase('baseColorRGB')}: ${toRgb(cssValue)};`\r\n }\r\n }\r\n return {\r\n className: `html.${this.kebabCase(module)}`,\r\n style: `{${style}}`\r\n\r\n }\r\n });\r\n temp.find(module => module.className == 'html.root-theme').className = \":root\";\r\n let styleScript = \"\";\r\n temp.forEach((module) => {\r\n styleScript += `${module.className} ${module.style}`;\r\n\r\n });\r\n this.loadStyleTheme(styleScript);\r\n\r\n setTimeout(() => {\r\n this.isThemeLoaded = false;\r\n }, 500);\r\n\r\n });\r\n }\r\n\r\n loadStyleTheme(css) {\r\n let style = document.createElement('style');\r\n style.innerHTML = css;\r\n document.head.appendChild(style);\r\n }\r\n\r\n kebabCase(str) {\r\n return str.replace(/([a-z])([A-Z])/g, \"$1-$2\")\r\n .replace(/[\\s_]+/g, '-')\r\n .toLowerCase();\r\n }\r\n camelCase(str) {\r\n return str.replace(/(?:^\\w|[A-Z]|\\b\\w)/g, function (word, index) {\r\n return index === 0 ? word.toLowerCase() : word.toUpperCase();\r\n }).replace(/\\s+/g, '');\r\n }\r\n ngSuperAfterViewInit() {\r\n if (location.href.includes(\"(modal\")) {\r\n history.back();\r\n window.history.replaceState(null, null, location.href.replace(/ *\\([^)]*\\) */g, \"\"));\r\n }\r\n document.getElementById('favicon')?.\r\n setAttribute('href', `assets/assets-${BERRY.clientName.toLocaleLowerCase()}/favicon.png`);\r\n }\r\n\r\n ngSuperOnInit() {\r\n this.appService.startVisibilityCheck();\r\n this.initLogin();\r\n this.initStorageListener();\r\n BERRY.tabId = Math.floor(Math.random() * 9999999) + 1;\r\n this.initConnectionListener();\r\n }\r\n initConnectionListener(): void {\r\n this.subscription.add(fromEvent(window, 'online').subscribe({\r\n next: (res) => {\r\n BERRY.isConnectedToInternet = true\r\n }\r\n }));\r\n this.subscription.add(fromEvent(window, 'offline').pipe(first()).subscribe({\r\n next: (res) => {\r\n BERRY.isConnectedToInternet = false\r\n }\r\n }));\r\n }\r\n\r\n public get(url): Observable {\r\n return this.http.get(url);\r\n }\r\n\r\n initLogin() {\r\n this.showLoader = true;\r\n this.login.getManageTrustedIps().subscribe({\r\n next: (value: LandingLoginMode) => {\r\n this.showLoader = false;\r\n BERRY.AuthenticationMode = value;\r\n switch (value) {\r\n case LandingLoginMode.SSO:\r\n this._authService.loadSession().then().catch(() => {\r\n this._authService.login();\r\n })\r\n\r\n break;\r\n }\r\n },\r\n error: () => {\r\n this.showOflineImage = true;\r\n this.showLoader = false;\r\n },\r\n complete: () => {\r\n this.loadSession();\r\n },\r\n })\r\n };\r\n\r\n initStorageListener() {\r\n window.addEventListener('storage', (event) => {\r\n if (event.storageArea == localStorage) {\r\n const currentURL = this._router.url\r\n if (localStorage.getItem('auth') !== localStorage.getItem('auth_clone'))\r\n this.loadSession().then(() => {\r\n const currentUrl = this._router.url;\r\n // this._router.navigate([currentUrl],{onSameUrlNavigation:'reload'});\r\n })\r\n }\r\n });\r\n }\r\n\r\n instantiateLogin() {\r\n\r\n }\r\n getUserDetails() {\r\n const urls = [\r\n 'api/UserConfiguration/GetCurrentUser', 'api/AppModulesApi/GetClientAppModules'\r\n ].map((url) => this.get(BERRY.hostName + url));\r\n const joinStream = forkJoin(urls);\r\n return joinStream.pipe(tap(([GetCurrentUser, GetClientAppModules]) => {\r\n BERRY = {\r\n ...BERRY,\r\n ...GetCurrentUser\r\n };\r\n BERRY.ClientAppModules = GetClientAppModules;\r\n let language = window.navigator.language;\r\n if (GetCurrentUser.lang != undefined)\r\n language = GetCurrentUser.lang == 'en-SA' ? 'en' : 'ar' || localStorage.getItem('lang');\r\n else\r\n language = language == 'en-US' ? 'en' : 'ar';\r\n\r\n if (language == 'ar') {\r\n localStorage.setItem('lang', 'ar')\r\n }\r\n else {\r\n localStorage.setItem('lang', 'en')\r\n }\r\n BERRY.lang = language;\r\n BERRY.isEn = language == 'en' ? true : false;\r\n document.body.setAttribute('class', language == 'en' ? 'ltr' : 'k-rtl');\r\n if (language == 'ar') {\r\n const styleLink: any = document.createElement('link');\r\n styleLink.href = 'assets/css/rtl.min.css'\r\n styleLink.rel = 'stylesheet';\r\n document.head.appendChild(styleLink);\r\n BERRY = { ...BERRY, ...BERRY.LocalizationsAr };\r\n BERRY.LocalizationsEn = undefined;\r\n BERRY.LocalizationsAr = undefined;\r\n } else {\r\n BERRY = { ...BERRY, ...BERRY.LocalizationsEn };\r\n BERRY.LocalizationsEn = undefined;\r\n BERRY.LocalizationsAr = undefined;\r\n }\r\n BERRY.getText = AppComponent.getLocalization;\r\n document.getElementById('favicon')?.\r\n setAttribute('href', `assets/assets-${BERRY.clientName.toLocaleLowerCase()}/favicon.png`);\r\n\r\n require('/assets/js/share-screen-bundle.min.js');\r\n require('/assets/js/index.js');\r\n BERRY.$user.next(true);\r\n BERRY.$user.complete();\r\n BERRY.islookupsLoaded = true;\r\n })).subscribe(() => { }, (error) => {\r\n if (!!error) {\r\n if (error.status == this.httpStatusCodeUserInactive) {\r\n if (!!localStorage.getItem('AssignmentUserId')) {\r\n localStorage.removeItem('AssignmentUserId');\r\n location.href = BERRY.absoluteHostName;\r\n }\r\n else {\r\n this.showInactiveUserMessage = true;\r\n }\r\n }\r\n else {\r\n this.showOflineImage = true;\r\n }\r\n }\r\n })\r\n }\r\n isBusy: boolean = true\r\n static getLocalization(key: string, set: string, lang?: string): string {\r\n return AppComponent.localizationServiveStatic.getLocalization(\r\n key,\r\n set,\r\n lang\r\n );\r\n }\r\n public logOut() {\r\n this._authService.logout();\r\n }\r\n\r\n public get isBERRYLookupLoaded(): boolean {\r\n return BERRY.islookupsLoaded\r\n }\r\n\r\n get viewMainLoader(): boolean {\r\n return BERRY.viewMainLoader || this.isThemeLoaded || this.showLoader\r\n }\r\n}\r\n","import { Injectable, EventEmitter, HostListener } from \"@angular/core\";\r\nimport { HmrState } from \"angular2-hmr\";\r\nimport {\r\n Router,\r\n NavigationStart,\r\n NavigationEnd,\r\n ActivatedRoute,\r\n RouterStateSnapshot\r\n} from \"@angular/router\";\r\nimport { Response } from \"@angular/http\";\r\nimport { map, catchError, takeWhile, flatMap } from \"rxjs/operators\";\r\nimport { Subject, SubscriptionLike as ISubscription, throwError, BehaviorSubject, from, fromEvent } from \"rxjs\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { AppModulesEnum } from \"./_common/models/AppModulesEnum\";\r\nimport { IGlobalSettings } from \"./_common/models/IGlobalSettings\";\r\nimport { HttpInterceptor } from \"./_common/services/http-interceptor\";\r\nimport { MessagingService } from \"./_common/services/messaging-service\";\r\nimport { ScreenResolutionDto } from \"./ScreenResolutionDto\";\r\nimport { TooltipService } from \"./_common/directives/tooltip/tooltip.service\";\r\nimport { LandingLoginMode } from \"./framework/components/login-landing-page/enums/Login-statuses.enum\";\r\n\r\nconst defaultModule = AppModulesEnum.Correspondences;\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var NProgress: any;\r\n\r\n@Injectable()\r\nexport class AppState {\r\n CurrentUrl: string;\r\n isSubscribed: boolean = true;\r\n berryOfflineEnabledChanged = new Subject();\r\n moduleChanged: EventEmitter = new EventEmitter();\r\n searchChanged: EventEmitter = new EventEmitter();\r\n RefreshApllicationHistory: EventEmitter = new EventEmitter();\r\n public _berryOfflineEnabled: boolean;\r\n public _isLoggedIn: boolean = true;\r\n public stopRefreshingCorrespondenceDashboard: BehaviorSubject = new BehaviorSubject(false);\r\n get berryOfflineEnabled() {\r\n return this._berryOfflineEnabled;\r\n }\r\n set berryOfflineEnabled(value: boolean) {\r\n this._berryOfflineEnabled = value;\r\n this.berryOfflineEnabledChanged.next(value);\r\n }\r\n\r\n get isLoggedIn() {\r\n return this._isLoggedIn;\r\n }\r\n set isLoggedIn(value: boolean) {\r\n if (this._isLoggedIn != value) {\r\n this._isLoggedIn = value;\r\n var userSessionState = this._isLoggedIn ? UserSessionStateEnum.Valid : UserSessionStateEnum.Expired;\r\n this.messagingSvc.publish(\"UserSessionState\", userSessionState);\r\n }\r\n }\r\n isCookiesCleared: boolean = false;\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n @HmrState() _state = {};\r\n isLoggedBy = false;\r\n public _router: Router;\r\n public _ActivatedRoute: ActivatedRoute;\r\n public _routerEventsSubscriber: ISubscription = null;\r\n modalOpened: boolean = false;\r\n currentModule: AppModulesEnum = defaultModule;\r\n currentURLParent: string;\r\n currentURLFirstChild: string;\r\n currentURLSecondChild: string;\r\n RouteChange = new Subject();\r\n screenResolution: ScreenResolutionDto;\r\n constructor(\r\n public readonly http: HttpInterceptor,\r\n public readonly toastr: ToastrService,\r\n public messagingSvc: MessagingService,\r\n public tooltipService: TooltipService\r\n ) {\r\n this.berryOfflineEnabled = BERRY.BerryOfflineEnabled;\r\n }\r\n\r\n init(_router: Router, _ActivatedRoute: ActivatedRoute) {\r\n this._router = _router;\r\n this._ActivatedRoute = _ActivatedRoute;\r\n this.DetectRouteChange();\r\n this.CalculateScreenResolution();\r\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onResize(event) {\r\n this.CalculateScreenResolution();\r\n }\r\n private CalculateScreenResolution() {\r\n this.screenResolution = {\r\n Width: window.innerWidth.toString(),\r\n Height: window.innerHeight.toString()\r\n };\r\n }\r\n\r\n public DetectRouteChange() {\r\n const me = this;\r\n\r\n me._routerEventsSubscriber = me._router.events\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(val => {\r\n if (val instanceof NavigationEnd) {\r\n //try to get childs\r\n //const ActivatedRoutes = me._router.routerState.snapshot.children(me._ActivatedRoute);\r\n\r\n let _routerStateSnapshot = me._router.routerState.snapshot;\r\n //try first child\r\n // if (ActivatedRoutes && ActivatedRoutes.length > 0) {\r\n // ActivatedRoute = ActivatedRoutes[0];\r\n // }\r\n\r\n me.OnRouteChange(val, _routerStateSnapshot, me._router);\r\n\r\n NProgress.set(0.8);\r\n setTimeout(() => NProgress.done(), 100);\r\n }\r\n\r\n if (val instanceof NavigationStart) {\r\n NProgress.start();\r\n this.tooltipService.hide();\r\n }\r\n });\r\n }\r\n\r\n // already return a clone of the current state\r\n get state() {\r\n return (this._state = this._clone(this._state));\r\n }\r\n // never allow mutation\r\n set state(value) {\r\n throw new Error(\"do not mutate the `.state` directly\");\r\n }\r\n\r\n get(prop?: any) {\r\n // use our state getter for the clone\r\n const state = this.state;\r\n return state.hasOwnProperty(prop) ? state[prop] : state;\r\n }\r\n\r\n set(prop: string, value: any) {\r\n // internally mutate our state\r\n return (this._state[prop] = value);\r\n }\r\n\r\n _clone(object) {\r\n // simple object clone\r\n return JSON.parse(JSON.stringify(object));\r\n }\r\n\r\n public OnRouteChange(\r\n _NavigationEnd: NavigationEnd,\r\n _routerStateSnapshot: RouterStateSnapshot,\r\n _router: Router\r\n ) {\r\n //try to extract CorrId\r\n if (_routerStateSnapshot) {\r\n this.currentURLParent = \"\";\r\n this.currentURLFirstChild = \"\";\r\n this.currentURLSecondChild = \"\";\r\n let _routerStateSnapshotSplit = _routerStateSnapshot.url.split(\"/\");\r\n if (_routerStateSnapshotSplit.length > 1)\r\n this.currentURLParent = _routerStateSnapshotSplit[1].toLowerCase();\r\n\r\n if (this.currentURLParent.indexOf(\"?\") != -1) {\r\n var _routerStateSnapshotSplit2 = this.currentURLParent.split(\"?\");\r\n if (_routerStateSnapshotSplit2.length > 1)\r\n this.currentURLParent = _routerStateSnapshotSplit2[0].toLowerCase();\r\n }\r\n\r\n var secondPartOfUrl: string;\r\n switch (this.currentURLParent) {\r\n case \"admin\":\r\n this.currentModule = AppModulesEnum.Manage;\r\n break;\r\n case \"correspondence\":\r\n this.currentModule = AppModulesEnum.Correspondences;\r\n break;\r\n case \"contacts\":\r\n secondPartOfUrl = _router.url.toLowerCase();\r\n if (secondPartOfUrl.indexOf(\"/contacts/individuals\") !== -1) {\r\n this.currentModule = AppModulesEnum.Contacts;\r\n } else {\r\n this.currentModule = AppModulesEnum.Organizations;\r\n }\r\n break;\r\n case \"tasks\":\r\n this.currentModule = AppModulesEnum.Tasks;\r\n break;\r\n case \"scheduling\":\r\n this.currentModule = AppModulesEnum.Scheduling;\r\n break;\r\n case \"archive\":\r\n this.currentModule = AppModulesEnum.Archive;\r\n break;\r\n case \"archived-studies\":\r\n case \"archive-studies\":\r\n this.currentModule = AppModulesEnum.Documents;\r\n break;\r\n case \"proclamation\":\r\n this.currentModule = AppModulesEnum.Proclamation;\r\n break;\r\n case \"documents-center\":\r\n this.currentModule = AppModulesEnum.DocumentCenter;\r\n break;\r\n case \"incident\":\r\n this.currentModule = AppModulesEnum.Proclamation;\r\n break;\r\n case \"committees\":\r\n this.currentModule = AppModulesEnum.Committees;\r\n break;\r\n case \"announcements\":\r\n this.currentModule = AppModulesEnum.Announcement;\r\n break;\r\n case \"executive-communication\":\r\n this.currentModule = AppModulesEnum.ExecutiveCommunication;\r\n break;\r\n case \"initiatives\":\r\n this.currentModule = AppModulesEnum.Initiatives;\r\n break\r\n case \"reports\":\r\n this.currentModule = AppModulesEnum.Reports;\r\n break\r\n case \"follow-up-team\":\r\n this.currentModule = AppModulesEnum.FollowupTeam;\r\n break\r\n default:\r\n this.currentModule = defaultModule;\r\n break;\r\n }\r\n\r\n _routerStateSnapshot = _router.routerState.snapshot;\r\n _routerStateSnapshotSplit = _routerStateSnapshot.url.split(\"/\");\r\n if (_routerStateSnapshotSplit.length > 1) {\r\n this.currentURLFirstChild = _routerStateSnapshotSplit[1].toLowerCase();\r\n if (_routerStateSnapshotSplit.length > 2) {\r\n this.currentURLSecondChild = _routerStateSnapshotSplit[2].toLowerCase();\r\n }\r\n }\r\n this.moduleChanged.emit(true);\r\n }\r\n\r\n var changeParams = new RouteChangeParams();\r\n changeParams.queryParams = _router.routerState.snapshot.root.queryParams;\r\n changeParams.children = _router.routerState.snapshot[\"_root\"].children;\r\n\r\n if (this.modalOpened) {\r\n this.modalOpened = false;\r\n return;\r\n }\r\n\r\n let isModalRoute = (this._router.url.indexOf(\"(modal:\") > -1);\r\n if (isModalRoute)\r\n this.modalOpened = true;\r\n\r\n if (!this.modalOpened)\r\n this.RouteChange.next(changeParams);\r\n }\r\n\r\n ChangeLang(dto) {\r\n const url = BERRY.hostName + \"api/LanguageApi/Change\";\r\n return this.http.post(url, dto).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n CalendarType(dto) {\r\n const url = BERRY.hostName + \"api/CalendarApi/Change\";\r\n return this.http.post(url, dto).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n impersonation(userID) {\r\n if (!this.screenResolution) {\r\n this.CalculateScreenResolution();\r\n }\r\n const url = BERRY.absoluteHostName + \"api/Account/DoImpersonatation?id=\" + userID;\r\n return this.http.post(url, this.screenResolution).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public extractData(res: Response) {\r\n const body = res;\r\n return body || {};\r\n }\r\n\r\n startVisibilityCheck() {\r\n const actionEventNames = [\r\n 'visibilitychange', 'webkitvisibilitychange', 'msvisibilitychange'];\r\n\r\n from(actionEventNames).pipe(\r\n flatMap(eventName => fromEvent(document, eventName).pipe(map((evt) => {\r\n return {\r\n name: eventName,\r\n evt: evt\r\n }\r\n })))).subscribe(evt => {\r\n if (document.visibilityState === 'hidden') {\r\n this.stopRefreshingCorrespondenceDashboard.next(true);\r\n }\r\n else if (document.visibilityState === 'visible') {\r\n if (!localStorage.getItem(\"auth\") && !location.href.toLocaleLowerCase().includes(\"authentication\")) {\r\n window.top.location.href = \"/\";\r\n }\r\n else if (localStorage.getItem(\"auth\") && location.href.toLocaleLowerCase().includes(\"authentication\")) {\r\n window.top.location.href = \"/\";\r\n }\r\n this.stopRefreshingCorrespondenceDashboard.next(false);\r\n }\r\n });\r\n }\r\n\r\n public handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n const errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n return throwError(errMsg);\r\n }\r\n}\r\n\r\nexport class RouteChangeParams {\r\n queryParams: any;\r\n children = [];\r\n}\r\n\r\nexport enum UserSessionStateEnum {\r\n Valid,\r\n Expired\r\n}\r\n","export class ScheduleItemRepetitionModel {\r\n public AllowRepetition: boolean = false;\r\n public RepetitionEvery: number = 1;\r\n public RepetitionType: number = 1;\r\n public RepetitionEndType: number = 2;\r\n public RepetitionEndDate: Date = new Date(new Date().setHours(24));\r\n public RepetitionEndAfter: number = 1;\r\n public recurrencePatternValue: number = 1;\r\n public IsSunday: boolean = false;\r\n public IsMonday: boolean = false;\r\n public IsTuesday: boolean = false;\r\n public IsWednesday: boolean = false;\r\n public isThursday: boolean = false;\r\n public IsFriday: boolean = false;\r\n public IsSaturday: boolean = false;\r\n public DayNumberOfMonth: number = 1;\r\n public WeekOfMonth: number = 1;\r\n public DayOfMonth: number = 1;\r\n public MonthlyRepetitionType: number = 1;\r\n public RepetitionEndDateString: string = \"\";\r\n public EndDateString: string = \"\";\r\n public AlternativeText: Date = new Date();\r\n public RepetitionTypeText: string = \"\";\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Headers, RequestOptions, Response } from \"@angular/http\";\r\nimport { Guid } from \"guid-typescript\";\r\nimport { Observable, throwError } from \"rxjs\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class CorrActionsSvc extends BaseService {\r\n baseURL = BERRY.hostName;\r\n constructor(public http: HttpInterceptor) {\r\n\r\n super(http);\r\n\r\n }\r\n\r\n public changeActionDeadLine(obj) {\r\n var url =\r\n BERRY.hostName +\r\n \"Correspondences/CorrespondenceActions/ChangeSelectedActionDeadline\";\r\n return this.http.post(url, obj).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public ActionSubmit(obj) {\r\n const headers = new Headers({ 'Content-Type': 'application/json' });\r\n const options = new RequestOptions({ headers: headers });\r\n var url =\r\n BERRY.hostName + \"Correspondences/CorrespondenceActions/ActionSubmit\";\r\n return this.http.post(url, obj, options).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public RecallCorrespondence(obj) {\r\n var url =\r\n BERRY.hostName +\r\n \"Correspondences/CorrespondenceActions/RecallCorrespondence\";\r\n return this.http.post(url, obj).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n isTherePendingFiles(wopiId) {\r\n let url = BERRY.hostName + `Correspondences/CorrespondenceActions/IsTherePendingFiles/${wopiId}`;\r\n return this.http.get(url);\r\n }\r\n\r\n getSavedData(actionId, actionTypeID) {\r\n if (!actionId)\r\n actionId = Guid.EMPTY;\r\n let url =\r\n BERRY.hostName + \"Correspondences/CorrespondenceActions/GetSavedData\";\r\n\r\n return this.http\r\n .post(url, { ActionId: actionId, ActionTypeID: actionTypeID })\r\n .pipe(map(this.extractData));\r\n }\r\n\r\n public CheckForwardFromInboxEntityToMyInboxOrOpposite(correspondenceId, senderUserId, senderEntityId) {\r\n let url =\r\n BERRY.hostName + \"Correspondences/CorrespondenceActions/CheckForwardFromInboxEntityToMyInboxOrOpposite\";\r\n return this.http\r\n .post(url, { correspondenceId: correspondenceId, senderUserId: senderUserId, senderEntityId: senderEntityId }).pipe(\r\n map(res => res),\r\n catchError(this.handleError));\r\n }\r\n //getSavedData(actionId) {\r\n // let url = BERRY.hostName + \"Correspondences/CorrespondenceActions/GetSavedData?actionId=\" + actionId;\r\n\r\n // return this.http.get(url)\r\n // .map(this.extractData);\r\n //}\r\n\r\n saveAction(obj) {\r\n let url = BERRY.hostName + \"Correspondences/CorrespondenceActions/SaveAction\";\r\n return this.http.post(url, obj).pipe(map(this.extractData));\r\n }\r\n\r\n changeCorrespondenceStateToSaved(correspondenceId: string) {\r\n let url = `${BERRY.hostName}api/CorrespondenceApi/ChangeCorrespondenceStateToSaved?CorrespondenceId=${correspondenceId}`;\r\n return this.http.get(url).pipe(map(this.extractData));\r\n }\r\n\r\n extractData(res: Response) {\r\n let body = res;\r\n return body || {};\r\n }\r\n\r\n handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n return throwError(errMsg);\r\n }\r\n\r\n public AppHistory: any;\r\n\r\n public CorrespondecenceSaveValidation(CorrespondenceID) {\r\n let url = `${BERRY.hostName}Correspondences/CorrespondenceActions/CorrespondecenceSaveValidation?CorrespondenceID=${CorrespondenceID}`;\r\n return this.http.get(url).pipe(map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n public MiniActionSubmit(obj) {\r\n var url =\r\n BERRY.hostName + \"Correspondences/CorrespondenceActions/MiniActionSubmit\";\r\n return this.http.post(url, obj).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCommunicationCCUsers(correspondenceId: any) {\r\n let url = `${BERRY.hostName}api/CommunicationApi/GetCommunicationCCUsers?corrid=${correspondenceId}`;\r\n return this.http.get(url).pipe(map(this.extractData));\r\n }\r\n\r\n ValidateSendingCopyToParentEntityManager(entityIdForwardedTo: number) {\r\n let url = `${BERRY.hostName}api/DepartmentApi/ValidateSendingCopyToParentEntityManager?entityId=${entityIdForwardedTo}`;\r\n return this.http.get(url).pipe(map(this.extractData));\r\n }\r\n\r\n readUnreadCorrespondence(correspondenceId: string, isRead: boolean): Observable {\r\n let url = `${BERRY.hostName}Correspondences/CorrespondenceActions/ReadUnreadCorrespondence?correspondenceId=${correspondenceId}&isRead=${isRead}`;\r\n return this.http.get(url);\r\n } \r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { SharedModule } from \"src/app/shared/shared.module\";\r\nimport { CorrActionsHeader } from \"./CorrActions-Header-cmp\";\r\n\r\n@NgModule({\r\n imports: [\r\n SharedModule,\r\n ],\r\n declarations: [\r\n CorrActionsHeader\r\n ],\r\n exports: [\r\n CorrActionsHeader\r\n ]\r\n})\r\nexport class CorrespondenceHeaderModule { }\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\r\n \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n {{getText('requiredField', 'Javascript/Common')}}\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 {{getText('requiredField', 'Javascript/Common')}}\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 \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 {{getText('requiredField', 'Javascript/Common')}}\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 {{getText('requiredField', 'Javascript/Common')}}\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
    ","import { Component, Input, EventEmitter, ViewChild, NgZone } from \"@angular/core\";\r\nimport { NewCorrespondenceSvc } from \"./New-Correspondence-svc\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { FilingStorageSvc } from \"./storage/filing-storage-svc\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { CorrespondenceCategoryIdEnum } from \"../_models/CorrespondenceCategoryId-Enum\";\r\nimport { generalSettingsSvc } from \"../manage/generalSettings/general-settings-svc\";\r\nimport { IComboboxOptions, IComboboxServerDatasourceOptions, kendoCombobox } from \"../../../_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { BorrowRequestsvc } from \"../details/info/DetailsFiling/borrowRequest-svc\";\r\nimport { CategoryTypeClassificationSvc } from \"../manage/Category-Type-Classification/category-type-classification-svc\";\r\nimport { DetailsSVC } from \"../details/details-svc\";\r\nimport { ContactsHelpers } from \"../../../Contacts/helpers\";\r\nimport { StorageShelvesSvc } from \"./storage/storage-shelve-svc\";\r\nimport { ShelveInformationDto } from \"../details/info/DetailsFiling/filing-cmp\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { CorrespondenceFilingFeaturesEnum } from \"../_models/enums/CorrespondenceFilingFeaturesEnum\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"correspondenceFilingFeatures\",\r\n templateUrl: \"./CorrespondenceFilingFeatures.html\",\r\n providers: [\r\n FilingStorageSvc,\r\n generalSettingsSvc,\r\n ]\r\n})\r\nexport class CorrespondenceFilingFeatures extends BaseCmp {\r\n public ShelveInformation: ShelveInformationDto = new ShelveInformationDto();\r\n _filingFeatures: boolean = false;\r\n _showBasicCorrespondenceShelving: boolean = false;\r\n _isDocumentCenter: boolean = false;\r\n _newDesign: boolean = false;\r\n _corrisPrivate: boolean = false;\r\n _corrConfidentiality: string = \"\";\r\n _corrImportance: boolean = false;\r\n _categoryId: number;\r\n _baseCategoryId: CorrespondenceCategoryIdEnum;\r\n _filingStorageSvc: FilingStorageSvc = null;\r\n _inDetailsHeaderEditComponent: boolean = false;\r\n @ViewChild(\"locationsElement\") locationsElement: kendoCombobox;\r\n @ViewChild(\"currentRoomsElement\") currentRoomsElement: kendoCombobox;\r\n @ViewChild(\"currentCabinetsElement\") currentCabinetsElement: kendoCombobox;\r\n @ViewChild(\"currentShelvesElement\") currentShelvesElement: kendoCombobox;\r\n @ViewChild(\"currentFoldersElement\") currentFoldersElement: kendoCombobox;\r\n // تعديل معلومات الترفيف المتعلقة بتأكيد استلام اصل المعاملة من مركز الوثائق\r\n @Input(\"modifyTheShelvingInformation\") modifyTheShelvingInformation: boolean = false;\r\n\r\n corrId: any;\r\n\r\n @Input()\r\n set NewDesign(flag) {\r\n this._newDesign = flag;\r\n }\r\n\r\n get NewDesign() {\r\n return this._newDesign;\r\n }\r\n\r\n @Input()\r\n set showBasicCorrespondenceShelving(flag) {\r\n this._showBasicCorrespondenceShelving = flag;\r\n }\r\n\r\n get showBasicCorrespondenceShelving() {\r\n return this._showBasicCorrespondenceShelving;\r\n }\r\n\r\n @Input() set isDocumentCenter(flag) {\r\n this._isDocumentCenter = flag;\r\n }\r\n\r\n get isDocumentCenter() {\r\n return this._isDocumentCenter;\r\n }\r\n\r\n @Input() set isPrivate(status: boolean) {\r\n this._corrisPrivate = status;\r\n }\r\n\r\n @Input()\r\n set Confidentiality(status: string) {\r\n this._corrConfidentiality = status;\r\n }\r\n\r\n @Input()\r\n set importance(status: boolean) {\r\n this._corrImportance = status;\r\n }\r\n\r\n @Input()\r\n set categoryId(id: number) {\r\n this._categoryId = id;\r\n }\r\n\r\n @Input()\r\n set baseCategoryId(id: CorrespondenceCategoryIdEnum) {\r\n this._baseCategoryId = id;\r\n }\r\n\r\n @Input()\r\n set filingStorageSvc(instance: FilingStorageSvc) {\r\n this._filingStorageSvc = instance;\r\n }\r\n\r\n @Input()\r\n set InDetailsHeaderEditComponent(flag: boolean) {\r\n this._inDetailsHeaderEditComponent = flag;\r\n }\r\n\r\n get InDetailsHeaderEditComponent() {\r\n return this._inDetailsHeaderEditComponent;\r\n }\r\n\r\n get isPrivate() {\r\n return this._corrisPrivate;\r\n }\r\n\r\n get Confidentiality() {\r\n return this._corrConfidentiality;\r\n }\r\n\r\n get importance() {\r\n return this._corrImportance;\r\n }\r\n\r\n get categoryId() {\r\n return this._categoryId;\r\n }\r\n\r\n get filingStorageSvc() {\r\n return this._filingStorageSvc;\r\n }\r\n isSubscribed: boolean = true;\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n internalEntities: any[] = [];\r\n documentCenters: any[] = [];\r\n @Input('containerColumn') containerColumn = 'col-xs-11';\r\n constructor(\r\n public newCorrespondenceSvc: NewCorrespondenceSvc,\r\n public generalSettingsSvc: generalSettingsSvc,\r\n public borrowRequestsvc: BorrowRequestsvc,\r\n public categoryTypeClassificationSvc: CategoryTypeClassificationSvc,\r\n public detailsSVC: DetailsSVC,\r\n public storageShelvesSvc: StorageShelvesSvc,\r\n public zone: NgZone,\r\n public defaults: ContactsHelpers,\r\n public router: Router,\r\n public route: ActivatedRoute,\r\n ) {\r\n\r\n super();\r\n }\r\n get isCommitteesModule() {\r\n var urlTree = (this.router).rawUrlTree.root.children.primary.segments[0];\r\n if (urlTree) {\r\n if (urlTree.path == \"committees\")\r\n return true\r\n }\r\n }\r\n ngSuperAfterViewInit() { }\r\n\r\n ngSuperOnInit() {\r\n \r\n this.getCorrespondencesCategoriesSettings();\r\n var urlTree = (this.router).rawUrlTree.root.children.primary.segments[1];\r\n if (urlTree) {\r\n\r\n // CorrespondenceClassification => Tab \"تصنيف المعاملات\"\r\n var isCorrespondenceClassificationTab = urlTree.path == \"CorrespondenceClassification\";\r\n var isCorrespondenceDetailsTab = urlTree.path == \"details\";\r\n if (!this.isCommitteesModule) {\r\n if (isCorrespondenceClassificationTab || isCorrespondenceDetailsTab || this.modifyTheShelvingInformation) {\r\n if (this.detailsSVC.Data && this.detailsSVC.Data.Correspondence) {\r\n // Get Data For Basic Correspondence Shelving\r\n this.loadLocationInfo(this.detailsSVC.Data.Correspondence.CorrespondenceID);\r\n } else {\r\n\r\n if (isCorrespondenceClassificationTab) {\r\n if (this.route.snapshot.queryParams[\"corrId\"]) {\r\n this.corrId = this.route.snapshot.queryParams[\"corrId\"];\r\n }\r\n\r\n } else {\r\n this.corrId = (this.router).rawUrlTree.root.children.primary.segments[2].path\r\n }\r\n if (!this.NewDesign) {\r\n this.detailsSVC.CorrId = this.corrId;\r\n this.loadLocationInfo(this.corrId);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n GetDefaultOptions: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"get\",\r\n searchField: \"kw\",\r\n resultsField: \"\"\r\n };\r\n public refreshFilingInformations(): void {\r\n let me = this;\r\n me.loadLocationInfo(me.detailsSVC.Data.Correspondence.CorrespondenceID);\r\n }\r\n loadLocationInfo(correspondenceId: string): void {\r\n let me = this;\r\n if (BERRY.onOffFeatures.ShowCorrespondanceShelvingFeatures) {\r\n me.storageShelvesSvc\r\n .getAllShelveData(correspondenceId, me.modifyTheShelvingInformation)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data) {\r\n me.ShelveInformation = data;\r\n if (me.ShelveInformation.IsCentralAdministrationBuildingShelving || (me.ShelveInformation.IsOtherStorageLocationShelving && me.modifyTheShelvingInformation)) {\r\n setTimeout(() => {\r\n if (this.locationsElement != undefined) {\r\n\r\n\r\n me.filingStorageSvc.StorageRoomId = me.ShelveInformation.RoomId;\r\n me.filingStorageSvc.StorageCabinetId = me.ShelveInformation.CabinetId;\r\n me.filingStorageSvc.StorageShelveId = me.ShelveInformation.ShelveId;\r\n me.filingStorageSvc.StorageAsDescription = me.ShelveInformation.LocationDescription;\r\n me.filingStorageSvc.isLoadDataForTheFirstTime = true;\r\n\r\n\r\n\r\n $(\"#StorageLocKendoCombo\").data(\"kendoComboBox\").value(me.ShelveInformation.LocationId);\r\n $(\"#StorageLocKendoCombo\").data(\"kendoComboBox\").trigger(\"change\");\r\n }\r\n if (this.currentRoomsElement != undefined) {\r\n $(\"#RooomLocKendoCombo\").data(\"kendoComboBox\").value(me.ShelveInformation.RoomName);\r\n }\r\n if (this.currentCabinetsElement != undefined) {\r\n $(\"#CabinetLocKendoCombo\").data(\"kendoComboBox\").value(me.ShelveInformation.CabinetName);\r\n }\r\n if (this.currentShelvesElement != undefined) {\r\n $(\"#ShelvesLocKendoCombo\").data(\"kendoComboBox\").value(me.ShelveInformation.ShelveName);\r\n }\r\n if (this.currentFoldersElement != undefined) {\r\n $(\"#FoldersLocKendoCombo\").data(\"kendoComboBox\").value(me.ShelveInformation.StorageFolder);\r\n }\r\n if (me.modifyTheShelvingInformation) {\r\n me.filingStorageSvc.loadFreeShleves(\r\n me.ShelveInformation.ShelveId, me.modifyTheShelvingInformation\r\n );\r\n }\r\n me.filingStorageSvc.isLoadDataForTheFirstTime = false;\r\n }, 500);\r\n }\r\n else {\r\n\r\n if (me.ShelveInformation.IsOtherStorageLocationShelving) {\r\n me.filingStorageSvc.StorageAsDescription = me.ShelveInformation.ShelveName;\r\n me.filingStorageSvc.StorageOtherLocationDescNested = false;\r\n }\r\n else {\r\n me.ShelveInformation.ShelveName = \"\";\r\n }\r\n\r\n me.ShelveInformation.LocationName = \"\";\r\n me.ShelveInformation.RoomName = \"\";\r\n me.ShelveInformation.CabinetName = \"\";\r\n me.ShelveInformation.StorageFolder = \"\";\r\n }\r\n\r\n }\r\n });\r\n\r\n }\r\n }\r\n\r\n public LocationSelectOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaults.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.GetDefaultOptions,\r\n {\r\n url: `${this.getBerry.hostName}api/CorrespondenceApi/GetAllLocation`\r\n }\r\n ),\r\n dataTextField: \"Name\",\r\n dataValueField: \"LocationId\",\r\n allowFreeText: false,\r\n minLength: 1,\r\n autoBind: true\r\n }\r\n );\r\n\r\n public CurrentRoomsSelectOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaults.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign({}, this.GetDefaultOptions, {\r\n enabled: false\r\n }),\r\n datasource: [],\r\n dataTextField: \"RoomName\",\r\n dataValueField: \"Id\",\r\n allowFreeText: false,\r\n minLength: 1,\r\n autoBind: true,\r\n displayTemplate: \"#: data.RoomName #\"\r\n }\r\n );\r\n\r\n public CurrentCabinetSelectOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaults.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign({}, this.GetDefaultOptions, {\r\n enabled: false\r\n }),\r\n datasource: [],\r\n dataTextField: \"Number\",\r\n dataValueField: \"Id\",\r\n allowFreeText: false,\r\n minLength: 1,\r\n autoBind: true,\r\n displayTemplate: \"#: data.Number #\"\r\n }\r\n );\r\n\r\n public CurrentShelvesSelectOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.defaults.defaultAutocompleteOptions,\r\n {\r\n serverDatasource: Object.assign({}, this.GetDefaultOptions, {\r\n enabled: false\r\n }),\r\n datasource: [],\r\n dataTextField: \"Number\",\r\n dataValueField: \"Id\",\r\n allowFreeText: false,\r\n minLength: 1,\r\n autoBind: true,\r\n displayTemplate: \"#: data.Number #\"\r\n }\r\n );\r\n\r\n\r\n //public get isOnlyCalssification() {\r\n // return false;\r\n //}\r\n\r\n get enableForwardOriginalFiles(): boolean {\r\n return BERRY.User.Permissions.EnableForwardOriginalFiles;\r\n }\r\n\r\n get showForwardToDocumentCenter(): boolean {\r\n return BERRY.onOffFeatures.IsDocumentCenterManagementEnabled;\r\n }\r\n \r\n get hideCentralAdministrationBuilding(): boolean {\r\n return BERRY.appSettings.keys.HideCentralAdministrationBuilding;\r\n }\r\n\r\n\r\n get disableEditStorage() {\r\n if (this.showForwardToDocumentCenter) {\r\n if (this.filingStorageSvc.Correspondance != null)\r\n if (this.filingStorageSvc.Correspondance.DocumentCenterEntityId != null)\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n get correspondenceId() {\r\n if (this.detailsSVC.Data && this.detailsSVC.Data.Correspondence) {\r\n this.filingStorageSvc.Correspondance = this.detailsSVC.Data.Correspondence;\r\n return this.detailsSVC.Data.Correspondence.CorrespondenceID;\r\n }\r\n return undefined;\r\n }\r\n\r\n correspondenceFilingEnum = CorrespondenceFilingFeaturesEnum ;\r\n //getInternalEntities(): void {\r\n // this.newCorrespondenceSvc.getInternalEntities().subscribe(data => {\r\n // this.internalEntities = data.filter(e => e.EntityID != undefined);\r\n // });\r\n //}\r\n\r\n chooseBestShelf(): void {\r\n if (this._baseCategoryId === CorrespondenceCategoryIdEnum.Internal)\r\n this.filingStorageSvc.chooseBestShelf(\r\n this.categoryId,\r\n this.importance ? true : false,\r\n this.Confidentiality\r\n );\r\n else\r\n this.filingStorageSvc.chooseBestShelf(\r\n this.isPrivate ? \"public\" + this.categoryId : this.categoryId,\r\n this.importance ? true : false,\r\n this.Confidentiality\r\n );\r\n }\r\n\r\n\r\n getEntityStorageFile() {\r\n if (!this.correspondenceId) return;\r\n this.borrowRequestsvc.getEntityStorageFile(this.correspondenceId)\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(data => {\r\n if (data.value != null && data.text != null) {\r\n if ($(\"#filingStorageEntityId\").length > 0) {\r\n $(\"#filingStorageEntityId\").data(\"kendoComboBox\").dataSource.data([{ value: data.value, text: data.text }]);\r\n $(\"#filingStorageEntityId\").data(\"kendoComboBox\").value(data.value);\r\n }\r\n this.filingStorageSvc.FilesStorageEntityId = data.value;\r\n }\r\n });\r\n }\r\n CorrespondenceFilingEnum = CorrespondenceFilingFeaturesEnum;\r\n\r\n filingStorageEntityIdChange(value) {\r\n this.filingStorageSvc.FilesStorageEntityId = +value;\r\n }\r\n public get IsForwardToDocumentsCenterShelving() {\r\n return this.showForwardToDocumentCenter && !this.isDocumentCenter && ((this.isForwardingToDocumentCenterEnabled == false && this.categoryId == 3) || (this.isForwardingToDocumentCenterEnabled == true && this.categoryId != 3) || (this.isForwardingToDocumentCenterEnabled == false && this.categoryId != 3))\r\n }\r\n get isDataValid() {\r\n if (BERRY.appSettings.keys.locationOfCorrespondenceFiles) {\r\n switch (this.filingStorageSvc.selectOptionValue) {\r\n case this.CorrespondenceFilingEnum.IsForwardToDocumentsCenterShelving: {\r\n return this.IsForwardToDocumentsCenterShelving && !this.filingStorageSvc.DocumentCenterEntityId\r\n }\r\n case this.CorrespondenceFilingEnum.IsCentralAdministrationBuildingShelving: {\r\n return this.ShowCorrespondenceFilesLocationField\r\n && !this.filingStorageSvc.StorageLocationId\r\n }\r\n }\r\n return false;\r\n }\r\n }\r\n getStandaloneDocumentCenter() {\r\n let userId = BERRY.User.ActualUserId;\r\n this.newCorrespondenceSvc.getStandaloneDocumentCenter(userId).subscribe(result => {\r\n this.filingStorageSvc.DocumentCenterEntityId = +result.DocumentCenterEntityId;\r\n this.filingStorageSvc.BranchName = result.BranchName;\r\n });\r\n }\r\n isForwardingToDocumentCenterEnabled: boolean = false;\r\n getIsForwardingToDocumentCenterEnabled() {\r\n let me = this;\r\n me.generalSettingsSvc.GetValue(\"CorrespondencesSetting\", \"EnableForwardingCorrespondenceToDocumentCenterFromSaveScreen\").subscribe(data => {\r\n me.isForwardingToDocumentCenterEnabled = (data == \"true\");\r\n })\r\n }\r\n get ShowStorageFolderDesc(): boolean {\r\n return BERRY.appSettings.keys.ShowStorageFolderDesc;\r\n }\r\n\r\n comboBoxServerSearchDatasourceDefaultOptions: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"post\",\r\n searchField: \"kw\",\r\n resultsField: \"d\"\r\n };\r\n\r\n defaultAutocompleteOptions: IComboboxOptions = {\r\n dataTextField: \"text\",\r\n dataValueField: \"value\",\r\n allowFreeText: false,\r\n displayTemplate: \"#: data.value # - #: data.text #\",\r\n minLength: 1,\r\n autoBind: false\r\n };\r\n\r\n public filingStorageComboBoxOptions: IComboboxOptions = Object.assign(\r\n {},\r\n {\r\n dataTextField: \"EntityName\",\r\n dataValueField: \"EntityID\",\r\n allowFreeText: false,\r\n displayTemplate: \"#: data.EntityID # - #: data.EntityName #\",\r\n minLength: 1,\r\n autoBind: false\r\n },\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n {\r\n enabled: true,\r\n method: \"post\",\r\n searchField: \"kw\",\r\n resultsField: \"\"\r\n },\r\n {\r\n url:\r\n BERRY.hostName +\r\n \"Correspondences/Applications/GetEntitiesWithoutCommitteesCombo\"\r\n }\r\n )\r\n }\r\n );\r\n\r\n \r\n autocompleteDefaultOptionsForParty: IComboboxOptions = {\r\n dataTextField: 'Value',\r\n dataValueField: 'dbid',\r\n allowFreeText: false,\r\n minLength: 1\r\n };\r\n\r\n corrAssetscomboBoxServerSearchDatasourceDefaultOptions: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: 'GET',\r\n resultsField: '',\r\n searchField: 'keyword'\r\n };\r\n\r\n\r\n corrAssetsAutoCompleteOptions = Object.assign({}, this.autocompleteDefaultOptionsForParty, {\r\n serverDatasource: Object.assign({}, this.corrAssetscomboBoxServerSearchDatasourceDefaultOptions, {\r\n url:\r\n BERRY.hostName +\r\n \"api/DocumentCenterEntitiesApi/GetAllAutoComplete\"\r\n }),\r\n dataTextField: 'EntityName',\r\n dataValueField: 'EntityId',\r\n allowFreeText: false,\r\n displayTemplate: \"#: EntityCode # - #: EntityName #\",\r\n autoBind: false,\r\n minLength: 1\r\n\r\n });\r\n\r\n\r\n \r\n get ShowCorrespondenceFilesLocationField() {\r\n return this._showCorrespondenceFilesLocationField;\r\n }\r\n public onValidCorrespondenceCallback: EventEmitter = new EventEmitter();\r\n _showCorrespondenceFilesLocationField: boolean = false;\r\n getCorrespondencesCategoriesSettings() {\r\n let me = this;\r\n me.categoryTypeClassificationSvc.\r\n GetCorrespondencesCategoriesSettings()\r\n .subscribe(data => {\r\n if (data && data.Value) {\r\n JSON.parse(data.Value);\r\n var categoriesSettingsValues = JSON.parse(data.Value).filter(x => x.SettingKey == \"FilesLocationFieldShows\")[0];\r\n if (me.categoryId && !!categoriesSettingsValues?.Categories) {\r\n // form builder\r\n if (categoriesSettingsValues.Categories.find(e => e == me.categoryId) != undefined\r\n || categoriesSettingsValues.AllCategoriesChecked == true)\r\n me._showCorrespondenceFilesLocationField = true;\r\n }\r\n else {\r\n // not form builder\r\n if (me.detailsSVC.Data && me.detailsSVC.Data.Correspondence && !!categoriesSettingsValues?.Categories) {\r\n\r\n if (categoriesSettingsValues.Categories.find(x => x === me.detailsSVC.Data.Correspondence.CorrespondenceCategoryId) !== undefined || categoriesSettingsValues.AllCategoriesChecked === true)\r\n me._showCorrespondenceFilesLocationField = true;\r\n } else {\r\n // me.detailsSVC.Data is empty then callback\r\n me.onValidCorrespondenceCallback\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(success => {\r\n if (success) {\r\n if (!!categoriesSettingsValues?.Categories && categoriesSettingsValues.Categories.find(x => x === me.detailsSVC.Data.Correspondence.CorrespondenceCategoryId) !== undefined || categoriesSettingsValues.AllCategoriesChecked === true)\r\n me._showCorrespondenceFilesLocationField = true;\r\n }\r\n });\r\n }\r\n }\r\n if (this.isDocumentCenter) {\r\n me._showCorrespondenceFilesLocationField = true;\r\n }\r\n\r\n if (me._showCorrespondenceFilesLocationField) {\r\n me.setCorrespondencesFilingFeaturesValues();\r\n }\r\n }\r\n\r\n if (BERRY.onOffFeatures.IsDocumentCenterManagementEnabled) {\r\n if (this.enableForwardOriginalFiles && !this.isDocumentCenter) {\r\n this.getEntityStorageFile();\r\n }\r\n if (this.showForwardToDocumentCenter) {\r\n if (!this.isDocumentCenter) {\r\n this.getIsForwardingToDocumentCenterEnabled();\r\n }\r\n if (!this.newCorrespondenceSvc.isLoadDocumentCenterEntity) {\r\n this.getStandaloneDocumentCenter();\r\n }\r\n else {\r\n this.newCorrespondenceSvc.isLoadDocumentCenterEntity = false;\r\n }\r\n }\r\n\r\n }\r\n });\r\n\r\n\r\n }\r\n\r\n setCorrespondencesFilingFeaturesValues() {\r\n this.filingStorageSvc.CallUpdateRooms.pipe(takeWhile(() => this.isSubscribed)).subscribe(() => {\r\n\r\n if (this.currentRoomsElement != undefined) {\r\n this.currentRoomsElement.userOptions.datasource = this._filingStorageSvc.currentRooms;\r\n this.currentRoomsElement.updateDataSource();\r\n }\r\n\r\n });\r\n this.filingStorageSvc.CallUpdateCabinets.pipe(takeWhile(() => this.isSubscribed)).subscribe(() => {\r\n\r\n if (this.currentCabinetsElement != undefined) {\r\n this.currentCabinetsElement.userOptions.datasource = this._filingStorageSvc.currentCabinets;\r\n this.currentCabinetsElement.updateDataSource();\r\n }\r\n\r\n });\r\n this.filingStorageSvc.CallUpdateShelves.pipe(takeWhile(() => this.isSubscribed)).subscribe(() => {\r\n\r\n if (this.currentShelvesElement != undefined) {\r\n this.currentShelvesElement.userOptions.datasource = this._filingStorageSvc.currentShelves;\r\n this.currentShelvesElement.updateDataSource();\r\n }\r\n });\r\n this.filingStorageSvc.CallUpdateFolders.pipe(takeWhile(() => this.isSubscribed)).subscribe(() => {\r\n\r\n if (this.currentFoldersElement != undefined && this.currentFoldersElement.userOptions != undefined) {\r\n this.currentFoldersElement.userOptions.datasource = this._filingStorageSvc.currentFolders;\r\n this.currentFoldersElement.updateDataSource();\r\n }\r\n\r\n });\r\n }\r\n}\r\n\r\n","import { Injectable } from \"@angular/core\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class NewCorrespondenceSvc extends BaseService {\r\n constructor(public httpInterceptor: HttpInterceptor) {\r\n super(httpInterceptor);\r\n }\r\n\r\n public isLoadDocumentCenterEntity: boolean = false;\r\n public countriesUrl: string =\r\n BERRY.hostName + \"api/contacts/lookups/autocompletecountries\";\r\n\r\n getCorrespondenceTypes(filterByPermission: boolean = false, categoryId: number = null) {\r\n let url = `${BERRY.hostName}api/CorrTypesClassificationsApi/GetCorrespondenceTypes?filter=`;\r\n return super.get(url);\r\n }\r\n getAutoSelectedEntityValues() {\r\n let url = `${BERRY.hostName}api/correspondence-auto-selected-entity/values`;\r\n return super.get(url);\r\n }\r\n getUserEntity() {\r\n let url = `${BERRY.hostName}api/correspondence-auto-selected-entity/GetUserEntity`;\r\n return super.get(url);\r\n }\r\n\r\n getClassificationType(Id) {\r\n let url = `${BERRY.hostName}api/CorrTypesClassificationsApi/GetClassificationType?Id=${Id}`;\r\n return super.get(url);\r\n }\r\n\r\n getDetailedClasificationsByClassificationId(ClassificationTypeId) {\r\n let url = `${BERRY.hostName}api/CorrTypesClassificationsApi/GetDetailedClasificationsByClassificationTypeId?ClassificationTypeId=${ClassificationTypeId}`;\r\n return super.get(url);\r\n }\r\n\r\n getCorrespondenceTypesAndClassifications(\r\n categoryId: number = null, isElectronic: boolean = false, correspondenceId = \"\"\r\n ) {\r\n if (categoryId == null)\r\n categoryId = 0;\r\n let url = `${BERRY.hostName}api/CorrTypesClassificationsApi/GetLookups?categoryId=${categoryId}&isFromYesser=${isElectronic}&correspondenceId=${correspondenceId}`;\r\n return super.get(url);\r\n }\r\n\r\n getSubCorrespondenceType(correspondenceTypeId) {\r\n let url =\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/GetSubCorrespondenceTypeByMainId?correspondenceTypeId=\" + correspondenceTypeId;\r\n return super.get(url);\r\n }\r\n\r\n getinitialCorrespondenceClassification() {\r\n let url =\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/getinitialCorrespondenceClassification\";\r\n return super.get(url);\r\n }\r\n\r\n checkCorrespondenceHavePendingSignature(correspondenceId) {\r\n let me = this;\r\n let baseURL = BERRY.hostName + \"api/CorrespondenceApi\";\r\n return this.httpInterceptor\r\n .get(baseURL + `/CheckCorrespondenceHavePendingSignature?correspondenceId=${correspondenceId}`)\r\n .pipe(\r\n map(res => res)\r\n );\r\n }\r\n getSettlementData(Id) {\r\n let url =\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/GetSettlementData?Id=\" + Id;\r\n return super.get(url);\r\n }\r\n getPurpose() {\r\n let me = this;\r\n let url = BERRY.hostName + \"api/CorrespondenceApi/GetAllPurposes\";\r\n return super.get(url);\r\n }\r\n getPurposeByCorrTypeId(corrTypeId: string) {\r\n let me = this;\r\n let url =\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/GetAllPurposesByCorrTypeId?corrTypeId=\" +\r\n corrTypeId;\r\n return super.get(url);\r\n }\r\n\r\n validateCorrespondence(correspondenceId) {\r\n return this.httpInterceptor\r\n .get(BERRY.hostName + `api/CorrespondenceApi/ValidateCorrespondenceIsExist?correspondenceId=${correspondenceId}`)\r\n .pipe(map(res => res));\r\n }\r\n\r\n checkCorrespondenceHasCombinedCorrespodnencesWithSameCategory(correspondenceId, categoryId) {\r\n return this.httpInterceptor\r\n .get(BERRY.hostName + `api/CorrespondenceApi/CheckCorrespondenceHasCombinedCorrespodnencesWithSameCategory?correspondenceId=${correspondenceId}&categoryId=${categoryId}`)\r\n .pipe(map(res => res));\r\n }\r\n\r\n getMaxSequencegetPurpose(AttachmentGroupId: string) {\r\n let me = this;\r\n let url =\r\n BERRY.hostName +\r\n \"api/CorrespondancePhysicalAttachmentSequance/GetMaxSequence?AttachmentGroupId=\" +\r\n AttachmentGroupId;\r\n return super.get(url);\r\n }\r\n getCorrespondancePhysicalAttachmentLinkByCorrId() {\r\n let me = this;\r\n let url =\r\n BERRY.hostName +\r\n \"api/CorrespondancePhysicalAttachmentSequance/getCorrespondancePhysicalAttachmentLinkByCorrId?corrId=c067b9fe-33b1-46d9-b4b8-b5a4bcda8ebe\";\r\n return super.get(url);\r\n }\r\n\r\n getInternalEntities() {\r\n let url = `${BERRY.hostName}api/DepartmentApi/GetEntitiesWithoutCommittees`;\r\n return super.get(url);\r\n }\r\n\r\n\r\n\r\n\r\n getStandaloneDocumentCenter(userId: string) {\r\n let url = `${BERRY.hostName}api/DepartmentApi/GetStandaloneDocumentCenter?userId=${userId}`;\r\n return super.get(url);\r\n }\r\n\r\n getStorageFolders() {\r\n let url = `${BERRY.hostName}api/StorageApi/GetStorageFolders`;\r\n return super.get(url);\r\n }\r\n\r\n getCorrespondenceTypesByCategoryId(categoryId: number, correspondenceId = \"\") {\r\n let url = `${BERRY.hostName}api/CorrTypesClassificationsApi/GetAutocompleteCorrespondenceTypes?categoryId=${categoryId}&correspondenceId=${correspondenceId}`;\r\n return super.get(url);\r\n }\r\n\r\n IsExternalContactLinkedWithEgov(id) {\r\n return this.http.get(\r\n `${BERRY.hostName\r\n }Correspondences/NewApp/IsExternalContactLinkedWithEgov?externalContactId=${id}`\r\n );\r\n }\r\n\r\n\r\n getcorrespondenceApplicants(corrId, page, count: number = 0) {\r\n let me = this;\r\n return super.get(\r\n `${BERRY.hostName}api/CorrespondenceApplicantsApi/GetAllCorrespondenceApplicants?corrId=${corrId}&page=${page}&count=${count}`\r\n );\r\n }\r\n\r\n deleteCorrespondenceApplicants(corrId, items: number[]) {\r\n\r\n let url = `${BERRY.hostName}api/CorrespondenceApplicantsApi/DeleteCorrespondenceApplicants?corrId=${corrId}`\r\n return super.post(url, items).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n\r\n }\r\n\r\n CheckSelectedInternalRecipientsCanContactWith(InternalRecipients: any[]) {\r\n let url = `${BERRY.hostName}api/CorrespondenceApi/CheckSelectedInternalRecipientsCanContactWith`\r\n return super.post(url, InternalRecipients).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n addCorrespondenceApplicant(corrId, applicantId) {\r\n return super.post(\r\n `${BERRY.hostName}api/CorrespondenceApplicantsApi/AddCorrespondenceApplicant?corrId=${corrId}&applicantId=${applicantId}`\r\n );\r\n\r\n }\r\n\r\n checkIfCorrespondenceLinkedWithAuthorityMeeting(correspondenceId: string) {\r\n const apiUrl = `${BERRY.hostName}api/schedule/linkedCorrespondence/CheckIfCorrespondenceLinkedWithAuthorityMeeting?correspondenceId=${correspondenceId}`;\r\n return super.get(apiUrl);\r\n }\r\n \r\n checkIfUserPermittedToEditDeadline(correspondenceId: string, confidentialityId: number) {\r\n let url = `${BERRY.hostName}api/EditCorrespondenceApi/CheckIfUserPermittedToEditDeadline?correspondenceId=${correspondenceId}&confidentialityId=${confidentialityId}`;\r\n return this.http.get(url).pipe( \r\n catchError(this.handleError)\r\n );\r\n }\r\n}\r\n","import { Router } from \"@angular/router\";\r\nimport { Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class CreateNewCorrespondencePopup {\r\n\r\n constructor(private router: Router) {}\r\n\r\n openCreateCorrespondence(categoryId) {\r\n this.openEditCreateCorrespondence(categoryId, null, null,type.New);\r\n }\r\n\r\n openEditCreateCorrespondence(categoryId, onlyCalssification, correspondenceId , poptype:type) {\r\n let queryParams: any = {};\r\n if (!!onlyCalssification) {\r\n queryParams['onlyCalssification'] = onlyCalssification;\r\n }\r\n if (!!correspondenceId) {\r\n queryParams['corrId'] = correspondenceId;\r\n }\r\n if (poptype == type.ExportMode) {\r\n queryParams['isExport'] = true;\r\n }\r\n else if (poptype == type.EditMode)\r\n queryParams['isEdit'] = true;\r\n else if (poptype == type.Copy)\r\n queryParams['isCopy'] = true;\r\n queryParams['categoryId'] = categoryId\r\n this.router.navigate([{ outlets: { 'modal': ['new-correspondence-modal'] } }], { queryParams: queryParams, skipLocationChange:false });\r\n }\r\n}\r\n\r\n\r\nexport enum type{\r\n EditMode,\r\n ExportMode,\r\n New,\r\n Copy\r\n}","import { Injectable, OnDestroy, OnInit } from \"@angular/core\";\r\nimport { StorageShelvesSvc } from \"./storage-shelve-svc\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { CorrespondenceDto } from \"../../_models/correspondence-dto\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { NewCorrespondenceSvc } from \"src/app/berry/correspondences/NewCorrespondence/New-Correspondence-svc\";\r\nimport { OriginalsReceiptReportDto } from \"src/app/documents-center/models/document-center-dtos\";\r\nimport { DetailsSVC } from \"../../details/details-svc\";\r\nimport { Subject } from \"rxjs\";\r\nimport { CorrespondenceFilingFeaturesEnum } from \"../../_models/enums/CorrespondenceFilingFeaturesEnum\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n\r\n@Injectable()\r\nexport class FilingStorageSvc implements OnDestroy, OnInit {\r\n isSubscribed: boolean = true;\r\n ExternalRecipientid=null;\r\n externalEntityIds: number[] = [];\r\n CorrespondenceFilingEnum = CorrespondenceFilingFeaturesEnum;\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n ngOnInit() {\r\n if (this.selectOptionValue == this.CorrespondenceFilingEnum.IsCompletelyElectronicShelving) {\r\n this.centralAdministrationBuilding = true;\r\n this.StorageOtherLocationDescNested = true;\r\n }\r\n }\r\n\r\n public partOrders: number[] = [1, 2, 3, 4, 5];\r\n\r\n public CorrespondencesLocation: OriginalsReceiptReportDto;\r\n\r\n public StorageLocationId: number = null;\r\n public StorageRoomId: number = null;\r\n public StorageCabinetId: number = null;\r\n public StorageShelveId: number = null;\r\n public StorageFolderId: number = null;\r\n public StorageLocation;\r\n public StorageRoom;\r\n public StorageCabinet;\r\n public StorageShelve;\r\n public StorageFolder;\r\n\r\n public isLoadDataForTheFirstTime: boolean = false;\r\n\r\n public CallUpdateRooms = new Subject();\r\n public CallUpdateCabinets = new Subject();\r\n public CallUpdateShelves = new Subject();\r\n public CallUpdateFolders = new Subject();\r\n public isCustomLocation: boolean = true; // Identifies the place which the files will be stored in.\r\n\r\n public Shelf: string;\r\n public ShelvingClassification: string;\r\n\r\n _shelves: any[];\r\n public get shelves(): any[] {\r\n return this._shelves;\r\n }\r\n\r\n public currentShelves: any[];\r\n\r\n _rooms: any[];\r\n public get rooms(): any[] {\r\n return this._rooms;\r\n }\r\n public currentRooms: any[];\r\n\r\n _cabinets: any[];\r\n public get cabinets(): any[] {\r\n return this._cabinets;\r\n }\r\n\r\n public currentCabinets: any[];\r\n\r\n _locations: any[];\r\n public get locations(): any[] {\r\n return this._locations;\r\n }\r\n\r\n _folders: any[] = [];\r\n public get folders(): any {\r\n return this._folders;\r\n }\r\n\r\n get showForwardToDocumentCenter(): boolean {\r\n return BERRY.onOffFeatures.IsDocumentCenterManagementEnabled;\r\n }\r\n\r\n public currentFolders: any[] = [];\r\n\r\n public StorageAsDescription: string = \"\";\r\n public Correspondance: CorrespondenceDto = null;\r\n sub: any = null;\r\n showFileStorageChooseBestButton: boolean = true;\r\n public loadingBestClass: string = \"btn-icon btn-helper left-0-after\";\r\n centralAdministrationBuilding: boolean = true;\r\n StorageOtherLocationDescNested: boolean = true;\r\n optionNumber: number = 3;\r\n public selectOptionValue = 1;\r\n\r\n public disableforwardFilesToEntity: boolean = true;\r\n public FilesStorageEntityId: number;\r\n\r\n public disableforwardToDocumentCenter: boolean = true;\r\n\r\n public DocumentCenterEntityId: number = null;\r\n\r\n public BranchEntityId: number = null;\r\n\r\n public BranchName: string = \"\";\r\n\r\n get AllowForwardToDocumentCenter() {\r\n let me = this;\r\n\r\n if (BERRY.onOffFeatures.IsDocumentCenterManagementEnabled) {\r\n if (!me.disableforwardToDocumentCenter)\r\n return true;\r\n else\r\n return false;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n\r\n get IsDocumentCenterManagementEnabled(): boolean {\r\n return BERRY.onOffFeatures.IsDocumentCenterManagementEnabled;\r\n }\r\n\r\n constructor(\r\n public httpInterceptor: HttpInterceptor,\r\n public storageShelvesSvc: StorageShelvesSvc,\r\n public newCorrespondenceSvc: NewCorrespondenceSvc,\r\n public detailsSVC: DetailsSVC\r\n\r\n ) {\r\n this.fillPartOrders();\r\n this.optionNumber = parseInt(BERRY.filingOptionNumber, 10);\r\n this.showFileStorageChooseBestButton =\r\n BERRY.appSettings.keys.showFileStorageChooseBestButton;\r\n\r\n this.CorrespondencesLocation = new OriginalsReceiptReportDto();\r\n }\r\n\r\n fillPartOrders() {\r\n this.partOrders = [];\r\n BERRY.filingPartOrderArray.split(\",\").forEach(x => {\r\n if (x) {\r\n if (x.trim() != \"\") {\r\n this.partOrders = [...this.partOrders, parseInt(x, 10)];\r\n }\r\n }\r\n });\r\n }\r\n\r\n isDescriptionRequired() {\r\n if (this.selectOptionValue == this.CorrespondenceFilingEnum.IsOtherStorageLocationShelving) return true;\r\n return false;\r\n }\r\n\r\n public InvalidStorageAsDescription() {\r\n if (!BERRY.onOffFeatures.ShowCorrespondanceShelvingFeatures) return false;\r\n\r\n if (this.selectOptionValue == this.CorrespondenceFilingEnum.IsOtherStorageLocationShelving && !(this.StorageAsDescription != null && this.StorageAsDescription.trim() != \"\"))\r\n return true;\r\n return false;\r\n }\r\n public CheckOnOffFeature() {\r\n return BERRY.onOffFeatures.ShowCorrespondanceShelvingFeatures\r\n }\r\n\r\n public InvalidFilingStorageEntity() {\r\n if (this.selectOptionValue == this.CorrespondenceFilingEnum.IsForwardDocumentsToOtherEntityShelving && $(\"#filingStorageEntityId\").length > 0 && $(\"#filingStorageEntityId\").data(\"kendoComboBox\").value() == \"\")\r\n return true;\r\n return false;\r\n }\r\n\r\n getStorageFolders() {\r\n this.newCorrespondenceSvc.getStorageFolders().subscribe(result => {\r\n this._folders = result.folders;\r\n this.setFolders(this.StorageShelveId);\r\n\r\n if (this.Correspondance == null)\r\n if (this.currentFolders.length > 0) {\r\n this.StorageFolderId = this.currentFolders[0].Id;\r\n this.StorageFolder = this.currentFolders[0];\r\n this.CorrespondencesLocation.FolderName = this.currentFolders[0].FolderName;\r\n }\r\n else {\r\n this.StorageFolderId = null;\r\n this.CorrespondencesLocation.FolderName = \"\";\r\n }\r\n });\r\n }\r\n\r\n loadFreeShleves(shelveId: number, modifyTheShelvingInformation: boolean = false): void {\r\n let me = this;\r\n //modifyTheShelvingInformation => تعديل معلومات الترفيف المتعلقة بتأكيد استلام اصل المعاملة من مركز الوثائق\r\n if (!me.Correspondance || modifyTheShelvingInformation) {\r\n if (shelveId == null) {\r\n if (!!me.Correspondance?.StorageAsDescription || (modifyTheShelvingInformation && !!me.StorageAsDescription)) /* If User have chosen \"التخزين في موقع مختلف\" ; then We expect there is \"موقع التخزين\"*/\r\n me.onFilingOptionChange(3);\r\n else\r\n if (!!me.FilesStorageEntityId) {\r\n //me.FilesStorageEntityId = me.Correspondance.FilesStorageEntityId;\r\n me.onFilingOptionChange(4);\r\n }\r\n\r\n else\r\n if (!!me.Correspondance?.DocumentCenterEntityId) {\r\n me.DocumentCenterEntityId = me.Correspondance.DocumentCenterEntityId;\r\n me.onFilingOptionChange(5);\r\n }\r\n else\r\n me.onFilingOptionChange(1);\r\n }\r\n else\r\n me.onFilingOptionChange(2);\r\n }\r\n else {\r\n me.isCustomLocation = false;\r\n if (shelveId == null) {\r\n if (me.optionNumber >= 3) {\r\n me.isCustomLocation = true;\r\n me.selectOptionValue = this.CorrespondenceFilingEnum.IsCompletelyElectronicShelving;\r\n }\r\n }\r\n }\r\n\r\n me._shelves = BERRY.Lookups.StorageShelves.filter(\r\n a => a.IsActive && !a.IsDeleted\r\n );\r\n\r\n if (me.shelves != null) {\r\n this._cabinets = BERRY.Lookups.StorageCabinets.filter(\r\n a =>\r\n a.IsActive &&\r\n !a.IsDeleted &&\r\n this.shelves.find(x => x.StorageCabinetId == a.Id) != undefined\r\n );\r\n }\r\n if (me.cabinets != null) {\r\n me._rooms = this.getRooms();\r\n }\r\n\r\n if (me.rooms != null)\r\n me._locations = BERRY.Lookups.Locations.filter(\r\n a =>\r\n a.IsActive &&\r\n !a.isDeleted &&\r\n me.rooms.find(x => x.LocationId == a.LocationId) != undefined\r\n );\r\n\r\n if (me.showForwardToDocumentCenter)\r\n me.getStorageFolders();\r\n\r\n me.chooseBestCallback(shelveId);\r\n }\r\n\r\n getRooms(): any {\r\n let Rooms: any = BERRY.Lookups.StorageRooms.filter(\r\n a =>\r\n a.IsActive &&\r\n !a.IsDeleted &&\r\n this.cabinets.find(x => x.StorageRoomId == a.Id) != undefined\r\n );\r\n Rooms.forEach(function (e) {\r\n //if (!e.RoomName)\r\n e.RoomName = !e.Room ? BERRY.getText(e.NameResourceId, e.NameResourceSet) : e.Room;\r\n\r\n });\r\n return Rooms;\r\n }\r\n\r\n chooseBestShelf(\r\n categoryId: any,\r\n important: any,\r\n confidentialityId: any\r\n ): void {\r\n let me = this;\r\n\r\n if (this.shelves && this.shelves.length > 0) {\r\n let params = {\r\n CategoryId: categoryId,\r\n Important: important,\r\n ConfidentialityId: confidentialityId\r\n };\r\n this.loadingBestClass = \"btn-icon btn-helper btn-loading\";\r\n this.storageShelvesSvc\r\n .chooseBestShelfLocation(params)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(x => {\r\n this.loadingBestClass = \"btn-icon btn-helper\";\r\n let res = x;\r\n var shelveId: number = null;\r\n if (res && res != null) {\r\n let item = this.shelves.filter(x => x.Id == res);\r\n if (item.length > 0) shelveId = item[0].Id;\r\n else shelveId = this.shelves[0].Id;\r\n } else {\r\n shelveId = this.shelves[0].Id;\r\n }\r\n this.chooseBestCallback(shelveId);\r\n });\r\n }\r\n }\r\n\r\n chooseBestCallback(shelveId: number): void {\r\n if (this.shelves && this.shelves.length > 0) {\r\n if (shelveId == null || typeof shelveId == \"undefined\")\r\n shelveId = this.shelves[0].Id;\r\n\r\n if (this.Correspondance != null)\r\n this.Correspondance.StorageShelveId = shelveId;\r\n\r\n this.StorageCabinetId = this.shelves.filter(\r\n x => x.Id == shelveId\r\n )[0].StorageCabinetId;\r\n if (this.cabinets) {\r\n let _cabinet = this.cabinets.filter(\r\n item => item.Id == this.StorageCabinetId\r\n );\r\n if (_cabinet && _cabinet.length > 0) {\r\n this.StorageRoomId = _cabinet[0].StorageRoomId;\r\n let _room = this.rooms.filter(item => item.Id == this.StorageRoomId);\r\n if (_room && _room.length > 0) {\r\n let _locations = this._locations.filter(item => item.Id == _room[0].LocationId);\r\n if (_locations && _locations.length > 0) {\r\n this.StorageShelveId = shelveId;\r\n this.StorageLocationId = _room[0].LocationId;\r\n this.CorrespondencesLocation.LocationName = this.getLocationName(this.StorageLocationId);\r\n\r\n this.setRooms(this.StorageLocationId);\r\n this.CorrespondencesLocation.RoomName = this.getRoomName(this.StorageRoomId);\r\n\r\n this.setCabinets(this.StorageRoomId);\r\n this.CorrespondencesLocation.CabinetNumber = this.getCabineteNumber(this.StorageCabinetId);\r\n\r\n this.setShelves(this.StorageCabinetId);\r\n this.CorrespondencesLocation.ShelveNumber = this.getShelveNumber(this.StorageShelveId);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n setRooms(locationId: number): void {\r\n this.currentRooms = this.rooms.filter(\r\n item => item.LocationId == locationId\r\n );\r\n this.CallUpdateRooms.next(null);\r\n }\r\n\r\n setCabinets(roomId: number): void {\r\n this.currentCabinets = this.cabinets.filter(\r\n item => item.StorageRoomId == roomId\r\n );\r\n this.CallUpdateCabinets.next(null);\r\n }\r\n\r\n setShelves(cabinetId: number): void {\r\n this.currentShelves = this.shelves.filter(\r\n item => item.StorageCabinetId == cabinetId\r\n );\r\n this.CallUpdateShelves.next(null);\r\n }\r\n\r\n setFolders(shelveId: number): void {\r\n this.currentFolders = this.folders.filter(\r\n item => item.StorageShelveId == shelveId\r\n );\r\n this.CallUpdateFolders.next(null);\r\n }\r\n\r\n getLocationName(id: number): string {\r\n\r\n for (var i = 0; i < this.locations.length; i++) {\r\n if (this.locations[i].LocationId == id) {\r\n return this.locations[i].Name;\r\n }\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n getRoomName(id: number): string {\r\n for (var i = 0; i < this.currentRooms.length; i++) {\r\n if (this.currentRooms[i].Id == id) {\r\n return this.currentRooms[i].RoomName;\r\n }\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n getCabineteNumber(id: number): string {\r\n for (var i = 0; i < this.currentCabinets.length; i++) {\r\n if (this.currentCabinets[i].Id == id) {\r\n return this.currentCabinets[i].Number;\r\n }\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n getShelveNumber(id: number): string {\r\n for (var i = 0; i < this.currentShelves.length; i++) {\r\n if (this.currentShelves[i].Id == id) {\r\n return this.currentShelves[i].Number;\r\n }\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n getFolderName(): string {\r\n\r\n for (var i = 0; i < this.currentFolders.length; i++) {\r\n if (this.currentFolders[i].Id == this.StorageFolderId) {\r\n this.CorrespondencesLocation.FolderName = this.currentFolders[i].FolderName;\r\n return;\r\n }\r\n }\r\n }\r\n clearCentralAdministrationBuilding() {\r\n if(this.StorageLocation!== undefined){\r\n this.StorageLocation = null;\r\n }\r\n if(this.StorageShelve !== undefined){\r\n this.StorageShelve = null;\r\n }\r\n if(this.StorageCabinet !== undefined){\r\n this.StorageCabinet = null ;\r\n }\r\n if(this.StorageRoom !== undefined ){\r\n this.StorageRoom = null;\r\n }\r\n }\r\n\r\n get showBasicCorrespondenceShelving() {\r\n return BERRY.appSettings.keys.showBasicCorrespondenceShelving;\r\n }\r\n get showCorrespondanceFilingFeatures() {\r\n return BERRY.onOffFeatures.ShowCorrespondanceShelvingFeatures;\r\n }\r\n firstFireMethodOnFilingOptionChange: boolean = true;\r\n onFilingOptionChange(value: number): void {\r\n let me = this;\r\n me.selectOptionValue = value;\r\n if (value == this.CorrespondenceFilingEnum.IsCompletelyElectronicShelving || value == this.CorrespondenceFilingEnum.IsOtherStorageLocationShelving)\r\n me.isCustomLocation = true;\r\n else\r\n me.isCustomLocation = false;\r\n\r\n if (value != this.CorrespondenceFilingEnum.IsOtherStorageLocationShelving) {\r\n me.StorageAsDescription = \"\";\r\n }\r\n \r\n if (value != this.CorrespondenceFilingEnum.IsCentralAdministrationBuildingShelving && this.showBasicCorrespondenceShelving && this.showCorrespondanceFilingFeatures) {\r\n this.clearCentralAdministrationBuilding();\r\n }\r\n if (value != this.CorrespondenceFilingEnum.IsForwardDocumentsToOtherEntityShelving) {\r\n if ($(\"#filingStorageEntityId\").length > 0) {\r\n $(\"#filingStorageEntityId\").data(\"kendoComboBox\").dataSource.data([]);\r\n $(\"#filingStorageEntityId\").data(\"kendoComboBox\").value(null);\r\n }\r\n } else {\r\n if ($(\"#filingStorageEntityId\").length > 0) {\r\n $(\"#filingStorageEntityId\").data(\"kendoComboBox\").dataSource.read();\r\n }\r\n }\r\n\r\n if (BERRY.appSettings.keys.locationOfCorrespondenceFiles) {\r\n switch (value) {\r\n case this.CorrespondenceFilingEnum.IsCompletelyElectronicShelving: {\r\n me.centralAdministrationBuilding = true;\r\n me.StorageOtherLocationDescNested = true;\r\n me.disableforwardFilesToEntity = true;\r\n me.disableforwardToDocumentCenter = true;\r\n break;\r\n }\r\n case this.CorrespondenceFilingEnum.IsCentralAdministrationBuildingShelving: {\r\n me.centralAdministrationBuilding = false;\r\n me.StorageOtherLocationDescNested = true;\r\n me.disableforwardFilesToEntity = true;\r\n me.disableforwardToDocumentCenter = true;\r\n break;\r\n }\r\n case this.CorrespondenceFilingEnum.IsOtherStorageLocationShelving: {\r\n me.centralAdministrationBuilding = true;\r\n me.StorageOtherLocationDescNested = false;\r\n me.disableforwardFilesToEntity = true;\r\n me.disableforwardToDocumentCenter = true;\r\n break;\r\n }\r\n case this.CorrespondenceFilingEnum.IsForwardDocumentsToOtherEntityShelving: {\r\n me.centralAdministrationBuilding = true;\r\n me.StorageOtherLocationDescNested = true;\r\n me.disableforwardFilesToEntity = false;\r\n me.disableforwardToDocumentCenter = true;\r\n break;\r\n }\r\n case this.CorrespondenceFilingEnum.IsForwardToDocumentsCenterShelving: {\r\n me.centralAdministrationBuilding = true;\r\n me.StorageOtherLocationDescNested = true;\r\n me.disableforwardFilesToEntity = true;\r\n me.disableforwardToDocumentCenter = false;\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n\r\n MatchShelveIdValue(): void {\r\n // Making sure the value of Shelve Id is null\r\n // Because at some points the shelve id is saved with value, even if the radio button of Custom Location is checked.\r\n\r\n if (this.selectOptionValue != this.CorrespondenceFilingEnum.IsCentralAdministrationBuildingShelving) {\r\n if (this.StorageShelveId != null)\r\n this.StorageShelveId = null;\r\n }\r\n }\r\n\r\n onFilingLocationChange(locationValue: number): void {\r\n if (locationValue) {\r\n let me = this;\r\n me.isCustomLocation = false;\r\n me.selectOptionValue = this.CorrespondenceFilingEnum.IsCentralAdministrationBuildingShelving;\r\n me.StorageLocation = me.locations.filter(l => l.LocationId == locationValue)[0];\r\n me.StorageLocationId = locationValue;\r\n me.CorrespondencesLocation.LocationName = me.getLocationName(locationValue);\r\n me.setRooms(me.StorageLocationId);\r\n me.StorageRoomId = me.isLoadDataForTheFirstTime ? me.StorageRoomId : me.currentRooms[0].Id;\r\n me.CorrespondencesLocation.RoomName = me.currentRooms[0].RoomName;\r\n me.onFilingRoomChange(me.StorageRoomId);\r\n }\r\n }\r\n\r\n onFilingRoomChange(storageId: number): void {\r\n let me = this;\r\n if (storageId) {\r\n me.StorageRoomId = storageId;\r\n me.StorageRoom = me.rooms.filter(l => l.Id == storageId)[0];\r\n me.CorrespondencesLocation.RoomName = me.getRoomName(storageId);\r\n me.isCustomLocation = false;\r\n me.selectOptionValue = this.CorrespondenceFilingEnum.IsCentralAdministrationBuildingShelving;\r\n me.setCabinets(me.StorageRoomId);\r\n me.StorageCabinetId = me.isLoadDataForTheFirstTime ? me.StorageCabinetId : me.currentCabinets[0].Id;\r\n me.CorrespondencesLocation.CabinetNumber = me.currentCabinets[0].Number;\r\n me.onFilingCabinetChange(me.StorageCabinetId);\r\n }\r\n }\r\n\r\n onFilingCabinetChange(cabinetId: number): void {\r\n if (cabinetId) {\r\n this.StorageCabinetId = cabinetId;\r\n this.StorageCabinet = this.cabinets.filter(l => l.Id == cabinetId)[0];\r\n this.CorrespondencesLocation.CabinetNumber = this.getCabineteNumber(cabinetId);\r\n\r\n this.isCustomLocation = false;\r\n this.selectOptionValue = this.CorrespondenceFilingEnum.IsCentralAdministrationBuildingShelving;\r\n\r\n this.setShelves(this.StorageCabinetId);\r\n\r\n if (this.Correspondance != null)\r\n this.Correspondance.StorageShelveId = this.StorageShelveId = this.isLoadDataForTheFirstTime ? this.StorageShelveId : this.currentShelves[0].Id;\r\n else {\r\n this.StorageShelveId = this.currentShelves[0].Id;\r\n this.CorrespondencesLocation.ShelveNumber = this.currentShelves[0].Number;\r\n }\r\n\r\n this.onFilingShelveChange(this.StorageShelveId);\r\n }\r\n }\r\n\r\n onFilingShelveChange(shelveId: number): void {\r\n\r\n if (shelveId) {\r\n if (this.Correspondance != null) {\r\n this.Correspondance.StorageShelveId = this.StorageShelveId = shelveId;\r\n }\r\n else {\r\n this.StorageShelveId = shelveId;\r\n this.CorrespondencesLocation.ShelveNumber = this.getShelveNumber(shelveId);\r\n }\r\n\r\n this.StorageShelve = this.shelves.filter(s => s.Id == shelveId)[0];\r\n\r\n this.isCustomLocation = false;\r\n this.selectOptionValue = this.CorrespondenceFilingEnum.IsCentralAdministrationBuildingShelving;\r\n this.setFolders(shelveId);\r\n\r\n\r\n if (this.currentFolders.length > 0) {\r\n this.StorageFolderId = this.currentFolders[0].Id;\r\n this.StorageFolder = this.currentFolders[0];\r\n this.CorrespondencesLocation.FolderName = this.currentFolders[0].FolderName;\r\n }\r\n else {\r\n this.StorageFolderId = null;\r\n this.CorrespondencesLocation.FolderName = \"\";\r\n }\r\n }\r\n }\r\n\r\n bindStorageEntityId(value: string): void {\r\n this.FilesStorageEntityId = +value;\r\n this.isCustomLocation = true;\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class StorageShelvesSvc extends BaseService {\r\n baseURL = BERRY.hostName + \"api/StorageApi\";\r\n constructor(public httpInterceptor: HttpInterceptor) {\r\n super(httpInterceptor);\r\n }\r\n\r\n getAllAvaliableShelves() {\r\n let url = this.baseURL + \"/GetAllAvaliableShelves\";\r\n return super.get(url);\r\n }\r\n\r\n getAllFilingStorages(branchId) {\r\n let url = this.baseURL + \"/GetAllFilingStorages?branchId=\" + branchId ;\r\n return super.get(url);\r\n }\r\n\r\n deleteStorageShelve(shelveId: number, confirmDeletionShelve: boolean) {\r\n let url =\r\n this.baseURL + \"/DeleteStorageShelve?shelveId=\" + shelveId.toString() + \"&confirmDeletion=\" + confirmDeletionShelve;\r\n return super.post(url, {});\r\n }\r\n\r\n saveStorageShelve(obj: any) {\r\n let url = this.baseURL + \"/SaveStorageShelve\";\r\n return super.post(url, obj);\r\n }\r\n\r\n getNewCabinetName(cabinetId: string) {\r\n let url = this.baseURL + \"/GetNeShleveName?cabinetId=\" + cabinetId;\r\n return super.get(url);\r\n }\r\n chooseBestShelfLocation(params: any) {\r\n return super.post(this.baseURL + \"/ChooseBestShelfLocation\", params);\r\n }\r\n\r\n //public DoPost(Url: string, Params: any, ContentType = 'application/json'): Observable {\r\n // let body = JSON.stringify(Params);\r\n // let headers = new Headers({ 'Content-Type': 'application/json' });\r\n // let options = new RequestOptions({ headers: headers });\r\n // return super.post(Url, body, );\r\n //}\r\n\r\n getAllFreeShelvesData(shelveId: any) {\r\n let url =\r\n this.baseURL +\r\n \"/GetAllFreeShelvesData?shelveId=\" +\r\n (shelveId != null ? shelveId : \"0\");\r\n return super.get(url);\r\n }\r\n\r\n getAllShelveData(correspondenceId: any, modifyTheShelvingInformation: boolean=false) {\r\n let url =\r\n this.baseURL + \"/GetAllShelveData?correspondenceId=\" + correspondenceId + \"&modifyTheShelvingInformation=\" + modifyTheShelvingInformation ;\r\n return super.get(url);\r\n }\r\n\r\n\r\n /// ============================> FOLDERS SECTION <====================================\r\n\r\n saveStorageFolder(obj: any) {\r\n let url = this.baseURL + \"/SaveStorageFolder\";\r\n return super.post(url, obj);\r\n }\r\n\r\n\r\n deleteStorageFolder(folderId: number) {\r\n let url =\r\n this.baseURL + \"/DeleteStorageFolder?folderId=\" + folderId.toString();\r\n return super.post(url, {});\r\n }\r\n\r\n /// ===========================> END FOLDERS SECTION <=================================\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class AccompanyingDocumentSvc extends BaseService {\r\n constructor(http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n baseUrl = `${BERRY.hostName}Correspondences/NewApp/`;\r\n\r\n\r\n getAccompanyingDocumentById(Id): Observable {\r\n const url = `${this.baseUrl}GetAccompanyingDocumentById/`;\r\n return super.post(url, Id);\r\n }\r\n}\r\n","import { Injectable, OnDestroy } from \"@angular/core\";\r\nimport { Response } from \"@angular/http\";\r\nimport { throwError } from \"rxjs\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { InboxDto } from \"../_models/inboxes-dto\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class CorrespondanceRecordSVC extends BaseService implements OnDestroy {\r\n public inboxes: InboxDto[];\r\n corrListCmp;\r\n\r\n baseURL = BERRY.hostName + \"api/CorrespondenceApi\"; // URL to web API\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n public Follow(correspondenceId) {\r\n var url =\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/Followup?id=\" +\r\n correspondenceId;\r\n\r\n return this.http.post(url, correspondenceId).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetExternalEntities(CorrespondenceId) {\r\n var url =\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/GetLiteExternalEntities?CorrespondenceId=\" +\r\n CorrespondenceId;\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public AssignFollow(correspondenceId) {\r\n var url =\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/AssignFollowup?id=\" +\r\n correspondenceId;\r\n\r\n return this.http.post(url, correspondenceId).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public markAsSeenInInbox(correspondenceId, recipientId) {\r\n var url = BERRY.hostName + \"api/CorrespondenceApi/MarkAsSeenInInbox\";\r\n\r\n return this.http\r\n .post(url, {\r\n CorrespondenceId: correspondenceId,\r\n RecipientId: recipientId\r\n })\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public dismiss(correspondenceId) {\r\n var url = BERRY.hostName + \"api/CorrespondenceApi/Dismiss?correspondenceId=\" + correspondenceId;\r\n return this.http.post(url, null).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public snoozeReminder(snoozeSpan, CorrID) {\r\n var url =\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/SnoozeReminder\"; // ' + CorrID;\r\n var params = {\r\n CorrespondenceId: CorrID,\r\n CorrespondenceActionID: null,\r\n CorrespondenceRecipientId: null,\r\n ReminderSpan: snoozeSpan\r\n };\r\n return this.http.post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCorrespondancePhysicalAttachmentLinkByCorrId(correspondenceId: string) {\r\n let me = this;\r\n let url =\r\n BERRY.hostName +\r\n \"api/CorrespondancePhysicalAttachmentSequance/getCorrespondancePhysicalAttachmentLinkByCorrId?corrId=\" +\r\n correspondenceId;\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public saveDeliveryReportBarCode(\r\n deliveryReportSubId: number,\r\n barCodeString: string\r\n ) {\r\n let url = `${\r\n BERRY.hostName\r\n }api/DeliveryReportsPostOfficeApi/SaveDeliveryReportBarCode?deliveryReportSubId=${deliveryReportSubId}&barCodeString=${barCodeString}`;\r\n return super.post(url, {});\r\n }\r\n\r\n public PinCorrespondence(correspondenceId, isPinned) {\r\n const url = this.baseURL + `/PinCorrespondence?correspondenceId=${correspondenceId}&isPinned=${isPinned}`;\r\n return super.post(url, {});\r\n }\r\n\r\n extractData(res: Response) {\r\n let body = res;\r\n return body || {};\r\n }\r\n\r\n handleError(error: any) {\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); \r\n return throwError(errMsg);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.inboxes = null;\r\n }\r\n}\r\n","
    \r\n \r\n
    \r\n
    {{getText('NoAttachmentsRecoreds', 'Attachment')}}
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n","import { DetailsAttachmentSVC } from \"../../../../_common/components/Attachment/details-attachment-svc\";\r\nimport { Component, Input } from \"@angular/core\";\r\nimport { CorrespondenceAttachmentsSVC } from \"./CorrespondenceAttachments-svc\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { BaseCmp } from \"../../../../_common/components/BaseComponent\";\r\nimport { AttachmentsGroupsFilter, AttachmentAccessLevelTypesEnum, SystemModulesEnum } from \"../../../../_common/components/Attachment/dto/attachmentGroup-dto\";\r\nimport { LinkTypeIdEnum } from \"../../_models/LinkTypeId-Enum\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { EnumExtensions } from \"../../../../_common/utils/enums.extensions\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"attachments-list\",\r\n templateUrl: \"./CorrespondenceAttachments.html\"\r\n})\r\nexport class AttachmentslistCmp extends BaseCmp {\r\n\r\n LINK_TYPE_ENUM = LinkTypeIdEnum;\r\n isSubscribed: boolean = true;\r\n attachmentsGroup: any[] = [];\r\n isBusy: boolean = false;\r\n\r\n @Input()\r\n public SourceAttachment: any[] = [];\r\n @Input()\r\n public hideAttachmentGroup: boolean = true;\r\n selectedGroupId: number;\r\n\r\n getSelectedGroup(attachment, groupId) {\r\n if (this.SourceAttachment) {\r\n if (this.SourceAttachment.length > 0) {\r\n if (!this.hideAttachmentGroup) {\r\n var exists = this.SourceAttachment.filter(\r\n x => x.PrimaryId == attachment.PrimaryId\r\n );\r\n if (exists) {\r\n if (exists.length > 0) {\r\n if (exists[0].AttachmentsGroupId != null) {\r\n return exists[0].AttachmentsGroupId;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n return attachment.GroupId == groupId;\r\n }\r\n\r\n loadAttachmentGroups() {\r\n const me = this;\r\n if (!me.hideAttachmentGroup) {\r\n var isSupportReportGenerator = false;\r\n let filter: AttachmentsGroupsFilter = {\r\n AccessLevelType: AttachmentAccessLevelTypesEnum.None,\r\n IsSupportReportGenerator: isSupportReportGenerator\r\n };\r\n\r\n me.detailsAttachmentSVC\r\n .getAttachmentsGroups(\"CorrespondenceTask\", filter)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(Data => {\r\n me.attachmentsGroup = Data;\r\n me.checkSelectedAttachmentGroup();\r\n });\r\n }\r\n }\r\n\r\n checkSelectedAttachmentGroup() {\r\n if (this.attachmentsGroup.length > 0) {\r\n this.attachmentsGroup = this.attachmentsGroup.splice(1, this.attachmentsGroup.length - 1);\r\n if (this.attachmentsGroup.filter(x => x.Id == this.selectedGroupId).length == 0) {\r\n if (this.attachmentsGroup[0])\r\n this.selectedGroupId = this.attachmentsGroup[0].Id;\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n Attachments = [];\r\n\r\n public get linkedCorrespondencesAttachments(): number {\r\n let me = this;\r\n return me.Attachments != null ? me.Attachments.length : 0;\r\n }\r\n\r\n //==================AttachmentsDataSource====================\r\n selectedCorrespondence = null;\r\n get SelectedCorrespondence() {\r\n return this.selectedAttachmentIds;\r\n }\r\n @Input()\r\n set SelectedCorrespondence(value) {\r\n const me = this;\r\n me.selectedCorrespondence = value;\r\n }\r\n\r\n linkedCorrespondenceId = null;\r\n @Input()\r\n set LinkedCorrespondenceId(value) {\r\n const me = this;\r\n me.linkedCorrespondenceId = value;\r\n }\r\n\r\n selectedSchedule = null;\r\n get SelectedSchedule() {\r\n return this.selectedAttachmentIds;\r\n }\r\n @Input()\r\n set SelectedSchedule(value) {\r\n this.selectedSchedule = value;\r\n }\r\n\r\n selectedAttachmentIds = [];\r\n get SelectedAttachmentIds() {\r\n return this.selectedAttachmentIds;\r\n }\r\n @Input()\r\n set SelectedAttachmentIds(value) {\r\n const me = this;\r\n me.Attachments?.forEach((item, index) => {\r\n item.IsHidden = false;\r\n });\r\n if (value != undefined && value.length > 0) {\r\n me.Attachments?.forEach((item, index) => {\r\n if (value.indexOf(item.RelatedAttachmentID) >= 0) {\r\n item.IsHidden = true;\r\n }\r\n });\r\n }\r\n me.selectedAttachmentIds = value;\r\n }\r\n @Input()\r\n public isCorrespondenceTask: boolean = false;\r\n\r\n @Input()\r\n set AttachmentsDataSource(value) {\r\n const me = this;\r\n if (value != undefined && value.length > 0) {\r\n me.Attachments = value;\r\n }\r\n }\r\n\r\n correspondenceLinkType: LinkTypeIdEnum = null;\r\n @Input()\r\n set CorrespondenceLinkType(value) {\r\n const me = this;\r\n me.correspondenceLinkType = value;\r\n }\r\n\r\n @Input()\r\n public AttachmentModuleType: SystemModulesEnum = null;\r\n //==================AttachmentsDataSource====================\r\n\r\n constructor(public CorrespondenceAttachmentsSVC: CorrespondenceAttachmentsSVC, public detailsAttachmentSVC: DetailsAttachmentSVC) {\r\n super();\r\n }\r\n\r\n ngSuperOnInit() {\r\n this.vInit();\r\n this.loadAttachmentGroups();\r\n }\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n selectedAttachments: any[] = [];\r\n\r\n getSelectedAttachments() {\r\n if (this.selectedAttachments.length > 0) {\r\n var returnList: any[] = [];\r\n this.selectedAttachments.forEach(x => {\r\n let attachment = this.Attachments.filter(y => y.RelatedAttachmentID == x)[0];\r\n let isHidden = attachment.IsHidden;\r\n if (!isHidden) {\r\n var groupId = 1;\r\n try {\r\n groupId = attachment.SelectedGroupId;\r\n if (!groupId)\r\n groupId = attachment.AttachmentsGroup.Id;\r\n }\r\n catch (e) {\r\n groupId = 1;\r\n }\r\n\r\n if (returnList.filter(y => y.AttachmentId == x && y.GroupId == groupId).length == 0) {\r\n returnList.push({\r\n AttachmentId: x,\r\n GroupId: groupId,\r\n LinkedItemId: attachment.RelatedID,\r\n ModuleId: this.AttachmentModuleType ? this.AttachmentModuleType : attachment.AttachmentModuleType,\r\n SubModuleId: attachment.Module,\r\n });\r\n }\r\n }\r\n });\r\n return returnList;\r\n }\r\n return [];\r\n }\r\n isAttachmentSelected(attachmentId) {\r\n return this.selectedAttachmentIds.indexOf(attachmentId) > -1;\r\n }\r\n onSelectionChange(id, selected: boolean) {\r\n const me = this;\r\n if (selected) me.selectedAttachments = [...me.selectedAttachments, id];\r\n else me.selectedAttachments = me.selectedAttachments.filter(x => x != id);\r\n }\r\n\r\n vInit(): void {\r\n const me = this;\r\n\r\n if (me.selectedCorrespondence &&\r\n !me.linkedCorrespondenceId &&\r\n me.correspondenceLinkType != this.LINK_TYPE_ENUM.BundledCorrespondence)\r\n me.GetCorrespondeceAttachments(me.selectedCorrespondence, me.correspondenceLinkType, me.isCorrespondenceTask);\r\n else if (me.selectedCorrespondence && me.linkedCorrespondenceId && me.correspondenceLinkType) {\r\n if (me.correspondenceLinkType == this.LINK_TYPE_ENUM.BundledCorrespondence)\r\n me.GetBundleAttachments(me.linkedCorrespondenceId, me.selectedCorrespondence);\r\n } else if (me.selectedSchedule != null)\r\n me.GetLinkedCorrespondeceScheduleAttachments(me.selectedSchedule);\r\n }\r\n\r\n GetCorrespondeceAttachments(corrId, corrLinkType, isCorrespondenceTask) {\r\n const me = this;\r\n me.isBusy = true;\r\n me.CorrespondenceAttachmentsSVC.getAttachments(corrId, corrLinkType, isCorrespondenceTask, me.AttachmentModuleType)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(response => {\r\n me.Attachments = response.dto;\r\n me.Attachments?.forEach(x => {\r\n x.SelectedGroupId = x.GroupId;\r\n });\r\n me.isBusy = false;\r\n }, e => {\r\n me.isBusy = false;\r\n });\r\n }\r\n\r\n GetBundleAttachments(corrId, linkedCorrId) {\r\n const me = this;\r\n me.CorrespondenceAttachmentsSVC.getBundleAttachmentsFromBaseCorrespondenc(\r\n corrId,\r\n linkedCorrId\r\n )\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(response => {\r\n me.Attachments = response;\r\n });\r\n }\r\n\r\n GetLinkedCorrespondeceScheduleAttachments(value) {\r\n const me = this;\r\n\r\n if (value) {\r\n me.isBusy = true;\r\n me.CorrespondenceAttachmentsSVC.getLinkedCorrespondeceScheduleAttachments(value)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(response => {\r\n me.Attachments = response.Attachments;\r\n\r\n me.Attachments.forEach((item, index) => {\r\n item.IsHidden = false;\r\n });\r\n if (value != undefined && value.length > 0) {\r\n me.Attachments.forEach((item, index) => {\r\n if (me.selectedAttachmentIds.indexOf(item.RelatedAttachmentID) >= 0) {\r\n item.IsHidden = true;\r\n }\r\n });\r\n }\r\n me.isBusy = false;\r\n }, e => {\r\n me.isBusy = false;\r\n });\r\n }\r\n }\r\n\r\n getFileIcon(ext) {\r\n return EnumExtensions.getFileIcon(ext);\r\n }\r\n}\r\n","import { HttpInterceptor } from \"../../../../_common/services/http-interceptor\";\r\nimport { IGlobalSettings } from \"../../../../_common/models/IGlobalSettings\";\r\nimport { Response } from \"@angular/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { throwError} from \"rxjs\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { SystemModulesEnum } from \"src/app/_common/components/Attachment/dto/attachmentGroup-dto\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class CorrespondenceAttachmentsSVC {\r\n baseURL = BERRY.hostName + \"api/CorrespondenceApi\";\r\n public get CorrespondenceId() {\r\n return;\r\n }\r\n\r\n constructor(public http: HttpInterceptor) { }\r\n\r\n public getAttachments(corrId, corrLinkType = null, isCorrespondenceTask = false, attachmentModuleType: SystemModulesEnum = SystemModulesEnum.Correspondence): any {\r\n var url = \"api/CorrespondenceApi/GetCorrespondenceAttachmentsWithoutGrouping\";\r\n switch (attachmentModuleType) {\r\n case SystemModulesEnum.Committee: {\r\n url = \"api/committees/GetCommitteeAttachmentsWithoutGrouping\";\r\n break;\r\n }\r\n }\r\n\t\tcorrLinkType = corrLinkType ? corrLinkType : \"\";\r\n return this.http\r\n .get(\r\n BERRY.hostName +\r\n url +\r\n \"?id=\" +\r\n corrId +\r\n \"&corrLinkType=\" +\r\n corrLinkType +\r\n \"&isCorrespondenceTask=\" +\r\n isCorrespondenceTask\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public getUserLinkedAttachments(UserId): any {\r\n return this.http\r\n .get(\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/GetUserLinkedScheduleAttachments\" +\r\n \"?userId=\" +\r\n UserId\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public getLinkedCorrespondeceScheduleAttachments(ScheduleId): any {\r\n return this.http\r\n .get(\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/GetLinkedCorrespondeceScheduleAttachments\" +\r\n \"?id=\" +\r\n ScheduleId\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public getBundleAttachmentsFromBaseCorrespondenc(corrId, corrLinkId): any {\r\n return this.http\r\n .get(\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/GetAttachmentsBundleFromBaseCorrespondenc?corrId=\" +\r\n corrId +\r\n \"&corrLinkId=\" +\r\n corrLinkId\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n extractData(res: Response) {\r\n let body = res;\r\n return body || {};\r\n }\r\n\r\n handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n return throwError(errMsg);\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class CorrespondencefollowUpSvc extends BaseService {\r\n\r\n constructor(http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n Follow(correspondenceId) {\r\n var url =\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/Followup?id=\" +\r\n correspondenceId;\r\n return super.post(url, correspondenceId);\r\n }\r\n\r\n AssignFollow(correspondenceId) {\r\n var url =\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/AssignFollowup?id=\" +\r\n correspondenceId;\r\n\r\n return super.post(url, correspondenceId);\r\n }\r\n\r\n}\r\n","export enum CorrespondenceCategoryIdEnum {\r\n None = 0,\r\n Incoming = 1,\r\n Outgoing = 2,\r\n Internal = 3,\r\n PrivateIncoming = 5,\r\n PrivateOutgoing = 6,\r\n InternalForPresident = 7,\r\n InteranalAndOutGoing = 8,\r\n Decision = 9,\r\n InternalGeneralization = 10,\r\n proclamation = 1003,\r\n CaseFile = 1001\r\n}\r\nexport enum CorrespondenceDashboardSectionEnum {\r\n CurrentCorrespondence = 0,\r\n InternalEntity = 1,\r\n CorrespondenceType = 2,\r\n ExternalEntity = 3,\r\n}","import { CorrespondenceCategoryDto } from \"../correspondence-dto\";\r\nimport { CorrespondenceCategoryIdEnum } from \"../CorrespondenceCategoryId-Enum\";\r\n\r\nexport class CorrespondenceDynamicFiledsDto {\r\n public CorrespondenceId: string;\r\n public CorrespondenceDynamicFieldsKeyValueJson: string;\r\n public StagesToShow: StagesToShow;\r\n}\r\n\r\nexport enum StagesToShow {\r\n All,\r\n OnlyStageZero,\r\n AllExceptStageZero\r\n}\r\n\r\nexport class CorrespondenceDynamicFormDto {\r\n public CorrespondenceClonedCategory: CorrespondenceCategoryDto;\r\n public CorrespondenceTypeId: number;\r\n public CorrespondenceClassificationId: number;\r\n public ShowCorrespondenceTypeAndClassification: boolean = false;\r\n public DynamicFieldsJson: string;\r\n public SettingsJson: IDynamicFormSetting; \r\n}\r\nexport interface IDynamicFormSetting\r\n{ \r\n EnableCorrespondenceDescription: boolean;\r\n EnableIncommingFromIndividuals: boolean;\r\n CanSettlemntWithSameCorrespondenceCategory: boolean;\r\n HideInternalRecipientFeild: boolean; /*الجهة المستقبلة */\r\n HideInternalSenderFeild: boolean; /*وردت من */\r\n HideCorrespondenceTypeAndClassification: boolean;\r\n OverviewTypeId: number;\r\n EnableMultipleOutgoing: boolean;\r\n ShowFiltrationInboxForCategory: boolean;\r\n}\r\nexport class CorrespondenceAdhocDynamicForm {\r\n public Id: string;\r\n public TextAR: string;\r\n public TextEN: string;\r\n public CorrespondenceCategoryId: CorrespondenceCategoryIdEnum;\r\n public CorrespondenceTypeId: number = null;\r\n public CorrespondenceClassificationId: number = null;\r\n public FormFieldsAsJson: string;\r\n public SettingsJson: string;\r\n public CorrespondenceClonedCategoryId: number; \r\n public CorrespondenceCategory: any;\r\n public CorrespondenceType: any;\r\n public CorrespondenceClassification: any;\r\n public CorrespondenceClonedCategory: CorrespondenceCategoryDto;\r\n public IsLocked: boolean;\r\n \r\n}\r\n\r\nexport class CorrespondenceAdhocDynamicFormDto {\r\n public Id: string;\r\n public TextAR: string;\r\n public TextEN: string;\r\n public CorrespondenceCategoryId: CorrespondenceCategoryIdEnum;\r\n public CorrespondenceTypeId: number = null;\r\n public CorrespondenceClassificationId: number = null;\r\n public FormFieldsAsJson: string;\r\n public SettingsJson: string;\r\n public CorrespondenceClonedCategoryId: number = null;\r\n public CorrespondenceClonedCategory: CorrespondenceCategoryDto;\r\n public IsLocked: boolean;\r\n}\r\n\r\nexport class AdditionaUnattached {\r\n Id: number;\r\n RowId = 0;\r\n UnattachedTypeId: number;\r\n UnattachedName: string;\r\n Description: string;\r\n Count: number;\r\n}\r\nexport class BasicUnattached {\r\n Unattached: string;\r\n NumberOfUnattached: number;\r\n}\r\n\r\n","export enum LinkTypeIdEnum {\r\n None = 0,\r\n New = 1,\r\n Settlement = 2,\r\n Commentary = 3,\r\n Append = 4,\r\n Export = 5,\r\n SpeechResponse = 6,\r\n ApplicationReferredTo = 7,\r\n Other = 8,\r\n Without = 9,\r\n LinkStudy = 10,\r\n SubCorrespondence = 11,\r\n SubsequentCorrespondence = 12,\r\n SettlementSubCorrespondence = 13,\r\n BundledCorrespondence = 14,\r\n MergedCorrespondence = 15,\r\n StatementCorrespondence = 16,\r\n IntimationCorrespondence = 17,\r\n InitiativeFile = 18\r\n}\r\n","export enum SearchFilterTextSearchTypesEnum {\r\n CorrContains,\r\n CorrStartsWith,\r\n CorrTextEqual,\r\n CorrTextIsNumber,\r\n CorrExactText,\r\n CorrPercentageText,\r\n CorrTextIsFixedNumber,\r\n Attachment\r\n}\r\n\r\nexport enum IncomingDateFilterOptionEnum {\r\n IncomingDate,\r\n IncomingYear\r\n}\r\n\r\n\r\n\r\n\r\n\r\nexport enum OutgoingDateFilterOptionEnum {\r\n OutgoingDate,\r\n OutgoingYear\r\n}\r\n\r\nexport enum SearchFilterDateEnum {\r\n CreatedDate,\r\n SentDate,\r\n DateDone,\r\n DeadlineDate,\r\n ActionDeadlineDate\r\n}\r\n\r\nexport enum SearchFilterOrderByTypesEnum {\r\n DateDesc,\r\n DateAsc,\r\n UrgentFirst,\r\n DeadlineDesc,\r\n DeadlineAsc,\r\n LastActionDesc,\r\n Relevance,\r\n FollowUpDate\r\n}\r\n\r\n\r\nexport enum PeopleOrEntitiesOptionsEnum {\r\n People,\r\n Entity\r\n}\r\n\r\nexport enum SearchFilterSomeoneEnum {\r\n CreatedIt = 0,\r\n MovedTo = 1,\r\n CurrentlyWith = 2,\r\n DidActionOnIt = 3,\r\n OwnedBy = 4,\r\n CurrentlyWithAndOwnedBy = 5,\r\n None = 6,\r\n ForwardedFrom = 7,\r\n // الجهة المعدة للخطاب\r\n PreparedEntityToSpeech = 8,\r\n // احيلت من - احيلت الى\r\n ForwardFromTo = 9\r\n}\r\n\r\nexport enum SearchTypeEnum {\r\n Quick = 1,\r\n Advanced = 2\r\n}\r\n\r\nexport enum NumberSearchTextEnum {\r\n CorrespondenceNumber = 0,\r\n AttachmentNumber = 1,\r\n BarCode = 2,\r\n CorrespondenceExternalNumber = 3,\r\n CorrespondenceSubject = 4,\r\n All = 5,\r\n AccopanyingAttachmentNumber //رقم المرفق المصاحب\r\n}\r\n\r\nexport enum SortTypeEnum {\r\n Newest = 0,\r\n Oldest = 1\r\n}","export class ConstUrls {\r\n public static SignatureURL = \"api/correspondence-signatures/\";\r\n public static DataServiceURL = \"api/CorrespondenceApi/GetCorrespondenceAttachments\";\r\n public static RecommedationDataServiceURL = \"api/CorrespondenceApi/GetRecommedationAttachments\";\r\n public static MultimediaDataServiceURL = \"api/MultimediaAttchmentApi/GetAttachments\";\r\n public static MultimediaCommitteeDataServiceURL = \"api/MultimediaAttchmentApi/GetCommitteeAttachments\";\r\n public static DeleteServiceURL = \"Correspondences/Attachments/Delete\";\r\n public static GetEditServiceURL = \"Correspondences/Attachments/Edit\";\r\n public static HistoryServiceURL = \"api/CorrespondenceApi/History\";\r\n public static StampURL = \"api/stamp-requests/\";\r\n public static BundleCorrespondenceAttachmentsServiceURL = \"api/BundleAttachmentApi/GetBundleCorrespondenceAttachments\";\r\n\r\n\r\n /**\r\n * المحاضر و المذكرات\r\n */\r\n public static CorrespondenceRecordAttachments =\r\n \"api/CorrespondenceApi/GetCorrespondenceRecordAttachments\";\r\n /*خطابات التوقيع والتعقيب*/\r\n public static CorrespondenceLettersAttachments =\r\n \"api/CorrespondenceApi/GetCorrespondenceLettersAttachments\";\r\n}\r\n","export enum AttachmentTypesEnum {\r\n CorrespondenceAttachments = 1,\r\n ArchiveAttachments = 2,\r\n TaskAttachments = 3,\r\n FromEmailCorrespondanceAttachements = 4, // <-- Used by SyncJob only (No need for Upload Download Implementation)\r\n ScheduleAttachments = 5,\r\n ScheduleItemTopicAttachments = 6,\r\n procIncidentAttachments = 7,\r\n procCaseFileAttachments = 8,\r\n procCommunicationAttachments = 9,\r\n procOutsiderCommitteeAttachment = 10,\r\n procCrimeExecutionStageAttachment = 11,\r\n procCrimeInvestigationStageAttachment = 12,\r\n procCrimeTrialStageAttachment = 13,\r\n XCAttachments = 14,\r\n ReplyTemplateAttachments = 15, // <-- Cannot be used in Donwload and Upload Attachments, becuase ReplyTemplate.cs does not inheritthe Base Attachment Class\r\n Committess = 16,\r\n DeliveryReport = 17,\r\n PostOfficeDeliveryReport = 18,\r\n Announcements = 21,\r\n Suggestions = 25, // Related to initiative module (Draft initiative)\r\n Initiatives = 26,\r\n TempAttachment = 27\r\n}","export enum CorrespondenceFilingFeaturesEnum {\r\n IsCompletelyElectronicShelving=1,\r\n IsCentralAdministrationBuildingShelving=2,\r\n IsOtherStorageLocationShelving=3,\r\n IsForwardDocumentsToOtherEntityShelving=4,\r\n IsForwardToDocumentsCenterShelving=5\r\n}\r\n\r\n","export enum CorrespondenceSortTypeEnum {\r\n Newest = 0,\r\n Oldest = 1,\r\n Urgent = 2,\r\n Distinct = 3,\r\n PrioritylevelDESC = 4,\r\n PrioritylevelASC = 5,\r\n}","export enum InboxItemTypes {\r\n Personal,\r\n MeAsManager,\r\n PublicInbox,\r\n RemindersInbox,\r\n ImportantUrgent,\r\n Late,\r\n EntityEmployeesApplicationsInbox,\r\n CC,\r\n Ownership,\r\n Followup,\r\n Draft,\r\n Outbox,\r\n ExternalEmail,\r\n Letter,\r\n SignatureRequests,\r\n MyTasks,\r\n ReplyRequests,\r\n Confidentiality,\r\n ConfidentialToMe,\r\n Urgent,\r\n IncomingFromRoyalCourt,\r\n MyEntityInbox,\r\n CompletedCorrespondence,\r\n FieldVisitApprove,\r\n DivisionApplicationsInbox,\r\n CommitteInbox,\r\n EntityInbox,\r\n CaseFileFilter,\r\n CorrespondencesSentToSpecializedEntities,\r\n CasefilesProcessedByImportantSubjectsCommittee,\r\n EGovInbox,\r\n AllInboxes,\r\n CustomCategory,\r\n EntitySentbox,\r\n SharedInboxes,\r\n FilterInboxes\r\n}\r\n","export enum SignatureTypes {\r\n /// \r\n /// التوقيع\r\n /// \r\n Signature = 0,\r\n /// \r\n /// التأشير\r\n /// \r\n Marking = 1,\r\n /// \r\n /// الموافقة\r\n /// \r\n Approval = 2,\r\n /// \r\n /// الاعتماد\r\n /// \r\n Adoption = 3,\r\n /// \r\n /// الختم\r\n /// \r\n Stamp = 4\r\n}\r\n","export enum OrderTypeEnum {\r\n Asc,\r\n Desc\r\n}","export class OtherInboxesCountDto {\r\n public importantUrgentInboxCount: string;\r\n public lateInboxCount: string;\r\n public ccedInboxCount: number;\r\n public ownershipInboxCount: string;\r\n public followUpInboxCount: string;\r\n public draftInboxCount: number;\r\n public sentInboxCount: string;\r\n public remindersInbox: number;\r\n public signatureRequestsCount: string;\r\n public myTasksCount: string;\r\n public ConfidentialToMeInboxCount: number;\r\n public UrgentInboxCount: number;\r\n public RoyalCourtInboxCount: number;\r\n public FieldVisitApprove: number;\r\n public ComplatedCorrespondenceInboxCount: string;\r\n public letterInboxCount?: number;\r\n public SentToSpecializedEntitiesInboxCount?: number;\r\n public NotSentToSpecializedEntitiesInboxCount?: number;\r\n public ProcessedByImportantSubjectsCommittee?: number;\r\n public UnSeenManager: number;\r\n public UnSeenImportantAndUrgent: number;\r\n public UnSeenLate: number;\r\n public UnSeenCC: number;\r\n public UnSeenOwnership: number;\r\n public UnSeenFollowUp: number;\r\n public UnSeenSignatureRequests: number;\r\n public UnSeenMyTasks: number;\r\n public UnSeenConfidentialToMeInboxCount: number;\r\n public UnSeenUrgent: number;\r\n public UnSeenCompleted: number;\r\n public ReminderCount: number;\r\n public EGovInbox: number;\r\n public ExternalEmail: any;\r\n public CustomCategoryCount: string;\r\n public UnSeenCustomCategoryCount: number;\r\n public CustomCategoryInboxCountList: any;\r\n public EntitySentboxCount: number;\r\n public UnSeenEntitySentboxCount: number;\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { CorrespondenceCategoryDto } from \"./_models/correspondence-dto\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { CorrespondenceCategoryIdEnum } from \"./_models/CorrespondenceCategoryId-Enum\";\r\nimport { AppModulesEnum } from \"src/app/_common/models/AppModulesEnum\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class CorrespondenceCategoriesSvc extends BaseService {\r\n baseURL = BERRY.hostName + \"api/CorrespondenceCategoriesApi/\";\r\n\r\n public correspondenceCategories: CorrespondenceCategoryDto[] = [];\r\n public allCategories: CorrespondenceCategoryDto[] = [];\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n this.refreshCorrespondenceCategories();\r\n }\r\n\r\n get appModuleId(): number {\r\n return this.http.appModuleId;\r\n }\r\n\r\n set appModuleId(value: number) {\r\n this.http.appModuleId = value;\r\n }\r\n\r\n get canCreateCorrespondences() {\r\n this.IsBusy = true;\r\n return super.get(this.baseURL + \"CanCreateCorrespondences\");\r\n }\r\n //Get all categories with create permission for all modules used in global header\r\n getAllCategories(): Observable> {\r\n return super.get(this.baseURL + \"GetAllCategories\");\r\n }\r\n\r\n //Get all categories with create permission filter based on current appModule opened\r\n getCorrespondenceCategories(): Observable<\r\n Array\r\n > {\r\n return super.get(this.baseURL + \"GetCorrespondenceCategories\");\r\n }\r\n\r\n getAppModuleCategories(\r\n appModuleId: AppModulesEnum\r\n ): CorrespondenceCategoryDto[] {\r\n let categories = this.allCategories.filter(\r\n c => c.AppModuleId == appModuleId\r\n );\r\n return categories;\r\n }\r\n\r\n getIncomingElectronicCategories(typeId) {\r\n return super.get(this.baseURL + \"GetIncomingElectronicCtgByType?typeId=\" + typeId);\r\n }\r\n\r\n isOutgoingCategoriesSupportYesser(\r\n categoryId\r\n ): boolean {\r\n let index = this.correspondenceCategories.findIndex(\r\n c => c.ID == categoryId && c.IsEGov\r\n );\r\n return index > -1;\r\n }\r\n\r\n refreshCorrespondenceCategories(): void {\r\n let me = this;\r\n me.getCorrespondenceCategories().subscribe(result => {\r\n me.correspondenceCategories = result;\r\n });\r\n }\r\n\r\n refreshAllCategories(): void {\r\n let me = this;\r\n me.getAllCategories().subscribe(result => {\r\n me.allCategories = result;\r\n });\r\n }\r\n\r\n getCategoryUrl(categoryId: CorrespondenceCategoryIdEnum): string | any[] {\r\n switch (categoryId) {\r\n case CorrespondenceCategoryIdEnum.Incoming:\r\n return \"/new-correspondence/Incoming/false\";\r\n case CorrespondenceCategoryIdEnum.PrivateIncoming:\r\n return \"/new-correspondence/Incoming/true\";\r\n case CorrespondenceCategoryIdEnum.Outgoing:\r\n return \"/new-correspondence/Outgoing/false\";\r\n case CorrespondenceCategoryIdEnum.PrivateOutgoing:\r\n return \"/new-correspondence/Outgoing/true\";\r\n case CorrespondenceCategoryIdEnum.Internal:\r\n return \"/new-correspondence/Internal/internalType\";\r\n case CorrespondenceCategoryIdEnum.Decision:\r\n return \"/new-correspondence/Internal/decision\";\r\n default: {\r\n return [\"/new-correspondence/Create\"] + '/' + [categoryId];\r\n }\r\n }\r\n }\r\n\r\n categoryBackground(correspondenceCategory: CorrespondenceCategoryDto): string {\r\n\r\n let background = '';\r\n\r\n if (correspondenceCategory) {\r\n switch (correspondenceCategory.ID) {\r\n case CorrespondenceCategoryIdEnum.Incoming:\r\n background = 'inc-background';\r\n break;\r\n case CorrespondenceCategoryIdEnum.PrivateIncoming:\r\n background = 'pinc-background';\r\n break;\r\n case CorrespondenceCategoryIdEnum.Outgoing:\r\n background = 'out-background';\r\n break;\r\n case CorrespondenceCategoryIdEnum.PrivateOutgoing:\r\n background = 'pout-background';\r\n break;\r\n case CorrespondenceCategoryIdEnum.Internal:\r\n background = 'int-background';\r\n break;\r\n }\r\n }\r\n\r\n return background\r\n }\r\n\r\n UpdateQrCodeIsRequiredForCategories(qrCodeSettingsDto: any) {\r\n let url = this.baseURL + 'UpdateQrCodeIsRequiredForCategories';\r\n return super.post(url, qrCodeSettingsDto);\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Headers, RequestOptions } from \"@angular/http\";\r\nimport { HttpInterceptor } from \"../../../../_common/services/http-interceptor\";\r\nimport { SignatureRequestDto } from \"../../_models/eSignatures/SignatureRequestDto\";\r\nimport { SignatureRequestGroupDto } from \"../../_models/eSignatures/SignatureRequestGroupDto\";\r\nimport { Subject } from \"rxjs\";\r\nimport { IGlobalSettings } from \"../../../../_common/models/IGlobalSettings\";\r\nimport { SignatureTypes } from \"../../../../berry/correspondences/_models/enums/SignatureTypes\";\r\nimport { BaseService } from \"../../../../_common/services/baseService\";\r\nimport { AppModulesEnum } from \"../../../../_common/models/AppModulesEnum\";\r\nimport { SystemModules } from \"../../../../_common/models/GetUserSignatureDto\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var app: any;\r\n\r\n@Injectable()\r\nexport class SignaturesRequestsSvc extends BaseService {\r\n baseURL = BERRY.hostName + \"api/correspondence-signatures\";\r\n initiativeApiUrl = BERRY.hostName + \"api/InitiativeAttachment\";\r\n\r\n public correspondenceIdSubject: Subject;\r\n public signatureRequestGroups: SignatureRequestGroupDto[] = [];\r\n public pendingSignatureRequestGroups: SignatureRequestGroupDto[] = [];\r\n public pendingStampRequestGroups: SignatureRequestGroupDto[] = [];\r\n public OtherSignatureRequestGroups: SignatureRequestGroupDto[] = [];\r\n public notAddedSignatureRequestGroups: SignatureRequestGroupDto[] = [];\r\n public stampRequestGroups: SignatureRequestGroupDto[] = [];\r\n public otherStampRequestGroups = [];\r\n constructor(http: HttpInterceptor) {\r\n super(http);\r\n this.correspondenceIdSubject = new Subject();\r\n }\r\n\r\n //constructor(public http: HttpInterceptor) {\r\n // this.correspondenceIdSubject = new Subject();\r\n //}\r\n\r\n buildJsonHeader() {\r\n let headers = new Headers();\r\n headers.append(\"Accept\", \"application/json\");\r\n let options = new RequestOptions({ headers: headers });\r\n return options;\r\n }\r\n\r\n public AnyPendingSignatureRequestsForLoggedInUser(correspondenceId: string) {\r\n //let options = this.buildJsonHeader();\r\n\r\n let url = `${this.baseURL\r\n }/has-pending-signature-requests/${correspondenceId}`;\r\n //return this.http.get(url, options);\r\n\r\n return super.get(url);\r\n }\r\n\r\n public AnyPendingSignatureMarkingRequestsForLoggedInUser(correspondenceId: string) {\r\n\r\n let url = `${this.baseURL\r\n }/has-pending-signature-marking-requests/${correspondenceId}`;\r\n\r\n return super.get(url);\r\n }\r\n\r\n public getCorrespondenceSignatureRequests(\r\n correspondenceId: string,\r\n signatureTypes: SignatureTypes = SignatureTypes.Signature,\r\n moduleId = 3 //3 is correspndences module\r\n ) {\r\n let url = `${this.baseURL}/requests/${correspondenceId}?signatureTypes=${signatureTypes}`;\r\n if (moduleId == AppModulesEnum.Committees)\r\n //Committee\r\n url = `${this.baseURL}/ComitteeRequests/${correspondenceId}/${signatureTypes}`;\r\n return super.get(url);\r\n //return this.http.get(url, options);\r\n }\r\n public getCurrentUserId() {\r\n //let options = this.buildJsonHeader();\r\n let url = `${this.baseURL}/GetCurrentUserId`;\r\n return super.get(url);\r\n // return this.http.get(url, options);\r\n }\r\n\r\n public getOtherCorrespondenceSignatureRequests(correspondenceId: string,\r\n moduleId = 3,\r\n signatureTypes: SignatureTypes = SignatureTypes.Signature) {//3 is correspndences module\r\n //let options = this.buildJsonHeader();\r\n\r\n var actionName = \"OtherRequests\";\r\n if (moduleId == AppModulesEnum.Committees) {\r\n //Committee\r\n actionName = \"OtherComitteeRequests\";\r\n }\r\n\r\n let url = `${this.baseURL}/${actionName}/${correspondenceId}?signatureType=${signatureTypes}`;\r\n return super.get(url);\r\n //return this.http.get(url, options);\r\n }\r\n\r\n public getNotAddedSignatureRequestGroups(\r\n correspondenceId: string,\r\n isCorrespondenceRecored: boolean = false,\r\n moduleId = 3,//3 is correspndences module\r\n type: SignatureTypes = SignatureTypes.Signature\r\n ) {\r\n // Correspondences\r\n let url = `${this.baseURL}/not-added-groups?id=${correspondenceId}&IsCorrespondenceRecored=${isCorrespondenceRecored}&signatureTypes=${type}`;\r\n // Committees\r\n if (moduleId == AppModulesEnum.Committees)\r\n url = `${this.baseURL}/committee-not-added-groups?id=${correspondenceId}&IsCorrespondenceRecored=${isCorrespondenceRecored}&signatureTypes=${type}`;\r\n\r\n return super.get(url);\r\n }\r\n\r\n public deleteRequest(\r\n correspondenceId: string,\r\n group: SignatureRequestGroupDto,\r\n request: SignatureRequestDto,\r\n moduleId = 3 //3 is correspndences module\r\n ) {\r\n let url = \"\";\r\n url = `${this.baseURL}/delete-request`;\r\n if (moduleId == AppModulesEnum.Committees)\r\n url = `${this.baseURL}/delete-committee-request`;\r\n\r\n let params = {\r\n correspondenceId: correspondenceId,\r\n Group: group,\r\n Requests: [request]\r\n };\r\n return super.post(url, params);\r\n }\r\n public deleteCommitteeRequest(\r\n CommitteeId: number,\r\n group: SignatureRequestGroupDto,\r\n request: SignatureRequestDto,\r\n type\r\n ) {\r\n let url = \"\";\r\n url = `${this.baseURL}/delete-committee-request`;\r\n let params = {\r\n CommitteeId: CommitteeId,\r\n Group: group,\r\n Requests: [request],\r\n SignatureTypes: type\r\n };\r\n return super.post(url, params);\r\n }\r\n\r\n public addNewRequests(correspondenceId: string, group: SignatureRequestGroupDto, requests: SignatureRequestDto[], signatureType: SignatureTypes, moduleId = 3) {\r\n let url = \"\";\r\n let params = null;\r\n if (moduleId == AppModulesEnum.Committees) {\r\n url = `${this.baseURL}/add-new-committee-requests`;\r\n params = {\r\n CommitteeId: moduleId == AppModulesEnum.Committees ? correspondenceId : 0,\r\n Group: group,\r\n Requests: requests,\r\n SignatureTypes: signatureType\r\n };\r\n }\r\n else {\r\n url = `${this.baseURL}/add-new-requests`;\r\n params = {\r\n CorrespondenceId: correspondenceId,\r\n Group: group,\r\n Requests: requests,\r\n SignatureTypes: signatureType,\r\n CommitteeId: moduleId == AppModulesEnum.Committees ? correspondenceId : 0\r\n };\r\n }\r\n return super.post(url, params);\r\n }\r\n\r\n public checkNewRequests(correspondenceId: string, group: SignatureRequestGroupDto, requests: SignatureRequestDto[], moduleId: number = SystemModules.Correspondence) {\r\n let url = \"\";\r\n let params = null;\r\n\r\n if (requests.filter(x => x.SignatureType == SignatureTypes.Stamp)[0]?.SignatureType != undefined && requests.filter(x => x.SignatureType == SignatureTypes.Stamp)[0]?.SignatureType == SignatureTypes.Stamp) {\r\n var stampURL = BERRY.hostName + \"api/StampRequests\";\r\n url = `${stampURL}/CheckNewRequests`;\r\n params = {\r\n Group: group,\r\n Requests: requests\r\n };\r\n\r\n }\r\n else if (moduleId == SystemModules.Correspondence) {\r\n url = `${this.baseURL}/check-new-requests`;\r\n params = {\r\n CorrespondenceId: correspondenceId,\r\n Group: group,\r\n Requests: requests\r\n };\r\n\r\n \r\n }\r\n else {\r\n let operationApiUrl = BERRY.hostName + \"api/attachment-operation\";\r\n url = `${operationApiUrl}/duplicate-commitee-requests`;\r\n params = {\r\n CommitteeId: correspondenceId,\r\n Group: group,\r\n Requests: requests\r\n };\r\n }\r\n return this.http.post(url, params);\r\n }\r\n\r\n checkDuplicatedSignatureRequestInitiative(InitiativeId: any, group: SignatureRequestGroupDto, checkRequest: SignatureRequestDto[]): any {\r\n let initiativeApiUrl = BERRY.hostName + \"api/initiativeAttachment\";\r\n let url = `${initiativeApiUrl}/check-duplicated-signature-request`;\r\n let params = {\r\n InitiativeId: InitiativeId,\r\n Group: group,\r\n Requests: checkRequest\r\n };\r\n\r\n return this.http.post(url, params);\r\n }\r\n\r\n public getInitiativeSignatureRequests(\r\n initiativeId: number,\r\n signatureTypes: SignatureTypes = SignatureTypes.Signature,\r\n ) {\r\n var actionName = \"SignatureRequests\";\r\n\r\n let url = `${this.initiativeApiUrl}/${actionName}/${initiativeId}/${signatureTypes}`;\r\n return super.get(url);\r\n }\r\n\r\n public getInitiativeOtherSignatureRequests(initiativeId: number) {\r\n\r\n var actionName = \"OtherRequests\";\r\n\r\n let url = `${this.initiativeApiUrl}/${actionName}/${initiativeId}`;\r\n return super.get(url);\r\n //return this.http.get(url, options);\r\n }\r\n public deleteInitiativeSignatureRequest(\r\n initiativeId: number,\r\n group: SignatureRequestGroupDto,\r\n request: SignatureRequestDto,\r\n ) {\r\n let url = \"\";\r\n url = `${this.initiativeApiUrl}/DeleteSignatureRequest`;\r\n let params = {\r\n InitiativeId: initiativeId,\r\n Group: group,\r\n Requests: [request]\r\n };\r\n return super.post(url, params);\r\n }\r\n\r\n public getNotAddedInitiativeSignatureRequestGroups(initiativeId: any, type: SignatureTypes = SignatureTypes.Signature) {\r\n var actionName = \"NotAddedGroups\";\r\n let url = `${this.initiativeApiUrl}/${actionName}/${initiativeId}/${SignatureTypes.Signature}`;\r\n return super.get(url);\r\n }\r\n\r\n public addNewInitiativeSignatureRequest(\r\n initiativeId: any,\r\n group: SignatureRequestGroupDto,\r\n requests: SignatureRequestDto[],\r\n signatureType: SignatureTypes\r\n ) {\r\n let url = `${this.initiativeApiUrl}/NewInitiativeSignatureRequest`;\r\n\r\n\r\n let params = {\r\n InitiativeId: initiativeId,\r\n Group: group,\r\n Requests: requests,\r\n SignatureTypes: signatureType,\r\n };\r\n return super.post(url, params);\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { CorrespondenceTaskDto, AssignTaskSearchDto } from \"src/app/_common/models/Tasks Panel/CorrespondenceTaskDto\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { TaskTypesEnum } from \"../../../../Tasks/models/TaskTypesEnum\";\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CorrespondenceAssignService extends BaseService {\r\n\r\n isBusy = false;\r\n SelectedId = null;\r\n AllowedUsers = [];\r\n AllowedUsersTypes = [];\r\n IsDetailedOpened = false;\r\n IsAllowedAsManager: Boolean;\r\n SelectedTask: CorrespondenceTaskDto = null;\r\n baseURL = \"api/correspondenceAssignTasks\";\r\n private readonly baseUrlImproved: string = `${BERRY.hostName}api/ImprovedTaskItems`;\r\n constructor(public http: HttpInterceptor) { super(http); }\r\n\r\n checkUserHaveVacation(userId: string, deadlineDate) {\r\n let url = `${BERRY.hostName}${this.baseURL}/checkUserHaveVacation?userId=${userId}&deadlineDate=${deadlineDate}`;\r\n let params: any = {\r\n userId: userId,\r\n deadlineDate: deadlineDate\r\n };\r\n\r\n return super.get(url, params);\r\n }\r\n\r\n LinkAttachmentsListWithTask(Id, list) {\r\n let url = `${BERRY.hostName}${this.baseURL}/save-attachmentslist-task?Id=${Id}`;\r\n return super.post(url, list);\r\n }\r\n\r\n GetTaskAttachments(relatedGuidId: any, taskType: any, relatedIntId: number) {\r\n let url = `${BERRY.hostName}${this.baseURL}/get-task-linked-attachments?relatedGuidId=${relatedGuidId}&taskType=${taskType}&relatedIntId=${relatedIntId}`;\r\n let params = {\r\n relatedGuidId: relatedGuidId,\r\n taskType: taskType,\r\n relatedIntId: relatedIntId\r\n };\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n GetTaskLinkedAttachments(Id: Number, linkedItemId = 0) {\r\n var taskURL = `${BERRY.hostName}api/TaskItems`;\r\n let url = `${taskURL}/GetTaskLinkedAttachments?Id=${Id}&type=${TaskTypesEnum.CorrespondenceTask}&linkedItemId=${linkedItemId}`;\r\n let params = {\r\n Id: Id\r\n };\r\n return super.post(url, params);\r\n }\r\n\r\n GetAllTasks(assignTaskSearchDto: AssignTaskSearchDto) {\r\n let url = `${this.baseUrlImproved}/GetModulesTasks`;\r\n return super.post(url, assignTaskSearchDto);\r\n }\r\n\r\n GetAllowedUsersTypes() {\r\n let url = `${BERRY.hostName}${this.baseURL}/get-allowed-users-types`;\r\n let params = {};\r\n\r\n return super.post(url, params);\r\n }\r\n\r\n GetTaskTypes() {\r\n let url = `${BERRY.hostName}${this.baseURL}/get-task-types`;\r\n let params = {};\r\n\r\n return super.post(url, params);\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpInterceptor } from \"../../../../_common/services/http-interceptor\";\r\nimport { Subject, Observable } from \"rxjs\";\r\nimport { IGlobalSettings } from \"../../../../_common/models/IGlobalSettings\";\r\nimport { EditConfidentialityDto } from \"./models/edit-confidentiality-dto\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { ActivatedRoute } from \"@angular/router\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class ConfidentialityService extends BaseService {\r\n\r\n _baseUrl: string = BERRY.hostName + \"api/ConfidentialityApi/\";\r\n\r\n public usersCountSubject = new Subject();\r\n\r\n constructor(httpInterceptor: HttpInterceptor,\r\n private activatedRoute: ActivatedRoute) {\r\n super(httpInterceptor);\r\n }\r\n\r\n getConfidentialityUsersCount(correspondenceId: string) {\r\n const me = this;\r\n var linkedTo;\r\n this.activatedRoute.queryParams.subscribe(params => {\r\n linkedTo = params['linkedTo']\r\n })\r\n let url = `${me._baseUrl}GetConfidentialityUsersCount?correspondenceId=${correspondenceId}&&linkedTo=${linkedTo}`;\r\n return super.get(url).pipe()\r\n .subscribe((count: number) => {\r\n me.usersCountSubject.next(count);\r\n });\r\n }\r\n\r\n getModel(correspondenceId: string): Observable {\r\n let url = `${this._baseUrl}GetModel?correspondenceId=${correspondenceId}`;\r\n return super.get(url);;\r\n }\r\n\r\n Edit(dto: EditConfidentialityDto) {\r\n let url = `${this._baseUrl}Edit`;\r\n return super.post(url, dto);\r\n }\r\n\r\n addConfidentialUser(dto: any) {\r\n let url = `${this._baseUrl}AddConfidentialUser`;\r\n return super.post(url, dto);\r\n }\r\n\r\n deleteConfidentialUser(dto: any) {\r\n let url = `${this._baseUrl}DeleteConfidentialUser`;\r\n return super.post(url, dto);\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { throwError } from \"rxjs\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class ConsultantsSvc {\r\n constructor(public http: HttpInterceptor) { }\r\n\r\n public CurrentUserSignatureRequestsCount: number = 0;\r\n\r\n public GetCorrespondenceParticipants(CorrespondenceId: string) {\r\n return this.http\r\n .get(\r\n BERRY.hostName +\r\n \"api/Consultants/CorrespondenceParticipants/\" +\r\n CorrespondenceId\r\n )\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n //{ CorrespondenceId: CorrespondenceId, NewParticipants: NewParticipants, Weight: Weight})\r\n\r\n public ApproveCorrespondenceParticipants(\r\n CorrespondenceId: string,\r\n NewParticipants: IParticipant[],\r\n Weight: number\r\n ) {\r\n //return this.http.get(BERRY.hostName + \"api/Consultants/ApproveParticipants\")\r\n // .pipe(map(this.extractData),\r\n // catchError(this.handleError));\r\n\r\n return this.http\r\n .post(BERRY.hostName + \"api/Consultants/ApproveParticipants\", {\r\n CorrespondenceId: CorrespondenceId,\r\n NewParticipants: NewParticipants,\r\n Weight: +Weight\r\n })\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public ApproveCorrespondenceParticipants2(\r\n CorrespondenceId: string,\r\n NewParticipants: IParticipant[]\r\n ) {\r\n //return this.http.get(BERRY.hostName + \"api/Consultants/ApproveParticipants\")\r\n // .pipe(map(this.extractData),\r\n // catchError(this.handleError));\r\n\r\n return this.http\r\n .post(BERRY.hostName + \"api/Consultants/ApproveParticipants2\", {\r\n CorrespondenceId: CorrespondenceId,\r\n NewParticipants: NewParticipants\r\n })\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public AllConsulatantsWeightsInThreePeriodsByRelationTypeId(_participantRelationTypeId) {\r\n return this.http\r\n .get(\r\n BERRY.hostName +\r\n \"api/Consultants/AllConsulatantsWeightsInThreePeriodsByRelationTypeId?ParticipantRelationTypeId=\" +\r\n _participantRelationTypeId\r\n )\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetAllConsulatantsWeightsInThreePeriods() {\r\n return this.http\r\n .get(\r\n BERRY.hostName + \"api/Consultants/AllConsulatantsWeightsInThreePeriods\"\r\n )\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public isConsultantAvailableForCorrespondence(correspondenceId, userId) {\r\n return this.http\r\n .get(\r\n BERRY.hostName +\r\n \"api/Consultants/IsConsultantAvailableForCorrespondence?correspondenceId=\" +\r\n correspondenceId +\r\n \"&userId=\" +\r\n userId\r\n )\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n extractData(res: any) {\r\n let body = res;\r\n return body || {};\r\n }\r\n\r\n handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n return throwError(errMsg);\r\n }\r\n}\r\n\r\nexport interface IShowAddParticipantModalParams {\r\n participantHeader: string;\r\n selectedParticipants: IParticipant[];\r\n execludedParticipants: IParticipant[];\r\n isChangeOwnerMode: boolean;\r\n corrID: string;\r\n approveDirectly: boolean;\r\n disableActions: boolean;\r\n observerOrNext: (value: IParticipant[]) => void;\r\n}\r\n\r\nexport interface IParticipant {\r\n CorrespondenceId: string;\r\n ParticipantUserId: string;\r\n CreatedByUserId: string;\r\n ParticipantEntityId: number;\r\n IsOwner: boolean;\r\n CreatedOn: string;\r\n ParticipantUser: IUser;\r\n EntityName: string;\r\n ParticipantRelationTypeId?: number | null;\r\n ParticipantRelationType?: any | null;\r\n}\r\n\r\nexport interface IUser {\r\n UserId: string;\r\n EmployeeName?: string;\r\n ShortName: string;\r\n Email?: string;\r\n ActiveDirectoryUserName?: string;\r\n EntityName?: string;\r\n EntityParentName?: string;\r\n EntityParentParentName?: string;\r\n EmploymentNumber?: string;\r\n EmploymentStatusName?: string;\r\n Position?: string;\r\n BusinessUserType: IUserType;\r\n EntityId?: number;\r\n}\r\n\r\nexport interface IUserType {\r\n UserTypeID?: number;\r\n Name: string;\r\n NameAr: string;\r\n NameEn: string;\r\n RoleIds?: string[];\r\n UsersCount?: number;\r\n NameByLanguage?: string;\r\n UserTypeNameAr: string;\r\n UserTypeNameEn: string;\r\n UserTypeName: string;\r\n}\r\n\r\nexport interface IConsultant {\r\n ShortName: string;\r\n EmployeeName: string;\r\n EmploymentNumber: string;\r\n UserId: string;\r\n UserTypeNameAr: string;\r\n UserTypeNameEn: string;\r\n UserTypeName: string;\r\n DayWeight: number;\r\n WeekWeight: number;\r\n MonthWeight: number;\r\n ThreeMonthsWeight: number;\r\n IsLeastDayWeight: boolean;\r\n IsLeastWeek: boolean;\r\n ParticipantRelationTypeId?: number | null;\r\n ParticipantRelationType?: any | null;\r\n IsLeastMonthWeight: boolean;\r\n IsLeastThreeMonthsWeight: boolean;\r\n IsSelected: boolean;\r\n IsVisible: boolean;\r\n EntityName: string;\r\n IsSelectedAsParticipant: boolean;\r\n}\r\n","\r\nimport {throwError as observableThrowError, Observable } from 'rxjs';\r\n\r\nimport {catchError, map } from 'rxjs/operators';\r\nimport { Injectable } from \"@angular/core\";\r\nimport { HttpInterceptor } from \"../../../_common/services/http-interceptor\";\r\nimport { IGlobalSettings } from \"../../../_common/models/IGlobalSettings\";\r\nimport { AppModulesEnum } from \"../../../_common/models/AppModulesEnum\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class DetailsSidebarSvc {\r\n constructor(public http: HttpInterceptor) { }\r\n\r\n public CurrentUserSignatureRequestsCount: number = 0;\r\n public CurrentUserStampRequestsCount: number = 0;\r\n public CurrentUserSignatureMarkerRequestsCount: number = 0;\r\n public CurrentUserAprovalRequestsCount: number = 0;\r\n public CurrentStampRequestsCount: number = 0;\r\n public OtherCurrentStampRequestsCount: number = 0;\r\n public NotesCount: number = 0;\r\n\r\n public CorrespondenceIsForwarded: boolean = false;\r\n\r\n public GetCurrentUserSignatureRequestsCount(id: string, moduleId = 3): Observable {//3 is correspndences module\r\n var url = \"api/correspondence-signatures/current-user-requests-count/\";\r\n if (moduleId == AppModulesEnum.Committees)\r\n url = \"api/committees/current-user-requests-count/\";\r\n return this.http\r\n .get(\r\n BERRY.hostName +\r\n url +\r\n id\r\n )\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetCurrentUserApprovalRequestsCount(id: string): Observable {\r\n var url = \"api/correspondence-signatures/current-user-approval-requests-count/\";\r\n return this.http\r\n .get(\r\n BERRY.hostName +\r\n url +\r\n id\r\n )\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetCurrentUserSignatureMarkingRequestsCount(\r\n id: string\r\n ): Observable {\r\n return this.http\r\n .get(\r\n BERRY.hostName +\r\n \"api/correspondence-signatures/current-user-requests-marker-count/\" +\r\n id\r\n )\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n\r\n public isCurrentUserManager(): Observable {\r\n return this.http\r\n .get(\r\n BERRY.hostName + \"api/UserTypeMappingAPI/isCurrentUserManager\"\r\n )\r\n }\r\n\r\n\r\n\r\n public GetCurrentUserStampRequestsCount(id: string): Observable {\r\n return this.http\r\n .get(\r\n BERRY.hostName + \"api/stamp-requests/current-user-requests-count/\" + id\r\n )\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n\r\n\r\n public GetCorrLettersCount(id: string): Observable {\r\n return this.http\r\n .get(\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/GetCorrLettersCount?CorrespondenceId=\" +\r\n id\r\n )\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n\r\n\r\n public GetNotesCount(id: string) {\r\n \r\n return this.http\r\n .get(\r\n BERRY.hostName +\r\n \"api/committees/getNotesCount?committeId=\" +\r\n id\r\n )\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public getRelatedInitiativeFilesByCaseFileId(CaseFileId) {\r\n \r\n var procApi = BERRY.hostName + \"api/ProclamationIncidentApi/\";\r\n\r\n let url = `${procApi}GetRelatedInitiativeFilesByCaseFileId?CaseFileId=${\r\n CaseFileId\r\n }`;\r\n return this.http\r\n .get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError),);\r\n } \r\n extractData(res: any) {\r\n let body = res;\r\n return body || {};\r\n }\r\n handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n return observableThrowError(errMsg);\r\n }\r\n}\r\n","export enum QrCodeTypesEnum{\r\n QrCodeCreator= \"1\",\r\n QrCodeCC=\"0\"\r\n }","import { catchError, map, takeWhile } from 'rxjs/operators';\r\nimport { Injectable, EventEmitter, NgZone } from \"@angular/core\";\r\nimport { URLSearchParams } from \"@angular/http\";\r\nimport { Observable, Subject } from \"rxjs\";\r\nimport { HttpInterceptor } from \"../../../_common/services/http-interceptor\";\r\nimport { BaseService } from \"../../../_common/services/baseService\";\r\nimport { UserPermissionService } from \"src/app/_common/services/Permissions/user-permission-service\";\r\nimport { CorrespondenceDetailsDto } from \"../_models/CorrespondenceDetails-dto\";\r\nimport { ScheduleItemDto } from \"src/app/Scheduling/_models/ScheduleItem-Dto\";\r\nimport { CorrespondenceLightDto } from \"../_models/correspondence-dto\";\r\nimport { IParticipant } from \"./correspondence-participants/Consultants-svc\";\r\nimport { MessagingService } from \"../../../_common/services/messaging-service\";\r\nimport { ActivatedRoute } from \"@angular/router\";\r\nimport { CorrespondenceCountryDto } from '../_models/CorrespondenceCountryDto';\r\nimport { OverviewType } from '../enums/overviewType.enum';\r\nimport { generalSettingsSvc } from \"../../../berry/correspondences/manage/generalSettings/general-settings-svc\";\r\nimport { LetterTypeIdEnum } from '../../../_common/components/form-builder/components/correspondence-recipient/fb-external-recipient-as-copy';\r\nimport { QrCodeTypesEnum } from '../CorrespondenceActions/enums/QrCodeTypesEnum';\r\nimport { IGlobalSettings } from 'src/app/_common/models/IGlobalSettings';\r\nimport { OrderTypeEnum } from '../_models/order-type-enum';\r\nimport { AppModulesEnum } from '../../../_common/models/AppModulesEnum';\r\nimport { UserModuleTrackingDetailsDto } from '../../../_common/models/UserModuleTrackingDetailsDto';\r\n \r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DetailsSVC extends BaseService {\r\n\r\n public catId: number;\r\n ActionDeadlineDateForward = \"\";\r\n FollowUpSignatureAttachmentCount: number;\r\n QrCodeType = QrCodeTypesEnum;\r\n isCorrespondenceRead: boolean = false;\r\n isSubscribed: boolean = true;\r\n isDetailedPage: boolean = false;\r\n CanFinalizeSubCorrespondence: boolean = false;\r\n public onValidCorrespondenceCallback: EventEmitter = new EventEmitter();\r\n public onValidAttachmentCorrespondenceCallback: EventEmitter = new EventEmitter();\r\n\r\n public refreshCorrespondenceDeadline: EventEmitter = new EventEmitter();\r\n public onAdditionalInfoLoaded: EventEmitter = new EventEmitter();\r\n public RefreshSlideBar: EventEmitter = new EventEmitter();\r\n public isMergedWithEntity: boolean = false; // -- just for committee module \r\n public isReplySub: boolean = false;\r\n hideForwardAction: boolean = false;\r\n isBundledCorr: boolean = false;\r\n urlChanged: boolean = false;\r\n showDelivrySetting: boolean = false;\r\n public correspondenceLetterText: string = \"\";\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n public EnableIncommingFromIndividuals = false\r\n public incidentId: string = \"\";\r\n public isCorrespondenceBundled = false;\r\n public hasForward: boolean = false;\r\n public ExternalRecipentCount: number = 0;\r\n public CorrLettersCount: number = 0;\r\n private baseURL = BERRY.hostName + \"api/CorrespondenceApi\";\r\n private ConsultantURL = BERRY.hostName + \"api/Consultants\";\r\n private bundleService = BERRY.hostName + \"api/BundleAttachmentApi\";\r\n public categoryId: any = null;\r\n public baseCategoryId: any = null;\r\n correspondenceApplicationHistoryOrderType: OrderTypeEnum = OrderTypeEnum.Asc\r\n\r\n executiveOfficebaseUrl = BERRY.hostName + \"api/ExecutiveOfficeApi\";\r\n\r\n _countAttachmentsRecord: number = 0;\r\n public get CountAttachmentsRecord(): number {\r\n return this._countAttachmentsRecord;\r\n }\r\n\r\n public set CountAttachmentsRecord(count: number) {\r\n this._countAttachmentsRecord = count;\r\n }\r\n\r\n public AttachmentsCount;\r\n public AttachmentsCorrespondenceBundleLinkCount;\r\n\r\n public SettlmentCount;\r\n public ParentSettlmentCount;\r\n public setFollowUpCount;\r\n public Data: CorrespondenceDetailsDto = null;\r\n public lateTaskCount: number = 0;\r\n public DetailsTapsHandlerDto: any;\r\n\r\n public WorkFlow: any;\r\n public EnableMultiSelect: boolean;\r\n public CorrId;\r\n public recipientID;\r\n public linkedTo;\r\n public DataEdit: any = null;\r\n public CorrrespondenceId: string = null;\r\n public CorrespondenceInternalRecipients: any = null;\r\n public EntitiesAndUsers: any = null;\r\n public Users: any = null;\r\n public ViewAttachmentPermission: any = null;\r\n public RelatedData: any = null;\r\n public undoneData: any = null;\r\n public CanPrintQrCode: boolean = false;\r\n public DataDoneLoading = false;\r\n public DeliveryReportCategoriesList: any[];\r\n public DirectionsList: any = null;\r\n public zone: NgZone;\r\n public entityStatus: any;\r\n public Number;\r\n public Subject;\r\n overviewTypeId: OverviewType = OverviewType.BasicOverview;\r\n public ScheduleItem: ScheduleItemDto[] = [];\r\n public CompanyingDocument: any[] = [];\r\n public isReplyAction: boolean = false;\r\n public IsQRPrint: boolean = false;\r\n public Shelf: string = null;\r\n public ShelvingClassification: string = null;\r\n public GettingCorrespondenceInProgress = false;\r\n public IsParent: boolean = false;\r\n public ParentID = null;\r\n public ChildRecipents: Array = [];\r\n public weight: number = 0;\r\n public weightOriginal: number = 0;\r\n public CanForwardToIndividualUponFirstAction: boolean = false;\r\n public FollowUpGroupUsers = [];\r\n\r\n public canManageArchived: Boolean = true;\r\n public showAttachmentActionsArchived: Boolean = true;\r\n public canCreateSubCorrespondence: Boolean = false;\r\n public canCreateSubsequentCorrespondence: Boolean = false;\r\n public viewSubCorrespondences: Boolean = false;\r\n public canHaveSubCorrespondence: Boolean = false;\r\n public viewSubsequentCorrespondences: Boolean = false;\r\n public openCorrespondenceByOtp: Boolean = false;\r\n public lastHistoryActionId: string = null;\r\n public confirmReceiptTheOriginalCorrespondence: boolean = false;\r\n\r\n hideFollowUpCorrespondence() {\r\n return BERRY.appSettings.keys.hideFollowUpCorrespondence;\r\n }\r\n\r\n public get CurrentUserRecipient() {\r\n if (this.Data) {\r\n return this.Data.CurrentUserRecipient;\r\n }\r\n }\r\n\r\n public IsHasBeenForwarededByPresedent(correspondenceId){\r\n return this.http.get(BERRY.hostName + \"api/Consultants/IsHasBeenForwarededByPresedent?correspondenceId=\"+correspondenceId\r\n );\r\n }\r\n CanUserExportCorrespondence(corrId, isCreatingWindow = false) {\r\n let url = this.baseURL + \"/CanUserExportCorrespondence?id=\" + corrId + \"&&isCreatingWindow=\" + isCreatingWindow;\r\n return this.http.get(url);\r\n }\r\n\r\n public get IsCorrespondenceSaved() {\r\n if (this.Data) {\r\n return this.Data.Correspondence.IsSaved;\r\n }\r\n return false;\r\n }\r\n\r\n public get isMeredCorrespondence() {\r\n if (this.Data) {\r\n return this.Data.Correspondence.MergeCorrespondenceId != null;\r\n }\r\n return false;\r\n }\r\n\r\n public get AllowUserToEditInArchivedMood() {\r\n if (this.IsCorrespondenceSaved) {\r\n if (this.showAttachmentActionsArchived) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n recallRequest(correspondenceId: any): any {\r\n let url =\r\n this.baseURL +\r\n \"/RecallRequest?correspondenceId=\" + correspondenceId;\r\n return super.post(url, correspondenceId);\r\n }\r\n\r\n getDirections(corrId: string) {\r\n return super\r\n .get(\r\n this.baseURL +\r\n \"/GetCorrespondenceDirections?correspondenceId=\" + corrId\r\n )\r\n }\r\n\r\n getOverviewDirections(corrId: string) {\r\n return super\r\n .get(\r\n this.baseURL +\r\n \"/GetOverviewDirections?correspondenceId=\" + corrId\r\n )\r\n }\r\n\r\n getParticipantsRelationTypeId(): Observable {\r\n const url = BERRY.hostName + \"api/ParticipantTypeApi/List\";\r\n return super.get(url);\r\n }\r\n public GetCorrespondencesTabs(CorrespondenceId): Observable {\r\n let me = this;\r\n return super.get(\r\n me.baseURL +\r\n `/GetCorrespondencesTabs?CorrespondenceId=${CorrespondenceId}`\r\n );\r\n }\r\n\r\n public GetAttachmentsGroupsChildrenTabs(correspondenceId): Observable {\r\n let me = this;\r\n return super.get(\r\n me.baseURL +\r\n `/GetAttachmentsGroupsChildrenTabs?CorrespondenceId=${correspondenceId}`\r\n );\r\n }\r\n\r\n public GetRecommedationAttachmentCount(data: any): Observable {\r\n let me = this;\r\n return super.post(`${me.baseURL}/GetRecommedationAttachmentCount`, data);\r\n }\r\n\r\n public CompleteCorrespondence(CorrespondenceId): Observable {\r\n let url =\r\n this.baseURL +\r\n `/CompleteCorrespondence?CorrespondenceId=${CorrespondenceId}`;\r\n let params = {\r\n CorrespondenceId: CorrespondenceId\r\n };\r\n return this.http.post(url, params);\r\n }\r\n\r\n public BackCorrespondenceToInProgress(CorrespondenceId): Observable {\r\n let url =\r\n this.baseURL +\r\n `/BackCorrespondenceToInProgress?CorrespondenceId=${CorrespondenceId}`;\r\n let params = {\r\n CorrespondenceId: CorrespondenceId\r\n };\r\n\r\n return this.http.post(url, params);\r\n }\r\n\r\n getPurposeByCorrTypeId(corrTypeId) {\r\n\r\n let me = this;\r\n return super.get(\r\n me.baseURL + `/GetAllPurposesByCorrTypeId` + (corrTypeId != null ? `?corrTypeId=${corrTypeId}` : ``)\r\n );\r\n }\r\n\r\n public GetDelivaryReportState(CorrespondenceId): Observable {\r\n let me = this;\r\n return super.get(\r\n me.baseURL +\r\n `/GetDelivaryReportState?CorrespondenceId=${CorrespondenceId}`\r\n );\r\n }\r\n\r\n public GetFollowupUsers() {\r\n return super.get(BERRY.hostName + \"Common/Components/GetFollowupUsers\");\r\n }\r\n\r\n DetailsSettledCorrCmp;\r\n public reloadCorrData() {\r\n this.requestReloadCorrData.next(null);\r\n }\r\n\r\n //#region Check Permissions\r\n\r\n public canDoCreateSubCorrespondence() {\r\n return BERRY.User.Permissions.CreateSubCorrespondence;\r\n }\r\n public canDoViewSubCorrespondences() {\r\n return BERRY.User.Permissions.ViewSubCorrespondences;\r\n }\r\n public canDoCreateSubsequentCorrespondence() {\r\n return BERRY.User.Permissions.CreateSubsequentCorrespondence;\r\n }\r\n public canDoViewSubsequentCorrespondences() {\r\n return BERRY.User.Permissions.ViewSubsequentCorrespondences;\r\n }\r\n\r\n //#endregion\r\n public loaderWhileActionTaken: Subject = new Subject();\r\n public requestReloadCorrData: Subject = new Subject();\r\n public onExternalEntityChange: Subject = new Subject();\r\n public onTabStepCounterChanged: Subject = new Subject();\r\n public DataLoaded: Subject = new Subject();\r\n public onDataChanged: Subject = new Subject();\r\n public GetOverviewData: Subject = new Subject();\r\n _dataNotifierObsrvSubject: Subject = new Subject();\r\n public correspondenceActiveUsersChanged = new Subject();\r\n\r\n constructor(\r\n public http: HttpInterceptor,\r\n zone: NgZone,\r\n public userPermissionService: UserPermissionService,\r\n public readonly messagingSvc: MessagingService,\r\n private activatedRoute: ActivatedRoute,\r\n public generalSettingsSvc: generalSettingsSvc\r\n ) {\r\n super(http);\r\n this.zone = zone;\r\n\r\n var me = this;\r\n\r\n BERRY.$user.subscribe(()=>{\r\n this.loadGeneralDirections();\r\n this.loadPersonalDirections();\r\n \r\n if (BERRY.onOffFeatures.ViewSubCorrespondences == false) {\r\n me.viewSubCorrespondences = false;\r\n me.canCreateSubCorrespondence = false;\r\n } else {\r\n me.canCreateSubCorrespondence = me.canDoCreateSubCorrespondence();\r\n if (me.canDoViewSubCorrespondences()) {\r\n if (me.Data != null) {\r\n me.checkCanHaveSubCorrespondence();\r\n } else {\r\n me.onValidCorrespondenceCallback.subscribe(success => {\r\n if (success) {\r\n me.checkCanHaveSubCorrespondence();\r\n }\r\n });\r\n }\r\n } else me.viewSubCorrespondences = me.canDoViewSubCorrespondences();\r\n }\r\n if (BERRY.onOffFeatures.ViewSubsequentCorrespondences == false) {\r\n me.viewSubsequentCorrespondences = false;\r\n me.canCreateSubsequentCorrespondence = false;\r\n } else {\r\n me.canCreateSubsequentCorrespondence = me.canDoCreateSubsequentCorrespondence();\r\n me.viewSubsequentCorrespondences = me.canDoViewSubsequentCorrespondences();\r\n }\r\n })\r\n \r\n }\r\n \r\n RefereshCorrespondenceActiveUsers(trackingDetails): void {\r\n this.correspondenceActiveUsersChanged.next(trackingDetails);\r\n }\r\n\r\n public checkCanHaveSubCorrespondence() {\r\n var me = this;\r\n super\r\n .get(\r\n me.baseURL +\r\n `/CanHaveSubCorrespondence?correspondenceId=${me.Data.Correspondence.CorrespondenceID\r\n }`\r\n )\r\n .subscribe(IsSuccess => {\r\n me.viewSubCorrespondences = IsSuccess;\r\n me.canHaveSubCorrespondence = IsSuccess;\r\n });\r\n }\r\n\r\n GetCorrespondenceParentNumber(subcorrespondenceIds: string[]): Observable {\r\n return super.post(this.baseURL + \"/GetCorrespondenceParentNumber\", subcorrespondenceIds);\r\n }\r\n\r\n public getPrivateOfficePresident(): Observable {\r\n let me = this;\r\n return super.get(this.baseURL + \"/getPrivateOfficePresident\");\r\n }\r\n\r\n public GetPresident(): Observable {\r\n let me = this;\r\n return super.get(this.baseURL + \"/GetPresident\");\r\n }\r\n\r\n public isInDeliveryReportCategories() {\r\n this.generalSettingsSvc.GetValue('CorrespondencesSetting', 'CorrCategoriesDeliveryData').subscribe(item => {\r\n if (item && this.Data && this.Data.Correspondence && this.Data.Correspondence.CorrespondenceCategoryId) {\r\n this.DeliveryReportCategoriesList = item.split(\",\");\r\n this.showDelivrySetting = this.DeliveryReportCategoriesList.filter(x => x == this.Data.Correspondence.CorrespondenceCategoryId.toString()).length > 0;\r\n }\r\n });\r\n }\r\n\r\n public getCorrespondenceDeliveryCreateURL(categoryId): Observable {\r\n let me = this;\r\n return super.get(\r\n this.baseURL +\r\n \"/GetCorrespondenceDeliveryCreateURL?categoryId=\" +\r\n categoryId\r\n );\r\n }\r\n\r\n public SetArchivedStudyAsReviewed(correspondenceId, status) {\r\n let url =\r\n this.baseURL +\r\n \"/SetArchivedStudyAsReviewed?correspondenceId=\" +\r\n correspondenceId +\r\n \"&status=\" +\r\n status;\r\n\r\n let params = {\r\n correspondenceId: correspondenceId,\r\n status: status\r\n };\r\n\r\n return this.http.post(url,params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public SaveSubCorrespondenceAndCopyAttachmet(\r\n subCorrespondence: any\r\n ): Observable {\r\n let url = this.baseURL + \"/SaveSubCorrespondenceAndCopyAttachmet\";\r\n return super.post(url, subCorrespondence);\r\n }\r\n\r\n public SaveSubCorrespondenceAction(subCorrespondence: any): Observable {\r\n let url = this.baseURL + \"/SaveSubCorrespondenceAction\";\r\n return super.post(url, subCorrespondence);\r\n }\r\n\r\n public CreateSubCorrespondence(subCorrespondence: any) {\r\n let url = this.baseURL + \"/CreateSubCorrespondence\";\r\n return this.http.post(url, subCorrespondence);\r\n }\r\n\r\n public GetArchivedStudyAsReviewedStatusWithPermissions(correspondenceId) {\r\n var url =\r\n this.baseURL +\r\n \"/GetArchivedStudyAsReviewedStatusWithPermissions?correspondenceId=\" +\r\n correspondenceId;\r\n\r\n var params = {\r\n correspondenceId: correspondenceId\r\n };\r\n\r\n return super.get(url);\r\n }\r\n\r\n public LinkAttachmentsWithNewCorrespondence(Id, Ids) {\r\n let url =\r\n this.baseURL +\r\n `/LinkAttachmentsWithNewCorrespondence?Id=${Id}&Ids=${Ids}`;\r\n let params = {\r\n Id: Id,\r\n Ids: Ids\r\n };\r\n\r\n return this.http\r\n .post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n public IsCorrespondenceLinked(Id, linkType) {\r\n var url =\r\n this.baseURL +\r\n \"/IsCorrespondenceLinked?Id=\" +\r\n Id +\r\n \"&linkType=\" +\r\n linkType;\r\n return super.get(url);\r\n }\r\n\r\n public HasMemberRequest(correspondenceId) {\r\n var url = this.baseURL + \"/HasMemberRequest?Id=\" + correspondenceId;\r\n return super.get(url);\r\n }\r\n\r\n public CorrespondenceHasFinalRecord(correspondenceId) {\r\n var url =\r\n this.baseURL + \"/CorrespondenceHasFinalRecord?id=\" + correspondenceId;\r\n return super.get(url);\r\n }\r\n\r\n public getCorrespondenceState(): Observable {\r\n let me = this;\r\n return super.get(this.baseURL + \"/getCorrespondenceState?id=\" + me.CorrId);\r\n }\r\n\r\n public GetCorrespondencePrintingState(corrId): Observable {\r\n let me = this;\r\n return super.get(\r\n this.baseURL +\r\n \"/GetCorrespondencePrintingState?correspondenceId=\" + corrId\r\n );\r\n } \r\n\r\n _isLinkedDocumentsAndCountServiceCalled: boolean = false;\r\n public linkedDocumentsAndCountEvent: EventEmitter = new EventEmitter();\r\n getLinkedDocumentsAndCount() {\r\n let me = this;\r\n super.get(this.baseURL + \"/GetCorrespondenceFirstTwoLinkedDocumentsAndCount?correspondenceId=\" + me.CorrId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if(data != null){\r\n if (!!me.Data) {\r\n me.Data.linkedDocumentCount = data.LinkedDocumentCount;\r\n me.Data.LinkedDocuments = data.LinkedDocuments;\r\n me.linkedDocumentsAndCountEvent.emit(data);\r\n }\r\n }\r\n \r\n });\r\n }\r\n\r\n _isApplicationRemindersServiceCalled: boolean = false;\r\n public applicationRemindersService: EventEmitter = new EventEmitter<\r\n any\r\n >();\r\n getApplicationReminders() {\r\n let me = this;\r\n if (\r\n me.Data.IsDraft == null ||\r\n typeof me.Data.IsDraft == \"undefined\" ||\r\n me.Data.IsDraft == true\r\n ) {\r\n return;\r\n }\r\n if (this._isApplicationRemindersServiceCalled) return;\r\n this._isApplicationRemindersServiceCalled = true;\r\n if (\r\n me.Data.ActionReminder == null ||\r\n typeof me.Data.ActionReminder == \"undefined\"\r\n ) {\r\n super\r\n .get(\r\n this.baseURL +\r\n \"/GetCorrespondenceApplicationReminders?correspondenceId=\" +\r\n me.CorrId\r\n )\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.Data.ActionReminder = data;\r\n me.applicationRemindersService.emit(data);\r\n });\r\n }\r\n } \r\n public loadApplicationReminders() {\r\n var me = this;\r\n if (me.Data != null) {\r\n me.getApplicationReminders();\r\n } else {\r\n me.onValidCorrespondenceCallback\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(success => {\r\n if (success) {\r\n me.getApplicationReminders();\r\n }\r\n });\r\n }\r\n }\r\n\r\n _isGeneralDirectionsServiceCalled: boolean = false;\r\n public generalDirectionsServiceCalled: EventEmitter = new EventEmitter<\r\n any\r\n >();\r\n getGeneralDirections() {\r\n let me = this;\r\n if (\r\n me.Data.GeneralDirection == null ||\r\n typeof me.Data.GeneralDirection == \"undefined\"\r\n ) {\r\n if (me.CorrId !== undefined) {\r\n this.getCorrespondenceGeneralDirections(me.CorrId);\r\n }\r\n else {\r\n this.activatedRoute.params\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(params => {\r\n var corrId = params[\"copyId\"];\r\n this.getCorrespondenceGeneralDirections(corrId);\r\n });\r\n }\r\n }\r\n }\r\n\r\n getCorrespondenceGeneralDirections(corrId) {\r\n let me = this;\r\n super\r\n .get(\r\n this.baseURL +\r\n \"/GetCorrespondenceGeneralDirections?correspondenceId=\" + corrId\r\n )\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.Data.GeneralDirection = data;\r\n me.Data.GeneralDirectionDto = data;\r\n me.generalDirectionsServiceCalled.emit(data);\r\n });\r\n }\r\n\r\n public loadGeneralDirections() {\r\n var me = this;\r\n if (me.Data != null) {\r\n me.getGeneralDirections();\r\n } else {\r\n me.onValidCorrespondenceCallback\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(success => {\r\n if (success) {\r\n me.getGeneralDirections();\r\n }\r\n });\r\n }\r\n }\r\n\r\n public personalDirections: EventEmitter = new EventEmitter();\r\n getPersonalDirections() {\r\n let me = this;\r\n if (\r\n me.Data.MyPersonalDirections == null ||\r\n typeof me.Data.MyPersonalDirections == \"undefined\"\r\n ) {\r\n if (me.CorrId !== undefined) {\r\n this.getCorrespondencePersonalDirections(me.CorrId);\r\n }\r\n else {\r\n this.activatedRoute.params\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(params => {\r\n var corrId = params[\"copyId\"];\r\n this.getCorrespondencePersonalDirections(corrId);\r\n });\r\n }\r\n }\r\n }\r\n\r\n getCorrespondencePersonalDirections(corrId) {\r\n let me = this;\r\n super\r\n .get(\r\n this.baseURL +\r\n \"/GetCorrespondencePersonalDirections?correspondenceId=\" + corrId\r\n )\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.Data.MyPersonalDirections = data;\r\n me.personalDirections.emit(data);\r\n });\r\n }\r\n\r\n public loadPersonalDirections() {\r\n var me = this;\r\n if (me.Data != null) {\r\n me.getPersonalDirections();\r\n } else {\r\n me.onValidCorrespondenceCallback\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(success => {\r\n if (success) {\r\n me.getPersonalDirections();\r\n }\r\n });\r\n }\r\n }\r\n\r\n _isActionCcRecipientsServiceCalled: boolean = false;\r\n public actionCcRecipients: EventEmitter = new EventEmitter();\r\n getActionCcRecipients() {\r\n let me = this;\r\n if (\r\n me.Data.IsDraft == null ||\r\n typeof me.Data.IsDraft == \"undefined\" ||\r\n me.Data.IsDraft == true\r\n ) {\r\n return;\r\n }\r\n if (this._isActionCcRecipientsServiceCalled) return;\r\n this._isActionCcRecipientsServiceCalled = true;\r\n if (\r\n me.Data.ActionCcRecipients == null ||\r\n typeof me.Data.ActionCcRecipients == \"undefined\"\r\n ) {\r\n super\r\n .get(\r\n this.baseURL +\r\n \"/GetCorrespondenceActionCcRecipients?correspondenceId=\" +\r\n me.CorrId\r\n )\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.Data.ActionCcRecipients = data;\r\n me.actionCcRecipients.emit(data);\r\n });\r\n }\r\n }\r\n public loadActionCcRecipients() {\r\n var me = this;\r\n if (me.Data != null) {\r\n me.getActionCcRecipients();\r\n } else {\r\n me.onValidCorrespondenceCallback\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(success => {\r\n if (success) {\r\n me.getActionCcRecipients();\r\n }\r\n });\r\n }\r\n }\r\n\r\n _isExternalRecipientsServiceCalled: boolean = false;\r\n public externalRecipients: EventEmitter = new EventEmitter();\r\n getExternalRecipients() {\r\n let me = this;\r\n if (this._isExternalRecipientsServiceCalled) return;\r\n this._isExternalRecipientsServiceCalled = true;\r\n if (\r\n me.Data.ExternalRecipients == null ||\r\n typeof me.Data.ExternalRecipients == \"undefined\" || me.Data.ExternalRecipients.length === 0\r\n ) {\r\n super\r\n .get(\r\n this.baseURL +\r\n \"/GetCorrespondenceExternalRecipients?correspondenceId=\" +\r\n me.CorrId\r\n )\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.Data.ExternalRecipients = data;\r\n me.externalRecipients.emit(data);\r\n });\r\n }\r\n }\r\n public loadExternalRecipients() {\r\n var me = this;\r\n if (me.Data != null) {\r\n me.getExternalRecipients();\r\n } else {\r\n me.onValidCorrespondenceCallback\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(success => {\r\n if (success) {\r\n me.getExternalRecipients();\r\n }\r\n });\r\n }\r\n }\r\n\r\n _isSaveActionServiceCalled: boolean = false;\r\n public saveActionLoadEvent: EventEmitter = new EventEmitter();\r\n getSaveAction() {\r\n let me = this;\r\n if (this._isSaveActionServiceCalled) return;\r\n this._isSaveActionServiceCalled = true;\r\n if (\r\n me.Data.SaveAction == null ||\r\n typeof me.Data.SaveAction == \"undefined\"\r\n ) {\r\n super\r\n .get(\r\n this.baseURL +\r\n \"/GetCorrespondenceSaveActionDto?correspondenceId=\" +\r\n me.CorrId\r\n )\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.Data.SaveAction = data;\r\n me.saveActionLoadEvent.emit(data);\r\n });\r\n }\r\n }\r\n public loadSaveAction() {\r\n var me = this;\r\n if (me.Data != null) {\r\n me.getSaveAction();\r\n } else {\r\n me.onValidCorrespondenceCallback\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(success => {\r\n if (success) {\r\n me.getSaveAction();\r\n }\r\n });\r\n }\r\n }\r\n\r\n _isLinkTypesServiceCalled: boolean = false;\r\n public linkTypesLoadEvent: EventEmitter = new EventEmitter();\r\n getLinkTypes() {\r\n let me = this;\r\n if (this._isLinkTypesServiceCalled) return;\r\n this._isLinkTypesServiceCalled = true;\r\n if (me.Data.LinkTypes == null || typeof me.Data.LinkTypes == \"undefined\") {\r\n super\r\n .get(\r\n this.baseURL +\r\n \"/GetCorrespondenceLinkTypes?correspondenceId=\" +\r\n me.CorrId\r\n )\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.Data.LinkTypes = data;\r\n me.linkTypesLoadEvent.emit(data);\r\n });\r\n }\r\n }\r\n public loadLinkTypes() {\r\n var me = this;\r\n if (me.Data != null) {\r\n me.getLinkTypes();\r\n } else {\r\n me.onValidCorrespondenceCallback\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(success => {\r\n if (success) {\r\n me.getLinkTypes();\r\n }\r\n });\r\n }\r\n }\r\n\r\n _isRelatedCorrespondencesServiceCalled: boolean = false;\r\n public relatedCorrespondencesLoadEvent: EventEmitter = new EventEmitter();\r\n getRelatedStudyCorrespondences() {\r\n let me = this;\r\n me._isRelatedCorrespondencesServiceCalled = true;\r\n super.get(\r\n this.baseURL + \"/GetCorrespondenceRelatedCorrespondences?correspondenceId=\" + me.CorrId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data) {\r\n if (!!me.Data) {\r\n me.Data.RelatedStudyMainCorrespondence = data.RelatedStudyMainCorrespondence;\r\n me.Data.RelatedStudyCorrespondences = data.RelatedStudyCorrespondences;\r\n me.relatedCorrespondencesLoadEvent.emit(data);\r\n }\r\n } \r\n });\r\n }\r\n\r\n getRelatedCorrespondences() {\r\n const me = this;\r\n var linkedTo;\r\n this.activatedRoute.queryParams.subscribe(params => {\r\n linkedTo = params['linkedTo']\r\n })\r\n return super.get(this.baseURL + \"/GetRelatedCorrespondence?id=\" + me.CorrId + \"&targetModuleId=\" + 1 + \"&linkedTo=\" + linkedTo)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data) {\r\n if (!!me.Data) {\r\n me.Data.RelatedCorrespondences = data;\r\n }\r\n } \r\n });\r\n }\r\n\r\n\r\n _isScheduleItemsServiceCalled: boolean = false;\r\n scheduleItemsLoadEvent: EventEmitter = new EventEmitter();\r\n getScheduleItems() {\r\n let me = this;\r\n if (this._isScheduleItemsServiceCalled) return;\r\n this._isScheduleItemsServiceCalled = true;\r\n if (\r\n me.Data.ScheduleItems == null ||\r\n typeof me.Data.ScheduleItems == \"undefined\"\r\n ) {\r\n super\r\n .get(\r\n this.baseURL +\r\n \"/GetCorrespondenceScheduleItems?correspondenceId=\" +\r\n me.CorrId\r\n )\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.Data.ScheduleItems = data;\r\n me.scheduleItemsLoadEvent.emit(data);\r\n });\r\n }\r\n }\r\n public loadScheduleItems() {\r\n var me = this;\r\n if (me.Data) {\r\n me.getScheduleItems();\r\n } else {\r\n me.onValidCorrespondenceCallback\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(success => {\r\n if (success) {\r\n me.getScheduleItems();\r\n }\r\n });\r\n }\r\n }\r\n\r\n public resetAttachmentLoad() {\r\n var me = this;\r\n if (me.Data != null) {\r\n this._isNonDeletedLatestAttachmentsServiceCalled = false;\r\n this.Data.Attachments = [];\r\n }\r\n else {\r\n me.onValidCorrespondenceCallback\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(success => {\r\n if (success) {\r\n this._isNonDeletedLatestAttachmentsServiceCalled = false;\r\n this.Data.Attachments = [];\r\n }\r\n });\r\n }\r\n }\r\n _isNonDeletedLatestAttachmentsServiceCalled: boolean = false;\r\n public nonDeletedLatestAttachmentsLoadEvent: EventEmitter = new EventEmitter();\r\n getNonDeletedLatestAttachments() {\r\n let me = this;\r\n if (this._isNonDeletedLatestAttachmentsServiceCalled) return;\r\n this._isNonDeletedLatestAttachmentsServiceCalled = true;\r\n if (me.Data.Attachments) {\r\n me.loadAttachments(me.CorrId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.Data.Attachments = data;\r\n me.Data.OriginalAttachments = data;\r\n me.nonDeletedLatestAttachmentsLoadEvent.emit(data);\r\n });\r\n }\r\n }\r\n public loadNonDeletedLatestAttachments() {\r\n var me = this;\r\n if (me.Data != null) {\r\n me.getNonDeletedLatestAttachments();\r\n } else {\r\n me.onValidCorrespondenceCallback\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(success => {\r\n if (success) {\r\n me.getNonDeletedLatestAttachments();\r\n }\r\n });\r\n }\r\n }\r\n public loadRecomendationAttachments(corrId: string) {\r\n const me = this;\r\n return super\r\n .get(\r\n this.baseURL +\r\n \"/LoadRecomendationAttachments?correspondenceId=\" +\r\n corrId\r\n )\r\n .pipe(takeWhile(() => me.isSubscribed));\r\n }\r\n\r\n public refreshAttachments() {\r\n const me = this;\r\n if (me.Data)\r\n me.loadAttachments(me.CorrId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.Data.Attachments = data;\r\n me.nonDeletedLatestAttachmentsLoadEvent.emit(data);\r\n me.Data.OriginalAttachments = data;\r\n });\r\n }\r\n\r\n canStatementCorrespondence(correspondenceID) {\r\n const me = this;\r\n return this.http.post(BERRY.hostName + \"api/CorrespondenceApi/CanStatementCorrespondence?correspondenceID=\" + correspondenceID, {\r\n correspondenceID: correspondenceID\r\n })\r\n .pipe(takeWhile(() => me.isSubscribed), map(me.extractStringData));\r\n }\r\n public loadAttachments(corespondenceId: string) {\r\n const me = this;\r\n return super\r\n .get(\r\n this.baseURL +\r\n \"/GetCorrespondenceNonDeletedLatestAttachments?correspondenceId=\" + corespondenceId\r\n )\r\n .pipe(takeWhile(() => me.isSubscribed), map(me.extractStringData));\r\n }\r\n\r\n private extractStringData(res: any) {\r\n let body = res;\r\n return body || {};\r\n }\r\n\r\n canCreateSequentCorrespondence(corrId, linkedCorrId) {\r\n var url = this.baseURL + \"/CanCreateSequentCorrespondence?corrId=\" + corrId + \"&linkedCorrId=\" + linkedCorrId;\r\n let params = {\r\n corrId: corrId,\r\n linkedCorrId: linkedCorrId\r\n }\r\n return this.http.post(url, params);\r\n }\r\n public Follow(correspondenceId) {\r\n var url = this.baseURL + \"/Followup?id=\" + correspondenceId;\r\n\r\n return super.post(url, correspondenceId);\r\n }\r\n\r\n public AssignFollow(correspondenceId) {\r\n var url = this.baseURL + \"/AssignFollowup?id=\" + correspondenceId;\r\n\r\n return super.post(url, correspondenceId);\r\n }\r\n\r\n public IsInReminderInbox(correspondenceId): Observable {\r\n var url =\r\n this.baseURL + \"/IsInReminderInbox?CorrespondenceId=\" + correspondenceId;\r\n\r\n return this.http.get(url);\r\n }\r\n public getFollower(correspondenceId) {\r\n var url = this.baseURL + \"/getFollower?id=\" + correspondenceId;\r\n\r\n return super.get(url);\r\n }\r\n\r\n public getForwardConfirmationInfo(correspondenceId) {\r\n var url =\r\n this.baseURL + \"/getForwardConfirmationInfo?id=\" + correspondenceId;\r\n return super.get(url);\r\n }\r\n\r\n public SaveHeaderApp(dto) {\r\n var url =\r\n BERRY.hostName + \"Correspondences/Applications/SaveHeaderApp/\" + dto;\r\n\r\n return super.post(url, dto);\r\n }\r\n\r\n public SaveDetailApp(dto) {\r\n if (!dto.CorrespondenceCountries)\r\n dto.CorrespondenceCountries = new Array();\r\n if (dto.SelectedReceivingMode && !Number.isInteger(dto.SelectedReceivingMode))\r\n dto.SelectedReceivingMode = +dto.SelectedReceivingMode;\r\n var url =\r\n BERRY.hostName + \"Correspondences/Applications/SaveCorrespondence\";\r\n return super.post(url, dto);\r\n }\r\n\r\n getCorrespondanceDetailsEdit(\r\n id: string\r\n ): Observable {\r\n return super.get(this.baseURL + \"/EditAppDetails?id=\" + id);\r\n }\r\n loadUrgenciesAndConfidentialities() {\r\n return super.get(this.baseURL + \"/LoadUrgenciesAndConfidentialities\");\r\n }\r\n\r\n MultiSelectAndSave(CorrespondencesIds): Observable {\r\n return super.post(this.baseURL + \"/MultiSelectAndSave\", CorrespondencesIds);\r\n }\r\n copyCorrespondence(\r\n categoryId,\r\n corrId,\r\n isForSettledSearchByYearAndCorrNumber: boolean = false\r\n ) {\r\n let me = this;\r\n return super.get(\r\n me.baseURL +\r\n \"/CopyCorrespondence?categoryId=\" +\r\n categoryId +\r\n \"&corrId=\" +\r\n corrId +\r\n \"&isForSettledSearchByYearAndCorrNumber=\" +\r\n isForSettledSearchByYearAndCorrNumber\r\n );\r\n }\r\n getCorrespondanceEditModel(id: string, isEditMode: boolean = true) {\r\n let me = this;\r\n me.GettingCorrespondenceInProgress = true;\r\n if (isEditMode) {\r\n return super.get(me.baseURL + \"/GetSettedCorrespondenceById?id=\" + id);\r\n }\r\n else {\r\n return super.get(me.baseURL + \"/GetCorrespondenceToModifiClassification?id=\" + id);\r\n }\r\n }\r\n getCorrespondanceTitle(id: string) {\r\n let me = this;\r\n return super.get(me.baseURL + \"/GetCorrespondanceTitle?id=\" + id);\r\n }\r\n GetSettedCorrespondenceById(id: string) {\r\n let me = this;\r\n me.GettingCorrespondenceInProgress = true;\r\n return super.get(me.baseURL + \"/GetSettedCorrespondenceById?id=\" + id);\r\n }\r\n\r\n getCorrForSettlement(id: string) {\r\n let me = this;\r\n return super.get(\r\n `${BERRY.hostName\r\n }Correspondences/NewApp/GetSelectedAppForSettlement?id=${id}`\r\n );\r\n }\r\n\r\n isCorrespondenceReadByRecipient(correspondenceId): Observable {\r\n let url =\r\n this.baseURL +\r\n \"/IsCorrespondenceReadByRecipient?correspondenceId=\" +\r\n correspondenceId;\r\n return this.http.get(url);\r\n }\r\n\r\n updateDirections(dto) {\r\n let url =\r\n this.baseURL +\r\n \"/UpdateDirections\";\r\n return super.post(url, dto);\r\n }\r\n\r\n\r\n getRelatedScheduleItemInfo(corrId) {\r\n let url =\r\n this.baseURL +\r\n \"/GetRelatedScheduleItemInfo?correspondenceId=\" +\r\n corrId;\r\n return super.get(url);\r\n }\r\n\r\n\r\n public getCorrAdditionalDetailsInfo(corrId: string) {\r\n var me = this;\r\n me.http\r\n .get(BERRY.hostName + \"api/corr-additional-details/get-info/\" + corrId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(additionalData => {\r\n let additionalDataResult = additionalData;\r\n me.Data.isMonitoredInfo = additionalDataResult.isMonitoredInfo;\r\n me.Data.IsCaseFile = additionalDataResult.IsCaseFile;\r\n me.Data.Proclamation = additionalDataResult.Proclamation;\r\n me.Data.IsCaseFile = additionalDataResult.IsCaseFile;\r\n me.Data.CaseFile = additionalDataResult.CaseFile;\r\n me.Data.Correspondence.IsLate = additionalDataResult.IsLate;\r\n me.Data.Correspondence.BundledCorrespondenceCount = additionalDataResult.BundledCorrespondenceCount;\r\n me.Data.Correspondence.RelatedCorrespondencesCount = additionalDataResult.RelatedCorrespondencesCount;\r\n me.Data.Correspondence.LinkedCorrespondencesCount = additionalDataResult.LinkedCorrespondencesCount;\r\n me.Data.Correspondence.LinkedProclamationCount = additionalDataResult.LinkedProclamationCount;\r\n me.Data.Correspondence.LinkedInitiativeFileCount = additionalDataResult.LinkedInitiativeFileCount;\r\n me.Data.Correspondence.ArchiveCorrsCount = additionalDataResult.ArchiveCorrsCount;\r\n me.Data.Correspondence.ParentArchiveCorrsCount = additionalDataResult.ParentArchiveCorrsCount;\r\n me.Data.Correspondence.ParentLinkedCorrespondencesCount = additionalDataResult.ParentLinkedCorrespondencesCount;\r\n me.Data.Correspondence.ParentRelatedCorrespondencesCount = additionalDataResult.ParentRelatedCorrespondencesCount;\r\n me.Data.Correspondence.MainAndSubArchiveCorrsCount = additionalDataResult.ParentArchiveCorrsCount + additionalDataResult.ArchiveCorrsCount;\r\n me.Data.Correspondence.MainAndSubLinkedCorrespondencesCount = additionalDataResult.ParentLinkedCorrespondencesCount + additionalDataResult.LinkedCorrespondencesCount;\r\n me.Data.Correspondence.MainAndSubRelatedCorrespondencesCount = additionalDataResult.ParentRelatedCorrespondencesCount + additionalDataResult.RelatedCorrespondencesCount;\r\n me.Data.Correspondence.SubCorrespondencesCount = additionalDataResult.SubcorrespondencesCount;\r\n me.Data.Correspondence.IntimationCorrespondenceCount = additionalDataResult.IntimationCorrespondenceCount;\r\n me.Data.Correspondence.StatementCorrespondenceCount = additionalDataResult.StatementCorrespondenceCount;\r\n me.Data.Correspondence.SubsequentcorrespondencesCount = additionalDataResult.SubsequentcorrespondencesCount;\r\n me.Data.Correspondence.SubCorrespondenceParentId = additionalDataResult.SubCorrespondenceParentId;\r\n me.Data.Correspondence.SubCorrespondenceCategoryId = additionalDataResult.SubCorrespondenceCategoryId;\r\n me.Data.Correspondence.isReplySubCorrespondenceForFinalize = additionalDataResult.isReplySubCorrespondenceForFinalize;\r\n me.Data.Correspondence.MergeCorrespondenceDate = additionalDataResult.MergeCorrespondenceDate;\r\n me.Data.Correspondence.IsSequentCorrespondence = additionalDataResult.IsSequentCorrespondence;\r\n me.Data.Correspondence.MergeCorrespondenceId = additionalDataResult.MergeCorrespondenceId;\r\n me.Data.Correspondence.SequentCorrespondenceID = additionalDataResult.SequentCorrespondenceID;\r\n me.Data.Correspondence.SequentCorrespondenceNumber = additionalDataResult.SequentCorrespondenceNumber;\r\n me.Data.Correspondence.MergeCorrespondenceNumber = additionalDataResult.MergeCorrespondenceNumber;\r\n me.Data.Correspondence.MergedCorrespondencesCount = additionalDataResult.MergedCorrespondencesCount;\r\n me.Data.Correspondence.ParentCorrespondenceCategoryId = additionalDataResult.ParentCorrespondenceCategoryId;\r\n me.Data.Correspondence.ParentCorrespondenceTypeId = additionalDataResult.ParentCorrespondenceTypeId;\r\n me.Data.Correspondence.InitiatorExternalEntityId = additionalDataResult.InitiatorExternalEntityId;\r\n me.Data.Correspondence.InitiatorExternalEntityName = additionalDataResult.InitiatorExternalEntityName;\r\n me.Data.Correspondence.AdditionalUnattached = additionalDataResult.AdditionalUnattached;\r\n me.Data.Correspondence.IsAutoGenerateCorrespondenceDeadLine = additionalDataResult.IsAutoGenerateCorrespondenceDeadLine;\r\n me.Data.AccompanyingDocumentLinks = additionalDataResult.AccompanyingDocumentLinks;\r\n if (me.Data.Correspondence.SubCorrespondenceParentId != null && me.Data.Correspondence.SubCorrespondenceParentId != undefined) {\r\n me.setParentSettlementCount(me.Data.Correspondence.SubCorrespondenceParentId);\r\n }\r\n me.Data.Correspondence.PresentationMemosCount = additionalDataResult.PresentationMemosCount;\r\n me.Data.Correspondence.IntimationNumber = additionalDataResult.IntimationNumber;\r\n me.Data.Correspondence.IntimationDateFormatted = additionalDataResult.IntimationDateFormatted;\r\n });\r\n }\r\n getcorrespondenceForCopy(id: string, recipientID: string): Subject {\r\n let me = this;\r\n me.hasForward = false;\r\n me.GettingCorrespondenceInProgress = true;\r\n var linkedToPram = \"\";\r\n linkedToPram = me.linkedTo ? \"&linkedTo=\" + me.linkedTo : \"\";\r\n let isRecipientIdNumber = !isNaN(Number(recipientID));\r\n recipientID = recipientID && !isRecipientIdNumber ? recipientID : \"\";\r\n const url = BERRY.hostName + \"api/CorrespondenceDetailsOverviewApi\" + \"/GetCorrespondenceDetailsForWeb?id=\" + id + \"&recipientID=\" + recipientID + linkedToPram;\r\n this.http.get(url).pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n data => {\r\n me.GettingCorrespondenceInProgress = false;\r\n me.Data = data;\r\n if (me.Data) {\r\n me.getApplicationActions(id)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(r => {\r\n me.Data.ApplicationActions = r;\r\n });\r\n me.fillDataFromCorrespondence();\r\n me.ChildRecipents = JSON.parse(me.Data?.Correspondence?.ChildRecipentsCached ?? \"[]\");\r\n me.weight = me.Data.Correspondence.Weight;\r\n me.weightOriginal = me.weight;\r\n me._dataNotifierObsrvSubject.next(data);\r\n me.DataLoaded.next(me.Data);\r\n me.DataDoneLoading = true;\r\n me.IsParent = me.Data.Correspondence.IsParent;\r\n me.Data.Correspondence.IsSubCorrespondence = !!me.Data.Correspondence.SubcorrespondenceIds && me.Data.Correspondence.SubcorrespondenceIds.length > 0;\r\n me.onDataChanged.next(null);\r\n me.Data.OriginalAttachments = me.Data.Attachments;\r\n me.onValidCorrespondenceCallback.next(true);\r\n } else {\r\n me.GettingCorrespondenceInProgress = false;\r\n me.DataLoaded.next(null);\r\n me.onValidCorrespondenceCallback.next(false);\r\n }\r\n },\r\n fail => {\r\n me._dataNotifierObsrvSubject.next(null);\r\n me.GettingCorrespondenceInProgress = false;\r\n me.DataLoaded.next(null);\r\n me.onValidCorrespondenceCallback.next(false);\r\n }\r\n );\r\n me.getCorrAdditionalDetailsInfo(id);\r\n return me.DataLoaded;\r\n }\r\n\r\n getCanPrintQrCode() {\r\n return this.generalSettingsSvc.GetValue('CorrespondencesSetting', 'QrCodeType').pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(data => {\r\n if (data == this.QrCodeType.QrCodeCreator) {\r\n if (BERRY.User.UserId == this.Data?.Correspondence.CreatedByUserID) this.CanPrintQrCode = true;\r\n else this.CanPrintQrCode = false;\r\n }\r\n else\r\n this.CanPrintQrCode = BERRY.User.Permissions.PrintQrCode;\r\n\r\n if(!this.isDetailedPage){\r\n this.CanPrintQrCode = BERRY.User.Permissions.PrintQrCode;\r\n }\r\n });\r\n }\r\n getCorrespondance(id: string, recipientID: string): Subject {\r\n let me = this;\r\n me.GettingCorrespondenceInProgress = true;\r\n let isRecipientIdNumber = !isNaN(Number(recipientID));\r\n var paramCanBeNull = recipientID && !isRecipientIdNumber ? \"&recipientID=\" + recipientID : \"\";\r\n paramCanBeNull = paramCanBeNull + (me.linkedTo ? \"&linkedTo=\" + me.linkedTo : \"\");\r\n var isOtpEnable = BERRY.onOffFeatures.ProtectConfidentialCorrespondence &&\r\n this.openCorrespondenceByOtp ? \"&Otp=\" + this.openCorrespondenceByOtp : \"\";\r\n const url = BERRY.hostName + \"api/CorrespondenceDetailsOverviewApi\" + \"/GetCorrespondenceDetailsForWeb?id=\" + id + paramCanBeNull + isOtpEnable;\r\n this.http.get(url).pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n data => {\r\n me.GettingCorrespondenceInProgress = false;\r\n me.Data = data;\r\n if (me.Data) {\r\n me.getApplicationActions(id).pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(r => {\r\n me.Data.ApplicationActions = r;\r\n this.confirmReceiptTheOriginalCorrespondence = r.HasTheOriginalBeenReceived;\r\n });\r\n me.refreshCorrespondenceDeadline.next(true); \r\n me.nonDeletedLatestAttachmentsLoadEvent.next(true);\r\n me.fillDataFromCorrespondence();\r\n if (me.Data.Correspondence.ChildRecipentsCached) {\r\n me.ChildRecipents = JSON.parse(me.Data?.Correspondence?.ChildRecipentsCached ?? \"[]\");\r\n }\r\n\r\n if (me.Data.Correspondence.CorrespondenceExternalRecipients)\r\n me.ExternalRecipentCount = me.Data.Correspondence.CorrespondenceExternalRecipients.filter((item, i, arr) =>\r\n arr.findIndex(t => t.ExternalContactID === item.ExternalContactID) === i).length;\r\n\r\n me.weight = me.Data.Correspondence.Weight;\r\n me.weightOriginal = me.weight;\r\n me.getCanPrintQrCode();\r\n me.Data.BorrowedByUserId = me.Data.Correspondence.BorrowedByUserId;\r\n me._dataNotifierObsrvSubject.next(data);\r\n me.DataLoaded.next(me.Data);\r\n me.DataDoneLoading = true;\r\n me.IsParent = me.Data.Correspondence.IsParent;\r\n me.Data.Correspondence.IsSubCorrespondence = !!me.Data.Correspondence.SubcorrespondenceIds && me.Data.Correspondence.SubcorrespondenceIds.length > 0;\r\n me.getCorrAdditionalDetailsInfo(id);\r\n me.onValidCorrespondenceCallback.next(true);\r\n me.onDataChanged.next(null);\r\n me.fillcorrespondenceParticipants();\r\n //me.getRelatedCorrespondences(); /*@Performance team: No Need to call this here , it should be called only when needed..*/\r\n me.GetOverviewData.next(null);\r\n this.overviewTypeId = me.Data.OverviewTypeId;\r\n me.messagingSvc.publish(\"DetailsAPICompleted\");\r\n } else {\r\n me.GettingCorrespondenceInProgress = false;\r\n me.DataLoaded.next(null);\r\n me.onValidCorrespondenceCallback.next(false);\r\n }\r\n },\r\n fail => {\r\n me._dataNotifierObsrvSubject.next(null);\r\n me.GettingCorrespondenceInProgress = false;\r\n me.DataLoaded.next(null);\r\n me.onValidCorrespondenceCallback.next(false);\r\n }\r\n );\r\n me.setSettlementCount();\r\n if (me.hideFollowUpCorrespondence() && BERRY.onOffFeatures.assign_Followup)\r\n me.SetFollowUpCount();\r\n return me.DataLoaded;\r\n }\r\n\r\n\r\n\r\n getCorrespondanceLight(id: string, recipientID: string): Subject {\r\n let me = this;\r\n me.hasForward = false;\r\n me.GettingCorrespondenceInProgress = true;\r\n var linkedToPram = \"\";\r\n linkedToPram = me.linkedTo ? \"&linkedTo=\" + me.linkedTo : \"\";\r\n let isRecipientIdNumber = !isNaN(Number(recipientID));\r\n recipientID = recipientID && !isRecipientIdNumber ? recipientID : \"\";\r\n const url = BERRY.hostName + \"api/CorrespondenceDetailsOverviewApi\" + \"/GetCorrespondenceDetailsForWeb?id=\" + id + \"&recipientID=\" + recipientID + linkedToPram;\r\n this.http.get(url)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n data => {\r\n me.GettingCorrespondenceInProgress = false;\r\n me.Data = data;\r\n if (me.Data) {\r\n me.getApplicationActions(id)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(r => {\r\n me.Data.ApplicationActions = r;\r\n this.confirmReceiptTheOriginalCorrespondence = r.HasTheOriginalBeenReceived;\r\n });\r\n me.fillDataFromCorrespondence();\r\n me.ChildRecipents = JSON.parse(me.Data?.Correspondence?.ChildRecipentsCached ?? \"[]\");\r\n me.weight = me.Data.Correspondence.Weight;\r\n me.weightOriginal = me.weight;\r\n me._dataNotifierObsrvSubject.next(data);\r\n me.DataLoaded.next(me.Data);\r\n me.DataDoneLoading = true;\r\n me.IsParent = me.Data.Correspondence.IsParent;\r\n me.Data.Correspondence.IsSubCorrespondence = !!me.Data.Correspondence.SubcorrespondenceIds && me.Data.Correspondence.SubcorrespondenceIds.length > 0;\r\n if (me.hideFollowUpCorrespondence() && BERRY.onOffFeatures.assign_Followup)\r\n me.SetFollowUpCount();\r\n me.Data.OriginalAttachments = me.Data.Attachments;\r\n me.onValidCorrespondenceCallback.next(true);\r\n me.onDataChanged.next(null);\r\n me.GetOverviewData.next(null);\r\n } else {\r\n me.GettingCorrespondenceInProgress = false;\r\n me.DataLoaded.next(null);\r\n me.onValidCorrespondenceCallback.next(false);\r\n }\r\n },\r\n fail => {\r\n me._dataNotifierObsrvSubject.next(null);\r\n me.GettingCorrespondenceInProgress = false;\r\n me.DataLoaded.next(null);\r\n me.onValidCorrespondenceCallback.next(false);\r\n }\r\n );\r\n return me.DataLoaded;\r\n }\r\n\r\n get getBerry(): IGlobalSettings {\r\n return BERRY;\r\n }\r\n\r\n getText(key, set, lang?: string) {\r\n return this.getBerry.getText(key, set, lang);\r\n }\r\n\r\n fillDataFromCorrespondence() {\r\n //old\r\n\r\n //new\r\n this.Data.ExternalRecipients = this.Data.Correspondence.CorrespondenceExternalRecipients != null && this.Data.Correspondence.CorrespondenceExternalRecipients.length > 0 ? this.Data.Correspondence.CorrespondenceExternalRecipients.filter(x => x.LetterTypeId != LetterTypeIdEnum.Original) : [];\r\n this.Data.Shelf = (this.Data.Correspondence).Shelf;\r\n this.Data.ShelvingClassification = (this.Data.Correspondence).ShelvingClassification;\r\n\r\n this.CalculatedOwnerShip();\r\n\r\n\r\n\r\n\r\n\r\n }\r\n\r\n CalculatedOwnerShip() {\r\n if (BERRY.onOffFeatures.correspondence_Ownership && !this.Data.IsDraft) {\r\n var ownershipConfirmMessage = this.getText(\"Theofficialchangeeliminatesall\", \"CSHTML/Areas/Correspondences/ApplicationsTabs/_SecurityConfidentialityAndImportance\");\r\n\r\n if (this.Data.IsOwner == true)\r\n ownershipConfirmMessage += \". \\n\\n\" + this.getText(\"Afterconfirmationyouwillnot\", \"CSHTML/Areas/Correspondences/ApplicationsTabs/_SecurityConfidentialityAndImportance\");\r\n\r\n ownershipConfirmMessage += \". \\n\\n\" + this.getText(\"areyousure\", \"CSHTML/Areas/Correspondences/ApplicationsTabs/_SecurityConfidentialityAndImportance\");\r\n\r\n var ownershipWarningMessage = this.getText(\"Theofficialchangeeliminatesall\", \"CSHTML/Areas/Correspondences/ApplicationsTabs/_SecurityConfidentialityAndImportance\");\r\n\r\n if (this.Data.IsOwner == true)\r\n ownershipWarningMessage += \". \\n\\n\" + this.getText(\"Afterconfirmationyouwillnot\", \"CSHTML/Areas/Correspondences/ApplicationsTabs/_SecurityConfidentialityAndImportance\");\r\n\r\n this.Data.CalculatedOwnerShip =\r\n {\r\n ConfirmMessage: ownershipConfirmMessage,\r\n WarningMessage: ownershipWarningMessage\r\n }\r\n }\r\n }\r\n\r\n fillcorrespondenceParticipants() {\r\n if (BERRY.onOffFeatures.boeNewCorrespondences) {\r\n const me = this;\r\n const corrId = me.CorrrespondenceId;\r\n //Get المستشارين المسؤولين\r\n me.getCorrespondenceParticipants(corrId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(x => {\r\n const data = ((x) as any) as IParticipant[];\r\n me.Data.Participants = data;\r\n me.Data.participantsOriginal = [...x];\r\n });\r\n } else {\r\n this.Data.Participants = [];\r\n this.Data.participantsOriginal = [];\r\n }\r\n }\r\n\r\n private getCorrespondenceParticipants(CorrespondenceId: string) {\r\n return super.get(\r\n BERRY.hostName +\r\n \"api/Consultants/CorrespondenceParticipants/\" +\r\n CorrespondenceId\r\n )\r\n }\r\n setRecommendationCount() {\r\n const me = this;\r\n if (me.Data && me.Data.OriginalAttachments) {\r\n me.Data.OriginalAttachmentsCounts = [];\r\n me.Data.OriginalAttachmentsCounts = me.Data.OriginalAttachments;\r\n }\r\n }\r\n\r\n getApplicationActions(id) {\r\n const me = this;\r\n return super.get(this.baseURL + \"/GetApplicationActions?id=\" + id);\r\n }\r\n\r\n setSettlementCount() {\r\n let me = this;\r\n me.getSettlmentsCount(me.CorrId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n let settlmentCount = data;\r\n if (settlmentCount) me.SettlmentCount = settlmentCount;\r\n else me.SettlmentCount = 0;\r\n });\r\n }\r\n\r\n setParentSettlementCount(id) {\r\n let me = this;\r\n me.getSettlmentsCount(id)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n let settlmentCount = data;\r\n if (settlmentCount) me.ParentSettlmentCount = settlmentCount;\r\n else me.ParentSettlmentCount = 0;\r\n\r\n me.Data.Correspondence.MainAndSubSettlmentCount = me.ParentSettlmentCount + me.SettlmentCount;\r\n });\r\n }\r\n\r\n SetFollowUpCount() {\r\n let me = this;\r\n me.getFollowUpCount(me.CorrId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n let setFollowUpCount = data;\r\n if (setFollowUpCount) me.setFollowUpCount = setFollowUpCount;\r\n else me.setFollowUpCount = 0;\r\n });\r\n }\r\n\r\n ValidateLink(dto: any): Observable {\r\n return this.http.post(\r\n BERRY.hostName + \"api/ArchiveApi/ValidateLinkCorrespondence\", dto).pipe(\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n isCorrespondenceHasWorkflow(correspondenceId): Observable {\r\n return this.http.get(this.baseURL + \"/IsCorrespondenceHasWorkflow?correspondenceId=\" + correspondenceId);\r\n }\r\n\r\n getWorkFlow(dto): Observable {\r\n return super.post(this.baseURL + \"/getWorkFlow\", dto);\r\n }\r\n\r\n AddCorrespondenceArchiveLinked(arg: any): Observable {\r\n return this.http.post(BERRY.hostName + \"api/ArchiveApi/AddCorrespondenceArchiveLinked\", arg).pipe(\r\n catchError(this.handleError)\r\n );\r\n }\r\n deleteLink(archiveIds, corrId): Observable {\r\n\r\n const url = `${this.baseURL}/DeleteLinkArchive?corrId=${corrId}`;\r\n return this.http\r\n .post(url, archiveIds)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public saveSubsequentCorrespondence(subsequentCorrespondence: any) {\r\n let url = this.baseURL + \"/SaveSubsequentCorrespondence\";\r\n return super.post(url, subsequentCorrespondence);\r\n }\r\n getAllArchiveLink(CorssId: any): Observable {\r\n return super.get(this.baseURL + \"/getAllArchiveLink?CorssId=\" + CorssId);\r\n }\r\n getAllParentArchiveLink(CorssId: any, parentId: any): Observable {\r\n return super.get(this.baseURL + \"/getThreeLevelOfAllArchiveLink?CorssId=\" + CorssId + \"&parentId=\" + parentId);\r\n }\r\n\r\n getAllOtherArchiveLink(CorssId: any): Observable {\r\n return super.get(\r\n this.baseURL + \"/getOtherAllArchiveLink?CorssId=\" + CorssId\r\n );\r\n }\r\n\r\n CreateExternalRecipient(dto): Observable {\r\n return super.post(this.baseURL + \"/CreateExternalRecipient\", dto);\r\n }\r\n getAllUserTypes(): Observable {\r\n return super.get(`${BERRY.hostName}api/UserApi/loUserTypes`);\r\n }\r\n CreateExternalRecipientRepresentativeLetter(dto): Observable {\r\n return super.post(\r\n this.baseURL + \"/CreateExternalRecipientRepresentativeLetter\",\r\n dto\r\n );\r\n }\r\n\r\n isLetterSigned(attachmentId: any): Observable {\r\n return this.http.get(\r\n this.baseURL + \"/IsLetterSigned?attachmentId=\" + attachmentId\r\n );\r\n }\r\n\r\n checkTheLatestVersionForLetter(attachmentId: any, letterId: any): Observable {\r\n return super.get(\r\n this.baseURL + `/CheckTheLatestVersionForLetter?attachmentId=${attachmentId}&letterId=${letterId}`\r\n );\r\n }\r\n\r\n SendSignatureRequestNotification(letterID, originalCorrID, sendEditletterNotification): Observable {\r\n let url = this.baseURL + `/SendSignatureRequestNotification?letterID=${letterID}&originalCorrID=${originalCorrID}&sendEditletterNotification=${sendEditletterNotification}`;\r\n\r\n var params = {\r\n letterID: letterID,\r\n originalCorrID: originalCorrID,\r\n sendEditletterNotification: sendEditletterNotification\r\n }\r\n return super.post(url, params);\r\n }\r\n\r\n\r\n CreateCorrespondenceExternalLetters(dto): Observable {\r\n return super.post(\r\n this.baseURL + \"/CreateCorrespondenceExternalLetters\",\r\n dto\r\n );\r\n }\r\n \r\n editExternalRecipient(dto): Observable {\r\n var params = {\r\n dto: dto\r\n };\r\n return super.post(this.baseURL + \"/EditExternalRecipient\", dto);\r\n }\r\n\r\n addExternalContact(id): Observable {\r\n return super.get(this.baseURL + \"/AddExternalRecipient?id=\" + id);\r\n }\r\n\r\n getStatusAndPermission(id): Observable {\r\n return super.get(\r\n this.baseURL + \"/GetCorrespondenceExternalRecipientStatusAndPerm?id=\" + id\r\n );\r\n }\r\n\r\n GetCorrespondenceInternalRecipients(id: string): Observable {\r\n return super.get(\r\n this.baseURL + \"/GetCorrespondenceInternalRecipients?id=\" + id\r\n );\r\n }\r\n\r\n public GetPersonToolTip(UserID): Observable {\r\n var url = BERRY.hostName + \"Admin/Users/GetPersonToolTipJson/\" + UserID;\r\n\r\n return super.post(url, UserID);\r\n }\r\n\r\n public ChangeImportance(CorrespondenceID, importance): Observable {\r\n var url = BERRY.hostName + \"Correspondences/Applications/ChangeImportance?CorrespondenceID=\" + CorrespondenceID + \"&importance=\" + importance;\r\n\r\n return super.post(url, {\r\n CorrespondenceID: CorrespondenceID,\r\n importance: importance\r\n });\r\n }\r\n\r\n public ChangeUrgency(CorrespondenceID, urgencyId: number, isFromFollowupTeam = false): Observable {\r\n var url = BERRY.hostName + \"Correspondences/Applications/ChangeUrgency?CorrespondenceID=\" + CorrespondenceID + \"&urgencyId=\" + urgencyId + \"&isFromFollowupTeam=\" + isFromFollowupTeam;\r\n\r\n return super.post(url);\r\n }\r\n\r\n public GetApllicationHistory(ID, orderType: OrderTypeEnum = OrderTypeEnum.Asc , withDetails: boolean = false, isFromForwardingLog: boolean = false, isCorrespondenceParentActions: boolean = false): Observable {\r\n var params = {\r\n CorrespondenceId: ID,\r\n OrderType: orderType,\r\n IsFromForwardingLog: isFromForwardingLog,\r\n WithDetails: withDetails,\r\n IsCorrespondenceParentActions: isCorrespondenceParentActions\r\n };\r\n var url = BERRY.hostName + \"Correspondences/Applications/GetApplicationHistory\";\r\n\r\n return super.post(url, params); \r\n }\r\n\r\n getForwordApplicationHistory(ID, withSaveAction): Observable {\r\n return super.get(\r\n BERRY.hostName + `Correspondences/Applications/getForwordApplicationHistory?corrId=${ID}&withSaveAction=${withSaveAction}`\r\n );\r\n }\r\n\r\n public isIdInAvailableCommittees(Id: any): Observable {\r\n return super.post(\r\n BERRY.hostName +\r\n `Correspondences/Applications/IsIdInAvailableCommittees?Id=${Id}`,\r\n {},\r\n \"application/json\", \r\n false\r\n );\r\n }\r\n\r\n public GetActionsBasicDetails(ID, count, sortType: string = \"\", withDetails: boolean = false): Observable {\r\n return super.get(\r\n BERRY.hostName +\r\n `Correspondences/Applications/GetActionsBasicDetails?id=${ID}&&count=${count}&&sortType=${sortType}&&withDetails=${withDetails}`\r\n );\r\n }\r\n\r\n public GetlastForward(ID, sortType: string = \"\", withDetails: boolean = false): Observable {\r\n return super.get(\r\n BERRY.hostName +\r\n `Correspondences/Applications/GetlastForward?id=${ID}&&sortType=${sortType}&&withDetails=${withDetails}`\r\n );\r\n }\r\n\r\n AuditTrail(ID: string): Observable {\r\n return super.get(BERRY.hostName + \"AuditTrail/GetAuditTrail?id=\" + ID);\r\n }\r\n public generatePdf(id) {\r\n var url =\r\n BERRY.hostName + \"Correspondences/Applications/GenerateHistoryAsposePdf\";\r\n\r\n return super.post(url, { CorrespondenceId: id });\r\n }\r\n\r\n public generatePdfForSignature(id) {\r\n var url =\r\n BERRY.hostName + \"Correspondences/Applications/GenerateHistoryAsposePdfForSignature\";\r\n\r\n return super.post(url, { CorrespondenceId: id });\r\n }\r\n\r\n\r\n public deleteAction(actionId, isLast): Observable {\r\n var url =\r\n BERRY.hostName +\r\n \"Correspondences/Applications/DeleteAction?id=\" +\r\n actionId +\r\n \"&isLast=\" +\r\n isLast;\r\n return super.post(url, null);\r\n }\r\n\r\n public confirmReciveCorr(actionId) {\r\n var url =\r\n BERRY.hostName +\r\n \"Correspondences/Applications/ConfirmReciveCorr?id=\" +\r\n actionId;\r\n return this.http.post(url, null);\r\n }\r\n\r\n public DeleteEvent(ID) {\r\n var url = BERRY.hostName + \"Correspondences/DetailsEvents/Delete?id=\" + ID;\r\n return super.post(url, null);\r\n }\r\n public AddEvent(txt, date, CorrespondenceID) {\r\n var url = BERRY.hostName + \"Correspondences/DetailsEvents/AddEventParams\";\r\n return super.post(url, {\r\n CorrespondenceID: CorrespondenceID,\r\n EventDate: date,\r\n Eventtxt: txt\r\n });\r\n }\r\n\r\n public PrintQr() {\r\n var url =\r\n BERRY.hostName + \"Correspondences/Applications/PrintQr/\" + this.CorrId;\r\n\r\n return super.get(url);\r\n }\r\n\r\n public markAsSeenInInbox(correspondenceId, recipientId) {\r\n var url = BERRY.hostName + \"Correspondences/Applications/MarkAsSeenInInbox?id=\" + correspondenceId + \"&recipId=\" + recipientId;\r\n return super.post(url);\r\n }\r\n\r\n isShowSendToExecutiveOffice(): Observable {\r\n let url = `${BERRY.hostName}api/ExecutiveOfficeApi/CheckIfUserCanSendToExecutiveOffice`;\r\n return super.get(url);\r\n }\r\n\r\n checkIfSentToExecutiveOffice(correspondenceId): Observable {\r\n let url = `${BERRY.hostName}api/ExecutiveOfficeApi/CheckIfSenttoExecutiveOffice?correspondenceId` + correspondenceId;\r\n return super.get(url);\r\n }\r\n\r\n public getCorrNotes(id) {\r\n var url = BERRY.hostName + \"EvCorrDetails/GetCorrNotes\";\r\n let params: URLSearchParams = new URLSearchParams();\r\n params.set(\"id\", id);\r\n return super.post(url, {\r\n search: params\r\n });\r\n }\r\n public addNote(note) {\r\n var params = {\r\n note: note\r\n };\r\n var url = BERRY.hostName + \"EvCorrDetails/AddNote\";\r\n return super.post(url, params);\r\n }\r\n public deleteNote(id) {\r\n var params = {\r\n noteId: id\r\n };\r\n var url = BERRY.hostName + \"EvCorrDetails/Delete\";\r\n return super.post(url, params);\r\n }\r\n public editNote(noteId, txtNote) {\r\n var params = {\r\n id: noteId,\r\n noteText: txtNote\r\n };\r\n var url = BERRY.hostName + \"EvCorrDetails/EditNote\";\r\n return super.post(url, params);\r\n }\r\n\r\n public addLinkCorrespondeces(oCorrespondenceLink: any) {\r\n var url =\r\n BERRY.hostName +\r\n \"Correspondences/RelatedCorrespondences/Add/\" +\r\n oCorrespondenceLink;\r\n\r\n return super.post(url, oCorrespondenceLink);\r\n }\r\n\r\n public updateLinkCorrespondeces(id: any, currentCorrespondenceId: any, state: any) {\r\n var url = this.baseURL + \"/DeleteRelatedCorrespondance\";\r\n\r\n return super.post(url, {\r\n id: id,\r\n currentCorrespondenceId: currentCorrespondenceId,\r\n state: state\r\n });\r\n }\r\n\r\n public GetCorrespondencesLinkedTypes(): Observable {\r\n return this.http.get(\r\n `${BERRY.hostName}api/CorrespondencesLinkedTypes/GetLinkedTypes`\r\n );\r\n } \r\n\r\n public deleteUnLinkCorrespondece(id: any, currentCorrespondenceId: any, state: any) {\r\n var url = this.bundleService + \"/DeleteUnLinkCorrespondece\";\r\n\r\n return super.post(url, {\r\n id: id,\r\n currentCorrespondenceId: currentCorrespondenceId,\r\n state: state\r\n });\r\n }\r\n\r\n public deleteSubCorrespondance(id: any, currentCorrespondenceId: any) {\r\n var url = this.baseURL + \"/deleteSubCorrespondance\";\r\n return super.post(url, {\r\n id: id,\r\n currentCorrespondenceId: currentCorrespondenceId\r\n });\r\n }\r\n\r\n public editLinkCorrespondeces(id: any, LinkType: any) {\r\n var url = this.baseURL + \"/EditLinkCorrespondeces?id=\" + id + \"&LinkType=\" + LinkType;\r\n\r\n return super.post(url, { id: id, LinkType: LinkType });\r\n }\r\n\r\n public GetRelatedStudyCorrespondence(param:any): Observable {\r\n let params ={\r\n Id: param.corrId, \r\n LinkType:param.linkTypeEnum,\r\n orderby:param.orderby = \"des\"\r\n };\r\n var linkedTo;\r\n this.activatedRoute.queryParams.subscribe(params => {\r\n linkedTo = params['linkedTo']\r\n });\r\n var url = this.baseURL+\"/GetRelatedStudyCorrespondence\";\r\n return super.post(url , param);\r\n }\r\n public GetUnLinkBundleCorrespondence(\r\n id: any,\r\n linkType: any,\r\n orderby: any = \"des\",\r\n ): Observable {\r\n var linkedTo;\r\n this.activatedRoute.queryParams.subscribe(params => {\r\n linkedTo = params['linkedTo']\r\n });\r\n return super.get(\r\n this.bundleService +\r\n \"/GetUnLinkBundleCorrespondence?id=\" +\r\n id +\r\n \"&linkType=\" +\r\n linkType +\r\n \"&orderby=\" +\r\n orderby +\r\n \"&linkedTo=\" +\r\n linkedTo\r\n );\r\n }\r\n\r\n\r\n public GetParentRelatedStudyCorrespondence(\r\n id: any,\r\n parentId: any,\r\n linkType: any\r\n ): Observable {\r\n\r\n let params = {\r\n Id: id,\r\n CorrespondenceParentId: parentId,\r\n LinkType: linkType\r\n };\r\n\r\n var url = this.baseURL + \"/GetRelatedStudyCorrespondence\";\r\n return super.post(url, params);\r\n\r\n }\r\n\r\n public getRelatedCorrespondence(id: any, targetModuleId = 1): Observable {\r\n return super.get(this.baseURL + \"/GetRelatedCorrespondence?id=\" + id + \"&targetModuleId=\" + targetModuleId);\r\n }\r\n\r\n public checkCanShowParticipantDetails(id: any): Observable {\r\n return this.http.get(this.ConsultantURL + \"/CanShowParticipantDetails?correspondenceId=\" + id);\r\n }\r\n\r\n public getParentRelatedCorrespondence(id: any, parentId: any, targetModuleId = 1): Observable {\r\n return super.get(this.baseURL + \"/GetThreeLevelRelatedCorrespondence?id=\" + id + \"&parentId=\" + parentId + \"&targetModuleId=\" + targetModuleId);\r\n }\r\n public GetSettlmentCorrespondenceHierarchy(id: any): Observable {\r\n return super.get(this.baseURL + \"/GetSettlmentCorrespondenceHierarchy?id=\" + id);\r\n }\r\n\r\n public getSubCorrespondence(id: any): Observable {\r\n return super.get(this.baseURL + \"/GetSubCorrespondences?id=\" + id);\r\n }\r\n\r\n public getSubCorrespondencesRefactory(id: any): Observable {\r\n var linkedTo;\r\n this.activatedRoute.queryParams.subscribe(params => {\r\n linkedTo = params['linkedTo']\r\n });\r\n return super.get(this.baseURL + \"/GetSubCorrespondencesRefactory?id=\" + id + \"&linkedTo=\" + linkedTo);\r\n }\r\n public getSubsequentCorrespondence(id: any): Observable {\r\n return super.get(this.baseURL + \"/GetSubsequentCorrespondence?id=\" + id);\r\n }\r\n\r\n public GetDirectionsList(): Observable {\r\n return super.get(\r\n BERRY.hostName + \"Correspondences/Applications/GetDirectionsList\"\r\n );\r\n }\r\n\r\n public UndoneJson(ID) {\r\n return super.get(\r\n BERRY.hostName +\r\n \"Correspondences/Applications/UndoneJson?correspondenceId=\" +\r\n ID\r\n );\r\n }\r\n\r\n public UndoneUsers(corrId) {\r\n return super.get(\r\n BERRY.hostName + \"Correspondences/Applications/UndoneUsers?correspondenceId=\" + corrId\r\n );\r\n }\r\n\r\n public getSettlmentsList(corrId) {\r\n return super.get(\r\n this.baseURL + \"/GetCorrespondanceSettlements?id=\" + corrId + \"&isMobile=false\"\r\n );\r\n }\r\n\r\n public getParentSettlmentsList(corrId, parentId) {\r\n return super.get(\r\n this.baseURL + \"/GetThreeLevelCorrespondanceSettlements?id=\" + corrId + \"&parentId=\" + parentId\r\n );\r\n }\r\n\r\n public getSettlmentsListorld(corrId) {\r\n return super.get(\r\n this.baseURL + \"/GetCorrespondanceSettlements?id=\" + corrId\r\n );\r\n }\r\n\r\n public getSettlmentsCount(corrId) {\r\n return this.http.get(\r\n this.baseURL + \"/GetCorrespondanceSettlementsCount?id=\" + corrId\r\n );\r\n }\r\n\r\n public getFollowUpCount(corrId) {\r\n return this.http.get(this.baseURL + \"/getFollowUpCount?id=\" + corrId);\r\n }\r\n\r\n public editLinkType(corrLinkId, relid, oldTypeId) {\r\n var params = {\r\n corrLinkId: corrLinkId,\r\n relTypeId: relid,\r\n oldRelTypeId: oldTypeId\r\n };\r\n var url =\r\n this.baseURL +\r\n \"/EditCorrLinkType?corrLinkId=\" +\r\n corrLinkId +\r\n \"&relTypeId=\" +\r\n relid +\r\n \"&oldRelTypeId=\" +\r\n oldTypeId;\r\n return super.post(url, params);\r\n }\r\n public addSettlment(dto) {\r\n var url = this.baseURL + \"/AddSettlment\";\r\n return super.post(url, dto);\r\n }\r\n public deleteSettlment(settlmentId, currentCorrId) {\r\n var params = {\r\n id: settlmentId,\r\n currentCorrespondenceId: currentCorrId\r\n };\r\n var url =\r\n this.baseURL +\r\n \"/DeleteSettlment?id=\" +\r\n settlmentId +\r\n \"¤tCorrespondenceId=\" +\r\n currentCorrId;\r\n return super.post(url, params);\r\n }\r\n public DeleteAttachments(AttachmentID, corrId) {\r\n var url = BERRY.hostName + \"Correspondences/Attachments/Delete\";\r\n\r\n return super.post(url, { id: AttachmentID, corrId: corrId });\r\n }\r\n\r\n public ValidateSettelmentAndReturnFilledError(dto) {\r\n var url = BERRY.hostName + \"Correspondences/Details/ValidateSettelmentAndReturnFilledError\";\r\n return super.post(url, dto, \"application/json\", false);\r\n }\r\n\r\n public AddRelatedCorrespondences(ids, CorrespondanceId, LinkTypeID) {\r\n return super.post(this.baseURL + \"/AddRelatedCorrespondences\", {\r\n RelatedCorrespondencesIds: ids,\r\n CorrespondanceId: CorrespondanceId,\r\n LinkTypeID: LinkTypeID\r\n });\r\n }\r\n\r\n public AddRelatedCorrespondanceCheckValidation(\r\n ids,\r\n CorrespondanceId,\r\n LinkTypeID\r\n ) {\r\n return this.http.post(\r\n this.baseURL + \"/AddRelatedCorrespondanceCheckValidation\",\r\n { RelatedCorrespondencesIds: ids, CorrespondanceId: CorrespondanceId, LinkTypeID: LinkTypeID }\r\n );\r\n }\r\n\r\n public AddIntimationCorrespondences(ids, CorrespondanceId) {\r\n let param = {\r\n RelatedCorrespondencesIds: ids,\r\n CorrespondanceId: CorrespondanceId\r\n };\r\n return super.post(this.baseURL + \"/AddIntimationCorrespondences\", param);\r\n }\r\n public AddIntimationCorrespondanceCheckValidation(ids, CorrespondanceId): Observable {\r\n let param = {\r\n RelatedCorrespondencesIds: ids,\r\n CorrespondanceId: CorrespondanceId\r\n };\r\n return super.post(\r\n this.baseURL + \"/AddIntimationCorrespondanceCheckValidation\",\r\n param\r\n );\r\n }\r\n\r\n DeleteApplication(id: string): Observable {\r\n var url =\r\n BERRY.hostName + \"Correspondences/Applications/DeleteApplicationJson/\";\r\n\r\n return super.post(url + id);\r\n }\r\n\r\n DeleteCorrespondences(ids: string[]) {\r\n var url =\r\n BERRY.hostName + \"Correspondences/Applications/DeleteCorrespondences/\";\r\n\r\n return super.post(url, ids);\r\n }\r\n\r\n public Archive(correspondenceId): Observable {\r\n var url = BERRY.hostName + \"Correspondences/Applications/Archive?correspondenceId=\" + correspondenceId;\r\n return super.post(url);\r\n }\r\n\r\n public GetChildCorrespondences(id: string): Observable {\r\n var url =\r\n BERRY.hostName + \"Correspondences/Applications/GetChildCorrespondences?id=\" + id;\r\n\r\n return super.get(url);\r\n }\r\n IsUserLastRecipient(corrId) {\r\n var url = BERRY.hostName + \"api/CorrespondenceApi/IsUserLastRecipient?correspondenceId=\" + corrId;\r\n return super.get(url);\r\n }\r\n\r\n public GetChildsDirections(id: string): Observable {\r\n var url =\r\n BERRY.hostName + \"Correspondences/Applications/GetChildsDirections?id=\" + id;\r\n\r\n return super.get(url);\r\n }\r\n\r\n public GetCompanyingDocument(): Observable {\r\n var url =\r\n BERRY.hostName + \"Correspondences/Applications/GetCompanyingDocument?Id=\";\r\n\r\n return super.get(url + this.CorrId);\r\n }\r\n\r\n public Toggledocument(id, CurrentState): Observable {\r\n var url = BERRY.hostName + \"Correspondences/Applications/ToggleDocument\";\r\n\r\n return super.post(url, {\r\n CorrId: this.CorrId,\r\n Id: id,\r\n CurrentState: CurrentState\r\n });\r\n }\r\n\r\n public GetDelegatedUsers(ItemDto, CorrespondenceId): Observable {\r\n var url = this.baseURL + \"/DelegatedUsers\";\r\n return super.post(url, {\r\n ItemDto: ItemDto,\r\n CorrespondenceId: CorrespondenceId\r\n });\r\n }\r\n public changeTabStepNumber(currentStepCounter) {\r\n this.onTabStepCounterChanged.next(currentStepCounter);\r\n }\r\n public isCorrespondenceVaildToForward(correspondenceId): Observable {\r\n var url =\r\n this.baseURL + \"/IsCorrespondenceVaildToForward?correspondenceId=\";\r\n return this.http.get(url + correspondenceId);\r\n }\r\n\r\n public isCorrespondenceVaildToFinish(correspondenceId): Observable {\r\n var url =\r\n this.baseURL + \"/isCorrespondenceVaildToFinish?correspondenceId=\";\r\n return this.http.get(url + correspondenceId);\r\n }\r\n\r\n public getUrgentData(correspondenceId): Observable {\r\n var url =\r\n this.baseURL +\r\n `/GetUrgentNotificationUsers?correspondenceID=${correspondenceId}`;\r\n return super.get(url, correspondenceId);\r\n }\r\n public SendUrgentNotification(obj): Observable {\r\n var url =\r\n this.baseURL +\r\n `/SendUrgentNotification`;\r\n return super.post(url, obj);\r\n }\r\n public getCorrespondenceUrgentRequests(correspondenceId): Observable {\r\n var url =\r\n this.baseURL +\r\n `/GetCorrespondenceUrgentRequests?correspondenceID=${correspondenceId}`;\r\n return super.get(url, correspondenceId);\r\n }\r\n\r\n\r\n public reviewArchivedCorrespondence(reviewed, correspondenceId) {\r\n var url =\r\n BERRY.hostName +\r\n `api/CorrespondenceApi/ReviewArchivedCorrespondence?reviewed=${reviewed}&correspondenceId=${correspondenceId}`;\r\n var params = {};\r\n return this.http\r\n .post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n public getCorrReminder(correspondenceId) {\r\n var url =\r\n BERRY.hostName +\r\n `api/CorrespondenceApi/GetReminders?correspondenceId=${correspondenceId}`;\r\n var params = {};\r\n return this.http\r\n .post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n public GetSubCorrespondenceImportantAttachments(\r\n correspondenceId\r\n ): Observable {\r\n var url =\r\n this.baseURL +\r\n `/GetSubCorrespondenceImportantAttachments?id=${correspondenceId}`;\r\n return this.http\r\n .get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n public GetSubCorrespondenceOtherImportantAttachments(\r\n correspondenceId\r\n ): Observable {\r\n var url =\r\n this.baseURL +\r\n `/GetSubCorrespondenceOtherImportantAttachments?id=${correspondenceId}`;\r\n return this.http\r\n .get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n public GetDashboardImportantAttachments(\r\n ): Observable {\r\n var url = this.baseURL + `/GetDashboardImportantAttachments`;\r\n return this.http\r\n .get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n public GetCorrespondenceDescription(\r\n correspondenceId\r\n ): Observable {\r\n var url =\r\n this.baseURL +\r\n `/GetCorrespondenceDescription?correspondenceID=${correspondenceId}`;\r\n return this.http\r\n .get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n public GetOverviewSubCorrespondencesByCorrespondenceID(\r\n correspondenceId: any\r\n ): Observable {\r\n return super.get(\r\n this.baseURL +\r\n \"/GetOverViewSubCorrespondenceByCorrespondenceID?CorId=\" +\r\n correspondenceId\r\n );\r\n }\r\n\r\n public getClassificationDetails(correspondenceId: any): Observable {\r\n return super.get(\r\n this.baseURL +\r\n \"/GetClassificationDetails?correspondenceId=\" +\r\n correspondenceId\r\n );\r\n }\r\n\r\n public getMergedData(\r\n correspondenceId,\r\n mergeCorrespondenceId\r\n ): Observable {\r\n let MergeCorrespondenceDto = {\r\n CorrespondenceId: correspondenceId,\r\n MergeCorrespondenceId: mergeCorrespondenceId\r\n };\r\n return super.post(\r\n this.baseURL + \"/GetMergeCorrespondenceData\",\r\n MergeCorrespondenceDto\r\n );\r\n }\r\n\r\n public MergeCorrespondence(mergeCorrespondenceDTO): Observable {\r\n return this.http.post(\r\n this.baseURL + \"/MergeCorrespondence\",\r\n mergeCorrespondenceDTO\r\n );\r\n }\r\n getMergedCorrespondence(correspondenceId: string): Observable {\r\n let url =\r\n this.baseURL +\r\n \"/GetMergedCorrespondence?correspondenceId=\" +\r\n correspondenceId;\r\n return super.get(url);\r\n }\r\n\r\n getLatestAttachmentByCorrespondenceId(correspondenceId: string): Observable {\r\n const url = `${this.baseURL}/GetLatestAttachmentByCorrespondenceId?correspondenceId=${correspondenceId}`;\r\n return super.get(url);\r\n }\r\n\r\n separationCorrespondence(correspondenceId: string): Observable {\r\n return this.http.post(\r\n this.baseURL +\r\n \"/SeparationCorrespondence?correspondenceId=\" +\r\n correspondenceId,\r\n correspondenceId\r\n );\r\n }\r\n getCorrespondancePhysicalAttachmentLinkByCorrId(correspondenceId: string) {\r\n let me = this;\r\n let url =\r\n BERRY.hostName +\r\n \"api/CorrespondancePhysicalAttachmentSequance/getCorrespondancePhysicalAttachmentLinkByCorrId?corrId=\" +\r\n correspondenceId;\r\n return super.get(url);\r\n }\r\n deleteSequenceCorrPhysicalAttaLinks(\r\n correspondenceId: string,\r\n sequence,\r\n attachmentGroupId\r\n ) {\r\n //?corrId=\" + correspondenceId + \"&sequence=\" + sequence + \"&attachmentGroupId=\" + attachmentGroupId\r\n var params = {\r\n CorrespondenceID: correspondenceId,\r\n Sequence: sequence,\r\n AttachmentGroupId: attachmentGroupId\r\n };\r\n let url =\r\n BERRY.hostName +\r\n \"api/CorrespondancePhysicalAttachmentSequance/deleteSequenceCorrPhysicalAttaLinks\";\r\n return this.http\r\n .post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n MarkAsRead() {\r\n var markAsReadDto = {\r\n Recipient: this.Data.CurrentUserRecipient,\r\n Relation: this.Data.UserRelationToCorrespondence\r\n };\r\n return (\r\n this.post(this.baseURL + \"/MarkAsRead\", markAsReadDto).pipe(\r\n //.map(this.extractData)\r\n catchError(this.handleError))\r\n );\r\n }\r\n\r\n public SaveclassificationClick(\r\n correspondenceId: string,\r\n ExternalEntityId: number\r\n ): Observable {\r\n let body = null;\r\n body = {\r\n CorrespondenceId: correspondenceId,\r\n ExternalEntityId: ExternalEntityId,\r\n };\r\n return this.http.post(BERRY.hostName + \"Correspondences/Applications/Saveclassification\" , body);\r\n }\r\n\r\n getEntityManagerByEntityID(entityID: string) {\r\n let url =\r\n BERRY.hostName +\r\n \"Correspondences/Applications/GetEntityManagerByEntityID?entityID=\" +\r\n (+entityID);\r\n return super.post(url);\r\n }\r\n\r\n getByYearAndCorrNumber(year: number, corrNumber: string) {\r\n let url =\r\n BERRY.hostName +\r\n \"Correspondences/Applications/GetAppsAutoCompleteForTasdeedByYearAndNumber?correspondenceNumber=\" +\r\n corrNumber +\r\n \"&year=\" +\r\n year;\r\n return super.post(url);\r\n }\r\n\r\n getIntimationCorrespondence(correspondenceId) {\r\n let url =\r\n this.baseURL +\r\n \"/GetIntimationCorrespondence?correspondenceId=\" +\r\n correspondenceId;\r\n return super.get(url);\r\n }\r\n\r\n getCorrespondenceClassifications(filterByPermission: boolean = false) {\r\n let url = `${BERRY.hostName}api/CorrTypesClassificationsApi/GetClassifications?filterByPermission=${filterByPermission}`;\r\n return super.get(url);\r\n }\r\n\r\n CanSendSMSFromGeneralSetting(): any {\r\n let url = BERRY.hostName + \"Correspondences/Applications/GetIfCanSendSMSFromGeneralSetting\";\r\n return this.http.get(url);\r\n }\r\n getCorrespondenceInitialClassificationId(corrId): any {\r\n let url = `${BERRY.hostName}api/CorrTypesClassificationsApi/GetCorrespondenceInitialClassificationId?corrId=${corrId}`;\r\n return super.get(url);\r\n }\r\n getCorrespondenceInitialClassification(corrId): any {\r\n let url = `${BERRY.hostName}api/CorrTypesClassificationsApi/GetCorrespondenceInitialClassification?corrId=${corrId}`;\r\n return super.get(url);\r\n }\r\n\r\n allowCaseFileForwardMethod(caseFileId): any {\r\n let url = BERRY.hostName + \"api/UserTypeMappingAPI/AllowCaseFileForwardMethod?caseFileId=\" + caseFileId;\r\n return super.post(url);\r\n }\r\n\r\n getGeneralSettings(generalSettings): any {\r\n\r\n return this.generalSettingsSvc.GetValues(generalSettings)\r\n .pipe(map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n public GetSettings(): Observable {\r\n var baseURL = BERRY.hostName + \"api/GeneralSettingsApi\"; // URL to web API\r\n return this.http.get(baseURL + \"/GetSettings\").pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetCanUserSelectForwardingAsValue(isForSave: boolean = false): Observable {\r\n return this.http.get(this.baseURL + \"/GetCanUserSelectForwardingAsValue?isForSave=\" + isForSave);\r\n }\r\n\r\n public IsInMyOutBoxAndNotInMyInboxes(correspondenceId, isFromFollowupInbox: boolean = false): Observable {\r\n return this.http.get(\r\n BERRY.hostName +\r\n `Correspondences/Applications/IsInMyOutBoxAndNotInMyInboxes?correspondenceId=${correspondenceId}&isFromFollowupInbox=${isFromFollowupInbox}`\r\n );\r\n }\r\n\r\n GetProcAttachmentsCount(Id): any {\r\n let url = `${BERRY.hostName}api/CorrespondenceApi/GetProcAttachmentsCount?Id=${Id}`;\r\n return super.get(url);\r\n }\r\n\r\n GetCorrespondenceFollowers(\r\n id: string\r\n ): Observable {\r\n return super.get(this.baseURL + \"/GetCorrespondenceFollowers?id=\" + id);\r\n }\r\n\r\n public IsUserCanPublishForAnyOffice(): Observable {\r\n let url = this.executiveOfficebaseUrl + `/IsUserCanPublishForAnyOffice`;\r\n return super.get(url)\r\n }\r\n\r\n public checkIfSubsequentCorrespondenceLinking(corrId, linkedCorrId) {\r\n const Url = this.baseURL + `/CheckIfSubsequentCorrespondenceLinking?correspondenceId=${corrId}&linkedCorrespondenceId=${linkedCorrId}`;\r\n return this.http.get(Url);\r\n }\r\n\r\n public getAllLinkedCorrswithSubsequentLinkType() {\r\n const Url = this.baseURL + `/GetAllLinkedCorrswithSubsequentLinkType`;\r\n return super.get(Url);\r\n }\r\n\r\n public getInitialForwardedAsEntity(corrId): Observable {\r\n const Url = this.baseURL + `/GetInitialForwardedAsEntity?correspondenceId=${corrId}`;\r\n return this.http.get(Url);\r\n }\r\n\r\n public isCorrBundled(corrId: string) {\r\n const Url = this.baseURL + `/IsCorrBundled?correspondenceId=${corrId}`;\r\n return super.get(Url);\r\n }\r\n\r\n public getLinkedCorr(initiativeId): Observable {\r\n var initiativeApiUrl = BERRY.hostName + \"api/initiatives\";\r\n const Url = initiativeApiUrl + `/GetLinkedInitiativesCorrespondence?correspondenceId=${initiativeId}`;\r\n return super.get(Url);\r\n }\r\n\r\n public RePrepearCorrespondencesToArchive(corrId): Observable {\r\n let url: string = `${BERRY.hostName}api/EditCorrespondenceApi/RePrepearCorrespondencesToArchive?corrId=${corrId}`;\r\n return this.http.post(url, null).pipe(catchError(this.handleError));\r\n }\r\n\r\n public printPdf(url: any) {\r\n return this.http.get(url, { responseType: 'blob' });;\r\n }\r\n\r\n getCorrespondenceLetterText(corrId) {\r\n let url = this.baseURL + \"/GetCorrespondenceLetterText?correspondenceId=\" + corrId;\r\n return super.get(url);\r\n }\r\n\r\n getCanMergeSubCorrespondence(subCorrId) {\r\n let url = this.baseURL + \"/CanMergeSubCorrespondence?subCorrId=\" + subCorrId;\r\n return this.http.get(url);\r\n }\r\n\r\n public getMyEntityForwardingSettings(currentRecipient) {\r\n var params = {\r\n EntityID: currentRecipient ? currentRecipient.EntityID : null,\r\n UserId: currentRecipient ? currentRecipient?.UserId : null,\r\n RecipientType: currentRecipient ? currentRecipient.RecipientType : 0\r\n };\r\n let url =\r\n BERRY.hostName + \"Correspondences/Applications/GetMyEntityForwardingSettings\";\r\n return super.post(url, params);\r\n }\r\n\r\n getAllowedDurationToViewCorrespondence(corrId) {\r\n let url = BERRY.hostName + \"api/AccessingCorrespondenceApi/GetAllowedDurationToViewCorrespondence?CorrespondenceId=\" + corrId;\r\n return super.get(url);\r\n }\r\n\r\n saveModuleActiveUsers(trackingDetails: UserModuleTrackingDetailsDto): Observable {\r\n let url = `${BERRY.hostName}api/ModuleActivityTracking/SaveActiveUsers`;\r\n return super.post(url, trackingDetails);\r\n }\r\n\r\n getModuleActiveUsers(itemId: string, appModule: AppModulesEnum): Observable {\r\n let url = `${BERRY.hostName}api/ModuleActivityTracking/GetActiveUsers?itemId=${itemId}&appModule=${AppModulesEnum.Correspondences}`;\r\n return super.get(url);\r\n }\r\n\r\n removeModuleActiveUser(trackingDetails: UserModuleTrackingDetailsDto): Observable {\r\n let url = `${BERRY.hostName}api/ModuleActivityTracking/RemoveActiveUser`;\r\n return super.post(url, trackingDetails);\r\n }\r\n\r\n checkIfPresidentOverviewEnabled(correspondenceId): Observable { \r\n let url = this.baseURL + \"/CheckIfPresidentOverviewEnabled?correspondenceId=\" + correspondenceId;\r\n return this.http.get(url);\r\n }\r\n\r\n getCorrespondenceReadStatus(correspondenceId): Observable {\r\n return this.http.get(\r\n BERRY.hostName +\r\n `Correspondences/CorrespondenceActions/GetCorrespondenceReadStatus?correspondenceId=${correspondenceId}`\r\n );\r\n }\r\n\r\n getEntitiesAndUsersByRolesAutoComplete(): Observable {\r\n let obj = {\r\n isFromSendToCombo: true,\r\n appModuleId: AppModulesEnum.Correspondences\r\n };\r\n\r\n let url = `${BERRY.hostName}Correspondences/Applications/GetEntitiesAndUsersByRolesAutoComplete`;\r\n\r\n return this.http.post(url, obj);\r\n }\r\n}\r\n\r\nexport class DelegatedUsersDto {\r\n ItemDto;\r\n CorrespondenceId;\r\n}\r\n\r\nexport class ReassignedTaskDto {\r\n ReassignedByUserName;\r\n ReassignedToUserName;\r\n ReassignedDate;\r\n ReassignedTime;\r\n ReassignedByUserId;\r\n ReassignedToUserId;\r\n ReassignedToIndividualId;\r\n ReassignedByIndividualId;\r\n}\r\n\r\n\r\n","import { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../../../../_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"../../../../_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class DetailsFollowUpTeamSVC extends BaseService {\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n private baseURL = BERRY.hostName + \"api/FollowUpTeamCorrespondenceApi\";\r\n\r\n getInitialExecutiveFollowupTeam(correspondenceId, isForForward, forwardedAsEntityId) {\r\n var partCanBeNull = forwardedAsEntityId ? \"&ForwardedAsEntityId=\" + forwardedAsEntityId : \"\";\r\n return super.get(this.baseURL +\"/GetInitialExecutiveFollowupTeam?CorrespondenceId=\" + correspondenceId + \"&IsForForward=\" + isForForward + partCanBeNull);\r\n }\r\n\r\n addCorrespondenceToFollowupTeam(correspondenceId, executiveFollowupTeamId) {\r\n return super.post(this.baseURL +\"/AddCorrespondenceToFollowupTeam?CorrespondenceId=\" + correspondenceId + \"&ExecutiveFollowupTeamId=\" + executiveFollowupTeamId);\r\n }\r\n\r\n GetXcUserId(CorrespondenceId:string){\r\n return super.post(this.baseURL +\"/GetXcUserId?CorrespondenceId=\" + CorrespondenceId);\r\n }\r\n\r\n ChangeCorrImportant(dto){\r\n return super.post(\r\n this.baseURL + \"/UpdateCorrespondenceImportantFollowUp\",\r\n dto\r\n );\r\n }\r\n\r\n GetImportantCorr(dto){\r\n return super.post(\r\n this.baseURL + \"/GetImportantCorrespondenceFollowUp\",\r\n dto\r\n );\r\n }\r\n\r\n getAllFollowUpTeamAdded(correspondenceId) {\r\n var url = this.baseURL +\"/GetAllFollowUpTeamAdded?CorrespondenceId=\" + correspondenceId;\r\n return super.get(url);\r\n }\r\n\r\n deleteSelectedFollowupTeams(correspondenceId, selectedIds: number[]) {\r\n var url = this.baseURL +\"/DeleteSelectedFollowupTeams?CorrespondenceId=\" + correspondenceId;\r\n\r\n return super.post(url, selectedIds);\r\n }\r\n}\r\n\r\nexport class FollowUpTeamCorrespondenceDTO {\r\n\r\n public Id: number;\r\n public XCPresidentUserId: string;\r\n public XCPresidentId: number;\r\n public XCPresidentName: string;\r\n public Status: FollowUpStatusEnum;\r\n public AssignedXCUserId: string;\r\n public AssignedXCUserName: string;\r\n public CorrespondenceId: string;\r\n public CreatedDate: string;\r\n public UpdatedDate: string;\r\n public CreatedBy: string;\r\n public UpdatedBy: string;\r\n public IsSelected: boolean;\r\n public StatusText: string;\r\n public CreatedDateStr: string;\r\n public FinishedDateStr: string;\r\n public CorrespondenceImportant:number;\r\n}\r\n\r\nexport enum FollowUpStatusEnum {\r\n UnderFollowUp = 0,//قيد المتابعة\r\n UnderAppointment = 1,//قيد التعيين\r\n Finished = 2//منتهية\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\n\r\ninterface DateChangedResponse {\r\n ErrorCode: string;\r\n TimeAgo: string;\r\n LongDate: string;\r\n}\r\n\r\ninterface ReminderDateChangedResponse extends DateChangedResponse {\r\n FormatedDisplayDate: string;\r\n}\r\n\r\ninterface DeadLineDateChangedResponse extends DateChangedResponse {\r\n IsLate: boolean;\r\n HasNewActionDatePassed?: boolean;\r\n NewDate?: number;\r\n Status: string;\r\n}\r\n\r\ninterface AllRemindersDateChangedResponse {\r\n ErrorCode: string;\r\n Success: boolean;\r\n}\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class DeadlinesService extends BaseService {\r\n constructor(http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n correspondenceActionApiUrl = BERRY.hostName + \"api/ActionReminderAndDeadlineApi\";\r\n correspondenceApiUrl = BERRY.hostName + \"api/CorrespondenceReminderAndDeadlineApi\";\r\n\r\n public static formattingDate(NewDate: any) {\r\n /// true when [DatePicker] used, false when [DatePicker2] used.\r\n /// TODO: We should remove one of these DatePicker(s).\r\n if (NewDate.formatDate !== undefined) {\r\n NewDate = NewDate.toString();\r\n } else {\r\n NewDate = NewDate.Original.toString();\r\n }\r\n return NewDate;\r\n }\r\n\r\n public ActionReminderDateCleared(\r\n CorrespondenceID: string,\r\n CorrespondenceActionID: string\r\n ) {\r\n let me = this;\r\n let url = `${me.correspondenceActionApiUrl}/ClearReminder/`;\r\n let prms = {\r\n ActionId: CorrespondenceActionID,\r\n CorrespondenceId: CorrespondenceID\r\n };\r\n let obsrv = super.post(url, prms);\r\n\r\n return obsrv;\r\n }\r\n\r\n public ActionReminderDateChanged(\r\n CorrespondenceID: string,\r\n CorrespondenceActionID: string,\r\n newDate: string\r\n ): Observable {\r\n let me = this;\r\n let url = `${me.correspondenceActionApiUrl}/ChangeReminder`;\r\n let prms = {\r\n ActionId: CorrespondenceActionID,\r\n CorrespondenceId: CorrespondenceID,\r\n Date: newDate\r\n };\r\n let obsrv = super.post(url, prms);\r\n\r\n return obsrv;\r\n }\r\n\r\n public ActionDeadlineDateCleared(\r\n CorrespondenceID: string,\r\n CorrespondenceActionID: string\r\n ) {\r\n let me = this;\r\n var url = `${me.correspondenceActionApiUrl}/ClearDeadline/`;\r\n let prms = {\r\n ActionId: CorrespondenceActionID,\r\n CorrespondenceId: CorrespondenceID\r\n };\r\n let obsrv = super.post(url, prms);\r\n\r\n return obsrv;\r\n }\r\n\r\n public ActionDeadlineDateChanged(\r\n CorrespondenceID: string,\r\n CorrespondenceActionID: string,\r\n newDate: string,\r\n isFromFollowupTeam: boolean = false,\r\n isShowTime:boolean = false\r\n ): Observable {\r\n let me = this;\r\n let url = `${me.correspondenceActionApiUrl}/ChangeDeadline`;\r\n let prms = {\r\n ActionId: CorrespondenceActionID,\r\n CorrespondenceId: CorrespondenceID,\r\n Date: newDate,\r\n IsFromFollowupTeam: isFromFollowupTeam,\r\n isShowTime:isShowTime\r\n };\r\n\r\n let obsrv = super.post(url, prms);\r\n\r\n return obsrv;\r\n }\r\n\r\n public CorrespondenceReminderDateCleared(CorrespondenceID: string) {\r\n let me = this;\r\n let url = `${me.correspondenceApiUrl}/ClearReminder/`;\r\n let prms = {\r\n CorrespondenceID: CorrespondenceID\r\n };\r\n let obsrv = super.post(url, prms);\r\n\r\n return obsrv;\r\n }\r\n public CorrespondenceReminderDateChanged(\r\n CorrespondenceID: string,\r\n newDate: string\r\n ) {\r\n let me = this;\r\n let url = `${me.correspondenceApiUrl}/ChangeReminder`;\r\n let prms = {\r\n CorrespondenceID: CorrespondenceID,\r\n Date: newDate\r\n };\r\n let obsrv = super.post(url, prms);\r\n\r\n return obsrv;\r\n }\r\n public CorrespondenceDeadlineDateCleared(CorrespondenceID: string) {\r\n let me = this;\r\n let url = `${me.correspondenceApiUrl}/ClearDeadline/`;\r\n let prms = {\r\n CorrespondenceID: CorrespondenceID\r\n };\r\n let obsrv = super.post(url, prms);\r\n\r\n return obsrv;\r\n }\r\n public CorrespondenceDeadlineDateChanged(\r\n CorrespondenceID: string,\r\n newDate: string,\r\n isFromFollowupTeam: boolean = false,\r\n isShowTime:boolean=false\r\n ) {\r\n let me = this;\r\n var url = `${me.correspondenceApiUrl}/ChangeDeadline`;\r\n var prms = {\r\n CorrespondenceId: CorrespondenceID,\r\n Date: newDate,\r\n IsFromFollowupTeam: isFromFollowupTeam,\r\n isShowTime:isShowTime\r\n };\r\n let obsrv = super.post(url, prms);\r\n\r\n return obsrv;\r\n }\r\n\r\n public UpdateCorrespondenceWithActionReminderDeadlineDates(\r\n correspondenceId: string,\r\n actionId: string,\r\n actionReminderDate: string,\r\n actionDeadlineDate: string,\r\n correspondenceReminderDate: string,\r\n correspondenceDeadlineDate: string\r\n ) {\r\n let me = this;\r\n var params = {\r\n CorrespondenceId: correspondenceId,\r\n ActionId: actionId,\r\n ActionReminderDate: actionReminderDate,\r\n ActionDeadlineDate: actionDeadlineDate,\r\n CorrespondenceReminderDate: correspondenceReminderDate,\r\n CorrespondenceDeadlineDate: correspondenceDeadlineDate\r\n };\r\n\r\n let url = `${me.correspondenceApiUrl}/UpdateAllReminderDeadlineDates`;\r\n\r\n let obsrv = super.post(url, params);\r\n\r\n return obsrv;\r\n }\r\n\r\n public UpdateActionReminderDate(\r\n actionId: string,\r\n actionReminderDate: string\r\n ) {\r\n let me = this;\r\n var params = {\r\n ActionId: actionId,\r\n ActionReminderDate: actionReminderDate\r\n };\r\n\r\n let url = `${me.correspondenceApiUrl}/UpdateActionReminderDate`;\r\n\r\n let obsrv = super.post(url, params);\r\n\r\n return obsrv;\r\n }\r\n\r\n public UpdateRemidersDismiss(correspondenceId: string, actionId: string) {\r\n let me = this;\r\n var url = `${me.correspondenceApiUrl}/UpdateRemidersDismiss`;\r\n var params = {\r\n CorrespondenceId: correspondenceId,\r\n ActionId: actionId\r\n };\r\n\r\n return this.http.post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public UpdateRemidersSnooze(\r\n correspondenceId: string,\r\n actionId: string,\r\n actionReminderDate: string\r\n ) {\r\n let me = this;\r\n var url = `${me.correspondenceApiUrl}/UpdateRemidersSnooze`;\r\n var params = {\r\n CorrespondenceId: correspondenceId,\r\n ActionId: actionId,\r\n ActionReminderDate: actionReminderDate\r\n };\r\n\r\n return this.http.post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetCurrentUserReminders(correspondenceId: string, actionId: string) {\r\n let me = this;\r\n\r\n let url = `${\r\n me.correspondenceApiUrl\r\n }/GetCurrentUserReminders?correspondenceId=${correspondenceId}&actionId=${actionId}`;\r\n\r\n let obsrv = super.get(url);\r\n\r\n return obsrv;\r\n }\r\n\r\n public AllRemindersDateChanged(\r\n correspondenceId: string,\r\n actionId: string,\r\n actionReminderDate: string,\r\n actionDeadlineDate: string,\r\n correspondenceReminderDate: string,\r\n correspondenceDeadlineDate: string\r\n ): Observable {\r\n let me = this;\r\n var params = {\r\n CorrespondenceId: correspondenceId,\r\n ActionId: actionId,\r\n ActionReminderDate: actionReminderDate,\r\n ActionDeadlineDate: actionDeadlineDate,\r\n CorrespondenceReminderDate: correspondenceReminderDate,\r\n CorrespondenceDeadlineDate: correspondenceDeadlineDate\r\n };\r\n\r\n let url = `${me.correspondenceActionApiUrl}/UpdateAllReminderDeadlineDates`;\r\n\r\n let obsrv = super.post(url, params);\r\n\r\n return obsrv;\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BorrowRequestDto } from \"./borrowRequestDto\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class BorrowRequestsvc extends BaseService {\r\n baseURL = BERRY.hostName + \"api/DocumentCenterBorrowActionApi\";\r\n constructor(public httpInterceptor: HttpInterceptor) {\r\n super(httpInterceptor);\r\n }\r\n\r\n getAllShelveData(correspondenceId: any) {\r\n let url =\r\n this.baseURL + \"/GetAllShelveData?correspondenceId=\" + correspondenceId;\r\n return super.get(url);\r\n }\r\n\r\n\r\n /// ============================> FOLDERS SECTION <====================================\r\n\r\n saveBorrowRequest(obj: BorrowRequestDto) {\r\n let url = this.baseURL + \"/InsertNewBorrowRequest/\";\r\n return super.post(url, obj);\r\n }\r\n\r\n\r\n deleteStorageFolder(folderId: number) {\r\n let url =\r\n this.baseURL + \"/DeleteStorageFolder?folderId=\" + folderId.toString();\r\n return super.post(url, {});\r\n }\r\n\r\n /// ===========================> END FOLDERS SECTION <=================================\r\n\r\n getEntityNameStorageFile(correspondenceId: any) {\r\n let url =\r\n this.baseURL + \"/GetEntityNameStorageFile?correspondenceId=\" + correspondenceId;\r\n\r\n return super.get(url);\r\n }\r\n\r\n getEntityStorageFile(correspondenceId: any) {\r\n let url =\r\n this.baseURL + \"/getEntityStorageFile?correspondenceId=\" + correspondenceId;\r\n\r\n return super.get(url);\r\n }\r\n\r\n \r\n\r\n}\r\n","export class BorrowRequestDto {\r\n Id: number;\r\n CorrespondenceId: string;\r\n BorrowEndDate: string;\r\n BorrowedByUser: string;\r\n BorrowedByUserId: string;\r\n BorrowDeliverByUserId: string;\r\n BorrowedFromUser: string;\r\n BorrowerUserEmail: string;\r\n Location: string;\r\n Comments: string;\r\n Subject: string;\r\n CorrespondenceCategoryId: number;\r\n}\r\n","
    \r\n\r\n
    {{getText('FilingInformation', 'FileStorage')}}
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    {{getText('FilingBuilding', 'FileStorage')}}
    \r\n
    \r\n
    \r\n
    {{ShelveInformation.LocationName}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    {{getText('StorageRoomDesc', 'FileStorage')}}
    \r\n
    \r\n
    \r\n
    {{ShelveInformation.RoomName}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    {{getText('StorageCabinetDesc', 'FileStorage')}}
    \r\n
    \r\n
    \r\n
    {{ShelveInformation.CabinetName}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    {{getText('StorageShelveDesc', 'FileStorage')}}
    \r\n
    \r\n
    \r\n
    {{ShelveInformation.ShelveName}}
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    {{getText('StorageFolderDesc', 'FileStorage')}}
    \r\n
    \r\n
    \r\n
    {{ShelveInformation.StorageFolder}}
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    {{getText('CustomFiling', 'FileStorage')}}
    \r\n
    \r\n
    \r\n
     {{ShelveInformation.ShelveName}}
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    {{ShelveInformation.ShelveName}}
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    {{getText('CustomFiling', 'FileStorage')}}
    \r\n
    \r\n
    \r\n
    {{getText('ProcCustomFiling', 'FileStorage')}}
    \r\n
    \r\n
    \r\n
     {{ShelveInformation.ShelveName}}
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n\r\n
    \r\n
    {{getText('Reserved', 'FileStorage')}} : {{ShelveInformation.ShelveName}}
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    {{getText('Shelf', 'IncomingBOE')}}
    \r\n
    \r\n
    \r\n
    {{ShelveInformation.ShelveName}}
    \r\n
    {{getText('_Unspecified', 'Resources')}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    {{getText('Row', 'IncomingBOE')}}
    \r\n
    \r\n
    \r\n
    {{ShelveInformation.ShelvingClassification}}
    \r\n
    {{getText('_Unspecified', 'Resources')}}
    \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 {{getText(\"BorrowerName\", \"Common\")}}\r\n\r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n {{getText(\"EndOfBorrower\",\"Common\")}}\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\nimport { takeWhile } from 'rxjs/operators';\r\nimport { Component, OnDestroy, NgZone, ViewChild } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../../../../../_common/models/IGlobalSettings\";\r\nimport { DetailsSVC } from \"../../details-svc\";\r\nimport { Router } from \"@angular/router\";\r\nimport { BaseCmp } from \"../../../../../_common/components/BaseComponent\";\r\nimport { CorrespondenceDto } from \"../../../_models/correspondence-dto\";\r\nimport { StorageShelvesSvc } from \"../../../NewCorrespondence/storage/storage-shelve-svc\";\r\nimport { IComboboxOptions, IComboboxServerDatasourceOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { BorrowRequestDto } from \"./borrowRequestDto\";\r\nimport { BorrowRequestsvc } from \"./borrowRequest-svc\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { AppState } from \"src/app/app.service\";\r\nimport { PopupComponent, IPopup } from \"../../../../../_common/components/popup/popup-component\";\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { ConfirmationBoxOptions, ConfirmationBoxType, DialogManager } from '../../../../../_common/services/dialog-manager';\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"details-filing\",\r\n templateUrl: \"./DetailsInfoFiling-ng.html\"\r\n})\r\nexport class DetailsFilingCmp extends BaseCmp implements OnDestroy {\r\n\r\n isSubscribed: boolean = true;\r\n sub: any;\r\n borrowRequestDto: BorrowRequestDto = new BorrowRequestDto();\r\n public ShelveInformation: ShelveInformationDto = new ShelveInformationDto();\r\n\r\n borrowRequestForm: FormGroup;\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n constructor(\r\n public detailsSVC: DetailsSVC,\r\n public _router: Router,\r\n public storageShelvesSvc: StorageShelvesSvc,\r\n public zone: NgZone,\r\n public toastr: ToastrService,\r\n public borrowRequestsvc: BorrowRequestsvc,\r\n public appState: AppState,\r\n public fb: FormBuilder,\r\n public dialog: DialogManager\r\n ) {\r\n super();\r\n }\r\n\r\n init() {\r\n var me = this;\r\n\r\n me.prepareInit();\r\n me.detailsSVC.onDataChanged\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(x => {\r\n me.refreshInfo();\r\n });\r\n }\r\n\r\n prepareInit() {\r\n let me = this;\r\n this.detailsSVC.onValidCorrespondenceCallback.pipe(takeWhile(() => me.isSubscribed)).subscribe(x => {\r\n if (x) {\r\n me.refreshFilingInformations();\r\n }\r\n });\r\n }\r\n\r\n // This function for reload data after change it from edit dailoag\r\n public refreshInfo(): void {\r\n var me = this;\r\n me.prepareInit();\r\n }\r\n\r\n ngSuperOnInit() {\r\n this.FillUserId();\r\n this.FillUserFullname();\r\n this.init();\r\n this.buildForm();\r\n if (this.detailsSVC?.Data?.Correspondence != null && this.detailsSVC?.Data?.Correspondence?.CorrespondenceID)\r\n this.loadLocationInfo(this.detailsSVC.Data.Correspondence.CorrespondenceID);\r\n }\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n buildForm(): void {\r\n let me = this;\r\n me.borrowRequestForm = me.fb.group({\r\n BorrowedByUserId: [me.borrowRequestDto.BorrowedByUserId, [Validators.required]],\r\n BorrowEndDate: [me.borrowRequestDto.BorrowEndDate, [Validators.required]]\r\n });\r\n }\r\n\r\n public FillUserId() {\r\n //if (this.borrowRequestDto.BorrowedByUserId != undefined)\r\n this.borrowRequestDto.BorrowedByUserId = BERRY.User.ActualUserId;\r\n }\r\n\r\n public FillUserFullname() {\r\n //if (this.borrowRequestDto.BorrowedByUser != undefined)\r\n this.borrowRequestDto.BorrowedByUser = BERRY.User.FullName;\r\n }\r\n\r\n get isAvailableForBorrowing() {\r\n if (this.detailsSVC.Data)\r\n return this.detailsSVC.Data.isAvailableForBorrowing;\r\n }\r\n\r\n public isEmpty(value: string) {\r\n return value == null || value == undefined || value == \"\";\r\n }\r\n\r\n get showBasicCorrespondenceShelving() {\r\n return BERRY.appSettings.keys.showBasicCorrespondenceShelving;\r\n }\r\n get ApprovedByDocumentCenter() {\r\n if (this.detailsSVC.Data)\r\n return this.detailsSVC.Data.ApprovedByDocumentCenter;\r\n }\r\n\r\n public showCorrespondanceFilingFeatures() {\r\n return BERRY.onOffFeatures.ShowCorrespondanceShelvingFeatures;\r\n }\r\n\r\n public get Correspondence(): CorrespondenceDto {\r\n let me = this;\r\n if (me.detailsSVC.Data && me.detailsSVC.Data != null) {\r\n return me.detailsSVC.Data.Correspondence;\r\n }\r\n return null;\r\n }\r\n\r\n public get DocumentCenterEntityName(): string {\r\n let me = this;\r\n return me.Correspondence.DocumentCenterEntityName;\r\n }\r\n\r\n public refreshFilingInformations(): void {\r\n let me = this;\r\n me.loadLocationInfo(me.detailsSVC.Data.Correspondence.CorrespondenceID);\r\n }\r\n\r\n loadLocationInfo(correspondenceId: string): void {\r\n let me = this;\r\n me.ShelveInformation = null;\r\n if (me.showCorrespondanceFilingFeatures()) {\r\n me.storageShelvesSvc\r\n .getAllShelveData(correspondenceId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data) {\r\n me.zone.run(() => {\r\n me.ShelveInformation = data;\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n autocompleteDefaultOptions: IComboboxOptions = {\r\n allowFreeText: false\r\n };\r\n comboBoxServerSearchDatasourceDefaultOptions3: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"get\",\r\n resultsField: \"data\",\r\n searchField: \"text\"\r\n };\r\n\r\n BorrowerAutocompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.autocompleteDefaultOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.comboBoxServerSearchDatasourceDefaultOptions3,\r\n {\r\n url: BERRY.hostName + \"api/correspondenceAssignTasks/get-all-users\"\r\n }\r\n ),\r\n minLength: 1,\r\n dataTextField: \"ShortName\",\r\n dataValueField: \"UserId\",\r\n allowFreeText: false,\r\n displaytemplate: \"#: data.ShortName #\",\r\n autoBind: true\r\n }\r\n );\r\n\r\n get CorrId() {\r\n return this.detailsSVC.Data.Correspondence.CorrespondenceID;\r\n }\r\n get Subject() {\r\n return this.detailsSVC.Data.Correspondence.Subject;\r\n }\r\n get Category() {\r\n return this.detailsSVC.Data.Correspondence.CorrespondenceCategoryId;\r\n }\r\n\r\n @ViewChild('staticPopup') staticPopup: PopupComponent;\r\n staticPopupOption: IPopup = {\r\n title: '',\r\n actions: [\r\n { text: this.getText(\"loan\", \"Common\"), type: \"submit\", event: () => this.SaveBorrowRequest() },\r\n { text: this.getText(\"Cancel\", \"Common\"), type: \"close\" }\r\n ],\r\n mode: 'medium',\r\n height: 390\r\n }\r\n\r\n showPopup() {\r\n this.staticPopup.open()\r\n }\r\n\r\n SaveBorrowRequest() {\r\n let self = this;\r\n\r\n if (!self.borrowRequestForm.valid) {\r\n self.dialog.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n BERRY.getText('FormsValidationMessage', 'Common')\r\n );\r\n dialog.show(options);\r\n }\r\n });\r\n return;\r\n }\r\n\r\n self.borrowRequestDto.CorrespondenceId = self.CorrId;\r\n self.borrowRequestDto.Subject = self.Subject;\r\n self.borrowRequestDto.CorrespondenceCategoryId = self.Category;\r\n self.borrowRequestsvc.saveBorrowRequest(self.borrowRequestDto).subscribe(response => {\r\n if (response) {\r\n self.staticPopup.close();\r\n self.toastr.success(BERRY.loc.common.successMessage);\r\n self.detailsSVC.Data.isAvailableForBorrowing = false;\r\n }\r\n });\r\n }\r\n\r\n}\r\n\r\nexport class ShelveInformationDto {\r\n LocationName: string;\r\n LocationId: number;\r\n RoomName: string;\r\n RoomId: number;\r\n RoomResourceId: string;\r\n RoomResourceSet: string;\r\n CabinetName: string;\r\n CabinetId: number;\r\n ShelveName: string;\r\n ShelveId: number;\r\n ShelvingClassification: string;\r\n FilesStorageEntity: string;\r\n StorageFolder: string;\r\n StorageFolderId: number;\r\n ShowStorageFolder: boolean;\r\n IsCompletelyElectronicShelving: boolean;\r\n IsCentralAdministrationBuildingShelving: boolean;\r\n IsOtherStorageLocationShelving: boolean;\r\n IsForwardDocumentsToOtherEntityShelving: boolean;\r\n IsForwardToDocumentsCenterShelving: boolean;\r\n IsLightCorrespondenceShelving: boolean;\r\n LocationDescription: string;\r\n DocumentCenterEntityId: number;\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../../../../../_common/models/IGlobalSettings\";\r\nimport { Observable } from \"rxjs\";\r\nimport { catchError } from \"rxjs/operators\";\r\nimport { BaseService } from \"../../../../../_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class ReplyRequestResponseSvc extends BaseService {\r\n baseUrl = BERRY.hostName + \"api/ReplyRequestResponse\";\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n GetReplyRequestsForCurrentResponderUser(corrId): Observable {\r\n return super\r\n .get(this.baseUrl + \"/GetForCurrentResponderUser/\" + corrId)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n CanUserSaveCorrespondence(corrId): Observable {\r\n return super\r\n .get(this.baseUrl + \"/CanUserSaveCorrespondence/\" + corrId)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n AnyCorrespondenceReplyRequestResponse(corrId): Observable {\r\n return super\r\n .get(this.baseUrl + \"/AnyCorrespondenceReplyRequestResponse/\" + corrId)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n AnyActionReplyRequestResponse(actionId): Observable {\r\n return super\r\n .get(this.baseUrl + \"/AnyActionReplyRequestResponse/\" + actionId)\r\n .pipe(catchError(this.handleError));\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { SharedModule } from 'src/app/shared/shared.module';\r\nimport { ModifySubCorrespondenceComponent } from './common/create-edit/modify-sub-correspondence-cmp';\r\nimport { CorrespondenceHeaderModule } from '../../CorrespondenceActions/correspondence-header-modal';\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n SharedModule,\r\n CorrespondenceHeaderModule\r\n ],\r\n declarations: [\r\n ModifySubCorrespondenceComponent,\r\n ],\r\n exports: [\r\n ModifySubCorrespondenceComponent\r\n ]\r\n})\r\nexport class SubCorrespondenceShared { }","import { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { SubCorrespondenceActionDto } from \"./common/create-edit/sub-correspondenceAction/sub-CorrespondenceAction-cmp\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class SubCorrespondenceSVC extends BaseService {\r\n\r\n isCorrInMyInbox: boolean = false;\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n subCorrespondenceApi = `${BERRY.hostName}api/subCorrespondenceapi/`;\r\n\r\n CreateSubCorrespondenceAction(param: SubCorrespondenceActionDto) {\r\n const me = this;\r\n const url = `${BERRY.hostName}api/CorrespondenceApi/CreateSubCorrespondenceAction`;\r\n return super.post(url, param);\r\n }\r\n getReplySubCorrespondenceActionDirections() {\r\n const me = this;\r\n const url =\r\n me.subCorrespondenceApi + \"GetReplySubCorrespondenceActionDirections\";\r\n return super.get(url);\r\n }\r\n\r\n replySubCorrespondenceAction(replySubCorrespondenceActionDto) {\r\n const me = this;\r\n const url = me.subCorrespondenceApi + \"ReplySubCorrespondenceAction\";\r\n return super.post(url, replySubCorrespondenceActionDto);\r\n }\r\n\r\n saveFinalizeSubCorrespondence(correspondenceId) {\r\n const me = this;\r\n const url = `${\r\n me.subCorrespondenceApi\r\n }SaveFinalizeSubCorrespondence?correspondenceId=${correspondenceId}`;\r\n return super.post(url, correspondenceId);\r\n }\r\n\r\n getCorrespondenceAttachmentsCanBeOutOfSubCorrespondence(correspondenceId) {\r\n const me = this;\r\n let url = `${me.subCorrespondenceApi}GetCorrespondenceAttachmentsCanBeOutOfSubCorrespondence?correspondenceId=${correspondenceId}`;\r\n return super.get(url);\r\n }\r\n\r\n getLinkedDataForSubCorrespondences(correspondenceId) {\r\n const me = this;\r\n let url = `${me.subCorrespondenceApi}GetLinkedDataForSubCorrespondences?correspondenceId=${correspondenceId}`;\r\n return super.get(url);\r\n }\r\n getOutOfSubCorrespondenceAttachments(correspondenceId) {\r\n const me = this;\r\n const url = `${\r\n me.subCorrespondenceApi\r\n }GetLinkedStudySubCorrespondences?correspondenceId=${correspondenceId}`;\r\n return super.get(url);\r\n }\r\n\r\n CheckIfCorrIsInMyInbox(corrId): any {\r\n const me = this;\r\n const url = `${me.subCorrespondenceApi}CheckIfCorrIsInMyInbox?corrId=${corrId}`;\r\n return this.http.post(url, corrId);\r\n }\r\n}\r\n","export enum OverviewType {\r\n None = -1,\r\n BasicOverview = 0,\r\n ManagerialInternalOverview = 1,\r\n ManagerialIncomingOverview = 2,\r\n ManagerialOutgoingOverview = 3,\r\n MultipleOutgoingOverview = 4 \r\n}","import { Observable } from \"rxjs\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { ExternalEmailItemBasicInfo } from \"../../_models/ExternalEmail/ExternalEmailItemBasicInfo\";\r\nimport { ExternalEmailItemInfo } from \"../../_models/ExternalEmail/ExternalEmailItemInfo\";\r\nimport { ExternalEmailsPermission } from \"../../manage/ExternalEmails/ExternalEmailsPermissions.model\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class ExternalEmailsService extends BaseService {\r\n isSubscribed: boolean = true;\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n recordsPerPage = BERRY.PageSize;\r\n public List(SelectedPage, SourceId): Observable {\r\n let url = BERRY.hostName + \"api/ExternalEmailsApi/List?pageIndex=\" + SelectedPage + \"&sourceId=\" + SourceId;\r\n return super.get(url);\r\n }\r\n\r\n public GetBasic(id: string): Observable {\r\n if (!this.IsBusy) {\r\n this.IsBusy = true;\r\n let me = this;\r\n return super.get(\r\n BERRY.hostName +\r\n \"Correspondences/api/ExternalEmailsApi/getbasic?id=\" +\r\n id\r\n );\r\n }\r\n }\r\n\r\n public Get(id: string): Observable {\r\n if (!this.IsBusy) {\r\n this.IsBusy = true;\r\n let me = this;\r\n return super.get(\r\n BERRY.hostName + \"api/ExternalEmailsApi/get?id=\" + id\r\n );\r\n }\r\n }\r\n\r\n public GetPermission(\r\n source: number,\r\n userid: string,\r\n OnSuccess: (data: ExternalEmailsPermission) => void,\r\n OnFail: (fail: string) => void\r\n ): void {\r\n this.IsBusy = true;\r\n let me = this;\r\n super\r\n .get(\r\n BERRY.hostName +\r\n \"api/ExternalEmailsApi/GetPermission?source=\" +\r\n source +\r\n \"&userId=\" +\r\n userid\r\n )\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n data => {\r\n me.IsBusy = false;\r\n OnSuccess(data);\r\n },\r\n fail => {\r\n me.IsBusy = false;\r\n OnFail(fail);\r\n }\r\n );\r\n }\r\n\r\n public Delete(\r\n id: string,\r\n OnSuccess: (data: boolean) => void,\r\n OnFail: (fail: string) => void\r\n ): void {\r\n this.IsBusy = true;\r\n let me = this;\r\n super\r\n .delete(\r\n BERRY.hostName +\r\n \"api/ExternalEmailsApi/delete?id=\" +\r\n id\r\n )\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n data => {\r\n me.IsBusy = false;\r\n OnSuccess(data);\r\n },\r\n fail => {\r\n me.IsBusy = false;\r\n OnFail(fail);\r\n }\r\n );\r\n }\r\n\r\n _map(item: any): ExternalEmailItemBasicInfo {\r\n let x: ExternalEmailItemBasicInfo = {\r\n AttachementsCount: item.AttachementsCount,\r\n From: item.From,\r\n ReciveDateStr: \"\",\r\n FromDisplayString: item.FromDisplayString,\r\n HasAttachements: item.HasAttachements,\r\n ID: item.ID,\r\n ExternalEntityID: item.ExternalEntityID,\r\n ContactType: item.ContactType,\r\n ContactID: item.ContactID,\r\n ContactName: item.ContactName,\r\n IsImportant: item.IsImportant,\r\n IsProcessed: item.IsProcessed,\r\n IsRead: item.IsRead,\r\n Subject: item.Subject,\r\n RecieveDate: new Date(item.RecieveDate),\r\n ReciveDateAsInt: item.ReciveDateAsInt,\r\n Confidentiality: {\r\n ID: item.Confidentiality.ID,\r\n Text: item.Confidentiality.Text,\r\n TextAr: item.Confidentiality.TextAR,\r\n TextEn: item.Confidentiality.TextEN\r\n }\r\n };\r\n return x;\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class EGovCorrespondencesService extends BaseService {\r\n isBusy = false;\r\n SelectedId = null;\r\n baseURL: string;\r\n isSubscribed: boolean = true;\r\n recordsPerPage = BERRY.PageSize;\r\n selectedGroupId;\r\n\r\n constructor(http: HttpInterceptor) {\r\n super(http);\r\n this.baseURL = `${BERRY.hostName}api/EGovInbox`;\r\n }\r\n\r\n GetInboxList(pageNumber, isRejected, order) {\r\n let url = `${this.baseURL}/List?pageNumber=${pageNumber}&isRejected=${isRejected}&order=${order}`;\r\n return super.get(url);\r\n }\r\n\r\n\r\n GetInboxDetail(itemId) {\r\n let url = `${this.baseURL}/Detail?itemId=${itemId}`;\r\n return super.get(url);\r\n }\r\n\r\n GetGovCorrDetailForCreate(itemId) {\r\n let url = `${this.baseURL}/DetailForCreateCorr?itemId=${itemId}`;\r\n return super.get(url);\r\n }\r\n\r\n GetEGovAttachments(itemId) {\r\n let url = `${this.baseURL}/GetEGovAttachments?itemId=${itemId}`;\r\n return super.get(url);\r\n }\r\n\r\n rejectIncoming(itemId, reason) {\r\n let url = `${this.baseURL}/RejectEGov`;\r\n let params = {\r\n Id: itemId,\r\n RejectionMessage: reason\r\n };\r\n return super.post(url, params);\r\n }\r\n\r\n sendCorrespondenceToYesser(itemId,externalId) {\r\n let params = {\r\n CorrespondenceId: itemId,\r\n ExternalId: externalId,\r\n Id: 0,\r\n RejectionMessage : \"\"\r\n };\r\n let url = `${this.baseURL}/SendCorrespondenceToEGovSystem`;\r\n return super.post(url, params, \"application/json\", false);\r\n }\r\n\r\n unlockEGovCorrespondence(itemId) {\r\n let url = `${this.baseURL}/UnlockEGovCorrespondence?itemId=${itemId}`;\r\n return super.post(url);\r\n }\r\n\r\n LockEGovCorrespondence(itemId) {\r\n let url = `${this.baseURL}/LockEGovCorrespondence?itemId=${itemId}`;\r\n return super.post(url);\r\n }\r\n\r\n RequestExceedsTheLimit(itemId) {\r\n let url = `${this.baseURL}/RequestExceedsTheLimit?CorrId=${itemId}`;\r\n return super.get(url);\r\n }\r\n\r\n IsCategoryValidWithoutAttachment(itemId) {\r\n let url = `${this.baseURL}/IsCategoryValidWithoutAttachment?categoryId=${itemId}`;\r\n return super.get(url);\r\n }\r\n\r\n GetElectronicExternalContacts(itemId) {\r\n let url = `${this.baseURL}/GetElectronicExternalContacts?CorrId=${itemId}`;\r\n return super.get(url);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n}\r\n","import { HttpInterceptor } from \"../../../_common/services/http-interceptor\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { IGlobalSettings } from \"../../../_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { SystemModulesEnum } from \"src/app/_common/components/Attachment/dto/attachmentGroup-dto\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class FooterSvc extends BaseService {\r\n\r\n constructor(public http: HttpInterceptor) { super(http); }\r\n\r\n public GetApllicationHistory(ID): Observable {\r\n return super.get(BERRY.hostName + \"Correspondences/Applications/GetActionsBasicDetails?id=\" + ID + \"&count=3\");\r\n }\r\n\r\n public getAttachments(ID): Observable {\r\n return super.get(BERRY.hostName + \"api/CorrespondenceApi/GetCorrespondenceAttachments?id=\" + ID + \"&basicInfo=\" + true);\r\n }\r\n\r\n public getAttachmentsLight(ID): Observable {\r\n return super.get(`${BERRY.hostName}api/CorrespondenceApi/GetCorrespondenceAttachmentsLight?id=${ID}`);\r\n }\r\n \r\n public GetCorrespondenceAttachments(\r\n corrId, \r\n isDefaultAttachmentOverview = false, \r\n numberOfAttachments = 2, \r\n isCorrespondenceTask = false): any {\r\n var url = \"api/CorrespondenceApi/GetcorrespondenceAttachmentsOverview\";\r\n return this.http\r\n .get(\r\n BERRY.hostName +\r\n url +\r\n \"?id=\" + corrId +\r\n \"&isCorrespondenceTask=\" + isCorrespondenceTask +\r\n \"&isDefaultAttachmentOverview=\" + isDefaultAttachmentOverview + \r\n \"&numberOfAttachments=\" + numberOfAttachments\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
    ","import { Component, NgZone, ViewChild } from \"@angular/core\";\r\nimport { ActivatedRoute, NavigationEnd, Router } from \"@angular/router\";\r\nimport { DomSanitizer } from \"@angular/platform-browser\";\r\nimport { filter, takeWhile } from \"rxjs/operators\";\r\nimport {\r\n trigger,\r\n state,\r\n style,\r\n animate,\r\n transition,\r\n group\r\n} from \"@angular/animations\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { InboxesSVC, AppModuleIdService } from \"./inboxes-svc\";\r\nimport { AppModulesEnum } from \"src/app/_common/models/AppModulesEnum\";\r\nimport { AppState } from \"src/app/app.service\";\r\nimport { UserPermissionService } from \"src/app/_common/services/Permissions/user-permission-service\";\r\nimport { MessagingService } from \"src/app/_common/services/messaging-service\";\r\nimport { generalSettingsSvc } from \"src/app/berry/correspondences/manage/generalSettings/general-settings-svc\";\r\nimport { InboxItemTypes } from \"../_models/enums/InboxItemTypes\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { INavItem, ISidebar, SideBarComponent } from \"src/app/_common/components/berrySidebar/sidebar.component\";\r\nimport { Subscription } from \"rxjs\";\r\nimport { UserProfileSvc } from \"src/app/_common/components/UserProfile/userProfile-Svc\";\r\nimport { SharedInboxesSVC } from \"./shared-inboxes-svc\";\r\nimport { InboxDto } from \"../_models/inboxes-dto\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"corr-inboxes\",\r\n templateUrl: \"./inboxes-ng.html\",\r\n providers: [generalSettingsSvc, SharedInboxesSVC],\r\n\r\n animations: [\r\n trigger(\"flyInOut\", [\r\n state(\r\n \"in\",\r\n style({\r\n width: 120,\r\n transform: \"translateX(0)\",\r\n opacity: 1\r\n })\r\n ),\r\n transition(\"void => *\", [\r\n style({ width: 10, transform: \"translateX(50px)\", opacity: 0 }),\r\n group([\r\n animate(\r\n \"0.3s 0.1s ease\",\r\n style({\r\n transform: \"translateX(0)\",\r\n width: 120\r\n })\r\n ),\r\n animate(\r\n \"0.3s ease\",\r\n style({\r\n opacity: 1\r\n })\r\n )\r\n ])\r\n ]),\r\n transition(\"* => void\", [\r\n group([\r\n animate(\r\n \"0.3s ease\",\r\n style({\r\n transform: \"translateX(50px)\",\r\n width: 10\r\n })\r\n ),\r\n animate(\r\n \"0.3s 0.2s ease\",\r\n style({\r\n opacity: 0\r\n })\r\n )\r\n ])\r\n ])\r\n ])\r\n ]\r\n\r\n})\r\nexport class InboxesCmp extends BaseCmp {\r\n\r\n @ViewChild('sidebar') sidebar: SideBarComponent;\r\n enableCompletedCorrespondencesStatusSettings: boolean;\r\n\r\n unsubscribeRouter: Subscription;\r\n sidebarOptions: ISidebar = {\r\n navagationBased: \"button\",\r\n width: 300,\r\n initSelectedItem: () => {\r\n const sidebarTabId = new URLSearchParams(window.location.search).get('sidebarTabId');\r\n\r\n if (sidebarTabId == \"inbox-late\") {\r\n var filterInboxes = this.sidebarOptions.navItems.find(x => x.automationId == \"SidebarFilteringLabel\");\r\n if (filterInboxes) {\r\n var inboxIndex = this.sidebarOptions.navItems.findIndex(x => x.automationId == \"SidebarFilteringLabel\") + '0' + filterInboxes.children\r\n .findIndex(({ automationId }) => automationId == 'inbox-late');\r\n this.sidebar.selectedButton = inboxIndex;\r\n this.sidebar. openMenus.push( this.sidebarOptions.navItems.findIndex(x => x.automationId == \"SidebarFilteringLabel\")) \r\n return inboxIndex\r\n }\r\n } else if (sidebarTabId == \"correspondenceFollowupId\") {\r\n var filterInboxes = this.sidebarOptions.navItems.find(x => x.automationId == \"SidebarFilteringLabel\");\r\n if (filterInboxes) {\r\n var inboxIndex = this.sidebarOptions.navItems.findIndex(x => x.automationId == \"SidebarFilteringLabel\") + '0' + filterInboxes.children\r\n .findIndex(({ automationId }) => automationId == 'correspondenceFollowupId');\r\n this.sidebar.selectedButton = inboxIndex;\r\n this.sidebar. openMenus.push( this.sidebarOptions.navItems.findIndex(x => x.automationId == \"SidebarFilteringLabel\"))\r\n return inboxIndex\r\n }\r\n }\r\n\r\n if (!sidebarTabId) {\r\n return '0';\r\n }\r\n return sidebarTabId\r\n },\r\n disableResponsive: true,\r\n navItems: []\r\n }\r\n isSubscribed: boolean = true;\r\n showAllInbox: boolean = true;\r\n queryParams: any = {};\r\n InboxId: any = null;\r\n sidebarWidth: any;\r\n hasSearched: boolean = false;\r\n showConfidentialCorrespondencesInboxTab: boolean = false;\r\n dashboardCorrespondenceTypesIds: number[] = [];\r\n\r\n isUserManager: boolean = false;\r\n\r\n isGeneralSecretaryOfProclamationExamination: boolean = false;\r\n ProclamationsImportantSubjectsCommittee: number = 0;\r\n\r\n isUserResercher: boolean = false;\r\n\r\n IsSentToSpecializedEntities: boolean = true;\r\n\r\n\r\n canRefreshInboxes: boolean = false;\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n this.inboxesSVC.entities = [];\r\n this.messagingSvc.unSubscribe(this.subscribeId);\r\n this.unsubscribeRouter.unsubscribe();\r\n }\r\n get _isPersonalDelegationAvailable() {\r\n return BERRY.User.Permissions.IsPersonalDelegationAvailable;\r\n }\r\n\r\n get _isFullImpersonation() {\r\n return BERRY.User.IsFullImpersonation;\r\n }\r\n\r\n get _isOwnershipDelegationAvailable() {\r\n return BERRY.User.Permissions.IsOwnershipDelegationAvailable;\r\n }\r\n get getBusinessUserTypeId() {\r\n return BERRY.User.BusinessUserTypeId;\r\n }\r\n\r\n get presidenentTypeID() {\r\n return BERRY.appSettings.keys.presidenentTypeID;\r\n }\r\n\r\n get letterFeature() {\r\n return BERRY.onOffFeatures.letterFeature;\r\n }\r\n\r\n get isFeatureSharedInboxesEnabled() {\r\n return BERRY.onOffFeatures.SharedInboxes;\r\n }\r\n\r\n get hasTasksModule(): boolean {\r\n return BERRY.User.UserModules.filter(e => e.Id == AppModulesEnum.Tasks).length > 0;\r\n }\r\n\r\n get correspondence_Ownership() {\r\n return BERRY.onOffFeatures.correspondence_Ownership;\r\n }\r\n\r\n get hideCorrespondenceOwnershipInbox(): boolean {\r\n\r\n\r\n return BERRY.appSettings.keys.hideCorrespondenceOwnershipInbox;\r\n }\r\n\r\n get correspondence_Followup() {\r\n return BERRY.onOffFeatures.correspondence_Followup;\r\n }\r\n\r\n get BERRY_FILTERS() {\r\n return BERRY.onOffFeatures.BERRY_FILTERS;\r\n }\r\n\r\n get BERRY_FILTERS_IMPORTANT_URGENT() {\r\n return BERRY.onOffFeatures.BERRY_FILTERS_IMPORTANT_URGENT;\r\n }\r\n\r\n get BERRY_FILTERS_LATE() {\r\n return BERRY.onOffFeatures.BERRY_FILTERS_LATE;\r\n }\r\n\r\n get BERRY_FILTERS_COMPLETED_CORRESPONDENCES() {\r\n return BERRY.onOffFeatures.BERRY_FILTERS_COMPLETED_CORRESPONDENCES;\r\n }\r\n\r\n get BERRY_FILTERS_SIGNATURE_REQUESTS() {\r\n return BERRY.onOffFeatures.BERRY_FILTERS_SIGNATURE_REQUESTS;\r\n }\r\n\r\n get BERRY_FILTERS_MYTASKS() {\r\n return BERRY.onOffFeatures.BERRY_FILTERS_MYTASKS;\r\n }\r\n\r\n\r\n\r\n\r\n\r\n get FILTER_FromRoyalCourt() {\r\n return BERRY.onOffFeatures.FILTER_FromRoyalCourt;\r\n }\r\n\r\n get isProclemationModel() {\r\n let me = this;\r\n if (me.inboxesSVC.appModuleId == AppModulesEnum.Proclamation)\r\n return true;\r\n return false;\r\n }\r\n\r\n get isCorrespondenceModel() {\r\n let me = this;\r\n if (me.inboxesSVC.appModuleId == AppModulesEnum.Correspondences)\r\n return true;\r\n return false;\r\n }\r\n\r\n get royalCourtInboxTab() {\r\n return BERRY.appSettings.keys.royalCourtInboxTab;\r\n }\r\n\r\n get showInboxEntitiesEmployeeCounter() {\r\n return BERRY.appSettings.keys.ShowInboxEntitiesEmployeeCounter;\r\n }\r\n\r\n get IsManager() {\r\n return BERRY.User.IsManager == 'true' || BERRY.User.IsCommitteeManager == 'true';\r\n }\r\n\r\n get IsImpersonatedHasOwnerShipInbox() {\r\n return BERRY.User.IsImpersonatedHasOwnershipInbox;\r\n }\r\n get IsUserPermittedToViewEntitySentbox() {\r\n return BERRY.User.IsUserPermittedToViewEntitySentbox;\r\n }\r\n\r\n get IsUserHasSharedInboxes() {\r\n return BERRY.User.IsUserHasSharedInboxes;\r\n }\r\n\r\n private approveFieldVisitPermission: boolean = false;\r\n get fieldVisitApproveTab() {\r\n return false;\r\n }\r\n\r\n @ViewChild(\"initVals\") public initVals: any;\r\n @ViewChild(\"corrListSidebar\") corrListSidebar: any;\r\n\r\n public errorMessage: string;\r\n\r\n public remindersInboxCount = 0;\r\n public totalApplicationsCountAll = 0;\r\n public totalApplicationsCount = 0;\r\n\r\n\r\n\r\n public inboxFilter = {\r\n immediately: false,\r\n veryUrgent: false,\r\n urgent: false,\r\n normalSpecific: false,\r\n notUrgent: false,\r\n topSecret: false,\r\n verySecret: false,\r\n secret: false,\r\n notSecret: false,\r\n important: false,\r\n notImportant: false,\r\n isPrivate: false,\r\n isSaved: false,\r\n OnlyLate: false,\r\n selectAllFilter: false,\r\n follwupDateFillter: false,\r\n prohibited: false,\r\n asCopy: false,\r\n asOriginal: true,\r\n Confid_Level5: false,\r\n Confid_Level6: false,\r\n Confid_Level7: false,\r\n Confid_Level8: false,\r\n Confid_Level9: false,\r\n IsCompleted: false,\r\n FolderId: null,\r\n };\r\n\r\n public defaultInboxFilterVals() {\r\n this.inboxFilter = this.defaultInboxFilters();\r\n\r\n this.inboxesSVC.params.SearchFilter.IsDeleted = false;\r\n this.inboxesSVC.params.SearchFilter.isPrivate = false;\r\n this.inboxesSVC.params.SearchFilter.IsSaved = false;\r\n this.inboxesSVC.params.SearchFilter.IsImportant = null;\r\n this.inboxesSVC.params.SearchFilter.UrgencyIds = null;\r\n this.inboxesSVC.params.SearchFilter.ConfidentialityIds = null;\r\n this.inboxesSVC.params.SearchFilter.SelectedPage = 1;\r\n this.inboxesSVC.params.SearchFilter.PageSize = 30;\r\n this.inboxesSVC.params.SearchFilter.CorrespondenceCategoryIds = [];\r\n this.inboxesSVC.params.CCEntitiyIds = null;\r\n this.inboxesSVC.myCCEntityIds = [];\r\n this.inboxesSVC.params.IsIncludePersonalCopy = false;\r\n this.inboxesSVC.params.SearchFilter.CorrespondenceTypeIds = [];\r\n this.inboxesSVC.params.SearchFilter.IsFromDashboard = null;\r\n\r\n this.inboxesSVC.params.CorrespondenceCategoryId = null;\r\n this.inboxesSVC.params.SearchFilter.asCopy = false;\r\n }\r\n\r\n public defaultInboxFilters() {\r\n return {\r\n veryUrgent: false,\r\n urgent: false,\r\n normalSpecific: false,\r\n notUrgent: false,\r\n topSecret: false,\r\n verySecret: false,\r\n secret: false,\r\n notSecret: false,\r\n important: false,\r\n notImportant: false,\r\n isPrivate: false,\r\n isSaved: false,\r\n OnlyLate: false,\r\n selectAllFilter: false,\r\n immediately: false,\r\n follwupDateFillter: false,\r\n prohibited: false,\r\n asCopy: false,\r\n asOriginal: true,\r\n Confid_Level5: false,\r\n Confid_Level6: false,\r\n Confid_Level7: false,\r\n Confid_Level8: false,\r\n Confid_Level9: false,\r\n IsCompleted: false,\r\n FolderId: null\r\n };\r\n }\r\n\r\n public get headerLogo(): boolean {\r\n return BERRY.appSettings.keys.headerLogo;\r\n }\r\n public get footerLogo(): boolean {\r\n return BERRY.appSettings.keys.footerLogo;\r\n }\r\n _isFilterClick = false;\r\n public get selectedInboxId(): string {\r\n return this.inboxesSVC.selectedInboxId;\r\n }\r\n\r\n public isPrintBusy: boolean = false;\r\n\r\n public get isBusy(): boolean {\r\n return this.inboxesSVC.isBusy;\r\n }\r\n\r\n public get isPersonalDelegationAvailable(): boolean {\r\n return BERRY.User.IsPersonalDelegationAvailable;\r\n }\r\n\r\n public get isOwnershipDelegationAvailable(): boolean {\r\n return BERRY.User.IsOwnershipDelegationAvailable;\r\n }\r\n\r\n public get isEntityDelegationAvailable(): boolean {\r\n return BERRY.User.IsEntityDelegationAvailable;\r\n }\r\n\r\n isOwnershipDelegationOnly() {\r\n\r\n if (\r\n this.isOwnershipDelegationAvailable &&\r\n !this.isPersonalDelegationAvailable &&\r\n !this.isEntityDelegationAvailable\r\n ) {\r\n return true;\r\n }\r\n else {\r\n\r\n return false;\r\n }\r\n }\r\n\r\n public get ShowComplatedCorrespondenceInbox(): boolean {\r\n return BERRY.User.Permissions.ShowComplatedCorrespondenceInbox;\r\n }\r\n\r\n public get isImpersonated(): boolean {\r\n return BERRY.User.IsImpersonated;\r\n }\r\n\r\n public get hideCorrespondenceImportance(): boolean {\r\n return BERRY.appSettings.keys.HideCorrespondenceImportance;\r\n }\r\n\r\n public get hideProclamationImportance(): boolean {\r\n return BERRY.appSettings.keys.HideProclamationImportance;\r\n }\r\n\r\n public get SignatureRequests(): boolean {\r\n return BERRY.User.SignatureRequests;\r\n }\r\n\r\n public get IsPersonalInbox() {\r\n return this.inboxesSVC.params.InboxItemType == 'Personal';\r\n }\r\n\r\n InboxItemType: any = null; //to be used for checking the selected inbox type in case multiple types has same id\r\n\r\n constructor(\r\n public inboxesSVC: InboxesSVC,\r\n public activatedRoute: ActivatedRoute,\r\n public router: Router,\r\n public sanitizer: DomSanitizer,\r\n public zone: NgZone,\r\n public appState: AppState,\r\n public appModuleId: AppModuleIdService,\r\n public roleService: UserPermissionService,\r\n public messagingSvc: MessagingService,\r\n public generalSettingSvc: generalSettingsSvc,\r\n public _toaster: ToastrService,\r\n public userProfileSvc: UserProfileSvc,\r\n public sharedInboxesSVC: SharedInboxesSVC\r\n ) {\r\n super();\r\n this.inboxesSVC.appModuleId = this.appModuleId.appModuleId;\r\n const me = this;\r\n me.approveFieldVisitPermission = BERRY.User.Permissions.ApproveFieldVisit;\r\n }\r\n\r\n init() {\r\n let me = this;\r\n me.generalSettingSvc.GetDashboardCorrespondenceTypes()\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(response => {\r\n if (response) {\r\n me.dashboardCorrespondenceTypesIds = response.result;\r\n me.subscribeToGlobalRoute();\r\n this.subscribeAdd();\r\n me.messagingSvc.subscribe(\"getInboxesCounts\", data => {\r\n if (data == \"CommitteeInbox\") {\r\n this.getInboxes();\r\n }\r\n })\r\n var currentUrl = location.pathname;\r\n var splitAfterStr = '/inboxes/';\r\n var selectedInbox = currentUrl.substring(location.pathname.lastIndexOf(splitAfterStr) + splitAfterStr.length);\r\n\r\n if (this.isImpersonated == true && this.isOwnershipDelegationOnly()) {\r\n var selectedButton = me.sidebarOptions.navItems.findIndex(c => c.automationId == 'responsible-for-them-correspondence-inbox');\r\n this.sidebar.selectedButton = selectedButton.toString();\r\n this.selectInbox_click(InboxItemTypes.Ownership, null, null, true);\r\n }\r\n else {\r\n this.inboxesSVC.selectedInboxId = selectedInbox;\r\n const inboxItemType = this.activatedRoute.snapshot.queryParams.InboxItemType;\r\n var isFromDashboard = this.setIsFromDashboaredParam();\r\n this.selectInbox_click(this.inboxesSVC.selectedInboxId, inboxItemType, null, true, isFromDashboard);\r\n }\r\n\r\n }\r\n });\r\n me.getEnableCompletedCorrespondencesStatusSettings();\r\n\r\n this.activatedRoute.queryParams.subscribe((res) => {\r\n if (res.sidebarTabId && this.sidebar) {\r\n this.sidebar.selectedButton = res.sidebarTabId\r\n }\r\n });\r\n }\r\n\r\n getEnableCompletedCorrespondencesStatusSettings() {\r\n let me = this;\r\n me.generalSettingSvc\r\n .GetValue(\"CorrespondencesSetting\", \"EnableCompletedCorrespondencesStatus\", \"false\")\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(response => {\r\n if (response == 'true') {\r\n me.enableCompletedCorrespondencesStatusSettings = true;\r\n }\r\n else {\r\n me.enableCompletedCorrespondencesStatusSettings = false;\r\n }\r\n });\r\n }\r\n\r\n CheckCurrentUserIsManager() {\r\n let me = this;\r\n this.inboxesSVC\r\n .CheckCurrentUserIsManager()\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data.Status == true)\r\n me.isUserManager = true;\r\n },\r\n error => (this.errorMessage = error)\r\n );\r\n }\r\n\r\n CheckGeneralSecretaryOfProclamationExamination() {\r\n let me = this;\r\n this.inboxesSVC\r\n .CheckGeneralSecretaryOfProclamationExamination()\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data.Status == true)\r\n me.isGeneralSecretaryOfProclamationExamination = true;\r\n },\r\n error => (this.errorMessage = error)\r\n );\r\n }\r\n\r\n CheckCurrentUserIsResercher() {\r\n let me = this;\r\n this.inboxesSVC\r\n .CheckCurrentUserIsResercher()\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data.Status == true)\r\n me.isUserResercher = true;\r\n },\r\n error => (this.errorMessage = error)\r\n );\r\n }\r\n\r\n resetDefaultParameters(data: any) {\r\n data.queryParams.CorrespondenceCategoryId = null;\r\n data.queryParams.CorrespondenceCategoryIds = [];\r\n data.queryParams.orderby =\r\n \"ActionDate \" + (this.inboxesSVC.sortAsc ? \"asc\" : \"desc\");\r\n data.queryParams.EntityIdInbox = null;\r\n data.queryParams.important = false;\r\n //data.queryParams.InboxItemType = null;\r\n data.queryParams.IsImportant = null;\r\n data.queryParams.isPrivate = false;\r\n data.queryParams.RecipientType = null;\r\n data.queryParams.isSaved = false;\r\n data.queryParams.notImportant = false;\r\n data.queryParams.important = false;\r\n data.queryParams.notSecret = false;\r\n data.queryParams.secret = false;\r\n data.queryParams.verySecret = false;\r\n data.queryParams.topSecret = false;\r\n data.queryParams.notUrgent = false;\r\n data.queryParams.urgent = false;\r\n data.queryParams.veryUrgent = false;\r\n data.queryParams.OnlyLate = false;\r\n data.queryParams.PageSize = 30;\r\n data.queryParams.SelectedPage = 1;\r\n data.queryParams.ConfidentialityIds = null;\r\n data.queryParams.UrgencyIds = null;\r\n data.queryParams.sortAsc = false;\r\n data.queryParams.OnlyLate = false;\r\n data.queryParams.FolderId = 0;\r\n }\r\n\r\n subscribeToGlobalRoute() {\r\n const me = this;\r\n this.appState.RouteChange.pipe(takeWhile(() => me.isSubscribed)).subscribe(\r\n data => {\r\n var children = data[\"children\"];\r\n me.queryParams = {};\r\n\r\n if (!children || children.length === 0) {\r\n me.queryParams = this.defaultInboxFilters();\r\n } else {\r\n me.queryParams = children[0].value.queryParams;\r\n }\r\n\r\n if (!this.isEmpty(me.queryParams)) {\r\n me.sSetSearchUrl(me.router.url, false);\r\n }\r\n\r\n if (me.bSeachQueryParams()) {\r\n me.bSeachQueryParams(true);\r\n me.vNavigateToStorageSearchUrl();\r\n }\r\n\r\n me.InboxId = null;\r\n me.InboxItemType = null;\r\n\r\n try {\r\n me.InboxId = children[\"0\"].children[\"0\"].children[\"0\"].children[\"0\"].children[\"0\"].value.params.InboxId;\r\n\r\n if (!me.InboxId) {\r\n //get external email selected inbox selected id\r\n //THIS IS A WORKAROUND, all components [inboxes-cpm, corr-list-cpm, and email-list-cmp] MUST negotiate throgh a service\r\n if (\r\n children[\"0\"] &&\r\n children[\"0\"].children[\"0\"] &&\r\n children[\"0\"].children[\"0\"].children[\"0\"] &&\r\n children[\"0\"].children[\"0\"].children[\"0\"].value &&\r\n children[\"0\"].children[\"0\"].children[\"0\"].value.url &&\r\n children[\"0\"].children[\"0\"].children[\"0\"].value.url.length &&\r\n children[\"0\"].children[\"0\"].children[\"0\"].value.url.length > 1 &&\r\n children[\"0\"].children[\"0\"].children[\"0\"].value.url[1].path\r\n ) {\r\n me.InboxId =\r\n children[\"0\"].children[\"0\"].children[\"0\"].value.url[1].path;\r\n me.InboxItemType = \"ExternalEmail\";\r\n }\r\n }\r\n\r\n\r\n if (!me.InboxId || me.InboxId.startsWith(\"ALL\")) {\r\n me.InboxId = null;\r\n let subscribeObjInner = me.router.routerState.root.queryParams\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(params => {\r\n let ConsultanteDashBoardFilter: string = params[\"SearchType\"];\r\n if (ConsultanteDashBoardFilter != null) {\r\n ConsultanteDashBoardFilter = ConsultanteDashBoardFilter.toLowerCase();\r\n if (ConsultanteDashBoardFilter == \"filterimportant\") {\r\n me.queryParams.important = true;\r\n me.queryParams.IsImportant = true;\r\n } else if (ConsultanteDashBoardFilter == \"filterveryurgent\") {\r\n me.queryParams.urgent = true;\r\n me.queryParams.UrgencyIds = \"2\";\r\n } else if (ConsultanteDashBoardFilter == \"filterurgent\") {\r\n me.queryParams.urgent = true;\r\n me.queryParams.UrgencyIds = \"1\";\r\n } else if (ConsultanteDashBoardFilter == \"filternoturgent\") {\r\n me.queryParams.notUrgent = true;\r\n me.queryParams.UrgencyIds = \"0\";\r\n }\r\n }\r\n });\r\n }\r\n\r\n if (me.queryParams && Object.keys(me.queryParams).length > 0)\r\n me.setParamsFromQueryParams(me.queryParams);\r\n\r\n if (this.inboxesSVC.selectedInboxId === \"CasefilesProcessedByImportantSubjectsCommittee\")\r\n me.getProclamationsImportantSubjectsCommittee();\r\n else if (me.InboxId == InboxItemTypes.CustomCategory)\r\n me.collectSelectedInbox(me.InboxId, me.queryParams.InboxItemType, me.queryParams.CorrespondenceCategoryId);\r\n else\r\n me.collectSelectedInbox(me.InboxId, me.queryParams.InboxItemType, null);\r\n\r\n me.inboxesSVC.setPage.next(\r\n this.inboxesSVC.params.SearchFilter.SelectedPage\r\n );\r\n me.inboxesSVC.inboxClicked.next(null);\r\n } catch (Error) {\r\n console.warn(\"inboxes-cmp.ts getting InboxId raised an exception!\");\r\n }\r\n }\r\n );\r\n }\r\n\r\n ngSuperOnInit() {\r\n this.inboxesSVC.isBusy = true;\r\n const me = this;\r\n this.init();\r\n\r\n this.inboxesSVC.sortByQualitativeWeight = true;\r\n\r\n me.inboxesSVC.onPageChanged\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(selectedInboxId => {\r\n var isFromDashboard = this.setIsFromDashboaredParam();\r\n me.changeURL(selectedInboxId, null, isFromDashboard);\r\n });\r\n\r\n me.inboxesSVC.FollowChange.pipe(takeWhile(() => me.isSubscribed)).subscribe(\r\n Followed => {\r\n let duplicateObject = Object.assign({}, me.inboxesSVC.otherInboxCounts);\r\n\r\n if (Followed) {\r\n var followupCounterInt =\r\n +me.inboxesSVC.otherInboxCounts.followUpInboxCount + 1;\r\n } else {\r\n var followupCounterInt =\r\n +me.inboxesSVC.otherInboxCounts.followUpInboxCount - 1;\r\n }\r\n\r\n if (followupCounterInt < 0) followupCounterInt = 0;\r\n\r\n var followupCounter = followupCounterInt.toString();\r\n duplicateObject.followUpInboxCount = followupCounter;\r\n me.inboxesSVC.otherInboxCounts = duplicateObject;\r\n }\r\n );\r\n\r\n me.getShowConfidentialCorrespondences();\r\n this.unsubscribeRouter = this.router.events\r\n .pipe(filter(event => event instanceof NavigationEnd && !event.url.includes(\"sidebarTabId\")))\r\n .subscribe(() => {\r\n this.sidebar.selectedButton = \"0\";\r\n });\r\n\r\n }\r\n\r\n ngSuperAfterViewInit() {\r\n let me = this;\r\n\r\n me.sidebarWidth = localStorage.getItem(\"inboxSidebarWidth\");\r\n if (me.sidebarWidth) {\r\n me.setSidebarWidth(null);\r\n }\r\n\r\n if (!BERRY.User.IsImpersonated) {\r\n me.fillCustomCategoryInboxes();\r\n }\r\n\r\n me.toggleSidebarFilterLists();\r\n }\r\n\r\n toggleSidebarFilterLists() {\r\n this.userProfileSvc.GetUserPreferencesByKey('collapseInboxesFilterLists')\r\n .subscribe(value => {\r\n const sidebarFilteringIndex = this.sidebarOptions.navItems.findIndex((item) => {\r\n return item.automationId == \"SidebarFilteringLabel\"\r\n });\r\n if (value == 'true') {\r\n this.sidebar.openMenus = [];\r\n } else {\r\n this.sidebar.openMenus = [sidebarFilteringIndex];\r\n }\r\n });\r\n }\r\n\r\n saveSidebarFilterPreference(value) {\r\n\r\n this.userProfileSvc\r\n .SetUserPreferences('collapseInboxesFilterLists', value)\r\n .subscribe();\r\n }\r\n\r\n setSidebarWidth(event) {\r\n let me = this;\r\n let min = 250,\r\n max = 350,\r\n mainMin = 600;\r\n let windowWidth =\r\n window.innerWidth ||\r\n document.documentElement.clientWidth ||\r\n document.body.clientWidth;\r\n\r\n if (event) {\r\n if (BERRY.isEn) {\r\n me.sidebarWidth = event.pageX;\r\n } else {\r\n me.sidebarWidth = windowWidth - event.pageX;\r\n }\r\n }\r\n\r\n if (\r\n me.sidebarWidth > min &&\r\n me.sidebarWidth < max &&\r\n me.sidebarWidth < windowWidth - mainMin\r\n ) {\r\n if (me.corrListSidebar) {\r\n if (me.corrListSidebar.nativeElement)\r\n me.corrListSidebar.nativeElement.style.width = me.sidebarWidth + \"px\";\r\n }\r\n\r\n let corrListContainer = document.querySelector(\r\n \"corr-list .corr-list-container\"\r\n );\r\n\r\n let EgovListContainer = document.querySelector(\r\n \"eGov-corr-list .corr-list-container\"\r\n );\r\n if (corrListContainer) {\r\n (corrListContainer).style.width =\r\n \"calc(100% - \" + me.sidebarWidth + \"px\" + \")\";\r\n }\r\n\r\n if (EgovListContainer) {\r\n (EgovListContainer).style.width =\r\n \"calc(100% - \" + me.sidebarWidth + \"px\" + \")\";\r\n }\r\n\r\n let navfilterContainer = document.querySelector(\r\n \"corr-list .navfilter-container\"\r\n );\r\n let eGovNavfilterContainer = document.querySelector(\r\n \"corr-list .navfilter-container\"\r\n );\r\n if (navfilterContainer) {\r\n (navfilterContainer).style.width =\r\n \"calc(100% - \" + me.sidebarWidth + \"px)\";\r\n\r\n if (BERRY.isEn) {\r\n (navfilterContainer).style.left = me.sidebarWidth + \"px\";\r\n } else {\r\n (navfilterContainer).style.right =\r\n me.sidebarWidth + \"px\";\r\n }\r\n }\r\n\r\n if (eGovNavfilterContainer) {\r\n (eGovNavfilterContainer).style.width =\r\n \"calc(100% - \" + me.sidebarWidth + \"px)\";\r\n\r\n if (BERRY.isEn) {\r\n (eGovNavfilterContainer).style.left = me.sidebarWidth + \"px\";\r\n } else {\r\n (eGovNavfilterContainer).style.right =\r\n me.sidebarWidth + \"px\";\r\n }\r\n }\r\n\r\n let footerContainer = document.querySelector(\r\n \"corr-list-footer .footer-container\"\r\n );\r\n\r\n let eGovfooterContainer = document.querySelector(\r\n \"corr-list-footer .footer-container\"\r\n );\r\n\r\n if (footerContainer) {\r\n if (BERRY.isEn) {\r\n (footerContainer).style.left =\r\n parseInt(me.sidebarWidth) + 13 + \"px\";\r\n } else {\r\n (footerContainer).style.right =\r\n parseInt(me.sidebarWidth) + 13 + \"px\";\r\n }\r\n }\r\n\r\n if (eGovfooterContainer) {\r\n if (BERRY.isEn) {\r\n (eGovfooterContainer).style.left =\r\n parseInt(me.sidebarWidth) + 13 + \"px\";\r\n } else {\r\n (eGovfooterContainer).style.right =\r\n parseInt(me.sidebarWidth) + 13 + \"px\";\r\n }\r\n }\r\n\r\n if (windowWidth < 1440 && me.sidebarWidth > min) {\r\n let inboxItemList = document.querySelectorAll(\"corr-list\");\r\n let inboxItems = null;\r\n if (inboxItemList) {\r\n inboxItems = Array.prototype.slice.call(inboxItemList, 0);\r\n inboxItems.forEach(function (element) {\r\n (element).classList.add(\"hide-dividers\");\r\n });\r\n }\r\n } else {\r\n let inboxItemList = document.querySelectorAll(\"corr-list\");\r\n let inboxItems = null;\r\n if (inboxItemList) {\r\n inboxItems = Array.prototype.slice.call(inboxItemList, 0);\r\n inboxItems.forEach(function (element) {\r\n (element).classList.remove(\"hide-dividers\");\r\n });\r\n }\r\n }\r\n\r\n localStorage.setItem(\"inboxSidebarWidth\", me.sidebarWidth.toString());\r\n }\r\n }\r\n\r\n getInboxes() {\r\n const me = this;\r\n if (!me.canRefreshInboxes)\r\n return;\r\n this.inboxesSVC\r\n .getInboxes()\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n inboxes => {\r\n if (!!inboxes) {\r\n me.inboxesSVC.inboxes = inboxes;\r\n this.sidebarOptions.navItems = inboxes.map((inbox) => ({\r\n text: inbox.Text,\r\n icon: inbox.Icon,\r\n type: 'item',\r\n number: () => inbox.InboxItemType != InboxItemTypes.SharedInboxes ? inbox.Count : null,\r\n unread: () => inbox.InboxItemType != InboxItemTypes.SharedInboxes ? inbox.UnSeenCount : null,\r\n automationId: inbox.AutomationId,\r\n event: () => inbox.InboxItemType != InboxItemTypes.SharedInboxes ? this.selectInbox(inbox) : null,\r\n children: this.FillInboxChildren(inbox),\r\n collapsibleSubMenu: inbox.InboxItemType == InboxItemTypes.FilterInboxes ? true : false,\r\n identfire: inbox.InboxItemType,\r\n } as INavItem));\r\n this.sidebar.ngSuperOnInit()\r\n me.FillOtherInboxCounts();\r\n me.canRefreshInboxes = false;\r\n }\r\n },\r\n error => (this.errorMessage = error)\r\n );\r\n }\r\n\r\n selectInbox(inbox: InboxDto) {\r\n if (inbox.InboxItemType == InboxItemTypes.FilterInboxes) {\r\n const isExpanded = (this.sidebar.openMenus.length == 0).toString();\r\n this.saveSidebarFilterPreference(isExpanded);\r\n } else\r\n return this.selectInbox_click(inbox.Id, inbox.InboxItemType, inbox.CanEditCommittee, false, false, null, inbox.UserId, inbox.IsSharedInbox, inbox.FolderId);\r\n }\r\n\r\n FillInboxChildren(inbox) {\r\n if (!!inbox.Children) {\r\n return inbox.Children.map((childInbox) => ({\r\n text: childInbox.Text,\r\n icon: childInbox.Icon,\r\n type: 'item',\r\n number: () => childInbox.Count,\r\n unread: () => childInbox.UnSeenCount,\r\n automationId: childInbox.AutomationId,\r\n event: () => this.selectInbox(childInbox),\r\n children: this.FillInboxChildren(childInbox),\r\n identfire: childInbox.InboxItemType\r\n }) as INavItem)\r\n }\r\n }\r\n\r\n subscribeId: any;\r\n subscribeAdd() {\r\n const me = this;\r\n me.subscribeId = me.messagingSvc.subscribe(\"RefreshInboxesCountersAdd\", data => {\r\n var type = data;\r\n if (typeof (data) == \"object\") {\r\n this.canRefreshInboxes = data.canRefreshInboxes;\r\n type = data.type;\r\n }\r\n if (type === \"RefreshInboxesCounters\") {\r\n this.getInboxes();\r\n\r\n }\r\n if (type === \"RefreshOtherInboxCountsOnly\")\r\n me.FillOtherInboxCounts();\r\n });\r\n }\r\n\r\n FillOtherInboxCounts() {\r\n let me = this;\r\n me.inboxesSVC\r\n .getOtherInboxesCounts(this.inboxesSVC.params.SearchFilter.OnlyLate)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n data => {\r\n me.inboxesSVC.otherInboxCounts = data;\r\n me.setNavItemCounts(me.sidebarOptions.navItems, data);\r\n me.sidebarOptions.navItems.forEach(e => {\r\n if (!!e.children && e.children.length > 0)\r\n me.setNavItemCounts(e.children, data);\r\n var externalInboxs = me.inboxesSVC.inboxes.filter(a => a.InboxItemType == InboxItemTypes.ExternalEmail);\r\n\r\n if (externalInboxs) {\r\n externalInboxs.forEach(function (item) {\r\n var emailData = data.ExternalEmail.filter(a => a.EntityId == item.Id);\r\n if (emailData) {\r\n var child = this.sidebarOptions.navItems[0].children.filter(a => a.automationId == `inbox-${item.Id}`);\r\n if (child?.length > 0)\r\n child[0].number = emailData[0].Num;\r\n }\r\n })\r\n }\r\n if (data.CustomCategoryInboxCountList) {\r\n this.fillCustomCategoryInboxesCount(data.CustomCategoryInboxCountList);\r\n }\r\n })\r\n\r\n }, error => (this.errorMessage = error)\r\n );\r\n }\r\n\r\n setNavItemCounts(navItems, counts) {\r\n const me = this;\r\n navItems.forEach(function (item: INavItem) {\r\n if (!!item.identfire) {\r\n switch (item.identfire) {\r\n case InboxItemTypes.Ownership:\r\n item.number = +counts.ownershipInboxCount;\r\n item.unread = +counts.UnSeenOwnership;\r\n break;\r\n case InboxItemTypes.EntitySentbox:\r\n item.number = +counts.EntitySentboxCount;\r\n item.unread = +counts.UnSeenEntitySentboxCount;\r\n break;\r\n case InboxItemTypes.ImportantUrgent:\r\n item.number = +counts.importantUrgentInboxCount;\r\n item.unread = +counts.UnSeenImportantAndUrgent;\r\n break;\r\n case InboxItemTypes.Urgent:\r\n item.number = +counts.UrgentInboxCount;\r\n item.unread = +counts.UnSeenUrgent;\r\n break;\r\n case InboxItemTypes.Late:\r\n item.number = +counts.lateInboxCount;\r\n item.unread = +counts.UnSeenLate;\r\n break;\r\n case InboxItemTypes.CompletedCorrespondence:\r\n item.number = +counts.ComplatedCorrespondenceInboxCount;\r\n item.unread = +counts.UnSeenCompleted;\r\n break;\r\n case InboxItemTypes.SignatureRequests:\r\n item.number = +counts.signatureRequestsCount;\r\n item.unread = +counts.UnSeenSignatureRequests;\r\n break;\r\n case InboxItemTypes.MyTasks:\r\n item.number = +counts.myTasksCount;\r\n item.unread = +counts.UnSeenMyTasks;\r\n break;\r\n case InboxItemTypes.Letter:\r\n item.number = +counts.letterInboxCount;\r\n break;\r\n case InboxItemTypes.Followup:\r\n item.number = +counts.followUpInboxCount;\r\n item.unread = +counts.UnSeenFollowUp;\r\n break;\r\n case InboxItemTypes.ConfidentialToMe:\r\n item.number = +counts.ConfidentialToMeInboxCount;\r\n item.unread = +counts.UnSeenConfidentialToMeInboxCount;\r\n break;\r\n case InboxItemTypes.IncomingFromRoyalCourt:\r\n item.number = +counts.RoyalCourtInboxCount;\r\n break;\r\n case InboxItemTypes.RemindersInbox:\r\n item.number = +counts.ReminderCount;\r\n break;\r\n case InboxItemTypes.EGovInbox:\r\n item.number = +counts.EGovInbox;\r\n break;\r\n case InboxItemTypes.Draft:\r\n item.number = +counts.draftInboxCount;\r\n break;\r\n default:\r\n break;\r\n };\r\n }\r\n\r\n });\r\n }\r\n\r\n fillCustomCategoryInboxes() {\r\n let me = this;\r\n me.inboxesSVC\r\n .getCustomCategoriesInboxes()\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n data => {\r\n me.inboxesSVC.customCategoriesInboxes = data != null ? data.result : [];\r\n let inboxItems = this.getCustomCategoriesInboxItems();\r\n if (inboxItems != null && inboxItems.length > 0) {\r\n let navItems = me.sidebarOptions.navItems;\r\n let sidebarFilteringLists = navItems[navItems.length - 1];\r\n sidebarFilteringLists?.children?.push(...inboxItems);\r\n }\r\n },\r\n error => (this.errorMessage = error)\r\n );\r\n }\r\n\r\n fillCustomCategoryInboxesCount(data) {\r\n for (let i = 0; i < data.length; i++) {\r\n var child = this.sidebarOptions.navItems.filter(a => a.automationId == `inbox-custom-catrgory-${data[i].CorrespondenceCategoryId}`);\r\n if (child?.length > 0) {\r\n child[0].number = data[i].InboxCount;\r\n child[0].unread = data[i].UnSeenCount;\r\n }\r\n }\r\n }\r\n\r\n isInboxBusy(): boolean {\r\n if (!this.inboxesSVC.canBrowseWhileLoading) return this.isBusy;\r\n return false;\r\n }\r\n\r\n UserId = null;\r\n FolderId = null;\r\n public selectInbox_click(id, inboxItemType = null, canEditCommittee = null, refreshInboxes = false, isFromDashboard = false, categoryId = null, userId = null, isSharedInbox = null, folderId = null) {\r\n if (this.isImpersonated && id == InboxItemTypes.Outbox && !this._isFullImpersonation) {\r\n this._toaster.error(this.getText('FORBIDDEN', '_Common'));\r\n }\r\n else if (!this.isInboxBusy()) {\r\n if (this.inboxesSVC.isCorrBackClicked && this.inboxesSVC.selectedInboxId == id) {\r\n this.inboxesSVC.setPage.next(this.inboxesSVC.params.SearchFilter.SelectedPage);\r\n }\r\n else {\r\n this.inboxesSVC.setPage.next(1);\r\n }\r\n this.inboxesSVC.isCorrBackClicked = false;\r\n this.inboxesSVC.isInboxClicked = true;\r\n this.canRefreshInboxes = refreshInboxes;\r\n this.inboxesSVC.selectedInboxId = id;\r\n this.inboxesSVC.isEditCommittee = canEditCommittee;\r\n\r\n if (isSharedInbox == null && userId == null) {\r\n if (this.activatedRoute.snapshot &&\r\n this.activatedRoute.snapshot.queryParams &&\r\n this.activatedRoute.snapshot.queryParams.InboxSharedFromUserId) {\r\n isSharedInbox = true;\r\n userId = this.activatedRoute.snapshot.queryParams.InboxSharedFromUserId;\r\n }\r\n }\r\n\r\n if (folderId == null && refreshInboxes) {\r\n if (this.activatedRoute.snapshot &&\r\n this.activatedRoute.snapshot.queryParams &&\r\n this.activatedRoute.snapshot.queryParams.FolderId) {\r\n folderId = this.activatedRoute.snapshot.queryParams.FolderId;\r\n }\r\n }\r\n\r\n this.UserId = userId;\r\n this.FolderId = folderId;\r\n if (inboxItemType == InboxItemTypes.CustomCategory) {\r\n this.collectSelectedInbox(id, inboxItemType, categoryId);\r\n }\r\n else {\r\n this.collectSelectedInbox(id, inboxItemType, null);\r\n }\r\n\r\n this.checkIfInboxSharingIsEnabled(inboxItemType, id, isSharedInbox);\r\n\r\n this.changeURL(id, inboxItemType, isFromDashboard);\r\n }\r\n }\r\n\r\n public applyFilters_click(sortByQualitativeWeight: boolean = false, sortingText: string = \"\") {\r\n this.inboxesSVC.setPage.next(1);\r\n this.inboxesSVC.sortByQualitativeWeight = sortByQualitativeWeight;\r\n this.collectParams();\r\n this._isFilterClick = true;\r\n this.changeURL(this.inboxesSVC.selectedInboxId);\r\n }\r\n\r\n collectParams() {\r\n\r\n this.InboxItemType = null;\r\n let inboxType = this.inboxesSVC.params.InboxItemType;\r\n\r\n if (inboxType == \"\" || inboxType == null)\r\n inboxType = \"All\";\r\n else\r\n if (inboxType == 2)\r\n inboxType = \"PublicInbox\";\r\n else\r\n if (inboxType == \"ImportantUrgent\")\r\n this.inboxesSVC.orderBy = \"OrderWeight,ActionDate \" + (this.inboxesSVC.sortAsc ? \"asc\" : \"desc\");\r\n else if (inboxType == \"CompletedCorrespondence\")\r\n this.inboxesSVC.orderBy = \"OrderWeight,ActionDate \" + (this.inboxesSVC.sortAsc ? \"asc\" : \"desc\");\r\n else if (inboxType == \"ConfidentialToMe\")\r\n this.inboxesSVC.orderBy = \"ActionDate \" + (this.inboxesSVC.sortAsc ? \"asc\" : \"desc\");\r\n else if (inboxType == \"Urgent\")\r\n this.inboxesSVC.orderBy = \"ActionDate \" + (this.inboxesSVC.sortAsc ? \"asc\" : \"desc\");\r\n else if (inboxType == \"Draft\")\r\n this.inboxesSVC.orderBy = \"CorrDate \" + (this.inboxesSVC.sortAsc ? \"asc\" : \"desc\");\r\n else\r\n this.inboxesSVC.orderBy = \"ActionDate \" + (this.inboxesSVC.sortAsc ? \"asc\" : \"desc\");\r\n }\r\n\r\n collectSelectedInbox(id, inboxItemType, categoryId = null) {\r\n const me = this;\r\n this.InboxItemType = inboxItemType\r\n this.inboxesSVC.selectedInboxId = id;\r\n this.inboxesSVC.params.CorrespondenceCategoryId = null;\r\n this.inboxesSVC.params.SearchFilter.CorrespondenceCategoryIds = [];\r\n this.inboxesSVC.params.SearchFilter.InboxSharedFromUserId = this.UserId;\r\n this.inboxesSVC.params.SearchFilter.FolderId = this.FolderId;\r\n if (inboxItemType === \"Personal\" || inboxItemType === \"0\" || inboxItemType === InboxItemTypes.Personal) {\r\n this.inboxesSVC.params.RecipientType = null;\r\n this.inboxesSVC.params.InboxItemType = inboxItemType;\r\n this.inboxesSVC.params.EntityIdInbox = null;\r\n }\r\n else if (inboxItemType === \"MeAsManager\" || inboxItemType === \"1\" || inboxItemType === InboxItemTypes.MeAsManager) {\r\n this.inboxesSVC.params.RecipientType = null;\r\n this.inboxesSVC.params.InboxItemType = inboxItemType;\r\n this.inboxesSVC.params.EntityIdInbox = null;\r\n }\r\n else if (\r\n inboxItemType == 'DivisionApplicationsInbox' || inboxItemType === \"24\" || inboxItemType === InboxItemTypes.DivisionApplicationsInbox ||\r\n inboxItemType == 'EntityInbox' || inboxItemType === \"26\" || inboxItemType === InboxItemTypes.EntityInbox ||\r\n inboxItemType == 'CommitteInbox' || inboxItemType === \"25\" || inboxItemType === InboxItemTypes.CommitteInbox ||\r\n inboxItemType == \"EntityEmployeesApplicationsInbox\" || inboxItemType === \"6\" || inboxItemType === InboxItemTypes.EntityEmployeesApplicationsInbox ||\r\n inboxItemType == \"MyEntityInbox\" || inboxItemType === \"21\" || inboxItemType === InboxItemTypes.MyEntityInbox ||\r\n inboxItemType == \"RemindersInbox\" || inboxItemType === \"3\" || inboxItemType === InboxItemTypes.RemindersInbox\r\n ) {\r\n this.inboxesSVC.params.RecipientType = null;\r\n this.inboxesSVC.params.InboxItemType = inboxItemType;\r\n this.inboxesSVC.params.EntityIdInbox = id;\r\n }\r\n else if (inboxItemType == \"ConfidentialToMe\" || inboxItemType === \"18\" || inboxItemType === InboxItemTypes.ConfidentialToMe) {\r\n this.inboxesSVC.params.RecipientType = null;\r\n this.inboxesSVC.params.InboxItemType = inboxItemType;\r\n this.inboxesSVC.params.EntityIdInbox = null;\r\n }\r\n else if (inboxItemType == 'CompletedCorrespondence' || inboxItemType === \"22\" || inboxItemType === InboxItemTypes.CompletedCorrespondence) {\r\n this.inboxesSVC.params.RecipientType = null;\r\n this.inboxesSVC.params.InboxItemType = inboxItemType;\r\n this.inboxesSVC.params.EntityIdInbox = null;\r\n }\r\n else if (inboxItemType == \"Urgent\" || inboxItemType === \"19\" || inboxItemType === InboxItemTypes.Urgent) {\r\n this.inboxesSVC.params.RecipientType = null;\r\n this.inboxesSVC.params.InboxItemType = inboxItemType;\r\n this.inboxesSVC.params.EntityIdInbox = null;\r\n } else if (inboxItemType == \"MyEntityInbox\" || inboxItemType === \"21\" || inboxItemType === InboxItemTypes.MyEntityInbox) {\r\n this.inboxesSVC.params.RecipientType = null;\r\n this.inboxesSVC.params.InboxItemType = inboxItemType;\r\n this.inboxesSVC.params.EntityIdInbox = id;\r\n }\r\n\r\n else if (inboxItemType === \"ExternalEmail\" || inboxItemType === \"12\" || inboxItemType === InboxItemTypes.ExternalEmail) {\r\n this.inboxesSVC.params.InboxItemType = inboxItemType;\r\n this.inboxesSVC.params.RecipientType = null;\r\n this.inboxesSVC.params.EntityIdInbox = id;\r\n }\r\n\r\n else if (inboxItemType === \"PublicInbox\" || inboxItemType === \"2\" || inboxItemType === InboxItemTypes.PublicInbox) {\r\n this.inboxesSVC.params.InboxItemType = inboxItemType;\r\n this.inboxesSVC.params.RecipientType = null;\r\n this.inboxesSVC.params.EntityIdInbox = id;\r\n }\r\n else if (inboxItemType === \"CustomCategory\" || inboxItemType === \"32\" || inboxItemType === InboxItemTypes.CustomCategory) {\r\n this.inboxesSVC.params.RecipientType = null;\r\n this.inboxesSVC.params.InboxItemType = inboxItemType;\r\n this.inboxesSVC.params.EntityIdInbox = null;\r\n\r\n if (!categoryId) {\r\n categoryId = this.getCorrespondenceCategoryParams();\r\n }\r\n this.inboxesSVC.params.SearchFilter.CorrespondenceCategoryIds = [];\r\n this.inboxesSVC.params.CorrespondenceCategoryId = categoryId;\r\n this.inboxesSVC.params.SearchFilter.CorrespondenceCategoryIds.push(categoryId);\r\n }\r\n\r\n else {\r\n this.inboxesSVC.params.RecipientType = null;\r\n this.inboxesSVC.params.InboxItemType = id;\r\n this.inboxesSVC.params.EntityIdInbox = null;\r\n }\r\n\r\n if (this.inboxesSVC.selectedInboxId === \"CasefilesProcessedByImportantSubjectsCommittee\")\r\n this.inboxesSVC.params.SearchFilter.ImportantSubjectsCommitteeId = me.ProclamationsImportantSubjectsCommittee;\r\n\r\n if (this.inboxesSVC.selectedInboxId === \"CorrespondencesSentToSpecializedEntities\")\r\n this.inboxesSVC.params.SearchFilter.IsSentToSpecializedEntities = this.IsSentToSpecializedEntities;\r\n\r\n this.inboxesSVC.sortAsc = this.inboxesSVC.sortAsc !== undefined ? this.inboxesSVC.sortAsc : false;\r\n this.inboxesSVC.sortQualitativeWeightAsc = this.inboxesSVC.sortQualitativeWeightAsc !== undefined ? this.inboxesSVC.sortQualitativeWeightAsc : false;\r\n this.inboxesSVC.sortProcDateAsc = this.inboxesSVC.sortProcDateAsc !== undefined ? this.inboxesSVC.sortProcDateAsc : false;\r\n this.inboxesSVC.sortCaseDateAsc = this.inboxesSVC.sortCaseDateAsc !== undefined ? this.inboxesSVC.sortCaseDateAsc : false;\r\n\r\n\r\n if (this.inboxesSVC.selectedInboxId == \"ImportantUrgent\")\r\n this.inboxesSVC.orderBy = \"OrderWeight,ActionDate \" + (this.inboxesSVC.sortAsc ? \"asc\" : \"desc\");\r\n\r\n else if (this.inboxesSVC.selectedInboxId == \"CompletedCorrespondence\")\r\n this.inboxesSVC.orderBy = \"OrderWeight,ActionDate \" + (this.inboxesSVC.sortAsc ? \"asc\" : \"desc\");\r\n\r\n else if (this.inboxesSVC.selectedInboxId == \"Draft\")\r\n this.inboxesSVC.orderBy = \"CorrDate \" + (this.inboxesSVC.sortAsc ? \"asc\" : \"desc\");\r\n\r\n else if (this.inboxesSVC.selectedInboxId == \"ConfidentialToMe\")\r\n this.inboxesSVC.orderBy = \"ActionDate \" + (this.inboxesSVC.sortAsc ? \"asc\" : \"desc\");\r\n\r\n else if (this.inboxesSVC.selectedInboxId == \"Urgent\")\r\n this.inboxesSVC.orderBy = \"ActionDate \" + (this.inboxesSVC.sortAsc ? \"asc\" : \"desc\");\r\n else\r\n this.inboxesSVC.orderBy = \"ActionDate \" + (this.inboxesSVC.sortAsc ? \"asc\" : \"desc\");\r\n\r\n }\r\n\r\n //DESCRIP: Map data and flat it from current parametrs obect into flat object to put in url search segment\r\n getQueryParamsFromParams(isfromdashboard = false) {\r\n let me = this;\r\n\r\n var sortDir = me.inboxesSVC.sortAsc;\r\n\r\n if (me.inboxesSVC.sortByQualitativeWeight)\r\n sortDir = me.inboxesSVC.sortQualitativeWeightAsc;\r\n else if (me.inboxesSVC.sortByProcDate)\r\n sortDir = me.inboxesSVC.sortProcDateAsc;\r\n else if (me.inboxesSVC.sortByCaseDate)\r\n sortDir = me.inboxesSVC.sortCaseDateAsc;\r\n\r\n var QueryParams = {};\r\n if (isfromdashboard) {\r\n QueryParams = {\r\n IsImportant: this.setIsImportantParam(),\r\n UrgencyIds: this.setUrgencyIdsParam(),\r\n OnlyLate: this.setOnlyLateParam(),\r\n veryUrgent: this.inboxFilter.veryUrgent,\r\n urgent: this.inboxFilter.urgent,\r\n notUrgent: this.inboxFilter.notUrgent,\r\n important: this.inboxFilter.important,\r\n notImportant: this.inboxFilter.notImportant,\r\n CorrespondenceTypeIds: this.dashboardCorrespondenceTypesIds,\r\n IsFromDashboard: this.setIsFromDashboaredParam(),\r\n SelectedPage: this.inboxesSVC.params.SearchFilter.SelectedPage,\r\n }\r\n }\r\n else {\r\n QueryParams = {\r\n orderBy: me.inboxesSVC.orderBy,\r\n sortAsc: sortDir,\r\n sortType: me.inboxesSVC.sortType,\r\n RecipientType: this.inboxesSVC.params.RecipientType,\r\n CorrespondenceCategoryId: this.inboxesSVC.params.CorrespondenceCategoryId,\r\n BranchEntities: this.inboxesSVC.params.SearchFilter.BranchEntities,\r\n ResearcherId: this.inboxesSVC.params.SearchFilter.ResearcherId,\r\n InboxItemType: this.inboxesSVC.params.InboxItemType,\r\n EntityIdInbox: this.inboxesSVC.params.EntityIdInbox,\r\n CorrespondenceCategoryIds: this.inboxesSVC.params.SearchFilter\r\n .CorrespondenceCategoryIds,\r\n IsPrivate: this.inboxesSVC.params.SearchFilter.isPrivate,\r\n IsSaved: this.inboxesSVC.params.SearchFilter.IsSaved,\r\n IsImportant: this.setIsImportantParam(),\r\n UrgencyIds: this.setUrgencyIdsParam(),\r\n ConfidentialityIds: this.inboxesSVC.params.SearchFilter\r\n .ConfidentialityIds,\r\n SelectedPage: this.inboxesSVC.params.SearchFilter.SelectedPage,\r\n // PageSize: this.inboxesSVC.params.SearchFilter.PageSize,\r\n PageSize: 30,\r\n OnlyLate: this.setOnlyLateParam(),\r\n veryUrgent: this.inboxFilter.veryUrgent,\r\n urgent: this.inboxFilter.urgent,\r\n notUrgent: this.inboxFilter.notUrgent,\r\n topSecret: this.inboxFilter.topSecret,\r\n verySecret: this.inboxFilter.verySecret,\r\n secret: this.inboxFilter.secret,\r\n notSecret: this.inboxFilter.notSecret,\r\n important: this.inboxFilter.important,\r\n notImportant: this.inboxFilter.notImportant,\r\n isPrivate: this.inboxFilter.isPrivate,\r\n isSaved: this.inboxFilter.isSaved,\r\n Confid_Level5: this.inboxFilter.Confid_Level5,\r\n Confid_Level6: this.inboxFilter.Confid_Level6,\r\n Confid_Level7: this.inboxFilter.Confid_Level7,\r\n Confid_Level8: this.inboxFilter.Confid_Level8,\r\n Confid_Level9: this.inboxFilter.Confid_Level9,\r\n IsCompleted: this.inboxFilter.IsCompleted,\r\n IsSentToSpecializedEntities: this.inboxesSVC.params.SearchFilter.IsSentToSpecializedEntities,\r\n CorrespondenceTypeIds: null,\r\n IsFromDashboard: false,\r\n Tick: new Date().getTime(),\r\n InboxSharedFromUserId: this.inboxesSVC.params.SearchFilter.InboxSharedFromUserId,\r\n FolderId: this.inboxesSVC.params.SearchFilter.FolderId\r\n };\r\n }\r\n\r\n return QueryParams;\r\n }\r\n\r\n setUrgencyIdsParam() {\r\n if (this.activatedRoute.snapshot.queryParams[\"FromOverview\"] == \"true\" &&\r\n this.activatedRoute.snapshot.queryParams[\"UrgencyIds\"] != \"undefined\")\r\n return this.activatedRoute.snapshot.queryParams[\"UrgencyIds\"];\r\n else\r\n return this.inboxesSVC.params.SearchFilter.UrgencyIds;\r\n }\r\n setOnlyLateParam() {\r\n if (this.activatedRoute.snapshot.queryParams[\"FromOverview\"] == \"true\" &&\r\n this.activatedRoute.snapshot.queryParams[\"OnlyLate\"] != \"undefined\")\r\n return this.activatedRoute.snapshot.queryParams[\"OnlyLate\"];\r\n else\r\n this.inboxesSVC.params.SearchFilter.OnlyLate;\r\n }\r\n\r\n setIsImportantParam() {\r\n if (this.activatedRoute.snapshot.queryParams[\"FromOverview\"] == \"true\" &&\r\n this.activatedRoute.snapshot.queryParams[\"IsImportant\"] != \"undefined\")\r\n return this.activatedRoute.snapshot.queryParams[\"IsImportant\"];\r\n else\r\n return this.inboxesSVC.params.SearchFilter.IsImportant;\r\n }\r\n\r\n setIsFromDashboaredParam() {\r\n if (this.activatedRoute.snapshot.queryParams[\"IsFromDashboard\"] == \"true\")\r\n return true\r\n else\r\n return false;\r\n }\r\n\r\n setParamsFromQueryParams(QueryParams) {\r\n this.inboxesSVC.orderBy = this.fixQueryParamValue(QueryParams.orderBy);\r\n this.inboxesSVC.sortAsc = this.fixQueryParamValue(QueryParams.sortAsc);\r\n\r\n this.inboxesSVC.params.RecipientType = this.fixQueryParamValue(\r\n QueryParams.RecipientType\r\n );\r\n\r\n this.inboxesSVC.params.CorrespondenceCategoryId = this.fixQueryParamValue(\r\n QueryParams.CorrespondenceCategoryId\r\n );\r\n this.inboxesSVC.params.InboxItemType = this.fixQueryParamValue(\r\n QueryParams.InboxItemType\r\n );\r\n this.inboxesSVC.params.EntityIdInbox = this.fixQueryParamValue(\r\n QueryParams.EntityIdInbox\r\n );\r\n\r\n if (\r\n QueryParams.CorrespondenceCategoryIds &&\r\n QueryParams.CorrespondenceCategoryIds != \"undefined\"\r\n ) {\r\n if (QueryParams.CorrespondenceCategoryIds == \"true\")\r\n this.inboxesSVC.params.SearchFilter.CorrespondenceCategoryIds = [];\r\n else\r\n this.inboxesSVC.params.SearchFilter.CorrespondenceCategoryIds = this.getCategoryIdsFromQueryParamValue(\r\n QueryParams.CorrespondenceCategoryIds\r\n );\r\n }\r\n\r\n this.inboxesSVC.params.SearchFilter.isPrivate = this.fixQueryParamValue(\r\n QueryParams.isPrivate\r\n );\r\n this.inboxesSVC.params.SearchFilter.IsSaved = this.fixQueryParamValue(\r\n QueryParams.IsSaved\r\n );\r\n this.inboxesSVC.params.SearchFilter.IsImportant = this.fixQueryParamValue(\r\n QueryParams.IsImportant\r\n );\r\n\r\n if (QueryParams.UrgencyIds && QueryParams.UrgencyIds != \"undefined\")\r\n if (QueryParams.UrgencyIds instanceof Array) {\r\n this.inboxesSVC.params.SearchFilter.UrgencyIds = QueryParams.UrgencyIds.map(id => +id);\r\n }\r\n else {\r\n this.inboxesSVC.params.SearchFilter.UrgencyIds = QueryParams.UrgencyIds.split(\r\n \",\"\r\n ).map(id => +id);\r\n }\r\n\r\n if (\r\n QueryParams.ConfidentialityIds &&\r\n QueryParams.ConfidentialityIds != \"undefined\"\r\n )\r\n if (QueryParams.ConfidentialityIds instanceof Array) {\r\n this.inboxesSVC.params.SearchFilter.ConfidentialityIds = QueryParams.ConfidentialityIds.map(id => +id);\r\n }\r\n else {\r\n this.inboxesSVC.params.SearchFilter.ConfidentialityIds = QueryParams.ConfidentialityIds.split(\r\n \",\"\r\n ).map(id => +id);\r\n }\r\n\r\n if (QueryParams.SelectedPage && QueryParams.SelectedPage != \"undefined\") {\r\n this.inboxesSVC.params.SearchFilter.SelectedPage = this.fixQueryParamValue(\r\n QueryParams.SelectedPage\r\n );\r\n } else {\r\n this.inboxesSVC.params.SearchFilter.SelectedPage = 1;\r\n }\r\n\r\n if (QueryParams.PageSize && QueryParams.PageSize != \"undefined\") {\r\n this.inboxesSVC.params.SearchFilter.PageSize = this.fixQueryParamValue(\r\n QueryParams.PageSize\r\n );\r\n } else {\r\n this.inboxesSVC.params.SearchFilter.PageSize = BERRY.PageSize;\r\n }\r\n\r\n this.inboxFilter.veryUrgent = this.fixQueryParamValue(\r\n QueryParams.veryUrgent\r\n );\r\n this.inboxFilter.urgent = this.fixQueryParamValue(QueryParams.urgent);\r\n this.inboxFilter.notUrgent = this.fixQueryParamValue(QueryParams.notUrgent);\r\n this.inboxFilter.topSecret = this.fixQueryParamValue(QueryParams.topSecret);\r\n this.inboxFilter.Confid_Level5 = this.fixQueryParamValue(QueryParams.Confid_Level5);\r\n this.inboxFilter.Confid_Level6 = this.fixQueryParamValue(QueryParams.Confid_Level6);\r\n this.inboxFilter.Confid_Level7 = this.fixQueryParamValue(QueryParams.Confid_Level7);\r\n this.inboxFilter.Confid_Level8 = this.fixQueryParamValue(QueryParams.Confid_Level8);\r\n this.inboxFilter.Confid_Level9 = this.fixQueryParamValue(QueryParams.Confid_Level9);\r\n this.inboxFilter.verySecret = this.fixQueryParamValue(\r\n QueryParams.verySecret\r\n );\r\n this.inboxFilter.secret = this.fixQueryParamValue(QueryParams.secret);\r\n this.inboxFilter.notSecret = this.fixQueryParamValue(QueryParams.notSecret);\r\n this.inboxFilter.important = this.fixQueryParamValue(QueryParams.important);\r\n this.inboxFilter.notImportant = this.fixQueryParamValue(\r\n QueryParams.notImportant\r\n );\r\n this.inboxFilter.isPrivate = this.fixQueryParamValue(QueryParams.isPrivate);\r\n this.inboxFilter.isSaved = this.fixQueryParamValue(QueryParams.isSaved);\r\n\r\n this.inboxesSVC.params.SearchFilter.OnlyLate = this.fixQueryParamValue(\r\n QueryParams.OnlyLate\r\n );\r\n this.inboxFilter.OnlyLate = this.fixQueryParamValue(QueryParams.OnlyLate);\r\n\r\n\r\n this.inboxesSVC.params.SearchFilter.IsFromDashboard = this.setIsFromDashboaredParam();\r\n\r\n if (this.inboxesSVC.params.SearchFilter.IsFromDashboard)\r\n this.inboxesSVC.params.SearchFilter.CorrespondenceTypeIds = this.dashboardCorrespondenceTypesIds;\r\n else\r\n this.inboxesSVC.params.SearchFilter.CorrespondenceTypeIds = null;\r\n\r\n }\r\n\r\n fixQueryParamValue(value): any {\r\n if (value == \"null\") return null;\r\n if (value == \"true\") return true;\r\n if (value == \"false\") return false;\r\n\r\n return value;\r\n }\r\n\r\n getCategoryIdsFromQueryParamValue(value): any {\r\n if (value == \"null\" || value == \"undefined\") return null;\r\n if (value == \"true\") return true;\r\n if (value == \"false\") return false;\r\n\r\n if (!(value instanceof Array)) value = value.split(\",\");\r\n return value.map(id => +id);\r\n }\r\n\r\n changeURL(selectedInboxId, inboxItemType: string = null, isFromDashboard: boolean = false) {\r\n const me = this;\r\n\r\n if (selectedInboxId == null)\r\n selectedInboxId = \"ALL\";\r\n\r\n if (selectedInboxId == \"Letter\") {\r\n this.sidebar.selectedButton = \"13\";\r\n }\r\n\r\n let moduleUrl = AppModulesEnum[me.inboxesSVC.appModuleId]\r\n .toString()\r\n .toLowerCase()\r\n .replace(\"correspondences\", \"correspondence\");\r\n if (inboxItemType === \"ExternalEmail\" || inboxItemType == '12') {\r\n if (me.canRefreshInboxes)\r\n me.getInboxes();\r\n\r\n selectedInboxId = selectedInboxId.toString().replace(\"emails/\", \"\");\r\n this.router.navigate([`${moduleUrl}/inboxes/emails`, selectedInboxId], {\r\n queryParams: {\r\n InboxItemType: \"ExternalEmail\",\r\n sidebarTabId: this.sidebar.selectedButton\r\n }\r\n });\r\n }\r\n else if (inboxItemType === \"EGovInbox\" || inboxItemType == '30') {\r\n if (me.canRefreshInboxes)\r\n me.getInboxes();\r\n selectedInboxId = selectedInboxId.toString().replace(\"eGov/\", \"\");\r\n this.router.navigate([`${moduleUrl}/inboxes/eGov`, selectedInboxId], {\r\n queryParams: {\r\n InboxItemType: \"30\",\r\n sidebarTabId: this.sidebar.selectedButton\r\n }\r\n });\r\n }\r\n else {\r\n this.router.navigate(\r\n [\r\n `${moduleUrl}/inboxes/${selectedInboxId}`\r\n ],\r\n {\r\n queryParams: {\r\n ...this.getQueryParamsFromParams(isFromDashboard),\r\n sidebarTabId: this.sidebar.selectedButton\r\n }\r\n }\r\n );\r\n }\r\n }\r\n\r\n exportCorrList(exportType, selectedCorrespondence = []) {\r\n let me = this;\r\n var exportActionName = \"\";\r\n if (selectedCorrespondence != null && selectedCorrespondence.length > 0) {\r\n this.inboxesSVC.params.SearchFilter.OnlyTheseCorrespondenceIds = selectedCorrespondence.map(({ CorrespondenceID }) => CorrespondenceID);\r\n }\r\n else {\r\n this.inboxesSVC.params.SearchFilter.OnlyTheseCorrespondenceIds = null;\r\n }\r\n if (me.isProclemationModel) {\r\n exportActionName =\r\n exportType == \"pdf\" ? \"GenerateAsposePdfForProclemation/\" : \"GenerateAsposeExcelForProclemation/\";\r\n }\r\n else\r\n exportActionName =\r\n exportType == \"pdf\" ? \"GenerateCorrespondencesReportPdf/\" : \"GenerateAsposeExcel/\"; //pdf OR excel\r\n me.isPrintBusy = true;\r\n this.inboxesSVC\r\n .getExportData(exportActionName, this.inboxesSVC.params)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me._toaster.success(me.getText('RequestedReportMessage', 'DeliveryReports'));\r\n me.isPrintBusy = false;\r\n },\r\n err => {\r\n me.isPrintBusy = false;\r\n }\r\n );\r\n }\r\n\r\n bSeachQueryParams(clearSearchStorage: boolean = false): boolean {\r\n if (clearSearchStorage) {\r\n localStorage.setItem(\"ShowSearchQueryParams\", null);\r\n }\r\n var _ShowSearchQueryParams = (\r\n localStorage.getItem(\"ShowSearchQueryParams\")\r\n );\r\n let ShowSearchQueryParams: boolean = _ShowSearchQueryParams\r\n ? _ShowSearchQueryParams.toLowerCase() == \"true\"\r\n : false;\r\n return ShowSearchQueryParams;\r\n }\r\n\r\n sSetSearchUrl(searchQueryParmas: string, clearSearchParams: boolean = false): string {\r\n if (clearSearchParams) {\r\n localStorage.setItem(\"SavedSearchQueryParams\", null);\r\n } else {\r\n localStorage.setItem(\"SavedSearchQueryParams\", encodeURI(searchQueryParmas));\r\n }\r\n\r\n return localStorage.getItem(\"SavedSearchQueryParams\");\r\n }\r\n\r\n vNavigateToStorageSearchUrl(): void {\r\n let savedSearchQueryParams = localStorage.getItem(\"SavedSearchQueryParams\");\r\n this.router.navigateByUrl(savedSearchQueryParams);\r\n }\r\n\r\n isEmpty(object: any) {\r\n for (var key in object) {\r\n if (this.hasOwnProperty(key)) return false;\r\n }\r\n return true;\r\n }\r\n\r\n getShowConfidentialCorrespondences() {\r\n let me = this;\r\n me.generalSettingSvc\r\n .GetValue(\"CorrespondencesSetting\", \"ShowConfidentialCorrespondencesInbox\", \"false\")\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(response => {\r\n if (response == 'true') {\r\n me.showConfidentialCorrespondencesInboxTab = true;\r\n }\r\n });\r\n }\r\n\r\n getProclamationsImportantSubjectsCommittee() {\r\n let me = this;\r\n me.generalSettingSvc\r\n .GetValue(\"GeneralConfiguration\", \"ProclamationsImportantSubjectsCommittee\")\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(response => {\r\n me.ProclamationsImportantSubjectsCommittee = response;\r\n me.collectSelectedInbox(me.InboxId, me.queryParams.InboxItemType);\r\n\r\n });\r\n }\r\n\r\n getCustomCategoriesInboxItems() {\r\n let me = this;\r\n let result: INavItem[] = [];\r\n let customCategoriesInboxes = me.inboxesSVC.customCategoriesInboxes;\r\n for (let i = 0; i < customCategoriesInboxes.length; i++) {\r\n let item = customCategoriesInboxes[i];\r\n let inbox = {\r\n text: item.Text,\r\n icon: 'evicon-crown',\r\n type: 'item',\r\n automationId: `inbox-custom-catrgory-${item.CorrespondenceCategoryId}`,\r\n event: () => this.selectInbox_click(InboxItemTypes.CustomCategory, InboxItemTypes.CustomCategory, null, null, null, item.CorrespondenceCategoryId)\r\n }\r\n result.push((inbox as INavItem));\r\n }\r\n return result;\r\n }\r\n\r\n getCorrespondenceCategoryParams() {\r\n let categoryId = \"\";\r\n this.activatedRoute.queryParams.subscribe((res) => {\r\n if (res) {\r\n categoryId = res.CorrespondenceCategoryId;\r\n }\r\n });\r\n return categoryId;\r\n }\r\n\r\n checkIfInboxSharingIsEnabled(inboxItemType, entityId, isSharedInbox) {\r\n let me = this;\r\n me.inboxesSVC.isInboxSharingEnabled = false;\r\n me.messagingSvc.publish(\"SharedInboxUserPublish\", []);\r\n\r\n if (BERRY.onOffFeatures.SharedInboxes &&\r\n (isSharedInbox == null || isSharedInbox == false) && !this.isImpersonated && !\r\n inboxItemType != null) {\r\n let inboxType = inboxItemType as InboxItemTypes;\r\n if (inboxType == InboxItemTypes.Personal ||\r\n inboxType == InboxItemTypes.EntityInbox ||\r\n inboxType == InboxItemTypes.MyEntityInbox ||\r\n inboxType == InboxItemTypes.DivisionApplicationsInbox ||\r\n inboxType == InboxItemTypes.MeAsManager) {\r\n if (!entityId) entityId = 0;\r\n me.sharedInboxesSVC.checkIfInboxSharingIsEnabled(inboxItemType, entityId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(result => {\r\n me.inboxesSVC.isInboxSharingEnabled = result;\r\n if (result) me.getSharedInboxDetail(inboxItemType, entityId);\r\n });\r\n }\r\n }\r\n }\r\n\r\n getSharedInboxDetail(inboxItemType, entityId) {\r\n let me = this;\r\n me.sharedInboxesSVC.getSharedInboxDetail(inboxItemType, entityId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(result => {\r\n if (result && result.SharedInboxUsers) {\r\n me.inboxesSVC.sharedWithUserList = result.SharedInboxUsers;\r\n this.messagingSvc.publish(\"SharedInboxUserPublish\", result.SharedInboxUsers)\r\n }\r\n else\r\n me.inboxesSVC.sharedWithUserList = [];\r\n });\r\n }\r\n\r\n checkIfSentEntityInboxEnabled(isForSharedWithUser) {\r\n if (isForSharedWithUser) {\r\n return BERRY.onOffFeatures.SharedInboxes == true && this.IsUserHasSharedInboxes == true && this.IsUserPermittedToViewEntitySentbox == true;\r\n }\r\n else {\r\n return (BERRY.onOffFeatures.SharedInboxes == true && this.IsUserHasSharedInboxes == true) || this.IsUserPermittedToViewEntitySentbox == false;\r\n }\r\n }\r\n}","import { InboxItemTypes } from \"./enums/InboxItemTypes\";\r\n\r\nexport class InboxDto {\r\n $id: string;\r\n $type: string;\r\n Id: number;\r\n Text: string;\r\n InboxItemType: InboxItemTypes;\r\n Icon: string;\r\n AutomationId: string;\r\n Count: number;\r\n UnSeenCount: number;\r\n CanEditCommittee: boolean;\r\n CorrespondenceCategoryId: number;\r\n UserId: string;\r\n IsSharedInbox: boolean;\r\n Children?: InboxDto[];\r\n FolderId: number;\r\n BaseCorrespondenceCategoryId: number;\r\n IsFromDashboard: boolean;\r\n IsSecretaryOrCopierInbox: boolean;\r\n IsFilterInbox: boolean;\r\n}\r\n","\r\nimport { throwError as observableThrowError, Observable, Subject } from 'rxjs';\r\n\r\nimport { Injectable, Inject, Optional } from \"@angular/core\";\r\nimport { Response } from \"@angular/http\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { CorrespondenceDto } from \"../_models/correspondence-dto\";\r\nimport { OtherInboxesCountDto } from \"../_models/other-Inboxes-Counts-dto\";\r\nimport { InboxDto } from \"../_models/inboxes-dto\";\r\nimport { AppModulesEnum } from \"src/app/_common/models/AppModulesEnum\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { CorrespondenceItemAdditionalInfoDto } from \"../_models/correspondence-item-additional-info-dto\";\r\nimport { CorrespondenceSortTypeEnum } from \"../_models/enums/CorrespondenceSortType\";\r\nimport { NumberSearchTextEnum } from '../_models/SearchFilterTextSearchTypesEnum';\r\nimport { generalSettingsSvc } from \"../../../berry/correspondences/manage/generalSettings/general-settings-svc\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n\r\ninterface IdsParam {\r\n ids: string[];\r\n}\r\n\r\n@Injectable()\r\nexport class AppModuleIdService {\r\n appModuleId: number;\r\n constructor(@Inject('appModuleId') @Optional() appModuleId: any) {\r\n this.appModuleId = appModuleId | 1;\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class InboxesSVC {\r\n\r\n public isEditCommittee = false;\r\n public entities: CorrespondenceDto[] = [];\r\n public selectedInboxId: string = null;\r\n public orderBy = \"ActionDate\";\r\n public sortAsc = false;\r\n public sortQualitativeWeightAsc = false;\r\n public sortByQualitativeWeight = true;\r\n public sortProcDateAsc = false;\r\n public sortByProcDate = false;\r\n public sortCaseDateAsc = false;\r\n public sortByCaseDate = false;\r\n public isBusy = false;\r\n public params = {\r\n RecipientType: null,\r\n CorrespondenceCategoryId: null,\r\n BaseCorrespondenceCategoryId: null,\r\n InboxItemType: null,\r\n EntityIdInbox: null,\r\n CallId: 0,\r\n CCEntitiyIds: null,\r\n IsIncludePersonalCopy: false,\r\n ReceivingDuration: 0,\r\n SearchFilter: {\r\n CorrespondenceCategoryIds: null,\r\n IsDeleted: false,\r\n isPrivate: false,\r\n IsSaved: false,\r\n IsImportant: null,\r\n UrgencyIds: null,\r\n ConfidentialityIds: null,\r\n SelectedPage: 1,\r\n PageSize: 30,\r\n ClosedAndArchived: null,\r\n Descending: false,\r\n OnlyLate: false,\r\n asCopy: false,\r\n asOriginal: true,\r\n IsMonitoredInbox: false,\r\n CaseFileStatus: 1,\r\n ResearcherId: null,\r\n ImportantSubjectsCommitteeId: null,\r\n IsCompleted: false,\r\n IsSentToSpecializedEntities: true,\r\n CorrespondenceTypeIds: null,\r\n IsFromDashboard: false,\r\n SortType: CorrespondenceSortTypeEnum.Newest,\r\n SenderEntityAndCommittee: null,\r\n ShowCorrespondencesForwardedtoExternalEntity: false,\r\n ShowExportedSubCorrespondences: false,\r\n NumberSearchText: null,\r\n NumberSearchTextType: +NumberSearchTextEnum.All,\r\n TextSearch: null,\r\n CorrespondenceSubject: null,\r\n BranchEntities: null,\r\n IgnoreSpecificSearch: false,\r\n OnlyTheseCorrespondenceIds: [],\r\n SearchByAttachmentNumber: false,\r\n SearchCount: 0,\r\n InboxSharedFromUserId: null,\r\n FolderId: null,\r\n SearchInInboxAndItsFolders: false\r\n }\r\n };\r\n public inboxClicked = new Subject();\r\n public setPage = new Subject();\r\n public onPageChanged = new Subject();\r\n public FollowChange = new Subject();\r\n public otherInboxCounts: OtherInboxesCountDto = new OtherInboxesCountDto();\r\n public inboxes: InboxDto[] = [];\r\n public isExternalResource = false;\r\n myCCEntityIds: any[] = [];\r\n public ccInboxCount = 0;\r\n public UnSeenCC = 0;\r\n corrListCmp;\r\n isCorrBackClicked = false;\r\n sortType: any;\r\n isInboxClicked: boolean = false;\r\n public customCategoriesInboxes: InboxDto[] = [];\r\n public isInboxSharingEnabled: boolean = false;\r\n public sharedWithUserList: any[] = [];\r\n\r\n public resetFilter() {\r\n this.selectedInboxId = null;\r\n this.params = {\r\n RecipientType: null,\r\n CorrespondenceCategoryId: null,\r\n BaseCorrespondenceCategoryId: null,\r\n InboxItemType: null,\r\n EntityIdInbox: null,\r\n IsIncludePersonalCopy: false,\r\n CCEntitiyIds: null,\r\n CallId: 0,\r\n ReceivingDuration: 0,\r\n SearchFilter: {\r\n CorrespondenceCategoryIds: null,\r\n IsDeleted: false,\r\n isPrivate: false,\r\n IsSaved: false,\r\n IsImportant: null,\r\n UrgencyIds: null,\r\n ConfidentialityIds: null,\r\n SelectedPage: 1,\r\n PageSize: 30,\r\n ClosedAndArchived: null,\r\n Descending: false,\r\n OnlyLate: false,\r\n asCopy: false,\r\n asOriginal: true,\r\n SenderEntityAndCommittee: null,\r\n IsMonitoredInbox: false,\r\n CaseFileStatus: 1,\r\n ResearcherId: null,\r\n ImportantSubjectsCommitteeId: null,\r\n IsCompleted: null,\r\n IsSentToSpecializedEntities: true,\r\n CorrespondenceTypeIds: null,\r\n IsFromDashboard: false,\r\n SortType: BERRY.User.SortType != null && BERRY.User.SortType != undefined ? BERRY.User.SortType : CorrespondenceSortTypeEnum.Newest,\r\n ShowCorrespondencesForwardedtoExternalEntity: false,\r\n ShowExportedSubCorrespondences: false,\r\n NumberSearchText: null,\r\n NumberSearchTextType: +NumberSearchTextEnum.All,\r\n TextSearch: null,\r\n CorrespondenceSubject: null,\r\n BranchEntities: null,\r\n IgnoreSpecificSearch: false,\r\n OnlyTheseCorrespondenceIds: [],\r\n SearchByAttachmentNumber: false,\r\n SearchCount: 0,\r\n InboxSharedFromUserId: null,\r\n FolderId: null,\r\n SearchInInboxAndItsFolders:false\r\n }\r\n };\r\n this.setPage.next(1);\r\n this.inboxClicked.next(null);\r\n }\r\n public get appModuleId(): number {\r\n return this.http.appModuleId;\r\n }\r\n public set appModuleId(value: number) {\r\n this.http.appModuleId = value;\r\n }\r\n\r\n getModuleUrl(): string {\r\n let me = this;\r\n return AppModulesEnum[me.appModuleId || 1]\r\n .toString()\r\n .toLowerCase()\r\n .replace(\"correspondences\", \"correspondence\");\r\n }\r\n\r\n public get canBrowseWhileLoading(): boolean {\r\n //TODO : oalsallal\r\n return true;\r\n }\r\n\r\n baseURL = BERRY.hostName + \"api/CorrespondenceApi\"; // URL to web API\r\n correspondenceFolderUrl = BERRY.hostName + \"api/CorrespondenceFolder\"; // URL to web API\r\n\r\n\r\n constructor(\r\n public http: HttpInterceptor,\r\n public generalSettingsSvc: generalSettingsSvc\r\n ) { }\r\n\r\n getInboxes(): Observable {\r\n var dto = new InboxDto();\r\n const url = `${BERRY.hostName}api/CorrespondenceApi/Inboxes`;\r\n return this.http.post(url, dto).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n public GetFollowupUsers() {\r\n return this.http\r\n .get(BERRY.hostName + \"Common/Components/GetFollowupUsers\")\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public CheckCurrentUserIsManager() {\r\n return this.http\r\n .get(BERRY.hostName + \"api/UserTypeMappingAPI/CheckCurrentUserIsManager\")\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public CheckGeneralSecretaryOfProclamationExamination() {\r\n return this.http\r\n .get(BERRY.hostName + \"api/UserTypeMappingAPI/CheckGeneralSecretaryOfProclamationExamination\")\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public CheckCurrentUserIsResercher() {\r\n return this.http\r\n .get(BERRY.hostName + \"api/UserTypeMappingAPI/CheckCurrentUserIsResercher\")\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getOtherInboxesCounts(isOnlyLate = false): Observable {\r\n return this.http.post(this.baseURL + \"/OtherInboxesCounts?isOnlyLate=\" + isOnlyLate, {}).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getConfidentialitiesUsed(): Observable {\r\n return this.http.get(this.baseURL + \"/GetConfidentialitiesUsed\").pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public getCorrespondencesLastStepHsitory(\r\n idsParam: IdsParam\r\n ): Observable {\r\n return this.http\r\n .post(\r\n BERRY.hostName + \"api/ApplicationCorrHistoryApi/GetLastStepHsitory\",\r\n idsParam\r\n )\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public getCorrespondencesHasPendingSignatureRequest(\r\n idsParam: IdsParam\r\n ): Observable {\r\n return this.http\r\n .post(this.baseURL + \"/GetCorrsHasPendingSignatureRequest\", idsParam)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n /**\r\n * @param idsParam will be posted with array of GUIDs as string ´idsParam´.\r\n * @returns return array.\r\n */\r\n public getCorrespondencesAdditionalInfo(\r\n recipientIdIdsParam: IdsParam\r\n ): Observable {\r\n return this.http\r\n .post(\r\n BERRY.hostName + \"api/app-corr-additional-info/get-info\",\r\n recipientIdIdsParam\r\n )\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n\r\n public getEntitiesWithParams(withParamsObj): Observable {\r\n\r\n if (withParamsObj.InboxItemType)\r\n withParamsObj.InboxItemType = +withParamsObj.InboxItemType;\r\n\r\n this.isExternalResource = false;\r\n return this.http\r\n .post(BERRY.hostName + \"api/CorrespondenceApi/GetEntities\", withParamsObj)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public getExportData(exportActionName, params) {\r\n var url = BERRY.hostName + \"api/CorrespondenceApi/\" + exportActionName;\r\n return this.http.post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetMyCCEntityIds() {\r\n\r\n var url = BERRY.hostName + \"api/CorrespondenceApi/GetMyCCEntityIds\";\r\n\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public markAllAsSeenInInbox() {\r\n var url = BERRY.hostName + \"api/CorrespondenceApi/MarkAllAsSeenInInbox/\";\r\n return this.http.post(url, this.params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public dismissAll(count) {\r\n var url = BERRY.hostName + \"api/CorrespondenceApi/DismissAll\";\r\n var localParams = $.extend(true, {}, this.params);\r\n localParams.SearchFilter.PageSize = count;\r\n\r\n return this.http.post(url, localParams).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public UnfollowAll(count) {\r\n var url =\r\n BERRY.hostName + \"api/CorrespondenceApi/UnfollowAll\";\r\n var localParams = $.extend(true, {}, this.params);\r\n localParams.SearchFilter.PageSize = count;\r\n return this.http.post(url, localParams).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetRecipients(ActionId: string) {\r\n var url =\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/GetCorrespondenceRecipients?correspondenceActionId=\" +\r\n ActionId;\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetRecipientId(CorrId: string) {\r\n var url =\r\n BERRY.hostName +\r\n \"api/CorrespondenceApi/GetRecipientId?CorrespondenceId=\" +\r\n CorrId;\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCorrespondancePhysicalAttachmentLinkByCorrIds(corrIds) {\r\n\r\n var url = BERRY.hostName + \"api/CorrespondancePhysicalAttachmentSequance/getCorrespondancePhysicalAttachmentLinkByCorrIds\";\r\n return this.http.post(url, corrIds).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getAllBranches() {\r\n const url = `${BERRY.hostName}api/DepartmentApi/GetAllBranches`;\r\n return this.http.get(url).pipe(map(this.extractData));\r\n }\r\n\r\n AllowMutipleForward() {\r\n return this.generalSettingsSvc.GetValue(\"CorrespondencesSetting\", \"AllowMultipleForward\")\r\n .pipe(map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n getCorrSortType() {\r\n return this.http.get(this.baseURL + \"/GetCorrSortType\").pipe(\r\n map(this.extractDataSpecial),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCustomCategoriesInboxes() {\r\n var url = BERRY.hostName + \"api/CorrespondenceApi/GetCustomCategoriesInboxes\";\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCorrespondenceInboxFolders(parentInbox: InboxDto, correspondenceId: string): Observable {\r\n let url = this.correspondenceFolderUrl + \"/GetAll?correspondenceId=\" + correspondenceId;\r\n\r\n\r\n return this.http.post(url, parentInbox).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCorrespondenceFolder(selectedFolderId: number): Observable {\r\n let url = this.correspondenceFolderUrl + \"/Get\";\r\n\r\n if (selectedFolderId !== null) {\r\n url += \"?folderId=\" + selectedFolderId;\r\n }\r\n\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n addCorrespondenceInboxFolders(correspondenceFolder: any): Observable {\r\n return this.http.post(this.correspondenceFolderUrl + \"/Add\", correspondenceFolder).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n editCorrespondenceInboxFolders(correspondenceFolder: any): Observable {\r\n return this.http.post(this.correspondenceFolderUrl + \"/Update\", correspondenceFolder).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n deleteCorrespondenceInboxFolders(folderId: any): Observable {\r\n return this.http.delete(this.correspondenceFolderUrl + \"/Delete?folderId=\" + folderId);\r\n }\r\n\r\n moveCorrespondenceInboxFolder(toFolderId: any, correspondenceId: any, returnToBox: boolean, inboxDto: InboxDto): Observable {\r\n const url = `${this.correspondenceFolderUrl}/MoveCorrespondenceFolder?toFolderId=${toFolderId}&correspondenceId=${correspondenceId}&returnToBox=${returnToBox}&inboxDto=${inboxDto}`;\r\n\r\n return this.http.post(url, {}).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n extractDataSpecial(res: Response) {\r\n let body = res;\r\n return body;\r\n }\r\n\r\n extractData(res: Response) {\r\n let body = res;\r\n return body || {};\r\n }\r\n\r\n handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n return observableThrowError(errMsg);\r\n }\r\n}\r\n","import { Observable } from 'rxjs';\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { HttpInterceptor } from '../../../_common/services/http-interceptor';\r\nimport { Injectable } from '@angular/core';\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class SharedInboxesSVC {\r\n private baseUrl = BERRY.hostName + \"api/SharedInboxApi\";\r\n\r\n constructor(public http: HttpInterceptor) { }\r\n\r\n checkIfInboxSharingIsEnabled(inboxItemType, entityId): Observable {\r\n const url = `${this.baseUrl}/CheckIfInboxSharingIsEnabled?inboxItemType=` + inboxItemType + `&entityId=` + entityId;\r\n return this.http.get(url);\r\n }\r\n\r\n getUsersForAutoComplete(kw): Observable {\r\n const url = `${this.baseUrl}/UsersForAutoComplete?kw=` + kw;\r\n return this.http.get(url);\r\n }\r\n\r\n getSharedInboxDetail(inboxItemType, entityId): Observable {\r\n const url = `${this.baseUrl}/GetSharedInboxDetail?inboxItemType=` + inboxItemType + `&entityId=` + entityId;\r\n return this.http.get(url);\r\n }\r\n\r\n saveSharedInboxesDetail(sharedInbox): Observable {\r\n const url = `${this.baseUrl}/SaveSharedInboxesDetail`;\r\n return this.http.post(url, sharedInbox);\r\n } \r\n\r\n deativateInboxSharing(sharedInboxUser): Observable {\r\n const url = `${this.baseUrl}/DeativateInboxSharing`;\r\n return this.http.post(url, sharedInboxUser);\r\n }\r\n}","\r\nimport {throwError as observableThrowError } from 'rxjs';\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Response } from \"@angular/http\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\n \r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class ActionsDeadlineSvc {\r\n baseURL = BERRY.hostName;\r\n constructor(public http: HttpInterceptor) { }\r\n\r\n public CorrActionDeadline(obj) {\r\n var url =\r\n BERRY.hostName +\r\n \"Correspondences/CorrespondenceActions/CorrActionDeadline\";\r\n return this.http.post(url, obj).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n saveUrgencyDeadline(wholeObject) {\r\n var url =\r\n BERRY.hostName +\r\n \"Correspondences/CorrespondenceActions/SaveUrgencyDeadline\";\r\n var obj = {\r\n ID : wholeObject.ID, \r\n DeadlineAfterDays : wholeObject.DeadlineAfterDays,\r\n ReminderPeriod : wholeObject.ReminderPeriod,\r\n ReminderPeriodType : wholeObject.ReminderPeriodType,\r\n ReminderRepeat : wholeObject.ReminderRepeat,\r\n CategoryId : wholeObject.CategoryId\r\n };\r\n return this.http.post(url, obj).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getUrgenciesDeadlines() {\r\n let url = BERRY.hostName + \"api/CorrespondenceApi/GetUrgenciesDeadlines\";\r\n\r\n return this.http.get(url).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n \r\n public getCorrActionDeadline() {\r\n let url =\r\n BERRY.hostName +\r\n `Correspondences/CorrespondenceActions/CorrActionDeadlines`;\r\n return this.http.post(url, null).pipe(map(res => res));\r\n }\r\n\r\n CorrActionDeadlineByid(corrid) {\r\n let url =\r\n BERRY.hostName +\r\n `Correspondences/CorrespondenceActions/CorrActionDeadlineByid?corrid=` +\r\n corrid;\r\n return this.http.get(url).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n extractData(res: Response) {\r\n let body = res;\r\n return body;\r\n }\r\n\r\n handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n return observableThrowError(errMsg);\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { Observable } from \"rxjs\";\r\nimport { IGlobalSettings } from \"../../../../../_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"../../../../../_common/services/baseService\";\r\nimport { SettlementSettingDTO } from \"../models/settlement-setting-dto\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class SettlementSettingSVC extends BaseService {\r\n public URL = `${BERRY.hostName}api/CorrespondenceSettlementSettingApi/`;\r\n\r\n constructor(http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n GetCorrespondenceSettlementSettingByCategoryId(categoryId: number): Observable {\r\n let me = this;\r\n let url = `${me.URL}GetCorrespondenceSettlementSettingByCategoryId?categoryId=${categoryId}`;\r\n return super.get(url);\r\n }\r\n\r\n AddOrUpdate(correspondenceSettlementSettingDTO: Array): Observable {\r\n let me = this;\r\n let url = `${me.URL}AddOrUpdate`;\r\n return super.post(url, correspondenceSettlementSettingDTO);\r\n }\r\n\r\n IsHaveSettlementSetting(categoryId: number) {\r\n let me = this;\r\n let url = `${me.URL}IsHaveSettlementSetting?categoryId=${categoryId}`;\r\n return super.get(url);\r\n }\r\n\r\n GetSettlementSetting(correspondenceId) {\r\n let me = this;\r\n let url = `${me.URL}GetSettlementSetting?correspondenceId=${correspondenceId}`;\r\n return super.get(url);\r\n }\r\n}","import { HttpInterceptor } from \"../../../../_common/services/http-interceptor\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable ,throwError} from \"rxjs\";\r\nimport { IGlobalSettings } from \"../../../../_common/models/IGlobalSettings\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\n\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class CategoryTypeClassificationSvc extends BaseService {\r\n baseURL = BERRY.hostName + \"api/CategoryTypeClassificationApi\"; // URL to web API\r\n generalSettingBaseUrl = BERRY.hostName + \"api/GeneralSettingsApi\";\r\n IsBusy: boolean = false;\r\n\r\n constructor(http: HttpInterceptor) {\r\n super(http);\r\n var me = this;\r\n }\r\n\r\n public GetCorrespondenceCategories(filter): Observable {\r\n return this.http.get(this.baseURL + \"/GetCorrespondenceCategories?filter=\" + filter).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetCorrespondenceTypes(filter): Observable {\r\n return this.http.get(this.baseURL + \"/GetCorrespondenceTypes?filter=\" + filter).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetCorrespondenceClassifications(filter): Observable {\r\n return this.http.get(this.baseURL + \"/GetCorrespondenceClassifications?filter=\" + filter).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetCategoryCorrespondenceTypes(categoryId): Observable {\r\n return this.http\r\n .get(\r\n this.baseURL +\r\n \"/GetCategoryCorrespondenceTypes?CategoryID=\" +\r\n categoryId\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetTypeCorrespondenceClassifications(categoryId, typeId): Observable {\r\n return this.http\r\n .get(\r\n this.baseURL +\r\n \"/GetTypeCorrespondenceClassifications?CategoryID=\" + categoryId + \"&TypeID=\" +\r\n typeId\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public saveClassification(categoryId, typeId, classificationId, isDelete): Observable {\r\n return this.http\r\n .get(\r\n this.baseURL +\r\n \"/GetSaveClassification?categoryID=\" + categoryId + \"&TypeID=\" + typeId + \"&ClassificationID=\" + classificationId + \"&isDelete=\" + isDelete\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public UpdateCategory(Id: string, isEGov: boolean) {\r\n \r\n var params = {\r\n Id: Id,\r\n isEGov: isEGov\r\n };\r\n this.IsBusy = true;\r\n let url = `${this.baseURL}/UpdateCategory?categoryID=` + Id + `&isEGov=` + isEGov\r\n return this.http.post(url, params);\r\n }\r\n\r\n public saveType(categoryId, typeId, isDelete): Observable {\r\n return this.http\r\n .get(\r\n this.baseURL +\r\n \"/GetSaveType?CategoryId=\" + categoryId + \"&TypeID=\" + typeId + \"&isDelete=\" + isDelete\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public SaveCategoryTypes(categoryID: number, typeIds: string) {\r\n this.IsBusy = true;\r\n let url = `${ this.baseURL }/SaveCategoryTypes`;\r\n return this.http.post(url, typeIds);\r\n }\r\n\r\n public GetCorrespondencesCategoriesSettings(): Observable {\r\n return this.http.get(this.generalSettingBaseUrl + \"/GetCorrespondencesCategoriesSettings\").pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public SaveCorrespondencesCategoriesSettings(categoriesSettingsValuesList): Observable {\r\n let url = `${this.generalSettingBaseUrl}/SaveCorrespondencesCategoriesSettings?categoriesSettingsValuesList=${categoriesSettingsValuesList}`;\r\n return this.http.post(url, categoriesSettingsValuesList)\r\n }\r\n\r\n public GetApplicationFeatures(): Observable {\r\n let url = `${this.generalSettingBaseUrl}/GetApplicationFeatures`;\r\n return this.http.get(url)\r\n }\r\n\r\n handleError(error: any) { \r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n return throwError(errMsg);\r\n }\r\n}\r\n\r\n","import { Injectable } from \"@angular/core\";\r\nimport { BaseService } from \"../../../../_common/services/baseService\";\r\nimport { HttpInterceptor } from \"../../../../_common/services/http-interceptor\";\r\nimport { IGlobalSettings } from \"../../../../_common/Models/IGlobalSettings\";\r\nimport { Observable } from \"rxjs\";\r\nimport { ScheduleTemplateDto } from \"src/app/Scheduling/_models/ScheduleTemplate-Dto\";\r\nimport { ScheduleTemplateRoleDTO, TopicModel } from \"./schedule-templates-cmp\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n@Injectable()\r\nexport class ScheduleTemplatesSvc extends BaseService {\r\n \r\n baseURL = BERRY.hostName + \"api/ScheduleTemplates\";\r\n baseURL2 = BERRY.hostName + \"api/GeneralScheduleApi\";\r\n baseURL3 = BERRY.hostName + \"api/ScheduleTemplatesRole\";\r\n memoSummariesBaseUrl = BERRY.hostName + \"api/MemoSummaries\";\r\n memoProceduresBaseUrl = BERRY.hostName + \"api/MemoProcedures\";\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n getAllScheduleTemplates() {\r\n return super.get(`${this.baseURL}/Get`);\r\n }\r\n\r\n\r\n GetAllScheduleTemplates(PageIndex: number = 1, withPagin: boolean = true, templateName: string = \"\") {\r\n return super.get(`${this.baseURL}/All?PageIndex=${PageIndex}&withPagin=${withPagin}&templateName=${templateName}`);\r\n }\r\n\r\n UpdateScheduleTemplate(SelectedScheduleTemplate: ScheduleTemplateDto): Observable {\r\n let me = this;\r\n let url = me.baseURL + \"/Save?ScheduleTemplate=\" + SelectedScheduleTemplate.ScheduleTemplateId;\r\n return super.post(url, SelectedScheduleTemplate);\r\n }\r\n\r\n UpdateScheduleTemplateRole(scheduleTemplateRoleDTO: ScheduleTemplateRoleDTO): Observable {\r\n let me = this;\r\n let url = me.baseURL3 + \"/UpdateScheduleTemplateRole\";\r\n return super.post(url, scheduleTemplateRoleDTO);\r\n }\r\n\r\n refreshGeneralAndPrivateSchedule(templateId): Observable {\r\n let me = this;\r\n let url = me.baseURL + \"/GetGeneralAndPrivateSchedule?templateId=\" + templateId;\r\n return super.get(url);\r\n }\r\n getTemplateRoles(templateId): Observable {\r\n let me = this;\r\n let url = me.baseURL + \"/GetTemplateRoles?templateId=\" + templateId;\r\n return super.get(url);\r\n }\r\n\r\n canDeleteScheduleTemplateRole(scheduleTemplateId, roleId): Observable {\r\n let me = this;\r\n let url = me.baseURL + `/CanDeleteScheduleTemplateRole?scheduleTemplateId=${scheduleTemplateId}&roleId=${roleId}`;\r\n return super.get(url);\r\n }\r\n\r\n saveOrderList(listOrderIds: string): Observable {\r\n let me = this;\r\n return super.post(me.baseURL + \"/SaveListOrder?listOrderIds=\" + listOrderIds+\"\");\r\n \r\n }\r\n\r\n GetAllowedTemplatesForGenralScheduleDashboard() {\r\n return super.get(`${this.baseURL2}/GetAllowedTemplatesForGenralScheduleDashboard`);\r\n }\r\n\r\n GetAllowedTemplatesForGenralSchedule() {\r\n return super.get(`${this.baseURL2}/GetAllowedTemplatesForGenralSchedule`);\r\n }\r\n\r\n canShowGeneralScheduleTab() {\r\n return super.get(`${this.baseURL2}/CanShowGeneralScheduleTab`);\r\n }\r\n\r\n GetScheduleTemplateById(ScheduleItemId: string) {\r\n return super.get(\r\n `${this.baseURL2}/GetScheduleTemplateById?ScheduleItemId=${ScheduleItemId}`\r\n );\r\n }\r\n\r\n GetTabs(): Observable {\r\n return super.get(`${this.baseURL}/GetTabs`);\r\n }\r\n\r\n AddUserToScheduleTeam(SelectedUserID: any, ScheduleTemplateId: any, scheduleTeamTypeId: any): Observable {\r\n let me = this;\r\n var body = {\r\n SelectedUserID: SelectedUserID,\r\n ScheduleTemplateId: ScheduleTemplateId,\r\n ScheduleTeamTypeId: scheduleTeamTypeId\r\n }\r\n let url = me.baseURL + \"/AddUserToScheduleTeam\";\r\n return super.post(url, body);\r\n }\r\n\r\n GetInteristedTeam(scheduleTeamTypeId: number, ScheduleTemplateId: any): Observable {\r\n let me = this;\r\n \r\n let url = me.baseURL + \"/GetInteristedTeam?ScheduleTemplateId=\" + ScheduleTemplateId + \"&scheduleTeamTypeId=\" + scheduleTeamTypeId;\r\n return super.get(url);\r\n }\r\n\r\n DeleteTeamMember(IndividualId: number, ScheduleTemplateId: any, scheduleTeamTypeId: number): any {\r\n let me = this;\r\n var body = {\r\n IndividualId: IndividualId,\r\n ScheduleTemplateId: ScheduleTemplateId,\r\n ScheduleTeamTypeId: scheduleTeamTypeId\r\n }\r\n let url = me.baseURL + \"/DeleteTeamMember\";\r\n return super.post(url, body);\r\n }\r\n\r\n\r\n GetMemoSummariesByTemplateId(scheduleTemplateId): Observable {\r\n let me = this;\r\n let url = `${me.memoSummariesBaseUrl}/GetMemoSummariesByTemplateId?scheduleTemplateId=${scheduleTemplateId}`;\r\n return super.get(url);\r\n }\r\n\r\n SaveMemoSummaries(scheduleTemplateMemoSummaries): any {\r\n let me = this;\r\n let url = me.memoSummariesBaseUrl + \"/SaveMemoSummaries?memoSummaries=\" + scheduleTemplateMemoSummaries;\r\n return super.post(url, scheduleTemplateMemoSummaries);\r\n }\r\n\r\n DeleteMemoSummaries(deletedMemoSummaries): any {\r\n let me = this;\r\n let url = me.memoSummariesBaseUrl + \"/DeleteMemoSummaries?deletedMemoSummaries=\" + deletedMemoSummaries;\r\n return super.post(url, deletedMemoSummaries);\r\n }\r\n\r\n\r\n GetMemoProceduresByTemplateId(scheduleTemplateId): Observable {\r\n let me = this;\r\n let url = `${me.memoProceduresBaseUrl}/GetMemoProceduresByTemplateId?scheduleTemplateId=${scheduleTemplateId}`;\r\n return super.get(url);\r\n }\r\n\r\n SaveMemoProcedures(scheduleTemplateMemoProcedures): any {\r\n let me = this;\r\n let url = me.memoProceduresBaseUrl + \"/SaveMemoProcedures?memoProcedures=\" + scheduleTemplateMemoProcedures;\r\n return super.post(url, scheduleTemplateMemoProcedures);\r\n }\r\n\r\n DeleteMemoProcedures(deletedMemoProcedures): any {\r\n let me = this;\r\n let url = me.memoProceduresBaseUrl + \"/DeleteMemoProcedures?deletedMemoProcedures=\" + deletedMemoProcedures;\r\n return super.post(url, deletedMemoProcedures);\r\n }\r\n\r\n //topics-group\r\n GetTopicsGroup(scheduleTemplateId: number = 0): Observable {\r\n let me = this;\r\n let url = `${me.baseURL}/GetTopicsGroup?scheduleTemplateId=${scheduleTemplateId}`;\r\n return super.get(url);\r\n }\r\n\r\n AddNewTopic(topicsGroupDto: TopicModel): Observable {\r\n let me = this;\r\n let url = `${me.baseURL}/AddNewTopic`;\r\n return super.post(url, topicsGroupDto);\r\n }\r\n\r\n EditTopic(topicsGroupDto: TopicModel): Observable {\r\n let me = this;\r\n let url = `${me.baseURL}/EditTopic`;\r\n return super.post(url, topicsGroupDto);\r\n }\r\n\r\n DeleteTopic(topicId: number = 0): Observable {\r\n let me = this;\r\n let url = `${me.baseURL}/DeleteTopic?topicId=${topicId}`;\r\n return super.get(url);\r\n }\r\n}\r\n","\r\nimport { throwError as observableThrowError } from 'rxjs';\r\nimport { map, catchError } from 'rxjs/operators';\r\nimport { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { HttpInterceptor } from \"../../../../_common/services/http-interceptor\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class UserFavoritesSvc {\r\n private baseUrl = BERRY.hostName + \"api/UserFavoritesApi\";\r\n\r\n constructor(public http: HttpInterceptor) { }\r\n\r\n getUserFavorites() {\r\n return this.http\r\n .get(this.baseUrl + \"/GetAll\").pipe(\r\n map(res => res),\r\n catchError(this.handleError),);\r\n }\r\n\r\n UpdateUserFavorites(userFavorites) {\r\n return this.http\r\n .post(this.baseUrl + \"/UpdateUserFavoriteEntities\", userFavorites).pipe(\r\n map(res => res),\r\n catchError(this.handleError),);\r\n }\r\n\r\n private handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n return observableThrowError(errMsg);\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 {{getText('SubCommitteesHaveActionsMsg','SubCommittees')}}:\r\n

    \r\n

    - {{getText('DeactivateSubCommitteesHaveActionsMsg','SubCommittees')}}

    \r\n

    - {{getText('UnlinkSubCommitteesHaveActionsMsg','SubCommittees')}}

    \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 {{getText('SubCommitteesHaveActionsMsg','SubCommittees')}}:\r\n

    \r\n

    - {{getText('DeleteSubCommitteesHaveActionsMsg','SubCommittees')}}

    \r\n

    - {{getText('UnlinkSubCommitteesHaveActionsMsg','SubCommittees')}}

    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n ","import {\r\n Component,\r\n EventEmitter,\r\n Output,\r\n ViewChild,\r\n\r\n} from \"@angular/core\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { IPopup, PopupComponent } from \"src/app/_common/components/popup/popup-component\";\r\nimport { SubCommitteesSVC } from \"../../../../../committees/components/details/subcommittees/sub-committees-svc\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { CommitteesSvc } from \"../../../../../committees/services/committees-svc\";\r\n \r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"committe-status-popup-cmp\",\r\n templateUrl: \"./committe-status-popup-ng.html\"\r\n})\r\nexport class CommitteStatusPopupCmp extends BaseCmp {\r\n\r\n @ViewChild(\"committeeStatusPopup\") committeeStatusPopup : PopupComponent;\r\n @Output(\"ChangeCommitteesStatus\") ChangeCommitteesStatus: EventEmitter = new EventEmitter();\r\n @Output(\"DeleteCommittee\") DeleteCommittee: EventEmitter = new EventEmitter();\r\n\r\n isSubscribed: boolean = true;\r\n activeCommittee: boolean = false;\r\n deactivateCommittee: boolean = false;\r\n deleteCommittee: boolean = false;\r\n parentCommitteeId: number;\r\n\r\n activateParentCommitteeOnly: boolean = true;\r\n deactivateParentCommitteeAndSubCommittees: boolean = false;\r\n deleteParentCommitteeAndSubCommittees: boolean = false;\r\n canMakeActionsOnAllSubCommittees: boolean = true;\r\n\r\n constructor(\r\n public _svc: CommitteesSvc,\r\n public _subCommitteesSVC: SubCommitteesSVC\r\n ) {\r\n super();\r\n }\r\n\r\n ngSuperOnInit() {}\r\n \r\n ngSuperAfterViewInit() {}\r\n \r\n resetPopupValue() {\r\n this.activeCommittee = false;\r\n this.deactivateCommittee = false;\r\n this.deleteCommittee = false;\r\n this.activateParentCommitteeOnly = true;\r\n this.deactivateParentCommitteeAndSubCommittees = false;\r\n this.deleteParentCommitteeAndSubCommittees = false;\r\n this.canMakeActionsOnAllSubCommittees = true;\r\n this.parentCommitteeId = null;\r\n }\r\n\r\n get getTitle() {\r\n if (this.activeCommittee) {\r\n return this.getText('ActivateCommittee', 'SubCommittees');\r\n } else if (this.deactivateCommittee) {\r\n return this.getText('DeactivateCommittee', 'SubCommittees');\r\n } else if (this.deleteCommittee) {\r\n return this.getText('DeleteCommittee', 'SubCommittees');\r\n }\r\n }\r\n\r\n committeeStatusPopupOption: IPopup = {\r\n title: this.getTitle,\r\n actions: [\r\n {\r\n text: this.getText('Save', '_common'), type: 'submit', event: () => this.completeProcess()\r\n },\r\n {\r\n text: this.getText('Cancel', '_common'), type: 'close', event: () => this.resetPopupValue()\r\n }\r\n ],\r\n mode: 'small',\r\n }\r\n \r\n openCommitteeStatusPopup() {\r\n this.committeeStatusPopup.open();\r\n }\r\n\r\n closeCommitteeStatusPopup() {\r\n this.committeeStatusPopup.close();\r\n }\r\n\r\n completeProcess() {\r\n let params = { committeeId: this.parentCommitteeId, isCommitteeActivation: false, activateParentCommitteeOnly: this.activateParentCommitteeOnly, deactivateParentCommitteeAndSubCommittees: this.deactivateParentCommitteeAndSubCommittees };\r\n if (this.activeCommittee) {\r\n params.isCommitteeActivation = true;\r\n this.ChangeCommitteesStatus.emit(params);\r\n } else if (this.deactivateCommittee) {\r\n params.isCommitteeActivation = false;\r\n this.ChangeCommitteesStatus.emit(params);\r\n } else if (this.deleteCommittee) {\r\n this.DeleteCommittee.emit({ committeeId: this.parentCommitteeId, deleteParentCommitteeAndSubCommittees: this.deleteParentCommitteeAndSubCommittees });\r\n }\r\n }\r\n\r\n CanMakeActionsOnAllSubCommittees() {\r\n this._subCommitteesSVC.CanMakeActionsOnAllSubCommittees(this.parentCommitteeId, this.deactivateCommittee, this.deleteCommittee)\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(data => {\r\n this.canMakeActionsOnAllSubCommittees = data;\r\n });\r\n }\r\n\r\n ResetOption() {\r\n this.canMakeActionsOnAllSubCommittees = true;\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 {{getText('Yes', 'ValidationMessage')}}\r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n {{getText('No', 'ValidationMessage')}}\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
    \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 {{getText('Yes', 'ValidationMessage')}}\r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n {{getText('No', 'ValidationMessage')}}\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 {{getText(\"LinkedArchive\",\"DraftCorrespondence\")}}\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
    {{getText(\"ArchiveNumber\",\"AddEditCommittee\")}}{{getText(\"ArchiveTitle\",\"AddEditCommittee\")}}{{getText(\"Type\",\"AddEditCommittee\")}}
    {{item.ArchiveNumber}}{{item.Title}}\r\n {{getText(\"Type-\"+item.Type,\"CommitteesWithCategoryReplacement\") |\r\n formatString : selectedCategoryText\r\n }}\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n {{getText('ThereAreNoLinkedArchive', 'CommitteesModule')}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n {{getText(\"CommitteeMembers\",\"CommitteesWithCategoryReplacement\") | formatString :\r\n selectedCategoryText\r\n }}\r\n
    \r\n \r\n
    \r\n \r\n\r\n\r\n
    \r\n
    \r\n 0\">\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 {{getText(\"IsCommitteeManger\",\"CommitteesWithCategoryReplacement\") |\r\n formatString : selectedCategoryText\r\n }}\r\n {{getText(\"memberName\",\"AddEditCommittee\")}}\r\n {{getText('SetAsUser','ExternalUser')}}\r\n \r\n \r\n {{getText('ConfirmEmail','ExternalUser')}}\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n {{member.Name}}\r\n \r\n \r\n ( {{getText('ExternalUserTitle', 'ExternalUser')}} )\r\n \r\n
    \r\n \r\n \r\n \r\n {{member.CommitteeRoleName}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{getText('Edit','CorrespondenceDetails')}}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n {{getText('Yes', 'ValidationMessage')}}\r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n {{getText('No', 'ValidationMessage')}}\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 {{getText('ThereAreNoMembersAdded', 'CommitteesModule')}}\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 {{getText(\"User\",\"AddEditCommittee\")}}\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 {{getText('RoleMemberCommittee', 'CommitteesWithCategoryReplacement') | formatString :\r\n selectedCategoryText\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
    {{getText(\"ArchiveNumber\",\"AddEditCommittee\")}}{{getText(\"ArchiveTitle\",\"AddEditCommittee\")}}{{getText(\"Type\",\"AddEditCommittee\")}}
    {{item.ArchiveNumber}}{{item.Title}}\r\n {{getText(\"Type-\"+item.Type,\"CommitteesWithCategoryReplacement\") | formatString :\r\n selectedCategoryText\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","import {\r\n Component,\r\n ViewChild,\r\n ComponentFactoryResolver,\r\n ChangeDetectorRef,\r\n EventEmitter\r\n} from \"@angular/core\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { CommitteesSvc } from \"./committees-Svc\";\r\nimport { FormBuilder, FormGroup, Validators } from \"@angular/forms\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { MergeCommitteeModalCmp } from \"./merge-committee-modal-cmp\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { datetimeHelper } from \"src/app/_common/utils/datetimeHelper\";\r\nimport { DialogManager, ConfirmationBoxOptions, ConfirmationBoxType, ConfirmationBoxResult } from \"src/app/_common/services/dialog-manager\";\r\nimport { IComboboxOptions, IComboboxServerDatasourceOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { ContactAuthInfoEditCmp } from \"src/app/Contacts/contact-auth-info-edit/contact-auth-info-edit\";\r\nimport { PublicInboxDto, PublicInboxType } from \"./models/publicInboxDto\";\r\nimport { IndividualAuthenticationAccessDto, AuthenticationReasonEnum } from \"src/app/Contacts/individuals/AuthenticationAccess/individual-authentication-access-dto\";\r\nimport { IndividualAuthenticationAccessSvc } from \"src/app/Contacts/individuals/AuthenticationAccess/individual-authentication-access-svc\";\r\nimport { SafeResourceUrl, DomSanitizer } from \"@angular/platform-browser\";\r\nimport { MessagingService } from \"src/app/_common/services/messaging-service\";\r\nimport { kendoAutoComplete } from \"src/app/_common/directives/KendoUI-wrappers/kendoAutoComplete\";\r\nimport { QuickSearchComponent } from \"src/app/Archives/Modals/QuickSearch/quickSearch\";\r\nimport { Location } from \"@angular/common\";\r\nimport { AppModulesEnum } from \"../../../../_common/models/AppModulesEnum\";\r\nimport { IPopup, PopupComponent } from \"../../../../_common/components/popup/popup-component\";\r\nimport { EditMemberPermissionsComponent } from \"../../../../committees/components/details/MembersNew/edit-member-permissions/edit-member-permissions-cmp\";\r\nimport { EditMembersComponent } from \"../../../../committees/components/details/MembersNew/edit-members/edit-members-cmp\";\r\nimport { generalSettingsSvc } from \"../generalSettings/general-settings-svc\";\r\nimport { stringFormat } from \"../../../../_common/utils/stringFormat\";\r\nimport { CommitteesGoalsAddModifyComponent } from \"../../../../committees/components/details/Goals/committees-goals-add-modify-cmp\";\r\nimport { CommitteStatusPopupCmp } from \"./CommitteStatusPopup/committe-status-popup-cmp\";\r\nimport { EntityNameTypesEnum } from \"../../../../_common/components/audittraillist/audittraillist.models\";\r\nimport { AudittraillistComponent } from \"../../../../_common/components/audittraillist/audittraillist.component\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"add-edit-committee\",\r\n templateUrl: \"./add-edit-committee-ng.html\",\r\n providers: [IndividualAuthenticationAccessSvc]\r\n})\r\nexport class AddEditCommitteeCmp extends BaseCmp {\r\n\r\n isSubscribed: boolean = true;\r\n isEditPopupMode: boolean = false;\r\n showGoBack: boolean = true;\r\n showToggle: boolean = false;\r\n CommitteeStatusBusy = false;\r\n externalCommitteeMemberMarkedAsUser = false;\r\n exportingInProgress: boolean = false;\r\n committeeIdPopup;\r\n isAdmin: boolean = true;\r\n Numbering: boolean = false;\r\n isAutoNumbering: boolean = false;\r\n fromInbox: boolean = false;\r\n committeeCategories: any = [];\r\n _showRDOrganizationFields: boolean = false;\r\n _isR2Client: boolean = false;\r\n _isCommitteeGoalsOptional: boolean = false;\r\n showCommitteeAuditTrialCmp: boolean = false;\r\n entityNameType: EntityNameTypesEnum = EntityNameTypesEnum.Entity;\r\n committeeIdStr: string;\r\n execludedArchivesIds : any[];\r\n\r\n @ViewChild(\"AuditTrailListCmp\") AuditTrailListCmp: AudittraillistComponent;\r\n @ViewChild(\"CommitteStatusPopupCmpAdminPage\") CommitteStatusPopup: CommitteStatusPopupCmp;\r\n @ViewChild(\"MergeCommitteeModal\") mergeCommitteeModal: MergeCommitteeModalCmp;\r\n @ViewChild(\"CommitteesGoalsAddModifyCmp\") committeesGoalsAddModifyCmp: CommitteesGoalsAddModifyComponent;\r\n @ViewChild(\"newMemberContactsAuthInfoEdit\") newMemberContactsAuthInfoEdit: ContactAuthInfoEditCmp;\r\n @ViewChild(\"editMemberContactsAuthInfoEdit\") editMemberContactsAuthInfoEdit: ContactAuthInfoEditCmp;\r\n @ViewChild(kendoAutoComplete) public ExternalMember: kendoAutoComplete;\r\n public exportIFrameSRC: SafeResourceUrl = this.sanitizer.bypassSecurityTrustResourceUrl(\"\");\r\n\r\n @ViewChild('quickSearch') public quickSearch: QuickSearchComponent;\r\n CommitteeForm: FormGroup;\r\n committeeMembers: any[] = [];\r\n selectedMember;\r\n UserMeetinRoles: any[] = [];\r\n archiveItems: EntityArchiveItemDTO[] = [];\r\n archiveItemAddMemberTemplateDto: EntityArchiveItemDTO[] = [];\r\n archiveItemRemoveMemberTemplateDto: EntityArchiveItemDTO[] = [];\r\n archiveItemMergeTemplateDto: EntityArchiveItemDTO[] = [];\r\n ScheduleRoles: ScheduleRoleType[] = [];\r\n initialDate;\r\n initialDateValue: EventEmitter = new EventEmitter();\r\n _isMangerExist: boolean = false;\r\n DynamicCommitteeMeetings = BERRY.appSettings.keys.dynamicCommitteeMeetings;\r\n IsManagerChecked = false;\r\n componentRef;\r\n TempRoles: number[] = [];\r\n clientName = BERRY.clientName;\r\n isEditCommitteeMode: boolean = false;\r\n enableAddExternalMemberSetting: boolean = false;\r\n markMemberAsExternalUserTooltip: string = \"\";\r\n UsersCommitteeDto: PublicInboxDto = new PublicInboxDto();\r\n\r\n RDOrganizationCodeDto = {\r\n Id: 0,\r\n TextEn: \"\"\r\n };\r\n\r\n get enableEntityArchiveItem() {\r\n return BERRY.appSettings.keys.enableEntityArchiveItem;\r\n }\r\n get savedisabled() {\r\n let isValid = this.CommitteeForm.valid && ((!!this.CommitteeDto.StartDate && !!this.CommitteeDto.EndDate) || !this.CommitteeDto.IsTemporary)\r\n && ((this._showRDOrganizationFields && !!this.CommitteeDto.RegulatoryDocumentCodeId && !!this.CommitteeDto.OrganizationCodeId)\r\n || !this._showRDOrganizationFields);\r\n\r\n return isValid && this.CommitteeDto.ParentEntityID;\r\n }\r\n\r\n get isAdvancedCommitteeEnabled() {\r\n return BERRY.onOffFeatures.advanced_Committee;\r\n }\r\n\r\n get isCommitteeGoalsOptional(){\r\n return this._isCommitteeGoalsOptional;\r\n }\r\n\r\n get IsCommitteeTemporaryAndExpired() {\r\n if(this.CommitteeDto?.IsTemporary == true && this.CommitteeDto?.IsCommitteeExpired == true) {\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n get getElapsedTemporaryCommitteeTooltip() {\r\n return this.IsCommitteeTemporaryAndExpired ? this.getText('ElapsedTemporaryCommittee', 'committees') : '';\r\n }\r\n\r\n CommitteeDto = {\r\n EntityNameAR:\"\",\r\n EntityName: \"\",\r\n EntityNameEn: \"\",\r\n CommitteeNumber: \"\",\r\n ShortEntityName: \"\",\r\n ShortEntityNameEn: \"\",\r\n CommitteeId: null,\r\n StartDate: \"\",\r\n EndDate: \"\",\r\n IsCommittee: true,\r\n ParentEntityID: null,\r\n ParentEntity: null,\r\n ParentEntityName: null,\r\n\r\n CommitteeTypeId: null,\r\n CommitteeMangerId: \"\",\r\n //for all clients\r\n TypeOfCommittee: null,\r\n CommitteeTypeName: null,\r\n CommitteeType: null,\r\n\r\n IsActive: false,\r\n IsCommitteeExpired: false,\r\n EntityTypeID: null,\r\n corrsCount: null,\r\n IsTemporary: true,\r\n ArchiveItems: [],\r\n //For Nazaha and 'must be updated'\r\n CommitteeTypeEnum: CommitteeTypeEnum.Internal,\r\n CommitteeMeetingTemplateNameAr: this.getText(\"Meeting\", \"Meetings\", \"ar\"),\r\n CommitteeMeetingTemplateNameEn: this.getText(\"Meeting\", \"Meetings\", \"en\"),\r\n CommitteeCategoryId: null,\r\n CommitteeGoals: [],\r\n ParentCommitteeId: null,\r\n HasSubCommittees: false,\r\n RegulatoryDocumentCode: Object.assign({}, this.RDOrganizationCodeDto),\r\n OrganizationCode: Object.assign({}, this.RDOrganizationCodeDto),\r\n RegulatoryDocumentCodeId: null,\r\n OrganizationCodeId: null\r\n };\r\n\r\n ScheduleRoleDto = {\r\n UserId: \"\",\r\n RoleEnumId: null,\r\n CommitteeId: null,\r\n EntityName: null,\r\n UserName: null\r\n };\r\n\r\n autocompleteDefaultOptions: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"POST\",\r\n resultsField: \"d\",\r\n searchField: \"kw\"\r\n };\r\n\r\n\r\n comboBoxServerSearchDatasourceDefaultOptions: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"GET\",\r\n resultsField: \"\",\r\n searchField: \"kw\"\r\n };\r\n\r\n userAutoComplete: IComboboxOptions = Object.assign(\r\n {},\r\n this.comboBoxServerSearchDatasourceDefaultOptions,\r\n {\r\n serverDatasource: Object.assign({}, this.comboBoxServerSearchDatasourceDefaultOptions, {\r\n url: BERRY.hostName + \"api/committees/GetAllCommitteeUsers?isIncludeExternal=false\" ,\r\n additionalParams: () => {\r\n return { returnIndividualId: false , committeeId:this.CommitteeDto.CommitteeId};\r\n }\r\n }),\r\n dataTextField: \"NameWithPosition\",\r\n dataValueField: \"Id\",\r\n allowFreeText: false,\r\n autoBind: true,\r\n displayTemplate: this.bindTemplate\r\n }\r\n );\r\n\r\n bindTemplate(data) {\r\n if (!!data.Position) {\r\n return `${data.Number} - ${data.Value} (${data.Position})`;\r\n }\r\n\r\n return `${data.Number} - ${data.Value}`;\r\n }\r\n\r\n individualsNotLinkedWithUsersAutoComplete = {\r\n serviceQueryParameterName: \"kw\",\r\n serviceMethod: \"POST\",\r\n serviceUrl: BERRY.hostName + \"Correspondences/Applications/GetIndividualsNotLinkedWithUsersAutoComplete?draftMode=\",\r\n height: 200,\r\n serviceDataSchema: \"\",\r\n template: \"#: data.number # - #: data.value #\",\r\n dataTextField: \"value\",\r\n autoBind: false,\r\n noDataTemplate: obj => {\r\n var $btn = $(\r\n ``\r\n );\r\n $btn.click(() => this.createIndividual());\r\n return $btn;\r\n },\r\n };\r\n\r\n RegulatoryDocumentCodeAutoComplete: IComboboxOptions = Object.assign(\r\n {},\r\n this.autocompleteDefaultOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.comboBoxServerSearchDatasourceDefaultOptions,\r\n {\r\n url:\r\n BERRY.hostName +\r\n \"api/contacts/lookups/GetRegulatoryDocumentCodeItems\"\r\n }\r\n ),\r\n minLength: 1,\r\n dataTextField: \"TextEn\",\r\n dataValueField: \"Id\",\r\n allowFreeText: false,\r\n displayTemplate: \"#: data.TextEn #\"\r\n }\r\n );\r\n\r\n OrganizationCodeAutoComplete: IComboboxOptions = Object.assign(\r\n {},\r\n this.autocompleteDefaultOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n this.comboBoxServerSearchDatasourceDefaultOptions,\r\n {\r\n url:\r\n BERRY.hostName +\r\n \"api/contacts/lookups/GetOrganizationCodeItems\"\r\n }\r\n ),\r\n minLength: 1,\r\n dataTextField: \"TextEn\",\r\n dataValueField: \"Id\",\r\n allowFreeText: false,\r\n displayTemplate: \"#: data.TextEn #\"\r\n }\r\n );\r\n createIndividual() {\r\n const me = this;\r\n\r\n let elements: any = document.getElementsByClassName(\"k-animation-container\");\r\n if (elements != null && typeof (elements) != \"undefined\" && elements.length > 0) {\r\n for (var i = 0; i < elements.length; i++) {\r\n elements[i].style.display = \"none\";\r\n }\r\n }\r\n\r\n me.router.navigate([{ outlets: { 'modal': ['add-new-individual'] } }], {\r\n queryParams: {\r\n 'IndvName': me.UsersCommitteeDto.UserText\r\n }, skipLocationChange:false\r\n });\r\n }\r\n\r\n AutoCompEntitiesOptions: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"POST\",\r\n resultsField: \"\",\r\n searchField: \"kw\"\r\n };\r\n\r\n RecipientsAutocomplete: IComboboxOptions = Object.assign(\r\n {},\r\n this.AutoCompEntitiesOptions,\r\n {\r\n serverDatasource: Object.assign({}, this.AutoCompEntitiesOptions, {\r\n url: BERRY.hostName + \"api/CommitteesManagementApi/AutoCompEntities\",\r\n additionalParams: () => {\r\n return { withoutCommittees: true };\r\n }\r\n }),\r\n dataTextField: \"value\",\r\n dataValueField: \"dbid\",\r\n allowFreeText: false,\r\n autoBind: true,\r\n displayTemplate: \"#: data.number # - #: data.value #\"\r\n }\r\n );\r\n\r\n CommitteeTypesAutocomplete: IComboboxOptions = Object.assign(\r\n {},\r\n this.autocompleteDefaultOptions,\r\n {\r\n\r\n serverDatasource: Object.assign({}, this.autocompleteDefaultOptions, {\r\n url: BERRY.hostName + \"api/CommitteesManagementApi/AutoCompCommitteeTypes\",\r\n additionalParams: () => {\r\n return { withoutExternal: true, categoryId: this.CommitteeDto.CommitteeCategoryId };\r\n }\r\n }),\r\n dataTextField: \"value\",\r\n dataValueField: \"dbid\",\r\n allowFreeText: false,\r\n autoBind: true,\r\n displayTemplate: \" #: data.value #\"\r\n }\r\n );\r\n\r\n constructor(\r\n public DateHelper: datetimeHelper,\r\n public resolver: ComponentFactoryResolver,\r\n public _route: ActivatedRoute,\r\n public _dialogs: DialogManager,\r\n public _toaster: ToastrService,\r\n public _svc: CommitteesSvc,\r\n public individualAuthSvc: IndividualAuthenticationAccessSvc,\r\n public cdRef: ChangeDetectorRef,\r\n public sanitizer: DomSanitizer,\r\n public fb: FormBuilder,\r\n public router: Router,\r\n public msgs: MessagingService,\r\n public generalSettingsSvc: generalSettingsSvc,\r\n public _location: Location,\r\n ) {\r\n super();\r\n this.UsersCommitteeDto.UserText = \"\";\r\n this.msgs.subscribe(\"IndividualCreate\", data => {\r\n if (data != null) {\r\n this.UsersCommitteeDto.UserText = data.DisplayName;\r\n this.UsersCommitteeDto.User = data;\r\n }\r\n });\r\n\r\n if(BERRY.clientName.toLowerCase() == 'rshc')\r\n this._isR2Client = true;\r\n\r\n this.generalSettingsSvc\r\n .GetValue('RDCodeAndOragnizationCode', 'IsRDCodeAndOragnizationCodeEnabled', 'false')\r\n .subscribe(data => {\r\n if(data == 'true')\r\n this._showRDOrganizationFields = true;\r\n });\r\n\r\n this.generalSettingsSvc\r\n .GetValue('CommitteesSetting', 'IsCommitteeGoalsOptional', 'false')\r\n .subscribe(data => {\r\n if(data == 'true')\r\n this._isCommitteeGoalsOptional = true;\r\n });\r\n }\r\n\r\n get RDOrganizationFieldsEnabled(){\r\n return this._showRDOrganizationFields;\r\n }\r\n\r\n setRegulatoryDocumentCodeValue(data) {\r\n let me = this;\r\n if (data != null) {\r\n me.CommitteeDto.RegulatoryDocumentCodeId = data.Id;\r\n }\r\n else\r\n me.CommitteeDto.RegulatoryDocumentCodeId = null;\r\n }\r\n\r\n setOrganizationCodeValue(data) {\r\n let me = this;\r\n if (data != null) {\r\n me.CommitteeDto.OrganizationCodeId = data.Id;\r\n }\r\n else\r\n me.CommitteeDto.OrganizationCodeId = null;\r\n }\r\n\r\n addLinked_ValidateCallback(entityToAdd) {\r\n const me = this;\r\n\r\n const dto: EntityArchiveItemDTO = {\r\n EntityId: me.CommitteeDto.CommitteeId,\r\n ArchiveId: entityToAdd.Id,\r\n Type: EnitiyArchiveType.Merge\r\n };\r\n let isAlreadyLinked = me.archiveItems.some(r => {\r\n return r.ArchiveId == dto.ArchiveId\r\n });\r\n if (!isAlreadyLinked) {\r\n if (this.archiveItemType == EnitiyArchiveType.Create) {\r\n isAlreadyLinked = me.archiveItemAddMemberTemplateDto.some(r => {\r\n return r.ArchiveId == dto.ArchiveId && r.Type == dto.Type\r\n });\r\n }\r\n if (this.archiveItemType == EnitiyArchiveType.AddMember) {\r\n isAlreadyLinked = me.archiveItemAddMemberTemplateDto.some(r => {\r\n return r.ArchiveId == dto.ArchiveId && r.Type == dto.Type\r\n });\r\n }\r\n else if (this.archiveItemType == EnitiyArchiveType.RemoveMember) {\r\n isAlreadyLinked = me.archiveItemRemoveMemberTemplateDto.some(r => {\r\n return r.ArchiveId == dto.ArchiveId && r.Type == dto.Type\r\n });\r\n }\r\n else if (this.archiveItemType == EnitiyArchiveType.Merge) {\r\n this.archiveItemMergeTemplateDto = me.mergeCommitteeModal.archiveItemMerge;\r\n isAlreadyLinked = me.archiveItemMergeTemplateDto.some(r => {\r\n return r.ArchiveId == dto.ArchiveId && r.Type == dto.Type\r\n });\r\n }\r\n }\r\n if (isAlreadyLinked) {\r\n let message = BERRY.loc.common.ALREADY_Linked;\r\n me.quickSearch.validateError(entityToAdd, message);\r\n }\r\n else {\r\n me.quickSearch.validateSuccess(entityToAdd);\r\n }\r\n }\r\n\r\n\r\n addLinked_SelectCallback(linkToAdd: any[]) {\r\n const me = this;\r\n\r\n me.archiveItemRemoveMemberTemplateDto = [];\r\n linkToAdd.forEach(r => {\r\n const enitiyArchiveItemDTO: EntityArchiveItemDTO = {\r\n EntityId: me.CommitteeDto.CommitteeId,\r\n ArchiveId: r.Id,\r\n Type: me.archiveItemType,\r\n ArchiveNumber: r.ArchiveNumber,\r\n Title: r.Title,\r\n };\r\n if (me.archiveItemType == EnitiyArchiveType.Create) {\r\n me.archiveItems = [...me.archiveItems, enitiyArchiveItemDTO];\r\n me.execludedArchivesIds=me.archiveItems.map(x=>x.ArchiveId)\r\n }\r\n else if (me.archiveItemType == EnitiyArchiveType.AddMember) {\r\n me.archiveItemAddMemberTemplateDto = [...me.archiveItemAddMemberTemplateDto, enitiyArchiveItemDTO];\r\n }\r\n\r\n else if (me.archiveItemType == EnitiyArchiveType.Merge) {\r\n me.archiveItemMergeTemplateDto = [...me.archiveItemMergeTemplateDto, enitiyArchiveItemDTO];\r\n }\r\n else if (me.archiveItemType == EnitiyArchiveType.RemoveMember) {\r\n me.archiveItemRemoveMemberTemplateDto = [...me.archiveItemRemoveMemberTemplateDto, enitiyArchiveItemDTO];\r\n }\r\n else if (me.archiveItemType == EnitiyArchiveType.EditMember) {\r\n me.archiveItemRemoveMemberTemplateDto = [...me.archiveItemRemoveMemberTemplateDto, enitiyArchiveItemDTO];\r\n }\r\n if (me.archiveItemType == EnitiyArchiveType.Edit) {\r\n me.archiveItems = [...me.archiveItems, enitiyArchiveItemDTO];\r\n }\r\n })\r\n\r\n if (me.archiveItemType == EnitiyArchiveType.RemoveMember) {\r\n me._svc.RemoveCommitteeMember(me.memberId, me.CommitteeDto.CommitteeId, me.isPresedent, me.userId, me.archiveItemRemoveMemberTemplateDto).pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data) {\r\n me.GetCommitteeMembers();\r\n me.archiveItemRemoveMemberTemplateDto.forEach(r => {\r\n me.archiveItems = [...me.archiveItems, r];\r\n me.memberId = null;\r\n me.isPresedent = false;\r\n me.userId = null;\r\n });\r\n }\r\n });\r\n }\r\n me.quickSearch.AllItemsAddedSuccessfully(false);\r\n }\r\n\r\n addLinked_ClosePopup(event) {\r\n if (this.archiveItemType == EnitiyArchiveType.RemoveMember) {\r\n this.deleteCommitteeMember(this.memberId);\r\n }\r\n }\r\n archiveItemType: EnitiyArchiveType = EnitiyArchiveType.Create;\r\n QuickSearch(type: string) {\r\n\r\n let me = this;\r\n me.archiveItemType = EnitiyArchiveType[type];\r\n me.quickSearch.QuickSearch();\r\n }\r\n\r\n loadData() {\r\n const me = this;\r\n me.isEditCommitteeMode = true;\r\n me._GetCommitteeInfo();\r\n me.UsersCommitteeDto.EntityId = me.CommitteeDto.CommitteeId;\r\n me.GetCommitteeMembers(true);\r\n me.GetArchiveItems();\r\n }\r\n\r\n GetArchiveItems() {\r\n\r\n const me = this;\r\n\r\n me._svc.getArchiveItems(me.CommitteeDto.CommitteeId).pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.archiveItems = data;\r\n });\r\n }\r\n EntityIdInbox: number = null;\r\n isEdite: boolean = false;\r\n ngSuperOnInit() {\r\n this.init();\r\n var me = this;\r\n me._route.params\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(params => {\r\n\r\n me.CommitteeDto.CommitteeId = params[\"id\"];\r\n if (me.CommitteeDto.CommitteeId == null && me.EntityIdInbox == null) {\r\n me.isEdite = true;\r\n }\r\n });\r\n me.generalSettingsSvc.GetValue(\"CommitteesSetting\", \"Numbering\").subscribe(data => {\r\n me.Numbering = (data == \"true\");\r\n if (me.Numbering) {\r\n me.isAutoNumbering = true;\r\n }\r\n });\r\n me.getCommitteeCategories();\r\n me.buildForm();\r\n this.initialDateValue.next(me.DateHelper.getCalendarFromJsDate(new Date(parseInt(Date.now().toString()))));\r\n if (this.isEditPopupMode) {\r\n this._route.params\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(() => {\r\n this.CommitteeDto.CommitteeId = this.committeeIdPopup;\r\n if (this.CommitteeDto.CommitteeId != null) {\r\n me.loadData()\r\n }\r\n });\r\n } else {\r\n me._route.params\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(params => {\r\n me.CommitteeDto.CommitteeId = params[\"id\"];\r\n if (me.CommitteeDto.CommitteeId != null) {\r\n me.loadData()\r\n }\r\n });\r\n }\r\n this.msgs.subscribe(\"IndividualCreate\", data => {\r\n if (data != null) {\r\n this.UsersCommitteeDto.UserText = data.DisplayName;\r\n }\r\n });\r\n\r\n this.getIsAddExternalContactsSettingEnabled();\r\n }\r\n\r\n ngSuperAfterViewInit() {\r\n }\r\n\r\n init() {\r\n let me = this;\r\n this.initialDateValue = new EventEmitter();\r\n this.initialDateValue\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(val => {\r\n me.initialDate = val;\r\n me.cdRef.detectChanges();\r\n });\r\n }\r\n\r\n getActionURL(actionName, controller, routeValue) {\r\n return BERRY.hostName + routeValue + \"/\" + controller + \"/\" + actionName;\r\n }\r\n\r\n public getIsAddExternalContactsSettingEnabled() {\r\n this.generalSettingsSvc\r\n .GetValue(\"GeneralConfiguration\", \"ActivateExternalUserLogin\")\r\n .subscribe(data => {\r\n this.enableAddExternalMemberSetting = data == \"true\";\r\n this.markMemberAsExternalUserTooltip = data == \"true\" ? \"\" : this.getText('NoExternalUsersAccess', 'ExternalUser');\r\n });\r\n }\r\n\r\n get canViewAuditTrail() {\r\n return BERRY.User.Permissions.ViewAuditTrail;\r\n }\r\n get ShowNameOfTheMeetingTemplate() {\r\n return BERRY.appSettings.keys.ShowNameOfTheMeetingTemplate;\r\n }\r\n\r\n get isAdvancedMeeting() {\r\n return BERRY.onOffFeatures.advanced_Meeting;\r\n }\r\n\r\n AddNewCommittee() {\r\n const me = this;\r\n\r\n //// check Committee number \r\n var validCommitteeNumber = false;\r\n me._svc.ValidateCommitteeNumber(me.CommitteeDto.CommitteeNumber, 0)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(dataResult => {\r\n if (dataResult) {\r\n validCommitteeNumber = dataResult;\r\n me.CommitteeDto.ArchiveItems = me.archiveItems;\r\n me.CommitteeDto.CommitteeId = 0;\r\n\r\n me._svc.AddNewCommittee(me.CommitteeDto)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(entityId => {\r\n if (entityId) {\r\n me.CommitteeDto.CommitteeId = entityId;\r\n me._GetCommitteeInfo();\r\n me.UsersCommitteeDto.EntityId = entityId;\r\n me._svc.isPresident = false;\r\n me._toaster.info(BERRY.loc.Committees.PleaseAddMembers);\r\n }\r\n },\r\n exception => {\r\n this._toaster.error(exception.error);\r\n });\r\n } else {\r\n me._toaster.error(stringFormat(this.getText(\"CommitteeNumberAlreadyUsed\", \"CommitteesWithCategoryReplacement\"), me.selectedCategoryText));\r\n return;\r\n }\r\n });\r\n }\r\n\r\n changeParentEntity(e) {\r\n if (e) this.CommitteeDto.ParentEntityID = e.dbid;\r\n }\r\n\r\n EditCommittee() {\r\n var me = this;\r\n //// check Committee number \r\n var validCommitteeNumber = false;\r\n me._svc.ValidateCommitteeNumber(me.CommitteeDto.CommitteeNumber, me.CommitteeDto.CommitteeId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(dataResult => {\r\n if (dataResult) {\r\n validCommitteeNumber = dataResult;\r\n me.CommitteeDto.ArchiveItems = me.archiveItems;\r\n me.CommitteeDto.EntityNameAR = me.CommitteeDto.EntityName;\r\n me._svc.EditCommittee(me.CommitteeDto)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(() => {\r\n me._GetCommitteeInfo();\r\n !me.HasAnyCorrespondence ? me._toaster.success(BERRY.loc.common.successMessage) : \"\";\r\n });\r\n } else {\r\n me._toaster.error(stringFormat(this.getText(\"CommitteeNumberAlreadyUsed\", \"CommitteesWithCategoryReplacement\"), me.selectedCategoryText));\r\n return;\r\n }\r\n });\r\n }\r\n\r\n deleteArchive(item: EntityArchiveItemDTO) {\r\n let me = this;\r\n this._dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n this.getText(\"deleteArchive\", \"AddEditCommittee\"),\r\n BERRY.loc.Committees.Worning,\r\n BERRY.loc.Committees.Yes,\r\n BERRY.loc.Committees.No\r\n );\r\n\r\n dialog.show(options, result => {\r\n if (result == ConfirmationBoxResult.Yes) {\r\n me._svc.deleteEntityArchiveItem(item)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data.d) {\r\n me.archiveItems = me.archiveItems.filter(r => { if (r != item) return r });\r\n }\r\n else {\r\n me.archiveItems = me.archiveItems.filter(r => { if (r != item) return r });\r\n }\r\n });\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n deleteArchiveTemp(item: EntityArchiveItemDTO) {\r\n const me = this;\r\n if (item.Type === EnitiyArchiveType.AddMember) {\r\n me.archiveItemAddMemberTemplateDto = me.archiveItemAddMemberTemplateDto.filter(r => { if (r != item) return r });\r\n }\r\n else if (item.Type === EnitiyArchiveType.RemoveMember) {\r\n me.archiveItemRemoveMemberTemplateDto = me.archiveItemRemoveMemberTemplateDto.filter(r => { if (r != item) return r });\r\n }\r\n else if (item.Type === EnitiyArchiveType.Merge) {\r\n me.archiveItemMergeTemplateDto = me.archiveItemMergeTemplateDto.filter(r => { if (r != item) return r });\r\n }\r\n else if (item.Type === EnitiyArchiveType.Create && me.CommitteeDto.CommitteeId == null) {\r\n me.archiveItems = me.archiveItems.filter(r => { if (r != item) return r });\r\n }\r\n }\r\n\r\n buildForm(): void {\r\n let me = this;\r\n me.CommitteeForm = me.fb.group({\r\n EntityName: [, [Validators.required]],\r\n CommitteeNumber: [, [Validators.required]],\r\n EntityNameEn: [me.CommitteeDto.EntityNameEn, me._isR2Client ? [Validators.required] : []],\r\n ShortEntityName: [me.CommitteeDto.ShortEntityName],\r\n ShortEntityNameEn: [me.CommitteeDto.ShortEntityNameEn],\r\n CommitteeMeetingTemplateNameAr: [me.CommitteeDto.CommitteeMeetingTemplateNameAr],\r\n CommitteeMeetingTemplateNameEn: [me.CommitteeDto.CommitteeMeetingTemplateNameEn],\r\n StartDate: [me.CommitteeDto.StartDate],\r\n EndDate: [me.CommitteeDto.EndDate],\r\n Parent: [me.CommitteeDto.ParentEntity, !me.isEditPopupMode ? [Validators.required] : []],\r\n IsTemporary: [me.CommitteeDto.IsTemporary],\r\n CommitteeTypeEnum: [me.CommitteeDto.CommitteeTypeEnum, me.getCommitteeTypeValidator()],\r\n Committee: [me.CommitteeDto.CommitteeType, me.getCommitteeTypeValidatorForAllClients()],\r\n CommitteeCategory: [me.CommitteeDto.CommitteeCategoryId, [Validators.required]],\r\n RegulatoryDocumentCode: [me.CommitteeDto.RegulatoryDocumentCodeId],\r\n OrganizationCode: [me.CommitteeDto.OrganizationCodeId]\r\n });\r\n }\r\n getCommitteeTypeValidator() {\r\n if (this.clientName == 'Nazaha') {\r\n return [Validators.required];\r\n }\r\n else\r\n return [];\r\n }\r\n getCommitteeTypeValidatorForAllClients() {\r\n if (this.clientName != 'Nazaha') {\r\n return [Validators.required];\r\n }\r\n else\r\n return [];\r\n }\r\n\r\n\r\n committeeMemberDto = {\r\n IndividualId: 0,\r\n CommitteeId: 0,\r\n CommitteeRoleId: null,\r\n RoleName: \"\",\r\n IsPresident: false,\r\n Status: 1,\r\n IsExternalUser: false,\r\n UserId: \"\",\r\n EntityArchiveItems: [],\r\n Type: PublicInboxType.PublicInbox\r\n }\r\n AddUserToCommitteePublicInbox() {\r\n var me = this;\r\n\r\n if ((me.externalCommitteeMember ? !me.UsersCommitteeDto.User : !me.UsersCommitteeDto.UserId) || me.committeeMemberDto.CommitteeRoleId == null) {\r\n this._dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n BERRY.getText('FormsValidationMessage', 'Common')\r\n );\r\n dialog.show(options);\r\n }\r\n });\r\n }\r\n else {\r\n me.committeeMemberDto.UserId = me.UsersCommitteeDto.UserId;\r\n me.committeeMemberDto.CommitteeId = me.CommitteeDto.CommitteeId;\r\n me.committeeMemberDto.CommitteeRoleId = +me.committeeMemberDto.CommitteeRoleId;\r\n\r\n if (me.externalCommitteeMember) {\r\n me.committeeMemberDto.IndividualId = me.UsersCommitteeDto.User.number ? +me.UsersCommitteeDto.User.number : me.UsersCommitteeDto.User.Id;\r\n me.committeeMemberDto.Type = PublicInboxType.ExternalPublicInbox\r\n }\r\n\r\n if (me._validateDuplicateMember())\r\n me._toaster.error(BERRY.loc.Committees.ThisMemberIsAlreadyExist);\r\n else {\r\n me.committeeMemberDto.EntityArchiveItems = me.archiveItemAddMemberTemplateDto;\r\n me._svc.AddUserToCommitteeMembers(me.committeeMemberDto)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data) {\r\n //if (me.DynamicCommitteeMeetings) {\r\n // me.ScheduleRoleDto.UserId = me.UsersCommitteeDto.User.UserId;\r\n // me.ScheduleRoleDto.CommitteeId = me.CommitteeDto.CommitteeId;\r\n // me.TempRoles.forEach(x => {\r\n // me.ScheduleRoleDto.RoleEnumId = x;\r\n // me.SetUserScheduleRole(true);\r\n // });\r\n //}\r\n //me.archiveItemAddMemberTemplateDto.forEach(r => {\r\n // me.archiveItems = [...me.archiveItems, r];\r\n //});\r\n me.GetArchiveItems()\r\n me.archiveItemAddMemberTemplateDto = [];\r\n //me.CreateIndividualAccessForAddedUser(userInfo);\r\n me._toaster.success(BERRY.loc.common.successMessage);\r\n me._hideAddNewCommitteeMember();\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n public CreateIndividualAccessForAddedUser(userInfo: any): void {\r\n let me = this;\r\n let obj = new IndividualAuthenticationAccessDto();\r\n obj.IndividualEmail = userInfo.User.Email;\r\n obj.IndividualId = userInfo.IndividualId;\r\n obj.IsLoginUser = true;\r\n obj.AuthenticationReason = AuthenticationReasonEnum.Committee;\r\n obj.EntityId = userInfo.EntityId;\r\n obj.LinkedItemID = userInfo.EntityId;\r\n\r\n let AddAccessIfHasUserId = Array();\r\n AddAccessIfHasUserId.push(obj);\r\n\r\n me._svc.CreateIndividualAccessForAddedUser(AddAccessIfHasUserId).pipe(takeWhile(() => me.isSubscribed)).subscribe(\r\n () => {\r\n this.GetCommitteeMembers();\r\n },\r\n () => {\r\n me._toaster.error(BERRY.loc.common.errorMessage);\r\n }\r\n )\r\n }\r\n\r\n EditMemberPermissions(user, action, newValue) {\r\n var me = this;\r\n if (newValue == true) {\r\n if (action === \"IsManager\") {\r\n user[\"CanSave\"] = true;\r\n user[\"CanForward\"] = true;\r\n user[\"CanshowInbox\"] = true;\r\n } else if (action === \"CanSave\") {\r\n user[\"CanshowInbox\"] = true;\r\n } else if (action === \"CanForward\") {\r\n user[\"CanshowInbox\"] = true;\r\n }\r\n }\r\n user[action] = newValue;\r\n me._svc.EditMemberPermissions(user)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(() => {\r\n me.GetCommitteeMembers();\r\n });\r\n }\r\n\r\n changeManger(action) {\r\n var me = this;\r\n me.IsManagerChecked = false;\r\n if (action == \"IsManager\" && me.UsersCommitteeDto.IsManager == true) {\r\n me.UsersCommitteeDto.CanForward = true;\r\n me.UsersCommitteeDto.CanSave = true;\r\n me.UsersCommitteeDto.CanshowInbox = true;\r\n me.IsManagerChecked = true;\r\n if (me.DynamicCommitteeMeetings) {\r\n me.ScheduleRoles.forEach(x => {\r\n x.checked = true;\r\n me.TempRoles.push(x.EnumID);\r\n });\r\n }\r\n } else if (\r\n action == \"IsManager\" &&\r\n me.UsersCommitteeDto.IsManager == false\r\n ) {\r\n me.IsManagerChecked = false;\r\n if (me.DynamicCommitteeMeetings) {\r\n me.ScheduleRoles.forEach(x => {\r\n x.checked = false;\r\n me.TempRoles = [];\r\n });\r\n }\r\n } else if (action == \"CanSave\" && me.UsersCommitteeDto.CanSave == true) {\r\n me.UsersCommitteeDto.CanshowInbox = true;\r\n } else if (\r\n action == \"CanForward\" &&\r\n me.UsersCommitteeDto.CanForward == true\r\n ) {\r\n me.UsersCommitteeDto.CanshowInbox = true;\r\n }\r\n }\r\n\r\n _hideAddNewCommitteeMember() {\r\n const me = this;\r\n\r\n me.GetCommitteeMembers();\r\n me.UsersCommitteeDto = new PublicInboxDto();\r\n me.EditRolePopUp.close();\r\n me.TempRoles = [];\r\n\r\n me.committeeMemberDto = {\r\n IndividualId: 0,\r\n CommitteeId: 0,\r\n CommitteeRoleId: null,\r\n RoleName: \"\",\r\n IsPresident: false,\r\n Status: 1,\r\n IsExternalUser: false,\r\n UserId: \"\",\r\n EntityArchiveItems: [],\r\n Type: PublicInboxType.PublicInbox\r\n }\r\n }\r\n\r\n GetCommitteeMembers(isOnInit = false) {\r\n var me = this;\r\n me._svc.GetCommitteeMembers(me.CommitteeDto.CommitteeId, 0)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me._isMangerExist = false;\r\n me.committeeMembers = data;\r\n if (me.committeeMembers.length >= 1) {\r\n if (isOnInit && me.committeeMembers.length == 1) {\r\n me._toaster.info(BERRY.loc.Committees.AddMoreMember);\r\n }\r\n\r\n var manger = me.committeeMembers.find(e => e.IsPresident == true);\r\n if (manger != null) {\r\n me._isMangerExist = true;\r\n } else {\r\n me._toaster.warning(BERRY.loc.Committees.MangerNotDetermine);\r\n }\r\n me.committeeMembers.forEach(member => {\r\n var isMangerEnabled = false;\r\n if (manger != null) {\r\n if (member.UserId === manger.UserId) {\r\n isMangerEnabled = true;\r\n }\r\n }\r\n member.isMangerEnabled = isMangerEnabled;\r\n });\r\n } else {\r\n me._toaster.warning(BERRY.loc.Committees.NoMembersAndManger);\r\n }\r\n });\r\n }\r\n\r\n _GetCommitteeInfo() {\r\n var me = this;\r\n me._svc.GetCommitteeInfo(me.CommitteeDto.CommitteeId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.CommitteeDto.ParentCommitteeId = data.ParentCommitteeId;\r\n me.CommitteeDto.HasSubCommittees = data.HasSubCommittees;\r\n me.CommitteeDto.ShortEntityName = data.ShortEntityName;\r\n me.CommitteeDto.ShortEntityNameEn = data.ShortEntityNameEn;\r\n me.CommitteeDto.EntityName = data.EntityName;\r\n me.CommitteeDto.EntityNameEn = data.EntityNameEn;\r\n me.CommitteeDto.CommitteeNumber = data.CommitteeNumber;\r\n me.CommitteeDto.CommitteeId = data.CommitteeId;\r\n me.CommitteeDto.StartDate = data.StartDate ? data.StartDate.toString() : null;\r\n me.CommitteeDto.IsCommittee = data.IsCommittee;\r\n me.CommitteeDto.EndDate = data.EndDate ? data.EndDate.toString() : null;\r\n me.CommitteeDto.ParentEntityID = data.ParentEntityID;\r\n me.CommitteeDto.ParentEntity = {\r\n value: data.ParentEntity.value,\r\n dbid: data.ParentEntity.dbid\r\n };\r\n\r\n if(me.RDOrganizationFieldsEnabled)\r\n {\r\n me.CommitteeDto.RegulatoryDocumentCode.Id = data.RegulatoryDocumentCode.Id;\r\n me.CommitteeDto.RegulatoryDocumentCode.TextEn = data.RegulatoryDocumentCode.TextEn;\r\n\r\n me.CommitteeDto.OrganizationCode.Id = data.OrganizationCode.Id;\r\n me.CommitteeDto.OrganizationCode.TextEn = data.OrganizationCode.TextEn;\r\n\r\n me.CommitteeDto.RegulatoryDocumentCodeId = data.RegulatoryDocumentCode.Id;\r\n me.CommitteeDto.OrganizationCodeId = data.OrganizationCode.Id;\r\n }\r\n\r\n me.CommitteeDto.ParentEntityName = data.ParentEntity.value;\r\n me.CommitteeDto.IsActive = data.IsActive;\r\n me.CommitteeDto.IsCommitteeExpired = data.IsCommitteeExpired;\r\n me.CommitteeDto.EntityTypeID = data.EntityTypeID;\r\n me.CommitteeDto.corrsCount = data.corrsCount;\r\n me.CommitteeDto.IsTemporary = data.IsTemporary;\r\n me.CommitteeDto.CommitteeTypeEnum = data.CommitteeTypeEnum;\r\n me.CommitteeDto.CommitteeMeetingTemplateNameAr = data.SecheduleTemplateInfo.TitleAr;\r\n me.CommitteeDto.CommitteeMeetingTemplateNameEn = data.SecheduleTemplateInfo.TitleEn;\r\n if (data.CommitteeMangerId != null && data.CommitteeMangerId != \"\") {\r\n me._svc.isPresident = true;\r\n }\r\n else {\r\n me._svc.isPresident = false;\r\n }\r\n if (data.CommitteeCategoryId) {\r\n me.CommitteeCategoryChanged(data.CommitteeCategoryId);\r\n }\r\n\r\n if (this.committeesGoalsAddModifyCmp) {\r\n me.committeesGoalsAddModifyCmp.committeeGoalsList = data.CommitteeGoals;\r\n }\r\n\r\n setTimeout(() => {\r\n me.CommitteeDto.CommitteeTypeId = data.CommitteeTypeId;\r\n me.CommitteeDto.CommitteeTypeName = data.CommitteeType != null ? data.CommitteeType.value : null;\r\n }, 100);\r\n });\r\n }\r\n\r\n _AddOrEditCommittee() {\r\n var me = this;\r\n \r\n if (!this.isCommitteeGoalsOptional){\r\n if (this.committeesGoalsAddModifyCmp) {\r\n let isAllDeleted = this.committeesGoalsAddModifyCmp.committeeGoalsList.every( goal => goal.IsDeleted === true );\r\n if (this.committeesGoalsAddModifyCmp.committeeGoalsList.length > 0 && !isAllDeleted) {\r\n let emptyGoalText = this.committeesGoalsAddModifyCmp.committeeGoalsList.filter(x => x.IsDeleted == false && (x.Text == null || x.Text == \"\" || x.Text.trim() == \"\"));\r\n if (emptyGoalText.length > 0) {\r\n this._dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n BERRY.getText('FormsValidationMessage', 'Common')\r\n );\r\n dialog.show(options);\r\n \r\n }\r\n \r\n });\r\n return;\r\n }\r\n }\r\n else {\r\n me._toaster.warning(this.getText(\"OneGoalAtLeast\", \"CommitteesGoals\"));\r\n return;\r\n }\r\n }\r\n }\r\n\r\n me.CommitteeDto.CommitteeGoals = me.committeesGoalsAddModifyCmp.committeeGoalsList;\r\n if (me.CommitteeDto.CommitteeId != null && me.CommitteeDto.CommitteeId != 0) {\r\n me.EditCommittee();\r\n } else {\r\n me.AddNewCommittee();\r\n }\r\n }\r\n memberId: string = null;\r\n isPresedent: boolean = false;\r\n userId: string = null;\r\n deleteCommitteeMember(memberId, isPresedent: boolean = false, userId: any = null) {\r\n let me = this;\r\n me.memberId = memberId;\r\n me.isPresedent = isPresedent;\r\n me.userId = userId;\r\n\r\n if (isPresedent) {\r\n this._toaster.warning(BERRY.loc.Committees.CanNotDeletePresident);\r\n } else {\r\n this._dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n BERRY.loc.Committees.DeleteMember,\r\n BERRY.loc.Committees.Worning,\r\n BERRY.loc.Committees.Yes,\r\n BERRY.loc.Committees.No\r\n );\r\n if (this.enableEntityArchiveItem) {\r\n options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n BERRY.loc.Committees.DeleteMember,\r\n BERRY.loc.Committees.Worning,\r\n BERRY.loc.Committees.Yes,\r\n this.getText(\"AddArchiveAndDelete\", \"AddEditCommittee\"),\r\n BERRY.loc.Committees.No\r\n );\r\n }\r\n\r\n dialog.show(options, result => {\r\n if (result == ConfirmationBoxResult.Yes) {\r\n me._svc.RemoveCommitteeMember(memberId, me.CommitteeDto.CommitteeId, isPresedent, userId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(() => {\r\n me.GetCommitteeMembers();\r\n me._toaster.success(BERRY.loc.common.successMessage);\r\n me.memberId = null;\r\n me.isPresedent = false;\r\n me.userId = null;\r\n this.msgs.publish(\"updateAuthorizedStampUsers\", true);\r\n });\r\n }\r\n else if (result == ConfirmationBoxResult.No) {\r\n if (this.enableEntityArchiveItem)\r\n me.QuickSearch('RemoveMember');\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n }\r\n\r\n _changeCommitteeStatus() {\r\n var me = this;\r\n me.CommitteeStatusBusy = true;\r\n let isActivateCommittee = !me.CommitteeDto.IsActive;\r\n if (!me._svc.isPresident && isActivateCommittee) {\r\n me._toaster.warning(me.getText(\"CanActiveCommittee\", \"CommitteeDetail\"));\r\n (event.target).checked = me.CommitteeDto.IsActive;\r\n }\r\n else {\r\n if (me.isAdvancedCommitteeEnabled && me.CommitteeDto.HasSubCommittees) {\r\n if (isActivateCommittee) {\r\n me.CommitteStatusPopup.activeCommittee = true;\r\n me.CommitteStatusPopup.deactivateCommittee = false;\r\n }\r\n else {\r\n me.CommitteStatusPopup.activeCommittee = false;\r\n me.CommitteStatusPopup.deactivateCommittee = true;\r\n }\r\n me.CommitteStatusPopup.parentCommitteeId = me.CommitteeDto.CommitteeId;\r\n me.CommitteStatusPopup.openCommitteeStatusPopup();\r\n }\r\n else {\r\n me.ChangeCommitteeStatusProcess({ committeeId: me.CommitteeDto.CommitteeId, isCommitteeActivation: isActivateCommittee, activateParentCommitteeOnly: true, deactivateParentCommitteeAndSubCommittees: false });\r\n }\r\n }\r\n }\r\n\r\n ChangeCommitteeStatusProcess(e) {\r\n this._svc.changeCommitteeStatus(e.committeeId, e.isCommitteeActivation, e.activateParentCommitteeOnly, e.deactivateParentCommitteeAndSubCommittees)\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(\r\n data => {\r\n this.CommitteeDto.IsActive = !this.CommitteeDto.IsActive;\r\n (event.target).checked = this.CommitteeDto.IsActive;\r\n this.CommitteeStatusBusy = false;\r\n if (this.isAdvancedCommitteeEnabled && this.CommitteeDto.HasSubCommittees) {\r\n this.CommitteStatusPopup.resetPopupValue();\r\n this.CommitteStatusPopup.closeCommitteeStatusPopup();\r\n }\r\n },\r\n exception => {\r\n if (exception.status < 400 || exception.status > 500) {\r\n this._toaster.warning(exception.error);\r\n }\r\n });\r\n }\r\n\r\n _validateDuplicateMember(): boolean {\r\n var me = this;\r\n\r\n if (me.committeeMembers)\r\n return me.committeeMembers.filter(member => (me.UsersCommitteeDto.UserId && member.UserId == me.UsersCommitteeDto.UserId)\r\n || (me.UsersCommitteeDto.IndividualId && member.IndividualId == me.UsersCommitteeDto.IndividualId)).length > 0;\r\n\r\n return false;\r\n }\r\n\r\n openMergePopup() {\r\n if (this.CommitteeDto.CommitteeId == null || this.CommitteeDto.CommitteeId == undefined)\r\n this.CommitteeDto.CommitteeId = this.CommitteeDto.CommitteeId;\r\n this.mergeCommitteeModal.selectedCommitteId = this.CommitteeDto.CommitteeId;\r\n this.mergeCommitteeModal.hasSubCommittees = this.CommitteeDto.HasSubCommittees;\r\n this.mergeCommitteeModal.MergeCommitteeModalOptions.title = stringFormat(this.getText('MergeCommittee', 'CommitteesWithCategoryReplacement'), this.selectedCategoryText);\r\n this.mergeCommitteeModal.mergeCommitteeModal.open();\r\n }\r\n\r\n EditMemberSchedulePermissions(i: number, value: boolean) {\r\n var me = this;\r\n me.ScheduleRoleDto.RoleEnumId = i;\r\n me.ScheduleRoleDto.CommitteeId = me.CommitteeDto.CommitteeId;\r\n me.ScheduleRoleDto.EntityName = me.CommitteeDto.EntityName;\r\n this.SetUserScheduleRole(value);\r\n me._toaster.success(BERRY.loc.common.successMessage);\r\n }\r\n\r\n EditMemberTempRoles(i: number, value: boolean) {\r\n if (value == true) this.TempRoles.push(i);\r\n else if (value == false) {\r\n var index = this.TempRoles.indexOf(i);\r\n this.TempRoles.splice(index, 1);\r\n }\r\n }\r\n\r\n SetUserScheduleRole(value: boolean) {\r\n var me = this;\r\n me._svc\r\n .SetUserScheduleRole(me.ScheduleRoleDto, value)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data == true) {\r\n me.ScheduleRoles.forEach(x => {\r\n if (x.EnumID == me.ScheduleRoleDto.RoleEnumId) x.checked = value;\r\n });\r\n }\r\n });\r\n }\r\n\r\n showAddNewCommitteeMemberModal() {\r\n const me = this;\r\n \r\n me.IsManagerChecked = false;\r\n me.ScheduleRoleDto.UserId == \"\";\r\n me.ScheduleRoleDto.UserName = null;\r\n me.UserMeetinRoles = [];\r\n me.committeeMemberDto.RoleName = \"\";\r\n me.committeeMemberDto.CommitteeRoleId = null;\r\n\r\n if (me.DynamicCommitteeMeetings) {\r\n me.ScheduleRoles.forEach(x => {\r\n x.checked = false;\r\n });\r\n }\r\n\r\n me.UsersCommitteeDto = new PublicInboxDto();\r\n me.selectedMember = null;\r\n me.UsersCommitteeDto.EntityId = me.CommitteeDto.CommitteeId;\r\n me.EditRolePopUp.open();\r\n setTimeout(() => {\r\n document.querySelector('#myModal').scrollTo({ left: 0, top: 10, behavior: 'smooth' });\r\n }, 500);\r\n }\r\n\r\n openAddNewCommitteeMember() {\r\n this.showAddNewCommitteeMemberModal();\r\n }\r\n\r\n openAddNewExternalCommitteeMember() {\r\n this.externalCommitteeMemberMarkedAsUser = false;\r\n this.showAddNewCommitteeMemberModal();\r\n this.UsersCommitteeDto.Type = PublicInboxType.ExternalPublicInbox;\r\n }\r\n\r\n get advancedCommittee(): boolean {\r\n if (BERRY.User.UserModules.find(x => x.Id == AppModulesEnum.Committees) != null) {\r\n return BERRY.User.Permissions.Allowed_External_Users_To_Access_the_System;\r\n }\r\n return false;\r\n }\r\n\r\n get externalCommitteeMember(): boolean {\r\n return this.UsersCommitteeDto.Type == PublicInboxType.ExternalPublicInbox;\r\n }\r\n\r\n get anyExternalUser(): boolean {\r\n if (this.committeeMembers && this.advancedCommittee)\r\n return this.committeeMembers.filter(m => m.IsExternalUser && m.UserId).length > 0;\r\n\r\n return false;\r\n }\r\n\r\n get anyExternalUserWithNoAccess(): boolean {\r\n if (this.committeeMembers && this.advancedCommittee)\r\n return this.committeeMembers.filter(m => !m.UserId).length > 0;\r\n\r\n return false;\r\n }\r\n\r\n get anyExternalUserWithNoConfirmedEmail(): boolean {\r\n if (this.committeeMembers && this.advancedCommittee)\r\n return this.committeeMembers.filter(m => m.IsExternalUser && m.UserId && !m.IsEmailConfirmed).length > 0;\r\n\r\n return false;\r\n }\r\n\r\n isMarkAsExternalUserEnable(member): boolean {\r\n return this.advancedCommittee && (!member.UserId || member.Type == PublicInboxType.ExternalPublicInbox);\r\n }\r\n\r\n //disabledEditPermession(member): boolean {\r\n // return member.Type == PublicInboxType.ExternalPublicInbox && this.advancedCommittee && !member.UserId;\r\n //}\r\n\r\n markAsExternalUserChanged() {\r\n var me = this;\r\n\r\n if (this.UsersCommitteeDto.ExternalUser && !this.UsersCommitteeDto.Email)\r\n me.externalCommitteeMemberMarkedAsUser = true;\r\n else\r\n this.newMemberContactsAuthInfoEdit.showModel(this.UsersCommitteeDto.UserText, this.UsersCommitteeDto.Email);\r\n }\r\n\r\n markMemberAsExternalUserChanged(member) {\r\n const me = this;\r\n me.selectedMember = member;\r\n if (member.ExternalUser && !member.Email)\r\n me.editMemberContactsAuthInfoEdit.showModel(member.IndividualId, \"\");\r\n else if (member.ExternalUser)\r\n me.editMemberContactsAuthInfoEdit.showModel(member.IndividualId, member.Email);\r\n //me.createNewIndividualAccess(false);\r\n }\r\n\r\n onNewMemberContactsAuthInfoEditCancel() {\r\n this.UsersCommitteeDto.ExternalUser = !this.UsersCommitteeDto.ExternalUser;\r\n this.externalCommitteeMemberMarkedAsUser = false;\r\n }\r\n\r\n onNewMemberContactsAuthInfoEditSaved(email) {\r\n this.UsersCommitteeDto.Email = email;\r\n this.createNewIndividualAccess(true)\r\n }\r\n\r\n onEditMemberContactsAuthInfoEditCancel() {\r\n this.selectedMember.ExternalUser = !this.selectedMember.ExternalUser;\r\n }\r\n\r\n onEditMemberContactsAuthInfoEditSaved(email) {\r\n const me = this;\r\n me.selectedMember.Email = email;\r\n me.createNewIndividualAccess(false);\r\n }\r\n\r\n createNewIndividualAccess(isNewMember: boolean) {\r\n const me = this;\r\n\r\n if (me.advancedCommittee) {\r\n\r\n let obj = new IndividualAuthenticationAccessDto();\r\n obj.DisplayName = this.selectedMember.DisplayName;\r\n obj.IndividualEmail = this.selectedMember.Email;\r\n obj.IndividualId = this.selectedMember.IndividualId;\r\n obj.IsLoginUser = true;\r\n obj.IsExternalUser = this.selectedMember.IsExternalUser;\r\n obj.LinkedItemID = this.selectedMember.CommitteeId.toString();\r\n obj.AuthenticationReason = AuthenticationReasonEnum.Committee;\r\n\r\n let newExternalUsers = Array();\r\n newExternalUsers.push(obj);\r\n\r\n me.individualAuthSvc.createNewIndividualAccess(newExternalUsers)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data)\r\n me.GetCommitteeMembers();\r\n else {\r\n if (isNewMember)\r\n this.onNewMemberContactsAuthInfoEditCancel();\r\n else\r\n this.onEditMemberContactsAuthInfoEditCancel();\r\n }\r\n });\r\n }\r\n }\r\n\r\n showEmailConfirm(member): boolean {\r\n return this.advancedCommittee && member.IsExternalUser && member.UserId;\r\n }\r\n\r\n confirmEmail(member, checked) {\r\n if (checked) {\r\n let me = this;\r\n\r\n let obj = new IndividualAuthenticationAccessDto();\r\n obj.IndividualId = member.IndividualId;\r\n\r\n me.individualAuthSvc.confirmEmailIndividualAccess(obj)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data) {\r\n member.IsEmailConfirmed = true;\r\n me._toaster.success(BERRY.loc.common.successMessage);\r\n }\r\n else\r\n me._toaster.error(BERRY.loc.common.errorMessage);\r\n });\r\n }\r\n }\r\n\r\n confirmAllEmail() {\r\n let me = this;\r\n\r\n let obj = new IndividualAuthenticationAccessDto();\r\n\r\n obj.AuthenticationReason = AuthenticationReasonEnum.Committee;\r\n obj.LinkedItemID = this.CommitteeDto.CommitteeId;\r\n\r\n me.individualAuthSvc.confirmAllEmailIndividualAccess(obj)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data) {\r\n me.committeeMembers.map(m => m.IsEmailConfirmed = true);\r\n me._toaster.success(BERRY.loc.common.successMessage);\r\n }\r\n else\r\n me._toaster.error(BERRY.loc.common.errorMessage);\r\n });\r\n }\r\n\r\n printExternalUsersAccessPermission() {\r\n const me = this;\r\n\r\n me.exportingInProgress = true;\r\n let obj = new IndividualAuthenticationAccessDto();\r\n\r\n obj.AuthenticationReason = AuthenticationReasonEnum.Committee;\r\n obj.LinkedItemID = me.CommitteeDto.CommitteeId;\r\n\r\n me.individualAuthSvc.generateExternalUsersInformation(obj)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n data => {\r\n if (data.fileName != \"\") {\r\n var fileUrl = encodeURI(\r\n BERRY.hostName + \"ReportGenerator/index?filename=\" + data.fileName\r\n );\r\n me.exportIFrameSRC = me.sanitizer.bypassSecurityTrustResourceUrl(fileUrl);\r\n } else {\r\n //error\r\n }\r\n\r\n me.exportingInProgress = false;\r\n },\r\n () => {\r\n me.exportingInProgress = false;\r\n }\r\n );\r\n }\r\n\r\n public isBusy: boolean = false;\r\n\r\n public ChangeManager(memberInfo: any) {\r\n const me = this;\r\n\r\n if (memberInfo == null) {\r\n me._toaster.error(BERRY.loc.common.errorMessage);\r\n return;\r\n }\r\n\r\n this._dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n me.getText('Confirmation', 'AddEditCommittee'),\r\n BERRY.loc.Committees.Worning,\r\n BERRY.loc.Committees.Yes,\r\n BERRY.loc.Committees.No\r\n );\r\n dialog.show(options, result => {\r\n if (result == ConfirmationBoxResult.Yes) {\r\n me.isBusy = true;\r\n\r\n me._svc.ChangeCommitteeManager(memberInfo).pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n (data) => {\r\n if (data) {\r\n me.isBusy = false;\r\n me._toaster.success(BERRY.loc.common.successMessage);\r\n this.GetCommitteeMembers(true);\r\n me._svc.isPresident = true;\r\n this.msgs.publish(\"updateAuthorizedStampUsers\", true);\r\n } else {\r\n me._toaster.error(BERRY.loc.common.errorMessage);\r\n }\r\n\r\n },\r\n () => {\r\n me._toaster.error(BERRY.loc.common.errorMessage);\r\n }\r\n )\r\n } else {\r\n this.GetCommitteeMembers(true);\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n onMergeSave(isSave) {\r\n if (isSave) {\r\n this.archiveItemMergeTemplateDto.forEach(r => {\r\n this.archiveItems = [...this.archiveItems, r];\r\n });\r\n }\r\n else {\r\n this.archiveItemMergeTemplateDto = [];\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n keydownEnter() {\r\n let me = this;\r\n this.router.navigate([{ outlets: { 'modal': ['add-new-individual'] } }], {\r\n queryParams: {\r\n 'IndvName': me.UsersCommitteeDto.UserText\r\n }, skipLocationChange:false\r\n });\r\n }\r\n\r\n goBack() {\r\n this._location.back();\r\n }\r\n\r\n //My Code => Ahmad Alkhateeb\r\n @ViewChild(\"EditRolePopUp\") public EditRolePopUp: PopupComponent;\r\n EditRolePopUpOption: IPopup = {\r\n actions: [\r\n {\r\n text: this.getText('Save', '_common'), type: 'submit', event: this.AddUserToCommitteePublicInbox.bind(this)\r\n },\r\n {\r\n text: this.getText('Cancel', '_common'), type: 'close', event: () => {\r\n\r\n }\r\n }\r\n ],\r\n mode: 'small',\r\n isBusy: () => this.isBusy\r\n }\r\n\r\n rolesAutoComplete: IComboboxOptions = {\r\n\r\n allowFreeText: false,\r\n multiselect: false,\r\n autocomplete: false,\r\n serverDatasource: {\r\n url: BERRY.hostName + \"api/committees/permission/getCommitteeRolesAutoComplete\",\r\n enabled: true,\r\n method: \"get\",\r\n resultsField: \"\"\r\n },\r\n dataTextField: BERRY.isEn == true ? \"NameEn\" : \"NameAr\",\r\n dataValueField: \"Id\",\r\n autoBind: true,\r\n displayTemplate: BERRY.isEn == true ? \" #: data.NameEn #\" : \" #: data.NameAr #\"\r\n };\r\n\r\n get IfUserHasArchiveModule() {\r\n return BERRY.User.UserModules.find(x => x.Id == AppModulesEnum.Documents) != null;\r\n }\r\n\r\n @ViewChild(\"EditMemberPermissionsPopup\") editMemberPermissionsPopup: EditMemberPermissionsComponent;\r\n\r\n openEditMemberPermissionsPopup(committeeMemberId: any) {\r\n const me = this;\r\n\r\n me.editMemberPermissionsPopup.committeeMember = me.committeeMembers.find(member => member.Id == committeeMemberId);\r\n me.editMemberPermissionsPopup.getRoleAndMemberPermissions(me.editMemberPermissionsPopup.committeeMember.CommitteeRoleId, me.editMemberPermissionsPopup.committeeMember.Id);\r\n me.editMemberPermissionsPopup.editMemberPopupOption.title = stringFormat(this.getText('EditPermissionOfCommitteeMember', 'CommitteesWithCategoryReplacement'), this.selectedCategoryText);\r\n me.editMemberPermissionsPopup.openPopup(true, this.CommitteeDto.CommitteeId);\r\n }\r\n\r\n @ViewChild(\"EditMembersPopup\") editMembers: EditMembersComponent;\r\n\r\n openEditMembersPopup(committeeMemberId: any) {\r\n const me = this;\r\n\r\n me.editMembers.editMode = true;\r\n me.editMembers.committeeMember = me.committeeMembers.find(member => member.Id == committeeMemberId);\r\n me.editMembers.CommitteeCategoryName = me.selectedCategoryText;\r\n me.editMembers.openMembersPopup();\r\n }\r\n\r\n addEditMember(committeeMember: any) {\r\n const me = this;\r\n\r\n me._svc.addEditCommitteeMember(committeeMember)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(result => {\r\n if (result) {\r\n me.GetCommitteeMembers(true);\r\n me._toaster.success(BERRY.loc.common.successMessage);\r\n me.editMembers.editMembersPopup.close();\r\n }\r\n });\r\n }\r\n\r\n get CheckIfAnyUserShouldNotConfirmEmail(): boolean {\r\n if (this.committeeMembers && this.advancedCommittee)\r\n return this.committeeMembers.filter(x => x.IsExternalUser).length > 0;\r\n return false;\r\n }\r\n\r\n\r\n @ViewChild(\"AuditTrail\") public AuditTrail: PopupComponent;\r\n AuditTrailOption: IPopup = {\r\n actions: [\r\n {\r\n text: this.getText('Cancel', '_common'), type: 'close', event: () => {\r\n this.showCommitteeAuditTrialCmp = false;\r\n }\r\n }\r\n ],\r\n mode: 'medium'\r\n }\r\n\r\n ChangeCommitteeTemplateNameAr(value: string): void {\r\n const me = this;\r\n\r\n var str = new String(me.getText(\"Meeting\", \"Meetings\", \"ar\") + \" \");\r\n var newVal = str.concat(value);\r\n\r\n me.CommitteeDto.CommitteeMeetingTemplateNameAr = \"\";\r\n if (newVal.length > 0)\r\n me.CommitteeDto.CommitteeMeetingTemplateNameAr = newVal;\r\n else\r\n me.CommitteeDto.CommitteeMeetingTemplateNameAr = \"\";\r\n }\r\n\r\n ChangeCommitteeTemplateNameEn(value: string): void {\r\n const me = this;\r\n\r\n var str = new String(me.getText(\"Meeting\", \"Meetings\", \"en\") + \" \");\r\n var newVal = str.concat(value);\r\n\r\n me.CommitteeDto.CommitteeMeetingTemplateNameEn = \"\";\r\n if (newVal.length > 0)\r\n me.CommitteeDto.CommitteeMeetingTemplateNameEn = newVal;\r\n else\r\n me.CommitteeDto.CommitteeMeetingTemplateNameEn = \"\";\r\n }\r\n HasAnyCorrespondence: boolean = false;\r\n onStartDateChange() {\r\n let me = this;\r\n if (me.CommitteeDto.corrsCount != 0 && !me.isEdite) {\r\n me.HasAnyCorrespondence = true;\r\n me._toaster.error(this.getText(\"Committe_HasCorrespondences\", \"errorMsgs\"));\r\n $(\"#StartDate\").calendarsPicker('disable');\r\n }\r\n }\r\n isAuto: boolean = false;\r\n CommitteesDefaultNumberingFormula: string;\r\n getCommitteesDefaultNumberingFormula(event, ParentEntityName) {\r\n if (this.isAutoNumbering) {\r\n this._svc\r\n .getCommitteesDefaultNumberingFormula(!!this.CommitteeDto.CommitteeId ? this.CommitteeDto.CommitteeId : 0)\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(data => {\r\n this.CommitteesDefaultNumberingFormula = data;\r\n if (event == null) {\r\n this.CommitteeDto.CommitteeNumber = \"\";\r\n }\r\n else if (this.CommitteeDto.ParentEntityName == ParentEntityName) {\r\n this.CommitteeDto.CommitteeNumber = this.CommitteeDto.CommitteeNumber;\r\n }\r\n else if (this.CommitteeDto.ParentEntityName != ParentEntityName) {\r\n this._toaster.info(BERRY.loc.Committees.ChangeCommitteeNumber);\r\n this.CommitteesDefaultNumberingFormula = this.CommitteesDefaultNumberingFormula.replace(\"EntityNumber\", event)\r\n this.CommitteeDto.CommitteeNumber = this.CommitteesDefaultNumberingFormula;\r\n }\r\n });\r\n }\r\n }\r\n\r\n getCommitteeCategories() {\r\n this._svc\r\n .getCommitteeCategories()\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(data => {\r\n this.committeeCategories = data;\r\n if (data && data.length > 0) {\r\n this.CommitteeDto.CommitteeCategoryId = data[0].Id;\r\n this.CommitteeForm.controls.CommitteeCategory.setValue(data[0].Id);\r\n this.CommitteeCategoryChanged(data[0].Id);\r\n }\r\n },\r\n exception => {\r\n this._toaster.error(exception.error);\r\n });\r\n }\r\n\r\n selectedCategoryText: string = this.getText(\"DefaultCategory\", \"CommitteesWithCategoryReplacement\");\r\n CommitteeCategoryChanged(categoryId) {\r\n let me = this;\r\n me.CommitteeDto.CommitteeCategoryId = categoryId;\r\n let selectedCategory = me.committeeCategories.filter(c => c.Id == categoryId)[0];\r\n if (selectedCategory) {\r\n me.selectedCategoryText = BERRY.isEn ? selectedCategory.TitleEn : selectedCategory.TitleAr;\r\n }\r\n }\r\n\r\n get IsDigitalStampsFeatureEnabled(): boolean {\r\n return BERRY.onOffFeatures.DigitalStamps && this.CommitteeDto.CommitteeId;\r\n }\r\n\r\n get EntityName(): string {\r\n return BERRY.isEn && this.IsDigitalStampsFeatureEnabled ? this.CommitteeDto.EntityNameEn != \"\" ? this.CommitteeDto.EntityNameEn : this.CommitteeDto.EntityName :\r\n this.CommitteeDto.EntityName != \"\" ? this.CommitteeDto.EntityName : this.CommitteeDto.EntityNameEn;\r\n }\r\n\r\n\r\n openAuditTrialPopup() {\r\n this.committeeIdStr = this.CommitteeDto.CommitteeId.toString();\r\n this.showCommitteeAuditTrialCmp = true;\r\n this.AuditTrail.open();\r\n }\r\n}\r\n\r\nexport class ScheduleRoleType {\r\n EnumID: number;\r\n Text: string;\r\n checked: boolean;\r\n}\r\n\r\nexport interface EntityArchiveItemDTO {\r\n EntityId: number,\r\n ArchiveId: string,\r\n ArchiveNumber?: string,\r\n Title?: string,\r\n Type: EnitiyArchiveType\r\n}\r\n\r\nexport enum EnitiyArchiveType {\r\n Create,\r\n AddMember,\r\n RemoveMember,\r\n Merge,\r\n EditMember,\r\n Edit\r\n}\r\nexport enum CommitteeTypeEnum {\r\n Internal = 1,\r\n External = 2\r\n}","import { CommitteeMemberType } from './../../../../committees/components/enums/committee-member-type';\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Response } from \"@angular/http\";\r\nimport { Observable, throwError } from \"rxjs\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { IndividualAuthenticationAccessDto } from \"src/app/Contacts/individuals/AuthenticationAccess/individual-authentication-access-dto\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { EntityArchiveItemDTO } from \"./add-edit-committee-cmp\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class CommitteesSvc extends BaseService {\r\n baseURL = BERRY.hostName + \"api/CommitteesManagementApi\"; // URL to web API\r\n CommitteeApiURL = BERRY.hostName + \"api/committees\";\r\n isPresident: boolean = false;\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n\r\n //#region\r\n public GetcommitteesByID(ID): Observable {\r\n return this.http.get(this.baseURL + \"/EdiDepartmentt/\" + ID).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n getArchiveItems(Id): Observable {\r\n return this.http.get(this.baseURL + \"/GetArchiveItems?id=\" + Id).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n deleteEntityArchiveItem(item) {\r\n const me = this;\r\n const url = `${me.baseURL}/DeleteEntityArchiveItem`;\r\n return super.post(url, item);\r\n }\r\n public GetCommittees(committeeName,params): Observable {\r\n return this.http\r\n .post(this.baseURL + \"/GetCommittees?CommitteeName=\" + committeeName, params)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public AddNewCommittee(params): Observable {\r\n return this.http.post(this.baseURL + \"/AddNewCommittee\", params).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public ValidateCommitteeNumber(committeeNumber, committeeId): Observable {\r\n return this.http.get(this.baseURL + \"/ValidateCommitteeNumber?committeeNumber=\" + committeeNumber + \"&committeeId=\" + committeeId)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public EditCommittee(params): Observable {\r\n return this.http.post(this.baseURL + \"/EditCommittee\", params).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n \r\n\r\n public SetUserScheduleRole(ScheduleRole, value): Observable {\r\n var params = {\r\n UserID: ScheduleRole.UserId,\r\n ScheduleRoleEnum_ID: ScheduleRole.RoleEnumId,\r\n Committee_ID: ScheduleRole.CommitteeId,\r\n value: value,\r\n UserName: ScheduleRole.UserName,\r\n EntityName: ScheduleRole.EntityName\r\n };\r\n return this.http\r\n .post(\r\n BERRY.hostName +\r\n `api/CommitteesManagementApi/SetUserScheduleRole?\r\n UserID=${ScheduleRole.UserId}\r\n &ScheduleRoleEnum_ID=${\r\n ScheduleRole.RoleEnumId\r\n }\r\n &Committee_ID=${\r\n ScheduleRole.CommitteeId\r\n }\r\n &value=${value}\r\n &UserName=${\r\n ScheduleRole.UserName\r\n }\r\n &EntityName=${\r\n ScheduleRole.EntityName\r\n }`,\r\n params\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetUserMeetinRoles(\r\n UserId: string,\r\n CommitteId: number\r\n ): Observable {\r\n var params = {\r\n Id: UserId,\r\n CommitteeId: CommitteId\r\n };\r\n return this.http\r\n .post(\r\n BERRY.hostName +\r\n `api/CommitteesManagementApi/GetUserMeetinRoles?Id=${UserId}&CommitteeId=${CommitteId}`,\r\n params\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public EditMemberPermissions(user): Observable {\r\n var url = this.baseURL + \"/EditMemberPermissions\";\r\n return this.http.post(url, user).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n\r\n\r\n\r\n public GetCommitteeInfo(Id: number): Observable {\r\n var url = this.baseURL + \"/GetCommitteeInfo?id=\" + Id;\r\n return this.http.get(url).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public deleteCommitteeMember(id, entityID, entityArchiveItems?: EntityArchiveItemDTO[]): Observable {\r\n var url = BERRY.hostName + \"api/CommitteesManagementApi/deleteCommitteeMember\";\r\n\r\n return this.http.post(url, {\r\n Id: id,\r\n EntityID: entityID,\r\n EntityArchiveItems: entityArchiveItems\r\n }).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public getCommitteesDefaultNumberingFormula(committeeId): Observable {\r\n return this.http\r\n .get(this.baseURL + `/GetCommitteesDefaultNumberingFormula?committeeId=${committeeId}`)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public changeCommitteeStatus(CommitteeId, isCommitteeActivation, activateParentCommitteeOnly, deactivateParentCommitteeAndSubCommittees) {\r\n var url = this.baseURL + \"/ChangeCommitteeStatus\";\r\n var params = {\r\n CommitteeId: CommitteeId,\r\n IsCommitteeActivation: isCommitteeActivation,\r\n ActivateParentCommitteeOnly: activateParentCommitteeOnly,\r\n DeactivateParentCommitteeAndSubCommittees: deactivateParentCommitteeAndSubCommittees\r\n }\r\n return this.http.post(url, params).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public MergeCommitee(MergeCommitteeDto): Observable {\r\n var url = this.CommitteeApiURL + \"/MergeCommitte\";\r\n return this.http.post(url, MergeCommitteeDto).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n\r\n\r\n public ChangeManager(memberInfo: any): Observable {\r\n var url = this.baseURL + \"/ChangeManager\";\r\n return this.http.post(url, memberInfo).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n CreateIndividualAccessForAddedUser(AddAccessUserIfHasUserId: IndividualAuthenticationAccessDto[]): Observable {\r\n var url = this.baseURL + \"/CreateIndividualAccessForAddedUser\";\r\n return this.http.post(url, AddAccessUserIfHasUserId).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n extractData(res: Response) {\r\n let body = res;\r\n return body || {};\r\n }\r\n handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n return throwError(errMsg);\r\n }\r\n\r\n //#endregion\r\n\r\n\r\n //#region\r\n\r\n AddUserToCommitteeMembers(params: any): Observable {\r\n let url = this.CommitteeApiURL + \"/AddUserToCommitteeMembers\";\r\n\r\n return this.http.post(url, params).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n GetCommitteeMembers(Id: number, count: number = 0, committeeMemberType: CommitteeMemberType = CommitteeMemberType.Member): Observable {\r\n let url = BERRY.hostName + \"api/committees/GetCommitteeMembers?committeeId=\" + Id + \"&count=\" + count + \"&type=\" + committeeMemberType;\r\n\r\n return this.http.get(url).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n ChangeCommitteeManager(params: any): Observable {\r\n let url = BERRY.hostName + \"api/committees/ChangeCommitteeManager\";\r\n\r\n return this.http.post(url, params).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n RemoveCommitteeMember(memberId, committeeId, isPresedent, userId, entityArchiveItems?: EntityArchiveItemDTO[]): Observable {\r\n let url = BERRY.hostName + \"api/committees/RemoveCommitteeMember\";\r\n\r\n return this.http.post(url, {\r\n MemberId: memberId,\r\n CommitteeId: committeeId,\r\n UserId: userId,\r\n EntityArchiveItems: entityArchiveItems,\r\n IsPresident: isPresedent\r\n }).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n RolePermissionsURL = BERRY.hostName + \"api/committees/permission\";\r\n getCommitteePermissions() {\r\n return super.get(`${this.RolePermissionsURL}/getCommitteePermission`);\r\n }\r\n\r\n addEditCommitteeMember(obj: any) {\r\n var url = BERRY.hostName + \"api/committees/SaveCommitteeMember\";\r\n return this.http.post(url, obj).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCommitteeCategories() {\r\n return super.get(`${this.CommitteeApiURL}/committeecategories/Get`);\r\n }\r\n\r\n //#endregion\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { SharedModule } from 'src/app/shared/shared.module';\r\nimport { CommitteesCmp } from './committees-cmp';\r\nimport { AddEditCommitteeCmp } from './add-edit-committee-cmp';\r\nimport { MergeCommitteeModalCmp } from './merge-committee-modal-cmp';\r\nimport { ContactAuthInfoEditModule } from 'src/app/Contacts/contact-auth-info-edit/contact-auth-info-edit.module';\r\nimport { CommitteesSvc } from './committees-Svc';\r\nimport { ArchivesQuickSearchModule } from 'src/app/Archives/archives-quick-search/archives-quick-search.module';\r\nimport { MembersSharedModule } from '../../../../committees/members-shared.module';\r\nimport { CommitteesGoalsModule } from '../../../../committees/committees-goals.module';\r\nimport { CommitteStatusPopupCmp } from \"./CommitteStatusPopup/committe-status-popup-cmp\";\r\nimport { SubCommitteesSVC } from '../../../../committees/components/details/subcommittees/sub-committees-svc';\r\nimport { AudittraillistModule } from '../../../../_common/components/audittraillist/audittraillist.module';\r\n\r\n@NgModule({\r\n imports: [\r\n SharedModule,\r\n ArchivesQuickSearchModule,\r\n ContactAuthInfoEditModule,\r\n MembersSharedModule,\r\n CommitteesGoalsModule,\r\n AudittraillistModule\r\n ],\r\n declarations: [\r\n CommitteesCmp,\r\n AddEditCommitteeCmp,\r\n MergeCommitteeModalCmp,\r\n CommitteStatusPopupCmp\r\n ],\r\n exports: [\r\n CommitteesCmp,\r\n AddEditCommitteeCmp,\r\n MergeCommitteeModalCmp,\r\n CommitteStatusPopupCmp\r\n ],\r\n providers: [\r\n CommitteesSvc,\r\n SubCommitteesSVC\r\n ]\r\n})\r\nexport class CommitteeModule { }","\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
    {{getText(\"ArchiveNumber\",\"AddEditCommittee\")}}{{getText(\"ArchiveTitle\",\"AddEditCommittee\")}}{{getText(\"Type\",\"AddEditCommittee\")}}
    {{item.ArchiveNumber}}{{item.Title}}\r\n {{getText(\"Type-\"+item.Type,\"AddEditCommittee\")}}\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
    ","import { CommitteesSvc } from \"./committees-Svc\";\r\nimport { FormBuilder, Validators, FormGroup } from \"@angular/forms\";\r\nimport { Component, ViewChild, ChangeDetectorRef, Input, Output, EventEmitter } from \"@angular/core\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { Router, ActivatedRoute } from \"@angular/router\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport {\r\n DialogManager,\r\n ConfirmationBoxOptions,\r\n ConfirmationBoxType,\r\n ConfirmationBoxResult\r\n} from \"src/app/_common/services/dialog-manager\";\r\nimport { IComboboxOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { PopupComponent, IPopup } from \"src/app/_common/components/popup/popup-component\";\r\nimport { AppModulesEnum } from \"src/app/_common/models/AppModulesEnum\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"merge-committee-modal\",\r\n templateUrl: \"./merge-committee-modal-ng.html\"\r\n})\r\nexport class MergeCommitteeModalCmp extends BaseCmp {\r\n isSubscribed: boolean = true;\r\n isBusy: boolean = false;\r\n mergeSubCommittees: boolean = false;\r\n\r\n @ViewChild(\"MergeCommitteeModal\") public mergeCommitteeModal: PopupComponent;\r\n MergeCommitteeModalOptions: IPopup = {\r\n title: this.getText(\"MergeCommittee\", \"AddEditCommittee\"),\r\n icon: 'evicon-merge font-color-btn-blue',\r\n actions: [\r\n { text: this.getText('Merge', 'AddEditCommittee'), type: 'submit', event: this.mergecommitteeSupmit.bind(this) },\r\n { text: this.getText(\"btnCancel\", \"CSHTML/Areas/Correspondences/Applications/_DialogBox\"), type: 'close', event: this.onClose.bind(this) }\r\n ],\r\n mode: 'small',\r\n isBusy: () => this.isBusy,\r\n\r\n }\r\n @Input(\"archiveItemMerge\") archiveItemMerge: any[];\r\n @Input(\"HasSubCommittees\") hasSubCommittees: boolean = false;\r\n @Input(\"enableArchive\") enableArchive: false;\r\n @Input(\"SendFromCommitteeModule\") SendFromCommitteeModule: false;\r\n @Output(\"onAddArchive\") onAddArchive: EventEmitter = new EventEmitter();\r\n @Output(\"ondeleteArchive\") onDeleteArchive: EventEmitter = new EventEmitter();\r\n @Output(\"onSave\") onSave: EventEmitter = new EventEmitter();\r\n\r\n @Output() reloadCommitteeInfo: EventEmitter = new EventEmitter();\r\n\r\n get isAdvancedCommitteeEnabled() {\r\n return BERRY.onOffFeatures.advanced_Committee;\r\n }\r\n\r\n get hasArchiveModule(): boolean{\r\n return BERRY.User.UserModules.some(s => s.Id == AppModulesEnum.Archive)\r\n }\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n ngSuperOnInit() {\r\n }\r\n\r\n ngSuperAfterViewInit() { }\r\n\r\n constructor(\r\n public _router: Router,\r\n public _route: ActivatedRoute,\r\n public _dialogs: DialogManager,\r\n public _toaster: ToastrService,\r\n public _svc: CommitteesSvc,\r\n public cdRef: ChangeDetectorRef,\r\n private fb: FormBuilder\r\n ) {\r\n super();\r\n this.buildForm();\r\n }\r\n\r\n addArchive() {\r\n this.onAddArchive.emit(true);\r\n }\r\n\r\n\r\n internalEntitiesAutoCompleteOptions: IComboboxOptions = {\r\n serverDatasource: {\r\n url:\r\n BERRY.hostName +\r\n \"Correspondences/Applications/GetEntities?withoutCommittees=true\",\r\n enabled: true,\r\n method: \"POST\",\r\n resultsField: \"\",\r\n searchField: \"kw\"\r\n },\r\n dataTextField: \"value\",\r\n dataValueField: \"dbid\",\r\n allowFreeText: false,\r\n autoBind: false,\r\n displayTemplate: \"#: data.number # - #: data.value #\"\r\n };\r\n\r\n MergeCommitteeForm: FormGroup;\r\n selectedEntity;\r\n selectedCommitteId;\r\n buildForm(): void {\r\n let me = this;\r\n me.MergeCommitteeForm = me.fb.group({\r\n EntityIdControl: [me.MergeCommitteeDto.entityId, [Validators.required]]\r\n });\r\n }\r\n\r\n onClose() {\r\n var me = this;\r\n me.MergeCommitteeDto.committeeId = null;\r\n me.MergeCommitteeDto.entityId = null;\r\n me.archiveItemMerge = [];\r\n }\r\n MergeCommitteeDto = {\r\n committeeId: null,\r\n entityId: null,\r\n ArchiveItems: [],\r\n MergeSubCommittees: false\r\n };\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngAfterViewInit() {\r\n //this.mergeCommitteeModal.show();\r\n }\r\n\r\n deleteArchive(item: EntityArchiveItemDTO) {\r\n let me = this;\r\n this._dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n this.getText(\"deleteArchive\", \"AddEditCommittee\"),\r\n BERRY.loc.Committees.Worning,\r\n BERRY.loc.Committees.Yes,\r\n BERRY.loc.Committees.No\r\n );\r\n\r\n dialog.show(options, result => {\r\n if (result == ConfirmationBoxResult.Yes) {\r\n me._svc.deleteEntityArchiveItem(item)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data.d) {\r\n me.archiveItemMerge = me.archiveItemMerge.filter(r => { if (r != item) return r });\r\n }\r\n });\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n deleteArchiveTemp(item: EntityArchiveItemDTO) {\r\n let me = this;\r\n this.archiveItemMerge.slice(this.archiveItemMerge.indexOf(item), 1);\r\n if (item.Type === EnitiyArchiveType.Merge && me.MergeCommitteeDto.committeeId == null) {\r\n me.archiveItemMerge = me.archiveItemMerge.filter(r => { if (r != item) return r });\r\n }\r\n }\r\n\r\n mergecommitteeSupmit() {\r\n var me = this;\r\n\r\n if (!this.MergeCommitteeDto.entityId) {\r\n me._dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n BERRY.getText('FormsValidationMessage', 'Common')\r\n );\r\n dialog.show(options);\r\n }\r\n\r\n });\r\n return;\r\n }\r\n me._dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n BERRY.loc.Committees.MergeConfirmation.toString().replace(\r\n \"${ManagerName}\",\r\n me.selectedEntity.managerName\r\n ),\r\n BERRY.loc.Committees.Worning,\r\n BERRY.loc.Committees.Yes,\r\n BERRY.loc.Committees.No\r\n );\r\n dialog.show(options, result => {\r\n if (result == ConfirmationBoxResult.Yes) {\r\n me.isBusy = true;\r\n me.MergeCommitteeDto.committeeId = me.selectedCommitteId;\r\n me.MergeCommitteeDto.ArchiveItems = me.archiveItemMerge;\r\n me.MergeCommitteeDto.MergeSubCommittees = me.mergeSubCommittees;\r\n me._svc\r\n .MergeCommitee(me.MergeCommitteeDto)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n response => {\r\n this.onSave.emit(true);\r\n this.mergeCommitteeModal.close();\r\n this.reloadCommitteeInfo.emit();\r\n if (me.SendFromCommitteeModule)\r\n me._router.navigate([\"/committees/mycommittees\"]);\r\n else\r\n me._router.navigate([\"/admin/manage/Committees\"]);\r\n\r\n me._toaster.success(BERRY.loc.common.successMessage);\r\n me.isBusy = false;\r\n },\r\n exception => {\r\n this.onSave.emit(false);\r\n me._toaster.error(exception.error);\r\n me.isBusy = false;\r\n });\r\n }\r\n });\r\n }\r\n });\r\n }\r\n}\r\n\r\nexport interface EntityArchiveItemDTO {\r\n EntityId: number,\r\n ArchiveId: string,\r\n ArchiveNumber?: string,\r\n Title?: string,\r\n Type: EnitiyArchiveType\r\n}\r\n\r\nexport enum EnitiyArchiveType {\r\n Create,\r\n AddMember,\r\n RemoveMember,\r\n Merge,\r\n EditMember\r\n}\r\nexport enum CommitteeTypeEnum {\r\n Internal = 1,\r\n External = 2\r\n}","export class PublicInboxDto {\r\n Id: string = \"\";\r\n EntityId: string = null;\r\n UserId: string = null;\r\n IndividualId: number;\r\n PublicInboxType: boolean = true;\r\n IsManager: boolean = false;\r\n CanForward: boolean = false;\r\n CanSave: boolean = false;\r\n CanshowInbox: boolean = false;\r\n Entity: any = null;\r\n User: any = null;\r\n UserText: string = null;\r\n ExternalUser: boolean = false;\r\n Email: string;\r\n Type: PublicInboxType;\r\n EnitiyArchiveItems:any[]\r\n}\r\n\r\nexport enum PublicInboxType {\r\n PublicInbox,\r\n ExternalPublicInbox\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Validators } from \"@angular/forms\";\r\nimport {\r\n CorrespondenceFormStatusOption,\r\n CorrespondenceFormStatusOptionField\r\n} from \"./correspondence-form-status-models\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class CorrespondenceFormStatusService extends BaseService {\r\n public baseURL: string = BERRY.hostName + \"api/CorrespondenceFormStatusApi\";\r\n\r\n constructor(httpInterceptor: HttpInterceptor) {\r\n super(httpInterceptor);\r\n }\r\n\r\n public saveOption(\r\n correspondenceFormStatusOption: CorrespondenceFormStatusOption\r\n ) {\r\n let url = `${this.baseURL}/SaveOption`;\r\n let params = { dto: correspondenceFormStatusOption };\r\n return this.http.post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public saveFields(\r\n correspondenceFormStatusOptionField: CorrespondenceFormStatusOptionField\r\n ) {\r\n let url = `${this.baseURL}/SaveField`;\r\n let params = { dto: correspondenceFormStatusOptionField };\r\n return this.http.post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public saveFieldsInBulk(fields: CorrespondenceFormStatusOptionField[]) {\r\n let url = `${this.baseURL}/SaveFieldsInBulk`;\r\n let params = { fields: fields };\r\n return this.http.post(url, fields).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public deleteOption(recordId: number) {\r\n let url = `${this.baseURL}/DeleteOption?recordId=` + recordId.toString();\r\n let params = { dto: recordId.toString() };\r\n return this.http.post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public deleteField(recordId: number) {\r\n let url = `${this.baseURL}/DeleteField?recordId=` + recordId.toString();\r\n let params = { dto: recordId.toString() };\r\n return this.http.post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public getAllOptions() {\r\n let url = `${this.baseURL}/GetAllOptions`;\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public getAllField(optionId: number) {\r\n let url = `${this.baseURL}/GetAllFields?optionId=` + optionId.toString();\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public getFormFieldStatus(\r\n categoryId: number,\r\n correspondenceTypeId: number,\r\n classificationId: number\r\n ) {\r\n let url =\r\n `${this.baseURL}/GetFormFieldStatus?categoryId=` +\r\n categoryId +\r\n `&correspondenceTypeId=` +\r\n correspondenceTypeId +\r\n `&classificationId=` +\r\n classificationId;\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public getFormFieldStatusForFormPurpose(\r\n categoryId: number,\r\n correspondenceTypeId: number,\r\n classificationId: number\r\n ) {\r\n let url =\r\n `${this.baseURL}/getFormFieldStatusForFormPurpose?categoryId=` +\r\n categoryId +\r\n `&correspondenceTypeId=` +\r\n correspondenceTypeId +\r\n `&classificationId=` +\r\n classificationId;\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public getOptions(controlId: number,classificationId:number|null) {\r\n let url = `${this.baseURL}/GetOptions?controlId=` + controlId;\r\n if (classificationId) {\r\n url = url + \"&classificationId=\" + classificationId;\r\n }\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public get isFormControlStatusEnabled() {\r\n var isEnabledSetting =\r\n BERRY.enableCorrespondenceFormControlStatus == \"true\";\r\n return isEnabledSetting;\r\n }\r\n public getValidators(\r\n controlName: string,\r\n list: any[],\r\n defaultValidators: any[] = null\r\n ) {\r\n if (typeof list == \"undefined\" || list == null || list.length <= 0) {\r\n return defaultValidators;\r\n }\r\n\r\n var validatorGroup: any[] = [];\r\n var isEnableFeatureEnabled = this.isFormControlStatusEnabled;\r\n if (isEnableFeatureEnabled) {\r\n var required = false;\r\n var controlExists = false;\r\n list.forEach(x => {\r\n if (x.ControlIdName == controlName) {\r\n controlExists = true;\r\n if (x.Enabled && !x.AllowNull) {\r\n required = true;\r\n }\r\n }\r\n });\r\n if (required) {\r\n validatorGroup = [...validatorGroup, Validators.required];\r\n }\r\n\r\n if (defaultValidators != null && defaultValidators.length > 0) {\r\n defaultValidators.forEach(x => {\r\n if (x == Validators.required && !controlExists)\r\n validatorGroup = [...validatorGroup, x];\r\n else if (x != Validators.required)\r\n validatorGroup = [...validatorGroup, x];\r\n });\r\n }\r\n return validatorGroup;\r\n } else {\r\n return defaultValidators;\r\n }\r\n }\r\n}\r\n","import { map, catchError } from 'rxjs/operators';\r\nimport { HttpInterceptor } from \"../../../../_common/services/http-interceptor\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Response } from \"@angular/http\";\r\nimport { IGeneralSettingDto, IGlobalSettings } from \"../../../../_common/models/IGlobalSettings\";\r\nimport { HolidayModel } from \"./offdays-settings-cmp\";\r\nimport { XCUserDto, XCUserEntityDto } from \"./mobile-settings-cmp\";\r\nimport { BaseService } from \"../../../../_common/services/baseService\";\r\nimport { Observable, of, throwError } from \"rxjs\";\r\nimport { AppModulesEnum } from 'src/app/_common/models/AppModulesEnum';\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class generalSettingsSvc extends BaseService {\r\n private readonly baseURL = BERRY.hostName + \"api/GeneralSettingsApi\";\r\n\r\n XCbaseUrl = BERRY.hostName + \"api/XCAttachmentsLists\";\r\n AMbaseUrl = BERRY.hostName + \"api/AppModulesApi/\";\r\n ManageRolesUrl = BERRY.hostName + \"api/ManageRolesApi\";\r\n CorrTypeUrl = BERRY.hostName + \"api/CorrTypesClassificationsApi\";\r\n executiveOfficebaseUrl = BERRY.hostName + \"api/ExecutiveOfficeApi\";\r\n XCUrl: string = `${BERRY.hostName}api/XCAttachmentsLists`;\r\n userURL = BERRY.hostName + \"api/users-api\";\r\n public dashboardCorrespondenceTypes: number[] = [];\r\n\r\n constructor(public http: HttpInterceptor) {\r\n super(http)\r\n }\r\n\r\n GetSettings(moduleId: AppModulesEnum = null): Observable {\r\n let url = `${this.baseURL}/GetSettings`;\r\n\r\n if (moduleId != null)\r\n url += `?moduleId=${moduleId}`;\r\n\r\n return super.get(url)\r\n }\r\n\r\n getCommitteesRemindersIntervals() {\r\n var url = this.baseURL + \"/GetCommitteesRemindersInterval\";\r\n return this.http.get(url);\r\n }\r\n\r\n getSettingsByGroup(settingGroup: string = null): Observable {\r\n return super.get(`${this.baseURL}/GetSettings?settingGroup=${settingGroup}`)\r\n }\r\n\r\n public GetUserAppModules(): Observable {\r\n return super.get(this.userURL + \"/UserAppModules\")\r\n }\r\n\r\n public GetMeetingSettings(SettingGroup): Observable {\r\n return super.get(this.baseURL + \"/GetMeetingSettings?SettingGroup=\" + SettingGroup)\r\n }\r\n\r\n\r\n public UpdateSettings(data): Observable {\r\n return super.post(this.baseURL + \"/UpdateSettings\", data)\r\n }\r\n\r\n public GetValue(group, key, defaultValue = \"\"): Observable {\r\n\r\n let result: string = \"\";\r\n\r\n var settings = BERRY.generalSettingList;\r\n if (settings !== null && settings !== undefined && settings.length > 0) {\r\n var setting = settings.find(\r\n x => x.SettingGroup == group && x.SettingKey == key);\r\n if (setting != null && settings !== undefined) {\r\n result = setting.Value ?? defaultValue;\r\n }\r\n return of(result);\r\n }\r\n else {\r\n return super\r\n .get(\r\n this.baseURL +\r\n \"/GetValue?group=\" +\r\n group +\r\n \"&key=\" +\r\n key +\r\n \"&defaultValue=\" +\r\n defaultValue\r\n )\r\n }\r\n }\r\n\r\n public GetValues(generalSettings): Observable {\r\n\r\n let result: IGeneralSettingDto[] = [];\r\n\r\n var settings = BERRY.generalSettingList;\r\n if (settings !== null && settings !== undefined && settings.length > 0) {\r\n generalSettings.forEach(obj => {\r\n var setting = settings.find(\r\n x => x.SettingGroup == obj.SettingGroup && x.SettingKey == obj.SettingKey);\r\n if (setting != null) {\r\n result.push(setting);\r\n }\r\n });\r\n\r\n return of(result);\r\n }\r\n else {\r\n return super\r\n .post(\r\n this.baseURL +\r\n \"/GetValues\",\r\n generalSettings\r\n )\r\n }\r\n }\r\n\r\n\r\n public isEmailToSendMeetingRequestExists() {\r\n return super.get(`${this.baseURL}/GetEmailToSendMeetingRequestSetting_Email`);\r\n }\r\n\r\n public SaveEmailToSendMeetingRequestSetting(email: string, password: string) {\r\n return super.post(`${this.baseURL}/SaveEmailToSendMeetingRequestSetting`, {\r\n Email: email,\r\n Password: password\r\n });\r\n }\r\n\r\n public DeleteEmailToSendMeetingRequestSetting() {\r\n return super.post(`${this.baseURL}/DeleteEmailToSendMeetingRequestSetting`);\r\n }\r\n\r\n public GetSettingsByGroupName(SettingGroup: string): Observable {\r\n return super.get(`${this.baseURL}/GetSettingsByGroupName?SettingGroup=${SettingGroup}`);\r\n }\r\n\r\n public GetTaskMandatoryFields(): Observable {\r\n return super.get(this.baseURL + \"/GetTaskMandatoryFields\")\r\n }\r\n\r\n public GetXCPresidentsList() {\r\n return super.get(this.XCbaseUrl + \"/GetXCPresidentsList\")\r\n\r\n }\r\n\r\n public GetXCUsersBySelectedPresidentId(xcUserDto: XCUserDto): Observable {\r\n let url = `${this.XCbaseUrl}/GetXCUsersBySelectedPresidentId?xcSelectedPresidentId=${xcUserDto.XCPresidentID}&executiveEnum=${xcUserDto.Type}`;\r\n return super.post(url, { XCPresidentID: xcUserDto.XCPresidentID, Type: xcUserDto.Type })\r\n }\r\n\r\n public GetXCUserEntity(XCUserId: number): Observable {\r\n let url =\r\n this.XCbaseUrl +\r\n `/GetXCUserEntities?XCUserId=${XCUserId}`;\r\n return this.http\r\n .get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n\r\n public AddSelectedXCPresidentUsers(newUserForXCSelectedPresident: XCUserDto[]): Observable {\r\n let url =\r\n this.XCbaseUrl +\r\n `/AddSelectedXCPresidentUsers?newUserForXCSelectedPresident=${newUserForXCSelectedPresident}`;\r\n return super.post(url, newUserForXCSelectedPresident)\r\n }\r\n\r\n public DeleteAllSelectedXCPresidentUsers(SelectedXCPresidentID): Observable {\r\n let url =\r\n this.XCbaseUrl +\r\n `/DeleteAllSelectedXCPresidentUsers?SelectedXCPresidentID=${SelectedXCPresidentID}`;\r\n return super.post(url, SelectedXCPresidentID)\r\n }\r\n\r\n public DeleteXCUserByXCPresidentID(xcPresidentID: string): Observable {\r\n let url = `${this.XCbaseUrl}/DeleteXCUserByXCPresidentID?presidentID=${xcPresidentID}`;\r\n return super.post(url, xcPresidentID);\r\n }\r\n\r\n public DeleteSelectedXCUserEntity(OrganizationId, XCUserId): Observable {\r\n let url =\r\n this.XCbaseUrl +\r\n `/DeleteSelectedXCUserEntity?OrganizationId=${OrganizationId}&XCUserId=${XCUserId}`;\r\n let params = {\r\n OrganizationId: OrganizationId,\r\n XCUserId: XCUserId\r\n }\r\n return this.http.post(url, params);\r\n } \r\n\r\n public deleteUserFromList(XCUserID) {\r\n let url =\r\n this.XCbaseUrl + `/DeleteSelectedXCPresidentUsers?XCUserID=${XCUserID}`;\r\n return super.post(url, XCUserID)\r\n }\r\n public AddSelectedXCPresident(newXCSelectedPresident: XCUserDto): Observable {\r\n let url =\r\n this.XCbaseUrl +\r\n `/AddSelectedXCPresident?newXCSelectedPresident=${newXCSelectedPresident}`;\r\n return super.post(url, newXCSelectedPresident)\r\n }\r\n\r\n public AddSelectedFollowupUser(newSelectedFollowupUser: XCUserDto): Observable {\r\n let url = this.XCbaseUrl + `/AddSelectedFollowupUser`;\r\n return super.post(url, newSelectedFollowupUser)\r\n }\r\n\r\n public AddSelectedXCUserEntity(newXCSelectedEntity: XCUserEntityDto): Observable {\r\n let url = this.XCbaseUrl + `/AddSelectedXCUserEntity?newXCSelectedEntity=${newXCSelectedEntity}`;\r\n return this.http.post(url, newXCSelectedEntity)\r\n }\r\n\r\n public GetOrganizationsByUserId(SelectedXCUserId, kw, getAllPresidentOrganizations: boolean = false): Observable {\r\n var url = `${this.XCbaseUrl}/GetOrganizationsByUserId?SelectedXCUserId=${SelectedXCUserId}&kw=${kw}&getAllPresidentOrganizations=${getAllPresidentOrganizations}`;\r\n return super.get(url);\r\n }\r\n\r\n GetClientAppModuleFilesize(): Observable {\r\n const me = this;\r\n\r\n let url = me.AMbaseUrl + `GetClientAppModuleFilesize`;\r\n return super.get(url)\r\n }\r\n\r\n SetMaxFileSize(appModule: any, templateSize): any {\r\n const me = this;\r\n\r\n let url = me.AMbaseUrl + `SetMaxFileSize?templateSize=${templateSize}`;\r\n return super.post(url, appModule);\r\n }\r\n\r\n GetTemplateMaxSizeFromGeneralSetting(): any {\r\n const me = this;\r\n\r\n let url = me.baseURL + `/GetDynamicValues?group=GeneralConfiguration&key=TemplateSize`;\r\n return super.get(url)\r\n }\r\n\r\n GetIISMaxSizeFromDMS(): any {\r\n let url = BERRY.appSettings.keys.dmsServerUrl + `iisSize`;\r\n return super.get(url)\r\n }\r\n\r\n UpdatePermissionbyRoleId(RoleId: number, IsActive: boolean): any {\r\n let me = this;\r\n\r\n let url = me.ManageRolesUrl + `/UpdatePermissionbyRoleId?RoleId=${RoleId}&IsActive=${IsActive}`;\r\n let params = {\r\n RoleId: RoleId,\r\n IsActive: IsActive\r\n }\r\n\r\n return me.http.post(url, params).pipe(\r\n map(me.extractData),\r\n catchError(me.handleError));\r\n }\r\n\r\n UpdateListOfRolesForUsers(params: any): any {\r\n let me = this;\r\n let url = me.ManageRolesUrl + `/UpdatePermissionbyRoleId`;\r\n return me.http.post(url, params).pipe(map(me.extractData), catchError(me.handleError),);\r\n }\r\n InvalidateCCUsers() {\r\n let me = this;\r\n let url = me.baseURL + `/InvalidateCCUsers`;\r\n return this.http.get(url).pipe(map(res => res), catchError(this.handleError));\r\n }\r\n\r\n extractData(res: Response) {\r\n let body = res;\r\n return body || {};\r\n }\r\n\r\n handleError(error: any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n // We'd also dig deeper into the error to get a better message\r\n let errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n console.error(errMsg); // log to console instead\r\n return throwError(errMsg);\r\n }\r\n\r\n public CurrentClientFileExtensions(): Observable {\r\n let url =\r\n this.baseURL +\r\n `/GetCurrentClientFileExtensions`;\r\n return this.http\r\n .get(url).pipe(\r\n map(res => res),\r\n catchError(this.handleError));\r\n }\r\n\r\n public UpdateExtensions(restrictedFileExtensions): Observable {\r\n let url =\r\n this.baseURL +\r\n `/UpdateCurrentClientFileExtensions`;\r\n return this.http\r\n .post(url, restrictedFileExtensions).pipe(\r\n map(res => res),\r\n catchError(this.handleError));\r\n }\r\n\r\n public getClientId(clientName: string): Observable {\r\n let url = this.baseURL + `/getClientId?clientName=${clientName}`;\r\n return this.http\r\n .get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n\r\n public GetDatepickerHolidays(): Observable {\r\n let url = this.baseURL + `/GetDatepickerHolidays`;\r\n return this.http\r\n .get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n public GetHolidaysWeekends(): Observable {\r\n let url = this.baseURL + `/GetHolidaysWeekends`;\r\n return this.http\r\n .get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n public UpdateHolidaysWeekends(weekends: string, holidays: HolidayModel[]): Observable {\r\n let url = this.baseURL + `/UpdateHolidaysWeekends?weekends=${weekends}&holidays=${holidays}`;\r\n return this.http\r\n .post(url, holidays).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError));\r\n }\r\n\r\n public GetSearchDates(): Observable {\r\n return super.get(this.baseURL + \"/GetSearchDates\")\r\n }\r\n\r\n public GetDeliveryReportTemplates(): any {\r\n return super.get(this.baseURL + \"/GetDeliveryReportTemplates\")\r\n }\r\n\r\n public SaveDeliveryReportSetting(deliveryReportSettingsListAsJson): Observable {\r\n return super.post(this.baseURL + \"/SaveDeliveryReportSetting?deliveryReportSettingsListAsJson=\" + deliveryReportSettingsListAsJson);\r\n }\r\n\r\n public GetdeliveryReportSettings(): Observable {\r\n return this.http.get(this.baseURL + \"/GetdeliveryReportSettings\").pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetFirstDateInYear(): Observable {\r\n return super.get(this.baseURL + \"/GetStartDate\")\r\n }\r\n\r\n public GetAdvanceSearchStartDate(): Observable {\r\n return super.get(this.baseURL + \"/GetAdvanceSearchStartDate\")\r\n }\r\n\r\n public GetDateNowInYear(): Observable {\r\n return super.get(this.baseURL + \"/GetEndDate\")\r\n }\r\n public GetFirstDateInYearString(): Observable {\r\n return super.get(this.baseURL + \"/GetSearchStartDateString\")\r\n }\r\n\r\n public GetDateNowInYearString(): Observable {\r\n return super.get(this.baseURL + \"/GetSearchEndDateString\")\r\n }\r\n public GetDashboardCorrespondenceTypes(): Observable {\r\n return super.get(this.baseURL + \"/GetDashboardCorrespondenceTypes\")\r\n }\r\n\r\n public GetCorrespondenceTypes(): Observable {\r\n return super.get(this.CorrTypeUrl + \"/GetCorrespondenceTypes\");\r\n }\r\n\r\n public GetCorrespondencesCategoriesSettings(): Observable {\r\n return super.get(this.baseURL + \"/GetCorrespondencesCategoriesSettings\")\r\n }\r\n\r\n public CheckCorrespondencesModuleSupport(): Observable {\r\n return super.get(this.baseURL + \"/CheckCorrespondencesModuleSupport\")\r\n }\r\n\r\n public GetClientAppModulesSettings(): Observable {\r\n return this.http.get(this.AMbaseUrl + \"GetClientAppModulesSettings\").pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n UpdateClientAppModulsOrder(appModule: any): any {\r\n const me = this;\r\n let url = me.AMbaseUrl + `UpdateClientAppModulesOrder`;\r\n return super.post(url, appModule);\r\n }\r\n\r\n public GetXCPresidentsListByUserId(): Observable {\r\n var url = `${this.XCUrl}/GetXCPresidentsListByUserId`;\r\n return super.get(url);\r\n }\r\n\r\n public GetArchiveSettings(): Observable {\r\n return this.http.get(this.baseURL + \"/GetArchiveSettings\").pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public UpdateArchiveSettings(data): Observable {\r\n return this.http.post(this.baseURL + \"/UpdateArchiveSettings\", data).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n UpdateXCUserEntitiesOrder(xcUserEntitiesDto: XCUserEntityDto[]): Observable {\r\n const url = `${this.XCbaseUrl}/UpdateXCUserEntitiesOrder`\r\n return this.http.post(url, xcUserEntitiesDto);\r\n }\r\n\r\n public UpdateUserApprovalPermissionSettings(userIds): Observable {\r\n let url = `${BERRY.hostName}api/PermissionApprovalRequestApi/UpdateUserApprovalPermissionSettings`;\r\n return super.post(url, userIds);\r\n }\r\n\r\n public GetPermissionApprovalSettingUsers(): Observable {\r\n let url = `${BERRY.hostName}api/PermissionApprovalRequestApi/GetPermissionApprovalSettingUsers`;\r\n return super.get(url);\r\n }\r\n\r\n CheckUnderReviewAnnoucements() {\r\n return this.http\r\n .get(BERRY.hostName + \"api/AnnouncementDetails/CheckUnderReviewAnnoucements\")\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n AddProtocolToUrl(url: string): string {\r\n var pattern = /^((http|https):\\/\\/)/;\r\n\r\n if (!pattern.test(url.toLowerCase())) {\r\n url = \"http://\" + url;\r\n }\r\n return url;\r\n }\r\n\r\n isUrlWithinAllowedDomains(url: string, allowedDomains: string[]) {\r\n if (!allowedDomains)\r\n return false;\r\n\r\n url = url.toLowerCase();\r\n url = url.replace(/^https?:\\/\\//, '');\r\n url = url.indexOf(\"/\") != -1 ? url.substring(0, url.indexOf(\"/\")) : url;\r\n url = url.indexOf(\"?\") != -1 ? url.substring(0, url.indexOf(\"?\")) : url;\r\n\r\n return (allowedDomains.some(x => x.toLowerCase().endsWith(url)));\r\n }\r\n}","
    \r\n
    \r\n {{item.Text}}\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 {{getText(\"CorrTypeItemsWarning\", \"ReportSettings\")}}\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 {{getText(\"CorrClassificationItemsWarning\", \"ReportSettings\")}}\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 {{getText(\"ConfidentialityItemsWarning\", \"ReportSettings\")}}\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 {{getText(\"UserTypeItemsWarning\", \"ReportSettings\")}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n {{getText(\"Consultants\", \"ReportSettings\")}}\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 {{item.Name}}\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 {{item.Name}}\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 {{getText(\"ReportTimeFrame\", \"ReportSetting\")}}\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 {{getText('Entity', 'ManageUsers')}}\r\n \r\n {{getText('EmployeeManagement','CSHTML/Areas/Admin/Users/SyncUser')}}\r\n \r\n {{getText('ReportTimeFrameDay', 'ReportSetting')}}\r\n \r\n \r\n {{getText('Edit', 'CSHTML/Areas/Admin/ArchiveManagement/Manage')}}\r\n \r\n \r\n \r\n {{getText('Delete', 'Common')}}\r\n \r\n
    \r\n \r\n {{item.EntityName}}\r\n \r\n \r\n \r\n {{item.TimeFrame}} {{getText('Day', 'AssignTasks')}}\r\n \r\n 1\">\r\n {{item.TimeFrame}} {{getText('Days', 'AssignTasks')}}\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 {{getText(\"ReportTimeFrame\", \"ReportSetting\")}}\r\n
    \r\n\r\n
    \r\n\r\n\r\n
    \r\n\r\n
    ","import { BaseCmp } from \"../../../../_common/components/BaseComponent\";\r\nimport { IGlobalSettings } from \"../../../../_common/models/IGlobalSettings\";\r\nimport { Component, ViewChild } from \"@angular/core\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { ReportSettingsSvc } from \"./report-settings-svc\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { DialogManager, ConfirmationBoxOptions, ConfirmationBoxType, ConfirmationBoxResult } from \"../../../../_common/services/dialog-manager\";\r\nimport { kendoMultiSelect } from \"../../../../_common/directives/KendoUI-wrappers/kendoMultiSelect\";\r\nimport { LookupHelpers } from \"../../../../Lookups/LookupHelpers\";\r\nimport { IPopup, PopupComponent } from \"src/app/_common/components/popup/popup-component\";\r\nimport { IComboboxOptions } from \"src/app/_common/directives/KendoUI-wrappers/kendo-combobox\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n@Component({\r\n selector: \"report-settings\",\r\n templateUrl: \"./report-settings.html\",\r\n providers: [ReportSettingsSvc]\r\n})\r\nexport class ReportSettingsCmp extends BaseCmp {\r\n isEmployeeUnit: boolean = true;\r\n isSubscribed: boolean = true;\r\n isBusy: boolean = false;\r\n isUserBusy = false;\r\n ActiveConsultantItems: any;\r\n InactiveConsultantItems: any;\r\n CriteriaId: number;\r\n CorrTypeItems: any = [];\r\n CorrClassificationItems: any = [];\r\n ConfidentialityItems: any = [];\r\n CheckedAllTypes = false;\r\n CheckedAllClassifications = false;\r\n CheckedAllConfid = false;\r\n UserTypes: any[] = [];\r\n UserTypeItems: any = [];\r\n Confidentialities: any[] = [];\r\n Types: any[] = [];\r\n AllClassifications: any[] = [];\r\n Classifications: any[] = [];\r\n ActiveTap: any;\r\n\r\n @ViewChild(\"CorrTypeControl\") CorrTypeControl: kendoMultiSelect;\r\n @ViewChild(\"CorrClassificationControl\") CorrClassificationControl: kendoMultiSelect;\r\n @ViewChild(\"ConfidentialityControl\") ConfidentialityControl: kendoMultiSelect;\r\n\r\n get isValidUserType(): boolean {\r\n return this.UserTypeItems?.length > 0;\r\n }\r\n get isValidCorrType(): boolean {\r\n return this.CheckedAllTypes || this.CorrTypeItems?.length > 0;\r\n }\r\n get isValidCorrClassification(): boolean {\r\n return this.CheckedAllClassifications || this.CorrClassificationItems?.length > 0;\r\n }\r\n get isValidConfid(): boolean {\r\n return this.CheckedAllConfid || this.ConfidentialityItems?.length > 0;\r\n }\r\n\r\n reportId: number;\r\n\r\n get NoUsersFound(): boolean {\r\n return this.InactiveConsultantItems?.length == 0 && this.ActiveConsultantItems?.length == 0;\r\n }\r\n ReportList: any = [];\r\n ngOnDestroy() {\r\n let me = this;\r\n me.isSubscribed = false;\r\n }\r\n\r\n constructor(public toastr: ToastrService,\r\n public svc: ReportSettingsSvc,\r\n public dialogs: DialogManager,\r\n public lookupHelpers: LookupHelpers,\r\n public _dialogs: DialogManager,\r\n ) {\r\n super();\r\n }\r\n ngSuperOnInit(): any {\r\n let me = this;\r\n me.isBusy = true;\r\n me.UserTypes = BERRY.Lookups.UserTypes.filter(e=>e.UserTypeID !== 7); // (7) value of \"دور المفصل\"\r\n me.Confidentialities = BERRY.Lookups.Confidentialities;\r\n me.Types = me.lookupHelpers.getCorrespondenceTypes().filter(a => a.ID > 0);\r\n me.AllClassifications = me.lookupHelpers.getCorrespondenceClassifications().filter(a => a.ID > 0);\r\n me.Classifications = me.lookupHelpers.getCorrespondenceClassifications().filter(a => a.ID > 0);\r\n me.svc.GetReportList().pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(result => {\r\n if (result && result.length > 0) {\r\n me.ReportList = result;\r\n me.ActiveTap = result[0];\r\n me.reportId = result[0].Id\r\n me.GetReportSettings();\r\n //this.entityIds = me.Entities.map(entity => entity.EntityId);\r\n\r\n }\r\n });\r\n }\r\n\r\n ngSuperAfterViewInit(): any { }\r\n ReportSettingType = ReportSettingType;\r\n reportType: ReportSettingType;\r\n\r\n\r\n SwitchTab(item) {\r\n let activeTap = this.ReportList.filter(x => x.Id == item.Id)[0];\r\n let me = this;\r\n me.reportId = item.Id;\r\n me.ActiveTap = activeTap;\r\n this.daysNumber = null;\r\n me.GetReportSettings();\r\n if (item.Id == ReportSettingType.ForwardingDepartments || item.TitleEn == \"Studies forwarding departments report\") {\r\n this.isEmployeeUnit = false;\r\n this.reportType = ReportSettingType.ForwardingDepartments;\r\n }\r\n else if (item.Id == ReportSettingType.ForwardingEmployees || item.TitleEn == \"studies forwarding employees report\") {\r\n this.isEmployeeUnit = false;\r\n this.reportType = ReportSettingType.ForwardingEmployees;\r\n }\r\n else {\r\n this.isEmployeeUnit = true;\r\n }\r\n }\r\n\r\n @ViewChild('editPopup') editPopup: PopupComponent;\r\n editPopupOption: IPopup = {\r\n title: this.getText('Edit', 'CSHTML/Areas/Admin/ArchiveManagement/Manage'),\r\n disableSubmit: () => !this.IsTimeFrameWithinPeriod,\r\n actions: [\r\n {\r\n text: this.getText('Cancel', 'FollowUpTeam'), type: 'close'\r\n },\r\n {\r\n text: this.getText('Save', 'General-Setting'), type: 'submit', event: () => this.updateSettingManagement()\r\n }\r\n ],\r\n mode: 'small'\r\n }\r\n\r\n Delete(e) {\r\n this._dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n BERRY.loc.CommonDbRes.DeleteConfirmation,\r\n BERRY.loc.WorkFlow.Worning,\r\n BERRY.loc.WorkFlow.Yes,\r\n BERRY.loc.WorkFlow.No\r\n );\r\n dialog.show(options, result => {\r\n if (result == ConfirmationBoxResult.Yes) {\r\n this.deleteSettingManagement(e.EntityId);\r\n }\r\n });\r\n }\r\n });\r\n }\r\n GetEntitys: any;\r\n Entities: any[] = [];\r\n entityIds: any[] = [];\r\n GetReportSettings() {\r\n let me = this;\r\n me.isBusy = true;\r\n me.CorrTypeItems = [];\r\n me.CorrClassificationItems = [];\r\n me.ConfidentialityItems = [];\r\n me.CheckedAllTypes = false;\r\n me.CheckedAllClassifications = false;\r\n me.CheckedAllConfid = false;\r\n me.UserTypeItems = [];\r\n me.InactiveConsultantItems = [];\r\n me.ActiveConsultantItems = [];\r\n me.Entities = [];\r\n me.svc.GeSettings(me.reportId).pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(settings => {\r\n me.CriteriaId = settings.CriteriaId;\r\n this.StaffReportSettings = settings.StaffReportSettings;\r\n this.GetEntitys = settings.EnitiyNames;\r\n this.entityIds = [];\r\n this.Entities = [];\r\n if (settings.Criterias) {\r\n var type = settings.Criterias.filter(a => a.Type == ReportConfiguration.CorrespondenceType);\r\n if (type && type.length > 0) {\r\n me.CorrTypeItems = type[0].Items?.map(a => a.ItemId);\r\n me.CheckedAllTypes = type[0].IsAllItemsSelected;\r\n }\r\n var classification = settings.Criterias.filter(a => a.Type == ReportConfiguration.CorrespondenceClassification);\r\n if (classification && classification.length > 0) {\r\n me.CorrClassificationItems = classification[0].Items?.map(a => parseInt(a.ItemId));\r\n me.CheckedAllClassifications = classification[0].IsAllItemsSelected;\r\n }\r\n var confid = settings.Criterias.filter(a => a.Type == ReportConfiguration.Confidentiality);\r\n if (confid && confid.length > 0) {\r\n me.ConfidentialityItems = confid[0].Items?.map(a => a.ItemId);\r\n me.CheckedAllConfid = confid[0].IsAllItemsSelected;\r\n }\r\n var roles = settings.Criterias.filter(a => a.Type == ReportConfiguration.UserType);\r\n if (roles && roles.length > 0) {\r\n me.UserTypeItems = roles[0].Items?.map(a => a.ItemId);\r\n }\r\n }\r\n if (settings.StaffReportSettings) {\r\n me.svc.GetEntityInfo(this.StaffReportSettings).pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(list => {\r\n if (!!list) {\r\n me.Entities = list;\r\n\r\n this.entityIds = me.Entities.map(entity => entity.EntityId);\r\n }\r\n });\r\n }\r\n me.isBusy = false;\r\n me.isUserBusy = false;\r\n });\r\n\r\n\r\n setTimeout(() => {\r\n me.DoSortable();\r\n }, 500);\r\n }\r\n get isValid(): boolean {\r\n return !this.isValidConfid || !this.isValidCorrType || !this.isValidUserType || (!this.isValidCorrClassification && this.reportId == this.ReportList[1].Id)\r\n }\r\n\r\n\r\n\r\n ActivateParty(item) {\r\n let me = this;\r\n if (item.IsActive) {\r\n me.ActiveConsultantItems = me.ActiveConsultantItems.filter(a => a.UserId != item.UserId);\r\n item.IsActive = false;\r\n item.Order = 0;\r\n me.InactiveConsultantItems.push(item);\r\n me.InactiveConsultantItems.sort(function (a, b) {\r\n if (a.Name < b.Name) { return -1; }\r\n if (a.Name > b.Name) { return 1; }\r\n return 0;\r\n });\r\n var order = 0;\r\n me.InactiveConsultantItems.forEach(item => {\r\n order = order + 1;\r\n item.Order = order;\r\n });\r\n }\r\n else {\r\n me.InactiveConsultantItems = me.InactiveConsultantItems.filter(a => a.UserId != item.UserId);\r\n var maxOrder = 0;\r\n if (me.ActiveConsultantItems.length > 0)\r\n maxOrder = Math.max(...me.ActiveConsultantItems.map(c => c.Order));\r\n item.IsActive = true;\r\n item.Order = maxOrder + 1;\r\n me.ActiveConsultantItems.push(item);\r\n }\r\n }\r\n\r\n ResetOrder() {\r\n let me = this;\r\n\r\n me.dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Danger,\r\n this.getText(\"ResetMessage\", \"ReportSettings\"),\r\n BERRY.loc.WorkFlow.Worning,\r\n BERRY.loc.correspondence.DeleteCorrespondenceModal.btnYes,\r\n BERRY.loc.correspondence.DeleteCorrespondenceModal.btnNo\r\n );\r\n dialog.show(options, result => {\r\n if (result == ConfirmationBoxResult.Yes) {\r\n me.ActiveConsultantItems.sort(function (a, b) {\r\n if (a.Name < b.Name) { return -1; }\r\n if (a.Name > b.Name) { return 1; }\r\n return 0;\r\n });\r\n var order = 0;\r\n me.ActiveConsultantItems.forEach(item => {\r\n order = order + 1;\r\n item.Order = order;\r\n });\r\n }\r\n });\r\n }\r\n })\r\n }\r\n allClassificationByTypes: any;\r\n OnCorrTypeSelected(e) {\r\n let me = this;\r\n var allClassification = me.AllClassifications.map(item => {\r\n let obj = {\r\n value: item.ID,\r\n text: item.Text,\r\n }\r\n return obj;\r\n });\r\n if (e != null) {\r\n me.CorrTypeItems = e.map(item => { return item.value; });\r\n if (!!this.CorrClassificationControl) {\r\n var classificationSelected = this.CorrClassificationControl._InitialValues;\r\n me.allClassificationByTypes = this.lookupHelpers.getCorrespondenceTypesAndClassifications(me.CorrTypeItems)\r\n .map(item => {\r\n let obj = {\r\n value: item.ID,\r\n text: item.Text,\r\n }\r\n return obj;\r\n });\r\n var classification = me.allClassificationByTypes.filter(({ value }) => classificationSelected?.includes(value.toString()) || classificationSelected?.includes(value));\r\n this.CorrClassificationControl.setDataSource(me.allClassificationByTypes);\r\n\r\n if (classification?.length == 0) {\r\n me.CorrClassificationControl.clearValues(false);\r\n }\r\n }\r\n\r\n }\r\n else if (this.CheckedAllTypes) {\r\n me.CorrTypeItems = [];\r\n if (!!this.CorrClassificationControl) {\r\n this.CorrClassificationControl.setDataSource(allClassification);\r\n }\r\n }\r\n else {\r\n me.CorrTypeItems = [];\r\n if (!!this.CorrClassificationControl) {\r\n me.CorrClassificationControl.clearValues(false);\r\n me.CheckedAllClassifications = true;\r\n }\r\n }\r\n }\r\n OnCorrClassificationSelected(e) {\r\n let me = this;\r\n var allClassification = me.AllClassifications.map(item => {\r\n let obj = {\r\n value: item.ID,\r\n text: item.Text,\r\n }\r\n return obj;\r\n });\r\n if (e != null) {\r\n me.CorrClassificationItems = e;\r\n }\r\n else if (me.CheckedAllClassifications && me.CorrClassificationItems?.length == 0 && me.allClassificationByTypes?.length == 0) {\r\n this.CorrClassificationControl.setDataSource(allClassification);\r\n }\r\n else {\r\n me.CorrClassificationItems = null;\r\n }\r\n }\r\n\r\n OnConfidentialitySelected(e) {\r\n let me = this;\r\n me.ConfidentialityItems = [];\r\n if (e != null) {\r\n e.forEach(item => {\r\n me.ConfidentialityItems.push(item.value);\r\n });\r\n }\r\n }\r\n\r\n CheckAllCorrType() {\r\n let me = this;\r\n me.CheckedAllTypes = !me.CheckedAllTypes;\r\n me.CorrTypeItems = [];\r\n me.CorrTypeControl.clearValues(false);\r\n }\r\n CheckAllCorrClassification() {\r\n let me = this;\r\n me.CheckedAllClassifications = !me.CheckedAllClassifications;\r\n me.CorrClassificationItems = []; }\r\n autocompleteDefaultOptions: IComboboxOptions = {\r\n dataTextField: \"value\",\r\n dataValueField: \"dbid\",\r\n allowFreeText: false,\r\n minLength: 1\r\n };\r\n public EntitiesAutoCompleteOptions: IComboboxOptions = Object.assign(\r\n {},\r\n this.autocompleteDefaultOptions,\r\n {\r\n serverDatasource: Object.assign(\r\n {},\r\n {\r\n enabled: true,\r\n method: \"post\",\r\n searchField: \"kw\",\r\n resultsField: \"\"\r\n },\r\n {\r\n url: BERRY.hostName +\r\n \"api/ReportSettingApi/GetEntities\",\r\n additionalParams: () => {\r\n return {\r\n EntityIds: this.entityIds.toString()\r\n };\r\n }\r\n }\r\n ),\r\n dataTextField: \"EntityName\",\r\n dataValueField: \"EntityId\",\r\n allowFreeText: false,\r\n autoBind: false\r\n }\r\n\r\n );\r\n\r\n daysNumber: any;\r\n StaffReportSettings = [];\r\n entityIdSelected: any;\r\n onToSelectedEntitySelected(e) {\r\n const me = this;\r\n me.entityIdSelected = e;\r\n }\r\n\r\n get checkValidations() {\r\n if (this.entityIdSelected != null && this.daysNumber != null && this.IsDaysNumberWithinPeriod) {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n\r\n }\r\n isSubmit = false;\r\n AddSettingMangment() {\r\n if (!this.isSubmit) {\r\n this.isSubmit = true;\r\n if (this.IsDaysNumberWithinPeriod) {\r\n let me = this;\r\n var typeItem = {\r\n EntityId: this.entityIdSelected,\r\n TimeFrame: this.daysNumber,\r\n }\r\n me.StaffReportSettings.push(typeItem);\r\n var dto = {\r\n CriteriaId: me.CriteriaId,\r\n StaffReportSettings: me.StaffReportSettings,\r\n IsFromEntityReport: true,\r\n }\r\n me.svc.Update(dto).pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe({\r\n next: (d) => {\r\n me.toastr.success(BERRY.loc.common.successMessage);\r\n me.GetReportSettings();\r\n me.daysNumber = null;\r\n me.entityIdSelected = null;\r\n }, complete: () => { this.isSubmit = false; }\r\n });\r\n }\r\n }\r\n }\r\n EntityidUpdate: any;\r\n TimeFrame: any;\r\n EntityName: any;\r\n get IsDaysNumberWithinPeriod() {\r\n return (this.daysNumber >= 1 && this.daysNumber <= 365 && !!this.daysNumber)\r\n }\r\n get IsTimeFrameWithinPeriod() {\r\n return (this.TimeFrame >= 1 && this.TimeFrame <= 365 && !!this.TimeFrame)\r\n }\r\n openEditPopup(e) {\r\n this.EntityidUpdate = e.EntityId;\r\n this.TimeFrame = e.TimeFrame;\r\n this.EntityName = e.EntityName;\r\n this.editPopup.open();\r\n }\r\n\r\n updateSettingManagement() {\r\n let me = this;\r\n if (this.IsTimeFrameWithinPeriod) {\r\n var typeItem = {\r\n EntityId: this.EntityidUpdate,\r\n TimeFrame: this.TimeFrame,\r\n }\r\n var itemFound = me.StaffReportSettings.find(item => item.EntityId === typeItem.EntityId);\r\n if (itemFound) {\r\n itemFound.TimeFrame = typeItem.TimeFrame;\r\n }\r\n var dto = {\r\n CriteriaId: me.CriteriaId,\r\n StaffReportSettings: me.StaffReportSettings,\r\n IsFromEntityReport: true,\r\n }\r\n me.svc.Update(dto).pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(d => {\r\n me.toastr.success(BERRY.loc.common.successMessage);\r\n me.GetReportSettings();\r\n this.editPopup.close();\r\n });\r\n }\r\n\r\n }\r\n entityid: any\r\n deleteSettingManagement(entityid: any) {\r\n let me = this;\r\n\r\n var filteredCriteriasEntity = me.StaffReportSettings.filter(item => item.EntityId !== entityid);\r\n\r\n var dto = {\r\n CriteriaId: me.CriteriaId,\r\n StaffReportSettings: filteredCriteriasEntity,\r\n IsFromEntityReport: true,\r\n }\r\n me.svc.Update(dto).pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(d => {\r\n me.toastr.success(BERRY.loc.common.successMessage);\r\n me.GetReportSettings();\r\n });\r\n }\r\n\r\n\r\n\r\n\r\n CheckAllConfidentiality() {\r\n let me = this;\r\n me.CheckedAllConfid = !me.CheckedAllConfid;\r\n me.ConfidentialityItems = [];\r\n me.ConfidentialityControl.clearValues(false);\r\n }\r\n\r\n DoSortable() {\r\n let me = this;\r\n\r\n $(\"#usersSort\").sortable({\r\n axis: \"y\",\r\n });\r\n $(\".userList\").sortable({\r\n stop: function (event, ui) {\r\n me.isUserBusy = true;\r\n var idArr = $(\"#usersSort\").sortable(\"toArray\").map(x => x).toString();\r\n var counter = 0;\r\n (idArr.split(\",\")).forEach(x => {\r\n counter += 1;\r\n var item = me.ActiveConsultantItems.filter(y => y.UserId == x);\r\n if (item && item.length > 0) {\r\n item[0].Order = counter;\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n UpdateSettings() {\r\n let me = this;\r\n var typeItem = {\r\n Type: ReportConfiguration.CorrespondenceType,\r\n IsAllItemsSelected: me.CheckedAllTypes,\r\n Items: me.CorrTypeItems?.map((x) => { return { ItemId: x.toString(), Order: 0 }; })\r\n }\r\n var classificationItem = {\r\n Type: ReportConfiguration.CorrespondenceClassification,\r\n IsAllItemsSelected: me.CheckedAllClassifications,\r\n Items: me.CorrClassificationItems?.map((x) => { return { ItemId: x.toString(), Order: 0 }; })\r\n }\r\n var confidItem = {\r\n Type: ReportConfiguration.Confidentiality,\r\n IsAllItemsSelected: me.CheckedAllConfid,\r\n Items: me.ConfidentialityItems?.map((x) => { return { ItemId: x.toString(), Order: 0 }; })\r\n }\r\n var roleItem = {\r\n Type: ReportConfiguration.UserType,\r\n IsAllItemsSelected: false,\r\n Items: me.UserTypeItems?.map((x) => { return { ItemId: x.toString(), Order: 0 }; })\r\n }\r\n var dto = {\r\n CriteriaId: me.CriteriaId,\r\n Criterias: [typeItem, classificationItem, confidItem, roleItem],\r\n UserReportDtos: me.ActiveConsultantItems\r\n }\r\n me.svc.Update(dto).pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(d => {\r\n me.toastr.success(BERRY.loc.common.successMessage);\r\n me.GetReportSettings();\r\n });\r\n }\r\n\r\n onUserTypeSelected(e) {\r\n let me = this;\r\n me.UserTypeItems = [];\r\n if (e != null) {\r\n e.forEach(item => {\r\n me.UserTypeItems.push(item.value);\r\n });\r\n }\r\n me.FilterUsers();\r\n }\r\n\r\n ShowInactiveUserInSystem(event) {\r\n let me = this;\r\n me.ActiveTap.showInactiveUsers = event.target.checked\r\n me.FilterUsers();\r\n }\r\n\r\n FilterUsers() {\r\n let me = this;\r\n let dto = {\r\n ReportId: me.reportId,\r\n UserTypes: me.UserTypeItems,\r\n LoadInactiveUser: me.ActiveTap.showInactiveUsers\r\n }\r\n\r\n me.svc.GetUserReports(dto).pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(result => {\r\n if (result) {\r\n me.ActiveConsultantItems = result.filter(a => a.IsActive == true);\r\n me.InactiveConsultantItems = result.filter(a => a.IsActive == false);\r\n }\r\n else {\r\n me.ActiveConsultantItems = [];\r\n me.InactiveConsultantItems = [];\r\n }\r\n });\r\n }\r\n}\r\n\r\n\r\nexport enum ReportConfiguration {\r\n Confidentiality,\r\n CorrespondenceType,\r\n User,\r\n UserType,\r\n CorrespondenceClassification,\r\n}\r\nexport enum ReportSettingType {\r\n Consultant = 10,\r\n AnnualReports = 11,\r\n Portfolio = 12,\r\n ForwardingDepartments = 14,\r\n ForwardingEmployees = 15,\r\n}\r\n","import { Observable } from \"rxjs\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { IGlobalSettings } from \"../../../../_common/models/IGlobalSettings\";\r\ndeclare var BERRY: IGlobalSettings;\r\nexport class ReportSettingsSvc extends BaseService {\r\n\r\n private baseUrl = BERRY.hostName + \"api/ReportSettingApi/\";\r\n\r\n public GetReportList(): Observable {\r\n return super.get(`${this.baseUrl}GetReportList`);\r\n }\r\n\r\n public GeSettings(id): Observable {\r\n return super.get(`${this.baseUrl}GetReportSettings?reportId=${id}`);\r\n }\r\n public Update(dto): Observable {\r\n return super.post(this.baseUrl + \"Update\", dto);\r\n }\r\n\r\n public GetUserReports(dto): Observable {\r\n return super.post(this.baseUrl + \"GetUserReports\", dto);\r\n }\r\n public GetEntityInfo(dto): Observable {\r\n return super.post(this.baseUrl + \"GetEntityInfo\", dto);}\r\n\r\n public GetEntities(ids): Observable {\r\n return super.post(this.baseUrl + \"GetEntities\", ids);}\r\n} ","\r\nimport { throwError as observableThrowError, Observable, Subject } from 'rxjs';\r\nimport { UserDelegate } from \"./../../_models/UserDelegate\";\r\nimport { map, catchError } from 'rxjs/operators';\r\nimport { Injectable, NgZone } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../../../../_common/models/IGlobalSettings\";\r\nimport { Response, Headers, RequestOptions, RequestOptionsArgs } from \"@angular/http\";\r\nimport { PaginationResult } from \"../../../../_common/models/PaginationResult\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { HttpParams } from \"@angular/common/http\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class UserService {\r\n totalRecordsCount;\r\n USERS = [];\r\n baseUrl: string;\r\n changeURL = new Subject();\r\n zone: NgZone;\r\n isBusy: boolean = false;\r\n\r\n constructor(public http: HttpInterceptor) {\r\n }\r\n\r\n getMasterGridUIData() {\r\n const url = BERRY.hostName + \"api/UserApi/LoadUsersMasterGrid\";\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n saveUserRolePermission(oChangedValueDto: any) {\r\n const url =\r\n BERRY.hostName +\r\n \"api/UserApi/UserRole?oChangedValueDto=\" +\r\n oChangedValueDto;\r\n\r\n return this.http.post(url, oChangedValueDto).pipe(map(this.extractData));\r\n }\r\n\r\n deleteDocumentsPermittedUserAndUserType(userId: string, userTypeId: number, folderId: number) {\r\n var partCanBeNull = userId ? \"&UserId=\" + userId : \"\";\r\n partCanBeNull = partCanBeNull + (userTypeId ? \"&UserTypeId=\" + userTypeId : \"\");\r\n const url = BERRY.hostName + \"api/UserApi/DeleteDocumentsPermittedUserAndUserType?FolderId=\" + folderId + partCanBeNull;\r\n const params = {\r\n UserId: userId,\r\n UserTypeId: userTypeId,\r\n FolderId: folderId\r\n };\r\n\r\n const body = JSON.stringify(params);\r\n const headers = new Headers({ \"Content-Type\": \"application/json\" });\r\n const options = new RequestOptions({ headers: headers, body: body });\r\n\r\n return this.http.post(url, params).pipe(map(this.extractData));\r\n }\r\n\r\n public getEntities(param): Observable {\r\n let url = BERRY.hostName + `api/UserApi/GetEntities`;\r\n return this.http.post(url, param).pipe(map(this.extractData));\r\n }\r\n\r\n public generateUsersDetailsReport(param): Observable {\r\n let url = BERRY.hostName + `api/UserApi/GenerateUsersDetailsReport`;\r\n return this.http.post(url, param).pipe(map(this.extractData));\r\n }\r\n\r\n updateSendNotifications(id, sendNotificationsToBoth) {\r\n const params = {\r\n Id: id,\r\n SendNotificationsToBoth: sendNotificationsToBoth\r\n };\r\n\r\n const url = BERRY.hostName + \"api/UserApi/UpdateSendNotifications\";\r\n\r\n return this.http.post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n updateMFASetting(id, MFASetting) {\r\n const params = {\r\n UserId: id,\r\n TwoFactorAuthenticationSetting: MFASetting\r\n };\r\n\r\n const url = BERRY.hostName + \"api/UserApi/UpdateTwoFactorAuthenticationSetting\";\r\n\r\n return this.http.post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n post(active, id): Observable {\r\n const url =\r\n BERRY.hostName +\r\n \"api/UserApi/EditActivation?id=\" +\r\n id +\r\n \"&isActive=\" +\r\n active;\r\n const params = {\r\n id: id,\r\n isActive: active\r\n };\r\n const body = JSON.stringify(params);\r\n const headers = new Headers({ \"Content-Type\": \"application/json\" });\r\n const options = new RequestOptions({ headers: headers, body: body });\r\n\r\n return this.http.post(url, body, options).pipe(map(this.extractData));\r\n }\r\n\r\n extractData(res: Response) {\r\n let body = res;\r\n return body || {};\r\n }\r\n\r\n handleError(error: any) {\r\n const errMsg = error.message\r\n ? error.message\r\n : error.status\r\n ? `${error.status} - ${error.statusText}`\r\n : \"Server error\";\r\n return observableThrowError(errMsg);\r\n }\r\n\r\n syncUser(id) {\r\n const url = BERRY.hostName + \"api/UserApi/SyncUser?id=\" + id;\r\n return this.http.post(url, id).pipe(map(this.extractData), catchError(this.handleError));\r\n }\r\n getUserRolesList(id): Observable {\r\n const url = BERRY.hostName + \"api/UserApi/GetUserRolesList\";\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getUserProfileInfo(id): Observable {\r\n\r\n const url = BERRY.hostName + \"api/UserApi/GetUserProfile\";\r\n let identity = id;\r\n let params = new HttpParams();\r\n params = params.set(\"id\", id);\r\n params = params.set(\"async\", \"false\");\r\n\r\n let args: RequestOptionsArgs = { url: url, params: params };\r\n\r\n return this.http\r\n .get(url, args)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getUserTypesAndRecipients(id): Observable {\r\n const url = BERRY.hostName + \"api/UserApi/GetUserTypesAndRecipients\";\r\n let params = new HttpParams();\r\n params = params.set(\"id\", id);\r\n let args: RequestOptionsArgs = { url: url, params: params };\r\n return this.http\r\n .get(url, args)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n getUserManagerOfEntities(id): Observable {\r\n const url = BERRY.hostName + \"api/UserApi/GetUserManagerOfEntities\";\r\n let params = new HttpParams();\r\n params = params.set(\"id\", id);\r\n let args: RequestOptionsArgs = { url: url, params: params };\r\n return this.http\r\n .get(url, args)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getUserDelegationsPerEntity(id): Observable {\r\n const url = BERRY.hostName + \"api/UserApi/GetUserDelegationsPerEntity\";\r\n let params = new HttpParams();\r\n params = params.set(\"id\", id);\r\n let args: RequestOptionsArgs = { url: url, params: params };\r\n return this.http\r\n .get(url, args)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getImpersonationPossibilitiesForLoggedInUser(): any {\r\n const url =\r\n BERRY.hostName +\r\n \"api/UserApi/GetDelegationPossibilitiesForLoggedInUser\";\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getAssignments(): Observable {\r\n return this.http.get(`${BERRY.hostName}api/UserApi/GetAssignments`);\r\n }\r\n\r\n getUnreadNotificationsCount(): Observable {\r\n return this.http.get(`${BERRY.hostName}api/UserApi/GetUnreadNotificationsCount`);\r\n }\r\n\r\n getUserEntity(id): Observable {\r\n const url = BERRY.hostName + \"api/UserApi/GetUserEntity\";\r\n let params = new HttpParams();\r\n params = params.set(\"id\", id);\r\n let args: RequestOptionsArgs = { url: url, params: params };\r\n return this.http\r\n .get(url, args)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCurrentUserInfo() {\r\n const url = BERRY.hostName + \"api/UserConfiguration/GetCurrentUser\";\r\n return this.http.get(url)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getUserInfo(id): Observable {\r\n const url = BERRY.hostName + \"api/UserApi/GetUserInfo\";\r\n let params = new HttpParams();\r\n params = params.set(\"id\", id);\r\n let args: RequestOptionsArgs = { url: url, params: params };\r\n return this.http\r\n .get(url, args)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getUserDelegationsInformation(id, pageNumber: number = 0): Observable {\r\n const url = BERRY.hostName + \"api/UserApi/GetUserDelegationsInformation\";\r\n let params = new HttpParams();\r\n params = params.set(\"userId\", id);\r\n params = params.set(\"async\", \"false\");\r\n params = params.set(\"pageNumber\", pageNumber);\r\n params = params.set(\"isLoadPersonalAndOwnershipDelegate\", pageNumber == 0);\r\n\r\n let args: RequestOptionsArgs = { url: url, params: params };\r\n\r\n return this.http\r\n .get(url, args)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCustomRecipients(txtSearch, id) {\r\n const url = BERRY.hostName + \"api/UserApi/CustomRecipientsAutoComplete\";\r\n const params = {\r\n userId: id,\r\n txtSearch: txtSearch\r\n };\r\n const body = JSON.stringify(params);\r\n const headers = new Headers({ \"Content-Type\": \"application/json\" });\r\n const options = new RequestOptions({ headers: headers, body: body });\r\n\r\n return this.http.post(url, body, options).pipe(map(this.extractData));\r\n }\r\n\r\n submitChanges(value: any) {\r\n const url = BERRY.hostName + \"api/UserApi/UserRole\";\r\n const headers = new Headers({ \"Content-Type\": \"application/json\" });\r\n const options = new RequestOptions({ headers: headers });\r\n return this.http.post(url, value, options).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n addCustomRecipient(userId, addedUserId, addedUserName) {\r\n const url = BERRY.hostName + \"api/UserApi/AddCustomRecipient\";\r\n const params = {\r\n UserId: userId,\r\n addedUserId: addedUserId,\r\n name: addedUserName\r\n };\r\n const body = JSON.stringify(params);\r\n const headers = new Headers({ \"Content-Type\": \"application/json\" });\r\n const options = new RequestOptions({ headers: headers, body: body });\r\n\r\n return this.http.post(url, body, options).pipe(map(this.extractData));\r\n }\r\n\r\n updateUserDelegates(UserDelegate: UserDelegate) {\r\n const url = BERRY.hostName + \"api/UserApi/UserDelegate\";\r\n\r\n return this.http.post(url, UserDelegate).pipe(map(this.extractData));\r\n }\r\n\r\n savePermissions(id, userTypeID, changedValues) {\r\n const url = BERRY.hostName + \"api/UserApi/UserRole\";\r\n const params = {\r\n userId: id,\r\n userTypeId: userTypeID,\r\n changedValues: changedValues\r\n };\r\n const body = JSON.stringify(params);\r\n const headers = new Headers({ \"Content-Type\": \"application/json\" });\r\n const options = new RequestOptions({ headers: headers, body: body });\r\n\r\n return this.http.post(url, body, options).pipe(map(this.extractData));\r\n }\r\n forceSync(id) {\r\n const url = BERRY.hostName + \"api/UserApi/ForceSync\";\r\n let params = new HttpParams();\r\n params = params.set(\"id\", id);\r\n let args: RequestOptionsArgs = { url: url, params: params };\r\n return this.http\r\n .get(url, args)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n generateUserPermissionsReport(id) {\r\n\r\n const url = BERRY.hostName + \"api/UserApi/GenerateUserPermissionsReport?UserId=\" + id;\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getUserTypesPermissions(selectedUserTypeID: number) {\r\n const url = `${BERRY.hostName}api/UserApi/GetApplicationRoleGroups?id=${selectedUserTypeID}`;\r\n return this.http.get(url).pipe(map(this.extractData));\r\n }\r\n\r\n getUserTypesDocumentRoles(userTypeId: number) {\r\n const url = BERRY.hostName + \"api/UserApi/getUserTypesDocumentRoles?id=\" + userTypeId;\r\n return this.http.get(url).pipe(map(this.extractData));\r\n }\r\n getUserDocumentRoles(userId: any, selectedFolderId: any) {\r\n const url = BERRY.hostName + \"api/UserApi/GetUserDocumentRoles?userId=\" + userId + \"&folderId=\" + selectedFolderId;\r\n return this.http.get(url).pipe(map(this.extractData));\r\n }\r\n getByUserTypeDocumentRoles(userTypeId: any, selectedFolderId: any) {\r\n const url = BERRY.hostName + \"api/UserApi/GetByUserTypeDocumentRoles?userTypeId=\" + userTypeId + \"&folderId=\" + selectedFolderId;\r\n return this.http.get(url).pipe(map(this.extractData));\r\n }\r\n\r\n getUserRoles(id: any) {\r\n const url = BERRY.hostName + \"api/UserApi/GetUserRoles?id=\" + id;\r\n return this.http.get(url).pipe(map(this.extractData));\r\n }\r\n\r\n getApplicationRoleGroup() {\r\n const url = BERRY.hostName + \"api/UserApi/GetUserRolesList\";\r\n return this.http.get(url).pipe(map(this.extractData));\r\n }\r\n getDocumentApplicationRoleGroup() {\r\n const url = BERRY.hostName + \"api/UserApi/GetDocumentUserRolesList\";\r\n return this.http.get(url).pipe(map(this.extractData));\r\n }\r\n //edited\r\n getDocumentsPermittedUserAndUserType(params): Observable {\r\n var url = BERRY.hostName + \"api/UserApi/getDocumentsPermittedUserAndUserType\";\r\n return this.http.post(url, params);\r\n }\r\n\r\n getUserTypes() {\r\n const url = BERRY.hostName + \"api/UserApi/loUserTypes\";\r\n return this.http.get(url).pipe(map(this.extractData));\r\n }\r\n\r\n CustomRecipientsAutoComplete(userId: any) {\r\n const params = {\r\n userId: userId\r\n };\r\n const url =\r\n BERRY.hostName +\r\n \"api/UserApi/CustomRecipientsAutoComplete?userId=\" +\r\n userId;\r\n return this.http.post(url, params).pipe(map(this.extractData));\r\n }\r\n\r\n\r\n\r\n GetAllRecipientsForUser(id: any) {\r\n const url = BERRY.hostName + \"api/UserApi/GetAllRecipientsForUser?id=\" + id;\r\n return this.http.get(url).pipe(map(this.extractData));\r\n }\r\n\r\n\r\n SaveSingleRecipientsForUser(id: any, recipientUserId: any) {\r\n const url =\r\n BERRY.hostName +\r\n \"api/UserApi/SaveSingleRecipientsForUser?id=\" +\r\n id +\r\n \"&recipientUserId=\" +\r\n recipientUserId;\r\n return this.http.post(url, null).pipe(map(this.extractData));\r\n }\r\n\r\n SaveSingleRecipientEntityForUser(id: any, recipientEntityId: any) {\r\n const url =\r\n BERRY.hostName +\r\n \"api/UserApi/SaveSingleRecipientEntityForUser?id=\" +\r\n id +\r\n \"&recipientEntityId=\" +\r\n recipientEntityId;\r\n return this.http.post(url, null).pipe(map(this.extractData));\r\n }\r\n\r\n DeleteSingleRecipientsForUser(id: any, CustomRecipientUserId: any) {\r\n const url =\r\n BERRY.hostName +\r\n \"api/UserApi/DeleteSingleRecipientsForUser?id=\" +\r\n id +\r\n \"&CustomRecipientUserId=\" +\r\n CustomRecipientUserId;\r\n return this.http.post(url, null).pipe(map(this.extractData));\r\n }\r\n\r\n DeleteSingleRecipientEntityForUser(id: any, CustomRecipientEntityId: any) {\r\n const url =\r\n BERRY.hostName +\r\n \"api/UserApi/DeleteSingleRecipientEntityForUser?id=\" +\r\n id +\r\n \"&CustomRecipientEntityId=\" +\r\n CustomRecipientEntityId;\r\n return this.http.post(url, null).pipe(map(this.extractData));\r\n }\r\n\r\n saveEmployeeCode(id, employeeCode) {\r\n const params = {\r\n UserId: id,\r\n EmployeeCode: employeeCode\r\n };\r\n const url =\r\n BERRY.hostName +\r\n \"api/UserApi/saveEmployeeCode?UserId=\" +\r\n id +\r\n \"&EmployeeCode=\" +\r\n employeeCode;\r\n return this.http.post(url, params).pipe(map(this.extractData));\r\n }\r\n\r\n GetuserTypes(): Observable {\r\n return this.http.get(BERRY.hostName + \"Admin/Users/userTypes\").pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n GetIndividualByUserId(userId: string) {\r\n const url =\r\n BERRY.hostName +\r\n \"api/contacts/individuals/getindividualbyuserid/\" +\r\n userId;\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n IsExternalUser(userId: any): Observable {\r\n const url = BERRY.hostName + \"api/UserApi/IsExternalUser?userId=\" + userId;\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n GetScheduleIndividualByUserId(userId: string) {\r\n const url =\r\n BERRY.hostName +\r\n \"api/contacts/individuals/GetScheduleIndividualByUserId/\" +\r\n userId;\r\n return this.http.get(url).pipe(\r\n map(res => res.json()),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getUsersUnderUserType(params): Observable> {\r\n let url = BERRY.hostName + `api/UserApi/GetUsersUnderUserType`;\r\n return this.http.post(url, params).pipe(map(this.extractData));\r\n }\r\n\r\n isUserInOtherGroup(userId): Observable {\r\n const url = BERRY.hostName + \"api/UserApi/IsUserInOtherGroup?userId=\" + userId;\r\n return this.http.get(url).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n\r\n ChangeUserTypeForUser(userId: any, userTypeID: any, code: any) {\r\n let params = {\r\n UserId: userId,\r\n UserTypeId: userTypeID,\r\n Code: code\r\n };\r\n const url = BERRY.hostName + \"api/UserApi/AddUserToUserType\";\r\n return this.http.post(url, params).pipe(map(this.extractData));\r\n }\r\n\r\n getAuthenticatedAccessesUserIds() {\r\n const url =\r\n BERRY.hostName +\r\n \"api/contacts/AuthenticationAccess/getAuthenticatedAccessesUserIds\"\r\n return this.http.get(url).pipe(\r\n map(res => res.json()),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n updateUserPassword(id: any, password: any) {\r\n const params = {\r\n UserId: id,\r\n Password: password\r\n };\r\n const url =\r\n BERRY.hostName +\r\n \"api/UserApi/UpdateUserPassword?UserId=\" +\r\n id +\r\n \"&Password=\" +\r\n password;\r\n return this.http.post(url, params).pipe(map(this.extractData));\r\n }\r\n\r\n getAllBranches() {\r\n const url = `${BERRY.hostName}api/DepartmentApi/GetAllBranches`;\r\n return this.http.get(url).pipe(map(this.extractData));\r\n }\r\n\r\n updateBranchResearcherMapping(entityId: any, userId: string) {\r\n const url = `${BERRY.hostName}api/DepartmentApi/UpdateBranchResearcherMapping?userId=${userId}`;\r\n\r\n return this.http.post(url, entityId).pipe(map(this.extractData));\r\n }\r\n\r\n UpdateUserDigitalInfo(params) {\r\n\r\n const url = BERRY.hostName + \"api/UserApi/UpdateUserDigitalInfo\";\r\n\r\n return this.http.post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n sendEmailConfirmation(userId: string) {\r\n let url = BERRY.hostName + `api/internalapis/account/send-confirmation-email`;\r\n return this.http.post(url, { UserId: userId }).pipe(map(this.extractData));\r\n }\r\n\r\n baseURL = BERRY.hostName + \"api/AppModulesApi\";\r\n public getUserAppModules(userId): Observable {\r\n return this.http\r\n .get(this.baseURL + \"/get-user-appmodules?userId=\" + userId)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public getLandingPage(userId): Observable {\r\n return this.http\r\n .get(this.baseURL + \"/getLandingPage?userId=\" + userId)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { ReportFilter } from \"./ReportFilter\";\r\nimport { IReport } from \"./SearchSetting.component\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { ProgressStatuses, SearchFilterDate, SearchFilterOrderByTypes, SearchFilterSomeone, TextSearchTypeEnum, UrgencyType } from \"./enum/TextSearchTypeEnum\";\r\nimport { ReportSettingType } from \"../manage/report/report-settings-cmp\";\r\n\r\nexport enum StuckByEnum {\r\n none = 0,\r\n AdministrativeCommunicationsOffice = 1,\r\n PresidentOffice = 2,\r\n Other = 3\r\n}\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var jQuery: any;\r\n\r\n@Injectable()\r\nexport class SharedReportsservice extends BaseService {\r\n constructor(public http: HttpInterceptor) {\r\n super(http);\r\n }\r\n ProgressStatus = ProgressStatuses;\r\n isSubscribed: boolean = true;\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n stuckByType: StuckByEnum[] = [StuckByEnum.none];\r\n\r\n public ReportFilters: ReportFilter = {\r\n UrgencyIds: [],\r\n PageSize: BERRY.PageSize,\r\n SelectedPage: 1,\r\n reportId: 0,\r\n IsImportant: null,\r\n OnlyLate: false,\r\n CreateDate: {\r\n Range: 7,\r\n Start: null,\r\n End: null\r\n },\r\n FinalActionDate: {\r\n Range: -2,\r\n Start: null,\r\n End: null\r\n },\r\n FinishDate: {\r\n Range: -2,\r\n Start: null,\r\n End: null\r\n },\r\n ExternalContact: null,\r\n ExternalContactName: null,\r\n InternalEntityId: null,\r\n UserEntity: null,\r\n UserEntityName: null,\r\n SomeoneId: null,\r\n SomeoneName: null,\r\n AsCopy: true,\r\n AsOriginal: true,\r\n Properities: [],\r\n OnlyParent: false,\r\n Categories: [],\r\n StuckBy: this.stuckByType,\r\n Consultants: [] = [],\r\n Entities: [] = [],\r\n ActionType: [],\r\n CorrespondenceYear: 0,\r\n Today: false,\r\n Urgent: UrgencyType,\r\n CorrespondenceId: null,\r\n isPrivate: false,\r\n IsSettle: false,\r\n TargetEntityType: \"\",\r\n TargetEntityId: \"\",\r\n PrinceTotalDashboard: false,\r\n TextSearch: \"\",\r\n CorrespondenceNumber: \"\",\r\n ReferralStatus: true,\r\n CorrespondenceStatus: null,\r\n ExportDest: null,\r\n CorrespondenceTypeIds: [] = [],\r\n CorrespondenceTypeId:null,\r\n ConfidentialityId : null,\r\n userHasCorrespondences: true,\r\n UserIds: [] = [],\r\n ReportType: ReportSettingType.ForwardingDepartments,\r\n CorrespondenceCategoryIds: [] = [],\r\n ConfidentialityIds: [] = [],\r\n };\r\n\r\n public ReportSettings = {\r\n RecordsPerPage: 30\r\n };\r\n public ReportData = {\r\n Entities: [],\r\n PageIndex: 1,\r\n TotalRecordsCount: 0,\r\n PagesCount: 0,\r\n FirstSearch: true,\r\n OtherData: null,\r\n ExportFilter: {}\r\n };\r\n\r\n public IsBusy = false;\r\n public ReportDisplayDetails = {\r\n DatePeriod: null,\r\n ExternalContactName: null,\r\n InternalEntityName: null\r\n };\r\n\r\n public PrepareAllParameters() {\r\n var allParameters: IReport = {\r\n TextSearch: \"\", //TODO: linking header txtsearch $rootScope.txtSearch,\r\n TextSearchType: TextSearchTypeEnum.CorrContains,\r\n CorrespondenceId: null,\r\n CorrespondenceCategoryIds: null,\r\n isPrivate: false,\r\n IsImportant: null,\r\n UrgencyIds: [],\r\n ProgressStatuses: [],\r\n Someone: SearchFilterSomeone.CreatedIt,\r\n SomeoneId: null,\r\n SomeoneName: null,\r\n InternalEntityId: null,\r\n InternalEntityName: null,\r\n ExternalContactId: null,\r\n ExternalCorrNumber: null,\r\n FilterDateType: SearchFilterDate.SentDate,\r\n FromDate: null,\r\n ToDate: null,\r\n CorrespondenceClassificationIds: [],\r\n SearchInDocumentContent: false,\r\n OrderBy: SearchFilterOrderByTypes.DateDesc,\r\n SelectedPage: this.ReportData.PageIndex,\r\n PageSize: 30,\r\n SearchInFirstForward: true,\r\n SearchInAllForwards: false,\r\n asOriginal: true,\r\n asCopy: true,\r\n StuckBy: this.stuckByType,\r\n Consultants: [],\r\n Entities: [],\r\n ActionType: [],\r\n OnlyParent: false,\r\n CorrespondenceYear: 0,\r\n Today: false,\r\n Urgent: null,\r\n OnlyLate: false,\r\n OnlyMyInbox: false,\r\n IsSettle: false,\r\n CorrespondenceNumber: \"\",\r\n CorrespondenceStatus: null,\r\n ExportDest: null,\r\n ConfidentialityId:null,\r\n UserTimeZone: new Date().getTimezoneOffset(),\r\n CorrespondenceTypeIds: this.ReportFilters.CorrespondenceTypeIds,\r\n reportId: 0,\r\n UserHasCorrespondences: this.ReportFilters.userHasCorrespondences,\r\n ConfidentialityIds:this.ReportFilters.ConfidentialityIds,\r\n UserIds: [],\r\n ReportType: ReportSettingType.ForwardingDepartments\r\n };\r\n jQuery.extend(allParameters, this.PrepareMainParameters());\r\n jQuery.extend(allParameters, this.PrepareDatesParameters());\r\n jQuery.extend(allParameters, this.PrepareProperitiesParameters());\r\n return allParameters;\r\n }\r\n public PrepareProperitiesParameters() {\r\n var prms = {\r\n UrgencyIds: [],\r\n ConfidentialityIds: [],\r\n ProgressStatuses: [],\r\n IsImportant: null,\r\n OnlyLate: false\r\n };\r\n\r\n var prefixs = {\r\n Urgency: \"Urgency_\",\r\n Confidentialities: \"Confidentiality_\",\r\n Important: \"Important_\",\r\n ProgressStatus: \"ProgressStatus_\"\r\n };\r\n\r\n var confidentialityValuesCounter = 0;\r\n var urgencyValuesCounter = 0;\r\n var importantValuesCounter = 0;\r\n\r\n for (var i = 0; i < this.ReportFilters.Properities.length; i++) {\r\n var prop = this.ReportFilters.Properities[i];\r\n if (prop.startsWith(prefixs.Urgency) === true) {\r\n prms.UrgencyIds.push(parseInt(prop.replace(prefixs.Urgency, \"\")));\r\n urgencyValuesCounter++;\r\n }\r\n if (prop.startsWith(prefixs.Confidentialities) === true) {\r\n prms.ConfidentialityIds.push(\r\n parseInt(prop.replace(prefixs.Confidentialities, \"\"))\r\n );\r\n confidentialityValuesCounter++;\r\n }\r\n\r\n if (prop.startsWith(prefixs.Important) === true) {\r\n prms.IsImportant = \"true\" == prop.replace(prefixs.Important, \"\");\r\n importantValuesCounter++;\r\n }\r\n if (prop.startsWith(prefixs.ProgressStatus) === true) {\r\n prms.ProgressStatuses.push(this.ProgressStatus[prop.replace(prefixs.ProgressStatus, \"\")]);\r\n }\r\n }\r\n\r\n if (this.ReportFilters.Properities.indexOf('ProgressStatus_Late') != -1)\r\n prms.OnlyLate = true;\r\n\r\n if (importantValuesCounter == 2) {\r\n // Both values selected (which means, remove filter)\r\n prms.IsImportant = null;\r\n }\r\n if (urgencyValuesCounter == 3) {\r\n prms.UrgencyIds = [];\r\n }\r\n if (confidentialityValuesCounter == 4) {\r\n prms.ConfidentialityIds = [];\r\n }\r\n if (prms.ConfidentialityIds.length ==0 && this.ReportFilters.ConfidentialityIds.length>0)\r\n prms.ConfidentialityIds=this.ReportFilters.ConfidentialityIds\r\n return prms;\r\n }\r\n public PrepareDatesParameters() {\r\n var rf = this.ReportFilters;\r\n var params = {};\r\n\r\n if (!rf.CreateDate.Start) {\r\n params[\"FromDate\"] = BERRY.loc.common.NotSpecifiedt;\r\n } else {\r\n params[\"FromDate\"] = rf.CreateDate.Start;\r\n }\r\n\r\n if (!rf.CreateDate.End) {\r\n params[\"ToDate\"] = BERRY.loc.common.NotSpecifiedt;\r\n } else {\r\n params[\"ToDate\"] = rf.CreateDate.End;\r\n }\r\n params[\"DatePeriod\"] = params[\"ToDate\"] + \" - \" + params[\"FromDate\"];\r\n\r\n if (\r\n rf.FinalActionDate.Range > 0 ||\r\n rf.FinalActionDate.Range == -1 ||\r\n rf.FinalActionDate.Range == -2\r\n ) {\r\n if (!rf.FinalActionDate.Start) {\r\n params[\"ActionDeadLineFromDate\"] = BERRY.loc.common.NotSpecifiedt;\r\n } else {\r\n params[\"ActionDeadLineFromDate\"] = rf.FinalActionDate.Start;\r\n }\r\n\r\n if (!rf.FinalActionDate.End) {\r\n params[\"ActionDeadLineToDate\"] = BERRY.loc.common.NotSpecifiedt;\r\n } else {\r\n params[\"ActionDeadLineToDate\"] = rf.FinalActionDate.End;\r\n }\r\n if (rf.FinalActionDate.Range > 0)\r\n params[\"ActionDeadLineDatePeriodID\"] = rf.FinalActionDate.Range;\r\n } else {\r\n params[\"ActionDeadLineDatePeriodID\"] = rf.FinalActionDate.Range;\r\n }\r\n if (\r\n params[\"ActionDeadLineToDate\"] === undefined ||\r\n params[\"ActionDeadLineFromDate\"] === undefined\r\n ) {\r\n params[\"ActionDeadLineDatePeriod\"] =\r\n params[\"ActionDeadLineToDate\"] +\r\n \" - \" +\r\n params[\"ActionDeadLineFromDate\"];\r\n }\r\n\r\n if (\r\n rf.FinishDate.Range > 0 ||\r\n rf.FinishDate.Range == -1 ||\r\n rf.FinishDate.Range == -2\r\n ) {\r\n if (!rf.FinishDate.Start) {\r\n params[\"CorrDeadLineFromDate\"] = BERRY.loc.common.NotSpecifiedt;\r\n } else {\r\n params[\"CorrDeadLineFromDate\"] = rf.FinishDate.Start;\r\n }\r\n\r\n if (!rf.FinishDate.End) {\r\n params[\"CorrDeadLineToDate\"] = BERRY.loc.common.NotSpecifiedt;\r\n } else {\r\n params[\"CorrDeadLineToDate\"] = rf.FinishDate.End;\r\n }\r\n if (rf.FinishDate.Range > 0)\r\n params[\"CorrDeadLineDatePeriodID\"] = rf.FinishDate.Range;\r\n\r\n } else {\r\n params[\"CorrDeadLineDatePeriodID\"] = rf.FinishDate.Range;\r\n }\r\n\r\n if (\r\n params[\"CorrDeadLineToDate\"] === undefined ||\r\n params[\"CorrDeadLineFromDate\"] === undefined\r\n ) {\r\n params[\"CorrDeadLineDatePeriod\"] =\r\n params[\"CorrDeadLineToDate\"] + \" - \" + params[\"CorrDeadLineFromDate\"];\r\n }\r\n\r\n return params;\r\n }\r\n\r\n public PrepareMainParameters(): any {\r\n var rf = this.ReportFilters;\r\n var params: IReport = {\r\n TextSearch: \"\", //TODO: linking header txtsearch $rootScope.txtSearch,\r\n TextSearchType: TextSearchTypeEnum.CorrContains,\r\n CorrespondenceId: null,\r\n CorrespondenceCategoryIds: null,\r\n isPrivate: false,\r\n IsImportant: null,\r\n UrgencyIds: [],\r\n ConfidentialityIds: [],\r\n ConfidentialityId:null,\r\n ProgressStatuses: [],\r\n Someone: SearchFilterSomeone.CreatedIt,\r\n SomeoneId: null,\r\n SomeoneName: null,\r\n InternalEntityId: null,\r\n InternalEntityName: null,\r\n ExternalContactId: null,\r\n ExternalCorrNumber: null,\r\n FilterDateType: SearchFilterDate.SentDate,\r\n FromDate: null,\r\n ToDate: null,\r\n CorrespondenceClassificationIds: [],\r\n SearchInDocumentContent: false,\r\n OrderBy: SearchFilterOrderByTypes.DateDesc,\r\n SelectedPage: this.ReportData.PageIndex,\r\n PageSize: 30,\r\n SearchInFirstForward: true,\r\n SearchInAllForwards: false,\r\n asOriginal: true,\r\n asCopy: true,\r\n StuckBy: this.stuckByType,\r\n Consultants: [],\r\n ActionType: [],\r\n OnlyParent: false,\r\n CorrespondenceYear: 0,\r\n Today: false,\r\n Urgent: null,\r\n OnlyLate: false,\r\n OnlyMyInbox: false,\r\n IsSettle: false,\r\n CorrespondenceNumber: null,\r\n ReferralStatus: true,\r\n CorrespondenceStatus: null,\r\n ExportDest: null,\r\n UserTimeZone: new Date().getTimezoneOffset(),\r\n CorrespondenceTypeIds: [],\r\n reportId: 0,\r\n UserHasCorrespondences: false,\r\n UserIds: [],\r\n ReportType: ReportSettingType.ForwardingDepartments\r\n };\r\n\r\n params.TextSearch = rf.TextSearch;\r\n params.ReferralStatus = rf.ReferralStatus;\r\n params.CorrespondenceStatus = rf.CorrespondenceStatus;\r\n params.ExportDest = rf.ExportDest;\r\n params.CorrespondenceNumber = rf.CorrespondenceNumber;\r\n\r\n params.SearchInFirstForward = rf.SearchInFirstForward;\r\n if (rf.UserEntity) {\r\n params[\"InternalEntityId\"] = rf.UserEntity.dbid;\r\n //params[\"InternalEntityName\"] = rf.UserEntity.number + ' ' + rf.UserEntity.value;\r\n params[\"InternalEntityName\"] = rf.UserEntity.value;\r\n this.ReportDisplayDetails.InternalEntityName =\r\n rf.UserEntity.number + \" \" + rf.UserEntity.value;\r\n } else {\r\n params[\"InternalEntityName\"] = null;\r\n params.SearchInFirstForward = true;\r\n this.ReportDisplayDetails.InternalEntityName = null;\r\n }\r\n params.SearchInAllForwards = !params.SearchInFirstForward; //opp\r\n\r\n if (rf.ExternalContact) {\r\n params[\"ExternalContactId\"] = rf.ExternalContact.dbid;\r\n //params[\"ExternalContactName\"] = rf.ExternalContact.number + ' ' + rf.ExternalContact.value;\r\n params[\"ExternalContactName\"] = rf.ExternalContact.value;\r\n this.ReportDisplayDetails.ExternalContactName =\r\n rf.ExternalContact.number + \" \" + rf.ExternalContact.value;\r\n } else {\r\n params[\"ExternalContactName\"] = null;\r\n this.ReportDisplayDetails.ExternalContactName = null;\r\n }\r\n\r\n if (rf.SomeoneId) {\r\n params[\"SomeoneId\"] = rf.SomeoneId;\r\n }\r\n\r\n if (rf.Categories) rf.CorrespondenceCategoryIds = rf.Categories;\r\n else params.CorrespondenceCategoryIds = \"\";\r\n\r\n params.asCopy = rf.AsCopy;\r\n params.asOriginal = rf.AsOriginal;\r\n params.StuckBy = rf.StuckBy;\r\n params.OnlyParent = rf.OnlyParent;\r\n params.isPrivate = rf.isPrivate;\r\n params.Consultants = rf.Consultants;\r\n params.ActionType = rf.ActionType;\r\n params.CorrespondenceYear = rf.CorrespondenceYear;\r\n params.Today = rf.Today;\r\n params.OnlyLate = rf.OnlyLate;\r\n params.CorrespondenceId = rf.CorrespondenceId;\r\n params.IsSettle = rf.IsSettle;\r\n params.UserIds = rf.UserIds;\r\n params.Entities = rf.Entities;\r\n params.ReportType = rf.ReportType;\r\n params.ConfidentialityIds = rf.ConfidentialityIds;\r\n params.CorrespondenceCategoryIds = rf.CorrespondenceCategoryIds;\r\n params.UrgencyIds = rf.UrgencyIds;\r\n params.CorrespondenceTypeIds = rf.CorrespondenceTypeIds;\r\n\r\n return params;\r\n }\r\n}\r\n","export enum TextSearchTypeEnum {\r\n CorrContains = 0,\r\n CorrStartsWith = 1,\r\n CorrTextEqual = 2,\r\n CorrTextIsNumber = 3,\r\n CorrTextIsBarcode = 4,\r\n CorrExactText = 5\r\n}\r\nexport enum PeriodEnum {\r\n Today = 1,\r\n Week = 7 \r\n}\r\n\r\nexport enum SearchFilterSomeone {\r\n CreatedIt = 0,\r\n MovedTo = 1,\r\n CurrentlyWith = 2,\r\n DidActionOnIt = 3,\r\n OwnedBy = 4,\r\n CurrentlyWithAndOwnedBy = 5,\r\n None = 6,\r\n ForwardedFrom = 7,\r\n // الجهة المعدة للخطاب\r\n PreparedEntityToSpeech = 8\r\n}\r\nexport enum ProgressStatuses {\r\n NotStartedYet,\r\n InProgress,\r\n Finished,\r\n ClosedArchived,\r\n Stucked,\r\n Completed,\r\n Late\r\n}\r\n\r\nexport enum SearchFilterDate {\r\n CreatedDate = 0,\r\n SentDate = 1,\r\n DateDone = 2,\r\n DeadlineDate = 3,\r\n ActionDeadlineDate = 4\r\n}\r\n\r\n\r\nexport enum SearchFilterOrderByTypes {\r\n DateDesc,\r\n DateAsc,\r\n UrgentFirst,\r\n DeadlineDesc,\r\n DeadlineAsc,\r\n LastActionDesc,\r\n Relevance,\r\n FollowUpDate\r\n}\r\n\r\nexport enum UrgencyType {\r\n NotUrgent = 0,\r\n Urgent = 1,\r\n VeryUrgent = 2,\r\n NormalSpecific = 3,\r\n Immediately = 4\r\n}","import { NgModule } from '@angular/core';\r\nimport { SharedModule } from 'src/app/shared/shared.module';\r\nimport { CommitteesGoalsAddModifyComponent } from './components/details/Goals/committees-goals-add-modify-cmp';\r\nimport { CommitteesGoalsSVC } from './components/details/Goals/committees-goals-svc';\r\n\r\nconst components = [\r\n CommitteesGoalsAddModifyComponent\r\n];\r\n@NgModule({\r\n imports: [\r\n SharedModule\r\n ],\r\n declarations: components,\r\n exports: components,\r\n providers: [\r\n CommitteesGoalsSVC\r\n ]\r\n})\r\nexport class CommitteesGoalsModule { }","export class CommitteeGoalDto {\r\n constructor() {\r\n this.Id = 0;\r\n this.Text = null;\r\n this.CompletionPercentage = 0;\r\n this.CommitteeId = 0;\r\n this.IsDeleted = false;\r\n }\r\n Id: number;\r\n Text: string;\r\n CompletionPercentage: number;\r\n CommitteeId: number;\r\n CreatedDate: Date;\r\n IsDeleted: boolean;\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 {{goal.Text}}\r\n
    \r\n \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n","import { Component, Input } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../../../../_common/models/IGlobalSettings\";\r\nimport { BaseCmp } from \"src/app/_common/components/BaseComponent\";\r\nimport { CommitteesSvc } from \"../../../services/committees-svc\";\r\nimport { CommitteeGoalDto } from \"./committee-goal-dto\";\r\nimport { ConfirmationBoxOptions, ConfirmationBoxResult, ConfirmationBoxType, DialogManager } from \"../../../../_common/services/dialog-manager\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { CommitteesGoalsSVC } from \"./committees-goals-svc\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { generalSettingsSvc } from \"src/app/berry/correspondences/manage/generalSettings/general-settings-svc\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Component({\r\n selector: \"committees-goals-add-modify-cmp\",\r\n templateUrl: \"./committees-goals-add-modify-ng.html\"\r\n})\r\nexport class CommitteesGoalsAddModifyComponent extends BaseCmp {\r\n\r\n isSubscribed: boolean = true;\r\n isBusy: boolean = false;\r\n newGoalText: string = null;\r\n committeeGoalsList: CommitteeGoalDto[] = [];\r\n committeeGoal: CommitteeGoalDto = null;\r\n _isCommitteeGoalsOptional: boolean = false;\r\n\r\n @Input() isAdministrationPage: boolean = false;\r\n @Input() isEditCommitteeMode: boolean = false; \r\n\r\n get disableAdd() {\r\n return !this.newGoalText || !this.newGoalText.trim();\r\n }\r\n\r\n get canManageCommitteesGoals() {\r\n if (this.committeesSvc.AllCommitteeHandlers && this.committeesSvc.AllCommitteeHandlers.CommitteeGeneralHandler)\r\n return this.committeesSvc.AllCommitteeHandlers.CommitteeGeneralHandler.CanManageCommitteesGoals;\r\n return this.isAdministrationPage;\r\n }\r\n\r\n get isCommitteeGoalsOptional(){\r\n return this._isCommitteeGoalsOptional;\r\n }\r\n\r\n constructor(\r\n public committeesSvc: CommitteesSvc,\r\n public toastr: ToastrService,\r\n public dialogs: DialogManager,\r\n public committeesGoalsSVC: CommitteesGoalsSVC,\r\n private generalSettingSvc: generalSettingsSvc,\r\n ) {\r\n super();\r\n\r\n this.generalSettingSvc\r\n .GetValue('CommitteesSetting', 'IsCommitteeGoalsOptional', 'false')\r\n .subscribe(data => {\r\n if(data == 'true')\r\n this._isCommitteeGoalsOptional = true;\r\n });\r\n }\r\n\r\n ngSuperOnInit() {\r\n }\r\n\r\n ngSuperAfterViewInit() {\r\n }\r\n\r\n GetAllGoals() {\r\n let me = this;\r\n me.isBusy = true;\r\n if (me.committeesSvc.CommitteeId) {\r\n me.committeesGoalsSVC.GetAllGoals(me.committeesSvc.CommitteeId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data) {\r\n me.committeeGoalsList = data;\r\n me.isBusy = false;\r\n }\r\n });\r\n }\r\n }\r\n\r\n AddNewGoalRecord() {\r\n let me = this;\r\n\r\n if (!!me.newGoalText && me.newGoalText.trim().length > 300) {\r\n return;\r\n }\r\n\r\n me.committeeGoal = new CommitteeGoalDto();\r\n me.committeeGoal.Text = me.newGoalText;\r\n me.committeeGoal.CompletionPercentage = 0;\r\n me.committeeGoal.CommitteeId = me.committeesSvc.CommitteeId;\r\n\r\n me.committeeGoalsList.push(me.committeeGoal);\r\n\r\n me.newGoalText = null;\r\n }\r\n\r\n DeleteGoalRecord(goalIndex) {\r\n let me = this;\r\n me.dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Warning,\r\n this.getText('DeleteGoalConfirmationMsg', 'CommitteesGoals'),\r\n BERRY.loc.WorkFlow.Worning,\r\n BERRY.loc.WorkFlow.Yes,\r\n BERRY.loc.WorkFlow.No\r\n );\r\n dialog.show(options, result => {\r\n if (result == ConfirmationBoxResult.Yes) {\r\n if (me.committeeGoalsList.length > 0 && me.committeeGoalsList[goalIndex]) {\r\n if (me.committeeGoalsList[goalIndex].Id != 0) {\r\n me.committeeGoalsList[goalIndex].IsDeleted = true;\r\n }\r\n else {\r\n me.committeeGoalsList.splice(goalIndex, 1);\r\n }\r\n }\r\n\r\n }\r\n });\r\n }\r\n });\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { IGlobalSettings } from \"../../../../_common/models/IGlobalSettings\";\r\nimport { HttpInterceptor } from \"../../../../_common/services/http-interceptor\";\r\nimport { CommitteeGoalDto } from \"./committee-goal-dto\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class CommitteesGoalsSVC {\r\n\r\n readonly baseURL = BERRY.hostName + \"api/CommitteeGoalsApi/\";\r\n\r\n constructor(public http: HttpInterceptor) { }\r\n\r\n GetAllGoals(committeeId: number): Observable {\r\n const url = `${this.baseURL}GetAll?committeeId=${committeeId}`\r\n return this.http.get(url);\r\n }\r\n\r\n GetOverviewTabGoals(committeeId: number): Observable {\r\n const url = `${this.baseURL}GetAllGoals?committeeId=${committeeId}`\r\n return this.http.get(url);\r\n }\r\n\r\n AddGoals(committeeGoalDtos: CommitteeGoalDto[]): Observable {\r\n const url = `${this.baseURL}Add`\r\n return this.http.post(url, committeeGoalDtos);\r\n }\r\n\r\n UpdateGoals(committeeGoalDto: CommitteeGoalDto): Observable {\r\n const url = `${this.baseURL}Update`\r\n return this.http.post(url, committeeGoalDto);\r\n }\r\n\r\n DeleteGoals(committeeGoalId: number): Observable {\r\n const url = `${this.baseURL}Delete?committeeGoalId=${committeeGoalId}`\r\n return this.http.post(url, committeeGoalId);\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 {{committeeMember.CommitteeRoleName}}\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 {{iitem.DescriptionDetailsValue}}\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, ViewChild } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { ModalDirective } from \"ngx-bootstrap/modal\";\r\nimport {\r\n DialogManager,\r\n ConfirmationBoxOptions,\r\n ConfirmationBoxType,\r\n ConfirmationBoxResult\r\n} from \"src/app/_common/services/dialog-manager\";\r\nimport { BaseCmp } from \"../../../../../_common/components/BaseComponent\";\r\nimport { CommitteesSvc } from \"../../../../services/committees-svc\";\r\nimport { CommitteeMemberPermissionsDto } from \"../../../../models/committee-member-dto\";\r\nimport { IPopup, PopupComponent } from \"../../../../../_common/components/popup/popup-component\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n@Component({\r\n selector: 'edit-member-permissions',\r\n //templateUrl: './edit-member-permissions.html',\r\n templateUrl: './edit-member-permissions.design.html',\r\n})\r\n\r\nexport class EditMemberPermissionsComponent extends BaseCmp {\r\n editMemberPopupOption: IPopup = {\r\n title: BERRY.getText('EditPermissionOfCommitteeMember', 'CommitteesModule'),\r\n actions: [\r\n {\r\n text: BERRY.getText('Cancel', 'GeneralSchedule'),\r\n type: 'close'\r\n },\r\n {\r\n text: BERRY.getText('Save', 'General-Setting'),\r\n type: 'submit',\r\n event: () => this.saveMemberPermissions(),\r\n \r\n }\r\n ],\r\n dirtyFormCheck: () => true,\r\n mode: 'small',\r\n height: 1000\r\n }\r\n\r\n collapse: { [key: number]: boolean } = {};\r\n\r\n @ViewChild(\"editMemberPopup\")\r\n editMemberPopup: PopupComponent;\r\n\r\n @ViewChild(\"EditMemberPermissions\")\r\n EditMemberPermissions: ModalDirective;\r\n\r\n committeeMember: CommitteeMemberPermission = new CommitteeMemberPermission();\r\n isSubscribed: boolean = true;\r\n Permssions: any[];\r\n committeeRoles: any[];\r\n rolePermissions: RolePermissionDto[] = [];\r\n memberPermissions: RolePermissionDto[] = [];\r\n allPermissions: RolePermissionDto[] = [];\r\n NewRole: RolePermissionDto = new RolePermissionDto();\r\n CommitteeRoleId: number = 0;\r\n searchPermissionsKeyword = \"\";\r\n selectedRole: CommitteeRoleDto = new CommitteeRoleDto();\r\n\r\n constructor(\r\n public svc: CommitteesSvc,\r\n public toastr: ToastrService,\r\n public dialogs: DialogManager,\r\n\r\n ) {\r\n super()\r\n }\r\n\r\n committeeManager: string = \"\";\r\n\r\n ngSuperOnInit() {\r\n const me = this;\r\n\r\n me.memberPermissions = [];\r\n me.getCommitteeRoles();\r\n me.getCommitteePermission();\r\n me.prepareDefaultRolesForCommitteeMember();\r\n\r\n if (me.svc.members.length > 0) {\r\n if (me.svc.members.find(s => s.IsPresident == true) != null)\r\n me.committeeManager = me.svc.members.find(s => s.IsPresident == true).UserId;\r\n }\r\n }\r\n\r\n get viewManageApplication() {\r\n return BERRY.User.Permissions.ViewManageApplication;\r\n }\r\n\r\n get ifCurrentUSerIfManagerOrPresident() {\r\n const me = this;\r\n\r\n if (me.viewManageApplication)\r\n return true;\r\n\r\n if (me.committeeManager != \"\") {\r\n if (me.committeeManager == BERRY.User.UserId)\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n ngSuperAfterViewInit() {\r\n }\r\n isAdminSide: boolean = false;\r\n committeeId: any = null;\r\n openPopup(isAdminSide: boolean = false, committeeId = null) {\r\n this.isAdminSide = isAdminSide;\r\n this.committeeId = committeeId;\r\n this.defaultRolesChecked = false;\r\n this.editMemberPopup.open()\r\n }\r\n\r\n getCommitteePermission() {\r\n this.svc\r\n .getCommitteePermissions()\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(data => {\r\n this.Permssions = data;\r\n });\r\n }\r\n\r\n getCommitteeRoles() {\r\n this.svc\r\n .getCommitteeRoles()\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(data => {\r\n this.committeeRoles = data;\r\n });\r\n }\r\n\r\n\r\n\r\n\r\n saveMemberPermissions() {\r\n var me = this;\r\n if (!me.committeeMember.IsPresident) {\r\n let RolePermissionDTO: RolePermissionDto[] = [];\r\n\r\n let memberPermissionsDto: CommitteeMemberPermissionsDto = new CommitteeMemberPermissionsDto();\r\n\r\n for (let e of me.Permssions) {\r\n for (let entry of e.committeePermissions) {\r\n let item: RolePermissionDto = new RolePermissionDto();\r\n if (entry.checked) {\r\n item.PermissionsIds.push(entry.Id);\r\n RolePermissionDTO.push(item);\r\n memberPermissionsDto.permissions.push(entry.Id);\r\n\r\n }\r\n }\r\n }\r\n if (memberPermissionsDto.permissions.length > 0) {\r\n\r\n memberPermissionsDto.CommitteeMemberId = this.committeeMember.Id;\r\n me.svc\r\n .saveCommitteeMemberPermissions(memberPermissionsDto, me.isAdminSide, me.committeeId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.toastr.success(BERRY.loc.common.successMessage);\r\n me.getCommitteeRoles();\r\n me.editMemberPopup.close();\r\n }, exception => { });\r\n }\r\n else {\r\n me.editMemberPopup.close();\r\n }\r\n }\r\n else {\r\n me.toastr.warning(BERRY.getText('CanNotUpdateCommiteePresidentPermission', 'CommitteesModule'),);\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n public closeCreateModal() {\r\n this.dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Warning, \r\n BERRY.loc.CommonDbRes.ClosePopupMsg,\r\n \"\",\r\n BERRY.loc.CommonDbRes.Yes,\r\n BERRY.loc.CommonDbRes.No\r\n );\r\n dialog.show(options, result => {\r\n if (result == ConfirmationBoxResult.Yes) {\r\n this.EditMemberPermissions.hide();\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n\r\n showModifyModal(role: any): void {\r\n let me = this;\r\n me.selectedRole = role;\r\n me.getCommitteeRolePermissions(role.Id);\r\n this.editMemberPopup.open()\r\n }\r\n\r\n public getCommitteeRolePermissions(roleId) {\r\n let me = this;\r\n this.svc\r\n .getCommitteeRolePermission(roleId)\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(data => {\r\n for (let e of me.Permssions) {\r\n for (let item of e.committeePermissions) {\r\n item.checked = data.filter(x => x.CommitteePermissionId == item.Id).length > 0;\r\n if (data.filter(x => x.CommitteePermissionId == item.Id).length > 0)\r\n this.rolePermissions.push(item);\r\n }\r\n } \r\n });\r\n }\r\n\r\n public getCommitteeMemberPermissions(memberId) {\r\n let me = this;\r\n this.svc\r\n .getCommitteeMemberPermission(memberId)\r\n .pipe(takeWhile(() => this.isSubscribed))\r\n .subscribe(data => {\r\n for (let e of me.Permssions) {\r\n for (let item of e.committeePermissions) {\r\n item.checked = data.filter(x => x.CommitteePermissionId == item.Id).length > 0;\r\n if (data.filter(x => x.CommitteePermissionId == item.Id).length > 0)\r\n me.memberPermissions.push(item);\r\n }\r\n }\r\n });\r\n }\r\n\r\n public getRoleAndMemberPermissions(roleId, memberId) {\r\n this.memberPermissions = [];\r\n this.rolePermissions = [];\r\n this.getCommitteeMemberPermissions(memberId);\r\n var count = 0;\r\n setTimeout(() => {\r\n for (let e of this.Permssions) {\r\n for (let item of e.committeePermissions) {\r\n if (item.checked) {\r\n count++\r\n }\r\n }\r\n }\r\n if (count == 0) {\r\n this.getCommitteeRolePermissions(roleId);\r\n\r\n }\r\n }, 500)\r\n }\r\n\r\n \r\n isCheckAll : boolean = false;\r\n CheckAllPermissions(isSelected) {\r\n\r\n (this.getPermissions).forEach(item => {\r\n console.log(item);\r\n (item.committeePermissions).forEach(subItem => {\r\n subItem.checked = isSelected;\r\n this.isCheckAll = isSelected\r\n });\r\n });\r\n\r\n }\r\n\r\n close() {\r\n var me = this;\r\n this.dialogs.create(dialog => {\r\n if (dialog) {\r\n let options = new ConfirmationBoxOptions(\r\n ConfirmationBoxType.Warning,\r\n BERRY.loc.CommonDbRes.ClosePopupMsg,\r\n \"\",\r\n BERRY.loc.CommonDbRes.Yes,\r\n BERRY.loc.CommonDbRes.No\r\n );\r\n dialog.show(options, result => {\r\n if (result == ConfirmationBoxResult.Yes) {\r\n me.EditMemberPermissions.hide();\r\n }\r\n });\r\n }\r\n });\r\n }\r\n searchPermissions(value) {\r\n this.searchPermissionsKeyword = value;\r\n }\r\n\r\n keyDownSearchPermissions(event) {\r\n if (event.keyCode == 13) {\r\n return false;\r\n }\r\n }\r\n\r\n get getPermissions() {\r\n return this.Permssions.filter(x =>\r\n x.committeePermissions.filter(y => this.searchPermissionsKeyword.trim() == \"\" || y.Name.indexOf(this.searchPermissionsKeyword) !== -1).length > 0);\r\n }\r\n\r\n getRoles(permission) {\r\n return permission.committeePermissions.filter(x => this.searchPermissionsKeyword.trim() == \"\" || x.Name.indexOf(this.searchPermissionsKeyword) !== -1);\r\n }\r\n\r\n defaultRolesChecked: boolean = false;\r\n defaultRolesList: number[] = [];\r\n prepareDefaultRolesForCommitteeMember() {\r\n const me = this;\r\n me.defaultRolesList.push(DefaultRolesForCommitteeMember.ViewOverviewTab);\r\n me.defaultRolesList.push(DefaultRolesForCommitteeMember.ViewMembersTab);\r\n me.defaultRolesList.push(DefaultRolesForCommitteeMember.ViewAttachmentsTab);\r\n me.defaultRolesList.push(DefaultRolesForCommitteeMember.ViewTasksTab);\r\n me.defaultRolesList.push(DefaultRolesForCommitteeMember.ViewNotesTab);\r\n me.defaultRolesList.push(DefaultRolesForCommitteeMember.ViewLinkedInitiativeTab);\r\n me.defaultRolesList.push(DefaultRolesForCommitteeMember.ViewLinkedDocumentsTab);\r\n }\r\n\r\n onCheckDefaultRoles(e) {\r\n let me = this;\r\n if (e) {\r\n if (e.target.checked)\r\n {\r\n for (let p of me.Permssions) {\r\n for (let entry of p.committeePermissions) {\r\n if (me.defaultRolesList.indexOf(entry.PermissionEnum) > -1) {\r\n entry.checked = true;\r\n } else {\r\n entry.checked = false;\r\n }\r\n }\r\n }\r\n }\r\n else\r\n {\r\n for (let p of me.Permssions) {\r\n for (let entry of p.committeePermissions) {\r\n if (me.defaultRolesList.indexOf(entry.PermissionEnum) > -1) {\r\n entry.checked = false;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\nexport class PermissionDTO {\r\n Id: number;\r\n Name: string;\r\n checked: boolean;\r\n}\r\n\r\nexport class RolePermissionDto {\r\n constructor() {\r\n let me = this;\r\n me.Name = \"\";\r\n me.NameAr = \"\";\r\n me.NameEn = \"\";\r\n me.RoleId = 0;\r\n me.Id = 0;\r\n me.PermissionsIds = [];\r\n }\r\n Name: string;\r\n NameAr: string;\r\n NameEn: string;\r\n PermissionsIds: PermissionDTO[];\r\n RoleId: number = 0;\r\n Id: number = 0;\r\n}\r\n\r\n\r\nexport class CommitteeRoleDto {\r\n RoleId: number = 0;\r\n NameAr: string = \"\";\r\n NameEn: string = \"\";\r\n Id: number = 0;\r\n IsDeleted: boolean = false;\r\n permissions: string[] = [];\r\n}\r\n\r\n\r\nexport class CommitteeMemberPermission {\r\n Id: number = 0;\r\n status: boolean = false;\r\n IndividualId: number = 0;\r\n Name: string = \"\";\r\n IsPresident: boolean = false;\r\n CommitteeId: number = 0;\r\n CommitteeRoleId: number = 0;\r\n CommitteeRoleName: string = \"\";\r\n IsExternalUser: boolean = false;\r\n ExternalMember: boolean = false;\r\n UserId: string = \"\";\r\n\r\n}\r\n\r\nexport enum DefaultRolesForCommitteeMember {\r\n ViewOverviewTab = 26,\r\n ViewMembersTab = 27,\r\n ViewTasksTab = 28,\r\n ViewAttachmentsTab = 30,\r\n ViewNotesTab = 31,\r\n ViewLinkedDocumentsTab = 33,\r\n ViewLinkedInitiativeTab = 64\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 {{getText('internalMemberName', 'CommitteeModules')}}  \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 {{getText('externalMemberName', 'CommitteeModules')}}  \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
    {{getText('Name', 'CommitteesModule')}} :
    \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 {{getText('enter_valid_email', 'Contacts_js')}}\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n {{getText('RoleMemberCommittee', 'CommitteesWithCategoryReplacement') | formatString : CommitteeCategoryName}}\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
    {{getText(\"ArchiveNumber\",\"AddEditCommittee\")}}{{getText(\"ArchiveTitle\",\"AddEditCommittee\")}}{{getText(\"Type\",\"AddEditCommittee\")}}
    {{item.ArchiveNumber}}{{item.Title}}\r\n {{getText(\"Type-\"+item.Type,\"AddEditCommittee\")}}\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
    ","import { Component, Output, ViewChild, EventEmitter, ElementRef, ChangeDetectorRef } from '@angular/core';\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { ConfirmationBoxOptions, DialogManager, ConfirmationBoxType } from '../../../../../_common/services/dialog-manager';\r\nimport { IComboboxServerDatasourceOptions, IComboboxOptions } from 'src/app/_common/directives/KendoUI-wrappers/kendo-combobox';\r\nimport { CommitteeMemberDataDto } from '../../../../models/committee-member-dto';\r\nimport { CommitteesSvc } from \"../../../../services/committees-svc\";\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { FormBuilder, FormGroup, Validators } from \"@angular/forms\";\r\nimport { Router } from \"@angular/router\";\r\nimport { kendoAutoComplete } from \"src/app/_common/directives/KendoUI-wrappers/kendoAutoComplete\";\r\nimport { MessagingService } from 'src/app/_common/services/messaging-service';\r\nimport { IPopup, PopupComponent } from '../../../../../_common/components/popup/popup-component';\r\nimport { BaseCmp } from '../../../../../_common/components/BaseComponent';\r\nimport { AppModulesEnum } from '../../../../../_common/models/AppModulesEnum';\r\nimport { QuickSearchComponent } from '../../../../../Archives/Modals/QuickSearch/quickSearch';\r\nimport { EnitiyArchiveType, EntityArchiveItemDTO } from '../../../../../berry/correspondences/manage/committees-management/merge-committee-modal-cmp';\r\nimport { ContactsSearchForEnum, IContactItem, IContactsCompsOptions } from '../../../../../Contacts/comps/contacts-dtos';\r\nimport { ContactsHelpers } from 'src/app/Contacts/helpers';\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'Edit-Members',\r\n templateUrl: './edit-members.html',\r\n //templateUrl: './edit-members.design.html',\r\n styleUrls: ['./edit-members.scss'],\r\n})\r\nexport class EditMembersComponent extends BaseCmp {\r\n\r\n editMemberspopupOptions: IPopup = {\r\n title: \"\",\r\n actions: [\r\n {\r\n\r\n text: BERRY.getText('Cancel', 'GeneralSchedule'),\r\n type: \"close\",\r\n event: () => this.resetMemberInfo()\r\n },\r\n {\r\n text: BERRY.getText('Save', 'General-Setting'),\r\n type: \"submit\",\r\n event: () => this.save()\r\n }\r\n ],\r\n mode: \"small\",\r\n dirtyFormCheck: () => true,\r\n isBusy: () => this.isBusy\r\n }\r\n isBusy: boolean = false;\r\n @ViewChild(\"editMemberspopup\") editMembersPopup: PopupComponent;\r\n committeeMember: any;\r\n committeeId: any;\r\n canAddMembers: boolean;\r\n @Output(\"ChangeManager\") ChangeManager = new EventEmitter();\r\n @Output(\"AddEditMember\") AddEditMember = new EventEmitter();\r\n @ViewChild(kendoAutoComplete) public ExternalMember: kendoAutoComplete;\r\n editMode: boolean = false;\r\n committeeMemberDto: CommitteeMemberDataDto = new CommitteeMemberDataDto();\r\n User: any;\r\n isSubscribed: boolean = true;\r\n MemberForm: FormGroup;\r\n isExternal: boolean = false;\r\n userText: any;\r\n CommitteeCategoryName: string = \"\";\r\n isCommitteeOperationsOfficersTab: boolean = false;\r\n\r\n constructor(\r\n public dialog: DialogManager,\r\n public cdRef: ChangeDetectorRef,\r\n public svc: CommitteesSvc,\r\n public fb: FormBuilder,\r\n public element: ElementRef,\r\n public router: Router,\r\n public dialogs: DialogManager,\r\n public msgs: MessagingService,\r\n public _toaster: ToastrService,) {\r\n\r\n super();\r\n }\r\n\r\n ngSuperOnInit() {\r\n let me = this;\r\n me.buildForm();\r\n }\r\n ngSuperAfterViewInit() {\r\n }\r\n\r\n buildForm(): void {\r\n let me = this;\r\n me.MemberForm = me.fb.group({\r\n MemberRole: [me.committeeMemberDto.IndividualId, [Validators.required]],\r\n MemberName: [me.committeeMemberDto.RoleId, [Validators.required]],\r\n MemberEmail: [me.individualEmail, [Validators.required]],\r\n MemberUserName: [me.userName, [Validators.required]]\r\n });\r\n }\r\n\r\n IndividualId: number;\r\n individualEmail: string = \"\";\r\n\r\n get userName(): string {\r\n if (this.individualEmail != null) {\r\n if (this.individualEmail.includes('@')) {\r\n var userName = this.individualEmail.split('@')[0];\r\n var domainName = '';\r\n var fullDomainName = this.individualEmail.split('@')[1];\r\n if (fullDomainName.includes('.'))\r\n domainName = \"-\" + fullDomainName.split('.')[0];\r\n else {\r\n if (fullDomainName.length > 0)\r\n domainName = \"-\" + fullDomainName;\r\n }\r\n return userName + domainName;\r\n }\r\n else\r\n return this.individualEmail;\r\n }\r\n }\r\n\r\n get savedisabled() {\r\n if ((this.MemberForm.value.MemberName != 0 && this.MemberForm.value.MemberName != null) && (this.MemberForm.value.MemberRole != 0 && this.MemberForm.value.MemberRole != null))\r\n return true;\r\n return false;\r\n }\r\n\r\n bindTemplate(data) {\r\n if (data.Position) {\r\n return (\"\" + data.Value + \" (\" + data.Position + \")\" + \"\");\r\n }\r\n\r\n return (\"\" + data.Value + \"\");\r\n }\r\n\r\n comboBoxServerSearchDatasourceDefaultOptions: IComboboxServerDatasourceOptions = {\r\n enabled: true,\r\n method: \"get\",\r\n resultsField: \"\",\r\n searchField: \"kw\"\r\n };\r\n userAutoComplete: IComboboxOptions = Object.assign(\r\n {},\r\n this.comboBoxServerSearchDatasourceDefaultOptions,\r\n {\r\n serverDatasource: Object.assign({}, this.comboBoxServerSearchDatasourceDefaultOptions, {\r\n url: BERRY.hostName + \"api/committees/GetAllCommitteeUsers?isIncludeExternal=false&committeeId=\" + this.svc._committeeId,\r\n additionalParams: () => {\r\n return { returnIndividualId: true };\r\n }\r\n }),\r\n dataTextField: \"Value\",\r\n dataValueField: \"Id\",\r\n allowFreeText: false,\r\n autoBind: false,\r\n displayTemplate: this.bindTemplate\r\n }\r\n );\r\n\r\n searchContactsOptions: IContactsCompsOptions = {\r\n searchFor: ContactsSearchForEnum.Individuals,\r\n btnAddPersonText: BERRY.getText('AddNewExternalMemmber', 'AddEditCommittee'),\r\n externalSearch: true,\r\n committeeId: this.svc._committeeId\r\n };\r\n\r\n get canAddNewIndividual(): boolean {\r\n return BERRY.User.Permissions.AddContact;\r\n }\r\n\r\n rolesAutoComplete: IComboboxOptions = {\r\n \r\n allowFreeText: false,\r\n multiselect: false,\r\n autocomplete: false,\r\n serverDatasource: {\r\n\r\n url: BERRY.hostName + \"api/committees/permission/getCommitteeRolesAutoComplete\",\r\n\r\n enabled: true,\r\n method: \"get\",\r\n resultsField: \"\"\r\n },\r\n dataTextField: BERRY.isEn == true ? \"NameEn\" : \"NameAr\",\r\n dataValueField: \"Id\",\r\n autoBind: true,\r\n displayTemplate: BERRY.isEn == true ? \" #: data.NameEn #\" : \" #: data.NameAr #\"\r\n };\r\n\r\n getActionURL(actionName, controller, routeValue) {\r\n return BERRY.hostName + routeValue + \"/\" + controller + \"/\" + actionName;\r\n }\r\n\r\n openMembersPopup(isCommitteeOperationsOfficersTab: boolean = false) {\r\n let me = this;\r\n me.isCommitteeOperationsOfficersTab = isCommitteeOperationsOfficersTab;\r\n me.editMembersPopup.open();\r\n me.resetMemberInfo();\r\n\r\n if (this.committeeMemberDto.Id != null)\r\n me.getCommitteeArchiveItems();\r\n }\r\n\r\n changeManager(committeeMember) {\r\n this.ChangeManager.emit(committeeMember);\r\n }\r\n\r\n resetMemberInfo() {\r\n let me = this;\r\n if (me.editMode) {\r\n if (me.committeeMember != null) {\r\n me.committeeMemberDto.IndividualName = me.committeeMember.Name;\r\n me.committeeMemberDto.IndividualId = me.committeeMember.IndividualId;\r\n me.committeeMemberDto.Id = me.committeeMember.Id;\r\n me.committeeMemberDto.IsPresident = me.committeeMember.IsPresident;\r\n me.committeeMemberDto.CommitteeId = me.committeeMember.CommitteeId;\r\n me.committeeMemberDto.RoleName = me.committeeMember.CommitteeRoleName;\r\n me.committeeMemberDto.RoleId = me.committeeMember.CommitteeRoleId;\r\n me.committeeMemberDto.UserId = me.committeeMember.UserId;\r\n me.committeeMemberDto.IsExternalUser = me.committeeMember.IsExternalUser;\r\n me.committeeMemberDto.ExternalMember = me.committeeMember.ExternalMember;\r\n me.committeeMemberDto.Position = me.committeeMember.Position;\r\n }\r\n }\r\n else {\r\n me.committeeMemberDto.IndividualName = \"\";\r\n me.committeeMemberDto.IndividualId = null;\r\n me.committeeMemberDto.Id = null;\r\n me.committeeMemberDto.RoleId = null;\r\n me.committeeMemberDto.IsPresident = false;\r\n me.isExternal = false;\r\n me.User = \"\";\r\n me.committeeMemberDto.CommitteeId = me.committeeId;\r\n me.committeeMemberDto.RoleName = \"\";\r\n me.committeeMemberDto.RoleId = null;\r\n me.committeeMemberDto.UserId = null;\r\n me.committeeMemberDto.IsExternalUser = false;\r\n me.committeeMemberDto.ExternalMember = false;\r\n me.archiveItemAddMemberTemplateDto = [];\r\n me.individualEmail = '';\r\n }\r\n }\r\n\r\n get isSupportStaff(){\r\n return (this.isCommitteeOperationsOfficersTab && this.isExternal && this.validateIndividualEmail() ) || this.isCommitteeOperationsOfficersTab && this.isExternal == false\r\n }\r\n save() {\r\n let me = this;\r\n\r\n me.committeeMemberDto.EntityArchiveItems = me.archiveItemAddMemberTemplateDto;\r\n me.committeeMemberDto.IndividualEmail = this.individualEmail;\r\n me.committeeMemberDto.UserName = this.userName;\r\n\r\n if (me.editMode) {\r\n me.editMember(me.committeeMemberDto);\r\n }\r\n else {\r\n me.addMember(me.committeeMemberDto);\r\n }\r\n }\r\n\r\n editMember(committeeMember: any) {\r\n let me = this;\r\n if ((me.committeeMemberDto.IndividualId != null || me.userText == null) && me.committeeMemberDto.RoleId != null) {\r\n me.AddEditMember.emit(committeeMember);\r\n }\r\n else {\r\n\r\n me.dialogs.create(dialog => {\r\n\r\n if (dialog) {\r\n\r\n let options = new ConfirmationBoxOptions(\r\n\r\n ConfirmationBoxType.Danger,\r\n\r\n BERRY.getText('FormsValidationMessage', 'Common')\r\n\r\n );\r\n\r\n dialog.show(options);\r\n\r\n return;\r\n\r\n }\r\n\r\n });\r\n }\r\n }\r\n addMember(committeeMember: any) {\r\n let me = this;\r\n\r\n if ((me.committeeMemberDto.IndividualId != null || (me.userText == null && me.userText != undefined)) && me.committeeMemberDto.RoleId != null &&\r\n (this.isCommitteeOperationsOfficersTab == false || this.isSupportStaff == true)) {\r\n\r\n me.committeeMemberDto.CommitteeId = me.committeeId;\r\n me.AddEditMember.emit(committeeMember);\r\n }\r\n else {\r\n\r\n me.dialogs.create(dialog => {\r\n\r\n if (dialog) {\r\n\r\n let options = new ConfirmationBoxOptions(\r\n\r\n ConfirmationBoxType.Danger,\r\n\r\n BERRY.getText('FormsValidationMessage', 'Common')\r\n\r\n );\r\n\r\n dialog.show(options);\r\n\r\n return;\r\n }\r\n\r\n });\r\n }\r\n }\r\n\r\n IsExternal(isExternal: boolean) {\r\n let me = this;\r\n\r\n me.isExternal = isExternal;\r\n me.committeeMemberDto.IndividualId = null;\r\n me.committeeMemberDto.IndividualName = \"\";\r\n me.committeeMemberDto.IsExternalUser = isExternal;\r\n\r\n me.User = \"\";\r\n me.userText = \"\";\r\n }\r\n\r\n createIndividual() {\r\n const me = this;\r\n\r\n let elements: any = document.getElementsByClassName(\"k-animation-container\");\r\n if (elements != null && typeof (elements) != \"undefined\" && elements.length > 0) {\r\n for (var i = 0; i < elements.length; i++) {\r\n elements[i].style.display = \"none\";\r\n }\r\n }\r\n\r\n me.router.navigate([{ outlets: { 'modal': ['add-new-individual'] } }], {\r\n queryParams: {\r\n 'IndvName': me.committeeMemberDto.IndividualName\r\n }, skipLocationChange:false\r\n });\r\n }\r\n\r\n onChangeExternalUser(user: any) {\r\n let me = this;\r\n\r\n if (user != null) {\r\n if (user.number != undefined && user.number != null) {\r\n me.committeeMemberDto.IndividualId = user.number;\r\n me.committeeMemberDto.IndividualName = user.value;\r\n }\r\n else if (user.Id != undefined) {\r\n me.committeeMemberDto.IndividualId = user.Id;\r\n me.committeeMemberDto.IndividualName = user.DisplayName;\r\n me.individualEmail = user.DefaultEmail;\r\n }\r\n } else {\r\n me.committeeMemberDto.IndividualId = null;\r\n me.committeeMemberDto.IndividualName = \"\"\r\n me.User = \"\";\r\n\r\n }\r\n this.cdRef.detectChanges();\r\n }\r\n\r\n get IfUserHasArchiveModule() {\r\n return BERRY.User.UserModules.find(x => x.Id == AppModulesEnum.Documents) != null;\r\n }\r\n\r\n @ViewChild('quickSearch') public quickSearch: QuickSearchComponent;\r\n archiveItemType: EnitiyArchiveType = EnitiyArchiveType.Create;\r\n\r\n QuickSearch(type: string) {\r\n\r\n let me = this;\r\n me.archiveItemType = EnitiyArchiveType[type];\r\n me.quickSearch.QuickSearch();\r\n }\r\n\r\n archiveItemMergeTemplateDto: EntityArchiveItemDTO[] = [];\r\n\r\n addLinked_ValidateCallback(entityToAdd) {\r\n const me = this;\r\n\r\n const dto: EntityArchiveItemDTO = {\r\n EntityId: me.svc._committeeId,\r\n ArchiveId: entityToAdd.Id,\r\n Type: EnitiyArchiveType.Merge\r\n };\r\n let isAlreadyLinked = me.archiveItems.some(r => {\r\n return r.ArchiveId == dto.ArchiveId && r.EntityId == dto.EntityId\r\n });\r\n if (!isAlreadyLinked) {\r\n if (this.archiveItemType == EnitiyArchiveType.AddMember) {\r\n isAlreadyLinked = me.archiveItemAddMemberTemplateDto.some(r => {\r\n return r.ArchiveId == dto.ArchiveId && r.EntityId == dto.EntityId\r\n });\r\n }\r\n }\r\n if (!isAlreadyLinked) {\r\n if (this.archiveItemType == EnitiyArchiveType.EditMember) {\r\n isAlreadyLinked = me.archiveItemAddMemberTemplateDto.some(r => {\r\n return r.ArchiveId == dto.ArchiveId && r.EntityId == dto.EntityId\r\n });\r\n }\r\n }\r\n if (isAlreadyLinked) {\r\n let message = BERRY.loc.common.ALREADY_Linked;\r\n me.quickSearch.validateError(entityToAdd, message);\r\n }\r\n else {\r\n me.quickSearch.validateSuccess(entityToAdd);\r\n }\r\n }\r\n\r\n archiveItemRemoveMemberTemplateDto: EntityArchiveItemDTO[] = [];\r\n archiveItems: EntityArchiveItemDTO[] = [];\r\n archiveItemAddMemberTemplateDto: EntityArchiveItemDTO[] = [];\r\n\r\n addLinked_SelectCallback(linkToAdd: any[]) {\r\n const me = this;\r\n\r\n me.archiveItemRemoveMemberTemplateDto = [];\r\n linkToAdd.forEach(r => {\r\n\r\n const enitiyArchiveItemDTO: EntityArchiveItemDTO = {\r\n\r\n EntityId: me.committeeId,\r\n ArchiveId: r.Id,\r\n Type: me.archiveItemType,\r\n ArchiveNumber: r.ArchiveNumber,\r\n Title: r.Title,\r\n };\r\n if (me.archiveItemType == EnitiyArchiveType.Create) {\r\n me.archiveItems = [...me.archiveItems, enitiyArchiveItemDTO];\r\n }\r\n else if (me.archiveItemType == EnitiyArchiveType.AddMember) {\r\n me.archiveItemAddMemberTemplateDto = [...me.archiveItemAddMemberTemplateDto, enitiyArchiveItemDTO];\r\n }\r\n else if (me.archiveItemType == EnitiyArchiveType.EditMember) {\r\n me.archiveItemAddMemberTemplateDto = [...me.archiveItemAddMemberTemplateDto, enitiyArchiveItemDTO];\r\n\r\n }\r\n })\r\n\r\n me.quickSearch.AllItemsAddedSuccessfully(false);\r\n }\r\n\r\n deleteArchiveTemp(item: EntityArchiveItemDTO) {\r\n const me = this;\r\n if (item.Type === EnitiyArchiveType.AddMember || item.Type === EnitiyArchiveType.EditMember) {\r\n me.archiveItemAddMemberTemplateDto = me.archiveItemAddMemberTemplateDto.filter(r => r != item);\r\n }\r\n else if (item.Type === EnitiyArchiveType.Create && me.committeeId == null) {\r\n me.archiveItems = me.archiveItems.filter(r => r != item);\r\n }\r\n }\r\n\r\n validateIndividualEmail() {\r\n this.errorMessage = \"\";\r\n if (this.individualEmail && !this.individualEmail.match(ContactsHelpers.EMAIL_REGEX)) {\r\n this.errorMessage = BERRY.loc.contacts.dbRes(\"enter_valid_email\");\r\n return false;\r\n }\r\n else if(this.individualEmail == \"\") {\r\n return false;\r\n }\r\n \r\n return true;\r\n }\r\n\r\n getCommitteeArchiveItems() {\r\n this.svc.getArchiveItemsByMember(this.svc._committeeId, this.committeeMemberDto.Id).subscribe(response => {\r\n this.archiveItemAddMemberTemplateDto = response.filter(x => x.Type == EnitiyArchiveType.AddMember || x.Type == EnitiyArchiveType.EditMember);\r\n });\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { Observable } from \"rxjs\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class CommitteeAttachmentService extends BaseService {\r\n\r\n attachmentsCount: number = 0;\r\n currentUserSignatureRequestsCount: number = 0;\r\n currentUserSignatureMarkingRequestsCount: number = 0;\r\n currentUserApprovalRequestsCount: number = 0;\r\n CurrentStampRequestsCount: number = 0;\r\n constructor(http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n getCurrentUserSignatureRequestsCount(id): Observable {\r\n return super.get(BERRY.hostName + \"api/committees/current-user-requests-count/\" + id);\r\n }\r\n getCurrentUserApprovalRequestsCount(id): Observable {\r\n return super.get(BERRY.hostName + \"api/committees/current-user-approval-requests-count/\" + id);\r\n }\r\n\r\n getCurrentUserSignatureMarkingRequestsCount(id): Observable {\r\n return super.get(BERRY.hostName + \"api/committees/current-user-Markingrequests-count/\" + id);\r\n }\r\n\r\n hasAddCommitteeAttachmentsPermission(): Observable {\r\n return super.get(BERRY.hostName + \"api/committees/HasAddCommitteeAttachmentsPermission\");\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { IGlobalSettings } from \"../../../../_common/models/IGlobalSettings\";\r\nimport { HttpInterceptor } from \"../../../../_common/services/http-interceptor\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class SubCommitteesSVC {\r\n\r\n readonly baseURL = BERRY.hostName + \"api/committees/\";\r\n\r\n constructor(public http: HttpInterceptor) { }\r\n\r\n GetSubCommittees(parentCommitteeId: number, pageIndex): Observable {\r\n const url = `${this.baseURL}GetSubCommittees?parentCommitteeId=${parentCommitteeId}&pageIndex=${pageIndex}`\r\n return this.http.get(url);\r\n }\r\n\r\n ModifySubCommitteesLinking(subCommitteesIds, parentCommitteeId): Observable {\r\n const url = this.baseURL + \"ModifySubCommitteesLinking?parentCommitteeId=\" + parentCommitteeId\r\n return this.http.post(url, subCommitteesIds);\r\n }\r\n\r\n CanMakeActionsOnAllSubCommittees(parentCommitteeId, isDeactivation, isDeletion): Observable {\r\n const url = `${this.baseURL}CanMakeActionsOnAllSubCommittees?parentCommitteeId=${parentCommitteeId}&isDeactivation=${isDeactivation}&isDeletion=${isDeletion}`\r\n return this.http.get(url);\r\n }\r\n}","export enum CommitteeMemberType {\r\n Member = 0,\r\n SupportStaff = 1,\r\n}","import { NgModule } from \"@angular/core\";\r\nimport { EditMembersComponent } from \"./components/details/MembersNew/edit-members/edit-members-cmp\";\r\nimport { ArchivesQuickSearchModule } from \"../Archives/archives-quick-search/archives-quick-search.module\";\r\nimport { SharedModule } from \"../shared/shared.module\";\r\n\r\n@NgModule({\r\n imports: [\r\n SharedModule,\r\n ArchivesQuickSearchModule\r\n ],\r\n declarations: [\r\n EditMembersComponent\r\n ],\r\n exports: [\r\n EditMembersComponent\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class MembersSharedModule { }\r\n","export class CommitteeMemberDto {\r\n IndividualId: number = 0;\r\n Name: string = \"\";\r\n CommitteeId: number = 0;\r\n CommitteeRoleId: number = 0;\r\n CommitteeRoleType: CommitteeRoleType = CommitteeRoleType.Member;\r\n CommitteeRoleName: string = \"\";\r\n IsPresident: boolean = false;\r\n ListOrder: number = 0;\r\n Status: CommitteeMemberStatus = CommitteeMemberStatus.Active;\r\n StatusDesc: string = \"\";\r\n AddedDate: Date = null;\r\n IsExternalUser: boolean = false;\r\n UserId: string = '';\r\n EnitiyArchiveItems: any[]\r\n}\r\n\r\n\r\nexport class CommitteeMemberDataDto\r\n{\r\n IndividualId: number = 0;\r\n IndividualName: string = '';\r\n Id: number = 0;\r\n IsDeleted: boolean = false;\r\n RoleId:number = 0; \r\n RoleName:string=\"\"\r\n IsPresident: boolean = false;\r\n CommitteeId: number = 0;\r\n IsExternalUser: boolean = false;\r\n ExternalMember: boolean = false;\r\n UserId: string = '';\r\n EntityArchiveItems: any[];\r\n IndividualEmail: string = '';\r\n UserName: string = '';\r\n Position: string = '';\r\n }\r\n enum CommitteeRoleType {\r\n Member = 1,\r\n SupportStaff = 2\r\n}\r\n\r\nenum CommitteeMemberStatus {\r\n Active = 1,\r\n Suspended = 2,\r\n}\r\n\r\n\r\nexport class CommitteeMemberPermissionsDto {\r\n RoleId: number = 0;\r\n CommitteeMemberId: number = 0;\r\n permissions: string[] = [];\r\n}","import { CommitteeMemberType } from './../components/enums/committee-member-type';\r\nimport { Injectable, EventEmitter } from \"@angular/core\";\r\n\r\nimport { Response } from \"@angular/http\";\r\nimport { Observable } from \"rxjs\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { IndividualAuthenticationAccessDto } from \"src/app/Contacts/individuals/AuthenticationAccess/individual-authentication-access-dto\";\r\nimport { ActivatedRoute } from \"@angular/router\";\r\nimport { EntityArchiveItemDTO } from \"src/app/committees/components/add-edit-committee-modal-cmp\";\r\nimport { ScheduleItemDto } from \"src/app/Scheduling/_models/ScheduleItem-Dto\";\r\nimport { CommitteeNoteDto } from \"src/app/committees/components/details/notes/committees-notes-cmp\";\r\nimport { CommitteeMemberDataDto, CommitteeMemberPermissionsDto } from \"../models/committee-member-dto\";\r\nimport { TaskItemDto } from \"../../Tasks/models/TaskItemDto\";\r\nimport { DashboardDto } from \"../../Tasks/models/DashboardDto\";\r\nimport { MeetingInfoDto } from \"../models/meeting-info-dto\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare let moment: any;\r\n@Injectable()\r\nexport class CommitteesSvc extends BaseService {\r\n\r\n AuditTrailData;\r\n AuditTrailDataCount: number = 0;\r\n entities: any[] = [];\r\n archiveItemsForOverview: EntityArchiveItemDTO[] = [];\r\n Notes = [];\r\n members = [];\r\n\r\n Tasks: TaskItemDto[] = [];\r\n dashboardDto: DashboardDto = new DashboardDto();\r\n Committee: any;\r\n series = [];\r\n chartPerc: string = \"\";\r\n\r\n hasViewPermission: boolean = true;\r\n scheduleItems: ScheduleItemDto[] = [];\r\n meetingInfo: MeetingInfoDto;\r\n showAddButton: boolean = false;\r\n\r\n userPermission: any = {};\r\n isPresident: boolean = false;\r\n userPermissionViewMeetings: boolean = false;\r\n baseURL = BERRY.hostName + \"api/committees\";\r\n RolePermissionsURL = BERRY.hostName + \"api/committees/permission\";\r\n commonMethodeUrl = BERRY.hostName + \"api/contacts/lookups\";\r\n isActive: boolean = false;\r\n _committeeId: number;\r\n hasAuthorized: boolean = false;\r\n isMergedWithEntity: boolean = false; // -- just for committee module \r\n AllCommitteeHandlers: any;\r\n CommitteeCategoryName: string = \"\";\r\n\r\n get CommitteeId(): number {\r\n return this._committeeId;\r\n }\r\n\r\n\r\n set CommitteeId(id: number) {\r\n this._committeeId = id;\r\n }\r\n\r\n\r\n onCommitteeIdFilled: EventEmitter = new EventEmitter();\r\n\r\n working: boolean = true;\r\n paginateOptions = {\r\n id: \"server\",\r\n itemsPerPage: BERRY.PageSize,\r\n currentPage: 1,\r\n totalItems: 0\r\n };\r\n\r\n constructor(http: HttpInterceptor, route: ActivatedRoute) {\r\n super(http);\r\n }\r\n\r\n validateCommitteeNumber(committeeNumber, committeeId): Observable {\r\n return this.http.get(this.baseURL + \"/ValidateCommitteeNumber?committeeNumber=\" + committeeNumber + \"&committeeId=\" + committeeId)\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n \r\n exportCommitte(objFlterDto): Observable {\r\n var url = BERRY.hostName + \"api/CommitteeResultsReport/GenerateReport\";\r\n return this.http.post(url,objFlterDto)\r\n }\r\n\r\n getCommitteesAdvancedSearch(committeesFilterParameters): Observable {\r\n var url = this.baseURL + \"/GetCommitteesAdvancedSearch\";\r\n return this.http.post(url, committeesFilterParameters).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getUserCommittees(pageSize, pageIndex, filterText, filterType, filterIsTemp, filterNotTemp, selectedCommitteetStatuses, selectedCommitteeCategories, selectedCommitteeTypes): Observable {\r\n return this.http\r\n .get(this.baseURL + `/GetUserCommittees?pageSize=${pageSize}&pageIndex=${pageIndex}&filterText=${filterText}&filterIsTemp=${filterIsTemp}&filterNotTemp=${filterNotTemp}&committeeStatusIds=${selectedCommitteetStatuses}&committeeCategoriesIds=${selectedCommitteeCategories}&committeeTypesIds=${selectedCommitteeTypes}`)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCommitteeTypes(): Observable {\r\n return this.http\r\n .get(this.baseURL + `/GetCommitteeTypes`)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCommitteesDashboardStatistics(): Observable {\r\n return this.http\r\n .get(this.baseURL + '/GetCommitteesDashboardStatistics')\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCommitteesBasicInfoDashboard(committeeStatusId, pageIndex, pageSize): Observable {\r\n return this.http\r\n .get(this.baseURL + `/GetCommitteesBasicInfoDashboard?committeeStatusId=${committeeStatusId}&pageIndex=${pageIndex}&pageSize=${pageSize}`)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCommitteesDefaultNumberingFormula(committeeId): Observable {\r\n return this.http\r\n .get(this.baseURL + `/GetCommitteesDefaultNumberingFormula?committeeId=${committeeId}`)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n deleteScheduleItem(scheduleItemId) {\r\n return this.http\r\n .post(this.baseURL + `/DeleteScheduleItem?scheduleItemId=${scheduleItemId}&&committeeId=${this.CommitteeId}`, \"\")\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getUserCommitteesInfo(committeeIds): Observable {\r\n return this.http\r\n .get(this.baseURL + `/GetUserCommitteesInfo?committeeIds=${committeeIds}`)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n\r\n deleteEntityArchiveItem(item) {\r\n const me = this;\r\n const url = `${me.baseURL}/DeleteEntityArchiveItem`;\r\n return super.post(url, item);\r\n }\r\n\r\n\r\n getArchiveItems(Id): Observable {\r\n return this.http.get(this.baseURL + \"/GetArchiveItems?id=\" + Id).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getArchiveItemsByMember(Id, committeeMemberId): Observable {\r\n return this.http.get(this.baseURL + \"/GetArchiveItemsByMember?id=\" + Id + \"&committeeMemberId=\" + committeeMemberId).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getArchiveList(Id, count): Observable {\r\n return this.http.get(this.baseURL + \"/GetArchiveList?id=\" + Id + \"&count=\" + count).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getLatestCommitteeTasks(committeeId) {\r\n var baseURL = \"api/committees\"\r\n let url = `${BERRY.hostName}${baseURL}/get-latest-committee-tasks?committeeId=${committeeId}`;\r\n return super.get(url);\r\n }\r\n\r\n addArchiveItem(arg: EntityArchiveItemDTO[]): Observable {\r\n const me = this;\r\n const url = `${me.baseURL}/AddArchiveItems`;\r\n return super.post(url, arg);\r\n\r\n }\r\n getCommitteeInfo(id: number, loadMeetingAccess?: boolean): Observable {\r\n if (id == null) {\r\n if (this.CommitteeId) {\r\n id = this.CommitteeId;\r\n }\r\n }\r\n if (loadMeetingAccess == null) loadMeetingAccess = true;\r\n var url = this.baseURL + \"/GetCommitteeInfo?id=\" + id + '&loadMeetingAccess=' + loadMeetingAccess;\r\n return this.http.get(url).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCommitteeUserPermissions(committeeId): Observable {\r\n return this.http.get(BERRY.hostName + \"api/committees/GetCommitteeUserPermissions?id=\" + committeeId).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n addNewCommittee(params): Observable {\r\n return this.http.post(this.baseURL + \"/AddNewCommittee\", params).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n editCommittee(params): Observable {\r\n return this.http.post(this.baseURL + \"/EditCommittee\", params).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getScheduleRoles(): Observable {\r\n return this.http.get(this.baseURL + \"/GetScheduleRoles\").pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getUserMeetinRoles(UserId: string, CommitteId: number): Observable {\r\n\r\n var params = {\r\n Id: UserId,\r\n CommitteeId: CommitteId\r\n };\r\n return this.http\r\n .post(\r\n this.baseURL +\r\n `/GetUserMeetinRoles?Id=${UserId}&CommitteeId=${CommitteId}`,\r\n params\r\n )\r\n .pipe(map(res => res),\r\n catchError(this.handleError));\r\n\r\n }\r\n\r\n changeManager(memberInfo: any): Observable {\r\n var url = this.baseURL + \"/ChangeManager\";\r\n return this.http.post(url, memberInfo).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCommitteesMembers(Id: number): Observable {\r\n var url = this.baseURL + \"/GetCommitteesMembers?id=\" + Id;\r\n return this.http.get(url).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n editMemberPermissions(user): Observable {\r\n var url = this.baseURL + \"/EditMemberPermissions\";\r\n return this.http.post(url, user).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCommitteeDashboardInfo(committeeId): Observable {\r\n return this.http\r\n .get(this.baseURL + `/GetCommitteeDashboardInfo?committeeId=${committeeId}`)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n createIndividualAccessForAddedUser(AddAccessUserIfHasUserId: IndividualAuthenticationAccessDto[]): Observable {\r\n var url = this.baseURL + \"/CreateIndividualAccessForAddedUser\";\r\n return this.http.post(url, AddAccessUserIfHasUserId).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getAuditTrailData(ID, pageNumber, pageSize): Observable {\r\n return this.http.get(this.baseURL + \"/AuditTrailData?id=\" + ID + \"&pageNumber=\" + pageNumber + \"&pageSize=\" + pageSize).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n addUserToCommitteePublicInbox(params): Observable {\r\n var url = this.baseURL + \"/AddUserToCommitteePublicInbox\";\r\n return this.http.post(url, params).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n setUserScheduleRole(ScheduleRole, value): Observable {\r\n var params = {\r\n UserID: ScheduleRole.UserId,\r\n ScheduleRoleEnum_ID: ScheduleRole.RoleEnumId,\r\n Committee_ID: ScheduleRole.CommitteeId,\r\n value: value,\r\n UserName: ScheduleRole.UserName,\r\n EntityName: ScheduleRole.EntityName\r\n };\r\n return this.http\r\n .post(\r\n this.baseURL + `/SetUserScheduleRole?\r\n \r\n UserID=${ScheduleRole.UserId}\r\n &ScheduleRoleEnum_ID=${ScheduleRole.RoleEnumId\r\n }\r\n &Committee_ID=${ScheduleRole.CommitteeId\r\n }\r\n &value=${value}\r\n &UserName=${ScheduleRole.UserName\r\n }\r\n &EntityName=${ScheduleRole.EntityName\r\n }`,\r\n params\r\n )\r\n .pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n deleteCommitteeMember(id, entityID): Observable {\r\n var url = this.baseURL + \"/DeleteCommitteeMember\";\r\n\r\n return this.http.post(url, {\r\n Id: id,\r\n EntityID: entityID\r\n }).pipe(map(res => res), catchError(this.handleError));\r\n\r\n }\r\n\r\n\r\n changeCommitteeStatus(CommitteeId, isCommitteeActivation, activateParentCommitteeOnly = true, deactivateParentCommitteeAndSubCommittees = false) {\r\n var url = this.baseURL + \"/ChangeStatus\";\r\n var params = {\r\n CommitteeId: CommitteeId,\r\n IsCommitteeActivation: isCommitteeActivation,\r\n ActivateParentCommitteeOnly: activateParentCommitteeOnly,\r\n DeactivateParentCommitteeAndSubCommittees: deactivateParentCommitteeAndSubCommittees\r\n }\r\n return this.http.post(url, params).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n deleteCommittee(CommitteeId, deleteParentCommitteeAndSubCommittees = false): Observable {\r\n return this.http\r\n .post(this.baseURL + `/Delete?CommitteeId=${CommitteeId}&deleteParentCommitteeAndSubCommittees=${deleteParentCommitteeAndSubCommittees}`, \"\")\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n\r\n getMeetings(committeeId, fromDateStr, toDateStr): Observable {\r\n let timeZoneOffset = new Date().getTimezoneOffset();\r\n return this.http.get(this.baseURL + `/GetMeetings?committeeId=${committeeId}&&from=${fromDateStr}&&to=${toDateStr}&&timeZoneOffset=${timeZoneOffset}`)\r\n .pipe(\r\n map(function (res: Response) {\r\n if ((res).unAuthorized == false) {\r\n let body: ScheduleItemDto[] = (res).data;\r\n let result = body.map(function (value) {\r\n //\r\n let tmp = (\r\n Object.assign(new ScheduleItemDto(), value)\r\n );\r\n //tmp.prepareAfterFetch();\r\n return tmp;\r\n });\r\n return result;\r\n }\r\n else {\r\n return res;\r\n }\r\n }),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getLatestCommitteemeeting(committeeId): Observable {\r\n\r\n let timeZoneOffset = new Date().getTimezoneOffset();\r\n return this.http.get(this.baseURL + `/GetLatestCommitteemeeting?committeeId=${committeeId}&&timeZoneOffset=${timeZoneOffset}`)\r\n .pipe(\r\n map(function (res: Response) {\r\n if ((res).unAuthorized == false) {\r\n let body: ScheduleItemDto[] = (res).data;\r\n if (body) {\r\n let result = body.map(function (value) {\r\n let tmp = (\r\n Object.assign(new ScheduleItemDto(), value)\r\n );\r\n return tmp;\r\n });\r\n return result;\r\n }\r\n return res;\r\n }\r\n else {\r\n return res;\r\n }\r\n }),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getMeetingInfo(committeeId) {\r\n return this.http\r\n .get(this.baseURL + \"/GetMeetingInfo?committeeId=\" + committeeId)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCorrItems(entityId, page, corrCount) {\r\n let url = `${this.baseURL}/GetLinkedCorrespondenceList?entityId=${entityId}&page=${page}&corrCount=${corrCount}`;\r\n return super.get(url);\r\n }\r\n\r\n checHasPermissionToViewInbox(committeId) {\r\n let url = `${this.baseURL}/CheckPermissionToViewInbox?committeId=${committeId}`;\r\n return this.http.get(url)\r\n .pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCommitteesTags(): Observable {\r\n var url = this.baseURL + \"/CommitteesTagsTypesRead\";\r\n return this.http.get(url).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getAuditTrailDataForOverview(ID): Observable {\r\n return this.http.get(this.baseURL + \"/AuditTrailDataForOverview?id=\" + ID).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n createCommitteeNote(obj: CommitteeNoteDto): Observable {\r\n var url = this.baseURL + \"/CreateCommitteeNote\";\r\n return this.http.post(url, obj).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCommitteeNotes(committeeId, count): Observable {\r\n return this.http.get(this.baseURL + \"/GetCommitteeNotes?committeeId=\" + committeeId + \"&count=\" + count).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n deleteCommitteeNote(obj: CommitteeNoteDto): Observable {\r\n var url = `${this.baseURL}/DeleteCommitteeNote?committeeId=${obj.CommiteeId}¬eId=${obj.Id}`;\r\n return this.http.post(url, {}).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n editCommitteeNote(obj: CommitteeNoteDto): Observable {\r\n var url = this.baseURL + \"/EditCommitteeNote\";\r\n return this.http.post(url, obj).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getExportData(exportActionName, params) {\r\n\r\n\r\n var url = BERRY.hostName + \"api/CommitteeResultsReport/\" + exportActionName;\r\n return this.http.post(url, params).pipe(\r\n map(this.extractData),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n addEditCommitteeMember(obj: CommitteeMemberDataDto) {\r\n var url = BERRY.hostName + \"api/committees/SaveCommitteeMember\";\r\n return this.http.post(url, obj).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCommitteeMembers(committeeId: number, count: number = 0, committeeMemberType: CommitteeMemberType = CommitteeMemberType.Member): Observable {\r\n var url = BERRY.hostName + \"api/committees/GetCommitteeMembers?committeeId=\" + committeeId + \"&count=\" + count + \"&type=\" + committeeMemberType;\r\n return this.http.get(url).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n getCommitteePermissions() {\r\n return super.get(`${this.RolePermissionsURL}/getCommitteePermission`);\r\n }\r\n\r\n getCommitteeRoles() {\r\n return super.get(`${this.RolePermissionsURL}/Get`);\r\n }\r\n\r\n saveCommitteeMemberPermissions(SelectedMemberPermissions: CommitteeMemberPermissionsDto, isAdminSide, committeeId): Observable {\r\n let me = this;\r\n let url = me.baseURL + \"/SaveCommitteeMemberPermissions?committeeId=\" + committeeId;\r\n return super.post(url, SelectedMemberPermissions);\r\n }\r\n\r\n getCommitteeRolePermission(roleId: number) {\r\n return super.get(\r\n `${this.RolePermissionsURL}/GetCommitteeRolePermissions?roleId=${roleId}`\r\n );\r\n }\r\n getCommitteeMemberPermission(memberId: number) {\r\n return super.get(\r\n `${this.baseURL}/GetCommitteeMemberPermissions?memberId=${memberId}`\r\n );\r\n }\r\n\r\n getCommitteeLogicHandler(committeeId: any, pageType: CommitteePageType): Observable {\r\n const me = this;\r\n let url = `${BERRY.hostName}api/committees/GetCommitteeLogicHandler?committeeId=${committeeId}&type=${pageType}`;\r\n return super.get(url);\r\n }\r\n\r\n getCommitteeCategories() {\r\n return super.get(`${this.baseURL}/committeecategories/Get`);\r\n }\r\n GetLinkedInitiatives(committeeId): Observable {\r\n return this.http.get(this.baseURL + \"/GetLinkedInitiatives?id=\" + committeeId).pipe(\r\n map(res => res),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n GetCommitteesDashboardSettings(): Observable {\r\n let url = `${BERRY.hostName}api/CommitteesDashboard/GetCommitteesDashboardSettings`;\r\n return super.get(url);\r\n }\r\n\r\n GetCommitteesMeetingsDashboard(committeeTypesIds, page): Observable {\r\n let url = `${BERRY.hostName}api/CommitteesDashboard/GetCommitteesMeetingsDashboard?committeeTypesIds=${committeeTypesIds}&page=${page}`;\r\n return super.get(url);\r\n }\r\n\r\n GetCommitteesMeetingsTasksDashboard(committeeTypesIds, taskTypesIds, page): Observable {\r\n let url = `${BERRY.hostName}api/CommitteesDashboard/GetCommitteesMeetingsTasksDashboard?committeeTypesIds=${committeeTypesIds}&taskTypesIds=${taskTypesIds}&page=${page}`;\r\n return super.get(url);\r\n }\r\n\r\n GetMeetingsDetails(committeeId, detailsType, page, orderBy, orderDirection): Observable {\r\n let url = `${BERRY.hostName}api/CommitteesDashboard/GetMeetingsDetails?committeeId=${committeeId}&detailsType=${detailsType}&page=${page}&orderBy=${orderBy}&orderDirection=${orderDirection}`;\r\n return super.get(url);\r\n }\r\n\r\n getScheduleTemplate(id: number): Observable {\r\n return super.get(`${BERRY.hostName}api/ScheduleTemplates/GetScheduleTemplate?id=${id}`);\r\n }\r\n}\r\n\r\nexport enum CommitteePageType {\r\n ArchiveItemHandler = 1,\r\n AttachmentHandler = 2,\r\n CommitteeHandler = 3,\r\n CommitteeMemberHandler = 4,\r\n CommitteeRoleHandler = 5,\r\n CommitteeCorrespondencesHandler = 6,\r\n NoteHandler = 7,\r\n OverviewHandler = 8,\r\n ScheduleItemHandler = 9,\r\n ScheduleRoleHandler = 10,\r\n SignatureRequestHandler = 11,\r\n TaskItemHandler = 12,\r\n All = 13,\r\n CommitteeLogicHandler = 14,\r\n GeneralHandler = 15,\r\n CommitteeGeneralHandler = 16,\r\n ImportantLinkHandler = 17,\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { SharedModule } from \"../shared/shared.module\";\r\nimport { CorrListCmp } from \"../berry/correspondences/inboxes/corr-list-cmp\";\r\nimport { ActionsBarCmp } from \"../_common/components/ActionsBar/Actions-bar-cmp\";\r\nimport { CommitteeModule } from \"../berry/correspondences/manage/committees-management/committees.module\";\r\nimport { SubCorrespondenceShared } from \"../berry/correspondences/details/sub-correspondnece/sub-correspondence-shared\";\r\nimport { FinalizePopupCmp } from \"../berry/correspondences/details/sub-correspondnece/common/new-finalize/finalize-popup-cmp\";\r\n\r\n@NgModule({\r\n imports: [\r\n SharedModule,\r\n CommitteeModule,\r\n SubCorrespondenceShared\r\n ],\r\n declarations: [\r\n CorrListCmp,\r\n ActionsBarCmp,\r\n FinalizePopupCmp\r\n ],\r\n exports: [\r\n CorrListCmp,\r\n ActionsBarCmp,\r\n FinalizePopupCmp\r\n ]\r\n})\r\nexport class CorrespondenceSharedModule { }\r\n","export class CorrespondenceDocumentCenterStorageDto {\r\n Id: number;\r\n CorrespondenceId: string;\r\n Subject: string;\r\n CorrespondenceDateFormatted: string;\r\n CorrespondenceNumber: string;\r\n CategoryName: string;\r\n CategoryId: number;\r\n FromUserId: string;\r\n FromUser: string;\r\n FromEntity: string;\r\n Status: number;\r\n StatusText: string;\r\n FromBranchId: number;\r\n FromDocumentCenterId: number;\r\n NumberOfSourceFolders: number;\r\n DeliveredByUserId: string;\r\n DeliveredByUserName: string;\r\n ApprovedByUserId: string;\r\n ApprovedDate: Date;\r\n RejectDate: Date;\r\n CreateDate: Date;\r\n CreateByUserId: string;\r\n CreatedByUserId: string;\r\n StorgeType: number;\r\n IsQrEnabled: boolean;\r\n LocationId: number;\r\n RoomId: number;\r\n CabinetId: number;\r\n ShelveId: number;\r\n FolderId: number;\r\n LocationDescription: string;\r\n MainPurposeId: number;\r\n MainPurposeCode: string;\r\n MainSubjectId: number;\r\n MainSubjectCode: string;\r\n SubSubjectId: number;\r\n SubSubjectCode: string;\r\n OrganizationId: number;\r\n OrganizationCode: string;\r\n DocumentCenterMovingActionId: number;\r\n RequestedToMove: boolean;\r\n BorrowStatus: number;\r\n BorrowedByUserName: string;\r\n BorrowedByUserId: string;\r\n BorrowApproveDate: Date;\r\n BorrowApproveDateStr: string;\r\n EnableBorrowReminder: boolean;\r\n ReminderCount: number;\r\n}\r\n\r\n\r\nexport class documentCenterMovingActionDto {\r\n Id: number;\r\n FromBranchEntityId: number;//Entity\r\n ToBranchEntityId: number; //Entity\r\n FromDocumentCenterEntityId: number; //Entity\r\n ToDocumentCenterEntityId: number; // Entity\r\n CreateDate: Date;\r\n CreateDateFormatted: string;\r\n CreateByUserId: string; // User\r\n NumberOfSourceFolders: number = 0;\r\n NumberOfReceivingFolders: number = 0;\r\n IsProccessed: boolean;\r\n IsDeleted: boolean;\r\n UpdateDate: Date | null;\r\n UpdateDateFormatted: string;\r\n UpdateByUserId: string | null;\r\n IsDistributed: boolean;\r\n}\r\nexport class movingActionHistoryDto {\r\n ActionId: number;\r\n DeliveredByUserName: string;\r\n DeliveredByUserId: string;\r\n DeliveredDate: Date | string;\r\n DeliveredDateFormatted: string = \"\";\r\n NumberOfReceivingFolders: number;\r\n}\r\n\r\n\r\nexport class OriginalsReceiptFormDto {\r\n records: CorrespondenceDocumentCenterStorageDto[];\r\n CorrCreatedByUserId: any;\r\n CorrSubject: string;\r\n CorrId: any;\r\n OriginalsIsRejected: boolean;\r\n}\r\n\r\nexport class savedBranchDto {\r\n EntityID: number;\r\n EntityNameAR: string;\r\n EntityManagerUserId: string;\r\n EntityManagerUserShortName: string;\r\n EntityManagerUserEmployeeName: string;\r\n DocumentCenterEntityId: number | null;\r\n NotDistributedCount: number = 0;\r\n NotProcessedCount: number = 0;\r\n ReceivedByUserId: string;\r\n ReceivedDateFormatted: string = \"\";\r\n MovingAction: documentCenterMovingActionDto = new documentCenterMovingActionDto();\r\n}\r\n\r\nexport class CorrespondenceRecoveryDto {\r\n Id: number;\r\n CorrespondenceId: string;\r\n DeliveredByUserId: string;\r\n DeliveredByUserName: string;\r\n DeliveredComment: string;\r\n DeleiveryRejectionReason: string;\r\n ByUserBorrowingCorrespondence: boolean;\r\n CorrespondenceCategoryId: number;\r\n}\r\n\r\nexport class BorrowReminderDto {\r\n RecordId: number;\r\n CorrespondenceId: string;\r\n BorrowedByUserId: string;\r\n ReminderText: string;\r\n}\r\n\r\nexport class OriginalsReceiptReportDto {\r\n LocationName: string;\r\n RoomName: string;\r\n CabinetNumber: string;\r\n ShelveNumber: string;\r\n FolderName: string;\r\n CategoryName: string;\r\n CorrespondenceNumber : string;\r\n CorrespondenceDate : string;\r\n \r\n}","import { Injectable } from \"@angular/core\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { map, catchError } from \"rxjs/operators\";\r\nimport { FollowupTeamInboxesEnum } from \"../models/FollowupTeamInboxesEnum\";\r\nimport { Observable } from \"rxjs\";\r\nimport { CorrespondenceSortTypeEnum } from \"../../berry/correspondences/_models/enums/CorrespondenceSortType\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class FollowUpTeamSvc extends BaseService {\r\n\r\n SelectedFollowUpTeam: any[] = [];\r\n FollowUpTeam: any[] = [];\r\n InboxEnumId: FollowupTeamInboxesEnum;\r\n IsLate: boolean = false;\r\n selectedExecutiveFollowupTeamId: number = 0;\r\n selectedExecutiveFollowupTeamName: string = null;\r\n selectedExecutiveFollowupTeamPosition: string = null;\r\n selectedCorrespondenceIds = [];\r\n IsSelectAllFilters: boolean = false;\r\n isBusy: boolean = false;\r\n SortType: CorrespondenceSortTypeEnum = CorrespondenceSortTypeEnum.Newest;\r\n followerUserId: number;\r\n correspondences: any;\r\n UserPermissions: FollowUpTeamUserPermissionsDTO;\r\n isFromDashboard: boolean = false;\r\n isFromDashboardLate: boolean = false;\r\n\r\n confidentialitiesFilter: boolean[] = [\r\n false,\r\n false,\r\n false,\r\n false,\r\n false,\r\n false,\r\n false,\r\n false,\r\n false,\r\n false,\r\n ];\r\n\r\n urgenciesFilter: boolean[] = [\r\n false,\r\n false,\r\n false,\r\n false,\r\n false,\r\n ];\r\n\r\n ImportancesFilter: boolean[] = [\r\n false,\r\n false,\r\n ];\r\n\r\n baseURL = `${BERRY.hostName}api/FollowUpTeamCorrespondenceApi`;\r\n\r\n constructor(http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n public getItems(filter: any): Observable {\r\n var me = this;\r\n \r\n var url = this.baseURL +\"/GetAllFollowUpTeamCorrespondencesFiltered\";\r\n\r\n return super.post(url, filter).pipe(\r\n map(me.extractData),\r\n catchError(me.handleError)\r\n );\r\n }\r\n\r\n \r\n IfCorrInUnderFollowUpOrInMyInbox(id) {\r\n return super.get(this.baseURL + \"/IfCorrInUnderFollowUpOrInMyInbox?corrId=\" + id);\r\n }\r\n\r\n getFirstSelectedExecutiveFollowupTeam() {\r\n return super.get(this.baseURL +\"/GetFirstSelectedExecutiveFollowupTeam\");\r\n }\r\n\r\n getFollowupTeamUsersAndPermissions(id: number) {\r\n return super.get(this.baseURL + \"/GetFollowupTeamUsersAndPermissions?Id=\"+id);\r\n }\r\n\r\n getFollowupExecutiveUserPermissions(): Observable {\r\n return super.get(this.baseURL + \"/GetFollowupExecutiveUserPermissions\");\r\n }\r\n\r\n getFollowUpTeamDashboardCounters(executiveId: number) {\r\n return super.get(this.baseURL + \"/GetFollowUpTeamDashboardCounters?executivePersonalId=\" + executiveId);\r\n }\r\n\r\n setTheFollowup(followerId, executiveId, correspondenceIds: string[]) {\r\n var url = this.baseURL + \"/SetTheFollowup?FollowerId=\" + followerId + \"&ExecutiveId=\" + executiveId;\r\n return super.post(url, correspondenceIds);\r\n }\r\n\r\n endTheFollowup(executiveId, correspondenceIds: string[]) {\r\n var url = this.baseURL + \"/EndTheFollowup?ExecutiveId=\" + executiveId;\r\n return super.post(url, correspondenceIds);\r\n }\r\n\r\n getCorrespondenceActionRecipient(id: string) {\r\n return super.get(this.baseURL + \"/GetCorrespondenceActionRecipient?CorrespondenceId=\" + id);\r\n }\r\n\r\n getCorrespondenceDeadlineDate(id: string) {\r\n return super.get(this.baseURL + \"/GetCorrespondenceDeadlineDate?CorrespondenceId=\" + id);\r\n }\r\n\r\n getPermissionsRelatedToFollowupTeamsAddedToCorrespondencebyUserId(CorrespondenceId: number) {\r\n return super.get(this.baseURL + \"/GetPermissionsRelatedToFollowupTeamsAddedToCorrespondencebyUserId?CorrespondenceId=\" + CorrespondenceId);\r\n }\r\n\r\n endTheFollowupByExecutiveIds(correspondenceId: string,executiveIds: number[]) {\r\n var url = this.baseURL + \"/EndTheFollowupByExecutiveIds?CorrespondenceId=\" + correspondenceId;\r\n return super.post(url, executiveIds);\r\n }\r\n}\r\n\r\nexport class FollowupTeamSearchDto {\r\n public InboxEnumId: FollowupTeamInboxesEnum;\r\n public ExecutivePersonalId: number; \r\n public PageIndex: number;\r\n public PageSize: number = BERRY.PageSize;\r\n public Importances: ImportanceTypes[];\r\n public Confidentialities: number[];\r\n public Urgencies: number[];\r\n public SortType: CorrespondenceSortTypeEnum = CorrespondenceSortTypeEnum.Newest;\r\n public FollowerId: number;\r\n public IsLate: boolean = false;\r\n public UserIsFollowupLeader: boolean = false;\r\n public ImportantFollowUp:number;\r\n public SelectedFollowUpTeamIds: any[];\r\n}\r\n\r\nexport enum ImportanceTypes {\r\n NotImportant = 0,\r\n Important = 1\r\n}\r\n\r\nexport class FollowUpTeamUserPermissionsDTO {\r\n public UserId: string;\r\n public Name: string;\r\n public FollowerId: number;\r\n public XCPresidentId: number;\r\n public IsFollowupLeader: boolean;\r\n public CanViewDashboardTab: boolean;\r\n public CanViewToSetFollowInbox: boolean;\r\n public CanViewFollowupCorrespondenceOnMyTeamInbox: boolean;\r\n public CanViewAdvanceSearchTab: boolean;\r\n public CanViewFollowupAppointmentProcedure: boolean;\r\n public CanReAssignFollowup: boolean;\r\n public CanEndFollowup: boolean;\r\n public CanReAssignEndedFollowup: boolean;\r\n public CanEditDeadlineForCorrespondences: boolean;\r\n public CanEditDeadlineForCorrespondencesActions: boolean;\r\n public CanEditUrgencyForCorrespondences: boolean;\r\n public CanViewAllCompletedCorrespondences: boolean;\r\n}\r\n\r\nexport enum FollowUpTeamPermissionEnum {\r\n ViewDashboardTab = 1,\r\n ViewToSetFollowInbox = 2,\r\n ViewFollowupCorrespondenceOnMyTeamInbox = 3,\r\n ViewAdvanceSearchTab = 4,\r\n ViewSetFollowupTab = 5,//isActive = false\r\n ViewFollowupAppointmentProcedure = 6,\r\n ReAssignFollowup = 7,\r\n EndFollowup = 8,\r\n ReAssignEndedFollowup = 9,\r\n EditDeadlineForCorrespondences = 10,\r\n EditDeadlineForCorrespondencesActions = 11,\r\n EditUrgencyForCorrespondences = 12\r\n}\r\n\r\n","export enum LoginStatuses {\r\n Success,\r\n Lockout,\r\n RequiresTwoFactor,\r\n Failed,\r\n NeedResetPassword,\r\n InternalUserWithSSO,\r\n Blocked\r\n}\r\n\r\nexport enum LandingLoginMode\r\n{\r\n SSO = 0,\r\n Forms = 1,\r\n FormsWithSSO = 2\r\n}","import { HttpInterceptor } from \"../../../../_common/services/http-interceptor\";\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseService } from 'src/app/_common/services/baseService';\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { Router } from \"@angular/router\";\r\nimport { Observable } from \"rxjs\";\r\ndeclare var BERRY: IGlobalSettings;\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LoginService extends BaseService {\r\n baseURL = BERRY.hostName + \"api/LoginApi\";\r\n\r\n constructor(public http: HttpInterceptor, private httpClient: HttpClient, private router: Router) {\r\n super(http);\r\n }\r\n\r\n login(userInfo: any): Observable {\r\n return this.httpClient.post(`${this.baseURL}/GenerateToken`, userInfo)\r\n }\r\n\r\n forgotPassword(email: any): Observable {\r\n return this.httpClient.post(`${BERRY.hostName}api/ForgotPasswordApi/Post?email=${email}`, {});\r\n }\r\n\r\n confirmForExternal(id: string, code: string): Observable {\r\n return this.httpClient.post(`${BERRY.hostName}api/ConfirmEmailForExternalApi/Post?id=${id}&code=${code}`, {});\r\n }\r\n\r\n getResetPasswordToken(id: string, code: string): Observable {\r\n return this.httpClient.get(`${BERRY.hostName}api/ResetPasswordApi/Get?id=${id}&code=${code}`);\r\n }\r\n\r\n resetPasswordSubmit(Username, Code, Password, FirstLogin, ShowUserName): Observable {\r\n const body = {\r\n Code,\r\n Username,\r\n Password,\r\n FirstLogin,\r\n ShowUserName\r\n }\r\n return this.httpClient.post(`${BERRY.hostName}api/ResetPasswordApi/Post`, body);\r\n }\r\n\r\n confirmEmail(id: string, code: string): Observable {\r\n return this.httpClient.post(`${BERRY.hostName}api/ConfirmEmailApi/Post?userId=${id}&code=${code}`, {});\r\n }\r\n\r\n confirmEmailChange(id: string, email: string, code: string): Observable {\r\n return this.httpClient.post(`${BERRY.hostName}api/ConfirmEmailChangeApi/Post?userId=${id}&email=${email}&code=${code}`, {});\r\n }\r\n\r\n getProviders(id: string): Observable {\r\n return this.httpClient\r\n .get(`${BERRY.hostName}api/LoginWith2FAApi/GetProviders?userId=${id}`);\r\n }\r\n\r\n sendCode(param: any): Observable {\r\n return this.httpClient\r\n .post(`${BERRY.hostName}api/LoginWith2FAApi/SendCode`, param);\r\n }\r\n\r\n generateTokenAfterValidateCode(param: any): Observable {\r\n return this.httpClient\r\n .post(`${BERRY.hostName}api/LoginWith2FAApi/GenerateTokenAfterValidateCode`, param);\r\n }\r\n\r\n getManageTrustedIps() {\r\n return this.httpClient.get(`${this.baseURL}/GetLoginAuthenticationModeForTrustedIP`)\r\n }\r\n\r\n newUsersession(): Observable {\r\n return this.httpClient.post(`${BERRY.hostName}api/InitializeApplicationApi/NewUserSession`, {});\r\n }\r\n\r\n doneAndFireApplication(): Observable {\r\n var lang = localStorage.getItem(\"LanguagePrefrences\") ?? \"\";\r\n return this.httpClient.post(`${BERRY.hostName}api/InitializeApplicationApi/DoneAndFireApplication?lang=${lang}`, {} );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { User, UserManager, UserManagerSettings } from \"oidc-client\";\r\nimport { Observable, of, Subject } from \"rxjs\";\r\nimport { IGlobalSettings } from 'src/app/_common/models/IGlobalSettings';\r\nimport jwt_decode from \"jwt-decode\";\r\nimport { tap } from 'rxjs/operators';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Router } from '@angular/router';\r\nimport { LandingLoginMode, LoginStatuses } from '../components/login-landing-page/enums/Login-statuses.enum';\r\ndeclare var BERRY: IGlobalSettings\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AuthService {\r\n\r\n\r\n private _userManager: UserManager;\r\n private _user: User | null = null;\r\n private _loginChangedSubject = new Subject();\r\n $signinSilent = new Subject();\r\n expired: number = 0;\r\n public loginChanged = this._loginChangedSubject.asObservable();\r\n\r\n\r\n public get userManager(): UserManager {\r\n return this._userManager\r\n }\r\n private get idpSettings(): UserManagerSettings {\r\n if (BERRY.IsOAuthProviderEnabled == true) {\r\n var setting: any = {\r\n authority: BERRY.environment.authority.idpAuthority,\r\n client_id: BERRY.environment.authority.clientId,\r\n redirect_uri: `${BERRY.environment.authority.clientRoot}/${BERRY.environment.authority.loginCallback}`,\r\n scope: BERRY.environment.authority.scope,\r\n loadUserInfo: BERRY.environment.authority.loadUserInfo,\r\n automaticSilentRenew: true\r\n }\r\n\r\n if (!!BERRY.OAuthClientSecret)\r\n setting.client_secret = BERRY.OAuthClientSecret;\r\n\r\n if (!!BERRY.OAuthResponseType)\r\n setting.response_type = BERRY.OAuthResponseType;\r\n\r\n if (!!BERRY.OAuthCustomMetaDataUrl)\r\n setting.metadataUrl = BERRY.OAuthCustomMetaDataUrl;\r\n\r\n return setting;\r\n }\r\n }\r\n constructor(private http: HttpClient, private router: Router) {\r\n this._userManager = new UserManager(this.idpSettings);\r\n this._userManager.events.addAccessTokenExpired((_: any) => {\r\n this._loginChangedSubject.next(false);\r\n });\r\n }\r\n\r\n loginform(obj): Observable {\r\n return of(obj).pipe(tap((res) => {\r\n BERRY.forgeryToken = `Bearer ${res?.id_token}`;\r\n localStorage.setItem(\"auth\", JSON.stringify(res));\r\n localStorage.setItem('auth_clone', JSON.stringify(res))\r\n this.$signinSilent.next(res?.id_token);\r\n this._userManager.getUser = () => Promise.resolve(res);\r\n }))\r\n }\r\n\r\n makeRequest(opts) {\r\n return new Promise(function (resolve, reject) {\r\n var xhr = new XMLHttpRequest();\r\n xhr.open(opts.method, opts.url);\r\n xhr.onload = function () {\r\n if (xhr.status >= 200 && xhr.status < 300) {\r\n resolve(JSON.parse(xhr.response));\r\n } else {\r\n reject({\r\n status: xhr.status,\r\n statusText: xhr.statusText\r\n });\r\n }\r\n };\r\n xhr.onerror = function () {\r\n reject({\r\n status: xhr.status,\r\n statusText: xhr.statusText\r\n });\r\n };\r\n if (opts.headers) {\r\n Object.keys(opts.headers).forEach(function (key) {\r\n xhr.setRequestHeader(key, opts.headers[key]);\r\n });\r\n }\r\n\r\n xhr.send(opts.body);\r\n });\r\n }\r\n\r\n\r\n public get refreshTokenValue(): string {\r\n return JSON.parse(localStorage?.getItem('auth'))?.['refresh_token']\r\n }\r\n\r\n get isRefreshTokenExpired(): boolean {\r\n const RefreshTokenExpirationTime = (jwt_decode(this.refreshTokenValue)?.['exp'] * 1000);\r\n return RefreshTokenExpirationTime <= new Date().getTime();\r\n\r\n }\r\n\r\n signinSilent() {\r\n if (BERRY.AuthenticationMode == LandingLoginMode.Forms) {\r\n\r\n const token = JSON.parse(localStorage?.getItem('auth'))?.['id_token']\r\n return this.makeRequest(\r\n {\r\n method: 'POST',\r\n url: `${BERRY.hostName}api/LoginApi/GenerateTokenByRefreshToken`,\r\n\r\n headers: {\r\n 'authorization': `bearer ${token}`,\r\n 'content-type': 'application/json'\r\n },\r\n body: JSON.stringify(this.refreshTokenValue)\r\n }\r\n ).then((res: any) => {\r\n BERRY.forgeryToken = `Bearer ${res.AccessToken}`;\r\n const auth: any = {\r\n id_token: res?.AccessToken,\r\n session_state: null,\r\n access_token: res.AccessToken,\r\n refresh_token: res.RefreshToken,\r\n token_type: 'Bearer'\r\n }\r\n localStorage.setItem(\"auth\", JSON.stringify(auth));\r\n localStorage.setItem(\"auth_clone\", JSON.stringify(auth));\r\n this.$signinSilent.next(auth?.id_token);\r\n\r\n this._userManager.getUser = () => Promise.resolve(auth);\r\n return auth\r\n });\r\n }\r\n var isloginViaSSOScreen = localStorage.getItem(\"LoginViaSSOScreen\");\r\n\r\n if (BERRY.AuthenticationMode == LandingLoginMode.FormsWithSSO && isloginViaSSOScreen == \"false\") {\r\n const refreshToken = JSON.parse(localStorage?.getItem('auth'))?.['refresh_token']\r\n const token = JSON.parse(localStorage?.getItem('auth'))?.['id_token']\r\n\r\n return this.makeRequest(\r\n {\r\n method: 'POST',\r\n url: `${BERRY.hostName}api/LoginApi/GenerateTokenByRefreshToken`,\r\n\r\n headers: {\r\n 'authorization': `bearer ${token}`,\r\n 'content-type': 'application/json'\r\n },\r\n body: JSON.stringify(refreshToken)\r\n }\r\n ).then((res: any) => {\r\n BERRY.forgeryToken = `Bearer ${res.AccessToken}`;\r\n const auth: any = {\r\n id_token: res?.AccessToken,\r\n session_state: null,\r\n access_token: res.AccessToken,\r\n refresh_token: res.RefreshToken,\r\n token_type: 'Bearer'\r\n }\r\n localStorage.setItem(\"auth\", JSON.stringify(auth));\r\n localStorage.setItem(\"auth_clone\", JSON.stringify(auth));\r\n this.$signinSilent.next(auth.id_token);\r\n\r\n this._userManager.getUser = () => Promise.resolve(auth);\r\n return auth\r\n });\r\n }\r\n else if (BERRY.AuthenticationMode == LandingLoginMode.SSO || isloginViaSSOScreen == \"true\")\r\n return this._userManager.signinSilent({\r\n scope: !!BERRY.OAuthScopes ? BERRY.OAuthScopes : 'email'\r\n }).then((res) => {\r\n BERRY.forgeryToken = `Bearer ${res?.id_token}`;\r\n localStorage.setItem(\"auth\", JSON.stringify(res));\r\n localStorage.setItem(\"auth_clone\", JSON.stringify(res));\r\n this.$signinSilent.next(res?.id_token);\r\n this._userManager.getUser = () => Promise.resolve(res);\r\n return res\r\n });\r\n }\r\n\r\n\r\n refreshToken() {\r\n return this.signinSilent().catch((e) => {\r\n sessionStorage.clear();\r\n localStorage.clear();\r\n this.clearUserData();\r\n location.reload();\r\n })\r\n }\r\n\r\n\r\n public get allowGenerateTokenByRefreshTokene() {\r\n const isloginViaSSOScreen = localStorage.getItem(\"LoginViaSSOScreen\");\r\n return (BERRY.AuthenticationMode == LandingLoginMode.FormsWithSSO && isloginViaSSOScreen == \"false\") || BERRY.AuthenticationMode == LandingLoginMode.Forms\r\n }\r\n loadSession(): Promise {\r\n let sessionKey = `auth`;\r\n if (BERRY.AuthenticationMode == LandingLoginMode.SSO) {\r\n sessionKey = `oidc.user:${BERRY.environment.authority.idpAuthority}:${BERRY.environment.authority.clientId}`;\r\n }\r\n const auth = localStorage.getItem(\"auth\");\r\n\r\n if (!!auth) {\r\n const { id_token } = JSON.parse(auth) as any;\r\n const expired = (jwt_decode(id_token)?.['exp'] * 1000) - (1000 * 60 * 5);\r\n if (new Date() < new Date(expired)) {\r\n sessionStorage.setItem(sessionKey, auth);\r\n this._userManager.getUser = () => Promise.resolve(JSON.parse(auth));\r\n return Promise.resolve();\r\n } else {\r\n return Promise.reject(0);\r\n }\r\n\r\n } else {\r\n return Promise.reject(1);\r\n }\r\n\r\n }\r\n public login = () => {\r\n return this._userManager.signinRedirect().catch((e) => {\r\n BERRY.OAuthCustomMetaDataUrl = BERRY.absoluteHostName + \"api/ConfigurationApi/.well-known/openid-configuration\";\r\n this._userManager = new UserManager(this.idpSettings);\r\n this._userManager.signinRedirect();\r\n });\r\n }\r\n private _token: string | null = null;\r\n get token(): string | null {\r\n return this._token;\r\n }\r\n\r\n set token(value: string | null) {\r\n this._token = value;\r\n }\r\n public getAccessToken = (): Promise => {\r\n\r\n return this._userManager.getUser().then((user: any) => {\r\n this._token = !!user && !user.expired ? user?.id_token : null;\r\n return this._token;\r\n });\r\n }\r\n\r\n public isAuthenticated = (): Promise => {\r\n return this._userManager.getUser()\r\n .then((user: any) => {\r\n if (user == null) {\r\n this._loginChangedSubject.next(false);\r\n }\r\n if (this._user !== user) {\r\n this._loginChangedSubject.next(this.checkUser(user));\r\n }\r\n\r\n this._user = user;\r\n\r\n return this.checkUser(user);\r\n })\r\n }\r\n public finishLogin = (): Promise => {\r\n this._userManager.signinCallback().then((user: any) => {\r\n })\r\n return this._userManager.signinRedirectCallback()\r\n .then((user: any) => {\r\n this._loginChangedSubject.next(this.checkUser(user));\r\n return user;\r\n })\r\n }\r\n loginStatuses;\r\n loginViaSSOScreen: string = \"false\";\r\n\r\n\r\n isBusy: boolean = false;\r\n\r\n public logout = () => {\r\n this.loginStatuses = +localStorage.getItem(\"LoginStatuses\");\r\n this.loginViaSSOScreen = localStorage.getItem(\"LoginViaSSOScreen\");\r\n\r\n\r\n\r\n if (BERRY.AuthenticationMode == LandingLoginMode.SSO ||\r\n (\r\n BERRY.AuthenticationMode == LandingLoginMode.FormsWithSSO &&\r\n (this.loginStatuses == LoginStatuses.InternalUserWithSSO || this.loginViaSSOScreen == \"true\")\r\n )\r\n\r\n\r\n\r\n ) {\r\n this._userManager.signoutRedirect().then(cbF => {\r\n this.isBusy = false;\r\n this.clearData();\r\n this._userManager.clearStaleState();\r\n })\r\n }\r\n else\r\n this.http.post(`${BERRY.hostName}api/LoginApi/Logout`, {}).subscribe({\r\n next: () => {\r\n this.isBusy = false;\r\n this.clearData();\r\n window.top.location.href = \"/\";\r\n },\r\n error: () => { this.isBusy = false }\r\n })\r\n }\r\n\r\n\r\n\r\n clearData() {\r\n sessionStorage.clear();\r\n var lang = localStorage.getItem('lang');\r\n localStorage.clear();\r\n localStorage.setItem('lang', lang);\r\n }\r\n\r\n public clearUserData = () => {\r\n this._userManager.clearStaleState()\r\n }\r\n\r\n public finishLogout = () => {\r\n this._user = null;\r\n this._loginChangedSubject.next(false);\r\n return this._userManager.signoutRedirectCallback();\r\n }\r\n\r\n\r\n public checkIfUserIsInRole(roles: string[]): Promise {\r\n return this._userManager.getUser()\r\n .then((user: any) => {\r\n return roles.some(a => user?.profile[\"role\"].some(a));\r\n })\r\n }\r\n\r\n public checkUser = (user: User | null): boolean => {\r\n return !!user && !user.expired;\r\n }\r\n\r\n}","\r\nimport { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Router, ActivatedRoute } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { IGlobalSettings } from 'src/app/_common/models/IGlobalSettings';\r\nimport { map } from 'rxjs/operators';\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AccessModulesGuard {\r\n\r\n constructor(public router: Router,public activatedroute: ActivatedRoute) {}\r\n\r\n canActivate(\r\n route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot)\r\n : Observable | Promise | boolean | UrlTree { \r\n\r\n //return true\r\n\r\n return BERRY.$user.pipe(map(() => {\r\n \r\n // let userLandingPage = BERRY.User.LandingPageRoute;\r\n // let isImpersonated = BERRY.User.ActualUserId != BERRY.User.UserId;\r\n\r\n let moduleId = route.data.moduleId\r\n let modules = [ \r\n ...BERRY.User.UserModules,\r\n ] \r\n \r\n // if (!isImpersonated && ((userLandingPage && userLandingPage != \"\" && !BERRY.User.IsExternalUser) || BERRY.User.IsOnAnActiveCommittee) != 'false' ){\r\n // modules.push({\r\n // \"Id\": 19,\r\n // \"NameEn\": \"Dashboard\",\r\n // }) \r\n // }\r\n \r\n if(BERRY.User.Permissions.ViewManageApplication) {\r\n modules.push({\r\n \"Id\": 0,\r\n \"NameEn\": \"Admin\",\r\n }) \r\n }\r\n \r\n let hasModule = modules.some((i)=>{ return i.Id == moduleId })\r\n \r\n if(!hasModule) {\r\n this.router.navigate(\r\n [\"no-content\"],\r\n { queryParams: { msg: BERRY.getText('NotHavingModulePermission', 'ModulePermission') } }\r\n )\r\n } else {\r\n return true\r\n }\r\n \r\n }))\r\n }\r\n\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Router, ActivatedRouteSnapshot, RouterStateSnapshot } from \"@angular/router\";\r\nimport { IGlobalSettings } from \"../_common/models/IGlobalSettings\";\r\nimport { AppModulesEnum } from \"../_common/models/AppModulesEnum\";\r\nimport { MessagingService } from \"../_common/services/messaging-service\";\r\nimport { generalSettingsSvc } from \"../berry/correspondences/manage/generalSettings/general-settings-svc\";\r\nimport { takeWhile, map } from \"rxjs/operators\";\r\nimport { Observable } from \"rxjs\";\r\n\r\nimport { AuthService } from \"../framework/services/auth.service\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var NProgress: any;\r\n\r\n@Injectable()\r\nexport class LandingPageGuardService {\r\n isLoggedIn: boolean = false;\r\n isSubscribed: boolean = true;\r\n clientAppModules: any[] = [];\r\n xcPresidents: any[] = [];\r\n landingPage: '';\r\n constructor(public router: Router,\r\n public messagingSvc: MessagingService,\r\n public generalSettingsSvc: generalSettingsSvc,\r\n public authService: AuthService) {\r\n\r\n\r\n }\r\n\r\n canActivate(\r\n route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot\r\n ): boolean {\r\n BERRY.$user.subscribe(() => {\r\n let navigateToDashboards: boolean = false;\r\n let isImpersonated = BERRY.User.ActualUserId != BERRY.User.UserId;\r\n let isFullyImpersonated = BERRY.User.IsFullImpersonation;\r\n let userLandingPage = BERRY.User.LandingPageRoute;\r\n const isUserManager = BERRY.User.IsManager == \"true\";\r\n const enableManagerDashboard = BERRY.appSettings.keys.enableManagerDashboard;\r\n\r\n if (!isImpersonated || (isImpersonated && isFullyImpersonated)) {\r\n if (\r\n ((userLandingPage && userLandingPage != \"\" && !BERRY.User.IsExternalUser)\r\n ||\r\n BERRY.User.IsOnAnActiveCommittee) != 'false'\r\n ) {\r\n navigateToDashboards = true;\r\n }\r\n }\r\n\r\n if (navigateToDashboards) {\r\n if (userLandingPage && userLandingPage != \"\" && !BERRY.User.IsExternalUser) {\r\n //dashboard\r\n if (userLandingPage.toLowerCase().includes('dashboard')) {\r\n if (this.router.url === \"/Dashboards\") {\r\n this.refreshDashboard();\r\n }\r\n else {\r\n this.router.navigate([`Dashboards`]);\r\n }\r\n\r\n } else {\r\n this.router.navigate([userLandingPage]);\r\n\r\n }\r\n }\r\n // BERRY.appSettings.keys.enableManagerDashboard\r\n else if (enableManagerDashboard && isUserManager) {\r\n if (this.router.url === \"/Dashboards\") {\r\n this.refreshDashboard();\r\n }\r\n else {\r\n this.router.navigate([`Dashboards`]);\r\n }\r\n\r\n }\r\n //BERRY.User.IsOnAnActiveCommittee\r\n else if (BERRY.User.IsOnAnActiveCommittee == \"true\") {\r\n if (this.router.url === \"/Dashboards\") {\r\n this.refreshDashboard();\r\n }\r\n else {\r\n this.router.navigate([`Dashboards`]);\r\n }\r\n }\r\n else {\r\n this.getClientAppModulesSetting();\r\n }\r\n }\r\n // no dashboard ExternalUser\r\n else {\r\n if (BERRY.User.IsExternalUser == false) {\r\n this.getClientAppModulesSetting();\r\n }\r\n else if (BERRY.User.IsExternalUser && (BERRY.onOffFeatures.advanced_Meeting || BERRY.onOffFeatures.advanced_Committee)\r\n && userLandingPage !== null\r\n && userLandingPage !== \"\") {\r\n this.router.navigate([userLandingPage]);\r\n }\r\n else {\r\n this.getClientAppModulesSetting();\r\n }\r\n }\r\n })\r\n\r\n return false;\r\n }\r\n\r\n refreshDashboard() {\r\n this.messagingSvc.publish(\"RefreshDashboardData\");\r\n NProgress.set(0.8);\r\n setTimeout(() => NProgress.done(), 100);\r\n }\r\n\r\n getClientAppModulesSetting() {\r\n var me = this;\r\n var clientAppModules = BERRY.ClientAppModules?.map(item => item.Id);\r\n var UserModules = BERRY.User.UserModules?.map(item => item.Id);\r\n\r\n if (!UserModules.some(x => clientAppModules.includes(x))) {\r\n me.router.navigate(['/noAccessPermissions']);\r\n return;\r\n }\r\n me.generalSettingsSvc\r\n .GetClientAppModulesSettings()\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n if (data && data != null) {\r\n me.clientAppModules = data;\r\n this.GetXCPresidentsListByUserId();\r\n }\r\n else {\r\n me.clientAppModules = [];\r\n }\r\n });\r\n\r\n }\r\n\r\n landingPageRoute(clientAppModules, userAppModules) {\r\n var me = this;\r\n //التواصل الإداري logic\r\n //this.showXCModule = false;\r\n let userLandingPage = BERRY.User.LandingPageRoute;\r\n var userAppModuleids = userAppModules.map(a => a.Id);\r\n var userAppModuleidsRemoveXCModule = userAppModuleids;\r\n if (!this.showXCModule) {\r\n userAppModuleidsRemoveXCModule = userAppModuleids.filter(function (item) {\r\n return item !== 10\r\n })\r\n }\r\n return clientAppModules.some(function (v) {\r\n if (userAppModuleidsRemoveXCModule.indexOf(v.AppModuleId) >= 0) {\r\n var routing = v.LandingPageRoute;\r\n if (me.clientAppModules != undefined && me.clientAppModules.length > 0\r\n && me.clientAppModules[0].AppModuleId == AppModulesEnum.Correspondences\r\n && !userLandingPage.toLowerCase().includes('dashboard')) {\r\n routing = me.entityManagerRouting(routing);\r\n }\r\n me.landingPage = routing;\r\n return true;\r\n }\r\n });\r\n };\r\n\r\n public entityManagerRouting(routing: string): string {\r\n if ((BERRY.User.IsManager == 'true' || BERRY.User.IsCommitteeManager == 'true') && BERRY.User.UserModules[0].Id == AppModulesEnum.Correspondences) {\r\n return '/correspondence/DashboardCorrespondence/MainDashboard';\r\n } else {\r\n return routing;\r\n }\r\n }\r\n\r\n public viewExecutiveCommunication() {\r\n return BERRY.onOffFeatures.executive_Communication;\r\n }\r\n\r\n public GetXCPresidentsListByUserId() {\r\n let me = this;\r\n me.generalSettingsSvc\r\n .GetXCPresidentsListByUserId()\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(data => {\r\n me.xcPresidents = data;\r\n me.landingPageRoute(me.clientAppModules, BERRY.User.UserModules);\r\n var routing = me.landingPage;\r\n me.router.navigate([routing]);\r\n });\r\n }\r\n\r\n get showXCModule() {\r\n return this.viewExecutiveCommunication() && this.xcPresidents != null && this.xcPresidents.length > 0;\r\n }\r\n\r\n\r\n\r\n}\r\n\r\n@Injectable()\r\nexport class CorrespondencePageGuardService {\r\n _isLoggedIn: boolean = false;\r\n\r\n constructor(public router: Router, public messagingSvc: MessagingService,\r\n public generalSettingsSvc: generalSettingsSvc, public authService: AuthService) { }\r\n\r\n canActivate(\r\n _route: ActivatedRouteSnapshot,\r\n _state: RouterStateSnapshot\r\n ): Observable | Promise | boolean {\r\n let landingPageGuardSVC: LandingPageGuardService = new LandingPageGuardService(this.router, this.messagingSvc, this.generalSettingsSvc, this.authService);\r\n\r\n return BERRY.$user.pipe(map(() => {\r\n if (BERRY?.User?.UserModules?.filter(x => x.Id == AppModulesEnum.Correspondences).length == 0) {\r\n landingPageGuardSVC.isLoggedIn = this._isLoggedIn;\r\n landingPageGuardSVC.canActivate(_route, _state);\r\n }\r\n else {\r\n return true;\r\n }\r\n }))\r\n\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class ArchiveStudiesPageGuardService {\r\n constructor(public router: Router, public messagingSvc: MessagingService,\r\n public generalSettingsSvc: generalSettingsSvc, public authService: AuthService) { }\r\n\r\n canActivate(\r\n _route: ActivatedRouteSnapshot,\r\n _state: RouterStateSnapshot\r\n ): Observable | Promise | boolean {\r\n let landingPageGuardSVC: LandingPageGuardService = new LandingPageGuardService(this.router, this.messagingSvc, this.generalSettingsSvc, this.authService);\r\n\r\n return BERRY.$user.pipe(map(() => {\r\n if (BERRY?.User?.UserModules?.filter(x => x.Id == AppModulesEnum.Archive).length == 0) {\r\n landingPageGuardSVC.canActivate(_route, _state);\r\n }\r\n else {\r\n return true;\r\n }\r\n }))\r\n\r\n }\r\n}","export enum ImportanceEnum {\r\n NotImportant,\r\n Important,\r\n VeryImportant\r\n}","import { Injectable } from '@angular/core';\r\nimport { ImportanceEnum } from '../enums/Importance.enum';\r\n\r\n@Injectable()\r\nexport class NotificationCenterImportanceService {\r\n\r\n getImportanceColor(enumValue: ImportanceEnum): string {\r\n switch (enumValue) {\r\n case ImportanceEnum.NotImportant:\r\n return '#009A12'; // Green\r\n case ImportanceEnum.Important:\r\n return '#F4B50A'; // Yellow\r\n case ImportanceEnum.VeryImportant:\r\n return '#C85547'; // Red\r\n }\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { BaseService } from \"src/app/_common/services/baseService\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\nimport { HttpInterceptor } from \"src/app/_common/services/http-interceptor\";\r\nimport {NotificationCenterFilterDto, NotificationCenterUpdateDto } from \"../models/NotificationCenterDto\";\r\nimport { Observable } from \"rxjs\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n@Injectable()\r\nexport class NotificationCenterSVC extends BaseService {\r\n selectUserTypeId: string = null;\r\n UserTypeName: string = \"\";\r\n UserPreferencesId: string = null;\r\n UserPreferencesName: string = \"\";\r\n private readonly baseUrl: string = `${BERRY.hostName}api/manage-notifications/`;\r\n\r\n constructor(http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n //#region \"System Defaults Page\"\r\n GetSystemDefaults(notificationCenterDto: NotificationCenterFilterDto): Observable {\r\n const url = `${this.baseUrl}system-defaults`;\r\n return super.post(url, notificationCenterDto);\r\n }\r\n\r\n GetRoleDefaults(notificationCenterDto: NotificationCenterFilterDto): Observable {\r\n const url = `${this.baseUrl}user-types`;\r\n return super.post(url, notificationCenterDto);\r\n }\r\n\r\n updateSystemDefaultFlag(notificationCenterDto: NotificationCenterUpdateDto): Observable {\r\n const url = `${this.baseUrl}update-system-default-flag`;\r\n return super.post(url, notificationCenterDto);\r\n }\r\n\r\n updateSystemDefaultImportance(notificationCenterDto: NotificationCenterUpdateDto): Observable {\r\n return super.post(`${this.baseUrl}update-system-default-importance`, notificationCenterDto);\r\n }\r\n\r\n updateRoleFlag(notificationCenterDto: NotificationCenterUpdateDto): Observable {\r\n const url = `${this.baseUrl}update-user-type-flag`;\r\n return super.post(url, notificationCenterDto);\r\n }\r\n\r\n updateUserTypeImportance(notificationCenterDto: NotificationCenterUpdateDto): Observable {\r\n return super.post(`${this.baseUrl}update-user-type-importance`, notificationCenterDto);\r\n }\r\n\r\n reseltRoleFlag(notificationCenterDto: NotificationCenterUpdateDto): Observable {\r\n const url = `${this.baseUrl}reset-user-type-flags`;\r\n return super.post(url, notificationCenterDto);\r\n }\r\n //#endregion \"System Defaults Page\"\r\n\r\n //#region \"Users Page\"\r\n GetUserPreferences(notificationCenterFilterDto: NotificationCenterFilterDto): Observable {\r\n const url = `${this.baseUrl}user`;\r\n return super.post(url, notificationCenterFilterDto);\r\n }\r\n\r\n UpdateUserFlag(NotificationCenterUpdateDto: NotificationCenterUpdateDto): Observable {\r\n const url = `${this.baseUrl}update-user-flag`;\r\n return super.post(url, NotificationCenterUpdateDto);\r\n }\r\n\r\n updateUserImportance(NotificationCenterUpdateDto: NotificationCenterUpdateDto): Observable {\r\n return super.post(`${this.baseUrl}update-user-importance`, NotificationCenterUpdateDto);\r\n }\r\n\r\n ResetUserTypeFlags(notificationCenterDto: NotificationCenterUpdateDto): Observable {\r\n const url = `${this.baseUrl}reset-user-flags`;\r\n return super.post(url, notificationCenterDto);\r\n }\r\n\r\n UpdateChannelSystemFlags(NotificationCenterUpdateDto: NotificationCenterUpdateDto): Observable {\r\n const url = `${this.baseUrl}update-channel-system-default-flags`;\r\n return super.post(url, NotificationCenterUpdateDto);\r\n }\r\n\r\n UpdateChannelUserTypeFlags(NotificationCenterUpdateDto: NotificationCenterUpdateDto): Observable {\r\n const url = `${this.baseUrl}update-channel-user-type-flags`;\r\n return super.post(url, NotificationCenterUpdateDto);\r\n }\r\n\r\n UpdateChannelUserFlags(NotificationCenterUpdateDto: NotificationCenterUpdateDto): Observable {\r\n const url = `${this.baseUrl}update-channel-user-flags`;\r\n return super.post(url, NotificationCenterUpdateDto);\r\n }\r\n\r\n UpdateUserFlagForNotificationChannels(NotificationCenterUpdateDto: NotificationCenterUpdateDto): Observable {\r\n const url = `${this.baseUrl}update-user-flag-notification-channels`;\r\n return super.post(url, NotificationCenterUpdateDto);\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { IGlobalSettings } from \"../models/IGlobalSettings\";\r\nimport { takeWhile } from \"rxjs/operators\";\r\nimport { LoginViewModel } from \"../../_common/models/LoginViewModel\";\r\nimport { LoginResult } from \"../../_common/models/LoginResult\";\r\nimport { SendCodeViewModel } from \"../../_common/models/SendCodeViewModel\";\r\nimport { VerifyCodeViewModel } from \"../../_common/models/VerifyCodeViewModel\";\r\nimport { BaseService } from \"./baseService\";\r\nimport { HttpInterceptor } from \"./http-interceptor\";\r\ndeclare var BERRY: IGlobalSettings;\r\n@Injectable()\r\n///Taks panel service\r\nexport class SessionTimeoutService extends BaseService {\r\n isSubscribed: boolean = true;\r\n\r\n ngOnDestroy() {\r\n this.isSubscribed = false;\r\n }\r\n\r\n baseLoginURL = BERRY.absoluteHostName + \"api/Account/LoginJson\";\r\n baseSendCodeURL = BERRY.absoluteHostName + \"api/Account/SendCodeJson\";\r\n baseVerifyCodeURL = BERRY.absoluteHostName + \"api/Account/VerifyCodeJson\";\r\n baseGetFactorsURL = BERRY.absoluteHostName + \"api/Account/GetFactorsJson\";\r\n\r\n ///---- constructors\r\n constructor(http: HttpInterceptor) {\r\n super(http);\r\n }\r\n\r\n public Login(model: LoginViewModel, onSuccess: (data: LoginResult) => void, onFail: (message: string) => void): void {\r\n this.IsBusy = true;\r\n var me = this;\r\n super.post(this.baseLoginURL, model)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n result => {\r\n me.IsBusy = false;\r\n onSuccess(result);\r\n },\r\n error => {\r\n me.IsBusy = false;\r\n onFail(error);\r\n }\r\n );\r\n }\r\n\r\n public SendCode(\r\n provider: SendCodeViewModel,\r\n onSuccess: (data: LoginResult) => void,\r\n onFail: (message: string) => void\r\n ): void {\r\n this.IsBusy = true;\r\n var me = this;\r\n super\r\n .get(super.constructUrl(this.baseSendCodeURL, provider))\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n result => {\r\n me.IsBusy = false;\r\n onSuccess(result);\r\n },\r\n error => {\r\n me.IsBusy = false;\r\n onFail(error);\r\n }\r\n );\r\n }\r\n public VerifyCode(model: VerifyCodeViewModel, onSuccess: (data: LoginResult) => void, onFail: (message: string) => void): void {\r\n this.IsBusy = true;\r\n var me = this;\r\n\r\n super.post(this.baseVerifyCodeURL, model)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n result => {\r\n me.IsBusy = false;\r\n onSuccess(result);\r\n },\r\n error => {\r\n me.IsBusy = false;\r\n onFail(error);\r\n }\r\n );\r\n }\r\n\r\n public GetFactors(userId: string,\r\n onSuccess: (data: any) => void,\r\n onFail: (message: string) => void\r\n ): void {\r\n this.IsBusy = true;\r\n var me = this;\r\n super\r\n .get(this.baseGetFactorsURL + \"?userId=\" + userId)\r\n .pipe(takeWhile(() => me.isSubscribed))\r\n .subscribe(\r\n result => {\r\n me.IsBusy = false;\r\n onSuccess(result);\r\n },\r\n error => {\r\n me.IsBusy = false;\r\n onFail(error);\r\n }\r\n );\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Router, ActivatedRouteSnapshot, RouterStateSnapshot } from \"@angular/router\";\r\nimport { IGlobalSettings } from \"../_common/models/IGlobalSettings\";\r\nimport { MessagingService } from \"../_common/services/messaging-service\";\r\n\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\ndeclare var NProgress: any;\r\n\r\n@Injectable()\r\nexport class CustomReportsGuardService {\r\n isLoggedIn: boolean = false;\r\n\r\n constructor(public router: Router, public messagingSvc: MessagingService) { }\r\n\r\n canActivate(\r\n route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot\r\n ): boolean {\r\n let isImpersonated = BERRY.User.IsImpersonated; \r\n \r\n if (isImpersonated && state.url == '/reports/index/CustomReports/1') {\r\n this.router.navigate([\"/no-content\"]); \r\n }\r\n \r\n return true; \r\n\r\n } \r\n\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Router, ActivatedRouteSnapshot, RouterStateSnapshot } from \"@angular/router\";\r\nimport { IGlobalSettings } from \"src/app/_common/models/IGlobalSettings\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class RequestedReportsGuardService {\r\n constructor(public router: Router) { }\r\n\r\n canActivate(\r\n route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot\r\n ): boolean {\r\n if (BERRY.User.IsImpersonated && !BERRY.User.CanViewExtractedReports && state.url == '/reports/index/RequestedReport') {\r\n this.router.navigate([\"/reports/index/CustomReports/0\"]); \r\n }\r\n \r\n return true; \r\n } \r\n}","// Angular and third-party imports\r\nimport { CommonModule } from \"@angular/common\";\r\nimport { NgModule } from \"@angular/core\";\r\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\r\nimport { RouterModule } from \"@angular/router\";\r\nimport { AlertConfig, AlertModule } from \"ngx-bootstrap/alert\";\r\nimport { ModalModule, } from \"ngx-bootstrap/modal\";\r\nimport { TimepickerModule, } from \"ngx-bootstrap/timepicker\";\r\nimport { CollapseModule, } from \"ngx-bootstrap/collapse\";\r\nimport { BsDropdownModule, } from \"ngx-bootstrap/dropdown\";\r\nimport { PaginationService, NgxPaginationModule } from \"ngx-pagination\";\r\n\r\nimport { LocalStorageService } from \"ngx-webstorage\";\r\n//===============================================================================================\r\n\r\nimport { DetailsAttachmentsAddCmp } from \"../_common/components/Attachment/details-attachment-add-cmp\";\r\nimport { DetailsAttachmentsFlextViewer } from \"../_common/components/Attachment/details-attachment-flexViewer-cmp\";\r\nimport { DetailsAttachmentsOfficeFrame } from \"../_common/components/Attachment/details-attachment-officeFrame-cmp\";\r\nimport { AttachmentsRecommendationCmp } from \"../_common/components/Attachment/details-attachment-recommendation-cmp\";\r\nimport { DetailsAttachmentsSendEmailCmp } from \"../_common/components/Attachment/details-attachment-sendEmail-cmp\";\r\nimport { DetailsAttachmentSVC } from \"../_common/components/Attachment/details-attachment-svc\";\r\nimport { DeleteButtonComponent } from \"../_common/components/buttons/DeleteButton.component\";\r\nimport { CusDropDownComponent } from \"../_common/components/cusDropdown-cmp\";\r\nimport { DatePickerWidgetComponent } from \"../_common/components/DatePicker.component\";\r\nimport { DatePickerLabelCmp } from \"../_common/components/DatePickerLabel-cmp\";\r\nimport { SetUserSignatureCmp } from \"../_common/components/eSignature/set-user-signature-cmp\";\r\nimport { SignatureDeviceCmp } from \"../_common/components/eSignature/signature-device-cmp\";\r\nimport { SignatureSVC } from \"../_common/components/eSignature/signature-svc\";\r\nimport { fbInternalRecipientComponent } from \"../_common/components/form-builder/components/correspondence-recipient/fb-internal-recipient\";\r\nimport { fbExternalRecipientAsCopyComponent } from \"../_common/components/form-builder/components/correspondence-recipient/fb-external-recipient-as-copy\";\r\nimport { fbAttachmentListComponent } from \"../_common/components/form-builder/components/attachment-list/fb-attachment-list\";\r\nimport { fbIndividualContactsControlComponent } from \"../_common/components/form-builder/components/contacts-control/fb-individual-contacts-control\";\r\nimport { fbOrganizationContactsControlComponent } from \"../_common/components/form-builder/components/contacts-control/fb-organization-contacts-control\";\r\nimport { fbCorrespondenceKeywordComponent } from \"../_common/components/form-builder/components/correspondence-keyword/fb-correspondence-keyword\";\r\nimport { fbInformationSourceComponent } from \"../_common/components/form-builder/components/information-source/fb-information-source\";\r\nimport { fbLookupDropdownComponent } from \"../_common/components/form-builder/components/lookup-dropdown/fb-lookup-dropdown-cmp\";\r\nimport { fbproclamedEntityTypesComponent } from \"../_common/components/form-builder/components/proclamed-entity-types/fb-proclamed-entity-types\";\r\nimport { fbproclameeComponent } from \"../_common/components/form-builder/components/proclamee/fb-proclamee\";\r\nimport { fbproclameeTypeComponent } from \"../_common/components/form-builder/components/proclamee-type/fb-proclamee-type\";\r\nimport { tangibleItemsComponent } from \"../_common/components/form-builder/components/tangible-items/fb-tangible-items\";\r\nimport { FroalaEditor } from \"../_common/components/FroalaEditor/froalEditor-cmp\";\r\nimport { MainHeaderComponent } from \"../_common/components/header/header.component\";\r\nimport { impersonationModalCmp } from \"../_common/components/header/impersonationModal.component\";\r\nimport { UserGuidelinesModalCmp } from \"../_common/components/header/UserGuidelinesModal.cmp\";\r\nimport { ImageCropperCmp } from \"../_common/components/ImageCropper/ImageCropperCmp\";\r\nimport { loader } from \"../_common/components/Loader/loader.component\";\r\nimport { LocalizationService } from \"../_common/components/localization/localization-service\";\r\nimport { noDataFound } from \"../_common/components/NoDataFound/noDataFound.component\";\r\nimport { NotificationComponent } from \"../_common/components/Notification/Notification\";\r\nimport { MeetingInvitationComponent } from \"../_common/components/Meeting-Invitations/Meeting-Invitations\";\r\nimport { OnlineUsersPanelComponent } from \"../_common/components/OnlineUsersPanel/OnlineUsersPanel.component\";\r\nimport { FlowPaperBridgeService } from \"../_common/components/PdfViewer251/flowpaper-bridge-svc\";\r\nimport { PopoverCmp } from \"../_common/components/popover.component\";\r\nimport { RemindersComponent } from \"../_common/components/Reminders/Reminders\";\r\nimport { ReminderSnoozeModalCmp } from \"../_common/components/Reminders/ReminderSnoozeModalCmp\";\r\nimport { SidebarComponent } from \"../_common/components/sidebar/sidebar-component\";\r\nimport { TasksPanelComponent } from \"../_common/components/Tasks Panel/TasksPanel.component\";\r\nimport { UserProfileSvc } from \"../_common/components/UserProfile/userProfile-Svc\";\r\nimport { ControlMessagesComponent } from \"../_common/components/validator/control-error-messages.component\";\r\nimport { BerryOfflineDirective } from \"../_common/directives/berry-offline-directive\";\r\nimport { LogoutUserDirective } from \"../_common/directives/logout-user-directive\";\r\nimport { EqualValidator } from \"../_common/directives/validator/equal-validator.directive\";\r\nimport { dateFormatter, TruncatePipe, dateFormatterMoment, formatString } from \"../_common/filters/custom-pipes\";\r\nimport { todatetime } from \"../_common/filters/todatetime-filter\";\r\nimport { TranslationPipe } from \"../_common/filters/translation.pipe\";\r\nimport { ConfirmationBox, DialogManager } from \"../_common/services/dialog-manager\";\r\nimport { UrgentConfirmationBox, UrgentDialogManager } from \"../_common/services/dialog-Urgent\";\r\nimport { SessionTimeoutService } from \"../_common/services/sessionTimeout-service\";\r\nimport { UserGuidServices } from \"../_common/services/UserGuid-svc\";\r\nimport { webTwainSVC } from \"../_common/services/webTwain.wrapper\";\r\nimport { datetimeHelper } from \"../_common/utils/datetimeHelper\";\r\nimport { LookupHelpers } from \"../Lookups/LookupHelpers\";\r\nimport { DatePicker } from \"src/app/_common/directives/DatePicker\";\r\nimport { DatePicker2 } from \"src/app/_common/directives/DatePicker2\";\r\nimport { kendoAutoComplete } from \"src/app/_common/directives/KendoUI-wrappers/kendoAutoComplete\";\r\nimport { kendoMultiSelect } from \"src/app/_common/directives/KendoUI-wrappers/kendoMultiSelect\";\r\nimport { kendoSliderComponent } from \"src/app/_common/directives/KendoUI-wrappers/kendoSlider\";\r\nimport { UserPermissionService } from \"src/app/_common/services/Permissions/user-permission-service\";\r\n\r\n// Required by inboxes/header/actions\r\nimport { CCModal } from \"../berry/correspondences/_common/CCModal-cmp\";\r\nimport { CorrespondanceApplicationHistoryCmp } from \"../berry/correspondences/_common/CorrespondanceApplicationHistory-cmp\";\r\nimport { CorrespondanceApplicationHistoryLastStepCmp } from \"../berry/correspondences/_common/correspondance-application-history-laststep-cmp\";\r\nimport { CorrRecordCmp } from \"../berry/correspondences/_common/CorrespondanceRecord-cmp\";\r\nimport { CorrRecordInboxCmp } from \"../berry/correspondences/_common/CorrespondanceRecordInbox-cmp\";\r\nimport { CorrespondanceRecordSVC } from \"../berry/correspondences/_common/CorrespondanceRecord-svc\";\r\nimport { AttachmentslistCmp } from \"../berry/correspondences/_common/CorrespondenceAttachments/CorrespondenceAttachments-cmp\";\r\nimport { CorrespondenceAttachmentsSVC } from \"../berry/correspondences/_common/CorrespondenceAttachments/CorrespondenceAttachments-svc\";\r\nimport { CorrespondencefollowUpCmp } from \"../berry/correspondences/_common/CorrespondenceFollowUp/CorrespondenceFollowUp-cmp\";\r\nimport { CorrespondencefollowUpSvc } from \"../berry/correspondences/_common/CorrespondenceFollowUp/CorrespondenceFollowUp-svc\";\r\nimport { CorrespondenceReminderModifyModalCmp } from \"../berry/correspondences/_common/CorrespondenceReminderModify-modal-cmp\";\r\nimport { CorrActionsSvc } from \"../berry/correspondences/CorrespondenceActions/CorrActions-svc\";\r\nimport { CorrespondenceCategoriesSvc } from \"../berry/correspondences/correspondence-categories-svc\";\r\nimport { ConfidentialityService } from \"../berry/correspondences/details/confidentiality/confidentiality-svc\";\r\nimport { EditConfidentialityPopupCmp } from \"../berry/correspondences/details/confidentiality/edit-confidentiality-popup-cmp\";\r\nimport { ConsultantsSvc } from \"../berry/correspondences/details/correspondence-participants/Consultants-svc\";\r\nimport { DetailsSidebarSvc } from \"../berry/correspondences/details/details-sidebar-svc\";\r\nimport { DeadlinesService } from \"../berry/correspondences/details/info/Deadlines/Deadlines-svc\";\r\nimport { ReplyRequestResponseSvc } from \"../berry/correspondences/details/info/ReplyRequestResponse/ReplyRequestResponse-svc\"; import { SignaturesRequestsSvc } from \"../berry/correspondences/details/SignaturesRequests/signaturesRequests-svc\";\r\nimport { ReplySubCorrespondenceComponent } from \"../berry/correspondences/details/sub-correspondnece/common/reply/reply-sub-correspondence-cmp\";\r\nimport { CorrListFooterCmp } from \"../berry/correspondences/inboxes/corr-list-footer-cmp\";\r\nimport { EmailListCmp } from \"../berry/correspondences/inboxes/Emails/email-list-cmp\";\r\nimport { EGovCorrListCmp } from \"../berry/correspondences/inboxes/eGovCorrespondences/eGov-corr-list-cmp\";\r\nimport { FooterDeadlinesCmp } from \"../berry/correspondences/inboxes/footer-corr-deadlines-cmp\";\r\nimport { FooterSvc } from \"../berry/correspondences/inboxes/footer-svc\";\r\nimport { InboxesCmp } from \"../berry/correspondences/inboxes/inboxes-cmp\";\r\nimport { AppModuleIdService } from \"../berry/correspondences/inboxes/inboxes-svc\";\r\nimport { ActionsDeadlineSvc } from \"../berry/correspondences/manage/Actions-Deadlines/action-deadline-svc\";\r\nimport { ScheduleTemplatesSvc } from \"../berry/correspondences/manage/ScheduleTemplates/schedule-templates-svc\";\r\nimport { UserCustomDirectionsCmp } from \"../berry/correspondences/manage/UserCustomDirections/user-custom-directions-cmp\";\r\nimport { AddUserReadyWordCmp } from \"../berry/correspondences/manage/userReadyWords/add-user-ready-word-cmp\";\r\nimport { UserDelegationsCmp } from \"../berry/correspondences/manage/UserDelegations/user-delegations-cmp\";\r\nimport { UserFavoritesCmp } from \"../berry/correspondences/manage/UserFavorites/user-favorites-cmp\";\r\nimport { UserFavoritesSvc } from \"../berry/correspondences/manage/UserFavorites/user-favorites-svc\";\r\nimport { UserService } from \"../berry/correspondences/manage/users/user-service\";\r\nimport { ExternalEmailsService } from \"../berry/correspondences/inboxes/Emails/ExternalEmails.Service\";\r\n//===============================================================================================\r\n\r\n// Contacts shared imports\r\nimport { ContactsBox } from \"../Contacts/comps/contacts-box\";\r\nimport { ContactsTags } from \"../Contacts/comps/contacts-tags\";\r\nimport { ContactWidget } from \"../Contacts/contact-widget-cmp\";\r\nimport { ContactsHelpers } from \"../Contacts/helpers\";\r\nimport { IndividualSVC } from \"../Contacts/individuals/individuals-svc\";\r\nimport { OrganizationSVC } from \"../Contacts/organizations/organizations-svc\";\r\nimport { LandingPageGuardService, CorrespondencePageGuardService, ArchiveStudiesPageGuardService } from \"../gurads/landing-page-guard.service\";\r\nimport { ContactsSvc } from \"../Manage/Contacts/contacts-svc\";\r\n\r\n\r\nimport { CreateNewCorrespondencePopup } from \"../berry/correspondences/NewCorrespondence/new-component-implement\";\r\nimport { SubCorrespondenceSVC } from \"../berry/correspondences/details/sub-correspondnece/sub-correspondence-svc\";\r\nimport { FormBuilderApiSvc } from \"../_common/components/form-builder/formBuilder-api-svc\";\r\nimport { CorrSearchRecordCmp } from \"../berry/correspondences/_common/SearchRecord/search-correspondence-record-cmp\";\r\nimport { InformationSourceService } from \"../_common/components/form-builder/components/information-source/information-source-service\";\r\nimport { SignaturePopupBoeCmp } from \"../_common/components/eSignature/signature-popup-boe-cmp\";\r\nimport { SignaturePopupDefaultCmp } from \"../_common/components/eSignature/signature-popup-default-cmp\";\r\nimport { SignaturePopupShellCmp } from \"../_common/components/eSignature/signature-popup-shell-cmp\";\r\nimport { NewSignatureRequestGroupPopupCmp } from \"../berry/correspondences/details/SignaturesRequests/newSignatureRequestGroupPopup-cmp\";\r\nimport { BorrowRequestsvc } from \"../berry/correspondences/details/info/DetailsFiling/borrowRequest-svc\";\r\nimport { CorrespondenceDeliveryPopup } from \"../documents-center/savedDocument-component/CorrespondenceDeliveryPopup/correspondence-delivery-popup\";\r\nimport { CorrespondencesFilingPopup } from \"../documents-center/savedDocument-component/CorrespondencesFilingPopup/correspondences-filing-popup\";\r\nimport { CorrespondenceFilingFeatures } from \"../berry/correspondences/NewCorrespondence/CorrespondenceFilingFeatures-cmp\";\r\nimport { StorageShelvesSvc } from \"src/app/berry/correspondences/NewCorrespondence/storage/storage-shelve-svc\";\r\nimport { FilingStorageSvc } from \"src/app/berry/correspondences/NewCorrespondence/storage/filing-storage-svc\";\r\nimport { NewCorrespondenceSvc } from \"src/app/berry/correspondences/NewCorrespondence/New-Correspondence-svc\";\r\n\r\nimport { AutoCompleteAddItemComponent } from \"../_common/components/auto-complete-add-item.component\";\r\nimport { ClosePopupDirective } from \"../_common/directives/close-popup.directives\";\r\nimport { SaveFormShortcutDirective } from \"../_common/directives/save-form-shortcut.directive\";\r\nimport { AutofocusDirective } from \"../_common/directives/autofocus.directive\";\r\nimport { fbCorrespondenceCountryComponent } from \"../_common/components/form-builder/components/correspondence-countries/fb-correspondence-country\";\r\nimport { fblInternalRecipientsAsCopyComponent } from \"src/app/_common/components/form-builder/components/correspondence-recipient/fb-internal-recipients-as-copy\";\r\nimport { CorrespondenceRecipientUnattachedQrCodePopup } from \"../berry/correspondences/details/correspondence-recipient-unattached-qrCode-popup/correspondence-recipient-unattached-qrCode-popup\";\r\nimport { ItemDeleted } from \"../_common/components/item-deleted/ItemDeleted\";\r\nimport { generalSettingsSvc } from \"../berry/correspondences/manage/generalSettings/general-settings-svc\";\r\nimport { ChartDashboardDonutComponent } from \"../Tasks/DashboardTasks/ChartsDashboard/Chart-Dashboard-Donut-cmp\";\r\nimport { ChartLegendComponent } from \"../Dashboards/Prince/chart/chart-legend-cmp\";\r\nimport { NotificationManageUserGridComponent } from \"../notification-center/components/notification-manage-user-grid-cmp\";\r\n\r\n\r\n\r\nimport { fbProclameeCountry } from \"../_common/components/form-builder/components/proclamee-country/fb-proclamee-country\";\r\nimport { fbProclamationSourceType } from \"../_common/components/form-builder/components/proclamation-source-type/fb-proclamation-source-type-cmp\";\r\nimport { fbSendProclamationDocumentCenter } from \"../_common/components/form-builder/components/send-proclamation-document-center/fb-send-proclamation-document-center-cmp\";\r\nimport { fbProclameeState } from \"../_common/components/form-builder/components/proclamee-state/fb-proclamee-state\";\r\n\r\n\r\n\r\nimport { EditMemberPermissionsComponent } from \"../committees/components/details/MembersNew/edit-member-permissions/edit-member-permissions-cmp\";\r\nimport { CommitteesSvc } from \"../committees/services/committees-svc\";\r\nimport { TaskLegendComponent } from \"../Tasks/DashboardTasks/ChartsDashboard/Task-chart-donut-cmp\";\r\nimport { SendUrgentAction } from \"../_common/components/UrgentAction/send-urgent-action-popup\";\r\nimport { eGovIncomingDetailComponent } from \"../berry/correspondences/inboxes/eGovCorrespondences/components/eGov-incoming-detail-cmp\";\r\nimport { EGovCorrespondencesService } from \"../berry/correspondences/inboxes/eGovCorrespondences/services/eGovCorrespondences.Service\";\r\nimport { PopupComponent } from \"../_common/components/popup/popup-component\";\r\nimport { PopupManagerComponent } from \"../_common/components/popup/popupManager/popup-manager-component\";\r\nimport { AudittrailManagementComponent } from \"../berry/correspondences/manage/audittrail/audittrail-cmp\";\r\nimport { TasksPopup } from \"../Tasks/DashboardTasks/tasksPopup-cmp\";\r\nimport { CorrespondenceApplicantComponent } from \"../berry/correspondences/NewCorrespondence/correspondence-applicants-cmp\";\r\nimport { CommitteeAttachmentService } from \"../committees/components/details/attachments/committee-attachment-srv\";\r\nimport { SideBarComponent } from \"../_common/components/berrySidebar/sidebar.component\";\r\nimport { BerryActionsBarCmp } from \"../_common/components/berryActionBar/Actions-bar-cmp\";\r\nimport { AddEditAnnouncementModalCmp } from \"../announcements/components/add-edit-announcement-modal-cmp\";\r\nimport { CategoryTypeClassificationSvc } from \"../berry/correspondences/manage/Category-Type-Classification/category-type-classification-svc\";\r\nimport { fbCorrespondenceFilingFeatures } from \"../_common/components/form-builder/components/correspondence-file-storge/fb-correspondence-filing-features\";\r\nimport { LazyImgDirective } from \"../_common/directives/lazy-img-directive\";\r\nimport { SharedScreenCmp } from \"../_common/components/share-screen/shared-screen\";\r\n\r\nimport { SharedReportsservice } from \"../berry/correspondences/reports/SharedReportsService\";\r\nimport { ExecutiveOfficeSVC } from \"../_common/components/ExecutiveOffice/executive-office-svc\";\r\nimport { kendoCombobox } from \"../_common/directives/KendoUI-wrappers/kendo-combobox\";\r\nimport { SettlementSettingSVC } from \"../berry/correspondences/manage/Category-Type-Classification/SettlementSetting/settlement-setting-svc\";\r\nimport { NewSignatureRequestPopupCmp } from \"../berry/correspondences/details/SignaturesRequests/newSignatureRequestPopup-cmp\";\r\nimport { InitiativeAttachmentSvc } from \"../Initiative/components/initiative-attachments/initiative-attachment-svc\";\r\nimport { InitiativesHanlderSvc } from \"../Initiative/shared/services/initiative-handler-svc\";\r\nimport { InitiativeRecordComponent } from \"../Initiative/components/initiative-list/initiative-record-cmp\";\r\nimport { schedulingSVC } from \"../Scheduling/_services/scheduling-svc\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { BerryTimePickerComponent } from \"../_common/components/timePicker/timePicker.component\";\r\nimport { PendingActionsComponent } from \"../_common/components/pending-actions/pending-actions\";\r\nimport { TaskItemService } from \"../Tasks/services/taskItem.service\";\r\nimport { InitiativeLandingPageGuardService } from \"../Initiative/guards/InitiativeLandingPageGuardService\";\r\nimport { PendingActionsService } from \"../_common/services/PendingActions/pending-actions.service\";\r\nimport { AuthenticateAttachmentSvc } from \"../_common/components/Attachment/authenticate-attachment/authenticate-attachment-svc\";\r\nimport { FollowUpTeamSvc } from \"../follow-up-team/services/follow-up-team-svc\";\r\nimport { ForwordProgressBar } from \"../berry/correspondences/_common/forword-progressbar-cmp\";\r\nimport { NewSignatureMarkingRequestPopupCmp } from \"../berry/correspondences/details/signature-marking/new-signetureMarking-request-popup-cmp\";\r\nimport { SignatureMarkPopupCmp } from \"../_common/components/SignatureMarker/sign-mark-popup-cmp\";\r\nimport { NewSignatureMarkingRequestGroupPopupCmp } from \"../berry/correspondences/details/signature-marking/new-signatureMarking-request-group-popup-cmp\";\r\nimport { AppModuleSVC } from \"../Manage/UserAppModule/AppModule-svc\";\r\nimport { StickerComponent } from \"../berry/correspondences/manage/correspondence-sticker/sticker-cmp\";\r\nimport { FreeTextMultiSelectCmp } from \"../_common/components/FreeTextMultiSelect/free-text-multi-select-cmp\";\r\nimport { fbAccompanyingDocumentComponent } from \"../_common/components/form-builder/components/accompanying-document/fb-accompanying-document\";\r\nimport { AccompanyingDocumentSvc } from \"../berry/correspondences/_common/AccompanyingDocuments/accompanyingDocument.svc\";\r\nimport { fbDocsRalatedTagsComponent } from \"../_common/components/form-builder/components/accompanying-document/fb-docs-related-tag\";\r\nimport { fbDeadLineDateComponent } from \"../_common/components/form-builder/components/deadline-date/fb-deadline-date\";\r\nimport { CorrActionsInternalCopiesCmp } from \"../berry/correspondences/CorrespondenceActions/corr-actions-internal-copies-cmp\";\r\nimport { UploadImage } from \"../_common/components/uploadImagePopup/uploadImagePopup-component\";\r\nimport { fbMultipleExternalRecipientsComponent } from \"../_common/components/form-builder/components/correspondence-recipient/fb-multiple-external-recipients\";\r\nimport { StampsCmp } from \"../_common/components/Stamp/stamps-cmp\";\r\nimport { StampsSvc } from \"../_common/components/Stamp/stamps-svc\";\r\nimport { fbDiwanNotificationNumberComponent } from \"../_common/components/form-builder/components/diwan-notification-number/fb-diwan-notification-number\";\r\n\r\nimport { TooltipDirective } from \"../_common/directives/tooltip/toolTip.directive\";\r\nimport { StoreManager } from \"../_common/utils/StoreManager\";\r\nimport { BerryTextAreaComponent } from \"../_common/components/BerryTextArea/Berry-TextArea.component\";\r\n\r\nimport { StampsRequestsSvc } from \"../_common/components/Stamp/stamps-Requests-svc\";\r\nimport { BerryButtonComponent } from \"../_common/components/BerryButton/Berry-Button.component\";\r\nimport { BerryDropdownMultiselect } from \"../_common/components/BerryDropdownMultiselect/Berry-Dropdown-Multiselect.component\";\r\nimport { CommitteRecordCmp } from \"../committees/components/committeRecord/committe-record\";\r\nimport { BerryRepetitionComponent } from \"../_common/components/BerryRepetition/Berry-Repetition.component\";\r\nimport { StampComponent } from \"../_common/components/Stapm/Stamp.component\";\r\nimport { CalendarSyncComponent } from \"../_common/components/UserProfile/calendar-sync/calendar-sync.component\";\r\nimport { SigniturePopupComponent } from \"../_common/components/UserProfile/signiture-popup/signiture-popup.component\";\r\nimport { UserProfileDetailsComponent } from \"../_common/components/UserProfile/user-profile-details/user-profile-details.component\";\r\nimport { DelegationPopupComponent } from \"../_common/components/UserProfile/delegation-popup/delegation-popup.component\";\r\nimport { UserPrefrencesComponent } from \"../_common/components/UserProfile/user-prefrences/user-prefrences.component\";\r\nimport { NumericDirective } from \"../_common/directives/numeric.directive\";\r\nimport { RushRequestPopupCmp } from \"../berry/correspondences/details/rush-request-model/rush-request-popup\";\r\nimport { AddedGuidancesPopupCmp } from \"../berry/correspondences/details/confidentiality copy/added-guidances-popup-cmp\";\r\nimport { EditImportanceCor } from \"../_common/components/EditImportanceCor/edit-importance-cor-popup\";\r\nimport { AnnouncementsSvc } from \"../announcements/components/services/announcements-svc\";\r\nimport { AnnouncementDetailsSVC } from \"../announcements/components/details/details-svc\";\r\nimport { DetailsFollowUpTeamSVC } from \"../berry/correspondences/details/followUp-team/details-followUp-team-svc\";\r\n\r\nimport { SecondPasswordService } from \"../_common/components/second-password/services/second-password.service\";\r\nimport { SecondPasswordComponent } from \"../_common/components/second-password/components/second-password.component\";\r\nimport { SecondPasswordPopupComponent } from \"../_common/components/second-password/components/second-password-popup/second-password-popup.component\";\r\nimport { ImgDirective } from \"../_common/img.directive\";\r\nimport { VideoDirective } from \"../_common/directives/video.directive\";\r\nimport { ForwardList } from \"../_common/components/forward-list/forward-list.component\";\r\nimport { DataAutomationIDdirective } from \"../_common/directives/automation-id-logs/automationid-logs .directive\";\r\nimport { DetailsAttachmentsAddRoutableCmp } from \"../_common/components/Attachment/details-attachment-add-routable-cmp\";\r\n\r\n\r\n\r\nimport { SuggestedActionsComponent } from \"../_common/suggested-actions/suggested-actions.component\";\r\nimport { FileUploaderComponent } from \"../_common/components/file-uploader/file-uploader.component\";\r\nimport { NotificationBoxComponent } from \"../new-pending-actions/components/notification-box/notification-box-cmp\";\r\nimport { NotificationCenterImportanceService } from \"../notification-center/services/notification-center-importance.service\";\r\nimport { NotificationCenterSVC } from \"../notification-center/services/notification-center-svc\";\r\nimport { InfiniteScrollModule } from \"ngx-infinite-scroll\";\r\nimport { AvatarComponent } from \"../_common/components/BerryAvatar/Avatar.component\";\r\nimport { RibbonComponent } from \"../_common/components/ribbon/ribbon.component\";\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { BerryDropdownSingleSelectComponent } from \"../_common/components/berry-dropdown/components/single-select/single-select.component\";\r\nimport { BerryDropdownMultiSelectComponent } from \"../_common/components/berry-dropdown/components/multi-select/multi-select.component\";\r\n\r\nimport { FbForwardedToRecipientComponent } from \"../_common/components/form-builder/components/correspondence-recipient/fb-forwarded-to-recipient\";\r\nimport { ImportantLinksComponent } from \"../_common/components/important-links/important-links.component\";\r\nimport { ImportantLinksOverViewComponent } from \"../_common/components/important-links/overview/overview.component\";\r\nimport { CheckListComponent } from \"../_common/components/checklist/checklist.component\";\r\nimport { AvatarGroupComponent } from \"../_common/components/BerryAvatarGroup/Avatar-group.component\";\r\nimport { ReportAddEditPopupComponent } from \"../custom-reports/report-add-edit-popup/report-add-edit-popup.component\";\r\nimport { importantLinkSvc } from \"../_common/services/importantLinkService\";\r\nimport { ColorPaletteComponent } from \"../_common/components/berryColorPalette/color-palete.component\";\r\nimport { ScheduleItemTopicVotingComponent } from \"../berry/ScheduledItems/ScheduleItemTopics/schedule-item-topic-voting/schedule-item-topic-voting-component\";\r\nimport { CustomReportsGuardService } from \"../custom-reports/Custom-Reports-Guard-Service\";\r\nimport { RequestedReportsGuardService } from \"../custom-reports/RequestedReports/requested-reports-guard-service\";\r\nimport { UserCardComponent } from \"../_common/components/user-card/user-card.component\";\r\nimport { WhatNewInBerryPopupComponent } from \"../_common/components/UserProfile/what-new-popup/what-new-popup.component\";\r\nimport { FilePrintComponent } from \"../_common/components/FilePrint/file-print-cmp\";\r\nimport { AnnouncementsRecordComponent } from \"../announcements/components/_common/announcement-record/announcements-record-cmp\";\r\nimport { EntityCardComponent } from \"../_common/components/entity-card/entity-card.component\";\r\nimport { PresidentDashbiardSvc } from \"../Dashboards/PresidentManager/president-dashboard-svc\";\r\n\r\n//===============================================================================================\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n RouterModule,\r\n AlertModule,\r\n ModalModule.forRoot(),\r\n BsDropdownModule.forRoot(),\r\n TimepickerModule.forRoot(),\r\n NgxPaginationModule,\r\n CollapseModule.forRoot(),\r\n InfiniteScrollModule,\r\n NgSelectModule\r\n ],\r\n declarations: [\r\n fbDiwanNotificationNumberComponent,\r\n TooltipDirective,\r\n NumericDirective,\r\n SignatureMarkPopupCmp,\r\n NewSignatureMarkingRequestPopupCmp,\r\n NewSignatureMarkingRequestGroupPopupCmp,\r\n LazyImgDirective,\r\n ImgDirective,\r\n VideoDirective,\r\n SidebarComponent,\r\n MainHeaderComponent,\r\n InboxesCmp,\r\n UrgentConfirmationBox,\r\n EmailListCmp,\r\n EGovCorrListCmp,\r\n ConfirmationBox,\r\n CorrespondenceFilingFeatures,\r\n StickerComponent,\r\n LogoutUserDirective,\r\n TranslationPipe,\r\n NotificationComponent,\r\n MeetingInvitationComponent,\r\n PendingActionsComponent,\r\n ReminderSnoozeModalCmp,\r\n RemindersComponent,\r\n TasksPanelComponent,\r\n OnlineUsersPanelComponent,\r\n BerryOfflineDirective,\r\n EqualValidator,\r\n impersonationModalCmp,\r\n UserGuidelinesModalCmp,\r\n loader,\r\n kendoAutoComplete,\r\n kendoCombobox,\r\n kendoMultiSelect,\r\n DatePicker,\r\n DatePicker2,\r\n ReplySubCorrespondenceComponent,\r\n DetailsAttachmentsFlextViewer,\r\n ControlMessagesComponent,\r\n ContactsBox,\r\n ContactsTags,\r\n noDataFound,\r\n CorrRecordCmp,\r\n CommitteRecordCmp,\r\n ForwordProgressBar,\r\n CorrSearchRecordCmp,\r\n todatetime,\r\n fbAttachmentListComponent,\r\n fbproclamedEntityTypesComponent,\r\n fbproclameeTypeComponent,\r\n fbInformationSourceComponent,\r\n fbIndividualContactsControlComponent,\r\n fbproclameeComponent,\r\n fbOrganizationContactsControlComponent,\r\n fbLookupDropdownComponent,\r\n fbCorrespondenceKeywordComponent,\r\n fbAccompanyingDocumentComponent,\r\n fbDocsRalatedTagsComponent,\r\n tangibleItemsComponent,\r\n fbInternalRecipientComponent,\r\n fbExternalRecipientAsCopyComponent,\r\n fbCorrespondenceCountryComponent,\r\n fblInternalRecipientsAsCopyComponent,\r\n fbProclameeCountry,\r\n fbProclameeState,\r\n fbProclamationSourceType,\r\n fbSendProclamationDocumentCenter,\r\n CorrespondencefollowUpCmp,\r\n SignaturePopupShellCmp,\r\n SignaturePopupBoeCmp,\r\n SignaturePopupDefaultCmp,\r\n SignatureDeviceCmp,\r\n SetUserSignatureCmp,\r\n DetailsAttachmentsAddCmp,\r\n DetailsAttachmentsAddRoutableCmp,\r\n DetailsAttachmentsOfficeFrame,\r\n ImageCropperCmp,\r\n AttachmentsRecommendationCmp,\r\n TruncatePipe,\r\n dateFormatter,\r\n AttachmentslistCmp,\r\n DatePickerWidgetComponent,\r\n DatePickerLabelCmp,\r\n CusDropDownComponent,\r\n CCModal,\r\n CorrespondanceApplicationHistoryCmp,\r\n ContactWidget,\r\n dateFormatterMoment,\r\n FroalaEditor,\r\n DeleteButtonComponent,\r\n DetailsAttachmentsSendEmailCmp,\r\n PopoverCmp,\r\n CorrRecordInboxCmp,\r\n CorrespondanceApplicationHistoryLastStepCmp,\r\n UserCustomDirectionsCmp,\r\n AddUserReadyWordCmp,\r\n UserDelegationsCmp,\r\n UserFavoritesCmp,\r\n CorrListFooterCmp,\r\n FooterDeadlinesCmp,\r\n CorrespondenceReminderModifyModalCmp,\r\n kendoSliderComponent,\r\n EditConfidentialityPopupCmp,\r\n RushRequestPopupCmp,\r\n NewSignatureRequestGroupPopupCmp,\r\n CorrespondenceDeliveryPopup,\r\n CorrespondencesFilingPopup,\r\n AutoCompleteAddItemComponent,\r\n ClosePopupDirective,\r\n SaveFormShortcutDirective,\r\n AutofocusDirective,\r\n CorrespondenceRecipientUnattachedQrCodePopup,\r\n ItemDeleted,\r\n ChartDashboardDonutComponent,\r\n ChartLegendComponent,\r\n TaskLegendComponent,\r\n NotificationManageUserGridComponent,\r\n PopupComponent,\r\n PopupManagerComponent,\r\n BerryTimePickerComponent,\r\n EditMemberPermissionsComponent,\r\n SendUrgentAction,\r\n EditImportanceCor,\r\n CorrActionsInternalCopiesCmp,\r\n AudittrailManagementComponent,\r\n eGovIncomingDetailComponent,\r\n TasksPopup,\r\n CorrespondenceApplicantComponent,\r\n SideBarComponent,\r\n BerryActionsBarCmp,\r\n AddEditAnnouncementModalCmp,\r\n fbCorrespondenceFilingFeatures,\r\n SharedScreenCmp,\r\n formatString,\r\n NewSignatureRequestPopupCmp,\r\n InitiativeRecordComponent,\r\n FreeTextMultiSelectCmp,\r\n fbDeadLineDateComponent,\r\n UploadImage,\r\n fbMultipleExternalRecipientsComponent,\r\n StampsCmp,\r\n BerryTextAreaComponent,\r\n BerryDropdownMultiselect,\r\n ForwardList,\r\n BerryButtonComponent,\r\n BerryRepetitionComponent,\r\n StampComponent,\r\n CalendarSyncComponent,\r\n SigniturePopupComponent,\r\n UserProfileDetailsComponent,\r\n DelegationPopupComponent,\r\n UserPrefrencesComponent,\r\n AddedGuidancesPopupCmp,\r\n SecondPasswordComponent,\r\n SecondPasswordPopupComponent,\r\n DataAutomationIDdirective,\r\n FileUploaderComponent,\r\n SuggestedActionsComponent,\r\n NotificationBoxComponent,\r\n RibbonComponent,\r\n BerryDropdownSingleSelectComponent,\r\n BerryDropdownMultiSelectComponent,\r\n AvatarComponent,\r\n AvatarGroupComponent,\r\n FbForwardedToRecipientComponent,\r\n ImportantLinksComponent,\r\n ImportantLinksOverViewComponent,\r\n CheckListComponent,\r\n ReportAddEditPopupComponent,\r\n ColorPaletteComponent,\r\n ScheduleItemTopicVotingComponent,\r\n UserCardComponent,\r\n WhatNewInBerryPopupComponent,\r\n FilePrintComponent,\r\n AnnouncementsRecordComponent,\r\n EntityCardComponent\r\n ],\r\n exports: [\r\n TooltipDirective,\r\n ImgDirective,\r\n VideoDirective,\r\n StampComponent,\r\n SignatureMarkPopupCmp,\r\n NumericDirective,\r\n NewSignatureMarkingRequestPopupCmp,\r\n NewSignatureMarkingRequestGroupPopupCmp,\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n RouterModule,\r\n AlertModule,\r\n ModalModule,\r\n BsDropdownModule,\r\n TimepickerModule,\r\n NgxPaginationModule,\r\n CollapseModule,\r\n SidebarComponent,\r\n CorrespondenceFilingFeatures,\r\n StickerComponent,\r\n MainHeaderComponent,\r\n InboxesCmp,\r\n UrgentConfirmationBox,\r\n EmailListCmp,\r\n EGovCorrListCmp,\r\n ConfirmationBox,\r\n LogoutUserDirective,\r\n TranslationPipe,\r\n NotificationComponent,\r\n MeetingInvitationComponent,\r\n PendingActionsComponent,\r\n ReminderSnoozeModalCmp,\r\n RemindersComponent,\r\n TasksPanelComponent,\r\n OnlineUsersPanelComponent,\r\n BerryOfflineDirective,\r\n EqualValidator,\r\n impersonationModalCmp,\r\n UserGuidelinesModalCmp,\r\n loader,\r\n kendoAutoComplete,\r\n kendoCombobox,\r\n kendoMultiSelect,\r\n DatePicker,\r\n DatePicker2,\r\n ReplySubCorrespondenceComponent,\r\n DetailsAttachmentsFlextViewer,\r\n ControlMessagesComponent,\r\n ContactsBox,\r\n ContactsTags,\r\n noDataFound,\r\n CorrRecordCmp,\r\n CommitteRecordCmp,\r\n ForwordProgressBar,\r\n CorrSearchRecordCmp,\r\n todatetime,\r\n fbAttachmentListComponent,\r\n fbproclamedEntityTypesComponent,\r\n fbproclameeTypeComponent,\r\n fbInformationSourceComponent,\r\n fbIndividualContactsControlComponent,\r\n fbproclameeComponent,\r\n fbOrganizationContactsControlComponent,\r\n fbLookupDropdownComponent,\r\n fbCorrespondenceKeywordComponent,\r\n fbAccompanyingDocumentComponent,\r\n fbDocsRalatedTagsComponent,\r\n fbCorrespondenceCountryComponent,\r\n tangibleItemsComponent,\r\n fbInternalRecipientComponent,\r\n fbExternalRecipientAsCopyComponent,\r\n fblInternalRecipientsAsCopyComponent,\r\n fbProclameeCountry,\r\n fbProclameeState,\r\n fbProclamationSourceType,\r\n fbSendProclamationDocumentCenter,\r\n SignaturePopupShellCmp,\r\n SignaturePopupBoeCmp,\r\n SignaturePopupDefaultCmp,\r\n SignatureDeviceCmp,\r\n SetUserSignatureCmp,\r\n CorrespondencefollowUpCmp,\r\n DetailsAttachmentsAddCmp,\r\n DetailsAttachmentsAddRoutableCmp,\r\n DetailsAttachmentsOfficeFrame,\r\n ImageCropperCmp,\r\n AttachmentsRecommendationCmp,\r\n AttachmentslistCmp,\r\n CCModal,\r\n CorrespondanceApplicationHistoryCmp,\r\n ContactWidget,\r\n TruncatePipe,\r\n dateFormatter,\r\n DatePickerWidgetComponent,\r\n DatePickerLabelCmp,\r\n CusDropDownComponent,\r\n ContactWidget,\r\n dateFormatterMoment,\r\n FroalaEditor,\r\n DeleteButtonComponent,\r\n CorrRecordInboxCmp,\r\n CorrespondanceApplicationHistoryLastStepCmp,\r\n DetailsAttachmentsSendEmailCmp,\r\n UserCustomDirectionsCmp,\r\n AddUserReadyWordCmp,\r\n UserDelegationsCmp,\r\n UserFavoritesCmp,\r\n CorrListFooterCmp,\r\n FooterDeadlinesCmp,\r\n CorrespondenceReminderModifyModalCmp,\r\n kendoSliderComponent,\r\n EditConfidentialityPopupCmp,\r\n RushRequestPopupCmp,\r\n NewSignatureRequestGroupPopupCmp,\r\n CorrespondenceDeliveryPopup,\r\n CorrespondencesFilingPopup,\r\n AutoCompleteAddItemComponent,\r\n ClosePopupDirective,\r\n SaveFormShortcutDirective,\r\n AutofocusDirective,\r\n CorrespondenceRecipientUnattachedQrCodePopup,\r\n ItemDeleted,\r\n ChartDashboardDonutComponent,\r\n ChartLegendComponent,\r\n NotificationManageUserGridComponent,\r\n PopupComponent,\r\n PopupManagerComponent,\r\n BerryTimePickerComponent,\r\n EditMemberPermissionsComponent,\r\n SendUrgentAction,\r\n EditImportanceCor,\r\n CorrActionsInternalCopiesCmp,\r\n eGovIncomingDetailComponent,\r\n TasksPopup,\r\n CorrespondenceApplicantComponent,\r\n SideBarComponent,\r\n BerryActionsBarCmp,\r\n AddEditAnnouncementModalCmp,\r\n fbCorrespondenceFilingFeatures,\r\n SharedScreenCmp,\r\n formatString,\r\n NewSignatureRequestPopupCmp,\r\n InitiativeRecordComponent,\r\n FreeTextMultiSelectCmp,\r\n fbDeadLineDateComponent,\r\n UploadImage,\r\n fbMultipleExternalRecipientsComponent,\r\n StampsCmp,\r\n BerryTextAreaComponent,\r\n BerryDropdownMultiselect,\r\n ForwardList,\r\n BerryButtonComponent,\r\n BerryRepetitionComponent,\r\n AddedGuidancesPopupCmp,\r\n SigniturePopupComponent,\r\n SecondPasswordComponent,\r\n SecondPasswordPopupComponent,\r\n DataAutomationIDdirective,\r\n FileUploaderComponent,\r\n SuggestedActionsComponent,\r\n NotificationBoxComponent,\r\n InfiniteScrollModule,\r\n RibbonComponent,\r\n BerryDropdownSingleSelectComponent,\r\n BerryDropdownMultiSelectComponent,\r\n AvatarComponent,\r\n AvatarGroupComponent,\r\n RibbonComponent,\r\n FbForwardedToRecipientComponent,\r\n ImportantLinksComponent,\r\n ImportantLinksOverViewComponent,\r\n CheckListComponent,\r\n ReportAddEditPopupComponent,\r\n ColorPaletteComponent,\r\n ScheduleItemTopicVotingComponent,\r\n UserCardComponent,\r\n WhatNewInBerryPopupComponent,\r\n FilePrintComponent,\r\n AnnouncementsRecordComponent,\r\n EntityCardComponent\r\n ],\r\n providers: [\r\n StoreManager,\r\n DetailsAttachmentSVC,\r\n InitiativesHanlderSvc,\r\n PaginationService,\r\n SignatureSVC,\r\n FlowPaperBridgeService,\r\n UserPermissionService,\r\n webTwainSVC,\r\n DetailsSidebarSvc,\r\n CorrespondenceAttachmentsSVC,\r\n SignaturesRequestsSvc,\r\n ExecutiveOfficeSVC,\r\n AppModuleIdService,\r\n IndividualSVC,\r\n LocalStorageService,\r\n ContactsSvc,\r\n ScheduleTemplatesSvc,\r\n DetailsFollowUpTeamSVC,\r\n schedulingSVC,\r\n AnnouncementsSvc,\r\n UserFavoritesSvc,\r\n NewCorrespondenceSvc,\r\n FilingStorageSvc,\r\n StorageShelvesSvc,\r\n ToastrService,\r\n AccompanyingDocumentSvc,\r\n ConfidentialityService,\r\n CorrespondenceCategoriesSvc,\r\n LocalizationService,\r\n LookupHelpers,\r\n InboxesCmp,\r\n CorrespondanceRecordSVC,\r\n DialogManager,\r\n datetimeHelper,\r\n DeadlinesService,\r\n FooterSvc,\r\n AlertConfig,\r\n CorrespondencefollowUpSvc,\r\n UrgentDialogManager,\r\n ConsultantsSvc,\r\n CorrActionsSvc,\r\n ActionsDeadlineSvc,\r\n UserGuidServices,\r\n ContactsHelpers,\r\n LandingPageGuardService,\r\n CorrespondencePageGuardService,\r\n ArchiveStudiesPageGuardService,\r\n DetailsAttachmentSVC,\r\n UserService,\r\n ReplyRequestResponseSvc,\r\n OrganizationSVC,\r\n SessionTimeoutService,\r\n UserProfileSvc,\r\n ExternalEmailsService,\r\n EGovCorrespondencesService,\r\n CreateNewCorrespondencePopup,\r\n SubCorrespondenceSVC,\r\n FormBuilderApiSvc,\r\n InformationSourceService,\r\n BorrowRequestsvc,\r\n generalSettingsSvc,\r\n CommitteesSvc,\r\n CommitteeAttachmentService,\r\n CategoryTypeClassificationSvc,\r\n SharedReportsservice,\r\n SettlementSettingSVC,\r\n InitiativeAttachmentSvc,\r\n InitiativesHanlderSvc,\r\n TaskItemService,\r\n InitiativeLandingPageGuardService,\r\n CustomReportsGuardService,\r\n PendingActionsService,\r\n AuthenticateAttachmentSvc,\r\n FollowUpTeamSvc,\r\n AppModuleSVC,\r\n StampsSvc,\r\n StampsRequestsSvc,\r\n AnnouncementDetailsSVC,\r\n SecondPasswordService,\r\n NotificationCenterImportanceService,\r\n NotificationCenterSVC,\r\n importantLinkSvc,\r\n RequestedReportsGuardService,\r\n PresidentDashbiardSvc\r\n ]\r\n})\r\nexport class SharedModule { }","import { Routes, RouterModule } from \"@angular/router\";\r\nimport { NgModule } from \"@angular/core\";\r\nimport { SigninRedirectCallbackComponent } from \"./framework/components/signin-redirect-callback.component\";\r\n\r\nexport const routes: Routes = [\r\n {\r\n path: \"signin-oidc\",\r\n component: SigninRedirectCallbackComponent\r\n },\r\n {\r\n path: '',\r\n loadChildren:()=>import('./../app/framework/components/master/master.module').then(m=>m.MasterModule),\r\n },\r\n {\r\n path:'at/:key',\r\n loadChildren: () => import('./external/external.module').then(m => m.ExternalModule)\r\n },\r\n {\r\n path: 'ExternalAuth/Google',\r\n loadChildren: () => import('./external/google-auth/google.auth.module').then(m => m.GoogleAuthModule)\r\n },\r\n {\r\n path: 'ExternalAuth/MicrosoftSignIn',\r\n loadChildren: () => import('./external/microsoft-auth/microsoft.auth.module').then(m => m.MicrosoftAuthModule)\r\n },\r\n {\r\n path: 'ExternalAuth/MicrosoftOutlookSignIn',\r\n redirectTo: 'ExternalAuth/MicrosoftSignIn',\r\n pathMatch:'full'\r\n },\r\n {\r\n path: 'login',\r\n redirectTo:'authentication',\r\n pathMatch:'full'\r\n },\r\n {\r\n path: 'authentication',\r\n loadChildren: () => import('./../app/framework/components/login-landing-page/modules/login-landing-page.module')\r\n .then(m => m.LoginLandingPageModule)\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes, {\r\n onSameUrlNavigation: 'reload',\r\n //relativeLinkResolution: 'legacy'\r\n })],\r\n exports: [RouterModule]\r\n})\r\nexport class routing { }","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '../services/auth.service';\r\nimport { IGlobalSettings } from 'src/app/_common/models/IGlobalSettings';\r\ndeclare var BERRY: IGlobalSettings;\r\n@Component({\r\n selector: 'app-signin-redirect-callback',\r\n template: `
    `\r\n})\r\nexport class SigninRedirectCallbackComponent implements OnInit {\r\n\r\n constructor(private _authService: AuthService, private _router: Router) { }\r\n\r\n ngOnInit(): void { \r\n BERRY.viewMainLoader=false;\r\n this._authService.finishLogin()\r\n .then(_ => { \r\n localStorage.setItem('auth',JSON.stringify(_))\r\n localStorage.setItem('auth_clone',JSON.stringify(_))\r\n window.location.href= document.baseURI\r\n }).catch((e)=>{\r\n window.location.href= document.baseURI\r\n \r\n })\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { IGlobalSettings } from './_common/models/IGlobalSettings';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable, of } from 'rxjs';\r\nimport { AuthService } from './framework/services/auth.service';\r\nimport { Router } from '@angular/router';\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\n@Injectable()\r\nexport class AppConfig {\r\n\r\n private config: Object = null;\r\n private env: Object = null;\r\n\r\n constructor(private http: HttpClient, private authService: AuthService, private router: Router) {\r\n\r\n }\r\n\r\n\r\n /**\r\n * Use to get the data found in the second file (config file)\r\n */\r\n public getConfig(key: any) {\r\n return this.config[key];\r\n }\r\n\r\n /**\r\n * Use to get the data found in the first file (env file)\r\n */\r\n public getEnv(key: any) {\r\n return this.env[key];\r\n }\r\n\r\n /**\r\n * This method:\r\n * a) Loads \"env.json\" to get the current working environment (e.g.: 'production', 'development')\r\n * b) Loads \"config.[env].json\" to get all env's variables (e.g.: 'config.development.json')\r\n */\r\n \r\n public getLookup() {\r\n BERRY.islookupsLoaded = false;\r\n\r\n if (BERRY.Lookups == null) {\r\n BERRY.Lookups = {\r\n AccompanyingDocument: [],\r\n ArabicPrefixes: [],\r\n ArabicSuffixes: [],\r\n CommunicationsImportance: [],\r\n Cities: [],\r\n ClassificationsTypes: [],\r\n Confidentialities: [],\r\n ConfidentialitiesUsed: [],\r\n CorrespondanceKeyWords: [],\r\n CorrespondenceCategories: [],\r\n CorrespondenceSubTypes: [],\r\n CorrespondenceTypes: [],\r\n Countries: [],\r\n EnglishPrefixes: [],\r\n EnglishSuffixes: [],\r\n LinkTypes: [],\r\n PredefinedDirections: [],\r\n Purposes: [],\r\n ReceivingModes: [],\r\n ScheduleLKPCategories: [],\r\n ScheduleLKPImportances: [],\r\n ScheduleLKPLocationTypes: [],\r\n TaskTypes: [],\r\n Urgencies: [],\r\n UserTypes: [],\r\n Locations: [],\r\n StorageRooms: [],\r\n StorageCabinets: [],\r\n StorageShelves: [],\r\n GeneralSettings: [],\r\n UserCustomDirections: [],\r\n CorrespondenceClassifications: [],\r\n ScheduleTemplates: [],\r\n Holidays: [],\r\n Weekends: [],\r\n CommitteesTags: [],\r\n DocumentConfidentialities: [],\r\n CorrespondenceTypeClassificationItems: []\r\n }\r\n }\r\n\r\n // const url = BERRY.absoluteHostName + \"Lookups.caching?version=\" + BERRY.LookupCachedVersion + \"&buildVersion=\" + BERRY.buildNumber;\r\n // return this.http.get(url).subscribe(resp => {\r\n // BERRY.Lookups = resp;\r\n // BERRY.islookupsLoaded = true;\r\n // });\r\n }\r\n\r\n \r\n\r\n public get(url): Observable {\r\n return this.http.get(url);\r\n }\r\n public getGeneralSetttings() {\r\n\r\n // BERRY.isgeneralSettingsLoaded = false;\r\n\r\n // const url = BERRY.absoluteHostName + \"AssetsGeneration/GeneralSettings.caching?version=\" + BERRY.GeneralSettingsCachedVersion + \"&buildVersion=\" + BERRY.buildNumber;\r\n // return this.http.get(url).subscribe(resp => {\r\n // BERRY.generalSettingList = resp;\r\n // BERRY.isgeneralSettingsLoaded = true;\r\n // });\r\n }\r\n}","import { trigger, state, style, transition, animate, keyframes } from '@angular/animations';\r\n\r\nexport const Animations = [\r\n trigger('flyInOut', [\r\n state('inactive', style({\r\n opacity: 0,\r\n })),\r\n transition('inactive => active', animate('400ms ease-out', keyframes([\r\n style({\r\n transform: 'translate3d(100%, 0, 0) skewX(-30deg)',\r\n opacity: 0,\r\n }),\r\n style({\r\n transform: 'skewX(20deg)',\r\n opacity: 1,\r\n }),\r\n style({\r\n transform: 'skewX(-5deg)',\r\n opacity: 1,\r\n }),\r\n style({\r\n transform: 'none',\r\n opacity: 1,\r\n }),\r\n ]))),\r\n transition('active => removed', animate('400ms ease-out', keyframes([\r\n style({\r\n opacity: 1,\r\n }),\r\n style({\r\n transform: 'translate3d(100%, 0, 0) skewX(30deg)',\r\n opacity: 0,\r\n }),\r\n ]))),\r\n ]),\r\n]","
    \r\n
    \r\n
    \r\n \r\n
    \r\n

    \r\n\r\n \r\n {{getText('Error', 'LoginResources')}} \r\n \r\n \r\n \r\n {{ getText('Information', 'Common') }} \r\n {{ title }}\r\n \r\n\r\n \r\n {{getText('DoneSuccessfully', 'Common')}} \r\n \r\n\r\n \r\n {{getText('Warning', 'SubCorrespondencs')}} \r\n \r\n\r\n

    \r\n \r\n \r\n {{ message }} \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","import { Component } from \"@angular/core\";\r\nimport { Toast, ToastPackage, ToastrService } from \"ngx-toastr\";\r\nimport { IGlobalSettings } from \"../../models/IGlobalSettings\";\r\nimport { Animations } from \"./toastr.animation\";\r\ndeclare var BERRY: IGlobalSettings;\r\n\r\nexport enum ToastTypes {\r\n error = \"toast-error\",\r\n info = \"toast-info\",\r\n success = \"toast-success\",\r\n warning = \"toast-warning\",\r\n}\r\n\r\n\r\n@Component({\r\n selector: 'toastrMessage',\r\n templateUrl: \"./toastr.component.html\",\r\n styleUrls: ['./toastr.style.scss'],\r\n animations: [\r\n Animations\r\n ],\r\n preserveWhitespaces: false,\r\n})\r\n\r\nexport class ToastrComponent extends Toast {\r\n toastTypes = ToastTypes;\r\n\r\n constructor(\r\n protected toastrService: ToastrService,\r\n public toastPackage: ToastPackage,\r\n ) {\r\n super(toastrService, toastPackage);\r\n }\r\n\r\n\r\n public get toastCurrentType(): string {\r\n return this.toastPackage.toastType;\r\n }\r\n\r\n public get isErrorToast(): boolean {\r\n return this.toastCurrentType == this.toastTypes.error;\r\n }\r\n\r\n public get isInfoToast(): boolean {\r\n return this.toastCurrentType == this.toastTypes.info;\r\n }\r\n\r\n public get isSuccessToast(): boolean {\r\n return this.toastCurrentType == this.toastTypes.success;\r\n }\r\n\r\n public get isWarningToast(): boolean {\r\n return this.toastCurrentType == this.toastTypes.warning;\r\n }\r\n\r\n getText(ResourceID: string, ResourceSet: string): string {\r\n const berry: IGlobalSettings = BERRY;\r\n return berry.getText(ResourceID, ResourceSet);\r\n }\r\n\r\n closeToastMsg() {\r\n this.remove();\r\n }\r\n}\r\n\r\n\r\n","import { CommonModule } from \"@angular/common\";\r\nimport { NgModule } from \"@angular/core\";\r\nimport { ToastrModule, ToastrService } from \"ngx-toastr\";\r\nimport { ToastrComponent } from \"./toastr.component\";\r\n// var BERRY: IGlobalSettings;\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ToastrModule.forRoot({\r\n preventDuplicates: true,\r\n toastComponent: ToastrComponent,\r\n // positionClass: BERRY.lang != \"en\" ? 'toast-top-left' : 'toast-top-right'\r\n }),\r\n ],\r\n declarations: [\r\n ToastrComponent\r\n ],\r\n exports: [\r\n ToastrComponent\r\n ],\r\n providers: [\r\n ToastrService,\r\n ]\r\n})\r\nexport class ToastModule { }","import { Injectable } from '@angular/core';\r\nimport { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor, HttpResponse } from '@angular/common/http';\r\nimport { from, Observable, of } from 'rxjs';\r\nimport { mergeMap, map, share } from 'rxjs/operators';\r\n\r\n\r\nimport { AuthService } from '../services/auth.service';\r\n\r\nimport jwt_decode from \"jwt-decode\";\r\nimport { IGlobalSettings } from 'src/app/_common/models/IGlobalSettings';\r\nimport { AppState } from '../../app.service';\r\n\r\ndeclare var BERRY: IGlobalSettings\r\n@Injectable()\r\nexport class Interceptor implements HttpInterceptor {\r\n constructor(private authService: AuthService,\r\n public appState: AppState) { }\r\n\r\n get token(): Observable {\r\n return of(JSON.parse(localStorage.getItem('auth') || '{}').id_token);\r\n }\r\n\r\n get refreshToken(): Observable {\r\n return from(this.authService.refreshToken());\r\n }\r\n\r\n\r\n\r\n interceptHandler(request: HttpRequest, token: string | null): HttpRequest {\r\n this.authService.token = token;\r\n BERRY.forgeryToken = `Bearer ${token}`;\r\n const headers = new Map();\r\n headers.set('Authorization', `Bearer ${token}`);\r\n if (!!localStorage.getItem('OnBehalfUserId')) {\r\n headers.set('OnBehalfUserId', localStorage.getItem('OnBehalfUserId'));\r\n }\r\n\r\n if (this.appState.currentModule != undefined && this.appState.currentModule != null)\r\n headers.set('CurrentAppModule', this.appState.currentModule.toString());\r\n\r\n if (BERRY.onOffFeatures.Assignments && !!localStorage.getItem('AssignmentUserId'))\r\n headers.set('Assignment-User-Id', localStorage.getItem('AssignmentUserId'));\r\n\r\n var lang = !Object.keys(BERRY?.languages)?.length ? 'ar' : BERRY?.languages[BERRY?.lang || localStorage.getItem('lang') || 'ar']?.toLowerCase();\r\n headers.set('language', localStorage.getItem('lang') == 'ar' ? 'ar-sa' : 'en-sa');\r\n headers.set('Accept-Language', lang);\r\n // security headers\r\n var whiteList = BERRY.ConnectWhiteListConfig == null ? \"\" : (BERRY.ConnectWhiteListConfig.replaceAll(';', ' ') + \" \");\r\n headers.set('Content-Security-Policy',\r\n \"default-src 'self' \" + whiteList + \" ; \" +\r\n \"script-src 'self' 'unsafe-inline' 'unsafe-eval' \" + whiteList + \"; \" +\r\n \"script-src-elem 'self' 'unsafe-inline'; \" +\r\n \"connect-src 'self' data: mediastream: blob: filesystem: \" + whiteList + \"; \" +\r\n \"img-src 'self' * data: blob: mediastream: filesystem: \" + whiteList + \"; \" +\r\n \"style-src 'self' 'unsafe-inline';\" +\r\n \"style-src-elem 'unsafe-inline';\" +\r\n \"frame-src 'self' blob: mailto: \" + whiteList + \"; \" +\r\n \"base-uri 'self';\" +\r\n \"form-action *;\" +\r\n \"font-src 'self' data:;\" +\r\n \"media-src 'self' data: mediastream: blob:;\" +\r\n \"object-src 'none';\" +\r\n \"frame-ancestors 'self' blob: mailto: \" + whiteList + \"; \"\r\n );\r\n\r\n headers.set('X-Content-Type-Options', 'nosniff');\r\n headers.set('Referrer-Policy', 'same-origin');\r\n headers.set('Permissions-Policy', '*');\r\n headers.set('Feature-Policy', '*');\r\n headers.set('X-XSS-Protection', '1; mode=block');\r\n\r\n headers.set('timeZone', Intl.DateTimeFormat().resolvedOptions().timeZone);\r\n\r\n if (!!localStorage.getItem('SessionCode')) {\r\n headers.set('SessionCode', localStorage.getItem('SessionCode'));\r\n }\r\n\r\n if (!(request.body instanceof FormData)) {\r\n if (request.body instanceof String) {\r\n headers.set('Content-Type', 'text/plain');\r\n headers.set('Accept', 'text/plain');\r\n } else {\r\n headers.set('Content-Type', 'application/json');\r\n headers.set('Accept', 'application/json');\r\n }\r\n }\r\n\r\n return request.clone({\r\n setHeaders: Object.fromEntries(headers)\r\n });\r\n }\r\n sharedRefreshToken: Observable;\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n\r\n if (\r\n (!request.url.startsWith(document.baseURI) &&\r\n !request.url.toLowerCase().includes('loginapi') ||\r\n request.url.toLowerCase().includes('logout') ||\r\n request.url.toLowerCase().includes('LoginApi/LoginWithDifferentUserType'.toLowerCase()) ||\r\n request.url.toLowerCase().includes('LoginApi/GenerateTokenByRefreshToken'.toLowerCase()))\r\n && !request.url.toLowerCase().includes('GetThemeSettings'.toLowerCase())\r\n && !request.url.toLowerCase().includes('ForgotPasswordApi'.toLowerCase())\r\n && !request.url.toLowerCase().includes('ResetPasswordApi'.toLowerCase())\r\n && !request.url.toLowerCase().includes('ConfirmEmailForExternalApi'.toLowerCase())\r\n && !request.url.toLowerCase().includes('LoginWith2FAApi'.toLowerCase())// TODO: Abdullah Should be removed\r\n ) {\r\n return this.token.pipe(\r\n mergeMap((token) => {\r\n if (token) {\r\n this.authService.expired = (jwt_decode(token)['exp'] * 1000) - (1000 * 60 * 5);\r\n } else {\r\n this.authService.expired = 0;\r\n }\r\n\r\n if (new Date() >= new Date(this.authService.expired)) {\r\n if (!this.sharedRefreshToken) { this.sharedRefreshToken = this.refreshToken.pipe(share()) }\r\n return this.sharedRefreshToken.pipe(mergeMap((res) =>\r\n next.handle(this.interceptHandler(request, res?.id_token))))\r\n }\r\n this.sharedRefreshToken = null;\r\n return next.handle(this.interceptHandler(request, token))\r\n })\r\n ).pipe(\r\n map((event: any): HttpResponse => {\r\n if (event instanceof HttpResponse) {\r\n return event.clone({ body: event.body });\r\n }\r\n return event;\r\n })\r\n );\r\n }\r\n else {\r\n if (request.url.toLowerCase().endsWith('LoginApi/GenerateToken'.toLowerCase())) {\r\n const headers = new Map();\r\n var lang = !Object.keys(BERRY?.languages)?.length ? 'ar' : BERRY?.languages[BERRY?.lang || localStorage.getItem('lang') || 'ar']?.toLowerCase();\r\n headers.set('language', localStorage.getItem('lang') == 'ar' ? 'ar-sa' : 'en-sa');\r\n headers.set('Accept-Language', lang);\r\n request = request.clone({\r\n setHeaders: Object.fromEntries(headers)\r\n });\r\n }\r\n else if (request.url.toLowerCase().includes('ForgotPasswordApi'.toLowerCase())\r\n || request.url.toLowerCase().includes('ResetPasswordApi'.toLowerCase())\r\n || request.url.toLowerCase().includes('ConfirmEmailForExternalApi'.toLowerCase())\r\n ) {\r\n const headers = new Map();\r\n var lang = !Object.keys(BERRY?.languages)?.length ? 'ar' : BERRY?.languages[BERRY?.lang || localStorage.getItem('lang') || 'ar']?.toLowerCase();\r\n headers.set('language', localStorage.getItem('lang') == 'ar' ? 'ar-sa' : 'en-sa');\r\n headers.set('Accept-Language', lang);\r\n if (!(request.body instanceof FormData)) {\r\n if (request.body instanceof String) {\r\n headers.set('Content-Type', 'text/plain');\r\n headers.set('Accept', 'text/plain');\r\n } else {\r\n headers.set('Content-Type', 'application/json');\r\n headers.set('Accept', 'application/json');\r\n }\r\n }\r\n request = request.clone({\r\n setHeaders: Object.fromEntries(headers)\r\n });\r\n }\r\n return next.handle(request);\r\n }\r\n }\r\n}\r\n\r\n","import { NgModule, APP_INITIALIZER } from \"@angular/core\";\r\nimport { AppComponent } from \"./app.component\";\r\nimport { routing } from \"./app.routing\";\r\nimport { HttpInterceptor } from \"./_common/services/http-interceptor\";\r\nimport { UserPermissionService } from \"src/app/_common/services/Permissions/user-permission-service\";\r\nimport { MessagingService } from \"./_common/services/messaging-service\";\r\nimport { SharedModule } from \"./shared/shared.module\";\r\nimport { AppState } from \"./app.service\";\r\nimport { CommonModule } from \"@angular/common\";\r\nimport { HammerModule, Title } from '@angular/platform-browser';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from \"@angular/common/http\";\r\nimport { BrowserAnimationsModule } from \"@angular/platform-browser/animations\";\r\nimport { BrowserModule } from \"@angular/platform-browser\";\r\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\r\nimport { NgxPaginationModule, PaginationService } from \"ngx-pagination\";\r\nimport { CorrespondenceSharedModule } from \"./correspondence-shared-module/correspondence-shared.module\";\r\nimport { AlertConfig, AlertModule } from \"ngx-bootstrap/alert\";\r\nimport { ModalModule } from \"ngx-bootstrap/modal\";\r\nimport { TimepickerModule } from \"ngx-bootstrap/timepicker\";\r\nimport { CollapseModule } from \"ngx-bootstrap/collapse\";\r\nimport { BsDropdownModule } from \"ngx-bootstrap/dropdown\";\r\nimport { InboxesSVC } from \"./berry/correspondences/inboxes/inboxes-svc\";\r\nimport { AppConfig } from \"./app.config\";\r\nimport { ToastModule } from \"./_common/components/toastr/toastr.module\";\r\nimport { AccessGuard } from \"./_common/components/guards/access.guards\";\r\nimport { NavigationService } from \"./_common/services/navigate.service\";\r\nimport { NotificationsService } from \"./_common/services/notifications-service\";\r\nimport { Interceptor } from './framework/interceptor/http.interceptor';\r\nimport { AccountLoginComponent } from './framework/components/login-landing-page/component/account-login/account-login.component';\r\nimport { AccessModulesGuard } from \"./gurads/access-modules.guards\";\r\n\r\n@NgModule({\r\n imports: [\r\n routing,\r\n BrowserModule,\r\n CommonModule,\r\n HammerModule,\r\n BrowserAnimationsModule,\r\n HttpClientModule,\r\n BsDropdownModule.forRoot(),\r\n AlertModule,\r\n ModalModule.forRoot(),\r\n TimepickerModule.forRoot(),\r\n CollapseModule.forRoot(),\r\n ToastModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n NgxPaginationModule,\r\n CorrespondenceSharedModule,\r\n SharedModule \r\n ],\r\n declarations: [\r\n AppComponent,\r\n AccountLoginComponent\r\n ],\r\n exports: [\r\n AppComponent,\r\n ],\r\n providers: [\r\n HttpInterceptor,\r\n UserPermissionService,\r\n AppState,\r\n MessagingService,\r\n PaginationService,\r\n AlertConfig,\r\n InboxesSVC,\r\n AppConfig,\r\n AccessGuard,\r\n AccessModulesGuard,\r\n NavigationService,\r\n Title,\r\n NotificationsService,\r\n { provide: APP_INITIALIZER, useFactory: (config: AppConfig) => () => config.getLookup(), deps: [AppConfig], multi: true },\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: Interceptor,\r\n multi: true\r\n },\r\n // { provide: APP_BASE_HREF, useValue: '/dist/' }\r\n\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n","import { enableProdMode } from \"@angular/core\";\r\nimport { platformBrowserDynamic } from \"@angular/platform-browser-dynamic\";\r\nimport { AsyncSubject } from \"rxjs\";\r\n\r\nimport { AppModule } from \"./app/app.module\";\r\nimport { IGlobalSettings } from \"./app/_common/models/IGlobalSettings\";\r\nimport { environment } from \"./environments/environment\";\r\nimport { } from \"./environments/environment.prod\";\r\n\r\ndeclare var BERRY: IGlobalSettings;\r\nBERRY.$user = new AsyncSubject();\r\n\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nconst keys = [\r\n `/api/ConfigurationApi`\r\n].map((url) => fetch(url).then(res => res.json()).catch(a => {\r\n BERRY.viewMainLoader = false;\r\n platformBrowserDynamic().bootstrapModule(AppModule);\r\n}\r\n));\r\n\r\nPromise.allSettled(keys).then((\r\n [\r\n { value: settings }\r\n ]: any) => {\r\n\r\n const files = [\r\n `/AppData/LocalizationDictionary.json?v=${settings?.LocalizationDicVersion}`,\r\n `/AppData/Localizations-ar.json?v=${settings?.LocalizationArVersion}`,\r\n `/AppData/Localizations-en.json?v=${settings?.LocalizationEnVersion}`\r\n ].map((url) => fetch(url).then(res => res.json()));\r\n\r\n Promise.allSettled(files).then((\r\n [\r\n { value: LocalizationDictionary },\r\n { value: LocalizationsAr },\r\n { value: LocalizationsEn }\r\n ]: any) => {\r\n BERRY = {\r\n ...BERRY,\r\n LocalizationsAr,\r\n LocalizationsEn,\r\n ...settings,\r\n };\r\n BERRY.viewMainLoader = true;\r\n if (typeof LocalizationDictionary.Ar == \"string\") {\r\n const ar = JSON.parse(LocalizationDictionary.Ar);\r\n const en = JSON.parse(LocalizationDictionary.En);\r\n BERRY.LocDictionary = { ar, en }\r\n }\r\n\r\n if (BERRY.hostName[BERRY.hostName.length - 1] != '/') {\r\n BERRY.hostName += '/';\r\n }\r\n BERRY.hostName = BERRY.hostName.toLocaleLowerCase();\r\n if (BERRY.absoluteHostName[BERRY.absoluteHostName.length - 1] != '/') {\r\n BERRY.absoluteHostName += '/';\r\n }\r\n BERRY.absoluteHostName = BERRY.absoluteHostName.toLocaleLowerCase()\r\n BERRY.imagesDictionary = new Map();\r\n\r\n BERRY.isConnectedToInternet = true;\r\n BERRY.environment = {\r\n production: false,\r\n angularBaseUrl: \"spa\",\r\n apiUpstreamPathTemplate: 'app',\r\n idsUpstreamPathTemplate: 'identityServer',\r\n gatewayUrl: BERRY?.hostName?.substring(0, BERRY?.hostName?.length - 1),\r\n version: { 'npm_package_version': '1.0.0' },\r\n authority: {\r\n idpAuthority: BERRY?.OAuthAuthority,\r\n clientId: BERRY?.OAuthClientId,\r\n clientRoot: BERRY?.absoluteHostName?.substring(0, BERRY?.absoluteHostName?.length - 1),\r\n loginCallback: 'signin-oidc',\r\n logoutCallback: 'login',\r\n loadUserInfo: false,\r\n scope: !!BERRY.OAuthScopes ? BERRY.OAuthScopes : 'email',\r\n responseType: \"code\"\r\n }\r\n };\r\n platformBrowserDynamic().bootstrapModule(AppModule);\r\n })\r\n}).catch(a =>\r\n BERRY.viewMainLoader = false\r\n)\r\n","if (window.navigator.userAgent.match(/MSIE|Trident/) !== null) {\r\n document.getElementById(\"browserAlert\").style.display = 'block';\r\n }\r\n var SITE_ROOT_PATH = '/';\r\n if (SITE_ROOT_PATH.endsWith(\"/\")) {\r\n SITE_ROOT_PATH = SITE_ROOT_PATH.substr(0, SITE_ROOT_PATH.length - 1);\r\n }\r\n\r\n if (BERRY && !BERRY.isEn) {\r\n kendo.culture(\"ar-SA\");\r\n kendo.ui.DropDownList.prototype.options.noDataTemplate = BERRY.loc.kendoLocalization.NoData;\r\n kendo.ui.ComboBox.prototype.options.noDataTemplate = BERRY.loc.kendoLocalization.NoData;\r\n kendo.ui.Grid.prototype.options.noDataTemplate = BERRY.loc.kendoLocalization.NoData;\r\n kendo.ui.MultiSelect.prototype.options.noDataTemplate = BERRY.loc.kendoLocalization.NoData;\r\n kendo.ui.AutoComplete.prototype.options.noDataTemplate = BERRY.loc.kendoLocalization.NoData;\r\n }\r\n var fontFamily = \"Hacen\"; /// Iframes use This variable\r\n \r\n localStorage.FEK = 'nHMDUGENKACTMXQL==';\r\n document.documentElement.setAttribute(\"data-browser\", navigator.userAgent);\r\n jQuery.validator.addMethod(\r\n \"regex\",\r\n function (value, element, regexp) {\r\n var re = new RegExp(regexp);\r\n return this.optional(element) || re.test(value);\r\n }\r\n ); \r\n if (BERRY && !BERRY.isEn) {\r\n kendo.culture(\"ar-SA\");\r\n kendo.ui.DropDownList.prototype.options.noDataTemplate = BERRY.loc.kendoLocalization.NoData;\r\n kendo.ui.ComboBox.prototype.options.noDataTemplate = BERRY.loc.kendoLocalization.NoData;\r\n kendo.ui.Grid.prototype.options.noDataTemplate = BERRY.loc.kendoLocalization.NoData;\r\n kendo.ui.MultiSelect.prototype.options.noDataTemplate = BERRY.loc.kendoLocalization.NoData;\r\n kendo.ui.AutoComplete.prototype.options.noDataTemplate = BERRY.loc.kendoLocalization.NoData;\r\n}","function getHTMLMediaElement(n,t){function k(){f.style.marginLeft=i.clientWidth-f.clientWidth-2+\"px\";c?(c.style.width=i.clientWidth/3+\"px\",u.style.marginLeft=i.clientWidth/3-30+\"px\",zoom&&(zoom.style[\"border-top-right-radius\"]=\"5px\")):u.style.marginLeft=i.clientWidth-u.clientWidth-2+\"px\";u.style.marginTop=i.clientHeight-u.clientHeight-2+\"px\";b<10?(b++,setTimeout(k,1e3)):b=0}var v,r,i,f,e,o,y,l,u,s,h,p,c,a,w,b;if(t=t||{},!n.nodeName||n.nodeName.toLowerCase()!=\"audio\"&&n.nodeName.toLowerCase()!=\"video\"){if(!n.getVideoTracks().length)return getAudioElement(n,t);v=n;n=document.createElement(v.getVideoTracks().length?\"video\":\"audio\");\"srcObject\"in n?n.srcObject=v:n[!navigator.mozGetUserMedia?\"src\":\"mozSrcObject\"]=!navigator.mozGetUserMedia?window.webkitURL.createObjectURL(v):v}return n.nodeName&&n.nodeName.toLowerCase()==\"audio\"?getAudioElement(n,t):(n.controls=!1,r=t.buttons||[\"mute-audio\",\"mute-video\",\"volume-slider\",\"stop\"],r.has=function(n){return r.indexOf(n)!==-1},t.toggle=t.toggle||[],t.toggle.has=function(n){return t.toggle.indexOf(n)!==-1},i=document.createElement(\"div\"),i.className=\"media-container\",f=document.createElement(\"div\"),f.className=\"media-controls\",i.appendChild(f),r.has(\"mute-audio\")&&(e=document.createElement(\"div\"),e.className=\"control \"+(t.toggle.has(\"mute-audio\")?\"unmute-audio selected\":\"mute-audio\"),f.appendChild(e),e.onclick=function(){if(e.className.indexOf(\"unmute-audio\")!=-1){if(e.className=e.className.replace(\"unmute-audio selected\",\"mute-audio\"),n.muted=!1,n.volume=1,t.onUnMuted)t.onUnMuted(\"audio\")}else if(e.className=e.className.replace(\"mute-audio\",\"unmute-audio selected\"),n.muted=!0,n.volume=0,t.onMuted)t.onMuted(\"audio\")}),r.has(\"mute-video\")&&(o=document.createElement(\"div\"),o.className=\"control \"+(t.toggle.has(\"mute-video\")?\"unmute-video selected\":\"mute-video\"),f.appendChild(o),o.onclick=function(){if(o.className.indexOf(\"unmute-video\")!=-1){if(o.className=o.className.replace(\"unmute-video selected\",\"mute-video\"),n.muted=!1,n.volume=1,n.play(),t.onUnMuted)t.onUnMuted(\"video\")}else if(o.className=o.className.replace(\"mute-video\",\"unmute-video selected\"),n.muted=!0,n.volume=0,n.pause(),t.onMuted)t.onMuted(\"video\")}),r.has(\"take-snapshot\")&&(y=document.createElement(\"div\"),y.className=\"control take-snapshot\",f.appendChild(y),y.onclick=function(){t.onTakeSnapshot&&t.onTakeSnapshot()}),r.has(\"stop\")&&(l=document.createElement(\"div\"),l.className=\"control stop\",f.appendChild(l),l.onclick=function(){i.style.opacity=0;setTimeout(function(){i.parentNode&&i.parentNode.removeChild(i)},800);t.onStopped&&t.onStopped()}),u=document.createElement(\"div\"),u.className=\"volume-control\",r.has(\"record-audio\")&&(s=document.createElement(\"div\"),s.className=\"control \"+(t.toggle.has(\"record-audio\")?\"stop-recording-audio selected\":\"record-audio\"),u.appendChild(s),s.onclick=function(){if(s.className.indexOf(\"stop-recording-audio\")!=-1){if(s.className=s.className.replace(\"stop-recording-audio selected\",\"record-audio\"),t.onRecordingStopped)t.onRecordingStopped(\"audio\")}else if(s.className=s.className.replace(\"record-audio\",\"stop-recording-audio selected\"),t.onRecordingStarted)t.onRecordingStarted(\"audio\")}),r.has(\"record-video\")&&(h=document.createElement(\"div\"),h.className=\"control \"+(t.toggle.has(\"record-video\")?\"stop-recording-video selected\":\"record-video\"),u.appendChild(h),h.onclick=function(){if(h.className.indexOf(\"stop-recording-video\")!=-1){if(h.className=h.className.replace(\"stop-recording-video selected\",\"record-video\"),t.onRecordingStopped)t.onRecordingStopped(\"video\")}else if(h.className=h.className.replace(\"record-video\",\"stop-recording-video selected\"),t.onRecordingStarted)t.onRecordingStarted(\"video\")}),r.has(\"volume-slider\")&&(p=document.createElement(\"div\"),p.className=\"control volume-slider\",u.appendChild(p),c=document.createElement(\"input\"),c.type=\"range\",c.min=0,c.max=100,c.value=100,c.onchange=function(){n.volume=\".\"+c.value.toString().substr(0,1)},p.appendChild(c)),(r.has(\"volume-slider\")||r.has(\"full-screen\")||r.has(\"record-audio\")||r.has(\"record-video\"))&&i.appendChild(u),a=document.createElement(\"div\"),a.className=\"media-box\",i.appendChild(a),t.title&&(w=document.createElement(\"h2\"),w.innerHTML=t.title,w.setAttribute(\"style\",\"position: absolute;color:white;font-size:17px;text-shadow: 1px 1px black;padding:0;margin:0;text-align: left; margin-top: 10px; margin-left: 10px; display: block; border: 0;line-height:1.5;z-index:1;\"),a.appendChild(w)),a.appendChild(n),t.width||(t.width=innerWidth/2-50),i.style.width=\"100%\",i.style.height=\"100%\",t.height&&(a.style.height=t.height+\"px\"),b=0,t.showOnMouseEnter||typeof t.showOnMouseEnter==\"undefined\"?(i.onmouseenter=i.onmousedown=function(){k();f.style.opacity=1;u.style.opacity=1},i.onmouseleave=function(){f.style.opacity=0;u.style.opacity=0}):setTimeout(function(){k();setTimeout(function(){f.style.opacity=1;u.style.opacity=1},300)},700),k(),i.toggle=function(n){if(typeof n!=\"string\"){for(var t=0;t0?n=i.substring(r+3):(r=i.indexOf(\"MSIE\"),n=i.substring(r+5)),u=\"IE\"):ht?(r=i.indexOf(\"Chrome\"),u=\"Chrome\",n=i.substring(r+7)):st?(r=i.indexOf(\"Safari\"),u=\"Safari\",n=i.substring(r+7),(r=i.indexOf(\"Version\"))!==-1&&(n=i.substring(r+8)),t.userAgent.indexOf(\"Version/\")!==-1&&(n=t.userAgent.split(\"Version/\")[1].split(\" \")[0])):fi?(r=i.indexOf(\"Firefox\"),u=\"Firefox\",n=i.substring(r+8)):(e=i.lastIndexOf(\" \")+1)<(r=i.lastIndexOf(\"/\"))&&(u=i.substring(e,r),n=i.substring(r+1),u.toLowerCase()===u.toUpperCase()&&(u=t.appName));return bt&&(u=\"Edge\",n=t.userAgent.split(\"Edge/\")[1]),(o=n.search(/[; \\)]/))!==-1&&(n=n.substring(0,o)),f=parseInt(\"\"+n,10),isNaN(f)&&(n=\"\"+parseFloat(t.appVersion),f=parseInt(t.appVersion,10)),{fullVersion:n,version:f,name:u,isPrivateBrowsing:!1}}function dt(n,t){var u=0,f=50,i=!1,r=window.setInterval(function(){n()&&(window.clearInterval(r),t(i));u++>f&&(window.clearInterval(r),i=!0,t(i))},10)}function si(n){var t=n.toLowerCase(),i;return t.indexOf(\"msie\")===0&&t.indexOf(\"trident\")===0?!1:(i=/(?:msie|rv:)\\s?([\\d\\.]+)/.exec(t),i&&parseInt(i[1],10)>=10)?!0:!1}function hi(n){var t,i;try{if(window.webkitRequestFileSystem)window.webkitRequestFileSystem(window.TEMPORARY,1,function(){t=!1},function(){t=!0});else if(window.indexedDB&&/Firefox/.test(window.navigator.userAgent)){try{i=window.indexedDB.open(\"test\");i.onerror=function(){return!0}}catch(r){t=!0}typeof t==\"undefined\"&&dt(function(){return i.readyState===\"done\"?!0:!1},function(n){n||(t=i.result?!1:!0)})}else if(si(window.navigator.userAgent)){t=!1;try{window.indexedDB||(t=!0)}catch(r){t=!0}}else if(window.localStorage&&/Safari/.test(window.navigator.userAgent)){try{window.localStorage.setItem(\"test\",1)}catch(r){t=!0}typeof t==\"undefined\"&&(t=!1,window.localStorage.removeItem(\"test\"))}}catch(r){t=!1}dt(function(){return typeof t!=\"undefined\"?!0:!1},function(){n(t)})}function ci(){for(var n,f=\"-\",o=t.appVersion,r=t.userAgent,i=f,s=[{s:\"Windows 10\",r:/(Windows 10.0|Windows NT 10.0)/},{s:\"Windows 8.1\",r:/(Windows 8.1|Windows NT 6.3)/},{s:\"Windows 8\",r:/(Windows 8|Windows NT 6.2)/},{s:\"Windows 7\",r:/(Windows 7|Windows NT 6.1)/},{s:\"Windows Vista\",r:/Windows NT 6.0/},{s:\"Windows Server 2003\",r:/Windows NT 5.2/},{s:\"Windows XP\",r:/(Windows NT 5.1|Windows XP)/},{s:\"Windows 2000\",r:/(Windows NT 5.0|Windows 2000)/},{s:\"Windows ME\",r:/(Win 9x 4.90|Windows ME)/},{s:\"Windows 98\",r:/(Windows 98|Win98)/},{s:\"Windows 95\",r:/(Windows 95|Win95|Windows_95)/},{s:\"Windows NT 4.0\",r:/(Windows NT 4.0|WinNT4.0|WinNT|Windows NT)/},{s:\"Windows CE\",r:/Windows CE/},{s:\"Windows 3.11\",r:/Win16/},{s:\"Android\",r:/Android/},{s:\"Open BSD\",r:/OpenBSD/},{s:\"Sun OS\",r:/SunOS/},{s:\"Linux\",r:/(Linux|X11)/},{s:\"iOS\",r:/(iPhone|iPad|iPod)/},{s:\"Mac OS X\",r:/Mac OS X/},{s:\"Mac OS\",r:/(MacPPC|MacIntel|Mac_PowerPC|Macintosh)/},{s:\"QNX\",r:/QNX/},{s:\"UNIX\",r:/UNIX/},{s:\"BeOS\",r:/BeOS/},{s:\"OS/2\",r:/OS\\/2/},{s:\"Search Bot\",r:/(nuhk|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask Jeeves\\/Teoma|ia_archiver)/}],e=0,u;u=s[e];e++)if(u.r.test(r)){i=u.s;break}n=f;/Windows/.test(i)&&(/Windows (.*)/.test(i)&&(n=/Windows (.*)/.exec(i)[1]),i=\"Windows\");switch(i){case\"Mac OS X\":/Mac OS X (10[\\.\\_\\d]+)/.test(r)&&(n=/Mac OS X (10[\\.\\_\\d]+)/.exec(r)[1]);break;case\"Android\":/Android ([\\.\\_\\d]+)/.test(r)&&(n=/Android ([\\.\\_\\d]+)/.exec(r)[1]);break;case\"iOS\":/OS (\\d+)_(\\d+)_?(\\d+)?/.test(r)&&(n=/OS (\\d+)_(\\d+)_?(\\d+)?/.exec(o),n=n[1]+\".\"+n[2]+\".\"+(n[3]|0))}return{osName:i,osVersion:n}}function li(n){n=(n||t.userAgent).toLowerCase();var i=n.match(/android\\s([0-9\\.]*)/);return i?i[1]:!1}function yi(t,i){if(n.isWebRTCSupported){var r=!0,u=!0;pi(function(n){n?n.match(gt)?(r=!1,t(\"Local: \"+n,r,u)):n.match(vi)?(u=!1,t(\"Public: \"+n,r,u)):t(\"Public: \"+n,r,u):t()},i)}}function pi(t,i){function h(n){var i;if(!n){t();return}if(i=ai.exec(n),i){var r=i[1],u=n.match(gt);e[r]===undefined&&t(r,u,!0);e[r]=!0}}function l(){var n=r.localDescription.sdp.split(\"\\n\");n.forEach(function(n){n&&n.indexOf(\"a=candidate:\")===0&&h(n)})}var e,u,o,f,s,c,r;if(typeof document!=\"undefined\"&&typeof document.getElementById==\"function\"){if(e={},u=window.RTCPeerConnection||window.mozRTCPeerConnection||window.webkitRTCPeerConnection,!u){if(o=document.getElementById(\"iframe\"),!o)return;f=o.contentWindow;u=f.RTCPeerConnection||f.mozRTCPeerConnection||f.webkitRTCPeerConnection}if(u){if(s=null,n.browser===\"Chrome\"&&n.browser.version<58&&(s={optional:[{RtpDataChannels:!0}]}),c={iceServers:[{urls:\"stun:stun.l.google.com:19302\"}]},r=new u(c,s),i&&(r.addStream?r.addStream(i):r.addTrack&&i.getTracks()[0]&&r.addTrack(i.getTracks()[0],i)),r.onicecandidate=function(n){n.candidate&&n.candidate.candidate?h(n.candidate.candidate):h()},!i)try{r.createDataChannel(\"sctp\",{})}catch(a){}n.isPromisesSupported?r.createOffer().then(function(n){r.setLocalDescription(n).then(l)}):r.createOffer(function(n){r.setLocalDescription(n,l,function(){})},function(){})}}}function ni(i){if(!nt){i&&i();return}if(!t.enumerateDevices&&window.MediaStreamTrack&&window.MediaStreamTrack.getSources&&(t.enumerateDevices=window.MediaStreamTrack.getSources.bind(window.MediaStreamTrack)),!t.enumerateDevices&&t.enumerateDevices&&(t.enumerateDevices=t.enumerateDevices.bind(t)),!t.enumerateDevices){i&&i();return}p=[];e=[];s=[];h=[];tt=!1;it=!1;rt=!1;w=!1;b=!1;var r={};t.enumerateDevices(function(t){t.forEach(function(t){var i={};for(var u in t)try{typeof t[u]!=\"function\"&&(i[u]=t[u])}catch(f){}r[i.deviceId+i.label+i.kind]||(i.kind===\"audio\"&&(i.kind=\"audioinput\"),i.kind===\"video\"&&(i.kind=\"videoinput\"),i.deviceId||(i.deviceId=i.id),i.id||(i.id=i.deviceId),i.label?(i.kind!==\"videoinput\"||b||(b=!0),i.kind!==\"audioinput\"||w||(w=!0)):(i.isCustomLabel=!0,i.label=i.kind===\"videoinput\"?\"Camera \"+(h.length+1):i.kind===\"audioinput\"?\"Microphone \"+(e.length+1):i.kind===\"audiooutput\"?\"Speaker \"+(s.length+1):\"Please invoke getUserMedia once.\",typeof n!=\"undefined\"&&n.browser.isChrome&&n.browser.version>=46&&!/^(https:|chrome-extension:)$/g.test(location.protocol||\"\")&&typeof document!=\"undefined\"&&typeof document.domain==\"string\"&&document.domain.search&&document.domain.search(/localhost|127.0./g)===-1&&(i.label=\"HTTPs is required to get label of this \"+i.kind+\" device.\")),i.kind===\"audioinput\"&&(tt=!0,e.indexOf(i)===-1&&e.push(i)),i.kind===\"audiooutput\"&&(it=!0,s.indexOf(i)===-1&&s.push(i)),i.kind===\"videoinput\"&&(rt=!0,h.indexOf(i)===-1&&h.push(i)),p.push(i),r[i.deviceId+i.label+i.kind]=i)});typeof n!=\"undefined\"&&(n.MediaDevices=p,n.hasMicrophone=tt,n.hasSpeakers=it,n.hasWebcam=rt,n.isWebsiteHasWebcamPermissions=b,n.isWebsiteHasMicrophonePermissions=w,n.audioInputDevices=e,n.audioOutputDevices=s,n.videoInputDevices=h);i&&i()})}function bi(n,t){function i(n,t){return t==0?n:i(t,n%t)}var r=i(n,t);return n/r/(t/r)}var et=\"Fake/5.0 (FakeOS) AppleWebKit/123 (KHTML, like Gecko) Fake/12.3.4567.89 Fake/123.45\",ot=typeof process==\"object\"&&typeof process.versions==\"object\"&&process.versions.node&&!process.browser,v,t,i,u,y,f,d,g,nt,n,wi,ut,r,ti,c,ct,k,l,lt,ii,ri,at,ft,vt,yt,pt,a,wt;ot&&(v=process.versions.node.toString().replace(\"v\",\"\"),et=\"Nodejs/\"+v+\" (NodeOS) AppleWebKit/\"+v+\" (KHTML, like Gecko) Nodejs/\"+v+\" Nodejs/\"+v),function(n){typeof window==\"undefined\"&&(typeof window==\"undefined\"&&typeof global!=\"undefined\"?(global.navigator={userAgent:et,getUserMedia:function(){}},n.window=global):typeof window==\"undefined\",typeof location==\"undefined\"&&(n.location={protocol:\"file:\",href:\"\",hash:\"\"}),typeof screen==\"undefined\"&&(n.screen={width:0,height:0}))}(typeof global!=\"undefined\"?global:window);t=window.navigator;typeof t!=\"undefined\"?(typeof t.webkitGetUserMedia!=\"undefined\"&&(t.getUserMedia=t.webkitGetUserMedia),typeof t.mozGetUserMedia!=\"undefined\"&&(t.getUserMedia=t.mozGetUserMedia)):t={getUserMedia:function(){},userAgent:et};var ui=!!/Android|webOS|iPhone|iPad|iPod|BB10|BlackBerry|IEMobile|Opera Mini|Mobile|mobile/i.test(t.userAgent||\"\"),bt=t.userAgent.indexOf(\"Edge\")!==-1&&(!!t.msSaveOrOpenBlob||!!t.msSaveBlob),kt=!!window.opera||t.userAgent.indexOf(\" OPR/\")>=0,fi=typeof InstallTrigger!=\"undefined\",st=/^((?!chrome|android).)*safari/i.test(t.userAgent),ht=!!window.chrome&&!kt,ei=typeof document!=\"undefined\"&&!!document.documentMode&&!bt;i={Android:function(){return t.userAgent.match(/Android/i)},BlackBerry:function(){return t.userAgent.match(/BlackBerry|BB10/i)},iOS:function(){return t.userAgent.match(/iPhone|iPad|iPod/i)},Opera:function(){return t.userAgent.match(/Opera Mini/i)},Windows:function(){return t.userAgent.match(/IEMobile/i)},any:function(){return i.Android()||i.BlackBerry()||i.iOS()||i.Opera()||i.Windows()},getOsName:function(){var n=\"Unknown OS\";return i.Android()&&(n=\"Android\"),i.BlackBerry()&&(n=\"BlackBerry\"),i.iOS()&&(n=\"iOS\"),i.Opera()&&(n=\"Opera Mini\"),i.Windows()&&(n=\"Windows\"),n}};u=\"Unknown OS\";y=\"Unknown OS Version\";f=ci();f&&f.osName&&f.osName!=\"-\"?(u=f.osName,y=f.osVersion):i.any()&&(u=i.getOsName(),u==\"Android\"&&(y=li()));ot=typeof process==\"object\"&&typeof process.versions==\"object\"&&process.versions.node;u===\"Unknown OS\"&&ot&&(u=\"Nodejs\",y=process.versions.node.toString().replace(\"v\",\"\"));d=!1;g=!1;[\"captureStream\",\"mozCaptureStream\",\"webkitCaptureStream\"].forEach(function(n){typeof document!=\"undefined\"&&typeof document.createElement==\"function\"&&(!d&&n in document.createElement(\"canvas\")&&(d=!0),!g&&n in document.createElement(\"video\")&&(g=!0))});var gt=/^(192\\.168\\.|169\\.254\\.|10\\.|172\\.(1[6-9]|2\\d|3[01]))/,ai=/([0-9]{1,3}(\\.[0-9]{1,3}){3})/,vi=/[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7}/;var p=[],e=[],s=[],h=[];t.mediaDevices&&t.mediaDevices.enumerateDevices&&(t.enumerateDevices=function(n){var i=t.mediaDevices.enumerateDevices();i&&i.then?t.mediaDevices.enumerateDevices().then(n).catch(function(){n([])}):n([])});nt=!1;typeof o!=\"undefined\"&&\"getSources\"in o?nt=!0:t.mediaDevices&&!!t.mediaDevices.enumerateDevices&&(nt=!0);var tt=!1,it=!1,rt=!1,w=!1,b=!1;n=window.DetectRTC||{};n.browser=oi();hi(function(t){n.browser.isPrivateBrowsing=!!t});n.browser[\"is\"+n.browser.name]=!0;n.osName=u;n.osVersion=y;wi=typeof process==\"object\"&&typeof process.versions==\"object\"&&process.versions[\"node-webkit\"];ut=!1;[\"RTCPeerConnection\",\"webkitRTCPeerConnection\",\"mozRTCPeerConnection\",\"RTCIceGatherer\"].forEach(function(n){ut||n in window&&(ut=!0)});n.isWebRTCSupported=ut;n.isORTCSupported=typeof RTCIceGatherer!=\"undefined\";r=!1;n.browser.isChrome&&n.browser.version>=35?r=!0:n.browser.isFirefox&&n.browser.version>=34?r=!0:n.browser.isEdge&&n.browser.version>=17?r=!0:n.osName===\"Android\"&&n.browser.isChrome&&(r=!0);/^(https:|chrome-extension:)$/g.test(location.protocol||\"\")||(ti=typeof document!=\"undefined\"&&typeof document.domain==\"string\"&&document.domain.search&&document.domain.search(/localhost|127.0./g)===-1,ti&&(n.browser.isChrome||n.browser.isEdge||n.browser.isOpera)?r=!1:n.browser.isFirefox&&(r=!1));n.isScreenCapturingSupported=r;c={isSupported:!1,isCreateMediaStreamSourceSupported:!1};[\"AudioContext\",\"webkitAudioContext\",\"mozAudioContext\",\"msAudioContext\"].forEach(function(n){c.isSupported||n in window&&(c.isSupported=!0,window[n]&&\"createMediaStreamSource\"in window[n].prototype&&(c.isCreateMediaStreamSourceSupported=!0))});n.isAudioContextSupported=c.isSupported;n.isCreateMediaStreamSourceSupported=c.isCreateMediaStreamSourceSupported;ct=!1;n.browser.isChrome&&n.browser.version>31&&(ct=!0);n.isRtpDataChannelsSupported=ct;k=!1;n.browser.isFirefox&&n.browser.version>28?k=!0:n.browser.isChrome&&n.browser.version>25?k=!0:n.browser.isOpera&&n.browser.version>=11&&(k=!0);n.isSctpDataChannelsSupported=k;n.isMobileDevice=ui;l=!1;t.getUserMedia?l=!0:t.mediaDevices&&t.mediaDevices.getUserMedia&&(l=!0);n.browser.isChrome&&n.browser.version>=46&&!/^(https:|chrome-extension:)$/g.test(location.protocol||\"\")&&typeof document!=\"undefined\"&&typeof document.domain==\"string\"&&document.domain.search&&document.domain.search(/localhost|127.0./g)===-1&&(l=\"Requires HTTPs\");n.osName===\"Nodejs\"&&(l=!1);n.isGetUserMediaSupported=l;lt=\"\";screen.width&&(ii=screen.width?screen.width:\"\",ri=screen.height?screen.height:\"\",lt+=\"\"+ii+\" x \"+ri);n.displayResolution=lt;n.displayAspectRatio=bi(screen.width,screen.height).toFixed(2);n.isCanvasSupportsStreamCapturing=d;n.isVideoSupportsStreamCapturing=g;n.browser.name==\"Chrome\"&&n.browser.version>=53&&(n.isCanvasSupportsStreamCapturing||(n.isCanvasSupportsStreamCapturing=\"Requires chrome flag: enable-experimental-web-platform-features\"),n.isVideoSupportsStreamCapturing||(n.isVideoSupportsStreamCapturing=\"Requires chrome flag: enable-experimental-web-platform-features\"));n.DetectLocalIPAddress=yi;n.isWebSocketsSupported=\"WebSocket\"in window&&2===window.WebSocket.CLOSING;n.isWebSocketsBlocked=!n.isWebSocketsSupported;n.osName===\"Nodejs\"&&(n.isWebSocketsSupported=!0,n.isWebSocketsBlocked=!1);n.checkWebSocketsSupport=function(t){t=t||function(){};try{var r,i=new WebSocket(\"wss://echo.websocket.org:443/\");i.onopen=function(){n.isWebSocketsBlocked=!1;r=(new Date).getTime();i.send(\"ping\")};i.onmessage=function(){n.WebsocketLatency=(new Date).getTime()-r+\"ms\";t();i.close();i=null};i.onerror=function(){n.isWebSocketsBlocked=!0;t()}}catch(u){n.isWebSocketsBlocked=!0;t()}};n.load=function(n){n=n||function(){};ni(n)};typeof ni==\"function\";n.MediaDevices=typeof p!=\"undefined\"?p:[];n.hasMicrophone=tt;n.hasSpeakers=it;n.hasWebcam=rt;n.isWebsiteHasWebcamPermissions=b;n.isWebsiteHasMicrophonePermissions=w;n.audioInputDevices=e;n.audioOutputDevices=s;n.videoInputDevices=h;at=!1;typeof document!=\"undefined\"&&typeof document.createElement==\"function\"&&\"setSinkId\"in document.createElement(\"video\")&&(at=!0);n.isSetSinkIdSupported=at;ft=!1;n.browser.isFirefox&&typeof mozRTCPeerConnection!=\"undefined\"?\"getSenders\"in mozRTCPeerConnection.prototype&&(ft=!0):n.browser.isChrome&&typeof webkitRTCPeerConnection!=\"undefined\"&&\"getSenders\"in webkitRTCPeerConnection.prototype&&(ft=!0);n.isRTPSenderReplaceTracksSupported=ft;vt=!1;n.browser.isFirefox&&n.browser.version>38&&(vt=!0);n.isRemoteStreamProcessingSupported=vt;yt=!1;typeof o!=\"undefined\"&&\"applyConstraints\"in o.prototype&&(yt=!0);n.isApplyConstraintsSupported=yt;pt=!1;n.browser.isFirefox&&n.browser.version>=43&&(pt=!0);n.isMultiMonitorScreenCapturingSupported=pt;n.isPromisesSupported=!!(\"Promise\"in window);n.version=\"1.3.9\";typeof n==\"undefined\"&&(window.DetectRTC={});a=window.MediaStream;typeof a==\"undefined\"&&typeof webkitMediaStream!=\"undefined\"&&(a=webkitMediaStream);n.MediaStream=typeof a!=\"undefined\"&&typeof a==\"function\"?Object.keys(a.prototype):!1;n.MediaStreamTrack=typeof o!=\"undefined\"?Object.keys(o.prototype):!1;wt=window.RTCPeerConnection||window.mozRTCPeerConnection||window.webkitRTCPeerConnection;n.RTCPeerConnection=typeof wt!=\"undefined\"?Object.keys(wt.prototype):!1;window.DetectRTC=n;typeof module!=\"undefined\"&&(module.exports=n);typeof define==\"function\"&&define.amd&&define(\"DetectRTC\",[],function(){return n})}();typeof cordova!=\"undefined\"&&(DetectRTC.isMobileDevice=!0,DetectRTC.browser.name=\"Chrome\");navigator&&navigator.userAgent&&navigator.userAgent.indexOf(\"Crosswalk\")!==-1&&(DetectRTC.isMobileDevice=!0,DetectRTC.browser.name=\"Chrome\");window.addEventListener||(window.addEventListener=function(n,t,i){n.attachEvent&&n.attachEvent(\"on\"+t,i)});window.attachEventListener=function(n,t,i,r){n.addEventListener(t,i,r)};s=window.MediaStream;typeof s==\"undefined\"&&typeof webkitMediaStream!=\"undefined\"&&(s=webkitMediaStream);typeof s!=\"undefined\"&&(\"stop\"in s.prototype||(s.prototype.stop=function(){this.getTracks().forEach(function(n){n.stop()})}));window.iOSDefaultAudioOutputDevice=window.iOSDefaultAudioOutputDevice||\"speaker\";document.addEventListener(\"deviceready\",it,!1);it();l={};typeof window.RTCPeerConnection!=\"undefined\"?u=window.RTCPeerConnection:typeof mozRTCPeerConnection!=\"undefined\"?u=mozRTCPeerConnection:typeof webkitRTCPeerConnection!=\"undefined\"&&(u=webkitRTCPeerConnection);var p=window.RTCSessionDescription||window.mozRTCSessionDescription,rt=window.RTCIceCandidate||window.mozRTCIceCandidate,o=window.MediaStreamTrack;e=function(){function r(n,i){var r=u(n);return r.videoCodecNumbers?i===\"vp8\"&&r.vp8LineNumber===r.videoCodecNumbers[0]?n:i===\"vp9\"&&r.vp9LineNumber===r.videoCodecNumbers[0]?n:i===\"h264\"&&r.h264LineNumber===r.videoCodecNumbers[0]?n:t(n,i,r):n}function t(n,t,i,r){var u=\"\",e,f;if(t===\"vp8\"){if(!i.vp8LineNumber)return n;u=i.vp8LineNumber}if(t===\"vp9\"){if(!i.vp9LineNumber)return n;u=i.vp9LineNumber}if(t===\"h264\"){if(!i.h264LineNumber)return n;u=i.h264LineNumber}return e=i.videoCodecNumbersOriginal.split(\"SAVPF\")[0]+\"SAVPF \",f=[u],r&&(f=[]),i.videoCodecNumbers.forEach(function(n){n!==u&&f.push(n)}),e+=f.join(\" \"),n.replace(i.videoCodecNumbersOriginal,e)}function u(n){var t={};return n.split(\"\\n\").forEach(function(n){n.indexOf(\"m=video\")===0&&(t.videoCodecNumbers=[],n.split(\"SAVPF\")[1].split(\" \").forEach(function(i){(i=i.trim(),i&&i.length)&&(t.videoCodecNumbers.push(i),t.videoCodecNumbersOriginal=n)}));n.indexOf(\"VP8/90000\")===-1||t.vp8LineNumber||(t.vp8LineNumber=n.replace(\"a=rtpmap:\",\"\").split(\" \")[0]);n.indexOf(\"VP9/90000\")===-1||t.vp9LineNumber||(t.vp9LineNumber=n.replace(\"a=rtpmap:\",\"\").split(\" \")[0]);n.indexOf(\"H264/90000\")===-1||t.h264LineNumber||(t.h264LineNumber=n.replace(\"a=rtpmap:\",\"\").split(\" \")[0])}),t}function f(n){var i=u(n);return n=t(n,\"vp9\",i,!0),t(n,\"vp8\",i,!0)}function e(n){if(!n||typeof n!=\"string\")throw\"Invalid arguments.\";return n=n.replace(\"a=rtcp-fb:126 nack\\r\\n\",\"\"),n=n.replace(\"a=rtcp-fb:126 nack pli\\r\\n\",\"a=rtcp-fb:126 pli\\r\\n\"),n=n.replace(\"a=rtcp-fb:97 nack\\r\\n\",\"\"),n.replace(\"a=rtcp-fb:97 nack pli\\r\\n\",\"a=rtcp-fb:97 pli\\r\\n\")}function o(n,t){if(t&&t.getSenders&&t.getSenders().length){if(!n||typeof n!=\"string\")throw\"Invalid arguments.\";t.getSenders().forEach(function(t){for(var i=t.getParameters(),r=0;r=i)||setTimeout(function(){r();t(n,i,r,u)},n)}return{setHandlers:i,onSyncNeeded:function(){}}}();var wt={send:function(n){function s(n,t){var h={type:\"text\",uuid:e,sendingTime:o};n&&(t=n,h.packets=parseInt(t.length/i));t.length>i?h.message=t.slice(0,i):(h.message=t,h.last=!0,h.isobject=f);c.send(h,l);r=t.slice(h.message.length);r.length&&setTimeout(function(){s(null,r)},u.chunkInterval||100)}var u=n.connection,c=n.channel,l=n.remoteUserId,t=n.text,i=u.chunkSize||1e3,r=\"\",f=!1,e,o;lt(t)||(f=!0,t=JSON.stringify(t));e=h();o=(new Date).getTime();s(t)}},et=function(){function n(n){function i(n,t){if(n.position!==-1){var i=+n.position.toFixed(2).split(\".\")[1]||100;t.innerHTML=i+\"%\"}}var t={};n.onFileStart=function(i){var r=document.createElement(\"div\");if(r.title=i.name,r.innerHTML=\"