{"version":3,"sources":["webpack:///$_lazy_route_resource lazy namespace object","webpack:///node_modules/moment/locale sync ^\\.\\/.*$","webpack:///src/app/app-languages.service.ts","webpack:///src/app/app-routing.module.ts","webpack:///src/app/app.component.ts","webpack:///src/app/app.component.html","webpack:///src/app/app.module.ts","webpack:///src/app/menu-items.service.ts","webpack:///src/environments/environment.ts","webpack:///src/infrastructure/base/base-entity.resource.ts","webpack:///src/infrastructure/base/base.resource.ts","webpack:///src/infrastructure/base/configuration/configuration.ts","webpack:///src/infrastructure/base/interfaces/base-entity-filter.service.ts","webpack:///src/infrastructure/base/models/alias-nomenclature.model.ts","webpack:///src/infrastructure/base/models/attached-file.model.ts","webpack:///src/infrastructure/base/models/entity.model.ts","webpack:///src/infrastructure/base/models/nomenclature.model.ts","webpack:///src/infrastructure/components/autocomplete/autocomplete.component.ts","webpack:///src/infrastructure/components/autocomplete/autocomplete.component.html","webpack:///src/infrastructure/components/base-entity-search.component.ts","webpack:///src/infrastructure/components/breadcrumb/breadcrumb.component.ts","webpack:///src/infrastructure/components/breadcrumb/breadcrumb.component.html","webpack:///src/infrastructure/components/can-deactivate/can-deactivate.component.ts","webpack:///src/infrastructure/components/can-deactivate/can-deactivate.guard.ts","webpack:///src/infrastructure/components/confirm-modal/confirm-modal.component.ts","webpack:///src/infrastructure/components/confirm-modal/confirm-modal.component.html","webpack:///src/infrastructure/components/current-user/current-user.component.ts","webpack:///src/infrastructure/components/current-user/current-user.component.html","webpack:///src/infrastructure/components/file-upload/file-select.component.ts","webpack:///src/infrastructure/components/file-upload/file-select.component.html","webpack:///src/infrastructure/components/file-upload/file-select.service.ts","webpack:///src/infrastructure/components/language-select/language-select.component.ts","webpack:///src/infrastructure/components/language-select/language-select.component.html","webpack:///src/infrastructure/components/loading-indicator/loading-indicator.component.ts","webpack:///src/infrastructure/components/loading-indicator/loading-indicator.component.html","webpack:///src/infrastructure/components/loading-indicator/loading-indicator.service.ts","webpack:///src/infrastructure/components/menu/app-menu.component.ts","webpack:///src/infrastructure/components/menu/app-menu.component.html","webpack:///src/infrastructure/components/menu/app-sub-menu.component.ts","webpack:///src/infrastructure/components/menu/app-sub-menu.component.html","webpack:///src/infrastructure/components/nomenclature-select/components/ab-nomenclature-select.component.ts","webpack:///src/infrastructure/components/nomenclature-select/components/ab-nomenclature-select.component.html","webpack:///src/infrastructure/components/nomenclature-select/components/ab-nomenclature-template.pipe.ts","webpack:///src/infrastructure/components/nomenclature-select/dtos/nomenclature-select-filter.dto.ts","webpack:///src/infrastructure/components/scroll-to-top/scroll-to-top-btn.component.ts","webpack:///src/infrastructure/components/scroll-to-top/scroll-to-top-btn.component.html","webpack:///src/infrastructure/constants/custom-date.constants.ts","webpack:///src/infrastructure/constants/password-regex.constant.ts","webpack:///src/infrastructure/directives/click-outside-detector.directive.ts","webpack:///src/infrastructure/directives/format-date.directive.ts","webpack:///src/infrastructure/interceptors/administrator-auth.guard.ts","webpack:///src/infrastructure/interceptors/auth.guard.ts","webpack:///src/infrastructure/interceptors/auth.interceptor.ts","webpack:///src/infrastructure/interceptors/error.interceptor.ts","webpack:///src/infrastructure/interceptors/interceptors.module.ts","webpack:///src/infrastructure/material-components.module.ts","webpack:///src/infrastructure/pipes/file-size.pipe.ts","webpack:///src/infrastructure/pipes/is-active.pipe.ts","webpack:///src/infrastructure/pipes/local-time.pipe.ts","webpack:///src/infrastructure/pipes/order-by.pipe.ts","webpack:///src/infrastructure/pipes/safe-html.pipe.ts","webpack:///src/infrastructure/pipes/view-order.pipe.ts","webpack:///src/infrastructure/search-unsubscriber/search-unsubscriber.service.ts","webpack:///src/infrastructure/services/confirm-modal.service.ts","webpack:///src/infrastructure/services/metadata-harvesting.service.ts","webpack:///src/infrastructure/services/previous-route.service.ts","webpack:///src/infrastructure/services/user-permission-verification.service.ts","webpack:///src/infrastructure/shared.module.ts","webpack:///src/infrastructure/system-messages/enums/system-message-type.enum.ts","webpack:///src/infrastructure/system-messages/models/system-message.model.ts","webpack:///src/infrastructure/system-messages/services/system-messages-handler.service.ts","webpack:///src/infrastructure/system-messages/system-messages.component.ts","webpack:///src/infrastructure/system-messages/system-messages.component.html","webpack:///src/infrastructure/validators/day-validator.directive.ts","webpack:///src/infrastructure/validators/email-validator.directive.ts","webpack:///src/infrastructure/validators/integer-validator.directive.ts","webpack:///src/infrastructure/validators/min-validator.directive.ts","webpack:///src/infrastructure/validators/month-validator.directive.ts","webpack:///src/infrastructure/validators/password-validator.directive.ts","webpack:///src/infrastructure/validators/whitespace-validation.directive.ts","webpack:///src/infrastructure/validators/year-validator.directive.ts","webpack:///src/main.ts","webpack:///src/modules/classification/classification-routing.module.ts","webpack:///src/modules/classification/classification.module.ts","webpack:///src/modules/classification/classification.resource.ts","webpack:///src/modules/classification/components/classification-base.component.ts","webpack:///src/modules/classification/components/classification-children.component.ts","webpack:///src/modules/classification/components/classification-children.component.html","webpack:///src/modules/classification/components/classification-creation-modal.component.ts","webpack:///src/modules/classification/components/classification-creation-modal.component.html","webpack:///src/modules/classification/components/classification-harvesting-data.component.ts","webpack:///src/modules/classification/components/classification-harvesting-data.component.html","webpack:///src/modules/classification/components/classification-moderators-modal.component.ts","webpack:///src/modules/classification/components/classification-moderators-modal.component.html","webpack:///src/modules/classification/components/classification-publications.component.ts","webpack:///src/modules/classification/components/classification-publications.component.html","webpack:///src/modules/classification/components/classification-viewer.component.ts","webpack:///src/modules/classification/components/classification-viewer.component.html","webpack:///src/modules/classification/components/classifications.component.ts","webpack:///src/modules/classification/components/classifications.component.html","webpack:///src/modules/classification/dtos/classification.dto.ts","webpack:///src/modules/classification/models/classification.model.ts","webpack:///src/modules/institution/components/institution-delete-publications-modal.component.ts","webpack:///src/modules/institution/components/institution-delete-publications-modal.component.html","webpack:///src/modules/institution/components/institution-edit.component.ts","webpack:///src/modules/institution/components/institution-edit.component.html","webpack:///src/modules/institution/components/institution-search.component.ts","webpack:///src/modules/institution/components/institution-search.component.html","webpack:///src/modules/institution/institution-routing.module.ts","webpack:///src/modules/institution/institution.module.ts","webpack:///src/modules/institution/institution.resource.ts","webpack:///src/modules/institution/models/institution.model.ts","webpack:///src/modules/institution/services/institution-search-filter.service.ts","webpack:///src/modules/logs/components/log-search.component.ts","webpack:///src/modules/logs/components/log-search.component.html","webpack:///src/modules/logs/enums/log-type.enum.ts","webpack:///src/modules/logs/enums/verb.enum.ts","webpack:///src/modules/logs/log-routing.module.ts","webpack:///src/modules/logs/logs.module.ts","webpack:///src/modules/logs/models/log-filter.dto.ts","webpack:///src/modules/logs/resources/log.resource.ts","webpack:///src/modules/news/components/news-edit.component.ts","webpack:///src/modules/news/components/news-edit.component.html","webpack:///src/modules/news/components/news-search.component.ts","webpack:///src/modules/news/components/news-search.component.html","webpack:///src/modules/news/enums/news-status.enum.ts","webpack:///src/modules/news/enums/news-type.enum.ts","webpack:///src/modules/news/models/news-file.model.ts","webpack:///src/modules/news/models/news-link.model.ts","webpack:///src/modules/news/models/news.model.ts","webpack:///src/modules/news/news-routing.module.ts","webpack:///src/modules/news/news.module.ts","webpack:///src/modules/news/news.resource.ts","webpack:///src/modules/news/services/news-search-filter.service.ts","webpack:///src/modules/nomenclature/components/access-rights.component.ts","webpack:///src/modules/nomenclature/components/access-rights.component.html","webpack:///src/modules/nomenclature/components/audience-types.component.ts","webpack:///src/modules/nomenclature/components/foreign-name-nomenclature.component.html","webpack:///src/modules/nomenclature/components/base-nomenclature.component.ts","webpack:///src/modules/nomenclature/components/contributor-types.component.ts","webpack:///src/modules/nomenclature/components/general-resource-types.component.ts","webpack:///src/modules/nomenclature/components/identifier-types.component.ts","webpack:///src/modules/nomenclature/components/identifier-types.component.html","webpack:///src/modules/nomenclature/components/languages.component.ts","webpack:///src/modules/nomenclature/components/license-types.component.ts","webpack:///src/modules/nomenclature/components/license-types.component.html","webpack:///src/modules/nomenclature/components/name-identifiers.component.ts","webpack:///src/modules/nomenclature/components/name-identifiers.component.html","webpack:///src/modules/nomenclature/components/nomenclature.component.ts","webpack:///src/modules/nomenclature/components/nomenclature.component.html","webpack:///src/modules/nomenclature/components/organizational-identifiers.component.ts","webpack:///src/modules/nomenclature/components/organizational-identifiers.component.html","webpack:///src/modules/nomenclature/components/relation-types.component.ts","webpack:///src/modules/nomenclature/components/resource-types.component.ts","webpack:///src/modules/nomenclature/components/title-types.component.ts","webpack:///src/modules/nomenclature/dtos/base-nomenclature-filter.dto.ts","webpack:///src/modules/nomenclature/models/access-right.model.ts","webpack:///src/modules/nomenclature/models/audience-type.model.ts","webpack:///src/modules/nomenclature/models/contributor-type.model.ts","webpack:///src/modules/nomenclature/models/language.model.ts","webpack:///src/modules/nomenclature/models/license-type.model.ts","webpack:///src/modules/nomenclature/models/name-identifier-scheme.model.ts","webpack:///src/modules/nomenclature/models/organizational-identifier-scheme.model.ts","webpack:///src/modules/nomenclature/models/relation-type.model.ts","webpack:///src/modules/nomenclature/models/resource-identifier-type.model.ts","webpack:///src/modules/nomenclature/models/resource-type-general.model.ts","webpack:///src/modules/nomenclature/models/resource-type.model.ts","webpack:///src/modules/nomenclature/models/title-type.model.ts","webpack:///src/modules/nomenclature/nomenclature-routing.module.ts","webpack:///src/modules/nomenclature/nomenclature.module.ts","webpack:///src/modules/nomenclature/nomenclature.resource.ts","webpack:///src/modules/publication/components/existing-publications-modal.component.ts","webpack:///src/modules/publication/components/existing-publications-modal.component.html","webpack:///src/modules/publication/components/publication-actions-history/publication-actions-history.component.ts","webpack:///src/modules/publication/components/publication-actions-history/publication-actions-history.component.html","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/multiple-publication-entity-base.component.ts","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-alternate-identifiers.component.ts","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-alternate-identifiers.component.html","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-audiences.component.ts","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-audiences.component.html","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-contributors.component.ts","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-contributors.component.html","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-coverages.component.ts","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-coverages.component.html","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-creators.component.ts","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-creators.component.html","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-descriptions.component.ts","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-descriptions.component.html","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-files.component.ts","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-files.component.html","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-formats.component.ts","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-formats.component.html","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-funding-references.component.ts","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-funding-references.component.html","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-languages.component.ts","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-languages.component.html","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-publishers.component.ts","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-publishers.component.html","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-related-identifiers.component.ts","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-related-identifiers.component.html","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-sizes.component.ts","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-sizes.component.html","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-sources.component.ts","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-sources.component.html","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-subjects.component.ts","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-subjects.component.html","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-titles.component.ts","webpack:///src/modules/publication/components/publication-details/multiple-publication-components/publication-titles.component.html","webpack:///src/modules/publication/components/publication-details/publication-affiliation-select.component.ts","webpack:///src/modules/publication/components/publication-details/publication-affiliation-select.component.html","webpack:///src/modules/publication/components/publication-details/publication-denial-reasons-panel.component.ts","webpack:///src/modules/publication/components/publication-details/publication-denial-reasons-panel.component.html","webpack:///src/modules/publication/components/publication-details/publication-local-save-btn.component.ts","webpack:///src/modules/publication/components/publication-details/publication-local-save-btn.component.html","webpack:///src/modules/publication/components/publication-details/publication-reason-modal.component.ts","webpack:///src/modules/publication/components/publication-details/publication-reason-modal.component.html","webpack:///src/modules/publication/components/publication-details/publication-step-actions.component.ts","webpack:///src/modules/publication/components/publication-details/publication-step-actions.component.html","webpack:///src/modules/publication/components/publication-details/publication-steps/publication-step-five.component.ts","webpack:///src/modules/publication/components/publication-details/publication-steps/publication-step-five.component.html","webpack:///src/modules/publication/components/publication-details/publication-steps/publication-step-four.component.ts","webpack:///src/modules/publication/components/publication-details/publication-steps/publication-step-four.component.html","webpack:///src/modules/publication/components/publication-details/publication-steps/publication-step-one.component.ts","webpack:///src/modules/publication/components/publication-details/publication-steps/publication-step-one.component.html","webpack:///src/modules/publication/components/publication-details/publication-steps/publication-step-three.component.ts","webpack:///src/modules/publication/components/publication-details/publication-steps/publication-step-three.component.html","webpack:///src/modules/publication/components/publication-details/publication-steps/publication-step-two.component.ts","webpack:///src/modules/publication/components/publication-details/publication-steps/publication-step-two.component.html","webpack:///src/modules/publication/components/publication-details/publication-steps/publication-step.component.ts","webpack:///src/modules/publication/components/publication-details/publication.component.ts","webpack:///src/modules/publication/components/publication-details/publication.component.html","webpack:///src/modules/publication/components/publication-search.component.ts","webpack:///src/modules/publication/components/publication-search.component.html","webpack:///src/modules/publication/components/publication-status.component.ts","webpack:///src/modules/publication/components/publication-status.component.html","webpack:///src/modules/publication/components/unfinished-publications-table.component.ts","webpack:///src/modules/publication/components/unfinished-publications-table.component.html","webpack:///src/modules/publication/components/web-of-science/web-of-science-modal/web-of-science-modal.component.ts","webpack:///src/modules/publication/components/web-of-science/web-of-science-modal/web-of-science-modal.component.html","webpack:///src/modules/publication/dtos/existing-search-filter.dto.ts","webpack:///src/modules/publication/dtos/publication-step.dto.ts","webpack:///src/modules/publication/dtos/unfinished-publication-content.dto.ts","webpack:///src/modules/publication/enums/name-type.enum.ts","webpack:///src/modules/publication/enums/publication-action-type.enum.ts","webpack:///src/modules/publication/enums/publication-status.enum.ts","webpack:///src/modules/publication/models/publication-alternate-identifier.model.ts","webpack:///src/modules/publication/models/publication-audience.model.ts","webpack:///src/modules/publication/models/publication-classification.model.ts","webpack:///src/modules/publication/models/publication-contributor-identifier.model.ts","webpack:///src/modules/publication/models/publication-contributor.model.ts","webpack:///src/modules/publication/models/publication-coverage.model.ts","webpack:///src/modules/publication/models/publication-creator-affiliation.model.ts","webpack:///src/modules/publication/models/publication-creator-identifier.model.ts","webpack:///src/modules/publication/models/publication-creator.model.ts","webpack:///src/modules/publication/models/publication-description.model.ts","webpack:///src/modules/publication/models/publication-entity.model.ts","webpack:///src/modules/publication/models/publication-file.model.ts","webpack:///src/modules/publication/models/publication-format.model.ts","webpack:///src/modules/publication/models/publication-funding-reference.model.ts","webpack:///src/modules/publication/models/publication-language.model.ts","webpack:///src/modules/publication/models/publication-publisher.model.ts","webpack:///src/modules/publication/models/publication-related-identifier.model.ts","webpack:///src/modules/publication/models/publication-size.model.ts","webpack:///src/modules/publication/models/publication-source.model.ts","webpack:///src/modules/publication/models/publication-subject.model.ts","webpack:///src/modules/publication/models/publication-title.model.ts","webpack:///src/modules/publication/models/publication.model.ts","webpack:///src/modules/publication/models/web-of-science.model.ts","webpack:///src/modules/publication/publication-creator-information.resource.ts","webpack:///src/modules/publication/publication-routing.module.ts","webpack:///src/modules/publication/publication.module.ts","webpack:///src/modules/publication/resources/publication-action-history.resource.ts","webpack:///src/modules/publication/resources/publication.resource.ts","webpack:///src/modules/publication/resources/unfinished-publication.resource.ts","webpack:///src/modules/publication/resources/web-of-science.resource.ts","webpack:///src/modules/publication/services/publication-search-filter.service.ts","webpack:///src/modules/publication/services/publication.service.ts","webpack:///src/modules/reports/components/base-reports-search.ts","webpack:///src/modules/reports/components/reports-organization-search/reports-organization-search.component.ts","webpack:///src/modules/reports/components/reports-organization-search/reports-organization-search.component.html","webpack:///src/modules/reports/components/reports-organization/reports-organization.component.ts","webpack:///src/modules/reports/components/reports-organization/reports-organization.component.html","webpack:///src/modules/reports/components/reports-scientist-search/reports-scientist-search.component.ts","webpack:///src/modules/reports/components/reports-scientist-search/reports-scientist-search.component.html","webpack:///src/modules/reports/components/reports-scientist/reports-scientist.component.ts","webpack:///src/modules/reports/components/reports-scientist/reports-scientist.component.html","webpack:///src/modules/reports/report.resource.ts","webpack:///src/modules/reports/reports-routing.module.ts","webpack:///src/modules/reports/reports.module.ts","webpack:///src/modules/reports/services/institution-search-filter.service.ts","webpack:///src/modules/reports/services/scientist-search-filter.service.ts","webpack:///src/modules/reward/can-activate-reward.guard.ts","webpack:///src/modules/reward/components/reward-select/reward-select.component.ts","webpack:///src/modules/reward/components/reward-select/reward-select.component.html","webpack:///src/modules/reward/models/addRewardColor.model.ts","webpack:///src/modules/reward/models/rewardColor.model.ts","webpack:///src/modules/reward/models/rewardNames.model.ts","webpack:///src/modules/reward/reward-routing.module.ts","webpack:///src/modules/reward/reward.module.ts","webpack:///src/modules/reward/services/reward.service.ts","webpack:///src/modules/user/components/login.component.ts","webpack:///src/modules/user/components/login.component.html","webpack:///src/modules/user/components/orcid-connect/orcid-connect.component.ts","webpack:///src/modules/user/components/orcid-connect/orcid-connect.component.html","webpack:///src/modules/user/components/orcid-login-btn/orcid-login-btn.component.ts","webpack:///src/modules/user/components/orcid-login-btn/orcid-login-btn.component.html","webpack:///src/modules/user/components/orcid-login-endpoint/orcid-login-endpoint.component.ts","webpack:///src/modules/user/components/registration/registration-success-message.component.ts","webpack:///src/modules/user/components/registration/registration-success-message.component.html","webpack:///src/modules/user/components/registration/registration.component.ts","webpack:///src/modules/user/components/registration/registration.component.html","webpack:///src/modules/user/components/user-activation.component.ts","webpack:///src/modules/user/components/user-activation.component.html","webpack:///src/modules/user/components/user-change-password-modal.component.ts","webpack:///src/modules/user/components/user-change-password-modal.component.html","webpack:///src/modules/user/components/user-create.component.ts","webpack:///src/modules/user/components/user-create.component.html","webpack:///src/modules/user/components/user-edit.component.ts","webpack:///src/modules/user/components/user-edit.component.html","webpack:///src/modules/user/components/user-forgotten-password.component.ts","webpack:///src/modules/user/components/user-forgotten-password.component.html","webpack:///src/modules/user/components/user-password-recovery.component.ts","webpack:///src/modules/user/components/user-password-recovery.component.html","webpack:///src/modules/user/components/user-registration-request/registration-request-denial-modal.component.ts","webpack:///src/modules/user/components/user-registration-request/registration-request-denial-modal.component.html","webpack:///src/modules/user/components/user-registration-request/user-registration-request-preview.component.ts","webpack:///src/modules/user/components/user-registration-request/user-registration-request-preview.component.html","webpack:///src/modules/user/components/user-registration-request/user-registration-request-search.component.ts","webpack:///src/modules/user/components/user-registration-request/user-registration-request-search.component.html","webpack:///src/modules/user/components/user-search.component.ts","webpack:///src/modules/user/components/user-search.component.html","webpack:///src/modules/user/constants/user-role-aliases.constant.ts","webpack:///src/modules/user/dtos/forgotten-password-recovery.dto.ts","webpack:///src/modules/user/dtos/forgotten-password.dto.ts","webpack:///src/modules/user/dtos/login.dto.ts","webpack:///src/modules/user/dtos/user-activation.dto.ts","webpack:///src/modules/user/dtos/user-change-password.dto.ts","webpack:///src/modules/user/dtos/user-creation.dto.ts","webpack:///src/modules/user/dtos/user-institution.dto.ts","webpack:///src/modules/user/dtos/user-registration-request-preview.dto.ts","webpack:///src/modules/user/dtos/user-registration.dto.ts","webpack:///src/modules/user/dtos/user.dto.ts","webpack:///src/modules/user/enums/user-login-event.enum.ts","webpack:///src/modules/user/enums/user-registration-request-status.enum.ts","webpack:///src/modules/user/resources/role.resource.ts","webpack:///src/modules/user/resources/user-activation.resource.ts","webpack:///src/modules/user/resources/user-login.resource.ts","webpack:///src/modules/user/resources/user-password-recovery.resource.ts","webpack:///src/modules/user/resources/user-registration-request.resource.ts","webpack:///src/modules/user/resources/user-registration.resource.ts","webpack:///src/modules/user/resources/user.resource.ts","webpack:///src/modules/user/services/user-login.service.ts","webpack:///src/modules/user/services/user-registration-request-search-filter.service.ts","webpack:///src/modules/user/services/user-role.service.ts","webpack:///src/modules/user/services/user-search-filter.service.ts","webpack:///src/modules/user/services/user-token.guard.ts","webpack:///src/modules/user/services/user.service.ts","webpack:///src/modules/user/user-routing.module.ts","webpack:///src/modules/user/user.module.ts"],"names":["webpackEmptyAsyncContext","req","Promise","resolve","then","e","Error","code","keys","module","exports","id","map","webpackContext","webpackContextResolve","__webpack_require__","o","webpackContextKeys","Object","AppLanguagesService","label","alias","imgSrc","isDefault","isUsed","routes","path","redirectTo","pathMatch","AppRoutingModule","forRoot","imports","notFoundRoute","AppNotFoundRoutingModule","AppComponent","appLanguagesService","loginService","userRoleService","menuItemsService","router","activatedRoute","translate","titleService","configuration","isLoggedInUser","menuItems","appLanguages","getAppLanguages","defaultLanguage","filter","language","setDefaultLang","use","isLogged","getMenuItems","subscribe","onLoggedInChange","bind","listenRouteChange","onLangChange","routeTitle","getRouteTitle","setTitle","loginEvent","event","login","getRole","redirectURL","params","snapshot","queryParams","navigateByUrl","navigate","logout","clearRole","events","pipe","title","url","urlAfterRedirects","route","enableAnalytics","gtag","analyticsTrackingId","child","firstChild","data","instantTitle","instant","get","selector","templateUrl","options","AppModule","provide","useFactory","deps","multi","loader","HttpLoaderFactory","declarations","providers","entryComponents","bootstrap","http","MenuItemService","name","isActive","hasRole","ADMINISTRATOR","ORGANIZATION_ADMINISTRATOR","children","isRegistrationEnabled","environment","production","BaseEntityResource","baseUrl","composeQueryString","entity","post","put","BaseResource","suffix","restUrl","setSuffix","object","result","isFirst","key","undefined","forEach","Configuration","httpClient","tokenProperty","userIdProperty","userFullnameProperty","userFirstNameProperty","userLastNameProperty","userRolesProperty","userInstitutionsProperty","userOrcidIdProperty","orcidLoggedInProperty","orcidDeclinedAuthorization","portalUrl","portalPublicationPreviewRoute","portalExistingSearchLimit","importSettings","config","restUrlFromAppOrigin","urls","window","location","origin","clientUrl","loadingTimeoutInSeconds","orcid","maxNewsLinks","maxNewsFiles","isEnglishTranslationEnabled","portal","publicationPreviewRoute","existingSearchLimit","analytics","configurationFactory","load","BaseEntityFilterService","defaultLimit","limit","offset","AliasNomenclature","AttachedFile","Entity","Nomenclature","AutocompleteComponent","changeDetectorRef","elementRef","templatePipe","isLoading","disabled","required","isOpenUp","appearance","modelInputSubject","propagateChange","_","propagateTouched","target","classList","contains","nativeElement","closeSelect","newFilter","textFilter","loadOptions","model","next","fn","value","selectedModel","detectChanges","isDisabled","item","setValueFromInside","getTemplate","stopPropagation","getResultText","textTemplate","getFiltered","newValue","length","getQueryString","useExisting","modelChanged","styleUrls","encapsulation","None","styles","BaseEntitySearchComponent","resource","loadingIndicator","collection","canLoadMore","search","loadMore","show","hide","clear","BreadcrumbComponent","breadcrumbs","root","getBreadcrumbs","outlet","hasOwnProperty","routeURL","segment","join","breadcrumb","routeParams","push","CanDeactivateComponent","hasUnsavedData","doUnsavedAction","CanDeactivateGuard","component","confirm","unsavedConfirmationMessage","ConfirmDialogComponent","dialogRef","close","accept","changeDetection","OnPush","CurrentUserComponent","dialog","userService","user","getUserFullname","shouldOpenUserMenu","open","disableClose","afterClosed","color","FileSelectComponent","wrongFileFormatSelected","fileSelected","ev","inputRef","files","file","acceptedFormats","indexOf","type","emit","selectFile","FileSelectService","formData","FormData","append","request","LanguageSelectComponent","translateService","languages","useLanguage","currentLang","languageAlias","otherLanguage","find","LoadingIndicatorComponent","loadingService","loadingCount","setTimeout","customTimeout","LoadingIndicatorService","loadingEmitter","AppMenuComponent","isCollapsed","slice","items","selectMainMenuItem","clearChildLinksClicked","mainItem","subItem","selectSubMenuItem","toggleMenuCollapse","isChildLinkClicked","itemIndex","openedSubMenusNumber","index","preventDefault","linkClicked","AppSubMenuComponent","AbNomenclatureSelectComponent","selectOpened","keyProperty","allLoaded","allowClear","textFilterChanged","className","textFilterEl","focus","onClick","additionalItems","filteredAdditionalItems","trim","toLowerCase","scrollDivElement","scrollDiv","scrollPosition","scrollHeight","Math","ceil","scrollTop","atBottom","clientHeight","tempArray","AbNomenclatureTemplatePipe","sanitized","resultText","replace","RegExp","bypassSecurityTrustHtml","regex","exec","innerProperties","split","innerFilterValue","lastIndex","NomenclatureSelectFilter","ScrollToTopBtnComponent","showGoToTop","pageYOffset","scroll","top","left","behavior","CUSTOM_DATE_FORMATS","parse","dateInput","display","monthYearLabel","dateA11yLabel","monthYearA11yLabel","PASSWORD_REGEX","ClickOutsideDetectorDirective","el","clickCounter","clickedOutside","FormatDateDirective","formatedDateChange","dateChange","format","AdministratorAuthGuard","token","localStorage","getItem","userId","hasAdministratorRole","AuthGuard","state","AuthInterceptor","userLoginService","accessToken","isIEOrEdge","test","navigator","userAgent","method","clone","setHeaders","Pragma","Authorization","handle","err","handleAuthError","status","message","ErrorInterceptor","loadingIndicatorService","messageHandlerService","previousRouteService","handledInComponent","currentUrl","firstActive","getFirstActive","error","messages","errorMessage","domainErrorCode","errorCode","errorKey","substr","danger","InterceptorsModule","useClass","MaterialComponentsModule","useValue","strict","showError","FileSizePipe","bytes","i","byteUnits","max","toFixed","IsActivePipe","LocalTimePipe","Date","OrderByPipe","array","prop","sortDirectionMultiplier","startsWith","sort","a","b","getValue","right","filteredProperty","property","SafeHtmlPipe","ViewOrderPipe","ascending","orderMultiplier","viewOrder","SearchUnsubscriberService","searchSubscriptions","searchType","subscription","sub","unsubscribe","unsubscribeAll","ConfirmModalService","header","body","acceptText","declineText","showDecline","MetadataHarvestingService","PreviousRouteService","previousUrl","UserPermissionVerificatorService","institutionId","MODERATOR","hasRelatedInstitution","institutionIds","isFromRelatedInstitution","publicationUserId","SCIENTIST","currentUserId","userInstitutions","SharedModule","SystemMessageType","SystemMessage","text","timeoutSeconds","additionalText","SystemMessagesHandlerService","SystemMessagesComponent","systemMessagesHandler","systemMessages","systemMessageTypes","addMessage","clearSystemMessages","systemMessage","splice","self","removeSystemMessage","DayValidationDirective","valFn","DayValidator","year","month","control","isNaN","invalidResult","numValue","upperBound","EmailValidationDirective","acceptNull","EmailValidator","EMAIL_REGEXP","isValidRegex","IntegerValidationDirective","IntegerValidator","INTEGER_REGEXP","MinValidatorDirective","validator","minFunc","min","changes","currentValue","onChange","c","MonthValidationDirective","MonthValidator","PasswordValidationDirective","PasswordValidator","passwordValidation","NoWhitespacesDirective","NoWhitespaceValidator","isWhitespace","isValid","endsWith","YearValidationDirective","YearValidator","minYear","maxYear","getFullYear","bootstrapModule","console","canActivate","ClassificationRoutingModule","forChild","ClassificationModule","ClassificationResource","rootId","moderatorUserIds","ClassificationBaseComponent","userPermissionVerificatorService","systemMessageService","cd","confirmModalService","canEdit","canDelete","canEditModerators","classification","hasChildren","isExpanded","getChildClassifications","markForCheck","parent","width","parentClassification","createClassification","updateClassification","height","classificationDto","success","findIndex","openDialog","organizationId","hasFullAccess","isOrganizationAdministrator","publicationsCount","deleteClassification","ClassificationChildrenComponent","setClassificationPermissions","ClassificationCreationModal","isValidClassificationHarvestingData","canCreateCommonClassification","getById","organizationName","organization","parentId","isFromHarvestingChange","isReadonly","checked","isOpenAirePropagationEnabled","harvestUrl","metadataFormat","sets","defaultResourceTypeId","defaultResourceType","defaultAccessRightId","defaultAccessRight","defaultIdentifierTypeId","defaultIdentifierType","defaultLicenseConditionId","defaultLicenseCondition","defaultLicenseStartDate","ClassificationHarvestingDataComponent","metadataHarvestingService","selectedSetsChange","repositorySetsCache","Map","repositorySets","classificationSets","Set","supportedMetadataFormats","loadSupportedMetadataFormats","harvestingDataForm","statusChanges","valid","selectedMetadataFormat","controls","setErrors","has","selectedSets","s","selected","spec","panel","isValidRepositoryUrl","validateRepositoryUrl","repositoryUrl","getRepositorySets","setRepositorySets","set","select","isNew","setClassificationSelectedSets","add","getSupportedMetadataFormats","clearMetadataFormat","selectedMetadataFormatChanged","ClassificationModeratorsModal","moderators","selectedModeratorIds","getModerators","setCanSave","selectedModerator","unshift","isDeletionMarked","hasNew","hasDeleted","canSave","createModerators","successMessage","addNewModerator","save","ClassificationPublicationsComponent","ClassificationViewerComponent","ClassificationsComponent","roots","getClassificationRoots","addClassification","ClassificationDto","Classification","isFromHarvesting","InstitutionDeletePublicationsModalComponent","systemMessagesService","modificationYearData","deletePublications","count","toString","InstitutionEditComponent","messagesService","isEditMode","originalObject","isAdministrator","loadInstitutionById","update","institution","JSON","stringify","saveDeactivation","deactivate","InstitutionSearchComponent","displayedColumns","lang","searchInForeignNameOnly","defaultLang","clearFilter","InstitutionRoutingModule","InstitutionModule","InstitutionResource","modificationYear","Institution","areCommonClassificationsVisible","InstitutionSearchFilterService","LogSearchComponent","searchUnsubscriberService","logs","dataCount","verb","unsubscribeByType","subscriber","getAll","addSubscription","getAllCount","getCount","LogType","Verb","LogRoutingModule","LogModule","LogFilterDto","traceLog","LogsResource","NewsEditComponent","fileSelectService","statuses","types","acceptedPublicationFileFormats","loadNewsById","news","links","newLink","uploadFile","Response","newsFile","dbId","hash","size","mimeType","wrongFileFormatMessage","draft","confirmAction","saveStatus","published","deactivated","actionName","action","NewsSearchComponent","newsTypes","newsStatuses","NewsStatus","NewsType","NewsFile","NewsLink","News","NewsRoutingModule","NewsModule","NewsResource","NewsSearchFilterService","publicationFromDate","publicationToDate","AccessRightsComponent","init","AudienceTypesComponent","BaseNomenclatureComponent","prefix","includeInactive","newEntity","assign","observable","ContributorTypesComponent","GeneralResourceTypesComponent","ResourceIdentifierTypesComponent","LanguagesComponent","LicenseTypesComponent","NameIdentifiersComponent","NomenclatureComponent","navLinks","OrganizationalIdentifiersComponent","RelationTypesComponent","ResourceTypesComponent","TitleTypesComponent","BaseNomenclatureFilterDto","AccessRight","AudienceType","ContributorType","Language","LicenseType","NameIdentifierScheme","OrganizationalIdentifierScheme","RelationType","ResourceIdentifierType","ResourceTypeGeneral","ResourceType","TitleType","NomenclatureRoutingModule","NomenclatureModule","NomenclatureResource","getBaseUrl","ExistingPublicationsModalComponent","previewLinkUrl","PublicationActionsHistoryComponent","loading","publicationActionTypes","getPublicationActionsHistory","publicationId","MultiplePublicationEntityBaseComponent","collectionChange","newItem","uniqueId","now","PublicationAlternateIdentifiersComponent","isValidForm","isDirtyForm","alternateIdentifiersForm","dirty","PublicationAudiencesComponent","audiencesForm","PublicationContributorsComponent","nameTypes","contributorsForm","newNameType","nameType","organizational","reset","contributor","personal","firstName","lastName","displayName","identifiers","identifier","institutionAffiliationName","populateContributorDisplayName","PublicationCoveragesComponent","coveragesForm","PublicationCreatorsComponent","creatorsForm","creator","creatorIdentifier","affiliation","institutionName","affiliations","creatorAffiliation","PublicationDescriptionsComponent","descriptionsForm","PublicationFilesComponent","filesChange","canDeleteUploaded","isDirty","publicationFile","PublicationFormatsComponent","PublicationFundingReferencesComponent","fundingReferencesForm","PublicationLanguagesComponent","languagesForm","PublicationPublishersComponent","publishersForm","PublicationRelatedIdentifiersComponent","relatedIdentifiersForm","PublicationSizesComponent","PublicationSourcesComponent","sourcesForm","PublicationSubjectsComponent","subjectsForm","PublicationTitlesComponent","titlesForm","term","checkExistingTitle","existingPublications","noResultText","PublicationAffiliationSelectComponent","institutions","PublicationDenialReasonsPanelComponent","denialReasons","PublicationLocalSaveBtnComponent","btnClicked","showOnTopOfOtherBtn","saveLocalClicked","PublicationReasonModalComponent","reason","PublicationStepActionsComponent","showBackBtn","disableNextBtn","PublicationStepFiveComponent","institutionResource","hierarchyItems","classificationsForm","changeValidState","classifications","changeDirtyState","moderatorInstitutionId","loadHierarchyItems","isSelected","classificationId","newClassification","publicationClassifications","hiearchyObservable","getInstitutionClassifications","getPublicationClassifications","moderatorInstitutionChange","PublicationStepFourComponent","$event","PublicationStepOneComponent","identifierChanged","checkPublicationIdentifier","identifierTypeId","resourceTypeForm","changeStepState","publicationIdentifierForm","publicationDateForm","publicationVersionForm","identifierType","checkExistingIdentifier","hasSameIdentifier","publicationResourceIdentifierValue","duplicateIdentifier","PublicationStepThreeComponent","accessRightsResource","accessRights","rightsForm","licenseForm","depositAgreementForm","accessRightId","accessRight","embargoPeriodStart","embargoPeriodEnd","loadAccessRights","changeAccessRight","PublicationStepTwoComponent","citationsForm","PublicationStepComponent","isValidChange","isDirtyChange","validForms","dirtyForms","formName","form","isValidStep","isDirtyStep","PublicationComponent","unfinishedResource","publicationCreatorInformationResource","service","userOrcidId","arePublicationActionsVisible","canEditPublication","canMarkDeleted","canDeletePublication","canMarkPendingApproval","canDeny","canPublish","isDisabledLocalSave","steps","hideEmptyPanels","publicationStatuses","currentStepIndex","originalModel","savePublicationUnfinished","routerSubscription","isRefresh","getLastUnfinishedPublication","last","setModel","content","unfinishedId","preventUnfinishedSave","getUserOrcidId","loadPublication","getUnfinishedPublication","identifierSchemeId","newIdentifier","schemeId","scheme","identifierScheme","identifierValue","creators","setPermissions","closed","stepIndex","shouldReloadHierarchy","selectedIndex","step","publicationStatus","bodyPath","contentDto","unfinishedPublicationId","doAction","markPending","publication","confirmationText","saveBtn","doPlainAction","markCorrection","deny","publish","markDeleted","newStatus","oldStatus","notApproved","isFromPublicationInstitution","isCreator","createdByUserId","deleted","pendingCorrections","pendingApproval","maxHeight","stepSelectionChanged","changeStepValidity","changeStepDirtiness","PublicationSearchComponent","PublicationStatusComponent","UnfinishedPublicationsTableComponent","unfinishedPublicationsResource","unfinishedPublications","loadUnfinishedPublications","getUserUnfinishedPublications","WebOfScienceModalComponent","hasMore","hasRecords","loadRecords","getRecords","records","queryResult","recordsFound","ut","getRecord","SearchExistingFilterDto","PublicationStep","UnfinishedPublicationContentDto","NameType","PublicationActionType","PublicationStatus","PublicationAlternateIdentifier","PublicationAudience","PublicationClassification","PublicationContributorIdentifier","PublicationContributor","PublicationCoverage","PublicationCreatorAffiliation","PublicationCreatorIdentifier","PublicationCreator","PublicationDescription","PublicationEntity","PublicationFile","PublicationFormat","PublicationFundingReference","PublicationLanguage","PublicationPublisher","PublicationRelatedIdentifier","PublicationSize","PublicationSource","PublicationSubject","PublicationTitle","Publication","titles","isHarvestingPropagationEnabled","WebOfScience","QueryResult","Data","Title","PublicationCreatorInformationResource","canDeactivate","PublicationRoutingModule","PublicationModule","PublicationActionHistoryResource","PublicationResource","details","UnfinishedPublicationResource","WebOfScienceResource","orcidId","PublicationSearchFilterService","creatorFirstName","creatorLastName","moderatorInstitution","PublicationService","confirmationBody","successMessageBody","BaseReportsSearch","searchEvent","exportExcelEvent","ReportsOrganizationSearchComponent","exportExcel","ReportsOrganizationComponent","searchOrganizations","exportInstitutionAsExcel","blob","Blob","ReportsScientistSearchComponent","ReportsScientistComponent","scientists","searchScientists","exportScientistAsExcel","ReportResource","responseType","ReportsRoutingModule","ReportsModule","ScientistSearchFilterService","scientistName","CanActivateRewardGuard","__","canSelect","RewardSelectComponent","rewardsResource","selectedRewards","controlEnabled","getAllRewards","reward","setDefault","missingColorEl","colorId","rewardToAdd","penColorId","getColorId","PEN","badgeColorId","BADGE","notebookColorId","NOTEBOOK","usbFlashDriveColorId","USB_FLASH_DRIVE","userPhoneNumber","phoneNumber","sendSelectedReward","colorName","selectedReward","r","existingColor","colorImg","currentImg","imgPath","defaultColor","DEFAULT","DEFAULT_TYPE","avaliableColor","rewardName","toCheck","AddRewardColorModel","RewardColorModel","REWARD_NAMES","REWARD_COLORS","RewardRoutingModule","RewardModule","RewardService","providedIn","LoginComponent","errors","handledDomainErrors","userLoginInfoDto","OrcidConnectComponent","showConnect","showRegister","username","connectModel","password","registrationModel","email","middleName","domainErrors","orcidUri","uri","setItem","names","msg","connect","OrcidLoginBtnComponent","oauthWindow","storageEventListener","handleStorageEvent","cleanup","clientId","endpoint","auth","scope","redirectUri","addEventListener","phantomLogin","log","removeEventListener","removeItem","openORCID","OrcidLoginEndpointComponent","fixBrokenAngularQueryParamsCollectionTralala","obj","reduce","acc","curr","concat","parseInt","fixedUserInfo","template","RegistrationSuccessMessageComponent","RegistrationComponent","isSent","registrationForm","register","handleError","UserActivationComponent","passwordRegex","isSuccess","isTokenExpired","isTokenUsed","hasMismatchingPasswords","passwordAgain","activateUser","UserChangePasswordModalComponent","changePassword","userChangePasswordForm","change","UserCreateComponent","roleResource","systemMessageHandler","selectedInstitutionIds","selectedInstitutions","userRoleAliases","rolesObservable","getRoles","roleId","selectedRole","createUser","userCreationForm","newRole","selectedInstitutionsChange","roleChanged","create","cancel","UserEditComponent","isActivationEnabled","getUserDtoById","userInstitution","updateUser","userEditForm","role","newInstitution","activate","sendActivationMail","UserForgottenPasswordComponent","sendForgottenPassword","forgottenPasswordForm","UserPasswordRecoveryComponent","newPassword","newPasswordAgain","setPasswordsError","recoverPassword","passwordRecoveryForm","RegistrationRequestDenialModalComponent","decline","UserRegistrationRequestPreviewComponent","registrationRequestStatuses","history","getPreview","approve","date","requestDate","historyItem","modificationDate","approved","denialReason","modificationUserFullname","newMessage","UserRegistrationRequestSearchComponent","requestStatuses","UserSearchComponent","UserRoleAliases","ForgottenPasswordRecoveryDto","ForgottenPasswordDto","LoginDto","UserActivationDto","UserChangePasswordDto","UserCreationDto","UserInstitutionDto","UserRegistrationRequestPreviewDto","UserRegistrationDto","UserDto","UserLoginEventEnum","UserRegistrationRequestStatus","RoleResource","UserActivationResource","UserLoginResource","UserPasswordRecoveryResource","UserRegistrationRequestResource","UserRegistrationResource","UserResource","UserLoginService","emitter","fullname","roleAlias","UserRegistrationRequestSearchFilterService","UserRoleService","userRole","UserSearchFilterService","UserTokenGuard","UserService","UserRoutingModule","UserModule"],"mappings":"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","file":"main-es5.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./$$_lazy_route_resource lazy recursive\";","var map = {\n\t\"./af\": \"./node_modules/moment/locale/af.js\",\n\t\"./af.js\": \"./node_modules/moment/locale/af.js\",\n\t\"./ar\": \"./node_modules/moment/locale/ar.js\",\n\t\"./ar-dz\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-dz.js\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-kw\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-kw.js\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-ly\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ly.js\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ma\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-ma.js\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-sa\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-sa.js\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-tn\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar-tn.js\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar.js\": \"./node_modules/moment/locale/ar.js\",\n\t\"./az\": \"./node_modules/moment/locale/az.js\",\n\t\"./az.js\": \"./node_modules/moment/locale/az.js\",\n\t\"./be\": \"./node_modules/moment/locale/be.js\",\n\t\"./be.js\": \"./node_modules/moment/locale/be.js\",\n\t\"./bg\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bg.js\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bm\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bm.js\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bn\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bn.js\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bo\": \"./node_modules/moment/locale/bo.js\",\n\t\"./bo.js\": \"./node_modules/moment/locale/bo.js\",\n\t\"./br\": \"./node_modules/moment/locale/br.js\",\n\t\"./br.js\": \"./node_modules/moment/locale/br.js\",\n\t\"./bs\": \"./node_modules/moment/locale/bs.js\",\n\t\"./bs.js\": \"./node_modules/moment/locale/bs.js\",\n\t\"./ca\": \"./node_modules/moment/locale/ca.js\",\n\t\"./ca.js\": \"./node_modules/moment/locale/ca.js\",\n\t\"./cs\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cs.js\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cv\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cv.js\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cy\": \"./node_modules/moment/locale/cy.js\",\n\t\"./cy.js\": \"./node_modules/moment/locale/cy.js\",\n\t\"./da\": \"./node_modules/moment/locale/da.js\",\n\t\"./da.js\": \"./node_modules/moment/locale/da.js\",\n\t\"./de\": \"./node_modules/moment/locale/de.js\",\n\t\"./de-at\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-at.js\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-ch\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de-ch.js\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de.js\": \"./node_modules/moment/locale/de.js\",\n\t\"./dv\": \"./node_modules/moment/locale/dv.js\",\n\t\"./dv.js\": \"./node_modules/moment/locale/dv.js\",\n\t\"./el\": \"./node_modules/moment/locale/el.js\",\n\t\"./el.js\": \"./node_modules/moment/locale/el.js\",\n\t\"./en-SG\": \"./node_modules/moment/locale/en-SG.js\",\n\t\"./en-SG.js\": \"./node_modules/moment/locale/en-SG.js\",\n\t\"./en-au\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-au.js\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-ca\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-ca.js\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-gb\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-gb.js\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-ie\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-ie.js\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-il\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-il.js\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-nz\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./en-nz.js\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./eo\": \"./node_modules/moment/locale/eo.js\",\n\t\"./eo.js\": \"./node_modules/moment/locale/eo.js\",\n\t\"./es\": \"./node_modules/moment/locale/es.js\",\n\t\"./es-do\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-do.js\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-us\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es-us.js\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es.js\": \"./node_modules/moment/locale/es.js\",\n\t\"./et\": \"./node_modules/moment/locale/et.js\",\n\t\"./et.js\": \"./node_modules/moment/locale/et.js\",\n\t\"./eu\": \"./node_modules/moment/locale/eu.js\",\n\t\"./eu.js\": \"./node_modules/moment/locale/eu.js\",\n\t\"./fa\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fa.js\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fi\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fi.js\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fo\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fo.js\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fr\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fr-ca\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ca.js\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ch\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr-ch.js\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr.js\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fy\": \"./node_modules/moment/locale/fy.js\",\n\t\"./fy.js\": \"./node_modules/moment/locale/fy.js\",\n\t\"./ga\": \"./node_modules/moment/locale/ga.js\",\n\t\"./ga.js\": \"./node_modules/moment/locale/ga.js\",\n\t\"./gd\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gd.js\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gl\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gl.js\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gom-latn\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gom-latn.js\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gu\": \"./node_modules/moment/locale/gu.js\",\n\t\"./gu.js\": \"./node_modules/moment/locale/gu.js\",\n\t\"./he\": \"./node_modules/moment/locale/he.js\",\n\t\"./he.js\": \"./node_modules/moment/locale/he.js\",\n\t\"./hi\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hi.js\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hr\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hr.js\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hu\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hu.js\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hy-am\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./hy-am.js\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./id\": \"./node_modules/moment/locale/id.js\",\n\t\"./id.js\": \"./node_modules/moment/locale/id.js\",\n\t\"./is\": \"./node_modules/moment/locale/is.js\",\n\t\"./is.js\": \"./node_modules/moment/locale/is.js\",\n\t\"./it\": \"./node_modules/moment/locale/it.js\",\n\t\"./it-ch\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it-ch.js\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it.js\": \"./node_modules/moment/locale/it.js\",\n\t\"./ja\": \"./node_modules/moment/locale/ja.js\",\n\t\"./ja.js\": \"./node_modules/moment/locale/ja.js\",\n\t\"./jv\": \"./node_modules/moment/locale/jv.js\",\n\t\"./jv.js\": \"./node_modules/moment/locale/jv.js\",\n\t\"./ka\": \"./node_modules/moment/locale/ka.js\",\n\t\"./ka.js\": \"./node_modules/moment/locale/ka.js\",\n\t\"./kk\": \"./node_modules/moment/locale/kk.js\",\n\t\"./kk.js\": \"./node_modules/moment/locale/kk.js\",\n\t\"./km\": \"./node_modules/moment/locale/km.js\",\n\t\"./km.js\": \"./node_modules/moment/locale/km.js\",\n\t\"./kn\": \"./node_modules/moment/locale/kn.js\",\n\t\"./kn.js\": \"./node_modules/moment/locale/kn.js\",\n\t\"./ko\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ko.js\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ku\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ku.js\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ky\": \"./node_modules/moment/locale/ky.js\",\n\t\"./ky.js\": \"./node_modules/moment/locale/ky.js\",\n\t\"./lb\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lb.js\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lo\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lo.js\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lt\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lt.js\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lv\": \"./node_modules/moment/locale/lv.js\",\n\t\"./lv.js\": \"./node_modules/moment/locale/lv.js\",\n\t\"./me\": \"./node_modules/moment/locale/me.js\",\n\t\"./me.js\": \"./node_modules/moment/locale/me.js\",\n\t\"./mi\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mi.js\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mk\": \"./node_modules/moment/locale/mk.js\",\n\t\"./mk.js\": \"./node_modules/moment/locale/mk.js\",\n\t\"./ml\": \"./node_modules/moment/locale/ml.js\",\n\t\"./ml.js\": \"./node_modules/moment/locale/ml.js\",\n\t\"./mn\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mn.js\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mr\": \"./node_modules/moment/locale/mr.js\",\n\t\"./mr.js\": \"./node_modules/moment/locale/mr.js\",\n\t\"./ms\": \"./node_modules/moment/locale/ms.js\",\n\t\"./ms-my\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms-my.js\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms.js\": \"./node_modules/moment/locale/ms.js\",\n\t\"./mt\": \"./node_modules/moment/locale/mt.js\",\n\t\"./mt.js\": \"./node_modules/moment/locale/mt.js\",\n\t\"./my\": \"./node_modules/moment/locale/my.js\",\n\t\"./my.js\": \"./node_modules/moment/locale/my.js\",\n\t\"./nb\": \"./node_modules/moment/locale/nb.js\",\n\t\"./nb.js\": \"./node_modules/moment/locale/nb.js\",\n\t\"./ne\": \"./node_modules/moment/locale/ne.js\",\n\t\"./ne.js\": \"./node_modules/moment/locale/ne.js\",\n\t\"./nl\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nl-be\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl-be.js\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl.js\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nn\": \"./node_modules/moment/locale/nn.js\",\n\t\"./nn.js\": \"./node_modules/moment/locale/nn.js\",\n\t\"./pa-in\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pa-in.js\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pl\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pl.js\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pt\": \"./node_modules/moment/locale/pt.js\",\n\t\"./pt-br\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt-br.js\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt.js\": \"./node_modules/moment/locale/pt.js\",\n\t\"./ro\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ro.js\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ru\": \"./node_modules/moment/locale/ru.js\",\n\t\"./ru.js\": \"./node_modules/moment/locale/ru.js\",\n\t\"./sd\": \"./node_modules/moment/locale/sd.js\",\n\t\"./sd.js\": \"./node_modules/moment/locale/sd.js\",\n\t\"./se\": \"./node_modules/moment/locale/se.js\",\n\t\"./se.js\": \"./node_modules/moment/locale/se.js\",\n\t\"./si\": \"./node_modules/moment/locale/si.js\",\n\t\"./si.js\": \"./node_modules/moment/locale/si.js\",\n\t\"./sk\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sk.js\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sl\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sl.js\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sq\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sq.js\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sr\": \"./node_modules/moment/locale/sr.js\",\n\t\"./sr-cyrl\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr-cyrl.js\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr.js\": \"./node_modules/moment/locale/sr.js\",\n\t\"./ss\": \"./node_modules/moment/locale/ss.js\",\n\t\"./ss.js\": \"./node_modules/moment/locale/ss.js\",\n\t\"./sv\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sv.js\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sw\": \"./node_modules/moment/locale/sw.js\",\n\t\"./sw.js\": \"./node_modules/moment/locale/sw.js\",\n\t\"./ta\": \"./node_modules/moment/locale/ta.js\",\n\t\"./ta.js\": \"./node_modules/moment/locale/ta.js\",\n\t\"./te\": \"./node_modules/moment/locale/te.js\",\n\t\"./te.js\": \"./node_modules/moment/locale/te.js\",\n\t\"./tet\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tet.js\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tg\": \"./node_modules/moment/locale/tg.js\",\n\t\"./tg.js\": \"./node_modules/moment/locale/tg.js\",\n\t\"./th\": \"./node_modules/moment/locale/th.js\",\n\t\"./th.js\": \"./node_modules/moment/locale/th.js\",\n\t\"./tl-ph\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tl-ph.js\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tlh\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tlh.js\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tr\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tr.js\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tzl\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzl.js\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzm\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./tzm-latn\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm-latn.js\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm.js\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./ug-cn\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./ug-cn.js\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./uk\": \"./node_modules/moment/locale/uk.js\",\n\t\"./uk.js\": \"./node_modules/moment/locale/uk.js\",\n\t\"./ur\": \"./node_modules/moment/locale/ur.js\",\n\t\"./ur.js\": \"./node_modules/moment/locale/ur.js\",\n\t\"./uz\": \"./node_modules/moment/locale/uz.js\",\n\t\"./uz-latn\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz-latn.js\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz.js\": \"./node_modules/moment/locale/uz.js\",\n\t\"./vi\": \"./node_modules/moment/locale/vi.js\",\n\t\"./vi.js\": \"./node_modules/moment/locale/vi.js\",\n\t\"./x-pseudo\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./x-pseudo.js\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./yo\": \"./node_modules/moment/locale/yo.js\",\n\t\"./yo.js\": \"./node_modules/moment/locale/yo.js\",\n\t\"./zh-cn\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-cn.js\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-hk\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-hk.js\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-tw\": \"./node_modules/moment/locale/zh-tw.js\",\n\t\"./zh-tw.js\": \"./node_modules/moment/locale/zh-tw.js\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"./node_modules/moment/locale sync recursive ^\\\\.\\\\/.*$\";","import { Injectable } from '@angular/core';\r\nimport { LanguageDto } from 'src/infrastructure/components/language-select/dtos/language.dto';\r\n\r\n@Injectable()\r\nexport class AppLanguagesService {\r\n getAppLanguages(): LanguageDto[] {\r\n return [\r\n {\r\n label: 'BG',\r\n alias: 'bg',\r\n imgSrc: 'assets/language-icons/bulgaria-flag-round-icon-16.png',\r\n isDefault: true,\r\n isUsed: false\r\n },\r\n {\r\n label: 'EN',\r\n alias: 'en',\r\n imgSrc: 'assets/language-icons/united-kingdom-flag-round-icon-16.png',\r\n isDefault: false,\r\n isUsed: false\r\n }\r\n ];\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\n\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n redirectTo: 'publications',\r\n pathMatch: 'full'\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n\r\n\r\nconst notFoundRoute: Routes = [\r\n {\r\n path: '**',\r\n redirectTo: 'publications'\r\n }\r\n]\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(notFoundRoute)],\r\n exports: [RouterModule]\r\n})\r\nexport class AppNotFoundRoutingModule { }\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { filter, map } from 'rxjs/operators';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { LanguageDto } from 'src/infrastructure/components/language-select/dtos/language.dto';\r\nimport { IMenuItem } from 'src/infrastructure/components/menu/interfaces/menu-item.interface';\r\nimport { UserLoginEventEnum } from 'src/modules/user/enums/user-login-event.enum';\r\nimport { UserLoginService } from 'src/modules/user/services/user-login.service';\r\nimport { UserRoleService } from 'src/modules/user/services/user-role.service';\r\nimport { AppLanguagesService } from './app-languages.service';\r\nimport { MenuItemService } from './menu-items.service';\r\n\r\ndeclare let gtag: Function;\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: 'app.component.html'\r\n})\r\nexport class AppComponent implements OnInit {\r\n isLoggedInUser = false;\r\n menuItems: IMenuItem[] = [];\r\n appLanguages: LanguageDto[] = [];\r\n\r\n constructor(\r\n private appLanguagesService: AppLanguagesService,\r\n private loginService: UserLoginService,\r\n private userRoleService: UserRoleService,\r\n private menuItemsService: MenuItemService,\r\n private router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n private translate: TranslateService,\r\n private titleService: Title,\r\n private configuration: Configuration\r\n ) {\r\n this.appLanguages = this.appLanguagesService.getAppLanguages();\r\n const defaultLanguage = this.appLanguages.filter((language: LanguageDto) => language.isDefault)[0];\r\n this.translate.setDefaultLang(defaultLanguage.alias);\r\n this.translate.use(defaultLanguage.alias);\r\n }\r\n\r\n ngOnInit() {\r\n this.isLoggedInUser = this.loginService.isLogged;\r\n if (this.isLoggedInUser) {\r\n this.menuItems = this.menuItemsService.getMenuItems();\r\n }\r\n\r\n this.loginService\r\n .subscribe(this.onLoggedInChange.bind(this));\r\n\r\n this.listenRouteChange();\r\n\r\n this.translate.onLangChange\r\n .subscribe(() => {\r\n const routeTitle = this.getRouteTitle();\r\n this.setTitle(routeTitle);\r\n });\r\n\r\n }\r\n\r\n private onLoggedInChange(loginEvent: { event: UserLoginEventEnum }) {\r\n if (loginEvent.event === UserLoginEventEnum.login) {\r\n this.userRoleService.getRole();\r\n\r\n let redirectURL: string;\r\n let params = this.activatedRoute.snapshot.queryParams;\r\n\r\n if (params['redirectURL']) {\r\n redirectURL = params['redirectURL'];\r\n }\r\n if (redirectURL) {\r\n this.router.navigateByUrl(redirectURL)\r\n } else {\r\n this.router.navigate([''])\r\n }\r\n } else if (loginEvent.event === UserLoginEventEnum.logout) {\r\n this.userRoleService.clearRole();\r\n this.router.navigate(['login']);\r\n }\r\n\r\n this.isLoggedInUser = this.loginService.isLogged;\r\n if (this.isLoggedInUser) {\r\n this.menuItems = this.menuItemsService.getMenuItems();\r\n } else {\r\n this.menuItems = [];\r\n }\r\n }\r\n\r\n private listenRouteChange() {\r\n this.router\r\n .events.pipe(\r\n filter(event => event instanceof NavigationEnd),\r\n map((event: NavigationEnd) => {\r\n return {\r\n title: this.getRouteTitle(),\r\n url: event.urlAfterRedirects\r\n }\r\n })\r\n ).subscribe((route: { title: string, url: string }) => {\r\n this.setTitle(route.title);\r\n\r\n if (this.configuration.enableAnalytics) {\r\n gtag('config', this.configuration.analyticsTrackingId, {\r\n 'page_path': route.url\r\n });\r\n }\r\n });\r\n }\r\n\r\n private getRouteTitle(): string {\r\n let child = this.activatedRoute.firstChild;\r\n while (child?.firstChild) {\r\n child = child.firstChild;\r\n }\r\n\r\n if (child?.snapshot.data['title']) {\r\n return child.snapshot.data['title'];\r\n }\r\n\r\n return 'app.titles.default';\r\n }\r\n\r\n private setTitle(title: string): void {\r\n const instantTitle = this.translate.instant(title);\r\n if (instantTitle === title) {\r\n this.translate.get(instantTitle)\r\n .subscribe((title: string) => this.titleService.setTitle(title));\r\n } else {\r\n this.titleService.setTitle(instantTitle);\r\n }\r\n }\r\n}\r\n","\r\n\r\n\r\n
\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 { CommonModule } from \"@angular/common\";\r\nimport { HttpClient, HttpClientModule } from \"@angular/common/http\";\r\nimport { APP_INITIALIZER, NgModule } from \"@angular/core\";\r\nimport { BrowserModule } from \"@angular/platform-browser\";\r\nimport { BrowserAnimationsModule } from \"@angular/platform-browser/animations\";\r\nimport { TranslateLoader, TranslateModule } from \"@ngx-translate/core\";\r\nimport { TranslateHttpLoader } from \"@ngx-translate/http-loader\";\r\nimport { IConfig, NgxMaskModule } from \"ngx-mask\";\r\nimport { Configuration, configurationFactory } from \"src/infrastructure/base/configuration/configuration\";\r\nimport { BreadcrumbComponent } from 'src/infrastructure/components/breadcrumb/breadcrumb.component';\r\nimport { CanDeactivateGuard } from \"src/infrastructure/components/can-deactivate/can-deactivate.guard\";\r\nimport { ConfirmDialogComponent } from \"src/infrastructure/components/confirm-modal/confirm-modal.component\";\r\nimport { CurrentUserComponent } from \"src/infrastructure/components/current-user/current-user.component\";\r\nimport { LoadingIndicatorComponent } from \"src/infrastructure/components/loading-indicator/loading-indicator.component\";\r\nimport { LoadingIndicatorService } from \"src/infrastructure/components/loading-indicator/loading-indicator.service\";\r\nimport { AppMenuComponent } from \"src/infrastructure/components/menu/app-menu.component\";\r\nimport { AppSubMenuComponent } from 'src/infrastructure/components/menu/app-sub-menu.component';\r\nimport { AuthGuard } from \"src/infrastructure/interceptors/auth.guard\";\r\nimport { InterceptorsModule } from \"src/infrastructure/interceptors/interceptors.module\";\r\nimport { MaterialComponentsModule } from \"src/infrastructure/material-components.module\";\r\nimport { IsActivePipe } from \"src/infrastructure/pipes/is-active.pipe\";\r\nimport { SafeHtmlPipe } from \"src/infrastructure/pipes/safe-html.pipe\";\r\nimport { ConfirmModalService } from \"src/infrastructure/services/confirm-modal.service\";\r\nimport { PreviousRouteService } from \"src/infrastructure/services/previous-route.service\";\r\nimport { UserPermissionVerificatorService } from \"src/infrastructure/services/user-permission-verification.service\";\r\nimport { SharedModule } from \"src/infrastructure/shared.module\";\r\nimport { SystemMessagesHandlerService } from \"src/infrastructure/system-messages/services/system-messages-handler.service\";\r\nimport { SystemMessagesComponent } from \"src/infrastructure/system-messages/system-messages.component\";\r\nimport { ClassificationModule } from \"src/modules/classification/classification.module\";\r\nimport { InstitutionModule } from \"src/modules/institution/institution.module\";\r\nimport { NewsModule } from \"src/modules/news/news.module\";\r\nimport { NomenclatureModule } from \"src/modules/nomenclature/nomenclature.module\";\r\nimport { PublicationModule } from \"src/modules/publication/publication.module\";\r\nimport { ReportsModule } from \"src/modules/reports/reports.module\";\r\nimport { RewardModule } from \"src/modules/reward/reward.module\";\r\nimport { UserLoginService } from \"src/modules/user/services/user-login.service\";\r\nimport { UserRoleService } from \"src/modules/user/services/user-role.service\";\r\nimport { UserModule } from \"src/modules/user/user.module\";\r\nimport { AppLanguagesService } from \"./app-languages.service\";\r\nimport { AppNotFoundRoutingModule, AppRoutingModule } from \"./app-routing.module\";\r\nimport { AppComponent } from \"./app.component\";\r\nimport { MenuItemService } from \"./menu-items.service\";\r\nimport { LogModule } from \"src/modules/logs/logs.module\";\r\nimport { AdministratorAuthGuard } from \"src/infrastructure/interceptors/administrator-auth.guard\";\r\n\r\n// mask options\r\nexport const options: Partial | (() => Partial) = null;\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n AppMenuComponent,\r\n AppSubMenuComponent,\r\n BreadcrumbComponent,\r\n CurrentUserComponent,\r\n ConfirmDialogComponent,\r\n SafeHtmlPipe,\r\n IsActivePipe,\r\n LoadingIndicatorComponent,\r\n SystemMessagesComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n AppRoutingModule,\r\n HttpClientModule,\r\n ClassificationModule,\r\n InstitutionModule,\r\n PublicationModule,\r\n RewardModule,\r\n UserModule,\r\n LogModule,\r\n NomenclatureModule,\r\n NewsModule,\r\n ReportsModule,\r\n SharedModule,\r\n AppNotFoundRoutingModule,\r\n MaterialComponentsModule,\r\n NgxMaskModule.forRoot(),\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: HttpLoaderFactory,\r\n deps: [HttpClient]\r\n }\r\n })\r\n ],\r\n providers: [\r\n AuthGuard,\r\n AdministratorAuthGuard,\r\n CanDeactivateGuard,\r\n Configuration,\r\n LoadingIndicatorService,\r\n ConfirmModalService,\r\n MenuItemService,\r\n AppLanguagesService,\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: configurationFactory,\r\n deps: [Configuration],\r\n multi: true\r\n },\r\n UserLoginService,\r\n UserRoleService,\r\n UserPermissionVerificatorService,\r\n InterceptorsModule,\r\n SystemMessagesHandlerService,\r\n PreviousRouteService\r\n ],\r\n entryComponents: [\r\n ConfirmDialogComponent\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n\r\nexport function HttpLoaderFactory(http: HttpClient) {\r\n return new TranslateHttpLoader(http);\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { IMenuItem } from 'src/infrastructure/components/menu/interfaces/menu-item.interface';\r\nimport { UserRoleAliases } from 'src/modules/user/constants/user-role-aliases.constant';\r\nimport { UserRoleService } from 'src/modules/user/services/user-role.service';\r\n\r\n@Injectable()\r\nexport class MenuItemService {\r\n constructor(\r\n private userRoleService: UserRoleService,\r\n private configuration: Configuration\r\n ) { }\r\n\r\n getMenuItems(): IMenuItem[] {\r\n return [\r\n {\r\n route: 'classifications',\r\n name: 'app.menu.classifications',\r\n isActive: this.userRoleService.hasRole(UserRoleAliases.ADMINISTRATOR)\r\n || this.userRoleService.hasRole(UserRoleAliases.ORGANIZATION_ADMINISTRATOR)\r\n },\r\n {\r\n route: 'publications',\r\n name: 'app.menu.publications',\r\n isActive: true\r\n },\r\n {\r\n name: 'app.menu.users',\r\n isActive: this.userRoleService.hasRole(UserRoleAliases.ADMINISTRATOR)\r\n || this.userRoleService.hasRole(UserRoleAliases.ORGANIZATION_ADMINISTRATOR),\r\n children: [\r\n {\r\n route: 'users',\r\n name: 'app.menu.usersSearch',\r\n isActive: true\r\n },\r\n {\r\n route: 'registrationRequests',\r\n name: 'app.menu.registrationRequests',\r\n isActive: this.configuration.isRegistrationEnabled\r\n }\r\n ]\r\n },\r\n {\r\n route: 'institutions',\r\n name: 'app.menu.institutions',\r\n isActive: this.userRoleService.hasRole(UserRoleAliases.ADMINISTRATOR)\r\n },\r\n {\r\n name: 'app.menu.admin',\r\n isActive: this.userRoleService.hasRole(UserRoleAliases.ADMINISTRATOR),\r\n children: [\r\n {\r\n route: 'nomenclatures',\r\n name: 'app.menu.nomenclatures',\r\n isActive: true\r\n },\r\n {\r\n route: 'news',\r\n name: 'app.menu.news',\r\n isActive: true\r\n },\r\n {\r\n route: 'logs',\r\n name: 'app.menu.systemJournal',\r\n isActive: true\r\n }\r\n ]\r\n },\r\n {\r\n name: 'app.menu.reports',\r\n isActive: this.userRoleService.hasRole(UserRoleAliases.ADMINISTRATOR),\r\n children: [\r\n {\r\n route: 'reports/scientist',\r\n name: 'reports.byScientist',\r\n isActive: true\r\n },\r\n {\r\n route: 'reports/organization',\r\n name: 'reports.byOrganization',\r\n isActive: true\r\n },\r\n ]\r\n }\r\n ];\r\n }\r\n\r\n getFirstActive(): IMenuItem {\r\n const menuItems = this.getMenuItems();\r\n return menuItems.filter(e => e.isActive)[0];\r\n }\r\n}\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { Observable } from 'rxjs';\r\nimport { BaseResource } from './base.resource';\r\nimport { BaseEntityFilterService } from './interfaces/base-entity-filter.service';\r\nimport { Entity } from './models/entity.model';\r\n\r\nexport class BaseEntityResource extends BaseResource {\r\n getFiltered(filter?: BaseEntityFilterService): Observable {\r\n return this.http.get(`${this.baseUrl}${this.composeQueryString(filter)}`);\r\n }\r\n\r\n getById(id: number): Observable {\r\n return this.http.get(`${this.baseUrl}/${id}`);\r\n }\r\n\r\n post(entity: T): Observable {\r\n return this.http.post(this.baseUrl, entity);\r\n }\r\n\r\n update(id: number, entity: T): Observable {\r\n return this.http.put(`${this.baseUrl}/${id}`, entity);\r\n }\r\n\r\n delete(id: number): Observable {\r\n return this.http.delete(`${this.baseUrl}/${id}`);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Configuration } from './configuration/configuration';\r\n\r\nexport class BaseResource {\r\n protected baseUrl: string;\r\n\r\n constructor(\r\n protected http: HttpClient,\r\n protected configuration: Configuration,\r\n private suffix?: string\r\n ) {\r\n this.baseUrl = `${this.configuration.restUrl}`;\r\n this.setSuffix(suffix);\r\n }\r\n\r\n public getBaseUrl(): string {\r\n return this.baseUrl;\r\n }\r\n\r\n public setSuffix(suffix?: string): void {\r\n if (suffix) {\r\n this.baseUrl = `${this.configuration.restUrl}/${suffix}`;\r\n }\r\n }\r\n\r\n public composeQueryString(object: any): string {\r\n let result = '';\r\n let isFirst = true;\r\n\r\n if (object) {\r\n Object.keys(object)\r\n .filter(key => object[key] !== null && object[key] !== undefined && typeof (object[key]) != typeof (object))\r\n .forEach(key => {\r\n if (isFirst) {\r\n result = '?' + key + '=' + object[key];\r\n isFirst = false;\r\n } else {\r\n result += '&' + key + '=' + object[key];\r\n }\r\n });\r\n }\r\n\r\n return result;\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { OrcidConfiguration } from '../models/orcid-configuration';\r\n\r\n@Injectable()\r\nexport class Configuration {\r\n public readonly tokenProperty = 'access_token';\r\n public readonly userIdProperty = 'user_id';\r\n public readonly userFullnameProperty = 'user_fullname';\r\n public readonly userFirstNameProperty = 'user_firstName';\r\n public readonly userLastNameProperty = 'user_lastName';\r\n public readonly userRolesProperty = 'user_roles';\r\n public readonly userInstitutionsProperty = 'user_institutions';\r\n public readonly userOrcidIdProperty = 'user_orcidId';\r\n\r\n public readonly orcidLoggedInProperty = 'orcid-logged-in';\r\n public readonly orcidDeclinedAuthorization = 'orcid-declined-authorization';\r\n\r\n public clientUrl: string;\r\n public restUrl: string;\r\n\r\n public loadingTimeoutInSeconds: number;\r\n\r\n public orcid: OrcidConfiguration;\r\n\r\n public maxNewsLinks: number;\r\n public maxNewsFiles: number;\r\n\r\n public enableAnalytics = false;\r\n public analyticsTrackingId: string = null;\r\n\r\n public portalUrl: string = null;\r\n public portalPublicationPreviewRoute: string = null;\r\n public portalExistingSearchLimit = 10;\r\n\r\n public isRegistrationEnabled = false;\r\n\r\n public isEnglishTranslationEnabled: boolean;\r\n\r\n constructor(\r\n private httpClient: HttpClient,\r\n ) { }\r\n\r\n public load(): Promise<{}> {\r\n return new Promise((resolve) => {\r\n this.httpClient.get('./../../../configuration.json')\r\n .subscribe((e) => {\r\n this.importSettings(e);\r\n resolve(true);\r\n });\r\n });\r\n }\r\n\r\n private importSettings(config: any): void {\r\n if (config.restUrlFromAppOrigin) {\r\n config.urls.restUrl = `${window.location.origin}/api`;\r\n config.urls.clientUrl = `${window.location.origin}`;\r\n }\r\n\r\n this.restUrl = config.urls.restUrl;\r\n this.clientUrl = config.urls.clientUrl;\r\n this.loadingTimeoutInSeconds = config.loadingTimeoutInSeconds;\r\n this.orcid = config.orcid;\r\n\r\n this.maxNewsLinks = config.maxNewsLinks;\r\n this.maxNewsFiles = config.maxNewsFiles;\r\n\r\n this.isRegistrationEnabled = config.isRegistrationEnabled;\r\n this.isEnglishTranslationEnabled = config.isEnglishTranslationEnabled;\r\n\r\n if (config.portal) {\r\n this.portalUrl = config.portal.url;\r\n this.portalPublicationPreviewRoute = config.portal.publicationPreviewRoute;\r\n this.portalExistingSearchLimit = config.portal.existingSearchLimit;\r\n }\r\n\r\n if (config.analytics && config.analytics.enableAnalytics && config.analytics.analyticsTrackingId) {\r\n this.enableAnalytics = config.analytics.enableAnalytics;\r\n this.analyticsTrackingId = config.analytics.analyticsTrackingId;\r\n }\r\n }\r\n}\r\n\r\nexport function configurationFactory(configuration: Configuration): () => void {\r\n return () => configuration.load();\r\n}\r\n","export abstract class BaseEntityFilterService {\r\n limit: number;\r\n offset: number;\r\n\r\n constructor(defaultLimit: number) {\r\n this.limit = defaultLimit;\r\n this.offset = 0;\r\n }\r\n\r\n abstract clear();\r\n}\r\n","import { Nomenclature } from './nomenclature.model';\r\n\r\nexport class AliasNomenclature extends Nomenclature {\r\n alias: string;\r\n}\r\n","export class AttachedFile {\r\n dbId: number;\r\n key: number;\r\n hash: string;\r\n size: number;\r\n mimeType: string;\r\n name: string;\r\n}\r\n","export class Entity {\r\n id: number;\r\n version: number;\r\n}\r\n","import { Entity } from './entity.model';\r\n\r\nexport class Nomenclature extends Entity {\r\n name: string;\r\n viewOrder: number | null;\r\n isActive: boolean;\r\n\r\n // for view purposes only\r\n isEditMode: boolean;\r\n originalObject: Nomenclature;\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\n// tslint:disable-next-line: max-line-length\r\nimport { ChangeDetectorRef, Component, ElementRef, forwardRef, HostBinding, HostListener, Input, OnInit, ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { ControlValueAccessor, FormControl, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\r\nimport { Entity } from 'src/infrastructure/base/models/entity.model';\r\nimport { AbNomenclatureTemplatePipe } from '../nomenclature-select/components/ab-nomenclature-template.pipe';\r\nimport { NomenclatureSelectFilter } from '../nomenclature-select/dtos/nomenclature-select-filter.dto';\r\n\r\n@Component({\r\n selector: 'ab-autocomplete',\r\n templateUrl: 'autocomplete.component.html',\r\n styleUrls: ['./../nomenclature-select/components/ab-nomenclature-select.styles.css'],\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n AbNomenclatureTemplatePipe,\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => AutocompleteComponent),\r\n multi: true\r\n }\r\n ],\r\n styles: [\r\n `\r\n @-webkit-keyframes rotating {\r\n from {\r\n -webkit-transform: rotate(0deg);\r\n -o-transform: rotate(0deg);\r\n transform: rotate(0deg);\r\n }\r\n to {\r\n -webkit-transform: rotate(360deg);\r\n -o-transform: rotate(360deg);\r\n transform: rotate(360deg);\r\n }\r\n }\r\n\r\n @keyframes rotating {\r\n from {\r\n -ms-transform: rotate(0deg);\r\n -moz-transform: rotate(0deg);\r\n -webkit-transform: rotate(0deg);\r\n -o-transform: rotate(0deg);\r\n transform: rotate(0deg);\r\n }\r\n to {\r\n -ms-transform: rotate(360deg);\r\n -moz-transform: rotate(360deg);\r\n -webkit-transform: rotate(360deg);\r\n -o-transform: rotate(360deg);\r\n transform: rotate(360deg);\r\n }\r\n }\r\n\r\n .rotating {\r\n -webkit-animation: rotating 2s linear infinite;\r\n -moz-animation: rotating 2s linear infinite;\r\n -ms-animation: rotating 2s linear infinite;\r\n -o-animation: rotating 2s linear infinite;\r\n animation: rotating 2s linear infinite;\r\n }\r\n `\r\n ]\r\n})\r\nexport class AutocompleteComponent implements ControlValueAccessor, OnInit {\r\n @Input('filter')\r\n set filterSetter(filter: any) {\r\n this.filter = filter;\r\n this.options = [];\r\n }\r\n\r\n @HostBinding('class.disabled-nomenclature-select') get disabledFlag() {\r\n return this.disabled;\r\n }\r\n\r\n selectedModel: string | null;\r\n options: T[] = [];\r\n\r\n private textFilter: string | null;\r\n\r\n filter = new NomenclatureSelectFilter();\r\n @Input() restUrl: string;\r\n @Input() limit = 5;\r\n\r\n @Input() hint: string;\r\n\r\n isLoading = false;\r\n\r\n @Input() textTemplate: string;\r\n\r\n @Input() disabled = false;\r\n @Input() required = false;\r\n\r\n @Input() placeholder: string;\r\n\r\n @Input() isOpenUp = false;\r\n\r\n @Input() appearance = 'legacy';\r\n\r\n @ViewChild('modelInput') modelInput: FormControl;\r\n private modelInputSubject = new Subject();\r\n\r\n constructor(\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private httpClient: HttpClient,\r\n private elementRef: ElementRef,\r\n private templatePipe: AbNomenclatureTemplatePipe\r\n ) { }\r\n\r\n @HostListener('document:click', ['$event']) onClickOutside(event: MouseEvent): void {\r\n if ((event.target as Element).classList.contains('select-toggle-open')) {\r\n return;\r\n }\r\n\r\n if (!this.elementRef.nativeElement.contains(event.target)) {\r\n this.closeSelect();\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.modelInputSubject\r\n .pipe(\r\n debounceTime(500),\r\n distinctUntilChanged(),\r\n )\r\n .subscribe((newFilter: string) => {\r\n this.textFilter = newFilter;\r\n if (newFilter) {\r\n this.loadOptions();\r\n } else {\r\n this.closeSelect();\r\n }\r\n });\r\n }\r\n\r\n modelChanged(model: string) {\r\n this.modelInputSubject.next(model);\r\n this.propagateChange(model);\r\n }\r\n\r\n // ControlValueAccessor implementation start\r\n propagateChange = (_: any) => { };\r\n propagateTouched = () => { };\r\n registerOnChange(fn: (_: any) => void) {\r\n this.propagateChange = fn;\r\n }\r\n registerOnTouched(fn: () => void) {\r\n this.propagateTouched = fn;\r\n }\r\n\r\n // set ngModel from outside\r\n writeValue(value: any) {\r\n this.selectedModel = value;\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n\r\n setDisabledState(isDisabled: boolean): void {\r\n this.disabled = isDisabled;\r\n }\r\n // ControlValueAccessor implementation end\r\n\r\n selectOption(item: T) {\r\n this.setValueFromInside(this.getTemplate(item));\r\n this.closeSelect();\r\n }\r\n\r\n clearSelection(event: Event) {\r\n this.setValueFromInside(null);\r\n event.stopPropagation();\r\n }\r\n\r\n getTemplate(item: T): string {\r\n return this.templatePipe.getResultText(item, this.textTemplate);\r\n }\r\n\r\n private loadOptions() {\r\n this.isLoading = true;\r\n this.getFiltered()\r\n .subscribe((result: any[]) => {\r\n this.options = result;\r\n this.isLoading = false;\r\n this.changeDetectorRef.detectChanges();\r\n });\r\n }\r\n\r\n private setValueFromInside(newValue: string | null) {\r\n this.selectedModel = newValue;\r\n this.propagateChange(newValue);\r\n this.propagateTouched();\r\n }\r\n\r\n closeSelect() {\r\n this.options = [];\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n\r\n private getQueryString(): string {\r\n let result = '';\r\n let isFirst = true;\r\n\r\n if (this.textFilter\r\n && this.textFilter.length > 0) {\r\n result = '?textFilter=' + this.textFilter;\r\n isFirst = false;\r\n }\r\n\r\n if (this.filter) {\r\n const keys = Object.keys(this.filter);\r\n keys.forEach(key => {\r\n if (this.filter[key] !== null && this.filter[key] !== undefined) {\r\n if (isFirst) {\r\n result = '?' + key + '=' + this.filter[key];\r\n isFirst = false;\r\n } else {\r\n result += '&' + key + '=' + this.filter[key];\r\n }\r\n }\r\n });\r\n }\r\n\r\n return result;\r\n }\r\n\r\n private getFiltered(): Observable {\r\n return this.httpClient.get(this.restUrl + this.getQueryString());\r\n }\r\n}\r\n","\r\n {{ placeholder }}\r\n \r\n {{ hint }}\r\n\r\n \r\n clear\r\n \r\n\r\n \r\n autorenew\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Directive, OnInit } from '@angular/core';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { BaseEntityFilterService } from '../base/interfaces/base-entity-filter.service';\r\nimport { IBaseEntityResource } from '../base/interfaces/base-entity-resource.interface';\r\nimport { Entity } from '../base/models/entity.model';\r\nimport { LoadingIndicatorService } from './loading-indicator/loading-indicator.service';\r\n\r\n@Directive({})\r\nexport abstract class BaseEntitySearchComponent implements OnInit {\r\n collection: any[] = [];\r\n\r\n abstract displayedColumns: string[];\r\n\r\n canLoadMore = false;\r\n\r\n constructor(\r\n public filter: BaseEntityFilterService,\r\n protected resource: IBaseEntityResource,\r\n protected loadingIndicator: LoadingIndicatorService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.search();\r\n }\r\n\r\n search(loadMore?: boolean) {\r\n if (!loadMore) {\r\n this.filter.offset = 0;\r\n }\r\n\r\n this.loadingIndicator.show();\r\n this.resource.getFiltered(this.filter)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((collection: any[]) => {\r\n if (!this.filter.offset) {\r\n this.collection = collection;\r\n } else {\r\n this.collection = [...this.collection, ...collection];\r\n }\r\n\r\n this.canLoadMore = collection.length === this.filter.limit;\r\n this.filter.offset = this.collection.length;\r\n });\r\n }\r\n\r\n clearFilter() {\r\n this.filter.clear();\r\n this.search();\r\n }\r\n\r\n loadMore() {\r\n this.filter.offset = this.collection.length;\r\n this.search(true);\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, NavigationEnd, PRIMARY_OUTLET, Router } from '@angular/router';\r\nimport { filter } from 'rxjs/operators';\r\nimport { Breadcrumb } from './models/breadcrumb.model';\r\n\r\n@Component({\r\n selector: 'app-breadcrumb',\r\n templateUrl: './breadcrumb.component.html',\r\n styleUrls: ['./breadcrumb.style.css']\r\n})\r\nexport class BreadcrumbComponent implements OnInit {\r\n breadcrumbs: Breadcrumb[] = [];\r\n\r\n constructor(\r\n private activatedRoute: ActivatedRoute,\r\n private router: Router\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.router.events.pipe(filter(event => event instanceof NavigationEnd))\r\n .subscribe(() => {\r\n const root: ActivatedRoute = this.activatedRoute.root;\r\n this.breadcrumbs = this.getBreadcrumbs(root);\r\n });\r\n }\r\n\r\n private getBreadcrumbs(route: ActivatedRoute, url = '', breadcrumbs: Breadcrumb[] = []): Breadcrumb[] {\r\n const children: ActivatedRoute[] = route.children;\r\n\r\n if (children.length === 0) {\r\n return breadcrumbs;\r\n }\r\n\r\n for (const child of children) {\r\n if (child.outlet !== PRIMARY_OUTLET) {\r\n continue;\r\n }\r\n\r\n if (!child.snapshot.data.hasOwnProperty('title')) {\r\n return this.getBreadcrumbs(child, url, breadcrumbs);\r\n }\r\n\r\n const routeURL: string = child.snapshot.url.map(segment => segment.path).join('/');\r\n if (!routeURL && breadcrumbs.length > 0) {\r\n continue;\r\n }\r\n\r\n url += '/' + routeURL;\r\n\r\n const breadcrumb: any = {\r\n title: child.snapshot.data.title,\r\n routeParams: child.snapshot.params,\r\n route: url\r\n };\r\n breadcrumbs.push(breadcrumb);\r\n\r\n return this.getBreadcrumbs(child, url, breadcrumbs);\r\n }\r\n\r\n return breadcrumbs;\r\n }\r\n}\r\n","
0\"\r\n class=\"breadcrumb-nav\">\r\n \r\n
\r\n","import { Directive, HostListener } from '@angular/core';\r\n\r\n@Directive({})\r\nexport abstract class CanDeactivateComponent {\r\n abstract unsavedConfirmationMessage: string;\r\n abstract hasUnsavedData(): boolean;\r\n abstract doUnsavedAction: Function;\r\n\r\n @HostListener('window:beforeunload')\r\n unloadNotification() {\r\n if (this.hasUnsavedData()) {\r\n this.doUnsavedAction();\r\n }\r\n }\r\n}\r\n","\r\nimport { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { CanDeactivateComponent } from './can-deactivate.component';\r\n\r\n@Injectable()\r\nexport class CanDeactivateGuard implements CanDeactivate {\r\n constructor(private translate: TranslateService) { }\r\n\r\n canDeactivate(component: CanDeactivateComponent): boolean {\r\n if (component.hasUnsavedData()) {\r\n if (confirm(this.translate.instant(component.unsavedConfirmationMessage))) {\r\n component.doUnsavedAction();\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n}\r\n","import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { IConfirmModalData } from './confirm-modal-data.interface';\r\n\r\n@Component({\r\n selector: 'confirm-modal',\r\n templateUrl: 'confirm-modal.component.html',\r\n styleUrls: ['./confirm-modal.styles.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ConfirmDialogComponent {\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: IConfirmModalData\r\n ) {\r\n }\r\n\r\n accept(): void {\r\n this.dialogRef.close(true);\r\n }\r\n\r\n decline(): void {\r\n this.dialogRef.close(false);\r\n }\r\n}\r\n","
\r\n

\r\n {{ data.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","import { ChangeDetectionStrategy, Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { UserChangePasswordModalComponent } from 'src/modules/user/components/user-change-password-modal.component';\r\nimport { UserLoginService } from 'src/modules/user/services/user-login.service';\r\nimport { UserService } from 'src/modules/user/services/user.service';\r\n\r\n@Component({\r\n selector: 'current-user',\r\n templateUrl: 'current-user.component.html',\r\n styleUrls: ['./../menu/menu.styles.css', './current-user.styles.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\n\r\nexport class CurrentUserComponent implements OnInit {\r\n user: { name: string };\r\n shouldOpenUserMenu: boolean;\r\n\r\n constructor(\r\n private loginService: UserLoginService,\r\n private dialog: MatDialog,\r\n private userService: UserService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.user = {\r\n name: this.userService.getUserFullname()\r\n };\r\n }\r\n\r\n changePassword() {\r\n this.shouldOpenUserMenu = false;\r\n\r\n this.dialog.open(UserChangePasswordModalComponent, {\r\n disableClose: true\r\n })\r\n .afterClosed()\r\n .subscribe();\r\n }\r\n\r\n logout() {\r\n this.loginService.logout();\r\n }\r\n\r\n}\r\n","\r\n","import { NgTemplateOutlet } from '@angular/common';\r\nimport { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'file-select-button',\r\n templateUrl: './file-select.component.html'\r\n})\r\nexport class FileSelectComponent {\r\n\r\n @ViewChild('inputElem', { static: true }) inputRef: ElementRef;\r\n\r\n @Input() template: NgTemplateOutlet;\r\n @Input() text: string;\r\n @Input() color: string;\r\n @Input() icon: string;\r\n\r\n acceptedFormats: string[];\r\n accept: string;\r\n @Input('acceptedFormats') set acceptedFormatsSetter(value: string[]) {\r\n if (!value || !value.length) {\r\n this.accept = '*';\r\n this.acceptedFormats = [];\r\n return;\r\n }\r\n\r\n this.accept = value.join(',');\r\n this.acceptedFormats = value;\r\n }\r\n\r\n @Output() wrongFileFormatSelected = new EventEmitter();\r\n @Output() fileSelected = new EventEmitter();\r\n\r\n selectFile(ev: Event) {\r\n ev.stopPropagation();\r\n if (this.inputRef.nativeElement.files && this.inputRef.nativeElement.files.length) {\r\n const file = this.inputRef.nativeElement.files[0];\r\n if (this.acceptedFormats.length && this.acceptedFormats.indexOf(file.type) < 0) {\r\n this.wrongFileFormatSelected.emit();\r\n return;\r\n }\r\n\r\n this.fileSelected.emit(this.inputRef.nativeElement.files[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","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient, HttpRequest, HttpEvent } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { AttachedFile } from 'src/infrastructure/base/models/attached-file.model';\r\n\r\n@Injectable()\r\nexport class FileSelectService {\r\n constructor(\r\n private http: HttpClient,\r\n ) { }\r\n\r\n uploadFile(file: File): Observable> {\r\n const formData = new FormData();\r\n\r\n formData.append('file', file);\r\n\r\n const req = new HttpRequest('POST', 'api/FilesStorage', formData);\r\n\r\n return this.http.request(req);\r\n }\r\n}\r\n","import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageDto } from './dtos/language.dto';\r\n\r\n@Component({\r\n selector: 'language-select',\r\n templateUrl: 'language-select.component.html',\r\n styleUrls: ['./language-select.styles.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\n\r\nexport class LanguageSelectComponent implements OnInit {\r\n @Input() languages: LanguageDto[] = [];\r\n\r\n otherLanguage: LanguageDto;\r\n\r\n constructor(\r\n private translateService: TranslateService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.useLanguage(this.translateService.currentLang);\r\n }\r\n\r\n useLanguage(languageAlias: string): void {\r\n this.translateService.use(languageAlias);\r\n this.otherLanguage = this.languages.find(e => e.alias !== languageAlias);\r\n }\r\n}\r\n","\r\n","import { Component } from '@angular/core';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { ILoadingIndicatorOptions, LoadingIndicatorService } from './loading-indicator.service';\r\n\r\n@Component({\r\n selector: 'loading-indicator',\r\n templateUrl: 'loading-indicator.component.html',\r\n styleUrls: ['loading-indicator.style.css']\r\n})\r\n\r\nexport class LoadingIndicatorComponent {\r\n isLoading: boolean;\r\n private loadingCount = 0;\r\n\r\n constructor(\r\n private loadingService: LoadingIndicatorService,\r\n private configuration: Configuration\r\n ) {\r\n this.isLoading = false;\r\n this.loadingCount = 0;\r\n\r\n this.loadingService.subscribe((result: { isLoading: boolean, options?: ILoadingIndicatorOptions }) => {\r\n if (result.isLoading) {\r\n this.loadingCount++;\r\n } else {\r\n this.loadingCount = this.loadingCount - 1 >= 0 ? this.loadingCount - 1 : 0;\r\n }\r\n\r\n setTimeout(() => {\r\n this.isLoading = this.loadingCount !== 0;\r\n }, (result.options?.customTimeout || this.configuration.loadingTimeoutInSeconds) * 1000);\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n \r\n {{ 'app.loading' | translate }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { EventEmitter, Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class LoadingIndicatorService {\r\n private loadingEmitter: EventEmitter<{ isLoading: boolean, options?: ILoadingIndicatorOptions }> = new EventEmitter();\r\n\r\n subscribe(next: (value: { isLoading: boolean, options?: ILoadingIndicatorOptions }) => void) {\r\n return this.loadingEmitter.subscribe(next);\r\n }\r\n\r\n show(options?: ILoadingIndicatorOptions) {\r\n return this.loadingEmitter.emit({ isLoading: true, options });\r\n }\r\n\r\n hide() {\r\n return this.loadingEmitter.emit({ isLoading: false });\r\n }\r\n}\r\n\r\nexport interface ILoadingIndicatorOptions {\r\n customTimeout?: number;\r\n}\r\n","import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core';\r\nimport { NavigationEnd, Router, RouterEvent } from '@angular/router';\r\nimport { filter } from 'rxjs/operators';\r\nimport { LanguageDto } from '../language-select/dtos/language.dto';\r\nimport { IMenuItem } from './interfaces/menu-item.interface';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\n\r\n@Component({\r\n selector: 'app-menu',\r\n templateUrl: 'app-menu.component.html',\r\n styleUrls: ['./menu.styles.css', './app-menu.styles.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\n\r\nexport class AppMenuComponent implements OnInit {\r\n @Input() items: IMenuItem[];\r\n\r\n @Input() languages: LanguageDto[];\r\n\r\n isCollapsed = false;\r\n isEnglishTranslationEnabled: boolean;\r\n\r\n constructor(\r\n private router: Router,\r\n private configuration: Configuration\r\n ) {\r\n this.isEnglishTranslationEnabled = configuration.isEnglishTranslationEnabled;\r\n }\r\n\r\n ngOnInit() {\r\n this.router.events.pipe(filter((event: RouterEvent) => event instanceof NavigationEnd))\r\n .subscribe((event: RouterEvent) => {\r\n const url = event.url.slice(1, event.url.length);\r\n\r\n let item = this.items.find((e: IMenuItem) => e.route === url);\r\n if (item) {\r\n this.selectMainMenuItem();\r\n this.clearChildLinksClicked();\r\n } else {\r\n this.items.forEach((mainItem: IMenuItem) => {\r\n const subItem = mainItem.children ?.find((e: IMenuItem) => e.route === url);\r\n if (subItem) {\r\n this.clearChildLinksClicked();\r\n this.selectSubMenuItem(mainItem);\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n selectMainMenuItem(): void {\r\n this.clearChildLinksClicked();\r\n this.toggleMenuCollapse();\r\n }\r\n\r\n selectSubMenuItem(item: IMenuItem): void {\r\n this.clearChildLinksClicked();\r\n item.isChildLinkClicked = true;\r\n\r\n this.toggleMenuCollapse();\r\n }\r\n\r\n toggleMenuCollapse(): void {\r\n this.isCollapsed = false;\r\n\r\n this.items.forEach((item: IMenuItem) => item.isCollapsed = false);\r\n }\r\n\r\n toggleSubMenu(item: IMenuItem, itemIndex: number, event: MouseEvent) {\r\n item.isCollapsed = !item.isCollapsed;\r\n const openedSubMenusNumber = this.items.filter(e => e.children ?.length && e.isCollapsed).length;\r\n\r\n this.items.forEach((item: IMenuItem, index: number) => {\r\n if (index !== itemIndex) {\r\n item.isCollapsed = false;\r\n }\r\n });\r\n\r\n if (openedSubMenusNumber > 1) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n }\r\n }\r\n\r\n private clearChildLinksClicked(): void {\r\n this.items.forEach((item: IMenuItem) => item.isChildLinkClicked = false);\r\n }\r\n}\r\n","\r\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { IMenuItem } from './interfaces/menu-item.interface';\r\n\r\n@Component({\r\n selector: 'app-sub-menu',\r\n templateUrl: 'app-sub-menu.component.html',\r\n styleUrls: ['./menu.styles.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\n\r\nexport class AppSubMenuComponent {\r\n @Input() items: IMenuItem[];\r\n\r\n @Output() linkClicked: EventEmitter = new EventEmitter();\r\n}\r\n","\r\n","import { HttpClient } from '@angular/common/http';\r\n// tslint:disable-next-line: max-line-length\r\nimport { ChangeDetectorRef, Component, ElementRef, forwardRef, HostBinding, HostListener, Input, OnInit, ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\r\nimport { Entity } from 'src/infrastructure/base/models/entity.model';\r\nimport { IAdditionalSelectItem } from '../dtos/additional-select-item.interface';\r\nimport { NomenclatureSelectFilter } from '../dtos/nomenclature-select-filter.dto';\r\nimport { AbNomenclatureTemplatePipe } from './ab-nomenclature-template.pipe';\r\n\r\n@Component({\r\n selector: 'ab-nomenclature-select',\r\n templateUrl: 'ab-nomenclature-select.component.html',\r\n styleUrls: ['ab-nomenclature-select.styles.css'],\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n AbNomenclatureTemplatePipe,\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => AbNomenclatureSelectComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class AbNomenclatureSelectComponent implements ControlValueAccessor, OnInit {\r\n @Input('filter')\r\n set filterSetter(filter: any) {\r\n this.filter = filter;\r\n this.options = [];\r\n }\r\n\r\n @HostBinding('class.disabled-nomenclature-select') get disabledFlag() {\r\n return this.disabled;\r\n }\r\n\r\n selectedModel: T | null;\r\n textFilter: string | null;\r\n @Input() options: T[] = [];\r\n\r\n selectOpened = false;\r\n\r\n // @Input() collection: any[];\r\n // @Input() filterCollectionBy: string;\r\n\r\n filter: any = new NomenclatureSelectFilter();\r\n @Input() restUrl: string;\r\n @Input() keyProperty = 'id';\r\n @Input() limit = 10;\r\n\r\n @Input() hint: string;\r\n\r\n isLoading = false;\r\n allLoaded = false;\r\n\r\n @Input() allowClear = true;\r\n @Input() textTemplate: string;\r\n\r\n @Input() disabled = false;\r\n @Input() required = false;\r\n\r\n @Input() placeholder: string;\r\n\r\n @Input() isOpenUp = false;\r\n\r\n @Input() appearance = 'legacy';\r\n\r\n additionalItems: IAdditionalSelectItem[];\r\n filteredAdditionalItems: IAdditionalSelectItem[];\r\n @Input('additionalItems') set additionalItemsSetter(value: IAdditionalSelectItem[]) {\r\n if (value) {\r\n this.additionalItems = value;\r\n this.filteredAdditionalItems = this.additionalItems;\r\n }\r\n }\r\n\r\n @ViewChild('textFilterEl') textFilterEl: ElementRef;\r\n\r\n private textFilterChanged = new Subject();\r\n\r\n constructor(\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private httpClient: HttpClient,\r\n private elementRef: ElementRef,\r\n private templatePipe: AbNomenclatureTemplatePipe\r\n ) { }\r\n\r\n @HostListener('click', ['$event']) onClick(e?: Event) {\r\n if (e && (e.target as Element).className === 'options-item') {\r\n return;\r\n }\r\n\r\n if (!this.selectOpened) {\r\n this.filter.limit = this.limit;\r\n this.filter.offset = 0;\r\n this.allLoaded = false;\r\n this.selectOpened = true;\r\n\r\n this.loadOptions();\r\n }\r\n\r\n if (this.selectOpened\r\n && !this.elementRef.nativeElement.contains(event.target)) {\r\n this.closeSelect();\r\n } else {\r\n this.selectOpened = true;\r\n setTimeout(() => this.textFilterEl.nativeElement.focus(), 0);\r\n }\r\n }\r\n\r\n @HostListener('document:click', ['$event']) onClickOutside(event: MouseEvent): void {\r\n if ((event.target as Element).classList.contains('select-toggle-open')) {\r\n return;\r\n }\r\n\r\n if (this.selectOpened\r\n && !this.elementRef.nativeElement.contains(event.target)) {\r\n this.closeSelect();\r\n }\r\n }\r\n\r\n @HostListener('keydown', ['$event'])\r\n keyboardInput(event: KeyboardEvent) {\r\n if (!this.selectOpened) {\r\n if (event.key === 'ArrowDown') {\r\n this.onClick();\r\n }\r\n\r\n return;\r\n }\r\n\r\n switch (event.key) {\r\n case 'Enter':\r\n // if (this.focusedItem) {\r\n // \tthis.selectOption(this.focusedItem);\r\n // } else {\r\n this.closeSelect();\r\n // }\r\n break;\r\n case 'Escape':\r\n this.closeSelect();\r\n break;\r\n }\r\n }\r\n\r\n @ViewChild('modelInput') modelInput: ElementRef;\r\n @ViewChild('scrollDiv') scrollDiv: ElementRef;\r\n\r\n ngOnInit() {\r\n this.textFilterChanged.pipe(\r\n debounceTime(500),\r\n distinctUntilChanged())\r\n .subscribe(newFilter => {\r\n this.textFilter = newFilter;\r\n if (this.additionalItems && this.additionalItems.length) {\r\n if (this.textFilter) {\r\n this.filteredAdditionalItems = this.additionalItems.filter((item: IAdditionalSelectItem) => {\r\n const value = item.name.trim().toLowerCase();\r\n return value.indexOf(this.textFilter.trim().toLowerCase()) >= 0;\r\n });\r\n } else {\r\n this.filteredAdditionalItems = this.additionalItems;\r\n }\r\n }\r\n this.loadOptions();\r\n });\r\n }\r\n\r\n optionsChanged(items: any[]) {\r\n if (items.length > 0) {\r\n this.setValueFromInside(items[0]);\r\n }\r\n this.closeSelect();\r\n }\r\n\r\n onScroll() {\r\n // if (this.collection) {\r\n // return;\r\n // }\r\n\r\n // scrollTop not always returns int\r\n const scrollDivElement = this.scrollDiv.nativeElement;\r\n const scrollPosition = scrollDivElement.scrollHeight - Math.ceil(scrollDivElement.scrollTop);\r\n const atBottom = (scrollPosition === scrollDivElement.clientHeight\r\n || (scrollPosition - 1) === scrollDivElement.clientHeight);\r\n if (atBottom && !this.allLoaded) {\r\n this.loadOptions();\r\n }\r\n }\r\n\r\n // ControlValueAccessor implementation start\r\n propagateChange = (_: any) => { };\r\n propagateTouched = () => { };\r\n registerOnChange(fn: (_: any) => void) {\r\n this.propagateChange = fn;\r\n }\r\n registerOnTouched(fn: () => void) {\r\n this.propagateTouched = fn;\r\n }\r\n\r\n // set ngModel from outside\r\n writeValue(value: any) {\r\n this.selectedModel = value;\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n\r\n setDisabledState(isDisabled: boolean): void {\r\n this.disabled = isDisabled;\r\n }\r\n // ControlValueAccessor implementation end\r\n\r\n selectOption(item: T) {\r\n this.setValueFromInside(item);\r\n this.closeSelect();\r\n }\r\n\r\n clearSelection(event: Event) {\r\n this.setValueFromInside(null);\r\n event.stopPropagation();\r\n }\r\n\r\n textFilterChange(textFilter: string) {\r\n this.filter.offset = 0;\r\n this.textFilterChanged.next(textFilter);\r\n }\r\n\r\n getTemplate(item: T) {\r\n return this.templatePipe.getResultText(item, this.textTemplate);\r\n }\r\n\r\n private loadOptions() {\r\n if (this.allLoaded) {\r\n return;\r\n }\r\n // if (!this.restUrl) {\r\n // \tthis.options = this.collection;\r\n // \tif (this.filterCollectionBy && this.textFilter) {\r\n // \t\tthis.options = this.options.filter(option => {\r\n // \t\t\tconst innerProperties = this.filterCollectionBy.split('.');\r\n // \t\t\tlet filteredProperty = innerProperties.length ? option : option[this.filterCollectionBy];\r\n // \t\t\tinnerProperties.forEach(key => filteredProperty = filteredProperty[key]);\r\n // \t\t\treturn filteredProperty.toString().toLowerCase().indexOf(this.textFilter!.toLowerCase()) !== -1;\r\n // \t\t});\r\n // \t}\r\n // \tthis.loading = false;\r\n // } else {\r\n if (this.restUrl) {\r\n this.isLoading = true;\r\n this.getFiltered()\r\n .subscribe((result: any[]) => {\r\n if (this.filter.offset) {\r\n if (result.length < this.limit) {\r\n this.allLoaded = true;\r\n }\r\n\r\n const tempArray = this.options.slice(0);\r\n tempArray.push(...result);\r\n this.options = tempArray;\r\n } else {\r\n this.options = result;\r\n }\r\n\r\n this.filter.offset = this.options.length;\r\n this.isLoading = false;\r\n this.changeDetectorRef.detectChanges();\r\n });\r\n }\r\n }\r\n\r\n private setValueFromInside(newValue: T | null) {\r\n this.selectedModel = newValue;\r\n this.propagateChange(newValue);\r\n this.propagateTouched();\r\n }\r\n\r\n closeSelect() {\r\n this.selectOpened = false;\r\n this.textFilter = null;\r\n if (this.restUrl) {\r\n this.options = [];\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n }\r\n\r\n private getQueryString(): string {\r\n let result = '';\r\n let isFirst = true;\r\n\r\n if (this.textFilter\r\n && this.textFilter.length > 0) {\r\n result = '?textFilter=' + this.textFilter;\r\n isFirst = false;\r\n }\r\n\r\n if (this.filter) {\r\n const keys = Object.keys(this.filter);\r\n keys.forEach(key => {\r\n if (this.filter[key] !== null && this.filter[key] !== undefined) {\r\n if (isFirst) {\r\n result = '?' + key + '=' + this.filter[key];\r\n isFirst = false;\r\n } else {\r\n result += '&' + key + '=' + this.filter[key];\r\n }\r\n }\r\n });\r\n }\r\n\r\n return result;\r\n }\r\n\r\n private getFiltered(): Observable {\r\n return this.httpClient.get(this.restUrl + this.getQueryString());\r\n }\r\n}\r\n","\r\n {{ placeholder }}\r\n \r\n {{ hint }}\r\n\r\n \r\n \r\n keyboard_arrow_down\r\n \r\n \r\n keyboard_arrow_up\r\n \r\n \r\n\r\n \r\n clear\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n search\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \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 { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Pipe({\r\n name: 'nomenclatureTemplatePipe'\r\n})\r\nexport class AbNomenclatureTemplatePipe implements PipeTransform {\r\n constructor(private sanitized: DomSanitizer) { }\r\n\r\n transform(item: any, textTemplate: string | null, textFilter?: string | null): any {\r\n let resultText = this.getResultText(item, textTemplate);\r\n if (textFilter) {\r\n textFilter = textFilter.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&');\r\n resultText = resultText.replace(new RegExp(textFilter, 'gi'), '$&');\r\n }\r\n\r\n return this.sanitized.bypassSecurityTrustHtml(resultText);\r\n }\r\n\r\n getResultText(item: any, textTemplate: string): string {\r\n let result: any;\r\n let resultText: string;\r\n if (textTemplate && item) {\r\n resultText = textTemplate;\r\n const regex = new RegExp('{(.*?)}', 'g');\r\n result = regex.exec(resultText);\r\n while (result) {\r\n const innerProperties = result[1].split('.');\r\n let innerFilterValue = innerProperties.length ? item : item[result[1]];\r\n innerProperties.forEach((key: string) => {\r\n if (innerFilterValue && innerFilterValue[key]) {\r\n innerFilterValue = innerFilterValue[key];\r\n } else {\r\n innerFilterValue = null;\r\n }\r\n });\r\n resultText = resultText.replace(result[0], innerFilterValue ? innerFilterValue : '');\r\n regex.lastIndex = 0;\r\n result = regex.exec(resultText);\r\n }\r\n } else if (item) {\r\n resultText = item.name;\r\n } else {\r\n resultText = '';\r\n }\r\n\r\n return resultText;\r\n }\r\n}\r\n","export class NomenclatureSelectFilter {\r\n limit = 100;\r\n offset = 0;\r\n textFilter: string | null = '';\r\n}\r\n","import { Component, HostListener } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'scroll-to-top-btn',\r\n templateUrl: 'scroll-to-top-btn.component.html',\r\n styleUrls: ['./scroll-to-top-btn.styles.css']\r\n})\r\n\r\nexport class ScrollToTopBtnComponent {\r\n\r\n showGoToTop = false;\r\n private window: Window;\r\n\r\n @HostListener('window:scroll', [])\r\n onWindowScroll() {\r\n this.window = window;\r\n this.showGoToTop = this.window.pageYOffset !== 0;\r\n }\r\n\r\n goToTop() {\r\n this.window.scroll({\r\n top: 0,\r\n left: 0,\r\n behavior: 'smooth'\r\n });\r\n }\r\n}\r\n","\r\n","export const CUSTOM_DATE_FORMATS = {\r\n parse: {\r\n dateInput: ['DD.MM.YYYY'],\r\n },\r\n display: {\r\n dateInput: 'DD.MM.YYYY',\r\n monthYearLabel: 'MMM YYYY',\r\n dateA11yLabel: 'LL',\r\n monthYearA11yLabel: 'MMMM YYYY',\r\n }\r\n};\r\n","export const PASSWORD_REGEX = new RegExp(\"^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.{6,})\");\r\n","import { Directive, ElementRef, EventEmitter, HostListener, Output } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[clickOutsideDetector]'\r\n})\r\nexport class ClickOutsideDetectorDirective {\r\n private clickCounter = 0;\r\n\r\n @Output() clickedOutside: EventEmitter = new EventEmitter();\r\n constructor(\r\n private el: ElementRef\r\n ) { }\r\n\r\n @HostListener('document:click', ['$event']) onclick(event) {\r\n if (!this.el.nativeElement.contains(event.target) && this.clickCounter > 0) {\r\n this.clickCounter = 0;\r\n this.clickedOutside.emit(true);\r\n return;\r\n }\r\n\r\n this.clickCounter++;\r\n }\r\n}\r\n","import { Directive, EventEmitter, Output } from '@angular/core';\r\nimport { MatDatepickerInput, MatDatepickerInputEvent } from '@angular/material/datepicker';\r\nimport { Moment } from 'moment';\r\n\r\n@Directive({\r\n selector: '[formatDate]'\r\n})\r\nexport class FormatDateDirective {\r\n @Output() formatedDateChange: EventEmitter = new EventEmitter();\r\n constructor(el: MatDatepickerInput) {\r\n el.dateChange\r\n .subscribe((e: MatDatepickerInputEvent) => this.formatedDateChange.emit(e.value?.format('YYYY-MM-DD')));\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { CanActivate, Router } from \"@angular/router\";\r\nimport { Configuration } from \"../base/configuration/configuration\";\r\nimport { UserRoleService } from \"src/modules/user/services/user-role.service\";\r\nimport { UserRoleAliases } from \"src/modules/user/constants/user-role-aliases.constant\";\r\n\r\n@Injectable()\r\nexport class AdministratorAuthGuard implements CanActivate {\r\n constructor(\r\n private router: Router,\r\n private config: Configuration,\r\n private userRoleService: UserRoleService\r\n ) { }\r\n\r\n canActivate(): boolean {\r\n const token = localStorage.getItem(this.config.tokenProperty);\r\n const userId = localStorage.getItem(this.config.userIdProperty);\r\n const hasAdministratorRole = this.userRoleService.hasRole(UserRoleAliases.ADMINISTRATOR)\r\n\r\n if (token && userId && hasAdministratorRole) {\r\n return true;\r\n }\r\n\r\n this.router.navigate(['/']);\r\n return false;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';\r\nimport { UserLoginService } from 'src/modules/user/services/user-login.service';\r\nimport { Configuration } from '../base/configuration/configuration';\r\n\r\n@Injectable()\r\nexport class AuthGuard implements CanActivate {\r\n constructor(\r\n private router: Router,\r\n private config: Configuration,\r\n private userService: UserLoginService\r\n ) { }\r\n\r\n canActivate(_: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {\r\n const token = localStorage.getItem(this.config.tokenProperty);\r\n const userId = localStorage.getItem(this.config.userIdProperty);\r\n if (token && userId) {\r\n return true;\r\n }\r\n this.userService.logout();\r\n this.router.navigate(['login'], { queryParams: { 'redirectURL': state.url } });\r\n return false;\r\n }\r\n}\r\n","\r\nimport { HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Observable, of, throwError as observableThrowError } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { UserLoginService } from 'src/modules/user/services/user-login.service';\r\nimport { Configuration } from '../base/configuration/configuration';\r\n\r\n@Injectable()\r\nexport class AuthInterceptor implements HttpInterceptor {\r\n\r\n constructor(\r\n private router: Router,\r\n private configuration: Configuration,\r\n private userLoginService: UserLoginService\r\n ) { }\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n const accessToken = localStorage.getItem(this.configuration.tokenProperty);\r\n\r\n // IE caches get requests\r\n const isIEOrEdge = /msie\\s|trident\\/|edge\\//i.test(window.navigator.userAgent);\r\n if (isIEOrEdge && request.method === 'GET') {\r\n request = request.clone({\r\n setHeaders: {\r\n 'Cache-Control': 'no-cache',\r\n Pragma: 'no-cache'\r\n }\r\n });\r\n }\r\n\r\n request = request.clone({\r\n setHeaders: {\r\n Authorization: `Bearer ${accessToken}`\r\n }\r\n });\r\n\r\n return next.handle(request).pipe(\r\n catchError((err: any) => this.handleAuthError(err, this.router))\r\n );\r\n }\r\n\r\n private handleAuthError(err: HttpErrorResponse, router: Router): Observable {\r\n if (err.status === 401) {\r\n this.userLoginService.logout();\r\n return of(err.message);\r\n }\r\n\r\n return observableThrowError(err);\r\n }\r\n}\r\n","import { HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { EMPTY, Observable, throwError as observableThrowError } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { MenuItemService } from 'src/app/menu-items.service';\r\nimport { UserLoginService } from 'src/modules/user/services/user-login.service';\r\nimport { DomainError } from '../base/models/domain-error.model';\r\nimport { LoadingIndicatorService } from '../components/loading-indicator/loading-indicator.service';\r\nimport { PreviousRouteService } from '../services/previous-route.service';\r\nimport { SystemMessageType } from '../system-messages/enums/system-message-type.enum';\r\nimport { SystemMessage } from '../system-messages/models/system-message.model';\r\nimport { SystemMessagesHandlerService } from '../system-messages/services/system-messages-handler.service';\r\n\r\n@Injectable()\r\nexport class ErrorInterceptor implements HttpInterceptor {\r\n private handledInComponent: string[] = [\r\n 'User_EmailTaken',\r\n 'User_UsernameTaken',\r\n 'User_OrcidTaken',\r\n 'User_ChangePasswordOldPasswordMismatch',\r\n 'User_ChangePasswordNewPasswordMismatch',\r\n 'UserRegistrationRequest_PendingRequestWithSameEMailExists',\r\n 'UserRegistrationRequest_PendingRequestWithSameOrcidExists',\r\n 'User_RegistrationEmailMismatch'\r\n ];\r\n\r\n constructor(\r\n private router: Router,\r\n private userLoginService: UserLoginService,\r\n private menuItemsService: MenuItemService,\r\n private loadingIndicatorService: LoadingIndicatorService,\r\n private messageHandlerService: SystemMessagesHandlerService,\r\n private previousRouteService: PreviousRouteService\r\n ) { }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n\r\n return next.handle(req).pipe(\r\n catchError((err: any) => {\r\n if (err instanceof HttpErrorResponse) {\r\n if (err.status === 401) {\r\n\r\n this.userLoginService.logout();\r\n\r\n if (this.previousRouteService.currentUrl) {\r\n this.router.navigate(['login'], { queryParams: { 'redirectURL': this.previousRouteService.currentUrl } });\r\n }\r\n\r\n this.loadingIndicatorService.hide();\r\n return EMPTY;\r\n } else if (err.status === 403) {\r\n const firstActive = this.menuItemsService.getFirstActive();\r\n this.router.navigate([firstActive.route]);\r\n\r\n this.loadingIndicatorService.hide();\r\n\r\n return EMPTY;\r\n } else if (err.status === 422) {\r\n const data = err.error as DomainError;\r\n for (const errorMessage of data.messages) {\r\n if (this.handledInComponent.indexOf(errorMessage.domainErrorCode) >= 0) {\r\n continue;\r\n }\r\n\r\n const errorCode = errorMessage.domainErrorCode as string;\r\n const errorKey = 'app.errorTexts.' + errorCode.substr(0, 1).toLowerCase() + errorCode.substr(1, errorCode.length);\r\n const message = new SystemMessage(errorKey, SystemMessageType.danger);\r\n this.messageHandlerService.messages.emit(message);\r\n\r\n this.loadingIndicatorService.hide();\r\n }\r\n } else {\r\n const message = new SystemMessage('app.errorTexts.globalError', SystemMessageType.danger);\r\n this.messageHandlerService.messages.emit(message);\r\n\r\n this.loadingIndicatorService.hide();\r\n }\r\n }\r\n\r\n return observableThrowError(err);\r\n }));\r\n }\r\n}\r\n","import { HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { InjectionToken } from '@angular/core';\r\nimport { AuthInterceptor } from './auth.interceptor';\r\nimport { ErrorInterceptor } from './error.interceptor';\r\n\r\nexport const InterceptorsModule: { provide: InjectionToken<{}>, useClass: any, multi: boolean }[] = [\r\n { provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true },\r\n { provide: HTTP_INTERCEPTORS, useClass: ErrorInterceptor, multi: true }\r\n];\r\n","import { STEPPER_GLOBAL_OPTIONS } from '@angular/cdk/stepper';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatMomentDateModule, MAT_MOMENT_DATE_ADAPTER_OPTIONS, MomentDateAdapter } from '@angular/material-moment-adapter';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatCardModule } from '@angular/material/card';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatDividerModule } from '@angular/material/divider';\r\nimport { MatExpansionModule } from '@angular/material/expansion';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\r\nimport { MatStepperModule } from '@angular/material/stepper';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { CUSTOM_DATE_FORMATS } from './constants/custom-date.constants';\r\nimport { FormatDateDirective } from './directives/format-date.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n FormatDateDirective\r\n ],\r\n imports: [\r\n FormsModule,\r\n MatButtonModule,\r\n MatRadioModule,\r\n MatCheckboxModule,\r\n MatDialogModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatSlideToggleModule,\r\n MatExpansionModule,\r\n MatStepperModule,\r\n MatDividerModule,\r\n MatSelectModule,\r\n MatProgressBarModule,\r\n MatTooltipModule,\r\n MatIconModule,\r\n MatTabsModule,\r\n MatTableModule,\r\n MatCardModule,\r\n MatDatepickerModule,\r\n MatMomentDateModule\r\n ],\r\n exports: [\r\n MatButtonModule,\r\n MatRadioModule,\r\n MatCheckboxModule,\r\n MatDialogModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatSlideToggleModule,\r\n MatExpansionModule,\r\n MatStepperModule,\r\n MatDividerModule,\r\n MatSelectModule,\r\n MatProgressBarModule,\r\n MatTooltipModule,\r\n MatIconModule,\r\n MatTabsModule,\r\n MatTableModule,\r\n MatCardModule,\r\n MatDatepickerModule,\r\n FormatDateDirective\r\n ],\r\n providers: [\r\n {\r\n provide: MAT_DATE_LOCALE, useValue: 'bg'\r\n },\r\n {\r\n provide: MAT_MOMENT_DATE_ADAPTER_OPTIONS, useValue: { strict: true }\r\n },\r\n {\r\n provide: MAT_DATE_FORMATS,\r\n useValue: CUSTOM_DATE_FORMATS\r\n },\r\n {\r\n provide: DateAdapter, useClass: MomentDateAdapter, deps: [MAT_DATE_LOCALE]\r\n },\r\n {\r\n provide: STEPPER_GLOBAL_OPTIONS,\r\n useValue: { showError: true }\r\n }\r\n ]\r\n})\r\nexport class MaterialComponentsModule { }\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'fileSize'\r\n})\r\nexport class FileSizePipe implements PipeTransform {\r\n transform(bytes: number): string {\r\n var i = -1;\r\n var byteUnits = [' kB', ' MB', ' GB', ' TB', 'PB', 'EB', 'ZB', 'YB'];\r\n do {\r\n bytes = bytes / 1024;\r\n i++;\r\n } while (bytes > 1024);\r\n\r\n return Math.max(bytes, 0.1).toFixed(1) + byteUnits[i];\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({ name: 'isActive' })\r\nexport class IsActivePipe implements PipeTransform {\r\n transform(collection: any[]) {\r\n return collection.filter(item => item.isActive);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'localTime'\r\n})\r\nexport class LocalTimePipe implements PipeTransform {\r\n transform(value: any): Date {\r\n if (!value) {\r\n return null;\r\n }\r\n\r\n return new Date(value + 'Z');\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'orderBy'\r\n})\r\nexport class OrderByPipe implements PipeTransform {\r\n transform(array: any[], prop: string): any[] {\r\n if (!array) {\r\n return array;\r\n }\r\n\r\n let sortDirectionMultiplier = 1;\r\n if (prop.startsWith('-')) {\r\n prop = prop.slice(1);\r\n sortDirectionMultiplier = -1;\r\n }\r\n\r\n array.sort((a: any, b: any) => {\r\n const left = this.getValue(a, prop);\r\n const right = this.getValue(b, prop);\r\n if (left < right) {\r\n return (-1) * sortDirectionMultiplier;\r\n } else if (left > right) {\r\n return sortDirectionMultiplier;\r\n } else {\r\n return 0;\r\n }\r\n });\r\n\r\n return array;\r\n }\r\n\r\n private getValue(item: any, key: string): any {\r\n const innerProperties = key.split('.');\r\n let filteredProperty = innerProperties.length ? item : item[key];\r\n innerProperties.forEach(property => filteredProperty = filteredProperty[property]);\r\n\r\n return filteredProperty;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\r\n\r\n@Pipe({\r\n name: 'safeHtml'\r\n})\r\nexport class SafeHtmlPipe implements PipeTransform {\r\n constructor(private sanitized: DomSanitizer) { }\r\n\r\n transform(value: string): SafeHtml {\r\n return this.sanitized.bypassSecurityTrustHtml(value);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({ name: 'vieworder' })\r\nexport class ViewOrderPipe implements PipeTransform {\r\n transform(value: any[], ascending = true): any[] {\r\n if (value) {\r\n const orderMultiplier = ascending ? 1 : -1;\r\n\r\n value.sort((a: any, b: any) => {\r\n if (a.viewOrder < b.viewOrder) {\r\n return -1 * orderMultiplier;\r\n } else if (a.viewOrder > b.viewOrder) {\r\n return 1 * orderMultiplier;\r\n } else { return 0; }\r\n });\r\n }\r\n\r\n return value;\r\n }\r\n}\r\n","import { Injectable, OnDestroy } from \"@angular/core\";\r\nimport { Subscription } from \"rxjs\";\r\n\r\n@Injectable()\r\nexport class SearchUnsubscriberService implements OnDestroy {\r\n\r\n searchSubscriptions: Array<[number, Subscription]> = [];\r\n\r\n addSubscription(searchType: number, subscription: Subscription) {\r\n this.searchSubscriptions.push([searchType, subscription]);\r\n }\r\n\r\n unsubscribeByType(searchType: number) {\r\n this.searchSubscriptions.filter(e => e[0] == searchType).forEach(sub => {\r\n sub[1].unsubscribe();\r\n });\r\n\r\n this.searchSubscriptions = this.searchSubscriptions.filter(e => e[0] != searchType);\r\n }\r\n\r\n unsubscribeAll() {\r\n this.searchSubscriptions.forEach(sub => {\r\n sub[1].unsubscribe();\r\n });\r\n\r\n this.searchSubscriptions = [];\r\n }\r\n\r\n ngOnDestroy() {\r\n this.unsubscribeAll();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { Observable } from 'rxjs';\r\nimport { ConfirmDialogComponent } from '../components/confirm-modal/confirm-modal.component';\r\n\r\n@Injectable()\r\nexport class ConfirmModalService {\r\n constructor(private dialog: MatDialog) { }\r\n\r\n openDialog(header: string, body: string, acceptText: string, declineText: string): Observable {\r\n return this.dialog.open(ConfirmDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n header: header,\r\n body: body,\r\n acceptText: acceptText,\r\n showDecline: true,\r\n declineText: declineText\r\n }\r\n })\r\n .afterClosed()\r\n }\r\n}\r\n","import { BaseResource } from './../base/base.resource';\r\nimport { Injectable } from '@angular/core';\r\nimport { Configuration } from '../base/configuration/configuration';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class MetadataHarvestingService extends BaseResource {\r\n constructor(\r\n http: HttpClient,\r\n configuration: Configuration\r\n ) {\r\n super(http, configuration, 'MetadataHarvesting');\r\n }\r\n\r\n validateRepositoryUrl(url: string): Observable {\r\n var params = { url };\r\n\r\n return this.http.get(`${this.baseUrl}/ValidateRepositoryUrl`, { params });\r\n }\r\n\r\n getRepositorySets(url: string): Observable<{ name: string, spec: string }[]> {\r\n var params = { url };\r\n\r\n return this.http.get<{ name: string, spec: string }[]>(`${this.baseUrl}/ListSets`, { params });\r\n }\r\n\r\n getSupportedMetadataFormats(): Observable {\r\n return this.http.get(`${this.baseUrl}/SupportedMetadataFormats`);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Router, RouterEvent, NavigationEnd } from '@angular/router';\r\nimport { filter } from 'rxjs/operators';\r\n\r\n@Injectable()\r\nexport class PreviousRouteService {\r\n\r\n public currentUrl: string;\r\n public previousUrl: string;\r\n\r\n constructor(private router: Router) {\r\n\r\n this.currentUrl = this.router.url;\r\n this.previousUrl = null;\r\n\r\n this.router.events\r\n .pipe(filter((event: RouterEvent) => event instanceof NavigationEnd))\r\n .subscribe((event: NavigationEnd) => {\r\n this.previousUrl = this.currentUrl;\r\n this.currentUrl = event.urlAfterRedirects;\r\n });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { UserRoleAliases } from 'src/modules/user/constants/user-role-aliases.constant';\r\nimport { UserRoleService } from 'src/modules/user/services/user-role.service';\r\n\r\n@Injectable()\r\nexport class UserPermissionVerificatorService {\r\n constructor(\r\n private userRoleService: UserRoleService,\r\n private configuration: Configuration\r\n ) { }\r\n\r\n hasFullAccess(): boolean {\r\n return this.userRoleService.hasRole(UserRoleAliases.ADMINISTRATOR);\r\n }\r\n\r\n isFromPublicationInstitution(institutionId: number): boolean {\r\n if (!this.userRoleService.hasRole(UserRoleAliases.ORGANIZATION_ADMINISTRATOR) && !this.userRoleService.hasRole(UserRoleAliases.MODERATOR)) {\r\n return false;\r\n }\r\n\r\n return this.hasRelatedInstitution(institutionId);\r\n }\r\n\r\n isOrganizationAdministrator(institutionIds: number[]) {\r\n if (!this.userRoleService.hasRole(UserRoleAliases.ORGANIZATION_ADMINISTRATOR)) {\r\n return false;\r\n }\r\n\r\n let isFromRelatedInstitution = false;\r\n institutionIds.forEach((institutionId: number) => isFromRelatedInstitution = isFromRelatedInstitution || this.hasRelatedInstitution(institutionId));\r\n\r\n return isFromRelatedInstitution;\r\n }\r\n\r\n isCreator(publicationUserId: number): boolean {\r\n if (!this.userRoleService.hasRole(UserRoleAliases.SCIENTIST)) {\r\n return false;\r\n }\r\n\r\n const currentUserId = +localStorage.getItem(this.configuration.userIdProperty);\r\n return publicationUserId == currentUserId;\r\n }\r\n\r\n private hasRelatedInstitution(institutionId: number): boolean {\r\n const userInstitutions = localStorage.getItem(this.configuration.userInstitutionsProperty)\r\n .split(',')\r\n .map(e => +e);\r\n return userInstitutions.indexOf(institutionId) >= 0;\r\n }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { AutocompleteComponent } from './components/autocomplete/autocomplete.component';\r\nimport { FileSelectComponent } from './components/file-upload/file-select.component';\r\nimport { LanguageSelectComponent } from './components/language-select/language-select.component';\r\nimport { AbNomenclatureSelectComponent } from './components/nomenclature-select/components/ab-nomenclature-select.component';\r\nimport { AbNomenclatureTemplatePipe } from './components/nomenclature-select/components/ab-nomenclature-template.pipe';\r\nimport { ScrollToTopBtnComponent } from './components/scroll-to-top/scroll-to-top-btn.component';\r\nimport { ClickOutsideDetectorDirective } from './directives/click-outside-detector.directive';\r\nimport { MaterialComponentsModule } from './material-components.module';\r\nimport { FileSizePipe } from './pipes/file-size.pipe';\r\nimport { LocalTimePipe } from './pipes/local-time.pipe';\r\nimport { OrderByPipe } from './pipes/order-by.pipe';\r\nimport { DayValidationDirective } from './validators/day-validator.directive';\r\nimport { EmailValidationDirective } from './validators/email-validator.directive';\r\nimport { IntegerValidationDirective } from './validators/integer-validator.directive';\r\nimport { MinValidatorDirective } from './validators/min-validator.directive';\r\nimport { MonthValidationDirective } from './validators/month-validator.directive';\r\nimport { PasswordValidationDirective } from './validators/password-validator.directive';\r\nimport { NoWhitespacesDirective } from './validators/whitespace-validation.directive';\r\nimport { YearValidationDirective } from './validators/year-validator.directive';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n TranslateModule,\r\n MaterialComponentsModule\r\n ],\r\n declarations: [\r\n LanguageSelectComponent,\r\n AbNomenclatureSelectComponent,\r\n AbNomenclatureTemplatePipe,\r\n AutocompleteComponent,\r\n\r\n ScrollToTopBtnComponent,\r\n\r\n OrderByPipe,\r\n\r\n ClickOutsideDetectorDirective,\r\n NoWhitespacesDirective,\r\n PasswordValidationDirective,\r\n YearValidationDirective,\r\n MonthValidationDirective,\r\n DayValidationDirective,\r\n EmailValidationDirective,\r\n IntegerValidationDirective,\r\n MinValidatorDirective,\r\n FileSelectComponent,\r\n FileSizePipe,\r\n LocalTimePipe\r\n ],\r\n exports: [\r\n LanguageSelectComponent,\r\n AbNomenclatureSelectComponent,\r\n AutocompleteComponent,\r\n ScrollToTopBtnComponent,\r\n FileSelectComponent,\r\n\r\n FileSizePipe,\r\n OrderByPipe,\r\n LocalTimePipe,\r\n\r\n ClickOutsideDetectorDirective,\r\n NoWhitespacesDirective,\r\n PasswordValidationDirective,\r\n YearValidationDirective,\r\n MonthValidationDirective,\r\n DayValidationDirective,\r\n EmailValidationDirective,\r\n IntegerValidationDirective,\r\n MinValidatorDirective\r\n ]\r\n})\r\nexport class SharedModule { }\r\n","export enum SystemMessageType {\r\n danger = 1,\r\n warning = 2,\r\n success = 3,\r\n notification = 4\r\n}\r\n","import { SystemMessageType } from '../enums/system-message-type.enum';\r\n\r\nexport class SystemMessage {\r\n text: string;\r\n type: SystemMessageType;\r\n timeoutSeconds?: number;\r\n additionalText?: string;\r\n\r\n constructor(\r\n text: string,\r\n type: SystemMessageType,\r\n timeoutSeconds?: number,\r\n additionalText?: string\r\n ) {\r\n this.text = text;\r\n this.type = type;\r\n this.timeoutSeconds = timeoutSeconds\r\n this.additionalText = additionalText;\r\n }\r\n}\r\n","import { EventEmitter, Injectable } from '@angular/core';\r\nimport { SystemMessage } from '../models/system-message.model';\r\n\r\n@Injectable()\r\nexport class SystemMessagesHandlerService {\r\n messages: EventEmitter;\r\n clear: EventEmitter;\r\n timeoutSeconds = 30;\r\n\r\n constructor() {\r\n this.messages = new EventEmitter();\r\n this.clear = new EventEmitter();\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { SystemMessageType } from './enums/system-message-type.enum';\r\nimport { SystemMessage } from './models/system-message.model';\r\nimport { SystemMessagesHandlerService } from './services/system-messages-handler.service';\r\n\r\n@Component({\r\n selector: 'system-messages',\r\n templateUrl: 'system-messages.component.html',\r\n styleUrls: ['./system-messages.styles.css']\r\n})\r\n\r\nexport class SystemMessagesComponent {\r\n systemMessages: SystemMessage[] = [];\r\n systemMessageTypes = SystemMessageType;\r\n\r\n constructor(\r\n private systemMessagesHandler: SystemMessagesHandlerService\r\n ) {\r\n systemMessagesHandler.messages.subscribe((message: SystemMessage) => {\r\n this.addMessage(message);\r\n });\r\n\r\n systemMessagesHandler.clear.subscribe(() => {\r\n this.clearSystemMessages();\r\n });\r\n }\r\n\r\n removeSystemMessage(systemMessage: SystemMessage) {\r\n const index = this.systemMessages.indexOf(systemMessage);\r\n this.systemMessages.splice(index, 1);\r\n }\r\n\r\n private addMessage(systemMessage: SystemMessage) {\r\n this.systemMessages.push(systemMessage);\r\n\r\n const self = this;\r\n setTimeout(function () {\r\n self.removeSystemMessage(systemMessage);\r\n }, (this.systemMessagesHandler.timeoutSeconds) * 1000);\r\n }\r\n\r\n private clearSystemMessages() {\r\n this.systemMessages = [];\r\n }\r\n}\r\n","\r\n \r\n
\r\n {{ systemMessage.text | translate }}\r\n \r\n {{ systemMessage.additionalText }}\r\n \r\n
\r\n\r\n \r\n cancel\r\n \r\n
\r\n
\r\n","import { Directive, forwardRef, Input, OnInit } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, Validator, ValidatorFn } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[dayValidation]',\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => DayValidationDirective),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class DayValidationDirective implements Validator, OnInit {\r\n year: number | null;\r\n @Input('year') set yearSetter(value: number | null) {\r\n this.year = value && !isNaN(+value) ? +value : null;\r\n this.valFn = DayValidator(this.year, this.month);\r\n }\r\n month: number | null;\r\n @Input('month') set monthSetter(value: number | null) {\r\n this.month = value && !isNaN(+value) ? +value : null;\r\n this.valFn = DayValidator(this.year, this.month);\r\n }\r\n\r\n private valFn: ValidatorFn;\r\n\r\n ngOnInit() {\r\n this.valFn = DayValidator(this.year, this.month);\r\n }\r\n\r\n validate(control: AbstractControl): { [key: string]: any } | null {\r\n return this.valFn(control);\r\n }\r\n}\r\n\r\nexport function DayValidator(year: number | null, month: number | null): ValidatorFn {\r\n return (control: AbstractControl): { [key: string]: any } | null => {\r\n // tslint:disable-next-line: max-line-length\r\n const invalidResult = { 'invalidDay': true };\r\n\r\n if (!control.value) {\r\n return null;\r\n }\r\n\r\n const numValue = +control.value;\r\n if (isNaN(numValue)) {\r\n return invalidResult;\r\n }\r\n\r\n let upperBound = 31;\r\n switch (month) {\r\n case 2:\r\n if ((year % 4 == 0 && year % 100) || year % 400 == 0) {\r\n upperBound = 29;\r\n } else {\r\n upperBound = 28;\r\n }\r\n break;\r\n case 4:\r\n case 6:\r\n case 9:\r\n case 11:\r\n upperBound = 30;\r\n break;\r\n }\r\n if (numValue < 1 || numValue > upperBound) {\r\n return invalidResult;\r\n }\r\n\r\n return null;\r\n };\r\n}\r\n","import { Directive, forwardRef, Input, OnInit } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, Validator, ValidatorFn } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[emailValidation]',\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => EmailValidationDirective),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class EmailValidationDirective implements Validator, OnInit {\r\n @Input() acceptNull = false;\r\n\r\n private valFn: ValidatorFn;\r\n\r\n ngOnInit() {\r\n this.valFn = EmailValidator(this.acceptNull);\r\n }\r\n\r\n validate(control: AbstractControl): { [key: string]: any } | null {\r\n return this.valFn(control);\r\n }\r\n}\r\n\r\nexport function EmailValidator(acceptNull: boolean): ValidatorFn {\r\n return (control: AbstractControl): { [key: string]: any } | null => {\r\n // tslint:disable-next-line: max-line-length\r\n const EMAIL_REGEXP = /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\r\n const invalidResult = { 'invalidEmail': true };\r\n\r\n const isValidRegex = EMAIL_REGEXP.test(control.value);\r\n if (!acceptNull) {\r\n if (!isValidRegex) {\r\n return invalidResult;\r\n }\r\n\r\n return null;\r\n } else {\r\n if (control.value && !isValidRegex) {\r\n return invalidResult;\r\n }\r\n\r\n return null;\r\n }\r\n };\r\n}\r\n","import { Directive, forwardRef, Input, OnInit } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, Validator, ValidatorFn } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[integerValidation]',\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => IntegerValidationDirective),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class IntegerValidationDirective implements Validator, OnInit {\r\n @Input() acceptNull = false;\r\n\r\n private valFn: ValidatorFn;\r\n\r\n ngOnInit() {\r\n this.valFn = IntegerValidator(this.acceptNull);\r\n }\r\n\r\n validate(control: AbstractControl): { [key: string]: any } | null {\r\n return this.valFn(control);\r\n }\r\n}\r\n\r\nexport function IntegerValidator(acceptNull: boolean): ValidatorFn {\r\n return (control: AbstractControl): { [key: string]: any } | null => {\r\n // tslint:disable-next-line: max-line-length\r\n const INTEGER_REGEXP = /^[1-9]\\d*$/;\r\n const invalidResult = { 'invalidIntegerFormat': true };\r\n\r\n const isValidRegex = INTEGER_REGEXP.test(control.value);\r\n if (!acceptNull) {\r\n if (!isValidRegex) {\r\n return invalidResult;\r\n }\r\n\r\n return null;\r\n } else {\r\n if (control.value && !isValidRegex) {\r\n return invalidResult;\r\n }\r\n\r\n return null;\r\n }\r\n };\r\n}\r\n","import { Directive, forwardRef, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, Validator, ValidatorFn } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[min][formControlName],[min][formControl],[min][ngModel]',\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => MinValidatorDirective),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class MinValidatorDirective implements OnInit, OnChanges, Validator {\r\n @Input() min: number;\r\n\r\n private validator: ValidatorFn;\r\n private onChange: () => void;\r\n\r\n ngOnInit() {\r\n this.validator = minFunc(this.min);\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes.min) {\r\n this.validator = minFunc(changes.min.currentValue);\r\n if (this.onChange) {\r\n this.onChange();\r\n }\r\n }\r\n }\r\n\r\n validate(c: AbstractControl): { [key: string]: any } | null {\r\n return this.validator(c);\r\n }\r\n\r\n registerOnValidatorChange(fn: () => void): void {\r\n this.onChange = fn;\r\n }\r\n}\r\n\r\nexport const minFunc = (min: number): ValidatorFn => {\r\n return (control: AbstractControl): { [key: string]: any } | null => {\r\n if (min === undefined || min === null || control.value === null || control.value === undefined) {\r\n return null;\r\n }\r\n\r\n return +control.value >= +min ? null : { 'invalidMinValue': true };\r\n };\r\n};\r\n","import { Directive, forwardRef, OnInit } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, Validator, ValidatorFn } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[monthValidation]',\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => MonthValidationDirective),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class MonthValidationDirective implements Validator, OnInit {\r\n private valFn: ValidatorFn;\r\n\r\n ngOnInit() {\r\n this.valFn = MonthValidator();\r\n }\r\n\r\n validate(control: AbstractControl): { [key: string]: any } | null {\r\n return this.valFn(control);\r\n }\r\n}\r\n\r\nexport function MonthValidator(): ValidatorFn {\r\n return (control: AbstractControl): { [key: string]: any } | null => {\r\n // tslint:disable-next-line: max-line-length\r\n const invalidResult = { 'invalidMonth': true };\r\n\r\n if (control.value === null || control.value === undefined) {\r\n return null;\r\n }\r\n\r\n if (control.value < 1 || control.value > 12) {\r\n return invalidResult;\r\n }\r\n\r\n return null;\r\n };\r\n}\r\n","import { Directive, forwardRef, Input, OnInit } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, Validator, ValidatorFn } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[passwordValidation]',\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => PasswordValidationDirective),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class PasswordValidationDirective implements Validator, OnInit {\r\n @Input() passwordValidation: RegExp;\r\n\r\n private valFn: ValidatorFn;\r\n\r\n ngOnInit() {\r\n this.valFn = PasswordValidator(this.passwordValidation);\r\n }\r\n\r\n validate(control: AbstractControl): { [key: string]: any } | null {\r\n return this.valFn(control);\r\n }\r\n}\r\n\r\nexport function PasswordValidator(regex: RegExp): ValidatorFn {\r\n return (control: AbstractControl): { [key: string]: any } | null => {\r\n const invalidResult = { 'invalidPasswordFormat': true };\r\n\r\n const isValidRegex = regex.test(control.value);\r\n if (control.value && !isValidRegex) {\r\n return invalidResult;\r\n }\r\n\r\n return null;\r\n };\r\n}\r\n","import { Directive, forwardRef } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, Validator, ValidatorFn } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[noWhitespaces]',\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => NoWhitespacesDirective),\r\n multi: true\r\n }\r\n ]\r\n})\r\n\r\nexport class NoWhitespacesDirective implements Validator {\r\n private valFn = NoWhitespaceValidator();\r\n validate(control: AbstractControl): { [key: string]: any } | null {\r\n return this.valFn(control);\r\n }\r\n}\r\n\r\n\r\nexport function NoWhitespaceValidator(): ValidatorFn {\r\n return (control: AbstractControl): { [key: string]: any } | null => {\r\n const value = control.value as string || '';\r\n if (!value) {\r\n return null;\r\n }\r\n\r\n const isWhitespace = value.trim().length === 0;\r\n const isValid = !isWhitespace && !value.startsWith(' ') && !value.endsWith(' ');\r\n return isValid ? null : { 'containsWhitespaces': true };\r\n };\r\n}\r\n","import { Directive, forwardRef, Input, OnInit } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, Validator, ValidatorFn } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[yearValidation]',\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => YearValidationDirective),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class YearValidationDirective implements Validator, OnInit {\r\n @Input() maxYear: number | null;\r\n @Input() minYear: number | null;\r\n\r\n private valFn: ValidatorFn;\r\n\r\n ngOnInit() {\r\n this.valFn = YearValidator(this.minYear, this.maxYear);\r\n }\r\n\r\n validate(control: AbstractControl): { [key: string]: any } | null {\r\n return this.valFn(control);\r\n }\r\n}\r\n\r\nexport function YearValidator(minYear: number | null, maxYear: number | null): ValidatorFn {\r\n return (control: AbstractControl): { [key: string]: any } | null => {\r\n // tslint:disable-next-line: max-line-length\r\n const invalidResult = { 'invalidYear': true };\r\n\r\n if (control.value === '' || control.value === null || control.value === undefined) {\r\n return null;\r\n }\r\n\r\n if (typeof (control.value) === \"string\") {\r\n if (control.value.indexOf(' ') >= 0) {\r\n return invalidResult;\r\n }\r\n }\r\n\r\n const numValue = +control.value;\r\n if (isNaN(numValue)) {\r\n return invalidResult;\r\n }\r\n\r\n const upperBound = maxYear || new Date().getFullYear();\r\n if (upperBound < numValue\r\n || (minYear && numValue < minYear)\r\n ) {\r\n return invalidResult;\r\n }\r\n\r\n return null;\r\n };\r\n}\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { AuthGuard } from 'src/infrastructure/interceptors/auth.guard';\r\nimport { ClassificationsComponent } from './components/classifications.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'classifications',\r\n component: ClassificationsComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.classifications'\r\n }\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\n\r\nexport class ClassificationRoutingModule { }\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { MaterialComponentsModule } from 'src/infrastructure/material-components.module';\r\nimport { MetadataHarvestingService } from 'src/infrastructure/services/metadata-harvesting.service';\r\nimport { SharedModule } from 'src/infrastructure/shared.module';\r\nimport { ClassificationRoutingModule } from './classification-routing.module';\r\nimport { ClassificationResource } from './classification.resource';\r\nimport { ClassificationChildrenComponent } from './components/classification-children.component';\r\nimport { ClassificationCreationModal } from './components/classification-creation-modal.component';\r\nimport { ClassificationHarvestingDataComponent } from './components/classification-harvesting-data.component';\r\nimport { ClassificationModeratorsModal } from './components/classification-moderators-modal.component';\r\nimport { ClassificationPublicationsComponent } from './components/classification-publications.component';\r\nimport { ClassificationViewerComponent } from './components/classification-viewer.component';\r\nimport { ClassificationsComponent } from './components/classifications.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n SharedModule,\r\n FormsModule,\r\n MaterialComponentsModule,\r\n ClassificationRoutingModule,\r\n TranslateModule\r\n ],\r\n declarations: [\r\n ClassificationsComponent,\r\n ClassificationViewerComponent,\r\n ClassificationChildrenComponent,\r\n ClassificationPublicationsComponent,\r\n ClassificationCreationModal,\r\n ClassificationHarvestingDataComponent,\r\n ClassificationModeratorsModal\r\n ],\r\n providers: [\r\n ClassificationResource,\r\n MetadataHarvestingService\r\n ],\r\n entryComponents: [\r\n ClassificationCreationModal,\r\n ClassificationModeratorsModal\r\n ]\r\n})\r\nexport class ClassificationModule { }\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { BaseResource } from 'src/infrastructure/base/base.resource';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { ClassificationDto } from './dtos/classification.dto';\r\nimport { Classification } from './models/classification.model';\r\n\r\n@Injectable()\r\nexport class ClassificationResource extends BaseResource {\r\n constructor(\r\n protected http: HttpClient,\r\n protected configuration: Configuration\r\n ) {\r\n super(http, configuration, 'Classification');\r\n }\r\n\r\n getClassificationRoots(): Observable {\r\n return this.http.get(`${this.baseUrl}/Roots`);\r\n }\r\n\r\n getChildClassifications(rootId: number): Observable {\r\n return this.http.get(`${this.baseUrl}/Roots/${rootId}`);\r\n }\r\n\r\n getById(id: number): Observable {\r\n return this.http.get(`${this.baseUrl}/${id}`);\r\n }\r\n\r\n getModerators(id: number): Observable {\r\n return this.http.get(`${this.baseUrl}/${id}/Moderators`);\r\n }\r\n\r\n createClassification(model: Classification): Observable {\r\n return this.http.post(this.baseUrl, model);\r\n }\r\n\r\n createModerators(id: number, moderatorUserIds: number[]): Observable {\r\n return this.http.post(`${this.baseUrl}/${id}/Moderators`, moderatorUserIds);\r\n }\r\n\r\n updateClassification(model: Classification): Observable {\r\n return this.http.put(`${this.baseUrl}/${model.id}`, model);\r\n }\r\n\r\n deleteClassification(id: number): Observable {\r\n return this.http.delete(`${this.baseUrl}/${id}`);\r\n }\r\n}\r\n","import { ChangeDetectorRef, Directive } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { UserPermissionVerificatorService } from 'src/infrastructure/services/user-permission-verification.service';\r\nimport { SystemMessageType } from 'src/infrastructure/system-messages/enums/system-message-type.enum';\r\nimport { SystemMessage } from 'src/infrastructure/system-messages/models/system-message.model';\r\nimport { SystemMessagesHandlerService } from 'src/infrastructure/system-messages/services/system-messages-handler.service';\r\nimport { ClassificationResource } from '../classification.resource';\r\nimport { ClassificationDto } from '../dtos/classification.dto';\r\nimport { Classification } from '../models/classification.model';\r\nimport { ClassificationCreationModal } from './classification-creation-modal.component';\r\nimport { ClassificationModeratorsModal } from './classification-moderators-modal.component';\r\n\r\n@Directive({})\r\nexport abstract class ClassificationBaseComponent {\r\n canEdit = false;\r\n canDelete = false;\r\n canEditModerators = false;\r\n\r\n constructor(\r\n protected resource: ClassificationResource,\r\n protected userPermissionVerificatorService: UserPermissionVerificatorService,\r\n protected dialog: MatDialog,\r\n protected router: Router,\r\n protected systemMessageService: SystemMessagesHandlerService,\r\n protected cd: ChangeDetectorRef,\r\n protected confirmModalService: ConfirmModalService,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n public translateService: TranslateService\r\n ) { }\r\n\r\n collapseChildren(classification: ClassificationDto): void {\r\n if (!classification.hasChildren) {\r\n return;\r\n }\r\n\r\n classification.isExpanded = !classification.isExpanded;\r\n if (classification.isExpanded && !classification.children.length) {\r\n classification.isLoading = true;\r\n this.resource.getChildClassifications(classification.id)\r\n .subscribe((children: ClassificationDto[]) => {\r\n classification.children = children;\r\n classification.isExpanded = true;\r\n classification.isLoading = false;\r\n this.cd.markForCheck();\r\n });\r\n }\r\n }\r\n\r\n addClassification(parent: ClassificationDto, event: MouseEvent): void {\r\n event.stopPropagation();\r\n\r\n this.dialog.open(ClassificationCreationModal, {\r\n width: '40%',\r\n disableClose: true,\r\n data: {\r\n parentClassification: parent\r\n }\r\n })\r\n .afterClosed()\r\n .subscribe((classification: Classification) => {\r\n if (classification) {\r\n this.createClassification(classification, parent);\r\n }\r\n });\r\n }\r\n\r\n editClassification(id: number, collection: ClassificationDto[]): void {\r\n this.dialog.open(ClassificationCreationModal, {\r\n width: '40%',\r\n disableClose: true,\r\n data: {\r\n id: id\r\n }\r\n })\r\n .afterClosed()\r\n .subscribe((classification: Classification) => {\r\n if (classification) {\r\n this.updateClassification(classification, collection);\r\n }\r\n });\r\n }\r\n\r\n editModerators(classification: ClassificationDto) {\r\n this.dialog.open(ClassificationModeratorsModal, {\r\n disableClose: true,\r\n width: '90%',\r\n height: '50%',\r\n data: {\r\n classification: classification\r\n }\r\n })\r\n .afterClosed()\r\n .subscribe();\r\n }\r\n\r\n protected createClassification(classification: Classification, parent: ClassificationDto): void {\r\n this.loadingIndicator.show();\r\n this.resource.createClassification(classification)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((classificationDto: ClassificationDto) => {\r\n parent.children = [...parent.children, classificationDto];\r\n parent.hasChildren = true;\r\n parent.isExpanded = true;\r\n\r\n const systemMessage = new SystemMessage('classification.base.successfullyAddedClassificationMsg', SystemMessageType.success);\r\n this.systemMessageService.messages.emit(systemMessage);\r\n\r\n this.cd.markForCheck();\r\n this.cd.detectChanges();\r\n });\r\n }\r\n\r\n protected updateClassification(classification: Classification, collection: ClassificationDto[]): void {\r\n this.loadingIndicator.show();\r\n\r\n this.resource.updateClassification(classification)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((classificationDto: ClassificationDto) => {\r\n const index = collection.findIndex(e => e.id === classificationDto.id);\r\n collection[index] = classificationDto;\r\n\r\n const systemMessage = new SystemMessage('classification.base.successfullyUpdatedClassificationMsg', SystemMessageType.success);\r\n this.systemMessageService.messages.emit(systemMessage);\r\n\r\n this.cd.markForCheck();\r\n });\r\n }\r\n\r\n deleteClassification(id: number, parent: ClassificationDto): void {\r\n this.confirmModalService.openDialog(\r\n this.translateService.instant('classification.deleteConfirmationModal.header'),\r\n this.translateService.instant('classification.deleteConfirmationModal.body'),\r\n this.translateService.instant('classification.deleteConfirmationModal.acceptText'),\r\n this.translateService.instant('classification.deleteConfirmationModal.declineText')\r\n )\r\n .subscribe((result: boolean) => {\r\n if (result) {\r\n this.delete(id, parent);\r\n }\r\n });\r\n }\r\n\r\n protected setClassificationPermissions(classification: ClassificationDto): void {\r\n this.canEdit = (!classification.organizationId && this.userPermissionVerificatorService.hasFullAccess()) ||\r\n (classification.organizationId && (this.userPermissionVerificatorService.hasFullAccess() || this.userPermissionVerificatorService.isOrganizationAdministrator([classification.organizationId])));\r\n\r\n this.canDelete = classification.publicationsCount == 0 && !classification.hasChildren;\r\n\r\n this.canEditModerators = !classification.organizationId\r\n || (classification.organizationId && (this.userPermissionVerificatorService.hasFullAccess() || this.userPermissionVerificatorService.isOrganizationAdministrator([classification.organizationId])));\r\n }\r\n\r\n private delete(id: number, parent: ClassificationDto): void {\r\n this.loadingIndicator.show();\r\n this.resource.deleteClassification(id)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe(() => {\r\n const index = parent.children.findIndex(e => e.id === id);\r\n parent.children.splice(index, 1);\r\n parent.hasChildren = parent.children.length > 0;\r\n\r\n const systemMessage = new SystemMessage('classification.base.successfullyRemovedClassificationMsg', SystemMessageType.success);\r\n this.systemMessageService.messages.emit(systemMessage);\r\n\r\n this.cd.markForCheck();\r\n })\r\n }\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport { ClassificationDto } from '../dtos/classification.dto';\r\nimport { ClassificationBaseComponent } from './classification-base.component';\r\n\r\n@Component({\r\n selector: 'classification-children',\r\n templateUrl: 'classification-children.component.html',\r\n styleUrls: ['./classification-children.styles.css']\r\n})\r\n\r\nexport class ClassificationChildrenComponent extends ClassificationBaseComponent {\r\n parent: ClassificationDto;\r\n @Input('parent') set parentSetter(value: ClassificationDto | null) {\r\n if (!value) {\r\n return;\r\n }\r\n\r\n this.parent = value;\r\n this.setClassificationPermissions(value);\r\n }\r\n\r\n @Input() level: number;\r\n}\r\n","
\r\n
\r\n
\r\n \r\n {{ child.isExpanded ? 'expand_more' : 'chevron_right' }}\r\n \r\n \r\n {{ translateService.currentLang !== translateService.defaultLang && child.nameEn ? child.nameEn : child.name }}\r\n\r\n \r\n ({{ child.publicationsCount }})\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n \r\n\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, Inject } from '@angular/core';\r\nimport { MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatSlideToggleChange } from '@angular/material/slide-toggle';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { UserPermissionVerificatorService } from 'src/infrastructure/services/user-permission-verification.service';\r\nimport { ClassificationResource } from '../classification.resource';\r\nimport { ClassificationDto } from '../dtos/classification.dto';\r\nimport { IClassificationCreation } from '../interfaces/classification-creation.interface';\r\nimport { Classification } from '../models/classification.model';\r\n\r\n@Component({\r\n selector: 'classification-creation-modal',\r\n templateUrl: 'classification-creation-modal.component.html'\r\n})\r\n\r\nexport class ClassificationCreationModal {\r\n parentClassification: ClassificationDto;\r\n classification: Classification = new Classification();\r\n isValidClassificationHarvestingData = true;\r\n canCreateCommonClassification = false;\r\n\r\n constructor(\r\n @Inject(MAT_DIALOG_DATA) private data: IClassificationCreation,\r\n private resource: ClassificationResource,\r\n private loadingIndicator: LoadingIndicatorService,\r\n private userPermissionVerificatorService: UserPermissionVerificatorService,\r\n public translateService: TranslateService\r\n ) {\r\n\r\n this.canCreateCommonClassification = this.userPermissionVerificatorService.hasFullAccess();\r\n\r\n if (this.data) {\r\n if (this.data.id) {\r\n this.loadingIndicator.show();\r\n\r\n this.resource.getById(this.data.id)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((classification: Classification) => {\r\n this.classification = classification;\r\n if (classification.parent) {\r\n this.parentClassification = new ClassificationDto();\r\n this.parentClassification.id = classification.parent.id;\r\n this.parentClassification.name = classification.parent.name;\r\n this.parentClassification.organizationId = classification.parent.organizationId;\r\n if (classification.parent.organizationId) {\r\n this.parentClassification.organizationName = classification.parent.organization.name;\r\n }\r\n }\r\n\r\n });\r\n }\r\n else {\r\n this.parentClassification = this.data.parentClassification;\r\n if (this.parentClassification) {\r\n this.classification.parentId = this.parentClassification.id;\r\n this.classification.organizationId = this.parentClassification.organizationId;\r\n }\r\n }\r\n }\r\n }\r\n\r\n isFromHarvestingChanged(isFromHarvestingChange: MatSlideToggleChange) {\r\n this.classification.isReadonly = isFromHarvestingChange.checked;\r\n this.classification.isOpenAirePropagationEnabled = !this.classification.isReadonly;\r\n\r\n if (!this.classification.isReadonly) {\r\n this.isValidClassificationHarvestingData = true;\r\n this.classification.harvestUrl = undefined;\r\n this.classification.metadataFormat = undefined;\r\n this.classification.sets = [];\r\n\r\n this.classification.defaultResourceTypeId = null;\r\n this.classification.defaultResourceType = null;\r\n\r\n this.classification.defaultAccessRightId = null;\r\n this.classification.defaultAccessRight = null;\r\n\r\n this.classification.defaultIdentifierTypeId = null;\r\n this.classification.defaultIdentifierType = null;\r\n\r\n this.classification.defaultLicenseConditionId = null;\r\n this.classification.defaultLicenseCondition = null;\r\n\r\n this.classification.defaultLicenseStartDate = null;\r\n }\r\n }\r\n}\r\n","

\r\n {{\r\n (classification.id ? 'classification.creationModal.editTitle' : 'classification.creationModal.newTitle') | translate\r\n }}\r\n

\r\n\r\n\r\n
\r\n \r\n {{ 'classification.creationModal.fromHarvestingMsg' | translate }}\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n classification.creationModal.parentClassification\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n\r\n \r\n classification.creationModal.organization\r\n \r\n \r\n\r\n \r\n classification.creationModal.setName\r\n \r\n \r\n\r\n \r\n classification.creationModal.name\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n classification.creationModal.nameEn\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n
\r\n \r\n {{ 'classification.creationModal.isOpenAirePropagationEnabled' | translate }}\r\n \r\n
\r\n\r\n \r\n {{ 'classification.creationModal.isFromHarvesting' | translate }}\r\n \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, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { MatExpansionPanel } from '@angular/material/expansion';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { MetadataHarvestingService } from 'src/infrastructure/services/metadata-harvesting.service';\r\nimport { Classification } from 'src/modules/classification/models/classification.model';\r\nimport { LoadingIndicatorService } from './../../../infrastructure/components/loading-indicator/loading-indicator.service';\r\n\r\n@Component({\r\n selector: 'classification-harvesting-data',\r\n templateUrl: 'classification-harvesting-data.component.html'\r\n})\r\n\r\nexport class ClassificationHarvestingDataComponent implements OnInit {\r\n @Input() isNew: boolean;\r\n\r\n @Output() selectedSetsChange: EventEmitter = new EventEmitter();\r\n\r\n @Output() isValid: EventEmitter = new EventEmitter();\r\n\r\n classification: Classification;\r\n @Input('classification')\r\n set model(classification: Classification) {\r\n this.classification = classification;\r\n\r\n if (!classification) {\r\n return;\r\n }\r\n\r\n if (classification.metadataFormat) {\r\n this.selectedMetadataFormat = { name: classification.metadataFormat };\r\n }\r\n\r\n if (this.classification.isReadonly && this.classification.harvestUrl) {\r\n this.validateRepositoryUrl(this.classification.harvestUrl);\r\n }\r\n }\r\n\r\n isValidRepositoryUrl: boolean;\r\n repositorySetsCache: Map = new Map();\r\n\r\n repositorySets: { spec: string, name: string, selected: boolean }[] = [];\r\n selectedMetadataFormat: { name: string };\r\n classificationSets: Set = new Set();\r\n supportedMetadataFormats: Set = new Set();\r\n\r\n @ViewChild('harvestingDataForm') harvestingDataForm: NgForm;\r\n @ViewChild(MatExpansionPanel) panel: MatExpansionPanel;\r\n\r\n constructor(\r\n private metadataHarvestingService: MetadataHarvestingService,\r\n private loadingIndicator: LoadingIndicatorService,\r\n public translateService: TranslateService\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n this.loadSupportedMetadataFormats();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.harvestingDataForm.statusChanges.subscribe(() => this.isValid.emit(this.harvestingDataForm.valid));\r\n }\r\n\r\n selectedMetadataFormatChanged(value: string | null) {\r\n if (!value) {\r\n this.selectedMetadataFormat = null;\r\n this.harvestingDataForm.controls['metadataFormat'].setErrors({ 'required': true });\r\n } else {\r\n if (!this.supportedMetadataFormats.has(value)) {\r\n this.harvestingDataForm.controls['metadataFormat'].setErrors({ 'notSupportedFormat': true });\r\n return;\r\n }\r\n\r\n this.selectedMetadataFormat = { name: value };\r\n }\r\n\r\n this.classification.metadataFormat = value;\r\n }\r\n\r\n selectedSetChange() {\r\n const selectedSets = this.repositorySets\r\n .filter(s => s.selected)\r\n .map(s => s.spec);\r\n\r\n this.selectedSetsChange.emit(selectedSets);\r\n }\r\n\r\n clearMetadataFormat() {\r\n this.classification.metadataFormat = null;\r\n this.selectedMetadataFormat = null;\r\n }\r\n\r\n validateRepositoryUrl(url: string) {\r\n if (this.panel) {\r\n this.panel.close();\r\n }\r\n\r\n if (this.repositorySetsCache.has(url)) {\r\n this.isValidRepositoryUrl = true;\r\n this.harvestingDataForm.controls['classificationHarvestUrl'].setErrors(null);\r\n return;\r\n }\r\n\r\n this.repositorySets = [];\r\n\r\n if (!url) {\r\n this.harvestingDataForm.controls['classificationHarvestUrl'].setErrors({ 'invalidUrl': true });\r\n return;\r\n }\r\n\r\n this.loadingIndicator.show();\r\n return this.metadataHarvestingService.validateRepositoryUrl(url)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((isValid: boolean) => {\r\n this.isValidRepositoryUrl = isValid;\r\n if (!isValid) {\r\n this.harvestingDataForm.controls['classificationHarvestUrl'].setErrors({ 'invalidUrl': true });\r\n } else {\r\n this.harvestingDataForm.controls['classificationHarvestUrl'].setErrors(null);\r\n }\r\n });\r\n }\r\n\r\n setClassificationSets() {\r\n const selectedSets = this.repositorySets\r\n .filter(s => s.selected)\r\n .map(s => s.spec);\r\n\r\n if (selectedSets.length !== this.repositorySets.length) {\r\n this.classification.sets = selectedSets;\r\n }\r\n }\r\n\r\n loadRepositorySets(repositoryUrl: string) {\r\n if (this.repositorySetsCache.has(repositoryUrl)) {\r\n this.repositorySets = this.repositorySetsCache.get(repositoryUrl);\r\n return;\r\n }\r\n\r\n this.loadingIndicator.show();\r\n\r\n return this.metadataHarvestingService.getRepositorySets(repositoryUrl)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((sets: { name: string, spec: string }[]) => {\r\n this.setRepositorySets(sets);\r\n this.repositorySetsCache.set(repositoryUrl, this.repositorySets);\r\n });\r\n }\r\n\r\n changeSelectAll(select: boolean) {\r\n this.repositorySets.forEach(set => set.selected = select);\r\n }\r\n\r\n private setRepositorySets(repositorySets: { name: string, spec: string }[]) {\r\n if (!this.isNew) {\r\n this.setClassificationSelectedSets(this.classification.sets);\r\n }\r\n\r\n this.repositorySets = repositorySets.map(set => {\r\n return {\r\n name: set.name,\r\n spec: set.spec,\r\n selected: this.isNew || this.classificationSets.has(set.spec) || (!this.isNew && (!this.classification.sets || !this.classification.sets.length))\r\n }\r\n });\r\n }\r\n\r\n private setClassificationSelectedSets(sets: string[]) {\r\n (sets || []).forEach(set => this.classificationSets.add(set));\r\n }\r\n\r\n private loadSupportedMetadataFormats() {\r\n this.loadingIndicator.show();\r\n\r\n this.metadataHarvestingService.getSupportedMetadataFormats()\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((supportedMetadataFormats: string[]) => supportedMetadataFormats.forEach(format => this.supportedMetadataFormats.add(format)));\r\n }\r\n}\r\n","
\r\n
\r\n \r\n classification.creationModal.harvestUrl\r\n \r\n \r\n {{ 'classification.messages.repositoryInvalidFailureMessage' | translate }}\r\n \r\n \r\n\r\n
\r\n \r\n \r\n\r\n \r\n {{ 'classification.messages.notSupportedFormatMessage' | translate }}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n classification.creationModal.defaultLicenseStartDate\r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'classification.creationModal.harvestSets' | translate }}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n \r\n {{ set.name }} ({{ set.spec }})\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { SystemMessageType } from 'src/infrastructure/system-messages/enums/system-message-type.enum';\r\nimport { SystemMessage } from 'src/infrastructure/system-messages/models/system-message.model';\r\nimport { SystemMessagesHandlerService } from 'src/infrastructure/system-messages/services/system-messages-handler.service';\r\nimport { ClassificationResource } from '../classification.resource';\r\nimport { ClassificationModeratorDto } from '../dtos/classification-moderator.dto';\r\nimport { ClassificationDto } from '../dtos/classification.dto';\r\n\r\n@Component({\r\n selector: 'classification-moderators-modal',\r\n templateUrl: 'classification-moderators-modal.component.html',\r\n styleUrls: ['./classification-moderators-modal.styles.css']\r\n})\r\n\r\nexport class ClassificationModeratorsModal implements OnInit {\r\n moderators: ClassificationModeratorDto[] = [];\r\n\r\n selectedModeratorIds: number[] = [];\r\n selectedModerator: ClassificationModeratorDto;\r\n\r\n classification: ClassificationDto;\r\n canSave: boolean;\r\n\r\n constructor(\r\n @Inject(MAT_DIALOG_DATA) private data: any,\r\n private loadingIndicator: LoadingIndicatorService,\r\n private resource: ClassificationResource,\r\n private systemMessageService: SystemMessagesHandlerService,\r\n private dialogRef: MatDialogRef,\r\n public translateService: TranslateService\r\n ) { }\r\n\r\n ngOnInit() {\r\n if (!this.data || !this.data.classification) {\r\n this.close();\r\n return;\r\n }\r\n\r\n this.classification = this.data.classification;\r\n\r\n this.loadingIndicator.show();\r\n this.resource.getModerators(this.data.classification.id)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((moderators: ClassificationModeratorDto[]) => {\r\n this.moderators = moderators;\r\n this.selectedModeratorIds = this.moderators.map(e => e.userId);\r\n\r\n this.setCanSave();\r\n });\r\n }\r\n\r\n addNewModerator() {\r\n if (!this.moderators) {\r\n this.moderators = [];\r\n }\r\n\r\n this.selectedModerator.isNew = true;\r\n this.moderators.unshift(this.selectedModerator);\r\n this.selectedModerator = null;\r\n this.selectedModeratorIds = this.moderators.map(e => e.userId);\r\n\r\n this.setCanSave();\r\n }\r\n\r\n changeDeletionStatus(index: number) {\r\n if (this.moderators[index].isNew) {\r\n this.moderators.splice(index, 1);\r\n this.selectedModeratorIds = this.moderators.map(e => e.userId);\r\n\r\n this.setCanSave();\r\n\r\n return;\r\n }\r\n\r\n this.moderators[index].isDeletionMarked = !this.moderators[index].isDeletionMarked;\r\n this.setCanSave();\r\n }\r\n\r\n private setCanSave() {\r\n const hasNew = this.moderators.filter(e => e.isNew).length > 0;\r\n const hasDeleted = this.moderators.filter(e => e.isDeletionMarked).length > 0;\r\n this.canSave = hasNew || hasDeleted\r\n }\r\n\r\n save() {\r\n this.loadingIndicator.show();\r\n\r\n const moderatorUserIds = this.moderators.filter(e => !e.isDeletionMarked).map(e => e.userId);\r\n this.resource.createModerators(this.data.classification.id, moderatorUserIds)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((moderators: any[]) => {\r\n this.moderators = moderators;\r\n this.selectedModeratorIds = this.moderators.map(e => e.userId);\r\n\r\n this.setCanSave();\r\n\r\n const successMessage = new SystemMessage('classification.moderatorsModal.successMessage', SystemMessageType.success);\r\n this.systemMessageService.messages.emit(successMessage);\r\n });\r\n }\r\n\r\n close() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","

\r\n {{ 'classification.moderatorsModal.title' | translate }} -\r\n {{\r\n (translateService.currentLang !== translateService.defaultLang && classification.nameEn)\r\n ? classification.nameEn\r\n : classification.name\r\n }}\r\n ({{ classification.organizationName || ('classification.viewer.emptyOrganizationName' | translate) }})\r\n

\r\n\r\n\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{ 'classification.moderatorsModal.firstName' | translate }}{{ 'classification.moderatorsModal.middleName' | translate }}{{ 'classification.moderatorsModal.lastName' | translate }}{{ 'classification.moderatorsModal.email' | translate }}
{{ moderator.firstName }}{{ moderator.middleName }}{{ moderator.lastName }}{{ moderator.email }}\r\n \r\n
\r\n
\r\n\r\n\r\n \r\n \r\n\r\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\r\nimport { ClassificationPublicationDto } from '../dtos/classification-publication.dto';\r\n\r\n@Component({\r\n selector: 'classification-publications',\r\n templateUrl: 'classification-publications.component.html',\r\n styleUrls: ['./classification-publications.styles.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\n\r\nexport class ClassificationPublicationsComponent {\r\n @Input() publications: ClassificationPublicationDto[];\r\n}\r\n","\r\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\r\nimport { SystemMessageType } from 'src/infrastructure/system-messages/enums/system-message-type.enum';\r\nimport { SystemMessage } from 'src/infrastructure/system-messages/models/system-message.model';\r\nimport { ClassificationDto } from '../dtos/classification.dto';\r\nimport { ClassificationBaseComponent } from './classification-base.component';\r\n\r\n@Component({\r\n selector: 'classification-viewer',\r\n templateUrl: 'classification-viewer.component.html',\r\n styleUrls: ['./classification-viewer.styles.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\n\r\nexport class ClassificationViewerComponent extends ClassificationBaseComponent {\r\n classification: ClassificationDto\r\n @Input('classification') set classificaitonSetter(value: ClassificationDto | null) {\r\n if (!value) {\r\n return;\r\n }\r\n\r\n this.classification = value;\r\n this.setClassificationPermissions(value);\r\n }\r\n\r\n @Input() collection: ClassificationDto[];\r\n\r\n deleteRootClassification(id: number) {\r\n this.resource.deleteClassification(id)\r\n .subscribe(() => {\r\n const index = this.collection.findIndex(e => e.id === id);\r\n this.collection.splice(index, 1);\r\n\r\n const systemMessage = new SystemMessage('classification.base.successfullyRemovedClassificationMsg', SystemMessageType.success);\r\n this.systemMessageService.messages.emit(systemMessage);\r\n\r\n this.cd.markForCheck();\r\n })\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n {{ translateService.currentLang !== translateService.defaultLang && classification.nameEn ? classification.nameEn\r\n : classification.name }}\r\n ({{ classification.organizationName || ('classification.viewer.emptyOrganizationName' | translate) }})\r\n \r\n ({{ classification.publicationsCount }})\r\n \r\n
\r\n\r\n \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, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { SystemMessageType } from 'src/infrastructure/system-messages/enums/system-message-type.enum';\r\nimport { SystemMessage } from 'src/infrastructure/system-messages/models/system-message.model';\r\nimport { SystemMessagesHandlerService } from 'src/infrastructure/system-messages/services/system-messages-handler.service';\r\nimport { ClassificationResource } from '../classification.resource';\r\nimport { ClassificationDto } from '../dtos/classification.dto';\r\nimport { Classification } from '../models/classification.model';\r\nimport { ClassificationCreationModal } from './classification-creation-modal.component';\r\n\r\n@Component({\r\n selector: 'app-classifications',\r\n templateUrl: 'classifications.component.html'\r\n})\r\n\r\nexport class ClassificationsComponent implements OnInit {\r\n roots: ClassificationDto[] = [];\r\n\r\n constructor(\r\n protected resource: ClassificationResource,\r\n protected dialog: MatDialog,\r\n protected systemMessageService: SystemMessagesHandlerService,\r\n private loadingIndicator: LoadingIndicatorService\r\n ) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.loadingIndicator.show();\r\n this.resource.getClassificationRoots()\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((roots: ClassificationDto[]) => this.roots = roots);\r\n }\r\n\r\n addClassification(): void {\r\n this.dialog.open(ClassificationCreationModal, {\r\n width: '40%',\r\n disableClose: true\r\n })\r\n .afterClosed()\r\n .subscribe((classification: Classification) => {\r\n if (classification) {\r\n this.createClassification(classification);\r\n }\r\n });\r\n }\r\n\r\n createClassification(classification: Classification) {\r\n this.loadingIndicator.show();\r\n this.resource.createClassification(classification)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((classification: ClassificationDto) => {\r\n this.roots = [...this.roots, classification];\r\n\r\n const systemMessage = new SystemMessage('classification.base.successfullyAddedClassificationMsg', SystemMessageType.success);\r\n this.systemMessageService.messages.emit(systemMessage);\r\n });\r\n }\r\n}\r\n","\r\n\r\n
\r\n \r\n
\r\n","import { ClassificationPublicationDto } from './classification-publication.dto';\r\n\r\nexport class ClassificationDto {\r\n id: number;\r\n name: string;\r\n nameEn: string;\r\n\r\n organizationId: number | null;\r\n organizationName: string;\r\n\r\n hasChildren: boolean;\r\n publicationsCount: number;\r\n\r\n isExpanded: boolean;\r\n isLoading: boolean;\r\n isSelected: boolean;\r\n\r\n children: ClassificationDto[];\r\n\r\n publications: ClassificationPublicationDto[];\r\n}\r\n","import { Entity } from 'src/infrastructure/base/models/entity.model';\r\nimport { Institution } from 'src/modules/institution/models/institution.model';\r\nimport { AccessRight } from 'src/modules/nomenclature/models/access-right.model';\r\nimport { LicenseType } from 'src/modules/nomenclature/models/license-type.model';\r\nimport { ResourceIdentifierType } from 'src/modules/nomenclature/models/resource-identifier-type.model';\r\nimport { ResourceType } from 'src/modules/nomenclature/models/resource-type.model';\r\n\r\nexport class Classification extends Entity {\r\n name: string;\r\n nameEn: string;\r\n\r\n parentId: number | null;\r\n parent: Classification;\r\n\r\n organizationId: number | null;\r\n organization: Institution;\r\n\r\n isReadonly: boolean;\r\n harvestUrl: string;\r\n metadataFormat: string;\r\n sets: string[] = [];\r\n\r\n setName: string;\r\n\r\n isFromHarvesting: boolean;\r\n\r\n isOpenAirePropagationEnabled: boolean;\r\n\r\n defaultResourceTypeId: number | null;\r\n defaultResourceType: ResourceType;\r\n\r\n defaultIdentifierTypeId: number | null;\r\n defaultIdentifierType: ResourceIdentifierType;\r\n\r\n defaultAccessRightId: number | null;\r\n defaultAccessRight: AccessRight;\r\n\r\n defaultLicenseConditionId: number | null;\r\n defaultLicenseCondition: LicenseType;\r\n\r\n defaultLicenseStartDate: Date | null;\r\n\r\n children: Classification[];\r\n\r\n // For view purposes only\r\n isExpanded: boolean;\r\n\r\n constructor() {\r\n super();\r\n\r\n this.isReadonly = false;\r\n this.isOpenAirePropagationEnabled = false;\r\n this.isFromHarvesting = false;\r\n }\r\n}\r\n","import { Component, Inject } from \"@angular/core\";\r\nimport { InstitutionResource } from \"../institution.resource\";\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from \"@angular/material/dialog\";\r\nimport { SystemMessagesHandlerService } from \"src/infrastructure/system-messages/services/system-messages-handler.service\";\r\nimport { LoadingIndicatorService } from \"src/infrastructure/components/loading-indicator/loading-indicator.service\";\r\nimport { IDeletePublicationsModalData } from \"../interfaces/delete-publications-modal-data.interface\";\r\nimport { finalize } from \"rxjs/operators\";\r\nimport { SystemMessage } from \"src/infrastructure/system-messages/models/system-message.model\";\r\nimport { SystemMessageType } from \"src/infrastructure/system-messages/enums/system-message-type.enum\";\r\n\r\n@Component({\r\n selector: 'institution-delete-publications-modal',\r\n templateUrl: 'institution-delete-publications-modal.component.html',\r\n styleUrls: ['./institution-delete-publications-modal.styles.css']\r\n})\r\n\r\nexport class InstitutionDeletePublicationsModalComponent {\r\n\r\n modificationYearData = new Date().getFullYear();\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: IDeletePublicationsModalData,\r\n private resource: InstitutionResource,\r\n private systemMessagesService: SystemMessagesHandlerService,\r\n private loadingIndicator: LoadingIndicatorService\r\n ) { }\r\n\r\n deletePublications() {\r\n if (this.data.institutionId && this.modificationYearData) {\r\n this.loadingIndicator.show();\r\n\r\n this.resource.deletePublications(this.data.institutionId, this.modificationYearData)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((count: number) => {\r\n const message = new SystemMessage('institution.deletePublicationsModal.deletedPublicationsConfirm', SystemMessageType.success, 30, count.toString());\r\n this.systemMessagesService.messages.emit(message);\r\n\r\n this.close();\r\n });\r\n }\r\n }\r\n\r\n close() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","
\r\n

{{ 'institution.deletePublicationsModal.title' | translate }}

\r\n
\r\n\r\n
\r\n
\r\n \r\n institution.deletePublicationsModal.modificationYear\r\n \r\n \r\n {{ 'institution.deletePublicationsModal.errors.' + error.key | translate}}\r\n \r\n \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, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Observable } from 'rxjs';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { ConfirmDialogComponent } from 'src/infrastructure/components/confirm-modal/confirm-modal.component';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { SystemMessageType } from 'src/infrastructure/system-messages/enums/system-message-type.enum';\r\nimport { SystemMessage } from 'src/infrastructure/system-messages/models/system-message.model';\r\nimport { SystemMessagesHandlerService } from 'src/infrastructure/system-messages/services/system-messages-handler.service';\r\nimport { InstitutionResource } from '../institution.resource';\r\nimport { Institution } from '../models/institution.model';\r\nimport { UserRoleAliases } from 'src/modules/user/constants/user-role-aliases.constant';\r\nimport { UserRoleService } from 'src/modules/user/services/user-role.service';\r\nimport { InstitutionDeletePublicationsModalComponent } from './institution-delete-publications-modal.component';\r\n\r\n@Component({\r\n selector: 'institution-edit',\r\n templateUrl: 'institution-edit.component.html'\r\n})\r\n\r\nexport class InstitutionEditComponent implements OnInit {\r\n model: Institution = new Institution();\r\n\r\n isEditMode = false;\r\n originalObject = new Institution();\r\n\r\n isAdministrator = this.userRoleService.hasRole(UserRoleAliases.ADMINISTRATOR);\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private resource: InstitutionResource,\r\n private dialog: MatDialog,\r\n private translateService: TranslateService,\r\n private loadingIndicator: LoadingIndicatorService,\r\n private messagesService: SystemMessagesHandlerService,\r\n private userRoleService: UserRoleService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.route.params.subscribe((params: Params) => {\r\n const id = +params['id'];\r\n if (id) {\r\n this.loadInstitutionById(id);\r\n } else {\r\n this.isEditMode = true;\r\n }\r\n });\r\n }\r\n\r\n save() {\r\n this.loadingIndicator.show();\r\n\r\n if (this.model.id) {\r\n this.resource.update(this.model.id, this.model)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((institution: Institution) => {\r\n this.model = institution;\r\n\r\n this.originalObject = new Institution();\r\n this.isEditMode = false;\r\n\r\n const message = new SystemMessage('institution.messages.modificationSuccessMessage', SystemMessageType.success);\r\n this.messagesService.messages.emit(message);\r\n });\r\n } else {\r\n this.resource.post(this.model)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((institution: Institution) => {\r\n const message = new SystemMessage('institution.messages.creationSuccessMessage', SystemMessageType.success);\r\n this.messagesService.messages.emit(message);\r\n\r\n this.router.navigate(['institutions', institution.id]);\r\n });\r\n }\r\n }\r\n\r\n edit() {\r\n if (this.isEditMode) {\r\n return;\r\n }\r\n\r\n this.originalObject = JSON.parse(JSON.stringify(this.model));\r\n this.isEditMode = true;\r\n }\r\n\r\n cancel() {\r\n if (!this.isEditMode) {\r\n return;\r\n }\r\n\r\n if (!this.model.id) {\r\n this.router.navigate(['institutions']);\r\n }\r\n\r\n this.model = JSON.parse(JSON.stringify(this.originalObject));\r\n this.originalObject = new Institution();\r\n this.isEditMode = false;\r\n }\r\n\r\n deactivate() {\r\n this.openDialog(\r\n this.translateService.instant('institution.deactivationConfirmation.header'),\r\n this.translateService.instant('institution.deactivationConfirmation.body'),\r\n this.translateService.instant('institution.deactivationConfirmation.acceptText'),\r\n this.translateService.instant('institution.deactivationConfirmation.declineText')\r\n )\r\n .subscribe((result: boolean) => {\r\n if (result) {\r\n this.saveDeactivation();\r\n }\r\n });\r\n }\r\n\r\n deletePublications() {\r\n this.dialog.open(InstitutionDeletePublicationsModalComponent, {\r\n disableClose: true,\r\n data: {\r\n institutionId: this.model.id\r\n }\r\n })\r\n .afterClosed()\r\n .subscribe();\r\n }\r\n\r\n private loadInstitutionById(id: number) {\r\n this.loadingIndicator.show();\r\n this.resource.getById(id)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((institution: Institution) => {\r\n this.model = institution;\r\n this.isEditMode = false;\r\n });\r\n }\r\n\r\n private saveDeactivation(): void {\r\n this.loadingIndicator.show();\r\n this.resource.deactivate(this.model.id)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe(() => {\r\n const message = new SystemMessage('institution.messages.deactivationSuccessMessage', SystemMessageType.success);\r\n this.messagesService.messages.emit(message);\r\n\r\n this.router.navigate(['institutions']);\r\n })\r\n }\r\n\r\n private openDialog(header: string, body: string, acceptText: string, declineText: string): Observable {\r\n return this.dialog.open(ConfirmDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n header: header,\r\n body: body,\r\n acceptText: acceptText,\r\n showDecline: true,\r\n declineText: declineText\r\n }\r\n })\r\n .afterClosed()\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n {{ model.id? 'institution.edit.titleEdit' : 'institution.edit.titleNew' | translate }}\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n institution.edit.name\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n institution.edit.nameEn\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n institution.edit.repositoryUrl\r\n \r\n \r\n\r\n
\r\n \r\n {{ 'institution.edit.areCommonClassificationsVisible' | translate }}\r\n \r\n
\r\n
\r\n\r\n
\r\n
\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, OnInit } from '@angular/core';\r\nimport { LangChangeEvent, TranslateService } from '@ngx-translate/core';\r\nimport { BaseEntitySearchComponent } from 'src/infrastructure/components/base-entity-search.component';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { InstitutionResource } from '../institution.resource';\r\nimport { Institution } from '../models/institution.model';\r\nimport { InstitutionSearchFilterService } from '../services/institution-search-filter.service';\r\n\r\n@Component({\r\n selector: 'institution-search',\r\n templateUrl: 'institution-search.component.html'\r\n})\r\n\r\nexport class InstitutionSearchComponent extends BaseEntitySearchComponent implements OnInit {\r\n displayedColumns: string[] = ['actions', 'name', 'repositoryUrl', 'areCommonClassificationsVisible', 'isActive'];\r\n\r\n private currentLang: string;\r\n\r\n constructor(\r\n public filter: InstitutionSearchFilterService,\r\n protected resource: InstitutionResource,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n public translateService: TranslateService\r\n ) {\r\n super(filter, resource, loadingIndicator);\r\n this.currentLang = this.translateService.currentLang;\r\n }\r\n\r\n ngOnInit() {\r\n this.translateService.onLangChange.subscribe((event: LangChangeEvent) => {\r\n if (event.lang !== this.currentLang) {\r\n this.currentLang = event.lang;\r\n this.filter.clear();\r\n this.search();\r\n }\r\n });\r\n\r\n super.ngOnInit();\r\n }\r\n\r\n search(loadMore?: boolean) {\r\n this.filter.searchInForeignNameOnly = this.translateService.currentLang !== this.translateService.defaultLang\r\n super.search(loadMore);\r\n }\r\n}\r\n","\r\n \r\n \r\n \r\n search\r\n {{ 'institution.search.filterPanelTitle' | translate }}\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n institution.search.name\r\n \r\n \r\n\r\n \r\n institution.search.repositoryUrl\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n\r\n \r\n search\r\n \r\n \r\n {{ 'institution.search.name' | translate }}\r\n \r\n
\r\n {{ translateService.currentLang === translateService.defaultLang ? institution.name : institution.nameEn }}\r\n
\r\n
\r\n {{ institution.nameEn }}\r\n
\r\n
\r\n {{ 'institution.search.repositoryUrl' | translate }}\r\n \r\n \r\n {{ institution.repositoryUrl }}\r\n \r\n \r\n {{ 'institution.search.areCommonClassificationsVisible' | translate }}\r\n \r\n {{ institution.areCommonClassificationsVisible ? 'check' : 'cancel' }}\r\n \r\n {{ 'institution.search.isActive' | translate }}\r\n \r\n {{ institution.isActive ? 'check' : 'cancel' }}\r\n
\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { AuthGuard } from 'src/infrastructure/interceptors/auth.guard';\r\nimport { InstitutionEditComponent } from './components/institution-edit.component';\r\nimport { InstitutionSearchComponent } from './components/institution-search.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'institutions',\r\n data: {\r\n title: 'app.titles.institutions.search'\r\n },\r\n children: [\r\n {\r\n path: '',\r\n component: InstitutionSearchComponent,\r\n canActivate: [AuthGuard],\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: ':id/edit',\r\n component: InstitutionEditComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.institutions.details'\r\n }\r\n },\r\n {\r\n path: 'new',\r\n component: InstitutionEditComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.institutions.new'\r\n }\r\n }\r\n ]\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class InstitutionRoutingModule { }\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { MaterialComponentsModule } from 'src/infrastructure/material-components.module';\r\nimport { SharedModule } from 'src/infrastructure/shared.module';\r\nimport { InstitutionEditComponent } from './components/institution-edit.component';\r\nimport { InstitutionSearchComponent } from './components/institution-search.component';\r\nimport { InstitutionRoutingModule } from './institution-routing.module';\r\nimport { InstitutionResource } from './institution.resource';\r\nimport { InstitutionSearchFilterService } from './services/institution-search-filter.service';\r\nimport { InstitutionDeletePublicationsModalComponent } from './components/institution-delete-publications-modal.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n MaterialComponentsModule,\r\n InstitutionRoutingModule,\r\n TranslateModule,\r\n SharedModule\r\n ],\r\n declarations: [\r\n InstitutionSearchComponent,\r\n InstitutionEditComponent,\r\n InstitutionDeletePublicationsModalComponent\r\n ],\r\n entryComponents: [\r\n InstitutionDeletePublicationsModalComponent\r\n ],\r\n providers: [\r\n InstitutionSearchFilterService,\r\n InstitutionResource\r\n ]\r\n})\r\nexport class InstitutionModule { }\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { BaseEntityResource } from 'src/infrastructure/base/base-entity.resource';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { FlatClassificationHierarchyItemDto } from '../classification/dtos/flat-classification-hierarchy-item.dto';\r\nimport { Institution } from './models/institution.model';\r\n\r\n@Injectable()\r\nexport class InstitutionResource extends BaseEntityResource {\r\n constructor(\r\n protected http: HttpClient,\r\n protected configuration: Configuration\r\n ) {\r\n super(http, configuration, \"Institution\");\r\n }\r\n\r\n getInstitutionClassifications(institutionId: number): Observable {\r\n let url = `${this.baseUrl}/Classifications?institutionId=${institutionId}`;\r\n\r\n return this.http.get(url);\r\n }\r\n\r\n deletePublications(institutionId: number, modificationYear: number): Observable {\r\n let url = `${this.baseUrl}/${institutionId}/DeletePublications/${modificationYear}`;\r\n\r\n return this.http.delete(url);\r\n }\r\n\r\n public deactivate(institutionId: number): Observable {\r\n return this.http.put(`${this.baseUrl}/${institutionId}/Deactivation`, null);\r\n }\r\n}\r\n","import { Entity } from 'src/infrastructure/base/models/entity.model';\r\n\r\nexport class Institution extends Entity {\r\n name: string;\r\n nameEn: string;\r\n\r\n identifier: string;\r\n\r\n repositoryUrl: string;\r\n\r\n areCommonClassificationsVisible: boolean;\r\n\r\n isActive: boolean;\r\n\r\n hasDepartments: boolean;\r\n\r\n constructor() {\r\n super();\r\n this.isActive = true;\r\n this.areCommonClassificationsVisible = true;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseEntityFilterService } from 'src/infrastructure/base/interfaces/base-entity-filter.service';\r\n\r\n@Injectable()\r\nexport class InstitutionSearchFilterService extends BaseEntityFilterService {\r\n name: string;\r\n repositoryUrl: string;\r\n\r\n searchInForeignNameOnly: boolean | null;\r\n\r\n constructor() {\r\n super(10);\r\n }\r\n\r\n clear() {\r\n this.limit = 10;\r\n this.offset = 0;\r\n\r\n this.name = null;\r\n this.repositoryUrl = null;\r\n this.searchInForeignNameOnly = null;\r\n }\r\n}\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { finalize } from 'rxjs/operators';\r\nimport { LoadingIndicatorService } from \"src/infrastructure/components/loading-indicator/loading-indicator.service\";\r\nimport { SearchUnsubscriberService } from \"src/infrastructure/search-unsubscriber/search-unsubscriber.service\";\r\nimport { LogFilterDto } from \"../models/log-filter.dto\";\r\nimport { LogsResource } from \"../resources/log.resource\";\r\nimport { LogDto } from \"../models/log.dto\";\r\nimport { Verb } from \"../enums/verb.enum\";\r\n\r\n@Component({\r\n selector: 'log-search',\r\n templateUrl: './log-search.component.html',\r\n providers: [\r\n SearchUnsubscriberService\r\n ]\r\n})\r\nexport class LogSearchComponent implements OnInit {\r\n\r\n displayedColumns: string[] = ['date', 'username', 'ip', 'verb', 'url'];\r\n\r\n filter = new LogFilterDto();\r\n logs: LogDto[] = [];\r\n dataCount: number = null;\r\n verb = Verb;\r\n\r\n constructor(\r\n private searchUnsubscriberService: SearchUnsubscriberService,\r\n private loadingIndicator: LoadingIndicatorService,\r\n private resource: LogsResource\r\n ) {\r\n }\r\n\r\n search(loadMore: boolean) {\r\n this.searchUnsubscriberService.unsubscribeByType(1);\r\n this.loadingIndicator.show();\r\n this.dataCount = null;\r\n\r\n if (loadMore) {\r\n this.filter.limit = this.filter.limit + this.logs.length;\r\n } else {\r\n this.filter.limit = 30;\r\n }\r\n\r\n var subscriber = this.resource.getAll(this.filter)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe(e => {\r\n this.logs = e;\r\n });\r\n\r\n this.searchUnsubscriberService.addSubscription(1, subscriber);\r\n return subscriber;\r\n }\r\n\r\n getCount() {\r\n this.searchUnsubscriberService.unsubscribeByType(2);\r\n this.loadingIndicator.show();\r\n\r\n var subscriber = this.resource\r\n .getAllCount(this.filter)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe(e => {\r\n this.dataCount = e;\r\n });\r\n\r\n this.searchUnsubscriberService.addSubscription(2, subscriber);\r\n return subscriber;\r\n }\r\n\r\n clear() {\r\n this.filter = new LogFilterDto();\r\n return this.search(false);\r\n }\r\n\r\n ngOnInit() {\r\n return this.search(false);\r\n }\r\n}\r\n","\r\n \r\n \r\n \r\n search\r\n {{ 'log.search.filterPanelTitle' | translate }}\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n log.search.ip\r\n \r\n \r\n\r\n \r\n log.search.url\r\n \r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n log.search.date\r\n \r\n \r\n \r\n \r\n\r\n \r\n log.search.verb\r\n \r\n \r\n {{ 'verb.get' | translate }}\r\n \r\n \r\n {{ 'verb.post' | translate }}\r\n \r\n \r\n {{ 'verb.put' | translate }}\r\n \r\n \r\n {{ 'verb.delete' | translate }}\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n {{ dataCount }}\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n {{ 'log.search.date' | translate }}\r\n \r\n {{ log.logDate | date: 'dd.MM.yyyy hh:mm' }}\r\n \r\n {{ 'app.titles.users.username' | translate }}\r\n \r\n {{ log.userFullname }}\r\n \r\n {{ 'log.search.ip' | translate }}\r\n \r\n {{ log.ip }}\r\n \r\n {{ 'log.search.verb' | translate }}\r\n \r\n {{ log.verb }}\r\n \r\n {{ 'log.search.url' | translate }}\r\n \r\n {{ log.url }}\r\n
\r\n\r\n\r\n","export enum LogType {\r\n exceptionLog = 1,\r\n traceLog = 2\r\n}\r\n","export enum Verb {\r\n get = 1,\r\n post = 2,\r\n put = 3,\r\n delete = 4\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { RouterModule, Routes } from \"@angular/router\";\r\nimport { LogSearchComponent } from \"./components/log-search.component\";\r\nimport { AdministratorAuthGuard } from \"src/infrastructure/interceptors/administrator-auth.guard\";\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'logs',\r\n data: {\r\n title: 'app.titles.logs.search'\r\n },\r\n children: [\r\n {\r\n path: '',\r\n component: LogSearchComponent,\r\n canActivate: [AdministratorAuthGuard]\r\n }\r\n ]\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class LogRoutingModule { }\r\n","import { CommonModule } from \"@angular/common\";\r\nimport { NgModule } from \"@angular/core\";\r\nimport { FormsModule } from \"@angular/forms\";\r\nimport { MaterialComponentsModule } from \"src/infrastructure/material-components.module\";\r\nimport { SharedModule } from \"src/infrastructure/shared.module\";\r\nimport { LogRoutingModule } from \"./log-routing.module\";\r\nimport { TranslateModule } from \"@ngx-translate/core\";\r\nimport { LogSearchComponent } from \"./components/log-search.component\";\r\nimport { LogsResource } from \"./resources/log.resource\";\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n SharedModule,\r\n FormsModule,\r\n MaterialComponentsModule,\r\n LogRoutingModule,\r\n TranslateModule\r\n ],\r\n declarations: [\r\n LogSearchComponent\r\n ],\r\n entryComponents: [\r\n ],\r\n providers: [\r\n LogsResource\r\n ]\r\n})\r\nexport class LogModule { }\r\n","import { UserSearchResultDto } from \"src/modules/user/dtos/user-search-result.dto\";\r\nimport { LogType } from \"../enums/log-type.enum\";\r\nimport { Verb } from \"../enums/verb.enum\";\r\n\r\nexport class LogFilterDto {\r\n limit = 30;\r\n offset = 0;\r\n\r\n type = LogType.traceLog;\r\n logDate: Date;\r\n ip: string;\r\n url: string;\r\n verb: Verb;\r\n userId: number;\r\n user: UserSearchResultDto;\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { LogDto } from \"../models/log.dto\";\r\nimport { LogFilterDto } from \"../models/log-filter.dto\";\r\n\r\n@Injectable()\r\nexport class LogsResource {\r\n\r\n url = 'api/logs';\r\n\r\n constructor(\r\n private http: HttpClient\r\n ) { }\r\n\r\n getAll(filter: LogFilterDto) {\r\n return this.http.post(`${this.url}`, filter);\r\n }\r\n\r\n getAllCount(filter: LogFilterDto) {\r\n return this.http.post(`${this.url}/count`, filter);\r\n }\r\n\r\n getById(id: number) {\r\n return this.http.get(`${this.url}/${id}`);\r\n }\r\n}\r\n","import { HttpEvent, HttpEventType } from '@angular/common/http';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { AttachedFile } from 'src/infrastructure/base/models/attached-file.model';\r\nimport { FileSelectService } from 'src/infrastructure/components/file-upload/file-select.service';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { SystemMessageType } from 'src/infrastructure/system-messages/enums/system-message-type.enum';\r\nimport { SystemMessage } from 'src/infrastructure/system-messages/models/system-message.model';\r\nimport { SystemMessagesHandlerService } from 'src/infrastructure/system-messages/services/system-messages-handler.service';\r\nimport { NewsStatus } from '../enums/news-status.enum';\r\nimport { NewsType } from '../enums/news-type.enum';\r\nimport { NewsFile } from '../models/news-file.model';\r\nimport { NewsLink } from '../models/news-link.model';\r\nimport { News } from '../models/news.model';\r\nimport { NewsResource } from '../news.resource';\r\n\r\n@Component({\r\n selector: 'news-edit',\r\n templateUrl: 'news-edit.component.html'\r\n})\r\n\r\nexport class NewsEditComponent implements OnInit {\r\n model: News = new News();\r\n isEditMode = false;\r\n\r\n statuses = NewsStatus;\r\n types = NewsType;\r\n maxNewsLinks: number;\r\n maxNewsFiles: number;\r\n\r\n private originalObject = new News();\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n private loadingIndicator: LoadingIndicatorService,\r\n private resource: NewsResource,\r\n private messagesService: SystemMessagesHandlerService,\r\n private configuration: Configuration,\r\n private confirmModalService: ConfirmModalService,\r\n private translateService: TranslateService,\r\n protected fileSelectService: FileSelectService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.maxNewsLinks = this.configuration.maxNewsLinks;\r\n this.maxNewsFiles = this.configuration.maxNewsFiles;\r\n\r\n this.route.params.subscribe((params: Params) => {\r\n const id = +params['id'];\r\n if (id) {\r\n this.loadNewsById(id);\r\n } else {\r\n this.isEditMode = true;\r\n }\r\n })\r\n }\r\n\r\n save() {\r\n this.loadingIndicator.show();\r\n\r\n if (this.model.id) {\r\n this.resource.update(this.model.id, this.model)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((news: News) => {\r\n this.model = news;\r\n\r\n this.originalObject = new News();\r\n this.isEditMode = false;\r\n\r\n const message = new SystemMessage('news.messages.modificationSuccessMessage', SystemMessageType.success);\r\n this.messagesService.messages.emit(message);\r\n });\r\n } else {\r\n this.resource.post(this.model)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((news: News) => {\r\n const message = new SystemMessage('news.messages.creationSuccessMessage', SystemMessageType.success);\r\n this.messagesService.messages.emit(message);\r\n\r\n this.router.navigate(['news', news.id]);\r\n });\r\n }\r\n }\r\n\r\n edit() {\r\n if (this.isEditMode) {\r\n return;\r\n }\r\n\r\n this.originalObject = JSON.parse(JSON.stringify(this.model));\r\n this.isEditMode = true;\r\n }\r\n\r\n cancel() {\r\n if (!this.isEditMode) {\r\n return;\r\n }\r\n\r\n if (!this.model.id) {\r\n this.router.navigate(['news']);\r\n }\r\n\r\n this.model = JSON.parse(JSON.stringify(this.originalObject));\r\n this.originalObject = new News();\r\n this.isEditMode = false;\r\n }\r\n\r\n addLink() {\r\n if (!this.model.links) {\r\n this.model.links = [];\r\n }\r\n\r\n const newLink = new NewsLink();\r\n newLink.viewOrder = this.model.links.length\r\n ? this.model.links[this.model.links.length - 1].viewOrder + 1\r\n : 1;\r\n\r\n this.model.links.push(newLink);\r\n }\r\n\r\n uploadFile(file: File) {\r\n this.loadingIndicator.show();\r\n\r\n this.fileSelectService.uploadFile(file)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((event: HttpEvent) => {\r\n if (event.type === HttpEventType.Response) {\r\n const body = event.body;\r\n let newsFile = new NewsFile();\r\n newsFile.dbId = body.dbId;\r\n newsFile.key = body.key;\r\n newsFile.hash = body.hash;\r\n newsFile.size = body.size;\r\n newsFile.mimeType = body.mimeType;\r\n newsFile.name = body.name;\r\n\r\n if (!this.model.files || !this.model.files.length) {\r\n this.model.files = [];\r\n }\r\n\r\n this.model.files.push(newsFile);\r\n }\r\n });\r\n }\r\n\r\n wrongNewsFileFormat() {\r\n const wrongFileFormatMessage = new SystemMessage('news.edit.wrongFileFormatMessage', SystemMessageType.danger);\r\n this.messagesService.messages.emit(wrongFileFormatMessage);\r\n }\r\n\r\n acceptedPublicationFileFormats = [\r\n 'application/pdf'\r\n ];\r\n\r\n removeFile(index: number) {\r\n this.model.files.splice(index, 1);\r\n }\r\n\r\n removeLink(index: number) {\r\n this.model.links.splice(index, 1);\r\n }\r\n\r\n markPublished() {\r\n if (this.model.status !== NewsStatus.draft) {\r\n return;\r\n }\r\n\r\n this.confirmAction('markPublished', () => this.saveStatus(NewsStatus.published));\r\n }\r\n\r\n markDeactivated() {\r\n if (this.model.status !== NewsStatus.published) {\r\n return;\r\n }\r\n\r\n this.confirmAction('markDeactivated', () => this.saveStatus(NewsStatus.deactivated));\r\n }\r\n\r\n markDraft() {\r\n if (this.model.status === NewsStatus.draft) {\r\n return;\r\n }\r\n\r\n this.confirmAction('markDraft', () => this.saveStatus(NewsStatus.draft));\r\n }\r\n\r\n delete() {\r\n if (this.model.status !== NewsStatus.draft) {\r\n return;\r\n }\r\n\r\n this.confirmModalService.openDialog(\r\n this.translateService.instant('news.edit.deleteConfirmationModal.header'),\r\n this.translateService.instant('news.edit.deleteConfirmationModal.body'),\r\n this.translateService.instant('news.edit.deleteConfirmationModal.acceptText'),\r\n this.translateService.instant('news.edit.deleteConfirmationModal.declineText')\r\n )\r\n .subscribe((result: boolean) => {\r\n if (result) {\r\n this.loadingIndicator.show();\r\n this.resource.delete(this.model.id)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe(() => this.router.navigate(['news']));\r\n }\r\n });\r\n\r\n }\r\n\r\n private loadNewsById(id: number) {\r\n this.loadingIndicator.show();\r\n this.resource.getById(id)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((news: News) => {\r\n this.model = news;\r\n this.isEditMode = false;\r\n });\r\n }\r\n\r\n private confirmAction(actionName: string, action: Function) {\r\n this.confirmModalService.openDialog(\r\n this.translateService.instant(`news.edit.${actionName}ConfirmationModal.header`),\r\n this.translateService.instant(`news.edit.${actionName}ConfirmationModal.body`),\r\n this.translateService.instant(`news.edit.${actionName}ConfirmationModal.acceptText`),\r\n this.translateService.instant(`news.edit.${actionName}ConfirmationModal.declineText`)\r\n )\r\n .subscribe((result: boolean) => {\r\n if (result) {\r\n action();\r\n }\r\n });\r\n }\r\n\r\n private saveStatus(status: NewsStatus) {\r\n this.model.status = status;\r\n this.save();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{ 'news.edit.titleEdit' | translate }}\r\n \r\n\r\n \r\n {{ 'news.edit.titlePreview' | translate }}\r\n \r\n \r\n\r\n \r\n {{ 'news.edit.titleNew' | translate }}\r\n \r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n news.edit.type\r\n \r\n \r\n {{ 'news.types.news' | translate }}\r\n \r\n \r\n {{ 'news.types.event' | translate }}\r\n \r\n \r\n {{ 'news.types.course' | translate }}\r\n \r\n \r\n {{ 'news.types.document' | translate }}\r\n \r\n \r\n \r\n {{ 'news.edit.errors.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n news.edit.publicationFromDate\r\n \r\n \r\n \r\n \r\n {{ 'news.edit.dateError' | translate }}\r\n \r\n \r\n\r\n \r\n news.edit.publicationToDate\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n news.edit.title\r\n \r\n \r\n {{ 'news.edit.errors.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n news.edit.content\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n {{ 'news.edit.link' | translate }} {{ i + 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 {{ 'news.edit.fileDescription' | translate }}\r\n \r\n \r\n\r\n
\r\n {{ 'news.edit.uploadedFile' | translate }}\r\n \r\n\r\n {{ file.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","import { Component, OnInit } from '@angular/core';\r\nimport { BaseEntitySearchComponent } from 'src/infrastructure/components/base-entity-search.component';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { NewsStatus } from '../enums/news-status.enum';\r\nimport { NewsType } from '../enums/news-type.enum';\r\nimport { News } from '../models/news.model';\r\nimport { NewsResource } from '../news.resource';\r\nimport { NewsSearchFilterService } from '../services/news-search-filter.service';\r\n\r\n@Component({\r\n selector: 'news-search',\r\n templateUrl: 'news-search.component.html'\r\n})\r\n\r\nexport class NewsSearchComponent extends BaseEntitySearchComponent implements OnInit {\r\n displayedColumns: string[] = ['actions', 'type', 'status', 'title', 'publicationFromDate', 'publicationToDate'];\r\n\r\n newsTypes = NewsType;\r\n newsStatuses = NewsStatus;\r\n\r\n constructor(\r\n public filter: NewsSearchFilterService,\r\n protected resource: NewsResource,\r\n protected loadingIndicator: LoadingIndicatorService\r\n ) {\r\n super(filter, resource, loadingIndicator);\r\n }\r\n}\r\n","\r\n \r\n \r\n \r\n search\r\n {{ 'news.search.filterPanelTitle' | translate }}\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n news.search.type\r\n \r\n \r\n {{ 'news.types.news' | translate }}\r\n \r\n \r\n {{ 'news.types.event' | translate }}\r\n \r\n \r\n {{ 'news.types.course' | translate }}\r\n \r\n \r\n {{ 'news.types.document' | translate }}\r\n \r\n \r\n \r\n\r\n \r\n news.search.status\r\n \r\n \r\n {{ 'news.statuses.draft' | translate }}\r\n \r\n \r\n {{ 'news.statuses.published' | translate }}\r\n \r\n \r\n {{ 'news.statuses.deactivated' | translate }}\r\n \r\n \r\n \r\n\r\n \r\n news.search.publicationFromDate\r\n \r\n \r\n \r\n \r\n\r\n \r\n {{ filter.publicationToDate }}\r\n news.search.publicationToDate\r\n \r\n \r\n \r\n \r\n\r\n \r\n news.search.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 \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n\r\n \r\n search\r\n \r\n \r\n {{ 'news.search.type' | translate }}\r\n \r\n {{ 'news.types.' + newsTypes[news.type] | translate }}\r\n \r\n {{ 'news.search.status' | translate }}\r\n \r\n {{ 'news.statuses.' + newsStatuses[news.status] | translate }}\r\n \r\n {{ 'news.search.title' | translate }}\r\n \r\n {{ news.title }}\r\n \r\n {{ 'news.search.publicationFromDate' | translate }}\r\n \r\n {{ news.publicationFromDate | date: 'dd.MM.yyyy' }}\r\n \r\n {{ 'news.search.publicationToDate' | translate }}\r\n \r\n {{ news.publicationToDate | date: 'dd.MM.yyyy' }}\r\n
\r\n\r\n\r\n","export enum NewsStatus {\r\n draft = 1,\r\n published = 2,\r\n deactivated = 3\r\n}\r\n","export enum NewsType {\r\n news = 1,\r\n event = 2,\r\n course = 3,\r\n document = 4\r\n}\r\n","import { AttachedFile } from 'src/infrastructure/base/models/attached-file.model';\r\nimport { News } from './news.model';\r\n\r\nexport class NewsFile extends AttachedFile {\r\n newsId: number;\r\n news: News;\r\n\r\n description: string;\r\n}\r\n","import { Entity } from 'src/infrastructure/base/models/entity.model';\r\n\r\nexport class NewsLink extends Entity {\r\n newsId: number;\r\n url: string;\r\n viewOrder: number | null;\r\n}\r\n","import { Entity } from 'src/infrastructure/base/models/entity.model';\r\nimport { NewsStatus } from '../enums/news-status.enum';\r\nimport { NewsType } from '../enums/news-type.enum';\r\nimport { NewsLink } from './news-link.model';\r\nimport { NewsFile } from './news-file.model';\r\n\r\nexport class News extends Entity {\r\n type: NewsType;\r\n\r\n title: string;\r\n content: string;\r\n\r\n publicationFromDate: Date | null;\r\n publicationToDate: Date | null;\r\n\r\n status: NewsStatus;\r\n\r\n createDate: Date | null;\r\n createdById: number;\r\n\r\n modificationDate: Date | null;\r\n modifiedByUserId: number;\r\n\r\n links: NewsLink[];\r\n\r\n files: NewsFile[];\r\n\r\n constructor() {\r\n super();\r\n\r\n this.status = NewsStatus.draft;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { AuthGuard } from 'src/infrastructure/interceptors/auth.guard';\r\nimport { NewsEditComponent } from './components/news-edit.component';\r\nimport { NewsSearchComponent } from './components/news-search.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'news',\r\n data: {\r\n title: 'app.titles.news.search'\r\n },\r\n children: [\r\n {\r\n path: '',\r\n component: NewsSearchComponent,\r\n canActivate: [AuthGuard]\r\n },\r\n {\r\n path: ':id/edit',\r\n component: NewsEditComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.news.edit'\r\n }\r\n },\r\n {\r\n path: 'new',\r\n component: NewsEditComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.news.new'\r\n }\r\n }\r\n ]\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class NewsRoutingModule { }\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { FileSelectService } from 'src/infrastructure/components/file-upload/file-select.service';\r\nimport { MaterialComponentsModule } from 'src/infrastructure/material-components.module';\r\nimport { SharedModule } from 'src/infrastructure/shared.module';\r\nimport { NewsEditComponent } from './components/news-edit.component';\r\nimport { NewsSearchComponent } from './components/news-search.component';\r\nimport { NewsRoutingModule } from './news-routing.module';\r\nimport { NewsResource } from './news.resource';\r\nimport { NewsSearchFilterService } from './services/news-search-filter.service';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n MaterialComponentsModule,\r\n NewsRoutingModule,\r\n TranslateModule,\r\n SharedModule\r\n ],\r\n declarations: [\r\n NewsSearchComponent,\r\n NewsEditComponent\r\n ],\r\n providers: [\r\n NewsSearchFilterService,\r\n NewsResource,\r\n FileSelectService\r\n ]\r\n})\r\nexport class NewsModule { }\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseEntityResource } from 'src/infrastructure/base/base-entity.resource';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { News } from './models/news.model';\r\n\r\n@Injectable()\r\nexport class NewsResource extends BaseEntityResource {\r\n constructor(\r\n protected http: HttpClient,\r\n protected configuration: Configuration\r\n ) {\r\n super(http, configuration, \"News\");\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseEntityFilterService } from 'src/infrastructure/base/interfaces/base-entity-filter.service';\r\nimport { NewsStatus } from '../enums/news-status.enum';\r\nimport { NewsType } from '../enums/news-type.enum';\r\n\r\n@Injectable()\r\nexport class NewsSearchFilterService extends BaseEntityFilterService {\r\n type: NewsType | null;\r\n\r\n status: NewsStatus | null;\r\n\r\n title: string;\r\n\r\n publicationFromDate: Date | null;\r\n publicationToDate: Date | null;\r\n\r\n constructor() {\r\n super(10);\r\n }\r\n\r\n clear() {\r\n this.limit = 10;\r\n this.offset = 0;\r\n\r\n this.type = null;\r\n this.status = null;\r\n\r\n this.title = null;\r\n\r\n this.publicationFromDate = null;\r\n this.publicationToDate = null;\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { AccessRight } from '../models/access-right.model';\r\nimport { NomenclatureResource } from '../nomenclature.resource';\r\nimport { BaseNomenclatureComponent } from './base-nomenclature.component';\r\n\r\n@Component({\r\n selector: 'access-rights',\r\n templateUrl: 'access-rights.component.html'\r\n})\r\nexport class AccessRightsComponent extends BaseNomenclatureComponent implements OnInit {\r\n constructor(\r\n protected resource: NomenclatureResource,\r\n protected dialog: MatDialog,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n protected confirmModalService: ConfirmModalService,\r\n protected translateService: TranslateService\r\n ) {\r\n super(resource, dialog, loadingIndicator, confirmModalService, translateService);\r\n }\r\n\r\n ngOnInit() {\r\n this.init(AccessRight, 'AccessRight');\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{ 'nomenclatures.base.name' | translate }}\r\n \r\n {{ 'nomenclatures.base.nameEn' | translate }}\r\n \r\n {{ 'nomenclatures.base.uri' | translate }}\r\n \r\n {{ 'nomenclatures.base.alias' | translate }}\r\n \r\n {{ 'nomenclatures.base.isActive' | translate }}\r\n \r\n \r\n
\r\n {{ item.name }}\r\n \r\n \r\n
\r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n
\r\n
\r\n
\r\n {{ item.nameEn }}\r\n \r\n \r\n
\r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n
\r\n
\r\n
\r\n {{ item.uri }}\r\n \r\n \r\n
\r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n
\r\n
\r\n
\r\n {{ item.alias }}\r\n \r\n \r\n
\r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n
\r\n
\r\n
\r\n {{ item.isActive ? 'check' : 'cancel' }}\r\n \r\n \r\n \r\n \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, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { AudienceType } from '../models/audience-type.model';\r\nimport { NomenclatureResource } from '../nomenclature.resource';\r\nimport { BaseNomenclatureComponent } from './base-nomenclature.component';\r\n\r\n@Component({\r\n selector: 'relation-types',\r\n templateUrl: 'foreign-name-nomenclature.component.html'\r\n})\r\nexport class AudienceTypesComponent extends BaseNomenclatureComponent\r\n implements OnInit {\r\n\r\n constructor(\r\n protected resource: NomenclatureResource,\r\n protected dialog: MatDialog,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n protected confirmModalService: ConfirmModalService,\r\n protected translateService: TranslateService\r\n ) {\r\n super(resource, dialog, loadingIndicator, confirmModalService, translateService);\r\n }\r\n\r\n ngOnInit() {\r\n this.init(AudienceType, 'AudienceType');\r\n }\r\n\r\n}\r\n","
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n {{ 'nomenclatures.base.name' | translate }}\r\n \r\n {{ 'nomenclatures.base.nameEn' | translate }}\r\n \r\n {{ 'nomenclatures.base.alias' | translate }}\r\n \r\n {{ 'nomenclatures.base.isActive' | translate }}\r\n \r\n \r\n
\r\n {{ item.name }}\r\n \r\n \r\n
\r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n
\r\n
\r\n
\r\n {{ item.nameEn }}\r\n \r\n \r\n
\r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n
\r\n
\r\n
\r\n {{ item.alias }}\r\n \r\n \r\n
\r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n
\r\n
\r\n
\r\n {{ item.isActive ? 'check' : 'cancel' }}\r\n \r\n \r\n \r\n \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 { Directive } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { Nomenclature } from 'src/infrastructure/base/models/nomenclature.model';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { BaseNomenclatureFilterDto } from '../dtos/base-nomenclature-filter.dto';\r\nimport { NomenclatureResource } from '../nomenclature.resource';\r\n\r\n@Directive({})\r\nexport class BaseNomenclatureComponent {\r\n model: T[] = [];\r\n\r\n private type: (new () => T);\r\n\r\n constructor(\r\n protected resource: NomenclatureResource,\r\n protected dialog: MatDialog,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n protected confirmModalService: ConfirmModalService,\r\n protected translateService: TranslateService\r\n ) {\r\n }\r\n\r\n protected init(type: (new () => T), prefix: string) {\r\n this.type = type;\r\n this.resource.setSuffix(prefix);\r\n\r\n let filter = new BaseNomenclatureFilterDto();\r\n filter.includeInactive = true;\r\n\r\n this.loadingIndicator.show();\r\n this.resource.getFiltered(filter)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((model: T[]) => this.model = model);\r\n }\r\n\r\n add() {\r\n if (this.model.filter(e => e.isEditMode).length) {\r\n return;\r\n }\r\n\r\n const newEntity = new this.type();\r\n newEntity.isActive = true;\r\n newEntity.isEditMode = true;\r\n\r\n this.model.unshift(newEntity);\r\n }\r\n\r\n edit(item: T) {\r\n item.originalObject = Object.assign({}, item);\r\n item.isEditMode = true;\r\n }\r\n\r\n cancel(item: T, index: number) {\r\n if (!item.id) {\r\n this.model.splice(index, 1);\r\n } else {\r\n Object.keys(item).forEach(key => {\r\n if (key !== 'originalObject') {\r\n item[key] = item.originalObject[key];\r\n }\r\n });\r\n\r\n item.isEditMode = false;\r\n item.originalObject = null;\r\n }\r\n }\r\n\r\n save(item: T, index: number) {\r\n item.originalObject = null;\r\n\r\n let observable = this.resource.add(item);\r\n this.loadingIndicator.show();\r\n if (item.id) {\r\n observable = this.resource.update(item.id, item);\r\n }\r\n\r\n observable\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((result: T) => this.model[index] = result);\r\n }\r\n\r\n delete(id: number, index: number) {\r\n this.confirmModalService.openDialog(\r\n this.translateService.instant('nomenclatures.deleteConfirmationModal.header'),\r\n this.translateService.instant('nomenclatures.deleteConfirmationModal.body'),\r\n this.translateService.instant('nomenclatures.deleteConfirmationModal.acceptText'),\r\n this.translateService.instant('nomenclatures.deleteConfirmationModal.declineText')\r\n )\r\n .subscribe((result: boolean) => {\r\n if (result) {\r\n this.loadingIndicator.show();\r\n this.resource.delete(id)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe(() => this.model.splice(index, 1));\r\n }\r\n });\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { ContributorType } from '../models/contributor-type.model';\r\nimport { NomenclatureResource } from '../nomenclature.resource';\r\nimport { BaseNomenclatureComponent } from './base-nomenclature.component';\r\n\r\n@Component({\r\n selector: 'contributor-types',\r\n templateUrl: 'foreign-name-nomenclature.component.html'\r\n})\r\nexport class ContributorTypesComponent extends BaseNomenclatureComponent\r\n implements OnInit {\r\n\r\n constructor(\r\n protected resource: NomenclatureResource,\r\n protected dialog: MatDialog,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n protected confirmModalService: ConfirmModalService,\r\n protected translateService: TranslateService\r\n ) {\r\n super(resource, dialog, loadingIndicator, confirmModalService, translateService);\r\n }\r\n\r\n ngOnInit() {\r\n this.init(ContributorType, 'ContributorType');\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { ResourceTypeGeneral } from '../models/resource-type-general.model';\r\nimport { NomenclatureResource } from '../nomenclature.resource';\r\nimport { BaseNomenclatureComponent } from './base-nomenclature.component';\r\n\r\n@Component({\r\n selector: 'general-resource-types',\r\n templateUrl: 'foreign-name-nomenclature.component.html'\r\n})\r\nexport class GeneralResourceTypesComponent extends BaseNomenclatureComponent\r\n implements OnInit {\r\n\r\n constructor(\r\n protected resource: NomenclatureResource,\r\n protected dialog: MatDialog,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n protected confirmModalService: ConfirmModalService,\r\n protected translateService: TranslateService\r\n ) {\r\n super(resource, dialog, loadingIndicator, confirmModalService, translateService);\r\n }\r\n\r\n ngOnInit() {\r\n this.init(ResourceTypeGeneral, 'ResourceTypeGeneral');\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { ResourceIdentifierType } from '../models/resource-identifier-type.model';\r\nimport { NomenclatureResource } from '../nomenclature.resource';\r\nimport { BaseNomenclatureComponent } from './base-nomenclature.component';\r\n\r\n@Component({\r\n selector: 'resource-identifier-types',\r\n templateUrl: 'identifier-types.component.html'\r\n})\r\nexport class ResourceIdentifierTypesComponent extends BaseNomenclatureComponent\r\n implements OnInit {\r\n\r\n constructor(\r\n protected resource: NomenclatureResource,\r\n protected dialog: MatDialog,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n protected confirmModalService: ConfirmModalService,\r\n protected translateService: TranslateService\r\n ) {\r\n super(resource, dialog, loadingIndicator, confirmModalService, translateService);\r\n }\r\n\r\n ngOnInit() {\r\n this.init(ResourceIdentifierType, 'ResourceIdentifierType');\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n
\r\n {{ 'nomenclatures.base.name' | translate }}\r\n \r\n {{ 'nomenclatures.base.alias' | translate }}\r\n \r\n {{ 'nomenclatures.identifierTypes.isPrimary' | translate }}\r\n \r\n {{ 'nomenclatures.base.isActive' | translate }}\r\n \r\n \r\n
\r\n {{ item.name }}\r\n \r\n \r\n
\r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n
\r\n
\r\n
\r\n {{ item.alias }}\r\n \r\n \r\n
\r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n
\r\n
\r\n
\r\n {{ item.isPrimary ? 'check' : 'cancel' }}\r\n \r\n \r\n {{ item.isActive ? 'check' : 'cancel' }}\r\n \r\n \r\n \r\n \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, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { Language } from '../models/language.model';\r\nimport { NomenclatureResource } from '../nomenclature.resource';\r\nimport { BaseNomenclatureComponent } from './base-nomenclature.component';\r\n\r\n@Component({\r\n selector: 'languages',\r\n templateUrl: 'foreign-name-nomenclature.component.html'\r\n})\r\nexport class LanguagesComponent extends BaseNomenclatureComponent\r\n implements OnInit {\r\n\r\n constructor(\r\n protected resource: NomenclatureResource,\r\n protected dialog: MatDialog,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n protected confirmModalService: ConfirmModalService,\r\n protected translateService: TranslateService\r\n ) {\r\n super(resource, dialog, loadingIndicator, confirmModalService, translateService);\r\n }\r\n\r\n ngOnInit() {\r\n this.init(Language, 'Language');\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { LicenseType } from '../models/license-type.model';\r\nimport { NomenclatureResource } from '../nomenclature.resource';\r\nimport { BaseNomenclatureComponent } from './base-nomenclature.component';\r\n\r\n@Component({\r\n selector: 'license-types',\r\n templateUrl: 'license-types.component.html'\r\n})\r\nexport class LicenseTypesComponent extends BaseNomenclatureComponent\r\n implements OnInit {\r\n\r\n constructor(\r\n protected resource: NomenclatureResource,\r\n protected dialog: MatDialog,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n protected confirmModalService: ConfirmModalService,\r\n protected translateService: TranslateService\r\n ) {\r\n super(resource, dialog, loadingIndicator, confirmModalService, translateService);\r\n }\r\n\r\n ngOnInit() {\r\n this.init(LicenseType, 'LicenseType');\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{ 'nomenclatures.base.name' | translate }}\r\n \r\n {{ 'nomenclatures.base.uri' | translate }}\r\n \r\n {{ 'nomenclatures.base.alias' | translate }}\r\n \r\n {{ 'nomenclatures.base.isActive' | translate }}\r\n \r\n \r\n
\r\n {{ item.name }}\r\n \r\n \r\n
\r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n
\r\n
\r\n
\r\n {{ item.uri }}\r\n \r\n \r\n
\r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n
\r\n
\r\n
\r\n {{ item.alias }}\r\n \r\n \r\n
\r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n
\r\n
\r\n
\r\n {{ item.isActive ? 'check' : 'cancel' }}\r\n \r\n \r\n \r\n \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, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { NameIdentifierScheme } from '../models/name-identifier-scheme.model';\r\nimport { NomenclatureResource } from '../nomenclature.resource';\r\nimport { BaseNomenclatureComponent } from './base-nomenclature.component';\r\n\r\n@Component({\r\n selector: 'name-identifiers',\r\n templateUrl: 'name-identifiers.component.html'\r\n})\r\nexport class NameIdentifiersComponent extends BaseNomenclatureComponent\r\n implements OnInit {\r\n\r\n constructor(\r\n protected resource: NomenclatureResource,\r\n protected dialog: MatDialog,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n protected confirmModalService: ConfirmModalService,\r\n protected translateService: TranslateService\r\n ) {\r\n super(resource, dialog, loadingIndicator, confirmModalService, translateService);\r\n }\r\n\r\n ngOnInit() {\r\n this.init(NameIdentifierScheme, 'NameIdentifierScheme');\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n {{ 'nomenclatures.nameIdentifiers.name' | translate }}\r\n \r\n {{ 'nomenclatures.base.uri' | translate }}\r\n \r\n {{ 'nomenclatures.base.isActive' | translate }}\r\n \r\n \r\n
\r\n {{ item.name }}\r\n \r\n \r\n
\r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n
\r\n
\r\n
\r\n {{ item.uri }}\r\n \r\n \r\n
\r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n
\r\n
\r\n
\r\n {{ item.isActive ? 'check' : 'cancel' }}\r\n \r\n \r\n \r\n \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\n\r\n@Component({\r\n selector: 'app-nomenclatures',\r\n templateUrl: 'nomenclature.component.html'\r\n})\r\n\r\nexport class NomenclatureComponent {\r\n navLinks: any[] = [\r\n {\r\n path: 'resourceTypes',\r\n label: 'nomenclatures.labels.resourceTypes'\r\n },\r\n {\r\n path: 'generalResourceTypes',\r\n label: 'nomenclatures.labels.generalResourceTypes'\r\n },\r\n {\r\n path: 'resourceIdentifierTypes',\r\n label: 'nomenclatures.labels.resourceIdentifierTypes'\r\n },\r\n {\r\n path: 'nameIdentifiers',\r\n label: 'nomenclatures.labels.nameIdentifiers'\r\n },\r\n {\r\n path: 'organizationalIdentifiers',\r\n label: 'nomenclatures.labels.organizationalIdentifiers'\r\n },\r\n {\r\n path: 'relationTypes',\r\n label: 'nomenclatures.labels.relationTypes'\r\n },\r\n {\r\n path: 'titleTypes',\r\n label: 'nomenclatures.labels.titleTypes'\r\n },\r\n {\r\n path: 'languages',\r\n label: 'nomenclatures.labels.languages'\r\n },\r\n {\r\n path: 'contributorTypes',\r\n label: 'nomenclatures.labels.contributorTypes'\r\n },\r\n {\r\n path: 'licenseTypes',\r\n label: 'nomenclatures.labels.licenseTypes'\r\n },\r\n {\r\n path: 'accessRights',\r\n label: 'nomenclatures.labels.accessRights'\r\n },\r\n {\r\n path: 'audienceTypes',\r\n label: 'nomenclatures.labels.audienceTypes'\r\n }\r\n ];\r\n}\r\n","\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { OrganizationalIdentifierScheme } from '../models/organizational-identifier-scheme.model';\r\nimport { NomenclatureResource } from '../nomenclature.resource';\r\nimport { BaseNomenclatureComponent } from './base-nomenclature.component';\r\n\r\n@Component({\r\n selector: 'organizational-identifiers',\r\n templateUrl: 'organizational-identifiers.component.html'\r\n})\r\nexport class OrganizationalIdentifiersComponent extends BaseNomenclatureComponent\r\n implements OnInit {\r\n\r\n constructor(\r\n protected resource: NomenclatureResource,\r\n protected dialog: MatDialog,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n protected confirmModalService: ConfirmModalService,\r\n protected translateService: TranslateService\r\n ) {\r\n super(resource, dialog, loadingIndicator, confirmModalService, translateService);\r\n }\r\n\r\n ngOnInit() {\r\n this.init(OrganizationalIdentifierScheme, 'OrganizationalIdentifierScheme');\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{ 'nomenclatures.organizationalIdentifiers.name' | translate }}\r\n \r\n {{ 'nomenclatures.base.uri' | translate }}\r\n \r\n {{ 'nomenclatures.base.alias' | translate }}\r\n \r\n {{ 'nomenclatures.base.isActive' | translate }}\r\n \r\n \r\n
\r\n {{ item.name }}\r\n \r\n \r\n
\r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n
\r\n
\r\n
\r\n {{ item.uri }}\r\n \r\n \r\n
\r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n
\r\n
\r\n
\r\n {{ item.alias }}\r\n \r\n \r\n
\r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n
\r\n
\r\n
\r\n {{ item.isActive ? 'check' : 'cancel' }}\r\n \r\n \r\n \r\n \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, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { RelationType } from '../models/relation-type.model';\r\nimport { NomenclatureResource } from '../nomenclature.resource';\r\nimport { BaseNomenclatureComponent } from './base-nomenclature.component';\r\n@Component({\r\n selector: 'relation-types',\r\n templateUrl: 'foreign-name-nomenclature.component.html'\r\n})\r\n\r\nexport class RelationTypesComponent extends BaseNomenclatureComponent\r\n implements OnInit {\r\n\r\n constructor(\r\n protected resource: NomenclatureResource,\r\n protected dialog: MatDialog,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n protected confirmModalService: ConfirmModalService,\r\n protected translateService: TranslateService\r\n ) {\r\n super(resource, dialog, loadingIndicator, confirmModalService, translateService);\r\n }\r\n\r\n ngOnInit() {\r\n this.init(RelationType, 'RelationType');\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { ResourceType } from '../models/resource-type.model';\r\nimport { NomenclatureResource } from '../nomenclature.resource';\r\nimport { BaseNomenclatureComponent } from './base-nomenclature.component';\r\n\r\n@Component({\r\n selector: 'resource-types',\r\n templateUrl: 'foreign-name-nomenclature.component.html'\r\n})\r\nexport class ResourceTypesComponent extends BaseNomenclatureComponent\r\n implements OnInit {\r\n\r\n constructor(\r\n protected resource: NomenclatureResource,\r\n protected dialog: MatDialog,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n protected confirmModalService: ConfirmModalService,\r\n protected translateService: TranslateService\r\n ) {\r\n super(resource, dialog, loadingIndicator, confirmModalService, translateService);\r\n }\r\n\r\n ngOnInit() {\r\n this.init(ResourceType, 'ResourceType');\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { TitleType } from '../models/title-type.model';\r\nimport { NomenclatureResource } from '../nomenclature.resource';\r\nimport { BaseNomenclatureComponent } from './base-nomenclature.component';\r\n\r\n@Component({\r\n selector: 'title-types',\r\n templateUrl: 'foreign-name-nomenclature.component.html'\r\n})\r\nexport class TitleTypesComponent extends BaseNomenclatureComponent\r\n implements OnInit {\r\n\r\n constructor(\r\n protected resource: NomenclatureResource,\r\n protected dialog: MatDialog,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n protected confirmModalService: ConfirmModalService,\r\n protected translateService: TranslateService\r\n ) {\r\n super(resource, dialog, loadingIndicator, confirmModalService, translateService);\r\n }\r\n\r\n ngOnInit() {\r\n this.init(TitleType, 'TitleType');\r\n }\r\n\r\n}\r\n","export class BaseNomenclatureFilterDto {\r\n limit: number | null;\r\n offset: number | null;\r\n\r\n textFilter: string;\r\n\r\n includeInactive: boolean | null;\r\n}\r\n","import { AliasNomenclature } from 'src/infrastructure/base/models/alias-nomenclature.model';\r\n\r\nexport class AccessRight extends AliasNomenclature {\r\n nameEn: string;\r\n uri: string;\r\n}\r\n","import { AliasNomenclature } from 'src/infrastructure/base/models/alias-nomenclature.model';\r\n\r\nexport class AudienceType extends AliasNomenclature {\r\n nameEn: string;\r\n}\r\n","import { AliasNomenclature } from 'src/infrastructure/base/models/alias-nomenclature.model';\r\n\r\nexport class ContributorType extends AliasNomenclature {\r\n nameEn: string;\r\n}\r\n","import { AliasNomenclature } from 'src/infrastructure/base/models/alias-nomenclature.model';\r\n\r\nexport class Language extends AliasNomenclature {\r\n nameEn: string;\r\n}\r\n","import { AliasNomenclature } from 'src/infrastructure/base/models/alias-nomenclature.model';\r\n\r\nexport class LicenseType extends AliasNomenclature {\r\n uri: string;\r\n}\r\n","import { AliasNomenclature } from \"src/infrastructure/base/models/alias-nomenclature.model\";\r\n\r\nexport class NameIdentifierScheme extends AliasNomenclature {\r\n uri: string;\r\n valueMask: string;\r\n}\r\n","import { AliasNomenclature } from 'src/infrastructure/base/models/alias-nomenclature.model';\r\n\r\nexport class OrganizationalIdentifierScheme extends AliasNomenclature {\r\n uri: string;\r\n}\r\n","import { AliasNomenclature } from 'src/infrastructure/base/models/alias-nomenclature.model';\r\n\r\nexport class RelationType extends AliasNomenclature {\r\n nameEn: string;\r\n}\r\n","import { AliasNomenclature } from 'src/infrastructure/base/models/alias-nomenclature.model';\r\n\r\nexport class ResourceIdentifierType extends AliasNomenclature {\r\n isPrimary: boolean;\r\n}\r\n","import { AliasNomenclature } from 'src/infrastructure/base/models/alias-nomenclature.model';\r\n\r\nexport class ResourceTypeGeneral extends AliasNomenclature {\r\n nameEn: string;\r\n}\r\n","import { AliasNomenclature } from 'src/infrastructure/base/models/alias-nomenclature.model';\r\n\r\nexport class ResourceType extends AliasNomenclature {\r\n nameEn: string;\r\n}\r\n","import { AliasNomenclature } from 'src/infrastructure/base/models/alias-nomenclature.model';\r\n\r\nexport class TitleType extends AliasNomenclature {\r\n nameEn: string;\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { AuthGuard } from 'src/infrastructure/interceptors/auth.guard';\r\nimport { AccessRightsComponent } from './components/access-rights.component';\r\nimport { AudienceTypesComponent } from './components/audience-types.component';\r\nimport { ContributorTypesComponent } from './components/contributor-types.component';\r\nimport { GeneralResourceTypesComponent } from './components/general-resource-types.component';\r\nimport { ResourceIdentifierTypesComponent } from './components/identifier-types.component';\r\nimport { LanguagesComponent } from './components/languages.component';\r\nimport { LicenseTypesComponent } from './components/license-types.component';\r\nimport { NameIdentifiersComponent } from './components/name-identifiers.component';\r\nimport { NomenclatureComponent } from './components/nomenclature.component';\r\nimport { OrganizationalIdentifiersComponent } from './components/organizational-identifiers.component';\r\nimport { RelationTypesComponent } from './components/relation-types.component';\r\nimport { ResourceTypesComponent } from './components/resource-types.component';\r\nimport { TitleTypesComponent } from './components/title-types.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'nomenclatures',\r\n component: NomenclatureComponent,\r\n data: {\r\n title: 'app.titles.nomenclatures.base'\r\n },\r\n children: [\r\n {\r\n path: '',\r\n redirectTo: 'resourceTypes',\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: 'resourceTypes',\r\n component: ResourceTypesComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.nomenclatures.resourceTypes'\r\n }\r\n },\r\n {\r\n path: 'generalResourceTypes',\r\n component: GeneralResourceTypesComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.nomenclatures.generalResourceTypes'\r\n }\r\n },\r\n {\r\n path: 'resourceIdentifierTypes',\r\n component: ResourceIdentifierTypesComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.nomenclatures.resourceIdentifierTypes'\r\n }\r\n },\r\n {\r\n path: 'nameIdentifiers',\r\n component: NameIdentifiersComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.nomenclatures.nameIdentifiers'\r\n }\r\n },\r\n {\r\n path: 'relationTypes',\r\n component: RelationTypesComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.nomenclatures.relationTypes'\r\n }\r\n },\r\n {\r\n path: 'organizationalIdentifiers',\r\n component: OrganizationalIdentifiersComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.nomenclatures.organizationalIdentifiers'\r\n }\r\n },\r\n {\r\n path: 'titleTypes',\r\n component: TitleTypesComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.nomenclatures.titleTypes'\r\n }\r\n },\r\n {\r\n path: 'languages',\r\n component: LanguagesComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.nomenclatures.languages'\r\n }\r\n },\r\n {\r\n path: 'contributorTypes',\r\n component: ContributorTypesComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.nomenclatures.contributorTypes'\r\n }\r\n },\r\n {\r\n path: 'licenseTypes',\r\n component: LicenseTypesComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.nomenclatures.licenseTypes'\r\n }\r\n },\r\n {\r\n path: 'accessRights',\r\n component: AccessRightsComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.nomenclatures.accessRights'\r\n }\r\n },\r\n {\r\n path: 'audienceTypes',\r\n component: AudienceTypesComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.nomenclatures.audienceTypes'\r\n }\r\n }\r\n ]\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class NomenclatureRoutingModule { }\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { MaterialComponentsModule } from 'src/infrastructure/material-components.module';\r\nimport { ViewOrderPipe } from 'src/infrastructure/pipes/view-order.pipe';\r\nimport { SharedModule } from 'src/infrastructure/shared.module';\r\nimport { AccessRightsComponent } from './components/access-rights.component';\r\nimport { AudienceTypesComponent } from './components/audience-types.component';\r\nimport { ContributorTypesComponent } from './components/contributor-types.component';\r\nimport { GeneralResourceTypesComponent } from './components/general-resource-types.component';\r\nimport { ResourceIdentifierTypesComponent } from './components/identifier-types.component';\r\nimport { LanguagesComponent } from './components/languages.component';\r\nimport { LicenseTypesComponent } from './components/license-types.component';\r\nimport { NameIdentifiersComponent } from './components/name-identifiers.component';\r\nimport { NomenclatureComponent } from './components/nomenclature.component';\r\nimport { OrganizationalIdentifiersComponent } from './components/organizational-identifiers.component';\r\nimport { RelationTypesComponent } from './components/relation-types.component';\r\nimport { ResourceTypesComponent } from './components/resource-types.component';\r\nimport { TitleTypesComponent } from './components/title-types.component';\r\nimport { NomenclatureRoutingModule } from './nomenclature-routing.module';\r\nimport { NomenclatureResource } from './nomenclature.resource';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n MaterialComponentsModule,\r\n NomenclatureRoutingModule,\r\n TranslateModule,\r\n SharedModule\r\n ],\r\n declarations: [\r\n NomenclatureComponent,\r\n ResourceTypesComponent,\r\n GeneralResourceTypesComponent,\r\n ResourceIdentifierTypesComponent,\r\n NameIdentifiersComponent,\r\n OrganizationalIdentifiersComponent,\r\n RelationTypesComponent,\r\n TitleTypesComponent,\r\n LanguagesComponent,\r\n ContributorTypesComponent,\r\n LicenseTypesComponent,\r\n AccessRightsComponent,\r\n AudienceTypesComponent,\r\n ViewOrderPipe\r\n ],\r\n providers: [\r\n NomenclatureResource\r\n ]\r\n})\r\nexport class NomenclatureModule { }\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { BaseResource } from 'src/infrastructure/base/base.resource';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { Nomenclature } from 'src/infrastructure/base/models/nomenclature.model';\r\nimport { BaseNomenclatureFilterDto } from './dtos/base-nomenclature-filter.dto';\r\n\r\n@Injectable()\r\nexport class NomenclatureResource extends BaseResource {\r\n constructor(\r\n protected http: HttpClient,\r\n protected configuration: Configuration\r\n ) {\r\n super(http, configuration);\r\n }\r\n\r\n getFiltered(filter?: BaseNomenclatureFilterDto): Observable {\r\n return this.http.get(`${this.getBaseUrl()}${this.composeQueryString(filter)}`);\r\n }\r\n\r\n add(entity: T): Observable {\r\n return this.http.post(this.baseUrl, entity);\r\n }\r\n\r\n update(id: number, entity: T): Observable {\r\n return this.http.put(`${this.baseUrl}/${id}`, entity);\r\n }\r\n\r\n delete(id: number): Observable {\r\n return this.http.delete(`${this.baseUrl}/${id}`);\r\n }\r\n}\r\n","import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';\r\nimport { MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\n\r\n@Component({\r\n selector: 'existing-publications-modal',\r\n templateUrl: './existing-publications-modal.component.html',\r\n styleUrls: ['./existing-publications-modal.styes.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class ExistingPublicationsModalComponent {\r\n public portalUrl: string;\r\n public previewLinkUrl: string;\r\n\r\n public displayedColumns = ['actions', 'title', 'authors', 'resourceType', 'institution'];\r\n\r\n constructor(\r\n private configuration: Configuration,\r\n public translateService: TranslateService,\r\n @Inject(MAT_DIALOG_DATA) public data: { existingPublications: any, noResultText: string },\r\n ) {\r\n this.portalUrl = this.configuration.portalUrl;\r\n this.previewLinkUrl = `${this.configuration.portalUrl}/${this.configuration.portalPublicationPreviewRoute}/`;\r\n }\r\n}\r\n","\r\n
\r\n
\r\n \r\n search\r\n \r\n
\r\n {{ data.noResultText | translate }}\r\n
\r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n\r\n \r\n search\r\n \r\n \r\n {{ 'publication.existingPublicationsModal.titleCol' | translate }}\r\n \r\n
\r\n {{\r\n (translateService.currentLang === translateService.defaultLang || !item.title.nameEn)\r\n ? item.title.name\r\n : item.title.nameEn\r\n }}\r\n
\r\n
\r\n {{ 'publication.existingPublicationsModal.creatorsCol' | translate }}\r\n \r\n
\r\n {{ author }}\r\n
\r\n
\r\n {{ 'publication.existingPublicationsModal.resourceTypeCol' | translate }}\r\n \r\n
\r\n {{ translateService.currentLang === translateService.defaultLang\r\n ? item.resourceType.name\r\n : item.resourceType.nameEn\r\n }}\r\n
\r\n
\r\n {{ 'publication.existingPublicationsModal.institutionNameCol' | translate }}\r\n \r\n
\r\n {{ translateService.currentLang === translateService.defaultLang\r\n ? item.institution.name\r\n : item.institution.nameEn\r\n }}\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { PublicationActionHistoryDto } from '../../dtos/publication-action-history.dto';\r\nimport { PublicationActionType } from '../../enums/publication-action-type.enum';\r\nimport { PublicationActionHistoryResource } from '../../resources/publication-action-history.resource';\r\n\r\n@Component({\r\n selector: 'publication-actions-history',\r\n templateUrl: './publication-actions-history.component.html'\r\n})\r\nexport class PublicationActionsHistoryComponent implements OnInit {\r\n model: PublicationActionHistoryDto[] = [];\r\n loading = false;\r\n\r\n publicationActionTypes = PublicationActionType;\r\n\r\n displayedColumns = ['date', 'type', 'user', 'note'];\r\n\r\n constructor(\r\n @Inject(MAT_DIALOG_DATA) private data: { publicationId: number },\r\n private resource: PublicationActionHistoryResource,\r\n private loadingIndicator: LoadingIndicatorService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.loading = true;\r\n this.loadingIndicator.show();\r\n this.resource.getPublicationActionsHistory(this.data.publicationId)\r\n .pipe(\r\n finalize(() => {\r\n this.loadingIndicator.hide();\r\n this.loading = false;\r\n })\r\n )\r\n .subscribe((model: PublicationActionHistoryDto[]) => this.model = model);\r\n }\r\n}\r\n","

\r\n {{ 'publication.actionsHistory.header' | translate }}\r\n

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

\r\n {{ 'publication.actionsHistory.noDataMessage' | translate }}\r\n

\r\n\r\n 0\"\r\n mat-table\r\n [dataSource]=\"model\"\r\n class=\"search-table mat-elevation-z4\">\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n {{ 'publication.actionsHistory.dateTh' | translate }}\r\n \r\n {{ item.date | localTime | date: 'dd.MM.yyyy HH:mm'}}\r\n \r\n {{ 'publication.actionsHistory.typeTh' | translate }}\r\n \r\n {{ 'publication.actionsHistory.statuses.' + publicationActionTypes[item.type] | translate }}\r\n \r\n {{ 'publication.actionsHistory.userTh' | translate }}\r\n \r\n {{ item.user }}\r\n \r\n {{ 'publication.actionsHistory.noteTh' | translate }}\r\n \r\n {{ item.note }}\r\n
\r\n
\r\n\r\n\r\n \r\n\r\n","import { Directive, EventEmitter, Input, Output } from '@angular/core';\r\nimport { PublicationEntity } from 'src/modules/publication/models/publication-entity.model';\r\n\r\n@Directive({})\r\nexport class MultiplePublicationEntityBaseComponent {\r\n collection: T[];\r\n\r\n @Input('collection') set collectionSetter(value: T[]) {\r\n this.collection = value || [];\r\n this.collection.forEach((item: T, index: number) => item.uniqueId = index + Date.now());\r\n }\r\n @Output() collectionChange: EventEmitter = new EventEmitter();\r\n\r\n @Input() isExpanded = true;\r\n\r\n @Input() disabled = true;\r\n\r\n private type: new () => T;\r\n\r\n constructor(type: new () => T) {\r\n this.type = type;\r\n }\r\n\r\n add() {\r\n const newItem = new this.type();\r\n newItem.viewOrder = this.collection && this.collection.length\r\n ? this.collection[this.collection.length - 1].viewOrder + 1\r\n : 1;\r\n newItem.uniqueId = Date.now();\r\n\r\n this.collection.push(newItem);\r\n this.collectionChange.emit(this.collection);\r\n }\r\n\r\n remove(index: number) {\r\n this.collection.splice(index, 1);\r\n this.collectionChange.emit(this.collection);\r\n }\r\n}\r\n","import { AfterViewInit, Component, EventEmitter, Output, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { PublicationAlternateIdentifier } from 'src/modules/publication/models/publication-alternate-identifier.model';\r\nimport { MultiplePublicationEntityBaseComponent } from './multiple-publication-entity-base.component';\r\n\r\n@Component({\r\n selector: 'publication-alternate-identifiers',\r\n templateUrl: 'publication-alternate-identifiers.component.html'\r\n})\r\n\r\nexport class PublicationAlternateIdentifiersComponent extends MultiplePublicationEntityBaseComponent\r\n implements AfterViewInit {\r\n\r\n @ViewChild('alternateIdentifiersForm') alternateIdentifiersForm: NgForm;\r\n\r\n @Output() isValidForm: EventEmitter = new EventEmitter();\r\n @Output() isDirtyForm: EventEmitter = new EventEmitter();\r\n\r\n constructor() {\r\n super(PublicationAlternateIdentifier);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.alternateIdentifiersForm.statusChanges.subscribe(() => {\r\n this.isValidForm.emit(this.alternateIdentifiersForm.valid);\r\n this.isDirtyForm.emit(this.alternateIdentifiersForm.dirty);\r\n });\r\n }\r\n}\r\n","\r\n \r\n \r\n
\r\n {{ 'publication.alternateIdentifiersPanel.title' | translate }}\r\n
\r\n {{ 'publication.alternateIdentifiersPanel.titleHint' | translate }}\r\n
\r\n
\r\n \r\n {{ 'publication.cardinality.recommended' | translate }}\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n publication.noResults\r\n
\r\n\r\n \r\n
\r\n \r\n publication.alternateIdentifiersPanel.value\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\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 { AfterViewInit, Component, EventEmitter, Output, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { PublicationAudience } from 'src/modules/publication/models/publication-audience.model';\r\nimport { MultiplePublicationEntityBaseComponent } from './multiple-publication-entity-base.component';\r\n\r\n@Component({\r\n selector: 'publication-audiences',\r\n templateUrl: 'publication-audiences.component.html'\r\n})\r\n\r\nexport class PublicationAudiencesComponent extends MultiplePublicationEntityBaseComponent\r\n implements AfterViewInit {\r\n\r\n @ViewChild('audiencesForm') audiencesForm: NgForm;\r\n\r\n @Output() isValidForm: EventEmitter = new EventEmitter();\r\n @Output() isDirtyForm: EventEmitter = new EventEmitter();\r\n\r\n constructor() {\r\n super(PublicationAudience);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.audiencesForm.statusChanges.subscribe(() => {\r\n this.isValidForm.emit(this.audiencesForm.valid);\r\n this.isDirtyForm.emit(this.audiencesForm.dirty);\r\n });\r\n }\r\n}\r\n","\r\n \r\n \r\n
\r\n {{ 'publication.audiencesPanel.title' | translate }}\r\n
\r\n {{ 'publication.audiencesPanel.titleHint' | translate }}\r\n
\r\n
\r\n \r\n {{ 'publication.cardinality.optional' | translate }}\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n publication.noResults\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\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 { AfterViewInit, Component, EventEmitter, Output, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NameType } from 'src/modules/publication/enums/name-type.enum';\r\nimport { PublicationContributorIdentifier } from 'src/modules/publication/models/publication-contributor-identifier.model';\r\nimport { PublicationContributor } from 'src/modules/publication/models/publication-contributor.model';\r\nimport { PublicationAffiliationSelectComponent } from '../publication-affiliation-select.component';\r\nimport { MultiplePublicationEntityBaseComponent } from './multiple-publication-entity-base.component';\r\n\r\n@Component({\r\n selector: 'publication-contributors',\r\n templateUrl: 'publication-contributors.component.html'\r\n})\r\n\r\nexport class PublicationContributorsComponent\r\n extends MultiplePublicationEntityBaseComponent\r\n implements AfterViewInit {\r\n\r\n @ViewChild('contributorsForm') public contributorsForm: NgForm;\r\n\r\n @Output() public isValidForm: EventEmitter = new EventEmitter();\r\n @Output() public isDirtyForm: EventEmitter = new EventEmitter();\r\n\r\n public nameTypes = NameType;\r\n\r\n constructor(\r\n private dialog: MatDialog,\r\n public translateService: TranslateService,\r\n ) {\r\n super(PublicationContributor);\r\n }\r\n\r\n public ngAfterViewInit(): void {\r\n this.contributorsForm.statusChanges.subscribe(() => {\r\n this.isValidForm.emit(this.contributorsForm.valid);\r\n this.isDirtyForm.emit(this.contributorsForm.dirty);\r\n });\r\n }\r\n\r\n public contributorChanged(index: number, newNameType: NameType): void {\r\n const uniqueId = this.collection[index].uniqueId;\r\n\r\n this.collection[index] = new PublicationContributor();\r\n this.collection[index].uniqueId = uniqueId;\r\n this.collection[index].nameType = newNameType;\r\n\r\n if (newNameType === NameType.organizational) {\r\n this.contributorsForm.controls[`contributor-${uniqueId}-firstName`].reset();\r\n this.contributorsForm.controls[`contributor-${uniqueId}-lastName`].reset();\r\n this.contributorsForm.controls[`contributor-${uniqueId}-institutionAffiliationName`].reset();\r\n this.contributorsForm.controls[`contributor-${uniqueId}-displayName`].reset();\r\n } else {\r\n this.contributorsForm.controls[`contributor-${uniqueId}-organizationalFirstName`].reset();\r\n }\r\n }\r\n\r\n public populateContributorDisplayName(contributor: PublicationContributor): void {\r\n if (contributor.nameType === NameType.personal) {\r\n if (!contributor.firstName && !contributor.lastName) {\r\n contributor.displayName = '';\r\n } else {\r\n contributor.displayName = `${contributor.lastName || ''}, ${contributor.firstName || ''}`;\r\n }\r\n } else {\r\n contributor.displayName = contributor.firstName;\r\n }\r\n }\r\n\r\n public addIdentifier(contributor: PublicationContributor): void {\r\n if (!contributor.identifiers) {\r\n contributor.identifiers = [];\r\n }\r\n\r\n const identifier = new PublicationContributorIdentifier();\r\n identifier.viewOrder = contributor.identifiers && contributor.identifiers.length\r\n ? contributor.identifiers[contributor.identifiers.length - 1].viewOrder + 1\r\n : 1;\r\n contributor.identifiers.push(identifier);\r\n }\r\n\r\n public removeIdentifier(contributor: PublicationContributor, index: number): void {\r\n contributor.identifiers.splice(index, 1);\r\n }\r\n\r\n public selectAffiliation(contributor: PublicationContributor): void {\r\n this.dialog.open(PublicationAffiliationSelectComponent, { disableClose: true })\r\n .afterClosed()\r\n .subscribe((result: string | null) => {\r\n if (result) {\r\n if (contributor.nameType === NameType.personal) {\r\n contributor.institutionAffiliationName = result;\r\n } else if (contributor.nameType === NameType.organizational) {\r\n contributor.firstName = result;\r\n this.populateContributorDisplayName(contributor);\r\n }\r\n }\r\n });\r\n }\r\n}\r\n","\r\n \r\n \r\n
\r\n {{ 'publication.contributorsPanel.title' | translate }}\r\n
\r\n {{ 'publication.contributorsPanel.titleHint' | translate }}\r\n
\r\n
\r\n \r\n {{ 'publication.cardinality.mandatoryIfApplicable' | translate }}\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n publication.noResults\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{ 'publication.contributorsPanel.nameTypes.personal' | translate }}\r\n \r\n \r\n {{ 'publication.contributorsPanel.nameTypes.organizational' | translate }}\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n publication.contributorsPanel.personal.firstName\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n publication.contributorsPanel.personal.lastName\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n publication.contributorsPanel.displayName\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n publication.contributorsPanel.personal.institutionAffiliationName\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n {{ 'publication.affiliationSelect.hint' | translate }}\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n publication.contributorsPanel.organizational.name\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n {{ 'publication.affiliationSelect.hint' | translate }}\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {{ (contributor.nameType === nameTypes.personal\r\n ? 'publication.contributorsPanel.personal.identifierValue'\r\n : 'publication.contributorsPanel.organizational.identifierValue') | translate\r\n }}\r\n \r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n
\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\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 { AfterViewInit, Component, EventEmitter, Output, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { PublicationCoverage } from 'src/modules/publication/models/publication-coverage.model';\r\nimport { MultiplePublicationEntityBaseComponent } from './multiple-publication-entity-base.component';\r\n\r\n@Component({\r\n selector: 'publication-coverages',\r\n templateUrl: 'publication-coverages.component.html'\r\n})\r\n\r\nexport class PublicationCoveragesComponent extends MultiplePublicationEntityBaseComponent\r\n implements AfterViewInit {\r\n\r\n @ViewChild('coveragesForm') coveragesForm: NgForm;\r\n\r\n @Output() isValidForm: EventEmitter = new EventEmitter();\r\n @Output() isDirtyForm: EventEmitter = new EventEmitter();\r\n\r\n constructor() {\r\n super(PublicationCoverage);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.coveragesForm.statusChanges.subscribe(() => {\r\n this.isValidForm.emit(this.coveragesForm.valid);\r\n this.isDirtyForm.emit(this.coveragesForm.dirty);\r\n });\r\n }\r\n}\r\n","\r\n \r\n \r\n
\r\n {{ 'publication.coveragesPanel.title' | translate }}\r\n
\r\n {{ 'publication.coveragesPanel.titleHint' | translate }}\r\n
\r\n
\r\n \r\n {{ 'publication.cardinality.recommended' | translate }}\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n publication.noResults\r\n
\r\n\r\n \r\n
\r\n\r\n \r\n publication.coveragesPanel.value\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n
\r\n \r\n
\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 { AfterViewInit, Component, EventEmitter, Output, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { PublicationCreatorAffiliation } from 'src/modules/publication/models/publication-creator-affiliation.model';\r\nimport { PublicationCreatorIdentifier } from 'src/modules/publication/models/publication-creator-identifier.model';\r\nimport { PublicationCreator } from 'src/modules/publication/models/publication-creator.model';\r\nimport { PublicationAffiliationSelectComponent } from '../publication-affiliation-select.component';\r\nimport { MultiplePublicationEntityBaseComponent } from './multiple-publication-entity-base.component';\r\n\r\n@Component({\r\n selector: 'publication-creators',\r\n templateUrl: 'publication-creators.component.html'\r\n})\r\n\r\nexport class PublicationCreatorsComponent\r\n extends MultiplePublicationEntityBaseComponent\r\n implements AfterViewInit {\r\n\r\n @ViewChild('creatorsForm') public creatorsForm: NgForm;\r\n\r\n @Output() public isValidForm: EventEmitter = new EventEmitter();\r\n @Output() public isDirtyForm: EventEmitter = new EventEmitter();\r\n\r\n constructor(\r\n private dialog: MatDialog\r\n ) {\r\n super(PublicationCreator);\r\n }\r\n\r\n public ngAfterViewInit(): void {\r\n this.creatorsForm.statusChanges.subscribe(() => {\r\n this.isValidForm.emit(this.creatorsForm.valid);\r\n this.isDirtyForm.emit(this.creatorsForm.dirty);\r\n });\r\n }\r\n\r\n public populateCreatorDisplayName(creator: PublicationCreator): void {\r\n if (!creator.firstName && !creator.lastName) {\r\n creator.displayName = '';\r\n } else {\r\n creator.displayName = `${creator.lastName || ''}, ${creator.firstName || ''}`;\r\n }\r\n }\r\n\r\n public addIdentifier(creator: PublicationCreator): void {\r\n if (!creator.identifiers) {\r\n creator.identifiers = [];\r\n }\r\n\r\n const creatorIdentifier = new PublicationCreatorIdentifier();\r\n creatorIdentifier.viewOrder = creator.identifiers && creator.identifiers.length\r\n ? creator.identifiers[creator.identifiers.length - 1].viewOrder + 1\r\n : 1;\r\n creator.identifiers.push(creatorIdentifier);\r\n }\r\n\r\n public removeIdentifier(creator: PublicationCreator, index: number): void {\r\n creator.identifiers.splice(index, 1);\r\n }\r\n\r\n public selectAffiliation(affiliation: PublicationCreatorAffiliation): void {\r\n this.dialog.open(PublicationAffiliationSelectComponent, { disableClose: true })\r\n .afterClosed()\r\n .subscribe((result: string | null) => {\r\n if (result) {\r\n affiliation.institutionName = result;\r\n }\r\n });\r\n }\r\n\r\n public addAffiliation(creator: PublicationCreator): void {\r\n if (!creator.affiliations) {\r\n creator.affiliations = [];\r\n }\r\n\r\n const creatorAffiliation = new PublicationCreatorAffiliation();\r\n creatorAffiliation.viewOrder = creator.affiliations && creator.affiliations.length\r\n ? creator.affiliations[creator.affiliations.length - 1].viewOrder + 1\r\n : 1;\r\n creator.affiliations.push(creatorAffiliation);\r\n }\r\n\r\n public removeAffiliation(creator: PublicationCreator, index: number): void {\r\n creator.affiliations.splice(index, 1);\r\n }\r\n}\r\n","\r\n \r\n \r\n {{ 'publication.creatorsPanel.title' | translate }}\r\n \r\n {{ 'publication.cardinality.mandatory' | translate }}\r\n \r\n \r\n \r\n\r\n
\r\n \r\n
\r\n \r\n publication.creatorsPanel.firstName\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n publication.creatorsPanel.lastName\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n
1\"\r\n class=\"col-sm-12 col-md-2\">\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n publication.creatorsPanel.displayName\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n publication.creatorsPanel.identifier\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n publication.creatorsPanel.identifierHint\r\n \r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n \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 { AfterViewInit, Component, EventEmitter, Output, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { PublicationDescription } from 'src/modules/publication/models/publication-description.model';\r\nimport { MultiplePublicationEntityBaseComponent } from './multiple-publication-entity-base.component';\r\n\r\n@Component({\r\n selector: 'publication-descriptions',\r\n templateUrl: 'publication-descriptions.component.html'\r\n})\r\n\r\nexport class PublicationDescriptionsComponent extends MultiplePublicationEntityBaseComponent\r\n implements AfterViewInit {\r\n\r\n @ViewChild('descriptionsForm') descriptionsForm: NgForm;\r\n\r\n @Output() isValidForm: EventEmitter = new EventEmitter();\r\n @Output() isDirtyForm: EventEmitter = new EventEmitter();\r\n\r\n constructor(public translateService: TranslateService) {\r\n super(PublicationDescription);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.descriptionsForm.statusChanges.subscribe(() => {\r\n this.isValidForm.emit(this.descriptionsForm.valid);\r\n this.isDirtyForm.emit(this.descriptionsForm.dirty);\r\n });\r\n }\r\n\r\n}\r\n","\r\n \r\n \r\n
\r\n {{ 'publication.descriptionsPanel.title' | translate }}\r\n
\r\n {{ 'publication.descriptionsPanel.titleHint' | translate }}\r\n
\r\n
\r\n \r\n {{ 'publication.cardinality.mandatoryIfApplicable' | translate }}\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n publication.noResults\r\n
\r\n\r\n \r\n \r\n
\r\n \r\n publication.descriptionsPanel.value\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\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, HttpEvent, HttpEventType, HttpRequest } from '@angular/common/http';\r\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { SystemMessageType } from 'src/infrastructure/system-messages/enums/system-message-type.enum';\r\nimport { SystemMessage } from 'src/infrastructure/system-messages/models/system-message.model';\r\nimport { SystemMessagesHandlerService } from 'src/infrastructure/system-messages/services/system-messages-handler.service';\r\nimport { PublicationFile } from 'src/modules/publication/models/publication-file.model';\r\n\r\n@Component({\r\n selector: 'publication-files',\r\n templateUrl: 'publication-files.component.html'\r\n})\r\n\r\nexport class PublicationFilesComponent {\r\n @Input() isExpanded = true;\r\n\r\n files: PublicationFile[] = [];\r\n @Input('files') set filesSetter(value: PublicationFile[]) {\r\n if (value) {\r\n this.files = value;\r\n this.filesChange.emit(this.files);\r\n this.isValid.emit(this.files.length > 0);\r\n }\r\n }\r\n @Output() filesChange: EventEmitter = new EventEmitter();\r\n\r\n @Input() disabled = true;\r\n\r\n @Input() canDeleteUploaded = false;\r\n\r\n @Output() isValid: EventEmitter = new EventEmitter();\r\n\r\n @Output() isDirty: EventEmitter = new EventEmitter();\r\n\r\n acceptedPublicationFileFormats = [\r\n 'application/pdf',\r\n 'image/jpg',\r\n 'image/png',\r\n 'image/tiff',\r\n 'application/msword',\r\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\r\n 'text/plain',\r\n 'application/vnd.ms-excel',\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'\r\n ];\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private systemMessagesService: SystemMessagesHandlerService,\r\n private loadingIndicator: LoadingIndicatorService\r\n ) { }\r\n\r\n deleteUploadedFile(index: number) {\r\n this.files.splice(index, 1);\r\n this.filesChange.emit(this.files);\r\n this.isValid.emit(this.files.length > 0);\r\n this.isDirty.emit(true);\r\n }\r\n\r\n uploadFile(file: File) {\r\n this.loadingIndicator.show();\r\n\r\n const formData = new FormData();\r\n formData.append('file', file);\r\n\r\n const req = new HttpRequest('POST', 'api/FilesStorage', formData);\r\n this.http.request(req)\r\n .subscribe((event: HttpEvent) => {\r\n if (event.type === HttpEventType.Response) {\r\n const body = event.body;\r\n let publicationFile = new PublicationFile();\r\n publicationFile.dbId = body.dbId;\r\n publicationFile.key = body.key;\r\n publicationFile.hash = body.hash;\r\n publicationFile.size = body.size;\r\n publicationFile.mimeType = body.mimeType;\r\n publicationFile.name = body.name;\r\n\r\n if (!this.files || !this.files.length) {\r\n this.files = [];\r\n }\r\n\r\n this.files.push(publicationFile);\r\n this.filesChange.emit(this.files);\r\n this.isValid.emit(this.files.length > 0);\r\n this.isDirty.emit(true);\r\n\r\n this.loadingIndicator.hide();\r\n }\r\n });\r\n }\r\n\r\n wrongPublicationFileFormat() {\r\n const wrongFileFormatMessage = new SystemMessage('publication.messages.wrongFileFormatMessage', SystemMessageType.danger);\r\n this.systemMessagesService.messages.emit(wrongFileFormatMessage);\r\n }\r\n}\r\n","\r\n \r\n \r\n {{ 'publication.filesPanel.title' | translate }}\r\n \r\n {{ 'publication.cardinality.mandatory' | translate }}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{ 'publication.filesPanel.fileTh' | translate }}\r\n \r\n {{ 'publication.filesPanel.sizeTh' | translate }}\r\n \r\n \r\n \r\n
\r\n {{ file.name }}\r\n \r\n {{ file.size | fileSize }}\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 { PublicationFormat } from 'src/modules/publication/models/publication-format.model';\r\nimport { MultiplePublicationEntityBaseComponent } from './multiple-publication-entity-base.component';\r\n\r\n@Component({\r\n selector: 'publication-formats',\r\n templateUrl: 'publication-formats.component.html'\r\n})\r\n\r\nexport class PublicationFormatsComponent extends MultiplePublicationEntityBaseComponent {\r\n\r\n constructor() {\r\n super(PublicationFormat);\r\n }\r\n\r\n}\r\n","\r\n \r\n \r\n Формат (Format)\r\n \r\n \r\n\r\n
\r\n\r\n \r\n \r\n \r\n\r\n
\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 { AfterViewInit, Component, EventEmitter, Output, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { PublicationFundingReference } from 'src/modules/publication/models/publication-funding-reference.model';\r\nimport { MultiplePublicationEntityBaseComponent } from './multiple-publication-entity-base.component';\r\n\r\n@Component({\r\n selector: 'publication-funding-references',\r\n templateUrl: 'publication-funding-references.component.html'\r\n})\r\n\r\nexport class PublicationFundingReferencesComponent extends MultiplePublicationEntityBaseComponent\r\n implements AfterViewInit {\r\n\r\n @ViewChild('fundingReferencesForm') fundingReferencesForm: NgForm;\r\n\r\n @Output() isValidForm: EventEmitter = new EventEmitter();\r\n @Output() isDirtyForm: EventEmitter = new EventEmitter();\r\n\r\n constructor() {\r\n super(PublicationFundingReference);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.fundingReferencesForm.statusChanges.subscribe(() => {\r\n this.isValidForm.emit(this.fundingReferencesForm.valid);\r\n this.isDirtyForm.emit(this.fundingReferencesForm.dirty);\r\n });\r\n }\r\n}\r\n","\r\n \r\n \r\n {{ 'publication.fundingReferencesPanel.title' | translate }}\r\n \r\n {{ 'publication.cardinality.mandatoryIfApplicable' | translate }}\r\n \r\n \r\n \r\n\r\n
\r\n\r\n
\r\n publication.noResults\r\n
\r\n\r\n \r\n
\r\n \r\n publication.fundingReferencesPanel.name\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n\r\n \r\n publication.fundingReferencesPanel.identifier\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n
\r\n 0\"\r\n [disabled]=\"disabled\">\r\n
\r\n\r\n \r\n publication.fundingReferencesPanel.awardNumber\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n publication.fundingReferencesPanel.awardTitle\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n publication.fundingReferencesPanel.awardURI\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \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 { AfterViewInit, Component, EventEmitter, Output, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { PublicationLanguage } from 'src/modules/publication/models/publication-language.model';\r\nimport { MultiplePublicationEntityBaseComponent } from './multiple-publication-entity-base.component';\r\n\r\n@Component({\r\n selector: 'publication-languages',\r\n templateUrl: 'publication-languages.component.html'\r\n})\r\n\r\nexport class PublicationLanguagesComponent extends MultiplePublicationEntityBaseComponent\r\n implements AfterViewInit {\r\n\r\n @ViewChild('languagesForm') languagesForm: NgForm;\r\n\r\n @Output() isValidForm: EventEmitter = new EventEmitter();\r\n @Output() isDirtyForm: EventEmitter = new EventEmitter();\r\n\r\n constructor(public translateService: TranslateService) {\r\n super(PublicationLanguage);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.languagesForm.statusChanges.subscribe(() => {\r\n this.isValidForm.emit(this.languagesForm.valid);\r\n this.isDirtyForm.emit(this.languagesForm.dirty);\r\n });\r\n }\r\n}\r\n","\r\n \r\n \r\n
\r\n {{ 'publication.languagesPanel.title' | translate }}\r\n
\r\n {{ 'publication.languagesPanel.titleHint' | translate }}\r\n
\r\n
\r\n \r\n {{ 'publication.cardinality.mandatoryIfApplicable' | translate }}\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n publication.noResults\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\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 { AfterViewInit, Component, EventEmitter, Output, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { PublicationPublisher } from 'src/modules/publication/models/publication-publisher.model';\r\nimport { MultiplePublicationEntityBaseComponent } from './multiple-publication-entity-base.component';\r\n\r\n@Component({\r\n selector: 'publication-publishers',\r\n templateUrl: 'publication-publishers.component.html'\r\n})\r\n\r\nexport class PublicationPublishersComponent extends MultiplePublicationEntityBaseComponent\r\n implements AfterViewInit {\r\n\r\n @ViewChild('publishersForm') publishersForm: NgForm;\r\n\r\n @Output() isValidForm: EventEmitter = new EventEmitter();\r\n @Output() isDirtyForm: EventEmitter = new EventEmitter();\r\n\r\n constructor() {\r\n super(PublicationPublisher);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.publishersForm.statusChanges.subscribe(() => {\r\n this.isValidForm.emit(this.publishersForm.valid);\r\n this.isDirtyForm.emit(this.publishersForm.dirty);\r\n });\r\n }\r\n}\r\n","\r\n \r\n \r\n
\r\n {{ 'publication.publishersPanel.title' | translate }}\r\n
\r\n {{ 'publication.publishersPanel.titleHint' | translate }}\r\n
\r\n
\r\n \r\n {{ 'publication.cardinality.mandatoryIfApplicable' | translate }}\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n publication.noResults\r\n
\r\n\r\n \r\n
\r\n \r\n publication.publishersPanel.name\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n
\r\n \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 { AfterViewInit, Component, EventEmitter, Output, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { PublicationRelatedIdentifier } from 'src/modules/publication/models/publication-related-identifier.model';\r\nimport { MultiplePublicationEntityBaseComponent } from './multiple-publication-entity-base.component';\r\n\r\n@Component({\r\n selector: 'publication-related-identifiers',\r\n templateUrl: 'publication-related-identifiers.component.html'\r\n})\r\n\r\nexport class PublicationRelatedIdentifiersComponent extends MultiplePublicationEntityBaseComponent\r\n implements AfterViewInit {\r\n\r\n @ViewChild('relatedIdentifiersForm') relatedIdentifiersForm: NgForm;\r\n\r\n @Output() isValidForm: EventEmitter = new EventEmitter();\r\n @Output() isDirtyForm: EventEmitter = new EventEmitter();\r\n\r\n constructor(public translateService: TranslateService) {\r\n super(PublicationRelatedIdentifier);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.relatedIdentifiersForm.statusChanges.subscribe(() => {\r\n this.isValidForm.emit(this.relatedIdentifiersForm.valid);\r\n this.isDirtyForm.emit(this.relatedIdentifiersForm.dirty);\r\n });\r\n }\r\n}\r\n","\r\n \r\n \r\n {{ 'publication.relatedIdentifiersPanel.title' | translate }}\r\n \r\n {{ 'publication.cardinality.recommended' | translate }}\r\n \r\n \r\n \r\n\r\n
\r\n\r\n
\r\n publication.noResults\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n publication.relatedIdentifiersPanel.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 publication.relatedIdentifiersPanel.relatedMetadataScheme\r\n \r\n \r\n publication.relatedIdentifiersPanel.relatedMetadataSchemeHint\r\n \r\n \r\n\r\n \r\n publication.relatedIdentifiersPanel.schemeURI\r\n \r\n \r\n publication.relatedIdentifiersPanel.schemeURIHint\r\n \r\n \r\n\r\n \r\n publication.relatedIdentifiersPanel.schemeType\r\n \r\n \r\n publication.relatedIdentifiersPanel.schemeTypeHint\r\n \r\n \r\n\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 { ChangeDetectionStrategy, Component } from '@angular/core';\r\nimport { PublicationSize } from 'src/modules/publication/models/publication-size.model';\r\nimport { MultiplePublicationEntityBaseComponent } from './multiple-publication-entity-base.component';\r\n\r\n@Component({\r\n selector: 'publication-sizes',\r\n templateUrl: 'publication-sizes.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\n\r\nexport class PublicationSizesComponent extends MultiplePublicationEntityBaseComponent {\r\n\r\n constructor() {\r\n super(PublicationSize);\r\n }\r\n\r\n}\r\n","\r\n \r\n \r\n Размер (Size)\r\n \r\n \r\n\r\n
\r\n\r\n \r\n \r\n \r\n\r\n
\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 { AfterViewInit, Component, EventEmitter, Output, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { PublicationSource } from 'src/modules/publication/models/publication-source.model';\r\nimport { MultiplePublicationEntityBaseComponent } from './multiple-publication-entity-base.component';\r\n\r\n@Component({\r\n selector: 'publication-sources',\r\n templateUrl: 'publication-sources.component.html'\r\n})\r\n\r\nexport class PublicationSourcesComponent extends MultiplePublicationEntityBaseComponent\r\n implements AfterViewInit {\r\n @ViewChild('sourcesForm') sourcesForm: NgForm;\r\n\r\n @Output() isValidForm: EventEmitter = new EventEmitter();\r\n @Output() isDirtyForm: EventEmitter = new EventEmitter();\r\n\r\n constructor() {\r\n super(PublicationSource);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.sourcesForm.statusChanges.subscribe(() => {\r\n this.isValidForm.emit(this.sourcesForm.valid);\r\n this.isDirtyForm.emit(this.sourcesForm.dirty);\r\n });\r\n }\r\n}\r\n","\r\n \r\n \r\n
\r\n {{ 'publication.sourcesPanel.title' | translate }}\r\n
\r\n {{ 'publication.sourcesPanel.titleHint' | translate }}\r\n
\r\n
\r\n \r\n {{ 'publication.cardinality.recommended' | translate }}\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n publication.noResults\r\n
\r\n\r\n \r\n\r\n
\r\n\r\n \r\n publication.sourcesPanel.value\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n
\r\n \r\n
\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 { AfterViewInit, Component, EventEmitter, Output, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { PublicationSubject } from 'src/modules/publication/models/publication-subject.model';\r\nimport { MultiplePublicationEntityBaseComponent } from './multiple-publication-entity-base.component';\r\n\r\n@Component({\r\n selector: 'publication-subjects',\r\n templateUrl: 'publication-subjects.component.html'\r\n})\r\n\r\nexport class PublicationSubjectsComponent extends MultiplePublicationEntityBaseComponent\r\n implements AfterViewInit {\r\n @ViewChild('subjectsForm') subjectsForm: NgForm;\r\n\r\n @Output() isValidForm: EventEmitter = new EventEmitter();\r\n @Output() isDirtyForm: EventEmitter = new EventEmitter();\r\n\r\n constructor(public translateService: TranslateService) {\r\n super(PublicationSubject);\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.subjectsForm.statusChanges.subscribe(() => {\r\n this.isValidForm.emit(this.subjectsForm.valid);\r\n this.isDirtyForm.emit(this.subjectsForm.dirty);\r\n });\r\n }\r\n}\r\n","\r\n \r\n \r\n
\r\n {{ 'publication.subjectsPanel.title' | translate }}\r\n
\r\n {{ 'publication.subjectsPanel.titleHint' | translate }}\r\n
\r\n
\r\n \r\n {{ 'publication.cardinality.mandatoryIfApplicable' | translate }}\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n publication.noResults\r\n
\r\n\r\n \r\n
\r\n \r\n publication.subjectsPanel.value\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\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 { AfterViewInit, Component, EventEmitter, Output, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { SearchExistingFilterDto } from 'src/modules/publication/dtos/existing-search-filter.dto';\r\nimport { PublicationTitle } from 'src/modules/publication/models/publication-title.model';\r\nimport { PublicationResource } from 'src/modules/publication/resources/publication.resource';\r\nimport { ExistingPublicationsModalComponent } from '../../existing-publications-modal.component';\r\nimport { MultiplePublicationEntityBaseComponent } from './multiple-publication-entity-base.component';\r\n\r\n@Component({\r\n selector: 'publication-titles',\r\n templateUrl: 'publication-titles.component.html'\r\n})\r\n\r\nexport class PublicationTitlesComponent extends MultiplePublicationEntityBaseComponent\r\n implements AfterViewInit {\r\n\r\n @ViewChild('titlesForm') public titlesForm: NgForm;\r\n\r\n @Output() public isValidForm: EventEmitter = new EventEmitter();\r\n @Output() public isDirtyForm: EventEmitter = new EventEmitter();\r\n\r\n constructor(\r\n public translateService: TranslateService,\r\n private resource: PublicationResource,\r\n private loadingIndicator: LoadingIndicatorService,\r\n private dialog: MatDialog,\r\n private configuration: Configuration,\r\n ) {\r\n super(PublicationTitle);\r\n }\r\n\r\n public ngAfterViewInit(): void {\r\n this.titlesForm.statusChanges.subscribe(() => {\r\n this.isValidForm.emit(this.titlesForm.valid);\r\n this.isDirtyForm.emit(this.titlesForm.dirty);\r\n });\r\n }\r\n\r\n public checkExistingTitle(title: string): void {\r\n if (!title || !title.trim().length) {\r\n return;\r\n }\r\n\r\n const filter: SearchExistingFilterDto = new SearchExistingFilterDto();\r\n filter.term = title;\r\n filter.limit = this.configuration.portalExistingSearchLimit;\r\n\r\n this.loadingIndicator.show();\r\n this.resource.checkExistingTitle(filter)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide()),\r\n )\r\n .subscribe((result: any) => {\r\n this.dialog.open(ExistingPublicationsModalComponent, {\r\n width: '90%',\r\n data: {\r\n existingPublications: result,\r\n noResultText: 'publication.titlesPanel.existingTitleNoResultText',\r\n },\r\n })\r\n .afterClosed()\r\n .subscribe();\r\n });\r\n }\r\n}\r\n","\r\n \r\n \r\n
\r\n {{ 'publication.titlesPanel.title' | translate }}\r\n
\r\n {{ 'publication.titlesPanel.titleHint' | translate }}\r\n
\r\n
\r\n \r\n {{ 'publication.cardinality.mandatory' | translate }}\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n publication.titlesPanel.value\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n
\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \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, OnInit } from '@angular/core';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { InstitutionResource } from 'src/modules/institution/institution.resource';\r\nimport { Institution } from 'src/modules/institution/models/institution.model';\r\n\r\n@Component({\r\n selector: 'publication-affiliation-select',\r\n templateUrl: './publication-affiliation-select.component.html',\r\n})\r\nexport class PublicationAffiliationSelectComponent implements OnInit {\r\n public institutions: Institution[] = [];\r\n public canLoadMore = false;\r\n\r\n private filter = { limit: 10, offset: 0, clear: () => { } };\r\n\r\n constructor(\r\n private resource: InstitutionResource,\r\n private loadingIndicator: LoadingIndicatorService,\r\n private dialogRef: MatDialogRef,\r\n public translateService: TranslateService,\r\n ) { }\r\n\r\n public ngOnInit(): void {\r\n this.search();\r\n }\r\n\r\n public search(loadMore?: boolean): void {\r\n this.filter.offset = loadMore ? this.institutions.length : 0;\r\n\r\n this.loadingIndicator.show();\r\n this.resource.getFiltered(this.filter)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide()),\r\n )\r\n .subscribe((institutions: Institution[]) => {\r\n if (loadMore) {\r\n this.institutions.push(...institutions);\r\n } else {\r\n this.institutions = institutions;\r\n }\r\n\r\n this.canLoadMore = institutions.length === this.filter.limit;\r\n });\r\n }\r\n\r\n public selectInstitution(institution: Institution): void {\r\n this.dialogRef.close(institution.name);\r\n }\r\n}\r\n","

\r\n {{ 'publication.affiliationSelect.header' | translate }}\r\n

\r\n\r\n\r\n
\r\n
\r\n {{\r\n (translateService.currentLang === translateService.defaultLang || !institution.nameEn)\r\n ? institution.name\r\n : institution.nameEn\r\n }}\r\n
\r\n\r\n
\r\n \r\n
\r\n
\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 { ChangeDetectionStrategy, Component, Input } from '@angular/core';\r\nimport { PublicationDenialReason } from '../../models/publication-denial-reason.model';\r\n\r\n@Component({\r\n selector: 'publication-denial-reasons-panel',\r\n templateUrl: 'publication-denial-reasons-panel.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\n\r\nexport class PublicationDenialReasonsPanelComponent {\r\n @Input() denialReasons: PublicationDenialReason[] = [];\r\n}\r\n","
\r\n \r\n \r\n \r\n {{ 'publication.base.denialReasonsPanel' | translate }}\r\n \r\n \r\n\r\n
\r\n
\r\n {{ denialReason.date | date: 'dd.MM.yyyy'}}: {{ denialReason.reason }}\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, EventEmitter, HostBinding, HostListener, Input, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'publication-local-save-btn',\r\n templateUrl: 'publication-local-save-btn.component.html',\r\n styleUrls: ['./publication-local-save-btn.styles.css']\r\n})\r\n\r\nexport class PublicationLocalSaveBtnComponent {\r\n @Input() disabled: boolean = false;\r\n\r\n @Output() btnClicked: EventEmitter = new EventEmitter();\r\n\r\n @HostBinding('class.top-over-other-btn') showOnTopOfOtherBtn = false;\r\n\r\n @HostListener('window:scroll', [])\r\n onWindowScroll() {\r\n if (window.pageYOffset === 0) {\r\n this.showOnTopOfOtherBtn = false;\r\n } else {\r\n this.showOnTopOfOtherBtn = true;\r\n }\r\n }\r\n\r\n saveLocalClicked() {\r\n this.btnClicked.emit();\r\n }\r\n}\r\n","\r\n","import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { IPublicationReasonData } from '../../interfaces/publication-reason-data.interface';\r\n\r\n@Component({\r\n selector: 'publication-reason-modal',\r\n templateUrl: 'publication-reason-modal.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\n\r\nexport class PublicationReasonModalComponent {\r\n reason: string;\r\n\r\n constructor(\r\n @Inject(MAT_DIALOG_DATA) public data: IPublicationReasonData,\r\n private dialogRef: MatDialogRef\r\n ) { }\r\n\r\n save() {\r\n this.dialogRef.close(this.reason);\r\n }\r\n\r\n close() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","

\r\n {{ data.header | translate }}\r\n

\r\n\r\n\r\n
\r\n {{ data.confirmationText | translate }}\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n {{ data.reason || 'publication.reasonModal.reason' | translate}}\r\n \r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n \r\n\r\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'publication-step-actions',\r\n templateUrl: 'publication-step-actions.component.html',\r\n styles: [`\r\n :host {\r\n display: flex;\r\n justify-content: space-between;\r\n }`],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\n\r\nexport class PublicationStepActionsComponent {\r\n @Input() showBackBtn = true;\r\n @Input() backBtnText;\r\n\r\n @Input() nextBtnText;\r\n\r\n @Input() disableNextBtn = false;\r\n}\r\n","\r\n\r\n\r\n","import { AfterViewInit, Component, Input, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { FlatClassificationHierarchyItemDto } from 'src/modules/classification/dtos/flat-classification-hierarchy-item.dto';\r\nimport { InstitutionResource } from 'src/modules/institution/institution.resource';\r\nimport { Institution } from 'src/modules/institution/models/institution.model';\r\nimport { PublicationClassification } from 'src/modules/publication/models/publication-classification.model';\r\nimport { PublicationResource } from 'src/modules/publication/resources/publication.resource';\r\nimport { PublicationStepComponent } from './publication-step.component';\r\n\r\n@Component({\r\n selector: 'publication-step-five',\r\n templateUrl: 'publication-step-five.component.html'\r\n})\r\n\r\nexport class PublicationStepFiveComponent extends PublicationStepComponent implements AfterViewInit {\r\n @Input() set isStepSelected(value: boolean) {\r\n if (value) {\r\n if (this.model.moderatorInstitutionId) {\r\n this.loadHierarchyItems(this.model.moderatorInstitutionId, this.model.classifications);\r\n }\r\n }\r\n }\r\n\r\n @Input() set shouldReloadHierarchy(value: { value: boolean }) {\r\n if (value) {\r\n this.loadHierarchyItems(this.model.moderatorInstitutionId, this.model.classifications);\r\n }\r\n }\r\n\r\n @ViewChild('classificationsForm') classificationsForm: NgForm;\r\n\r\n hierarchyItems: FlatClassificationHierarchyItemDto[] = [];\r\n\r\n constructor(\r\n protected resource: PublicationResource,\r\n private institutionResource: InstitutionResource,\r\n private loadingIndicator: LoadingIndicatorService,\r\n translateService: TranslateService,\r\n ) {\r\n super(translateService, resource);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.classificationsForm.statusChanges\r\n .subscribe(() => {\r\n this.changeValidState('classificationsForm', this.classificationsForm.valid && this.model.classifications?.length > 0);\r\n this.changeDirtyState('classificationsForm', this.classificationsForm.dirty);\r\n });\r\n }\r\n\r\n moderatorInstitutionChange(institution: Institution) {\r\n if (institution) {\r\n this.model.moderatorInstitutionId = institution.id;\r\n this.loadHierarchyItems(institution.id);\r\n } else {\r\n this.model.moderatorInstitutionId = null;\r\n this.hierarchyItems = [];\r\n }\r\n\r\n this.model.classifications = [];\r\n\r\n this.changeValidState('classificationsForm', false);\r\n }\r\n\r\n changedItem(item: FlatClassificationHierarchyItemDto) {\r\n if (!item.isSelected) {\r\n const index = this.model.classifications.findIndex(e => e.classificationId === item.id);\r\n this.model.classifications.splice(index, 1);\r\n } else {\r\n const newClassification = new PublicationClassification();\r\n newClassification.classificationId = item.id;\r\n if (!this.model.classifications) {\r\n this.model.classifications = [];\r\n }\r\n this.model.classifications.push(newClassification);\r\n }\r\n\r\n this.changeValidState('classificationsForm', this.classificationsForm.valid && this.model.classifications.length > 0);\r\n }\r\n\r\n private loadHierarchyItems(institutionId: number, publicationClassifications?: PublicationClassification[]) {\r\n this.loadingIndicator.show();\r\n let hiearchyObservable = this.institutionResource.getInstitutionClassifications(institutionId);\r\n if (!this.isEditMode) {\r\n hiearchyObservable = this.resource.getPublicationClassifications(this.model.id);\r\n }\r\n\r\n hiearchyObservable\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((hierarchyItems: FlatClassificationHierarchyItemDto[]) => {\r\n this.hierarchyItems = hierarchyItems;\r\n\r\n if (publicationClassifications) {\r\n publicationClassifications.forEach((classification: PublicationClassification) => {\r\n const index = this.hierarchyItems.findIndex(e => e.id === classification.classificationId);\r\n if (index >= 0) {\r\n this.hierarchyItems[index].isSelected = 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 {{ 'publication.publishPanel.errors.noClassificationItemSelect' | translate }}\r\n
\r\n\r\n
\r\n \r\n {{\r\n translateService.currentLang !== translateService.defaultLang && hierarchyItem.nameEn\r\n ? hierarchyItem.nameEn\r\n : hierarchyItem.name\r\n }}\r\n \r\n\r\n \r\n {{ translateService.currentLang !== translateService.defaultLang && hierarchyItem.nameEn ? hierarchyItem.nameEn\r\n : hierarchyItem.name}}\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Input } from '@angular/core';\r\nimport { PublicationFile } from 'src/modules/publication/models/publication-file.model';\r\nimport { PublicationStepComponent } from './publication-step.component';\r\n\r\n@Component({\r\n selector: 'publication-step-four',\r\n templateUrl: 'publication-step-four.component.html'\r\n})\r\n\r\nexport class PublicationStepFourComponent extends PublicationStepComponent {\r\n @Input() canDeleteUploadedFiles: boolean;\r\n\r\n filesChanged(files: PublicationFile[]) {\r\n this.changeValidState('publication-files', files.length > 0);\r\n this.changeDirtyState('publication-files', true);\r\n }\r\n}\r\n","\r\n","import { AfterViewInit, Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { Subject } from 'rxjs';\r\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\r\nimport { ResourceIdentifierType } from 'src/modules/nomenclature/models/resource-identifier-type.model';\r\nimport { Publication } from 'src/modules/publication/models/publication.model';\r\nimport { PublicationStepComponent } from './publication-step.component';\r\n\r\n@Component({\r\n selector: 'publication-step-one',\r\n templateUrl: 'publication-step-one.component.html'\r\n})\r\nexport class PublicationStepOneComponent extends PublicationStepComponent implements OnInit, AfterViewInit {\r\n private identifierChanged = new Subject();\r\n\r\n @Input('model') set modelSetter(value: Publication) {\r\n this.model = value;\r\n\r\n if (this.model) {\r\n this.checkPublicationIdentifier(this.model.identifier, this.model.identifierTypeId);\r\n }\r\n }\r\n\r\n @ViewChild('resourceTypeForm') public resourceTypeForm: NgForm;\r\n @ViewChild('publicationIdentifierForm') public publicationIdentifierForm: NgForm;\r\n @ViewChild('publicationDateForm') public publicationDateForm: NgForm;\r\n @ViewChild('publicationVersionForm') public publicationVersionForm: NgForm;\r\n\r\n ngOnInit() {\r\n this.identifierChanged.pipe(\r\n debounceTime(500),\r\n distinctUntilChanged())\r\n .subscribe((identifier: string) => this.checkPublicationIdentifier(identifier, this.model.identifierTypeId));\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.resourceTypeForm.statusChanges\r\n .subscribe(() => this.changeStepState('resourceTypeForm', this.resourceTypeForm));\r\n\r\n this.publicationIdentifierForm.statusChanges\r\n .subscribe(() => this.changeStepState('publicationIdentifierForm', this.publicationIdentifierForm));\r\n\r\n this.publicationDateForm.statusChanges\r\n .subscribe(() => this.changeStepState('publicationDateForm', this.publicationDateForm));\r\n\r\n this.publicationVersionForm.statusChanges\r\n .subscribe(() => this.changeStepState('publicationVersionForm', this.publicationVersionForm));\r\n }\r\n\r\n publicationIdentifierChanged(identifier: string) {\r\n this.model.identifier = identifier;\r\n this.identifierChanged.next(identifier);\r\n }\r\n\r\n publicationIdentifierTypeChanged(identifierType: ResourceIdentifierType | null) {\r\n this.model.identifierType = identifierType;\r\n if (identifierType) {\r\n this.model.identifierTypeId = identifierType.id;\r\n } else {\r\n this.model.identifierTypeId = null;\r\n }\r\n\r\n this.checkPublicationIdentifier(this.model.identifier, this.model.identifierTypeId);\r\n }\r\n\r\n private checkPublicationIdentifier(identifier: string, identifierTypeId: number | null) {\r\n if (!identifier || !identifierTypeId) {\r\n return;\r\n }\r\n\r\n this.resource.checkExistingIdentifier({ identifier: this.model.identifier, identifierTypeId: this.model.identifierTypeId })\r\n .subscribe((hasSameIdentifier: boolean) => {\r\n if (hasSameIdentifier) {\r\n this.publicationIdentifierForm.controls.publicationResourceIdentifierValue.setErrors({ duplicateIdentifier: true });\r\n } else {\r\n this.publicationIdentifierForm.controls.publicationResourceIdentifierValue.setErrors(null);\r\n }\r\n\r\n this.changeValidState('publicationIdentifierForm', this.publicationIdentifierForm.valid);\r\n });\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n {{ 'publication.resourceTypePanel.title' | translate }}\r\n \r\n {{ 'publication.cardinality.mandatory' | translate }}\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'publication.resourceIdentifierPanel.title' | translate }}\r\n
\r\n {{ 'publication.resourceIdentifierPanel.titleHint' | translate }}\r\n
\r\n
\r\n \r\n {{ 'publication.cardinality.mandatory' | translate }}\r\n \r\n
\r\n
\r\n\r\n
\r\n publication.noResults\r\n
\r\n\r\n
\r\n
\r\n \r\n publication.resourceIdentifierPanel.value\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\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 {{ 'publication.publicationDatePanel.title' | translate }}\r\n
\r\n {{ 'publication.publicationDatePanel.titleHint' | translate }}\r\n
\r\n
\r\n \r\n {{ 'publication.cardinality.mandatory' | translate }}\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n publication.publicationDatePanel.publishYear\r\n \r\n \r\n {{ 'publication.publicationDatePanel.errors.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n publication.publicationDatePanel.publishMonth\r\n 0\">\r\n \r\n -\r\n \r\n \r\n {{ 'app.months.full.jan' | translate }}\r\n \r\n \r\n {{ 'app.months.full.feb' | translate }}\r\n \r\n \r\n {{ 'app.months.full.mar' | translate }}\r\n \r\n \r\n {{ 'app.months.full.apr' | translate }}\r\n \r\n \r\n {{ 'app.months.full.may' | translate }}\r\n \r\n \r\n {{ 'app.months.full.jun' | translate }}\r\n \r\n \r\n {{ 'app.months.full.jul' | translate }}\r\n \r\n \r\n {{ 'app.months.full.aug' | translate }}\r\n \r\n \r\n {{ 'app.months.full.sep' | translate }}\r\n \r\n \r\n {{ 'app.months.full.oct' | translate }}\r\n \r\n \r\n {{ 'app.months.full.nov' | translate }}\r\n \r\n \r\n {{ 'app.months.full.dec' | translate }}\r\n \r\n \r\n \r\n\r\n \r\n publication.publicationDatePanel.publishDay\r\n \r\n \r\n {{ 'publication.publicationDatePanel.errors.' + error.key | translate}}\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'publication.versionPanel.title' | translate }}\r\n
\r\n {{ 'publication.versionPanel.titleHint' | translate }}\r\n
\r\n
\r\n \r\n {{ 'publication.cardinality.recommended' | translate }}\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n publication.noResults\r\n
\r\n\r\n \r\n publication.versionPanel.value\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { AfterViewInit, Component, Input, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { AccessRight } from 'src/modules/nomenclature/models/access-right.model';\r\nimport { NomenclatureResource } from 'src/modules/nomenclature/nomenclature.resource';\r\nimport { PublicationResource } from 'src/modules/publication/resources/publication.resource';\r\nimport { PublicationStepComponent } from './publication-step.component';\r\n\r\n@Component({\r\n selector: 'publication-step-three',\r\n templateUrl: 'publication-step-three.component.html',\r\n styleUrls: ['./publication-step-three.styles.css']\r\n})\r\n\r\nexport class PublicationStepThreeComponent extends PublicationStepComponent implements AfterViewInit {\r\n @Input() set isStepSelected(value: boolean) {\r\n if (value) {\r\n if (!this.accessRights || !this.accessRights.length) {\r\n this.loadAccessRights();\r\n }\r\n }\r\n }\r\n\r\n @ViewChild('rightsForm') rightsForm: NgForm;\r\n @ViewChild('licenseForm') licenseForm: NgForm;\r\n @ViewChild('depositAgreementForm') depositAgreementForm: NgForm;\r\n\r\n accessRights: AccessRight[] = [];\r\n\r\n constructor(\r\n private accessRightsResource: NomenclatureResource,\r\n private loadingIndicator: LoadingIndicatorService,\r\n translateService: TranslateService,\r\n protected resource: PublicationResource,\r\n ) {\r\n super(translateService, resource);\r\n\r\n this.accessRightsResource.setSuffix('AccessRight');\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.rightsForm.statusChanges\r\n .subscribe(() => this.changeStepState('rightsForm', this.rightsForm));\r\n\r\n this.licenseForm.statusChanges\r\n .subscribe(() => this.changeStepState('licenseForm', this.licenseForm));\r\n\r\n this.depositAgreementForm.statusChanges\r\n .subscribe(() => this.changeStepState('depositAgreementForm', this.depositAgreementForm));\r\n }\r\n\r\n changeAccessRight(accessRightId: number) {\r\n this.model.accessRightId = accessRightId;\r\n this.model.accessRight = this.accessRights.filter(e => e.id === accessRightId)[0];\r\n this.model.embargoPeriodStart = null;\r\n this.model.embargoPeriodEnd = null;\r\n }\r\n\r\n private loadAccessRights() {\r\n this.loadingIndicator.show();\r\n this.accessRightsResource.getFiltered()\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((accessRights: AccessRight[]) => this.accessRights = accessRights);\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n {{ 'publication.accessRightsPanel.title' | translate }}\r\n \r\n {{ 'publication.cardinality.mandatory' | translate }}\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{ right?.name }} ({{ right?.nameEn}})\r\n \r\n\r\n \r\n {{ right?.nameEn}}\r\n \r\n\r\n
\r\n {{ 'publication.accessRightsPanel.hints.' + right.alias | translate }}\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n publication.accessRightsPanel.embargoPeriodStart\r\n \r\n \r\n \r\n \r\n\r\n \r\n publication.accessRightsPanel.embargoPeriodEnd\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'publication.depositAgreementPanel.title' | translate}}\r\n
\r\n\r\n \r\n {{ 'publication.cardinality.mandatory' | translate }}\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'publication.licenseTypePanel.title' | translate }}\r\n
\r\n {{ 'publication.licenseTypePanel.titleHint' | translate }}\r\n
\r\n
\r\n\r\n \r\n {{ 'publication.cardinality.recommended' | translate }}\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n {{ 'publication.licenseTypePanel.licenseHint' | translate }}\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n \r\n \r\n publication.licenseTypePanel.otherLicenseCondition\r\n \r\n \r\n\r\n \r\n publication.licenseTypePanel.otherLicenseUrl\r\n \r\n \r\n \r\n\r\n \r\n publication.licenseTypePanel.licenseStartDate\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { AfterViewInit, Component, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { PublicationStepComponent } from './publication-step.component';\r\n\r\n@Component({\r\n selector: 'publication-step-two',\r\n templateUrl: 'publication-step-two.component.html'\r\n})\r\n\r\nexport class PublicationStepTwoComponent extends PublicationStepComponent implements AfterViewInit {\r\n @ViewChild('citationsForm') citationsForm: NgForm;\r\n\r\n ngAfterViewInit() {\r\n this.citationsForm.statusChanges\r\n .subscribe(() => this.changeStepState('citationsForm', this.citationsForm));\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'publication.citationsPanel.title' | translate }}\r\n
\r\n {{ 'publication.citationsPanel.titleHint' | translate }}\r\n
\r\n
\r\n \r\n {{ 'publication.cardinality.recommended' | translate }}\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n publication.citationsPanel.citationTitle\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n publication.citationsPanel.citationVolume\r\n \r\n \r\n {{ 'publication.citationsPanel.errors.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n publication.citationsPanel.citationIssue\r\n \r\n \r\n {{ 'publication.citationsPanel.errors.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n publication.citationsPanel.citationStartPage\r\n \r\n \r\n {{ 'publication.citationsPanel.errors.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n publication.citationsPanel.citationEndPage\r\n \r\n \r\n {{ 'publication.citationsPanel.errors.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n publication.citationsPanel.citationEdition\r\n \r\n \r\n {{ 'publication.citationsPanel.errors.' + error.key | translate}}\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n publication.citationsPanel.citationConferencePlace\r\n \r\n \r\n {{ 'app.errorTexts.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n publication.citationsPanel.citationConferenceStartDate\r\n \r\n \r\n \r\n \r\n\r\n \r\n publication.citationsPanel.citationConferenceEndDate\r\n \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 { Directive, EventEmitter, Input, Output } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Publication } from 'src/modules/publication/models/publication.model';\r\nimport { PublicationResource } from 'src/modules/publication/resources/publication.resource';\r\n\r\n@Directive({})\r\nexport abstract class PublicationStepComponent {\r\n @Input() model: Publication;\r\n @Input() hideEmptyPanels: boolean;\r\n @Input() isEditMode: boolean;\r\n\r\n @Output() isValidChange: EventEmitter = new EventEmitter();\r\n @Output() isDirtyChange: EventEmitter = new EventEmitter();\r\n\r\n isValid: boolean = false;\r\n isDirty: boolean = false;\r\n\r\n private validForms: {};\r\n private dirtyForms: {};\r\n\r\n constructor(\r\n public translateService: TranslateService,\r\n protected resource: PublicationResource\r\n ) {\r\n this.validForms = {};\r\n this.dirtyForms = {};\r\n }\r\n\r\n protected changeStepState(formName: string, form: NgForm) {\r\n this.changeValidState(formName, form.valid);\r\n this.changeDirtyState(formName, form.dirty);\r\n }\r\n\r\n changeValidState(formName: string, isValid: boolean) {\r\n if (!this.validForms[formName]) {\r\n this.validForms[formName] = { isValid: isValid };\r\n }\r\n\r\n this.validForms[formName].isValid = isValid;\r\n\r\n const keys = Object.keys(this.validForms);\r\n let isValidStep = keys.length > 0;\r\n keys.forEach(form => {\r\n if (!this.validForms[form].isValid) {\r\n isValidStep = false;\r\n this.isValid = false;\r\n this.isValidChange.emit(isValidStep);\r\n return;\r\n }\r\n });\r\n\r\n this.isValid = isValidStep;\r\n this.isValidChange.emit(isValidStep);\r\n }\r\n\r\n changeDirtyState(formName: string, isDirty: boolean) {\r\n if (!this.dirtyForms[formName]) {\r\n this.dirtyForms[formName] = { isDirty: isDirty };\r\n }\r\n\r\n this.dirtyForms[formName].isDirty = isDirty;\r\n\r\n const keys = Object.keys(this.dirtyForms);\r\n let isDirtyStep = false;\r\n keys.forEach(form => {\r\n if (this.dirtyForms[form].isDirty) {\r\n isDirtyStep = true;\r\n this.isDirty = true;\r\n this.isDirtyChange.emit(isDirtyStep);\r\n return;\r\n }\r\n });\r\n\r\n this.isDirty = isDirtyStep;\r\n this.isDirtyChange.emit(isDirtyStep);\r\n }\r\n}\r\n","import { StepperSelectionEvent } from '@angular/cdk/stepper';\r\nimport { ChangeDetectorRef } from '@angular/core';\r\nimport { ViewEncapsulation } from '@angular/core';\r\nimport { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, NavigationEnd, Router, RouterEvent } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { CanDeactivateComponent } from 'src/infrastructure/components/can-deactivate/can-deactivate.component';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { UserPermissionVerificatorService } from 'src/infrastructure/services/user-permission-verification.service';\r\nimport { SystemMessageType } from 'src/infrastructure/system-messages/enums/system-message-type.enum';\r\nimport { SystemMessage } from 'src/infrastructure/system-messages/models/system-message.model';\r\nimport { SystemMessagesHandlerService } from 'src/infrastructure/system-messages/services/system-messages-handler.service';\r\nimport { UserRoleAliases } from 'src/modules/user/constants/user-role-aliases.constant';\r\nimport { UserRoleService } from 'src/modules/user/services/user-role.service';\r\nimport { UserService } from 'src/modules/user/services/user.service';\r\nimport { PublicationCreatorInformationDto } from '../../dtos/publication-creator-information.dto';\r\nimport { PublicationStep } from '../../dtos/publication-step.dto';\r\nimport { UnfinishedPublicationContentDto } from '../../dtos/unfinished-publication-content.dto';\r\nimport { UnfinishedPublicationDto } from '../../dtos/unfinished-publication-dto';\r\nimport { PublicationStatus } from '../../enums/publication-status.enum';\r\nimport { PublicationCreatorIdentifier } from '../../models/publication-creator-identifier.model';\r\nimport { PublicationCreator } from '../../models/publication-creator.model';\r\nimport { Publication } from '../../models/publication.model';\r\nimport { PublicationCreatorInformationResource } from '../../publication-creator-information.resource';\r\nimport { PublicationResource } from '../../resources/publication.resource';\r\nimport { UnfinishedPublicationResource } from '../../resources/unfinished-publication.resource';\r\nimport { WebOfScienceResource } from '../../resources/web-of-science.resource';\r\nimport { PublicationService } from '../../services/publication.service';\r\nimport { PublicationActionsHistoryComponent } from '../publication-actions-history/publication-actions-history.component';\r\nimport { WebOfScienceModalComponent } from '../web-of-science/web-of-science-modal/web-of-science-modal.component';\r\nimport { PublicationReasonModalComponent } from './publication-reason-modal.component';\r\n\r\n@Component({\r\n selector: 'publication',\r\n templateUrl: 'publication.component.html',\r\n styleUrls: ['./publication.styles.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class PublicationComponent extends CanDeactivateComponent implements OnInit, OnDestroy {\r\n model: Publication = new Publication();\r\n isEditMode = false;\r\n\r\n userOrcidId: boolean = false;\r\n\r\n arePublicationActionsVisible = false;\r\n canEditPublication = false;\r\n canMarkDeleted = false;\r\n canDeletePublication = false;\r\n canMarkPendingApproval = false;\r\n canDeny = false;\r\n canPublish = false;\r\n\r\n isValid = false;\r\n isDisabledLocalSave = true;\r\n\r\n steps: PublicationStep[] = [\r\n new PublicationStep(false, false, true),\r\n new PublicationStep(true, false),\r\n new PublicationStep(false, false),\r\n new PublicationStep(false, false),\r\n new PublicationStep(false, false)\r\n ];\r\n\r\n hideEmptyPanels = false;\r\n shouldReloadHierarchy: { value: boolean };\r\n\r\n publicationStatuses = PublicationStatus;\r\n currentStepIndex = 0;\r\n\r\n private originalModel = new Publication();\r\n private isDirty = false;\r\n\r\n hasUnsavedData(): boolean {\r\n return !this.model.id && !this.service.preventUnfinishedSave && !this.isDisabledLocalSave;\r\n }\r\n unsavedConfirmationMessage = 'publication.unsavedChangesModal.body';\r\n doUnsavedAction: Function = () => {\r\n this.savePublicationUnfinished();\r\n };\r\n\r\n private routerSubscription: Subscription;\r\n\r\n constructor(\r\n private resource: PublicationResource,\r\n private unfinishedResource: UnfinishedPublicationResource,\r\n private publicationCreatorInformationResource: PublicationCreatorInformationResource,\r\n private systemMessagesService: SystemMessagesHandlerService,\r\n private service: PublicationService,\r\n private route: ActivatedRoute,\r\n private dialog: MatDialog,\r\n private confirmModalService: ConfirmModalService,\r\n private userRoleService: UserRoleService,\r\n private userPermissionVerificatorService: UserPermissionVerificatorService,\r\n private loadingIndicator: LoadingIndicatorService,\r\n private router: Router,\r\n private userService: UserService,\r\n public translateService: TranslateService,\r\n ) {\r\n super();\r\n\r\n this.routerSubscription = this.router.events.subscribe((event: RouterEvent) => {\r\n if (event instanceof NavigationEnd) {\r\n const isRefresh = event.id === 1 && event.url === event.urlAfterRedirects;\r\n if (isRefresh && event.url === '/publications/new') {\r\n this.unfinishedResource.getLastUnfinishedPublication()\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((last: UnfinishedPublicationDto) => {\r\n if (last) {\r\n this.setModel(JSON.parse(last.content));\r\n this.model.unfinishedId = last.id;\r\n this.isEditMode = true;\r\n }\r\n });\r\n }\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n if (this.userService.getUserOrcidId()) {\r\n this.userOrcidId = true;\r\n }\r\n if (this.route.snapshot.params['id']) {\r\n const id = +this.route.snapshot.params['id'];\r\n this.loadPublication(id);\r\n } else {\r\n this.isEditMode = true;\r\n this.arePublicationActionsVisible = false;\r\n\r\n const unfinishedId = this.route.snapshot.queryParams['unfinishedId'];\r\n if (unfinishedId && !isNaN(+unfinishedId)) {\r\n this.loadingIndicator.show();\r\n this.unfinishedResource.getUnfinishedPublication(+unfinishedId)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((model: UnfinishedPublicationDto) => {\r\n this.setModel(JSON.parse(model.content));\r\n this.model.unfinishedId = model.id;\r\n });\r\n\r\n return;\r\n }\r\n\r\n if (!this.model.unfinishedId && this.userRoleService.hasRole(UserRoleAliases.SCIENTIST)) {\r\n this.loadingIndicator.show();\r\n this.publicationCreatorInformationResource.get()\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((result: PublicationCreatorInformationDto | null) => {\r\n if (result) {\r\n const creator = new PublicationCreator();\r\n creator.firstName = result.firstName;\r\n creator.lastName = result.lastName;\r\n creator.displayName = result.displayName;\r\n if (result.identifierSchemeId) {\r\n const newIdentifier = new PublicationCreatorIdentifier();\r\n newIdentifier.schemeId = result.identifierSchemeId;\r\n newIdentifier.scheme = result.identifierScheme;\r\n newIdentifier.value = result.identifierValue;\r\n newIdentifier.viewOrder = 1;\r\n\r\n if (!creator.identifiers) {\r\n creator.identifiers = [];\r\n }\r\n creator.identifiers.push(newIdentifier)\r\n }\r\n\r\n this.model.creators[0] = creator;\r\n this.setModel(JSON.parse(JSON.stringify(this.model)));\r\n }\r\n });\r\n } else {\r\n this.setPermissions(this.model);\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.routerSubscription && !this.routerSubscription.closed) {\r\n this.routerSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n changeStepValidity(stepIndex: number, isValid: boolean) {\r\n if (isValid === undefined || isValid === null) {\r\n return;\r\n }\r\n\r\n this.steps[stepIndex].isValid = isValid;\r\n this.isValid = this.steps.findIndex(e => !e.isValid) < 0;\r\n }\r\n\r\n changeStepDirtiness(stepIndex: number, isDirty: boolean) {\r\n if (isDirty === undefined || isDirty === null) {\r\n return;\r\n }\r\n\r\n this.steps[stepIndex].isDirty = isDirty;\r\n this.isDirty = this.steps.findIndex(e => e.isDirty) >= 0;\r\n this.isDisabledLocalSave = !this.isDirty;\r\n }\r\n\r\n edit() {\r\n if (!this.model.id || this.isEditMode) {\r\n return;\r\n }\r\n\r\n this.originalModel = JSON.parse(JSON.stringify(this.model));\r\n this.isEditMode = true;\r\n this.shouldReloadHierarchy = { value: this.currentStepIndex === 4 };\r\n }\r\n\r\n cancelEdit() {\r\n if (!this.model.id || !this.isEditMode) {\r\n return;\r\n }\r\n\r\n this.confirmModalService.openDialog(\r\n this.translateService.instant('publication.cancelConfirmationModal.header'),\r\n this.translateService.instant('publication.cancelConfirmationModal.body'),\r\n this.translateService.instant('publication.cancelConfirmationModal.acceptText'),\r\n this.translateService.instant('publication.cancelConfirmationModal.declineText')\r\n )\r\n .subscribe((result: boolean) => {\r\n if (result) {\r\n this.model = JSON.parse(JSON.stringify(this.originalModel));\r\n this.setPermissions(this.model);\r\n this.originalModel = new Publication();\r\n this.isEditMode = false;\r\n\r\n this.shouldReloadHierarchy = { value: this.currentStepIndex === 4 };\r\n }\r\n });\r\n }\r\n\r\n stepSelectionChanged(event: StepperSelectionEvent) {\r\n this.currentStepIndex = event.selectedIndex;\r\n this.steps.forEach((step: PublicationStep) => step.isSelected = false);\r\n this.steps[event.selectedIndex].isSelected = true;\r\n }\r\n\r\n savePublication(publicationStatus?: PublicationStatus) {\r\n let bodyPath = 'publication.confirmationModal.' + (publicationStatus ? `${PublicationStatus[publicationStatus]}.body` : 'defaultBody');\r\n this.confirmModalService.openDialog(\r\n this.translateService.instant('publication.confirmationModal.header'),\r\n this.translateService.instant(bodyPath),\r\n this.translateService.instant('publication.confirmationModal.acceptText'),\r\n this.translateService.instant('publication.confirmationModal.declineText')\r\n )\r\n .subscribe((result: boolean) => {\r\n if (result) {\r\n if (!this.model.id) {\r\n this.save(publicationStatus);\r\n } else {\r\n this.update(publicationStatus);\r\n }\r\n }\r\n });\r\n }\r\n\r\n savePublicationUnfinished() {\r\n const contentDto = new UnfinishedPublicationContentDto();\r\n contentDto.content = JSON.stringify(this.model);\r\n\r\n let observable = this.unfinishedResource.post(contentDto);\r\n if (this.model.unfinishedId) {\r\n observable = this.unfinishedResource.put(this.model.unfinishedId, contentDto);\r\n }\r\n\r\n this.loadingIndicator.show();\r\n\r\n observable\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((unfinishedPublicationId: number) => {\r\n this.isDisabledLocalSave = true;\r\n this.model.unfinishedId = unfinishedPublicationId;\r\n });\r\n }\r\n\r\n deletePublication() {\r\n this.service.doAction(this.model.unfinishedId, 'publication.confirmationModal.deleted.body', this.resource.delete(this.model.id), 'publication.messages.successDeleteMessage', 'publication.confirmationModal.deleted.acceptText');\r\n }\r\n\r\n markPending() {\r\n this.service.doAction(this.model.unfinishedId, 'publication.confirmationModal.pendingApproval.body', this.resource.markPending(this.model.id), 'publication.messages.successMarkPendingMessage');\r\n }\r\n\r\n getRecords() {\r\n this.dialog.open(WebOfScienceModalComponent, {\r\n disableClose: true,\r\n })\r\n .afterClosed()\r\n .subscribe((publication: Publication) => {\r\n if (publication) {\r\n this.setModel(publication);\r\n\r\n // PK:hack for local save button to work\r\n // without throwing exception: expression changed after...\r\n setTimeout(() => this.isDisabledLocalSave = false, 100);\r\n }\r\n });\r\n }\r\n\r\n markCorrection() {\r\n this.dialog.open(PublicationReasonModalComponent, {\r\n width: '40%',\r\n disableClose: true,\r\n data: {\r\n header: 'publication.reasonModal.pendingCorrections.header',\r\n confirmationText: 'publication.reasonModal.pendingCorrections.confirmationText',\r\n reason: 'publication.reasonModal.pendingCorrections.reason',\r\n saveBtn: 'publication.reasonModal.pendingCorrections.saveBtn'\r\n }\r\n })\r\n .afterClosed()\r\n .subscribe((result: string) => {\r\n if (result) {\r\n this.service.doPlainAction(this.resource.markCorrection(this.model.id, { reason: result }), 'publication.messages.successPendingCorrectionsMessage', this.model.unfinishedId);\r\n }\r\n });\r\n }\r\n\r\n deny() {\r\n this.dialog.open(PublicationReasonModalComponent, {\r\n width: '40%',\r\n disableClose: true,\r\n data: {\r\n header: 'publication.reasonModal.denial.header',\r\n confirmationText: 'publication.reasonModal.denial.confirmationText',\r\n reason: 'publication.reasonModal.denial.reason',\r\n saveBtn: 'publication.reasonModal.denial.saveBtn'\r\n }\r\n })\r\n .afterClosed()\r\n .subscribe((result: string) => {\r\n if (result) {\r\n this.service.doPlainAction(this.resource.deny(this.model.id, { reason: result }), 'publication.messages.successDenyMessage', this.model.unfinishedId);\r\n }\r\n });\r\n }\r\n\r\n publish() {\r\n this.service.doAction(this.model.unfinishedId, 'publication.confirmationModal.published.body', this.resource.publish(this.model.id), 'publication.messages.successPublishMessage');\r\n }\r\n\r\n markDeleted() {\r\n this.service.doAction(this.model.unfinishedId, 'publication.confirmationModal.deleted.body', this.resource.markDeleted(this.model.id), 'publication.messages.successMarkDeletedMessage', 'publication.confirmationModal.deleted.acceptText');\r\n }\r\n\r\n private loadPublication(id: number) {\r\n this.loadingIndicator.show();\r\n this.resource.getById(id)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((model: Publication) => {\r\n this.setModel(model);\r\n this.isEditMode = false;\r\n });\r\n }\r\n\r\n private save(newStatus?: PublicationStatus) {\r\n let oldStatus: PublicationStatus | null = null;\r\n if (newStatus) {\r\n oldStatus = this.model.status;\r\n this.model.status = newStatus;\r\n }\r\n\r\n this.loadingIndicator.show();\r\n this.resource.post(this.model)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((publication: Publication) => {\r\n const successMessage = new SystemMessage('publication.messages.successCreationMessage', SystemMessageType.success);\r\n this.systemMessagesService.messages.emit(successMessage);\r\n\r\n this.service.preventUnfinishedSave = true;\r\n\r\n if (this.model.unfinishedId) {\r\n this.unfinishedResource.delete(this.model.unfinishedId).subscribe();\r\n }\r\n\r\n this.router.navigate(['publications', publication.id, 'edit']);\r\n },\r\n () => {\r\n const errorMessage = new SystemMessage('publication.messages.failureCreationMessage', SystemMessageType.danger);\r\n this.systemMessagesService.messages.emit(errorMessage);\r\n\r\n if (newStatus) {\r\n this.model.status = oldStatus;\r\n this.setPermissions(this.model);\r\n }\r\n });\r\n }\r\n\r\n private update(newStatus?: PublicationStatus) {\r\n let oldStatus: PublicationStatus | null = null;\r\n if (newStatus) {\r\n oldStatus = this.model.status;\r\n this.model.status = newStatus;\r\n }\r\n\r\n this.loadingIndicator.show();\r\n this.resource.update(this.model.id, this.model)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((publication: Publication) => {\r\n const message = new SystemMessage('publication.messages.successUpdateMessage', SystemMessageType.success);\r\n this.systemMessagesService.messages.emit(message);\r\n\r\n this.setModel(publication);\r\n this.isEditMode = false;\r\n }, () => {\r\n if (newStatus) {\r\n this.model.status = oldStatus;\r\n this.setPermissions(this.model);\r\n }\r\n });\r\n }\r\n\r\n private setModel(model: Publication) {\r\n this.model = model;\r\n\r\n this.setPermissions(model);\r\n\r\n this.steps[3].isValid = this.model.files && this.model.files.length > 0;\r\n }\r\n\r\n private setPermissions(model: Publication) {\r\n this.arePublicationActionsVisible = model.id && model.status !== PublicationStatus.notApproved\r\n && (this.userPermissionVerificatorService.hasFullAccess()\r\n || this.userPermissionVerificatorService.isFromPublicationInstitution(model.moderatorInstitutionId)\r\n || this.userPermissionVerificatorService.isCreator(model.createdByUserId));\r\n\r\n this.canEditPublication = (this.userPermissionVerificatorService.hasFullAccess() && model.status !== PublicationStatus.published && model.status !== PublicationStatus.deleted && model.status !== PublicationStatus.notApproved)\r\n || (this.userPermissionVerificatorService.isFromPublicationInstitution(model.moderatorInstitutionId) && (model.status === PublicationStatus.draft || model.status === PublicationStatus.pendingCorrections || model.status === PublicationStatus.pendingApproval))\r\n || (this.userPermissionVerificatorService.isCreator(model.createdByUserId) && (model.status === PublicationStatus.draft || model.status === PublicationStatus.pendingCorrections));\r\n\r\n this.canDeletePublication = model.status === PublicationStatus.draft\r\n && (this.userPermissionVerificatorService.hasFullAccess()\r\n || this.userPermissionVerificatorService.isCreator(model.createdByUserId)\r\n || this.userPermissionVerificatorService.isFromPublicationInstitution(model.moderatorInstitutionId)\r\n );\r\n\r\n this.canMarkDeleted = model.status === PublicationStatus.published && this.userPermissionVerificatorService.hasFullAccess();\r\n\r\n this.canMarkPendingApproval = !model.id\r\n || ((model.status === PublicationStatus.draft || model.status === PublicationStatus.pendingCorrections)\r\n && (this.userPermissionVerificatorService.isCreator(model.createdByUserId) || this.userPermissionVerificatorService.isFromPublicationInstitution(model.moderatorInstitutionId)));\r\n\r\n this.canDeny = model.status === PublicationStatus.pendingApproval &&\r\n (this.userPermissionVerificatorService.hasFullAccess() || this.userPermissionVerificatorService.isFromPublicationInstitution(model.moderatorInstitutionId));\r\n\r\n this.canPublish = (!model.id && !this.userRoleService.hasRole(UserRoleAliases.SCIENTIST))\r\n || ((model.status === PublicationStatus.draft || model.status === PublicationStatus.pendingApproval) && this.userPermissionVerificatorService.hasFullAccess())\r\n || (model.status === PublicationStatus.pendingApproval && this.userPermissionVerificatorService.isFromPublicationInstitution(model.moderatorInstitutionId));\r\n }\r\n\r\n openActionsHistory(): void {\r\n this.dialog.open(PublicationActionsHistoryComponent, {\r\n width: '80%',\r\n maxHeight: '80%',\r\n disableClose: true,\r\n data: {\r\n publicationId: this.model.id\r\n }\r\n })\r\n .afterClosed()\r\n .subscribe();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

\r\n {{ (model.id ? 'publication.base.editHeader' : 'publication.base.newHeader') | translate }}\r\n

\r\n\r\n \r\n\r\n \r\n\r\n
\r\n \r\n {{ 'publication.base.hideEmptyPanels' | translate }}\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n\r\n\r\n \r\n \r\n
\r\n {{ 'publication.base.basicInformationStepTitle' | translate }}\r\n
\r\n
\r\n {{ 'publication.base.basicInformationStepAltTitle' | translate }}\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n {{ 'publication.base.additionalInformationStepTitle' | translate }}\r\n
\r\n
\r\n {{ 'publication.base.additionalInformationStepAltTitle' | translate }}\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n {{ 'publication.base.licenseStepTitle' | translate }}\r\n
\r\n
\r\n {{ 'publication.base.licenseStepAltTitle' | translate }}\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n {{ 'publication.base.attachedFilesStepTitle' | translate }}\r\n
\r\n
\r\n {{ 'publication.base.attachedFilesStepAltTitle' | translate }}\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n {{ 'publication.base.publishStepTitle' | translate }}\r\n
\r\n
\r\n {{ 'publication.base.publishStepAltTitle' | translate }}\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n\r\n \r\n \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 { TranslateService } from '@ngx-translate/core';\r\nimport { BaseEntitySearchComponent } from 'src/infrastructure/components/base-entity-search.component';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { PublicationStatus } from '../enums/publication-status.enum';\r\nimport { Publication } from '../models/publication.model';\r\nimport { PublicationResource } from '../resources/publication.resource';\r\nimport { PublicationSearchFilterService } from '../services/publication-search-filter.service';\r\n\r\n@Component({\r\n selector: 'publication-search',\r\n templateUrl: 'publication-search.component.html',\r\n styleUrls: ['./publication-search.styles.css']\r\n})\r\n\r\nexport class PublicationSearchComponent extends BaseEntitySearchComponent{\r\n publicationStatuses = PublicationStatus;\r\n\r\n displayedColumns = ['actions', 'titles', 'authors', 'status', 'modificationDate'];\r\n\r\n constructor(\r\n public filter: PublicationSearchFilterService,\r\n protected resource: PublicationResource,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n public translateService: TranslateService\r\n ) {\r\n super(filter, resource, loadingIndicator);\r\n }\r\n}\r\n","\r\n \r\n \r\n \r\n search\r\n {{ 'publication.search.filterPanelTitle' | translate }}\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n publication.search.filterTitle\r\n \r\n \r\n\r\n \r\n publication.search.filterCreatorFirstName\r\n \r\n \r\n\r\n \r\n publication.search.filterCreatorLastName\r\n \r\n \r\n\r\n \r\n publication.search.filterStatus\r\n \r\n \r\n {{ 'publication.statuses.draft' | translate }}\r\n \r\n \r\n {{ 'publication.statuses.pendingApproval' | translate }}\r\n \r\n \r\n {{ 'publication.statuses.published' | translate }}\r\n \r\n \r\n {{ 'publication.statuses.pendingCorrections' | translate }}\r\n \r\n \r\n {{ 'publication.statuses.deleted' | translate }}\r\n \r\n \r\n {{ 'publication.statuses.notApproved' | translate }}\r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n\r\n \r\n search\r\n \r\n \r\n {{ 'publication.search.titlesTh' | translate }}\r\n \r\n
\r\n {{ title }}\r\n
\r\n
\r\n {{ 'publication.search.authorsTh' | translate }}\r\n \r\n
\r\n {{ author }}\r\n
\r\n
\r\n {{ 'publication.search.statusTh' | translate }}\r\n \r\n \r\n \r\n {{ 'publication.search.modificationDateTh' | translate }}\r\n {{ item.modificationDate | date: 'dd.MM.yyyy' }}
\r\n\r\n\r\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\r\nimport { PublicationStatus } from '../enums/publication-status.enum';\r\n\r\n@Component({\r\n selector: 'publication-status',\r\n templateUrl: 'publication-status.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\n\r\nexport class PublicationStatusComponent {\r\n @Input() status: PublicationStatus;\r\n\r\n publicationStatuses = PublicationStatus;\r\n}\r\n","\r\n \r\n note\r\n \r\n\r\n \r\n visibility\r\n \r\n\r\n \r\n desktop_windows\r\n \r\n\r\n \r\n build\r\n \r\n\r\n \r\n highlight_off\r\n \r\n\r\n \r\n visibility_off\r\n \r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { UnfinishedPublicationSearchResultDto } from '../dtos/unfinished-publication-search-result.dto';\r\nimport { UnfinishedPublicationResource } from '../resources/unfinished-publication.resource';\r\n\r\n@Component({\r\n selector: 'unfinished-publications-table',\r\n templateUrl: './unfinished-publications-table.component.html'\r\n})\r\nexport class UnfinishedPublicationsTableComponent implements OnInit {\r\n unfinishedPublications: UnfinishedPublicationSearchResultDto[] = [];\r\n\r\n displayedColumns = ['editAction', 'titles', 'authors', 'deleteAction'];\r\n\r\n constructor(\r\n private loadingIndicator: LoadingIndicatorService,\r\n private unfinishedPublicationsResource: UnfinishedPublicationResource,\r\n private confirmModalService: ConfirmModalService,\r\n private translateService: TranslateService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.loadUnfinishedPublications();\r\n }\r\n\r\n deleteUnfinishedPublication(id: number) {\r\n this.confirmModalService.openDialog(\r\n this.translateService.instant('publication.unfinished.deleteConfirmationModal.header'),\r\n this.translateService.instant('publication.unfinished.deleteConfirmationModal.body'),\r\n this.translateService.instant('publication.unfinished.deleteConfirmationModal.acceptText'),\r\n this.translateService.instant('publication.unfinished.deleteConfirmationModal.declineText')\r\n )\r\n .subscribe((result: boolean) => {\r\n if (result) {\r\n this.delete(id);\r\n }\r\n });\r\n }\r\n\r\n private loadUnfinishedPublications() {\r\n this.loadingIndicator.show();\r\n this.unfinishedPublicationsResource.getUserUnfinishedPublications()\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((result: UnfinishedPublicationSearchResultDto[]) => this.unfinishedPublications = result);\r\n }\r\n\r\n private delete(id: number) {\r\n this.loadingIndicator.show();\r\n this.unfinishedPublicationsResource.delete(id)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe(() => {\r\n const index = this.unfinishedPublications.findIndex((e: UnfinishedPublicationSearchResultDto) => e.id == id);\r\n if (index >= 0) {\r\n this.unfinishedPublications.splice(index, 1);\r\n this.unfinishedPublications = [...this.unfinishedPublications];\r\n }\r\n });\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n\r\n \r\n edit\r\n \r\n \r\n {{ 'publication.unfinished.titlesTh' | translate }}\r\n \r\n \r\n
\r\n {{ title }}\r\n
\r\n
\r\n\r\n \r\n {{ 'publication.noResults' | translate }}\r\n \r\n
\r\n {{ 'publication.unfinished.authorsTh' | translate }}\r\n \r\n \r\n
\r\n {{ author }}\r\n
\r\n
\r\n\r\n \r\n {{ 'publication.noResults' | translate }}\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { Publication } from 'src/modules/publication/models/publication.model';\r\nimport { WebOfScience } from 'src/modules/publication/models/web-of-science.model';\r\nimport { WebOfScienceResource } from 'src/modules/publication/resources/web-of-science.resource';\r\nimport { UserService } from 'src/modules/user/services/user.service';\r\n\r\n@Component({\r\n selector: 'app-web-of-science-modal',\r\n templateUrl: './web-of-science-modal.component.html',\r\n styleUrls: ['./web-of-science-modal.component.css']\r\n})\r\nexport class WebOfScienceModalComponent implements OnInit {\r\n records: WebOfScience;\r\n offset: number = 1;\r\n limit: number = 100;\r\n hasMore: boolean = true;\r\n recordsFound: number;\r\n hasRecords: boolean = true;\r\n\r\n constructor(\r\n private loadingIndicator: LoadingIndicatorService,\r\n private resource: WebOfScienceResource,\r\n public dialogRef: MatDialogRef,\r\n private userService: UserService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.loadRecords();\r\n }\r\n\r\n private loadRecords(): void {\r\n this.loadingIndicator.show({ customTimeout: 0.0025 });\r\n this.resource.getRecords(this.userService.getUserOrcidId(), this.limit, this.offset)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((records: WebOfScience) => {\r\n this.records = records;\r\n if (this.records.queryResult.recordsFound == this.records.data.length) {\r\n this.hasMore = false;\r\n }\r\n if (this.records.data.length == 0) {\r\n this.hasRecords = false;\r\n }\r\n });\r\n\r\n }\r\n\r\n loadMoreRecords() {\r\n this.offset += this.limit;\r\n this.loadingIndicator.show();\r\n this.resource.getRecords(this.userService.getUserOrcidId(), this.limit, this.offset)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe(records => {\r\n records.data.forEach(data => {\r\n this.records.data.push(data);\r\n });\r\n if (this.records.queryResult.recordsFound == this.records.data.length) {\r\n this.hasMore = false;\r\n }\r\n })\r\n }\r\n\r\n loadRecord(ut: string) {\r\n this.loadingIndicator.show();\r\n this.resource.getRecord(ut)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((data: Publication) => this.dialogRef.close(data));\r\n }\r\n}\r\n","
\r\n
\r\n

{{ 'publication.externalPublications.webOfScienceTitle' | translate}}

\r\n\r\n cancel\r\n
\r\n\r\n
\r\n
\r\n
\r\n

{{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
{{ 'publication.externalPublications.noWosPublications' | translate}}
\r\n\r\n cancel\r\n
\r\n","export class SearchExistingFilterDto {\r\n term: string;\r\n limit: number;\r\n offset: number;\r\n}\r\n","export class PublicationStep {\r\n isValid: boolean;\r\n isDirty: boolean;\r\n isSelected: boolean;\r\n\r\n constructor(\r\n isValid: boolean,\r\n isDirty: boolean,\r\n isSelected?: boolean\r\n ) {\r\n this.isValid = isValid;\r\n this.isDirty = isDirty;\r\n this.isSelected = isSelected || false;\r\n }\r\n}\r\n","export class UnfinishedPublicationContentDto {\r\n content: string;\r\n}\r\n","export enum NameType {\r\n organizational = 1,\r\n personal = 2\r\n}\r\n","export enum PublicationActionType {\r\n previewPublication = 1,\r\n createPublication = 2,\r\n updatePublication = 3,\r\n markPendingApproval = 4,\r\n publishPublication = 5,\r\n markPendingCorrections = 6,\r\n denyPublication = 7,\r\n markDeleted = 8,\r\n deletePublication = 9\r\n}\r\n","export enum PublicationStatus {\r\n draft = 1,\r\n pendingApproval = 2,\r\n published = 3,\r\n pendingCorrections = 4,\r\n deleted = 5,\r\n notApproved = 6\r\n}\r\n","import { ResourceIdentifierType } from 'src/modules/nomenclature/models/resource-identifier-type.model';\r\nimport { PublicationEntity } from './publication-entity.model';\r\n\r\nexport class PublicationAlternateIdentifier extends PublicationEntity {\r\n value: string;\r\n\r\n typeId: number;\r\n type: ResourceIdentifierType;\r\n}\r\n","import { AudienceType } from 'src/modules/nomenclature/models/audience-type.model';\r\nimport { PublicationEntity } from './publication-entity.model';\r\n\r\nexport class PublicationAudience extends PublicationEntity {\r\n typeId: number;\r\n type: AudienceType;\r\n}\r\n","import { Classification } from 'src/modules/classification/models/classification.model';\r\nimport { PublicationEntity } from './publication-entity.model';\r\n\r\nexport class PublicationClassification extends PublicationEntity {\r\n classificationId: number;\r\n classification: Classification;\r\n}\r\n","import { NameIdentifierScheme } from 'src/modules/nomenclature/models/name-identifier-scheme.model';\r\nimport { OrganizationalIdentifierScheme } from 'src/modules/nomenclature/models/organizational-identifier-scheme.model';\r\nimport { PublicationContributor } from './publication-contributor.model';\r\n\r\nexport class PublicationContributorIdentifier {\r\n id: number;\r\n\r\n publicationContributorId: number;\r\n publicationContributor: PublicationContributor;\r\n\r\n value: string;\r\n\r\n schemeId: number | null;\r\n scheme: NameIdentifierScheme;\r\n\r\n organizationalSchemeId: number | null;\r\n organizationalScheme: OrganizationalIdentifierScheme;\r\n\r\n viewOrder: number | null;\r\n}\r\n","import { ContributorType } from 'src/modules/nomenclature/models/contributor-type.model';\r\nimport { NameType } from '../enums/name-type.enum';\r\nimport { PublicationContributorIdentifier } from './publication-contributor-identifier.model';\r\nimport { PublicationEntity } from './publication-entity.model';\r\n\r\nexport class PublicationContributor extends PublicationEntity {\r\n typeId: number;\r\n type: ContributorType;\r\n\r\n nameType: NameType;\r\n\r\n firstName: string;\r\n lastName: string;\r\n displayName: string;\r\n\r\n institutionAffiliationName: string;\r\n\r\n identifiers: PublicationContributorIdentifier[];\r\n\r\n constructor() {\r\n super();\r\n this.nameType = NameType.personal;\r\n }\r\n}\r\n","import { PublicationEntity } from './publication-entity.model';\r\n\r\nexport class PublicationCoverage extends PublicationEntity {\r\n value: string;\r\n}\r\n","import { PublicationCreator } from './publication-creator.model';\r\n\r\nexport class PublicationCreatorAffiliation {\r\n id: number;\r\n\r\n publicationCreatorId: number;\r\n publicationCreator: PublicationCreator;\r\n\r\n institutionName: string;\r\n\r\n viewOrder: number | null;\r\n}\r\n","import { NameIdentifierScheme } from 'src/modules/nomenclature/models/name-identifier-scheme.model';\r\nimport { PublicationCreator } from './publication-creator.model';\r\n\r\nexport class PublicationCreatorIdentifier {\r\n id: number;\r\n\r\n publicationCreatorId: number;\r\n publicationCreator: PublicationCreator;\r\n\r\n value: string;\r\n schemeId: number;\r\n scheme: NameIdentifierScheme;\r\n\r\n viewOrder: number | null;\r\n}\r\n","import { PublicationCreatorAffiliation } from './publication-creator-affiliation.model';\r\nimport { PublicationCreatorIdentifier } from './publication-creator-identifier.model';\r\nimport { PublicationEntity } from './publication-entity.model';\r\n\r\nexport class PublicationCreator extends PublicationEntity {\r\n firstName: string;\r\n lastName: string;\r\n displayName: string;\r\n\r\n language: string;\r\n\r\n identifiers: PublicationCreatorIdentifier[];\r\n affiliations: PublicationCreatorAffiliation[];\r\n}\r\n","import { Language } from 'src/modules/nomenclature/models/language.model';\r\nimport { PublicationEntity } from './publication-entity.model';\r\n\r\nexport class PublicationDescription extends PublicationEntity {\r\n value: string;\r\n\r\n languageId: number | null;\r\n language: Language;\r\n}\r\n","import { Publication } from './publication.model';\r\n\r\nexport class PublicationEntity {\r\n publicationId: number;\r\n publication: Publication;\r\n\r\n viewOrder: number;\r\n\r\n uniqueId: number;\r\n\r\n constructor() {\r\n this.viewOrder = 1;\r\n }\r\n}\r\n","import { AttachedFile } from 'src/infrastructure/base/models/attached-file.model';\r\n\r\nexport class PublicationFile extends AttachedFile {\r\n publicationId: number;\r\n}\r\n","import { PublicationEntity } from './publication-entity.model';\r\n\r\nexport class PublicationFormat extends PublicationEntity {\r\n value: string;\r\n}\r\n","import { OrganizationalIdentifierScheme } from 'src/modules/nomenclature/models/organizational-identifier-scheme.model';\r\nimport { PublicationEntity } from './publication-entity.model';\r\n\r\nexport class PublicationFundingReference extends PublicationEntity {\r\n name: string;\r\n\r\n identifier: string;\r\n schemeId: number | null;\r\n scheme: OrganizationalIdentifierScheme;\r\n\r\n awardNumber: string;\r\n awardURI: string;\r\n awardTitle: string;\r\n}\r\n","import { Language } from 'src/modules/nomenclature/models/language.model';\r\nimport { PublicationEntity } from './publication-entity.model';\r\n\r\nexport class PublicationLanguage extends PublicationEntity {\r\n languageId: number;\r\n language: Language;\r\n}\r\n","import { PublicationEntity } from './publication-entity.model';\r\n\r\nexport class PublicationPublisher extends PublicationEntity {\r\n name: string;\r\n}\r\n","import { RelationType } from 'src/modules/nomenclature/models/relation-type.model';\r\nimport { ResourceIdentifierType } from 'src/modules/nomenclature/models/resource-identifier-type.model';\r\nimport { ResourceTypeGeneral } from 'src/modules/nomenclature/models/resource-type-general.model';\r\nimport { PublicationEntity } from './publication-entity.model';\r\n\r\nexport class PublicationRelatedIdentifier extends PublicationEntity {\r\n value: string;\r\n\r\n typeId: number;\r\n type: ResourceIdentifierType;\r\n\r\n relationTypeId: number;\r\n relationType: RelationType;\r\n\r\n relatedMetadataScheme: string;\r\n schemeURI: string;\r\n schemeType: string;\r\n\r\n resourceTypeGeneralId: number | null;\r\n resourceTypeGeneral: ResourceTypeGeneral;\r\n}\r\n","import { PublicationEntity } from './publication-entity.model';\r\n\r\nexport class PublicationSize extends PublicationEntity {\r\n value: string;\r\n}\r\n","import { PublicationEntity } from './publication-entity.model';\r\n\r\nexport class PublicationSource extends PublicationEntity {\r\n value: string;\r\n}\r\n","import { Language } from 'src/modules/nomenclature/models/language.model';\r\nimport { PublicationEntity } from './publication-entity.model';\r\n\r\nexport class PublicationSubject extends PublicationEntity {\r\n value: string;\r\n\r\n languageId: number;\r\n language: Language;\r\n}\r\n","import { Language } from 'src/modules/nomenclature/models/language.model';\r\nimport { TitleType } from 'src/modules/nomenclature/models/title-type.model';\r\nimport { PublicationEntity } from './publication-entity.model';\r\n\r\nexport class PublicationTitle extends PublicationEntity {\r\n value: string;\r\n\r\n typeId: number;\r\n type: TitleType;\r\n\r\n languageId: number | null;\r\n language: Language;\r\n}\r\n","import { Entity } from 'src/infrastructure/base/models/entity.model';\r\nimport { Institution } from 'src/modules/institution/models/institution.model';\r\nimport { AccessRight } from 'src/modules/nomenclature/models/access-right.model';\r\nimport { LicenseType } from 'src/modules/nomenclature/models/license-type.model';\r\nimport { ResourceIdentifierType } from 'src/modules/nomenclature/models/resource-identifier-type.model';\r\nimport { ResourceType } from 'src/modules/nomenclature/models/resource-type.model';\r\nimport { PublicationStatus } from '../enums/publication-status.enum';\r\nimport { PublicationAlternateIdentifier } from './publication-alternate-identifier.model';\r\nimport { PublicationAudience } from './publication-audience.model';\r\nimport { PublicationClassification } from './publication-classification.model';\r\nimport { PublicationContributor } from './publication-contributor.model';\r\nimport { PublicationCoverage } from './publication-coverage.model';\r\nimport { PublicationCreator } from './publication-creator.model';\r\nimport { PublicationDate } from './publication-date.model';\r\nimport { PublicationDenialReason } from './publication-denial-reason.model';\r\nimport { PublicationDescription } from './publication-description.model';\r\nimport { PublicationFile } from './publication-file.model';\r\nimport { PublicationFormat } from './publication-format.model';\r\nimport { PublicationFundingReference } from './publication-funding-reference.model';\r\nimport { PublicationLanguage } from './publication-language.model';\r\nimport { PublicationPublisher } from './publication-publisher.model';\r\nimport { PublicationRelatedIdentifier } from './publication-related-identifier.model';\r\nimport { PublicationSize } from './publication-size.model';\r\nimport { PublicationSource } from './publication-source.model';\r\nimport { PublicationSubject } from './publication-subject.model';\r\nimport { PublicationTitle } from './publication-title.model';\r\n\r\nexport class Publication extends Entity {\r\n classifications: PublicationClassification[];\r\n\r\n titles: PublicationTitle[];\r\n creators: PublicationCreator[];\r\n contributors: PublicationContributor[];\r\n\r\n fundingReferences: PublicationFundingReference[];\r\n\r\n alternateIdentifiers: PublicationAlternateIdentifier[];\r\n relatedIdentifiers: PublicationRelatedIdentifier[];\r\n\r\n embargoPeriodStart: Date | null;\r\n embargoPeriodEnd: Date | null;\r\n\r\n languages: PublicationLanguage[];\r\n\r\n publishers: PublicationPublisher[];\r\n\r\n publishYear: number;\r\n publishMonth: number | null;\r\n publishDay: number | null;\r\n\r\n resourceTypeId: number | null;\r\n resourceType: ResourceType;\r\n\r\n descriptions: PublicationDescription[];\r\n\r\n formats: PublicationFormat[];\r\n\r\n identifier: string;\r\n identifierTypeId: number | null;\r\n identifierType: ResourceIdentifierType;\r\n\r\n sources: PublicationSource[];\r\n\r\n subjects: PublicationSubject[];\r\n\r\n accessRightId: number | null;\r\n accessRight: AccessRight;\r\n\r\n isDepositAgreementChecked: boolean | null;\r\n\r\n licenseTypeId: number | null;\r\n licenseType: LicenseType;\r\n\r\n otherLicenseCondition: string;\r\n otherLicenseUrl: string;\r\n\r\n licenseStartDate: Date | null;\r\n\r\n sizes: PublicationSize[];\r\n\r\n coverages: PublicationCoverage[];\r\n\r\n publicationVersion: string;\r\n publicationVersionURI: string;\r\n\r\n resourceVersion: string;\r\n resourceVersionURI: string;\r\n\r\n citationTitle: string;\r\n citationVolume: string;\r\n citationIssue: string;\r\n citationStartPage: number | null;\r\n citationEndPage: number | null;\r\n citationEdition: number | null;\r\n citationConferencePlace: string;\r\n citationConferenceStartDate: Date | null;\r\n citationConferenceEndDate: Date | null;\r\n\r\n files: PublicationFile[];\r\n\r\n audiences: PublicationAudience[];\r\n\r\n otherDates: PublicationDate[];\r\n\r\n status: PublicationStatus;\r\n\r\n moderatorInstitutionId: number;\r\n moderatorInstitution: Institution;\r\n\r\n createdByUserId: number;\r\n\r\n isHarvestingPropagationEnabled: boolean;\r\n\r\n denialReasons: PublicationDenialReason[];\r\n\r\n unfinishedId: number | null;\r\n\r\n constructor() {\r\n super();\r\n this.titles = [new PublicationTitle()];\r\n this.creators = [new PublicationCreator()];\r\n this.status = PublicationStatus.draft;\r\n this.isHarvestingPropagationEnabled = true;\r\n }\r\n}\r\n","export class WebOfScience {\r\n queryResult: QueryResult;\r\n data: Data[] = [];\r\n}\r\n\r\nexport class QueryResult {\r\n recordsFound: number;\r\n}\r\n\r\nexport class Data {\r\n ut: string;\r\n title: Title;\r\n}\r\n\r\nexport class Title {\r\n Title: string[];\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { BaseResource } from 'src/infrastructure/base/base.resource';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { PublicationCreatorInformationDto } from './dtos/publication-creator-information.dto';\r\n\r\n@Injectable()\r\nexport class PublicationCreatorInformationResource extends BaseResource {\r\n constructor(\r\n http: HttpClient,\r\n configuration: Configuration\r\n ) {\r\n super(http, configuration, 'PublicationCreatorInformation');\r\n }\r\n\r\n get(): Observable {\r\n return this.http.get(this.baseUrl);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { CanDeactivateGuard } from 'src/infrastructure/components/can-deactivate/can-deactivate.guard';\r\nimport { AuthGuard } from 'src/infrastructure/interceptors/auth.guard';\r\nimport { PublicationComponent } from './components/publication-details/publication.component';\r\nimport { PublicationSearchComponent } from './components/publication-search.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'publications',\r\n data: {\r\n title: 'app.titles.publications.search'\r\n },\r\n children: [\r\n {\r\n path: '',\r\n component: PublicationSearchComponent,\r\n canActivate: [AuthGuard]\r\n },\r\n {\r\n path: ':id/edit',\r\n component: PublicationComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.publications.edit'\r\n }\r\n },\r\n {\r\n path: 'new',\r\n component: PublicationComponent,\r\n canActivate: [AuthGuard],\r\n canDeactivate: [CanDeactivateGuard],\r\n data: {\r\n title: 'app.titles.publications.new'\r\n }\r\n }\r\n ]\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\n\r\nexport class PublicationRoutingModule { }\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { NgxMaskModule } from 'ngx-mask';\r\nimport { MaterialComponentsModule } from 'src/infrastructure/material-components.module';\r\nimport { SharedModule } from 'src/infrastructure/shared.module';\r\nimport { ClassificationModule } from '../classification/classification.module';\r\nimport { ExistingPublicationsModalComponent } from './components/existing-publications-modal.component';\r\nimport { PublicationActionsHistoryComponent } from './components/publication-actions-history/publication-actions-history.component';\r\nimport { PublicationAlternateIdentifiersComponent } from './components/publication-details/multiple-publication-components/publication-alternate-identifiers.component';\r\nimport { PublicationAudiencesComponent } from './components/publication-details/multiple-publication-components/publication-audiences.component';\r\nimport { PublicationContributorsComponent } from './components/publication-details/multiple-publication-components/publication-contributors.component';\r\nimport { PublicationCoveragesComponent } from './components/publication-details/multiple-publication-components/publication-coverages.component';\r\nimport { PublicationCreatorsComponent } from './components/publication-details/multiple-publication-components/publication-creators.component';\r\nimport { PublicationDescriptionsComponent } from './components/publication-details/multiple-publication-components/publication-descriptions.component';\r\nimport { PublicationFilesComponent } from './components/publication-details/multiple-publication-components/publication-files.component';\r\nimport { PublicationFormatsComponent } from './components/publication-details/multiple-publication-components/publication-formats.component';\r\nimport { PublicationFundingReferencesComponent } from './components/publication-details/multiple-publication-components/publication-funding-references.component';\r\nimport { PublicationLanguagesComponent } from './components/publication-details/multiple-publication-components/publication-languages.component';\r\nimport { PublicationPublishersComponent } from './components/publication-details/multiple-publication-components/publication-publishers.component';\r\nimport { PublicationRelatedIdentifiersComponent } from './components/publication-details/multiple-publication-components/publication-related-identifiers.component';\r\nimport { PublicationSizesComponent } from './components/publication-details/multiple-publication-components/publication-sizes.component';\r\nimport { PublicationSourcesComponent } from './components/publication-details/multiple-publication-components/publication-sources.component';\r\nimport { PublicationSubjectsComponent } from './components/publication-details/multiple-publication-components/publication-subjects.component';\r\nimport { PublicationTitlesComponent } from './components/publication-details/multiple-publication-components/publication-titles.component';\r\nimport { PublicationAffiliationSelectComponent } from './components/publication-details/publication-affiliation-select.component';\r\nimport { PublicationDenialReasonsPanelComponent } from './components/publication-details/publication-denial-reasons-panel.component';\r\nimport { PublicationLocalSaveBtnComponent } from './components/publication-details/publication-local-save-btn.component';\r\nimport { PublicationReasonModalComponent } from './components/publication-details/publication-reason-modal.component';\r\nimport { PublicationStepActionsComponent } from './components/publication-details/publication-step-actions.component';\r\nimport { PublicationStepFiveComponent } from './components/publication-details/publication-steps/publication-step-five.component';\r\nimport { PublicationStepFourComponent } from './components/publication-details/publication-steps/publication-step-four.component';\r\nimport { PublicationStepOneComponent } from './components/publication-details/publication-steps/publication-step-one.component';\r\nimport { PublicationStepThreeComponent } from './components/publication-details/publication-steps/publication-step-three.component';\r\nimport { PublicationStepTwoComponent } from './components/publication-details/publication-steps/publication-step-two.component';\r\nimport { PublicationComponent } from './components/publication-details/publication.component';\r\nimport { PublicationSearchComponent } from './components/publication-search.component';\r\nimport { PublicationStatusComponent } from './components/publication-status.component';\r\nimport { UnfinishedPublicationsTableComponent } from './components/unfinished-publications-table.component';\r\nimport { PublicationCreatorInformationResource } from './publication-creator-information.resource';\r\nimport { PublicationRoutingModule } from './publication-routing.module';\r\nimport { PublicationActionHistoryResource } from './resources/publication-action-history.resource';\r\nimport { PublicationResource } from './resources/publication.resource';\r\nimport { UnfinishedPublicationResource } from './resources/unfinished-publication.resource';\r\nimport { PublicationSearchFilterService } from './services/publication-search-filter.service';\r\nimport { PublicationService } from './services/publication.service';\r\nimport { WebOfScienceModalComponent } from './components/web-of-science/web-of-science-modal/web-of-science-modal.component';\r\nimport { WebOfScienceResource } from './resources/web-of-science.resource';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n SharedModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MaterialComponentsModule,\r\n ClassificationModule,\r\n TranslateModule,\r\n PublicationRoutingModule,\r\n NgxMaskModule\r\n ],\r\n declarations: [\r\n PublicationSearchComponent,\r\n PublicationStatusComponent,\r\n UnfinishedPublicationsTableComponent,\r\n PublicationComponent,\r\n PublicationStepOneComponent,\r\n PublicationStepTwoComponent,\r\n PublicationStepThreeComponent,\r\n PublicationStepFourComponent,\r\n PublicationStepFiveComponent,\r\n PublicationLocalSaveBtnComponent,\r\n PublicationDenialReasonsPanelComponent,\r\n PublicationTitlesComponent,\r\n PublicationCreatorsComponent,\r\n PublicationAffiliationSelectComponent,\r\n PublicationContributorsComponent,\r\n PublicationDescriptionsComponent,\r\n PublicationLanguagesComponent,\r\n PublicationSubjectsComponent,\r\n PublicationFundingReferencesComponent,\r\n PublicationRelatedIdentifiersComponent,\r\n PublicationAlternateIdentifiersComponent,\r\n PublicationSourcesComponent,\r\n PublicationPublishersComponent,\r\n PublicationCoveragesComponent,\r\n PublicationAudiencesComponent,\r\n PublicationFormatsComponent,\r\n PublicationSizesComponent,\r\n PublicationStepActionsComponent,\r\n PublicationFilesComponent,\r\n PublicationReasonModalComponent,\r\n PublicationActionsHistoryComponent,\r\n ExistingPublicationsModalComponent,\r\n WebOfScienceModalComponent\r\n ],\r\n providers: [\r\n PublicationSearchFilterService,\r\n PublicationService,\r\n PublicationResource,\r\n UnfinishedPublicationResource,\r\n PublicationCreatorInformationResource,\r\n PublicationActionHistoryResource,\r\n WebOfScienceResource\r\n ],\r\n})\r\nexport class PublicationModule { }\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { BaseResource } from 'src/infrastructure/base/base.resource';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { PublicationActionHistoryDto } from '../dtos/publication-action-history.dto';\r\n\r\n@Injectable()\r\nexport class PublicationActionHistoryResource extends BaseResource {\r\n constructor(\r\n protected http: HttpClient,\r\n protected configuration: Configuration,\r\n ) {\r\n super(http, configuration, 'PublicationActionHistory');\r\n }\r\n\r\n getPublicationActionsHistory(publicationId: number): Observable {\r\n return this.http.get(`${this.baseUrl}/${publicationId}`);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { BaseEntityResource } from 'src/infrastructure/base/base-entity.resource';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { FlatClassificationHierarchyItemDto } from 'src/modules/classification/dtos/flat-classification-hierarchy-item.dto';\r\nimport { SearchExistingFilterDto } from '../dtos/existing-search-filter.dto';\r\nimport { PublicationSearchDto } from '../dtos/publication-search-result.dto';\r\nimport { Publication } from '../models/publication.model';\r\nimport { PublicationSearchFilterService } from '../services/publication-search-filter.service';\r\n\r\n@Injectable()\r\nexport class PublicationResource extends BaseEntityResource {\r\n constructor(\r\n protected http: HttpClient,\r\n protected configuration: Configuration,\r\n ) {\r\n super(http, configuration, 'Publication');\r\n }\r\n\r\n public getFiltered(filter: PublicationSearchFilterService): Observable {\r\n return this.http.get(`${this.baseUrl}${this.composeQueryString(filter)}`);\r\n }\r\n\r\n public delete(id: number): Observable {\r\n return this.http.delete(`${this.baseUrl}/${id}`);\r\n }\r\n\r\n public markPending(id: number): Observable {\r\n return this.http.post(`${this.baseUrl}/${id}/PendingApproval`, null);\r\n }\r\n\r\n public publish(id: number): Observable {\r\n return this.http.post(`${this.baseUrl}/${id}/Publishing`, null);\r\n }\r\n\r\n public markCorrection(id: number, details: { reason: string }): Observable {\r\n return this.http.post(`${this.baseUrl}/${id}/Correction`, details);\r\n }\r\n\r\n public deny(id: number, details: { reason: string }): Observable {\r\n return this.http.post(`${this.baseUrl}/${id}/Denial`, details);\r\n }\r\n\r\n public markDeleted(id: number): Observable {\r\n return this.http.post(`${this.baseUrl}/${id}/Deletion`, null);\r\n }\r\n\r\n public getPublicationClassifications(id: number): Observable {\r\n return this.http.get(`${this.baseUrl}/${id}/Classifications`);\r\n }\r\n\r\n public checkExistingIdentifier(params: any): Observable {\r\n return this.http.get(`${this.baseUrl}/ExistingIdentifier`, { params });\r\n }\r\n\r\n public checkExistingTitle(filter: SearchExistingFilterDto): Observable {\r\n return this.http.post(`${this.baseUrl}/ExistingTitle`, filter);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { BaseResource } from 'src/infrastructure/base/base.resource';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { UnfinishedPublicationContentDto } from '../dtos/unfinished-publication-content.dto';\r\nimport { UnfinishedPublicationDto } from '../dtos/unfinished-publication-dto';\r\nimport { UnfinishedPublicationSearchResultDto } from '../dtos/unfinished-publication-search-result.dto';\r\n\r\n@Injectable()\r\nexport class UnfinishedPublicationResource extends BaseResource {\r\n constructor(\r\n http: HttpClient,\r\n configuration: Configuration\r\n ) {\r\n super(http, configuration, 'UnfinishedPublication');\r\n }\r\n\r\n getUserUnfinishedPublications(): Observable {\r\n return this.http.get(this.baseUrl);\r\n }\r\n\r\n getUnfinishedPublication(id: number): Observable {\r\n return this.http.get(`${this.baseUrl}/${id}`);\r\n }\r\n\r\n getLastUnfinishedPublication(): Observable {\r\n return this.http.get(`${this.baseUrl}/Last`);\r\n }\r\n\r\n post(contentDto: UnfinishedPublicationContentDto): Observable {\r\n return this.http.post(this.baseUrl, contentDto);\r\n }\r\n\r\n put(id: number, contentDto: UnfinishedPublicationContentDto): Observable {\r\n return this.http.put(`${this.baseUrl}/${id}`, contentDto);\r\n }\r\n\r\n delete(id: number): Observable {\r\n return this.http.delete(`${this.baseUrl}/${id}`);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { BaseResource } from \"src/infrastructure/base/base.resource\";\r\nimport { Configuration } from \"src/infrastructure/base/configuration/configuration\";\r\nimport { Publication } from \"../models/publication.model\";\r\nimport { WebOfScience } from \"../models/web-of-science.model\";\r\n\r\n@Injectable()\r\nexport class WebOfScienceResource extends BaseResource {\r\n records: WebOfScience = new WebOfScience();\r\n\r\n constructor(\r\n protected http: HttpClient,\r\n protected configuration: Configuration,) {\r\n super(http, configuration, 'WebOfScience');\r\n }\r\n\r\n getRecords(orcidId: string, limit: number, offset: number): Observable {\r\n return this.http.get(`${this.baseUrl}/records?orcidId=${orcidId}&limit=${limit}&offset=${offset}`);\r\n }\r\n\r\n getRecord(ut: string): Observable {\r\n return this.http.get(`${this.baseUrl}/records/${ut}`);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseEntityFilterService } from 'src/infrastructure/base/interfaces/base-entity-filter.service';\r\nimport { Institution } from 'src/modules/institution/models/institution.model';\r\nimport { PublicationStatus } from '../enums/publication-status.enum';\r\n\r\n@Injectable()\r\nexport class PublicationSearchFilterService extends BaseEntityFilterService {\r\n constructor() {\r\n super(10);\r\n }\r\n\r\n title: string;\r\n creatorFirstName: string;\r\n creatorLastName: string;\r\n\r\n status: PublicationStatus | null;\r\n\r\n moderatorInstitutionId: number | null;\r\n moderatorInstitution: Institution;\r\n\r\n clear() {\r\n this.limit = 10;\r\n this.offset = 0;\r\n\r\n this.title = null;\r\n this.creatorFirstName = null;\r\n this.creatorLastName = null;\r\n this.status = null;\r\n this.moderatorInstitutionId = null;\r\n this.moderatorInstitution = null;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Observable } from 'rxjs';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ConfirmModalService } from 'src/infrastructure/services/confirm-modal.service';\r\nimport { SystemMessageType } from 'src/infrastructure/system-messages/enums/system-message-type.enum';\r\nimport { SystemMessage } from 'src/infrastructure/system-messages/models/system-message.model';\r\nimport { SystemMessagesHandlerService } from 'src/infrastructure/system-messages/services/system-messages-handler.service';\r\nimport { UnfinishedPublicationResource } from '../resources/unfinished-publication.resource';\r\n\r\n@Injectable()\r\nexport class PublicationService {\r\n preventUnfinishedSave = false;\r\n\r\n constructor(\r\n private unfinishedPublicationsResource: UnfinishedPublicationResource,\r\n private systemMessagesService: SystemMessagesHandlerService,\r\n private loadingIndicator: LoadingIndicatorService,\r\n private translateService: TranslateService,\r\n private confirmModalService: ConfirmModalService,\r\n private router: Router\r\n ) {\r\n\r\n }\r\n\r\n doAction(unfinishedId: number | null, confirmationBody: string, action: Observable, successMessageBody: string, acceptText?: string) {\r\n this.confirmModalService.openDialog(\r\n this.translateService.instant('publication.confirmationModal.header'),\r\n this.translateService.instant(confirmationBody),\r\n this.translateService.instant(acceptText || 'publication.confirmationModal.acceptText'),\r\n this.translateService.instant('publication.confirmationModal.declineText')\r\n )\r\n .subscribe((result: boolean) => {\r\n if (result) {\r\n this.doPlainAction(action, successMessageBody, unfinishedId);\r\n }\r\n });\r\n }\r\n\r\n doPlainAction(action: Observable, successMessageBody: string, unfinishedId?: number) {\r\n this.loadingIndicator.show();\r\n action\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe(() => {\r\n this.preventUnfinishedSave = true;\r\n\r\n const systemMessage = new SystemMessage(successMessageBody, SystemMessageType.success);\r\n this.systemMessagesService.messages.emit(systemMessage);\r\n\r\n if (unfinishedId) {\r\n this.unfinishedPublicationsResource.delete(unfinishedId).subscribe()\r\n }\r\n\r\n this.router.navigate(['publications']);\r\n });\r\n }\r\n}\r\n","import { EventEmitter, Output } from \"@angular/core\";\r\nimport { BaseEntityFilterService } from \"src/infrastructure/base/interfaces/base-entity-filter.service\";\r\n\r\nexport class BaseReportsSearch {\r\n @Output() searchEvent = new EventEmitter();\r\n @Output() exportExcelEvent = new EventEmitter();\r\n\r\n constructor(\r\n public filter: TFilter\r\n ) {\r\n }\r\n\r\n clearFilter() {\r\n this.filter.clear();\r\n this.search();\r\n }\r\n\r\n exportExcel() {\r\n this.exportExcelEvent.emit();\r\n }\r\n\r\n search() {\r\n this.searchEvent.emit();\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { InstitutionSearchFilterService } from '../../services/institution-search-filter.service';\r\nimport { BaseReportsSearch } from '../base-reports-search';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'reports-organization-search',\r\n templateUrl: './reports-organization-search.component.html',\r\n})\r\nexport class ReportsOrganizationSearchComponent extends BaseReportsSearch {\r\n constructor(\r\n public filter: InstitutionSearchFilterService,\r\n public translateService: TranslateService\r\n ) {\r\n super(filter);\r\n }\r\n}\r\n","\r\n \r\n search\r\n {{ 'reports.filterPanelTitle' | translate }}\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n reports.publicationFromDate\r\n \r\n \r\n \r\n \r\n \r\n news.search.publicationToDate\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\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, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { InstitutionsDto } from '../../dtos/institutionsDto';\r\nimport { ReportResource } from '../../report.resource';\r\nimport { InstitutionSearchFilterService } from '../../services/institution-search-filter.service';\r\nimport * as FileSaver from 'file-saver';\r\n\r\n@Component({\r\n selector: 'reports-organization',\r\n templateUrl: './reports-organization.component.html',\r\n providers: [InstitutionSearchFilterService]\r\n})\r\nexport class ReportsOrganizationComponent implements OnInit {\r\n institutions: InstitutionsDto[] = [];\r\n isLoading = true;\r\n public canLoadMore = false;\r\n\r\n constructor(\r\n public filter: InstitutionSearchFilterService,\r\n protected resource: ReportResource,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n public translateService: TranslateService\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.search();\r\n }\r\n\r\n search(loadMore?: boolean): void {\r\n this.filter.offset = loadMore ? this.institutions.length : 0;\r\n\r\n this.loadingIndicator.show();\r\n this.resource.searchOrganizations(this.filter)\r\n .pipe(\r\n finalize(() => {\r\n this.loadingIndicator.hide();\r\n this.isLoading = false;\r\n })\r\n )\r\n .subscribe(data => {\r\n if (loadMore) {\r\n this.institutions.push(...data);\r\n } else {\r\n this.institutions = data;\r\n }\r\n this.canLoadMore = data.length === this.filter.limit;\r\n });\r\n }\r\n\r\n clearFilter() {\r\n this.filter.clear();\r\n this.search();\r\n }\r\n\r\n exportExcel() {\r\n this.resource.exportInstitutionAsExcel(this.filter)\r\n .subscribe(data => {\r\n const blob = new Blob([data], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8' });\r\n FileSaver.saveAs(blob, 'InstitutionsReport.xlsx');\r\n });\r\n }\r\n}\r\n","\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'reports.оrganization'| translate }}{{'reports.publicationCount'| translate }}
{{item.organizationName}}{{item.publicationCount}}
\r\n\r\n","import { Component } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ScientistSearchFilterService } from '../../services/scientist-search-filter.service';\r\nimport { BaseReportsSearch } from '../base-reports-search';\r\n\r\n@Component({\r\n selector: 'reports-scientist-search',\r\n templateUrl: './reports-scientist-search.component.html',\r\n})\r\nexport class ReportsScientistSearchComponent extends BaseReportsSearch {\r\n constructor(\r\n public filter: ScientistSearchFilterService,\r\n public translateService: TranslateService\r\n ) {\r\n super(filter);\r\n }\r\n}\r\n","\r\n \r\n search\r\n {{ 'reports.filterPanelTitle' | translate }}\r\n \r\n
\r\n
\r\n \r\n reports.scientistName\r\n \r\n \r\n \r\n reports.identifier\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n reports.publicationFromDate\r\n \r\n \r\n \r\n \r\n \r\n reports.publicationToDate\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\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, OnInit } from '@angular/core';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ScientistDto } from '../../dtos/scientistDto';\r\nimport { ReportResource } from '../../report.resource';\r\nimport { ScientistSearchFilterService } from '../../services/scientist-search-filter.service';\r\nimport * as FileSaver from 'file-saver';\r\n\r\n@Component({\r\n selector: 'reports-scientist',\r\n templateUrl: './reports-scientist.component.html',\r\n providers: [ScientistSearchFilterService]\r\n})\r\nexport class ReportsScientistComponent implements OnInit {\r\n scientists: ScientistDto[] = [];\r\n isLoading = true;\r\n public canLoadMore = false;\r\n\r\n constructor(\r\n public filter: ScientistSearchFilterService,\r\n protected resource: ReportResource,\r\n private loadingIndicator: LoadingIndicatorService\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.search();\r\n }\r\n\r\n search(loadMore?: boolean): void {\r\n this.filter.offset = loadMore ? this.scientists.length : 0;\r\n\r\n this.loadingIndicator.show();\r\n this.resource.searchScientists(this.filter)\r\n .pipe(\r\n finalize(() => {\r\n this.loadingIndicator.hide();\r\n this.isLoading = false;\r\n })\r\n )\r\n .subscribe(data => {\r\n if (loadMore) {\r\n this.scientists.push(...data);\r\n } else {\r\n this.scientists = data;\r\n }\r\n this.canLoadMore = data.length === this.filter.limit;\r\n });\r\n }\r\n\r\n clearFilter() {\r\n this.filter.clear();\r\n this.search();\r\n }\r\n\r\n exportExcel() {\r\n this.resource.exportScientistAsExcel(this.filter)\r\n .subscribe(data => {\r\n const blob = new Blob([data], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8' });\r\n FileSaver.saveAs(blob, 'ScientistsReport.xlsx');\r\n });\r\n }\r\n}\r\n","\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'reports.scientist'| translate }}{{'reports.оrganization'| translate }}{{'reports.identifier'| translate }}{{'reports.publicationCount'| translate }}
{{item.scientistName}}{{item.organizationName}}{{item.identifier}}{{item.publicationCount}}
\r\n\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { BaseEntityResource } from \"src/infrastructure/base/base-entity.resource\";\r\nimport { Configuration } from \"src/infrastructure/base/configuration/configuration\";\r\nimport { Publication } from \"../publication/models/publication.model\";\r\nimport { InstitutionSearchFilterService } from \"./services/institution-search-filter.service\";\r\nimport { ScientistSearchFilterService } from \"./services/scientist-search-filter.service\";\r\n\r\n@Injectable()\r\nexport class ReportResource extends BaseEntityResource {\r\n constructor(\r\n http: HttpClient,\r\n configuration: Configuration\r\n ) {\r\n super(http, configuration, 'Reports');\r\n }\r\n\r\n searchOrganizations(filter?: InstitutionSearchFilterService): Observable {\r\n return this.http.get(`${this.baseUrl}/InstitutionReport${this.composeQueryString(filter)}`);\r\n }\r\n\r\n searchScientists(filter: ScientistSearchFilterService): Observable {\r\n return this.http.get(`${this.baseUrl}/ScientistReport${this.composeQueryString(filter)}`);\r\n }\r\n\r\n exportInstitutionAsExcel(filter: InstitutionSearchFilterService) {\r\n return this.http.get(`${this.baseUrl}/InstitutionExcel${this.composeQueryString(filter)}`, { responseType: 'blob' });\r\n }\r\n\r\n exportScientistAsExcel(filter: ScientistSearchFilterService) {\r\n return this.http.get(`${this.baseUrl}/ScientistExcel${this.composeQueryString(filter)}`, { responseType: 'blob' });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { AuthGuard } from 'src/infrastructure/interceptors/auth.guard';\r\nimport { ReportsOrganizationComponent } from './components/reports-organization/reports-organization.component';\r\nimport { ReportsScientistComponent } from './components/reports-scientist/reports-scientist.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'reports',\r\n children: [\r\n {\r\n path: '',\r\n redirectTo: 'scientist',\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: 'scientist',\r\n component: ReportsScientistComponent,\r\n canActivate: [AuthGuard],\r\n },\r\n {\r\n path: 'organization',\r\n component: ReportsOrganizationComponent,\r\n canActivate: [AuthGuard],\r\n },\r\n ]\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class ReportsRoutingModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MaterialComponentsModule } from 'src/infrastructure/material-components.module';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { SharedModule } from 'src/infrastructure/shared.module';\r\nimport { ReportsRoutingModule } from './reports-routing.module';\r\nimport { ReportResource } from './report.resource';\r\nimport { ScientistSearchFilterService } from './services/scientist-search-filter.service';\r\nimport { ReportsOrganizationComponent } from './components/reports-organization/reports-organization.component';\r\nimport { ReportsScientistComponent } from './components/reports-scientist/reports-scientist.component';\r\nimport { InstitutionSearchFilterService } from './services/institution-search-filter.service';\r\nimport { ReportsOrganizationSearchComponent } from './components/reports-organization-search/reports-organization-search.component';\r\nimport { ReportsScientistSearchComponent } from './components/reports-scientist-search/reports-scientist-search.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n MaterialComponentsModule,\r\n TranslateModule,\r\n SharedModule,\r\n ReportsRoutingModule\r\n ],\r\n declarations: [\r\n ReportsScientistComponent,\r\n ReportsOrganizationComponent,\r\n ReportsOrganizationSearchComponent,\r\n ReportsScientistSearchComponent,\r\n ],\r\n providers: [\r\n InstitutionSearchFilterService,\r\n ScientistSearchFilterService,\r\n ReportResource\r\n ]\r\n})\r\n\r\nexport class ReportsModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseEntityFilterService } from 'src/infrastructure/base/interfaces/base-entity-filter.service';\r\nimport { Institution } from 'src/modules/institution/models/institution.model';\r\n\r\n@Injectable()\r\nexport class InstitutionSearchFilterService extends BaseEntityFilterService {\r\n\r\n constructor() {\r\n super(10);\r\n }\r\n\r\n institution: Institution;\r\n institutionId: number;\r\n\r\n publicationFromDate: Date | null;\r\n publicationToDate: Date | null;\r\n\r\n limit: number;\r\n offset: number;\r\n\r\n clear() {\r\n this.limit = 10;\r\n this.offset = 0;\r\n\r\n this.institution = null;\r\n this.institutionId = null;\r\n\r\n this.publicationFromDate = null;\r\n this.publicationToDate = null;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseEntityFilterService } from 'src/infrastructure/base/interfaces/base-entity-filter.service';\r\n\r\n@Injectable()\r\nexport class ScientistSearchFilterService extends BaseEntityFilterService {\r\n\r\n constructor() {\r\n super(10);\r\n }\r\n\r\n scientistName: string;\r\n institutionName: string;\r\n identifier: string;\r\n publicationFromDate: Date | null;\r\n publicationToDate: Date | null;\r\n limit: number;\r\n offset: number;\r\n\r\n\r\n clear() {\r\n this.limit = 10;\r\n this.offset = 0;\r\n\r\n this.scientistName = null;\r\n this.institutionName = null;\r\n this.identifier = null;\r\n this.publicationFromDate = null;\r\n this.publicationToDate = null;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { finalize, map } from 'rxjs/operators';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { RewardService } from './services/reward.service';\r\n\r\n@Injectable()\r\nexport class CanActivateRewardGuard implements CanActivate {\r\n constructor(\r\n private router: Router,\r\n private loadingIndicator: LoadingIndicatorService,\r\n private resource: RewardService\r\n ) { }\r\n\r\n canActivate(_: ActivatedRouteSnapshot, __: RouterStateSnapshot): Observable {\r\n this.loadingIndicator.show();\r\n return this.resource.canSelect()\r\n .pipe(\r\n map((result: boolean) => {\r\n if (!result) {\r\n this.router.navigate(['']);\r\n }\r\n\r\n return result;\r\n }),\r\n finalize(() => this.loadingIndicator.hide())\r\n );\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { SystemMessageType } from 'src/infrastructure/system-messages/enums/system-message-type.enum';\r\nimport { SystemMessage } from 'src/infrastructure/system-messages/models/system-message.model';\r\nimport { SystemMessagesHandlerService } from 'src/infrastructure/system-messages/services/system-messages-handler.service';\r\nimport { AddRewardColorModel } from '../../models/addRewardColor.model';\r\nimport { RewardColorModel } from '../../models/rewardColor.model';\r\nimport { REWARD_COLORS, REWARD_NAMES } from '../../models/rewardNames.model';\r\nimport { RewardResourceModel } from '../../models/rewardResource.model';\r\nimport { RewardService } from '../../services/reward.service';\r\n\r\n@Component({\r\n selector: 'app-reward-select',\r\n templateUrl: './reward-select.component.html',\r\n styleUrls: ['./reward-select.component.css']\r\n})\r\nexport class RewardSelectComponent implements OnInit {\r\n rewardsResource: RewardResourceModel[] = [];\r\n selectedRewards: RewardColorModel[] = [];\r\n phoneNumber: string;\r\n controlEnabled: boolean = true;\r\n isLoading = false;\r\n\r\n constructor(\r\n private service: RewardService,\r\n private router: Router,\r\n private systemMessagesService: SystemMessagesHandlerService,\r\n private loadingIndicator: LoadingIndicatorService\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.loadingIndicator.show();\r\n\r\n this.service.getAllRewards()\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe(data => {\r\n this.rewardsResource = data;\r\n this.rewardsResource.forEach((reward: RewardResourceModel) => {\r\n this.setDefault(reward);\r\n })\r\n });\r\n }\r\n\r\n sendSelectedReward() {\r\n const missingColorEl = this.selectedRewards.find(e => !e.colorId);\r\n if (!missingColorEl) {\r\n let rewardToAdd = new AddRewardColorModel();\r\n rewardToAdd.penColorId = this.getColorId(REWARD_NAMES.PEN);\r\n rewardToAdd.badgeColorId = this.getColorId(REWARD_NAMES.BADGE);\r\n rewardToAdd.notebookColorId = this.getColorId(REWARD_NAMES.NOTEBOOK);\r\n rewardToAdd.usbFlashDriveColorId = this.getColorId(REWARD_NAMES.USB_FLASH_DRIVE);\r\n rewardToAdd.userPhoneNumber = this.phoneNumber;\r\n\r\n this.isLoading = true;\r\n this.loadingIndicator.show();\r\n this.service.sendSelectedReward(rewardToAdd)\r\n .pipe(\r\n finalize(() => {\r\n this.isLoading = false;\r\n this.loadingIndicator.hide();\r\n })\r\n )\r\n .subscribe(() => {\r\n this.systemMessagesService.messages.emit(new SystemMessage('app.errorTexts.reward_SuccessSubmit', SystemMessageType.success));\r\n return this.router.navigate(['publications']);\r\n });\r\n }\r\n else {\r\n const errorMessage = new SystemMessage('app.errorTexts.reward_ColorRequired', SystemMessageType.danger);\r\n this.systemMessagesService.messages.emit(errorMessage);\r\n }\r\n }\r\n\r\n onColorChange(reward: RewardResourceModel, colorName: string): void {\r\n const selectedReward = this.selectedRewards.find(r => r.name === reward.name);\r\n selectedReward.colorName = colorName;\r\n\r\n const existingColor = reward.colorImg.find(colorImg => colorImg.colorName === colorName);\r\n if (existingColor) {\r\n selectedReward.colorId = existingColor?.colorId;\r\n reward.currentImg = existingColor?.imgPath;\r\n } else {\r\n selectedReward.colorId = null;\r\n reward.currentImg = reward.defaultColor?.imgPath;\r\n }\r\n }\r\n\r\n private setDefault(reward: RewardResourceModel): void {\r\n const defaultColor = reward.colorImg.find(e => e.colorName === REWARD_COLORS.DEFAULT || e.colorName === REWARD_COLORS.DEFAULT_TYPE);\r\n\r\n if (reward.colorImg.length - 1 === 0) {\r\n reward.avaliableColor = false;\r\n }\r\n else {\r\n let selectedReward = new RewardColorModel();\r\n selectedReward.name = reward.name;\r\n selectedReward.colorName = defaultColor.colorName;\r\n this.selectedRewards.push(selectedReward);\r\n\r\n const index = reward.colorImg.findIndex(e => e.colorName === REWARD_COLORS.DEFAULT || e.colorName === REWARD_COLORS.DEFAULT_TYPE);\r\n if (index >= 0) {\r\n reward.colorImg.splice(index, 1);\r\n }\r\n\r\n reward.avaliableColor = true;\r\n }\r\n\r\n reward.currentImg = defaultColor?.imgPath;\r\n reward.defaultColor = defaultColor;\r\n }\r\n\r\n private getColorId(rewardName: string): number | null {\r\n var toCheck = this.selectedRewards.find(({ name }) => name == rewardName);\r\n return toCheck?.colorId;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'rewards.'+ reward.name | translate }}
\r\n
\r\n \"no\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ 'rewards.phoneLabel' | translate}}\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n","export class AddRewardColorModel {\r\n penColorId: number;\r\n badgeColorId: number;\r\n notebookColorId: number;\r\n usbFlashDriveColorId: number;\r\n userPhoneNumber\r\n}\r\n","export class RewardColorModel {\r\n name: string;\r\n colorName: string;\r\n colorId: number;\r\n}\r\n","export const REWARD_NAMES = {\r\n PEN: 'pen',\r\n BADGE: 'badge',\r\n NOTEBOOK: 'notebook',\r\n USB_FLASH_DRIVE: 'usbFlashDrive'\r\n}\r\n\r\nexport const REWARD_COLORS = {\r\n DEFAULT: 'default',\r\n DEFAULT_TYPE: 'defaultType',\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { AuthGuard } from 'src/infrastructure/interceptors/auth.guard';\r\nimport { CanActivateRewardGuard } from './can-activate-reward.guard';\r\nimport { RewardSelectComponent } from './components/reward-select/reward-select.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'reward',\r\n component: RewardSelectComponent,\r\n canActivate: [AuthGuard, CanActivateRewardGuard],\r\n data: {\r\n title: 'app.titles.rewards'\r\n },\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class RewardRoutingModule { }\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { MaterialComponentsModule } from 'src/infrastructure/material-components.module';\r\nimport { CanActivateRewardGuard } from './can-activate-reward.guard';\r\nimport { RewardSelectComponent } from './components/reward-select/reward-select.component';\r\nimport { RewardRoutingModule } from './reward-routing.module';\r\nimport { RewardService } from './services/reward.service';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n TranslateModule,\r\n RewardRoutingModule,\r\n MaterialComponentsModule\r\n ],\r\n declarations: [\r\n RewardSelectComponent,\r\n ],\r\n providers: [\r\n RewardService,\r\n CanActivateRewardGuard\r\n ],\r\n})\r\nexport class RewardModule { }\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { AddRewardColorModel } from '../models/addRewardColor.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RewardService {\r\n private baseUrl: string = 'api/Rewards';\r\n\r\n constructor(\r\n private http: HttpClient,\r\n ) { }\r\n\r\n getAllRewards(): Observable {\r\n return this.http.get(`${this.baseUrl}`);\r\n }\r\n\r\n canSelect(): Observable {\r\n return this.http.get(`${this.baseUrl}/CanSelect`);\r\n }\r\n\r\n sendSelectedReward(selectedRewards: AddRewardColorModel): Observable {\r\n return this.http.post(`${this.baseUrl}/SelectedReward`, selectedRewards);\r\n }\r\n}\r\n","import { HttpErrorResponse } from '@angular/common/http';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { DomainError } from 'src/infrastructure/base/models/domain-error.model';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { LoginDto } from '../dtos/login.dto';\r\nimport { UserLoginInfoDto } from '../dtos/user-login-info.dto';\r\nimport { UserLoginResource } from '../resources/user-login.resource';\r\nimport { UserLoginService } from '../services/user-login.service';\r\n\r\n@Component({\r\n selector: 'user-login',\r\n templateUrl: 'login.component.html',\r\n styleUrls: ['./login.styles.css', './credentials-container.styles.css']\r\n})\r\n\r\nexport class LoginComponent implements OnInit {\r\n model: LoginDto = new LoginDto();\r\n errors: string[] = [];\r\n isRegistrationEnabled = false;\r\n\r\n private handledDomainErrors = [\r\n 'User_InvalidCredentials'\r\n ];\r\n\r\n constructor(\r\n private configuration: Configuration,\r\n private router: Router,\r\n private resource: UserLoginResource,\r\n private userLoginService: UserLoginService,\r\n private loadingIndicator: LoadingIndicatorService\r\n ) { }\r\n\r\n ngOnInit() {\r\n if (localStorage.getItem(this.configuration.tokenProperty)) {\r\n this.router.navigate(['']);\r\n }\r\n\r\n this.isRegistrationEnabled = this.configuration.isRegistrationEnabled;\r\n }\r\n\r\n login() {\r\n this.loadingIndicator.show();\r\n this.resource.login(this.model)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe(\r\n (userLoginInfoDto: UserLoginInfoDto) => this.userLoginService.login(userLoginInfoDto),\r\n (err: any) => {\r\n if (err instanceof HttpErrorResponse) {\r\n this.errors = [];\r\n if (err.status === 422) {\r\n const data = err.error as DomainError;\r\n for (let i = 0; i <= data.messages.length - 1; i++) {\r\n const domainErrorCode = data.messages[i].domainErrorCode;\r\n if (this.handledDomainErrors.indexOf(domainErrorCode) >= 0) {\r\n this.errors.push('user.login.errors.' + domainErrorCode);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n );\r\n }\r\n}\r\n","\r\n \r\n \r\n

user.login.title

\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n user.login.username\r\n \r\n \r\n {{ 'user.login.errors.' + error.key | translate }}\r\n \r\n \r\n\r\n \r\n user.login.password\r\n \r\n \r\n {{ 'user.login.errors.' + error.key | translate }}\r\n \r\n \r\n\r\n \r\n \r\n {{ error | translate }}\r\n \r\n \r\n\r\n \r\n
\r\n\r\n
\r\n {{ 'user.login.separator' | translate | lowercase }}\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n","import { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { Component } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { AppLanguagesService } from 'src/app/app-languages.service';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { DomainError } from 'src/infrastructure/base/models/domain-error.model';\r\nimport { LanguageDto } from 'src/infrastructure/components/language-select/dtos/language.dto';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { UserLoginInfoDto } from '../../dtos/user-login-info.dto';\r\nimport { UserLoginService } from '../../services/user-login.service';\r\n\r\n@Component({\r\n templateUrl: './orcid-connect.component.html',\r\n styleUrls: ['./orcid-connect.component.css', '../credentials-container.styles.css']\r\n})\r\nexport class OrcidConnectComponent {\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private http: HttpClient,\r\n private configuration: Configuration,\r\n private userLoginService: UserLoginService,\r\n private loadingIndicator: LoadingIndicatorService,\r\n private appLanguagesService: AppLanguagesService\r\n ) {\r\n this.languages = this.appLanguagesService.getAppLanguages();\r\n\r\n this.orcidUri = this.configuration.orcid.uri;\r\n this.route.queryParams.subscribe(queryParams => {\r\n if (queryParams['accessDenied']) {\r\n localStorage.setItem(this.configuration.orcidDeclinedAuthorization, \"true\");\r\n }\r\n else {\r\n Object.assign(this.data, queryParams);\r\n this.connectModel.orcid = this.data.orcid;\r\n this.registrationModel.orcid = this.data.orcid;\r\n let names = this.data.name.split(' ');\r\n if (names[0] && names[1]) {\r\n this.registrationModel.firstName = names[0];\r\n this.registrationModel.lastName = names[1];\r\n }\r\n }\r\n });\r\n }\r\n\r\n languages: LanguageDto[] = [];\r\n\r\n orcidUri: string;\r\n\r\n showConnect = true;\r\n showRegister = false;\r\n\r\n data = {\r\n username: \"\",\r\n orcid: \"\",\r\n name: \"\"\r\n };\r\n\r\n connectModel = {\r\n username: \"\",\r\n password: \"\",\r\n orcid: \"\",\r\n errors: []\r\n };\r\n\r\n registrationModel = {\r\n email: \"\",\r\n firstName: \"\",\r\n middleName: \"\",\r\n lastName: \"\",\r\n institutionIds: [],\r\n orcid: \"\",\r\n errors: []\r\n };\r\n\r\n domainErrors = [\r\n 'User_InvalidCredentials',\r\n 'User_EmailTaken'\r\n ];\r\n\r\n connect() {\r\n this.loadingIndicator.show();\r\n this.http.post(`${this.configuration.restUrl}/orcid/connect`, this.connectModel)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe(\r\n (userLoginInfoDto: UserLoginInfoDto) => {\r\n this.userLoginService.login(userLoginInfoDto);\r\n localStorage.setItem(this.configuration.orcidLoggedInProperty, \"true\");\r\n window.close();\r\n },\r\n (err: any) => {\r\n if (err instanceof HttpErrorResponse) {\r\n this.connectModel.errors = [];\r\n if (err.status === 422) {\r\n this.connectModel.errors = (err.error as DomainError).messages\r\n .filter(msg => this.domainErrors.find(e => e === msg.domainErrorCode))\r\n .map(msg => 'user.login.errors.' + msg.domainErrorCode);\r\n }\r\n }\r\n }\r\n );\r\n }\r\n\r\n // register() {\r\n // this.http\r\n // .post(`${this.configuration.restUrl}/orcid/register`, this.registrationModel)\r\n // .subscribe(\r\n // (userLoginInfoDto: UserLoginInfoDto) => {\r\n // this.userLoginService.login(userLoginInfoDto);\r\n // this.loadingIndicator.hide();\r\n // localStorage.setItem(this.configuration.orcidLoggedInProperty, \"true\");\r\n // },\r\n // (err: any) => {\r\n // this.loadingIndicator.hide();\r\n\r\n // if (err instanceof HttpErrorResponse) {\r\n // if (err.status === 422) {\r\n // this.registrationModel.errors = (err.error as DomainError).messages\r\n // .filter(msg => this.domainErrors.find(e => e === msg.domainErrorCode))\r\n // .map(msg => 'user.create.errors.' + msg.domainErrorCode);\r\n // }\r\n // }\r\n // });\r\n // }\r\n}\r\n","
\r\n \r\n
\r\n\r\n\r\n \r\n \r\n user.orcid.welcome\r\n {{data.name}}\r\n \r\n \r\n \r\n \"ORCID\r\n {{orcidUri}}/{{data.orcid}}\r\n \r\n \r\n \r\n \r\n

user.orcid.explain

\r\n\r\n
\r\n
user.orcid.connectFrom.headline
\r\n
\r\n \r\n user.login.username\r\n \r\n \r\n\r\n \r\n user.login.password\r\n \r\n \r\n \r\n \r\n {{ error | translate }}\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n","import { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { UserLoginService } from '../../services/user-login.service';\r\nimport { SystemMessagesHandlerService } from 'src/infrastructure/system-messages/services/system-messages-handler.service';\r\nimport { SystemMessage } from 'src/infrastructure/system-messages/models/system-message.model';\r\nimport { SystemMessageType } from 'src/infrastructure/system-messages/enums/system-message-type.enum';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\n\r\n@Component({\r\n selector: 'orcid-login-btn',\r\n templateUrl: './orcid-login-btn.component.html',\r\n styleUrls: ['./orcid-login-btn.component.css']\r\n})\r\nexport class OrcidLoginBtnComponent implements OnInit, OnDestroy {\r\n\r\n constructor(\r\n private router: Router,\r\n private userLoginService: UserLoginService,\r\n private systemMessageService: SystemMessagesHandlerService,\r\n private config: Configuration\r\n ) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngOnDestroy() {\r\n this.cleanup();\r\n }\r\n\r\n oauthWindow: Window = null;\r\n storageEventListener = this.handleStorageEvent.bind(this);\r\n\r\n openORCID() {\r\n let clientId = this.config.orcid.clientId;\r\n let endpoint = this.config.orcid.auth;\r\n let scope = \"/authenticate\";\r\n let responseType = \"code\";\r\n let redirectUri = this.config.orcid.redirectUri;\r\n\r\n this.oauthWindow = window.open(\r\n `${endpoint}?client_id=${clientId}&response_type=${responseType}&scope=${scope}&redirect_uri=${redirectUri}`,\r\n \"_blank\", \"height=800, width=600, top=100, left=100\", true\r\n );\r\n\r\n window.addEventListener('storage', this.storageEventListener);\r\n }\r\n\r\n handleStorageEvent() {\r\n if (localStorage.getItem(this.config.orcidLoggedInProperty)) {\r\n this.userLoginService.phantomLogin();\r\n this.router.navigate(['/publications']);\r\n\r\n const systemMessage = new SystemMessage('user.orcid.messages.success', SystemMessageType.success);\r\n this.systemMessageService.messages.emit(systemMessage);\r\n\r\n this.cleanup();\r\n }\r\n else if (localStorage.getItem(this.config.orcidDeclinedAuthorization)) {\r\n console.log('User denied authorization');\r\n const systemMessage = new SystemMessage('user.orcid.messages.unauthorized', SystemMessageType.danger);\r\n this.systemMessageService.messages.emit(systemMessage);\r\n\r\n this.cleanup();\r\n }\r\n }\r\n\r\n cleanup() {\r\n if (this.oauthWindow)\r\n this.oauthWindow.close();\r\n window.removeEventListener('storage', this.storageEventListener);\r\n localStorage.removeItem(this.config.orcidLoggedInProperty);\r\n localStorage.removeItem(this.config.orcidDeclinedAuthorization);\r\n }\r\n}\r\n","\r\n","import { Component } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { take } from 'rxjs/operators';\r\nimport { UserLoginInfoDto } from '../../dtos/user-login-info.dto';\r\nimport { UserLoginService } from '../../services/user-login.service';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\n\r\n@Component({\r\n template: ''\r\n})\r\nexport class OrcidLoginEndpointComponent {\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private userLoginService: UserLoginService,\r\n private config: Configuration\r\n ) {\r\n this.route.queryParams\r\n .pipe(take(1))\r\n .subscribe(queryParams => {\r\n if (queryParams['token']) {\r\n let fixedUserInfo = this.fixBrokenAngularQueryParamsCollectionTralala(queryParams);\r\n this.userLoginService.login(fixedUserInfo as UserLoginInfoDto);\r\n localStorage.setItem(this.config.orcidLoggedInProperty, \"true\");\r\n window.close();\r\n }\r\n else\r\n // Handle situations where this endpoint is manually called from someone withour the token parameter\r\n this.router.navigate(['/login']);\r\n });\r\n }\r\n\r\n fixBrokenAngularQueryParamsCollectionTralala = (obj: any) => Object\r\n .keys(obj)\r\n .reduce((acc: {}, curr: string) => {\r\n if (curr.startsWith('institutionIds'))\r\n acc['institutionIds'] = (acc['institutionIds'] || []).concat([parseInt(obj[curr])]);\r\n else\r\n acc[curr] = obj[curr];\r\n return acc;\r\n }, {});\r\n}\r\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\n\r\n@Component({\r\n selector: 'registration-success-message',\r\n templateUrl: './registration-success-message.component.html',\r\n styleUrls: ['./registration-success-message.styles.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class RegistrationSuccessMessageComponent {\r\n portalUrl: string;\r\n\r\n constructor(\r\n private configuration: Configuration\r\n ) {\r\n this.portalUrl = this.configuration.portalUrl;\r\n }\r\n}\r\n","

\r\n {{ 'user.registration.successMsg' | translate}}\r\n

\r\n\r\n\r\n","import { HttpErrorResponse } from '@angular/common/http';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { DomainError } from 'src/infrastructure/base/models/domain-error.model';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { UserRegistrationDto } from '../../dtos/user-registration.dto';\r\nimport { UserRegistrationResource } from '../../resources/user-registration.resource';\r\n\r\n@Component({\r\n selector: 'user-registration',\r\n templateUrl: './registration.component.html',\r\n styleUrls: ['./../credentials-container.styles.css', './registration.styles.css']\r\n})\r\nexport class RegistrationComponent implements OnInit {\r\n model = new UserRegistrationDto();\r\n isSent = false;\r\n\r\n @ViewChild('registrationForm') registrationForm: NgForm;\r\n\r\n constructor(\r\n private resource: UserRegistrationResource,\r\n private configuration: Configuration,\r\n private router: Router,\r\n private loadingIndicator: LoadingIndicatorService\r\n ) { }\r\n\r\n ngOnInit() {\r\n if (localStorage.getItem(this.configuration.tokenProperty) || !this.configuration.isRegistrationEnabled) {\r\n this.router.navigate(['']);\r\n return;\r\n }\r\n }\r\n\r\n register(): void {\r\n if (!this.registrationForm.valid) {\r\n return;\r\n }\r\n\r\n this.loadingIndicator.show();\r\n this.resource.register(this.model)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe(() => {\r\n this.model = new UserRegistrationDto();\r\n this.isSent = true;\r\n },\r\n (err: any) => this.handleError(err));\r\n }\r\n\r\n private handleError(err: any): void {\r\n if (err instanceof HttpErrorResponse) {\r\n this.registrationForm.controls['mail'].setErrors(null);\r\n\r\n if (err.status === 422) {\r\n const data = err.error as DomainError;\r\n for (let i = 0; i <= data.messages.length - 1; i++) {\r\n const domainErrorCode = data.messages[i].domainErrorCode;\r\n if (domainErrorCode === 'User_EmailTaken') {\r\n this.registrationForm.controls['mail'].setErrors({ 'mailTaken': true });\r\n } else if (domainErrorCode === 'User_OrcidTaken') {\r\n this.registrationForm.controls['orcid'].setErrors({ 'orcidTaken': true });\r\n } else if (domainErrorCode === 'UserRegistrationRequest_PendingRequestWithSameEMailExists') {\r\n this.registrationForm.controls['mail'].setErrors({ 'pendingRequestEmail': true });\r\n } else if (domainErrorCode === 'UserRegistrationRequest_PendingRequestWithSameOrcidExists') {\r\n this.registrationForm.controls['orcid'].setErrors({ 'pendingRequestOrcid': true });\r\n } else if (domainErrorCode === 'User_RegistrationEmailMismatch') {\r\n this.registrationForm.controls['mail'].setErrors({ 'mailMismatch': true });\r\n this.registrationForm.controls['emailAgain'].setErrors({ 'mailMismatch': true });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","\r\n \r\n \r\n

user.registration.title

\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n user.registration.email\r\n \r\n \r\n {{ 'user.registration.errors.' + error.key | translate }}\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n user.registration.emailAgain\r\n \r\n \r\n {{ 'user.registration.errors.' + error.key | translate }}\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n user.registration.orcid\r\n \r\n \r\n {{ 'user.registration.errors.' + error.key | translate }}\r\n \r\n \r\n\r\n \r\n user.registration.rasNumber\r\n \r\n \r\n {{ 'user.registration.errors.' + error.key | translate }}\r\n \r\n \r\n
\r\n\r\n \r\n user.registration.firstName\r\n \r\n \r\n {{ 'user.registration.errors.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n user.registration.middleName\r\n \r\n \r\n {{ 'user.registration.errors.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n user.registration.lastName\r\n \r\n \r\n {{ 'user.registration.errors.' + error.key | translate}}\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n\r\n \r\n user.registration.department\r\n \r\n \r\n {{ 'user.registration.errors.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n user.registration.note\r\n \r\n \r\n {{ 'user.registration.errors.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { PASSWORD_REGEX } from 'src/infrastructure/constants/password-regex.constant';\r\nimport { UserActivationDto } from '../dtos/user-activation.dto';\r\nimport { UserActivationResource } from '../resources/user-activation.resource';\r\n\r\n@Component({\r\n selector: 'user-activation',\r\n templateUrl: 'user-activation.component.html',\r\n styleUrls: ['./credentials-container.styles.css']\r\n})\r\n\r\nexport class UserActivationComponent implements OnInit {\r\n model = new UserActivationDto();\r\n\r\n passwordRegex = PASSWORD_REGEX;\r\n\r\n isSuccess = false;\r\n\r\n errors = {\r\n isTokenExpired: false,\r\n isTokenUsed: false,\r\n hasMismatchingPasswords: false\r\n };\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private resource: UserActivationResource\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.model.token = this.route.snapshot.queryParams.token;\r\n }\r\n\r\n activate(): void {\r\n if (this.model.password === this.model.passwordAgain) {\r\n this.resource.activateUser(this.model)\r\n .subscribe(() => this.isSuccess = true);\r\n } else {\r\n this.errors.hasMismatchingPasswords = true;\r\n }\r\n }\r\n}\r\n","\r\n \r\n \r\n

user.activation.title

\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n user.activation.password\r\n \r\n \r\n {{ 'user.activation.errors.' + error.key | translate }}\r\n \r\n \r\n\r\n \r\n user.activation.passwordAgain\r\n \r\n \r\n {{ 'user.activation.errors.' + error.key | translate }}\r\n \r\n \r\n
\r\n\r\n \r\n {{ 'user.activation.errors.mismatchingPasswords' | translate }}\r\n \r\n\r\n \r\n {{ 'user.activation.errors.tokenExpired' | translate }}\r\n \r\n\r\n \r\n {{ 'user.activation.errors.tokenUsed' | translate }}\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n \r\n {{ 'user.activation.successMsg' | translate }}\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { DomainError } from 'src/infrastructure/base/models/domain-error.model';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { PASSWORD_REGEX } from 'src/infrastructure/constants/password-regex.constant';\r\nimport { SystemMessageType } from 'src/infrastructure/system-messages/enums/system-message-type.enum';\r\nimport { SystemMessage } from 'src/infrastructure/system-messages/models/system-message.model';\r\nimport { SystemMessagesHandlerService } from 'src/infrastructure/system-messages/services/system-messages-handler.service';\r\nimport { UserChangePasswordDto } from '../dtos/user-change-password.dto';\r\nimport { UserResource } from '../resources/user.resource';\r\n\r\n@Component({\r\n selector: 'user-change-password-modal',\r\n templateUrl: 'user-change-password-modal.component.html',\r\n styleUrls: ['./user-change-password-modal.styles.css']\r\n})\r\n\r\nexport class UserChangePasswordModalComponent {\r\n @ViewChild('userChangePasswordForm') userChangePasswordForm: NgForm;\r\n\r\n model: UserChangePasswordDto = new UserChangePasswordDto();\r\n\r\n passwordRegex = PASSWORD_REGEX;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef,\r\n private resource: UserResource,\r\n private systemMessagesService: SystemMessagesHandlerService,\r\n private loadingIndicator: LoadingIndicatorService\r\n ) { }\r\n\r\n change() {\r\n this.loadingIndicator.show();\r\n\r\n this.resource.changePassword(this.model)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe(() => {\r\n const message = new SystemMessage('user.changePasswordModal.successMessage', SystemMessageType.success);\r\n this.systemMessagesService.messages.emit(message);\r\n\r\n this.close();\r\n },\r\n (err: any) => {\r\n this.userChangePasswordForm.controls['oldPassword'].setErrors(null);\r\n this.userChangePasswordForm.controls['newPassword'].setErrors(null);\r\n this.userChangePasswordForm.controls['newPasswordAgain'].setErrors(null);\r\n\r\n if (err.status === 422) {\r\n const data = err.error as DomainError;\r\n for (let i = 0; i <= data.messages.length - 1; i++) {\r\n const domainErrorCode = data.messages[i].domainErrorCode;\r\n if (domainErrorCode === 'User_ChangePasswordOldPasswordMismatch') {\r\n this.userChangePasswordForm.controls['oldPassword'].setErrors({ 'incorrectPassword': true });\r\n } else if (domainErrorCode === 'User_ChangePasswordNewPasswordMismatch') {\r\n this.userChangePasswordForm.controls['newPassword'].setErrors({ 'passwordMismatch': true });\r\n this.userChangePasswordForm.controls['newPasswordAgain'].setErrors({ 'passwordMismatch': true });\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n close() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","
\r\n

{{ 'user.changePasswordModal.title' | translate }}

\r\n
\r\n\r\n
\r\n
\r\n \r\n user.changePasswordModal.oldPassword\r\n \r\n \r\n {{ 'user.changePasswordModal.errors.' + error.key | translate }}\r\n \r\n \r\n\r\n \r\n user.changePasswordModal.newPassword\r\n \r\n \r\n {{ 'user.changePasswordModal.errors.' + error.key | translate }}\r\n \r\n \r\n\r\n \r\n user.changePasswordModal.newPasswordAgain\r\n \r\n \r\n {{ 'user.changePasswordModal.errors.' + error.key | translate }}\r\n \r\n \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 { HttpErrorResponse } from '@angular/common/http';\r\nimport { Component, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Observable } from 'rxjs';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { DomainError } from 'src/infrastructure/base/models/domain-error.model';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { SystemMessageType } from 'src/infrastructure/system-messages/enums/system-message-type.enum';\r\nimport { SystemMessage } from 'src/infrastructure/system-messages/models/system-message.model';\r\nimport { SystemMessagesHandlerService } from 'src/infrastructure/system-messages/services/system-messages-handler.service';\r\nimport { Institution } from 'src/modules/institution/models/institution.model';\r\nimport { UserRoleAliases } from '../constants/user-role-aliases.constant';\r\nimport { UserCreationDto } from '../dtos/user-creation.dto';\r\nimport { Role } from '../models/role.model';\r\nimport { RoleResource } from '../resources/role.resource';\r\nimport { UserResource } from '../resources/user.resource';\r\n\r\n@Component({\r\n selector: 'user-create',\r\n templateUrl: 'user-create.component.html'\r\n})\r\n\r\nexport class UserCreateComponent {\r\n @ViewChild('userCreationForm') userCreationForm: NgForm;\r\n\r\n model = new UserCreationDto();\r\n\r\n selectedRole: Role;\r\n selectedInstitutionIds: number[] = [];\r\n selectedInstitutions: { institution: Institution }[] = [];\r\n\r\n rolesObservable: Observable;\r\n\r\n userRoleAliases = UserRoleAliases;\r\n\r\n constructor(\r\n private resource: UserResource,\r\n private roleResource: RoleResource,\r\n private router: Router,\r\n private loadingIndicator: LoadingIndicatorService,\r\n private systemMessageHandler: SystemMessagesHandlerService,\r\n public translateService: TranslateService\r\n ) {\r\n this.rolesObservable = this.roleResource.getRoles();\r\n }\r\n\r\n create() {\r\n if (this.selectedInstitutions && this.selectedInstitutions.length) {\r\n this.model.institutionIds = this.selectedInstitutions.map(e => e.institution.id);\r\n }\r\n\r\n this.model.username = this.model.email;\r\n this.model.roleId = this.selectedRole.id;\r\n\r\n this.loadingIndicator.show();\r\n this.resource.createUser(this.model)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe(\r\n () => {\r\n const successMessage = new SystemMessage('app.successMessages.userCreation', SystemMessageType.success, 30);\r\n this.systemMessageHandler.messages.emit(successMessage);\r\n\r\n this.router.navigate(['users']);\r\n },\r\n (err: any) => {\r\n if (err instanceof HttpErrorResponse) {\r\n this.userCreationForm.controls['mail'].setErrors(null);\r\n if (err.status === 422) {\r\n const data = err.error as DomainError;\r\n for (let i = 0; i <= data.messages.length - 1; i++) {\r\n const domainErrorCode = data.messages[i].domainErrorCode;\r\n if (domainErrorCode === 'User_EmailTaken') {\r\n this.userCreationForm.controls['mail'].setErrors({ 'mailTaken': true });\r\n } else if (domainErrorCode === 'User_OrcidTaken') {\r\n this.userCreationForm.controls['orcid'].setErrors({ 'orcidTaken': true });\r\n }\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n roleChanged(newRole: Role) {\r\n this.selectedRole = newRole;\r\n this.model.orcid = null;\r\n if (newRole.alias === this.userRoleAliases.ADMINISTRATOR) {\r\n this.selectedInstitutions = [];\r\n this.selectedInstitutionsChange();\r\n } else if (newRole.alias === this.userRoleAliases.ORGANIZATION_ADMINISTRATOR || newRole.alias === this.userRoleAliases.MODERATOR) {\r\n if (this.selectedInstitutions.length) {\r\n this.selectedInstitutions = [this.selectedInstitutions[0]];\r\n this.selectedInstitutionsChange();\r\n } else {\r\n this.selectedInstitutions.push({ institution: null });\r\n }\r\n } else if (newRole.alias === this.userRoleAliases.SCIENTIST) {\r\n if (!this.selectedInstitutions || !this.selectedInstitutions.length) {\r\n this.selectedInstitutions.push({ institution: null });\r\n }\r\n }\r\n }\r\n\r\n addInstitution() {\r\n if (!this.selectedInstitutions) {\r\n this.selectedInstitutions = [];\r\n }\r\n\r\n this.selectedInstitutions.push({ institution: null });\r\n }\r\n\r\n removeInstitution(index: number) {\r\n this.selectedInstitutions.splice(index, 1);\r\n this.selectedInstitutionsChange();\r\n }\r\n\r\n cancel() {\r\n this.router.navigate(['users']);\r\n }\r\n\r\n selectedInstitutionsChange() {\r\n this.selectedInstitutionIds = this.selectedInstitutions\r\n .filter(e => e.institution)\r\n .map(e => e.institution.id);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n user.create.title\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n user.create.firstName\r\n \r\n \r\n {{ 'user.create.errors.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n user.create.middleName\r\n \r\n \r\n {{ 'user.create.errors.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n user.create.lastName\r\n \r\n \r\n {{ 'user.create.errors.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n user.create.email\r\n \r\n \r\n {{ 'user.create.errors.' + error.key | translate }}\r\n \r\n \r\n\r\n \r\n user.create.orcid\r\n \r\n \r\n {{ 'user.create.errors.' + error.key | translate }}\r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n {{ role?.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
1\"\r\n class=\"col-sm-2\">\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\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 { HttpErrorResponse } from '@angular/common/http';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { DomainError } from 'src/infrastructure/base/models/domain-error.model';\r\nimport { ConfirmDialogComponent } from 'src/infrastructure/components/confirm-modal/confirm-modal.component';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { UserPermissionVerificatorService } from 'src/infrastructure/services/user-permission-verification.service';\r\nimport { SystemMessageType } from 'src/infrastructure/system-messages/enums/system-message-type.enum';\r\nimport { SystemMessage } from 'src/infrastructure/system-messages/models/system-message.model';\r\nimport { SystemMessagesHandlerService } from 'src/infrastructure/system-messages/services/system-messages-handler.service';\r\nimport { UserRoleAliases } from '../constants/user-role-aliases.constant';\r\nimport { UserInstitutionDto } from '../dtos/user-institution.dto';\r\nimport { UserDto } from '../dtos/user.dto';\r\nimport { Role } from '../models/role.model';\r\nimport { UserResource } from '../resources/user.resource';\r\n\r\n@Component({\r\n selector: 'user-edit',\r\n templateUrl: 'user-edit.component.html'\r\n})\r\nexport class UserEditComponent implements OnInit {\r\n @ViewChild('userEditForm') userEditForm: NgForm;\r\n\r\n model = new UserDto();\r\n isEditMode = false;\r\n originalObject: UserDto;\r\n\r\n userRoleAliases = UserRoleAliases;\r\n\r\n isActivationEnabled = false;\r\n\r\n selectedInstitutionIds: number[] = [];\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private resource: UserResource,\r\n private userPermissionVerificatorService: UserPermissionVerificatorService,\r\n private dialog: MatDialog,\r\n public translateService: TranslateService,\r\n private loadingIndicator: LoadingIndicatorService,\r\n private systemMessageService: SystemMessagesHandlerService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.route.params.subscribe((params: Params) => {\r\n const id = +params['id'];\r\n if (id) {\r\n this.loadingIndicator.show();\r\n this.resource.getUserDtoById(id)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((model: UserDto) => {\r\n this.model = model;\r\n this.selectedInstitutionsChange();\r\n\r\n this.isActivationEnabled = this.userPermissionVerificatorService.hasFullAccess()\r\n || this.userPermissionVerificatorService.isOrganizationAdministrator(this.model.institutions.map((userInstitution: UserInstitutionDto) => userInstitution.institutionId));\r\n });\r\n }\r\n });\r\n }\r\n\r\n save() {\r\n this.loadingIndicator.show();\r\n this.resource.updateUser(this.model.id, this.model)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((model: UserDto) => {\r\n this.model = model;\r\n this.isEditMode = false;\r\n this.originalObject = new UserDto();\r\n },\r\n (err: any) => {\r\n if (err instanceof HttpErrorResponse) {\r\n // this.userCreationForm.controls['mail'].setErrors(null);\r\n if (err.status === 422) {\r\n const data = err.error as DomainError;\r\n for (let i = 0; i <= data.messages.length - 1; i++) {\r\n const domainErrorCode = data.messages[i].domainErrorCode;\r\n if (domainErrorCode === 'User_EmailTaken') {\r\n this.userEditForm.controls['mail'].setErrors({ 'mailTaken': true });\r\n } else if (domainErrorCode === 'User_UsernameTaken') {\r\n this.userEditForm.controls['username'].setErrors({ 'usernameTaken': true });\r\n } else if (domainErrorCode === 'User_OrcidTaken') {\r\n this.userEditForm.controls['orcid'].setErrors({ 'orcidTaken': true });\r\n }\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n edit() {\r\n if (this.isEditMode) {\r\n return;\r\n }\r\n\r\n this.originalObject = JSON.parse(JSON.stringify(this.model));\r\n this.isEditMode = true;\r\n }\r\n\r\n cancel() {\r\n if (!this.isEditMode) {\r\n return;\r\n }\r\n\r\n if (!this.model.id) {\r\n this.router.navigate(['users']);\r\n }\r\n\r\n this.model = JSON.parse(JSON.stringify(this.originalObject));\r\n this.selectedInstitutionsChange();\r\n\r\n this.originalObject = null;\r\n this.isEditMode = false;\r\n }\r\n\r\n roleChanged(newRole: Role | null) {\r\n this.model.role = newRole;\r\n\r\n if (!newRole) {\r\n this.model.roleId = null;\r\n this.model.orcid = null;\r\n this.model.institutions = [];\r\n return;\r\n }\r\n\r\n this.model.roleId = newRole.id;\r\n this.model.orcid = null;\r\n if (newRole.alias === this.userRoleAliases.ADMINISTRATOR) {\r\n this.model.institutions = [];\r\n this.selectedInstitutionsChange();\r\n } else if (newRole.alias === this.userRoleAliases.ORGANIZATION_ADMINISTRATOR || newRole.alias === this.userRoleAliases.MODERATOR) {\r\n if (this.model.institutions.length) {\r\n this.model.institutions = [this.model.institutions[0]];\r\n this.selectedInstitutionsChange();\r\n } else {\r\n this.model.institutions.push(new UserInstitutionDto());\r\n }\r\n } else if (newRole.alias === this.userRoleAliases.SCIENTIST) {\r\n if (!this.model.institutions || !this.model.institutions.length) {\r\n this.model.institutions.push(new UserInstitutionDto());\r\n }\r\n }\r\n }\r\n\r\n addInstitution() {\r\n if (!this.model.institutions) {\r\n this.model.institutions = [];\r\n }\r\n\r\n const newInstitution = new UserInstitutionDto();\r\n this.model.institutions.push(newInstitution);\r\n }\r\n\r\n removeInstitution(index: number) {\r\n this.model.institutions.splice(index, 1);\r\n }\r\n\r\n deactivate() {\r\n this.dialog.open(ConfirmDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n header: this.translateService.instant('user.edit.deactivationConfirmation.header'),\r\n body: this.translateService.instant('user.edit.deactivationConfirmation.body'),\r\n acceptText: this.translateService.instant('user.edit.deactivationConfirmation.acceptText'),\r\n showDecline: true,\r\n declineText: this.translateService.instant('user.edit.deactivationConfirmation.declineText')\r\n }\r\n })\r\n .afterClosed()\r\n .subscribe((result: boolean) => {\r\n if (result) {\r\n this.loadingIndicator.show();\r\n this.resource.deactivate(this.model.id)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((model: UserDto) => this.model = model);\r\n }\r\n });\r\n }\r\n\r\n activate() {\r\n this.dialog.open(ConfirmDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n header: this.translateService.instant('user.edit.activationConfirmation.header'),\r\n body: this.translateService.instant('user.edit.activationConfirmation.body'),\r\n acceptText: this.translateService.instant('user.edit.activationConfirmation.acceptText'),\r\n showDecline: true,\r\n declineText: this.translateService.instant('user.edit.activationConfirmation.declineText')\r\n }\r\n })\r\n .afterClosed()\r\n .subscribe((result: boolean) => {\r\n if (result) {\r\n this.loadingIndicator.show();\r\n this.resource.activate(this.model.id)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((model: UserDto) => this.model = model);\r\n }\r\n });\r\n }\r\n\r\n sendActivationMail() {\r\n this.resource.sendActivationMail(this.model.id)\r\n .subscribe(() => {\r\n const message = new SystemMessage('user.edit.activationMailSentSuccess', SystemMessageType.success);\r\n this.systemMessageService.messages.emit(message);\r\n });\r\n }\r\n\r\n selectedInstitutionsChange() {\r\n this.selectedInstitutionIds = this.model.institutions\r\n ? this.model.institutions.filter(e => e.institution).map(e => e.institution.id)\r\n : [];\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n {{'user.edit.title' | translate }}\r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n user.edit.username\r\n \r\n \r\n {{ 'user.edit.errors.' + error.key | translate }}\r\n \r\n \r\n\r\n \r\n user.edit.email\r\n \r\n \r\n {{ 'user.edit.errors.' + error.key | translate }}\r\n \r\n \r\n\r\n \r\n user.edit.orcid\r\n \r\n \r\n {{ 'user.edit.errors.' + error.key | translate }}\r\n \r\n \r\n\r\n \r\n user.edit.firstName\r\n \r\n \r\n {{ 'user.edit.errors.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n user.edit.middleName\r\n \r\n \r\n {{ 'user.edit.errors.' + error.key | translate}}\r\n \r\n \r\n\r\n \r\n user.edit.lastName\r\n \r\n \r\n {{ 'user.edit.errors.' + error.key | translate}}\r\n \r\n \r\n
\r\n\r\n
\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\"\r\n class=\"col-sm-2\">\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\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 { HttpErrorResponse } from '@angular/common/http';\r\nimport { Component, ViewChild } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { DomainError } from 'src/infrastructure/base/models/domain-error.model';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { ForgottenPasswordDto } from '../dtos/forgotten-password.dto';\r\nimport { UserPasswordRecoveryResource } from '../resources/user-password-recovery.resource';\r\n\r\n@Component({\r\n selector: 'user-forgotten-password',\r\n templateUrl: 'user-forgotten-password.component.html',\r\n styleUrls: ['./credentials-container.styles.css']\r\n})\r\n\r\nexport class UserForgottenPasswordComponent {\r\n @ViewChild('forgottenPasswordForm') forgottenPasswordForm: NgForm;\r\n\r\n model = new ForgottenPasswordDto();\r\n\r\n isSuccess: boolean | null = null;\r\n\r\n private handledDomainErrors = [\r\n 'User_InvalidUsername',\r\n 'User_CannotRestoreUserPassword'\r\n ];\r\n\r\n constructor(\r\n private resource: UserPasswordRecoveryResource,\r\n private loadingIndicator: LoadingIndicatorService\r\n ) { }\r\n\r\n sendForgottenPassword() {\r\n this.loadingIndicator.show();\r\n this.resource.sendForgottenPassword(this.model)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe(\r\n () => {\r\n this.isSuccess = true;\r\n this.model = new ForgottenPasswordDto();\r\n },\r\n (err) => {\r\n this.isSuccess = false;\r\n\r\n if (err instanceof HttpErrorResponse) {\r\n if (err.status === 422) {\r\n const data = err.error as DomainError;\r\n for (let i = 0; i <= data.messages.length - 1; i++) {\r\n const domainErrorCode = data.messages[i].domainErrorCode;\r\n if (this.handledDomainErrors.indexOf(domainErrorCode) >= 0) {\r\n this.forgottenPasswordForm.controls['mail'].setErrors({ [`${domainErrorCode}`]: true });\r\n }\r\n }\r\n }\r\n }\r\n });\r\n }\r\n}\r\n","\r\n \r\n \r\n

user.forgottenPassword.title

\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n user.forgottenPassword.mail\r\n \r\n \r\n {{ 'user.forgottenPassword.errors.' + error.key | translate }}\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n \r\n {{ 'user.forgottenPassword.successMsg' | translate }}\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n","import { HttpErrorResponse } from '@angular/common/http';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { NgForm, ValidationErrors } from '@angular/forms';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { finalize } from 'rxjs/internal/operators/finalize';\r\nimport { DomainError } from 'src/infrastructure/base/models/domain-error.model';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { PASSWORD_REGEX } from 'src/infrastructure/constants/password-regex.constant';\r\nimport { ForgottenPasswordRecoveryDto } from '../dtos/forgotten-password-recovery.dto';\r\nimport { UserPasswordRecoveryResource } from '../resources/user-password-recovery.resource';\r\n\r\n@Component({\r\n selector: 'user-password-recovery',\r\n templateUrl: 'user-password-recovery.component.html',\r\n styleUrls: ['./credentials-container.styles.css']\r\n})\r\n\r\nexport class UserPasswordRecoveryComponent implements OnInit {\r\n model = new ForgottenPasswordRecoveryDto();\r\n\r\n isSuccess: boolean | null = null;\r\n errors: string[] = [];\r\n\r\n passwordRegex = PASSWORD_REGEX;\r\n\r\n @ViewChild('passwordRecoveryForm') passwordRecoveryForm: NgForm;\r\n\r\n private handledDomainErrors = [\r\n 'User_PasswordRecoveryTokenAlreadyUsed',\r\n 'User_PasswordRecoveryTokenExpired',\r\n 'System_IncorrectParameters'\r\n ];\r\n\r\n constructor(\r\n private resource: UserPasswordRecoveryResource,\r\n private loadingIndicator: LoadingIndicatorService,\r\n private route: ActivatedRoute\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.model.token = this.route.snapshot.queryParams.token;\r\n }\r\n\r\n changePassword(): void {\r\n if (this.model.newPassword !== this.model.newPasswordAgain) {\r\n this.setPasswordsError({ 'passwordMismatch': true });\r\n return;\r\n }\r\n\r\n this.loadingIndicator.show();\r\n this.resource.recoverPassword(this.model)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe(\r\n () => {\r\n this.isSuccess = true;\r\n this.model = new ForgottenPasswordRecoveryDto();\r\n },\r\n (err) => {\r\n this.isSuccess = false;\r\n this.setPasswordsError(null);\r\n\r\n if (err instanceof HttpErrorResponse) {\r\n if (err.status === 422) {\r\n const data = err.error as DomainError;\r\n for (let i = 0; i <= data.messages.length - 1; i++) {\r\n const domainErrorCode = data.messages[i].domainErrorCode;\r\n if (this.handledDomainErrors.indexOf(domainErrorCode) >= 0) {\r\n this.errors.push(`user.passwordRecovery.errors.${domainErrorCode}`);\r\n } else if (domainErrorCode === 'User_ChangePasswordNewPasswordMismatch') {\r\n this.setPasswordsError({ 'passwordMismatch': true });\r\n }\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n private setPasswordsError(error: ValidationErrors | null): void {\r\n this.passwordRecoveryForm.controls['newPassword'].setErrors(error);\r\n this.passwordRecoveryForm.controls['newPasswordAgain'].setErrors(error);\r\n }\r\n}\r\n","\r\n \r\n \r\n

user.passwordRecovery.title

\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n user.passwordRecovery.newPassword\r\n \r\n \r\n {{ 'user.passwordRecovery.errors.' + error.key | translate }}\r\n \r\n \r\n\r\n \r\n user.passwordRecovery.newPasswordAgain\r\n \r\n \r\n {{ 'user.passwordRecovery.errors.' + error.key | translate }}\r\n \r\n \r\n
\r\n\r\n \r\n \r\n {{ error | translate }}\r\n \r\n \r\n\r\n \r\n
\r\n\r\n
\r\n \r\n {{ 'user.passwordRecovery.successMsg' | translate }}\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'registration-request-denial-modal',\r\n templateUrl: 'registration-request-denial-modal.component.html',\r\n styleUrls: ['./../../../../infrastructure/components/confirm-modal/confirm-modal.styles.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class RegistrationRequestDenialModalComponent {\r\n model: { reason: string } = { reason: '' };\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef\r\n ) { }\r\n\r\n accept(): void {\r\n this.dialogRef.close(this.model);\r\n }\r\n\r\n decline(): void {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","
\r\n

\r\n {{'user.registrationRequest.preview.denialConfirmation.header' | translate }}\r\n

\r\n
\r\n
\r\n
\r\n {{ 'user.registrationRequest.preview.denialConfirmation.body' | translate }}\r\n
\r\n\r\n
\r\n \r\n user.registrationRequest.preview.denialConfirmation.reason\r\n \r\n \r\n {{ 'user.registrationRequest.preview.errors.' + error.key | translate}}\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n","import { HttpErrorResponse } from '@angular/common/http';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Params } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { DomainError } from 'src/infrastructure/base/models/domain-error.model';\r\nimport { ConfirmDialogComponent } from 'src/infrastructure/components/confirm-modal/confirm-modal.component';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { SystemMessageType } from 'src/infrastructure/system-messages/enums/system-message-type.enum';\r\nimport { SystemMessage } from 'src/infrastructure/system-messages/models/system-message.model';\r\nimport { SystemMessagesHandlerService } from 'src/infrastructure/system-messages/services/system-messages-handler.service';\r\nimport { UserRegistrationRequestPreviewDto } from '../../dtos/user-registration-request-preview.dto';\r\nimport { UserRegistrationRequestStatus } from '../../enums/user-registration-request-status.enum';\r\nimport { UserRegistrationRequestResource } from '../../resources/user-registration-request.resource';\r\nimport { RegistrationRequestDenialModalComponent } from './registration-request-denial-modal.component';\r\n\r\n@Component({\r\n selector: 'user-registration-request-preview',\r\n templateUrl: './user-registration-request-preview.component.html',\r\n styleUrls: ['./user-registration-request-preview.styles.css']\r\n})\r\nexport class UserRegistrationRequestPreviewComponent implements OnInit {\r\n model = new UserRegistrationRequestPreviewDto();\r\n registrationRequestStatuses = UserRegistrationRequestStatus;\r\n\r\n history: { date: Date, status: UserRegistrationRequestStatus, message: string, denialReason?: string, user: string }[] = [];\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private resource: UserRegistrationRequestResource,\r\n private dialog: MatDialog,\r\n public translateService: TranslateService,\r\n private loadingIndicator: LoadingIndicatorService,\r\n private systemMessageService: SystemMessagesHandlerService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.route.params.subscribe((params: Params) => {\r\n const id = +params['id'];\r\n if (id) {\r\n this.loadingIndicator.show();\r\n this.resource.getPreview(id)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((model: UserRegistrationRequestPreviewDto) => this.setModel(model));\r\n }\r\n });\r\n }\r\n\r\n deny(): void {\r\n this.dialog.open(RegistrationRequestDenialModalComponent, {\r\n disableClose: true,\r\n width: '40%'\r\n })\r\n .afterClosed()\r\n .subscribe((result: { reason: string }) => {\r\n if (result) {\r\n this.loadingIndicator.show();\r\n this.resource.deny(this.model.id, result)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((model: UserRegistrationRequestPreviewDto) => {\r\n this.setModel(model);\r\n\r\n const systemMessage = new SystemMessage('user.registrationRequest.preview.denialMessage', SystemMessageType.success);\r\n this.systemMessageService.messages.emit(systemMessage);\r\n });\r\n }\r\n })\r\n }\r\n\r\n approve(): void {\r\n this.dialog.open(ConfirmDialogComponent, {\r\n disableClose: true,\r\n data: {\r\n header: this.translateService.instant('user.registrationRequest.preview.approvalConfirmation.header'),\r\n body: this.translateService.instant('user.registrationRequest.preview.approvalConfirmation.body', { username: this.model.email }),\r\n acceptText: this.translateService.instant('user.registrationRequest.preview.approvalConfirmation.acceptText'),\r\n showDecline: true,\r\n declineText: this.translateService.instant('user.registrationRequest.preview.approvalConfirmation.declineText')\r\n }\r\n })\r\n .afterClosed()\r\n .subscribe((result: boolean) => {\r\n if (result) {\r\n this.loadingIndicator.show();\r\n this.resource.approve(this.model.id)\r\n .pipe(\r\n finalize(() => this.loadingIndicator.hide())\r\n )\r\n .subscribe((model: UserRegistrationRequestPreviewDto) => {\r\n this.setModel(model);\r\n\r\n const systemMessage = new SystemMessage('user.registrationRequest.preview.approvalMessage', SystemMessageType.success);\r\n this.systemMessageService.messages.emit(systemMessage);\r\n },\r\n (err) => this.handleError(err));\r\n }\r\n });\r\n }\r\n\r\n private setModel(model: UserRegistrationRequestPreviewDto): void {\r\n this.model = model;\r\n\r\n this.history = [];\r\n this.history.push({ date: this.model.requestDate, status: UserRegistrationRequestStatus.pendingApproval, message: 'user.registrationRequest.preview.historyActions.registrationRequest', user: null });\r\n if (this.model.status !== UserRegistrationRequestStatus.pendingApproval) {\r\n const historyItem = {\r\n date: this.model.modificationDate,\r\n status: this.model.status,\r\n message: this.model.status === UserRegistrationRequestStatus.approved ? 'user.registrationRequest.preview.historyActions.registrationRequestApproval' : 'user.registrationRequest.preview.historyActions.registrationRequestDenial',\r\n denialReason: this.model.denialReason,\r\n user: this.model.modificationUserFullname\r\n };\r\n this.history.push(historyItem);\r\n }\r\n }\r\n\r\n private handleError(err: any): void {\r\n if (err instanceof HttpErrorResponse) {\r\n if (err.status === 422) {\r\n const data = err.error as DomainError;\r\n for (let i = 0; i <= data.messages.length - 1; i++) {\r\n const domainErrorCode = data.messages[i].domainErrorCode;\r\n if (domainErrorCode === 'User_EmailTaken' || domainErrorCode === 'User_OrcidTaken') {\r\n const newMessage = new SystemMessage('user.registrationRequest.preview.errors.existingUser', SystemMessageType.danger);\r\n this.systemMessageService.messages.emit(newMessage);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n {{'user.registrationRequest.preview.title' | translate }}\r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n {{ 'user.registrationRequest.statuses.' + registrationRequestStatuses[model.status] | translate }}\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n {{ model.email }}\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n {{ model.orcid }}\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n {{ model.rasNumber }}\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n {{ model.firstName }}\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n {{ model.middleName }}\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n {{ model.lastName }}\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n {{\r\n translateService.currentLang !== translateService.defaultLang\r\n ? model.institutionNameEn\r\n : model.institutionName\r\n }}\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n {{ model.department }}\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n {{ model.note }}\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{ 'user.registrationRequest.preview.dateTh' | translate }}\r\n \r\n {{ 'user.registrationRequest.preview.actionTh' | translate }}\r\n \r\n {{ 'user.registrationRequest.preview.creatorTh' | translate }}\r\n
\r\n {{ item.date | localTime | date: 'dd.MM.yyyy' }}\r\n \r\n {{ item.message | translate }}\r\n \r\n {{ 'user.registrationRequest.preview.historyActions.createdUserLink' | translate }}\r\n \r\n\r\n
\r\n {{ item.denialReason }}\r\n
\r\n
\r\n {{ item.user }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BaseEntitySearchComponent } from 'src/infrastructure/components/base-entity-search.component';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { UserRegistrationRequestStatus } from '../../enums/user-registration-request-status.enum';\r\nimport { UserRegistrationRequest } from '../../models/user-registration-request.model';\r\nimport { UserRegistrationRequestResource } from '../../resources/user-registration-request.resource';\r\nimport { UserRegistrationRequestSearchFilterService } from '../../services/user-registration-request-search-filter.service';\r\n\r\n@Component({\r\n selector: 'user-registration-request-search',\r\n templateUrl: 'user-registration-request-search.component.html'\r\n})\r\nexport class UserRegistrationRequestSearchComponent extends BaseEntitySearchComponent {\r\n displayedColumns: string[] = ['actions', 'email', 'fullname', 'institutionName', 'department', 'status'];\r\n requestStatuses = UserRegistrationRequestStatus;\r\n\r\n constructor(\r\n public filter: UserRegistrationRequestSearchFilterService,\r\n protected resource: UserRegistrationRequestResource,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n public translateService: TranslateService\r\n ) {\r\n super(filter, resource, loadingIndicator);\r\n }\r\n}\r\n","\r\n \r\n \r\n \r\n search\r\n {{ 'user.registrationRequest.search.filterPanelTitle' | translate }}\r\n \r\n \r\n\r\n
\r\n\r\n
\r\n \r\n user.registrationRequest.search.firstName\r\n \r\n \r\n\r\n \r\n user.registrationRequest.search.middleName\r\n \r\n \r\n\r\n \r\n user.registrationRequest.search.lastName\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n user.registrationRequest.search.email\r\n \r\n \r\n\r\n \r\n user.registrationRequest.search.orcid\r\n \r\n \r\n\r\n \r\n user.registrationRequest.search.status\r\n \r\n \r\n {{ 'user.registrationRequest.statuses.pendingApproval' | translate }}\r\n \r\n \r\n {{ 'user.registrationRequest.statuses.approved' | translate }}\r\n \r\n \r\n {{ 'user.registrationRequest.statuses.denied' | translate }}\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n\r\n \r\n search\r\n \r\n \r\n {{ 'user.registrationRequest.search.emailTh' | translate }}\r\n \r\n {{ request.email }}\r\n \r\n {{ 'user.registrationRequest.search.fullnameTh' | translate }}\r\n \r\n {{ request.fullname }}\r\n \r\n {{ 'user.registrationRequest.search.institutionNameTh' | translate }}\r\n {{ request.institutionName }} \r\n {{ 'user.registrationRequest.search.departmentTh' | translate }}\r\n {{ request.department }} \r\n {{ 'user.registrationRequest.search.statusTh' | translate }}\r\n \r\n {{ 'user.registrationRequest.statuses.' + requestStatuses[request.status] | translate }}\r\n
\r\n\r\n\r\n","import { Component } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BaseEntitySearchComponent } from 'src/infrastructure/components/base-entity-search.component';\r\nimport { LoadingIndicatorService } from 'src/infrastructure/components/loading-indicator/loading-indicator.service';\r\nimport { User } from '../models/user.model';\r\nimport { UserResource } from '../resources/user.resource';\r\nimport { UserSearchFilterService } from '../services/user-search-filter.service';\r\n\r\n@Component({\r\n selector: 'user-search',\r\n templateUrl: 'user-search.component.html'\r\n})\r\nexport class UserSearchComponent extends BaseEntitySearchComponent {\r\n displayedColumns: string[] = ['actions', 'username', 'fullname', 'role', 'createDate', 'updateDate', 'isActive', 'isLocked'];\r\n\r\n constructor(\r\n public filter: UserSearchFilterService,\r\n protected resource: UserResource,\r\n protected loadingIndicator: LoadingIndicatorService,\r\n public translateService: TranslateService\r\n ) {\r\n super(filter, resource, loadingIndicator);\r\n }\r\n}\r\n","\r\n \r\n \r\n \r\n search\r\n {{ 'user.search.filterPanelTitle' | translate }}\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n user.search.username\r\n \r\n \r\n\r\n \r\n user.search.email\r\n \r\n \r\n\r\n \r\n user.search.orcid\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n user.search.firstName\r\n \r\n \r\n\r\n \r\n user.search.middleName\r\n \r\n \r\n\r\n \r\n user.search.lastName\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n\r\n \r\n search\r\n \r\n \r\n {{ 'user.search.username' | translate }}\r\n {{ user.username }} \r\n {{ 'user.search.name' | translate }}\r\n {{ user.fullname }} \r\n {{ 'user.search.role' | translate }}\r\n {{ user.role }} \r\n {{ 'user.search.createDate' | translate }}\r\n {{ user.createDate | date: 'dd.MM.yyyy' }} \r\n {{ 'user.search.updateDate' | translate }}\r\n {{ user.updateDate | date: 'dd.MM.yyyy' }} \r\n {{ 'user.search.isActive' | translate }}\r\n \r\n {{ user.isActive ? 'check' : 'cancel' }}\r\n \r\n {{ 'user.search.isLocked' | translate }}\r\n \r\n {{ user.isLocked ? 'check' : 'cancel' }}\r\n
\r\n\r\n\r\n","export class UserRoleAliases {\r\n public static readonly ADMINISTRATOR = 'administrator';\r\n public static readonly ORGANIZATION_ADMINISTRATOR = 'organizationAdministrator';\r\n public static readonly MODERATOR = 'moderator';\r\n public static readonly SCIENTIST = 'scientist';\r\n}\r\n","export class ForgottenPasswordRecoveryDto {\r\n token: string;\r\n newPassword: string;\r\n newPasswordAgain: string;\r\n}\r\n","export class ForgottenPasswordDto {\r\n mail: string;\r\n}\r\n","export class LoginDto {\r\n username: string;\r\n password: string;\r\n}\r\n","export class UserActivationDto {\r\n token: string;\r\n password: string;\r\n passwordAgain: string;\r\n}\r\n","export class UserChangePasswordDto {\r\n oldPassword: string;\r\n newPassword: string;\r\n newPasswordAgain: string;\r\n}\r\n","\r\nexport class UserCreationDto {\r\n username: string;\r\n\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n\r\n email: string;\r\n\r\n orcid: string;\r\n\r\n institutionIds: number[];\r\n\r\n roleId: number;\r\n}\r\n","import { Institution } from 'src/modules/institution/models/institution.model';\r\n\r\nexport class UserInstitutionDto {\r\n institutionId: number;\r\n institution: Institution;\r\n}\r\n","import { UserRegistrationRequestStatus } from '../enums/user-registration-request-status.enum';\r\n\r\nexport class UserRegistrationRequestPreviewDto {\r\n id: number;\r\n\r\n email: string;\r\n\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n\r\n orcid: string;\r\n rasNumber: string;\r\n\r\n institutionName: string;\r\n institutionNameEn: string;\r\n\r\n department: string;\r\n\r\n note: string;\r\n\r\n status: UserRegistrationRequestStatus;\r\n\r\n requestDate: Date;\r\n\r\n createdUserId: number | null;\r\n\r\n modificationUserId: number | null;\r\n modificationUserFullname: string;\r\n modificationDate: Date | null;\r\n\r\n denialReason: string;\r\n}\r\n","import { Institution } from 'src/modules/institution/models/institution.model';\r\n\r\nexport class UserRegistrationDto {\r\n email: string;\r\n emailAgain: string;\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n orcid: string;\r\n rasNumber: string;\r\n institutionId: number;\r\n institution: Institution;\r\n department: string;\r\n note: string;\r\n}\r\n","import { Role } from '../models/role.model';\r\nimport { UserInstitutionDto } from './user-institution.dto';\r\n\r\nexport class UserDto {\r\n id: number;\r\n username: string;\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n\r\n email: string;\r\n\r\n roleId: number;\r\n role: Role;\r\n\r\n orcid: string;\r\n\r\n isActive: boolean;\r\n isLocked: boolean;\r\n\r\n institutions: UserInstitutionDto[] = [];\r\n}\r\n","export enum UserLoginEventEnum {\r\n login = 1,\r\n logout = 2\r\n}\r\n","export enum UserRegistrationRequestStatus {\r\n pendingApproval = 1,\r\n approved = 2,\r\n denied = 3\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { Role } from '../models/role.model';\r\n\r\n@Injectable()\r\nexport class RoleResource {\r\n constructor(\r\n private http: HttpClient,\r\n private configuration: Configuration\r\n ) { }\r\n\r\n getRoles(): Observable {\r\n return this.http.get(`${this.configuration.restUrl}/Role`);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { UserActivationDto } from '../dtos/user-activation.dto';\r\n\r\n@Injectable()\r\nexport class UserActivationResource {\r\n constructor(\r\n private http: HttpClient,\r\n private configuration: Configuration\r\n ) { }\r\n\r\n activateUser(model: UserActivationDto): Observable {\r\n return this.http.post(`${this.configuration.restUrl}/Activation`, model);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { LoginDto } from '../dtos/login.dto';\r\nimport { UserLoginInfoDto } from '../dtos/user-login-info.dto';\r\n\r\n@Injectable()\r\nexport class UserLoginResource {\r\n constructor(\r\n private http: HttpClient,\r\n private configuration: Configuration\r\n ) { }\r\n\r\n login(model: LoginDto): Observable {\r\n return this.http.post(`${this.configuration.restUrl}/Login`, model);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { ForgottenPasswordRecoveryDto } from '../dtos/forgotten-password-recovery.dto';\r\nimport { ForgottenPasswordDto } from '../dtos/forgotten-password.dto';\r\n\r\n@Injectable()\r\nexport class UserPasswordRecoveryResource {\r\n constructor(\r\n private http: HttpClient,\r\n private configuration: Configuration\r\n ) { }\r\n\r\n sendForgottenPassword(model: ForgottenPasswordDto): Observable {\r\n return this.http.post(`${this.configuration.restUrl}/ForgottenPassword`, model);\r\n }\r\n\r\n recoverPassword(model: ForgottenPasswordRecoveryDto): Observable {\r\n return this.http.post(`${this.configuration.restUrl}/ForgottenPassword/Recovery`, model);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { BaseEntityResource } from 'src/infrastructure/base/base-entity.resource';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { UserRegistrationRequestPreviewDto } from '../dtos/user-registration-request-preview.dto';\r\nimport { UserSearchResultDto } from '../dtos/user-search-result.dto';\r\nimport { UserRegistrationRequest } from '../models/user-registration-request.model';\r\nimport { UserSearchFilterService } from '../services/user-search-filter.service';\r\n\r\n@Injectable()\r\nexport class UserRegistrationRequestResource extends BaseEntityResource {\r\n constructor(\r\n protected http: HttpClient,\r\n protected configuration: Configuration\r\n ) {\r\n super(http, configuration, 'RegistrationRequest');\r\n }\r\n\r\n getFiltered(filter: UserSearchFilterService): Observable {\r\n return this.http.get(`${this.baseUrl}${this.composeQueryString(filter)}`);\r\n }\r\n\r\n getPreview(id: number): Observable {\r\n return this.http.get(`${this.baseUrl}/${id}/Preview`);\r\n }\r\n\r\n approve(id: number): Observable {\r\n return this.http.post(`${this.baseUrl}/${id}/Approval`, null);\r\n }\r\n\r\n deny(id: number, model: { reason: string }): Observable {\r\n return this.http.post(`${this.baseUrl}/${id}/Denial`, model);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { UserRegistrationDto } from '../dtos/user-registration.dto';\r\n\r\n@Injectable()\r\nexport class UserRegistrationResource {\r\n constructor(\r\n private http: HttpClient,\r\n private configuration: Configuration\r\n ) { }\r\n\r\n register(model: UserRegistrationDto): Observable {\r\n return this.http.post(`${this.configuration.restUrl}/Registration`, model);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { BaseEntityResource } from 'src/infrastructure/base/base-entity.resource';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { UserChangePasswordDto } from '../dtos/user-change-password.dto';\r\nimport { UserCreationDto } from '../dtos/user-creation.dto';\r\nimport { UserSearchResultDto } from '../dtos/user-search-result.dto';\r\nimport { UserDto } from '../dtos/user.dto';\r\nimport { User } from '../models/user.model';\r\nimport { UserSearchFilterService } from '../services/user-search-filter.service';\r\n\r\n@Injectable()\r\nexport class UserResource extends BaseEntityResource {\r\n constructor(\r\n protected http: HttpClient,\r\n protected configuration: Configuration\r\n ) {\r\n super(http, configuration, 'User');\r\n }\r\n\r\n getUserDtoById(id: number): Observable {\r\n return this.http.get(`${this.baseUrl}/${id}`);\r\n }\r\n\r\n getFiltered(filter: UserSearchFilterService): Observable {\r\n return this.http.get(`${this.baseUrl}${this.composeQueryString(filter)}`);\r\n }\r\n\r\n createUser(model: UserCreationDto): Observable {\r\n return this.http.post(`${this.baseUrl}/Creation`, model);\r\n }\r\n\r\n updateUser(id: number, model: UserDto): Observable {\r\n return this.http.put(`${this.baseUrl}/${id}`, model);\r\n }\r\n\r\n changePassword(model: UserChangePasswordDto): Observable {\r\n return this.http.post(`${this.baseUrl}/NewPassword`, model);\r\n }\r\n\r\n deactivate(userId: number): Observable {\r\n return this.http.post(`${this.baseUrl}/Deactivation/${userId}`, null);\r\n }\r\n\r\n activate(userId: number): Observable {\r\n return this.http.post(`${this.baseUrl}/Activation/${userId}`, null);\r\n }\r\n\r\n sendActivationMail(userId: number): Observable {\r\n return this.http.post(`${this.baseUrl}/Reactivation/${userId}`, null);\r\n }\r\n}\r\n","import { EventEmitter, Injectable } from '@angular/core';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\nimport { UserLoginInfoDto } from '../dtos/user-login-info.dto';\r\nimport { UserLoginEventEnum } from '../enums/user-login-event.enum';\r\n\r\n@Injectable()\r\nexport class UserLoginService {\r\n private emitter: EventEmitter<{ event: UserLoginEventEnum }> = new EventEmitter();\r\n\r\n public isLogged = false;\r\n\r\n constructor(private configuration: Configuration) {\r\n this.isLogged = localStorage.getItem(this.configuration.tokenProperty) ? true : false;\r\n }\r\n\r\n login(userLoginInfoDto: UserLoginInfoDto) {\r\n localStorage.setItem(this.configuration.tokenProperty, userLoginInfoDto.token);\r\n localStorage.setItem(this.configuration.userIdProperty, userLoginInfoDto.id.toString());\r\n localStorage.setItem(this.configuration.userFullnameProperty, userLoginInfoDto.fullname);\r\n localStorage.setItem(this.configuration.userFirstNameProperty, userLoginInfoDto.firstName);\r\n localStorage.setItem(this.configuration.userLastNameProperty, userLoginInfoDto.lastName);\r\n localStorage.setItem(this.configuration.userRolesProperty, userLoginInfoDto.roleAlias);\r\n localStorage.setItem(this.configuration.userOrcidIdProperty, userLoginInfoDto.orcidId);\r\n\r\n if (userLoginInfoDto.institutionIds) {\r\n localStorage.setItem(this.configuration.userInstitutionsProperty, userLoginInfoDto.institutionIds.toString());\r\n }\r\n\r\n this.isLogged = true;\r\n this.emitter.emit({ event: UserLoginEventEnum.login });\r\n }\r\n\r\n logout() {\r\n localStorage.clear();\r\n\r\n this.isLogged = false;\r\n\r\n this.emitter.emit({ event: UserLoginEventEnum.logout });\r\n }\r\n\r\n subscribe(next: (value: { event: UserLoginEventEnum }) => void) {\r\n return this.emitter.subscribe(next);\r\n }\r\n\r\n phantomLogin() {\r\n this.isLogged = true;\r\n this.emitter.emit({ event: UserLoginEventEnum.login });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseEntityFilterService } from 'src/infrastructure/base/interfaces/base-entity-filter.service';\r\nimport { Institution } from 'src/modules/institution/models/institution.model';\r\nimport { UserRegistrationRequestStatus } from '../enums/user-registration-request-status.enum';\r\n\r\n@Injectable()\r\nexport class UserRegistrationRequestSearchFilterService extends BaseEntityFilterService {\r\n email: string;\r\n orcid: string;\r\n\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n\r\n institutionId: number | null;\r\n institution: Institution;\r\n\r\n status: UserRegistrationRequestStatus | null;\r\n\r\n constructor() {\r\n super(10);\r\n }\r\n\r\n clear() {\r\n this.limit = 10;\r\n this.offset = 0;\r\n\r\n this.email = null;\r\n this.orcid = null;\r\n\r\n this.firstName = null;\r\n this.middleName = null;\r\n this.lastName = null;\r\n\r\n this.institutionId = null;\r\n this.institution = null;\r\n\r\n this.status = null;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\n\r\n@Injectable()\r\nexport class UserRoleService {\r\n private userRole: string;\r\n\r\n constructor(private configuration: Configuration) {\r\n this.userRole = localStorage.getItem(this.configuration.userRolesProperty);\r\n }\r\n\r\n getRole() {\r\n if (!this.userRole) {\r\n this.userRole = localStorage.getItem(this.configuration.userRolesProperty);\r\n }\r\n\r\n return this.userRole;\r\n }\r\n\r\n clearRole() {\r\n this.userRole = null;\r\n }\r\n\r\n hasRole(role: string) {\r\n return this.userRole === role;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseEntityFilterService } from 'src/infrastructure/base/interfaces/base-entity-filter.service';\r\nimport { Institution } from 'src/modules/institution/models/institution.model';\r\nimport { Role } from '../models/role.model';\r\n\r\n@Injectable()\r\nexport class UserSearchFilterService extends BaseEntityFilterService {\r\n username: string;\r\n email: string;\r\n orcid: string;\r\n\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n\r\n roleId: number | null;\r\n role: Role;\r\n\r\n institutionId: number | null;\r\n institution: Institution;\r\n\r\n constructor() {\r\n super(10);\r\n }\r\n\r\n clear() {\r\n this.limit = 10;\r\n this.offset = 0;\r\n\r\n this.username = null;\r\n this.email = null;\r\n this.orcid = null;\r\n\r\n this.firstName = null;\r\n this.middleName = null;\r\n this.lastName = null;\r\n\r\n this.roleId = null;\r\n this.role = null;\r\n\r\n this.institutionId = null;\r\n this.institution = null;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';\r\n\r\n@Injectable()\r\nexport class UserTokenGuard implements CanActivate {\r\n constructor(\r\n private router: Router\r\n ) { }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, _: RouterStateSnapshot): boolean {\r\n const params = route.queryParams;\r\n if (params && params['token']) {\r\n return true;\r\n }\r\n\r\n this.router.navigate(['']);\r\n return false;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Configuration } from 'src/infrastructure/base/configuration/configuration';\r\n\r\n@Injectable()\r\nexport class UserService {\r\n constructor(\r\n private configuration: Configuration\r\n ) { }\r\n\r\n getUserFullname(): string {\r\n return localStorage.getItem(this.configuration.userFullnameProperty);\r\n }\r\n\r\n getUserOrcidId(): string | null {\r\n return localStorage.getItem(this.configuration.userOrcidIdProperty);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { AuthGuard } from 'src/infrastructure/interceptors/auth.guard';\r\nimport { LoginComponent } from './components/login.component';\r\nimport { OrcidConnectComponent } from './components/orcid-connect/orcid-connect.component';\r\nimport { OrcidLoginEndpointComponent } from './components/orcid-login-endpoint/orcid-login-endpoint.component';\r\nimport { RegistrationComponent } from './components/registration/registration.component';\r\nimport { UserActivationComponent } from './components/user-activation.component';\r\nimport { UserCreateComponent } from './components/user-create.component';\r\nimport { UserEditComponent } from './components/user-edit.component';\r\nimport { UserForgottenPasswordComponent } from './components/user-forgotten-password.component';\r\nimport { UserPasswordRecoveryComponent } from './components/user-password-recovery.component';\r\nimport { UserRegistrationRequestPreviewComponent } from './components/user-registration-request/user-registration-request-preview.component';\r\nimport { UserRegistrationRequestSearchComponent } from './components/user-registration-request/user-registration-request-search.component';\r\nimport { UserSearchComponent } from './components/user-search.component';\r\nimport { UserTokenGuard } from './services/user-token.guard';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'login',\r\n component: LoginComponent\r\n },\r\n {\r\n path: 'registration',\r\n component: RegistrationComponent\r\n },\r\n {\r\n path: 'orcid/connect',\r\n component: OrcidConnectComponent\r\n },\r\n {\r\n path: 'orcid/login',\r\n component: OrcidLoginEndpointComponent\r\n },\r\n {\r\n path: 'forgottenPassword',\r\n component: UserForgottenPasswordComponent\r\n },\r\n {\r\n path: 'passwordRecovery',\r\n component: UserPasswordRecoveryComponent,\r\n canActivate: [UserTokenGuard]\r\n },\r\n {\r\n path: 'userActivation',\r\n component: UserActivationComponent,\r\n canActivate: [UserTokenGuard]\r\n },\r\n {\r\n path: 'users',\r\n data: {\r\n title: 'app.titles.users.search'\r\n },\r\n children: [\r\n {\r\n path: '',\r\n component: UserSearchComponent,\r\n canActivate: [AuthGuard]\r\n },\r\n {\r\n path: 'new',\r\n component: UserCreateComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.users.new'\r\n }\r\n },\r\n {\r\n path: ':id',\r\n component: UserEditComponent,\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: 'app.titles.users.edit'\r\n }\r\n },\r\n ]\r\n },\r\n {\r\n path: 'registrationRequests',\r\n data: {\r\n title: 'app.titles.registrationRequests.base'\r\n },\r\n children: [\r\n {\r\n path: '',\r\n component: UserRegistrationRequestSearchComponent,\r\n canActivate: [AuthGuard],\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: ':id',\r\n component: UserRegistrationRequestPreviewComponent,\r\n canActivate: [AuthGuard],\r\n pathMatch: 'full',\r\n data: {\r\n title: 'app.titles.registrationRequests.preview'\r\n }\r\n }\r\n ]\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\n\r\nexport class UserRoutingModule { }\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { NgxMaskModule } from 'ngx-mask';\r\nimport { MaterialComponentsModule } from 'src/infrastructure/material-components.module';\r\nimport { SharedModule } from 'src/infrastructure/shared.module';\r\nimport { LoginComponent } from './components/login.component';\r\nimport { OrcidConnectComponent } from './components/orcid-connect/orcid-connect.component';\r\nimport { OrcidLoginBtnComponent } from './components/orcid-login-btn/orcid-login-btn.component';\r\nimport { OrcidLoginEndpointComponent } from './components/orcid-login-endpoint/orcid-login-endpoint.component';\r\nimport { RegistrationSuccessMessageComponent } from './components/registration/registration-success-message.component';\r\nimport { RegistrationComponent } from './components/registration/registration.component';\r\nimport { UserActivationComponent } from './components/user-activation.component';\r\nimport { UserChangePasswordModalComponent } from './components/user-change-password-modal.component';\r\nimport { UserCreateComponent } from './components/user-create.component';\r\nimport { UserEditComponent } from './components/user-edit.component';\r\nimport { UserForgottenPasswordComponent } from './components/user-forgotten-password.component';\r\nimport { UserPasswordRecoveryComponent } from './components/user-password-recovery.component';\r\nimport { RegistrationRequestDenialModalComponent } from './components/user-registration-request/registration-request-denial-modal.component';\r\nimport { UserRegistrationRequestPreviewComponent } from './components/user-registration-request/user-registration-request-preview.component';\r\nimport { UserRegistrationRequestSearchComponent } from './components/user-registration-request/user-registration-request-search.component';\r\nimport { UserSearchComponent } from './components/user-search.component';\r\nimport { RoleResource } from './resources/role.resource';\r\nimport { UserActivationResource } from './resources/user-activation.resource';\r\nimport { UserLoginResource } from './resources/user-login.resource';\r\nimport { UserPasswordRecoveryResource } from './resources/user-password-recovery.resource';\r\nimport { UserRegistrationRequestResource } from './resources/user-registration-request.resource';\r\nimport { UserRegistrationResource } from './resources/user-registration.resource';\r\nimport { UserResource } from './resources/user.resource';\r\nimport { UserRegistrationRequestSearchFilterService } from './services/user-registration-request-search-filter.service';\r\nimport { UserSearchFilterService } from './services/user-search-filter.service';\r\nimport { UserTokenGuard } from './services/user-token.guard';\r\nimport { UserService } from './services/user.service';\r\nimport { UserRoutingModule } from './user-routing.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n SharedModule,\r\n FormsModule,\r\n MaterialComponentsModule,\r\n UserRoutingModule,\r\n TranslateModule,\r\n NgxMaskModule\r\n ],\r\n declarations: [\r\n LoginComponent,\r\n RegistrationComponent,\r\n RegistrationSuccessMessageComponent,\r\n RegistrationRequestDenialModalComponent,\r\n UserForgottenPasswordComponent,\r\n UserPasswordRecoveryComponent,\r\n UserSearchComponent,\r\n UserCreateComponent,\r\n UserActivationComponent,\r\n UserEditComponent,\r\n UserRegistrationRequestSearchComponent,\r\n UserRegistrationRequestPreviewComponent,\r\n UserChangePasswordModalComponent,\r\n OrcidLoginBtnComponent,\r\n OrcidConnectComponent,\r\n OrcidLoginEndpointComponent\r\n ],\r\n entryComponents: [\r\n UserChangePasswordModalComponent\r\n ],\r\n providers: [\r\n UserLoginResource,\r\n UserRegistrationResource,\r\n UserPasswordRecoveryResource,\r\n UserResource,\r\n UserService,\r\n UserSearchFilterService,\r\n UserRegistrationRequestResource,\r\n UserRegistrationRequestSearchFilterService,\r\n UserActivationResource,\r\n RoleResource,\r\n UserTokenGuard\r\n ]\r\n})\r\nexport class UserModule { }\r\n"]}